Quali modifiche posso apportare al mio IDE per ridurre al minimo l'effetto della mia dislessia?


15

Programma e sono dislessico. La mia visione è eccellente Faccio male l'elaborazione dei simboli e sono un pensatore visivo.

Quando scrivo codice, sono più lento delle persone normali perché sono imprevedibilmente inconsapevole degli errori che faccio. Sto imparando Python e gli ambienti di sviluppo solo testo mi causano molto stress visivo; Sto usando Wingware che è in qualche modo utile, ma non posso completare i compiti nel tempo dato.

Puoi suggerire un alloggio che mi aiuti?

Quali adattamenti mi sarebbero utili?

Esiste un modo per trovare, evidenziare e correggere automaticamente questo tipo di errori?

Correzione di bozze, vedo cosa mi aspetto di vedere o qualcosa di familiare. Non noto errori di battitura, salta righe ecc. E i bug si presentano durante i test. Anche copiando e incollando posso perdere le righe e causare errori.

I blocchi di testo da margine a margine mi fanno venire il mal di testa così come alcune combinazioni di colori

Non elaboro il testo come simboli, piuttosto come oggetti che possono essere ruotati, trasposti in modo che le cifre in un numero si spostino in luoghi diversi, posso percepire "123" COME "132", LE LETTERE "pddq", avere lo stesso aspetto di me. Penso che questi siano difficili: la stessa forma ruotata e riflessa.


2
possibile duplicato di Programmazione con dislessia
moscerino

Beeline Reader è un utile plug-in di Chrome, forse il gradiente fornirebbe protezione contro il problema di scambio di numeri / lettere.
BeardedO

9
La selezione del carattere giusto da utilizzare nell'IDE può svolgere un ruolo importante. Apparentemente ci sono vari tipi di carattere appositamente progettati per aiutare le persone dislessiche. Questi link possono esserti utili: Suggerimenti per un programmatore con dislessia ; NYC Dyslexia Research archivio tag per caratteri Dislessici amichevoli Carattere per dislessia libero e aperto face
Marjan Venema

Risposte:


13

Se sei dislessico, forse dovresti iniziare appoggiando un linguaggio tipicamente statico come C, C ++, C # o Java. Poiché sei costretto a dichiarare variabili in queste lingue e c'è un controllo del tipo, il compilatore e l'IDE generano errori se per errore fai qualcosa del tipo:

var aux; //declaring a new variable
xau = 5; //mistake assignment. In python this will create a 2nd variable

Per linguaggi tipicamente dinamici come Javascript, Python, PHP, riesci a cavartela con questi errori e perdi molto tempo cercando di capire cosa sta succedendo. Questo è il motivo per cui le persone spesso ti consigliano di utilizzare metodologie basate sui test, in modo da poter rilevare questi errori più rapidamente.

Se hai davvero bisogno di imparare Python, allora probabilmente dovresti provare Visual Studio. Al momento offre supporto per lo sviluppo di Python . Oppure prova JetBrains PyCharm .


5
La digitazione statica è ottima per questo. Niente mi fa impazzire più che fissare array di PHP con nomi di classe errati per ore, cercando di scovare bug che impiegherebbero 10 secondi per scoprire se venivano usati tipi corretti invece di chiavi di array di stringhe.
RibaldEddie,

10

Non so in quale lingua stai cercando di sviluppare, ma in qualsiasi buon IDE dovresti essere in grado di cambiare il carattere predefinito per usare Open Dyslexic che potrebbe aiutare in una certa misura.

Personalmente uso WebStorm / PHPStorm di JetBrains che fa un ottimo lavoro nel sottolineare errori di codifica ed errori di sintassi.

Potresti anche voler concentrare molto del tuo tempo praticando una buona metodologia test-driven in modo che eventuali errori vengano colti presto. Per JavaScript uso Mocha o Jasmine per fare test.


5

Alcune cose che aiutano sono:

  • Usa il testo chiaro su uno sfondo scuro. Anche un colore di carattere morbido diverso dal bianco può davvero aiutare (il verde sul nero è davvero buono e anche retrò!)

  • Il completamento automatico è un grande vantaggio. Dovresti semplicemente digitare le prime due lettere di una variabile e quindi premere il pulsante di completamento automatico.

  • I linguaggi statici tendono a funzionare meglio per il completamento del codice e i controlli di compilazione rispetto ai linguaggi dinamici.

  • Se usi un linguaggio dinamico, usa Test Driven Development. Trova i tuoi errori il prima possibile.

  • Non usare nomi criptici per variabili e funzioni (che purtroppo è fin troppo popolare).


1

Evidenziazione semantica

zwabel fornisce una grande spiegazione nel post C ++ IDE Evolution: dall'evidenziazione della sintassi all'evidenziazione semantica :

La struttura aggiuntiva [dell'evidenziazione semantica] divide i BLOB di codice e li rende perfettamente leggibili.

[...] la mia parte preferita dell'evidenziazione semantica: colorazione variabile locale. Tale colorazione assegna un colore semi-univoco a ciascuna variabile in un contesto locale. Ciò consente di distinguere molto più facilmente tali variabili, in gran parte senza leggere il loro nome completo.

(enfatizzare il mio)

Questo (si spera) ti permetterà di riconoscere un tipo mancante a causa del feedback istantaneo sul colore quando una variabile viene evidenziata in modo diverso.

IDE che supportano l'evidenziazione semantica

(basato su una rapida ricerca su Google):


0

Soffro degli stessi problemi di te. La dislessia ha sempre fatto sfide strane, ma non è nulla che non possa essere superato!

Personalmente uso Dreamweaver per tutto il mio sviluppo: puoi personalizzare lo stile del codice all'ennesima potenza. Ho impostato il mio per una combinazione di testo / sfondo bianco sporco - nero.

So che Dreamweaver non è il più economico, tuttavia è bravo a rilevare errori che mi hanno aiutato ampiamente. Puoi anche ottenerlo se sei uno studente per un importo significativamente ridotto; e vale ogni centesimo.


1
Dreamweaver funziona con qualsiasi lingua oltre a html, css e javascript?
Racheet,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.