Unu: ăla nervos

Un articol din 2007 (pe care l-am găsit din întâmplare – de fapt, căutând aiurea pe net o poză de genul ăsta cu un programator de noapte pentru o glumă lame) m-a inspirat să propun următoarele (încerc să fiu scurt, veți înțelege însă totul dacă citiți originalul):

Dragă managere, forget agile, forget scrum, forget stand ups (yeah!) și în loc de toate astea, adună pentru proiectul tău o echipă mică (0-1 functional designers, 0-1 UX designers, 1 tester, poate niște marketing, sales, and yourself, whatever) în jurul unui singur programator bun.

Poate vei fi uimit. (Zic: “poate”; dar gândesc: “sigur”.)

Chiar de proiectul este pare așa mare! (Capul programatorului e mai ceva!)

Am văzut (și încă mă tot mir!) cum firme mari și deosebit de proaste plătesc extraordinar de mulți bani pentru echipe barosane formate în alte firme mari (un pic mai deștepte, căci preiau – și poate chiar distribuie frumos – profitul, generând însă și ele la rându-le atâta birocrație că-ți vine să-ți iei lumea în cap de le ești angajat), iar proiectele merg de parcă stau, clienții lamentându-se gen asta e, n-avem ce face, realizându-se până la urmă (în cel mai bun caz) într-un an cât ar fi putut produce un singur programator bun într-o lună!

Așa că lasă normele, uită porcăriile pe care le-ai citit, concediază (sau împrăștie oamenii și fă-ți mai multe echipe pentru proiecte paralele, eventual integrate ulterior de trupe viitoare – fiecare grup însă în jurul unui singur dev!), iar apoi lasă-l pe ăla unu nervos, anti-social, sau cum o mai fi (sau pe fiecare dintre ăia unii) să-și (și să-ți) arate măreția!

Advertisements
Posted in Organizații | Tagged , , , , , , , | 2 Comments

My Apple day

Acum un an (cu precizie de câteva minute!) cumpăram primul produs Apple din viața mea: un iPhone 7, înlocuitor al mult-apreciatului meu HTC Mozart; nu voiam Snapchat, dar vechiul Windows Phone nu mai făcea nicicum față: Microsoft eliminase de mult timp chiar și suportul pentru Skype în 7.8, așa că în cele din urmă trebuia, totuși, să fac ceva!

Deși motivul alegerii între Apple și Google și deci între iOS și Android a fost atunci în special de ordin antreprenorial (voiam să încep câte ceva pe native mobile development și trebuia să încep ori cu una ori cu alta – și era bine să am și un device potrivit pentru teste – iar pe nișa mea pare-se că iOS development ar putea aduce mai mult profit), am ajuns să îmi placă atât de mult iPhone-ul și MacBook-ul pe care l-am achiziționat câteva luni mai târziu, încât acum nu știu dacă le-aș mai da pe Windows Phone (dacă ar reveni în forță), respectiv PC. (Mai ales că pe Mac există suport oficial pentru a rula Windows, dar pe PC macOS – nu! Sigur, Apple e “de vină” pentru asta, dar fiecare cu strategia proprie.)

Regret deci că am ales “merele” așa de târziu: în acest an mi-am schimbat complet optica în legătură cu compania pe care o credeam anterior doar o marcă de fashion, iar acum cred chiar că mi-ar fi fost mai bine, per ansamblu, dacă aș fi investit și într-un Mac mult mai de mai demult, în loc să slujesc doar zeilor PC și Windows care – credeam eu atunci – erau tot ce îmi doream din punct de vedere tehnologic prin preajmă. (Dar asta e!)

Da, Apple a avut recent o serie de probleme mari pe transparență – vezi încetinirea telefoanelor pentru a proteja bateria (?) – și security (mai ales în zona Siri), care și pe mine m-au enervat, însă per ansamblu, din punctul meu personal de vedere “fructele” lor mi se par acum pe cât de plăcute vederii, pe atât și de “gustoase”!

