Dispositivi mobili il divario tra creazione e consumo

Puoi creare per il web utilizzando il tuo dispositivo mobile?

Questa domanda è emersa dalle bocche dei web designer e dei programmatori fin dai primi modelli di smartphone. Quanto sono capaci i moderni dispositivi mobili dove la creazione di è preoccupato?

In questo articolo, discuterò alcuni dei principali ostacoli che i telefoni cellulari affrontano, per quanto riguarda la creazione per il web. Menzioneremo alcuni strumenti lungo il percorso, ma ci concentreremo di più sulla discussione su come il dispositivo mobile sia fondamentalmente diverso da un desktop o un laptop e quali opportunità e restrizioni ciò porti alla luce.

Stiamo facendo le cose sbagliate

Quando due cose sono combinate per fare una cosa fondamentalmente nuova, ci riferiamo a questo processo come sintesi. È spesso difficile per il nostro cervello determinare gli effetti finali della sintesi.

Ad esempio, prima che venisse rivelato il primo iPhone, la gente aveva previsto quale sarebbe stato il dispositivo del telefono cellulare ispirato all'iPod. Naturalmente, hanno previsto alcune qualità del telefono cellulare e alcune qualità dell'iPod, combinate.

Il prodotto sintetizzato di due cose non sempre mantiene l'aspetto delle due cose da cui è composto.

Quando si tratta di creare prodotti digitali con dispositivi mobili, questa sintesi è ancora in corso. Molti degli strumenti che abbiamo creato hanno cercato di spingere i paradigmi di sviluppo e creazione a cui siamo abituati da laptop e desktop nel dispositivo mobile. La maggior parte di questi strumenti replica elementi di interfaccia e flussi di lavoro sull'iPhone, semplicemente adattando le interfacce in modo sufficiente per consentire input tattili.

Mentre questo potrebbe funzionare in un pizzico (ad esempio, se sei bloccato su un bus e il tuo server va giù, o se devi ritoccare una foto da inviare a un editor di contenuti), l'utilizzo di molti di questi strumenti è impossibile a peggiore e doloroso nel migliore dei casi.

Non abbiamo ancora trovato quale dovrebbe essere la vera sintesi per i dispositivi mobili e il processo di creazione.

Cosa può fare il mobile??

Per comprendere appieno lo stato futuro degli strumenti per dispositivi mobili come piattaforme per la creazione di contenuti, dobbiamo esaminare le funzioni della piattaforma da soli. Su cosa eccellono i dispositivi mobili?

Mobilità

I dispositivi mobili sono prima di tutto, per natura, mobili. Ciò consente la creazione con pochissima configurazione o rimozione. Al contrario, anche un laptop richiede una superficie piatta e un po 'di spazio per funzionare; i dispositivi mobili in genere richiedono solo una mano per funzionare a un livello nominale. Ciò fornisce un accesso molto più immediato.

Sensi

I dispositivi mobili hanno in genere una capacità di rilevamento molto maggiore rispetto al laptop medio. Pochi dispositivi mobili sono prodotti senza GPS, giroscopi e altre capacità di rilevamento del movimento. Questi strumenti di rilevamento forniscono l'accesso a informazioni non elaborate sul dispositivo e sulla situazione attuale dello sviluppatore rispetto a quanto generalmente non è disponibile sui dispositivi laptop. Questo tipo di informazioni potrebbe essere utilizzato, ad esempio, per acquisire movimento organico, informazioni di localizzazione iper-accurate o persino auto-adattamento per lo sviluppatore che utilizza il telefono in base al loro orientamento fisico o posizione.

Media Capture

I dispositivi mobili sono in grado di generare media di qualità relativamente alta, in particolare video e immagini fisse a causa della sempre maggiore qualità della fotocamera. I desktop ei laptop in genere sono molto più limitati in questa arena, fornendo strumenti per la modifica ma non l'hardware per la cattura.

Toccare

