Do Not Learn Frameworks. Learn the Architecture

Senzatia ta e gresita.

Eu nu sustin nefolosirea framework-urilor, ci izolarea codului care aduce valoare de business de orice framework.

Un al lucru de bun simt pe care il mai sustin e ca programatorii [pune framework aici] tind sa fie programatori mediocri. Eu nu am intalnit programator bun, cu peste 10 ani de experienta in spate, care sa se limiteze la “a se vinde” ca “programator [framework]”. Am vazut in schimb o droaie de novici care se bat in piept “eu sunt programator zf2/cake/wordpress/joomla/whatever-bullshit-you-want”.

Pentru ca n-ai sa vezi un mecanic de avioane militare cum isi pune anunt pe site de joburi “eu stiu sa repar avioane, deci va repar cu placere balamalele din casa”. Orice om cu capul pe umeri va incerca sa se vanda la potentialul lui maxim. Altfel se numeste ratat.

1 Like

Cod care aduce valoare de business? N-am mai auzit asa ceva.
Sper ca nu ajungem sa o dam iar in ezoterisme. Pana si companiile mari isi rescriu unele din produsele importante cu framework-uri si tehnologii noi.

Sincer, eu raman tampit de ficare data cand vad pe unii vorbind cu atata convingere si dand in halul asta atat de usor calificative altora.
Eu am peste 10 ani de experienta, si mi se pare foarte important sa cunosc, sa capat experienta si sa trec in CV despre un framework popular si care s-a dovedit a fi bun pentru sute de companii mari.
Nu conteaza cate micro framework-uri proprii imi fac eu sau la ce visez in timpul liber.
Sigur, pot avea preferinte, pot avea pareri, dar asta e altceva.

Te rugasem sa dai un exemplu concret cand te referi la vendor lock-in. Propun sa vorbim pe exemple, decat pe acronime sau fraze scurte din engleza gen “vendor lock in”.

Atunci nu e de mirare ca nu intelegi ce zic.

Nu stiu de ce ai impresia ca eu nu mi-as pune cunostintele in CV. Nu e vorba de ce pui in CV, ci de cat de mult te identifici cu un framework.

Eu, dupa peste 10 ani in industrie, nu ma identific cu un framework anume, sau cu un limbaj anume. Iti mananc orice framework pe paine, si nu consider acest lucru demn de lauda sau mai stiu eu ce.

Prefer sa mi se spuna simplu “programator”, si tot programator ma voi numi si cand duiumul ala de framework-uri care sunt acum pe val vor fi murind.

1 Like

Vorbesc din statistica.

1 Like

LOL. Don’t let the dark force get ya

Care statistica, facuta de cine?

Asta fiindca:

  1. acele produse ori sunt gandite a fi refacute in 2-3 ani (de la 0, daca au succes), ori se crede ca vor muri in 2-3 ani, ori nu le pasa ce se intampla in timp cu produsele respective *
  2. Sunt facute de “programatori mediocrii” (as described above)
  3. Nu reprezinta business-value-ul principal
  • Daca prin firme mari te referi la startup-uri, este de inteles… fiindca este mai important profitul acum, decat peste X ani, uneori fiind si cauza care le aduce sfarsitul. (Alte ori, sfarsitul vine din cauza buziness-ului si nu al codului.)

Aha, deci contextul e important, nu? Deci nu putem generaliza?

Apropo, nu ma refer la start-up-uri. Ma refer la Gmail, Facebook, Microsoft :slight_smile:

2 Likes

[quote=“kilogrammer, post:54, topic:1341”]
Microsoft
[/quote]Microsoft, cel putin, stiu ca au studenti interni care lucreaza la produse timp de cateva luni, iar daca produsul ia avant, este continuat, altfel nu.

Ca un exemplu, sistemul care face build la distributii de linux (nu ii stiu numele), a fost facut de interni, iar din pricina avantului pe care l-a luat a ajuns sa fie folosit la scara larga.

Nu știu cat de sănătos la cap trebuie sa fii ca sa rescrii un framework de fiecare data când începi o aplicație.

Cred ca trebuie sa citesti cu mai multa atentie ce am scris si in alte postari.

1 Like

Pai nu vrei sa folosești un framework. Deci ai tu propria ta arhitectura și componente la fiecare aplicație. Ceea ce e incredibil de neproductiv.

Sau refolosesti codul tău de la o aplicație de dinainte. Ceea ce înseamnă că tot folosești un framework, ala al tău.

"Eu nu am intalnit programator bun, cu peste 10 ani de experienta in spate, care sa se limiteze la “a se vinde” ca “programator [framework]”

Eh, eu am văzut. Dacă te specializezi într-o tehnologie, poți cere mult mai multi bani.

In any discussion reacting in a reflexive way won’t bring up the truths. Good replies are reflective and that distinction is the most important thing whilst being orthogonal to one’s actual views.

ca sa citez din HN guidelines unde poti primii ban indefinit pentru asa ceva.

1 Like

Cred ca o abordare mai “politically corect” ar fi “Un framework de genul faciliteaza programatorii mediocrii, nu pe cei sanatosi la cap.” …

[quote=“Vilmos_Ioo, post:58, topic:1341”]
Deci ai tu propria ta arhitectura și componente la fiecare aplicație.
[/quote]Adica librarii? Pe care le poti modifica mult mai usor decat framework-urile, pentru ca sunt mult mai mici/simple si nu sunt inter-conectate, by default. Daca vrei tu sa le interconectezi (a se citi: este necesar), poti face asta, dar ele vin detasate, by default.

Eu ce-am vazut (nu prea mult) ca sare in faca este “programator specialist / specializat pe [framework]”. Dar poate nu m-am uitat unde trebuie… nu am atata experienta ca restul…

Nu librarii. O arhitectura. Adică scopul unui framework. Nu vorbesc de librarii.

1 Like

Adica te referi la next-to-hardware programming? (Gen ai un Raspbery PI si vrei sa faci o drona, iar problema se pune cum folosesti arhitectura Raspbery PI pentru asta?) Sau la ce anume te referi cand spui “O arhitectura”?

jQuery e librărie. Codul care îl scrii tu când folosești librăria aia, gen $(’#a’).click(…), e un framework (custom sau nu). Framework-ul te face sa scrii într-un anumit fel, în anumite fișiere, având guideline-uri și abstractizari.

O librărie te ajuta sa faci click handlers. Un framework te ajuta sa faci componente modulare, reutilizabile și testabile care răspund la click. Și nu e necesar ca un framework sa te ajuta sa faci click, uneori e chiar necesar sa mai adaugi librarii.

Și librăriile de obicei sunt funcționale. Framework urile nu.

IMO.

1 Like

Domnilor, haideți să ne limităm în a folosi categorisiri ușor tendențioase de genul „(ne)sănătoși la cap”, „mediocri” etc și să încercăm să ne păstrăm calmul atunci când răspundem.

Mulțumesc! :beers:

2 Likes

2 posts were split to a new topic: Ce diferențiază un framework de o aplicație?

Related: Why you should focus on fundamentals first with Chris Lee.

http://ec.libsyn.com/p/c/0/a/c0a2e3fd4e0cb572/S1E3-Why_you_should_focus_on_fundamentals_first.mp3?d13a76d516d9dec20c3d276ce028ed5089ab1ce3dae902ea1d06ce8030d5c954ec8a&c_id=11482589

Master things that don’t change, like the underlying technologies have been around for 20 years. When you understand the core principles, you can learn anything.