emk is currently certified at Master level.

Name: Eric Kidd
Member since: 2000-08-24 04:54:04
Last Login: N/A

FOAF RDF Share This


I'm the primary author of CustomDNS. I'm also hacking on the optimizer and heap dumper in Gwydion Dylan. I make my living as a software consultant, specializing in free software.

I'm looking for a way to make a decent living by writing free software. Tricky, that.

(My certification appears to be artificially inflated. My major contributions have all been to highly-specialized projects, not to commonly-used infrastructure.)

E-Mail: eric.kidd@pobox.com


andreas: For all his excellent work on Gwydion Dylan over the years.

cam: I know him from his weblog, CamWorld. He's recently joined the free software community. Good luck!

igor: Dude, MOO Canada didn't exactly need a monotic class precedence algorithm. You're sick. But the Open-GL-in-Dylan demos were undeniably cool.


Articles Posted by emk

Recent blog entries by emk

Syndication: RSS 2.0

Finally, a working GDB. After much pain and suffering, I've upgraded to GDB 6.1, which appears to be reasonably compatible with gcc 3.4. No more bizarre RTTI errors, and symbol lookup is now blazingly fast. Cool.

Precompiled headers with GCC 3.4. Microsoft is still ahead here, I think--even with precompiled headers and a well-designed header layout, GCC 3.4 build times are painfully slow compared to MSVC 6. (I'll know about MSVC.NET when port this new code over.)

It seems that GCC does a lot of work at template instantiation time, which means that every std::map<T> in your non-precompiled headers hits you where it hurts.

C++ feelings. My love-hate relationship with C++ has been leaning towards "hate" recently, as I've been doing lots of complicated data structures and learning where shared_ptr just doesn't cut it. But I've laid the groundwork for a simple garbage collector (which I needed to write anyway, for use with the code I'm generating), and I feel about 500% better about my code base.

Kernel 2.6 impressions. I've just upgraded my laptop from kernel 2.4 to 2.6, and finished screwing around with various configuration files. So far, everything seems to work very nicely, including features which were hopelessly broken in 2.4. Combined with a good hardware autoprober, this could be a pretty user-friendly kernel.

The new scheduler has improved interactive responsiveness tremendously, too. I can actually use my computer while exim delivers a large mail queue through expensive procmail filters.

So far, it's a winner. Does anybody know of a decent hardware autoprober for Debian?

C++ Frustrations. Normally, I can get some enjoyment out of programming in C++ (especially with a working STL and the boost libraries), but I've been suffering a fair bit of frustration lately.

Smart pointers are almost good enough, but fail in interesting little ways just when you need them the most. In my Type::GetResultType function, for example, I need to return this for all types except function types, and there's no way to get a shared pointer to this. So I need to hack around this somehow.

I miss Dylan.

16 Apr 2004 (updated 16 Apr 2004 at 21:51 UTC) »

I just installed Gnome 2.6 out of Debian experimental, and I'm pleased by several things.

It's faster. GTK seems to be faster--menu redraws are quick, and the whole interface feels pretty good. Most impressive, though, is Nautilus, which has gone from dog slow to downright snappy.

It reminds me of the Mac. I'm an old Mac user, so I'm delighted by the "spatial" version of Nautilus. Essentially, there's a one-to-one mapping between directories and folder windows, and folder windows have persistent properties, including location. This was a really robust UI design, and I'm glad to see Nautilus borrowing it. I just wish they'd simplify the screen even further, and add support for those nice Finder triangles.

It has good blogging tools. I'm writing this post using a panel applet. It only takes me two clicks to post to Advogato. I've also set up the Straw news aggregator, which is thoroughly reasonable.

All in all, the UI situation is very good in Gnome 2.6. I'm impressed at how quickly the Linux desktop is becoming truly usable.

(On an unrelated note, Blender, MakeHuman, and Wings3D make a darn sweet 3D modelling setup. You can get better, but not without getting well into the 4-figure range.)

I'm banging away on a native code generator. Basically, we needed a bytecode interpreter, and I had written one too many bytecode VMs. Remembering a comment by David Simmons on his SmallScript work--he argued that JITs perform 10 times better than VMs for about the same amount of work--I decided to hack up a native code generator instead.

Sure enough, it's easy, at least once you figure out the platform's calling conventions and what a ModR/M byte actually is.

Now, generating good code is an entirely different matter. But I'm not trying to do that. :-)

21 older entries...


emk certified others as follows:

  • emk certified andreas as Master
  • emk certified emk as Journeyer
  • emk certified cam as Apprentice
  • emk certified igor as Journeyer
  • emk certified aaronsw as Journeyer

Others have certified emk as follows:

  • emk certified emk as Journeyer
  • manu certified emk as Journeyer
  • adubey certified emk as Journeyer
  • welisc certified emk as Apprentice
  • jlf certified emk as Journeyer
  • igor certified emk as Journeyer
  • andreas certified emk as Master
  • rw2 certified emk as Apprentice
  • ErikLevy certified emk as Journeyer
  • wmf certified emk as Journeyer
  • jLoki certified emk as Journeyer
  • josh certified emk as Journeyer
  • fozbaca certified emk as Apprentice
  • rossigee certified emk as Journeyer
  • mattbradshaw certified emk as Journeyer
  • aaronsw certified emk as Journeyer
  • tdxdave certified emk as Journeyer
  • fxn certified emk as Journeyer
  • effbot certified emk as Journeyer
  • mrsbrisby certified emk as Journeyer
  • lerdsuwa certified emk as Journeyer
  • ara0bin26 certified emk as Journeyer
  • kclayton certified emk as Journeyer
  • adl certified emk as Journeyer

[ Certification disabled because you're not logged in. ]

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!

Share this page