Cosa ti frustra del futuro dell’ingegneria del software?

La mia preoccupazione è che ci siano enormi lacune nella gestione della qualità del codice. Se prendiamo macchine robotiche e strumenti intelligenti nell’assistenza sanitaria – solo due esempi – le vite sono nelle mani del software … e semplicemente non è pronto. Creazione di sistemi integrati affidabili: non è pronto.

La debacle con Volkswagen – costruire codici che imbrogliano – si tratta in realtà di non essere in grado di caratterizzare adeguatamente e indipendentemente il funzionamento del software. Oggi non possiamo, guardare un sistema software e sapere se è “sicuro”. Se sta seguendo i vincoli di progettazione. Se non presenta bug / difetti pericolosi. La Toyota ha avuto problemi. Le centrali nucleari hanno avuto problemi. L’attrezzatura medica ha avuto problemi. Anche il programma spaziale ha avuto problemi. Non sappiamo ancora come ridurre “prevedibili” sistemi software complessi.

Rimango ottimista a causa del movimento Open Source – e avendo migliaia di ingegneri consapevoli (e società responsabili) che costruiscono codice a beneficio di tutti. E tutti controllano il lavoro di tutti! Ma questo cela l’estremo pericolo dei brevetti software – penso che il copyright sia una protezione sufficiente – ma finché le aziende possono sollevare il sipario “proprietario”, non avremo mai la piena comprensione di ciò che la prossima generazione di sistemi software farà realmente. Semplicemente non mi sentirò mai a mio agio con un sistema software che non puoi controllare autonomamente il codice – e la mia vita è nelle sue mani.

Penso che ci vorrà un disastro davvero significativo, che coinvolge la vita umana, affinché le persone prendano sul serio la qualità del software. E questa è una previsione orribile – e non voglio accettare che sia “inevitabile” – e forse solo il prezzo del progresso. Per ora, proverò ad assicurarmi che non sia nessuno dei miei codici o architetture! 😉

Ciò che mi preoccupa è quanto l’informatica svalutata sia diventata a favore della “codifica”. Il mondo ha sicuramente bisogno di più programmatori, ma ha anche bisogno di più architetti del software. Molte università hanno modificato il loro programma per produrre laureati in grado di scrivere codice velocemente e contribuire ai requisiti di base di un datore di lavoro. Il numero di programmi incentrati su algoritmi, prestazioni, concetti e teoria si sta riducendo. Con l’ascesa della codifica di bootcamp e imparando a programmare programmi, vediamo un numero crescente di persone che sanno come risolvere determinati problemi con la forza bruta, ma non sanno quali problemi risolvere, come dare priorità ai problemi, raccogliere requisiti, selezionare strumenti , crea un nuovo metodo e così via .. Ho visto laureati delle accademie di codice prendere ciò che apprendono nei loro brevi corsi aggiungendo alcuni anni di esperienza e molta ambizione e creando un codice molto elegante, pulito e performante. In sostanza, si danno la laurea in informatica mentre lavorano. Ma questo non è sempre il caso. L’anno scorso ho parlato con un folto gruppo di sviluppatori e ho usato il termine Big O. Meno del 10% del pubblico sapeva di cosa stavo parlando. Questo mi riguarda.

È frustrante vedere quanta energia del computer viene sprecata a causa dell’ingegnerizzazione eccessiva e dell’uso di linguaggi per computer molto lenti e di molti strati di questo e quel framework. Inoltre, sono stati fatti pochi progressi reali verso lingue e strumenti davvero validi. Anche guardando il codice negli ultimi 45 anni, la qualità del codice è rimasta se qualcosa è rimasta uguale o è diminuita. La mia conclusione è che nessun linguaggio o strumento informatico è abbastanza potente da sopraffare la perdita di un programmatore davvero all’oscuro. Ci sono programmatori davvero eccellenti, ma direi che l’80% è molto in là, secondo i miei calcoli.

Ciò che mi frustra del futuro dell’ingegneria del software è l’hype associato alle tecnologie nuove e non testate.

Sembra che ogni mese ci sia un intero gruppo di nuovi linguaggi o strumenti e mentre è un piacere giocarci intorno, c’è una terrificante percentuale di persone semi-tecnologiche che prendono decisioni sull’architettura basate sull’hype di marketing.

So che non è una nuova frustrazione per la maggior parte. Lascia le decisioni tecnologiche ai ragazzi della tecnologia.

More Interesting

Quali sono le competenze di base necessarie prima di laurearsi in economia? Inoltre, è consigliabile per uno studente di ingegneria elettrica rinunciare al suo attuale campo di studio e assumere qualcosa di completamente diverso (economia)?

Devi andare a scuola per essere considerato un ingegnere?

Cosa dovrebbe fare uno studente di elettronica e comunicazione del Jaypee Institute of Information Technology dopo il 4 ° semestre delle vacanze estive?

È importante per uno studente di ingegneria universitario CSE fare solo uno stage tecnico e non non tecnico?

Se decido di prendermi qualche anno libero dall'ingegneria per perseguire altri interessi, come risponderanno le aziende se cercherò di ottenere un altro lavoro in seguito?

Mio fratello ha terminato il Diploma in ECE. Quali sono le aree che hanno la migliore portata nell'ECE?

Gli ingegneri stanno crescendo enormemente di giorno in giorno. Come ingegnere civile BTech, cosa devo fare e come posso ottenere?

Di cosa dovrebbero parlare gli studenti di ingegneria meccanica?

Quali sono le opzioni di carriera per uno studente ECE di un normale college di ingegneria?

Quale è più utile per una carriera nella robotica: ingegneria meccanica o elettrica?

Perché la maggior parte degli studenti di ingegneria che sono frustrati per il loro futuro in India studenti universitari privati?

Sono un ingegnere civile che lavora per una società di software in quanto non ho trovato lavoro in nessuna società di costruzioni. Ora non mi piace affatto questo lavoro perché mi vengono dati progetti di supporto e devo lavorare a turni. Come più fresco c'è un modo in cui posso tornare di nuovo civile?

Quale settore dell'ingegneria ha la portata più elevata per le donne?

Come laureato in ingegneria civile presso la NIT, in quale settore o in quale azienda dovrei lavorare per avere buone probabilità di essere selezionato presso HBS o Stanford, considerando che il mio punteggio GMAT è 768 e ho un CGPA 8.2 in ingegneria?

Mi piacerà l'ingegneria se mi trasferirò negli Stati Uniti / Canada / Germania per l'ingegneria?