• Ako z domu zarábať 4-krát toľko ako programátor v Bratislave? Časť druhá.

    Pomaly tomu bude rok, čo Jano Suchal napísal článok „Ako z domu zarábať 4-krát toľko ako programátor v Bratislave?„. Tak som si dovolil ukradnúť jeho nadpis a podeliť sa o moju skúsenosť s Toptalom cez ktorý pracujem už 9 mesiacov.

    Nebudem opisovať, ako sa do Toptalu dostať, lebo to Jano opísal veľmi presne. Ja len môžem potvrdiť, že to platí. Avšak z času na čas sa ma ľudia pýtajú ako to tam funguje. Tak som sa rozhodol spísať  odpovede na najčastejšie otázky.

    Koľko tam môžem zarobiť?

    Peniaze sú vždy až na prvom mieste, tak začnem s nimi. A ako naschvál Vám nedám presné číslo, len poviem, že na Slovensku Vám také peniaze nedá nikto. A je len na Vás akú hodinovú mzdu si vypýtate a na koľko si veríte.

    A ak sa aj náhodou Vaša freelancingová hodinová mzda vyrovná tej z Toptalu, tak vedzte, že toto nie je freelancing, ale normálne full/part time joby. A nehľadáte si prácu, Toptal to robí za Vás, čiže máte stály príjem.

    Ako to funguje s platbami?

    Toptal posiela peniaze každé dva týždne. Neriešite či klient zaplatil, alebo nie. Peniaze Vám prídu aj keby klient nezaplatil, len sa to môže natiahnuť na max. 4 týždňe ak sa nemýlim.

    Toptal od Vás nepotrebuje faktúru. Pošlú Vám peniaze kam chcete. Avšak ja vystavujem faktúry, nech má náš daňový úrad radosť a je to všetko legálne.

    Aký je vzťah medzi programárom a Toptalom?

    Každý kto robí pre Toptal pracuje ako kontraktor. Čiže v slovenskej realite buď ako živnostník, alebo im fakturuje cez vlastnú firmu. Nejedná sa o bežné zamestnanie.

    Ako ma kontrolujú či sa neflákam?

    Nijako. Ak niekoho treba kontrolovať, tak to nie je vhodný kandidát na prácu na diaľku. Vlastne to nie je vhodný kandidát na žiadnu prácu, ale to je na inú debatu.

    Ako komunikujem s klientom?

    Toto samozrejme záleží od daného klienta, ale ja používam email , GitHubSlack a občas Skype, alebo GoToMeeting.

    Keď ja končím, tak oni začínajú (sú 9 hodín za mnou). Napíšem čo som spravil a dohodneme sa čo sa bude robiť ďalej. Alebo ani to nie keď mám dosť roboty.

    Niekedy som s nimi v kontakte aj večer. Ale nikto po mne nechce, aby som robil v US čase, alebo aby som bol nonstop dostupný. Právne naopak. Robím kedy chcem a odkiaľ chcem.

    Znodnotenie na záver

    Momentálne mám najlepší job, aký som kedy mal. Je to môj prvý job cez Toptal. Pôvodne sa jednalo o testovací projekt na 5 dní, ale som tam už 9 mesiacov. Ako som spomínal, tak môžem robiť odkiaľ chcem, kedy chcem a hlavne to čo ma baví. A ako bonus som strávil 2 týždne v USA na pozvanie od klienta. Samozrejme všetko platili oni.

    Toto Vám nedá žiadna slovenská firma. A Toptal nie je všetko. Remote job sa dá najsť aj bez neho a ešte lepšie platený. Dôvod prečo to funguje nie je ten, že sme oproti programárom v USA lacný, ale ten že v USA (tak ako aj inde) je nedostatok (dobrých) programátorov a preto firmy berú aj remote ľudí.

    Každému kto má takú možnosť odporúčam, aby nehnil v slovenskej firme, ale aby si našiel remote job!

    Máte otázky? Pýtajte sa.

    Viac info

  • Bye bye 2013

    Máme tu posledný deň roka 2013, tak by sa aj patrilo spraviť rekapituláciu.

    Avšak pravdupovediac som sa na to nijako nepripravoval a ani som nemal na rok 2013, žiadne špeciálne cieľe.

    Každopádne FUCK 2013 and WELCOME 2014 ;).

    Ale k veci. Tento rok som znovu dal výpoveď. Proste ma to znovu prestalo baviť v korporácii a ani ma nebavila konkrétna robota čo som začal robiť tento rok. Okrem toho som sa dostal k programovaniu a nakoniec som si našiel aj full time job ako programátor. Tak som skončil v HP!

    Musím povedať, že to je super pocit. A okrem toho, že som dal výpoveď som, tak teraz už viem, že ak nebudem niekde spokojný tak nebudem stresovať, že čo sa stane ak odídem… proste jednoducho odídem. Tam vonku je milión príležitostí, tak nemá zmysel márniť život v robote čo človeka nebaví.

    Okrem toho som sa tento rok začal viac (oveľa viac) učiť. A hlavne lepšie a viac systematicky. Učím sa ako byť lepším programátorom, stále sa zlepšujem v angličtine (už čítam skoro len anglické knihy), učím sa ako byť lepším človekom (toto je najťažšie ;).

    Čiže aj napriek tomu, že 2013 bol nahovno, tak sa to skončilo viac ako dobre (opakujem, zmenil som JOB! ;) a na 2014 mám oveľa viac plánov ako som mal v 2013, keď som si nejak nevedel dať dokopy, že čo vlastne chcem…

    Díky za pozornosť a predčasné p.f. 2014 všetkým!

  • Idem na to globálne

    Minulý týždeň som si založil nový blog. RubyBeginner.com. Dôvod? Chcem sa propagovať ako Ruby on Rails programátor. A som stále začiatočník, preto ten názov. A ked ním nebudem, tak stále to bude dobrý názov, keďže sú tam tipy pre začiatočníkov. Čiže doménu som vychytal a je to win win :D

    Ale k veci. Ani neviem prečo ma to nenapadlo skôr. Na slovensku je X rails developerov a Y firiem, ktoré o nich majú záujem. Ale vo svete je ich rádovo viac, takisto spolu s ostatnými začiatočníkmi. Pôvodne som chcel občas písať nejaké Ruby on Rails články sem. Ale to by asi ani nemalo zmysel.

    Potom som sa prihlásil do thoughtbot apprentice programu a keď som im chcel neskôr poslať follow up email, tak som si uvedomil, že sakra nemám im ani čo nové ukázať. Tak som sa okrem iného rozhodol pravidelne blogovať na rubybeginner.com a mám v pláne tam pridávať nové veci čo sa pribežne učím. A aspoň prvý mesiac by som chcel pridať jeden článok každý pracovný deň. Tak dúfam, že mi vydrží inšpirácia ;).

  • Potrebujete natočiť video? Mám pre Vás tip na kameramana…

    Dnes to bude reklamný článok. Rozhodol som sa, že spravím reklamu môjmu „malému“ bratovi ;). O jeho stránke shadex.sk som už písal. Konkrétne o tom, aké jednoduché bolo nahodiť ju.

    Teraz tam už pribudol aj nejaký obsah (na môj vkus viac ako treba, ale to nevadí), hlavne videá, ktoré sa mi páčia. Tak nastal čas trochu mu urobiť reklamu ;).

    Ak teda potrebujete natočiť nejaké video, napríklad z nejakej akcie a podobne, alebo potrebujete pomoc od šikovného kameramana, tak klikajte na shadex.sk a ozvite sa môjmu bratovi.

  • Moja prvá reálne používaná Ruby on Rails aplikácia

    Dnes Vám predstavím svoju prvú reálne používanú Rails appku. Síce ju používam len ja, keďže je to aplikácia len pre jedného užívateľa, ale to nevadí ;). Používam ju každý deň a ušetrila mi už kopec času.

    notes

    Aplikáciu môžete nájsť na Githube a volá sa Notes. Ako z názvu vyplýva ide o aplikáciu na ukladanie poznámok. Nič špeciálne, ale o to viac praktické. Vytvoril som ju preto, aby som skonsolidoval svoje technické poznámky, čo som si robil v robote a aby som k nim mal rýchly prístup vrátane vyhľadávania.

    Nahádzal som do nej všetky svoje poznámky, ktoré som mal predtým v .txt súboroch. Okrem toho si tam ukladám aj veci týkajúce sa Rails, ktoré chcem mať hneď  po ruke. Teraz keď potrebujem nájsť niečo čom som už predtým použil/videl, tak namiesto prehrabávania sa mojimi poznámkami, alebo hľadania cez google mám veci po ruke za pár sekúnd, namiesto minút. Nárast efektivity je očividný ;).

    Vyhľadávanie je rýchle aj vďaka tomu, že výsledky sa vypisujú už vtedy keď ešte len zadávam hľadané slovo, čiže väčšinou sa k niečom dostanem doslova za sekundu.

    A kde to môžem vyskúšať?

    Ako som spomínal, tak aplikácia je robená len pre jedného užívateľa. Avšak ak ste trochu technický zdatný, tak si ju môžete sami nahodiť na Heroku a používať ju pre seba. Návod na spojazdnenie aplikácie nájdete na už spomínanom Githube.

  • Ruby on Rails: Lokalizované formulárové polia pre čísla a dátum

    Ak ste v Rails programovali aplikáciu pre slovenských užívateľov, tak ste sa mohli stretnúť s tým, že dáta vo formulároch sa nevypisujú v takom formáte, ako by ste si želali. Napríklad čísla s desatinnou „bodkou“ namiesto čiarky. Alebo dátumy vo formáte 2013-07-19 namiesto 19. 7. 2013.

    Bohužiaľ s týmto si štandardná i18n rails lokalizácia neporadí, preto je vhodné napísať si vlastné helper metódy. Toto sú tie moje, fungujúce v Rails 4.

    # helpers pre formularove polia
    # mozete ich vlozit do app/helpers/application_helper.rb
    class ActionView::Helpers::FormBuilder
      def localized_date_field(date, params_hash = {})
        params_hash[:value] = object.send(date).nil? ? nil : I18n.localize(object.send(date))
        text_field date, params_hash
      end
    
      def localized_number_field(number, params_hash = {})
        params_hash[:value] = object.send(number).nil? ? nil : object.send(number).to_s.sub('.', ',')
        text_field number, params_hash
      end
    end
    

    Potom Vám stačí v šablóne pre formulár zavolať len nasledujúci kód pre dátum:

    <%= f.localized_date_field :date %>
    

    prípadne číslo:

    <%= f.localized_number_field :number %>
    

    Ak máte nastavené aj locale na slovenčinu, tak sa už dátumy a čísla budú zobrazovať správne.

    Avšak ostáva tu ešte jeden problém. A to, že Rails pri ukladaní čísla odignoruje všetko čo je za čiarkou. Čiže z 3,14 sa stane 3.

    Toto treba ošetriť na úrovni modelu a treba vytvoriť vlastnú set metódu pre daný atribút. Príklad pre atribút number.

    # hack, aby sa ',' konvertovala na '.'
    def number=(value)
      if value.respond_to?('sub')
        value.sub!(',', '.')
      end
      write_attribute(:number, value)
    end
    

    Čo sa dátumu týka, tak tam Rails korektne spracuje aj dátum zadaný v slovenskom formáte.

    Nie je na to nejaký gem?

    Ale áno je, volá sa delocalize a toto všetko robí automaticky. Bohužiaľ s Rails 4 nefunguje, čiže mne bol nanič ;). Moje Ruby a Rails znalosti nie sú ešte na takej úrovni, aby som ho dokázal upraviť na Rails 4. A okrem toho sa mi ten kód v ňom zdal prasácky. Ale to možno bude len tými znalosťami ;).