Older blog entries for Cardinal (starting at number 11)

Doing my part to push certain abuses of CSS off the recentlog...

UCITA continues to creep across the land (of the US) like a slow-moving plague. Which, in a way, is good. At least it isn't a fast-moving airborne virus like the mega-corporation lobby would like it to be.

There is hope for my state, at least. Recently a public hearing was held in Salem regarding House Bill 3910, also known as UCITA for Oregon. I regret I wasn't able to attend, however several members of my LUG did go, and one posted an encouraging report of the proceedings. My favorite parts of the hearing: The state representative pushing UCITA didn't show up. The only supporters that showed up were Intel goons. Boeing sent their MIS manager out to speak against it.

Why did UCITA even get this far in Oregon? Well, that's simple. The Legal Infrastructure Subcommittee of the Oregon Internet Commission was comprised of two IP lawyers, the Attorney General, and a Microsoft VP. Oh, and there's an Intel VP on the Commission, too.

But I'm not annoyed or anything. Nah. On the up side, the Legal Infrastructure subcommittee didn't outright recommend UCITA, they said it needed further study, due to its controversial standing in many states. The funny thing is, Oregon isn't looking to adopt UCITA because they think it's a great set of commerce laws. They want to adopt it as a means of attracting more Internet businesses to the state, on the grounds that Oregon is progressive and on the leading edge of supporting Internet business.

So, for the first time in awhile, I'm optimistic about the saftey of Oregon from UCITA.

4 Apr 2001 (updated 4 Apr 2001 at 02:10 UTC) »

Takaya Kinjo, you are my hero of the day. At last, a working jog dial on my Vaio. Now, if it'll map to pageup/pagedown, I'll be a happy guy. I'm also pleased with Sylvain Gil's S-Jog app launcher.

At last, the jog dial isn't a worthless knob!

In other news.. Why do I still bother reading Slashdot comments when an XP article comes up? About eight people out of over 500 had something worthwhile to say about XP. The rest either blasted the buzzword portion of the name, drolled on about pair programming (Regardless of if they were for or against it) or contributed to the typical noise of any Slashdot article.

Perforce

I first heard the name Perforce mentioned less than two months ago in a discussion amongst a dozen or so people about a potential project. It was recommended over CVS by an individual whose arguments against CVS can be summed up as "CVS sucks" and "Only ignorant zealots would choose an inferior OSS tool over Perforce. Who says we have to use OSS tools to manage an OSS project?" Obviously a very well-spoken individual with excellent debate skills. I've since asked a handful of coders with a great deal more experience than myself what they thought of Perforce, and none of them have given a particularly shining review of it over CVS. Apparently it functions well, but in terms of it being vastly superior to CVS, all I have is the aforementioned "CVS sucks" argument.

Since mechanix mentioned Perforce in his article, I'd like to extend my question to this group and see if anybody has experience with Perforce, either for commercial or OSS work? To date, I haven't been able to find an OSS project using Perforce (Maybe we're all just ignorant zealots), and very little on the web that compares CVS and Perforce. Any insights would be appreciated, if only to cure my curiousity in the matter.

Crack Certs (Minty fresh)

Zeevon: It may seem that xcyber is on crack, or he may just have different standards from most people of the cert levels. It seems he's even certified two people who haven't even set their name, and two people who have set only their name.

Guess that sorta puts his Journeyer cert of you and I in perspective.

Mir

mrorganic: I know a lot of Russians share your sentiments. Indeed, members of Russia's lower parliament are still trying to give Mir another chance, if only to keep it there for transfering equipment off of to a new station, Mir 2.

Still, whatever sadness Mir's coming down may bring should be kept in check by realizing just how much Mir has meant to the advancement of the global space program. Russia's engineers and scientists faced and solved questions and problems with manning a space station that the US still doesn't have answers to, and they did it 15 years ago. The technologies and experience gained from Mir's tenure is absolutely invaluable, and the ISS simply wouldn't be able to happen without it. Whatever fate Mir itself has met, any manned platform we see in orbit will always owe a debt to Mir's existence.

Doesn't that just figure. An article appears which I'd like to reply to, so naturally my apprentice certification vanishes before I can get to it. Oh well, it's all transitory. Begin random musings.

cvs commit -m "Why am I here?" ./ChangeLog

My ill-fated reply wasn't so much to jtauber's article as it was to ftobin's first reply that mentioned cvs2cl. I'm not sure mapping a CVS log directly to a ChangeLog is the right thing to do. The cvs2cl page has a link to some writing on CVS Logs and ChangeLogs that addresses the relationship between the two logging systems towards the bottom, in the paragraph headed "ChangeLogs and the CVS log".

His reasons are mostly semantics, though, and I imagine cvs2cl can address those concerns (Namely the first bullet point, the difficulty to sort log entries by date). The underlying issue I see, though, is audience. What generally goes into CVS logs isn't what should go into a ChangeLog, imho. ChangeLogs are higher level than CVS logs. The folks that read them aren't interested in what code fragment changed or that a typo was corrected in a header file comment. Yet these sorts of messages will end up in the CVS log as a matter of course. After all, that's what it's for. The CVS log describes the sequence of changes to the code. Instead, the ChangeLog should be a narrative of general changes. Features added or modified, problems addressed (Including bug #'s if a bug tracker is present) and the like. So. I would argue for maintaining a ChangeLog, rather than relying on the CVS logs to be useful to the public at large.

OSS Project Organization and/or Politics

I had an interesting conversation earlier tonight that spanned a host of topics, one of which was the scalability of the development tribe. For a nominally sized group of developers, there's little need for a structure of control over the project. Development can progress by virtue of each developer doing his or her thing, and discussion and peer review keeping the project aiming in a fairly consistent direction. However, take that group and double it a couple times over, and that falls apart. Some controls are needed, and in many projects we can catagorize them as benevolent dictatorships or as commonwealths. Both can work, but there's a third model that I think can work better than both, which is a commonwealth, but with some people being more equal than others.

The horror! In a given project, the votes of all contributing individuals must be equal, right? Well, not necessarily. What happens when an individual is completely off his rocker, and his vote or influence puts the well-being of the project at risk? Surely it would be clear to a the majority that said individual is indeed inviting trouble, but what if it wasn't so clear? A core group needs to have some veto power, especially in a large project. Smaller projects can cope with dissent, but in a large setting the problem can grow more difficult to manage.

So, how far do these various models scale? Linux has been the subject of criticism before for Linus being a benevolent dictator, but it certainly seems to be working. And even then, he has his core group to which he's delegated much responsibility. So I'd say that model scales fairly well. How about the others?

GNU Lobby?

Don't like the DMCA? No, I imagine not. Lots of people don't. But the Internet is leaving the hands of geeks and techs and entering the eager clutches of business and its lawyers. Sure, we have our advocates, and while we could always use a couple more solid representatives, what it seems we really lack is the legal power. The EFF and FSF make an admirable effort to defend liberty from the onslaught of corporate interests, but the sad truth is those big businesses have a lot more lobbyists than we do, and when it comes to the laws that threaten to shape our net, that's all that matters. So wouldn't it be nice if the community at large could get a strong support group of lawyer and lobbyist types to help in the fight? It seems that way to me, at least.. At 1:41 am.. Maybe I'll have something more thought-out in in the afternoon. End random musings.

It's the year 3030.. And here at the Corporate Institutional Bank of Time, we find ourselves.. reflecting.. Finding out, that in fact, we came back. We were always coming back.

Latest batch of CD's arrived from CDNow. Feels like I pick two to four items off my wishlist there every couple months, but the list isn't getting any shorter. I find it mildly amusing that CDNow doesn't show you a total cost of the items in your list. What a surprise.

Recent Stuff:

  • Resident: Two years of Oakenfold at Cream
  • Kruder & Dorfmeister - Sessions
  • KLF - White Room / Justified & Ancient
  • Atmospheric Drum & Bass 4 (On backorder)

raph applied the <proj> tag patch, cool beans. StevenRainwater also fixed it to work on all projects.

So I was writing some useful test scripts for php_imlib on the bus over the last couple days, and a funny thing happened. It failed some of them. Or rather, Imlib2 failed them. One of the issues I already knew about, Imlib2 stopped drawing filled ellipses at some point. The new issue (Or at least, the issue I hadn't noticed before) was that it doesn't fill polygons if their points are plotted counter-clockwise. I suppose it could've been an issue for some time, and I just happened to draw one of the test polys counter-clockwise out of random chance. Odd.

logic: Granted, NIH can run rampant sometimes, but I don't think it's as serious a problem as it's been made out to be. After all, even if GNOME and KDE are separate efforts, it's quite plain that they build off of ideas from each other. As a result, we're seeing two large efforts work towards an end-user friendly Linux desktop with all the features one would expect. But, they are different enough that if a user doesn't like one, he/she may like the other. That kind of choice, being able to use a completely different desktop environment, just doesn't exist for 80% of the consumer market at the moment.

As far as the Konq/Galeon/Moz, those three don't really line up directly in my book. Mozilla is an application framework as much as it is a browser, imho. Galeon filled a much-needed void of using Mozilla's strength (gecko) without the overhead (XUL). Konq goes far beyond being a web browser, though its HTML renderer is also quite good. So from my POV, each of the three apps does something the others don't. (And besides, it's all about choices. Browser choice, desktop choice, etc..)

OpenOffice, I think, will follow much the same fate that Mozilla has. Momentum, but insufficient community support leading to slow development. I don't expect to see anything as usable as KOffice from the OpenOffice group for quite some time. :)

Anyway, there are some rather poorly presented thoughts. I'll leave off with my favorite example of why all this is a good thing, and that's gPhoto. They abstracted out the backend of their very cool digital camera app into a library, and the Kompany picked up on it and hooked up the gphoto library with a kio_slave. Tada. gPhoto-powered access to digital cameras from any KDE app. How cool is that, eh? :) Sure, gPhoto was written as a Gnome app. But while they were working on a solid digital camera app, KDE was working on a solid component system that allowed this sort of collaboration to happen. That's what I like to see, and I hope it will be used as an example to other projects.

17 Feb 2001 (updated 17 Feb 2001 at 06:30 UTC) »

Got the announcement from RoUS that registration for ApacheCon 2001 was online. So I popped open the registration page, only to see.. the price. My God, was it that much last year? Of course, I don't remember last year's full price, because I went as a student then. $1300. That is a great deal of money for a relatively poor coder. (As it turns out, it was cheaper last year)

So, despite all the fun I had last year in Orlando, I think I'll have to pass on this one. Maybe next year I'll be a student again. Or, maybe the O'Reilly Open Source one will be cheaper. Who knows.

...

It's nice to get feedback on your projects. I've gotten a dozen or so pats on the back for php_imlib over the last few months, but January saw two people package RPMs for me, one of whom sent a patch against one of the PHP classes today. So that was pretty cool. Still need to look over the RPMs, then I'll put some links on the website. I also noticed, by way of referer logs, that the Apache Toolbox had added php_imlib to their todo list. It was later downgraded to 'doubtful'. Alas. :)

...

Submitted a short (1388 byte, 15 line) patch to raph to add the <proj> tag to advogato. It turned out to be a very simple thing to add, given the way the custom tag parsing is done.

Released php_imlib 0.3 today. Now that that's out of the way for a little bit, I can relax, fill up my time with other endeavors, and plan what to add to it next. (Image filters, probably. If I can figure out how they work.)

Of course, one minor problem with php_imlib is that it has a highly limited lifespan due to Imlib2's lack of thread saftey. Since php_imlib can't be thread safe, it will become fairly obsolete when Apache 2 becomes more commonplace, and offers threading. As far as I know, GD is also not thread safe, so PHP needs an alternative. One suggestion I've heard is that the Gimp folks are moving their graphics handling code into a library that might prove useful. Another option would be to just write a new one from scratch, though I have a hard time stomaching that one.

The Boss wants me to start learning/coding MS SQL Server. Hrm. Not sure if this would be a good thing to learn or not. At the very least, it'd help when I find myself having to talk to SQL Server from PHP, I suppose.

Well, we'll see how that goes.

7 Jan 2001 (updated 7 Jan 2001 at 06:35 UTC) »
dto: Thankfully as Trek dies off, Babylon 5 has been running on Sci-fi. If you're curious about shows with good endings, I'd say that one qualifies. JMS did B5 right. He had a story to tell, and stories have endings. He knew that. Didn't try to make it an open-ended adventure, just a good one. My only regret about the series is that it's difficult to show it to people who haven't seen it before, because I'm always compelled to show them the whole series, start to finish. Or at the very least, about 2/3rds of it. Without that bare minimum of background about what happens, a newcomer to the show would just miss so much good stuff, and I hate to ruin that for them. Well, who knows. God, G'Quan, or Valen willing, the series will be released as a set of DVD's in a year or two. :)

