The Daily Parker

Politics, Weather, Photography, and the Dog

Build or buy?

About every five years I learn something about my craft. This is an average; the last seismic shift happened in 2002, but the one before it happened in 1995.

It's happening again. This time, I'm learning how my craft gets in the way of my business.

For the past three years (since the last time a two-by-four hit me) I've worked on the Inner Drive Extensible Architecture™, a comprehensive framework on which Inner Drive can build marketable applications. It's a masterpiece, in the way a fine, ornate table would demonstrate the competence of a 17th-century carpenter.

It turns out, I missed the advent of steam.

See, other people have already done it, and they're giving away their code. So over the past few weeks I have slowly come to realize that there is no point continuing this effort in the same way.

This demonstrates a constant, historic tension in business software: Build or Buy. Build something exactly the way you want, or buy something that's close enough.

Open source software, like Das Blog and DotNetNuke, makes this choice even more stark. Can one countenance spending 600 development hours on creating something that has half the features of something anyone can download for free?

More on this later, as I refactor the IDEA to extend, rather than duplicate, the mass of free stuff out there.

Sony digital rights management goes too far

The Code Project has today publicized details about Sony's DRM CreepyWare that lets Sony know what CDs you're listening to. It also hides in the bowels of your Windows operating system and can't be un-installed without downloading a buggy patch from Sony.

I'm all in favor of protecting copyrights. But this is creepy, and more offensive than the Mickey Mouse Protection Act of 1998.

Update: The L.A. Times has the story now.

Ich werde The Blog ersetzen

Translation: I am going to replace Das Blog.

Yes, as much as I like it—and I do, despite my gripes—I've found something more in line with the way that I work: Community Server. I've downloaded both the current version and the new Beta, and as soon as I have time (tomorrow at the earliest, Saturday at the latest), I'll switch over.

Since this is a brand-new blog, I have little compunction about wiping out all the permalinks. (There are fewer than 10 at the moment.) We apologize for the inconvenience.

Quick poll

Which do people prefer: having all the entries on the front page, one line per entry (like they are now), or having the complete posts all in a column? Talking Points Memo is an example of the "flow" design.

