Quan vas a un bar amb un amic que treballa en IT, inevitablement acaba discutint els assumptes actuals de la indústria. : just a few general observations we both made besides the usual impostor syndrome that many software developers have, there's also a lot of anxiety about all the chatter around AI taking over jobs leaders and managers can’t help but get into conversations about how much of a performance boost (and when) to expect from developers, whether it’ll be x10, x40 or x200 at the same time, the push for AI adoption makes both tears and laughter everywhere you look, you can find many near-absurd product features that use AI only to justify that it is from an AI-first company drought and nervous foot tapping are common in the startup world, yet discussing them is often considered bad form hiring is becoming increasingly difficult for everyone, especially for people just starting out in their careers One of the biggest concerns about the impact of hype surrounding AI is that it could discourage new people from entering the software development industry. "Això ja no és un treball creatiu; aprendre a desenvolupar programari avui és una estafa per als ximples; el joc s'ha resolt" (aquest tipus de rumors). (this kind of rumors). "This is no longer creative work; learning software development today is a scam for fools; the game is solved" "Ara ja no és un treball creatiu; aprendre a desenvolupar programari és una estafa per als ximples; el joc s'ha resolt" Per mantenir avançada la indústria tecnològica, és essencial transferir el coneixement de com funcionen les coses i ajudar els nouvinguts a adquirir les habilitats que necessiten per mantenir tot funcionant sense problemes i avançar encara més la tecnologia ( en el seu discurs). Jonathan Blow va expressar bé aquesta idea No obstant això, per a mi, s'assembla al desenvolupament web d'al voltant de 2008 a 2014 en comptes del boom de PC dels anys 80 (una expansió, en lloc d'una categoria completament nova). En aquell moment, hi havia tones de maneres d'aconseguir els fonaments. Cada setmana, se sentia com si estiguéssim provant una nova manera de fer les coses. És similar a l'enginyeria d'IA actual, on una nova eina, model, enfocament, referència, marc o empresa emergeix setmanalment, afirmant que estan a punt de revolucionar tot. No és una ofensa, però per a mi, eines com És molt com el que Va ser per al desenvolupament web el 2010. Devin Programació Adobe Dreamweaver On estem ara El desenvolupament de programari ha estat al voltant durant més de 70 anys. Des de llavors, el món ha sofert nombrosos canvis. Anem a fer una ullada a una breu descripció de com ha evolucionat al llarg dels anys. Aquí teniu a de la imatge de dalt. Versió completa Com podeu veure, el nostre camp està evolucionant contínuament cap a una major abstracció i mètodes més automatitzats per gestionar la creixent complexitat.Cada nova època aporta noves idees que ens ajuden a gestionar els problemes anteriors, alhora que ens empeny més enllà en la hiperspecialització i els equips més petits, proporcionant-nos més maneres de recollir el feedback més ràpidament. What complexities are we facing in the 2020s (so far)? Supply chain security modern software development relies on numerous third-party components, with even simple applications often incorporating thousands of them, each posing a potential security risk that could compromise the entire application Observability data overload metrics, logs, and traces generate vast amounts of data daily, but pinpointing the root cause is becoming increasingly challenging because dashboards display everything yet explain nothing (debugging is still hard) Configuration management use of IaC, feature flags, env variables, and secrets has created massive configuration spaces that are hard to validate AI/ML integration complexity integrating AI components with traditional software is still quite challenging, as SOTA and toolchains change every two weeks, and approaches evolve even faster Replacing software developers with AI agents can't be a solution for any of today's complexities. : A few things to watch for AI tooling consolidation commoditization of AI workflow creation even better ways of distributing software changes in the way we build software that cultivate higher quality as consumer expectations rise due to software abundance Aposta pel desenvolupament de programari La generació de codi va ser un excel·lent cas inicial per als LLM, ja que tenia prou dades obertes per fer-ho funcionar i un enorme efecte wow que va fer que tothom parlés sobre això. No obstant això, hem de suposar que les capacitats dels LLM per generar codi només millorarà amb el temps ( a ser per abordar els seus problemes actuals (com ara i així successivament). Com sembla això La seva característica més forta Longitud ràpida que impacta en el rendiment The effect of AI on cutting costs might be tricky, as everyone has the same chances to optimize. What's most likely to happen is that AI will make the whole pie bigger. Què va passar quan la majoria de la gent va aprendre a llegir, escriure, imprimir, publicar, i finalment compartir el seu treball en línia amb tot el món? Què va passar quan la majoria de la gent va tenir la capacitat de disparar, editar, afegir filtres i efectes, i després publicar-lo per a tothom a veure (o comprar i veure més tard)? Una gran quantitat Però escolteu-me: els autors, els cineastes i els professors encara estan al voltant i en alta demanda (especialment els excel·lents). Coses salvatges Sembla que anem cap a una situació similar als primers dies de la Web, quan tothom va començar a crear llocs web per si mateixos. Això elevarà la barra per a empreses i particulars (com ho va fer amb llocs web i aplicacions web), portant nous diferenciadors, eines i enfocaments i introduint nous requisits per als desenvolupadors. En altres paraules, m’agraden les idees expressades amb bellesa en els articles recents: “ “I” » » El final de la programació tal com la coneixem IA i programació: l'inici d'una nova era So, what is next? Tindrem una plataforma "IKEA" que proporcioni un contenidor d'aplicacions amb totes les característiques bàsiques, permetent-li demanar a un assistent d'IA que desactivi les característiques que no necessita i afegir-hi les característiques que desitja, i després ajustar-la manualment? O la criptografia finalment proporcionarà una millor web per a tothom (potser fusionat feliçment amb els principis locals)? O serà un flux de treball d'IA amigable al nivell d'Excel per a tothom? Redissenyarem els serveis existents i crearem nous per satisfer les necessitats dels que semblen ser nous actors: la comunitat (o xarxa) i els agents d’IA? Si realment hem entrat en una nova fase de l'espiral de desenvolupament de programari, molt canviarà, i encara més emergirà. Una invitació En un entorn on afegir més codi és barat, un excel·lent desenvolupador de programari sembla més com un mag clàssic que un enginyer clàssic. Estan envoltats de llibres antics (Els grans blaus, els verds i els dracs, etc.), sempre porten un llibre de màgia amb ells (els seus patrons i principis arquitectònics preferits, les millors pràctiques), parlen un llenguatge estrany (abreviatures, acrònims, lexicons), dibuixen algunes il·lustracions esotèriques (diagrams), connecten alguns punts al paper (interfícies), i una vegada fet això, diuen "generar i córrer" (abracadabra). Els desenvolupadors d'avui tenen eines molt més avançades, i els nouvinguts seran una generació de desenvolupadors que poden aconseguir significativament més per si mateixos que totes les generacions anteriors de desenvolupadors. Però això encara s’ha d’entendre i aprendre a utilitzar. Some things can significantly enable you on this journey: When code is generated, it will eventually lack evident vulnerabilities and be validated against requirements using automated tests. Your job is to ensure that the code is maintainable (this makes it easier for both machines and humans to troubleshoot and extend the codebase). You need to understand, appreciate, and delve into the fundamentals of software architecture and the core principles of computer science. The best way to go is to study hard, build from scratch, and revise and exercise (regularly). a) b) c) The programming languages won't matter much, but mastering two languages - a dynamic, high-level one and a static, low-level one - will give you enough opportunities to practice all the essential concepts and broaden your perspective. Suposem que les coses no van bé per a la indústria. En aquest cas, sempre es pot trobar una feina en La nostra aposta Així mateix) o , ja que es basen molt en bases de codi escrites en el llenguatge de programació COBOL ( A banda de les bromes, mentre que la indústria tecnològica s'està movent increïblement ràpid, el ritme d'adopció de la tecnologia en altres indústries i els seus processos de contractació sovint semblen congelats en el temps (per exemple, Windows XP, Excel, Fortran, Perl). El govern dels EUA En molts Altres Llocs Molts bancs Llenguatge mort als anys 80 La gent també es resisteix al canvi.Aquí és on la manca d'experiència d'un nouvingut sovint funciona al seu benefici.Molta gent (sobretot amb edat) troba difícil: Superar patrons aprenents i reforçats de comportament i preconcepcions. Prendre riscos per renunciar a alguna cosa que va funcionar per a ells per provar alguna cosa nova. Dedicar una quantitat suficient de temps i energia per aprendre i practicar aquesta nova cosa de manera consistent. Heads-up per a novells Mentre que les analogies històriques poden ressonar amb la realitat contemporània, no podem enganyar-nos a nosaltres mateixos.La realitat és complexa i dinàmica, mentre que la història és estàtica i contextual. , i és segur dir que la generació de codi millorarà amb el temps. Many people will likely attempt to automate software development tasks Vostè ha de suposar que el mercat és volàtil, i pot ser més difícil de trobar una bona feina, o es pot perdre durant una altra onada de retallades de costos. És gairebé segur dir que Veure-ho com un mitjà per arribar a un fi, ja sigui en la ciència, en els negocis, en l’art, en el periodisme o en qualsevol altre lloc. software development shouldn't be your end goal Ser un nouvingut en la indústria del desenvolupament de programari avui en dia és tot sobre l'agència personal. Voleu escapar d'aquesta posició, així que comenceu a fer la vostra feina de nivell següent tan aviat com sigui possible. : The great way to prepare for it is to Aprendre conceptes avorrits però que permeten que tothom ignori perquè són avorrits Troba un amic o una comunitat que coincideixi amb el teu tipus d'energia i entusiasme Utilitzar les eines d’IA per aprendre i prototipitzar des del primer dia pràctica, pràctica i pràctica El que farà una gran diferència és el desig d'aprendre i entendre el negoci darrere dels productes que estàs construint (els seus clients, processos, problemes i oportunitats). aprendre a comunicar-se amb les persones, identificar les seves necessitats, omplir les bretxes en el context, prototipar una solució, refinar-la amb una arquitectura millorada i col·laborar amb la IA per construir-la. En algun moment (però no tingueu pressa), té sentit desenvolupar una especialització en una àrea específica. prestar atenció a les coses que us exciten (o la ira) i tractar d'anar més profundament en ells. Següent L’IA no aporta noves maneres de pensar i creativitat, sinó que exposa llocs on és necessari el pensament real i la creativitat, omplint fàcilment el buit amb simulacions d’això en altres àrees. El desenvolupament de programari no farà que tothom sigui feliç. Si teniu aquesta energia de constructor i un apetit seriós per explorar i aprendre, heu d'anar-hi! En tot cas, us desitjo tot el millor en el vostre viatge. P.S. Si t'ha agradat aquest post, si us plau . connecting with me on X or Linkedin X Linkedin