up home page bottom

bottom

Klasy, obiekty, PHP i ja

Tak się złożyło, że od prawie trzech lat jestem głównym programistą webowej części dość dużej aplikacji biznesowej silnie kastomizowanej pod klientów. Do lutego byłem też jedynym programistą webowym tej aplikacji. No i wiadomo jak to jest, gdy programista jest jeden, a pracy pełno i zwykle na wczoraj: kod ma powstać i działać! Może być bałaganiarski, brzydki. Grunt, że działa. No i kod działa.

Od lutego jest już nas dwóch i pół pracujących nad tą aplikacją: Grzegorz, Wojtek Praktykant i Ja. Pojawiły się dni bez nawału pracy, można więc trochę popracować nad kodem. I starym i nowym. I jakoś zeszło na programowanie obiektowe (większość kodu napisana strukturalnie, wiem, nie bić!). Z programowaniem obiektowym miałem styczność na studiach. Niestety tam nikt nie był na tyle dobrym nauczycielem, aby pokazać, że obiektowo może być lepiej niż strukturalnie (a strukturalnie programuję pół mojego życia i na studia poszedłem mają wyrobione nawyki w tej dziedzinie). No i pisałem strukturalnie. W zeszłym tygodniu coś mnie jednak tknęło, aby przypomnieć sobie obiektówkę. I był to strzał w dziesiątkę. Przez 4 dni opracowałem klasy bazowe dla kilku funkcji aplikacji i teraz dziwię się, czemu wcześniej nie pisałem obiektowo. To co przedtem powstawało w kilka dni teraz można zrobić w kilka godzin. Przykład: rejestr KP i KW. Funkcjonalnie to samo, tyle, że na odwrót. Raz plus, raz minus. KP powstały ze dwa lata temu, KW trzeba było dorobić teraz. W jeden dzień przerobiłem KP na klasy i nagle się okazało, że KW robi się w 15 minut. Wystarczy nadpisać kilka właściwości klasy bazowej i jedną metodę. Może odkrywam Amerykę, ale jak dla mnie rewelacja! Coś czuję, że więcej już nie będę pisał strukturalnie. Za dużo czasu można w tym stracić i za dużo bałaganu w kodzie wygenerować!

Wordpress 2.5 i tagi

ZauważyÅ‚em dziÅ› dziwny błąd Wordpress 2.5 zwiÄ…zany z obsÅ‚ugÄ… tagów (możliwe, że wystÄ™puje także w poprzednich wersjach). JakimÅ› magicznym cudem WP 2.5 pozwala na stworzenie dwóch tagów o tej samej nazwie i slugu. Ale to nie koniec. Prowadzi to z jednej strony do baÅ‚aganu w tagach, a z drugiej do błędnych powiÄ…zaÅ„ postów z tagami. Co z tego, że zmieniam nazwÄ™ jednego zduplikowanego tagu z “Fototechnika” na “Fototechnika2″ i dla postu wybieram tag “Fototechnika” z listy podpowiedzi, skoro WP przypisuje post do tagu “Fototechnika2″. Usuwam tag “Fototechnika2″ i nowy post przypisuje do istniejÄ…cego tagu “Fototechnika”. MyÅ›licie, że WP zadziaÅ‚a prawidÅ‚owo? Nic bardziej mylnego. WP stworzy nowy tag “Fototechnika” o slugu “fototechnika”, choć ja wybraÅ‚em tag “Fototechnika” o slugu “foto”. Paranoja… MÄ™czyÅ‚em siÄ™ z tym pół godziny, aż wreszcie rÄ™cznie skasowaÅ‚em w bazie danych błędne tagi i poprawiÅ‚em slugi na identyczne do nazw tagów.

Wordpress 2.5 i Gallery2

Zachciało mi się zmian. Wygląd bloga to jedno, upgrade engine to inna para kaloszy. Wordpress 2.5 jest dostępny od dwóch tygodni, postanowiłem zrobić upgrade od wersji 2.3. Wszystko pięknie ładnie, jest backup plików, nowe pliki wgrane, odpalona procedura aktualizacji bazy danych. Działa. Nie do końca. Plugin WPG2 integrujący Gallery2 z Wordpressem nie działa do końca z WP 2.5. Aby było ciekawiej, dla części wstawionych obrazków z Gallery2 zdjęcia się pojawiają, dla części nie.

Postanowiłem przywrócić wersję 2.3 engine. Niestety, o ile pliki udało mi się przywrócić, to zmian w bazie danych już nie. Zabrakło tabeli albo dwóch. I jestem skazany w Wordpress 2.5. Część niedociągnięć pluginu naprawiłem sam (regexp rulez! a PHP jest prostym językiem). Przynajmniej zdjęcia się wyświetlają. Szybkie dodawanie zdjęć do postów już nie. Trudno, dam radę.

A tak ogólnie, żaÅ‚ujÄ™, że zrobiÅ‚em ten upgrade. WP 2.5 nie wnosi nic nowego, interface użytkownika niby miaÅ‚ być lepszy, ale chyba nie wyszÅ‚o. Stary interface byÅ‚ lepiej pomyÅ›lany, byÅ‚o mniej przewijania i caÅ‚ość miaÅ‚a wiÄ™cej sensu. WiÄ™c jeÅ›li ktoÅ› myÅ›li o zmianie, to raczej nie polecam…

Kod źródłowy Windows Vista

vista.gif

I oj…. ten żart nie jest bardzo oderwany od rzeczywistoÅ›ci….

Męczarnie web development

JakoÅ› tak siÄ™ potoczyÅ‚o moje życie, że skoÅ„czyÅ‚em jako programista webowski. Ok, nie jest tak źle jak siÄ™ może wydawać. Mam to szczęście, nie klepiÄ™ stron internetowych (no dobra, czasami klepnÄ™ jakiÅ› engine, ale tylko czasami, grafiki już nie ruszam) a “portale korporacyjne”, “aplikacje intranetowe” i inne takie. Czyli w zasadzie rzeczy które robiÄ… coÅ› konkretnego i w jakiÅ› tam sposób komuÅ› pomagajÄ… w prowadzeniu biznesu. W sumie, to ostatnio nawet już coraz mniej programujÄ™, mam od tego zespół, a coraz wiÄ™cej czasu pochÅ‚ania mi pisanie dokumentacji i zarzÄ…dzanie zespoÅ‚em.

Wracając do tematu. Już jakiś czas temu znalazłem gdzieś taki o to diagram:

breakdown.png

I im dÅ‚użej na niego patrzÄ™, tym bardziej dochodzÄ™ do wniosku, że osoba która go stworzyÅ‚a starÅ‚a zÄ™by na tworzeniu stron WWW. Czysta prawda. W tym caÅ‚ym biznesie zwiÄ…zanych w programowaniem WWW wiÄ™cej czasu jest marnowane na gÅ‚upoty i nieprzestrzeganie standardów W3C przez programistów przeglÄ…darek niż na cokolwiek innego. Szczególnie tyczy siÄ™ to IE. I pomyÅ›leć, że ma wejść IE8 z 3 enginami renderujÄ…cymi. Już siÄ™ bojÄ™….

Co by siÄ™ dziaÅ‚o gdyby programiÅ›ci budowali samoloty…