Recent blog entries for dnm

Job hunting. Still. Sigh. My strengths are in infosec, crypto, P2P networks, and web apps. I will relocate just about anywhere. Email me if you're interested in chatting.

I shut down my LiveJournal journal a while back and replaced it with a Blogger-powered blog. I still mean to keep my Advogato page around, since I like the community, but I don't have much to chat about in the realm of open source or free software projects at the moment. I talk about other geeky stuff on the new blog too, should you be interested. Trying to keep two journals is an interesting exercise in idea management. What to put where?

26 Sep 2001 (updated 27 May 2002 at 21:55 UTC) »

Somehow I only found recentlog lately (as in, a few weeks back). Now I dig why people respond to other people in their entries. I'm often dense like this.

I made a quick list, mostly from memory and some written notes, of how many outstanding projects I've started for myself that remain unfinished as of 2001-09-26 (all praise ISO date format, it actually makes sense). By this rough count, I'm around 20 such projects. I immediatly prioritized each project on a low to high scale, although when the list started getting dense, I found the lines were becoming grey and a lot of projects were falling into "low-medium" or "medium-high" rankings, which isn't very helpful. Still, it's a first crack at self-organization of hackery, ultimately to result in a publicly viewable (and perhaps interactive) project docket on my website, sometime soon. I though about posting the list here as a matter of public record but chickened out.

I'm cautiously looking forward to Mac OS X 10.1. Hopefully it will be improved enough to be compelling to me and I'll switch over. We'll see...

CodeCon 2002 was announced on various lists (coderpunks and p2p-hackers, amongst others) for February 2002. This sounds like a P2P convention I might actually attend for the right reasons.

In other news, I have a Linux box performing admirably running a Linux distro I'm managing not only not to hate, but to actually enjoy somewhat, which is a first. It's Debian.

Notice to employers in the Toronto area: if anything here interests you, and/or you'd like to talk, I'm currently available. Contact me at

4 Aug 2001 (updated 4 Aug 2001 at 14:15 UTC) »


I'm no longer with OpenCola.

Like many of my projects to date, beepcore-ruby is in a holding pattern. I'm negotiating the purchase of some equipment from OC, but it'll be two Apple machines at most (a G4 minitower and a G3 Pismo PowerBook), and unfortunately, Ruby doesn't run on Mac OS 9 (I heard tell of a really old port, but my question to ruby-talk on the matter of locating source code that I could perhaps try to bring up to date went unanswered). The upside is that I'm working on BEEP in Squeak (beepcore-squeak?) instead. I'm not sure if I'm going to release it, but I suppose I may as well. I'm doing it because Ruby and Smalltalk are similar, and I can port what I do in Squeak over to Ruby. It means that beepcore-ruby won't be available for a while, but perhaps the resulting additional code base will make up for it.

I have, as always, been tinkering with some other stuff recently. I'm hacking on a Lisp system for Mac OS 9, fiddling with Forth, Haskell, and Clean, and toying with some other things. I've created a docket of my current projects, to help me manage my time better. You'll be able to view it and do other snazzy things with said docket when I launch my long delayed web site.

Like stevej and nchriss, I've been thinking about OpenCSP and similar topics. I'm also interested in working on an idea I spouted off about to the e-lang list back in May; an implementation of capabilities in monads.

So as a more serious task with which to plumb the depths of Ruby, I'm attempting to write a BEEP implementation ("beepcore-ruby" anyone?) along the lines of the available Java and Tcl beepcore code. Assuming all goes well, I'll then start adding things on, like prototype apps using APEX, IMXP, SEP, Beepster (nee HSTP), etc.

I quite like the design of BEEP, although Justin Chapweske seems to think it's in the same boat as JXTA: crap, particularly the sort of crap that uses multiplexing in a messaging protocol. I disagree on that and a number of his other points, but I reserve the right to change my opinion once I start actually having to dive into the RFCs, etc.

26 May 2001 (updated 26 May 2001 at 02:58 UTC) »

Just checked email. Oh well, never mind. I'll just try to do it at Defcon.

26 May 2001 (updated 26 May 2001 at 02:42 UTC) »

Oh, I almost forgot:

I submitted a abstract, outline, and bio to Jeff Moss, organizer of The Blackhat Briefings and Defcon for a presentation I'd like to deliver at this year's Blackhat: Las Vegas in July. It's titled "The Impact of P2P on Security in the Enterprise" and will attack the hard questions facing P2P and decentralized applications inside the space of a secure enterprise network. I think there's way too little of this sort of discourse going on in either the P2P community (where I see mostly a lot of talk of ad hoc NAT tunneling, among other worrying trends) or in the security community (where the bulk of P2P seems to be about Napster and how to stop it from raping all your bandwidth). This is dangerous. It's also dumb. I'm proposing to talk about these issues not only to the people developing the systems, but also to the security administrators whose job it is to make sure their networks stay secure. Hopefully this presentation will get the ball rolling.

