Saturday, August 12, 2006

Dynamic typing strikes again.

Traceback (most recent call last):
File "/usr/bin/reportbug", line 1731, in ?
File "/usr/bin/reportbug", line 1471, in main
listcc += ui.get_multiline('Enter any additional addresses this report should be sent to; press ENTER after each address.')
TypeError: argument to += must be iterable

BTW, for anyone who reads my blog and not Planet, this has a simple fix.

Giving away secrets

Erich Schubert writes that

Oh, and I actually doubt that ATI would give away much secrets if it would allow distributing the existing opensource X drivers. It's not as if the specs of their CPU would be a huge surprise to Nvidia. Some actually say nvidia builds the better graphics cards. And Intel does even give away source code. We're not talking about chip design here, or driver optimizations. Just the plain registers and ports.

-- note: what follows is just my opinion and I'm wrong on a regular basis, so take it with a grain of salt --

The problem here is you aren't thinking like a corporation. As far as I can figure, the corporate view here is that you have two options:

(a) Keep the secrets you have. This is the status quo, you know how to make money here, and no-one else can benefit from your secrets even if you yourself can't.

(b) Give away your secrets. This always carries a risk that someone else will find a more clever (=profitable) way to use your secrets than you; thus, companies try to avoid this unless they absolutely have to.

I personally agree that the risk to ATI appears small. However, just to throw out a hypothetical, giving away their register specs would allow other companies to build cards that are register-compatible with ATI's. (Remember the ne2000?) Obviously this would be good for you and me -- but it's almost certain to drive down ATI's profits at least a little by providing more direct competition in the market for graphics cards; thus it's not good for ATI. This may be a far-fetched or overblown concern, but ATI will need a reason to "go uphill" against it when their current strategy seems to be doing just fine.

Intel, on the other hand, is in a different situation; as far as I know, they generally are playing catchup in the graphics area to NVIDIA and ATI, and as a result, they have more to gain and less to lose by opening their specs. [UPDATE] And as I mentioned in my previous post on this topic, the types of cards Intel sells are probably more interesting to free software users than the cards ATI sells. (I'm sorry you don't have any Intel cards -- they seem to have come automatically with most of the new computers I've seen lately, so I assumed it was a trend!)

Explaining Network Neutrality

One of the problems with network neutrality is that people outside the technology industry often can't follow the arguments back and forth because of the complexity of the terms involved. On my vacation last week, I found myself discussing this topic with my ~80-year-old grandparents. Now, Grandpa and Grandma have no clue about technology, but they aren't dumb; they are both retired educators and follow current events (especially politics) with a strong interest. In my effort to explain just what the fuss is about, I had a sudden brainstorm and came up with the following analogy, which I post here for anyone who cares to use it:

Imagine that your power company decides that it wanted to open a line of supermarkets. At the same time, it sends out an announcement that supermarkets (due to their refrigeration requirements) are particularly heavy users of the electrical system, and as a result, the power company will add a 15% surcharge to the power bills of any building that it deems to be a supermarket. Of course, the power company's own supermarkets are exempt from this fee. When the existing supermarkets complain, the power company says that they're asking for special treatment and trying to get electricity "for free" and that if they don't like its terms, they should buy their power from someone else.

Obviously this greatly simplifies the technical issues involved, but it's the best illustration of at least one aspect of the problem that I've been able to come up with. I've enabled comments for this post, so feel free to add your own suggestions.

We aren't ATI's market.

Erich Schubert noted that ATI is holding onto their closed drivers. While it's unfortunate, I don't think this should be surprising to anyone. NVIDIA and ATI make their money by selling cards for gamer types, who make an art out of trying to get the latest super hardware to play the newest snazzy games on. They don't give a hoot about source code access -- after all, they're probably running proprietary games on a proprietary operating system anyway.

Free software enthusiasts, on the other hand, spend their free time hacking code and so don't have time to play the massive productions the game industry puts out nowadays; frozen-bubble or Wesnoth are about as much gaming as we have time for. As a result, we can do just fine with a video card capable of displaying Emacs, a couple xterms, and maybe a graphical Web browser -- and the built-in graphics card (usually Intel) on the motherboard is just fine for that. We also tend not to run Windows or OSX, where 99% or so of graphically intensive games come out, so even if we HAD free time for gaming we wouldn't be able to do it on a free system.

As a result, while I'd certainly like to have free ATI drivers, I think it's unrealistic to expect them anytime soon. ATI is a company, not a charity, and they will not provide source code or specs until it will clearly benefit them more than it hurts. If you don't believe me, try walking into your manager's office and saying "hey, I have a great idea! Let's give away all our secrets without any clear way to make money off it!" and see how he reacts. (note that this experiment may not apply to the 1-5% [0] of readers lucky enough to work in academia)

[0] this statistic determined by the HIGHLY SCIENTIFIC method of picking a small number at random.

Tuesday, August 01, 2006

Amazing the things you learn when you fiddle

I recently bought a new laptop, specifically a Fujitsu P7120 (based in large part on Joey's plug for it). I'm generally happy with it, but I haven't been able to get the headphone jack to work.

Today I had a few minutes and was fiddling around with it, when I noticed that there was an extra column in alsamixer labelled "headphone jack mode". This isn't a volume bar; it just displayed the text "50". Just on a whim, I tried hitting "up" on it, and quickly cycled through "80", "Line In", and then "Line Out". Jackpot! All of a sudden, sound started piping out of the headphones.

So, just in case anyone else is puzzling over this problem, make sure you've checked ALL the knobs alsa lets you turn!

I still wonder why alsa is defaulting to using a headphone jack as a microphone input...but I'm not so curious to, say, stay up even later trying to figure it out.