Quali fattori ti influenzano nel provare un nuovo framework o strumento?

1

Sono in procinto di dare gli ultimi ritocchi su un framework open-source che spero di pubblicare nei prossimi mesi. È qualcosa che mi piacerebbe sviluppare una comunità e quindi sono curioso di sapere quali fattori influenzano la tua decisione di utilizzare un nuovo framework o strumento e perché.

Alcune delle cose specifiche di cui vorrei sapere di più (sentiti libero di aggiungere a questo):

  • Tipi di documentazione / esercitazioni / istruzioni
  • Supporto della comunità (commenti / forum)
  • Aggiornamenti (blog / social media / feed)
  • Aspetto e aspetto del design del sito web del progetto
  • White paper / testimonials
  • Una grande lista di funzionalità
  • Dimensione della community
  • Strumenti
  • Possibilità di contribuire
  • Copertura del test del progetto (stabilità / sicurezza)
  • Livello di buzz (consigliato da amici o sul Web)
  • Copia di marketing convincente

Idealmente, mi piacerebbe avere tutto quanto sopra, ma quali caratteristiche / qualità specifiche avranno maggior peso nell'ottenere che i programmatori adottino qualcosa di nuovo? Che cosa dice "Questo è un progetto di livello professionale" e quali sono le bandiere rosse che ti impediscono di provarlo?

    
posta VirtuosiMedia 08.08.2011 - 23:56
fonte

5 risposte

3
  • È ESATTAMENTE una soluzione per il problema in questione, almeno sulla carta
  • Posso aspettarmi che sarà adottato da un'enorme quantità di sviluppatori, o è già
  • Non è uno stupido buzzwordfest
  • È stato progettato da persone esperte e ha recensioni positive
  • Fa quello che mi serve in almeno 5 volte meno quantità di codice / tempo che dovrei aggiungere / spendere se lo facessi da solo
  • È uno standard del settore
  • I prototipi cancellano bene
  • Il codice / pattern / API è molto chiaro, compatto, diretto al punto
  • Sarà supportato a lungo termine o il codice sorgente è disponibile
  • Elimina la complessità anziché aggiungerne una nuova
  • Nessun sovraccarico di runtime notevole
  • Non limita l'estensibilità
  • Non ha bisogno di molte dipendenze esterne
  • Non è sperimentale
  • La licenza è compatibile con il progetto

Tutto quanto sopra, questo praticamente lo riassume.

    
risposta data 09.08.2011 - 01:20
fonte
2

Per prima cosa controllo il sito web. Se non riesco a capire per cosa è stato progettato il progetto abbastanza velocemente, lo salterò. Alcuni inseriscono molte notizie sulla loro home page, senza specificare in che cosa è stato effettivamente realizzato il software.

Poi controllo la licenza, ci sono un sacco di progetti che non possono essere usati con software proprietario, e alcuni aggiungono cose stupide alla loro licenza, come json.org affermando "Il software deve essere usato per il bene, non per il male". (dal cui giudizio?)

Quindi cerco codice di esempio. Di solito è più rapido avere un'idea del progetto piuttosto che controllare la documentazione. Una documentazione di riferimento è buona, ma il codice di esempio è un must.

Qualsiasi altra cosa è solo un bonus. Se i tre sopra sono ok, sarei disposto a testarlo per vedere se funziona per me.

    
risposta data 09.08.2011 - 01:01
fonte
1

La tua lista è un buon modo per fare una rapida valutazione, anche se aggiungerei la licenza.

Se sto cercando un prodotto maturo, controllo anche i siti web di lavoro per vedere se qualcuno lo mette come qualcosa che stanno cercando. Di solito un nuovo progetto è di per sé una bandiera rossa, perché se non fa qualcosa che nessun altro fa, non voglio rischiare un nuovo progetto.

Se passa una valutazione rapida e soddisfa una necessità, osservo l'architettura, il design e la qualità del codice sorgente. Quindi provo effettivamente a testarlo, se ha superato tutti i test precedenti.

Per quanto riguarda il livello professionale, per me di solito è un progetto che ha un senso e un progetto che ha una ragione per esistere. Tutto il resto sulla lista è per verificare se l'esecuzione lo rende più prezioso di fastidioso.

    
risposta data 09.08.2011 - 00:09
fonte
1

Tutto si riduce a due cose (almeno per me):

Necessità : può aiutarmi a risolvere un problema attualmente irrisolvibile o che richiede molto tempo, lavoro e spese generali?

Desiderio : siamo onesti, siamo una folla che gode di uno spettacolo interessante quando si parla di framework e strumenti. Se può stupirci, allora tanto meglio.

La combinazione migliore è ottenere una miscela di questi due. Buona fortuna!

    
risposta data 09.08.2011 - 06:25
fonte
0

Risolve un problema che ho!

Personalmente ritengo che ci siano troppi "quadri" là fuori. Non avendo molto a che fare con il mondo ".NET" "C #", ritengo che il singolo vantaggio più grande in questo ambiente sia la SM che fornisce un'unica struttura di sviluppo integrata completa.

Il mondo Java in particolare ha troppe strutture in competizione, sovrapposte e incompatibili, nessuna delle quali si distingue come la migliore e tutte hanno lacune e idiosincrasie.

    
risposta data 09.08.2011 - 05:14
fonte

Leggi altre domande sui tag