Cellulare andato, schermo bianco dopo 3 anni di eccellente funzionamento. Il video seguente spiega minuziosamente (in maniera anche esagerata direi, indicando persino l’ordine in cui le viti devono essere rimosse..) come smontare il Nokia N80 fino all’ultimo componente. Con un pizzico di fortuna quindi si tratterebbe “semplicemente” di individuare il guasto e provare a ripararlo, ammesso che risulti possibile. Trattandosi di uno slide phone, nel mio caso, il principale indagato era il connettore flessibile del display. E’ stato quindi sufficiente rimpiazzarlo con uno nuovo, pagato appena 3 euro, e il telefonino e’ subito tornato in vita.
Non potevo di certo abbandonare il mio buon vecchio Nokia cosi’ com’era, esanime e ormai privo di qualsiasi garanzia.. Intervento direi ottimamente riuscito!
A quanto pare anche i browser lascerebbero una qualche forma di impronta durante la navigazione, pagina dopo pagina, e quella seminata dalla mia volpe risulterebbe unica tra tutte quelle finora analizzate dal sito Panopticlick..
Your browser fingerprint appears to be unique among the 741,598 tested so far.
Currently, we estimate that your browser has a fingerprint that conveys at least 19.5 bits of identifying information.
Effettivamente con tutta la complessita’ che i browser odierni possono raggiungere con l’integrazione di plugins vari e l’abilitazione di funzionalita’ particolari, scelte ovviamente legate alle preferenze degli utenti, ogni client finisce per assumere un aspetto pressocche’ unico agli occhi dei server rendendosi identificabile e/o tracciabile nella navigazione, a discapito di ogni protezione della privacy..
Qualcuno di voi e’ riuscito ad ottenere un’impronta non univoca?
Bisognerebbe comunque verificare quanto significativi e attendibili siano tali risultati.
Sul sito ufficiale della Common Weakness Enumeration (CWE) e’ possibile consultare liberamente un community-developeddictionary di software weakness types. A seguire la lista aggiornata al 2010 dei 25 errori di programmazione ritenuti piu’ “pericolosi”, un utile riferimento per qualunque sviluppatore.
The 2010 CWE/SANS Top 25 Most Dangerous Programming Errors is a list of the most widespread and critical programming errors that can lead to serious software vulnerabilities. They are often easy to find, and easy to exploit. They are dangerous because they will frequently allow attackers to completely take over the software, steal data, or prevent the software from working at all [...]
Sapevo dell’acquisizione di Sun Microsystems da parte di Oracle ma sicuramente non mi aspettavo un rebranding cosi’ spinto, ecco infatti come si presenta ora il sito http://java.sun.com/ ..
Con la speranza che almeno Duke sopravviva a tutto questo (e che magari le certificazioni che abbiamo conseguito non finiscano per “estinguersi”), mi auguro che tale operazione di business non si dimostri deleteria per una delle tecnologie oggetto dell’acquisto, ossia l’intera piattaforma legata al linguaggio Java, linguaggio che ha segnato la storia della programmazione object-oriented e dei linguaggi di terza generazione.
Un po’ per caso mi sono immediamente trovato a utilizzare il nuovo servizio “social” sviluppato da Big G che prende il nome di Google Buzz. Riporto qui le mie prime impressioni (a caldo) facendo un rapido confronto con Twitter, con cui credo si possa dire che condivida l’idea di base (ma forse solo quella). Non parlero’ di FriendFeed (con il quale condivide qualcosa di piu’) ma soltanto perche’ non ne sono un utilizzatore (“finale”, aggiungerebbe qualcuno..), tanto meno di Facebook o altri social.
Come in Twitter i concetti di fondo sono molto semplici:
ci sono persone che ti seguono (“followers”) e altre che segui (“following”)
si condividono brevi messaggi (si “twitta”)
A differenza di Twitter:
non esiste un limite ai caratteri da digitare (140 in T.)
il servizio e’ integrato nella posta elettronica (T. e’ integrabile attraverso le sue APIs) *
i messaggi sono editabili anche successivamente alla sottomissione
si possono postare messaggi privati
si possono inserire immagini da computer o picasaweb (con T. occorre far uso di servizi aggiuntivi come TwitPic)
si possono condividere video e visualizzarli direttamente all’interno del messaggio
si puo’ esprimere un gradimento attraverso il pulsante like/unlike
si possono nascondere conversazioni attraverso l’opzione mute/unmute
si possono continuare conversazioni in chat (GTalk) e via mail
Google Buzz non fa che confermare la strategia di Google: ingrandire quanto piu possibile il network di utenti e il tempo che essi trascorrono sui vari servizi offerti. Google Buzz offrirebbe infatti nuove informazioni da analizzare a partire dai comportamenti e dalle preferenze degli utenti. Quello che forse molti si chiederanno e’ se Google Buzz riuscira’ mai ad acquisire il giusto consenso e se verra’ mai adoperato come un “vero” social network. In effetti non sara’ semplice inserirsi in un mercato gia’ dominato da numerosi competitors, anche se con Gmail, devo riconoscerlo, le cose sono andate piuttosto bene.
* UPDATE – Disponibili anche le APIs per integrare Google Buzz.
Interessante questo post di Bruce Schneier in cui il noto security technologist offre una personale classificazione tassonomica (incentrata sul “livello di fiducia”) delle varie informazioni gestite negli odierni social networks. Un valido punto di vista non solo per gli utenti ma anche per gli stessi amministratori. Internet puo’ in alcuni casi diventare incontrollabile e creare situazioni poco piacevoli, per cui sarebbe sempre bene conoscere con chiarezza COSA di noi resta nella rete e IN CHE MODO tali informazioni vengono gestite ed eventualmente rese disponibili.
Service data. Sono le informazioni che devi fornire per registrarti e accedere al network (es. il tuo nome legale, la tua eta’, in alcuni casi anche il numero della carta di credito).
Disclosed data. In questa categoria rientra tutto cio’ che viene da te inserito nelle pagine che gestisci di persona (blog, foto, messaggi, commenti, ..).
Entrusted data. Quanto inserisci nelle pagine altrui. In pratica le stesse informazioni di cui prima a differenza delle quali pero’ non sei tu ad averne il controllo (qualcun altro le gestisce).
Incidental data. Sono le informazioni che gli altri inseriscono su di te. Ancora una volta simili ai disclosed data ma questa volta 1) non ne possiedi il controllo e 2) non sei tu ad inserirle.
Behavioral data. Tutto cio’ che viene raccolto sulle tue abitudini e le azioni che compi nel network.
Mechanical Poetry offre qui una diversa classificazione focalizzata invece sulla destinazione dei dati.
Nel settore ICT italiano come ben si sa esistono fin troppe anomalie e a farne le spese sono soprattutto gli “addetti ai lavori”. Ricordo che commentai tempo fa sul blog di Francesco proprio in merito ad un post su partita IVA e stranezze varie facendo trapelare il desiderio di voler un giorno tornare in patria e trovai subito la risposta di chi purtroppo, proprio in balia di tali “stranezze”, non poteva che manifestare un desiderio diametralmente opposto al mio.
Proprio in merito a tali argomenti mi premeva citare l’iniziativa portata avanti dall’A3I, Associazione Italiana Ingegneri dell’Informazione, obiettivo della quale sarebbe una regolamentazione del settore attraverso una chiara proposta di legge intesa a ridefinire il ruolo dell’ingegnere dell’informazione (inglobando in tale figura tutte le categorie dell’ICT). Ad avvalorare le tesi esposte una “galleria dei disastri” che fa certamente riflettere. Come molti altri ingegneri ho rinunciato all’iscrizione all’ordine avendo considerato tale possibilita’ come un semplice spreco di denaro, visti appunto gli scarsi benefici legati ad una carente regolamentazione. Ed e’ forse proprio per questo motivo che tale associazione intende finalmente muoversi.
I numerosi esempi di fallimento sono una prova di un sistema che non funziona, forse troppo martoriato dalla pressione fiscale o da una classe dirigente poco concentrata sui risultati e sulla qualita’ degli stessi ma sempre bravissima, anzi geniale, nel far sempre quadrare i conti personali. Il nostro Paese e’ purtroppo carente di figure tecniche altamente qualificate ma ricco di ingegneri “low cost”, povero di investimenti nelle infrastrutture tecnologiche (sono ancora costretto ad allacciarmi ad Internet con il vecchio doppino) e soprattutto nel campo della ricerca e dell’innovazione. Quando potremo mai risollevare la testa?
L’associazione ha bisogno di numeri per portare avanti gli obiettivi prefissati, una maggiore consapevolezza interna al settore infatti non puo’ che aiutare. Invito gli interessati a dare almeno uno sguardo al sito dell’associazione.
L’Ingegnere dell’Informazione
L’Ingegnere dell’Informazione è il professionista iscritto al settore dell’Ingegneria dell’Informazione dell’Ordine degli Ingegneri, ovvero al III settore dell’Ordine, anche conosciuto come settore ICT, dall’acronimo inglese che sta per Information and Communication Technology, ovvero il settore dei sistemi informatici, delle reti di telecomunicazione, ma non solo; è un settore pervasivo, strategico e trasversale a tutte le altre attività, costituisce il sistema nervoso del sistema Paese.
Ma cosa fanno gli Ingegneri del III settore? Quali sono i loro compiti?
L’art. 46 del DPR n. 328/01 specifica che i compiti degli ingegneri del III settore, alias settore dell’ingegneria dell’informazione, sono: la pianificazione, la progettazione, lo sviluppo, la direzione lavori, la stima, il collaudo e la gestione di impianti e sistemi elettronici, di automazione e di generazione, trasmissione ed elaborazione delle informazioni. [ ... ]
Non so ancora se parlare di memory leak o semplicemente di malfunzionamento nel processo di deallocazione della memoria, fatto sta che qualcosa non andava nella gestione della memoria del mio browser. Qualche giorno fa infatti mi ero ritrovato con il pc in palla mentre navigavo su non piu’ di due siti contemporaneamente. Controllando il task manager avevo notato come Firefox (versione 3.5.5) avesse allocato qualcosa come 700MB di memoria e, avendo numerose altre applicazioni aperte e “solo” 2GB di RAM, il paging di Windows si trovava a dover lavorare di continuo rendendo il pc quasi inutilizzabile.
Ieri, dopo un’intera giornata di lavoro, ho provato a rimuovere di proposito tutti i tab di navigazione (lasciando la classica pagina bianca di default) e a ricontrollare di nuovo l’uso della memoria. Risultato? La memoria recuperata durante la chiusura era veramente poca, quella allocata continuava ad attestarsi sui 200 MB circa ..
I miei sospetti sono infine ricaduti su di un plugin che avevo installato di recente, Tree Style Tab, di cui Enoela aveva parlato qui e che avevo trovato particolarmente utile. Effettivamente una volta disattivato tale plugin tutto e’ tornato alla normalita’. Davvero un peccato non poter organizzare gerarchicamente i tab, provero’ magari con una versione piu’ aggiornata.. Qualcuno ha mai avuto un problema simile con questo plugin o si tratta soltanto di un caso sporadico?
La conferenza e’ stata nel complesso molto interessante, riporto qui alcune impressioni ..
Getting more from your existing Java applications Simon Ritter – Java Evangelist, Sun Microsystems
Questa parte era principalmente incentrata sul tuning della JVM soprattutto in riferimento a cio’ che spesso rappresenta il collo di bottiglia di numerose applicazioni Java-based, ovvero il garbage collection (GC). Non tutti gli sviluppatori sanno che esistono centinaia di parametri, alcuni dei quali legati a particolari implementazioni proprietarie (IBM, Oracle, BEA e altre), attraverso i quali e’ possibile modificare profondamente il comportamento e le prestazioni della JVM. I seguenti principi, definiti simpaticamente come il “GC Nirvana” delle JVMs, rappresentano i principali obiettivi di ottimizzazione da considerare (compatibili solo a due a due):
low GC overhead
low GC pause times
good space efficiency
E’ inoltre apparso chiaro sin dall’inizio come i meccanismi di GC siano aggiornati e migliorati di continuo anche all’interno di una stessa release, e questo attraverso le varie versioni di update rilasciate da Sun. E’ sempre bene quindi, nei limiti delle possibilita’ di progetto, installare l’ultimo update disponibile.
Java for Business. Getting the best (out of Sun) for your Java applications Owen Stuart – Java Sustaining, Critical Situation Manager, Europe, Middle East and Africa
Questa parte era per me di poco interesse. Compito dello speaker era di spiegare il tipo di supporto offerto ai clienti.
A look at Java SE embedded and real-time Java Helen Cullen, Andy Gilbert – Systems Engineers, OEM Software Sales
Sorprendente vedere insieme l’intera gamma di dispositivi embedded Java compatibili. Tra questi in particolare risalto il socket PC, nello specifico un’implementazione su sistema Linux/Java. Ribadita inoltre la differenza tra la versione Micro Edition e quella Embedded (spesso confuse), la prima una versione molto ridotta destinata a dispositivi con capacita’ di memoria inferiori ai 32 MB (ormai davvero pochi), la seconda invece del tutto compatibile con la versione standard meno i pacchetti ritenuti opzionali (es. CORBA) e alcune risorse non strettamente necessarie (es. javadocs) rimossi quindi dal packaging. Molto interessante la parte relativa al Real-Time, sul quale argomento mi trovavo ancora un po’ scettico. Con Java si puo’ adesso implementare senza alcuna difficolta’ una sorta di soft real-time e, in maniera certamente piu’ complessa, un piu’ rigido hard real-time. I risultati sono significativi, come dimostra il seguente video:
New Stuff – Java Enterprise Edition 6 and GlassFish 3 Steve Elliott – Technology Evangelist, Sun Microsystems UK
Ottima l’introduzione all’argomento attraverso un rapido escursus sull’evoluzione subita nel corso degli anni dalla versione enterprise (J2EE o JEE). Sin dalla sua nascita l’intento e’ sempre stato quello di regolamentare il mercato in riferimento alle nuove tecnologie di volta in volta introdotte per migliorare lo sviluppo enterprise. Cosi’ e’ accaduto in passato con l’introduzione delle specifiche JPA ed EJB 3.0 (in risposta al successo di Hibernate), cosi’ accade ora con il nuovo JEE 6 il quale si “impadronisce” del meccanismo dell’inversion of control (tipico del framework Spring) oltre ovviamente ad altre interessanti novita’. Niente male anche l’application server GlassFish, di cui sinceramente conoscevo ben poco, presentato da Sun come implementazione di riferimento delle neo-rilasciate specifiche JEE. All’apparenza un ottimo prodotto, certamente da provare, disponibile anche in versione bundle per Eclipse.
More New Stuff – Java Standard Edition 7 and JavaFX Simon Ritter – Java Evangelist Sun Microsystems
Simon Cook – Software Architect Sun Microsystems UK
Non molto chiaro in che modo Sun stia procedendo con lo sviluppo del nuovo JDK 7 (sebbene Simon Ritter abbia tentato di far chiarezza) nonostante numerosi JSR siano ancora in fase di approvazione. A seguire la lista completa di quanto e’ stato finora proposto (ad esempio date un occhio al progetto Coin):
E per concludere questo lungo percorso uno sguardo a qualcosa di piu’ stylish dedicato al front-end, Java FX. In questo campo Adobe sembra ormai avere un netto vantaggio grazie a Flash, tuttavia Java FX possiede dalla sua una carta importante, ovvero la piena integrazione con il vasto mondo della tecnologia Java. Staremo a vedere se tale carta risultera’ vincente. Per conoscerne di piu’ potete dare un’occhiata ad alcuni screencasts oppure provare subito qualcosa di FX visitando una galleria di esempi.