Monday, September 28, 2009

Jakość a czas pisania artykułów

Poczyniłem dzisiaj refleksję dotyczącą jakości a czasu pisania artykułów.
Miło mi, kiedy gro osób jest zniecierpliwionych i oczekuje kolejnej części kursu, serii artykułów. Jednak równocześnie presja skłania ku pośpiechowi. A na tym cierpi jakość. Być może są ludzie zdolni, którzy piszą artykuł od razu w formie w jakiej chcą go zobaczyć. W moim przypadku mam wizję, ale aby ją osiągnąć muszę najpierw napisać to co chcę zawrzeć. Później trwa przeredagowywanie. I ten właśnie proces jest długotrwały. Pozmieniam szyk zdań, część informacji wyjmę z tekstu i ujmę w formie tabelki, wzmiankę o innych pominę. Następnie potrzebuję tygodnia, w którym myślę jak poprawić ten tekst dalej, co jeszcze jest w nim zbyt skomplikowane ...
Po tygodniu siadam i wprowadzam kolejne poprawki itd... Czasami dobry tekst powstaje dwa miesiące. Oczywiście - napisany jest w 2 dni, ale gotowy dopiero po 60-70.
Takie życie:) Staram się jak mogę. Jak widać wrodzonego talentu nie mam. Chociaż zdarza mi się, że jakiś temat jest "na fali". W takim sensie, że mnie obecnie pasjonuje i pochłania. Wtedy artykuły, prawie w finalnej formie, wychodzą jak z rękawa. Ale wtedy jest kilka dni nie odchodzenia od komputera i czasochłonnego spisywania myśli - na co często nie mogę sobie już pozwolić (studia, praca). No i tyle :]
Pozdrawiam!

Friday, September 4, 2009

I(IS)nwazja (aktualizacja)

Dzisiaj grzecznie od rana chcę siąść do kolejne częściu kursu developerów Drupala. Odpalam sobie Chrome i wchodzę na witrynę http://localhost/drupal7/admin/structure/modules a tu nagle


Szybkie spojrzenie na localhost


I wszystko jasne. Mój Apache został brutalnie skazany przez upgrady Windows na banicję. Szkoda tylko, że nikt mnie o tym nie poinformował. To jeden z tych przypadków "przecież wczoraj działało" i z jakiś przyczyn nagle moja Vista stwierdziła, że w sumie to nie ważne, że postawiłem sobie na porcie 80tym serwer Apache bo przecież ona wie lepiej co jest dla mnie lepsze i po cichu w upgradach uszczęśliwi mnie IIS7.
To jest tylko serwerek domowy, developerski. Nie ma więc o co płakać, ale jeżeli ktoś miałby taki am myk w środowisku produkcyjnym - to byłaby to masakra. Zaraz spróbuję wyłączyć dziada i wrócić do pracy, ale MS nie zapłaci mi za stracony czas.

Problem powodowały upgrady "Apple Software Update" (które przyszły wraz z Bonjour) nie mechanizmy Microsoftu.

Thursday, August 27, 2009

Drupal 7 zaczął maleć

Przez ostatnie kilka tygodni Drupal 7 rósł. Dosłownie Od około 1,54 MB wzrósł do 1,95 MB. Wszystko posuwało się do przodu. Aż do "teraz". Jakiś czas temu zauważyłem spadek, który na dzień dzisiejszy zatrzymał się na poziomie 1,91 MB. Czyżby przyszedł czas na usunięcie starych funkcji, przeczyszczenie niekompatybilnego kodu i "refactoring size"? Ciekawe. Obserwując ten, jakże świeży trend, można wnioskować, że został ukończony pewien duży etap. Pytanie, czy to już koniec? Drupal 7 ma zostać wstępnie wydany najpierw "dla firm", dopiero później usłyszy o nim świat. Kto wie, czy za kuluarami nie nastał już właśnie ten moment? Z jednej strony ilość ticketów w bugtrackerze sugeruje iż przed developerami jeszcze długa droga. Nikt jednak nie wie nic "na pewno" a niejasna i niezgłębiona myśl releaserów Drupala nie pozwala przeniknąć się i odkryć etapu, na którym znajduje się projekt. Ciekawe.

Monday, August 24, 2009

Myśl na dziś - konsola i GUI

Instalując Linuksa spędzasz trzy dni na dostosowaniu środowiska graficznego do swoich upodobań.
Instalując Windowsa spędzasz trzy dni na dostosowaniu linii poleceń do swoich upodobań.

P.S. Przy czym w pierwszym konsola działa odrazu tak jak chcesz a w drugim akceptujesz środowisko graficzne takie jakim jest.

