Z czego się uczyć?

0

Witam,

Od jakiegoś czasu zainteresowałem się programowaniem a dokładnie webmastering 'em.

Aktualnie jestem po szkole średniej o profilu teleinformatyka gdzie programowania raczej w ogóle nie było czego też nie rozumie ale kij z tym.

Chodzi o to że chciałbym się czegoś nauczyć z tej dziedziny a jestem kompletnie zielony. Moje jedyne doświadczenia z programowaniem to stworzenie prostej strony w notatniku (HTML) w czasach gimnazjum i tyle.

Chciałbym się od was dowiedzieć od was jakie książki, filmy, programy komp, etc. polecacie do nauki. Niestety nie mam funduszy za bardzo i chciałbym żeby to zostało wzięte pod uwagę i nie polecanie np programów płatnych np. PhotoShop.

Z góry dziękuję za wszystkie odpowiedzi.

20

Step 0. Wybór edytora *Szacowany czas: - *


Polecam https://code.visualstudio.com

Step 1. Nauka HTML Szacowany czas: max. 1 dzień


Nie ma się tutaj za bardzo nad czym rozdrabniać. Potrzebujesz wiedzieć co to jest HTML i poznać podstawowe znaczniki oraz atrybuty tych zniaczników. Ogólny template każdej strony to: ```html <!DOCTYPE html> <html> <head> <title></title> </head> <body> </body> </html> ``` nad tym się nie zatrzymuj. Przyjmij, że tak jest i broń boże nie zapamiętuj tych wszystkich meta tagów, które są tłumaczone w kursach bo na początku nie jest Ci to potrzebne. Skopiuj, wklej i tyle. Skup się na tagach takich jak: section, footer, header, aside, article, h1-h6, a, p, span, div, ul, ol.

**Polecane materiały: **
http://www.99lime.com/_bak/topics/you-only-need-10-tags/
http://html5doctor.com/lets-talk-about-semantics/

Challenge:
Zakoduj prostą stronę. Możesz się wzorować na tej http://motherfuckingwebsite.com/. Może to być np. Twoje CV w wersji HTML. Użyj takich tagów jak p, ul, ol, section, h1 - h6

Step 2. Nauka CSS Szacowany czas: ok. tygodnia


W tym kroku nauczysz się nadawać wygląd stronie. Poznasz nowe atrybuty takie jak `class`, `id`. Trzymając się zasady pareto (znanej też pod nazwą 80/20) uczysz się najczęściej używanych rzeczy. Googluj po: *common CSS properties, most used CSS properties*.

**Polecane materiały: **
http://zellwk.com/blog/9-important-css-properties-you-must-know/
http://tech.journalism.cuny.edu/documentation/css-cheat-sheet/
http://www.expression-web-tutorial.com/CSS-Properties.html#.Vyr5A2F97Hw
http://code.tutsplus.com/tutorials/10-css3-properties-you-need-to-be-familiar-with--net-16417
http://learnlayout.com/position.html WAŻNE!!
https://css-tricks.com/centering-css-complete-guide/ WAŻNE!!
https://css-tricks.com/snippets/css/a-guide-to-flexbox/ WAŻNE!!

Challenge:
Ostyluj stronę, którą wczesniej zakodowałeś oraz wykonaj 1/2 templaty z dowolnej listy, polecam:
http://www.dreamtemplate.com/templates/simple-personal-css-templates.html
www.mezzoblue.com/zengarden/alldesigns/

Step 3. Nauka frameworka CSS *Szacowany czas: ok. tygodnia - dwóch *


Do wyboru masz w zasadzie Bootstrap lub Foundation. Obojętne, które wybierzesz (bootstrap popularniejszy). Framework jest to szkielet do budowy aplikacji. W kroku drugim wszystko robiłeś sam, a tutaj rzeczy, które są używane bardzo często są już zrobione dla Ciebie (żebyś nie musiał wynajdywać koła od nowa).

@Edit
Teraz doszło jeszcze material design. Popularnym frameworkiem jest również semantic-ui.

**Polecane materiały: **
http://strefakursow.pl/kursy/web_design/kurs_bootstrap_3_-_responsywne_strony.html Biję się w pierś, że to tutaj umieszczam, ale co jak co to ten kurs mi pomógł.

Challenge:
Wybierz jakiś template z tej strony http://startbootstrap.com/template-categories/all/ i go sam zakoduj.

Step 4. Nauka javascript Szacowany czas: dwa - trzy miesiące *


Mamy content, style to teraz czas, żeby z naszą stroną się coś działo.

**Polecane materiały: **
http://helion.pl/ksiazki/programowanie-w-javascript-rusz-glowa-eric-t-freeman-elisabeth-robson,prjsrg.htm

Challenge:
Zrób jakis walidator formularza, jakąś prostą karuzelę itp.

