Na kontaktoni: +383 45 654 254 | info@devsize.com
 

Dëshironi të kodoni? Diploma e Universitetit Mund të jetë një Humbje e Madhe Kohe

Shumë njerëz mendojnë që ju duhet një diplomë e universitetit për të gjetur vende pune si inxhinierë të softuerit.
Para ca ditësh unë kam publikuar një postim të quajtur “Learn to Code: 13 Tips that Could Save You Years of Effort”. Këshilla #1 ishte “Harroni programet e universiteteve.”
Ja këshilla e plotë:
Harroni programet e universiteteve. Përveq nëse është nga Stanford-i apo MIT, diploma juaj do të vlejë shumë më pak sesa të pasurit e ca aplikacioneve për tu lavdëruar. Në fakt, shumica e programeve të universiteteve kanë vështirësi të jenë në hap me teknologjinë e cila po ndryshon. Një diplomë do ju japë disa mijëra dollarë më shumë për 1-3 vitet e para. Pas asaj nuk bën ndonjë diferencë. Veç nëse dëshironi të humbisni kohë dhe para…
Unë kam folur shumë për këtë, por nuk kam shkruar kurrë një artikull të detajuar, me të dhëna të mbështetura në realitet në lidhje me këtë temë. Nëse do të bëj një pretendim të fuqishëm si ky, atëherë më duhet ta mbështes.
Ja realiteti. (Të dhëna nga një anketë e 56,033 koderëve 2016 Stack Overflow survey)

  • Mentorship programet kanë një lidhje më të fortë reciproke me paga më të mëdha sesa një diplomë universiteti
  • Diferenca ndërmjet atyre me diploma masteri dhe të diplomuarve nga bootcamps është më e vogël se 1%
  • 69% e zhvilluesve të softuerit që punojnë janë autodidakt
  • 43% citojnë trajnimet në punë si burimin kryesor të mësimit
  • 25% kanë përdorur kurse online
  • Vetëm 19% kanë diplomë masteri në fushën e Shkencave Kompjuterike
  • Vetëm 8.5% kanë B.A në Shkenca Kompjuterike
  • 5% kanë diplomuar nga një Bootcamp (ky numër po rritet shpejtë)

Kur bëhet fjalë për vendet e punës për inxhinierë të softuerit, ose “eksperiencës ekuivalente” kjo shfaqet apo nënkuptohet thuajse 96% të kohës. (Rreth 4% e vendeve të punës si zhvillues kërkojnë punë me matematikë dhe shkencë të avancuar).
Pas 3 vitesh në atë punë, dhe me një performancë të mirë të regjistruar për krijimin e produkteve të mira, askush nuk dëshiron ta dijë nëse ke shkuar në shkollë, dhe për atë arsye, diferenca e pagës zhduket përderisa ju të fitoni më shumë eksperiencë.
Një diplomë do ju japë disa mijëra dollarë më shumë në vit por vetëm për 3 vitet e para. Pas asaj, nuk bën ndonjë diferencë.
Diploma Nuk do të Hapë më Shumë Dyer sesa Opsionet tjera më të Shpejta dhe më të Lira
Gjëja e vetme që punëdhënësit duan të dijnë për edukimin tuaj është nëse dini të kodoni apo jo. Të gjitha dëshmitë për të do të konsiderohen (përfshirë diplomën nëse jeni junior), por punëdhënësit kanë një preferencë të madhe për dëshmi të aftësive në kode reale jo në copa letre.
          Mënyra më e mirë për të mësuar kodimin është të kodojmë. Mënyra më e mirë për ta dëshmuar që mund të kodoni është     të kodoni.
