martedì 7 dicembre 2010

Lorem ipsum

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed vitae mi nulla. Donec dictum urna nec sapien egestas nec consequat tellus mattis. Curabitur commodo congue arcu nec luctus. Mauris in elementum sapien. Vestibulum lorem velit, sollicitudin eu placerat ut, luctus ac est. Phasellus ut augue odio, nec tincidunt felis. Aenean faucibus facilisis ipsum, a pharetra nisl commodo vel. Maecenas suscipit tortor vel velit consectetur at laoreet dolor tempor. Duis tincidunt magna non ligula pellentesque nec scelerisque nisl consectetur. Vivamus ultrices nisl vitae nibh pulvinar faucibus. Integer enim augue, tristique id ornare et, rutrum id est. Mauris consectetur, ante eget malesuada rhoncus, risus magna lacinia erat, ac ullamcorper enim nibh ut nunc. Proin dignissim volutpat mi non suscipit. Nullam congue cursus mattis. Pellentesque quis nulla arcu, quis laoreet mauris. Aenean porta eleifend ultricies.

domenica 24 ottobre 2010

Un piccolo (e gratuito) editor Hex per OS X


Hex Fiend è un piccolo e gratuito editor esadecimale per OS X, rilasciato con licenza BSD. Oltre al programma viene offerta gratuitamente anche il set di API necessarie ad embeddare l'editor in altre apps!

Home Page di Hex Fiend

martedì 12 ottobre 2010

Il comando "tree" su Mac OS X

Grazie a Murphy Mac: http://murphymac.com/tree-command-for-mac/.

Mi è capitato di aver bisogno della visualizzazione ad albero di una struttura di directory da linea di comando sotto OS X; purtroppo il comando tree non è presente. Per evitare di dover installare un Mac Port o ricompilarmi i sorgenti, ho swebbato un po', ed ho trovato una command line che fa al caso nostro:

find . -print | sed -e 's;[^/]*/;|____;g;s;____|; |;g'

Perfetto, ora per evitare di dover scrivere tutta questa pappardella, vediamo di registrare il comando nel profilo della shell. Nell'ordine bash cerca i seguenti files di profilo:
  1. ~/.bash_profile
  2. ~/.bash_login
  3. ~/.profile
fermandosi al primo che trova..

Nel primo file tra quelli elencati quindi è sufficiente aggiungere la nostra funzioncina:

function tree {
find ${1:-.} -print | sed -e 's;[^/]*/;|____;g;s;____|; |;g'
}

che funziona anche ricevendo come parametro opzionale la cartella root di cui stampare la struttura,

sabato 25 settembre 2010

Postgres 9.0 e Qt 4.7 sotto windows




Sotto recentemente state rilasciate le ultime versioni di Qt e Postgres.
Ma per farle funzionare insieme in ambiente ms occorre effettuare alcuni passaggi: in primo luogo occorre compilare i plugin di Qt per Postgres (mmm... tipo "i driver di Postgres per Qt").
Per compilare i plugin di Qt, occorre avere a disposizione la libreria libpq presente nella directory di Postgres. Ma poichè Postgres si installa di default in C:\Program Files\PostgreSQL\9.0 e Qt non digerisce molto bene i blank nei nomi delle cartelle, io ho utilizzato un piccolo workaround: ho creato la cartella c:\libpq dentro la quale ho copiato le sottocartelle include e lib presenti nella directory di installazione di Postgres.
A questo punto, ho aperto, utilizzando Qt Creator, il progetto del plugin per Pg dalla cartella C:\Qt\2010.05\qt\src\plugins\sqldrivers\psql.
Aprendo il file psql.pro ho aggiunto le seguenti linee:


INCLUDEPATH += C:/pglib/include
LIBS += C:/pglib/lib/libpq.lib

Ho compilato il progetto in release, e le librerie sono state create correttamente.
Per far si che le applicazioni "trovino" le dll (e le relative dipendenze), ho aggiunto alla variabile PATH le seguenti dir:


C:\Qt\2010.05\qt\bin;

C:\Program Files\PostgreSQL\9.0\lib;

C:\Program Files\PostgreSQL\9.0\bin


Link:
PostgresSQL
Qt 4.7

giovedì 9 settembre 2010

Divvy: window displacer per Mac OS X

http://www.mizage.com/divvy/
Divvy consente di posizionare e ridimensionare in modo estremamente veloce le finestre di OS X (una funzionalità incredibilmente assente su Mac, mentre esiste in Windows 7 e KDE).
Una utlity furbissima, realizzata in modo magistrale; da vedere il video promozionale:
http://www.mizage.com/divvy/videos/divvy-screencast.mov

Scaricabile in demo!

