Den virkelige grund til at lære MEAN Stack: Beskæftigelsesegnethed

Flere kodende bootcamps (som Hack Reactor) og online kursusplatforme (som Khan Academy) skifter til JavaScript som deres undervisningssprog.

JavaScript giver mening som førstesprog, fordi du bliver nødt til at lære det alligevel. Du kan ikke gøre meget på nettet uden det, så folk går i stigende grad direkte til JavaScript og springer over Ruby, Python og PHP. JavaScript kan også prale af det mest aktive udviklerfællesskab. Men der er en tredje grund til, at du bør lære JavaScript lige ud af porten: beskæftigelsesegnethed.

Arbejdsgivere sulter ikke kun efter JavaScript-talent - de sulter efter ingeniører, der kender specifikke JavaScript-baserede teknologier. Og disse teknologier er tilfældigvis dem, der komponerer MEAN Stack - MongoDB, Express.js, Angular.js og Node.js.

Før vi kommer i gang, skal du bemærke, at disse data kommer fra Indeed.com, den største samler af jobannoncer. Vi bruger mængden af ​​jobannoncer som en proxy for mængden af ​​job. Vi fokuserede kun på ikke-proprietære løsninger som Oracle, Microsoft og IBM.

Sammenligning af Model-View-Controller Web Development Frameworks

  • Node.js og Express.js - webserveren og bare-bone webudviklingsrammer, der driver MEAN-stakken. Node.js blev frigivet for mindre end 5 år siden, men det er allerede blevet vedtaget af LinkedIn, Walmart, SAP og Microsoft.
  • Rails - den populære Ruby-baserede webudviklingsramme designet til at hjælpe udviklere med hurtigt at opbygge konventionelle servertunge apps. Et stort flertal af kodende bootcamps fokuserer stadig på Rails. Sjov kendsgerning: Rails blev opfundet af en dansk racerbilchauffør.
  • Django - Pythons mest populære ramme om webudvikling. En anden sjov kendsgerning: Django blev opfundet på en avis i Kansas.
  • Laravel - I øjeblikket er den mest populære PHP-webudviklingsramme, selvom PHP-samfundet ikke rigtig er kommet bag en ramme så universelt som Ruby- og Python-samfundene har.

Som du kan se, er Node.js den klare vinder med hensyn til jobvækst. Og i absolutte tal indhenter Node.js hurtigt Ruby on Rails:

Sammenligning af NoSQL-databaser

Den næste stakkomponent, vi ser på, er databasen. Lad os først sammenligne de mest populære NoSQL (ikke-relationelle) databaser.

  • MongoDB - Den Document Store-database, som MEAN-stakken bruger. Mongo er også populær blandt Rails-apps og er standarddatabasen til Meteor.js-projektet.
  • Cassandra - En bred søjledatabase oprettet på Facebook og senere åben fra Apache.
  • Neo4j - Den mest populære grafdatabase.
  • Couchbase - En anden dokumentbutikdatabase, bygget til at understrege hastighed.

Arbejdsgivernes efterspørgsel efter MongoDB vokser hurtigst blandt NoSQL-databaser. I absolutte tal vinder MongoDB også:

Men du spekulerer sandsynligvis på, hvordan dette sammenlignes med SQL-databaser. Lad os se:

MongoDB vokser mange gange hurtigere end de mest populære SQL-databaser. Men hvis vi ser på arbejdsmarkedet i absolutte tal, har det stadig en lang vej at gå:

Det er klart, at NoSQL-databaser stadig repræsenterer et relativt lille udsnit af det samlede marked for databasetalent. En almindelig fortolkning af navnet NoSQL er "ikke kun SQL", hvilket betyder, at NoSQL-databaser skal bruges som et kompliment til, snarere end en erstatning for, traditionelle SQL-databaser. Dette er en væsentlig grund til, at vi introducerer relationsdatabaser og SQL, inden vi introducerer MongoDB.

