Superamento della generale mancanza di capacità di progettazione dell'interfaccia utente negli sviluppatori [chiusa]

17

Mi è stato detto, e ho scoperto per me stesso, che molti sviluppatori non sono bravi nel design dell'interfaccia utente (non so quanto sia vero questo) ma è vero per me almeno .

Nello sviluppo del Web, le buone capacità di sviluppo del codice non sono sufficienti senza grandi competenze nella progettazione dell'interfaccia utente per andare con loro.

Quindi per me, e molti sviluppatori come me, che hanno solo metà della cosa (buone capacità di sviluppo) come dovremmo completare l'altra metà oltre a pagare per un designer?

Sta usando i modelli web Open Source con poche modifiche la migliore soluzione per questo, o ci sono altre opzioni?

    
posta Ali 26.09.2011 - 11:18
fonte

14 risposte

11

Sono uno sviluppatore che non è altrettanto bravo nel design. Cerco di fare del mio meglio, quando lavoro su un progetto in cui devo progettare, per mantenere le cose il più semplici possibile. Prendo un approccio molto logico e disegno solo per l'esperienza dell'utente. Non riesco a farlo sembrare veramente bello, ma posso renderlo user friendly e relativamente piacevole alla vista.

Ho letto molti di questi libri: link e mi hanno davvero aiutato.

modifica il mio preferito in quella lista è Non farmi pensare: un approccio di buon senso all'usabilità del Web, 2a edizione di Steve Krug

    
risposta data 26.09.2011 - 11:37
fonte
5

Il design (di qualsiasi cosa) è una negoziazione tra le esigenze dei vari stakeholder (cliente, sviluppatore, utenti). Nessuno degli stakeholder di solito è in una buona posizione per creare il miglior design perché tende a capire meglio le proprie esigenze e le mette al di sopra delle esigenze degli altri stakeholder. Un buon designer può identificare le esigenze dei vari stakeholder - spesso ha bisogno che lo stesso stakeholder non si accorga di avere - e trovare una soluzione che funzioni per tutti.

Probabilmente lo hai già visto molte volte. Gli utenti pensano a come devono interagire con un sistema, di solito in termini di altri sistemi con cui hanno già familiarità. Gli sviluppatori pensano soprattutto in termini di funzionamento del sistema. I clienti di solito vogliono qualcosa che risolva tutti i loro problemi, oppure vogliono risolvere alcuni problemi molto specifici per il minor costo.

Per diventare un buon designer, devi imparare a smettere di pensare a come implementerai qualcosa. Invece, devi concentrarti su ciò che gli altri stakeholder ti stanno dicendo su ciò di cui hanno bisogno e che vogliono, e devi essere in grado di leggere tra le righe. Come gli sviluppatori, i clienti e gli utenti spesso hanno in mente alcune soluzioni precostituite e tendono a descrivere quella soluzione al posto dei requisiti sottostanti. (Detto questo, è importante rendersi conto che a volte un cliente significa quello che dice quando ti dice esattamente quello che vuole, se non sei sicuro, chiedi.)

Più superficialmente, il design estetico di un'interfaccia utente è anche qualcosa con cui alcuni sviluppatori hanno problemi. Penso che sia in parte dovuto al fatto che gli sviluppatori di software spesso non hanno molta formazione in campo estetico - gli studenti di CS potrebbero non avere molto tempo per le lezioni d'arte. Anche in parte è di nuovo perché siamo più interessati a come qualcosa funziona di quanto non lo siamo in quello che sembra; semplicemente non ci interessa se gli angoli di un pulsante hanno un raggio di 9 pixel o un raggio di 10 pixel. Questi due fattori sono sicuramente correlati. A volte è possibile superare questo affidandosi a soluzioni in scatola sotto forma di framework UI, e l'utilizzo di componenti pre-progettati ha il vantaggio di unificare visivamente il proprio lavoro con altre applicazioni sullo stesso sistema. Puoi migliorare le tue capacità estetiche leggendo, guardando il lavoro di altre persone e prestando particolare attenzione ai dettagli visivi che potresti aver ignorato in passato. Dovresti anche cercare di capire la logica dietro le differenze visive: i pulsanti con angoli quadrati significano qualcosa di diverso dai pulsanti arrotondati? Come si usa il colore? ecc.

    
risposta data 26.09.2011 - 12:37
fonte
3