Diplomat ju japin një Bazë të mirë në Shkenca Kompjuterike në Teori
Po, shkencat kompjuterike në universitet ju japin një bazë të fortë të algoritmeve, strukturave të të dhënave dhe parimeve themelore të shkencave kompjuterike.  Kjo është absolutisht e vërtetë, dhe mund të jetë shumë e vlefshme. Do të fitoni një bazë shumë më të fortë në teori.
Qelësi këtu është në teori.
Problemi është që, shumica e universiteteve nuk ndihmojnë shumë në inxhinerinë softuerike aktuale. Inxhinieria është për aplikacione, jo teori.
Shumica e universiteteve ligjërojnë një shumëllojshmëri të algoritmeve të njohura të parashikuara, shumica e të cilave nuk përdoren në gjuhët moderne programuese sepse janë ndërtuar alternativa tjera më të mira në këto gjuhë apo librari standarde.
Ajo çka studentët kanë vërtetë nevojë të mësojnë është se si të zgjidhin probleme me kokën e tyre, sesa të mësojnë zgjidhje nga libra edicionet e para të të cilave janë shkruar para 30 viteve kur aplikacionet ishin shumë, shumë ndryshe prej ditëve të sotme.
Kur konsiderojmë të vërtetën, strukturat e të dhënave dhe algoritmet janë në të vërtetë për të gjetur një zgjidhje që funksionon në mënyrë efektive.
Edukimi i lartë dhe Algoritmet e Sortimit (Klasifikimit)

Lëndët hyrëse në Shkenca Kompjuterike janë të obsesionuara me ligjërimin e algoritmeve për sortim. Me shumë gjasa do të kaloni një pjesë të mirë të semestrit me ato. A është kjo çka ju duhet të dini, 6 algoritme të ndryshme të sortimit për të zgjedhur më të mirin? Jo. Absolutisht jo. Kjo për shkak sepse ka algortime të ndryshme të sortimit me karakteristika të ndryshme të performancës, që e bën interesant studimin në profilizim të performancës, dhe një mënyrë të mirë për të mësuar për Big O Notation – e cila është një mënyrë për të kuptuar karakteristikat e përformancës së një algoritmi.
Problemi është që, përderisa Big O Notation është i përdorshëm, ju mund ta përmbledhni me pak intuitë të thjeshtë: Më shumë punë = performancë më e keqe.

  • Iterimi dhe operimi në lista të mëdha ëshë i ngadalshëm
  • Rritja e numrit të iteracioneve do ti ngadalësojë gjërat
  • Shumëzimi i numrit të iteracioneve do të ngadalësojë gjërat shumë
  • Shumëzimi i iteracioneve për nga madhësia do ti bëjë gjërat të zvarriten

Ja ku është disavantazhi “i fshehur”: përveq nëse jeni duke folur për koleksione shumë të mëdha, ose algoritme shumë të këqija, ti mësosh studentët që rrjeti, disku dhe renderi janë të shtrenjta është më mirë sesa tu mësosh atyre 6 lloje të ndryshme të algoritmeve të sortimit që janë më të ngadalshëm sesa sortimi ‘Array.prototype.sort()’ që është built-in.
E di që është e vlefshme të studiojmë algoritmet ekzistuese dhe ti krahasojmë ato, po në të vërtetë… kjo është qesharake.

Po, ata po ligjërojnë mësime të ndryshme me të gjitha ato algoritme të sortimit dhe me strategji të ndryshme të strukturave të të dhënave, por kur studentët i mësojnë të gjitha këto dhe më në fund arrijnë tek algoritmi i besueshëm quick sort, ata nuk kanë më vëmendje. Ata humbasin thelbin, dhe mbesin duke pyetur veten:
“Nëse quick sort është shumë më i shpejtë sesa sortimet merge dhe heap, pse atëherë ne kemi mësuar për merge dhe heap?”
Dhe kjo është plotësisht një pyetje e pranueshme.
Bota e Vërtetë