robhudson: If echoing html with escaped quotes is what drove you to use a template system in PHP, I can't help but be concerned. There are certainly better ways to use PHP than to echo out a lot of html and escape all those quotes. Breaking out of PHP for moderate sized blocks, echoing with single quotes and using concatenation for shorter blocks, using template files (Not to be confused with template systems. Template flles that fill themselves in when you provide them with an array, for example). The use of template systems in PHP comes up on #php on OPN now and then, and I just find the whole idea redundant, in that I'm yet to see a template system actually save somebody a noteworthy amount of time in the long run.. Anyway, that's my rant on that topic.

...

Bram's bad habits article was interesting. The last point was where I got to thinking about my project manager, who isn't a dumb manager. Looking back over how much crap the project itself dealt me, I wonder if I would've stuck around (The company is more or less a dot com) if he was a dumb manager.

He's not a dumb manager for a couple reasons. First, he's not a developer. He knows he's not a developer, and he doesn't aspire to pose as one. This defines our relationship well. He's also an english major, so he's no idiot. I don't have to speak to him like a child who only understands buzzwords and marketspeak. And lastly, I do keep him up on my progress. It works out. When we scoped the project, I gave him realistic and frank estimates of the work involved and how difficult or boring it may be. He takes that and presents the client with a completion date that's been padded a bit, and time added for QA to do their thing. If only QA didn't suck as much as they do, but that's a rant for a later date. I feel fortunate to have a project manager who I don't feel compelled to avoid or shut out of the development cycle, even if the clients have been nothing but a headache about feature creep and the client's corporate parent office can't properly manage their nationwide servers (Which I swear is a conspiracy to make my life harder).