Ecco alcune cose che trovo di aiuto:

  • Prendi nota di ciò che ti piace / non ti piace in altri software. Siamo programmatori, trascorriamo gran parte della nostra vita al computer. Prova e prendi nota di ciò che ami / odi quando usi il software. Non importa se si tratta di software per computer, videogiochi, dispositivi mobili, ecc. Basta provare e tenere d'occhio ciò che è comodo e facile da usare, e cosa no.

  • Trova uno strumento di schizzo facile da usare per disegnare l'interfaccia utente per te e i tuoi utenti. Mi piace usare Balsamiq poiché è veloce, semplice e la versione web è gratuita.

  • Ricorda che non è necessario trovare qualcuno specializzato in progettazione software per aiutarti a progettare qualcosa, qualsiasi utente lo faccia. Gestisco spesso i miei schizzi da persone che non hanno alcun rapporto con il progetto solo perché so che sono in giro per tutto il giorno con il software e possono dirmi se qualcosa sembra OK o facile da usare. Tieni presente che spesso ti danno idee pazze su cosa fare e devi sapere cosa sarebbe "cool" da fare e cosa migliorerebbe effettivamente la produttività.

  • Sentiti libero di chiedere su link per domande dettagliate

risposta data 26.09.2011 - 17:10
fonte
2

Per essere onesti, la progettazione dell'interfaccia utente è tutta un'altra cosa. Uno sviluppatore pensa sempre a un design sottile e non è troppo creativo quando si tratta di progettare. L'approccio definito che sento è quello di mantenere uno sviluppatore diverso per la progettazione dell'interfaccia utente. Anche se si aggiunge al costo, ma sicuramente ti aiuterà a raggiungere risultati migliori.

Per qualcuno che fa da solo le cose, non dà mai il risultato migliore. Quindi, IMHO questi due aspetti diversi dovrebbero essere assegnati a due diversi sviluppatori. Una piccola conoscenza di HTML e CSS per skinning e sviluppo di temi è consigliata in caso di CMS diversi, ma quando è necessario sviluppare un design completamente nuovo, consultare un progettista dell'interfaccia utente.

    
risposta data 26.09.2011 - 12:38
fonte
2

PossosicuramenteconsigliareillibrodiJoelSpolsky Progettazione dell'interfaccia utente per i programmatori . In questo libro prende praticamente l'approccio che stai cercando: Spiegare perché il design dell'interfaccia utente è importante per i programmatori. Per alcuni materiali correlati online:

Progettare per le persone che hanno cose migliori da fare con le loro vite

    
risposta data 26.09.2011 - 12:42
fonte
2

Il design dell'interfaccia utente non è qualcosa che viene naturale a molte persone. Tuttavia, recentemente sono diventato molto più bravo seguendo alcuni semplici principi.

  1. Non esagerare, non è così difficile come pensi.

  2. Modella innanzitutto la struttura dei dati e il tuo motore. Crea modelli chiari e corrispondenti al mondo reale. Ovviamente questo presuppone che tu abbia avuto il tempo di capire di cosa ha bisogno il cliente.

  3. Ora, con un foglio di carta e una matita, siediti e inizia a disegnare il layout logico degli schermi. Normalmente questo semplicemente presenta il tuo modello di dati all'utente in modo organizzato. Il tuo obiettivo dovrebbe essere semplicemente:

    a. Imitare l'ambiente in cui verrà distribuita l'app. Ad esempio, se si tratta di un'app di Windows, deve comportarsi come un'app di Windows, se si tratta di un'app Web, deve comportarsi come applicazioni web simili più popolari della tua.

    b. Il tuo obiettivo è guidare l'utente attraverso il tuo modello di dati in un modo che PREFERISCONO. Un'interfaccia utente è ben progettata quando un utente fa qualcosa nella tua applicazione e fa esattamente quello che si aspettava che facesse.

    c. Questo richiede tempo ed è una curva di apprendimento, ma chiunque può farlo.

  4. Non preoccuparti della grafica, cioè i pulsanti, gli sfondi, ecc ... il tuo unico obiettivo a questo punto è il layout logico della pagina.

  5. Hai bisogno di padroneggiare la libreria che stai usando sia html, gtk, cocoa, android, Windows.Forms e così via nella misura in cui comprendi i meccanismi di gestione degli eventi, il motore di layout e recupero dell'input e visualizzazione dei dati. Qualsiasi sviluppatore dovrebbe essere in grado di fare almeno questo.

  6. Non c'è vergogna nell'ottenere un graphic designer da qui a subentrare. Ma dovresti almeno riuscire a superare il passaggio 5. Questo è il 95% del carico di lavoro per l'intera app.