https://github.com/getify/You-Dont-Know-JS

BARDZO WAŻNE
Na tym etapie powinieneś zapoznać się z metodami debugowania. Jest to bardzo wazne, a znam miliony programstów, którzy na oślep szukają błędów używając console.log.
Debugging JavaScript - 0 to Heisenberg
Useful JavaScript debugging tips you didn't know

Challenge:
Gra w snake'a, jakieś statki, albo mini paint w przeglądarce.

Pierwsza książka łagodnie Cie wprowadzi do świata javascriptu i da poczucie, że coś umiesz.
Druga ksiązka (a raczej seria) wyprowadzi Cie z błedu, że cokolwiek umiałeś i da Ci solidną dawkę wiedzy, która będzie podstawą do dalszego rozwoju.

Step 5. Nauka jQuery *Szacowany czas: miesiąc * *


jQuery to biblioteka (czy jak niektórzy mówią framework) do javascriptu. **Stąd JS uczysz się najpierw!** Tak samo jak w przypadku css, jquery daje Ci już gotowe rozwiązania do popularnych problemów, przykład:

Javascript

var request = new XMLHttpRequest();
request.open('GET', '/my/url', true);

request.onload = function() {
  if (request.status >= 200 && request.status < 400) {
    // Success!
    var data = JSON.parse(request.responseText);
  } else {
    // We reached our target server, but it returned an error

  }
};

request.onerror = function() {
  // There was a connection error of some sort
};

request.send();

To samo w jQuery:

$.getJSON('/my/url', function(data) {

});

*Źródło: youmightnotneedjquery.com *

Challenge:
Możesz przerobić swoje rozwiązania z kroku 4 z użyciem jQuery.
Warto tutaj poświęcić również trochę czasu na poczytanie kodu źródłowego np. tej karuzeli http://www.owlcarousel.owlgraphic.com/ i spróbować zrozumieć co tam się dzieje.

Końcowy Challenge
Wchodzisz na tą stronę http://themeforest.net/category/all i wybierasz dowolny template, po czym kodujesz go sam od podstaw.

Od tego miejsca możesz iść w kierunku Frontend (preprocesory CSS, metodyki typu BEM, SMACSS, ReactJS, AngularJS, webpack, nodejs i npm..) lub Backend. To co Ci napisałem to ogólny zarys, bo wiem, że na początku można się w tym wszystkim zgubić. Zawsze bądź głodny wiedzy i naucz się szukać informacji.

Powodzenia.

PS. Nie warto kupować materiałów ze stron typu strefakursów, czy eduweb. Wiem, że sam wyżej poleciłem jeden z nich, ale to z lenistwa. Po prostu możesz obejrzeć ten tutorial na prędkości 1.25/1.5 biorąc kąpiel i załapiesz bootstrapa (co jest łatwiejsze niż szukanie informacji w internecie). Widziałem bardzo duzą częśc materiałów od nich i lepiej na tym wyjdziesz jak kupisz sobie książkę i dobrą kawę/herbatę niż ten kurs.
@Edit mowa o polskich kursach. Te zazwyczaj mają duzo niższa jakość i są mniej aktualne. Strony typu egghead.io, frontendmasters.com, udemy.com są warte uwagi. Oczywiście polecam kupować gdy są przeceny, wtedy kurs o wartości 200$ można kupić za 10$ i zrobić dobry research, żeby zainwestować pieniądze w kurs który ma najlepszy stosunek jakości do ceny.

* oczywiście mowa o podstawach podstaw.

0

Super dzięki wielkie za odpowiedź bardzo pomocna :)

0

Może spróbujesz pooglądać jakieś kursy na internecie? Ja osobiście, korzystam z eduweba i jestem zadowolony. Fajne jest to, że kursy są po Polsku i masz je na wyciągnięcie ręki. Wybór jest duży, powinieneś znaleźć coś dla siebie. Tak naprawdę Java jest łatwiejsza do ogarnięcia i przez rosnącą popularność aplikacji mobilnych dużo bardziej uniwersalna jest od C++.

0
exilim napisał(a):

Chodzi o to że chciałbym się czegoś nauczyć z tej dziedziny a jestem kompletnie zielony. Moje jedyne doświadczenia z programowaniem to stworzenie prostej strony w notatniku (HTML) w czasach gimnazjum i tyle.

HTML nie jest językiem programowania. To jest język opisu stron internetowych, a nie język programowania. Najpopularniejsze języki programowania to: java, c#, c++, objective-c, swift, javascript.
Do objective-c lub swifta trzeba mieć komputer firmy Apple. Tam x-code jest dostępny za darmo.
Do javy najpopularniejsze są:
Eclipse:
https://eclipse.org/
Netbeans:
https://netbeans.org/
Na początek wersje Eclipse IDE for Java Developers lub Netbeans Java SE w zupełności Ci wystarczą.

