Recent blog entries for premus

Hm, almost a year since my last entry here, me bad. Short and difficult year even if I managed to produce the my best software till now still leaves me unsatisfied. Anyway if you care for some free software check out the first public releases of the SpaceMapper project, mn8 and DataStore.

BTW logic, that would be in mn8

    define FooBar [
        static : main ($args typeof Series) [
            $response = $args/2/
            $response.setContentType("text/html")
            print "<h1>Foobar!</h1>"
        ]
    ]

Oh, this just wasn't my day. After sleeping 3 hours I woke up at 6 AM to get some coding done and get out a few items from my todo list and when I boot my laptop my dear Linux wakes up with lots of reiserfs warnings. That didn't looked good, not a bit. I had a few hunches before (twice the contents of a directory was gone, with only the subdirectory structure remaining intact, and a couple of very strange and unusual reboots lately).

Made a backup (it's a bit difficult if your home directory gets over 1G) and tried to a soft fix (-x), the fix seemed to go ok, but the warnings where still there. Tried a rebuild-tree (worked perfectly on two occasions before on other boxes) and screwed up totally my file system. So at the end spent all day installing fresh Linux.

There could have been no worse time for this to happen as Monday I have a milestone and any bit of time is more valuable than gold. As usually the loses where only personal (a couple of config files and personal documents) because in a funny way yesterday I struggled not to leave the company before I make the big commit. Lucky me I did it ;)

Oh well, that's life, you win some then you lose some. My old Linux served me well for more than half a year, and reiserfs is a great files system. Life goes on :))

30 Oct 2001 (updated 30 Oct 2001 at 16:32 UTC) »

Qbert: I will try to answer a couple of your questions about Java and Linux. I work for a small software company doing (recently) mostly Java programming, both CLI and GUI applications. All the developers choose Linux as development platform, and let me tell you developing Java on Linux is great (did I mentioned that XEmacs + JDE rulez).

How about running ? Well, do I keep an eye on the open source alternatives to Sun's Java I don't find them very usable yet, so for the moment we are left with Sun's and IBM's implementation. Both work very well, and in the recent time I started noticing that there are some serious performance improvements. Sometime I even have the feeling that on Linux Java is more speedy than on the Win test box. Java (at least the CLI part) on Linux servers is reliable. We run about 3 Java daemons on our servers which provides the support for continuous integration through CruiseControl and they work 24/7 without many incidents.

What about the GUI? That Java GUI (swing) sucks it's a matter of taste. I also was reluctant to running Java GUI applications, till one day. I considered to be a shame to call myself a Java programmer and have bad feelings about Java GUI without even bothering to try them. So I gave them a try. They work and most of the time can be a pleasent experience. The great memory consumption and high startup times will be solved IMHO in time. Also there is a lot to be done in the field. We are also working on a GUI application right now, and we used a couple of tricks in it. First we use SkinLF, so we are not forced to Metal any more (plus we can use Gnome and KDE themes) and a bit of antialiasing our application looks and works great. To be honest I preffer a Java application instead of no application and I preffer a god Java application instead of a bad native one.

IMHO the facts about Java and Linux are promissing, and if GCJ is going to work, we'll achieve two big goals (Open Source Java and native applications written in Java).

Well, coding, coding, coding, not at the speed I planned or want but features are comming along. I discovered one thing about myself today. I don't like changed code, it makes me feel bad, like it's not pure anymore or I don't trust it, even if I revise it line by line. When the feeling is to overwhelming I write a test case just to make sure! What the hell is wrong with me ? Or maybe is just my ego whom doesn't like it that the code I produced is not perfect the first time. Yeah that must be!

Read an intresting article at the CIO Magazine. The idea is that most CIO's are not happy with the commercial software these days. The amount of money spend is just colossal, and the results are I think well known by most of us, I think all of us had a few bad nights about the crap managers pulled on us just to get the piece out in time, without consideration for testing, quality and so on.

