Software Development for Dummies

io ho usato:
  • Windows 95
  • Windows 98
  • Windows ME
  • Windows XP
  • Windows Vista
  • Windows 8
  • Windows 10
  • Ubuntu - Lubuntu
  • MacOS
In pratica ho saltato Windows 7 perché dopo Vista ho avuto una repulsione ai sistemi operativi Windows :ghigno

Potresti spiegarmi in base a cosa voi esperti giudichiate positivamente o negativamente un sistema operativo? Magari se hai tempo da perdere, li recensisci un po’ tutti......
 
io ho usato:
  • Windows 95
  • Windows 98
  • Windows ME
  • Windows XP
  • Windows Vista
  • Windows 8
  • Windows 10
  • Ubuntu - Lubuntu
  • MacOS
In pratica ho saltato Windows 7 perché dopo Vista ho avuto una repulsione ai sistemi operativi Windows :ghigno
Io ho usato:

- Windows ME
- Windows XP (Il mio preferito)
- Windows 7
- Windows 10 (Tutt'ora lo uso con Bootcamp)
- MacOS (Tutt'ora lo uso)

Ho avuto una parentesi con Windows Vista dove ti sgagazzava il sax con i controlli, ma a casa di mio zio e non nel mio ambiente domestico.
 
e' una domanda molto piu' profonda di quanto tu credi.
nel senso che ... chiunque scriva software, di qualunque tipo e uso, deve appoggiarsi su qualcosa esistente. banalmente:
- linguaggio (java, javascript, python, C, ...)
- librerie (cioe' mattoncini che citi)
- framework (cioe' mattoncini che citi)
- librerie personali (cioe' mattoncini che citi)
...

ora, imparare tecnologie sottostanti e' in generale un lavoro gigantico, perche' sono tutte estremamente sofisticate (aka migliaia di pagine di documentazione e mesi di prove per ognuna) quindi quando prendi decisioni devi bilanciare tra:
- tuo know how acquisito negli anni
- features esistenti

la differenza tra un senior architect e un junior developer sta proprio in questa capacita', nella capacita' di contemporaneamente "sapere un po tutto" e la capacita' di scegliere i componenti corretti per quel lavoro

non e' tanto diverso dal lavoro di Conte. se conte sceglie darmian, lo fa perche' ha vincoli di costo (imposti nel caso del sw developer dal budget cliente). E se sceglie vidal e' perche' ha vincoli di tempo e non vuole dedicarne ad insegnare cose che ha gia' insegnato a vidal (cioe' studiare nuove tecnologie) ad altri ecc, anche se magari esistono soluzioni migliori in senso assoluto.

il tuo caso (del sistema di fatture) poi e' molto particolare perche' esiste un ulteriore livello che e' quello della customizzazione vs sviluppo.

Ci sono molti sistemi "a meta' strada", vedi il forum che stai usando. vbulletin e' una piattaforma customizzabile, non scrivi da zero tutto. idem per i sistemi gestionali, non parti mai da zero, ma usi qualcosa di personalizzabile, perche' non sarebbe possibile ripagare lo sforzo.
in questo caso particolare parti dalle specifiche utente/stakeholders, vedi se esiste qualcosa di adattabile/personalizzabile.
se si fai una analisi di tempi e costi, scopri limitazioni, le condividi con il cliente, e se sono accettabili, you go for it.

make vs buy e' comunque un argomento storico e importante nel mondo dello sviluppo software, da sempre.

Idem per un sito web. Che livello di personalizzazione ti serve? basso? ok, no nscassare i maroni, ti installo "un wordpress" (nel senso di un sistema pronto e mediamente personalizzabile) e ti arrangi.
Personalizzazione enorme a livello di funzionalita', integrazione con altri sistemi? ok, va scritto tutto.
Ma anche in questo caso "tutto" non e' mai tutto perche' ti appoggi a framework esistenti per semplificare le cose banali e ripetitive, quello che viene normalmente chiamato "boilerplate code".

E poi ci sono tante considerazioni: quanti utenti avrai? 10 o 1000000000? se la risposta e' 10, non serve una soluzione scalabile all'infinito che costa 10 volte tanto.

E' una domanda importantissima, si potrebbe scrivere non un libro ma moltissimi libri sull'argomento. E non esiste una risposta univoca

In generale:
1) ascolti i requisiti utente (cosa estremamente complicata, perche il cliente non sa mai che ***** vuole e soprattutto vuole tutto senza capire le implicazioni)
2) cerchi di capire cosa e' fondamentale e cosa non lo e'
e poi la tua esperienza ti fa prendere la strada corretta o errata
Eri partito bene, poi hai nominato Conte e Vidal :cod
 
Alto