Electricmonk

Ferry Boender

Programmer, DevOpper, Open Source enthusiast.

Blog

DataQ v0.2 released

Saturday, July 30th, 2005

Version v0.2 of DataQ has been released. Changes in this release include:

  • Access control.
  • PHP Client library added (LGPL)
  • Rewrite of configuration file reader
  • Several small bugfixes.

Data retention is no solution!

Thursday, July 28th, 2005

I believe that:

  • Data retention is an invasive tool that interferes with the private lives of everyone;
  • Retaining personal data on everyone is an illegal practice in terms of Article 8 of the European Convention on Human Rights, as it is disproportionate;
  • Security gained from retention may be illusory, as it is likely that traffic data that is associated to one individual may actually be linked to activity taken by another, or by a process that is unrelated to the activities of that user;
  • The means through which this policy is being pursued is illegitimate, as some member states who have failed to pass this policy through their own Parliaments are now trying to push it through the EU instead in the name of harmonisation and international cooperation.

I call upon the European Commission and the European Parliament to examine the proposal for data retention very critically and uphold the protection of human rights, including privacy, in these difficult times.

www.DataRetentionIsNoSolution.com

Comfortable Mp3 tagging with EasyTag

Thursday, July 28th, 2005

I’ve searched for years for a good Mp3 tagging utility. They all failed on some points:

  • Too slow (in either the User Interface or the updating of tags)
  • Confusing User Interface
  • No IDv2 tagging
  • No mass-tag-updating
  • No way of renaming files according to tags
  • No way of reading tags from the particular way I name my mp3’s (Artist name/CD name/Artist name - CD name - ## Song name)
  • Gazillion dependencies.

Every single one I tried failed for some reason… every one except for EasyTag. EasyTag does it all and does it easily.

Why Freshmeat.net is obsolete

Monday, July 25th, 2005

Back in the good old days, Freshmeat.net was the source for getting your daily dosis of new Free Software/Open Source Linux programs. A single visit a day would keep you up-to-date on the lastest important software releases in the Open Source community.

Freshmeat’s target audience has always been hard to describe. In the beginning it catered to programs, tools and libraries for the Unix FOSS world. Then all kind of scripts started popping up: PHP webapplications, Python scripts, PERL stuff, etc. Then they added themes to the index. Next crept in the FOSS Windows software. Soon Non-FOSS Unix software followed. Nowadays, what audience isn’t targetted by Freshmeat? I can’t really think of one, truth be told.

Freshmeat is:

  • not for FOSS software
    It also lists various closed source software packages.
  • not for software running on FOSS Operating Systems
    Quite a number of Windows and MacOS applications are listed.
  • not for Free (beer) software
    It also lists various software that needs to be payed for.
  • not for End-user applications
    There’s a myriad of developers tools and libraries.
  • not for traditional desktop applications
    Much server software is announced every day.
  • not for ‘real’ programs
    There’s an annoyingly large ammount of web-applications in the index.
  • not for software in general
    It also carries themes.

I honestly don’t know what Freshmeat’s supposed to carry anymore. Luckily, the Freshmeat’s About page provides a sollution:

freshmeat maintains the Web’s largest index of Unix and cross-platform software, themes and related “eye-candy”, and Palm OS software. Thousands of applications, which are preferably released under an open source license

Quite broad, isn’t it? Also somewhat incorrect, as I seem to recall many non-portable Windows programs pass by on the frontpage.

I almost never visit Freshmeat anymore, unless I’m looking for some particular Unix program which I can’t find on Gnomefiles or google. I’ve taken it out of my RSS reader since the ammount of crap software (read: web applications, java, scripts, libraries, etc, etc) has long since surpassed the ‘traditional’ software.

I know I shouldn’t be the one to complain, since I’ve also got some web applications listed on it. Plus, who am I to tell Freshmeat.net what what categories it should adhere too? It’s just a shame I now don’t have a regular page to go to for my daily injection of FOSS release news.

(And, yes, I know I can log in and filter out categories. But, honestly, I’m too lazy to log in each time and the ‘Remember me’ option never seems to work for me. That and the fact that it doesn’t provide filtered RSS feeds makes freshmeat quite useless for me)

Taking Firefox 1.1 (Deer Park) for a test-drive.

Thursday, July 21st, 2005

NOTICE: Please substitute all occurences of the text ‘1.1’ in this article with ‘1.5’. The reason? They’re skipping v1.1 and going straight to v1.5. Too bad I didn’t find out about this Roadmap earlier.

About Deer Park

Deer Park, the development codename for the upcoming Firefox v1.1 release, hit the Alpha 2 stage last Sunday. Being curious about the new Firefox release, I decided to take it for a test-drive. My findings I will discuss here.

Please keep in mind that Deer Park is still in an Alpha stage, meaning that many glitches still need to be sorted out. Some of the problems I experienced during my usage of it may (or may not) be addressed in the versions between Alpha 2 and the final release of v1.1

Where are they?

So, what exactly is the status of v1.1? Where along the road are they? Unfortunately, I found that there have been no announced release dates for the various beta and Release Candidate (RC) versions. Perhaps disclosing dates at this time will put too much pressure on the project, who knows? Update: A new roadmap for Firefox v1.5/v2.0 has finally been posted.

May 31 saw the release of the first Alpha release; Alpha 1. The Alpha releases are a way of setting milestones for the finishing and polishing of new features (See the product planning and release management page for Firefox v1.1 on the Mozilla wiki). Alpha 1 saw the landing of the following features:

  • Extension manager
    The extension manager is mostly useful for extension developers. The internals of the extension managing code has been updated to make it easier for developers and third-party applications to register extensions. All nice and well, but not really interesting to us end-users.
  • In-line SVG
    Now here’s a major new feature that is extremely promising. SVG, an acronymitocity (*cough*) for Scalable Vector Graphics, is a ‘new’ (it’s actually been around for quite some time now) technology for displaying graphics made up out of commands. For instance: <ellipse cx="200" cy="190" rx="85" ry="55" />, which draws an ellipse. Vector graphics are often used by diagram drawing tools and, for instance, Adobe Illustrator. (More info on SVG)

    Firefox v1.0 already had SVG-displaying capabilities, but only for separate SVG files. Deer Park, A.K.A Firefox 1.1 will have support for displaying SVG that’s in-line in the HTML, meaning other parts of the page, like Javascript or CSS, can interact with it. SVG support will be discussed more in-depth below.

Alpha 2, released last Sunday and the one I’ve taken for a little previewing, also had its share of newly completed features. The most prominent for end-users are:

  • Software update improvements
    The final version of Firefox v1.1 will include a fix for something a lot of users have complained about: Binary patches. Right now you’ll have to download the whole +/- 8 MB large installation package each time a small update is released for Firefox v1.x. All this will change with binary patches, requiring only a very small download for each patch.

    The new software update code also supports cryptographic signing of new releases and (presumably) patches. This will allow end-users to verify software as truly originating from the Mozilla foundation and not some malicious man-in-the-middle.

  • Improved pop-up blocking
    Advertisers, curse their little money-grubbing hands, have already found ways around Firefox’s excellent pop-up blocking feature. Many users complained and here is the Mozilla foundation’s answer to your prayers: improved pop-up blocking. I haven’t actually tried this out, since I’ve never seen any pop-ups with Firefox anyway.
  • Fast back
    I’m not really sure what this feature is all about, but I think it has something to do with making it faster to go back in the page history (when you press the ‘back’ button). I’m assuming this works by keeping an already rendered copy of the pages in the history in memory so they’ll display faster.
  • Reorderable tabs
  • Tab reordering
    Finally it will become possible to reorder tabs in Firefox.

The Beta release will be the first feature-complete testing version of Deer Park. There’s no release date yet for this release, but when it’s released be sure to grab a copy and do some browsing with it. Finding bugs and improving stability are the main focus of this release.

Next will come the Release Candidate (RC) stage during which a number of RCs will be released for public scrutiny. No word out yet on any dates or even how many RCs will be released. Everything depends on how the project fares up until this point.

And finally will come the v1.1 release.

The test-drive

Finally, on to what you’ve all been waiting for! My findings during the Deer Park Alpha 2 test-drive! The jury has returned and the verdict is out: It’s… okay.

Don’t get me wrong, I’m enthusiastic about this release, I really am. It addresses many of the problems I’ve had with the v1.0 release. But it’s not that much different from v1.0. And I guess I’m actually glad about that. Remember that this is just a minor release and, even though it’s seeing some cool new features, the main point is addressing problems in the first version.

Installation

The installation was quite uneventful, which is a very good thing. I simply did a full download of the Alpha 2, unpacked it and ran it (after making a backup of my profile directory). Except for breaking some extensions, which was to be expected, Deer Park flawlessly assumed previous settings. I don’t expect a lot of problems with this when the final v1.1 goes live.

I had no trouble switching between the old Firefox and Deer Park, which makes testing Deer Park pretty easy. The only annoyances were that each time I switched between v1.0 and v1.1 A2, it would complain about the plugins again and re-show the Mozilla page as my default homepage. Then again, I really shouldn’t be running two different versions on the same profile.

Yet Another New Configuration Dialog

The first thing that struck my eye was the fact that they, once again, changed the configuration dialog. I must say I’m getting a little sick about this. Each time I’m finally comfortable with the new configuration panel, they change the layout again. On the up side, not a lot of options have been added or removed. Mostly the placement of the main options (the buttons) has been changed from being on the left to going to the top.

One problem that did occur was with the sizing of the elements. As I have experienced before with Mozilla applications under Linux, there’s sometimes not enough space in the elements to draw all the sub-elements like text and buttons, giving everything a rather pressed-together and messy look. Resizing the dialog usually cures the problem. Also, after having fiddled with the Gnome fonts, I suddenly noticed things where back to normal again. I’m not sure what I did to improve things, but they are, and that’s what counts.

Config with annoying link-border

Something that did annoy me was the small stippled border around clicked tabs (see screenshot). Let’s hope they remove it in the final release; it looks ugly. (I’m probably being too uptight about this, aren’t I?)

Some of the things that changed in the preference dialog are the way Tab settings are displayed. In the old 1.0 version they were simply a bunch of toggle buttons in a big scrollable list. These have been sub-categorized under tabs, a small but nice improvement. There’s also a ‘Sanitize’ option added, substituting the old ‘Clear all [saved information]’ button. It includes an option to clear everything upon exiting Deer Park. I read something about it also having a keyboard shortcut to erase this information, but I couldn’t find it.

User friendly errors

User-friendly errors

User-friendly errors instead of those annoying warning pop-up dialogs have been turned on by default. It takes a little while getting used to, but it’s definitely better than error dialogs popping up unexpectedly.

My gimped User-friendly error

They could use a little attention by a skilled artist though; these look kinda crappy. Maybe throw in some nice Mozilla Lizard. Something like the one on the right… okay, okay, I just felt like Gimping a little. :-)