(I also still don't have the comment problem resolved, so please email me with your thoughts.)

Thanks for your help.

Moving this to ASP.NET 2.0 is hard

I have to give up on converting dasBlog to .NET 2.0 for now. The ASP.NET model has changed significantly from 1.1 to 2.0, breaking every single page in the application. In other words, many of the techniques developers used for making pages do interesting things in 1.1 simply don't work in 2.0, because the system doesn't work the same way. I may have missed something simple—but I don't think so at the moment.

So I think all of the pages in the application need to be changed in order to make it work. In fact, I think the whole application needs to change, to take advantage of the new features in ASP.NET 2.0. I figure fixing the current pages will take about 8-12 hours, which I can't spare until Thanksgiving. I'll just have to live with a few annoyances for now. Redesigning the application isn't going to happen.

Tuesday I'll take a look at it in Visual Studio 2003, so I can at least see how it works step-by-step, and possibly see if some of these annoyances will take a lot of time to fix.

The glimmer of light in all this is that only the Web application needs to change. All of the supporting assemblies compile without any major problems. So instead of changing hundreds of classes, I think I only have to change a few dozen.

Who's who in the Software category

I plan to use this blog to discuss software architecture and construction, using various Inner Drive Technology projects as examples. (I may also use client projects as examples, with the names changed to protect the guilty.)

Company projects

Inner Drive Technology Company Site

Inner Drive logoMost of the upcoming changes to Inner Drive Technology's public site are minor, except that the demonstrations will become gradually more interesting.

Also, I plan to cross-post the Software part of this blog to a new one under the inner-drive.com domain

Inner Drive Extensible Architecture™

The IDEA™ underlies all of IDT's software. Sadly, about 30% of its features—the configuration and messaging parts—duplicates functionality in the Microsoft Enterprise Library. Microsoft and Avanade had a lot of good people working on it for a year; I had one guy for three months. So, my next task is to integrate the Microsoft Enterprise Library with the IDEA, and concentrate on the stuff that makes the IDEA a good deal for our customers.

Weather Now

I spun wx-now.com off my personal site seven years (and two days) ago. It got a total re-design in 2002, when I migrated to .NET and built a massive 7.4-million-item gazetteer (places database) that is bigger than the United States Geological Survey's and the National Geospatial Agency's combined.

I'm already well along another total redesign that will:

  • take advantage of all the neat features of C# 2.0;
  • totally separate data from presentation by using XML and XSLT for everything;
  • actually increase the size and power of the gazetteer; and
  • finally, finally allow users to choose their language and measurement systems.

A lot of the heavy lifting for this already exists on the Inner Drive Technology website, including the language-and-measurement-customization features.

Plus, my good friend Katie Zoellner (neé Katie Toner) is doing the look-and-feel design. She created the original logo in 1999, and taught me some tricks that made it a visually appealing site.

Personal projects

This blog

I want to get this thing working on Windows 2003. This may involve debugging it on the only computer on which I haven't yet installed .NET 2.0, or I may just port the whole thing to .NET 2.0. It's open source, after all.

braverman.org

I started my personal site in 1997 and last redesigned it in 2002. It's showing its age.

It's getting a complete re-write, starting early next year. I haven't resolved some key architectural issues yet, like whether to make it a portal-type site or even to steal code from DotNetNuke. (Since DNN is a VB.NET 1.1 application, and these days I'm trying to use only C# 2.0, I probably won't.)

What it will do, though, is everything it does now, only better. It will be the testing ground for some tools I'm developing to publish and create websites in general, and it will have a much better database of jokes. Not to mention, I'll finally fix an annoying bug on the photo page that makes it almost unusable.

New fun sites

Anne has given me some ideas about applications she would find useful. Keep your eyes peeled for:

  • An application to help runners train for races;
  • A tool to figure out the nutritional content of home-made food, based on user-defined recipes; and
  • A user-friendly site that helps vegetarians and vegans find places to eat.

The last one came out of our recent visit to San Antonio, which has about three vegans and the possibility of getting vegan food at, maybe, six restaurants—none of which is on the Riverwalk.

Client projects

All of this goes on while I work on three client projects right now, so please be patient.

Me irrita Das Blog

DasBlog, the blog engine I've started with, apparently has some difficulties running on Windows Server 2003:

  1. Save buttons don't seem to work.
  2. Categories disappear and reappear like socks in a dryer.
  3. It's written for ASP.NET 1.1, which has now been supplanted by version 2.0.

I suspect #1 and #2 may be caused by #3.

For you, gentle reader, this means that you won't be able to add comments to entries yet. In some ways this may be good—comments can be used for good or evil—but in most ways it's just irritating.

I may have to re-write it for .NET 2.0. This is not my top software-development priority at the moment.

Update: Something funky is going on with caching, too. I think that's what made the categories disappear.

Also, it appears DasBlog's editor took my lovely XHTML code and made it beastly HTML 4.01 Transitional code, which in English means "it's broken."

And sadly, it seems that the authors have stopped maintaining the code and documentation.

Later update: I've turned off buffering in IIS. Let's see if that helps. Though, I've found two new irritations:

  1. Apparently the Portal theme has a formatting bug that is causing my latest post ("Who's who in the Software category) to flow waaaay off the right side of the page. Other themes either don't look right or they don't display the embedded images.
  2. The editor really, really messes up HTML, to the point that I don't trust it for anything other than basic text entry.

The real first entry

Anne and David I'm David Braverman, and this is my blog.

It's likely that the world already has too many blogs. I hesitated starting one for many years, mostly because I didn't see the point. Who would want to read my self-absorbed navel-gazing semi-literate drivel? I mean, other than my mom?

What's this about?

I'm interested in too many things to confine this to one topic, no matter how self-absorbed it gets. So look forward to entries, at least one daily, on these topics:

  • The weather. I've operated a weather website for more than seven years. That site deals with raw data and objective observations. The blog will add some interpretation, from travelogue to actual meterology.
  • Anne. For reasons that passeth understanding, she married me, and now she's the most important part of my life. (She'd be first in the topics list except that I wanted a clever acronym—which she supplied, by the way.)
  • Software. I own a small software company in Evanston, Illinois, and I have some experience writing software. I see a lot of code, and since I often get called in to projects in crisis, I see a lot of bad code. If you want to learn something about software development, this blog might be useful to you.
  • Politics. Ask almost anyone in the world to summarize my political beliefs, and he'll probably say "moderate-left". Since I'm American, and this is 2005, that means I seem like a radical-pinko-leftie to my neighbors. I'll have more to say about this as the blog progresses. At this writing a hair more than 1,164 days remain in the Dubya presidency, so I have plenty of time.

This is public writing, too, so I hope to maintain a standard of literacy (i.e., spelling, grammar, and diction) and fluidity of prose that makes you want to keep reading.

I will not write much about my personal life. It's just not that interesting unless you're already part of it. If you want salacious details, there are many other blogs out there.

So why do this?

In the true spirit of blogging, I started this for a couple of totally self-absorbed reasons:

  • To pontificate on subjects about which I know little;
  • To get into the habit of writing every day, which my father (an Emmy-nominated professional writer) says is a good thing; and
  • To provide some usable content for people interested in one or more of my topics.

Two things pushed me into starting this. First, I read Jakob Nielsen's article about blog usability, and second, my wife Anne got into the National Novel Writing Month spirit.

So, nu?

Keep reading, and Send me mail send me comments.