Autor zdaje sobie sprawę, że stwierdzenia są bardzo ogólne i nie odnoszą się do większości użytkowników systemu są to tylko subiektywne odczucia spowodowane dzisiejszym dniem w pracy.

Wednesday, July 29, 2009

Python i Ruby w jednym stali domu ...

... o ASP.NET C# nie mówiąc nikomu.

Bolączki początkującego w ASP.NET

Może to bolączki początkującego programisty a może rozpieszczenie. Nie wiem. Wiem jedno - ASP.NET to "pain in the ass". Ale od początku.
Interfejs stworzył kolega. Tyle wiem o tym jak to się robi. Mu się udało. Ja miałem zacząć wypakowywać go treścią z bazy danych. To co oferuje C# w tym zakresie jakoś nie zachwyca. Zacząłem od tworzenia zapytań w "stringu" i podpinania pod kontrolkę. No i działało... Kiedy już byłem zadowolny ... przypomniałem sobie o SQLInjection :/ Oczywiście funkcji do escapowania nie zaświadczysz w tak nowoczesnym języku jak C#.
Zaświtała mi myśl, aby zobaczyć czy może nie warto (póki czas) przerzucić się na MVC. Składnia SQLowata wbudowana w język programowania fajna, ale totalnie biedna. Bez joinów nie pakuję się w tą zabawę.
Wróciłem więc do zwykłego ASP.NET. Skoro już muszę w tym programować to może stworzę sobie fajną abstrakcję dla bazy danych. Zleciała mi na tym większość dnia. Niestety wybrałem ślepą uliczkę. Tylko dlaczego tak cudowne środowisko jak Visual Studio nie powiedziało mi, że wybierając na target SqlDataReader nie uda mi się go podpiąć jako DataSource do GridView z paginowanie. Nie wiem. A może po prostu nie wiedziało. Tak więc w cudowny sposób stanąłem z gotową, ładną acz kompletnie nieużyteczną klasą do obsługi bazy danych i straconymi 10 godzinami roboczo godzin. Dobrze, że chociaż mi za nie zapłacą.

Maszyna czasu - wskazówka cofa się

Mój dzisiejszy dzień i w ogóle całe programowanie w ASP.NET przypominają mi młodość. Czasy, w których nie wiedziałem co to framework. Czas, w którym wymyślało się koło na nowo. Czas, w którym tworzyło się mnóstwo autorskich rozwiązań.
W ASP.NET to nieunikonione. Nie jeżeli choć troszkę próbujemy dorównać wygodzie oferowanej przez takie technologie jak Django, Pylons, Symfony czy "Drupal Framework". A chyba nie umiem już zaakceptować faktu, że "coś jest źle zrobione".
Pomimo braku wygodnych i dobrze przemyślanych mechanizmów nie natrafiłem na jakiś wysyp "gotowców", które ułatwią Ci życie w sieci. A szkoda. Klasa do porządnej obsługi bazy danych by się przydała. Obecnie - wygląda to dziwnie.
Przyglądając się technologiom stosowanym w ASP.NET mam wrażenie, że tym co tam się znalazło rządziła "burza mózgów". 30 pomysłów, które po prostu zaimplementowano a potem zaczęto się zastanawiać jak to ma razem działać. I coś tam "sklecono". Szalenie niewygodne, nieelastyczne i dziwnie niskopoziomowe.

Pokolenie RuPy

Możemy kłócić się całymi latami o wyższość jednej technologii nad drugą. Idealizować Scalę, krytykować Pythona za niekonsekwencję, Rubego za "abstrakcję". Jednak po dzisiejszym dniu mam to po raz kolejny w nosie. W każdym z tych języków tworzenie witryn to bajka. Żal mi całych mas ludzi, którzy myślą, że ASP.NET to szczyt możliwości. Zarazem zaczynam z każdą chwilą doceniać każdy kolejny projekt, który przyjdzie mi tworzyć z użyciem, którejkolwiek z tych technologii.
Wszystkim, którzy cierpią na bezsenność z powodu wymyślania argumentów na korzyść/niekorzyść jakiegoś języka programowania - daję receptę. Zaprojektujcie w ASP.NET system newsów z komentarzami i bazą użytkowników. Spróbujcie zabezpieczyć aplikację przed XSS, CSRF, SQLInjection z użyciem C# i zróbcie to równie ładnie jak w Python'ie czy Ruby'm. Efekt - gwarantowany: "No more tears".

Podsumowanie

