Bankrupting third-world countries
Today governments have created a legal status of interim bankruptcy, which allows corporations to dispense with lender and employment rights without losing their corporation. All they have to do is reorganize themselves. The Third World debt situation could at any time have been erased in just such a calm and orderly manner. Commentators would point out that many of these indebted nations have incompetent, self-serving governments and don't deserve such an opportunity. But surely that is also the case of many troubled corporations.
-- John Ralston Saul
Avery at CodeRage III - see my presentation for free
Tomorrow evening, at 7pm PST (10pm EST), I'll be doing a presentation about Schemamatic and Squel at CodeRage III, a "virtual conference" put on by the creators of Delphi. If you want you can sign up for free just to see my talk.
Interestingly, the presentations are all pre-recorded, but there's live irc-like chat during the presentation, and a non-recorded voice Q&A session afterwards.
Hope I'm not too boring; trying to pre-record a talk without an audience in front of you sounds hard, but it turns out to be even harder than it sounds.
In other news, Camtasia Studio is really, really good software for recording screencasts. Highly recommended.
Coalition of the stupid
Okay, I admit it. I was wrong. I said that it would be pretty much impossible to get the Liberals, the NDP, and the Bloc Quebecois to agree on anything except blocking the most egregious violations attempted by Canada's Conservative government. Sadly, I was too optimistic. The other thing they can agree on is that they don't like the Conservatives, period. So out of spite, they'll just grind our legislature to a halt.(1)
As I mentioned last time I dove into the stinky mess that is politics, we were actually in a pretty decent situation: as long as the Conservatives didn't propose anything totally awful, it would be very hard to summon enough votes to defeat their individual bills. Perfect! That means they could actually get some work done - which Canada most certainly needs, particularly in an unstable economy(2) - but only within fair constraints defined by the other elected MPs.
Remember, I'm not trying to draw any conclusions about human nature here; I'm just doing the math. The math says you have to pile up an awful lot of dissent before you can defeat a Conservative bill.
The problem is, the math is much worse the other way. If the other three parties form a coalition government, then all three parties will have to vote in favour of everything in every bill. That's about as likely as them voting down a specific Conservative bill. In other words, terribly unlikely. You have to pile up an awful lot of assent before you can pass a coalition bill.
In other words, a coalition will surely be defeated almost instantly, and we'll be back to another election.
Stephen Harper's Conservatives have already taken the record for the longest running Canadian minority government in history. What that means is, statistically speaking, anybody trying to beat them at this game is almost certainly going to do worse.(3)
If you're in favour of the idiotic Liberal-NDP-Bloc coalition, you're in favour of another election ASAP. That election, which will have been caused because your idiotic coalition members got disorganized and couldn't pass their own bill, will probably give the Conservatives their majority.
And that, as much as I dislike the Conservatives, will still be better than nothing, which is what we've got, thanks to the coalition.
(1) Yes, I saw the announcement that parliament has been suspended today at the request of Prime Minister Harper. But it would have been deadlocked anyway, because the idiotic other three parties were going to vote against anything just out of spite. You suspend parliament for the same reason you suspend trading a stock in the stock market: to let people's emotions cool down before they're allowed to act.
(2) There are many morons complaining that the past and present Conservative government has "done nothing" about the economy. This is simply not true. I submit for your perusal: the tax free savings account. Here's how it works: the current economic crisis is caused by lenders not having enough capital to lend. If you give people a tax break for saving more, they will deposit their money in a bank. That will increase the amount of capital held by said bank. The bank will then be able to lend out that money about 17x over, due to the magic of banking laws. Think about that for a second: problem = too much spending, not enough saving. Response = give people tax break for saving. Wow! Okay, now let's compare that to the gigantic bailouts going on in the U.S. Problem = too much spending. Response = spend more money. Which government is "doing something about the economy," again?
(3) And in order to defeat the Conservatives, this needs to be a three-way coalition, which is vastly harder than even a normal two-way coalition. In all of Canadian history, even two-way coalitions have always failed, and fast.
Note to self: stop following politics.
Ethernet over power (as opposed to power over ethernet)
Specifically, the D-Link DHP-300. You get two of them, you plug them into the wall, and you plug an ethernet cable into each one, and it's sort of like a big, long ethernet cable.
After considering fancy-pants wireless extender antennas, I decided to go with these in order to connect the two parts of what you might call my "disjoint apartment," which consists of some rooms that are just not reachable from other rooms. Imagine a labyrinth in which you can't actually get from the entrance to the exit. And you're an electron. ... It's a long story.
A quick review: well, in short, everything they say here is true. It's sure as heck not getting the "theoretical" 200 MBits. In my apartment, which admittedly has some very bad ancient wiring, I get somewhere around 8 MBits when it's in a good mood, which is sometimes.
Performance depends on which outlet you plug it into. Some don't work at all, probably due to split-phase related problems. Oddly, the extra outlet on my stove works best (yes, I tried them all). But somehow that just doesn't seem like a very good idea.
I've seen a few comments to this effect, but I can absolutely confirm: DO NOT use a power bar, surge protector, or even one of those multi-outlet plugs with these things. The signal quality degrades dramatically. Plug it straight into the wall, and save your power bar for other stuff.
Of course, plugging my wireless router into the other plug on the same outlet also greatly degraded my signal, which is rather inconvenient. I had to plug it into another outlet across the room. Sigh.
Also, turning the room lights off make the signal worse. But only temporarily.
So I suppose the real story here is that maybe I should have just bought the new and improved wireless antenna after all. All that said, though, it's somewhat amazing that it works in the first place. They deserve some credit for that. And since all I need it to do is cover my 6 MBit cable internet connection, it's actually just fine. Even Skype (with video) works perfectly, with no extra lag.
This sort of thing is doomed to remain a niche product, though, as long as it requires so much fiddling.
Lotus Foundations, now with "viral" marketing
Lotus Foundations, if you're just tuning in, is the Linux-based network appliance formerly known as Nitix. I co-founded the company and it was bought by IBM earlier this year.
dcoombs, another co-founder, sent me this link to what is apparently a Lotus Foundations "viral" video marketing campaign.
I suppose I don't really have the moral high ground in putting the "quotes" around "viral" since I'm here posting it, just like the sucker that they presumably hoped I would be. But it is sort of cute, in a sappy sort of way. Presumably there will be more of them.
Avery's Schemamatic/Squel presentation now downloadable
My presentation from CodeRage III, Schemamatic - Calling & Revision-controlling Stored Procedures, is now available for online/offline viewing at your convenience in flash video format.
Watching it again a while after I recorded it, I've decided it's not boring like I thought it was at the time. I still know what I would do better next time, but all in all, it worked out pretty well.
In the presentation, you can learn about Squel, a free-to-use, non-crappy front-end to Microsoft SQL, and Schemamatic, an open source tool for copying database schemas around and checking them into version control. Schemamatic is part of the open source Versaplex middleware project. All three programs are brought to you courtesy of Versabanq. And me. So you know they must be awesome, right?
Sadly, the Q&A section seems to have been left out of the download, which is sad, because the Q&A session featured the moderator asking me a series of unrelated questions from another presentation that was going on at the time. A presentation about VMware, not about databases. But I diligently answered them anyway, until we eventually figured out why our audience was asking such weirdly irrelevant questions.
There are a bunch of other CodeRage III presentations also available for download. If you like Delphi, check them out! You might learn something. I found quite a few of them interesting myself.
Stackoverflow.com commentary about CodeRage III Virtual Conference
Here's a posting that starts with the leading question, Why weren't you at CodeRage III? Of course, lots of people were, but apparently not in sufficiently inspiring quantities. The results are also skewed by the fact that there's not much advantage to watching the talks in real time; you can just go watch the archived versions instead at your convenience.
The fact that they used LiveMeeting (= Windows client only) and their real-time IM thingy didn't use LiveMeeting (= have to load two weird apps at once), and the fact that you had to go through a complex registration process to attend (= too much effort) didn't help either. I wonder if there are any free webcasting services that would have worked better? I really like glance.net for doing webcasts, but I have a feeling 200+ attendees at once might bog the system down.
Still, I find the idea of a virtual conference really interesting, and IMHO it worked much better than I would have expected at first. The idea of having a pre-recorded webcast demo, but having the presenter live in the IM chat at the same time, is very clever. It means you get more than double the time for questions, and yet the presentation itself never goes overtime, since it was pre-recorded. Now if only you could view the live chat in the archives just like the original presentation...
New release of Squel
We just published a new release 0.5.2 of Squel, the handy front end to MS SQL. This one fixes a bit of confusion discovered during usability tests and discovered by its first few users outside Versabanq. Notably, it's now more obvious how to connect using Windows (ie. Active Directory) Authentication instead of SQL Server (ie. username/password) authentication.
Naturally, if you already have an older version of Squel, it will automatically upgrade itself. Optionally and reversibly, of course. Why would anyone do it any other way?
In related news, I set up an account for Squel on uservoice.com. Uservoice is a really nicely done service, which I discovered because it's used by Stackoverflow.com. It works almost exactly like the old "feature voting list" we had for Nitix, but with a much prettier/friendlier UI and the ability to have short discussions in the comments. Plus, of course, it's basically zero effort to set up for new projects.
Despite my earlier comments that bug tracking systems for free software are a bad idea, I think something like uservoice can have a place. This is particularly true if your software isn't free, or if you otherwise have commercial reasons to want to get more people using your software.
Torvalds on hardcover books
- I'd personally much prefer that publishers just came out with a (more
expensive, by all means) paperback initial printing, but I guess I'm odd. I
pay for the words, not for the bulk.
Now, if you're bored, pretend he was talking about prepackaged Windows software that fills multiple DVDs and takes 30+ minutes to install for no imaginable reason. Look, I'll pay more if your software is smaller and installs faster. But I guess I'm odd.
Twitter as witty repartee collector
apenwarr: My gross generalizations are more fun when they're wrong.
dcoombs: Not all of them.
Efficiency vs. Effectiveness
I've heard before about the difference between efficiency and effectiveness, but today I thought of a particularly clear example: snow removal.
In Montreal, snow removal is effective. The moment it starts snowing, snowplows emerge all over the city, keeping roads and (especially) sidewalks clean as fast as possible. Considering how much snow we get, it's actually quite an impressive achievement.
In London, Ontario, snow removal is efficient. I rarely see a snowplow while it's still snowing; instead, they all come out at the end of the storm, do a single sweep, and they're done. This saves a lot of hours of work (and therefore taxpayer dollars) for the actual snow removal workers.
Which one is better? Well, think of it this way: if I'm trying to drive/walk somewhere, I don't much care how efficient the government of London, Ontario is at removing snow, because the streets and sidewalks are nearly impassable. But Montreal's effective snow removal gets me where I'm going, and makes me happy. (It might also be better for the economy, since you're optimizing global efficiency at the cost of a few snow removal workers.)
Efficiency is frequently used to rationalize ineffectiveness.
Next time someone wants to tell you how "efficient" a government programme or service provider is, ask them how effective it is and see if they even know what you're talking about.
"The best thing about feeling superior is you can do it by yourself." -- me
ssh+2FA to all your machines, anywhere, without opening firewall ports.