Do c# na początek wystarczy Ci:
Visual Studio Express for Desktop:
https://www.visualstudio.com/products/visual-studio-express-vs

Do c++ możesz używać Eclipse, Netbeans'a, Visuala Studio i x-code.
A do nauki podstaw javascriptu wystarczy Ci przeglądarka Firefox i konsola Firebug.

Jakie książki polecam?
Do c++ polecam Thinking in c++. Do podstaw javy - Thinking in java. Poza tym wejdź sobie na stronę Amazon, wybierz w wyszukiwarce "Books" i wpisz nazwę języka, którego chciałbyś się uczyć. Wyskoczą Ci książki. Sprawdź sobie która z książek ma najlepsze recenzje i dlaczego. Dodam, że niemal wszystkie książki z Amazona można ściągnąć w wersji elektronicznej z internetu. Jeśli w googlu nie ma poszukiwanej książki, to torrent ją na pewno będzie miał. Nie wiem czy takie ściąganie książek jest legalne. Chyba nie, więc nie będę Ci podawał linków do książek i namawiał do ściągania ich żeby nie było, że promuje piractwo. Informuję tylko, że istnieje taka możliwość, a z kwestiami prawnymi sam się zapoznaj. Pamiętaj, że ściągasz na własną odpowiedzialność.
Jest jeszcze inny sposób nauki, który jest legalny. Wejdź na youtube i wpisz coś w stylu: "java", "java kurs", "java tutorial", "java for beginners", "c#", "c# kurs", itp. Wyskoczą Ci kursy do wyboru do koloru. I niektóre nawet po polsku.

0
Desu napisał(a):

..

Ja nie jestem autorem tematu, ale również dziękuję za takie podsumowanie. Mam pytanie, czy po tych wszystkich krokach, będę w stanie osiągnąć takie efekty -> https://builtwith.angularjs.org/

I być w stanie stworzyć portal z płatnościami, czatem, i np. funkcjonalnościami jak komentarze itd. przesyłanie własnych notatek głosowych ... (to przykłady)

0

Podbiję temat, gdyż mam pytania odnośnie web developmentu. Dokładnie 3 lata temu wciąłem się w temat, pouczyłem się trochę html, css i Bootstrapa i less na zmianę z sass, napisałem kilka małym stronek w stylu one-page i moją hobbistyczną "naukę" rzuciłem w połowie 2014. Teraz chciałbym podejść do tematu ponownie.

Czy w pisząc strony lepiej korzystać z frameworków typu Bootstrapa lub wydzielonej części stylów, czy pisać wszystko od zera i uczyć się jak zrobić od zera nawigację w stylu Bootstrapa lub siatkę do rozmieszczania elementów?
Czy jest w ogóle sens skupiać się na powiedzmy budowaniu grida, nawigacji z Bootstrapa czy drobnych klasach .clearfix w sass czy tylko sobie o tym poczytać i korzystać?

Skąd to pytanie? Jeszcze 2 lata temu tym się nie przejmowałem ale dzisiaj sporo rzeczy już nie pamiętam i chciałbym sobie coś odświeżyć. Sporo się pozmieniało pod względem prostego html + css/sass z Bootstrapem? O Javascript nie pytam, bo nigdy go nie ruszyłem to nie wiem.

0

To czy lepiej korzystać z frameworka czy pisać od nowa zależy od projektu. Czasami UX/grafik wykombinuje coś takiego, że Bootstrap jakoś specjalnie nie jest potrzebny. Moim zdaniem jeżeli chcesz mieć większe szanse na szybsze załapanie się w jakiejś firmie/lepsze wynagrodzenie to odśwież posiadaną wiedzę i zabierz się za JS. Zrobienie samemu responsywnej siatki spoko, bo lepiej rozumiesz niektóre rzeczy co zaprocentuje przy pracy, ale to znajomość JS (+ najlepiej jakiś kod do zaprezentowania, nie musi być to coś dużego, ważne żebyś zrozumiał temat i nie robił kopiuj-wklej) uczyni Twoje CV atrakcyjniejszym.

0

Pierwsza książka łagodnie Cie wprowadzi do świata javascriptu i da poczucie, że coś umiesz.
Druga ksiązka (a raczej seria) wyprowadzi Cie z błedu, że cokolwiek umiałeś i da Ci solidną dawkę wiedzy, która będzie podstawą do dalszego rozwoju.
@Desu. Byłbyś tak miły i podał tytuł drugiej książki, bo w twoim poście jest link tylko do pierwszej tj. "rusz głową"

1

Autor dał link do tej serii książek, ale może Ci umknęła w tekście:
https://github.com/getify/You-Dont-Know-JS

1 użytkowników online, w tym zalogowanych: 0, gości: 1