Jak zacząć?#
Pytania każdego nowicjusza typu: jak zacząć, czego się uczyć, który język wybrać, co lepsze itp. mnożą się na forach jak grzyby po deszczu. Każdy kto zaczyna musi przez to przebrnąć. Jest to istotna kwestia dlatego postanowiłem zaprezentować własny punkt widzenia. Przypominam jednak, że nie zajmuje się tworzeniem WWW zawodowo (jeszcze), dlatego moje podejście może być zgoła odmienne od ludzi obcujących z wieloma technologiami na co dzień.
Pamięć - bolączka niejednego kodera#
Nie chodzi mi o pamięć RAM, którą zawszę można zwiększyć. Należę do osób, które twierdzą że mają pamięć dobrą, aczkolwiek krótką. Niestety, w moim przypadku tak jest faktycznie, jestem w stanie nauczyć się bardzo wiele z dokładnością co do słowa, by po 2 tygodniach pamiętać 50% mniej, a po 2 miesiącach prawie nic. Przeważnie dotyczy to zagadnień, które mnie kompletnie nie interesują, nic dziwnego, że wyfruwają z głowy.
Jest to problematyczne, przy projektowaniu WWW dosyć odczuwalne. Poruszam temat dlatego, że wiele osób pisze, że tego jest za dużo, nie dadzą rady się wszystkiego nauczyć, nic z tego nie rozumieją itp. Panowie (lub panie), to nie szkoła, to nie klasówka, uczymy się zagadnień, które chcemy wykorzystywać dla własnych celów (nie ocen). Czapki z głów temu kto przeczyta/nauczy się czegoś raz i pamięta przez całe życie (ot tak na zawołanie).
Złotym środkiem są ściągawki, tak bezskutecznie tępione w szkołach/uczelniach. Mianem ściągawek określam materiały w przeróżnej formie, dostępne zawsze pod ręką i ułatwiające wykonanie danego zadania. Umiejętne wyszukiwanie informacji, segregowanie ich i budowanie własnych ściągawek to podstawa, bardzo ułatwiająca życie wszystkim z "wybrakowaną" pamięcią. Kilka przykładowych ściągawek:
- Google (lub inne wyszukiwarki) - ściągawka bez dna, umożliwia bardzo szybkie lokalizowanie problemu i jego rozwiązanie. Polecam zaznajomić się z mechanizmami wyszukiwania i korzystać z nich pełną gębą.
- Zbiory linków - mogą być własne, cudze, nie ma znaczenia. Są to posegregowane, wyselekcjonowane ściągawki.
- Kursy online - najlepiej wybierać te, które są aktualizowane systematycznie. Wykazy poleceń, ich opisy oraz przykłady są niezastąpione. Ich przewagą w porównaniu z papierowymi kuzynami są możliwości nawigacyjne; o wiele wygodniej kliknąć w link niż przerzucać dziesiątki stron książki.
- Środowiska programistyczne - dobre programy posiadają wbudowane helpy, podpowiadanie składni, opisy poleceń, i wiele innych praktycznych udogodnień przydatnych w codziennym programowaniu.
- Książki - co prawda mniej poręczne niż zbiory w formie cyfrowej, ale wciąż popularne. Istnieją tytuły godne uwagi, odpoczynek od "oczojebnego" LCD oszczędzi nam nieco wzroku. Pamiętaj, że oczy to organ, którego nie wymienimy (jeszcze), dlatego wymaga specjalnej troski. Recenzję niektórych pozycji zamieściłem w sekcji Literatura.
- Pliki - krótkie, poręczne zbitki gotowe do wydruku. Mogą zawierać wykazy podstawowych poleceń, ciekawe przykłady z krótkimi objaśnieniami czy inne wskazówki, o których warto pamiętać. W necie znajduje się wiele takich gotowców. W razie potrzeby wydrukować, bachnąć gdzieś przy stanowisku pracy i systematycznie korzystać (przy okazji trenując pamięć).
Z wyżej wymienionych korzystam na co dzień i bardzo sobie chwalę. Pomijam rozwiązania typu: piórnik z wyświetlaczem i pamięcią, długopisy na ultrafiolet albo z autorozwijanymi kartkami, teksty na gumkach itp. bzdury szkolne. Spoglądając wstecz muszę stwierdzić, że na każdym kroku mojej edukacji usilnie eliminowano umiejętność korzystania z samodzielnie zgromadzonych informacji na rzecz debilnego wkuwania na pamięć. Jest to chore podejście, które utrzymuje się od dziesięcioleci i niczemu dobremu tak naprawdę nie służy.
Wracając do tematu chodzi o to, żeby nie przejmować się ogromem rozwiązań WWW (ich złożonością). Sztuką jest rozwiązywanie problemów, wymyślenie czegoś nowego (najlepiej przydatnego) i późniejsze rozwijanie, a nie wkuwanie technologii wykorzystywanej do osiągnięcia tego celu. Z biegiem czasu część poleceń wejdzie w krew i ze ściągawek korzystać będziemy coraz rzadziej.
Przeglądarki internetowe#
Są to programy przeznaczone do przetwarzania/wyświetlania plików otrzymanych z serwera (lub odczytanych lokalnie). W zależności od typu MIME danego pliku przeprowadzona zostanie odpowiednia akcja. Przykładowo pliki (X)HTML zostaną wyświetlone, podobnie w przypadku plików graficznych. Niektóre programy mają wbudowane wtyczki obsługujące pozostałe formaty wprost w przeglądarce (np. .pdf
). Od strony technicznej więcej przeczytasz w dziale "Podstawy - Przeglądarki internetowe".
Z punktu widzenia webmastera dobra przeglądarka to taka, która obsługuje wszystkie technologie WWW zgodnie z definiującymi je specyfikacjami/standardami. Na tym polu bywa różnie, szczególnie biorąc pod uwagę nagły rozwój Internetu w ciągu ostatnich lat. Najnowsze języki jak (X)HTML5 i CSS3 są bardzo rozbudowane, ich pełna implementacja zajmie kilka lat. Ideał to sytuacja, kiedy wszystkie polecenia działają tak samo - niezależnie od stosowanego oprogramowania.
Obecna sytuacja w większości przypadków jest już do zaakceptowania. Niestety twierdzenie to dotyczy zawsze ostatnich wydań przeglądarek. Aktualny soft z zasady ma największe możliwości. Z drugiej strony, pędzenie za nowościami i "googlowy" system wydań (drobna zmiana i przeskok do nowej wersji) powoduje, że na rynku funkcjonuje wiele wersji tego samego producenta przeglądarek. Nie każdy aktualizuje oprogramowanie na bieżąco, czasami zwlekając nawet kilka miesięcy. Jest to dużym błędem dla takiego osobnika, ale i twórcy WWW mają przez to same problemy.
Rysunek. Czasami więcej nie znaczy lepiej - mnogość przeglądarek internetowych
Kulą u nogi wciąż pozostaje Microsoft ze swoim hiper, super, uber przeglądarką Internet Explorer. Polityka wydawania przeglądarki przez MS jest krzywdząca dla całego Internetu. Nowy produkt otrzymujemy zazwyczaj wraz z premierą kolejnej wersji systemu operacyjnego (2-4 lata). Jest to swoistym czopem blokującym wszystkich, którzy chcą pełną gębą korzystać z nowych technik. Co z tego, że wersja IE9 nadgania konkurencje, jeśli w czasie premiery nie ma wsparcia dla najpopularniejszego systemu Windows XP, a kolejne wydanie to pieśń przyszłości. Utrzymywanie stron we wstecznej kompatybilności z takimi produktami jest czasochłonne, kosztowne i bardzo problematyczne. Ten czas powinniśmy poświęcić na naukę i wdrażanie nowych rozwiązań.
Dlatego, jeśli tylko możesz, namawiaj wszystkich do przesiadki na coś alternatywnego, lepszego i rozwijanego na bieżąco. Z biegiem czasu wszyscy producenci włączą system cichych (automatycznych) aktualizacji, zagubione owieczki zostaną przywrócone na właściwą drogę. Tam, gdzie kompatybilność jest kluczowa, nie pozostaje nic innego, jak tylko zaciśnięcie zębów i rzetelne wykonanie swojej pracy.
Technologie WWW#
Języków towarzyszących przy tworzeniu stron internetowych jest dużo, bardzo dużo. Prawdę mówiąc przeglądając niektóre CV dwudziestoparoletnich osobników - część z wykazem znajomości różnych technik - czasami zaczynam powątpiewać we własne możliwości. Ludzie obyci w temacie wiedzą, że "znajomość" bywa różna i należy takie kwiatki traktować z przymrużeniem oka.
Wybór własnej ścieżki rozwoju zależy w głównej mierze od tego co chcemy osiągnąć, do czego wiedzę chcemy wykorzystać i jakim czasem dysponujemy. Kwestię "zdolności" danego osobnika pomijam, uważam, że każdy może nauczyć się wszystkiego, niektórzy potrzebują do tego celu więcej czasu. Niemniej jednak wszystko wymaga odpowiedniego nakładu pracy, nic samo się nie zrobi (nauka > wykonanie > testowanie > rozwijanie > zarobek - oby).
Istnieją utarte ścieżki postępowania typu: (X)HTML + PHP + MSQL, Flash/Flex itd. Wiadomo, że im więcej wiemy/umiemy tym lepiej, niestety zgłębienie tajników każdej technologii jest długotrwałe, a czasu w życiu coraz mniej. Nigdy jednak nie stracimy na tym, że nauczmy się w dobrym stopniu rzeczy podstawowych, które wykorzystywane są ciągle w kolejnych językach.
Scharakteryzuję krótko kilka najpopularniejszych rozwiązań, ich wady, zalety oraz przedstawię główne przeznaczenie.
Języki znacznikowe#
Są to statyczne technologie przeznaczone do opisu struktury/wyglądu dokumentów. Pozwalają w minimalnym stopniu na dynamiczną interakcję z użytkownikiem.
(X)HTML#
HTML, XHTML, HTML5 oraz późniejsze to trzon wszystkiego. Język służy do opisu struktury strony. Za pomocą specjalnych poleceń (znaczników) otaczamy właściwą treść, informując przeglądarkę, czym ta treść właściwie jest (tekstem, zdjęciem, kontrolkami formularza, multimediami itp.) Dzięki temu przeglądarka wie, co z taką treścią dalej zrobić w procesie wyświetlania/przetwarzania.
Z (X)HTML-a korzystają wszystkie pozostałe technologie, dlatego warto temu językowi poświęcić nieco uwagi. Gruntowna znajomość języka przyda się na każdym kroku naszej webmasterskiej przygody. Z punktu widzenia programisty będzie to najprostsza technologia, z którą się zetkniesz.
Pliki (X)HTML można tworzyć ręcznie za pomocą zwykłego edytora tekstu, mogą być także dynamicznie generowane przez inne języki (PHP, ASP, Python). Istnieją dodatki przyspieszające korzystanie ze znaczników (X)HTML-a w edytorach, np. Zen Coding.
Najnowsza odmiana (X)HTML5 oferuje wiele ciekawych rozwiązań. Oprócz uporządkowania starych i dodania nowych znaczników, udostępnia bardzo funkcjonalne API dla innych języków. Na dzień dzisiejszy (03.06.2011) nie jest to standard ukończony, obsługiwany przez przeglądarki w różnym stopniu, ale postęp prac nad specyfikacją i wdrażanie kolejnych poleceń do programów jest systematyczny.
CSS#
Język odpowiedzialny za wygląd strony. W przeszłości, HTML miał kilka poleceń odpowiedzialnych za formatowanie, obecnie całość przerzucona została do kaskadowych arkuszy stylów. CSS umożliwia sterowanie wyglądem całej strony z jednego pliku. Umiejętne projektowanie strony i arkusza stylów pozwala kilkoma poleceniami całkowicie odmienić design witryny, bez konieczności zmiany/dodawania nowych znaczników (X)HTLM w plikach.
Nauka CSS jest trudniejsza, szczególnie jeśli chodzi o zagadnienia wyświetlania i pozycjonowania elementów. Schody zaczynają się również w przypadku starych przeglądarek (głównie IE), które po prostu nie obsługują części poleceń albo robią to niepoprawnie, trzeba szukać odpowiednich obejść (hacków).
Najnowsza wersja CSS3 zawiera jeszcze więcej usprawnień i dodatkowych możliwości, jest bardzo rozbudowana, aż strach myśleć, kiedy zostanie w całości zaimplementowana przez główne przeglądarki.
Perfekcyjna znajomość CSS przyda się osobom zawodowo zajmującym się webdesignem, które pracują nad layoutem stron. Wiedza przełoży się na szybszy czas wykonywania danego projektu. W każdym innym wypadku należy wiedzieć jak działają arkusze stylów, orientować się w ich możliwościach i stosować w razie potrzeby.
Języki skryptowe#
Są to dynamiczne technologie przeznaczone do przetwarzania, zmiany lub tworzenia nowych danych, treści, obiektów itd. Nadają serwisom "żywego" charakteru, pozwalają na łatwiejszy rozwój strony, dodawanie nowych treści przez odwiedzających gości, tworzenia dużych społeczności skupionych wokół jednego projektu.
DOM#
Jest to bardzo interesująca technologia, tzw. obiektowy model dokumentu - sposób reprezentacji dokumentów (X)HTML oraz XML, niezależny od języka programowania. DOM tworzy drzewo całego dokumentu z jego elementów składowych (w odpowiedniej hierarchii). Udostępnia polecenia pozwalające na łatwe poruszanie się po takim drzewie, usuwanie oraz modyfikowanie elementów. Wachlarz manipulacji jest wszechstronny, można wybrać pojedynczy element, albo kilka spełniających określone reguły.
Z DOM korzystać będziemy głównie w czasie pracy z kodem JavaScript, można go także stosować np. w Java czy PHP. Specyfikacja nie jest trudna, warto znać najnowsze wersje, które udostępniają lepsze możliwości. Niestety w starszych przeglądarkach część poleceń może być nieobsługiwana lub obsługiwana nieprawidłowo, trzeba zwracać na to uwagę.
JavaScript#
Najpopularniejszy język skryptowy obsługiwany przez wszystkie wiodące przeglądarki (w IE wstępuje pod nazwą JScript). Utarło się, że jest językiem pracującym po stronie użytkownika, ale w praktyce można stosować go także po stronie serwera za pomocą NodeJS.
JavaScript to język programowania, który może pracować w różnym środowisku (serwer, przeglądarka internetowa, dowolny inny program). W zależności od środowiska JS współpracuje z pozostałymi technologiami. W przypadku przeglądarki korzystamy z (X)HTML, CSS, DOM. Takie hybrydy powodują, że czas wykonania całej pracy przez skrypt jest różny dla danej przeglądarki. Producenci programów ciągle ulepszają swoje silniki JS, tak by czas ten ograniczyć do minimum.
JS w ostatnim czasie przeszedł odrodzenie. Z języka przeznaczonego do dynamicznego manipulowania wyglądem strony, tworzenia prostych kalkulatorów, zegarków itp. upiększaczy WWW, stał się potężnym narzędziem, w którym można napisać rozbudowaną aplikację, np. edytor grafiki lub tekstu. Technika AJAX (asynchroniczny JavaScript) oraz nowe API z HTML5 stanowią solidne zaplecze dla większości projektów.
Korzystanie z JavaScriptu przebiegać może w dwojaki sposób. Za pomocą czystego JS, czyli stosujemy tylko wbudowane polecenia. Dzięki temu poznamy język od podstaw i napisanie w przyszłości nowych funkcjonalności nie będzie problemem. Można także skorzystać z gotowych bibliotek (jQuery, Dojo, Prototype). Są to skrypty napisane w JS, ale oferują dodatkowe, kompleksowe polecenia. Cała zabawa polega na tym, że skrypty mogą korzystać z pracy innych skryptów, dlatego ludzie piszą swoje własne gotowce i dzielą się nimi z innymi. Wspomniane wcześniej biblioteki są takimi dużymi, profesjonalnymi gotowcami. W Internecie jest cała masa gotowych skryptów, które można stosować w swoich projektach, bez konieczności pisania wszystkiego od podstaw.
Znajomość JS przyda się zawsze, zachęcam do wnikliwej nauki języka w czystej postaci. Za pomocą skryptów możemy manipulować zachowaniem dowolnej strony WWW, która akurat nie spełnia naszych oczekiwań. Język często wykorzystywany jest do pisania botów (automatów) w grach przeglądarkowych oraz do rozwiązywania problemów z kompatybilnością (lub błędną interpretacją poleceń) w przypadku starszych przeglądarek.
PHP#
Język pracujący po stronie serwer (innym przykładem może być ASP, Python, Perl). Oznacza to, że wysyłamy do serwera pewne dane, które zostaną przetworzone w odpowiedni sposób. Mogą być wykonane na nich pewne obliczenia, korekcje itp., wyniki można umieścić w plikach lub bazie danych. Po skończonej pracy skryptu można zwrócić odpowiedź dla czytelnika, np. w formacie strony (X)HTML. Tak to wygląda w dużym uproszczeniu.
PHP jest najpopularniejszym przedstawicielem tej rodziny, ma duże wsparcie zarówno wśród samych programistów jak i firm hostingowych. Znajomość języków po stronie serwera pozwala na napisanie dowolnego, rozbudowanego projektu. Wszystko zależy tylko i wyłącznie od naszych umiejętności, czasu oraz zaangażowania. Gra przeglądarkowa, portal społecznościowy, sklep internetowy, to wszystko jest w zasięgu ręki.
Do optymalnego i wygodniejszego zarządzania treścią język PHP stosuje się w połączeniu z bazą danych, np. MySQL. Można operować na plikach .txt
, ale jest to proteza dobra na czas nauki.
Przyznam bez bicia, że PHP-a znam w stopniu minimalnym. Po solidnym przyswojeniu tandemu (X)HTML + CSS + JavaScript (i innych webowych API), mój wybór padnie właśnie na PHP (ewentualnie Pythona), pomimo krytyki wielu "profesjonalnych" programistów. Twierdzę, że nawet w czymś najprostszym (chociażby JS) można napisać coś naprawdę interesującego.
Monolityczne rozwiązania#
Są to technologie, które w jednym środowisku pozwalają stworzyć cały projekt. Często do uruchomienia w przeglądarkach wymagają dedykowanej wtyczki.
Flash/Flex lub Silverlight#
Flash (firmy Adobe) umożliwia tworzenie animacji z wykorzystaniem grafiki wektorowej. Od wersji 5 wyposażony został w język programowania ActionScript (składnia podobna do JavaScriptu). Dzięki temu we Flashu można tworzyć interaktywne animacje i programy.
Flash głównie przeznaczony jest do tworzenia reklam, prezentacji oraz gier. Pliki z grafiką wektorową wykonaną w programie Flash są bardzo małe, poza tym obrazy wektorowe są skalowane. Jest to bardzo ważne, gdyż pozwala uniknąć niekontrolowanych zmian wyglądu strony WWW na przykład w sytuacji, gdy użytkownik zmieni rozmiar okna przeglądarki. Obsługuje strumieniowe przesyłanie danych (streaming). Podczas przeglądania stron WWW wyświetlane są pobrane elementy grafiki wektorowej, podczas gdy dalsze jej części cały czas są pobierane. Gdy pierwsze klatki filmu są już odtwarzane, kolejne klatki dopiero wpływają do komputera, następnie Flash odtwarza je z odpowiednią szybkością. W tym segmencie sprawdza się znakomicie, ma dobre środowisko przyspieszające cały proces tworzenia.
Podstawowymi wadami jakie zarzuca się technologii to konieczność instalowania zewnętrznych dodatków do przeglądarek (przez co zmniejsza się ich bezpieczeństwo) oraz obciążenie procesora. Pierwsza wada z mojego punktu widzenia może być zaletą, coś napisane we Flashu i uruchomione w jego playerze będzie działać i wyglądać tak samo - niezależnie od przeglądarki. Druga wada została poniekąd wyeliminowana, wykonywanie kodu w nowej wersji Flasha wspierane jest kartą graficzną, przez co zajętość procesora zostaje znacznie zredukowana.
Wiele osób przewiduje, że (X)HTML5 + CSS3 + JS (i jego otoczka) wyprze Flasha z rynku. Może to i prawda, ale w pewnym segmencie dalej będzie królował ten format. Obecnie o wiele łatwiej napisać grę we Flashu niż nowym HTML-u, nie wspominając już o streamingu plików wideo. W 2011 roku istnieje miejsce dla obydwu technologii, w 2012 pewnie też. Dalej zobaczymy jak sytuacja się rozwinie.
Flex także należy do Adobe, ale w przeciwieństwie do Flasha głównie nastawiony jest na tworzenie formularzy i treści. Flex jest więc tylko narzędziem ułatwiającym tworzenie stron we Flashu, które nie potrzebują zaawansowanych animacji. Silverlight to z kolei odpowiednik Flasha stworzony przez firmę Microsoft. Jest dużo mniej popularny, bardzo rzadko spotykany na stronach internetowych.
Na normalnych stronach WWW (gdzie priorytetem jest tekst) mnie osobiście wspomniane techniki irytują, zawsze mam włączoną blokadę plików Flash. Odpada problem z wyświetlaniem nachalnych reklam. Tylko nieliczne strony dodaje do wyjątków. Pomimo tego nie wieszam psów na Flashu, w pewnych sytuacjach zastosowanie tej technologii sprawdza się najlepiej.
Gotowe projekty#
Istnieje szereg gotowych rozwiązań dostępnych bezpłatnie (nawet w komercyjnych zastosowaniach). Są to gotowce przeznaczone dla osób, których celem samym w sobie nie jest tworzenie narzędzia, zgłębianie technik towarzyszących przy jego powstawaniu, a po prostu tworzenie treści lub obsługa danego projektu. Kiedy darmowy produkt nie spełnia naszych oczekiwań można sięgnąć po rozwiązania płatne.
Najprostszym przykładem mogą być szablony (X)HTML. Przeznaczone są dla prostych, statycznych stron lub jako wzór dla bardziej złożonych witryn. W Internecie znajdują się setki tysięcy takich przykładów, istnieją strony oferujące darmowe/płatne szablony.
Innym bardziej złożonym przykładem są całe silniki do zarządzania treścią oparte na językach skryptowych oraz bazie danych. Są to wszelkiej maści systemy CMS (Content Management System), blogi, fora, portale społecznościowe, gry online oraz sklepy internetowe. Na poziomie podstawowym wystarczy nauczyć się obsługi danego gotowca oraz możliwości dostępnych wtyczek/dodatków. Rozwój takiego projektu polega na wypełnianiu serwisu treścią, rozreklamowaniu, pozyskiwaniu nowych czytelników, ewentualnie na dodawaniu kolejnych funkcji. Wcale nie trzeba znać technik tworzących taki system - istotą jest jego użytkowanie. Oczywiście znajomość technik WWW umożliwi np. samodzielne optymalizowanie, pisanie dodatków itp. usprawnienia, ale nie jest to konieczne do osiągnięcia dużej popularności. Najważniejszą kwestią jest stosowanie zawsze aktualnych wersji, które poprawiają drobne błędy oraz luki w bezpieczeństwie - pamiętaj o tym!
Gotowych projektów jest naprawdę sporo. Każdy słyszał pewnie o Joomli, Drupalu czy Wordpressie. Ich instalacja i późniejsze stosowanie jest bardzo proste. Wiele firm hostingowych oferuje automatyczne kreatory złożonych usług, kilka kliknięć i mamy profesjonalną witrynę, której napisanie od podstaw mogłoby zająć kilka lat. Pomimo takich ułatwień zachęcam do nauki technik tworzenia WWW, przynajmniej w podstawowym zakresie. Taka wiedza przyda się zawsze, choćby do wprowadzania drobnych poprawek dla szablonu strony.
Grafika#
Jest nieodzowną częścią przy tworzeniu stron WWW. Strona bez ozdobników wizualnych wygląda bardzo blado i monotonnie. Co prawda dzięki CSS można ostylować stronę w znacznym stopniu, ale tam, gdzie to istotne nic nie zastąpi normalnych zdjęć.
W związku z powyższym konieczna staję się nauka dowolnego programu do obróbki zdjęć. Oczywiście nie musi to być Photoshop, proste czynności można wykonać choćby i w microsoftowym Paincie. W świecie zdominowanym przez komputery obsługa programu graficznego przyda się zawsze. W wielu profesjonalnych firmach oprócz programistów zatrudnia się także grafików odpowiedzialnych za wizualny aspekt witryny.
W zasobach Sieci znajdziemy wiele gotowych, darmowych zdjęć, banerów, przycisków, efektów i innych upiększaczy. Dobierając odpowiednio poszczególne elementy można osiągnąć fajne efekty, bez charakterystycznego dla grafików zacięcia artystycznego. Pamiętaj jednak, że upychanie grafiki wszędzie, gdzie tylko to możliwe jest dużym błędem, niepotrzebnie obciąża łącze internetowe, należy wszystko wyważyć.
Podsumowanie#
W tym momencie zakończę nieco przydługawy opis. Wszystko co przedstawiłem jest tym, co sam chciałbym opanować na poziomie co najmniej dobrym. Z technikami WWW obcuję od 2007 roku i wcale nie uważam się za jakiegoś wyjadacza w temacie - pewnie dlatego, że nie zajmuję się tym zawodowo. Rozrzut zagadnień jest tak duży, że w praktyce etap nauki trwa cały czas.
Jeśli planujesz dłuższą przygodę z programowaniem lub pisaniem stron WWW, to koniecznie znajdź jakiś punkt zaczepienia w dowolnym projekcie. Może to być pisanie/poprawa szablonów, pisanie skryptów, pomaganie innym na forach, rozwój jakiegoś projektu, cokolwiek co pozwoli systematycznie wykorzystywać daną technologię (najlepiej kilka). Nie zwracaj uwagi na zarobek, po prostu działaj aktywnie. Dzięki temu, w miarę upływu czasu, wszystko będzie o wiele prostsze, zaczniesz szukać wyzwań i poszerzać horyzonty poprzez naukę innych języków. Nie bez powodu powtarza się jak mantrę, że praktyka czyni mistrza.
Na zakończenie powtórzę raz jeszcze, że w tym fachu nauka to rzecz nieodzowna i towarzyszy przez cały okres tworzenia WWW. Internet jest jednym z najszybciej rozwijających się segmentów branży IT, przez co narzędzia i języki towarzyszące przy tworzeniu stron ewoluują nieustannie. Staraj się być na bieżąco z nowinkami, wdrażaj najlepsze i najnowsze rozwiązania. Rozwijaj swoje projekty systematycznie, z takim samym zapałem z jakim zaczynałeś na początku. Efekty z biegiem czasu zostaną docenione.
Najwyższy czas zabrać się do nauki. Zapraszam do lektury dalszych stron serwisu!