Ecco un utile articolo che mi ha trasformato da un povero designer Gui a un designer Gui molto migliore.

link

    
risposta data 26.09.2011 - 16:43
fonte
1

Puoi anche cercare esempi di successo di siti "simili" per ottenere idee per layout, grafica e design. Con un po 'di tweaking nel tuo programma di pittura preferito puoi prendere in prestito molte idee e renderle personali. Non copiare a priori - non è solo cattiva educazione, è probabilmente anche illegale nella maggior parte dei casi.

Dopo aver preso in prestito alcune volte inizierai a conoscere meglio i progetti di siti di successo, e imparerai a conoscere gli strumenti per realizzare questi progetti (con le tue piccole modifiche).

    
risposta data 26.09.2011 - 12:03
fonte
1

Con l'introduzione dell'HTML, la creazione di un sito semplice e non brutto è diventata una sfida. Mentre si può avere il concetto, ci vogliono diversi trucchi, strumenti, grafica pronta e conoscenza CSS per farlo bene. Inoltre, sono necessarie tecniche di usabilità e altri fattori umani che influenzano il processo di progettazione per produrre pagine dall'aspetto nitido.

Gli sviluppatori passano la maggior parte del loro tempo a battersi imparando lingue complesse, OOP, ORM, SQL, T-SQL, ecc. Inoltre, raramente investono in strumenti per la creazione di siti web (la maggior parte sono costosi).

Di conseguenza, molti sviluppatori soffrono della loro incapacità di produrre pagine web stupende. Credo che se impari gli strumenti richiesti, sarai in grado di creare anche buone pagine.

È anche importante sapere qual è il tuo rotolo nel processo di sviluppo dell'applicazione. Potresti scoprire che il web design è un'abilità piacevole da avere piuttosto che un'abilità obbligatoria. Nei progetti di grandi dimensioni, non dovrebbe essere un compito programmatore almeno per i motivi sopra citati.

Ho scoperto che questo strumento è un ottimo strumento, potrebbe aiutarti:

Artisteer

Dai un'occhiata e prova la demo, è davvero buona.

    
risposta data 26.09.2011 - 13:59
fonte
1

still in web development good development skills is not enough without great skills in designing

Non so se questa affermazione è vera, penso che dipenda da dove lavori.

Ad esempio, un'azienda più piccola probabilmente richiederà di essere più flessibile con il proprio skillset, mentre una grande azienda potrebbe non avere le stesse aspettative e si potrebbe effettivamente spendere tutto il tempo a sviluppare mentre un team di progettazione lavora alla progettazione.

Microsoft ha effettivamente aggiornato il proprio set di strumenti per evidenziare la netta separazione tra sviluppatori e designer. Hanno introdotto Expression Blend con WPF che ora significa che lo sviluppatore può lavorare sulla funzionalità di un software e qualcun altro può fare il design per esso. Entrambi usano strumenti diversi, entrambi possono lavorare contemporaneamente al progetto, ma uno fa la funzionalità e uno fa il design.

