Curiosità

di il
3 risposte

Curiosità

Salve,essendo un ragazzo di 16 anni mi stavo chiedendo ma precisamente con il perito di informatico che lavoro si puo fare in
particolare o che fate voi(ps.studio informatica ),e giusto una mia curiosita mi piacerebbe saperlo(ovviamente so che si tratta di programmazione ma mi piacerebbe sapere che tipo e come o che linguaggio usate).

3 Risposte

  • Re: Curiosità

    Ni: la programmazione e' solo la parte meno importante del lavoro.

    La parte piu' importante e' la progettazione del software.

    Attenzione: per progettare il software, bisogna anche saper programmare.

    Ma, non basta.

    Bisogna:
    - conoscere come modellare un database
    - come fare della programmazione consorrente (piu' thread sullo stesso computer)
    - come realizzare applicazioni ditribuite (usare computer diverso)
    - come realizzare applicazioni fault tolerant (non si devono schiantare)
    - come generare il log per poter analizzare il comportamento di un'applicazione
    - come usare delle librerie di terze parti: non e' solo questione di libreria, ma di specifiche tecniche che la libreria e' preposta a implementare (se lavori in Java, tutto quello che e' Java EE, o il framework .NET se lavori in C#)
    - conoscere i protocolli di comunicazione, come minimo il TCP/IP e i protocolli correllati (HTTP, FTP, SMTP, POP3, ...)
    - saper integrare librerie scritte in linguaggi diversi (classico Java o Python o C# + C)
    - saper realizzare i test case
    - saper scrivere la documentazione (la documentazione SERVE!!!!)

    Ma questo SOLO per iniziare, l'elenco.
    Per fare COSE SEMPLICI ma a livello professionale, e' parecchio piu' lungo.

    Anche SOLO per fare applicazione Web (SOLO lato client), ti serve conoscere
    - HTML (4 e 5) + CSS
    - Javascript (varie versioni)
    - XML e JSON
    - XSLT
    - come realizzare siti responsivi
    - come realizzare siti che possono essere distribuiti su piu' nodi di un cluster
    - il protocollo HTTP
    - WebDav
    - come si realizza un interfaccia utente
    - concetti di interazione uomo/macchina
    - piu' tutte le idiosincrasie dei vari browser Internet sulle varie piattaforme (Android, iOS, Windows, Linux (varianti varie), OSX e browser, Safari, Firefox, Edge, Opera, Delphin, Brave, Vivaldi, Chrome, ed n-mila altri che devono essere supportati)

    Ed anche in questo caso, SOLO PER INIZIARE, perche' poi c'e' tutto il resto!

    Per fare cose complicate, come MINIMO ti serve un bel po' di statistica, poi tutto il resto!

    In pratica, servono ANNI DI STUDIO.

    Al contrario di quanto si pensi, la parte piu' importante NON E' la pratica, ma LE CONOSCENZE da metter in pratica.

    La pratica ti serve per acquisire l'esperienza che ti permette di fare la scelta tecnica a colpo sicuro perche' HAI GIA" FATTO PRATICA.

    La parte piu' complicata della teoria, infatti, e per la quale serve la pratica, e' capire quali sono i limiti della teoria: NON E' possibile saperlo solo in teoria (il gioco di parole ), ma bisogna sbatterci la testa.

    Ma non solo, con una SOLIDA base teorica, puoi fare scelte tecniche che il programmatore di basso profilo (ad esempio uno che esce con le sole superiori) non saprebbe mai fare.
    Non solo, ma puoi trovare soluzioni piu' intelligenti facendo un mix di tecnologie diverse

    Per i lingaggi, e' facile:

    Java, C#, C++, C, Python, R, Javascript, Swift, Objective C, Erlang, un po' di Haskell, PHP, qualcosa di Perl, ... ogni tanto Delphi.
    Ma anche del sano Assembler
  • Re: Curiosità

    Adesso... un pochino esagerato.
    Dipende dall'ambito lavorativo.
    Nel "mondo" desktop ...

    migliorabile ha scritto:


    - conoscere come modellare un database
    Non è detto, raro
    - come fare della programmazione consorrente (piu' thread sullo stesso computer)
    Non è detto, molto raro
    - come realizzare applicazioni ditribuite (usare computer diverso)
    Non è detto, molto raro
    - come realizzare applicazioni fault tolerant (non si devono schiantare)
    Rarissimo
    - come generare il log per poter analizzare il comportamento di un'applicazione
    Banale
    - come usare delle librerie di terze parti (...)
    Può anche essere banale
    - conoscere i protocolli di comunicazione...
    Non è detto, anche a livello minimo
    - saper integrare librerie scritte in linguaggi diversi (classico Java o Python o C# + C)
    Raro, rarissimo a seconda dei casi
    - saper realizzare i test case
    Non indispensabile
    - saper scrivere la documentazione (la documentazione SERVE!!!!)
    Non lo fa praticamente nessuno. Sarebbe cosa buona e giusta, ma semplicemente non accade
    Anche SOLO per fare applicazione Web (SOLO lato client), ti serve conoscere
    - HTML (4 e 5) + CSS
    Banali
    - Javascript (varie versioni)
    Livello basso (senza fare numeri circensi)
    - XML e JSON
    Banali / pressochè inutili a seconda dei casi
    - XSLT
    Raro
    - come realizzare siti responsivi
    Ormai banale, basta "copiare" uno dei miliardi di esempi già fatti
    - come realizzare siti che possono essere distribuiti su piu' nodi di un cluster
    Rarissimo
    - il protocollo HTTP
    Banale per il livello medio del webcoso
    - WebDav
    Rarissimo
    - come si realizza un interfaccia utente
    Come detto essenzialmente a livello iniziale si "copia"
    - concetti di interazione uomo/macchina
    Rarissimo
    - piu' tutte le idiosincrasie dei vari browser Internet sulle varie piattaforme...
    Dipende dai casi. In certi si usa il sottoinsieme minimo, in altri, semplicemente, si certifica Internet Explorer e buona notte
    Per fare cose complicate, come MINIMO ti serve un bel po' di statistica
    Rarissimo
    La parte piu' complicata della teoria, infatti, e per la quale serve la pratica, e' capire quali sono i limiti della teoria: NON E' possibile saperlo solo in teoria (il gioco di parole ), ma bisogna sbatterci la testa.
    Raro
    Ma non solo, con una SOLIDA base teorica, puoi fare scelte tecniche che il programmatore di basso profilo (ad esempio uno che esce con le sole superiori) non saprebbe mai fare.
    Raro
    Non solo, ma puoi trovare soluzioni piu' intelligenti facendo un mix di tecnologie diverse
    Rarissimo oggi, basta che grosso modo funzioni, il resto è "mancia"
    C, C++, PHP, Javascript, Java
    Indispensabili
    C#, Python,
    Assai utili
    R, Swift, Objective C, Erlang, un po' di Haskell, , qualcosa di Perl, ... ogni tanto Delphi.
    Ma anche del sano Assembler
    Rarissimi

    Suggerisco di tener presente che tra "superman" (... me ... ) e un webcoso ventenne le competenze necessarie variano enormemente.
    Così come c'è il portantino e il primario di neurochirurgia, non è che ogni operatore sanitario deve essere al livello del secondo.

    Se lavori in una microsoftware house (la stragrande maggioranza di quelle italiane) non ti servirà la "scienza missilistica"
  • Re: Curiosità

    +m2+ ha scritto:


    Adesso... un pochino esagerato.

    Suggerisco di tener presente che tra "superman" (... me ... ) e un webcoso ventenne le competenze necessarie variano enormemente.
    Così come c'è il portantino e il primario di neurochirurgia, non è che ogni operatore sanitario deve essere al livello del secondo.

    Se lavori in una microsoftware house (la stragrande maggioranza di quelle italiane) non ti servirà la "scienza missilistica"
    I tuoi interventi M2 mi fanno sempre un sacco ridere (in senso buono intendo, sano umorismo)

    Randalf
    l'amico del portantino
Devi accedere o registrarti per scrivere nel forum
3 risposte