Piero V.

Il mini mixer procede bene

Ieri avevo parlato dei miei progetti per Agosto.

Primo di tutti era finire il mio mini mixer.

Bene, oggi pomeriggio ci ho lavorato sopra. Avevo già sistemato i preamplificatori per i microfoni e il Ruby per la chitarra, però mi mancava ancora ciò che mi mette insieme i canali e l’equalizzatore generale, entrambi sulla stessa PCB.

Oggi ho forato la PCB e ci ho stagnato quasi tutto.

Nel dettaglio: in una prima fase ho fatto penso poco più di metà fori, poi, dopo una pausa volevo stampare la PCB per vedere quali mi mancavano, così mi sono accorto di non aver scritto i valori dei componenti! D’OH! Non devo più ripetere questo errore le prossime volte. Così ho perso una mezz’oretta per ritrovare che componenti erano in quale posizione.

Una volta che mi pareva di aver fatto tutti i fori ed essermi fatto pungere miliardi di volte da zanzare fameliche raccatto tutti i componenti e mi metto a stagnarli. O meglio, penso di poter farlo: al primo componente mi sono accorto di essermi dimenticato di fargli un foro. Così, dopo che avevo già messo via punta e trapano mi tocca tirarli fuori di nuovo e fare il tutto.

Finalmente, dopo aver messo le resistenze, i dannati zoccoli per circuiti integrati e i condensatori elettrolitici, sono potuto passare ai condensatori di pellicola. Al che mi sono accorto che mi sono dimenticato un altro foro.

Così per oggi ho lasciato perdere (erano le 19 passate) e ho deciso di terminare domani nella tarda mattinata.

Mi mancano ancora 5 resistenze e penso altrettanti condensatori, senza contare tutti i potenziometri, che sono al di fuori della scheda. Tuttavia, questi ultimi li salderò solo dopo che avrò fatto la scatola dove mettere dentro il tutto.

Inoltre mi manca anche l’alimentatore, che è la cosa che mi preoccupa di più: il vecchio amplificatore che ho trovato assorbe, a una tensione di 12V, 4A che per i miei gusti non sono poche.

Stavo pensando che magari per provare gli altri elementi del mixer potrei alimentarli con il trasformatore degli effetti, in modo da rischiare meno.

Avrei voluto fare qualche foto ma sono troppo stanco per andare a farle, perciò magari le posterò a lavoro ultimato 😉

Uffa

ventiduesimo.jpg

Quest’immagine rappresenta il problema delle chitarre Fender… il ventiduesimo tasto.

Nella mia poi è piuttosto problematico e mi impedisce di fare certi assoli…

Certo che dopo tutto ciò che ha portato di innovativo la Stratocaster nella storia della chitarra, avere questi problemi qui è proprio insensato!

Benchmark natsort al contrario

Sta notte, mentre non riuscivo a dormire mi sono chiesto se è più veloce natsort con array_reverse oppure usort con -strnatcmp.

La risposta più o meno me l’aspettavo già, però non pensavo la differenza fosse così tanto abissale come vi farò vedere dopo.

Come benchmark ho generato un array col ciclo for di 10^6 elementi e poi li ho messi a caso. Ho dato ad entrambe le funzioni il medesimo array, in modo da fare un test il meno influenzato possibile.

Ho eseguito il test sia per il for che incrementa i valori ($i++), sia per quello che li decrementa ($i–).

Un’ultima considerazione: secondo me non sono importanti i risultati assoluti ma quelli relativi, in quanto non volevo fare il test della macchina, che so non essere tra le migliori.

Insomma, so che si potrebbe fare senza dubbio di meglio come test, magari anche in 64bit.

Ed ecco i risultati:

VDFN Benchmark

Natsort al contrario, for crescente.

Natsort + array_reverse
Tempo: 31.985618114471s
Memoria di picco: 175.97104263306MB

usort (-strnatcmp)
Tempo: 74.302319049835s
Memoria di picco: 175.97214508057MB

Come vedete con usort e il mio callback ci mette più del doppio, mentre la RAM ha valori molto, molto vicini. … [Leggi il resto]

Somiglianze dei linguaggi di programmazione

I linguaggi di programmazione sono delle vere e proprie lingue e come esse hanno la caratteristica di avere punti in comune.

Ieri, dopo la mia brutta esperienza con i PIC, ho cercato di portare un software fatto in PIC Basic in C per Arduino.

Di basic non avevo mai preso nulla in mano, invece il C so più o meno la struttura del linguaggio e fare i classici programmini banali ma non lo so approfonditamente, o almeno senza guida.

Devo dire che però è stato abbastanza facile portare quel codice ad Arduino: grazie alle conoscenze di PHP e di Javascript mi trovo molto bene in C perché come struttura stretta del linguaggio sono abbastanza comuni. Forse il mio unico problema sono le variabili nei programmi compilati. Anche la mia gavetta in Pascal mi è stata utile: il PIC Basic è molto simile al Pascal, quindi di parentesi non ce n’è neanche l’ombra e quindi, per esempio, gli IF utilizzano l’ENDIF un po’ come nel bascal IF ... THEN BEGIN... END.

Inoltre le funzioni che si possono eseguire sui micro controllori sono in un numero abbastanza ristretto e spesso tra un linguaggio e l’altro cambia solo il modo in cui sono scritte (bitClean al posto di CLEANBIT).

Perciò fidatevi quando vi dico di imparare bene un linguaggio di programmazione se ne volete imparare di altri perché poi ciò che sapete già vi può aiutare ad imparare più velocemente altro, come è un po’ in generale e non solo in programmazione.

Plugin Tag (v2.5) [Flatpress]

English

This is an update for the Tag Plugin.

Changelog:

  • Fixed entities problems on the tag listing
  • Fixed the problem with the manual [more]
  • Modified the entry editor (suggestion feature requires jQuery)

Known bugs:

  • If you haven’t Javascript enabled and you click on Save and continue you see both the tag tag and both the tag field. This is a limit of Flatpress, I can’t do anything.

License: GNU GPLv2

Download: tag_v2.5.tar.gz

Italiano

Ecco un aggiornamento per il Plugin Tag.

Changelog:

  • Sistemato un problema di validazione con la liste dai Tag
  • Sistemato un problema con il [more] manuale
  • Modificato l’editor dei post (i suggerimenti richiedono jQuery)

Bug conosciuti:

  • Se non hai abilitato Javascript o non hai jQuery, quando clicchi Salva e continua vengono fuori i tag sia nella textarea, sia nel campo apposito. Sono spiacente ma pare essere un limite di Flatpress.

Licenza: GNU GPLv2

Download: tag_v2.5.tar.gz