Just 2.3 million lines of Perl and some sticky tape.

May 15, 2008

What’s the deal with Drivers?

Filed under: misc — Dave @ 6:30 pm

I love working in the software industry: it moves fast because copying the right solution is easy, so we don’t spend forever re-inventing the wheel (or at least that’s the ideal).

So why in this day and age am I still having trouble with drivers?

Case in point: I have a Lifecam VX-3000 Download Software, although you’ll have to re-enter the product you want drivers for. Even worse, you’ll need to know whether you have a 64 bit or a 32 bit version of Windows installed, and I know Microsoft employees who don’t know that).

And then watch out! The drivers are trapped in a mysterious LC14.exe which is a mysterious file well north of 100 megs.

On the other hand, there’s the Gyration Mouse I bought on a whim (I was on sale; Bountii has it at $99 right now, but I’m sure I spent under $30). Now this is kind of like a mouse except it uses gyroscopes, basically it’s a weird laser mouse hybrid for nerds from a small company I’ve never heard of — I could understand if the drivers weren’t 100% smooth.

Except they were. And if the autoplay hadn’t worked, all the software I needed was right there on 256megs of memory on the device itself. Which raises two points:

  • Why don’t all USB peripherals have some flash memory? It’s just too useful, and it can’t add more than a pitance to the price (the full units seem to start ar $3 retail, and most of the circuitry is already in a USB device)
  • Why can’t Microsoft branded products work that easily?
  • Bonus issue: A Zune already has 30GB of space on it, but plugging it in gives me the helpful message “This problem was caused by Zune Device, which was created by Microsoft Corporation.” I didn’t even notice the link to the drivers, I just gave up and Google’d them.

So, I repeat, what’s the deal with drivers?

Bountii.com: I don’t make any money from linking to them, but I like the site and John has been known to on occasion let me pick his brain on start-up ideas.

April 21, 2008

Vista, XP and Ubuntu

Filed under: misc, windows vista — Dave @ 4:31 pm

Desktop:
Grr, Vista won’t let me fiddle with my C:\Windows directory. It’s not a security protection though, just a personal distrust so I had to take ownership of the windows directory and give myself fiddling permissions.

Laptop:
Apparently, there is no way on earth to get sound drivers for a Gateway MX 6445 for Windows XP except having them pre-installed from the factory, all the other drivers are hassles: network, wifi. After a few hours down the drain, I installed Ubuntu and everything was automatically recognized and drivers were installed without even needing an internet connection.

Win: Ubuntu.

March 23, 2008

Using a Windows Media Center remote control in Winamp, WMP and Media Player Classic

Filed under: misc, toys, windows vista — Dave @ 4:46 pm

I’m using a Pinnacle Remote Kit (for MCE Certified for Vista USB 2.0 Interface) that was $30 off newegg, and it worked out of the box for Windows Media Center but I want to use other programs. All of this is being done on Windows Vista Ultimate.

Winamp

Winamp takes the cake for compatibility with this remote.

  1. Press Ctrl+P to bring up preferences
  2. From Global Hotkeys, enable default multimedia key support

Media Keys in Winamp

Now winamp will respond to keys whenever it’s running unless another program has focus and wants the clicks for itself (like if you’re running Media Center).

Windows Media Player

I tested WMP first, and I could’ve sworn it wasn’t working, but after configuring winamp, WMP now responds to next, previous, play, pause, stop, volume, mute, back and OK seems to go to the previous file.

Media Player Classic

MPC, everyone’s favourite little open source player isn’t so friendly:

  1. Press “O” to bring up options
  2. Go to Player\Keys
  3. Double click on the “key” entry, so for “Next Playlist Item” click on the string VK_NEXT, it turns into a drop down and you can change it to some of the media keys. The one’s I’m sure of are: VK_MEDIA_NEXT_TRACK, VK_MEDIA_PLAY_PAUSE, VK_MEDIA_PREV_TRACK, VK_MEDIA_STOP but I haven’t gotten play/pause to work correctly.

media keys in media player classic

February 19, 2008

You tell’em Joel! (file formats are hard)

Filed under: misc — Dave @ 5:08 pm

Joel Spolsky has a nice article that summarizes some of the difficulty of my job. Disclaimer: I work for Office but have nothing to do with the OOXML format and the opinions herein don’t reflect those of my employers (unless it’s a sheer co-incidence) and some details may be changed to avoid revealing confidential information (similarly, I briefly worked on a project for ISO, but I don’t even know their opinions). This is not an official document from any corporation and there is no fiduciary warrantee implied.

To summarize, the “Office” file formats were first designed to work on real, widely available computers. I put that in quotes because originally they weren’t even the Office file formats, they belonged to separate programs. Later, over many years (in fact it’s really still going) the programs were designed to work with each other and with documents from other vendors and the formats were updated to reflect these changes. All of this happened in software-time, which before we had the internet bubble was the fastest kind of time that companies worked in.

Compare this to the way many standards tend to get born: Bureaucrats and functionaries, lawyers and academics have meetings for years (and I’ve sat in on one or two of the conference calls from these — 90% of the phones are on mute since the participants are doing something else). Maybe, if you’re lucky, a reference implementation gets built. I’m surely exaggerating, right? I mean, the CSS 2.0 Specification was finished in 1998 and there was *a* browser that implemented it in 2005, that’s only… 7 years (support from the major browsers is likely coming in 2008). And that’s for software for the internet, some of the most dynamic stuff the human species has ever been involved with, SGML took decades.

