29 kwietnia 2014

Który język programowania wybrać? Część 2.

Minęły ponad 4 miesiące od kiedy napisałem pierwszy post na temat wyboru języka programowania. Czy po takim czasie i zdobyciu troszkę wiedzy na temat programowania nadal brnę w tym samym kierunku? Mniej więcej tak. Po poznaniu podstaw PHP postanowiłem chwycić się za JavaScript. Przez pewien czas świtało mi w głowie opanować jakiś framework PHP jak np. codeigniter lub laravel lecz, przynajmniej na ten moment, zrezygnowałem. Na horyzoncie jest wiele nowych technologii, które zyskują coraz większą popularność i uznanie na rynku, natomiast nie ma co ukrywać, że PHP istnieje od dawna i specjalistów w tej dziedzinie jest wielu.
Post ten nie będzie obfitować w treść ponieważ prawdę mówiąc postanowiłem go napisać po obejrzeniu pewnego filmiku, który polecam wszystkim osobom decydującym się na web development. Obejrzyjcie go, SERIO. Dzięki niemu rozgraniczycie sobie pewne technologie oraz języki i jeżeli jeszcze nie dokonaliście wyboru języka lub nie jesteście swojego wyboru pewni, ten filmik wam sporo rozjaśni.



Pozwolę sobie wrzucić ponownie filmik, który znalazł się w poście o JavaScripcie lecz tutaj również pasuje idealnie. Facet odpowiada na pytanie: jakie umiejętności powinienem posiadać, jakie języki i technologie związane z HTML5 powinienem znać aby zacząć starać się o pracę? Posłuchajcie o czym wspomina aby wyznaczyć sobie własne cele.


Swoją drogą na jednym i drugim kanale znajduję się masa świetnych filmów!

Chętnie poznam również na jaki język sami się zdecydowaliście. Wolicie front-end czy back-end? Może sami znacie jakieś świetne materiały, które waszym zdaniem każdy powinien przeczytać? Albo technologie, którą każdy powinien znać? Świetnie byłoby przeczytać co na ten temat sądzicie w komentarzach!



22 kwietnia 2014

Polskie znaki w Brackets

Przeglądając statystyki bloga zauważyłem, że kilka osób trafiło na stronę w poszukiwaniu odpowiedzi jak włączyć polskie znaki w edytorze Adobe Brackets. Muszę przyznać, że kiedy rozpocząłem pracę z tym programem od razu przypadł mi do gustu i również poszukiwałem jak uporać się z tym problemem. Należy wejść w zakładkę File, następnie Extension Manager i zainstalować rozszerzenie Brackets Key Remapper. Po zainstalowaniu wchodzimy ponownie w File i potem Remap Keys. W polu Filer wpisujemy słowo Alt i wyskakują nam wszystkie skróty klawiszowe z użyciem przycisku Alt. Zmieniamy wszystkie skróty klawiszowe które pokrywają się z polskimi znakami, np. alt+a, alt+e oraz te zawierające ctrl+alt. Dla zobrazowania wrzucam zrzut ekranu ze swojego ustawienia.


W wolnej chwili przedstawię również rozszerzenia do Brackets, których sam używam.

21 kwietnia 2014

JavaScript - poradnik jak zacząć

Dwumiesięczna przerwa spowodowała, że zacząłem zastanawiać się czy nie spróbować czegoś świeżego i próbować chwycić podstawy jakiegoś nowego języka. Na ten czas znam podstawy HTML, CSS i PHP, poznałem podstawy modelu MVC i zatrzymałem się przed samym momentem próby zrozumienia OOP. Tak więc czas poświęcony na programowanie postanowiłem podzielić na dwie części, pierwsza to próba wykorzystania tego co już wiem przy pisaniu własnego projektu, druga to chęć nauki JavaScript, którego jak łatwo się domyślić w tym zestawieniu brakowało. Wybór dla jednych oczywistych dla drugich już niekoniecznie, zdecydowałem się akurat na ten język ponieważ:
  • odpowiada za dynamikę i zachowanie stron co pozwala na budowanie świetnych stron z pomocą np. biblioteki jQuery,
  • w porównaniu do PHP pozwala wysyłać lub pobierać dane bez konieczności odświeżania strony,
  • dodatki do Chrome są pisane w JavaScript,
  • kod jest wykonywany po stronie klienta (przeglądarki), a za pomocą node.js może być również po stronie serwera,
  • edytor Brackets, który opisywałem, szczególnie polecam i sam używam, jest napisany własnie w tym języku,
  • pozawala pisać browser-based gry z użyciem WebGL.
Obstawiam, że jest jeszcze bardzo sporo zastosowań, o których nawet nie mam pojęcia. 

Ok, tak więc od czego zacząć? Podczas przeszukiwania internetu trafiłem na ten artykuł: How to Learn JavaScript Properly i naprawdę, naprawdę mocno go polecam. 
Tak jak powyższy artykuł zaleca, zróbcie podstawowe kursy na Codecademy, jeśli macie już jakąś podstawową wiedzę możecie spróbować Programmr lub jeśli macie luźniejsze podejście i chcecie się trochę więcej pobawić to sprawdźcie grę, która uczy JavaScript - CodeCombat. A kiedy już zdobędziecie trochę wiedzy spróbujcie swoich sił na Codewars, strona wyświetla fragment kodu, który trzeba zmienić tak aby działał poprawnie. Naprawdę świetny sposób na przypomnienie i utrwalenie sobie języka!

Na koniec chciałbym jeszcze przedstawić kilka ciekawych materiałów, na które trafiłem przeszukując internet:

13 kwietnia 2014

Semantyczny HTML

