Presentazione e domande sull'IDE

Ciao ragazzi (ma anche no :stuck_out_tongue: ), sono Matteo da Lodi ed ho 16 anni.

Ho deciso di approfondire a casa per conto mio quello che facciamo un giorno della settimana a scuola (il pomeriggio, laboratorio di robotica, basato sull'Arduino).

Premetto che faccio l'ITIS indirizzo informatico, sono in terza, quindi ho nozioni base di elettronica e buone di programmazione (non certo grazie alla scuola...). Ottima conoscenza della lingua inglese (anche qui, non per merito scolastico...).

Mi è arrivato ieri l'Experimentation Kit for Arduino della Adafruit (pagato 60€ + 30€ di spedizione + 43€ di dogana :disappointed_relieved: :0 , questo: Adafruit MetroX Classic Kit - Experimentation Kit for Metro 328 : ID 170 : $84.95 : Adafruit Industries, Unique & fun DIY electronics and kits ), ho così scaricato Arduino 1.0 ed installato i driver sui notebook di mia mamma e papà (i3 330M e i5 2410M, 4GB di RAM e Windows 7 Home Premium 64bit entrambi). Nessun problema, tutto perfettamente funzionante.

Quando però ho scaricato l'IDE sul fisso (Core2Duo E4500, 3GB di RAM e Windows 7 Ultimate), l'ho avviato e mi ha dato un errore roguardante la JVM, errore che non ricordo. Fatto stà che ho disiinstallato e reinstallato Java, poi Arduino 1.0 si è "avviato".

Il problema è che è di una LENTEZZA DISARMANTE. Intendo dire, dopo aver cliccato sull'eseguibile compare subito la splash-screen, poi dopo 1:02 minuti la splash sparisce e compare una finestrella di errore chiamata "Launch4j", con all'interno il testo "An error occurred while starting the application". L'unico pulsante è "OK".
Dopo 5 secondi dalla comparsa della finestrella di errore (senza aver premuto OK) si avvia l'IDE. O meglio, compare la finestra del programma.

Clicco sull'OK della finestrella precedente e questa sparisce, senza fare apparentemente nulla.

Passo all'IDE.

Premo "File", "Edit", "Sketch", "Help", tutto bene. I pulsanti si premono e si apre il relativo menù a tendina.
Quando vado a toccare "Tools", il programma si impalla e smette di "reagire". Se provo a premere qualcos'altro Windows mi dice che l'applicazione non risponde, proponendomi di chiuderla. Se non premo niente ed attendo, il programma crasha.

Capisco che la macchina non sia un mostro di potenza, ma programmi ben più pesanti e complessi ci girano perfettamente.

Ho già provato a riavviare, disinstallare e reinstallare la JVM, eliminare e riscaricare l'IDE... tutto senza esito positivo =(

Qualcuno ha qualche idea? XD


Domanda 2: qualcuno sa se esiste un IDE per l'Arduino che giri su Android (ho un Galaxy Nexus con Android 4.0.3 Ice Cream Sandwich e supporto all'USB host) ?? Ho cercato ma non o trovato niente di concreto... voi ne sapete di più? :slight_smile:

Benvenuto ! :slight_smile:
io ti consiglio di cestinare l'IDE uno e di scaricarti la 0023 funziona decisamente meglio, l'IDE nuovo ha ancora un sacco di bachi..

Per l'ide che giri su android non lo so se esiste, anzi non credo però cerca magari prossimamente potrebbe uscire qualcosa.

Grazie mille! :slight_smile:

Si sa quando uscirà una nuova release dell'IDE?

la 0023 funziona con il mio UNO anche se è un Rev3 (ho letto che IDE-1.0 e UNO-R3 sono usciti insieme...) ??

ps: è solo un mio problema o oggi (e forse anche ieri) il forum ed il sito sono lentissimi?? )=

edit: provata la 0023 e, bestiale, si comporta esattamente come la 1.0...

Ciao e benvenuto. In ordine sparso:

  1. il forum sono alcun i mesi che è di una lentezza disarmante. Avevano promesso interventi strutturali ma qui le cose sono peggiorate, quindi se davvero non intervengono, tra poco facciamo prima a mandare i post col piccione XD

  2. non sei il primo che lamenta problemi di lentezza dell'IDE sotto Windows. Che si pianti premendo "Tools" credo sia per il fatto che in quel menu c'è anche il sotto-menu per la scelta della scheda, e probabilmente l'IDE è "bloccato" in attesa che il sistema gli comunichi le periferiche trovate. Ma probabilmente il sistema è a sua volta freezato in attesa di riconoscere la scheda. Prova facendo l'installazione dei driver per la UNO a mano, sono in una sotto-cartella dell'IDE, non so quale però perché io ho Linux

  3. il riconoscimento della nuova UNO R3 è disponibile dalla versione 0023 dell'IDE

Grazie mille per le risposte tempestive (cosa non da poco vedendo appunto la velocità del sito xD).

Non capisco però perchè su due miei PC (e pure su molti di quelli della scuola) l'IDE funziona perfettamente, mentre sul mio fisso no...

Può essere che la causa è Windows 7 32bit, mentre sugli altri PC su cui funziona bene (notebook) c'è Windows 7 64bit ?? O sto dicendo cavolate??

Non so dirti il motivo perché non ho Windows però vedo che questo problema della "lentezza" dell'IDE su Win'7 viene fuori spesso. Prova a fare una ricerca nella sezione internazionale.

Posso confermarlo a scuola sia su 7 che Vista va una che è uno schifo..avrà dei problemi di compatibilità, ma è risaputo che per lavorare l'unica è xp o linux :slight_smile:

  1. il forum sono alcun i mesi che è di una lentezza disarmante. Avevano promesso interventi strutturali ma qui le cose sono peggiorate, quindi se davvero non intervengono, tra poco facciamo prima a mandare i post col piccione smiley-lol

:grin:

mmm... ma in mancanza di piccioni, i segnali di fumo possono andare bene, nel caso mi attrezzo.

Il problema sono i tanti utenti di oggi pensa te 77 utenti con il server piantato, io penso che si tratti di ammutinamento, si danno appuntamento tutti e 77 e per tutto il giorno entrano ed escono continuamente.

Putroppo anche con linux i menu alle volte si piantano, il motivo e semplice, le operazioni che possono piantare la gui vanno fatte in un'altro thread parallelo.

Ciao.

MauroTec:
mmm... ma in mancanza di piccioni, i segnali di fumo possono andare bene, nel caso mi attrezzo.

No, perché il vento potrebbe disperderli :stuck_out_tongue:

Il problema sono i tanti utenti di oggi pensa te 77 utenti con il server piantato, io penso che si tratti di ammutinamento, si danno appuntamento tutti e 77 e per tutto il giorno entrano ed escono continuamente.

Beh, se ragionassimo con un sito nato per gestire 100 utenti che d'improvviso è divenuto famoso ed ora ha 10.000 visitatori giornalieri potrei capirlo, ma qui il forum è strafrequentato e qualche provvedimento bisogna che lo prendano. Così è inusabile.

Putroppo anche con linux i menu alle volte si piantano, il motivo e semplice, le operazioni che possono piantare la gui vanno fatte in un'altro thread parallelo.

Sicuramente nei sai più di me, ma siccome non penso che la GUI di Processing sia stata fatta da "bischeri" (come si dice dalle mie parti), mi pare strano che non abbiano previsto questa cosa... sennò son proprio bischeri XD

MauroTec:
Putroppo anche con linux i menu alle volte si piantano, il motivo e semplice, le operazioni che possono piantare la gui vanno fatte in un'altro thread parallelo.

