Older blog entries for mathrick (starting at number 89)

10 Nov 2007 (updated 14 Nov 2007 at 22:23 UTC) »
CGI-Lisp

I’m happy to announce the first release of CGI-Lisp. It’s a small hack that allows you to trampoline webserver requests into a long-running Lisp process, just like mod_lisp (and using the same protocol), except that it runs as a CGI handler. So you can run it on shared hosting.

The code was stolen from Rob Warnock, who hacked it years ago. I in turn hacked it into speaking unmodified mod_lisp, which allows it to be used as a drop-in replacement:

CGI-Lisp screenshot

It’s been extensively tested by running it on exactly one machine in exactly one scenario. That means it will quite possibly break for you. If you still ain’t scared, grab the tarball here.

Update: so yes, I realise you hate GLib and can’t install it on your server. Debugging it was sufficiently annoying, though, for me not to be willing to put up with the sorry excuse for string handling of plain C. And I don’t think it will be very useful without handling POST anyway. I will probably fix that later on, but I don’t have the time now.

Update 2: I rewrote it not to require GLib. It’s slightly slower than before, but not much, and it’s good enough for me. POST non-handling still needs fixing though. You can grab the updated version from the same place.

#

29 Oct 2007 (updated 5 Dec 2007 at 20:48 UTC) »
Everything you (never) wanted to know about C++

Ladies and gentlemen, the C++ FQA Lite!

If you hate C++, you’ll have a great time reading this brilliant and amusing rant that rings just so true. Occasionally you’ll weep when it rings a little bit too true, invoking painful memories.

If you love C++, it’s a big flaming rant, but written with technical competence that easily shadows everything else out there that’s been written on the subject. You can’t claim any knowledge of C++ without having read it. And chances are that it’ll make you not love that sin against all good and just before it’s too late. Just think about it, the author is still trapped inside the warped world of C++, dealing with errors that have defeated everyone else on his team. The FQA is really a desperate cry from inside the asylum for you to stop while you still can. Think about it, you’ll be endlessly happier if you do.

If you don’t care about C++… Well, lucky you. But if you know someone who likes C++ more than they should (that is to say, at all), consider doing them a favour and pointing them to the FQA. Friends don’t let friends use C++.

#

28 Jan 2007 (updated 28 Jan 2007 at 15:22 UTC) »
Im in ur specs, synergistically leveragin ur award-winnin opportunities

Quiz time: Guess what it is about?

The Hardware Start Button, (…), is designed to be an attractive and discoverable actuator for launching the new Start menu and search experiences in the Windows Vista family of operating systems. The Hardware Start Button creates and deepens affinity between physical hardware and the Windows Vista user experience while complementing the brand platforms and product design languages of hardware manufacturers.

If you guessed "the Windows key" (found on just about every keyboard manufactured after 1996), then you're right. And this ridiculous paragraph is the intro to a spec detailing such exciting aspects as what paint to use, or how polished the key surface can be.

 More gems:

<u>What’s new in Version 1.01?</u>

Conventional Keycap Design Requirements (page 7)A matte finish with a consistent texture of MT11000 or equivalent may be used on the Hardware Start Button dome and chamfer instead of an SPI A2 gloss finish for an indefinite period of time, not until December 31, 2007 as the Version 1.0 specification stated.

The Hero Start Button functions as a Start Button just like the other implementations in this specification. It is not required and is provided as an option for keyboard manufactures that want to take advantage of its more dramatic look.

And what is this "more dramatic look"?

Larger size, clear dome, and full-color printing and placement on the keyboard. The Hero Start Button uses a lens insert and is placed directly below the space bar.

If you feel brave, read for yourself.

In other news, OpenOffice.org is a steaming pile of shit that leverages every fucking opportunity to fucking crash every fucking minute and present you with a completely useless and retarded recovery dialogue even though I never changed a single character in that document.

#

23 Oct 2006 (updated 23 Oct 2006 at 19:10 UTC) »
Doodles

 

 