Fullscreen mode

One of the things that annoyed me, and unfortunately still does, is the fact that there doesn’t seem to be a way of escaping from Fullscreen mode without using the keyboard. The only way of exiting it is pressing F11, which users may not have noticed in the menu when they selected ‘Fullscreen’ in the ‘View’ menu. They’ll be stuck in fullscreen without knowing the way out. A little pop-up saying ‘Escape from fullscreen mode by pressing F11’ would already help a lot. Also, tabs aren’t hidden, making fullscreen mode look like a bit hackish. It’s not too much of an annoyance though, since I hardly ever use the mode.

Worst bug ever finally fixed!

The best thing, the sole reason I’ve been waiting with much anticipation for Firefox v1.1, is the fix of the infamous and severely annoying bug #97283 A.K.A the Div overflow=auto scrollwheel bug. We use overflowing div’s a lot in web-applications at my job, and not having the ability to scroll with the mousewheel is very frustrating indeed. The bug’s been open for almost four years and it is, in my opinion, the only failure of the Mozilla development team. This bug remains open though.

SVG Inline

Earlier in this write-up, I talked about in-line SVG support in the new Firefox version. I’ll elaborate on it here, and I’ll do so via an example: Take this HTML page:

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>XTech SVG Demo</title>
  <style>
  stop.begin { stop-color:yellow; }
  stop.end { stop-color:green; }
  </style>
