Programowanie w Ruby od podstaw - kurs wideo PL

Witajcie,
Właśnie pojawił się pierwszy w Polsce profesjonalny kurs wideo Ruby - programowanie od podstaw
Kurs to ponad 6 godzin praktycznej wiedzy. Stanowi on solidną podstawę do zrozumienia kolejnego kursu, który przygotowujemy nt Ruby on Rails.

dla forumowiczów przewidziany kupon rabatowy -10zł kod: forumrubyonrails

W związku z tym, że informacja o nowym kursie, którą umieściliśmy na forum przerodziła się w bardzo żywą i ciekawą dyskusję, jednak niestety trochę na inny temat niż sam kurs (off-topic), chcieliśmy w krótki sposób podsumować i wytłumaczyć pewne kwestie.

  1. Nasza publikacja to pierwsza w Polsce publikacja w formie filmów instruktażowych w pełni poświęcona wyłącznie językowi Ruby. Na rynku jest kilka publikacji jednak dotyczą one głównie frameworka RubyOnRails i poruszają w niewielkim zakresie “czysty” język Ruby. Ten kurs to 6 godzin poświęconych tylko i wyłącznie programowaniu w Ruby.
    W obecnej chwili pracujemy również nad ukończeniem prawie 12-godzinnej publikacji na temat RubyOnRails. Kurs będzie bardzo praktyczny, zbudujemy w nim kompletny, bardzo funkcjonalny CMS m.in. wyposażony w zarządzanie użytkownikami, stronami, kategoriami, formularzami, ładowanie plików, galerię zdjęć i wiele innych. Pokażemy również jak wdrożyć front do zbudowanego wcześniej zaplecza, czyli krótko mówiąc poznasz proces budowy kompletnej strony od a-z z omówieniem każdej linijki kodu.
    Sporo osób nie ma jeszcze świadomości na temat jakości naszych produktów, dlatego chcielibyśmy zaznaczyć, że kursy przed stworzeniem są dokładnie przemyślane, a przed samym oddaniem do publikacji “testowane” przez co najmniej kilka osób. Kursy w odróżnieniu od innych publikacji, które mają formę nagrania na żywo ze szkolenia stacjonarnego lub webinaru są przemyślane, przygotowane i nagrane off-line, co oznacza, że czas jest maksymalnie wykorzystany. Każda minuta twojego cennego czasu jest dla nas najważniejsza, dlatego w naszych kursach nie znajdziesz przysłowiowego “lania wody”.

  2. Używanie polskich nazw w klasach, atrybutach itp. to nie błąd jakby mogło to wynikać z dyskusji. Prawdą jest, że zazwyczaj programiści pracujący w zespołach, w swoich projektach używają języka angielskiego gdyż jest on prostszy, bardziej logiczny, a sama struktura kodu opiera się właśnie o ten język.
    Ponieważ jesteśmy polskim wydawcą z 8-letnim doświadczeniem tworzymy publikacje w taki sposób, aby były zrozumiałe dla jak największego grona właśnie polskich odbiorców. Wiemy, że często barierą w zrozumieniu podstaw obsługi programu lub w zrozumieniu logiki języka programowania jest język obcy, dlatego też w naszych publikacjach szczególny nacisk kładziemy na to co najistotniejsze, a nie utrudniamy nauki już na samym początku.
    Prawie wszystkie nasze publikacje (takie jak np JAVA, C++, C#, PHP) są zbudowane w oparciu o polskie przykłady co na przestrzeni kilku lat zostało zweryfikowane i docenione przez ogromną liczbę klientów (patrz komentarze: sklep strefakursow.pl, opineo, allegro itp).
    A więc jeżeli anglojęzyczne publikacje sprawiją ci trudność, wykłady na studiach są niezrozumiałe, książki są nie najlepiej przetłumaczone, a kursy w dalszym ciągu nie przyczyniły się do twojego postępu - zapraszamy na strefakursow.pl

  3. Zgłoszenia ze strony kilku osób odnośnie rzekomych błędów zostały wyjaśnione przez samego autora kursu Tomasza Kubisztala co wynika z poniższej mało klarownej dyskusji.
    Niestety zapewne mało osób posiada czas na analizowanie całej dyskusji i wyciąganie z niej własnych wniosków, dodatkowo chyba żadna początkująca osoba dla której dedykowany jest kurs nie jest w stanie prawidłowo jej zrozumieć, dlatego uważamy, że niektóre opinie są dla nas krzywdzące, zważywszy na to, iż osoby które je napisały nie dokonały zakupu kursu, a swoją pochopną ocenę wystawiły w oparciu jedynie o dwa wyrwane z kontekstu darmowe fragmenty.
    Podsumowując, język Ruby cały czas ewoluuje co w praktyce oznacza, że nie zawsze podejście, które było stosowane do tej pory będzie sprawdzało się w nowszych wersjach. Dodatkowo w wielu kwestiach brak jest oficjalnego stanowiska, przez co dyskusje na temat np. wyższości jednego sposobu zapisu nad drugim mogą toczyć się pomiędzy użytkownikami w nieskończoność (jednak na szczęscie nie jest to istotne z punku widzenia początkującego użytkonika Ruby)

Chcieliśmy również mocno podkreślić, że naszych klientów nigdy nie pozostawiamy samych z kursem i jeżeli tylko pojawia się problem podczas nauki to staramy się zawsze pomagać.
Strefakursow.pl od początku istnienia tworzy publikacje z myślą o swoich odbiorcach, biorąc zawsze pod uwagę ich wszelkie sugestie i propozycje. Jeżeli zachodzi potrzeba to kursy są aktualizowane zgodnie z opiniami klientów, tak więc również teraz jesteśmy otwarci na uwagi z waszej strony.

Na koniec
Jeżeli uznasz, że to szkolenie nie spełniło Twoich oczekiwań, to dokonamy zwrotu pieniędzy.

2 Likes

Kurs na pewno nie jest pierwszy, od dobrych dwóch lat dostępny jest przygotowany przezemnie kurs Ruby i RoR na Devcast zone - http://www.devcastzone.com/course,tworzenie-aplikacji-internetowych-z-wykorzystaniem-ruby-on-rails

Mimo wszystko fajnie że coś się dzieje w temacie szkolenia RoR. Powodzenia

Hmm, profesjonalny, ale chyba nie uczy standardów pisania w Ruby:

  • wcięcia mają po 4-8 spacji w edytorze (!)
  • pętle while, zamiast korzystania z enumeratorów - ok, można, tylko po co?
  • używanie polskich nazw w klasach, atrybutach (co się prosi o problemy później)

Mówiąc szczerze nie zachęciłbym do kupna tego, bo patrząc na wideo promocyjne, to cała ta wiedza jest dostępna w darmowych kursach interaktywnych, przy okazji ucząc od początku dobrych nawyków.

1 Like

zgadzam się z @konole, z takich kursów rodzą się później aplikacje które z punktu widzenia biznesowego działają ale ich kod to jedna wielka masakra.

konole:

  1. wcięcia nie mają spacji tylko 1xtab, 2xtab, 3xtab - chodzi o czytelność kodu
  • można to zmienic w ustawieniach edytora, w naszym przypadku SciTE - ma dokładnie takie ustawienia
  1. pętle while czy for używane są w celu nauki ich obsługi
    używane są również i iteratory jednak w dalszych lekcjach kursu

  2. nazwy na potrzeby kursu są po polsku (kurs programowanie dla początkujących)
    wprowadzenie nazw angielskich często powoduje mylne rozumienie kodu przez osoby zaczynające przygodę z programowaniem,
    przykład: Time to (zmienna, stała a może metoda?)

swistak84:
Faktycznie Twój kurs był pierwszy, przepraszamy!, nie mniej w naszym kursie skupiamy się “bardziej szczegółowo” na podstawach czystego Ruby. Kolejny kurs będzie dotyczył już praktycznego aspektu pracy z frameworkiem RoR podczas tworzenia od podstaw własnego CMSa. Dziękujemy za miłe słowa i również życzymy powodzenia.

Przed komentarzem prosimy zapoznać się dokładnie z opisem naszej publikacji. Ten kurs przeznaczony jest głównie dla osób początkujących, również takich dla których Ruby to pierwszy język. Mając 8 letnie doświadczenie w edukacji wiemy z jakimi problemami najczęściej borykają się początkujący.

To nie jest kurs prowadzony przez kolejnego geeka przeznaczony dla drugiego geeka. Kurs jest przygotowany i poprowadzony w taki sposób, że programowania może nauczyć się dosłownie każdy.

Jeżeli ten kurs będzie kolejną publikacją (jakich wiele) z której nie nauczysz się solidnie podstaw to zwrócimy pieniądze.

1 Like

To może warto nauczyć, jak zmienić ustawienia, żeby dopasować do konwencji…?

a Czas to zmienna, stała, czy metoda?

1 Like
  1. http://www.caliban.org/ruby/rubyguide.shtml#profiler

W kursie korzystamy z darmowego edytora http://www.scintilla.org/SciTE.html
ustawienia i obsługę omawiamy w kursie

  1. Czas to na pewno nie zmienna. Po dokładne informacje zapraszam do kursu :smile:

w prawie wszystkich publikacjach nt różnych języków programowania stosuje się polskie nazewnictwo (oczywiście bez ogonków)

pl.wikibooks.org/wiki/Ruby/Zmienne_klasowe

1 Like

Ale robicie kurs dla Rubiego, to trzymajcie się konwencji z Rubiego a nie z innego języka. w tym edytorze zapewne można zmodyfikować dlugość wcięcia. A jak to taki problem to zmieńcie edytor.

i potem wychodzą aplikacje pół polskie i pół angielskie, których czytać nie można. Czemu wtedy zamiast initialize nie wpiszecie konstruktor, albo class jako klasa. Trzeba być konsekwentnym, jeśli pisze się kod w danym języku to trzeba wziąć pod uwagę w jakim języku są nazwy metod ?

Podsumowując robiąc kurs w danym języku zapoznajcie się najpierw z konwencją stosowanym w tym jezyku a nie próbujcie wcisnąć konwencji z innego języka.

A kolega raczył kliknąć w podany link? :smile:

Obecne “ciśnienie” na j. angielski przypomina ciśnienie na j.rosyjski.
Dlaczego Niemcy nie mają takich kompleksów językowych: puts “Hallo Welt!” , a my wstydzimy się puts “Witaj Swiecie” i piszemy puts “Hello, World!”?

Kurs nie jest kursem j. angielskiego - omawia podstawową składnię Ruby i dostarcza sporo przykładów.

Pomijam “doskonałe” tłumaczenia, jak słynne już “przepełnienie bufora”, “kaliber 45 milimetrów”, czy “Wirujący Seks”. Nie widzę nic złego w nazewnictwie zmiennych, klas czy metod pisanych w ojczystym języku.
Prawdziwe potworki językowe, to takie w których ktoś komu wydaje się, że zna j. angielski bierze się za nazewnictwo zmiennych. A potem dziwmy się, że na “zachodzie” są tysiące programistów a w Polsce nieliczne grupki.
Cóż, Ci pierwsi programuje właściwie w język ojczystym…

Myślę, że kolega odróżnia szczególną nazwę zdefiniowaną konstruktora (initialize) od definiowanych (konstruktor)? Jeśli nie, to zapraszam serdecznie do kursu :slight_smile:

I na zakończenie czysto jałowej-akademickiej dyskusji: proszę spojrzeć oczami początkującego, kogoś kto dopiero poczuł “żyłkę” programowania.

Gdyby odwołać się do jazdy na nartach, to wypowiadający się Koledzy w tym temacie, są zapewne mistrzami w slalomie, skokach narciarskich czy freestyle, a kurs jest dla tych co dopiero stają pierwszy raz na stoku.

1 Like

Jak wspomniał @swistak84 jest już na rynku kilka polskich profesjonalnych kursów Ruby i Ruby on Rails od podstaw. Między innymi mój, który jest zapisem 12-godzinnego webinaru na żywo.

Sprawdzony w boju, prowadzony przez praktyka z dużym doświadczeniem, posiadający dobre recenzje uczestników.

http://szkolenie-ruby-on-rails.macuk.pl/

Mimo, że konkurujemy o studentów, życzę powodzenia i gratuluję profesjonalnej oprawy graficznej :slight_smile:

Pozdrawiam.
Piotr Macuk

Jeśli poruszasz kwestie akademickie to u nie na uczelni dużą wagę przykładali do tego, żeby być konsekwentnym w nazewnictwie

Jak zauważyłeś ludzie na tym forum dbają np. o jakość umieszczanych ogłoszeń o pracę, a co do kursu, to jeśli są lepsze kursy lub coś w kursie jest nie tak, to trzeba to po prostu napisać

Podsumowując to jest kurs uczący programować w Rubym, ale nie uczy dobrych praktyk programowania w Ruby - i tyle w temacie.

Wcięcia to nie błąd. Stosujemy je dla przejrzystości przykładu podczas tłumaczenia, aby ułatwić i przyspieszyć naukę.
Brak również oficjalnego stanowiska na ten temat.
stackoverflow.com/questions/616037/ruby-coding-style-guidelines

Stosowanie dowolnego języka to również nie jest błąd.
Nie zamykajmy możliwości nauki programowania osobą nie znającym j.angielskiego. W kursie tłumaczymy logikę programowania bo to w podstawach jest najważniejsze, nie uczymy natomiast bezmyślnego przepisywania kodu po prowadzącym.

Jak już wspominaliście w sieci jest masa zarówno darmowych jak i płatnych materiałów, polskojęzycznych i angielskojęzycznych, problem w tym, że dla sporej części osób te materiały są dalej ciężkie i niezrozumiałe.
Ten kurs został tak stworzony, że osoba w wieku 50+ jest w stanie zrozumieć i nauczyć się programowania.
Nie musisz znać j.angielskiego !

1 Like

Ruby to nie Java że jest jakaś oraganizacja wydająca oficialne rozporządzenia. W rubym bardziej liczy się społeczność. patrz: https://github.com/bbatsov/ruby-style-guide

1 Like

Matko Jedyna - niech go nawet Kolega nie reklamuje, bo widzę, że “wcięcia” są zbyt duże :slight_smile:

Konkurencja tylko podnosi jakość produktów.

Pozdrawiam

Tomek

1 Like

Piotrze dziękujemy za miłe słowa. Uważamy że nie konkurujemy, ponieważ Twoja publikacja jest dedykowana bardziej zaawansowanym użytkownikom, osobą które znają już podstawy programowania w Ruby. W kursie nie skupiasz się na omawianiu każdej linijki, każdej funkcji. Kurs przygotowany przez nas to zupełny start od przysłowiowego Zera.

Nasz kurs prowadzi Tomek Kubisztal - programista z 23 letnim doświadczeniem, pomimo tego uważamy że najważniejszy jest dar do przekazywania wiedzy innym, a postawienie się w roli początkującego to już nie lada sztuka.

1 Like

Mój kurs jest dedykowany osobom początkującym w Ruby, ale znającym już podstawy programowania obiektowego (np. z PHP, Python-a itp.).

Pozdrawiam :slight_smile:

Piotr Macuk


Nauka Ruby on Rails po polsku: http://szkolenie-ruby-on-rails.macuk.pl/

Koledzy trochę się uczepili tego polskiego nazewnictwa, ale mają sporo racji. Matz tworząc język Ruby przyjął konwencję (jak zresztą większość j. programowania), że będzie on używał j. angielskiego. Nie japońskiego i na pewno nie polskiego.

Nietrudno wyobrazić sobie polskiego Mateusza tworzącego nowy język Rubin, który nawet obsługuje ogonki:

klasa Kwadrat
  zdefiniuj konstruktor(długość_boku)
    @długość_boku = długość_boku
  koniec

  zdefiniuj pole
    @długość_boku.razy(@długość_boku)
  koniec
koniec

W takim przypadku wszyscy rubinowcy z całego świata byliby niejako zmuszeni do używania języka polskiego. Tak się nie stało, Ruby został stworzony “po angielsku” i używa języka angielskiego. koniec, kropka.

Używając polskich nazw w języku który używa j. angielskiego brzmimy trochę jak słynny polski biznesmen z UK** , który nie do końca zna angielski, więc wtrąca gdzie popadnie naszą, polską “ku*wę” :smiley:

Programiści muszą znać angielski, tak jak lekarze i prawnicy muszą poznać łacinę. Nie ma innego wyjścia.

** https://www.youtube.com/watch?v=N_urmb3GOck

2 Likes

Jeśli dobrze rozumiem to ten kurs jest kierowany zupełnie do początkujących adeptów sztuki (i tak też go odbieram po oglądnięciu 3 darmowych rozdziałów). Jeśli tak jest, to większość uwag w tym temacie jest głupia. Rozumiem, że wielkość wcięć na pewnym etapie nauki jest istotna, podobnie jak stosowanie angielskich nazw. To są zupełnie nieistotne rzeczy przy pierwszym podejściu do programowania. Patrząc na to co tu wypisujecie to gdybyście uczyli chodzenia dziecka to od pierwszej próby poprawialibyście jego kroki - bo krzywo stawia :D.

Oczywiście cały czas podkreślam kontekst: kurs dla zupełnych żółtodziobów.

Bo initialize i class to słowa kluczowe języka? Rozumiem ból mieszania angielskich nazw i polskich - w życiu bym na to nie pozwolił w pracy czy swoim projekcie, ale tu mamy zupełnie inny kontekst.

Tylko, że jest ogromna różnica między “nie uczy dobrych praktyk” od “uczy złych praktyk”. Nie wiem czy ten kurs zalicza się do 1 czy do 2 kategorii, ale uwagi o języku i stosowaniu tabulatora na pewno nie można uznać za karygodne praktyki (jeszcze raz powtórzę: kontekst).

Batsov, serio?

Tylko ten polski Mateusz nie tworzy języka, tylko uczy się programować.

Co do kursu, żeby nie było, że mam jakiś interes w bronieniu go (a nie mam). Oglądnąłem darmowe części i mam kilka uwag.

Sposób prowadzenia i wysławiania jest całkiem ok. Rozumiem, że jest to kurs dla zupełnych żółtodziobów, jednak momentami padają niepoprawne stwierdzenia.

Nie muszą, jest to tylko i wyłącznie konwencja.

Definiowanie i wywoływanie metod

Tak trochę nie po polsku. Metoda upcase została wywołana na obiekcie adam. Po prostu.

Otóż nie musi.

[5] pry(main)> Float("1.2")
=> 1.2

To jest właśnie coś czego trzeba się czepiać. Jasne jest, że taki początkujący programista będzie mylić pojęcia polecenie, komenda, metoda, funkcja itp. Jednak prowadzący musi zawsze poprawnie ich używać.

5.times {powitanie}

Ten zapis sugeruje, że {foo} to jakaś magiczna konstrukcja - proponuję używać spacji { powitanie }. Dodatkowo nie wiem jakiej składni dalej używacie, ale proponowałbym stosować domyślnie wersję z do … end, a dopiero po jej wprowadzeniu pokazać tę.

Tworzenie plików

(o wstawianie spacji po między nazwę metody a “()” )
Dlaczego nie może? Nie jest oczywiście to dobrą praktyką, ale nie potrafię odtworzyć sytuacji, że “nie zadziała”.

Podsumowując. Kwestia stosowania tabulatora i języka polskiego w nazewnictwie zmiennych, klas i metod nie przeszkadza zupełnie by wprowadzić kogoś w świat programowania, jednak kwestie merytoryczne pozostawiają wiele do życzenia.

2 Likes

a znasz coś innego/lepszego ?

Jako konwencje batsov jest ok, natomiast zupełnie zaskoczyło mnie przytaczanie batsova w kontekście nauki programowania. To jest jeden z dalszych etapów, ale na pewno nie zaprzątałbym tym głowy młodemu adeptowi.