I telefoni cellulari sono ottimizzati per il tocco. I computer portatili e i desktop, in genere, non sono abilitati al tocco. Ciò offre opportunità uniche in termini di interazione con interfacce visive che in precedenza era impossibile. Ad esempio, l'input di visualizzazione multi-touch offre potenziali ricche interazioni che sono completamente impossibili da emulare su una macchina desktop con un mouse.

Test della connettività

I dispositivi mobili sono molto più precisi nel testare i problemi di connettività mobile, in quanto possono essere limitati su quali tipi di accesso alla rete vengono utilizzati per il trasferimento dei dati. Anche questo non è emulato, ma è un limite reale che può essere imposto al telefono.

I migliori test per dispositivi mobili

Forse la caratteristica più convincente di un dispositivo mobile è che è la piattaforma di test più efficace per se stessa. Quindi, se possiamo mirare all'iPhone durante la creazione sopra un iPhone, siamo più in grado di vedere una relazione diretta tra il nostro spazio di creazione e l'aspetto del prodotto finale.

Cosa fanno male i dispositivi mobili?

Digitando

In particolare (e soprattutto), digitare il codice su un dispositivo mobile è molto difficile. La punteggiatura è molto più diffusa nella maggior parte dei linguaggi di programmazione rispetto a qualsiasi altra lingua parlata. La punteggiatura a battitura è al momento piuttosto difficile. Inoltre, i programmatori che hanno provato a scrivere il codice su un telefono cellulare o un tablet hanno rapidamente avvertito i limiti della digitazione con due pollici o indici verticali..

Filesystem

Fino a quando non si verifica un cambiamento significativo nell'elaborazione dei dati, i file system sono fondamentali per il funzionamento dei programmatori e degli sviluppatori web. Sfortunatamente, i dispositivi mobili (e in particolare i dispositivi Apple) non forniscono un filesystem facile da manipolare. Proponiamo un esempio di esercizio. Come faresti quanto segue su un dispositivo mobile?

  1. Clona un repository git
  2. Rinominare alcuni file in quel repository
  3. Cambia permessi su un file nel repository
  4. Esegui un installazione di npm o a installazione bundle dalla radice di quella directory
  5. Spingi quella directory su un repository remoto
  6. Condividi il contenuto di quel file con un collega
  7. Esegui alcuni comandi per pre-elaborare alcuni dei file

Come puoi vedere, rispondere a una di queste domande richiede una serie di passaggi relativamente non intuitivi per la maggior parte degli sviluppatori. La soluzione più comune per queste domande, su un dispositivo mobile, è trovare un tipo di emulatore di terminale che permetta allo sviluppatore di tornare a un sistema Unix, dove possono eseguire comandi da riga di comando e avere un ulteriore controllo sul loro sistema.

Multitasking

I telefoni sono piuttosto terribili in multi-tasking. Le compresse sono migliori, ma comunque non eccezionali. Parte della ragione di questo è lo schermo immobiliare; è impossibile che il mio telefono rappresenti la quantità di dati che il mio schermo 4K può rappresentare. È anche un prodotto di come usiamo i nostri telefoni più comunemente: un'app alla volta. Su un computer, in genere abbiamo più applicazioni aperte e visibili in ogni momento.

La necessità di simulazione

La creazione da dispositivi mobili introduce anche la necessità di una simulazione migliore. Quando si crea su un desktop, testare i casi d'uso di altri desktop è relativamente semplice, dato che si dispone di uno schermo che copre le maggiori dimensioni dello schermo. È anche banale ridimensionare la finestra del browser in modo che corrisponda a quella di un determinato dispositivo mobile, fornendo un'anteprima facilmente accessibile delle conseguenze e degli effetti di layout. Questo tipo di simulazione è letteralmente impossibile sui telefoni cellulari, poiché le dimensioni dello schermo proibiscono di testare e simulare schermi più grandi di se stessi senza tradursi in una prospettiva ingrandita dello stesso artefatto digitale.

