Narzędzia dla webmastera - Linux
Jak zapewne wie część z Was, od ponad 3 lat jestem użytkownikiem systemów z rodziny Linux. W ciągu tego czasu zdążyłem poznać dużą część aplikacji. Ponieważ zajmuję się programowaniem i tworzeniem aplikacji i stron internetowych, na moim komputerze gości wiele aplikacji dla takich przypadków jak ja. Dzisiaj opiszę mój ulubiony zestaw, z którego korzystam i który jeszcze mnie nie zawiódł.
Ponieważ moje doświadczenia opierają się na Linuksach Ubuntu i Debian, aplikacje będę opisywał w ich kontekscie. Jednak większość z nich, jeśli nie wszystkie, znajdziecie także w dystrybucjach Fedora Core i innych.
Edytor kodu i środowisko
Na pierwszym miejscu jest oczywiście edytor kodu. Bez tego ani rusz. Jeśli Twoim zadaniem jest tylko tworzenie plików html i css, to wystarczy Ci zwykły gedit, który jest wbudowany do większości Linuksów. Jeśli jednak korzystasz z jakiegoś języka programowania (C++, PHP, Java, Pascal), przyda Ci się coś lepszego. Ja preferuję Geany. Jest to zwykły edytor kodu z koloryztorem składni (koloruje wszystkie języki "webowe" i wiele języków programowania), menedźerem plików i klas, funkcji, obiektów. Jeśli zależy Ci na czymś bardziej rozbudowanym, to możesz zainstalować NetBeans. Ja sam z niego nie korzystam, bo w C++ piszę korzystajc ze środowiska wxDevC++, które jest dostępne tylko dla systemu Windows (przyznaję się bez bicia - mam na dysku XP) ale testowałem jego możliwości i mogę go polecić wszystkim, którzy oprócz pisania webowego zajmują się także programowaniem desktopowym.
Serwer i interpreter
O ile bez edytora kodu czy środowiska programistycznego nie da się żyć, o tyle bez własnej instalacji serwera i interpretera da się żyć. Ale jak pisze Jerzy Grębosz o wskaźnikach w C++ - "da się bez nich żyć, ale po co?" ("Symfonia C++ standard"). Zawsze kod PHP można przetestować na darmowym zdalnym serwerze. Ja jednak polecam instalację Apache2 i php5. Przyda się też serwer baz danych MySQL lub PostgreSQL (ja preferuję MySQL). Procedurę ich instalacji opisywałem już jakiś czas temu.
Posiadanie serwera na swoim komputerze ma kilka wad. Dla mnie jednak największą jest ta, że na domowym serwerze mogę manipulować konfiguracją w dowolny sposób. Na moim serwerze Biznes-1 w unixstorm.org tej konfiguracji już tego tak łatwo nie wprowadzę :/
Klient FTP
Dobry klient FTP potrafi umilić życie. Dawno temi korzystałem z jakiejś wtyczki do przeglądarki Mozilla Firefox. Te czasy minęły (na szczęście!), kiedy odkryłem gFTP, z którego korzystam do tej pory. Co prawda dodałbym do niego możliwość utrzymywania jednoczesnego kilku połączeń, (jak w TotalCommander), ale i bez tego jest najlepszym programem do przesyłania plików na FTP jaki spotkałem podczas "podróży z Linuksem". gFTP zapewia nam wszystkie podstawowe i bardziej zaawansowane funkcje. Mi nigdy, oprócz wspomnianej wcześniej obsługi kilku połączeń jednocześnie, nie zabrakło żadnej funkcji.
System kontroli wersji
Dodam, że na domowym komputerze oprócz serwera warto mieć system kontroli wersji. Ja preferuję Subversion (SVN). Nie dlatego, że testowałem git'a czy inne wynalazki, ale dlatego, że SVN jest zainstalowany na moim serwerze w unixstorm. Tym, którzy nie wiedzą co to jest system kontroli wersji, powiem, że to program, który pozwala na kolekcjonowanie kolejnych wersji plików naszych projektów, przy czym w katalogu głównym dostępna jes tylko jego najnowsza wersja. Daje nam to możliwość zachowania bardzo wielu wersji jednego pliku, do których możemy się cofać jednym poleceniem w terminalu, przy zachowaniu porządku na dysku. Jeśli połączymy to z przechowywaniem repozytorium na zdalnym serwerze, to mamy doskonałe narzędzie kopii zapasowej plików projektu.
Ponieważ obsługa SVN przez terminal jest dość niewygodna, stworzono program o nazwie SVNWorkbench, który oprócz tego, że czasami łapie zawiechę i nie ma możliwości zrobienia zbiorowego commit'u (chodzi o to, że klikam commit na projekcie i program sam przegląda katalogi w poszukiwaniu plików, które musi wysłać), nie ma żadnych rzucających się w oczy wad.
Przeglądarka internetowa
Bez przeglądarki twórca stron internetowych nigdzie nie zajdzie. Back-endowiec jeszcze tak, ale front-endowiec już nie. Na szczęście w Linuksach nie jesteśmy narażeni na Internet Explorera. A skoro mamy już pewność, że go nie spotkamy, to mamy również pewność, że dostarczono nam dobrą lub bardzo dobrą przeglądarkę. W Ubuntu jest to zawsze najnowszy Firefox. W Debianie dostajemy odchudzonego liska pod nazwą Iceweasel. Też jest niezły.
Ja w tym momencie korzystam z Google Chrome, ponieważ przy mojej konfiguracji sprzętowej ta działa najszybciej. Jednak mam też zainstalowanego Firefoxa Nightly. a także jego stabilnego odpowiednika. Należy przecież wspomnieć o dodatku Firebug, który jest po prostu niezbędny. W szczególności dla każdego zajmującego się javascriptem webmasterem. Mówię oczywiście o Firebugu dla Firefoxa, bo to co jest w Chrome'ie to totalny niewypał.
Grafika
Każdy z nas czasem musi sięgnąc do programu graficznego. Choćby po to, żeby zrobić prosty button. W tej kwestii jest tylko jeden słuszny wybór - GIMP.
Odtwarzacz
Czymże byłaby praca nad kodem bez ulubionego kawałka muzycznego. Ja od zawsze jestem wiernym fanem Rhythmbox'a. Kiedy w Ubuntu zaczęto preinstalować Banshee, ja nadal korzystałem z Rhythmbox'a (Banshee za bardzo przymulał system). Program spełnia moje wszystkie wymagania, łącznie z obsługą dźwiękowych strumieni internetowych jak i Last.fm. A do tego obsługuje specjalne przyciski muzyczne z mojej klawiatury. Czego chcieć więcej?
To tyle. Nie jest tego dużo. Mam nadzieję, że pomogłem webmasterom rozpoczynającym korzystanie z Linuksa.
"Posiadanie serwera na swoim komputerze ma kilka wad. Dla mnie jednak największą jest ta, że na domowym serwerze mogę manipulować konfiguracją w dowolny sposób." - to chyba żart:) Może i na zdalnym serwerze nei możesz, ale jest to NIEZBĘDNE w pracy. Lokalny serwer jest tak niezbędny jak drugie piwo po pierwszym i piąte po czwartym. Musi być, nie jest to "opcja"
Do pracy polecam NetBeansa, choć sam przmierzam się do vim.
"SVNWorkbench" - hmm... w NetBeans jest wbudowany (lub można dodać sobie) SVN. Zobacz - warto.
Przeglądarka internetowa - no Kacper... powinieneś mieć zainstalowane wszystkie przeglądarki. FF, Chrome, Opera, IE (poprzez Wine, najlepiej wszyskie wersje od 6 niestety), Safari - ja się przyznaję, że na Ubuntu nie mam (nie wiem czy jest na linucha), ale to sprawdzam jak się przełaczam na windę. Przeglądarki sa potzrebne, bo to że "u mnie działa" to nie znaczy, że u pana Zdziśka ta strona tez wygląda tak samo. Trzeba mieć wszytskie przeglądarki i na wszystkich obczajać jak wygląda efekt pracy i czy działają js'ki.
Pzdr
P.S. Ładna stronka :)
Trzeba było doczytać do końca :) Chodziło mi o to, że ja sobie porobię konfigurację u siebie, przegrywam na zdalny i okazuje się, że nie działa. W końcu wychodzi, że takie rzeczy, które sobie ustawiłem w domu tam są w innym ustawieniu i nie mogę zmieniać. Zazwyczaj pomoc techniczna zmienia dla mnie ustawienia, ale trochę to trwa.
Co do kwestii posiadania u siebie na kompie serwera, to mój kolega, z którym współpracowałem przy guitarway.pl nie miał. Wszystko wgrywał na zdalny i dopiero sprawdzał. W sumie dla mnie bez serwera w domu nie ma co brać się do roboty.
Co do js, to korzystam z jQuery i to mi zapewnia kompatybilność. Resztę przeglądarek mam poinstalowanych w xp'eku (nie chcę sobie syfu na linuxie robić :)
No i cieszę się, że stronka Ci się podoba :)
NetBeans masz na Win czy Linuksie?
nb mam na linuchu:) windę odpalam tylko jak mam czas i chęci pogrania w fifę ;)
"to mój kolega, z którym współpracowałem przy guitarway.pl nie miał. Wszystko wgrywał na zdalny i dopiero sprawdzał." - to że tak robił to nie znaczy, że tak powinno, aczy nawet można robić. wgranie na serwer - przecież to zajmuje czas i zaśmieca svn'a. gFTP? No sorry, albo robimy coś poważnie, ale jesteśmy Donaldem Tuskiem.
jQuery srery :P nie tylko jquery człowiek żyje, czasami normalny kod też się pisze, a poza js'em jest też css.
To że ustawienia serwera mogą być "szczególnej troski" to nie jest argument, żeby nie instalować serwera u siebie.
W każdym razie mnie się nie czepiaj :) Ja mam. A w takim razie co polecasz zamiast gFTP?
tzn. chodziło z gFTP chodziło mi o to, że jeżeli pracujemy nad jakimś projektem to musi być SVN lub Git, nie wchodzi w grę przerzucanie plików "ręcznie" na serwer. Czyli nie możemy zaśmiecać historii commitów, czyli musimy mieć serwer lokalnie, żeby nie commitować każdego "echo $zmienna;".
I nie czepiam się.
no to teraz uwaga do działania strony:
przy wyświetlaniu linków do stron użytkowników rób:
echo 'http://' . $str_replace('http://','',$stronawww);
dodałem bez http powyższy komentarz i zobacz gdzie link prowadzi.