Uwaga, blog przeniesiony

Posty na tym blogu już nie będą się pojawiać. Zapraszam gorąco pod nowy adres: blog.grzegorzpawlik.com



Subskrybuj ten blog...

czwartek, 13 listopada 2008

Hosting idealny (php, postgreSQL, django, shell)?

Wydaje mi się, że znalazłem dla siebie hosting idealny. Serio, to chyba najlepszy polski hosting za rozsądną cenę. Jakiś czas temu szukałem takiego, który dałby mi przynajmniej dostęp przez ssh do plików.
Wiele jest takich, które dają sftp, ale to trochę mało. Po wielu godzinach poszukiwań znalazłem.

Otóż, Panie i Panowie! Najlepszym hostingiem w Polsce jest ...
tutududu...
moim zdaniem oczywiście
VIPServ.org
(zaczynając od pakietu VIP2008). Wymienię listę wspaniałych rzeczy, które oferuje za cenę 9,99zł/miesiąc, oprócz podstaw takich jak php, mysql
- dostęp do konta przez SSH (z uwagi na zdarzające się programowanie w plenerze korzystając z publicznych hotspotów - dobrze choć zaszyfrować hasło ;))
- zainstalowany SVN i zintegrowany z nim bugtracker TRAC
- możliwość opłacania konta nawet na jeden dzień! (nie wiążesz się na cały rok)
- baza danych postgreSQL i sqlite3
- DJANGO!!!
And last but not least
- wspaniała obsługa techniczna!

Jak ta obsługa techniczna wygląda? Otóż w momencie kiedy przeglądałem ich ofertę nie było mowy o pythonie czy django. Dlatego wysłałem zapytanie i po równie krótkiej co przyjemnej wymianie maili - django zostało doinstalowane :D. Po niewielkiej współpracy z adminem udało się przezwyciężyć problem ze współpracą django z sqlite i wszystko śmiga :) Pewnie jest jeszcze kilka szczegółów, które trzeba będzie dopracować. Ale powiedzcie mi:
CZY WASZ HOSTING TO POTRAFI?

Podsumowując: VIPServ.org daje Ci dużą elastyczność przy niewygórowanych opłatach.
Będę teraz prywatnie używał go przez jakiś czas. Jeśli okaże się równie niezawodny co elastyczny - będę go z przyjemnością polecał klientom. Wam już teraz polecam do przetestowania (5dniowy okres próbny + możliwość zapłacenia za na przykład miesiąc).

Od dzisiaj do prywatnych projektów będę używał tylko tego

wtorek, 4 listopada 2008

Dziadostwo

Czasami korzystając z "nowoczesnych" usług internetowych się we mnie zbiera.

Dostanie się teraz usłudze sieci plus gsm o nazwie "Rachunek elektroniczny", którym spotykłem się niedawno. Pominę fakt, że jest nieintuicyjny, bo to oklepane i prawie każdy tak ma. Jak coś jest nieintuicyjne to albo przestaję korzystać z usługi, a jak nie mogę - przyzwyczajam się. Jak nieintuicyjne nie jest - po prostu tego nie zauważam.

Otóż gdy przyszło do zapłacenia pierwszego rachunku... kiepskawo. Śmigam po całym systemie na prawo i lewo w poszukiwaniu numeru rachunku. Znajduję pdf-a. Klikam. Pobieram. Otwieram. Zaznaczam numer, aby go skopiować do zlecenia w systemie banku (nota bene intuicyjnym i bez większych niedoróbek) i... pdf okazuje się zabezpieczony. Mogę sobie skopiwać obrazek z numerem rachunku.

Nie zrażam się, widziałem gdzieś ikonkę z możliwością płatności przy pomocy płatności(.pl). Klikam. Wchodzę. Wszystkie opcje poza płatnością kartą kredytową są zablokowane. A jak nie chcę płacić kredytem, to? Obok mizernie malutkiej lewej kolumny z piktogramami przedstawiającymi firmy obsługujące te transakcje jest szeroka kolumna chwaląca się jakich to banków ten system nie obsługuje. Jest tam nawet logo mojego banku. Co z tego, skoro są wyszarzone i nieaktywne?

Skończyło na tym, że jak za dawnych lat przepisałem numer konta z jednego miejsca w drugie (dobrze, że do perfekcji opanowałem sztukę takiego ustawiania rozmiarów okien, że bez problemu umieściłem je obok siebie).

Pozostaje mi satysfakcja, że nie dostaję rachunków papierowych i nie przyczyniam się wyrąbywania kolejnych hektarów puszczy amazońskiej... pod warunkiem, że drzewami z tej puszczy nie napalono w elektrowniach, które napędzają mój komputer, albo którykolwiek węzeł sieci po drodze.