Iar ca developer, n-am ce face, trebuie să spun și că-mi place mult și abordarea celor din Cupertino în legătură cu Swift – nu, nu neapărat “open source-izarea” (eu sunt deseori “mai” fan closed decât open, mai ales dacă nu e bine controlată deschiderea), ci aceea de a nu păstra backwards compatibility la un nivel prea ridicat între versiunile majore ale limbajului de programare, comparativ cu modul în care Microsoft gestionează C# de exemplu, reușind astfel să ajungă rapid la o sintaxă modernă pe cât de expresivă, pe atât de protectivă (orientată anti-eroare), pe cât de plăcută la scris, pe atât și la citit!

PS: Deși anterior spuneam că MacBook-ul de 13″ este suficient, încep să simt că – în special pentru storyboard-based macOS development – 15″ ar fi o alegere mai bună (pur și simplu e nevoie de cât mai mult spațiu pe ecran.) Sigur, și pentru iOS development patru core-uri de i7 sunt mult mai bune decât două de i5, dat fiind că vom folosi la greu simulatoare ș.a.m.d. (încă un motiv pentru a alege modelul de 15″ data viitoare.)

Posted in Computere și Internet, Miscellaneous | Tagged , , , , | Leave a comment

Boot Camp seems enough

Ziceam nu demult despre o posibilă idee de afacere: producerea unei genți duale pentru notebook-urile necessare unui [desktop+mobile] developer contemporan – un Mac și un PC. Nu-mi plăcea ideea de Parallels (abonamentul costând cca. 100$/an!), eram ferm împotriva oricărui tip de “hackintosh”-ing, dar voiam performanță maximă și consideram obligatorie posibilitatea de a rula deodată ambele sisteme de operare – ca să poți rezolva în paralel probleme apărute pe mai multe tipuri de interfețe. Așa încât singura soluție părea utilizarea, și deci și căratul, a două fiare pretutindeni – cel puțin dacă ai dori să fii mereu ready to dig into anything, on any of these platforms.

După ce am folosit însă mai multe luni atât Mac-ul cat și vechiul PC pentru siderite tipuri de activități de dev (deși încă nu mă pot considera multi-platform developer, cum n-am lansat încă niciun produs pentru macOS+iOS+Android+Windows) am observat că paralelismul menționat în finalul frazei anterioare, acela al rulării simultane a ambelor sisteme, rămâne la stadiul de nice to have: în practică, nu mi se mai pare obligatoriu. Mai ales că noi, oamenii, nu suntem capabili de multi-tasking adevărat, cel puțin nu de unul eficient, iar cloud-ul rezolvă rapid orice data sharing între cele două “mașini”, anyway.

Coroborând acestea și cu cele prezentate recent aici în legătură cu nivelul de reliability al diferitelor sisteme hardware (concluzii confirmate la nivelul cel mai personal – pe viu – cu un MacBook mediu și un Dell XPS high-level, cu care n-am, respectiv am avut diverse probleme), cred acum că este suficient și, poate, chiar mai indicat – pentru a rezolva totul, inclusiv pentru a scăpa de dualitatea la cărat – să ai un singur MacBook computer bun + o simplă licență Windows, sistemul secundar find instalat și rulat whenever necessary direct de pe Mac, utilizând Apple Boot Camp’s official support for Windows!

(Cade așadar ideea marochinăriei.)

Disclaimer: nu am văzut Boot Camp in action, nu știu nici cum se comportă driverele de Windows pentru hardware-ul Apple, dar am auzit numai de bine: cunosc developeri care știu developeri ce folosesc Windows pe Mac cu succes și nu am găsit plângeri – la o primă căutare rapidă pe Google – în legătură cu posibilele probleme ce ar putea apărea în acest context, exceptând eventual diferențele de la nivelul tastaturii – iar acelea se rezolvă.

Posted in Computere și Internet, Miscellaneous | Tagged , , , , | Leave a comment

Sharing appreciation

Stuart Grimshaw is my new favorite [tech] book author. His style is just exceptional: informative yet not verbose, pragmatic yet inspiring, and – very important – so fun!

