Co wspólnego ma egzorcyzm z programowaniem?

Loading Likes...

Na najpopularniejsze pytanie: „Jak zostać programistą?” odpowiedź w większości przypadków będzie jedna – programować. Tworzyć projekty, w których rozwiązujemy konkretne problemy. A jeśli o tych ostatnich mowa, to pojawia się jeden z wielu – skąd brać pomysły na projekty? Przecież osoba, która zaczyna nie wie jakie problemy wiążą się z konkretnym projektem. Jedne projekty mogą być zbyt wygórowane, które skutecznie nas zniechęcą do pracy, inne mogą być zbyt proste, co z kolei przyzwyczaja nas do szybkiego i łatwego rozwiązania zadań bez wysilania się(wypracowywania w sobie mechanizmu jak i gdzie szukać pomocy). Jak sobie z tym poradzić?

Tutaj dochodzimy do momentu, w którym nasz tytuł artykułu ma znaczenie. Jakie?
Otóż ktoś wpadł na pomysł – Hej, zróbmy stronkę z projektami, które pomogą ambitnym programistom w rozwiązaniu przydatnych problemów. Dlatego tak jak egzorcysta przychodzi z pomocą opętanemu, tak nam przychodzi z pomocą:
EXERCISM.IO    (i już wiemy co ma wspólnego 😉 )

Strona jest zrobiona bardzo solidnie – metodą „step by step” (krok po kroku) możemy w łatwy sposób nauczyć się korzystać z tej mega przydatnej strony. Różnorodność języków jest dużym atutem – tutaj najlepiej będzie, jeśli sam wejdziesz i zobaczysz jak wygląda strona. (Dostępne języki programowania znajdziesz w zakładce „languages”).

Przejdźmy do przygotowania się do korzystania ze strony:

        1. Załóż konto (zaloguj się przez portal github – jeśli nie masz konta to koniecznie zrób)
        2. Zainstaluje node.js (www.nodejs.org)
        3. Zainstaluj CLI (tutaj masz link z odpowiednią instrukcją instalacji w zależności od systemu)
          http://exercism.io/clients/cli
        4. Skonfiguruj CLI – będzie potrzebny API key, który znajdziesz klikając na swój nick i wybierając z listy odpowiednią opcję.
          Jeśli używasz windowsa, to ta opcja będzie uwzględniona podczas procesu instalacji (wklej po prostu ten klucz i potwierdź przyciskiem Configure.)Jeśli używasz innego systemu, wymagane będzie użycie CLI, wpisując w niego komendę:
        5. Na pewno masz już jakieś IDE (integrated development environment), czyli po prostu jakiś edytor do pisania kodu.
          (Jeśli nie, to polecam Visual Studio Code – to moja osobista propozycja i opinia(jest darmowy ;))
        6. Teraz w zależności od wybranego języka do CLI wpisujemy komendę: Pobierze to nam na komputer pierwsze zadanie. Postanowiłem, że dla przykładu zrobię to z ecmascript.
        7. Teraz w cli przejdź do folderu z naszym pierwszym zadankiem.
          Domyślnie jest to C:\Exercism\wybrany_język\pierwsze_zadanko
          Chyba, że ustawiłeś go wg własnych preferencji. U nas to będzie ecmascript\hello-world
        8. Zainstaluj paczki przez npm wpisując:
        9. Jeśli wszystko przebiegło poprawnie, powinieneś widzieć takie pliki w swoim folderze:
          • Node_modules – moduły zaciągnięte z node’a
          • Hello-world.js – plik z kodem, który będziemy edytować i rozwiązywać w nim nasze zadanie
          • Hello-world.spec.js – plik z testami, które sprawdzą poprawność naszego rozwiązania
          • Package.json – specyfikacja środowiska (informacje na temat całego środowiska projektu – wymagane paczki, wersje paczek itd.)
          • Package-lock.json – na tym etapie to nie jest istotne 🙂
          • README.md – plik przeczytaj mnie, w którym masz potrzebne informacje odnośnie zadania – jego treść itd.
        10. Napisz rozwiązanie zadania (plik hello-world.js) –  w tym przypadku można to zrobić w ten sposób:
          PS. takie rozwiązanie to tylko jedna z możliwości (wybrałem je, bo jest najszybsze)
        11. Teraz napisz w terminalu komendę:
          Sprawdzi to Twoje rozwiązanie, jeśli będzie wszystko ok zobaczysz:Jeśli będzie coś nie tak zobaczysz:W pliku z testami możesz zobaczyć co musisz uzyskać(toEqual) oraz co uzyskałeś:
        12. Jeśli masz już swoje rozwiązanie i uważasz, że jest poprawne, to musisz teraz pochwalić się nim z innymi użytkownikami. Aby to zrobić wpisz: Możesz oczywiście dodać po spacji więcej plików (jeśli rozwiązanie tego wymaga).
        13. Przeniesiony zostaniesz na stronę exercism.io, a przy dzwoneczku zobaczysz powiadomienie o swoim najnowszym zadaniu. Możesz przeglądać posty innych użytkowników i podglądać ich rozwiązania, a także wdać się w jakąś dyskusję pod czyimś zadaniem.

 

Teraz już sam możesz zadecydować czy chcesz dalej ćwiczyć swoje umiejętności z exercism.io. Osobiście zastanawiam się nad taką serią tutaj, gdzie przynajmniej raz w tygodniu będę rozwiązywał i omawiał zadanie. Cały poradnik możecie znaleźć również na ich stronie tutaj:
http://exercism.io/how-it-works/newbie
i tutaj:
http://exercism.io/how-it-works
Dajcie znać czy korzystacie i czy to fajna sprawa w komentarzach – na stronie lub facebooku! Do zobaczenia wkrótce (come back is real 😉 )

You May Also Like

About the Author: Sebastian Mieszczańczyk

Studia: Wyższa Szkoła Ekonomii i Informatyki w Krakowie Profil: "Informatyka i Ekonometria" Specjalizacja: "Programowanie urządzeń mobilnych i aplikacji sieciowych" Hobby:
  • Programowanie: Typowy front: HTML/JS/CSS Do tego: Angular 2+/IONIC/Cordova
  • Rozwój osobisty - ciągły rozwój w każdym aspekcie życia: fizycznym/psychicznym/duchowym - do tego dążę i obserwuję/uczę się od: Kołcz Majk(Michał Wawrzyniak) oraz Mateusz Grzesiak [w przyszłości planuję zainteresować się co ma do powiedzenia multimiliarder Richard Branson]
  • Grafika - swego czasu interesowałem się retuszowaniem zdjęć w Photoshopie oraz tworzeniem grafik w Illustratorze
  • siatkówka (GeoVolley Team) na pozycji środkowego
  • Filmy - od dawna pasjonuję się nie tylko oglądaniem filmów, ale także analizowaniem ich pod kątem stworzenia ( Mój link do filmweba) - w liceum dzięki profilowi z modułem filmowym mogłem bardziej wejść w szczegóły kadrów, ujęć itd.
  • Psychologia - niestety wciąż mam zbyt mało czasu na zagłębianie się w tą wiedzę :(

1 Comment

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Facebook
Inline
Inline