PDA

Visualizza Versione Completa : Ma io sono coglione ???



gnappinox1
05-05-16, 09:00
Si, lo sapevo da un pezzo :bua:

Infatti mi chiedo perché ho iniziato un progettino personale programmando in C con tutte le menate di compilazione del caso, quando potevo usare python o go per far la stessa cosa con molto meno sbattimento, perché? :uhoh:

Perché ho scelto la strada più difficile? x(

Mdk
05-05-16, 09:07
Perchè sei vintage?
Ora scrappa tutto e riparti con AngularJS

alastor
05-05-16, 09:08
perché C masterace

Skywolf
05-05-16, 09:08
Fare certe domande su j4s è come andare a un convegno di gay a chiappe nude e con tatuato sulle medesime un mirino

gnappinox1
05-05-16, 09:14
Perchè sei vintage?
Ora scrappa tutto e riparti con AngularJS
Non se puede, il programma delle leggere dati da una porta seriale e preparare una pagina web per la visualizzazione di grafici, non credo che javascript permetta la lettura da porte com e poi il tutto deve andare su raspberry, dovrebbe essere efficiente.
Il C ha sempre il suo fascino. :asd:


perché C masterace
Of course!


Fare certe domande su j4s è come andare a un convegno di gay a chiappe nude e con tatuato sulle medesime un mirino
Per ora non connetto, non capisco :bua: why?

Mdk
05-05-16, 09:24
Ok, JS non può andare sull'hardware, almeno non credo, ma per la parte web è ottimo perchè sbologna il lavoro ai client che aprono la pagina piuttosto che far macinare del PHP al povero raspberry

BloodMoney
05-05-16, 09:44
A leggere questi topic mi chiedo come faccio questo lavoro se non capisco un ca... di quello che c'è scritto.

A vedere alcuni miei colleghi mi chiedo come facciano a fare questo lavoro se non capiscono un ca... di quello che stanno facendo.

L'equilibrio, lo zen, il ciclo della vita.

koba44
05-05-16, 09:48
Per fare i grafici, go di JS come dice mdkoso.

gnappinox1
05-05-16, 09:56
Ok, JS non può andare sull'hardware, almeno non credo, ma per la parte web è ottimo perchè sbologna il lavoro ai client che aprono la pagina piuttosto che far macinare del PHP al povero raspberry

Non conosco javascript ne tantomeno AngularJS, dovrei studiarlo.


A leggere questi topic mi chiedo come faccio questo lavoro se non capisco un ca... di quello che c'è scritto.

A vedere alcuni miei colleghi mi chiedo come facciano a fare questo lavoro se non capiscono un ca... di quello che stanno facendo.

L'equilibrio, lo zen, il ciclo della vita.

Il cerchio della vita, conosco tanti informatici che non sanno una sega del loro lavoro eppure guadagnano il doppio rispetto a me, quindi se guadagni bene vai tranqui. :thumbup:


Per fare i grafici, go di JS come dice mdkoso.

Infatti ho trovato Chart.js che dovrebbe fare al caso mio, potrei separare il programma in C in due parti, una che si occupa di leggere i dati via seriale e memorizzarli in un database, la seconda parte che fa da server web, e crea la pagina html con i dati e grafico fatto da Chart.js

fulviuz
05-05-16, 10:01
Ok, JS non può andare sull'hardware, almeno non credo, ma per la parte web è ottimo perchè sbologna il lavoro ai client che aprono la pagina piuttosto che far macinare del PHP al povero raspberry

Mai provato, ma quindi è codice visibile dal client come il js? Cioè l'user apre un qualsiasi developer tool da browser e fa un po' quel cazz che vuole? :uhm:

koba44
05-05-16, 10:24
Meglio se fai una cosa del genere: la parte in C legga da seriale e risponda su una porta web alternativa sputando dati grezzi (no html, semplice lista di numeri). Il javascript contenuto nella pagina html principale recuperi questi dati e li grafichi. La pagina web principale può essere servita da un server dedicato (apache ma anche più piccolo) .

Mdk
05-05-16, 10:34
Meglio se fai una cosa del genere: la parte in C legga da seriale e risponda su una porta web alternativa sputando dati grezzi (no html, semplice lista di numeri). Il javascript contenuto nella pagina html principale recuperi questi dati e li grafichi. La pagina web principale può essere servita da un server dedicato (apache ma anche più piccolo) .

Magari non grezzi grezzi ma in JSON
Poi si, serverino NGINX (che a me non piace, ma è light, poi forse per HTML liscio ti basta anche roba più minimale ancora) con pagina statica e JS che legge il file (che sarà nella cartella www del server insieme alla pagina) e lo disegna


Mai provato, ma quindi è codice visibile dal client come il js? Cioè l'user apre un qualsiasi developer tool da browser e fa un po' quel cazz che vuole? :uhm:

Si, per questo devi almeno almeno minimizzarlo, ed ovviamente fare mille controlli di sicurezza lato server, tipo che uno mi cambia il codice utente in GET e vede roba di altra gente, va verificato lato server prima di rispondere

koba44
05-05-16, 10:43
Ma sì magari anche JSON può tornare comodo.

Confermo: pagina html statica con JS che la rende dinamica e si prende la briga di leggere e presentare i dati.

Skywolf
05-05-16, 11:48
Per ora non connetto, non capisco :bua: why?
perché ti aspetta una caterva di insulti, se solo siamo nel mood giusto :D

gnappinox1
05-05-16, 13:07
Magari non grezzi grezzi ma in JSON
Poi si, serverino NGINX (che a me non piace, ma è light, poi forse per HTML liscio ti basta anche roba più minimale ancora) con pagina statica e JS che legge il file (che sarà nella cartella www del server insieme alla pagina) e lo disegna



Si, per questo devi almeno almeno minimizzarlo, ed ovviamente fare mille controlli di sicurezza lato server, tipo che uno mi cambia il codice utente in GET e vede roba di altra gente, va verificato lato server prima di rispondere
Quindi dici di creare il file con i dati del grafico e poi JavaScript se lo piglia e fa il grafico, mi sembra una buona idea, l'unica cosa che non mi gusta è proprio creare sempre il file, mi sembra una soluzione molto grezza 🤔

Ma sì magari anche JSON può tornare comodo.

Confermo: pagina html statica con JS che la rende dinamica e si prende la briga di leggere e presentare i dati.
Ho scoperto l'esistenza dei websocket, in questo modo la pagina potrebbe aggiornare costantemente solo i grafici istantanei, mentre potrebbe aggiornare il resto più lentamente.

Molto interessante, la seconda versione penso di farla così, ormai ho scritto troppo codice per buttarlo senza manco provarlo :bua:

Inviato dal mio Nexus 7 utilizzando Tapatalk

Mdk
05-05-16, 13:20
Beh, o crei il file, o crei la pagina HTML, da qualche parte sti dati li devi buttare
Oppure MySQL/MongoDB, però poi torna il peso sul Rasp

gnappinox1
05-05-16, 13:56
Come database ho visto SQLite che dovrebbe andare benone, devo fare solo qualche test per le prestazioni

Inviato dal mio Nexus 7 utilizzando Tapatalk

Mdk
05-05-16, 14:05
Come database ho visto SQLite che dovrebbe andare benone, devo fare solo qualche test per le prestazioni

Inviato dal mio Nexus 7 utilizzando Tapatalk

Però poi per leggere ti servirà PHP, quindi a sto punto giù col solito Apache
Tutto gestibile dal Raspi B prima edizione, a patto che non hai bisogno di accessi velocissimi a ste pagine

gnappinox1
05-05-16, 14:40
Però poi per leggere ti servirà PHP, quindi a sto punto giù col solito Apache
Tutto gestibile dal Raspi B prima edizione, a patto che non hai bisogno di accessi velocissimi a ste pagine

Ma anche no :asd: usando https://www.gnu.org/software/libmicrohttpd/ posso creare un programma in c che mi fa da server web e che mi restituisce l'unica pagina che mi interessa, alla fine tutta la struttura della pagina dovrà essere statica, posso leggerla da file, l'unica cosa che il raspberry dovrà fare dinamicamente sarà accodare i dati nell'array da scrivere nel javascript.

Facendo fare il refresh ogni chesso 5 secondi, non dovrebbe gravare più di tanto sulla cpu, ma come detto, sono cose che devo testare, non mi sono mai scontrato con cpu scarse :bua:

gnappinox1
05-05-16, 16:09
Primo test di velocità su raspberry, scrivere 1000 record su sqlite prende circa 1 secondo di tempo, ottimo, non mi aspettavo tutta questa velocità

Dopo faccio le prove con il lato web

LordOrion
05-05-16, 16:12
Si, lo sapevo da un pezzo :bua:

Infatti mi chiedo perché ho iniziato un progettino personale programmando in C con tutte le menate di compilazione del caso, quando potevo usare python o go per far la stessa cosa con molto meno sbattimento, perché? :uhoh:

Perché ho scelto la strada più difficile? x(

In che cosa consiste il progettino?
Ho letto di porte seriali...

gnappinox1
05-05-16, 16:57
In che cosa consiste il progettino?
Ho letto di porte seriali...

Allora, riassumendo
A casa con i miei fratelli abbiamo montato dei pannelli solari, sarebbe interessante sapere quanta potenza forniscono e quindi di rimando avere un idea di quanto dovrebbe scalare la bolletta.
Unendo le loro capacità elettroniche e le mie informatiche, stiamo tirando su un sistema che tramite arduino (o pic) legge i sensori di tensione e corrente, poi il raspberry prende questi valori ed oltre a memorizzarli su un database, dovrebbe mettere online una pagina web con i grafici per vedere comodamente l'andamento nel tempo, ed i dati istantanei.

Un piccolo passatempo.:asd:

Biocane
05-05-16, 18:06
Per ora non connetto, non capisco :bua: why?

allora si, è proprio come dici:sisi:

LordOrion
05-05-16, 18:41
Allora, riassumendo
A casa con i miei fratelli abbiamo montato dei pannelli solari, sarebbe interessante sapere quanta potenza forniscono e quindi di rimando avere un idea di quanto dovrebbe scalare la bolletta.
Unendo le loro capacità elettroniche e le mie informatiche, stiamo tirando su un sistema che tramite arduino (o pic) legge i sensori di tensione e corrente, poi il raspberry prende questi valori ed oltre a memorizzarli su un database, dovrebbe mettere online una pagina web con i grafici per vedere comodamente l'andamento nel tempo, ed i dati istantanei.

Un piccolo passatempo.:asd:

Capito.
Se tu avessi una base HW con sistema operativo potresti organizzare il lavoro in due parti distinte: Un processo che si occupa di acquisire i dati dal pannello (scritto in C/C++) e memorizzarli in un DB, che poi viene letto e visualizzato dal front-end web (che può essere scritto in Java, PHP, Sarcazzo).

Io farei cosi' :sisi:

gnappinox1
05-05-16, 20:02
Capito.
Se tu avessi una base HW con sistema operativo potresti organizzare il lavoro in due parti distinte: Un processo che si occupa di acquisire i dati dal pannello (scritto in C/C++) e memorizzarli in un DB, che poi viene letto e visualizzato dal front-end web (che può essere scritto in Java, PHP, Sarcazzo).

Io farei cosi' :sisi:
Ma infatti è quello che penso di fare, solo che il front-end per ora sarà fatto pure in C tanto deve caricare solo poca roba.

Domani vedo di fare qualche test per vedere le prestazioni

Inviato dal mio Nexus 7 utilizzando Tapatalk

Cento Blobfish
05-05-16, 20:29
Beh, o crei il file, o crei la pagina HTML, da qualche parte sti dati li devi buttare
Oppure MySQL/MongoDB, però poi torna il peso sul Rasp

MongoDB nomen omen comunque. Lo odio.

koba44
05-05-16, 20:30
MongoloidDB?

gnappinox1
05-05-16, 20:50
Ahahaha mai usato, al lavoro usiamo sqlite e per quello che deve fare va benissimo, infinitamente meglio dell'access che usavamo prima

Pongo
05-05-16, 20:54
Programmatori :rotfl:

koba44
05-05-16, 20:54
Mongocoso è un NoSQL.

LordOrion
05-05-16, 21:19
Programmatori :rotfl:
"Sviluppatori Software" :nonsifa:

Inviato dal mio Nexus 7 utilizzando Tapatalk

Skywolf
05-05-16, 21:24
Programmatori :rotfl:

Programmavacche :sbav:


http://www.focus.it/site_stored/imgs/0002/024/programmatrici-nude_204643.630x360.jpg

Mdk
06-05-16, 08:53
Neanche mai usato Mongo, son fedele a MySQL, al lavoro invece c'è Oracle e ci si adatta
Comunque di librerie per fare i grafici in JS c'è pieno, chart.js et simili, così non devi fare niente se non fornirgli i dati in formato leggibile (ossia JSON)

KymyA
06-05-16, 08:58
Non se puede, il programma delle leggere dati da una porta seriale e preparare una pagina web per la visualizzazione di grafici, non credo che javascript permetta la lettura da porte com e poi il tutto deve andare su raspberry, dovrebbe essere efficiente.
Il C ha sempre il suo fascino. :asd:


Of course!


Per ora non connetto, non capisco :bua: why?

Porte seriali? Webapp? Cazzisupersonici?
Ho già avuto a che fare.

Serie di tablet che, alla lettura di un barcode, richiedono dato e lo sparano via seriale ad un plc ad esso collegato...
Ma tu vuoi fare una cosa molto più semplice quindi FATTELATU

BlackCaesar
06-05-16, 09:29
Si, lo sapevo da un pezzo :bua:

Infatti mi chiedo perché ho iniziato un progettino personale programmando in C con tutte le menate di compilazione del caso, quando potevo usare python o go per far la stessa cosa con molto meno sbattimento, perché? :uhoh:

Perché ho scelto la strada più difficile? x(

Se non usi solo void* in C sei naab.

Su javascript basta questo video (1:26)

https://www.destroyallsoftware.com/talks/wat

freddye78
06-05-16, 14:19
Programmavacche :sbav:


http://www.focus.it/site_stored/imgs/0002/024/programmatrici-nude_204643.630x360.jpg
C'è PM? :pippotto:

gnappinox1
06-05-16, 15:20
Se non usi solo void* in C sei naab.

Su javascript basta questo video (1:26)

https://www.destroyallsoftware.com/talks/wat

Ese usare solo void* già è un dito nel culo così :bua:

La parte web sembra fungere, conoscete qualche programma per fare lo stress test del sito per vedere quanti utenti riesce a servire?

gnappinox1
10-05-16, 14:43
Uppo per dire che il raspberry mi ha smerdato di nuovo la SD :arrabbiato::arrabbiato:, eccheccazzo, vediamo se amazon me la rimborsa.
Intanto ora ci penso io con il raspcoso :stress:

fulviuz
10-05-16, 15:00
Ultimamente stan facendo le SD col culo o mandano in giro quelle non testate per risparmiare perché me se ne svapa una ogni estate.

Mdk
10-05-16, 15:54
No dico, ho appena creato un mostro di Frankenstein versione web
Praticamente una tabella JSON, disegnata da Angular, che alla fine di ogni redraw (filtro, paginazione, resize browser, ecc) chiama una funzione semi-Jquery, la quale inserisce delle regole CSS nell'<head> dell'HTML per nascondere le colonne che altrimenti sformatterebbero la larghezza della pagina :sisi:
Lo so, è tipo la cosa più orribile che abbiate mai letto ma credetemi, funziona, e non avete mai visto una tabella così responsive in vita vostra :sisi:
Elimina le colonne in esubero da destra a sinistra (maledetti arabi, vogliono colonizzarci) tra quelle che marchiate come non indispensabili finchè non ci entra, e quando allargate la finestra prova a ridisegnarle finchè non ci entrano senza sformattare

gnappinox1
10-05-16, 16:07
No dico, ho appena creato un mostro di Frankenstein versione web
Praticamente una tabella JSON, disegnata da Angular, che alla fine di ogni redraw (filtro, paginazione, resize browser, ecc) chiama una funzione semi-Jquery, la quale inserisce delle regole CSS nell'<head> dell'HTML per nascondere le colonne che altrimenti sformatterebbero la larghezza della pagina :sisi:
Lo so, è tipo la cosa più orribile che abbiate mai letto ma credetemi, funziona, e non avete mai visto una tabella così responsive in vita vostra :sisi:
Elimina le colonne in esubero da destra a sinistra (maledetti arabi, vogliono colonizzarci) tra quelle che marchiate come non indispensabili finchè non ci entra, e quando allargate la finestra prova a ridisegnarle finchè non ci entrano senza sformattare

Uhooo, spesso le soluzioni più grezze ed ignoranti sono quelle che funzionano subito :asd:

edit:

Amazon mi rispedisce una sd nuova, fiquo! :bellali:

Ora ci penso io con il raspcoso, sulla sd ci metto solo il boot, e poi installerò il tutto su un hd usb di recupero, vediamo se riesce a smerdarmi anche questo!

Mdk
10-05-16, 16:10
Uhooo, spesso le soluzioni più grezze ed ignoranti sono quelle che funzionano subito :asd:

"Funzionano subito"
C'ero dietro da 2 settimane, tentato mille approcci, un casino.. poi ho mischiato tutto ed ha funzionato
Prossimo step eliminare la parte JQ trasformandola in Angular (che tanto di JQ c'è poco, è quasi tutto JS grezzo) e applicare il css solo alla tabella che lo richiede anzichè come regola globale

gnappinox1
10-05-16, 16:22
Funzionano subito, nel senso che le implementi e vanno, non devi stare dietro ai vari casini che spuntano tra linguaggio di programmazione, sistema operativo e conoscenza non esatta del tutto.

Tipo io, per un programma dovevo leggere dei dati via seriale, all'inizio uso gli eventi forniti da windows e dal linguaggio di programmazione, funzionava, ma ogni tanto qualcosa scazzava e non veniva lanciato l'evento di byte in ingresso.

Ci sono stato una settimana dietro, poi con i coglioni che giravano, ho dato un colpo di canc a tutto ed ho implementato la mia soluzione grezza, creato un thread che in un ciclo infinito legge costantemente la seriale e buonanotte, da quel momento non ha perso nemmeno un byte.

Mdk
11-05-16, 08:50
Funzionano subito, nel senso che le implementi e vanno, non devi stare dietro ai vari casini che spuntano tra linguaggio di programmazione, sistema operativo e conoscenza non esatta del tutto.

Tipo io, per un programma dovevo leggere dei dati via seriale, all'inizio uso gli eventi forniti da windows e dal linguaggio di programmazione, funzionava, ma ogni tanto qualcosa scazzava e non veniva lanciato l'evento di byte in ingresso.

Ci sono stato una settimana dietro, poi con i coglioni che giravano, ho dato un colpo di canc a tutto ed ho implementato la mia soluzione grezza, creato un thread che in un ciclo infinito legge costantemente la seriale e buonanotte, da quel momento non ha perso nemmeno un byte.

Il bello è che ora sta soluzione è compatibile anche con IE, stranamente, e invece Bootstrap sta dando problemi, vabbè

gnappinox1
15-05-16, 19:21
News, lo sviluppo procede un po' lentamente perché ho la mano destra infortunata, ma faccio passi avanti.
Ho scoperto che le Glib gestiscono i thread e buona parte delle strutture dati che fornisce sono thread safe!

Ottimo, mi risparmio il lavoro di gestire i mutex!

Mdk
16-05-16, 08:30
News, lo sviluppo procede un po' lentamente perché ho la mano destra infortunata, ma faccio passi avanti.
Ho scoperto che le Glib gestiscono i thread e buona parte delle strutture dati che fornisce sono thread safe!

Ottimo, mi risparmio il lavoro di gestire i mutex!

Io invece sto alle prese con l'autenticazione in modo che sia sicura anche con AngularJS, visto che è tutto in client

gnappinox1
16-05-16, 09:03
Non sono ferrato in questo campo, ma anche se l'applicazione è tutta su client, un "server" deve esserci comunque giusto?
Altra domanda, il javascript si può offuscare come codice?, per evitare che ti freghino il programma e lo modifichino per i loro comodi :uhm:

Mdk
16-05-16, 09:14
Non sono ferrato in questo campo, ma anche se l'applicazione è tutta su client, un "server" deve esserci comunque giusto?
Altra domanda, il javascript si può offuscare come codice?, per evitare che ti freghino il programma e lo modifichino per i loro comodi :uhm:

Senza le sessioni PHP lato server si aprono un po di problemi di sicurezza... tipo che se scrivi "role: user" in una variabile o un cookie che sono sul client e l'utente modifica in "role: admin" devo poter sapere che non è veramente un admin :sisi:
Il JSON web token sembra fare al caso mio :sisi:

Il JS si può minimizzare ma fine li, esistono de-minimizzatori, il codice sarà sempre interamente lato client in chiaro altrimenti il browser non potrebbe eseguirlo... poi se scrivi una roba indecifrabile ai più è un altro conto :sisi:

KymyA
16-05-16, 10:07
non puoi codificare i cookie con un tuo merdosissimo algoritmo o qualcosa di già pronto? io faccio così... evito pure che si usino caratteri di mmmmerdah....

lato client... giusto... si vedrebbe anche l'algoritmo...
Tranne se il client, autenticato, ha in risposta dal server la stringa codificata da memorizzare nel cookie...

Mdk
16-05-16, 10:26
non puoi codificare i cookie con un tuo merdosissimo algoritmo o qualcosa di già pronto? io faccio così... evito pure che si usino caratteri di mmmmerdah....

lato client... giusto... si vedrebbe anche l'algoritmo...
Tranne se il client, autenticato, ha in risposta dal server la stringa codificata da memorizzare nel cookie...

Che è quello che fa il JWT
Il problema è che volevo far funzionare il tutto anche offline, il che comporta non pochi problemi con l'autenticazione, penso che la lascerò come ultima opzione se fattibile

gnappinox1
19-05-16, 09:17
Riuppo con aggiornamenti, tanto lo so che fottesegate :asd:, ma almeno faccio il punto della situazione

La prima beta è quasi pronta, ieri ho risolto dei memory leak mostruosi, del tipo che in 10 minuti la memoria occupata dal programma è passata da 400kb a 30mb :bua:
Mi ero scordato che in C tutto quello che alloco, va poi deallocato :asd:

Le Glib si stanno rivelando davvero fighissime come librerie, semplici da capire/usare e con della bella documentazione.


Senza le sessioni PHP lato server si aprono un po di problemi di sicurezza... tipo che se scrivi "role: user" in una variabile o un cookie che sono sul client e l'utente modifica in "role: admin" devo poter sapere che non è veramente un admin :sisi:
Il JSON web token sembra fare al caso mio :sisi:

Il JS si può minimizzare ma fine li, esistono de-minimizzatori, il codice sarà sempre interamente lato client in chiaro altrimenti il browser non potrebbe eseguirlo... poi se scrivi una roba indecifrabile ai più è un altro conto :sisi:


non puoi codificare i cookie con un tuo merdosissimo algoritmo o qualcosa di già pronto? io faccio così... evito pure che si usino caratteri di mmmmerdah....

lato client... giusto... si vedrebbe anche l'algoritmo...
Tranne se il client, autenticato, ha in risposta dal server la stringa codificata da memorizzare nel cookie...

Appena finisco questo progetto, devo cercare di dedicarmi su un qualcosa web based, ho delle grosse lacune in questo campo, devo mettermici d'impegno, anche perchè odio l'html quasi quanto l'assembler :bua:

Mdk
19-05-16, 09:20
Appena finisco questo progetto, devo cercare di dedicarmi su un qualcosa web based, ho delle grosse lacune in questo campo, devo mettermici d'impegno, anche perchè odio l'html quasi quanto l'assembler :bua:

Vabbè ma ormai l'HTML liscio è un ricordo, sono i quadretti del foglio che servono solo per farti scrivere dritto il contenuto, non credo nessuno faccia più neanche la traccia di un sito senza integrarci Bootstrap, che praticamente ha tanti di quegli elementi già pronti da usare che appunto l'HTML è formalità

gnappinox1
19-05-16, 09:25
Vedremo, tra questo fine settimana ed il prossimo dovrei finire la beta di questo progetto, vedrò di trovare qualcosa per rispolverare il lato web.

Rot Teufel
19-05-16, 10:21
Programmavacche :sbav:
http://www.focus.it/site_stored/imgs/0002/024/programmatrici-nude_204643.630x360.jpg]


Pm dell'originale :pippotto:

gnappinox1
24-05-16, 17:17
E' una palla passare tutte le librerie al gcc per compilare, dovrei studiare il CMake, ma comunque questo si vedrà in futuro!
MDK, cosa mi consigli per iniziare con angularJS ?
Poi, una curiosità dato che è tutto javascript, come gestisci la parte server?, o non usi parte server e ti colleghi direttamente al database?

Lux !
24-05-16, 17:27
A leggere questi topic mi chiedo come faccio questo lavoro se non capisco un ca... di quello che c'è scritto.

A vedere alcuni miei colleghi mi chiedo come facciano a fare questo lavoro se non capiscono un ca... di quello che stanno facendo.

L'equilibrio, lo zen, il ciclo della vita.

Il copia-incolla :snob:

Mdk
25-05-16, 08:25
E' una palla passare tutte le librerie al gcc per compilare, dovrei studiare il CMake, ma comunque questo si vedrà in futuro!
MDK, cosa mi consigli per iniziare con angularJS ?
Poi, una curiosità dato che è tutto javascript, come gestisci la parte server?, o non usi parte server e ti colleghi direttamente al database?

Il JS non si collega direttamente al DB :uhm:
Per il server ho PHP con delle API base base: api.php?service=customers&id=12 / api.php?service=login / ecc
Ritornano un bel JSON da pastrugnare con Angular
Per iniziare prendi il tutorial sul sito, quello che fa un visualizzatore di cellulari mi pare, e poi da li espandi tramite il sacro StackOverflow :sisi:

gnappinox1
25-05-16, 08:27
Grazie, sempre sia lodato StackOverflow :asd:

Mdk
25-05-16, 08:32
Grazie, sempre sia lodato StackOverflow :asd:

Preparati a valanghe di console.log e var_dump();die() per debuggare il mondo AJS/PHP, soprattutto quando si tratta di richiete in AJAX.. e soprattutto, la console di Chrome è la tua migliore amica

gnappinox1
25-05-16, 10:13
Preparati a valanghe di console.log e var_dump();die() per debuggare il mondo AJS/PHP, soprattutto quando si tratta di richiete in AJAX.. e soprattutto, la console di Chrome è la tua migliore amica

Per questo odio i linguaggi interpretati!

gnappinox1
21-09-16, 10:18
Riuppo per dire che il raspberry si trova online da più o meno 1 mese acceso H24 salvo interruzioni di corrente.

Il sito è stupidissimo, solo la home page con i grafici

http://gnappo.ddns.net:10000/

Sto studiando un po' di angular per fare il resto del sito, principalmente vorrei fare la parte "storica" dove mettendo da -> a il sito mi tira fuori il grafico corrispondente a quella data con i relativi calcoli.

Tutto viaggia sul primo raspberry da 512mb di ram, per evitare di smerdare la scheda sd con le continue scritture al database ho messo il tutto su un ramdisk (si fulviuz, RAMDISK :sisi: )
Per poter compilare il programma su raspberry usando CMAKE ho dovuto bestemmiare 7 divinità tra maggiori e minori :asd:

Durante le prime prove di lunga durata ho riscontrato dei paurosi memory leak :bua: il programma partiva usando 6mb di ram dopo 24 ore era arrivato a cosumarne 150 :bua: dopo un attento controllo con valgrind ho capito l'origine dei memory leak e li ho risolti, adesso il programma non supera i 10mb di ram utilizzata.

Solo una cosa non capisco, ho risolto i memory leak, la ram usata dal processo è sempre la stessa ( più o meno ), ma la memoria virtuale assegnata a tutto il programma è di 60mb, non capisco perché, il sistema operativo assegna tutta sta memoria virtuale quando la memoria reale usata è dieci volte inferiore :uhm:

Mdk
21-09-16, 11:00
Ma dumpi ogni notte la roba da ram a SD o te ne freghi di eventuali riavvii accidentali e relative perdite dati? :uhm:
Se vuoi consulenza Angular chiedi pure

gnappinox1
21-09-16, 11:53
Il dump lo faccio a mano quando me ne ricordo :asd: ancora è in una fase di "test", ma ora che mi ci hai fatto pensare vado ad impostare un crontab :sisi:

Per la consulenza chiederò :asd:

NoNickName
21-09-16, 12:00
Si, lo sapevo da un pezzo :bua:

Infatti mi chiedo perché ho iniziato un progettino personale programmando in C con tutte le menate di compilazione del caso, quando potevo usare python o go per far la stessa cosa con molto meno sbattimento, perché? :uhoh:

Perché ho scelto la strada più difficile? x(

di strade facili è lastricato l'inferno (no spe era diversa)

Nandos
21-09-16, 18:12
Ma proprio in C puro, nudo e crudo? :bua: tu stai male

gnappinox1
21-09-16, 22:15
di strade facili è lastricato l'inferno (no spe era diversa)
Già :asd:


Ma proprio in C puro, nudo e crudo? :bua: tu stai male

Non proprio nudo e crudo, ho usato
glib -> per strutture dati dinamiche, lavorare con stringhe e gestire i thread
libmicrohttp -> per generare un micro server web
libsqlite3 -> per gestire l'omonimo database
libserial qualcosa -> per le porte seriali
cjson -> per scrivere e leggere i file json
ed ho ottenuto un applicazione che pesa quasi niente sul raspberry :sisi: :smugranking:

E' stata una scoperta/riscoperta non avevo mai fatto un progetto in C così grande ( e questo è piccolino eh :bua: ) volendo mi ci sono divertito, ho cristonato un paio di volte quando mi rendevo conto che non potevo scrivere codice ad oggetti, ma poi mi ci sono trovato.

Il dito nel culo è stato capire come far funzionare cmake per la compilazione, ma poi vedere tutto all'opera da una grande soddisfazione :sisi:

Nandos
21-09-16, 22:33
Bravo :sisi: