Older blog entries for sej (starting at number 174)

Design Patterns aren't the territory

There is a slashdot review of the Design Patterns book today. Good to see publicity for some of the fundamentals of object-oriented programming. But I have to admit, I've only read the introduction.

When I met John Vlissides he said that I must have been the perfect audience for their book, a long-form textual explanation of the underlying design of the software I work with. I said no, for the most part I learned the patterns from the code. Ok, there was a paper or two published early on, but real understanding came from watching the patterns come to life via gdb.

Debian

I sent an e-mail to Anthony Towns, asking if he could explain why ivtools was removed from woody. It would be helpful information for any party considering adoption of the package, as we move forward to Sarge.

ok, I have to retract a portion of yesterday's entry. The RC bug for ivtools reported on debian-devel-announce (#94609) was fixed in March 2002, prior to the final freeze. So it still seems to me ivtools was removed from woody for an undocumented reason, in an undocumented manner.

thom, I've invested time to fix problems that only show up for Debian. Don't you think some sort of reciprocity is in order? Sure, with open-source one can package a distribution without any viable relationship with the developers, but what happens when you need them?

jbucata, is there an all option when searching newsgroups at lists.debian.org? Without that it is quite a task to find those needles in that haystack of newsgroup postings.

4 Nov 2002 (updated 4 Nov 2002 at 06:59 UTC) »
daniels, ok, I could be investigating the wrong mailing list. It's not the first time. But this is where I got that idea. Am I missing something?

So let me check the debian-devel-announce mailing list. There it is, the audit trail of a release critical bug I never knew about it until today, 3 months after the fact (and those were three months of fairly active investigation). I take back what I said about the lack of openness in the Debian process. But I think I have a good case for complaining about the opaqueness of the process, and the fact that a single e-mail to the upstream developer and a single NMU could have rescued the ivtools package from being scrapped from woody. A large part of the problem lies in the fact that I've found no way to search the entire archive of Debian newsgroups all at once - they don't all seem available on deja.com.

2 Nov 2002 (updated 3 Nov 2002 at 15:19 UTC) »
garym, you're not alone in your assessment of the state of affairs in software development. Connection to money/management has the upper hand over connection to the technology, and when inevitable schedule disappointments arise (exacerbated by the richest law-breaking monopolist around), management reverts to its conventional hierarchy to make decisions, and skilled contrarian technologists are jettisoned one way or another.

The keystone issue has been (will be) how to make software more reliable, and software development more cost effective and predictable. Two theories have emerged -- study of the source which promises to make it easy for you after much hard practice versus control by a single all powerful entity that promises to make it easy for you in a little bit.

Of course the money is going to follow the money. However, this leaves intact the disruptive nature of any source intensive approach. There will be innovative businesses that get a competitive advantage by retaining control over their software. After all our efforts in the world of free software, we have a long way to go to reach the level of professionalism and cooperation that are the hallmarks of the medical or legal profession. We've only just begun.

more Debi-aint

daniels I just searched the devel-changes archive for the first 9 months of 2002. There was no discussion of removing ivtools from woody. Yes, there was a single RC bug submitted in April for not building on alpha, and yes the maintainer failed to address it in time (I was unaware of the dilemma, else I might have prodded him to accept my patch in a more timely fashion).

People are under the impression the Debian process is completely open and democratic, but I can tell you from experience that the unwieldiness of the release process, combined with the inevitable time pressure, causes the release manager to make undocumented removal decisions. The salt in the wound is the policy that once released, packages cannot be re-introduced into a distribution, without a security reason or a successful appeal via an undocumented process.

1 Nov 2002 (updated 1 Nov 2002 at 17:30 UTC) »
Jordi, I'm sorry, but that is exactly what happened to ivtools when it got yanked from woody. We still don't know to this date what the actual reason was for yanking. We can assume it was related to a last-minute build problem on the alpha platform, something that was addressed by me but never propogated to the Debian package. But there was no e-mail notification, and it was only listed as a removed package (without cause) after bug reports were filed on the release notes.

