Posted by lesion on Jan 17, 2011 in
General
Questo e’ un problema decisamente comune per qualsiasi dispositivo che ne possiede uno. Parlo dell’uscita audio, il buchino dove infilate le cuffie per intenderci. Non so a quanti sia capitato, comunque sia, arriva un momento nella vita in cui infilando le vostre cuffie dentro questi buchini, l’audio inizia ad andare a scatti o proprio a non sentirsi nulla e ritorna a funzionare provando a premere verso una direzione specifica, a fare pressione o leva verso il basso o girando il jack di 27,2 radianti in presenza di luna piena.
Questa qui sopra e’ la scheda madre di un mio vecchio portatile che vorrei utilizzare in un progetto di cui scrivero’ nei prossimi giorni la cui entrata audio soffre appunto di questo problema; il suo stato e’ decisamente buono, gli manca solo la tastiera e appunto un’uscita audio funzionante. La prima mancanza non e’ un problema per le mie intenzioni, ma il jack audio funzionante e’ un requisito fondamentale.
Oggi quindi, mi sono deciso a prendere in mano il vecchio amico saldatore per scambiare l’entrata del microfono con quello dell’uscita. Siccome mi e’ gia’ capitato parecchie volte, sono abbastanza sicuro che il problema sia dovuto all’usura dell’uscita audio, mentre l’entrata del microfono e’ stata utilizzata molto meno quindi spero sia ancora funzionante.
Entrambe le entrate hanno 6 pin, sono un po’ tanti per i miei gusti ma immagino che queste entrate siano state progettate cosi’ per “capire” quando un jack e’ inserito o meno e disabilitare l’audio dagli autoparlanti interni in quel caso, comunque a noi questo interessa poco.
Prepariamo il banco da lavoro, iniziamo a scaldare il saldatore e iniziamo a dissaldare con pazienza. Bisogna essere molto svelti e palleggiare con il saldatore tra i vari piedini cercando di fare in tempo per non lasciarli raffreddare del tutto e nel mentre tirare verso il basso tutto il connettore. Cominciare da quello rotto e’ una buona idea perche’ eventuali danni che subira’ non saranno per noi importanti; qui infatti ho tirato troppo il connettore e alcuni pin sono rimasti attaccati alla scheda madre invece che al connettore, poco male.
Quest’ultimo invece e’ venuto piu’ pulito e conserva intatti tutti i piedini fortunatamente.
Ora che abbiamo i nostri bei jack dissaldati, tentiamo di risaldare il rosso (il microfono) nella posizione precedentemente occupata dal verde (l’entrata cuffie).
Segnatevi la posizione dove andra’ risaldato perche’ altrimenti vi tocchera’ rifare due volte il lavoro (come dimostrato qui sotto):
Ed ecco il risultato finale:
Tags: audio, fix, jack
Posted by lesion on Sep 12, 2008 in
Stuff
Only a stupid python wrapper to manage the beautiful Transmission BitTorrent Client through its new JSONRPC interface.
You can find an old wrapper here
but ’cause from Transmission 1.33 the way you can manage it, it’s jsonrpc and not unix-socket anymore, a new module is needed.
You can download code from svn:
svn checkout http://svn.ventotto.org/fluibile/trunk/python-transmission python-transmission
If you are a fan of tar.gz try this, and a debian package here..
enjoy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
| #!/usr/bin/env python
# please run transmission-daemon before this!
from transmissionClient import TransmissionClient
# by default, managed transmission is in local machine
# but you can specify another url using:
# client = TransmissionClient( 'http://anotherMachineIp:9091/transmission/rpc' )
client = TransmissionClient()
>>> client.sessionGet()
{u'arguments': {u'pex-allowed': 1, u'port-forwarding-enabled': 0, u'encryption': u'preferred', u'speed-limit-up': 102400, u'download-dir': u'/home/lesion/Transmission/libtransmission', u'speed-limit-down': 51200, u'speed-limit-up-enabled': 0, u'peer-limit': 200, u'speed-limit-down-enabled': 1, u'port': 51413}, u'result': u'success'}
>>> client.sessionSet( 'download-dir', '/home/lesion/download' )
{u'arguments': {}, u'result': u'success'}
>>> client.torrentAdd( '/home/lesion/Waking.Life.LiMITED.DVDivX-QiX.avi [mininova].torrent' )
{u'arguments': {u'torrent-added': {u'hashString': u'c4271ed4ac8ad3813d0ece733207ca8c38c41b41', u'id': 3, u'name': u'Waking.Life.LiMITED.DVDivX-QiX.avi'}}, u'result': u'success'}
>>> client.sessionStats()
{u'arguments': {u'session-stats': {u'torrentCount': 1, u'activeTorrentCount': 1, u'downloadSpeed': 0, u'pausedTorrentCount': 0, u'uploadSpeed': 0}}, u'result': u'success'}
>>> client.torrentGet()
{u'arguments': {u'torrents': [{u'id': 3, u'name': u'Waking.Life.LiMITED.DVDivX-QiX.avi'}]}, u'result': u'success'}
>>> client.torrentGet( fields=['seeders', 'name', 'id', 'peersConnected', 'comment', 'leechers', 'totalSize' ] )
{u'arguments': {u'torrents': [{u'comment': u'Waking Life (2001), Directed by Richard Linklater, imdb.com/title/tt0243017/ (synch ok)', u'seeders': 23, u'name': u'Waking.Life.LiMITED.DVDivX-QiX.avi', u'totalSize': 730845184, u'leechers': 11, u'id': 3, u'peersConnected': 25}]}, u'result': u'success'}
>>> client.torrentRemove( 3 )
{u'arguments': {}, u'result': u'success'} |
#!/usr/bin/env python
# please run transmission-daemon before this!
from transmissionClient import TransmissionClient
# by default, managed transmission is in local machine
# but you can specify another url using:
# client = TransmissionClient( 'http://anotherMachineIp:9091/transmission/rpc' )
client = TransmissionClient()
>>> client.sessionGet()
{u'arguments': {u'pex-allowed': 1, u'port-forwarding-enabled': 0, u'encryption': u'preferred', u'speed-limit-up': 102400, u'download-dir': u'/home/lesion/Transmission/libtransmission', u'speed-limit-down': 51200, u'speed-limit-up-enabled': 0, u'peer-limit': 200, u'speed-limit-down-enabled': 1, u'port': 51413}, u'result': u'success'}
>>> client.sessionSet( 'download-dir', '/home/lesion/download' )
{u'arguments': {}, u'result': u'success'}
>>> client.torrentAdd( '/home/lesion/Waking.Life.LiMITED.DVDivX-QiX.avi [mininova].torrent' )
{u'arguments': {u'torrent-added': {u'hashString': u'c4271ed4ac8ad3813d0ece733207ca8c38c41b41', u'id': 3, u'name': u'Waking.Life.LiMITED.DVDivX-QiX.avi'}}, u'result': u'success'}
>>> client.sessionStats()
{u'arguments': {u'session-stats': {u'torrentCount': 1, u'activeTorrentCount': 1, u'downloadSpeed': 0, u'pausedTorrentCount': 0, u'uploadSpeed': 0}}, u'result': u'success'}
>>> client.torrentGet()
{u'arguments': {u'torrents': [{u'id': 3, u'name': u'Waking.Life.LiMITED.DVDivX-QiX.avi'}]}, u'result': u'success'}
>>> client.torrentGet( fields=['seeders', 'name', 'id', 'peersConnected', 'comment', 'leechers', 'totalSize' ] )
{u'arguments': {u'torrents': [{u'comment': u'Waking Life (2001), Directed by Richard Linklater, imdb.com/title/tt0243017/ (synch ok)', u'seeders': 23, u'name': u'Waking.Life.LiMITED.DVDivX-QiX.avi', u'totalSize': 730845184, u'leechers': 11, u'id': 3, u'peersConnected': 25}]}, u'result': u'success'}
>>> client.torrentRemove( 3 )
{u'arguments': {}, u'result': u'success'}
Posted by lesion on Oct 14, 2007 in
Stuff
Non mi piacciono gli attaccamenti, mai piaciuti, come a tutti gli animali solitari e diffidenti. Mi e’ sempre piaciuto avere rapporti saltuari con le persone empaticamente ok; distaccati, che almeno quando ci si vede si ha davvero qualcosa da raccontare, qualcosa di serio e profondo di cui discutere, non le solite cose tipo i ciaoComeStaiTuttoBeneETuCom’e’?IoAnche.
Ho sempre preferito non aspettarmi nulla dalle persone, in questo modo sei sempre contento di quello che arriva, e indifferente negli altri casi. Naturalmente e’ anche un modo per giustificare il fatto che le altre persone non debbano aspettarsi nulla da te, ma prendere quello che arriva. Se la base comune e’ la bella vita, nessuno rimarra’ deluso con questa strategia, ci sono solo soddisfazioni e una enorme sicurezza in se stessi, la paura non esiste, soprattutto quella di perdere cose/persone a cui teniamo, ma si e’ sempre in uno stato di pace interiore, idee chiare e poca confusione, gelosia e senso di proprieta’ inesistente.
Negli ultimi 3 anni pero’ mi sono affezionato ad una personcina che mi ha fatto notare come sia squallido porre un muro tra la propria persona e il mondo circostante, come davvero ti faccia sentire solo, come ci si sente invece se si prova ad abbassare un pochino quella barriera e lasciarci entrare qualcuno, fidarsi. Vero, puo’ risultare pericoloso, puo’ compromettere tutti i nostri ragionamenti piu’ intimi e farci cambiare prospettive, distruggere tutte le nostre sicurezze, pero’ why not?.
E quindi proviamo a fare questa cosa di lanciarsi a capofitto in una cosa nuova, che ti prende in ogni aspetto, ti riempie e ti cambia, ti rivoluziona, anche nei tuoi ragionamenti piu’ intimi, i tuoi punti fissi, la tua stabilita’.
Una cosa che mi e’ sempre piaciuta un sacco durante l’adolescenza e’ che credevo di possedere solo io (probabilmente per paura di parlarne in giro, o per paura di essere smentito), era quella di riuscire a "salvare" uno stato in cui si trovava la mia mente, e a "riattivarlo" tempo dopo per tenere sotto controllo i vari cambiamenti di opinione, sentimenti, gli obiettivi e i ragionamenti con un raffronto tra lo "stato" attuale e quello o quelli salvati. Sono sempre stato convinto che in questo modo sono cresciuto spaventosamente in quegli anni, cioe’ ragionando sul cambiamento di assetto dei miei ragionamenti.
Tutti i sensi del nostro corpo funzionano cosi’, notano in particolar modo le "variazioni" ambientali, ovvero quanto caotica e’ l’informazione che viene percepita. Comunque la cosa piu’ divertente era in realta’ riuscire a farlo con le altre persone, mi sembrava quasi di poter percepire i loro pensieri e di vivere nelle loro teste in prima persona. Tutto questo era ovviamente un inganno del mio ego troppo sviluppato, che pero’ funzionava molto spesso e mi permetteva di cogliere le persone in anticipo e di stupirle perche’ ci prendevo spesso, e con le persone adulte ricordo che piu’ che immedesimarmi sui ragionamenti ne sentivo i sentimenti. Credendo di essere intoccabile nei ragionamenti, di essere un’unita’ unica, con un filtro tra te e il mondo che passa sempre in secondo piano rispetto ai tuoi punti fissi, puoi fare di questi raffronti, credi di poter comunque renderti conto dei cambiamenti, di quello che ti succede dentro e soprattutto di chi o cosa l’ha fatto succedere e se era voluto, aspettato o meno. Questo rendersi conto dei cambiamenti interni mi ha sempre fatto impazzire di curiosita’, percepire contemporaneamente 2 o piu’ stati mentali, come essere persone diverse.
Senza la barriera ci sono altri divertimenti, puoi evitare di fare attenzione viverti veramente la vita come ti si presenta, senza paure o pregiudizi, aperto a tutto, anche alle delusioni pero’, alle paure. Il senso di proprieta’ e la gelosia sono comunque inesistenti, anche perche’ queste non dipendono dalla strategia di vita ma dalla tua personalita’, pero’ sono le aspettative che cambiano.
Hai delle aspettative, tipo non e’ che ti aspetti la fedelta’ assoluta dei tuoi compagni di viaggio, anche perche’ pretendere di coprire tutti i bisogni (o anche un lato particolare degli stessi) di una persona e’ la follia pura, e soprattutto non puoi aspettarti che questi non cambino nell’arco del tempo, pero’ diocane se si e’ consci di questo, si e’ raggiunta la consapevolezza di questa cosa assieme addirittura, affinandola dalla post-adolescenza, uno si aspetta che non ci sia nessuna paura a parlare di tutto, ci si aspetta trasparenza anche nelle cazzate peggiori, senza vergogna, non siamo perfetti.
Posted by lesion on May 24, 2007 in
Stuff
Finalmente in dirittura d'arrivo! L'unica cosa che mi separa dai miei voleri e' ormai una piccola riga di 3 giorni lavorativi sul calendario tedesco.
Per festeggiare l'avvenimento dunque, quale miglior modo per spostare un po' di valore dall'ambito lavorativo a quello comunitario.
Nell'ultimo mesetto ho lavorato su una test suite in C per C, partendo da una libreria rilasciata con licenza gpl dal nome check. siccome la libreria in questione mancava di alcune opzioni fondamentali si e' deciso di metterci le mani sopra. ora, non so quanto questa cosa potra' essere utile al giro a/i, pero' per me lo e' stata e lo sara' ancora credo, ma in ogni caso non volevo buttare nel nulla questo lavoro che mi sembra ben fatto.
ecco la patch e un po' di commenti alla stessa.
la libreria originale e' appunto su check.sf.net
questo e' quanto.
bbaci
Posted by lesion on May 24, 2007 in
Stuff
Negli ultimi anni, la disciplina dell'extreme programming ha fatto molta strada rispetto agli altri approcci nel campo dell'ingegneria del software, soprattutto in ambiti aziendali/universitari. Se una volta aprendo un libro di testo universitario sull'ingegneria del software il motto era quello del modello a cascata, ovvero dividere la produzione di software in fasi ben precise e definite (studio di fattibilita', analisi dei requisiti, ecc), oggi e' decisamente piu' facile trovare libri che trattino la programmazione agile come La via.
Come in ogni cosa la via non e' mai una sola, e in questo campo e' anche piuttosto fastidioso prendere in considerazione l'ingegneria del software come una cosa seria, considerando che si pone come presupposto, quello di creare una sorta di standard per la produzione industriale di software, quasi fosse una catena di montaggio, negando tutta la parte creativa e ricreativa all'attivita' dello scrivere codice.
Partendo da questo presupposto, ti ritrovi comunque nel dover scegliere un metodo, un procedimento di tuo gradimento che ti permetta di continuare con il tuo gioco, esattamente come giocando a nascondino decidi di fare una ricerca completamente casuale oppure per certi versi, sistematica.
alcune volte purtroppo, il metodo diventa il gioco stesso.