We recently had the opportunity to chat with InterKnowlogy founder, Tim Huckaby about NUI, interaction design, Grandma Huckaby, fly fishing and more. Read on to get inside the mind of “The Pioneer of the Smart Client Revolution”:
OK, so you have been at this for a while – how did you get into this field?
Well, I have some grey hair, so the digital native generation may not understand this, but it is relatively amusing. I went to Crespi Carmelite High School, an all-boys Catholic high school in Encino, CA and graduated in 1980. We didn’t have programming classes or computers; we had Latin and a mandatory full year of typing. And to avoid getting hit with Father Mike’s ruler for slacking, I learned to keep my elbows in and became a machine gun on the keyboard. When you can type faster than you can write, you have a distinct advantage in programming.
It wasn’t until I got to the University of San Diego that I was exposed to programming. At USD you fill out a profiling questionnaire to get your 1st semester freshman classes. Well, they gave me a PASCAL programming class and I fell in love with it. I fully remember something Dr. Dwight Bean taught me way back in September of 1980: “a program is never done; it can always be improved.” And that one statement is still so true today. I ended up taking every programming class that USD offered and talked my way into two programming electives.
I didn’t come from wealth. My parents were English teachers. I worked a lot. I paid my own way through college. You could do that back then. I saved to buy my first Apple II+. I pilfered every compiler I could get my hands on. Back then we didn’t have the internet. We had BBSs. Like many programmers I was fascinated by computer languages. I was fascinated by the software games I could hack into and change for my friend’s amusement.
My first job was at EDS back when Ross Perot still ran the company. By day I wrote COBOL and JCL to allocate resources to the COBOL. By night I worked on the $5,000 IBM XT that EDS had in the office with its 10MB hard drive! It was an awesome computer – way ahead of its time. The first real microcomputer with a hard drive; the first legit PC. That is when I found Turbo Pascal from Borland, an awesome compiler for the PC, and became a Turbo Pascal god [laughs].
Ultimately I found my way to Microsoft. In the late 90’s, I worked with some pretty famous product teams - and some bad ones, too! Did you know Windows NT had 65 million lines of code? I bombed the heap with some code me and my team wrote on the first real webserver from Microsoft (IIS 4.0). It was at Microsoft that l learned the difference between programming and building good software. I worked very hard. 12-14 hour days. My kids were babies and I commuted from San Diego to Seattle, only home for 32 hours each weekend for over a year. It was a huge sacrifice that my wife Kelly and I made, but it launched my career. It was shortly after my time at Microsoft that I stated InterKnowlogy.
Is there any one programming tip or trick you use, regardless of the platform?
“You are not the user”. I say this all the time, especially now that I am so focused on NUI (natural user interface) and interaction design. It means us programmers and technologists don’t represent the user we are building software for. We are the technology elite. If you build software for yourself, the usability for a regular user is typically pretty bad. At InterKnowlogy we have what I call the “Grandma Huckaby test”. It means if Grandma Huckaby can walk up to software we build and become engaged and immediately effective in using it, we have done a good job.
If you could go back in time and rewrite any application out there, what would it be and why?
Well, like I quoted Dr. Bean earlier, “A program is never done.” But, if you truly mean “rewrite”, I can give you two perfect examples of software we were forced to build that we’d rewrite in a heartbeat if we had the chance. Both are InterKnowlogy customers and both applications were built for Fortune 50 companies. And they both basically had the same issue. Simply stated, the problem is this: creative agencies, no matter how big and famous, are just as in the dark as most technologists in terms of touch-enabled applications and the interaction design needed to create a truly engaging application.
So even though we built beautiful wireframes and comps and implemented the user interaction design needed for multi user large screen format touch enabled apps, the big agency came in and basically said, “We’ll take over the design”. And what came back was essentially the design for a web app that runs on an interactive table for multiple users where touch is the only input. We were forced to build it but the usability was awful. Although I cannot use these apps as demos I’m proud of in a typical keynote, I definitely use them in a lessons learned or guidance in NUI design keynote.
What would you consider to be the next big thing in programming?
Well, the next big thing in programming has got to be the bold promise of multi-platform. Unfortunately we had that same bold promise 20 years ago and it never came true. And now the problem is even worse than it was in the browser wars of the late 90’s. Of course the term “next big thing” is relative. Many developers would say the next big thing is Python or F# or HTML5 or the next programming language to be popular. I like to look at it in a more holistic way.
I’d love to live in a world where software architecture was part of the platform and not something you have to code or even think about every time you do a software project. I know that is going to freak out the pure software architects, but really, why do we continue having to deal with it? We should get software architecture for free and be able to focus on the business problems and the design of the application.
I will tell you one thing: the passion in engineers has not changed in 20 years. For some reason, programmers are religious about their tools and programming languages and platforms. If I took the InterKnowlogy engineering team out for beers and asked them what they would consider the next best thing in programming to be, they would be arguing within 5 minutes, shouting after 10 and deep in an all-out bar fight in 30 minutes… all because of programming languages.
You’ve met a lot of interesting people and done a lot of great interviews on Bytes by MSDN! If you were to resurrect that series, who would you want to interview and what would you want to talk about?
Well, as far as I’m concerned Bytes is not dead – I’d love to do it at Build this year! But one thing I always wanted to do on Bytes is have Bill Gates and Steve Ballmer at the same time. We tried. You have no idea how crazy these guys’ schedules are alone. Getting them in the same place outside a MSFT board meeting is almost impossible. But, what a great idea that would be, don’t you think? With Microsoft platform developer share waning and many still upset over the “Silverlight thing”, you could really fix some things and install some confidence with a 5 minute Bytes interview with those two. I haven’t talked to Bill Gates in years, but I can tell you that Steve Ballmer still gets the developers and the Microsoft app platform. And he’s a genuinely great guy. It would be awesome if he could do a Bytes segment at Build before he steps down as CEO.
How would you encourage someone to break out of their coding comfort zone?
I do it all the time. I did it yesterday. One of our very talented young engineers wanted to talk with me about his “career”. I started the conversation with something I have said a thousand times: “Smart engineers are a dime a dozen. Smart engineers that are leaders are rare and extremely valuable. Smart engineers who are leaders that can engage in conversation with a non-technical customer are invaluable.” I call them “walk and talk” engineers. Leads get paid more money; plain and simple. So what do you do to break out of you comfort zone? Study leadership. Study the roles of a developer lead. Tell your company you’d like to work towards leadership in your career path and see where it takes you!
Do you have any interesting hobbies?
Well, I don’t know if it’s interesting, but it is “different”. I’m a fly fisherman. It’s the only place where I can get true focus; it really is my passion. When I’m fly fishing I don’t think about family or work or stress of every day life; it’s just me in the wilderness and the river. And I get lost in it for hours. I have been hardcore, extreme catch and release fly fishing for over a decade. I didn’t grow up doing it, I fell in love with it mid-career. It’s also a pretty rare sport; not too popular. So, not many people know about it or what it entails. It’s very physical. I’ll often cover 20 miles in a day, and lose and gain 2000 feet in altitude. It’s constant action whether you are wading the river casting constantly or hiking or climbing to get to that perfect spot to enter the river. It’s usually in the middle of the wilderness and frequently dangerous. I’m so obsessed by it I even ties flies in my garage. Some of my creations, like the “Huck-Hopper” are even used by the fly fishing guides in Montana. I’m a lot safer now, but some of my earlier years I got into some pretty hairy situations: lost in the wilderness; hiking up a cliff to get out of the canyon in total darkness. My animal encounter stories are epic. I had bears break into my truck just a couple months ago and drink all my beer and eat all my food; not kidding!
To learn more about Tim – and his adventures in programming and in the wilderness – check out http://www.timhuckaby.com/ or visit http://www.interknowlogy.com/TimHuckaby/.