Inkscape is nice. The above is a quick trace of a photo, because flexible image resolution adjustment was needed (and doesn't have anything to do with the Linux distro).

On the other hand, the original SVG (linked to if you click on the image) shows how little parity is there between freely available SVG implementations. Inkscape displays it correctly (obviously), librsvg does a rather nice job, but can't display masked objects at all (there is a slight gradient on the brim which is masked), and FF simply butchers the image, unable to display something as simple as a gradient correctly. 

As Ankh says, it's not good when the only widely-available, decent SVG viewer is Adobe plugin inside IE. 

#

7 Oct 2006 (updated 8 Oct 2006 at 22:49 UTC) »
<This title contains mature language. For your protection, it has been withheld>

"This address uses a network port which is normally used for purposes other than web browsing. Firefox has cancelled the request for your protection"

 Dear Mozilla,

 You guys are fucking idiots.

Love, 

 Update: okay, so I checked, and that's a legitimate security issue, known as cross-protocol attacks. Or rather it would be, if it wasn't for the fact that a user-entered URL cannot usefully be a source of such attack. And there's a bug dating back to 2001 stating "Add user UI for that". Still lame and just as enraging when I have to use another browser for one stupid address.

#

29 Sep 2006 (updated 29 Sep 2006 at 23:48 UTC) »
Snippet of the day

<code>_('of')</code>

DEAR. GOD.

#

12 Sep 2006 (updated 12 Sep 2006 at 17:41 UTC) »
New CCharset

Yep. It’s not my accomplishment, mind you, I was too lazy and just got used to the shortcomings. So the new version of ccharset comes courtesy of teh_LaC. Here you can get it. Readme stays the same as in the old version, but bear in mind the config file is no longer compatible, so you’ll have to set channel encodings again.

#

21 Aug 2006 (updated 21 Aug 2006 at 09:10 UTC) »
The End is near

And there are sure signs:

Screenshot of Pango displaying mixed scripts in vertical direction

This is a Japanese paragraph, laid oud according to Japanese traditional typography rules, ie. running vertically, from top to bottom and with lines stacked from right to left. Notice the highlighted text. Red is Latin script, which normally doesn’t run vertical, therefore it’s rotated to retain shape in a foreign environment. The blue part is digits, which are considered script-neutral, therefore they get laid out according to the direction currently in effect.

And here’s how it’s done:

Screenshot of destop whilst coding

What doesn’t work perfectly yet is alternate embedding modes (as there’s more than one way imaginable to try and fit horizontal text in a vertical paragraph). Need to debug it.

Update:
So, I fixed the bug mentioned previously, as I expected, it was because of errors in my copypasted option parsing code in the test viewer. Now I can try out all modes, and for those of you who expected the post-apocalyptic world to be dwelled by strange and bizzare creatures, you were right. Check out this curiosity:

Screenshot of unexpected results of requested settings

This is a result of laying out a random snippets of text (taken from Wikipedia and Qatar’s MoFA site, respectively), to test multiscript layout, rendered in EMBED_LINE mode. This mode will layout paragraphs, trying to agree all foreign scripts with the primary direction glyphs run in. And as you can no doubt see, they have been agreed indeed. Except that to get LTR English and RTL Arabic running in the same direction, you need to have their “up”’s pointing in the opposite direction. Which is kind of odd and strange and confusing. But well, you can’t have a horizontal script laid out in vertical paragraph without breaching at least some of its properties.

#

Back from GUADEC

I’ve been here in PL for a couple of days already, so here are two general observations about Spain:

  • My God, it’s HOT over there
  • Salads you can get over there are surprisingly crappy and/or totally incompatible with my expectations of what a good salad is. It’s not impossible that you’re supposed to add olive and vinegar yourself, but then, how is it different from a DIY kit? And how am I supposed to do that with a full plate, anyway?

Other than that, GUADEC was a total rockage, and organisers did an awesome job. As you can read in this report (I hope you can, because I can’t ;), which’s got a paragraph about me and a pic (fame, yay!), for me the best thing was finally seeing the faces of people I have know for something like 3 years online.

Other things:

The screenshot below is a testament of my complete pwnage over Gnome Robots. The next thing, I pressed Enter and they all rushed over to crash and burn under my feet. Hah!
A screenshot of my pwnage

My CRT is broken and makes my eyes bleed if I stare at it for extended periods of time. Coding is hard this way and I need to get a new one, but noone has displays I could try out, so I’m left to choose based on whatever they write in glossy specs and hope for the best when I actually order them.

I just increased Bonfire’s bugcount 5.5-fold. It’s not often you do that (and surely the fact there were 2 bugs total filed for this youngest product in bugzilla doesn’t matter at all), and in recognition of my virtues, I gained a bugzilla point! Woo-hoo!

#

Ouch

So, yesterday my foot’s got swollen, and today it’s really blown up and hurts a lot when I try to walk on it. As I don’t remember breaking it (and frankly, I don’t believe in myself enough to claim I’d be able to even attempt walking on a broken foot), it’s probably a bite. Nasty stuff, doesn’t want to come off, but fortunately someone’s had it the same thing before, so I’ll be getting some bandages and medicine in the evening. I surely do hope it goes off tomorrow, otherwise I’ll have to see a doctor, not to mention I’ve got the plane tomorrow, with sleep-over at the airport, which doesn’t exactly sound like a fun thing to do in my current condition.

#

80 older entries...

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!