Lo sviluppatore specifica i punti dati e il designer li visualizza.

    
risposta data 26.09.2011 - 11:23
fonte
1

Ricorda che anche il design può essere testato, non solo il codice. Inizia semplice, prova il tuo design su un piccolo gruppo di persone, registra il loro feedback e vai da lì. Questo può aiutarti a identificare i problemi con il tuo design e darti idee su cosa potrebbe / dovrebbe essere fatto in modo diverso. Quindi rivedi il design e itera.

    
risposta data 26.09.2011 - 13:19
fonte
0

Dovrai solo fingere e copiare altri disegni. Evita qualsiasi fantasia, ad eccezione di una o due funzionalità che saranno un grande vantaggio per gli utenti. Seguire alcune pratiche di base per limitare i caratteri, i colori e il disordine.

Non aver paura di pubblicare domande su UI.stackexchange.com

    
risposta data 26.09.2011 - 14:00
fonte
0

Anche se non è la tua area di competenza, penso che sia sempre interessante studiare come creare interfacce utente. Al giorno d'oggi la maggior parte delle pagine web sono molto dinamiche e conoscere alcune abilità di interfaccia utente sarebbe certamente di aiuto quando si creano componenti e si impostano le loro interazioni con gli elementi della pagina. Sono venuto da un background di sviluppo back-end e sono rimasto sorpreso da quanto è coinvolto nella creazione di interfacce.

C'è un libro particolarmente interessante che ho letto sul web design e che è rivolto agli sviluppatori:

Web design per sviluppatori: link

È un libro di facile lettura che tocca tutte le fasi della creazione di interfacce: dalla semplice creazione di bozze e creazione di prototipi all'interfaccia utente per la creazione di disegni con HTML + CSS.

Per migliorare ulteriormente le tue abilità di interfaccia utente, ti consiglio anche l'ultimo screencast di PeepCode con Ryan Singer: link

    
risposta data 26.09.2011 - 15:21
fonte
0

Penso che cogliere alcune nozioni di base su UX / UI / grafica / tipografia sia certamente uno sforzo prezioso. Non è sempre possibile avere un team di specialisti "a tutto tondo", ovviamente. Molte volte la gente deve indossare cappelli multipli. Un buon sviluppatore vedrà valore nel passare il tempo ad apprendere cose al di fuori del suo dominio e dovrebbe essere in grado di riconoscere almeno un buon lavoro nel design.

Tuttavia, c'è qualcosa da dire per ciò che fanno i designer. Uno sviluppatore può fare così tanto nell'area del design (certamente più di altri). In particolare, i grandi progetti rivolti al pubblico che si estendono oltre una nicchia ristretta beneficiano notevolmente impiegando veri professionisti del design. E non intendo semplicemente gente che possa aggirare i codici colore CSS e HTML. Intendo persone che hanno speso ANNI a studiare cose come la tipografia, che hanno letto e capito il libro di Josef Alber sul colore , che può fare bellissimi schizzi con carbone di legna sbriciolato su carta da giornale. Queste sono abilità preziose e i progetti che lo riconoscono e che possono mettere queste abilità in un uso mirato hanno un vantaggio decisivo rispetto alla concorrenza.

Detto questo, ci sono alcune aree in cui designer e sviluppatori possono sovrapporsi alle loro capacità. Soprattutto UX e il suo sottodominio, interfaccia utente. Raccomando ...

risposta data 26.09.2011 - 15:39
fonte
0

Assumi un professionista.

Seriamente, le interfacce utente degli sviluppatori hanno una reputazione terribile. Questo non perché gli sviluppatori sono al di sotto della media in fase di progettazione, ma piuttosto perché gli sviluppatori sono al di sotto della media a chiedere aiuto.

Uno sviluppatore ha la tendenza ad affrontare tutte le sfide digitali che si presentano.

(Ero uno sviluppatore professionista da 10 anni e mia moglie è una designer di interfacce utente per 20 anni)

    
risposta data 26.09.2011 - 19:42
fonte

Leggi altre domande sui tag