A lot of the complaints I’ve read (and they’re in the comments on Joel’s article as well) are from people who want the standard to be written and designed for the hundred or so people who might consider implementing it rather than retaining functionality for the hundreds of millions of people who only care about their features. People who want to “cut out cruft” seem to think that the codebase is rife with Prince songs and disco-era dance moves rather than methods that are very useful to Tamil speaking law firms using Lotus Notes and the French Republican Calendar (pre-emptive snarky comment: this is a contrived example, but just because you don’t need a feature doesn’t mean it isn’t valuable to someone).

The most confusing part of my job tends to be getting my feature X to work with the Y & Z features from the A and B products. Somebody needs X, Y and Z together, and if I don’t make it work, they’re going to write their own code and end up 500% over budget and a case study on The Daily WTF. It’s hard to design features, it’s hard to build them and it’s hard to document them; the reason we didn’t build the product over a weekend is not that it never occurred to anyone.

I’m drifting rant-ward now, but I just wanted to stress there’s a huge difference between the small programs that we write to solve our problems (which I enjoy doing) and the large programs that solve everyone’s problems (that I’m paid to design).

January 1, 2008

Things I learnt from snowboarding

Filed under: misc — Dave @ 1:48 pm

If it’s your first time doing something and the equipment comes in “standard” and “goofy” settings: choose standard.

October 13, 2007

one million points

Filed under: misc, kinda maybe funny — Dave @ 3:02 pm

4tehw1n.jpg

That’s right, one million points in Bejeweled.

It’s my gift, it’s my curse.

September 23, 2007

Startup thoughts I

Filed under: misc, programming, ideas — Dave @ 4:37 pm

For reasons I’ll never understand, people ask me for startup ideas. I work at a company that’s over 30 years old, forever in software company terms, so I have to assume it’s because I spend part of my day worrying about other people’s startups.

Making a Profit is Nice but…

The classic startup doesn’t need to be profitable really — not in the short term, at least. what you really want is profitability to scale better than linearly.

Consider coffee shops, if you build 2 coffee shops rather than one you’ll make twice as much money (roughly) and spend twice as much to get it, so your profits will be twice as much. The profit scales with the investment — yuck, you’ll never get rich that way. Even worse, you need to be profitable from the beginning to make any money too.

Linear Profit

With chains though, there’s a reason that there are 32 768 billion Starbucks. Things are cheaper in bulk, not only ingredients but advertising and design. You also get a little bonus from people being more comfortable with your brand. So in the case of chains you get something like this:

Better Linear

Certainly better. But if the first one’s not profitable, you probably won’t build 20 more.

Software makes people rich because the first copy costs a million dollars, but the next million cost a dollar and sell for the same price:

Software

So you don’t need to make a profit at the beginning to make a billion dollars in a few years.

linear4profit.png

But that’s so 1976, it’s the WEB 2.0 and since it’s not a point release we’re breaking backwards compatability with old business models.

Metcalfe’s Law states that the value of a network scales with the square of the number of participants. So let’s run these numbers; say you spend $1000 to develop something, and each user on the system gets one thousandth of a cent of value (on average) from every other user of the system. When we’re talking about tens of users, I have to add a glow to the Value line so you can tell it’s not zero.
networkprofit.png
With hundreds of users, it still isn’t making financial sense:
network100sprofit.png

But with thousands or tens of thousands of users we’re actually creating some value here:
network1000sprofit.png

It’s worth mentioning this is value we’re creating for the users, we haven’t made any money yet. It’s not hard to make something useful for other people, the hard part is getting them to give you more money for it than you spent making it. But when we get in to hundreds of thousands of users, there’s so much value being created that it becomes a lot easier to shave off enough of that value to create a profit:
network100000sprofit.png
Maybe we’ll sell ads, maybe our users will baffle me by spending $1 to send tiny pictures to each other. But most likely at this point we’d sell the company to another company that has a proven track record of making money and let them worry about it.

September 19, 2007

Trouble with Yahoo Messenger

Filed under: misc — Dave @ 7:52 pm

I use Yahoo Messenger because it was the first PC-phone service that would accept my credit card. It’s not working though, it crashes reliably 5-10 seconds into starting up — exactly when the flash-ad starts to repeat.

And when it crashes it blames flash8.ocx. That really sounds like the flash ad.

Blocking the ads is hard; the registry edits I was able to find wouldn’t block them. But a patch called “YM.v8.x-Ad.Remover-YMulti.rar” which got rid of the ads (yay!) and broke the PC-phone functionality (which is understandable, I doubt Yahoo tests to see what happens if arbitrary code attacks their binaries).

Fortuneatly un-install, re-install changed the ad it displayed, so it worked. So I could make my phone call AND be advertised to, I’m so glad that there are ads in software/services I’m paying to use (only $10 so far, but if any advertiser paid even a nickel to annoy me, they overpaid).

p.s. I’m aware that the company refers to itself as Yahoo! not Yahoo, but I’m not sure I’m ready to accept punctuation inside of words yet.

July 15, 2007

Covering a Wall with Pictures

Filed under: misc — Dave @ 6:08 pm

I’ve printed 7 or 8 square meters of pictures, it costs about $45, so it’s competitive with paint (where I live, I pay $75 to get a wall painted in one of 8 colours)…

Until you count the hours it takes to tape them all together. Yikes. But it’s looking good so far
100_0035.JPG
100_0037.JPG

I still need to figure out how to hang the strips. But at the very least these pictures prove that I’ve finished assembling my furniture.

J’adore ma pays

Filed under: misc — Dave @ 5:57 pm

I haven’t been following Canadian media as much the past few years, but it’s good to know that we’re still kooky for bilingualism, namely that officially “Montreal” doesn’t exist, only “Montréal” (my spell checker is helpfully underlining the second form as misspelled — English does have a é).

De temps en temps il semble comme nous avons deux langues officielles… la langue qui est utile, et celle qui est protege.

« Previous PageNext Page »