martedì 24 agosto 2010

domenica 25 luglio 2010

E-mail scritte a mano



http://www.pilothandwriting.com/en/


Una webapp che permette di creare email con la propria grafia. Molto interessante la parte di cattura della grafica, possibile anche tramite webcam!

domenica 4 luglio 2010

MacTubes

  • MacTubes is YouTube video player and downloader.
  • You can create playlists and download video files.
  • It is a free ware :)

giovedì 10 giugno 2010

Waze: un nuovo tipo di navigatore (free)



http://world.waze.com/

Waze è un'applicazione di navigazione GPS (tipo Tomtom, per intenderci...) con un nuovo e rivoluzionario concetto: le mappe vengono "tracciate" dalla community, utilizzando il software durante la guida! Inoltre vengono inoltrate agli utenti informazioni in real time sul traffico (ingorghi, incidenti, lavori), sulla presenza di velox o di pattuglie di polizia, ecc... Il tutto sempre utilizzando gli aggiornamenti degli utenti!

"Waze is a social mobile application providing free turn-by-turn navigation based on the live conditions of the road. 100% powered by users, the more you drive, the better it gets. Join the community of drivers in your area today!"

Per i dettagli rimando al sito.. L'app gira su iPhone, Android, Symbian e Windows Mobile.

domenica 6 giugno 2010

Estensione del Finder per Subversion

http://scplugin.tigris.org/