Część artykułów robiących wielkie halo wokół Iron Ruby i Iron Python to mydlenie oczu. Odniosłem kiedyś wrażenie, że Microsoft "robi łaskę", że implementuje te dwa świetny języki na swojej platformie. Może być tylko inaczej. MS idzie po najniższej linii oporu. Stara się zapewnić, godne porządnego, szanującego się programisty, (sic!) środowisko. Środowisko, które zacznie zbliżać się możliwościami do obecnych trendów. Jednak moim zdaniem jeszcze daleko do tego. Oczywiście. Elastyczność Ruby'go i Python'a będzie biła na głowę C# w każdym miejscu i usprawni tworzenie witryn o 150%. Jednak dopiero zastosowanie frameworków znanych ze świata CPython'a czy CRube'go sprawi, że będzie to opcja do rozważenia.

Prawda jest taka, że Microsoft ma problem. Ten problem nazywa się IIS. Jak widać doszli do wniosku, że jedynym wyjściem z niego to zrobić działające z nim implementacje tego co dobre. Oby tylko nie "ulepszyli" całości po swojemu robiąc z genialnych technologii kolejną, której nie da się używać.

P.S. Autor podkreśla na koniec, że w ASP.NET programuje bardzo krótko i negatywne zdanie o technologii może wynikać ze słabej znajomości języka.

Wednesday, July 22, 2009

Dlaczego istnieje ASP.NET MVC ?

Od wczoraj jestem "szczęśliwcem". Szczęśliwcem ponieważ mam możliwość (a dokładniej nie mam wyboru) programować w ASP.NET 3.5 w VS 2008.
Szczerze mówiąc - pogubiłem się. Chodzi o to, że niby ASP.NET jest jedno a jednak mówi się o ASP.NET Server-Side, ASP.NET AJAH, ASP.NET AJAX, ASP.NET AJAX + jQuery i nie wiem czy jest coś jeszcze ... ah tak ! Mówi się o ASP.NET MVC ... i to wszystko razem ! powoduje, że się totalnie gubię.

Chciałbym zacząć tworzyć stronę w czymś nowym... nowoczesnym, w czymś co jest obecnie na topie. Jednak obecnie już nie wiem co jest na topie i w co warto inwestować swoje zasoby. Który z tych wszystkich ASP przetrwa próbę czasu.

Wiem jak działa ASP.NET jako taki. Pisanie eventów do elementów witryny przeciągniętych z toolbox-ów. To było to udoskonalenie pozwalające oddzielić warstwę logiki od prezentacji. No i wszystko pięknie ... do momentu gdy nie spotkałem się z informacją, że istnieje ASP.NET MVC... Dlaczego?! zapytałem sam siebie. Czyżby innowacyjna na skalę całej sieci architektura tworzenia witryn internetowych Microsoftu miała okazać się ostatecznie źle zaprojektowaną ? Po co komu kontrolery i modele skoro wszystko można robić na elementach świetnie integrującymi się z bazami danych?

Szczerze mówiąc tak jak od 2 dni próbuję ogarnąć ten chaos tak mogę powiedzieć jedno. Na początku byłem pod ogromnym wrażeniem, że taktyka znana mi z VB 6: przeciągnij, kliknij dwa razy, zaprogramuj - działa również w wypadku witryn internetowych. Szybko, miło przyjemnie - syfiaście od strony źródła witryny, ale trudno.
I teraz nagle (na to wygląda) okazuje się, że (zgaduję - ale przecież z jakiś przyczyn powstało ASP.NET MVC) taka metoda tworzenia witryn jednak nie jest taka świetna ? Wprowadza się MVC ?

Obecnie wymaganie mam jedno: chciałbym stworzyć 99.99 AJAXową aplikację internetową w ASP.NET korzystając z maximum bajerów, które tam napchali. Jeżeli ktoś wie które ze wszystkich wybrać - byłbym wdzięczny.

Thursday, July 16, 2009

Obwiniajcie reżyserów - filmy są niewinne

Często wybierając się na jakiś film do kina lub chociaż chcąc wybrać repertuar na "filmowy wieczór" z przyjaciółmi zbieram opinie od znajomych. Jakie filmy im się podobały, co warto obejrzeć. Niektórzy wciąż wygłaszają subiektywne opinie, inni - rzetelniejsi - starają mi się w skrócie opisać klimat i wątek aby możliwie obiektywnie opisać mi jakiego kina mam się spodziewać. Ocenę pozostawiają mi. Jest też kilka osób, które zna mnie już na tyle dobrze, że mówią często "spodobałoby Ci się", albo "jak podobało Ci się to obejrzyj też to - trochę straszne - ale zobaczysz, że warto się pobać. W Twoich klimatach." Czasami trafiają, czasami nie, ale generalnie znają mnie już trochę i doradzają mi najlepiej jak potrafią.

Opinie o filmach

Opinie jakie czytam pod recenzjami filmów ... hmm ... Ujmę to tak. Nie rzucają mi się w oczy opinie obiektywne. Czyli fakty. Raczej krzykliwe "pierwsza część była lepsza", albo "super", czy coś w stylu "po co w ogóle kręcili coś jeszcze", "idźcie koniecznie, genialny film". Nic nie mówiące komentarze, przez które trzeba się przedzierać.

