Widać, że z Hindusami nie pracowałeś.[/quote]
No ja miałem okazję i ciągle sie zastanawiam jak naród, który nie jest w stanie zrozumiec idei kolejki w sklepie czy banku przejmuje outsorcing i wielkie projekty.
Oczywiście żartuje Hindusów jest tylu i żyja w takich warunkach, że ich motywacja do nauki przekracza nasze granice.
Widać, że z Hindusami nie pracowałeś.[/quote]
No ja miałem okazję i ciągle sie zastanawiam jak naród, który nie jest w stanie zrozumiec idei kolejki w sklepie czy banku przejmuje outsorcing i wielkie projekty.
Oczywiście żartuje Hindusów jest tylu i żyja w takich warunkach, że ich motywacja do nauki przekracza nasze granice.[/quote]
Heh. U nas z kolejkami też jest problem. Wystarczy sobie popatrzeć jak w godzinach szczytu ludzie się pchają do autobusu, zamiast się cywilizowanie zakolejkować. A jeżeli chodzi o tzw. “hinduskie projekty” to widać poprawę w stosunku do tego co było np. 5 lat temu. Znać, że nie tylko chłopaki się uczą ale już działa selekcja naturalna.
[quote=Muirin]Wiem, że to pytanie może być irytujące, ale postarajcie się mnie zrozumieć
Zrobiłam research i wybór padł na Ruby, zaczęłam pisać przykładową aplikację w Railsach i podoba mi się to, jednak jeszcze nie poznałam języka na tyle dobrze, żeby mieć jakiekolwiek sensowne zdanie. Ostatnio zaczęły do mnie docierać informacje, że z Rubym nie jest tak fajnie, jak się na początku wydawało, że może być problem z pracą, że tych projektów tworzy się coraz mniej i ten język, który miał stać się bardzo popularny, powoli zaczyna odchodzić w przeszłość, nie spełnił pokładanych w nim oczekiwań.
I teraz moje pytanie do Was - z różnych stron sypią się takie właśnie sprzeczne informacje - że perspektywy są świetne, albo że perspektyw brak. Wiem, że najlepiej pisać w tym, co się najbardziej lubi, ale ja naprawdę nie “wgryzłam się” na poważnie w żaden język poza PHP (swoją drogą, rok to przecież też nic) i chcę spróbować czegoś nowego. Czy Ruby to dobry wybór? Czy może być tak, że się w to zaangażuję, a tak naprawdę za dwa-trzy lata będę musiała znów szukać czegoś innego?[/quote]
Work for fun and profit.
Już ‘fun’ załapałaś, za chwię pojawi się okazja na napisanie czegoś komercyjnego w Rubym, skorzystasz, zdobędziesz doświadczenie i będzie ‘profit’.
Jak ‘fun’ zacznie mijać to znów wejdziesz w coś nowego. Nie myśl co będzie za 2-3 lata. Mobilność i otwarty umysł - tak myśli zachód (w większości) i tak my myślmy, olać internetowy dżihad, ranty, wykopy i komentarze onetu. Ta branża tak się zmienia, że trudno cokolwiek przewidzieć, narazie więcej płodzi niż uśmierca.
Znam takich co przeszli z IT na survival bo wszędzie głoszą, że niebawem odetną prąd i wszystko padnie.
Znam takich co mają fun & kosmiczny profit w Polsce utrzymując skrypty w Perlu - to ponoć nie ma już perspektyw.
Znam też takich co myśleli, że po 2-3 latach będą szczęśliwymi kierownikami. Byli kierownikami ale mieli za mało ‘fun’ więc wrócili i piszą w Rubym, Javie, Erlangu czy innym dialekcie.
Fun & profit w naszej branży jest do osiągnięcia, więc trzeba korzystać.
Chodzi o API wszystkich gemów podobnych do https://github.com/morgoth/centrum_faktur
Co by komu przeszkadzało:
CentrumFaktur.new "your_login" , "your-subdomain", "your-password"
gdybym chciał mieć globala to sam bym sobie go przypisał:
GLOBALNE_CENTRUM_FAKTUR = CentrumFaktur.new
Czy mogę używać tej biblioteki z wątkami ? Nie. Czy mogę się dzięki niej podłączyć do 2 kont w centrum faktur jednocześnie ? Nie. Czy dużo jest takich gemów w środowisku Ruby ? No mi się wydaje, że całkiem sporo. Nieco za dużo.
Nie trzeba wpajać moim zdaniem pisania kodu thread safe. Trzeba tylko w prostych krokach nie przeciwdziałać temu by taki on był.
[quote=paneq]Chodzi o API wszystkich gemów podobnych do https://github.com/morgoth/centrum_faktur
Co by komu przeszkadzało:
CentrumFaktur.new "your_login" , "your-subdomain", "your-password"
[/quote]
Uff! „Issues: 0, Pull Requests: 0” – czyli już Twoje zgłoszenie powyższego (albo wręcz implementujący to patch) wciągnęli. ;]
A bardziej serio – zgoda, że z wiedzą o zrównoleglaniu (i wymaganiach/kosztach różnych jego rodzajów) jest w społeczności tak sobie, ale miejmy nadzieję, że będzie lepiej.
@chastell Bez jaj, nie będę w każdym nie thread safe gemie, którego nie używam zgłaszał bugów. Wole robić pull requesty do gemów, które mi są potrzebne. Tak tylko wybrałem do zobrazowania o co mi chodzi.
Przez cały czas, który programuje w ruby pamiętam jeden taki przypadek jeżeli chodzi o biblioteki, które musiałem używać: aws-s3. Też nie lubię tego patternu, może sam nawet kiedyś gdzieś coś takiego napisałem (chociaż mam nadzieję, że nie ), ale myślę, że trochę demonizujesz, nie pamiętam ostatnio niczego takiego.
Inna sprawa jest taka, że same railsy mają Rails.application.config (jedno z tych założeń projektowych, o których pisałem powyżej), ale to też trochę co innego.
Ja miałem ostatnio właśnie okazję korzystać z kilku gemów które dawały API do zewnętrznych serwisów. Prawie wszystkie miały ten pattern. Więc w mojej bańce w której żyję nie przesadzam. Ale to tylko moja bańka.
A teraz pokaż mi język, w którym wszyscy od początku wpajają jak pisać kod, który będzie thread safe.[/quote]
erlang[/quote]
i scala
erlang[/quote]
i scala :)[/quote]
bullshit http://www.artima.com/shop/programming_in_scala_2ed dopiero 32 rozdział, 726-a strona.
i scala :)[/quote]
bullshit http://www.artima.com/shop/programming_in_scala_2ed dopiero 32 rozdział, 726-a strona.[/quote]
Ale tu nie chodzi o aktorow (ktorzy nota bene nie sa wcale czescia jezyka, tylko biblioteka), ale o filozofie val vs. var i preferowanie obiektow niemutowalnych (niemutantow) ? Nieuzywanie zmiennych (lub ograniczenie uzywania zmiennych) sprawia ze kod jest w naturalny sposob thread safe.
http://manning.com/bjarnason/ - poczatek tej ksiazki zapowiada sie niezle
http://www.apress.com/9781430219897/ - ta jest swietna; same przyklady, zero BS
Powrócę do starego tematu
Problemu z pracą nie ma i być nie powinno. Raczej nietrudno dostać pracę nawet nowej osobie w tym temacie, która jednak trochę czasu poświeciła na solidną naukę Ruby&ROR. Sprawdziłem na własnej skusze, więc śmiało można uczyć się tego Języka z nastawieniem na przyszłą karierę Także i Ja miałem wcześniej obawy w tym temacie, ale okazały się one przesadzone i wyssane z bajek dla niegrzecznych dzieci.
W IT problemów ze znalezieniem pracy raczej nigdy nie ma chyba że ktoś ewidentnie wymięka. Raczej kwestią są stawki. Przykładowo w IRL Senior RoRowiec na kontrakcie 400E/d to norma, czyli tyle co Mid Javowiec. U nas… niestety w zależności od firmy RoRowiec stawiany jest przynajmniej nieco wyżej niż PHPowiec ale do stawek Java EE daleeeeeeko. W moim przypadku Java EE karmi a (J)RoR daje przyjemność (nie liczę zagranicznych zleceń)
W RoR można u nas zarobic nawet więcej niż w Javie ale trzeba być zaangażowanym w cały cykl projektu: analiza, implementacja oczywiście, typowy engeenering produkcji, ew. sprzedaż lub strategie SaaS. Jednak to już jest bardziej temat dla liderów zespołów i architektów niż pojedynczych “klepaczy”.
Nie chciałbym wyciągać fai na stół, ale jesteś pewien że masz kompletny obraz kasy zarabianej przez programistów Ruby/Rails w Polsce?
@Tomash, widelki rebased sa podane na forum, ciekawi mnie jak bardzo “daleeeeeeko” jest im do stawek Java EE. Jak jakos bardzo, bardzo to moze warto pomyslec
@Tomasz nie mam takiego obrazu, inaczej musiałby być “rekruterem”. Mniemam że masz inną opinię, masz prawo do tego. Pisałem to późno po małej imprezce %) Ale poniekąd podtrzymuję to jako moje własne obserwacje w roli wykonawcy i tudzież lider zespołu w Poznaniu i Dublinie. Projekty intranet/extranet B2B - małe i duże, integracje lub front-webappy dla korpów, budżety >1mln PLN. Mogłem to zaznaczyć. Bazuję głównie na rynku irlandzkim całym oraz dużych polskich miastach poza Warszawą. Praca na miejscu często kontraktorska. Stabilny przepływ pracy. Opieram się również na propozycjach od pośredników i szefów, którzy czasem podają widły lub budżet godzinówek/dniówek/pensji dla różnych miejsc - inaczej nie rozmawiam. Z mojego doświadczenia IT i powyższych parametrów stwierdzam iż RoR jest wciąż niszowy i gorzej płatny w Polsce. Jeśli masz kilku klientów z projektem na RoR, u których się wykazałeś to masz gwarancję, że wrócą a ty możesz dyktować stawki bo konkurencja jest również niewielka - takia zaleta nisz. Jeśli doświadczony pacjent przychodzi z ulicy i ma puste konto Github to zaczyna od dolnych stawek. Może mam pewne skrzywienie, ale w doświadczonych Java/Spring devach powiedzmy możesz przebierać, choć trzeba ich wyciągnąć od konkurencji.
Wracając do uzasadnienia stawek, z moich obserwacji wynikają one z pewnej ewolucji dwóch grup. Myślę że w Polsce w RoR najczęściej wchodzi środowisko znudzone PHP, stąd też trochę podobne podejście do płacenia. Oczywiście pomijam skrajnych wymiataczy, gdyż osobiście znam wymiatacza PHP w projekcie z produkcją 10 mln transakcji na dzień, który zarabia więcej niż Java Arch w korpo. Z kolej środowisko Java, które statystycznie zarabia więcej niż PHP (tego już nie chcę udowadniać nie jest zainteresowane rezygnowaniem ze swoich cennych “przemysłowych” narzędzi i woli adoptować rozwiązania z Ruby/Rails w JVM, stąd mamy JRuby, Grails, Play! Framework, pewne rozwiązania w Spring MVC. Sam korzystam z nich na codzień.
Trzecia grupa zainteresowanych to “urodzeni” Railsowcy lub wpełni nawróceni z Java, C#, tudzież Pythonowcy albo ludzie z doświadczeniem zagranicznym gdzie Ruby jest znacznie popularniejszy. Zazwyczaj są to projekty start-up gdzie inwestor ma świadomość co daje Ruby/Rails i miał z nim wcześniejsze doświadczenie, jest w stanie zapłacić więcej bo interesuje go szybki wynik. Po części należę również do tej grupy. I chociaż od kilku lat sporo piszę w (J)Ruby również komercyjnie to niestety więcej przebywam w Java gdyż poprostu finansowo jest dla mnie stabilniejsza (stołek czy kontrakt, to samo) i lepiej płatna opcja. Nie mam też czasu na dopieszczanie konta na Githubie. Mam kilku znajomych w takiej sytuacji - po nocach delektują się edgem: Ruby, Scala, node.js, za dnia Java, bo daje lepszą i pewniejszą kasę.
Wracając do tematu przewodniego, perspektywy są ale właśnie w działce typu internet start-up i elastycznych projektach intranet/extranet (<1mln PLN). O to chodzi właśnie w Rails, takie było zamierzenie DHH. By dostać się do większej i stabilniejszej kasy z większych firm (>10k brutto) brakuje jakiegoś flagowego dużego wdrożenia RoR i przewidywalności platformy. Choć jako adwokat Rubiego staram się wciskać JRuby/Rails ew jego koncepcje jeśli się da
To nie jest rant ani flame! Mogę się mylić, chcętnie przeczytam Twój punkt widzenia i ew. zrewiduję swój pogląd.
- Z ciekawości dziś rano wszedłem sobie na pracuj.pl i zrobiłem takie oto porównanie:
http://www.pracuj.pl/praca/spring;kw
http://www.pracuj.pl/praca/rails;kw
“Ruby vs Java” nie ma sensu bo połowa stanowisk ma to w “mile widziane”.
Spojrzałem, mniemam że to są stawki netto na fakturę. @Tomash szacun za podanie i przyzwoite zawężenie. Jednak po zajrzeniu do działu ogłoszeń właściwie jako jedyni płacicie tyle za RoR w Warszawie. Zresztą sam pod swoim ogłoszeniem przekonujesz że Twoja stawka to nie ściema, czyli zakładasz pewne odstępstwo od normy. Ale co jeśli zdarzy ci się przestój albo klient wycofa, czego z całego serca nie życzę. Pracownik na rynku może najwyżej dostać 2/3 tego u konkurencji, a nie jest to taki płynny rynek.
Jeśli chodzi o Java EE - Poznań, czyli rynek “biedniejszy” http://bit.ly/YDPDTs , ogłoszenie już zdjęte ale kolega przeszedł i dogadał 13k netto na fakturę (w tym opłacony urlop i święta). Nie przyjął oferty bo poprzednia firma zaproponowała mu awans na podobnych warunkach, też Poznań. W Warszawie zapewnie warunki już bliższe Berlinowi. RoR poza Warszawą to max 7-8 netto, poza pojedynczymi strzałami.
To są fakty. Ja z przyjemnością bym tworzył w RoR a nawet Scali czy Node.js na codzień, ale własnie ta kasa i ciągłość są kluczowe. To dziś daje mi Java EE/Spring. Oczywiście mam spore doświadczenie w obu i stąd porównuję. Jeśli ktoś dopiero zaczyna Ruby/Rails to prosze nie sugerować się moim wyborem - za kilka lat sytuacja w Polsce może się odmienić wzorem z zachodu. I mam nadzieje, że Tomash i inni pionierzy będą mieli w tym duży wkład. Trzymam kciuki.
Dzięki za miłe słowa. Dodam tylko że nikt w Rebased nie zarabia górnej kwoty z widełek, wszyscy zarabiają więcej, ale Rebased to firma dość specyficzna.
W każdym razie w połączeniu z przyjemnością pisania w Ruby i Rails, nieporównanie wyższą od pisania w Javie (YMMV, ja do dłubania w Javie byłbym gotów wrócić co najwyżej w akcie desperacji, może z wyjątkiem Javy dla Androida), myślę że naprawdę warto być programistą Ruby.
Ciewawa wypowiedź. Piszesz o tym, że Java to stabilniejsza praca i większa kasa niż Ruby i ROR. Tak, ale to tylko dla zaawansowanych. Jak ja bym chciał zostać Javowcem i dostać pracę w jakimś korpo to musiałbym dłużej posiedzieć nad projektami w Javie, obowiazkowo zrobić tak przynajmniej jeden, a najlepiej kilka certyfikatów, które kosztują dużą kasę i ukończyć studia z informatyki (a ja zrobiłem budownictwo i to już w wielu korpach odpada). Reasumując dla kogoś kto zaczyna znacznie lepszym wyborem i moim zdaniem ciekawszym jest Ruby i jego tzw. “ekosystem”. Generalnie próg wejscia jest wyższy niż w PHP (dodatkowo wymagana znajomość angielskiego chyba wszędzie i znajomość systemów uniksowych też bardzo często), ale sporo niższy niż w np. Javie. uffs… Może to sa bardzo dla was oczywiste rzeczy, ale nie tylko obeznani odwiedzają takie tematy :).
Żeby nowi Rubiowcy i Railsowcy się nie zniechęcili . Java jak najbardzie ok. ale trochę za toporna dla nowych.
@Stefan01 każdy dąży do jakiegoś stopnia zaawansowania. W mojej ocenie certyfikaty przydają się tylko zdającemu, a właściwie przygotowanie teoretyczne do nich. Ogólnie to kasa w błoto, bo z praktyką mają niewiele wspólnego, mam dwa podstawowe aby na rozmowach nie pisać już testów w stylu “podaj przykład pętli for” albo wiedza na temat wątków - mimo tego ostatnio autentycznie ktoś mi wyleciał z takim pytaniem. W Rubym zauważyłem, że odmianą certyfikatu jest działalność społeczna, Github, zamiast kasy inwestujesz czas w swoje portfolio gemów lub wsparcie w istniejących projektów.
Z kolej jeśli chodzi o wykształcenie, owszem kierunek pomaga ale na starcie. Podstawy informatyki potrzebne są również z Rubym. Bez nich też można tworzyć ale w końcu napotkasz problemy, które wymagają pewnej wiedzy teoretycznej, przykład: funkcje skrótu, stos programu, poziomy transakcyjności, zagadnienia współbieżności. Jesteś w stanie samodzielnie dotrzeć do tych informacji jednak studia bardziej mobilizują. Jednakże znam technicznych cieniasów po informie na znanych uczelniach, jak również wymiataczy po zarządzaniu, ekonomi itd. Liczy się dociekliwy umysł oraz pasja. Jeśli idziesz na rozmowę, nawet do korpo, znasz się na robocie, a ktoś Ci wytyka uczelnię to radzę odrazu wyjść. Kilka lat doświadczenia oraz znajomości a pozycja “Wykształcenie” Twojego CV będzie pełnić rolę wyłącznie towarzyską.
Java może być prosta tak samo jak również Ruby może być skomplikowany. Przykład http://ai4r.rubyforge.org/ lub https://osportal.remedy.nl/projects/r2corba . Java stała się ofiarą/wybranką korporacji, które przesiadły się z C++/COBOL, potworzyły tysiące standardów (i certyfikatów) do realizacji różnych zboczeń integracyjnych. RoR to przede wszyskim mały wycinek branży - web development, elastyczny i idealny dla start-upów i nowych projektów. Na szczęście w ostatnim czasie do głosu doszli reformatorzy i wprowadzili do ekosystemu webowego Javy wiele uproszczeń, niektóre nawet wprost z Ruby/Rails, przykładem jest Grails i Play! Framework. Używają tego małe firmy oraz korpa. W Javie jest spora konkurencja, stąd odpowiednie stawki by kusić najlepszych.
Absolutnie nie mam zamiaru ani ochoty przekonywać Cię do Javy. Masz rację, że Ruby/Rails jest ciekawszy gdyż jest świeższy, język elastyczniejszy, nie ma tego balastu spuścizny starych standardów co Java, a właśnie to podnosi próg. Nawet jakbyś trzymał się lekkiej-Javy (Java EE 6, Play, Grails, Spring 3) to i tak w końcu dopadło by Cię zadanie ekshumacji jakiegoś kodu sprzed lat, gdyż to często idzie w parze z dobrą płacą. Wtedy w ramach detoksu wybieram jakiś projekt z Rubim. Zniechęcać się przez finanse też nie ma sensu, gdyż kiedyś spece od C wieszczyli marną egzystencję Javie. Kto wie czy kiedyś nie trafisz do korpo i będziesz pisał aplikacje w Rails X i śmiał się z dziadków na literę J
Sorry za przynudzanie wciąż o tej Javie Nic nie stoi na przeszkodzie by połączyć oba światy - idealnie sprawdza się w tym celu JRuby. Z sukcesem korzystam z tej implementacji od momentu wspierania Rails (~2007), wdrożenia nawet w korpo.