Chirurgia endoscopică a hipofizei
"Standardul de aur" în chirurgia hipofizară îl reprezintă endoscopia transnazală transsfenoidală. Echipa NeuroHope este antrenată în unul din cele mai mari centre de chirurgie a hipofizei din Europa, Spitalul Foch din Paris, centrul în care a fost introdus pentru prima dată endoscopul în chirurgia transnazală a hipofizei, de către neurochirurgul francez Guiot. Pe lângă tumorile cu origine hipofizară, prin tehnicile endoscopice transnazale pot fi abordate numeroase alte patologii neurochirurgicale. www.neurohope.ro |
Cati programatori stiu sa programeze?
Last Updated: Jul 04 2018 21:29, Started by
Shinji
, Jul 03 2018 20:48
·
0
#1
Posted 03 July 2018 - 20:48
Dupa multi ani m-am angajat din nou la prima mea firma, o corporatie care angajeaza o gramada de programatori. In Romania, ca sa fie clar. Eram constient ca o sa dau de cod prost, dar sincer mi-a depasit asteptarile. Oameni cu peste 10 ani de experienta scriu cod la nivel de student care de abia invata cu ce se manaca treaba asta.
Exemplu de azi: if (a && b ) { } else { *do stuff here* } Avem deci un if care nu face nimic daca e adevarata conditia si tot codul util e pe else. Stiu ca primul lucru la care te gandesti e ca a fost candva cod util si atunci cand se indeplinea conditia, dar nu e cazul. L-am intrebat pe autor (senior programmer cu 15 ani de experienta) si mi-a zis ca i s-a parut ca se intelege mai usor asa codul decat daca ar transforma conditia din if. Daca ar fi un caz singular as zice ca na, se mai intampla sa dai si de prosti, dar tot codul e plin de functii care au fiecare macar 500 de linii, variabile numite "data" sau "temp", magic numbers etc etc. Ca sa revin la subiectul principal, am lucrat inainte in cateva alte firme, printre care una de 5 persoane unde ma consideram cel mai slab din echipa. Si intrebarea mea e, dintre cei care sunt angajati ca programatori in Romania (indiferent daca au sau nu diploma in domeniu), ce procentaj credeti ca stiu elementele de baza a programarii. Cat sa nu faca greseli elementare de logica, sa nu puna magic numbers in cod, sa stie ca in principiu o functie trebuie sa faca un singur lucru, sa inteleaga ce-i aia polimorfism, ce-i aia un pointer daca lucreaza in C/C++ etc Nu chestii avansate, nu genii. Doar fara huge WTFs. |
#2
Posted 03 July 2018 - 20:55
Mie imi vine greu sa cred ca cineva ar face asa ceva:
if (a && b ) { } else { *do stuff here* } Poate doar pentru vreo testare. Edited by pasilla, 03 July 2018 - 20:56. |
#4
Posted 03 July 2018 - 21:04
pasilla, on 03 iulie 2018 - 20:55, said:
Mie imi vine greu sa cred ca cineva ar face asa ceva: Poate doar pentru vreo testare. Edited by Shinji, 03 July 2018 - 21:04. |
#5
Posted 03 July 2018 - 21:08
Acum am aflat si eu de ce jocurile de la Ubisoft si EA sunt atat de prost optimizate...
|
#6
Posted 03 July 2018 - 21:19
Shinji, on 03 iulie 2018 - 20:48, said:
Dupa multi ani m-am angajat din nou la prima mea firma, o corporatie care angajeaza o gramada de programatori. In Romania, ca sa fie clar. Eram constient ca o sa dau de cod prost, dar sincer mi-a depasit asteptarile. Oameni cu peste 10 ani de experienta scriu cod la nivel de student care de abia invata cu ce se manaca treaba asta. Exemplu de azi: if (a && b ) { } else { *do stuff here* } Avem deci un if care nu face nimic daca e adevarata conditia si tot codul util e pe else. Stiu ca primul lucru la care te gandesti e ca a citii conditia directa.In plus, in peste 90 % din cazuri , creierul sare automat peste ! si din oboseala citesti conditia taman inversa inversului conditiei. Noi avem specificatii in acest sens, adica nu avem voie sa incep o conditie cu NOT sau ! , ci fie refacem logica astfel incat condiftia din if sa se evalueze catre TRUE La fel si la SQL , fara negatii in conditii de join Astfel de cod intalnesti acolo unde lizibilitatea primeaza si de obicei este facut pentru profesionisti ca sa nu-si primeasca injuraturi. E ok codul. Edited by WinstonMontana, 03 July 2018 - 21:35. |
#7
Posted 03 July 2018 - 21:20
Sunt chestii pe care le inveti daca studiezi serios individual din carti bune(ceea nu foarte multi fac). La facultate putin probabil sa auzi de magic numbers si altele de genul(probabil doar daca ai profesor si/sau colegi foarte buni).
Sa denumesti variabile locale tmp/temp nu e o greseala, de fapt e chiar foarte bine daca asta e rolul variabilei(de a tine temporar o valoare - de ex. la un swap sau ceva de genul). |
#8
Posted 03 July 2018 - 21:31
#9
Posted 03 July 2018 - 21:36
Shinji, on 03 iulie 2018 - 20:48, said:
Dupa multi ani m-am angajat din nou la prima mea firma, o corporatie care angajeaza o gramada de programatori. In Romania, ca sa fie clar. Eram constient ca o sa dau de cod prost, dar sincer mi-a depasit asteptarile. Oameni cu peste 10 ani de experienta scriu cod la nivel de student care de abia invata cu ce se manaca treaba asta. Exemplu de azi: if (a && b ) { } else { *do stuff here* } Avem deci un if care nu face nimic daca e adevarata conditia si tot codul util e pe else. Stiu ca primul lucru la care te gandesti e ca a fost candva cod util si atunci cand se indeplinea conditia, dar nu e cazul. L-am intrebat pe autor (senior programmer cu 15 ani de experienta) si mi-a zis ca i s-a parut ca se intelege mai usor asa codul decat daca ar transforma conditia din if. Daca ar fi un caz singular as zice ca na, se mai intampla sa dai si de prosti, dar tot codul e plin de functii care au fiecare macar 500 de linii, variabile numite "data" sau "temp", magic numbers etc etc. Ca sa revin la subiectul principal, am lucrat inainte in cateva alte firme, printre care una de 5 persoane unde ma consideram cel mai slab din echipa. Si intrebarea mea e, dintre cei care sunt angajati ca programatori in Romania (indiferent daca au sau nu diploma in domeniu), ce procentaj credeti ca stiu elementele de baza a programarii. Cat sa nu faca greseli elementare de logica, sa nu puna magic numbers in cod, sa stie ca in principiu o functie trebuie sa faca un singur lucru, sa inteleaga ce-i aia polimorfism, ce-i aia un pointer daca lucreaza in C/C++ etc Nu chestii avansate, nu genii. Doar fara huge WTFs. Programarea nu inseamna sa stii mii de limbaje de programare, sa le inveti pederost, sau sa stii C++ , C# perfect. Programarea inseama sa stii sa rezolvi problema incepand de la limbajul pseudocod. Abia dupa ce ai toate etapele necesare poti implementa condul in orice limbaj de programare in functie de necesitati. Trebuie sa alegi limbajul de programare diferit pentru fiecare situatie. Fiecare limbaj de programare fie interpretat fie compilat a fost gandit sa fie util doar pentru anumite situatii. Nu incerca sa retii pederost tot ce prinzi, exista documentatie pentru fiecare limbaj de programare. Din proprie experienta nu exista nici programator prost nici programator bun, si nici unul nu e mai presus decat celalat. Cine incearca sa te injoseasca spunandu-ti ca esti un programator prost greseste. Si el la randul lui nu stie anumite lucruri pe care poate tu le stii, si el la randul lui stie anumite lucruri pe care tu nu le stii. Edited by adiatric, 03 July 2018 - 21:38. |
#10
Posted 03 July 2018 - 21:38
WinstonMontana, on 03 iulie 2018 - 21:19, said:
atunci cand faci cod review sau te uiti pe un cod mai vechi( de cativa ani) dupa 6 ore de munca a citi o conditie care incepe cu negatie este mult mai greoaie decat a citii conditia directa.In plus, in peste 90 % din cazuri , creierul sare automat peste ! si din oboseala citesti conditia taman inversa inversului conditiei. Quote Sa denumesti variabile locale tmp/temp nu e o greseala, de fapt e chiar foarte bine daca asta e rolul variabilei(de a tine temporar o valoare - de ex. la un swap sau ceva de genul). Edited by Shinji, 03 July 2018 - 21:38. |
|
#11
Posted 03 July 2018 - 21:44
Diferenta de superioritate a dus la ceea ce se observa pe piata.
Poate nu se observa pe piata, dar incepe sa se revina la vechiul stil de progamare in C, C++, Java, probabil va intrebati de ce. |
#12
Posted 03 July 2018 - 21:44
Shinji, on 03 iulie 2018 - 21:38, said:
E desigur de preferat sa nu ai o conditie care incepe cu negatie. Dar de aici si pana la face un if doar pentru ramura de else e cale lunga. Quote
Si sper ca nu vorbesti serios cand spui ca in 90% din cazuri o sa ratezi negatia cand esti obosit. Raspunde la intrebare te rog: exemplu de polimorfism din lumea reala . Edited by WinstonMontana, 03 July 2018 - 21:46. |
#13
Posted 03 July 2018 - 21:46
UlrichVans, on 03 iulie 2018 - 21:20, said:
Sunt chestii pe care le inveti daca studiezi serios individual din carti bune(ceea nu foarte multi fac). La facultate putin probabil sa auzi de magic numbers si altele de genul(probabil doar daca ai profesor si/sau colegi foarte buni). Sa denumesti variabile locale tmp/temp nu e o greseala, de fapt e chiar foarte bine daca asta e rolul variabilei(de a tine temporar o valoare - de ex. la un swap sau ceva de genul). Nu mai zic cat timp se economiseste , fara prea multe greseli. |
#14
Posted 03 July 2018 - 21:46
#15
Posted 03 July 2018 - 21:47
Felicitari... ai aflat ca programatorii romani sunt asa iubiti in Vest pentru ca sunt ieftini, vorbesc engleza inteligibil si sunt relativ aproape (comparat cu China sau India) . Dar nu pentru ca sunt buni.
Apuca-te sa tii interviuri si o sa ai un soc (eu am crezut mereu ca sunt un programator slab pana cand am tinut cateva interviuri... am prins curaj). General vorbind insa, e o problema care tine de industrie... nu de Romania... termene prea stranse, code reviews prea lejere sau prea rapide, cerere prea mare de oameni si prea putin timp sa faci cod lizibil si usor de modificat in timp. Plus ca undeva la 50% din programatori sunt autodidacti si de aici o gramada de carente. |
|
#18
Posted 03 July 2018 - 21:59
StefanSC, on 03 iulie 2018 - 21:47, said:
General vorbind insa, e o problema care tine de industrie... nu de Romania... termene prea stranse, code reviews prea lejere sau prea rapide, cerere prea mare de oameni si prea putin timp sa faci cod lizibil si usor de modificat in timp. |
Anunturi
▶ 0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users