Pośród fal takich i podobnych uwag można czasem znaleźć perełki. "Jestem wrażliwą osobom i moim zdaniem w filmie jest za dużo krwi.", "Mój ośmioletni syn bawił się świetnie, ale jego starszy brat, lat 17, wynudził na śmierć.", albo "Mam 28 lat, jestem matką dwójki bliźniaków - lat 13. Moim zdaniem film jest zbyt brutalny jak na 13latków. Za dużo w nim przemocy."

Takie opinie, które wnoszą coś do ogólnego opisu filmu, to rzadkość. Chwała tym ludziom, że są ! Najczęściej spotyka się je w komentarzach pod bajkami dla dzieci. W innych często takich zimnokrwistych, naszpikowanych faktami ocen brak.

100 punktów i sławę wróżę portalowi, który wprowadzi do systemu komentarzy guziczek "odsiej subiektywne".

Dlaczego winicie niewinne filmy?

Chciałem skupić się na opiniach w stylu: "ten film jest do du**" albo "po co robiliście kolejną część? To chłam w porównaniu z pierwszą."
Weźmy na start Trylogię Tolkiena. Jest nakręcona i wyreżyserowana dość jednolicie - nieprawdaż ? Nie ma jakiś szczególnych różnic pomiędzy nimi. Styl, kostiumy, Świat są na mojego oko spójne. Nic dziwnego skoro całość wyreżyserował ten sam gość Peter Jackson. To jest nasz wzór. Teraz czas na odejścia od reguły.

Ktoś pamięta "Krótkie spięcie" ? Czy komuś podobała się bardziej druga część od pierwszej ? Mi osobiście nie i myślę, że istnieje znaczna rzesza osób, która podziela moje zdanie. Może to przez to, że pierwszą część wyreżyserował John Badham a drugą już Kenneth Johnson. No ale nic może to przypadek. Idźmy dalej.

Wracając, z kina po "Harry Potter i więzień Azkabanu" miałem dziwny niedosyt. Coś mi nie grało. Nie miałem nic filmowi konkretnie do zarzucenia, po prostu... takie dziwne uczucie, że coś było nie tak, źle, że nie na taki film się wybierałem. Tym bardziej dziwne, że dwie poprzednie części były super. Po powrocie sprawdziłem reżysera. Nie był to Chris Columbus ale Alfonso Cuarón. No cóż życie.

Butterfly Effect

Jestem obecnie na świeżo po obejrzeniu trzeciej części Efektu Motyla. Drugiej nie widziałem wcale. Pierwsza szalenie mi się podobała. O każdej kolejnej opinie były różne (te subiektywne). Część pisała, że jest super, inny, że beznadzieja.
Z pierwszą częścią nie miało to za bardzo nic wspólnego. Tam ktoś miał pomysł i ten pomysł było widać w filmie. On urzekł tych, którzy okrzyknęli ten film genialnym.

Po obejrzeniu trzeciej części znowu sprawdziłem reżysera. Zmienił się. Gość zrobił film o zabijaniu. Film, opinie o którym zaczęli wygłaszać nie specjaliści od "Butterfly Effect", ale specjaliści od filmów w stylu "Piła" a w tej kategorii (domyślam się bo nie jestem fanem) BFE 3 jest myślę fatalny. Z jakiś przyczyn reżyser wepchnął film do szuflady innej kategorii, kategorii gdzie nie ma szans, kategorii, w której opinie przestały dotyczyć tytułowego motywu a zaczęły "historii zabijania", kategorii gdzie głos zaczęli zabierać wielbiciele gore i innych - pokrewnych.

Przez różową szybkę

Jakie są z tego wnioski. Moim zdaniem idąc na film należałoby patrzeć nie na tytuł, ale na tytuł i na reżysera - a często już ten drugi wiele nam powie. Można szybko i bez problemu sprawdzić jego portfolio. Być może sprawdzenie w tworzeniu jakich filmów ma doświadczenie da nam wystarczający pogląd o tym czego możemy w kinie się spodziewać.

Jeżeli trzecia część HP była IMHO gorsza niż dwie poprzednie, a BFE 3 to "Time-machine Saw-killer" a nie Butter Fly Effect to może czas oceniać filmy po reżyserach i to ich karcić za to co nam się podobało a co nie? Warto też odnosić się do tego co podobało nam się w pierwszej części. Ta sama opinia względem "którejś części" i bez podobnego porównania zmienia wszystko.

Chiny serwisowi, który wprowadzi w komentarzach opcję "Za najlepszą z poprzednich części uważam: (o) pierwszą, ( ) drugą, ( ) trzecią".