Now I have this idea troubling me for some time. Why not make an coalition of OS developers (or teams) and start producing Open Source software for specific enterprise areas. The money would come from sponsoring, in fact most of the CIO's interviewed would be favorable to an Open Source solution, in fact many companyes could group together to sponsor such an software. Sure, support is needed, but let's face it if they pay us we will provide the support to. Another issue, that might be a good idea to sponsor local LUG's, which could act as local support.

The advantages are obvious, quick bug fixes, solid code, interoperability. No more huge maintenance costs (think about $400,000 for only one company) and most important no lock in. Sure it might take a year or two till the software would actually be usable, but I would see it as a good investion.

The disadvantage, who will pay us for our daily job ?

Among other things today was the day when I recovered a lost soul. A friend of mine told me once how sick is of Windows and all the problems he have with it. In one of it's visit he noticed that what we are running doesn't look like Windows, he was shocked to find that there are other OS'es available.

So today we installed Mandrake 8 on his computer. I don't know if he will manage to resist the big switch (if he manages to hold on for two weeks he won't switch back). But to be honest doesn't even matter if he will remain with Linux or not, what matters is that he now knows that there are alternatives and that is what matters. BTW, he is a small business owner and he is quite committed to switch all his computers from Windows to Linux.

There where a couple of funny things in his reaction when we installed it. First he didn't really understand how is possible to only allocate 8 G of space for an OS and don't worry about future applications. Well it's amazing how much can go in 8Gigs and how much space will still be available ;). Also after playing with all the window managers and all the applications (well not quite with all) he was wandering how can Microsoft make money selling that crap when there is this piece of software which is so "easy to install" and so "sweet" (his words :) . Well, Linux wasn't always like that, I just remember 98 or 99 when I was trying to install Debian for the first time, and after a whole week I still didn't manage to get all those dependencies right and I switched to Slackware.

14 Oct 2001 (updated 14 Oct 2001 at 03:35 UTC) »

I was playing with HyperPad and in about one hour I made it to use antialiased fonts, it looks cool, do the antialiasing is a bit strong and it's quite unpleasant in time. Anyway it looks a lot nicer, strange how ugly the fonts can be in Java under Linux. Also managed to solve the SkinLF bug, now if any skin it's used the backspace key in the editor works. I had to set the look and feel first and then create the widgets. It is a funny bug, I still can't figure why if you set the look and feel after the components are created the backspace and back cursor keys won't work.

Another not quite funny thing happened today, while switching from xemacs to xterm to make a clean build, I noticed the the build went extremely fast, when to start the application it failed. All the source files where deleted, the source directory was clean with the subdirectories still there but no file in them. No delete command was issued, just disappeared. It happened before (once) a couple of months,, but that time I was blaming it on Quanta (it was a beta version, and I was working around importing files into a project) but this time was no Quanta around. Must be something with reiserfs. Probably I should do a kernel upgrade! Anyway happily no harm was done (this time) as I had the fresh files in emacs and the sources where in the CVS, I'm lucky enough to do commits often ;)

9 Oct 2001 (updated 10 Oct 2001 at 17:19 UTC) »

mn8: O God, I'm running so late, like never before. I barely think or do anything else, yet still progress is so slow. The real problem is that designing an OO interpreter is not so trivial. All the time I have to come back to revise some design flows. I think that is called refactoring ;). At least I do it!

Spent the whole weekend working like a crazy to refactor a few things instead of adding functionality, which means four more days of delay. But I had to do it, it was just not looking and functioning right. This was also the first time (I remember anyway) of hating Java. I just don't understand why they did the static behave the way it does during inheritance. At the end had to use the Singleton pattern, it works but I'm still not very happy. I will leave it as it is anyway, can't afford and don't think there is other solution.