JavaScript-rammer til frontend JavaScript

Flere JavaScript-rammer med Model-View-Controller er opstået i de sidste tre år. Disse giver udviklere mulighed for at manipulere DOM-elementer på klientsiden. Disse giver mulighed for apps med en side, hvor browseren aldrig behøver at navigere til en ny side.

  • Angular.js - 'A' i MEAN Stack. Google (og i forlængelse heraf YouTube) har hældt masser af penge og ingeniørtalenter på at forbedre Angular.js.
  • React.js - Udviklet af Facebook med vægt på ydeevne.
  • EmberJS - Giver en MVC-struktur backend, mens du bruger konventionelle værktøjer som Handlebars.js og jQuery i frontenden.
  • Backbone.js - Den originale MVC JavaScript-ramme og stadig ret populær. Det har et stort samfund og god dokumentation, herunder et par kurser på Code School.

Som du kan se, vokser Angular.js hurtigt, mens Ember.js og Backbone.js ser ud til at have plateau. React.js er så nyt, at det ikke engang registreres i diagrammet, men jeg har hørt om nogle virksomheder, som Khan Academy, bruger det. Og i absolutte tal indhenter Angular.js hurtigt Backbone.js:

Men selvfølgelig forlader dette diagram den 800 pund gorilla i Front End JavaScript-verdenen, jQuery:

Bare for spark, lad os sammenligne den samlede procentdel af jobannoncer, der nævner "jQuery" med procentdelen af ​​jobannoncer, der nævner "JavaScript" i sig selv:

Utroligt nok får jQuery næsten halvdelen så mange omtaler som JavaScript.

Der er efter min mening 3 mulige forklaringer på dette:

  1. jQuery er så intuitivt at bruge, at mindre tekniske webdesignere fortsætter med at bruge det i stedet for at skifte til mere kraftfulde front-end-rammer som Angular.js. Disse webdesignere har mange ældre applikationer, der bruger jQuery, og ansætter folk til at vedligeholde dem.
  2. Ikke-tekniske HR-folk, der skaber jobannoncer, mener, at jQuery og JavaScript er synonyme, eller at jQuery (udgivet i 2006) er en hipper-form for JavaScript (udgivet næsten 20 år siden), så de noterer jQuery i stedet.
  3. Mange arbejdsgivere kræver ikke det tunge løft, som den forreste JavaScript-ramme med frontend giver. Eller mere sandsynligt undgår de at forstå, hvor stærke disse rammer er, og hvordan de kan producere overlegne oplevelser.

Uanset årsagen kan være, er meddelelsen klar. For at maksimere din beskæftigelsesegnethed er det absolut nødvendigt, at du lærer jQuery, selvom disse andre rammer kan gøre alle de ting, som jQuery kan gøre og meget mere.

Meget af jQuerys succes kan sandsynligvis tilskrives dets brugervenlighed. I mange henseender er læring af jQuery endnu lettere end at lære JavaScript, og mange af de begreber, du vil anvende med jQuery, overføres, når du lærer en MVC-ramme som Angular. Så sammenfattende:

  • Hver af MEAN Stacks individuelle komponenter er ved at vinde vinderen i sin respektive kategori.
  • Fra et beskæftigelsesmæssigt synspunkt er det fornuftigt at fokusere på MEAN Stack som helhed. Hvis din arbejdsgiver vil bruge f.eks. Backbone.js i stedet for Angular.js, er du allerede fortrolig med den ene og kan let lære den anden.
  • MongoDB er den rigtige NoSQL-database at fokusere på, men det vil betale sig at blive fortrolig med relationsdatabaser og selve SQL.
  • Lær jQuery. Øv jQuery meget. Sæt det fremtrædende på din LinkedIn-profil og genoptag.

Oprindeligt offentliggjort på blog.freecodecamp.com den 26. oktober 2014.