francamente sono ignorante in materia, in linux so solo programmare un poco in asm e in sh ... la programmazione ad oggetti ce l'hanno isegnata poco e neanche molto bene, me la sono approfondita ma sono ancora a programmi primitivi tipo le calcolatrici, però son contento di farlo con un linguaggio che non aiuta certo come VB.NET o altri che hai già tutta la pappa pronta, in java bisogna disegnare le caselle da codice :slight_smile:

scusate l'OT, MauroTec te che te ne intendi ben più di me conosci qualche tutorial sulla programmazione di linux, vorrei riuscire a creare delle gui però, tipo per pilotare robot o altro, se fossero scritte in sh sarebbe semplificato il lavoro da fare...

Intendi script per la shell? Potresti usare Zenity come interfaccia, è un po' desueto però.

Altrimenti ti posso suggerire Gambas, un BASIC ad oggetti con un'IDE molto completa, con la quale disegni GUI stile VStudio per capirsi. Puoi usare le GTK o le Qt a scelta, ed interfacciarti anche con l'hardware.

Sicuramente nei sai più di me, ma siccome non penso che la GUI di Processing sia stata fatta da "bischeri" (come si dice dalle mie parti), mi pare strano che non abbiano previsto questa cosa... sennò son proprio bischeri smiley-lol

No, non penso siano bischeri, altrimenti lo sarebbero in tanti. Es QtCreator ha un preprocessore potente che analizza il codice sorgente. Quando il progetto aperto è composto da migliaia di file il preprocessore ci mette 1 o più minuti ad analizzare tutti i sorgenti. Le versioni precedenti avviavano il preprocessore nello stesso thread in cui è eseguita la gui, ovviamente la gui non rispondeva più. Ora invece esguendo il preprocessore in altro thread la gui non si blocca più anzi mostra una barra animata durante il lavoro del parser.

Io non faccio uso di thread nei miei programmi e quindi anche questi sono seggetti a questo problema, solo in alcuni casi motivati ricorro ai thread.

scusate l'OT, MauroTec te che te ne intendi ben più di me conosci qualche tutorial sulla programmazione di linux, vorrei riuscire a creare delle gui però, tipo per pilotare robot o altro, se fossero scritte in sh sarebbe semplificato il lavoro da fare...

Non conosco la situazione della doc di Gambas, mi ci avvicinai anni fa e poi abbandonai. Io ho usato python con le Qt4 e mi sono trovato davvero bene, tranne qualche problema con la internazzionalizzazione delle applicazioni, poi risolto con la versione 3 di python.

Python è conosciuto ed ottimamente documentato. Gambas penso che abbia molto da dare, leo ne sa certamente più di me, e quindi non so
c'è davvero l'imbarazzo della scelta. Io ti sconsiglio la shell bash o altra tipo tcl/tk, perchè c'è da investire tanto tempo e con lo stesso tempo ottieni migliori risultati con Gambas o python. Una volta imparato un po di python lo usi in tutte le salse sia GUI che TUI.

Guide c'è ne sono per python a non finire, ci sono anche libri gratuiti, c'è la doc ufficiale tradotta in italiano.

Ciao.

Per la comunicazione seriale con Gambas vai tranquillo, io ci ho scritto tempo fa uno stupidissimo programmino di terminale software con poche righe di codice ed usando i componenti precostituiti del linguaggio per comunicare con la porta. Poi se piace o non piace il BASIC questo è un altro paio di maniche. Io ad esempio non riesco a digerire la filosofia che c'è dietro al Python, che ne fa ai miei occhi un linguaggio da esteti del codice, dove ogni riga deve essere allineata per benino e dove la ricerca dell'ottimizzazione del codice rasenta il paradosso: ho visto "gare" (nel senso letterale del termine) a chi scriveva un algoritmo con il minor numero possibile di istruzioni, arrivando a livelli assurdi di illeggibilità del sorgente.

Se in altri linguaggi esistono più modi per fare la stessa cosa, in Python sembra quasi che ne debba esistere solo una, e per di più essa è anche la più ingarbugliata e criptica. No, non fa per me.

