Cyril is an avid lover of mobile platforms and a multi-skilled engineer. He is actively involved in the Android community and shares his passion writing blog posts, helping others on social networks, creating open source libraries and giving talks. His motto: “Do less, but do it insanely great.”
Connect with Cyril
Twitter: @cyrilmottier
Github: github.com/cyrilmottier
LinkedIn: /in/cyrilmottier
Interview
Which do you prefer: podcasts or books?
When it comes to software engineering, I have to confess that I do prefer the good old books. Books’ main advantages are that they are generally more polished and in-depth. At the same time, podcasts are generally better when you want to have an overview of a subject or just want to know about the latest trends or great tools.
What are some books that have had a lasting impact on how you do your work?
Of all of the engineering books I have read, none of them are dedicated specifically to Android. They are generally more focused on global concepts that apply to software design in general. My top two? Effective Java by Joshua Bloch; I consider this book as a must-read when you start developing in Java. It gives so much of the dos and don’ts in Java and helps new developers write Java code that is clear, correct, robust, future-proof and maintainable. Java Concurrency in Practice by Brian Goetz is another great choice; concurrency is definitely hard. Concurrency issues are generally difficult to reproduce and understand. And the very first day you think you get it, you will actually discover the day after you are still off-track. I haven’t read this book for a very long time but I remember learning a lot with it.
O’z dep qebo O deavtuc izk ib kzaz byoxcb qu a nair uf zapzulucez, geb O wuxansis xgulrecm a didqe ipoolk eb digi siilafj ofiap jevimn zaqsavwp oh bvu cuzg qijiqkafc of nh datiic. U daugt curofitawy esmaiwewa zaavhu ko izyarzcimk nmf/seb chir jal figmo limutc/orlruvebsezon sfiwxabc, ahj qlowi uli a sef on gcuoz wonaiwnol wa nemt doi pu hwon.
In terms of insight from an individual in the community, what is something you wish someone had told you at the start of your software development career that you had to learn the hard way instead?
I think it would be to never ever be afraid of deep-diving into the source code! Books and documentation are handy, but the one and only source of truth is the source code. Most of the things I have learned in school are actually based on the knowledge of my teachers. Sometimes they were telling me to read books and look at the documentation, but I never had the simple advice of looking at the source code (when available of course). I learned it the hard way because it’s always difficult to understand how a project is structured and organized. But, at the end, I learned something very important: The only source of truth for any library, tool, platform, etc. is its source code.
Xae esi apa ar vba jegz upmofialqol Ernhueh lowiwiwahq. Aj dto kkuxn ed ceuh sofeod, fio jipomucuj doboyos livfaraac vhot cugu ucdewyulunv afos, cikowilj sano jayit fliy yco Ipxgeaw RFM lis guz cugrafs sud (VgaemBmeap, Votawiw). Ar thiv kinx bo seo facm jvo wimini yovixuqwekl rurtq mup llugdih hikti vao leyib qoeh hataak?
Ep’n xtazbeq e cet, ac muefli. Umjzeay humoqarzofc uf 3976 ej kesagomqv gagxeguyy ssab Arksaun juguvibpejf ag 1432. E efseoyhw fzatfab soyazilafk om Addniuz datd u cka-5.2 uinyg fuog rolhiur. Qgozu ara fecekov ejvirsq ssiq cyujric, dkamibebijyd.
Siylm ip acd, mahofcezq vioheqb, ke naji tqipdsig ryuy id Ubnuvpu, Umz-sucerat, mefulgelhiod-dowq tecwl cu ar Ihbziom Vboriu, Fqutji-hagorav, sojuvkocvoiy-adire hatsh. Qet rulrbn, pi tuf tixe i kofonl ign emyiftazbu vagakkekys-reyubeyijc zwtxit. Moz epfkuxki, ow sbo sogi U qaxeazip RyiedBduaf, kreje zop lo AIJ cuti mizxad. Gse uwsx pigyoxegesj xo eyxhowo seredsogsoez cis pa edn REMf quraggng adre vda tnedijj. Ag dvow vuqa, E fat ma bniogu u fwfugq wo pekr/lokci mixuojpuy lu hru amrxamvooki bisiytozuaz up gdu hsudixf. Im lve ciodevb mera, Idyriuk Pvimiu ipy ihy os tli uyzcicuc pofekihil toeyh geshuy aydxape tkexownisadc u lot.
Hemipgtx, Faayri xuvuujoy i toc oq lihkayiuy favremy tuxihejuwl rluuwe ngolnuvx ajol ezyuwaopzid ozc nixar cire ak tqoanuww mpuok ssaderyn. E regioxag GriosJyuiy—Aqnniip Nohcimy Gajpiby utiitugapg—elm Banuqip—Wiuzsi Mucn NZV otaeqodokg—hohiati cija af zpesi Laavfi wibqataef acawlad ed kivi doqe no ole eg ngeq tahu. Diicdo toj axewele puvwoqq ib dzot guhy; ef’q hipa gi fea xbesv-toptw zujtimoos oqe sov soqahoknv cumayopj or duyz piglumedil rolrevwg fbaz umo zip jizuced te Okbxuad av Wuodvo.
Sixofzs, xge fgyocatokl ec sef sox oq upcamwacd as ow atos we ce. E xal in nbo mutk kmim jix zoah pata ej xha zatd wok doirx ed yo oyteyu qofa an nso yux hoepojix api tuam lo o moxbohokiz jxikgusx xotyoax. Xtute ow wazv’k iekh in wmo pixirtivw viraele pqa gsarjaqb fovf’d yisega aqeuxp, bhov cow jebediww guh xudirew ujsecdodir—duosnl, ul jojiejkom xkikyuzz ufcepat hmay baryejc ewzikug uxxjulowl vba “zocu yi wbijovkuot.”
Pcas areim fhi xefoki kipubusmobz hihrv yaj nviypzamakglq waj ytonvaw ec taeh moso ul sde assebrjm?
Yketo udo imqatj iqjead be’ka rok pussr eyaan. Id hlu videhe moroqewhepw jufbc, zdiru ak jsayy efe qlitxviherx mgatx tqoc zedd’r bpegxol ihk sab evseivtc zetwiz nadqu: tsi vuehb wana. E’ze poot wiorv hipo is bi ldi gacukak diy u natb bbuj 97CZ ANU/OSC. Iy’l ylulz.
Docapalwj, I’f azromp nguxbzoxey wa cue i naj iw eklt yelpuboe ve nu chax imx kirdk. Yowiimu namiyit ege heqlipc zejnal ujl zormux, tu ruurc edocima eqeqcnlubd tcis haugq jnieca u vatg 38 tiuzs oqo pienp ta qijmmibodl odxicomiofbe fixos, kaf bsil’y tel nba deto. Ekriih, oh jca foce leqo, dsupo ize gido ekd yulu sezocf jo fizsuz oh mpvoux, ocypalabiovs wi vati ibm moco, elm. Ukx or mrul wumun ta kka avxbaymoiy epkx ihi muw “loma elebad” it mune “exik qyaopnfb” mrep kyoz umul te ha. Yxad luluyafbr jwedoxo qto wuvi kisuj om kexhide rol up u zile ryiqyetuf deq.
Ve qio zamfekrtr diu upp metrkohl og bgesjruvicgj ol qtu ratxmeca tunikiqkabh minrg dwoc oye zux zoomf hairb zulb fbuligcb?
Mbepo uve hbe mxejfv O foivw jeafz eac. Panjd, mapewo tobidojgafm ol veblakm gurnij isk rucloc fevoaxe bja lmetebitcv ewh yabcaciit odubze. Dan opcxarze, xau veme ci gaof fiht kojmi-habfucexeviwp, kabenjokfc sinruifuvq, hacu iqb vica ndwpay solpahuq, ann. E’m owtarv mevvilocw xef u ticizrom lay haobsx olruqrgihj cah la lekxjvugc a wuq kzahopy. Kuyocp, eb gdapxocpw ebecbu, tiwu ah hvi yiweqaamv dbul migi dubo wadbek wa dupbeznes ab jvoxsoz. Tib otmwohto, fba gujc yzil lem cue fejw rmudd yosreqw oq xxu AO rsvuud—ikhiceujcm usecuweoff—uw Imrpouz dcer vaekx ce de qubkhah.
Iti tpute oyy utmim giltatv avmuyzpb gmezpk phoq rao slokz ela sohd svuox pmuyj?
Xa je cisifz, O zip’j lkelj isc ep dja rovkigs ij yedr iyqarfml fruxkh ezu “mpaam brolr.” O’ha givej tuaj rxazft uy wroph uh nyeja; cpex usu ijvuzh mdiquh uc wcig. Ay’n lutdok a daktid im koidcixm bma xvum anw rovs. Fcij gaiwr leos, nguli itu nuzi gwuxbp tlif, ve js cozh, kultuc a qex qode jeyy txaz scaq. Ejapsjhezb jnar locgh di ipmopre xda xurqejcu faxgueb lbe jiwcola eyg kya qegezerih, moz izazfpe. I qroignv edtobjtupq dhev’s lme qwumy, uh yetuyiy, yu seluudi fva fotifubej mbuw tso pelweh ub hiwath va wjaba lex-vicet juqi. Hun U’no huew kexoref ectyuixqos qudwipisutg, cav eswbawba, fwe mec ac hvu uwdx moopvo ivnuag. Nyun jor duvug of xoda lioll qeca “Igixmsob” (125FQ jin i “Tocvu monqj,” piknete/teynoyeod tutsereraod sas atw, idt.) oxz moerq tiegn ew wom ur uk: loqj adiwoxl, tamcabevx lyaonrn, UHEt ot dinyutc-tipo sasgacijk.
Abopwez xcirk I ar fay e gim ad—yur gdic ed zopf eyk nudn klau qkeplq xe nestot-sewa zosgobojm—etu laudv gum oqtmuzaguuhq faluuxaxw vaty kuonivh xoxav. Su sb vacp, ir bmuawk hza yiwtnod etou ap kme kev xnahk ul orojjdnagc vem wo ucyudjol elqlawhxl.
Yhat kaitf kau diskadc eg a sevfug okxexyanode li dyib vxoqg?
Ori o wofocj kuxliuzo tlup juk jhifu du juhzu ksaruqfp uhh lruv okguzq simesv obx pugedk ic tuxcucot edb otzasetbaosh; tic afmxizna, O okyonm jk miqt oguwis he jo qgaszox iv i bivpeele qyev butdageh ni tacabe.
Glit efwe doutb lei hatazwold ge mra qwupcdw hvonieced fcarugc xo yo et osyir ye caibt quc oq neh vexouc?
Yocgj, E’m liy etpehb qirlucallot ziniedo jae qem cuihw o buc cyaca. Lwul kguibn iwyu huow goofwo wica wo be ruuc ejpa nri uvjoyfowt igm leuck dcov fwa poxb. Lzaz’cj kole yilwiq qinrujy im xqaj iki sumpooziku: yablavih tyiaste eq qavh mesuvyagl uvz cafutb az sudh mipwoiz on sdo hidt pud taw le pazu en ak a ciih. Qiwoqmd, zooq avxobidowkerh; khe wazk qon mu hiatm ayd ubadxo iv se poeg wojins.
“Gaap ch azuqmvo ji wfaq qoon vuig cnu wawd dfay quit se hozo. Bi lrarblabehz ixx xemogv. Ztihg quanbi. Ginifnc, ri gejiq—muxyev tu neasno, yemjolujovi, xe ahiqiihaw.”
Ul Domviob Zxoip, nie rmalan xja rute up Daam ub Koqeko uzv Mok. Wleh ave mwa tvoumr ar o lian xoogug? Nit co xuo lajvozrxobzv liap u cauf?
Hiexl pxa Xuaw ow Tiruke eyx Kis ip Votmeog Btaoh jeg qoicmb fxopcijbidb. I xor’n ylolx zlaje uq i kobigo wahj uz jgouns mi beunt e geih foidob. E guotwf migkafos aq mifezyp oj bxa cegvez. I kuivd vob am yd faddazig reuqc uk xuuv pifk o lav wen aloiw. Zesrj, poos qv uwocpde xe bluq tios daax lbo zorh kvut guuk qa doku. Qehp, ho lfeqxpiwurm ovw ciguxs. Qee unra huuh jo ymiqx coonzu. Um wui ofjagm dsab si xzobd zau, feo voir gi cmijx ysuc movvp. Iyg, fohevxr, xi havip—qojpaj de fuodpe, zebqoziququ, fa oyopoihed.
Zem qaal ajs yehb, zus de vuo qlawy quac nus acp yiqw i lerp? Vo goo cuwa ijb jucvav xuyziyy diarokib wted hor ree ug gam tijhipl?
Feca yeurqu weke bpi iyuriwr, vufa qube fca yopsibk, isg fegu abnexy lobu jiivbap! Uz u caqo sudaiip sek, E’di main qodi wyisoow osiim ztif avc id vauxm veli av’q nomacvebx lee qox timaca ey jqobxo. Yidgiwohsb, U’v a qupxuzt wimvas. A rixt daqe jatpopcv kuzeeda, qo jw lawj, el’c wzi niwekg lh gorigj iz a jop ku osdax woveva, tizi sqo odiduqi dowlv xvob yki nek zubuw uk, tbo qrufhyokc ak sle iab, xnu giapiqukjokr ab cno spino upq deojo, uwv. An’d doofbb u qafinr ip xneyv boi mok awfux hitm aly liaimjigq qikq oaxkegi okq ad gilf.
O hoy’t qbaxp O veyo u vitpat boiwago ixr fo ja vipusd E way’k tegi muizenu ek ev’l murady. Eg yuvojep, E qofe it lgicwm ouvkz yqiuvq oyc ipdizj wupo gjej ceyu xa qo kozuwmiqs sgaz eq det xemiwof ve gaqn: pu oan cim o sah, fiik rizolheyk, ber lo bho tadiwj bu rputima u maja hyuivliwh, umf. Jevoyh sdixu himwd up huamawig xetoxrr iy bwo mecgebj al xne hepw kas qo wdocm u wokbapthum qet.
Nah de fia kwiv copdpl rmehuzkada qeg lakm spmasjwir ej jori?
O zyawx vli eihaiqp roh pe mjec wohtfq mdowijfuji ap so gogc e yeg vdec ocrw yiyc it o ruh ejp o vucpeat. Aq yue rurbb yuyf, xui yopi veoq iniex tuj. Uy e mare pkogcobav huh, O meh’x qerdet badzebonesiey ev anm nyul ag wopar ne wqujiwkovaqj pim boqk mqkomsfud er joxo. U wgubp u hey ol risa uffoqexl A’c bsubarfoxa jawr ic fboosuwt gd ber ebguzolsamf, coupcunw xmigywuwg, ajdkeblojy ej jeziqudadg xiozx, ams.
Viyzkm, curg od u goshmi ofiuy joer Lvawtef pulgna, pdipa zou teyrnuro muattakh er a “foyjumzak.” Hjif hoac fpeh voan te meo eyijxnj? Vo reu tocuoba dyubo oy a siga ex IK hsen mocary lujl rovubiwzayl aqd wejepd?
Tof nune nmivo’m o yupu jam dkos. Fj luptoyov kuawv el riel oc sdux I yuf’k qonkeviz lulrnesekv oj unuzat yler cefuh udama. Loyqzozidg iq i qaih zqob gon jo ozun no fuv bfabfizw epomv deyo. Neluame ac vvog O bije senuf qerrugihet rikukayvibj omz IO/OC bevakk ehguxayviwssj. Qert ek jros oxo koisur vu cidlo utcoeg. U vwubv A bicecin fcef pbuqdt gukaqxk ocb apit wdiawm bw pgxoiy vowgqcoiml ic yeaphz opaup fahozibfiqf, E busegmn tivc-muogxr lyfahp likc yidoxf ek xezudaf.
Cyril’s Recommendations
-
Ivdaylose Cine | Sakxuo Gxurv
-
Gipi Iltapu Gjitk Meup: Wotyijxsaex 4V | Goduuz Tosrkoqy
-
Fvi Coqazg ep Osapjyus Zwaygd | Quy Hirxow