Kiedy pierwszy raz zacząłem szukać w internecie informacji na temat programowania, a w pierwszych
krokach szczególnie chodziło o html to zawsze zastanawiałem się czy informacje, które znalazłem są aktualne. Bieżąca wersja HTML to 5.0 i jest dostępna od 2008 roku natomiast materiały znalezione w internecie mogą być nawet starsze. Drugą sprawą jest fakt, że nie wszystko co znajdziemy na temat programowania jest zgodne z aktualnymi standardami.
Idea semantycznego HTML polega na oddzieleniu warstwy znaczeniowej od warstwy prezentacji. Polega to na wyszczególnianiu czym Twój tekst jest, jakie ma znaczenie, natomiast nie jak ma wyglądać. Tym samym zamiast używać tag <b> używamy <strong>, zamiast <i> używamy <em> (emphasis), a następnie poprzez CSS nadajemy tym tagom odpowiedni charakter. Nasuwa się pytanie, po co zamieniać tagi, a następnie ustawiać ich wygląd w CSS skoro wynik jest dokładnie taki sam? Otóż dla nas strona pewnie i będzie wyglądać dokładnie tak samo, natomiast dla web crawler'ów, które będą parsować nasz kod robi to dużą różnice.
Przykład jak nie powinien wyglądać nasz kod:

<table>
   <tr>
      <td>
         <font size="10" color="red">Tutaj nasz tytuł</font>
         <p>Tutaj tekst naszego artykułu <b>jakieś wyszczególnione słowo</b></p>
      </td>
   <tr>
</table>

Aktualnie nie używa się już tabeli aby ustawić strukturę naszej strony. Nie używa się już również font i ustawiania jego atrybutów w tej samej linijce oraz odchodzi się od stosowania wyżej wspomnianych tagów <b> i <i>
W takim razie jak powinien wyglądać kod?
Zamiast tabelek często używamy tag <div>, któremu nadajemy odpowiednią klasę lub id lecz tak naprawdę powinno się stosować tagi takie jak <article>, <header> albo <footer>, a następnie poprzez CSS ustalamy jak przeglądarka ma wyświetlać dany element.
To tylko bardzo krótki i powierzchowny przykład ale mam nadzieje nakreślający te tematykę i dający do zrozumienia na czym semantyczny HTML polega. W celu zagłębienia tego tematu polecam szczególnie stronę HTML5doctor oraz The Syntax, Vocabulary and APIs of HTML5 W3C Editor’s Draft 9 August 2010. Na koniec jeszcze mały flowchart:







06 kwietnia 2014

Wracają do tematu

Niestety minęły jakieś dwa miesiące od ostatniego posta i złożyło się na to kilka czynników. Nie mam zamiaru zanudzać nikogo tym, że w tym czasie oczywiście byłem bardzo zajęty życiem prywatnym, bo tak wygląda każde tłumaczenie lecz napiszę o czymś innym. Kiedy przygotowywałem się do pisania tego bloga czytałem i oglądałem bardzo dużą liczbę materiałów o programowaniu. W pewnym momencie przyszło przesycenie i zmęczenie tematyką, co wydaje mi się naturalne. Dziwnym zbiegiem okoliczności w tym samym czasie nastąpiło oficjalne odpalenie gry Hearthstone, o której wspominałem wcześniej oraz wyjście nowego dodatku do Diablo III ale nie będę wysuwać tak daleko idących wniosków jakoby to miało mieć wpływ na moją produktywność! W tym czasie przeglądałem sobie kursy niezwiązane z programowaniem, takie jak: The Modern and the Postmodern, gdzie prowadzący Michael S. Roth potrafi zainteresować słuchacza w ten sposób, że z pewnością będziesz chcieć obejrzeć kolejne części kursu. Na początku tego roku znalazłem też fajną serię książek, którą mogę z pewnością polecić "50 teorii, które powinieneś znać", osobiście kupiłem tę dotyczące fizyki i filozofii lecz jest wiele innych dziedzin, tak że znajdziecie coś dla siebie.


Kontynuując luźniejszą tematykę tego posta, chciałbym polecić wszystkim ten artykuł zbierający 10 najlepszych wystąpień TED. Niestety filmiki nie pokazują się na stronie artykułu ale wystarczy wbić tytuły w wyszukiwarkę żeby je znaleźć na YouTube. Swoja drogą warto zajrzeć również na kanał Ted-Ed na YouTube, gdzie znajdziecie krótkie lecz bardzo ciekawe filmiki edukacyjne, w sam raz żeby obejrzeć podczas jedzenia. Dla podbudowania motywacji do dalszej nauki koniecznie obejrzyjcie wystąpienie Jacka Walkiewicza podczas TEDxWSB!

Żeby jednak daleko nie odbiegać od tematyki programowania, chciałbym wspomnieć o ściągawkach dla programistów. Próbujesz się nauczyć nowego języka lecz ciągle zapominasz jak nazywała się lub co robiła dana funkcja, składnia lub tag? Z pewnością przydadzą Ci się cheat sheet'y. Okażą się przydatne niezależnie czy je wydrukujesz i będziesz mieć przed sobą czy otworzysz w nowym oknie żeby od czasu do czasu podglądać.

1. 75 Essential Cheat Sheets for Designers and Programmers,
2. 12 Essential Cheat Sheets for Developers,
3. 7 Essential SEO Cheat Sheets,
4. 40+ Essential Front End Web Developer Cheat Sheets
5. 12 Essential Social Media Cheat Sheets.

I jeszcze tak na sam koniec, niedawno wystartował kurs An Introduction to Interactive Programming in Python na stronie Coursera, jeżeli jesteś zainteresowany akurat nauką Pythona to kurs ten może być akurat dla Ciebie! Ja sam z pewnością go przejrzę, jeżeli nie w całość to chociaż kilka filmików.