Being so late and still having to work on it, always makes me think if I'm not like the cowboy programmer in the project management examples. But mn8 is (some thing which never stops amaze me) working as it was planned, more ready and more complete every day. But as I look around me, I don't really see people doing as radical and as much refactoring as me, and this worries me. Is that possible that the design was right from the first time, I don't think so, there is no such thing. I'm afraid that the others rather patch things instead of doing refactoring.

This time being late had some benefits too. DataStore got a alpha but released Avalon (finally we are not going to release it with a CVS version of Avalon), lot's of bug fixes, and a brand new SEP interpreter plus a more stabilized XML-RPC server, and a full blown PHP/XML-RPC example. Yep it works great. Crow is working on some small Java tools to let us transforms mails from mbox format in XML and then to feed them to DataStore. Will need them latter anyway, plus that is a good way of testing DataStore.

Atech did the BEEP handler so now you can open an URLConnection to a beep://xxx URL and it will work, still you have to know what to talk over the connection, but at least will allow mn8 to open url's transparently. Now he works on the XML-RPC handler. Let's see how that works out.

A, not to forget about HyperPad. It got a pair of skin handlers so you can have skins in it (doesn't really work well, but don't think is our fault). It amazes me how well the new Linux Java works. It has better font rendering than the IBM one, and definitely is faster than under Windows 2000. It wasn't always like that. Linux rulez!

Thank's to neurogato for pointing out that: Alan's code crew text is actually lyrics to the tune of Motorhead's "(We Are) The Road Crew", yes indeed fits beautifully. BTW, if we are at the SmoothWall chapter it just happent last week to replace an old router based on LRP to a firewall running SmoothWall, it took us about two hours but only because, we went for the installation first and then to read the manuals, just like any (in)sane person would do. Great piece of software!

Random output of the day

Alan Cox (the Linux kernel hacker) started to write poetry. Check out his diary. Oy, I like them so much. If you are interested read them here, here and here.

People don't notice us, they'll never see
Under their noises a hacker may be
We edit by night and we sleep in by day
Writing up patches to send bugs away

Oh another one I like:

Reading junk, feeling bad
Another night going mad
x-jack drivers are so bad

But I just love the code I read
Another beer is what I need
Another bug, my ram is freed
We are the code crew

Go on Alan !!!

pphaneuf wrote about it's problems with morale slump. There was a time when I believed that this was the difference between professional programmers and amateur ones. I was wrong, it just happened to be very used to be productive. Then I had my own shares of problems with productivity. As a matter of fact I just slowly get out of one.

There where a few good comments on the phenomenon. I only have to add one thing which really annoys me. Chemicals! I have in my neighborhood a doctor which happens to be a family friend. Once, seeing the kind of color I can exhibit (all day long on front of my monitor, what do you expect ?) suggested to take a few vitamins. A couple of pills an my mood, energy and productivity was back.

During stress and long periods of intensive work, we often feed irregularly and badly which makes our metabolism a bit unbalanced, this can cause again depression and in the end get our productivity down the floor, which again makes us feel even worst.

I don't really believe in drugs, but here are a few things I found to be very useful to me during bad times, and which are not very serious drugs to make me worry to much about the fact that I use them from time to time.

  • Magnesium and B6 based vitamins
  • From time to time we do use to make crazy things like, sleeping 4 hours a day and working 16 and this for many weeks. This chaotic activity doesn't do much good to our neurons, plus that they don't really grow back once they died. So here is Piracetam in small doses, which gives a pus of oxygen to the brain and protects the neurons.
  • When things are getting even worse, and we are constantly depressed, there are the anti-depressive drugs. Now, this is a bit to much for me, but once again I've got a good tip from my doctor friend. Natural anti-depressive like Hypericum perforatum ( known as St. John's Wort ). You can find some pills containing the plant and does wanders despite the fact that it's the pure natural plant only and not some synthetic chemical.

If I only knew how to post an reply to an advogato.org article I would be saved, but hell I can not find how.

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!