Ndërkohë në botën e vërtetë, del që asnjë nga ato zgjedhje të algoritmeve nuk do ti afrohet ndikimit të performancës si ruajtja e rrjetës apo qasjes në disqe, lazy evalutions apo streams.
Dhe kur arrini tek shkalla e web-it dhe mbërrini madhësi të koleksione ku efiçienca e algoritmit është shumë e rëndësishme, rrjeta, qasja në disk dhe streaming pengojnë analizimin e performancës së zgjidhjeve tona – dhe fizibilitetin e çfarëdo algoritmi që në rend të parë varet në memorien e përbashkët apo shared.
Kur bëhet fjalë për aplikacione reale, asgjë nuk është e prerë dhe e thatë ashtu siç e përshkruan teoria.
Duke u koncentruar në teori në dëm të koncentrimit në aplikacione, studentët fitojnë një ide të deformuar të profileve të performancës që nuk merr në konsideratë realitetin e kompjuterikës moderne. Studentët mësojnë të obsesionohen me karakteristika të performancës së gjërave që nuk bëjnë ndonjë diferencë tek performanca e aplikacioneve reale.
Lajmi i mirë është që, ju mund ti kapërceni disa nga gjepurat më pak të vlefshme nga lëndët e Shkencave Kompjuterike dhe të mësoni për concurrency, streams, punën me kllasterë të makinave dhe për lazy evaluation në vend të implementimit të ndonjë libri tjetër, që nuk është praktik, algoritme sortimi për shared-memory që tanimë janë implementuar me miliona herë, dhe janë optimizuar për arkitekturë të makinave të viteve të 80-ta që tanimë janë vjetëruar.
A nuk duhet të dijmë shumë struktura të të dhënave dhe algoritme?
Universitetet i duan algoritmet e sortimit. Problemi është që, ekziston vetëm një algoritëm i sortimit për të cilin ju duhet të dini çfarëdo gjëje për të: atë që është ndërtuar në gjuhën tuaj apo librarinë standarde, dhe ajo që duhet në të vërtetë të dini për të është API.
Sortimet më të shpejta për sisteme që bazohen në memorien kryesore, sortimet e rasteve te përgjithshme janë të ndërtuara në gjuhët dhe libraritë standarde, dhe kushte tjera janë shumë më të rëndësishme për performancë në pothuajse të gjitha aplikacionet (rrjetë, qasje në disk, lazy vs eager evaluation, etj…).
Mua më është dashur të përdor një algoritëm alternativ të sortimit njëherë në 20 vitet e fundit. Shanset janë që ju nuk do ta përdorni kurrë.
Për thuajse të gjitha rastet, unë do ti konsideroja njohurinë dhe konsideratën e vetëdijshme për shumë algoritme të sortimit si një hutim nga problemet e performancës së aplikacioneve në botën e vërtetë.
Pika kyqe kur bëhet fjalë për performancë është, profilizimi si fillim. Testoni dhe gjeni pjesët e aplikacionit tuaj që janë bottlenecks dhe koncentrohuni në rregullimin e tyre.
Optimizimi i parakohshëm është burimi i të gjitha të këqijave” ~ Donald Knuth
Lexoni një përmbledhje bazike të Big O Notation dhe kuptoni principet themelore.
Përderisa jeni duke punuar, zgjedhni algoritmin e parë që ju duket si zgjidhje e mirë dhe përdoreni atë. Rregulloni atë vetëm nëse e vërtetoni me teste që ka nevojë për rregullim.
Kjo mund të ju duket si e frikshme në fillim, por me praktikë, ju do të mund të zgjedhni algoritmet e duhura për punët e juaja në mënyrë automatike, pa kalkuluar në vetëdije Big O Notation. Në të njejtën mënyrë si ju hedhni një top pa pasur nevojë të përdorni një kalkulator për të bërë llogaritje për hedhjen.
Kështu funksionon programimi në botën e vërtetë. Një zhvillues i mirë rrallëherë ka nevojë të mendojë në mënyrë të ndërgjegjshme për të, po në atë mënyrë si një muzicient i mirë asnjëherë nuk mendon në mënyrë të ndërgjegjshme për notat – ata i ndjejnë ato dhe pastaj notat luajnë vetë.
Kur profilizoni dhe gjeni një pikë aktive që ka nevojë për tu marrë me të, mund të përdorni Google-n si ndihmë për të identifikuar alternativat e mira, dhe ju mund të bazoni zgjedhjet tuaja në arkitekturën aktuale të makinës së aplikakacionit tuaj real, në vend të këshillave të një autori të një libri nga fantazma e së kaluarës së Shkencave Kompjuterike.
Kurikula e universitetit është e optimizuar për një epokë para Google.
Programet Universitare të Paguara Janë një Vlerë e Tmerrshme
Një program universitar del të jetë një marrëveshje e keqe, si financiare ashtu edhe për nga vlera e kurikulës.
Motivimi primar për këtë përçartje është që në US, shkollimi mesatar universitar kushton $18,943 për një vit. Pas universitetit, studentët aterojnë në vende pune të nivelit të ulët të programimit, dhe fitojnë $10k më shumë se ata pa diplomë, por vetëm për tri vitet e para, që do të thotë se diploma e tyre ju vlen atyre $30k pas shpenzimit të $76k, që do të thotë kanë humbje netto të $46k. Këto janë vetëm mesatare.
Shumë universitete të US do të jenë të lumtur t’iu marrin qindra mijëra dollarë të cilat nuk do ti rifitoni përsëri në punët tuaja.
Padyshim, situata nuk është aq keq në shumë vende tjera ku edukimi universitar është falas.
Edhe ashtu, kurikula e mirë e Shkencave Kompjuterike universitare është një thesar i rrallë. Zhvilluesit e mirë të softuerit asnjëherë nuk ndalojnë së mësuari. Unë kam qenë duke vëzhguar dhe kam marrë pjesë në kurikula universitare nga shkollat më të mira në biznes (siç është MIT) që nga fillimi i programit OpenCourseWare .
Poashtu kam parë edhe shumë programe tjera universitare. E di se çfarë po ligjërojnë shkollat.
Realiteti i trishtuar është që shumica koncentrohen në teori të vjetëruara dhe jo praktike fillimisht në C/C++ ose Java. Ndoshta Lisp, si kuriozitet. Disa do të kenë hyrje të parëndësishme në Python apo JavaScript.
Mjerisht, dështimi për të ju njohur juve me një shumëllojshmëri të paradigmave të programimit siç janë programimi funksional dhe trashëgimia prototypal mund të ju mësojë zakone të dobëta si trashëgimia klasike dhe dizajni i dobët OO që mund të pengojnë shanset tuaja për ndërtim kualitativ të softuerit dhe për të gjetur një punë të mirë, në vend që të ju ndihmojnë.
Për këtë arsye, një diplomë në Shkenca Kompjuterike në të vërtetë mund të jetë një flamur i kuq. Unë kurrë nuk punësoj të sapo-diplomuar nga universiteti pa pasur mostra të mira të kodit dhe intervista të thella për tu siguruar që ata i kuptojnë disa parime themelore kryesore.
Lajmi i keq për studentët që tashmë kanë paguar shkollimin është që:

  • Shanset janë që, shkolla x e rastësishme nuk ka lëndë të atij kalibri në katallogun e lëndëve të tyre.
  • Është e vështirë të gjeni të gjitha lëndët e mira që ju do të donit ti ndjeknit në një universitet.
  • Ju mund ti ndjekni ato lëndë të mira falas online.