o ad esempio non riesco a digerire la filosofia che c'è dietro al Python, che ne fa ai miei occhi un linguaggio da esteti del codice, dove ogni riga deve essere allineata per benino e dove la ricerca dell'ottimizzazione del codice rasenta il paradosso: ho visto "gare" (nel senso letterale del termine) a chi scriveva un algoritmo con il minor numero possibile di istruzioni, arrivando a livelli assurdi di illeggibilità del sorgente.

Gambas ha grandi potenzialità anche perchè viene con strumenti aggiuntivi integrati, questo ne fa un framework. Python no, nasce nella tradizione *nix, come un linguaggio privo di funzioni GUI. In realtà ti sei lasciato impressionare da cose negative, perchè python nasce proprio per impedire di scrivere codice illegibile. Vero c'è una certa influenza da askel a scivere una riga di codice che fa tante cose complesse e che però non risulta tanto comprensibile, perchè è la logica tradizionale che e stata sovvertita e c'è una naturale resistenza della nostra mente ad immaginare nuovi schemi logici.

Se in altri linguaggi esistono più modi per fare la stessa cosa, in Python sembra quasi che ne debba esistere solo una, e per di più essa è anche la più ingarbugliata e criptica. No, non fa per me.

No no, non è così ci sono più possibilita di fare la stessa cosa, tu avrai visto la più ingarbugliata, e ti sei lasciato impressionare. Però se hai già una certa capacità di sviluppo con Gambas non vedo la necessità di studiare python. Come pure io, avedo delle basi di python non vedo perchè debba dedicare tempo a Gambas. Python fa tutto quello che mi serve e se voglio rapidita di esecuzione uso C++ e Qt come GUI.

Ciao.

Guarda, tempo fa mi ci misi di "buzzo" ad imparare il linguaggio, iscrivendomi anche ad un paio di mailing list e forum. Ma tutti mi dicevano che dovevo fare così oppure fare colà, consigli che per me rendevano solo il codice più ingarbugliato. E siccome secondo me la leggibilità è una gran cosa, perché a distanza di mesi riprendere in mano un sorgente dove una riga mi esegue i compiti di 3/4 righe a me creerebbe grossi problemi, ho desistito.
E cmq la filosofia c'è, parlo dello Zen del Python, una roba che non ho mai visto dietro a nessun linguaggio.

Che poi, per assurdo, va contro la tendenza di comprimere il codice in poche righe dato che lo Zen dice che esplicito è meglio di implicito, chiaro è meglio di ingarbugliato. Sarà che forse ho trovato le persone non adatte per imparare il linguaggio... boh...

E cmq la filosofia c'è, parlo dello Zen del Python, una roba che non ho mai visto dietro a nessun linguaggio.
PEP 20 – The Zen of Python | peps.python.org

Quelle non sono ufficiali, comunque c'è un'orientamente del tipo descritto ma chiamarlo ZEN....

Scommetto che ti sei scontrato con le list comprension List comprehension - Wikipedia

Questo è lo zoccolo duro di cui ti parlavo, le list comprension sono anche per me difficili, alcune estreme non le capisco proprio.
Comunque dopo un po le capisci e le usi e ti sembrano pure leggibili. Io le ho usate con parsimonia, solo constatando che fosse codice più veloce.

Guarda, tempo fa mi ci misi di "buzzo" ad imparare il linguaggio, iscrivendomi anche ad un paio di mailing list e forum.

Io sono iscritto su qui python-it.org - This website is for sale! - python it Resources and Information. e mi manca quel forum, perchè c'è gente in gamba cordiale ecc.
Il guru non che admin è riko.

Ciao.

Grazie Ragazzi dell'ottima discussione, ci ho capito poco negli ultimi interventi ma mi avete fatto capire che ci son molti modi appena troverò del tempo mi rimboccherò le maniche, Scusa matteventu se ti ho "distratto" il topic.. XD