ps. przypomina mi się podobna akcja w systemie e-bok UPC. Tam cały portal był we flashu (nienawidzę tego) i faktury też były w pdfach. W prawdzie nie były one zabezpieczone i mogłem skopiować tekst. Jednak były jakoś zawsze uszkodzone, więc ów skopiowany numer konta wyglądał nie lepiej niż to:
&^%$#$%^&*()(*&

środa, 15 października 2008

O współczesnej ekonomii

http://www.polityka.pl/rynek-w-cuglach/Lead33,1150,270751,18/

Pod tym linkiem znajdziecie wywiad pana Jacka Żakowskiego z Edmundem S. Phelpsem. Artykuł jest ciekawym głosem w ogólnej wrzawie wywołanym aktualnym kryzysem (wg niektórych finansowym, wg innych już gospodarczym, czy nawet globalnym).
Warto przeczytać nawet- a właściwie w szczególności- wtedy, gdy jedyna wiedza o ekonomii to ta czerpana z dzienników goniących za sensacją i polityków-ekonomów-hobbystów ;)

Gorąco polecam

poniedziałek, 6 października 2008

Nam obiektowo pisać (nie) kazano...

... czyli co się dzieje, kiedy ktoś kto nie wie dlaczego się używa kodu obiektowego, pisze takowy bo musi.
Jest sobie jedna, bardzo wazna metoda w bardzo ważnej klasie, w bardzo ważnym projekcie. Ciągnie się od linii 484 do majaczącej na horyzoncie (i zdecydowanie poza ekranem) linii 745.
Jest w niej o wiele za dużo. Sprawdza czy dane są poprwane, zlicza, podlicza, zapisuje do bazy - sprawdza czy dobrze zapisało, w razie czego robi rollback. Do tego na koniec wysyła maila.
No i bach! Okazało się, że w mailu trzeba wysłać jedną dodatkową informację i jak jej teraz szukać. Tak bardzo chciałbym mieć tą funkcję zrefaktorowaną. Nie mieć zagnieżdżeń, tylko ciąg wywołań prywatnych metod:
$this->zrobTo();
$this->zrobTamto();
$foo = $this->znajdzToITamto($bar);
...
$this->wyslijMaila($dane, $temat, $inneDane);

I tylko w trzech kropkach dodać $dane = array_merge($dane, $foo), albo coś równie banalnego. Ale nie. Najpierw 5 minut na znalezienie gdzie ten cholerny mail jest wysyłany. 10 na zlokalizowanie tablicy z której dane trzeba dołączyć do maila. Potem z 20 minut na poprawki + sprawdzanie czy wsztstko jest tak jak powinno.
No i to nieodparte poczucie. Ten szept na ramieniu mówiący "Możesz być pewien, że w kodzie od teraz masz jedną dziurę więcej (buahahahaha)".

Ale patrzę na motto tego bloga i myślę sobie - trzeba sobie radzić ze swoim kodem...

Co się dzieje, gdy dane są nie tylko w bazie?

Z tym problemem często spotykam się w pracy.

Standardowe zagadnienie - klient chce wrzucać obrazki na stronę, a my ze względu na bazę zapisujemy je jako pliki, a w bazie co najwyżej ścieżkę do niego.
No i niestety przeniesienie systemu na inny serwer (np. produkcyjny) to, oprócz kopiowania kodu i bazy, przenoszenie multimediów, które nie zawsze jest miłe i przyjemne.

Dlatego od jakiegoś czasu chodzi mi po głowie pewna koncepcja, która ten problem mogłaby rozwiązać.
Otóż pliki binarne, podczas uploadu należało by jednak zapisać w bazie. Do tego należałoby opracować komponent, który w przypadku żądania obrazka o id = 1 sprawdziłby odpowiedni katalog i po znalezieniu go - zwrócił jako odpowiedź. Z kolei przy jego braku w systemie plików - utworzył takowy na podstawie danych w bazie i w standardowy sposób zwrócił plik jako odpowiedź.

Świetnie by się do tego nadawały cake'owe behaviors. Do tego można by go sprząc z jeszcze jedną funkcjonalnością- plik mógłby być w bazie zapisywany (w razie podmiany zawartości) za każdym razem pod inną nazwą (np. id_kolejny_numer_wersji). Dzięki temu możnaby tym plikom ustawić nagłówki Expire z odległą przyszłością i korzystać z dobrodziejstw bufora przeglądarek...

Uwaga! blog przeniesiony

Posty na tym blogu już nie będą się pojawiać. Zapraszam gorąco pod nowy adres: blog.grzegorzpawlik.com
Komentowanie artykułów możliwe jest pod nowym adresem.