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
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:
Nel primo file tra quelli elencati quindi è sufficiente aggiungere la nostra funzioncina:
che funziona anche ricevendo come parametro opzionale la cartella root di cui stampare la struttura,
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:
- ~/.bash_profile
- ~/.bash_login
- ~/.profile
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!
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!
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!
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.
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
martedì 30 marzo 2010
Mouse gesture
Un nuovo modo di usare il mouse:
Con VLC: http://wiki.videolan.org/Mouse_Gestures
Magic Mouse: http://magicprefs.com/
Con Firefox: http://www.mousegestures.org/
Con KDE: http://kubuntuforums.net/forums/index.php?topic=3086781.0;wap2
O X11: http://sourceforge.net/apps/trac/easystroke/
Con VLC: http://wiki.videolan.org/Mouse_Gestures
Magic Mouse: http://magicprefs.com/
Con Firefox: http://www.mousegestures.org/
Con KDE: http://kubuntuforums.net/forums/index.php?topic=3086781.0;wap2
O X11: http://sourceforge.net/apps/trac/easystroke/
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...
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
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/
http://code.google.com/p/ubk/
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
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!
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!
Iscriviti a:
Post (Atom)