Skip to main content.


This is the archive for September 2008

Monday, September 29, 2008

I was sick and tired to wait for people to compile Falcon on Mac, and we often had to release versions without MacOSX support for the lack of developers on that platform. Now the thing is no more, as I will take personally care of MacOSX releases.

Actually, I am not that enthusiast at all about having a Mac. Being accustomed to work on GNU/Linux platform and having to develop things on Mac is like programming blindfolded and with a hand tied behind your back. Oh well, userland programs are cool; Safari, ITunes (best one-click CD import ever), Mail, Quicktime and all the rest are absolutely ok, and I am in love with Garage Band; I bought a discounted USB-Midi keyboard with the Mac (I knew that, when I get some free time from Falcon, I would have loved to do a bit of music having a Mac at hand), and looking back at how much time I spent with Linux in finetuning music applications and sound card drivers... oh well, it's fresh air.

XCode is not bad either, and integration with CMake is even better than in KDevelop and Visual Studio.

It's... the rest that needs working. For example, I can't figure out how to write Japanese or Italian characters in UTF-8; languages get their fixed preferential encoding and that's all. File browsing it's clumsy, application management is worse, and I really feel the lack of a simple "launch application" box (like [start] on windows or [K] on KDE, or [Applications] on Gnome and so on).

Last but not least, the thing I was the most interested to, PackageMaker, is possibly the worst piece of software I have ever seen. It looks like an amateur first post-tutorial GUI application try, and even not a very successful one. Both application logic and implementation are deeply bugged, and the new directory-full-of-xml format for package definition files it's a pain in the a**. Finally... there ISN'T ANY UNINSTALL option. Not even the ability to place a personalized "uninstall" script in the package. There's really nothing good to save of it, (possibly the package GUI generator, but it's too static and fixed to be really good), and it's a good candidate for a complete rewrite.

Thursday, September 25, 2008

You work several hours per day in your office. It's probably the place you see the most of the time. Making it a nice place to be in doesn't just help your work, but also your life in general. Thinking so, I decided to place a print of one of my favorite print artists in my office: Hokusai's famous "wave":


I always found Hokusai genial in the simplicity of its representation and in the power of the emotions he transmits. And he's so ironic; even in this print, which is so dense, those small fisher boas with all those even smaller fishers looking down towards the waters, rather than up towards the wave... A metaphor of mankind, or maybe just a metaphor of "people", searching for safety and comfort right beside them while tragedy is falling upon. Yet, even when talking about the magnificence of nature, or about the powerlessness of mankind, Hokusai is always smiling. And it's not a sad smile, or a sardonic smile, it's not derision. It's just fun, the fun you have while watching a funny comedy where the characters keep struggling against bad luck.

Well; other than that I am happy that all my colleagues have praised the artist and my idea to place it in our office :-)

Tuesday, September 23, 2008

And with them, full blown tabular programming.

I just need to add some API level method to the Table class; everything at VM level is ready.

With the last round, methods called from dynamic bindings in arrays can access the calling array through the "self" keyword. This lets to build dynamic objects (and classes) not unlike LUA programmers are accustomed to do, but in Falcon there is a significant shift. If an array is part of a table, that is, if it's a row, then properties are taken from the table, and they resolve into an item of the array. So, while bindings stay outside (or besides) the array, table properties lie inside the array itself. Still, a method can access the owning array, and indirectly the owning table, via the "self" item.

Sunday, September 14, 2008

It's official. Falcon will be in the next number of Linux Journal; I wrote the article, but LJ editorialists have selected it to be rightfully standing besides the top news: an interview to Guido Van Rossum on Python 3000.

The issue preview.

Falcon gained also some square centimetres on the front cover.

I cannot reproduce the article for obvious reasons; it's just a generic introduction and an exert of the "showdown" document, with some of the most coolest differential features outlined in the last part.

I kept silent up to the moment I received the 3 copies of the magazine at home as an article writer; I didn't want to burn the article in any way. After the issue is out, I will finally set for some serious media strategy by contacting more magazines and PC related media. Things are ready to welcome a first group of wilful developers and users, so it is now high time for the Falcon to fly.