Scrivere software da zero in azienda [chiuso]

-1

Sono un programmatore con dieci anni di esperienza. Ho lavorato come programmatore a tempo pieno in 2 aziende in questi dieci anni come sviluppatore di software.

Mi è sempre piaciuto avere una mia attività. La mia domanda è, è ok per avviare un progetto di business da zero e scrivi ogni pezzo di codice da zero?

Ricorda per esempio se ci sono alcune app open source vicino al mio progetto e io preferisco ottenere la fonte e quando i clienti entrano nella mia attività, inizio a cambiare programma. Non spendere diversi mesi e perdere il mercato.

Ho visto in aziende che ho lavorato, scrivere un progetto da zero è un pessimo marketing abitudine e finirà per perdere tutti i clienti, in base al lungo tempo di esito e enorme e bug dettagliati che arrivano.

    
posta Hamed_gibago 29.09.2018 - 14:47
fonte

5 risposte

3

Qual è il valore che vuoi portare sul mercato? Cosa puoi fare meglio dei tuoi concorrenti?

  • Se sta scrivendo framework software, non nascondili in un prodotto finale di un unico mercato, ma fai in modo che la tua azienda non offra quella struttura al mercato.

  • Se capisce il cliente e fornisce rapidamente le soluzioni ai suoi bisogni, riutilizzi ciò che ritieni appropriato. Non perdere tempo a scrivere framework.

  • Se hai un cliente in cui le soluzioni out-of-the-box non sono adatte e tutti gli altri concorrenti "box-combiner" hanno fallito, allora esegui entrambi, il framework specifico per l'utilizzo e la fine -applicazione utente. Il cliente sarà paziente se riuscirai a convincerlo.

  • Se tutto ciò che vuoi fare è combinare framework disponibili costruiti da altri gruppi, dovrai affrontare un periodo difficile contro i milioni di concorrenti che fanno lo stesso, ma hanno più potere umano.

Detto questo, qualunque sia il framework / libreria / componenti che scegli, decidi saggiamente. Il fatto che un framework abbia un meraviglioso whitepaper non ti dice nulla sulla quantità di lavoro che devi spendere per integrarlo nel tuo progetto. Alcune delle domande possono essere:

  • Quanti giorni dovrei spendere per implementare la parte di cui ho bisogno, da zero? Se sono solo un paio di giorni, scegli la tua implementazione.
  • I quadri hanno sempre un impatto sul codice che li utilizza. L'utilizzo del framework migliora la qualità (leggibilità, robustezza, prestazioni, portabilità, testabilità, facilità di debugging, ...) del tuo software applicativo?
  • Quanti giorni dovrò spendere per capire il framework, prima che possa iniziare ad usarlo?
  • Quanti giorni ci vorranno per integrare la struttura nel mio progetto?
  • Quanto è bug il framework?
  • Quanto è buono il supporto e la documentazione?
  • Il framework esiste ancora l'anno prossimo?
  • Le nuove versioni del framework mantengono la compatibilità o gli sviluppatori fanno spesso cambi di rottura?

Sì, l'utilizzo di framework esistenti può aiutarti molto e ignorarli è sicuramente sbagliato, ma non pensare "using framework = benefit".

    
risposta data 29.09.2018 - 17:45
fonte
5

is it ok to start a business project from scratch and write every piece of code from zero?

È, se questo aggiunge valore per il cliente. Il problema è che questo viene spesso fatto solo perché gli sviluppatori vogliono un senso di controllo. A loro non piace essere spinti dal codice esistente. Non sanno come usare il codice esistente senza prendere il sopravvento.

C'è un affascinante TED parlare di come costruire un tostapane da zero . Illustra meravigliosamente che fare tutto da solo è un sacco di lavoro per fare anche piccole cose.

Il fatto è che va bene se è ciò che il cliente vuole. Se riesci a trovare qualcuno che la valuta e pagherà, va bene. Se non ti interessa e lo vuoi solo oggi, allora questo è un piano terribile.

Ciò che puoi fare è usare tecniche di isolamento come inversione di dipendenza, contenitori docker e gestori di pacchetti per bloccare il codice che scrivi dai framework, strumenti e librerie che usi in modo che non ci siano punti isolati nella tua base di codice che né conoscere o preoccuparsi di qualsiasi materiale creato da altri. In questo modo puoi sostituire le altre cose con nuove cose o anche con le tue cose personali quando hai bisogno piuttosto di dover ripetere tutto perché è uscita una nuova versione della loro schifezza.

Questo ti darà tutto il controllo di cui hai bisogno senza dover scrivere tutto da solo. Se è tutto ciò di cui hai bisogno, allora sei pronto perché, una volta che impari come farlo, puoi comunque ottenere il prodotto in modo tempestivo.

Se vuoi veramente scrivere tutto da solo, solo per vedere se puoi, allora forse dovresti iniziare con lavori molto piccoli che sono mirati. I microcontrollori ti avvicinano al metallo. Verifica se qualcuno ha bisogno di un Hardware Abstraction Layer personalizzato e ti pagherà per questo.

    
risposta data 29.09.2018 - 15:46
fonte
2

is it ok to start a business project from scratch and write every piece of code from zero?

Sì, se è quello che vuoi fare.

Non è tipicamente il modo più pratico di fare le cose, e potresti trovare utile usare librerie o componenti di terze parti per gestire funzionalità che non sono una parte fondamentale del tuo prodotto. Ma alla fine è il tuo progetto / azienda, quindi fai quello che pensi sia il migliore. Non hai bisogno dell'approvazione di nessuno.

    
risposta data 30.09.2018 - 04:42
fonte
1

Is it ok for a business project to start it from scratch and write every piece of code from zero?

No, è una pessima idea per i motivi che hai già identificato: vinci business per ottenere il tuo prodotto o servizio nel marketplace . Il modo per farlo è utilizzare gli strumenti esistenti (siano essi open source o proprietari) dove sono l'opzione giusta e costruiscono i bit dove non c'è una buona opzione. Altrimenti passerai un'enorme quantità di tempo e fatica a costruire un sostituto buggy e meno funzionale per Spring, ASP.NET o qualsiasi altra cosa mentre i tuoi concorrenti hanno già i tuoi potenziali clienti.

Considerando ciò che è estremo, hai intenzione di scrivere il tuo sistema operativo, i tuoi driver hardware, i tuoi compilatori e così via? No, perché sarebbe stupido. Quindi, dato che sei non intenzione di scrivere tutto da zero, non preoccuparti di riutilizzare il codice a livello di applicazione anche da altre persone.

    
risposta data 29.09.2018 - 15:03
fonte
0

Se ti piace mangiare ogni tanto, considera una metafora di ciò che accadrà a una società senza prodotti da vendere per un periodo di tempo prolungato.

Per risparmiare tempo, considera l'utilizzo di software opensource, supportando la community migliorando il vantaggio offerto alla comunità di opensource, quindi scrivendo attorno a esso una shell proprietaria vendendola come valore aggiunto del prodotto.

Il recente acquistato da Microsoft github.com & l'offerta BitBucket di Atlassian mi viene in mente come esempi di questo approccio.

    
risposta data 29.09.2018 - 15:09
fonte

Leggi altre domande sui tag