SCPlugin è un plugin che introduce nel Finder un menù contestuale aggiuntivo per invocare i comandi del client svn (l'idea è la stessa di tortoisesvn).
Ancora in beta, non ci sono le icone custom che indicano lo stato svn delle cartelle e dei files... ma è un inizio!

domenica 18 aprile 2010

Convivenza di Vidalia e Qt SDK

Installando Qt SDK 4.6 (http://qt.nokia.com/downloads), il Vidalia "kit" (http://www.torproject.org/vidalia/) smette di funzionare... problemi con la versione di Qt.
La situazione si risolve molto velocemente:
da terminale:
cd /Applications/Vidalia.app/Contents/Frameworks
rm -rf *
ln -s /Library/Frameworks/QtCore.framework .
ln -s /Library/Frameworks/QtGui.framework .
ln -s /Library/Frameworks/QtNetwork.framework .
ln -s /Library/Frameworks/QtXml.framework .
exit


Ora, sostituendo i framework interni all'app con quelli della SDK, tutto funziona di nuovo alla grande!

sabato 17 aprile 2010

File manager e replacements per il Finder

Xfolders e Qfolders per OS X 10.5 (http://www.kai-heitkamp.com/) sono alla "norton commander", rilasciati sotto GPL.
Path finder per OS X 10.6 e 10.5 (http://cocoatech.com/) è invece a pagamento, ma è scaricabile ed utilizzabile per 30 giorni in evaluation.
Entrambi offrono la possibilità di aprire 2 finestre di browsing affiancate, ma nessuno dei due sembra supportare i tabs (alla Dolphin).
Interessante invece in Xfolders la presenza di bookmarks per navigare tra cartelle preferite.
In sostanza per la gestione dei files KDE e Gnome sono ancora un passo avanti.

domenica 11 aprile 2010

venerdì 26 marzo 2010

Shortcuts da tastiera Mac OS X



Qui il link alla pagina di Apple


Ma un piccolo riassunto di quelle più utili:
  • Shift-Mela freccia dx/sx: seleziona dal punto corrente alla fine/inizio riga
  • Alt-Shift Dx/Sx: seleziona parola successiva/precedente
  • Alt Dx/Sx: vai alla parola successiva/precedente
  • Mela-Space: apre spotlight

giovedì 18 marzo 2010

Fast C# Assert

How to implement an "assert" facility in C#, quick and easy:


    public class Assert
    {
        public static void Check(bool value)
        {
            if (!value) throw new AssertionFailedException();
        }
    }

    public class AssertionFailedException : Exception
    {
    }

sabato 13 marzo 2010

FreeBSD 8

Ho installato FreeBSD 8 (http://www.freebsd.org/), su un obsoleto sistema AMD Athlon (a 32bit), al posto di (K)Ubuntu, per effettuare un po' di prove in vista di test di compatibilità cross-platform di un applicativo su cui sto lavorando.
Le prime impressioni sono buone, tutto l'hw è stato riconosciuto (compresa un'esotica sk sonora Terratec). Come GUI ho messo su KDE, ed ho installato un insieme minimo di apps; per il momento funziona tutto - anche se un po' più lentamente che con Ubuntu...

sabato 27 febbraio 2010

Fonts per lavorare



Un font monospaced eccellente per sorgenti e terminali:

http://www.levien.com/type/myfonts/inconsolata.html

giovedì 25 febbraio 2010

Qt 4.6.2

Disponibile su http://qt.nokia.com/ la versione 4.6.2 di Qt. Dalla changelog sembra che le più importanti novità riguardino (guarda un po'...) un nuovo installer per Symbian, il porting alla piattaforma Maemo e nuove API per il progetto mobility.

Da autostrada dell'informazione a mezzo di censura?

Ok, la notizia è che un giudice ha condannato 3 dirigenti di Google Italia per aver consentito a YouTube la diffusione di un video in cui viene ripreso un atto di bullismo in una scuola di Torino (per di più a danno di un ragazzino disabile).
In realtà la condanna - a 6 mesi di gattabuia! - è per violazione della privacy. Ma di fatto i ragazzi di Google non hanno fatto niente; non hanno girato il video e non l'hanno caricato su YouTube; questa sentenza ha un impatto drammatico perchè sancisce di fatto la tendenza dei giuristi a voler attribuire degli obblighi di sorveglianza sui dati agli operatori della Rete, cosa che di fatto snatura completamente il concetto stesso di Rete: è come se i dirigenti della società autostrade venissero condannati perchè un guidatore ubriaco causa un incidente sulla Torino - Milano; cos'è, il casello (che peraltro funziona col telepass...) avrebbe dovuto fare l'alcol test ad ogni automezzo in ingresso, vietando l'accesso ai conducenti ubriachi??

mercoledì 17 febbraio 2010

Ubk

ubk is a framework that allows the web-developer to rapidly build up data-driven or data-based web-applications. Pages are written in an xml/xhtml dialect, rich of build-in tags made to loop through a result-set, show data in a variety of ways, easily navigate the db structure, reuse xml snippets, and so on. All of the application logic resides in pure php files, that can be used to manage lots and lots of xml-page-definitions with the same abstract logic, adding separation between application-logic and presentation. This version includes AJAX support via the (gorgeous) prototype library.


http://code.google.com/p/ubk/

ubk è un framework che permette agli sviluppatori di costruire rapidamente applicazioni orientate alla gestione dati. Le pagine sono scritte in un dialetto di xml, ricco di tag fatti per ciclare su un result-set, visualizzare i dati in vari modi, "vascare" facilmante la struttura del db, riutilizzare parti di codice xml, e via dicendo. Tutta la logica applicativa risiede in file php puri, che possono essere utilizati per gestire molti file xml che condividano la stessa logica di funzionamento, fornendo quindi la separazione fra logica applicativa e presentazione. Questa versione include il supporto per AJAX attraverso la (fantastica) libreria prototype.


http://code.google.com/p/ubk/



domenica 14 febbraio 2010

Versiontracker

Un modo per tenere d'occhio novità e aggiornamenti software:
http://www.versiontracker.com

sabato 6 febbraio 2010

Enum in C++

A differenza di altri linguaggi più moderni, in C++ i valori dei tipi enumerati non sono racchiusi dal namespace del tipo; ad esempio, in C++:

typedef enum { A, B, C } AutomaState;

....

AutomaState automaState( A );
...
automaState = B;
...
if ( automaState == C ) ...
Qui si definisce un enumerato AutomaState, a cui sono associati gli stati A, B e C. La sintassi non è particolarmente chiara, e non c'è nessun "legame" tra il nome AutomaState ed i suoi stati...

Racchiudendo invece in un namespace la definizione del tipo, si riesce ad ottenere un risultato molto più elegante:




namespace AutomaState
{
        typedef enum { A, B, C } type;
}

...

AutomaState::type myAutoma( AutomaState::A );
...
myAutoma = AutomaState::B;
...
if ( myAutoma == AutomaState::C ) ...


Utilizzando poi come standard il nome type per la definizione del tipo, si rende l'utilizzo del costrutto intuitivo e uniforme.

sabato 16 gennaio 2010

Mac Dev

Right now I've started my first job on the Mac. Cool! And while I'm waiting some very long meta programming code compilation in C++ I'm writings these lines.
Wow... the Mac env is great: I'm using iTerm as terminal (not that the standard terminal is not doing the job), Xcode and TextWrangler. Btw, to get some colours in the shell, add


export CLICOLOR=1
export LSCOLORS=ExFxCxDxBxegedabagacad


in your .bash_profile. Some other notes: to type the '~' on the small Mac wireless keyboard, type Alt+5. And for the '`' char, type Alt+9 and then type a blank.
On System preferences, hardware, keyboard, is it possible to enable the Keyboard visualizer (in italian "Mostra Visore tastiera") on the menu bar: it is useful to immediately view any key combination.
The Mac is great!