Below are just two quotes that I ran into today, reading the error handling chapter of his macOS development book (that, by the way, I absolutely love):

“These errors have been conjured up from nowhere and then declared to be of type Error. They are not in any way provided by the system, and their names are purely descriptive. They would work just as well if we called them redError and yellowError. Try saying redError yellowError quickly three times.” (tip)

“There is a saying: Crash early, crash hard. Although, googling it only returned articles about racing cars and hard drives, so we can’t credit it here.”

Isn’t he spectacular? (There are plenty of similar statements all over the text.) 🙂

Posted in Books | Tagged , , , | Leave a comment

How to view SSRS report contents if you’re using a modern browser

When you try to view a report generated by an old version (such as 2012) of SQL Server Reporting Services instance in a browser other than Internet Explorer or Edge you might notice that it’s displayed as an empty page.

(There is a solution for this issue but it’s not Microsoft-genuine – they say SSRS simply don’t support other browsers – and requires updating a JavaScript file hosted on the server side, which, although may be trivial for techies, is not a “nice” thing to be done.)

What’s the solution then?

I personally rely on the small button named Export and looking like a Save as. Which most of us would tend to not even see when the report contents looks “so” empty. But it’s still there in the toolbar. And it can still generate a proper PDF file with the same report contents that is (not) displayed on screen. You’ll just need a PDF reader then to open it.

Captură de ecran din 2018.02.14 la 17.51.44

Posted in Computers and Internet | Tagged , , , , , , | Leave a comment

Let’s redesign!

Nu trebuie să ne ferim: uneori trebuie să refacem totul (aproape) de la zero. Folosindu-ne de experiența acumulată, modificând însă oricât e nevoie esența.

Chiar de-a necesita cam mult efort, ori de nici n-am putea estima dacă ar merita. (Va merita!)

Atât în programare. Cât mai ales în gândire, în “viața cea mare“.

Posted in Miscellaneous | Leave a comment

Mini-Alexa review (Amazon Echo Dot)

În ianuarie am cumpărat un speaker Echo Dot de la Amazon. Cu vocea Alexei.

(Ideea mi-a venit în urma unui articol citit pe net: cineva spunea că îi ajută pe copiii săi să învețe limba engleză, ei nefiind vorbitori nativi, dar și să elimine parțial screen-time-ul. Într-adevăr, fiind vorba de un smart speaker simplu, fără ecran, interacțiunea cu aceasta se rezumă la voce, păstrând însă vibe-ul tehnologiei.)

Sigur, aș fi putut alege o altă variantă – cele de la Google sau – recent – Apple vin tare din urmă, ori chiar doar să vorbim mai mult cu Siri și-atât, dar m-am hotărât să aleg un device Amazon de această dată pentru că nu tot timpul aveam un iPhone în preajmă și (momentan, cel puțin) Alexa este cea mai populară în rândul developerilor: presupun că va veni o zi când voi avea timp să scriu și un skill (am deja niște idei) completând lista celor 30k (!) existente. Nu pare să fie mare lucru scrierea unui asemenea voice app: în esență trebuie doar scris și găzduit un REST-based Web service dacă am înțeles bine. (Și poate fi găzduit oriunde, nu doar pe AWS.)

Până atunci trebuie însă să spun că deși o mai întrebăm și pe Alexa câte ceva uneori, Siri pare oricum nițel mai deșteaptă când vine vorba de întrebări generale și nici cu Siri ea nu sunt dese poveștile. Și oricum o întrebăm rar câte ceva. (Poate că ar fi avut mai mult succes dacă ar fi știut română.)

Dar are și Alexa aptitudini interesante și nu consumă baterie (fiind mereu în priză). Folosim What’s new?, weather and traffic info, counting to 10 și alte remindere, jocuri gen capitale europene și (mai rar) general bot chatting, and it’s inded kinda fun. Dar nu elimină screen time-ul pe cât ne-am fi dorit, no way – aviz amatorilor. 🙂

Posted in Computere și Internet | Tagged , , , | Leave a comment