</head>
<body style="position: absolute; z-index: 1; margin: 0px;">
  <svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 100 100"
    preserveAspectRatio="xMidYMid slice" style="width: 100%; height: 100%; 
	position: absolute; top: 0pt; left: 0pt; z-index: -1;">
    <linearGradient id="gradient">
      <stop class="begin" offset="0"/>
      <stop class="end" offset="1"/>
    </linearGradient>
    <rect x="0" y="0" width="100" height="100" style="fill: url(#gradient);"/>
    <circle cx="50" cy="50" r="30" style="fill: url(#gradient);"/>
  </svg>
</body>
</html>
Inline rendered SVG

Notice the <svg> tag and its namespace. It’s in-line SVG. Inside this tag appear drawing instructions which Firefox’s SVG render will interpret and display in the browser. The result can be seen in the screenshot on the right. Now, look at the CSS piece in the HEAD element. It controls the colors of the gradients in the drawn elements. Changing the CSS, be it by hand or with Javascript, will change the gradient colors in the rendered SVG! Is that awesome or what?

This new feature has enormous multimedia potential. It could, theoretically, be capable of replacing Flash on the World Wide Web. I say theoretically because of two reasons. First, Flash is already a pretty established ‘standard’. Second, Internet Explorer, nor any other browser that I’m aware of, supports in-line SVG and probably won’t for a very long time. This, I believe, will severely hinder the adoption of SVG as a viable drawing technique in web pages. Thankfully I’m not in the business of making vague predictions, so maybe it will take off.