If you think this sounds like a worthwhile presentation, and you will be attending Blackhat in Vegas this year, please mail Jeff and ask him to consider the presentation for inclusion into the schedule. I'm working on the PowerPoint that will be shown at the conference right up to the June 1st deadline. If you have comments or suggestions, please mail me.

Brief credentials: I work as a Research Scientist for OpenCola and also serve as the Chief Security Architect. OpenCola is a pre-IPO startup company working to provide distributed computing infrastructure (DCI) solutions to the marketplace (as in P2P and decentralized apps). Previous to OpenCola, I worked in Research for Viasec Limited, a crypto software development firm based in Ireland (now out of business).

Enough self-promotion. Sorry about that.

26 May 2001 (updated 26 May 2001 at 03:00 UTC) »
Swarmcast launched earlier this week. I suppose I've got some tangential job pride, even if I'm not directly related to the project. Swarmcast being released is good. I like to see the company do good by the community, and after all, it means my stock options are all that more likely to be worth something. And it forces us to respond to the real world demands of users, which we really need, and hopefully, will benefit from.

With the exception of the language structure and other related bits, most of the really snazzy features in Self are in Squeak these days (like Morphic). And Self on Mac OS is noticably unoptimized.

I want to do more with our software, but I keep getting penned in. I joined Research so that wouldn't happen. Obvious lesson: there is no such thing as research in startups. Not pure basic research anyway. Although, I'm not sure why I expected it -- the last startup I worked for was the same (and worse in other ways). Perhaps I thought it was a fluke and I ought to give it a second try. Fair enough.

I do, however, really treasure my work environment. It's amazingly flexable and I'm provided with ample resources. No complaints there. The work just isn't very interesting to me at the moment, although it's a field I have experience in. I think I was looking to diversify more and haven't yet been able to. On the other hand, if I do my bit to make the company successful, then I could presumably do cool stuff later when we have a stable base to develop on. I'm too impatient a lot of the time.

Still playing with Ruby. Still hacking Common Lisp. Still fiddling with lots of other toys. demoncrat is right: I need to release source code.

Picked up the PickAxeBook today.

stevej was right, I am a language nerd.

So, I'm working/playing with Common Lisp, Scheme, Python, Smalltalk, Java (rarely now, though), and E. I've toyed with Rebol (REBOL?), Haskell, Objective-C (wouldn't mind doing more, because I actually know it moderately well, but I was using it for Mac OS X stuff that's currently on hold), and (eek) REALbasic.

Oh, and Self. Just noticed there's a Mac OS environment for it.

More to come...

Roar. Growl.

I feel torn. I'd prefer to be writing everything in Lisp or Scheme, but I feel the need to do things in Java, Python, Objective-C, and the like. Why? Modern support, peer pressure, availability of free development toolkits on multiple platforms, API support, etc, etc. Some days, I just can't bring myself to look at anything that does variable assignment.

Recently got a Mac OS X box up and running using the stock CD copy of Public Beta. Not bad. The Aqua look and feel was novel for about an hour before it started hurting my eyes and distracting from the the general "use" experience. I like that I can forget about the UI in Mac OS 9 and just do work. Honestly, as nice as it is in some ways to be back in a NeXTSTEP/OpenStep-ish environment with Mach and Objective- C (I was a big NeXTSTEP/OpenStep fan and developer), there are lots of things I could do either without or with a lot of improvement in Mac OS X. But overall, I think it's a win, so long as they include more optional functionality (like a native Mac OS 9 UI option [I can't shade windows in Mac OS X -- it minimizes them in an agonizingly slow fashion to that horror that is the Dock]) in the upcoming public release. Oh, and it needs to be a lot faster. I have it on a G4 with 192 MB of RAM and it redraws real slow. I wonder if they're using Altivec functionality in the Public Beta. I think not. They better in the release version. More native apps would be nice too, but that'll come with time.

Intertwingle plods along. I have a bare-bones API (if you can call it an API) in Scheme that I'm busy turning into working CL code. I'm still debating doing it in Java too, if only because of rich class library support and public attention.

Need to find some time to get my head around turning E into JVM bytecode for the first E compiler (which I'm dubbing Eco).

My end of Vapour has stagnated, I need to get back on top of that too. And CLAS. And R6RS. And I want to help out/pick up some new projects too, especially something on SourceXchange. And I want to get my personal domains set up and running. All of this, plus work, love, and the rest of life. Something tells me that I either need to moderate my expectations or get real good at time management. Probably both.

Insert obligatory groan about not posting to Advogato more often here. See my LiveJournal for corresponding irony on previous statement.

Doing more with E in all sorts of ways. openCOLA has agreed to take me at my word that E is the way to proceed with our DRM strategy and especially for Smart Contracts, the true killer app of distributed capabilities. oC has hired markm on contract and I'm being given the go-ahead to hire stevej as one of two full-timers for E/DRM implementation. I just announced today on the e-lang that I'll be starting work on an E to JVM bytecode compiler. All sorts of hackery abound.

I have other projects I need to devote some more time to, especially Lispy stuff, speaking of which, the LispM has arrived (pictures forthcoming).

5 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!