Vlera e Networking
Vlera reale e atij programi universitar të mbiçmuar është nga njerëzit që ju takoni – por kualiteti i mundësive për networking në programet universitare është e distribuuar shumë padrejtësisht. Nëse jeni në Stanford, ai networking do të jetë shumë i çmuar.
Nëse jeni në një universitet shtetëror të rastësishëm ose ndonjë universitet pa lidhjet me universitetet ivy-leage dhe ndërlidhjen direkte me inkubatorin e biznesit dhe ekosistemin e investimeve të Silicon Valley, ju mund të fitoni networking më të mirë për çmimin e $4 të një kafeje në qfarëdo lokali në San Francisko.
Nuk jeni të sigurtë ku të takoni njerëz? Provoni Meetup.com.
Çfarë duhet të bëni?

Përjashtimet
Nëse mund të gjeni një universitet vërtetë të mirë që kushton pak apo është pa pagesë, përfitoni nga ajo mundësi. Përçartja ime anti-universitare është kryesisht për universitetet në US që do të jenë të lumtur t’iu marrin qindra mijëra dollarë të cilat nuk do ti rifitoni përsëri në punët tuaja, e pastaj dështojnë për t’iu mësuar gjërat që keni vërtetë nevojë ti mësoni.
Hulumtimi Cutting Edge & Punët Shkencore Favorizojnë Diplomat
Janë disa specialitete ku diplomat me të vërtetë bëjnë ndryshimin, dhe paga është më e mirë se mesatarja. Ato pozita përfshijnë ~4% të të gjitha vendeve të punës si zhvillues, bazuar në StackOverflow.
Specialistët në mësimin e makinave, shkencat e të dhënave, shkencat biologjike dhe quantum computing kanë shumë gjasa të jenë shumë të arsimuar. Zhvilluesit e platformave të augmented reality do të kenë nevojë poashtu për matematikë të avancuar.
Absolutisht, ju mund ti mësoni këto gjëra online, por një diplomë do t’iu huazojë besueshmërinë shtesë që është e nevojshme për pozitat. Nëse keni pasion për një nga ato tema dhe e dini që doni të punoni aty, atëherë merrni diplomën.
Nëse nuk jeni sinqerisht të interesuar dhe pasionantë për fushën tuaj të studimit, dhe nuk posedoni zotësi të natyrshme për matematikë dhe shkencë, atëherë ju mund të humbni investimin tuaj.
            Jo të gjithë mund të luajnë në NBA.
