środa, 25 września 2013

Rodzi się jajko

Trochę może rozbiegam się ze wstępnym założeniem ale nie można się poddawać i trzeba kontynuować projekt, może w trochę innej formie.

Dzisiaj w końcu udało mi się zabrać za konfigurację całości i jak to bywa z konfiguracją wystąpiły małe problemy, ale na szczęście udało mi się je rozwiązać i mogę kontynuować prace. Pierwszy problem jaki mnie dzisiaj napotkał to zła wersja Django. Miałem u siebie zainstalowaną wersję 1.5.1, a AppFog obsługuje tylko wersję 1.3 i 1.4 jak udało mi się doczytać w dokumentacji tego serwisu. Zmiana wersji Django nie jest dużym problemem i w parę chwil sobie zmieniłem wersję. Na Linuchach polecam virtualenv, aby doinstalować sobie niezbędne narzędzia do szybkiej instalacji i deinstalacji pakietów Pythona, a pod Windowsem polecam zaopatrzyć się w programik setuptools. Dzięki niemu możemy w sposób taki jak na Linuxach zarządzać szybko pakietami. Coś w stylu:

    pip install package

Jest to bardzo wygodne. Polecam także wszystkim którzy chcą korzystać z AppFog pobranie całego projektu Django, który udostępniają. Po pierwsze połączenie z bazą danych i inne konfiguracje pod ten serwis już są tam ustawione i nie trzeba się niczym martwić, bo działa wszystko i na AppFog i gdy uruchomimy aplikację lokalnie.

Kolejna w miarę ważna rzecz. Komunikacja między nami a AppFog opiera się na prostym skrypcie napisanym w Ruby. Toteż polecam osobom posiadającym Windowsa zainstalowanie sobie pakietu RubyInstaller, albo jak ktoś ma chęci zabawy z Rails do czego serdecznie zachęcam to polecam pakiet RailsInstaller. Gdy już mamy zainstalowane Ruby wystarczy wpisać podobnie jak powyżej prostą komendę:

    gem install af

I już możemy komunikować się z AppFog. Więcej informacji na ten temat można przeczytać w dokumentacji.

Trzecią sprawą, która dzisiaj najbardziej mnie zezłościła to kolejny raz problem z brakiem kluczy do SSH w przypadku TortoiseHG oraz BitBucket, ale po szybkim wykonaniu poleceń z helpa wszystko śmiga już jak należy. Samą aplikację można podejrzeć pod adresem: http://happycow.eu01.aws.af.cm/ jak widać nic tutaj wyjątkowego się nie dzieje, bo tylko działa i wyświetla tytuł na karcie. Źródła można natomiast przejrzeć tutaj: https://bitbucket.org/Bantu/happycow.

środa, 18 września 2013

Hello World

Zaczynamy!

Dzisiaj w ten niezbyt piękny jesienny wieczór, podczas poszukiwań inspiracji, aby stworzyć coś ciekawego mniej lub bardziej, urodził się pewien pomysł. Pomysł jest dość wyświechtany, bo znany od czasów starożytnych, chyba starożytnych. Pomysł ten dotyczy stworzenia swego rodzaju bloga - dziennika - w tym dzienniku, czyli de facto blogu, będę opisywał pracę nad pewnym projektem. Jaki to projekt i czego będzie dokładnie dotyczył tego jeszcze nie wiem. Założenie jednak jest dość proste. Rozpocząć projekt, rozpocząć jakąkolwiek pracę nad nim, a z biegiem czasu zobaczy się co się z tego urodzi.

Podstawowe założenia jakie sobie obrałem to zwykłe komentowanie moich prac nad projektem poprzez dzienne wpisy w tym miejscu. Oczywiście każdy z nas wie, że rzeczywistość jest brutalna i nie koniecznie będę tutaj pojawiały się dziennie wpisy, bo np. w taki weekend z reguły nie piszę ani linijki kodu toteż nie będzie czego opisywać, wtedy zwyczajnie wpisu nie będzie, ponieważ nie będzie o czym pisać. Opisywać będę ciekawsze zmagania z kodem, co mi sprawiło największe problemy w kodowaniu danego dnia, jak się z nimi uporałem, albo dlaczego się z nimi nie uporałem. Jako, że projekt będzie powstawał na Windowsie toteż może pojawić się kilka ciekawych notatek o zmaganiach z tym systemem operacyjnym. Mogą tutaj pojawić się wzmianki o edytorze, z którego obecnie korzystam i dlaczego, albo dlaczego zrezygnowałem z X założenia na rzecz założenia Y itd. Będę opisywał cały proces powstawania tworu od A do Z, więc pojawi się także opis samej instalacji i konfiguracji poszczególnych rzeczy, może nie będzie to coś w formie tutoriala krok po kroku, ale parę spraw na temat konfiguracji danych programów, ustawień itd. na pewno się pojawi.

Na koniec najważniejsza chyba sprawa początkowy wybór języka w jakim będzie powstawać twór z czego będę korzystał wstępnie przy jego tworzeniu i nadam mu na samym końcu, czyli za parę linijek, pierwszą nazwę.

Projekt będzie powstawał przy użyciu Pythona, czyli bardzo fajnego języka. Prosty do nauczenia się i bardzo estetyczny oraz elastyczny język. Do tego będę używał frameworka Django, ponieważ uznałem, że projektem będzie aplikacja webowa. Aplikacja będzie hostowana w serwisie AppFog. Wszelkie pliki będą ogólnodostępne i trzymane w repozytorium Gita lub Mercuriala, na co dzień pracuję z Mercurialem, więc może w ramach odskoczni skorzystam z Gita. W każdym bądź razie wszelkie pliki będą dostępne w serwisie BitBucket. Na chwilę obecną to chyba wszystko co chciałem tutaj napisać. Pozostaje tylko nazwanie tworu. Wstępnie postanowiłem nazwać twór HappyCow. Dlaczego tak? Nie wiem.

Zachęcam wszystkich, którzy zawitają tutaj i przeczytają coś ciekawego o pozostawienia komentarza, notki, czegokolwiek. Zachęcam również w późniejszym czasie do komentowania kodu, który powstaje. Do pisania co jest fajne, a co złe i warto zmienić to na coś innego. Mam też nadzieję, że podołam wyzwaniu i będą tutaj pojawiać się w miarę regularnie ciekawe notki.