Archive for the ‘technology’ Category

iPhone 3Gs

Saturday, June 20th, 2009

Like many others, I got a new iPhone 3Gs  yesterday.

After getting used to the interface, I noticed something: there is no way to automatically set the volume down or switch from ringing to vibration during key times, e.g. meetings or bedtime. I looked for an application to fix the problem and … nothing. A quick look at the iPhone developer website revealed the reason:

Global system volume, including your application’s volume, is handled by iPhone OS and is not accessible by applications.

It’s a security issue. Apple does not want applications breaking the core functionality of the phone and, presumably, the company doesn’t want to inspect every application for functionality as it does for decency. (Arguably, we’d get more benefit if Apple did the reverse.) This is a solvable security issue: have the application request from the user, the privilege of setting the system volume. OS X does this on a less granular scale now, when installing system software, users receive prompts for administrative privilege. When this happens, the operating system is asking users if the application can application administrative access.

To me, it’s more of the same “let them eat cake” mentality that’s too common in consumer electronics. Apple is saying, “We’re not going to fix the problem of iPhones ringing in meetings and you’re not going to either.” It’s frustrating. When I am in a meeting or asleep, I don’t want my phone to ring, so now I must either keep it by me all the time (on vibrate) or remember to switch ringing on and off at the right times (unlikely). With a little forethought and action on Apple’s part, anyone could fix this problem.


No Kindle for Me

Sunday, March 1st, 2009

The Kindle 2 is tempting, but I like to own my books. With the Sony Reader or Amazon Kindle, I can’t sell my books.  If either Sony or Amazon goes away, I lose my books. That doesn’t make sense. Gizmodo has an interesting article describing how leasing books and denying the first sale doctrine may be illegal, I’m not hopeful. I’m old fashioned, if I buy a book, I want to own that book and have use of it for the rest of my life. With the Amazon Kindle or Sony Reader, I have it for the life of the respective company or the hardware, whichever expires first.

If I was licensing the book from the publisher and the media was available on all hardware, I’d be less concerned. Even then, though, publishers could go under and sometimes rights holders of media can’t be bothered to keep licensing their copyrighted material. Also, the loss of arbitrage and secondary markets in a license-only world would be troubling, but not a deal breaker for me. Buying the same content again to be usable on the technology du jour is a huge deal breaker.

Drop the DRM, open the format and I’ll buy a kindle.


Favorite Technology Trap

Saturday, January 24th, 2009

Many programmers have a favorite language — usually the one they know best. To me, it’s a fault if the developer sees the language as a hammer and every problem a nail. If hiring a plumber I’d ask, “What is your favorite tool?” The winning answer would be, “Whichever tool suits best suits the problem in front of me.” Experience with a technology should have no bearing on a technical solution, but it often does.

One likable thing about interviewing is meeting others passionate about technology. Recently, after my last company closed, I interviewed. Small, early-stage startups seem to be the most chaotic in technology choices. At early stages, it’s a small group of developers with only one goal: prove the idea works. When I see a baffling choice, like a high-level scripting language, doing CPU-intensive tasks, I ask, “Why?” The more defensive the answer, the more frightened I gets.

Favorite technologies create selective vision for the afflicted. Problems in other technologies are immediately obvious while the favored tool remains The Chosen Answer. Everyone who disagrees is a heretic. Additionally, when you have a favorite technology, and that technology hits its limit, it is somehow acceptable to change the problem.

“Why did you use Java to stream multi-gigabyte files to create SHA-1 hashes?”

“Java has excellent support for databases and creating hash keys.”

“The SHA-1 key generation could not keep up with the stream, missed bytes, and produced the wrong hash key.”

“You’re right – we need to figure out another way to create the hash keys.”

That’s the problem with a favorite tool, you rationalize your way into using it, even when it’s not appropriate. Why would smart people do this?

Their favorite technology is where many invest significant time. Most people want to be in, not out, of their comfort zone. Sticking with a well-known tool is a way to stay comfortable. This is a huge issue with change management. Getting people to learn new skills often meets huge resistance as they fear devaluation while they come up to speed with the new technology.

A way to avoid this trap is to hire engineers who like what they can do with technologies more than any one technology. Ask open-ended questions in interviews, e.g. what languages or platforms they like or don’t like or what kinds of problems they like to solve. Don’t lead the candidate or broadcast your intent, just listen. If you take some time to get to know the candidate rather than asking obscure technology quiz questions, you may be able to figure out if they are already in the favorite technology trap.