Oh well, it's not like I plan on keeping this job for much longer. It's a dot com, it's transitory. Time to figure out what a good choice for a college degree is. You know, one that won't be a complete waste of four years. Now if only there were better options out there.

dirtyrat: Hmm. It'd be handy if advogato had a <lit> tag that you could use to enclose a block of code like that, and have it auto-translate the <'s and >'s to &lt;'s and &gt;'s

nooks: I have some issues with WinCVS. In my somewhat biased opinion, it's a usability nightmare, which is highly unfortunate. It seems to be the only widespread Windows CVS app, yet it looks like something a kid made in VB's IDE.

I'm particularly disappointed becuase a lack of a solid, relatively intuitive CVS app for Windows is about the only thing preventing CVS from being adopted at my place of employment. We're pretty much an NT/CF shop, unfortunately. I'm the sole PHP coder, and do XML work with another guy when issues of integrating apps comes up. So here's this company firmly within MS's grip, and it's hindering their productivity. They don't use SourceSafe, so the CF developers have to make sure they're not stepping on each others toes. SourceSafe is a disaster waiting to happen, imho, so I'd love to be able to say "Here, have CVS. It will solve all your problems, once you understand the basics, which I can explain to you in an hour."

It worked with Bugzilla, after all. They were using some MS Access form/database for their bug tracking. Naturally, it was terrible. Only one person could be editing the database at a time, it incurred the overhead of running Access, and didn't have nearly as many features as it needed. For my project, I set up Bugzilla and taught it to the QA people. They loved it, the testing phase for my project went smoother than anything they'd done before, and when we were done we had a complete, detailed history of all the bugs. So now Bugzilla will be replacing the Access form for the rest of the projects. See how easy it is?

Maybe there are other CVS apps out there for Windows. It'd be nice if the other developers would be cool with using the command-line tools, but that's somewhat unlikely. These are firmly GUI-dependent people. What about jCVS, has anybody messed with that?

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