Another problem I’m seeing with in-line SVG is the fact that it’s dog slow. I mean, even on my fairly brand-new 1.7Ghz Laptop it’s noticeably slow when, for instance, moving or resizing the window. On the other hand, an online demo showing dynamically rotated parrots (or whatever they were, I’m no ornithologist) seemed to perform reasonable.
A nice SVG tutorial can be found on the Mozilla Developer site.

Stability

Deer Park was still a bit lacking in the stability department. Naturally, this is still an alpha release and things may still improve in the releases before the final v1.1. All in all I experienced about three crashes during the test-run, which lasted about 3 days. Perhaps I should have started with a new empty profile.

Conclusion

Deer Park is coming along nicely. There aren’t a lot of new features, but the ones that are there are pretty awesome (SVG yay!). I didn’t notice any real speed-increases or any other real improvements bar the things discussed above. Not that that’s a bad thing of course; I mention again the fact that this is only a minor version increase.
It’s clear that Deer Park Alpha 2 isn’t ready for production use yet, but that’s to be expected of an Alpha release. I’ll stay on top of new releases though, and I’m already adopting Alpha 2 as my new main browser (mostly for the #97283 bug fix).

If you yourself want to stay up-to-date on the latest developments surrounding Deer Park, check out the developement news. There’s also a special Deer Park Roadmap weblog.

Update: Most of the sites that are linked to from this article appear to be dead. It seems http://developer.mozilla.org is currently down, at least for me. Sorry.

SecureSHell File system

Thursday, July 21st, 2005

Okay, I’m on a linking rampage here. Sorry. (I hate link-logs). But this is pretty cool, and I’ve been looking for it for a long time. Mounting a remote filesystem over SSH: shfs.

Shfs is a simple and easy to use Linux kernel module which allows you to mount remote filesystems using a plain shell (ssh) connection. When using shfs, you can access all remote files just like the local ones, only the access is governed through the transport security of ssh.

For example:

[root@jib]/# ssh todsah@electricmonk.nl
Linux sharky 2.6.8.1 #4 Fri Nov 5 09:48:16 CET 2004 i686 unknown
[todsah@sharky]~$ ls
id_rsa.pub
[todsah@sharky]~$ exit
[root@jib]/# mount -t shfs todsah@electricmonk.nl mnt/
[root@jib]/# ls mnt
id_rsa.pub

Open Source Web Design

Thursday, July 21st, 2005

Aaaaand, yet another interesting project: Open Source Web Design. For those unfortunate souls that have to make it through life without any artistic skills whatsoever.

Open Source Web Design is a community of designers and site owners sharing free web design templates as well as web design information. Helping to make the internet a prettier place!

Debian System Administration Tips and Resources

Thursday, July 21st, 2005

Cool site: Debian-Administration.org

This is a simple weblog which is designed to contain interesting and useful information related to the System Administration of Debian GNU/Linux systems.

Whilst there are several sites where users can post questions and have answers contributed by other users there are no other sites on the web which are specifically targetted at distributing articles of interest to Debian administrators.

This site is designed to fill that void, with content accepted from users.

The most important development documentation…

Wednesday, July 20th, 2005

The most important development documentation might not be functional specifications, technical specs, use cases, design diagrams or UML graphs. Since the most work done on finished applications is bugfixing and very small feature enchancements, it’s usually not much of a problem doing without these. But taking over a project without any knowledge on the build environment and process, now that’s a truely draconian task.

Uptime record

Tuesday, July 19th, 2005

I’m no Operating System uptime geek, I really don’t care too much. But this is still pretty cool, my alltime record:

[todsah@sharky]~$ uptime
12:36:59 up 256 days, 50 min, 3 users, load average: 1.75, 1.72, 1.24

If only I had a UPS.

The text of all posts on this blog, unless specificly mentioned otherwise, are licensed under this license.