| Software! | 11/30/2008 | Ok, ok, after a year that I can't find time to write here I stop apologizing, at least you know that when I write something it is relevant (at least to me :)).
This year has been really busy in many ways, and I've started again writing software, and here is some interesting project:
- VSLab: an add-in for Visual Studio that lets you use VS like Matlab or Mathematica, thanks also to F# language and the fabolous F# interactive!
- CLIFileRW: a library for reading (and soon rewriting) CLI files (.NET 2.0). The library also includes stack abstract interpretation facilities.
- AnimeJ: A javascript animation library, minimal but also very expressive. It shows that you can have a timeline abstraction with actual browsers that even works on mobile phones! The library has been developed as part of the Toscana4U project.
More software has yet to come!  |
| Expert F# | 11/30/2007 |
Ok, ok, I know I'm a lazy blogger, but as I am always used to say "Axiom 0 of programmers is 'the programmer is lazy'" and I love programming :). In the last year I fell in love with F# a programming language developed by Don Syme from Microsoft Research Cambridge. The language has its roots in the strong tradition of OCaml functional programming language, though bringing the power of functional programming to the industrial world and to the .NET platform. Although it started as a port of OCaml, the language is now following its own path and is getting a more modern syntax and several changes to be fully integrated within the .NET infrastructure. When I first met the language (though I remember the bootstrap of the compiler while I was intern at MSR Cambridge) I wasn't sure of its potential and I started arguing with Don about its syntax. I decided to develop an application with the language to have a better insight of the language. I developed a Mandelbrot fractal viewer and I must say that I found the language great for application development, though I was worried about its effectiveness for developing class libraries. That was my start with F#, after few weeks Don asked me if I was interested in joining a book project, and I was excited by this opportunity. Now, one year and a half later, the book is ready to hit the shelves and I now feel uneasy when I cannot use F# to write programs, and I now prefer it to all other languages. I think that it provides a great mix of ideas that are deeply rooted in programming languages research and ideas from state-of-the-art technologies. Are you curious? Have a try! I think it is worth the time you may spend. More information about our book "Expert F#" and on the language can be found on the book's web site. |
| Learn to cook with wonderful recipes | 11/29/2007 |
In Pisa there is a very nice restaurant named "Il Fantasma dell'Opera" (The Phantom of the Opera) that is very good. Recently they have started to post video of restaurant's recipes on YouTube. I suggest to have a try! The page is here, videos are linked in Italian but an english text version is available too, check for the english link near each video and open video details on YouTube page. Good luck with your try!
 |
| Replacing notepad on Windows Vista | 5/13/2007 |
The brute force in replacing the notepad.exe on Windows Vista requires to change permissions and owner of the C:\Windows directory that is an operation that weakens the security of the system. A more elegant approach is to mimic Process Explorer and use the Windows registry to override the notepad.exe.
The trick is to create a key in the registry under "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options" and set a debugger for notepad.exe. Unfortunately if you try to set the path to your favorite notepad replacement (mine is notepad2.exe) you'll get the editor opened with the notepad.exe binary shown. The reason is that the key has been designed for debugging and the first argument passed to the debugger is the executable to debug (notepad.exe in our case). I quickly developed a JScript script that simply ignores the first argument and pass the remaining arguments to my editor.
The script is named notepad2launch.js and I put it in c:\bin together with notepad2.exe. You can of course change locations and the notepad replacement. The script is the following:
sh = WScript.CreateObject("WScript.Shell");
var e = new Enumerator(WScript.Arguments);
e.moveNext();
var str = "";
for (; !e.atEnd(); e.moveNext()) {
var a = e.item();
if (a.indexOf(" ") != -1) a = '"' + a + '"';
str += " " + a;
}
sh.Run("c:\\bin\\notepad2.exe" + str, 1, false);
Now we have simply to add the following key to the registry:
REGEDIT4
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\notepad.exe]
"debugger"="c:\\Windows\\System32\\wscript.exe c:\\bin\\notepad2launch.js"
Enjoy your brand new notepad without changing a bit into your filesystem.  |
| Rollable Display Mobile Device from Telecom Italy | 2/6/2007 |

It is pretty exciting to read a high tech news from Italy! Telecom Italy has partenered with Polymer Vision to produce this mobile device with a foldable monitor. It is expected to be available at some point in 2007, and I must find a way to own it!  |
| Wireless power? For Sure! | 12/28/2006 |
Let's hope this will end up into something... But the idea of having a wireless sytstem for power charging efficient as the goold old power cord.
 |
| Virtual Earth rocks! | 12/20/2006 |
I like the Microsoft Virtual Earth more than Google Maps for three reasons:
- You can embed the control on your Web site and it is not a Beta API
- Bird's eye view is simply great (so far few cities in Italy, but it is growing)
- Most important! It has the pictures of my house, where Google insist to not include it! Italy is fully covered since yesterday and this is just great. I also prefer the 3D view though you must use IE to see it.
 |
| Me? Yesss!!! | 12/17/2006 |

Time says that the man of the year is whoever has contributed to put content in this extraordinary landscape that is Internet. It is wonderful to being on the cover of such great magazine! By the way, the cover features a sort of mirror so that you can really see yourself.  |
| Happy birthday! | 12/15/2006 |

It is long time since I got such a beatiful thing for my birthday (two days ahead since this has been the present of the students of my lab, and Sunday I wasn't available...). I'm not good at being celebrated, so this post is to thank them for the really nice surprise.... With my favourite ID (Chip, used since I was eleven) and my age in binary! I must say that I am very lucky because I have very wonderful students!!!  |
| XNA is 1.0 | 12/12/2006 |
Microsoft released XNA version 1.0, a framework that allows development of casual games on the Xbox 360 platform. A subscription to XNA creators club is required in order to be able to develop. Nice move! It is interesting to see how many games will be available on Xbox 360.
 |