Questo vale anche per il test delle tecnologie future, come la realtà virtuale, i dispositivi indossabili e gli schermi di grandi dimensioni come i TV 4K. Fino a quando i dispositivi mobili supportano tecniche di emulazione migliori o alcuni processi per testare periferiche esterne, sarà difficile fare un passaggio per la maggior parte degli sviluppatori che stanno creando per questi endpoint.

Tutto dovrebbe essere una "app"?

Un altro problema con il mondo dello sviluppo mobile è che, per la maggior parte, i telefoni cellulari sono costruiti con l'idea che le applicazioni siano pacchetti di funzionalità standalone. Questo si scontra con uno dei concetti probabilmente più potenti usati dagli sviluppatori: la filosofia unix di fare una cosa molto piccola, molto bene, e comporre molte di queste piccole cose per creare flussi di lavoro complessi e potenti.

Lo sviluppo è un mestiere che richiede tradizionalmente strumenti grezzi e potenti. L'attuale set di strumenti sembra più un Leatherman multi-strumento che non ha tutto il necessario per completare l'operazione in corso. Il flusso di lavoro di uno sviluppatore che crea principalmente su un dispositivo mobile sarebbe necessariamente significativamente diverso dal flusso di lavoro di uno sviluppatore che lavora su un laptop o desktop. Questo, di per sé, è una sfida; la direzione collettiva del settore si basa sul supporto e gli sforzi sono nella stessa direzione. In altre parole, beneficiamo di un numero maggiore di persone che adottano strumenti, pratiche e flussi di lavoro simili, perché sperimentiamo problemi simili e condividiamo le soluzioni l'uno con l'altro. Tuttavia, se usiamo strumenti molto diversi l'uno dall'altro, la conoscenza collettiva soffre di quel cambiamento, dal momento che meno persone sperimentano gli stessi problemi.

Se cammina e cova come un'anatra ...

Dovremmo creare strumenti destinati ad essere utilizzati su un telefono, piuttosto che adattare gli strumenti che devono essere utilizzati su un supporto diverso per essere semplicemente accessibili su un telefono. Dovremmo tenere in considerazione i punti di forza dei media ed evitare di costruire strumenti che sfruttino i punti deboli.

Il futuro del Web: evoluzione dei nostri processi

Il futuro del web sembra sempre più diverso dal presente. Sappiamo che il cambiamento fa parte di questo settore, ma che tipo di modifiche dovremmo anticipare o portare avanti e come influenzerà il modo in cui utilizziamo i dispositivi mobili per la creazione?

Una possibile risposta a questa domanda è di scaricare il lavoro che i dispositivi mobili non funzionano (cioè la codifica) da eseguire sulla base di modelli predeterminati, intelligenza algoritmica e tecniche ottimizzate. Questo è il modo in cui TheGrid.io afferma di lavorare, reclamizzando "siti Web che si progettano da soli". Naturalmente, la reinvenzione del WYSIWYG è sicuramente un lavoro in corso costante.

Quando scopriamo nuovi e profondi modi di interagire con diversi dispositivi, dovremmo tenere a mente alcune semplici verità: 

  1. Non dovremmo mai essere così legati a un processo che dimentichiamo l'importanza del risultato. 
  2. Dovremmo preferire gli strumenti che evolvono rispetto agli strumenti che si adattano. (L'evoluzione è un cambiamento fondamentale nell'interazione, mentre l'adattamento è un'asprezza superficiale che traduce una interazione in un input innaturale progettato per una diversa interazione). 
  3. Un grande artigiano non cambia spesso il suo set di strumenti, ma è disposto a investire in strumenti di alta qualità in anticipo che durano una vita

Conclusione

I dispositivi mobili si sono integrati nel mondo e sono qui per restare. Il nostro lavoro come creatori è quello di valutare e spingere questi dispositivi al loro potenziale e di cercare nuove strade che stimolino la creatività attraverso nuove possibilità. Dovremmo considerare questi dispositivi non semplicemente come computer più piccoli, ma in termini di punti di forza. Una volta che impariamo a sfruttare la forza del mobile, avverrà una vera sintesi e l'ormai doloroso processo di creazione per il web su cellulare diventerà un'abilità indispensabile.