Older blog entries for jao (starting at number 9)

Finally, the new MDK version is released. I'm already thinking of further enhancements. I read a very nice tutorial introduction to Guile, and plan to add Scheme extensibility to MDK (following an idea hinted by Philip (hey, Philip, are you there?)). Also, i restarted reading SICP: lots of fun.

Definitely, i must learn perl. A colleague at work has shown me some really neat meta-programming tricks that i'd like to investigate. The camel book is already open on my desk, together with a bunch of tutorials (including a very good one about Gtk-Perl): maybe in a few weeks i could start hacking the FreeBSD ports manager idea.

A nice guy from GNU Spain contacted me a couple of days ago. They seem to have a lot of good ideas for promoting the Free Software community and philosophy in Spain. I plan to get as deeply involved as time (and hacking) allows. Please, if you live in Spain, consider getting involved too: we need lots of help!.

Spent a lot of time hacking FreeBSD. Definitely, it has become my platform of choice (for the time being).

Also found some time to complete a new version of MDK (to be released in a few days) which adds customization support (fonts and colors) and full device handling. The number of downloads is steadily increasing: more than 300 by now. More than i ever expected when i began the project. Very rewarding.

Tried for some time sawfish, but finally returned to blackbox (despite i don't like its source code): it's definitely quicker. I think i won't go into hacking bbmenu by now: too much low level X stuff, i'm afraid. That leaves me with two choices: MMDK or the ports-apt. If i choose the second, it will be an opportunity of learning perl and using the gtk bindings; it seems the right language choice for such a project. As for MMDK, i'm not sure: maybe C for the backend and C++ for the GUI?

SICP still waiting on my bookshelf... got time to finish Benedetti and Huxley: great stuff!!

Well, somehow my journeyer qualification is back (still wondering why it disappeared for a couple of months).

MDK: the last release (0.3.1) is doing pretty well. About 200 downloads (==users, i hope) and new supported platforms reported (Sun/Solaris and Cygwin). I'm working on a few enhancements to the GUI (colors and fonts, and full device handling) for 0.3.2.

New project: still thinking of it... i got a look at bbtools sources, for the bbmenu thing, and would need quite a lot of studying them (and raw X stuff) before being able to hack a new tool... hmmm...

FreeBSD is working well, and i am more and more using it on a daily basis... i thought i would miss debian, but...

Real life: today's a day of roses and books in Catalonia. I've bought some non-technical reading: Benedetti's El mundo que respiro, Woolf's Moments of being and Huxley's Eyeless in Gaza. I hope i'll find some time for them.

More crypto reading: The Cuckoo's Egg, by Cliff Stoll; very funny and highly recommended. The next will be Takedown. In the meantime, i'm remembering my C++ days with Alexandrescu's Modern C++ Design.

I'm trying FreeBSD these days, and it feels powerful... i'm quickly becoming a fan of it.

New projects in mind:

  • bbmenu, for Blackbox, my favourite window manager;
  • MMDK, an MDK for MMIX (the most requested feature of MDK's users); and
  • A ports/packages manager (a la apt) for FreeBSD (need to learn a lot more about FreeBSD before.
Ars magna, vita brevis... i don't have time for all three, and am still thinking on which one to pick up...

A lot of time without writing... don't know if this is why my former journeyer status has vanished! Anyway, very good news in the meantime: the MDK has now become GNU MDK, and we've got a new release (0.3) featuring a GTK+ GUI and an Emacs interface. After my first serious hacking with GTK+, i must confess i find Qt a better lib, and am beginning to feel nostalgic about C++ hacking.

And talking about nostalgy, i'm having a really good time reading S. Levy's Hackers... ah, the good old times!

Well, the new version of MDK is finally released. It includes instruction tracing, timing statistics and w-expression evaluation, and fixes for all bugs i am aware of. With this, all the planned functionalities for the console-based application are done. The next step is adding a graphical front-end of some type (ncurses, GTK+ or even Qt).

I am looking for a new project to work on. With my interest in functional programming raising every day, i'll probably collaborate in the development of a scheme-based XML parser. I've been playing a little with kawa, a java-based scheme interpreter, which is the first java project i find really interesting. With kawa and XML my private interests (scheme, fs) merge with my job's (java, internet): a nice combination!

Back after holidays. The MDK already traces executed instructions, so version 0.2 is almost ready.

Finally, i unsubscribed from fd: i could not stand Mr. Stanco's authoritarian ticks... i fare them well...

While SICP arrives, I've been reading "The Little Schemer"... sort of funny, but not the kind of book i'd recommend (if they'd only remove all those elephants that make you feel like a baby learning to speak...). I've rewritten some functions in Scheme for translating between decimal numbers and MIX words, so that they're now tail-recursive (i've realized that, one year ago, when i first read about scheme and wrote the first version of those functions, i had not the slightest idea about what functional programming is!... well, i think i'm improving: maybe the elephants' book is not that bad after all). All in all, i'm enjoying scheme: i'll keep on learning, and i'll think about some useful application.

Have a happy new year/century/millenium!!

Tracing of instructions is already working on MDK and timing statistics are on the works. After that, and some documentation, I'll release the new version.

The recent Davis vs. Stanco war in FreeDevelopers has pushed my patience to a limit, and I feel very pessimistic about the future of the organisation. I simply cannot imagine how in earth they will manage to put thousand of developers to work under a democratic regime, when, being now just a handful of people, they are not able to put their egos away for the benefit of the community. Free software gets done by programming (like RMS did), not by spamming or, what is worse, telling blatant lies! What a pity.

Functional programming. I think i will stick to Scheme: it's used by GNU and is the language of choice of SICP, my next planned cover-to-cover reading. A couple of people have recommended Dylan to me, but I find its syntax so ugly that i don't feel like giving it a try (I know that's not sound reasoning, but...).

I've been working again in the next MDK version. W-expression evaluation works ok, and tracing of executing instructions will soon be ready... Still waiting for the FSF evaluation of the new documentation (and getting a little bit anxious :-)

Pondering functional programming again (i've been since now an imperative programmer: C, C++, Perl, Java...). Not sure about which language to pick: probably Scheme, but Lisp, elisp or more exotic ones like Haskell could also be interesting. Once i'm able to submit articles, i'd like to ask Advogato people about functional programming and free software...

After reading the Advogato's articles for a couple of weeks, I've decided to create an account and start writing this diary. Why? Well, one of the main reasons is, i must admit, drawing attention to MDK, my first fs project. I'm really happy with the interest it has already raised, and the feedback of other users. OK, maybe it is just a toy, but a toy that can prove useful for readers and students of "The Art of Computer Programming", which is, imho, the best book on computer science ever written. But MDK is not the only reason for joining Advogato. I want to keep in touch with fellow free software programmers, and to take part in the amusing discussions on the articles, which happen to be of an excellent quality (unlike those found in other well-known internet forums like /.).

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!