Për fat të mirë, ju nuk keni nevojë për aq shumë trajnime për të krijuar applikacione mbi ato platforma pasi që të jenë ndërtuar, por nësi doni të jeni nismëtarë të Oculus Rift të ardhshme apo autopilotin Tesla, gjeni një universitet me performancën më të mirë të regjistruar të prodhimit të bizneseve të reja të ndërlidhura.
Ka shumë mënyra për të shumëzuar potencialin e përfitimeve tuaja mënjanë një diplome të një hulumtimi të avancuar, por do të keni nevojë për tjera lloje të aftësive, një brez sipërmarrësish apo pak fat të mirë.
The Bottom Line
Nëse dëshironi të ndërtoni Tesla-n e ardhshme, Oculus Rift, ose Al Go champion, dhe keni një zotësi të natyrshme për matematikë dhe shkencë, atëherë merrni diplomën.
Nëse doni të gjeni një punë të mrekullueshme për të krijuar aplikacione të mëdha me grumbullin e teknologjisë së fundit, atëherë nuk keni nevojë. Është një humbje e mdhe e kohës dhe parave.
Autor i artikullit: Eric Elliot

Devsize është projekt dhe platformë pasardhëse e smartcode, e cila synon të ofrojë programe me të zgjeruara, trajnime profesionale në fusha të ndryshme në klasë dhe online. Trajnime për staf, në zyrë dhe lokacione tjera jasht pikës qendrore në Prishtinë, me orar dhe kohë të përshtatur sipas nevojave të studentëve.

Devsize ofron trajnime profesionale duke aplikuar teknologjitë e fundit, në një ambient të përshtatshëm për mësim të pajisur me infrastrukturë të nevojshme.

Që nga viti 2010 me mijëra student të trajnuar, shumë projekte dhe programe edukative.

Studentëve tanë edhe pas përfundimit të trajnimit u ofrojmë përkrahje për avansimin e mëtutjeshëm të karrierës së tyre.

Nëse keni ndonjë pyetje, mos ngurroni të na kontaktoni. Ne do t’i përgjigjemi të gjitha pyetjeve tuaja sa më shpejt që të jetë e mundur.
  • St. Ilaz Kodra SU6/9 L-A-000 1, Pristina 10000
  • info@devsize.com
  • +377 45 654 254
top
DEVSIZE © All rights reserved.

Setup Menus in Admin Panel