One e-mail to me, and one NMU would have fixed the problem. Since this happened I have received no adequate explanation from any involved party, despite several polite inquiries via e-mail and newsgroup. Yes, the previous maintainer has been swamped with other work, and the package is now up for adoption, but that happened after the woody release. I do not believe I am misrepresenting anything, just highlighting something you might not be aware of.

SFO to JFK to SFO

Just back from the big city. I was struck with how dwarvish New York is. Everyone is a cave dweller, albeit with nice silicon-covered portholes to peer out of. And they have many tunnels with many ore cars to shuttle people around. By contrast, San Francisco is obviously quite elvish.

Debi-aint

My admiration of the Debian distribution has faded, as I've been continually exposed to the crankiness of their release machinery. Projects that are perfectly positioned at the start of the two year release process need continual vigilance to keep them in the game, as the constantly evolving standards and practices seem to invent new ways to reject working stuff. If the downstream maintainer gets distracted all their work (and the work of the upstream developer) can be removed from the release without so much as e-mail notification to either party.

I think there is a niche for a public ports-based distribution in the Linux world, similar to FreeBSD. GenToo is the closest I know of, but it seems the dominion of a .com, not a .org.

Off to a consulting job at a company that needs my skills because they laid off the employee who could do the job :-).

SVG

I'm extending the export mechanism on ivtools drawing editors to support SVG. It's rendering model is complete enough, so it looks like I'll be able to finish the job. The only remaining puzzles are how to implement stipple fill patterns and binary stencils. I might have to use rather inefficient paths that do a run-length encoding of the bitmap.

cross-platform vector graphic applications

Another puzzle I'm turning over in my mind is the appropriateness of SVG for interactive (cross-platform) vector-graphic applications. Is it a markup language the best starting point for applications that might incorporate video and sound as well? SVG seems a perfect fit for static rendering to paper (or even the screen), but it seems the representation of dynamic elements would quickly get unwieldy in the jungle of W3C standards.

So what is the alternative? Apple and Microsoft have adequate foundations for vector-graphic applications, but each goes out of its way to thwart cross-platform development. You might say Qt, but they have no particular support for vector-graphics as far as I know (yes, they have a painter class, but do they have classes for direct manipulation, undo/redo, rendering with transparency and anti-aliasing, save/restore/export/import, etc.?).

My thinking is reverting to X11 as the cross-platform development environment of choice for multi-media and vector-graphic application developers. Is running everything from within an X server any less aesthetically pleasing than running everthing from within a web browser?

(No, I didn't forget about Flash -- I just overlooked it for now, for reasons I might have to articulate later.)

Today I asked myself if the actions of the Bush administration are increasing or decreasing the likelihood of terrorists using weapons of mass destruction in this century. Yesterday I was amazed that Al Gore questioned the effectiveness of a unilateral pre-emptive attack on Irag. Perhaps fate saved him to serve a different 8 years in the White House.

12 Sep 2002 (updated 12 Sep 2002 at 16:37 UTC) »
vxl, vtk, and cmake

vxl is a third-generation class library for image processing, recognition, and analysis. The 2nd beta for release 1.0 is now available. It uses an interesting cross-platform build tool called cmake, which I assume is shared with vtk, the visualization class library from former GE researchers.

I would love to be employed in a commercial setting to leverage these open source frameworks. They are high quality, seasoned and mature packages. As far as I know their use hasn't broken out of academic or government circles. In time I believe it will, because although class libraries take greater skill to wield than a plethora of linear functions, if you're developing a competitive commercial product with no room for inefficiency, they really are slack.

nymia

See my comment yesterday on sources of Flash info. Today's diary entry removed yesterdays's from the recent log, so you were never going to find the link. Oh for diary cross-referencing...

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