It's Better To Look Good Than To Be Good

It's hard to swallow, but here it is: Nice looking things are perceived as more usable by users, regardless of whether they actually are. And what's more, nice looking products get a lot more tolerance from users when things go wrong.

For software, this means that you can build a great, usable interface that looks a little shoddy, and you could be ignored in favor of a flashy, "Web 2.0" application that doesn't do half of what you do, and is of mediocre usability.

.NET and Excel Importing

A quick tech tip this week, it’s not ground breaking, it might not even be new to many of you, but it really helped me out. I was looking to buy a component to add a simple Excel import facility to a project, and I had one of those "d’oh" moments.

Amongst all the components for sale, there were search results about using Jet, ISAMs, and OLEDB. I’ve used Office and Jet enough in the past to know that it makes reading an Excel file a straight forward process, but somehow I hadn’t realized that I could do it just as easily using OLEDB from a .NET application.

A cry from a voice in the wilderness ...

My name is Steve (say "Hi Steve") and I'm a recovering manager. There I said it, and everyone knows the first step to recovery is recognizing you have a problem.

In any case (and for better or worse), I've been invited to post for the next three months, so I'd like to give you a little background. Bob Walsh, in his introduction a few weeks ago, stated that it was odd writing about yourself, but in my case, I'm more concerned that it's the most boring topic I could talk about. Here goes!

Signs of Plague

Have you noticed more and more online people are feeling burned out and unproductive? I am. So are Gavin Bowman and Keith Casey. So is Ryan Carson. So are a lot of people.

One case is one thing. Two are a coincidence. Four? Four hundred thousand? This is no coincidence.

I see two possibilities: brain sucking aliens are draining our minds through the Internet – the ultimate killer app. Or, something else is going on. I’m hoping its something else – better odds.

Just Say No...To Your Customers?

"Can you add a Whizzy-Woo in the next release? It should be easy since you've already got a Doo-Dad-Adapter."

Ever get one of these requests from a customer? If you're trying to build a clean, usable, and effective application, the answer should always be NO initially.

But isn't the customer always right? Not about features.

Ruby on Rails makes nice with PearDB

Another exciting day in the life of a PHP -- > ROR programmer..

Last week I wrote about how Ruby could access a PHP session and how php site structure could fit inside a Rails structure. This week, I share my findings on how to get ActiveRecord to work with our existing PearDB sequence tables. These are my random, scattered meanderings on a solution..

If you haven't used Pear's DB class before, it creates a table with the [tablename]_seq for each table and stores a single row with a single column "id" with the value of the last ID used. Example of use. This was designed so that your code could easily port to other databases that didn’t have autoincrement like MySQL. Whether this is a good practice is not up for debate, I have what I have :)

Burnout, taking a day off, and the 4 day week

While I was away, Keith posted here and on his personal blog about the dangers of burnout, and the benefits of recharging. I was paying close attention; it had been a while since I’d felt like I was in any position to think about my productivity and effectiveness, but I knew it was overdue.

I’m not really counting this last year as a normal year, I’m just happy to have made it through relatively unscathed. In cold professional stats, I’ve made more contacts, improved my software, and been more involved with the online ISV community. I feel much more comfortable with the situation I’m in right now than I was with my situation 16 months ago. Even though that might sound like a successful year, it felt quite different behind the scenes.

Fire your boss, fire your clients!

Keith Casey has asked me join in here, but he may live to regret his decision. That's because I going to suggest something fairly radical: It's time to fire your boss, or your clients. Instead of living in a corporate cube a self-respecting rat would'nt be caught in, or spending your life wandering from contract programming project to project, I'm going to suggest that you - yes you! - can start a top notch, world-class software company.

NDAs: Fear and Shame

The two fundamental reasons NDAs exist are fear and shame, and that's only halfway a bad thing.

You want a little healthy fear in your life, it keeps you from trying to pet those cute little bear cubs. In business, it keeps you paying attention to things like what the competition is up to, to if your burn rate is sustainable, and how important those last few bugs are.

Most NDAs exist because of two different and worthwhile fears: early competition and secret sauce. If you and two buddies have read Getting Real and struck out on your own to start a web-based business, you'd like to delay the day that knockoffs start appearing. Alternatively, if you're Google, you have hordes of resourceful competitors and abusers who'd love to mine the offhand comments of your engineers.

But the nearly-as-common motivator behind NDAs is shame. You could call it fear of being found incompetent, but the word for that is shame. A shame-powered NDA will invariably be described as an important security measure, but the business is covering up that it runs everything in a slipshod, last-minute, "this is good for now and we need it" manner. Most organizations just barely work and spend their time lurching between crises, which is mildly disconcerting in an interdependent society but handy for breaking the spirit of idealistic young college graduates.

Quick and dirty prototyping

Quietly, under the cover of darkness and the Business of Software forums, I've been spreading the corrupting CodeSnipers influence to pull more people into the inner circle. I'm honored to have our latest victim aboard. The author of Agile Project Planning... Dave Churchville. - Editor.

"Just tell me what you want and I'll build it!"

What programmer hasn't uttered those fateful words? The problem is that even though users often know what problem they have, they are rarely the best people to tell you how to solve it.

Enter the prototype. Developers either hate them or love them, depending on their experience. If you've ever built a sophisticated prototype that faithfully re-created the entire application, only to have it forced into production, you probably hate prototypes. Or worse, maybe no one even bothered to look at it!