How far should automation go?

“Weak human + machine + better process was superior to a strong computer alone and, more remarkably, superior to a strong human + machine + inferior process.” 

I had to read this statement 3 times before it hit me: What’s true in chess is also often true in business. A little background… 

I recently wrote a forecasting system for a company that processes 7 million orders per year. Worse, this company was the merger of two other companies, each of which did forecasting differently. One had a very expensive Oracle based “strong comptuer” that calculated almost everything and told the planners exactly what to do. The other just dumped data into Excel files and teams of “strong humans” manipulated them until they intuitively worked out the best plan. Neither team could believe the way the other team worked. 

The system I wrote using guidance from both teams turned out to be “weak human + machine + better process” which leveraged the strengths and minimized the weaknesses of the two extremes. 


What questions would you ask a new boss?

1. Do you enforce policies uniformly? Allowing some customers to bypass channels may seem helpful, but once everyone becomes special, no one is special.

2. Do you set priorities and avoid changing them? Nothing ruins morale like the emergency du jour. 

3. Do you stick up for your programmers? Blaming them for your problems is an awfully quick way to lose them. 

4. Are you consistent? If you tell customers one thing and programmers another, eventually they will all realize that you’re the problem. 

5. Do you understand the customers’ business well enough to set priorities? No one wants to work on Important Problem #42 when we’re going out of business. 

6. Do all policies and procedures take into account the importance of production and dev environments, security and audit controls, quality, and testing? Programmers shouldn’t have to educate you why this stuff is important. 

7. Are you willing to do what you ask programmers to do? Working late is fine until you do it 18 nights in a row while the boss is at the bar across the street. 

8. How good is your BS filter? Decisions made based on bad data will come back to haunt us all. 

9. How “professional” are you? No matter how tough things get, most programmers don’t want to hear your scream, cuss, or throw things around. Better to just leave and let us fix it. 

10. Do you buy us lunch once in a while? Amazing how much harder we’ll work for a sandwich and a smile. 


How much easier is it for an expert?

Layperson who’s never seen it: “Impossible”

Practitioner who’s becoming better: “Extremely difficult”

Expert: “We do this all the time. What’s the big deal?”

I have reviewed or maintained the code of thousands of other programmers, and I’ve encountered maybe a couple dozen I’d actually hire and about 5 I’d consider as technical co-founders. What’s the biggest difference? Until today, I wasn’t sure how to verbalize, but now, I think a good description would be those who think there’s a tradeoff between design and usability and those who know better…

As far as I’m concerned, there’s is a close correlation between good code and user experience. There’s a close correlation between readable code and maintainable code. There’s a close correlation between expertise and precision to detail “throughout”. And perhaps most of all, there’s a close correlation between something built properly to stand the test of time and “long term” user satisfaction.

If you want to learn a hobby, develop a passion, or really dig deep, by all means, just code it. Sometimes that’s simply the best way to understand what goes on under the hood and learn what’s possible once you learn the right way to build things. “Once you learn the right way to build things.”

But please leave your experiments on your own hard disk where they belong. You may have thought that those bleeding pixels were cool, but your name will be cursed by the poor souls who forever have to maintain your mess.


How do you make better use of your time?

“Work effective hours, not necessarily long hours…”

The best trick I have ever figured out for doing this is to separate all activities into “in front on my computer” and “away from my computer”. If you are working ineffectively in either mode, switch modes. If you are still working ineffectively, consider a break.

I often sit in front of my computer, writing code, refactoring, or testing and realize that I’m getting nowhere. Then I conclude that the reason I’m not making progress is because I’m not quite sure “what” to do.

Determining what to do is an activity that I have found much more effective away from the computer. So I log off, grab pencil and paper and go somewhere else, anywhere else. As soon as I have something I’m sure I want to code, then (and only then) do I return to the computer.

This works both ways. If I’m away from my computer, but feel I’m not creative enough, then I just decide to write something, anything, and go write it. Sometimes just getting the smallest things done opens the doors to getting bigger things done.


Relentlessness

I try to approach not to change the world, not to build cool stuff (well maybe just a little), but to genuinely help people. For a business person, this thinking is difficult and counter-intuitive. 

Why do I do this? Because of my first mentor (and co-founder). 

He was relentless in everything he did. I learned to stay up all night, keep calling on customers, and stay with tasks until we got somewhere with them. I remember many nights with thousands of invoices spread across the carpet, watching the graveyard shift run their machines, or scanning reports on-line, looking for clues. He wouldn’t quit and the reason was always the same, “These people need help and we can help them. So we do. Don’t worry about how hard it is or how much time we spend, it’ll all work out in the end.” 

Sometimes I think that this is the attitude very successful people must have. It’s too easy to give up when it’s for ourselves, but much harder when we know that someone else needs us to get the thing done. 

How does age affect programming?

Things I am worse at at 55 vs. 25: the 50 yard dash.

Things I am better at at 55 vs. 25: everything else.

Seriously.

Magic Johnson (great American basketball player) once described the difference of being a world class athlete at 30 vs. 20: you have to be a whole lot smarter about how you use your body and recover when competing with younger people.

We programmers on the other hand get the best of both worlds: the ability to work smarter against a physical and mental landscape that doesn’t degrade nearly as fast as a world class athlete.

Frankly, when it comes to work, I can’t think of a single thing I “used to do better”, not creativity, not work habits, not personal habits, not physical or mental toughness. 

I believe that programming, like running, is one of those things where the performance curve can remain flat until retirement, providing you take care of yourself. I’ll let you know if it does.


What’s your favorite start-up book?

Do More Faster by Techstars founders Brad Feld and David Cohen 

(Apologies to OP’s request for brevity; there’s just a lot of good stuff that I’d like to share.) 

A must read for anyone here who is serious about their startup.

I read it on the flight to Startup School to “get in the mood”. I couldn’t put it down. 

It’s easy to read for 2 reasons: every chapter is a short essay by a different person (including many Techstars alumni) and it’s very well written, almost like pg essays but by lots of different people. It covers lots of ground, much of which has been covered here at hn many times, but then again, some of this stuff can’t be covered too often. Also, sometimes someone says the same thing a little differently, and that’s the one that actually reaches you. 

My 300 page copy has 50 or 60 dog-earred pages and hundreds of red marks; it’s that full of gems. (For that reason, I highly suggest buying a hard copy and keeping it on your bookshelf for future reference.) I think that yc should come out with a similar book. I’d love to read essays from yc alumni, their advisors, and of course the yc principals themselves about what they thought was important. I realize much of this is on-line already, but there’s nothing like a great hard copy too. 

A few of my favorite quotes from Do More Faster

“I realized that I had two options. I could quit buying comics or I could quit my job and build the iTunes of comics.” - Kevin Mann 

“Getting feedback and new ideas is the lifeblood of any startup. There is no point in living in fear of someone stealing your idea.” - Nate Abbott and Natty Zola 

“That means every moment you’re working on something without it being in the public arena, it’s actually dying, deprived of the oxygen of the real world.” - Matt Mullenweb 

“Focus on the smallest possible problem you could solve that would potentially be useful” - David Cohen 

“You know you’re on to something when the community starts donating money to make sure it stays alive.” - Darren Crystal 

“In companies that rely on having a large user base as ours does, it is very unlikely that you will offend enough people quickly enough to dampen your future growth.” - Sean Corbett 

“We learned that very few people care how you accomplish something. Instead, these people care more about whether you create value for your end user.” - Colin Angle 

“We knew that the high-level concept of our first site still really inspired us.” - Alex White 

“They stepped back from what they had created and thought about what they could do better than anyone else in the world.” - editors 

“During the first few days of every TechStars cycle, we tell the 10 bright-eyed new teams that one of them will not be together at the end of the program. Unfortunately, we have not been wrong yet.” - editors 

“If you can’t quit no matter how hard you try, then you have a chance to succeed.” - Laura Fitton 

“When you ask CEOs of major companies what they’re most worried about, one common answer is ‘a couple of guys in a garage somewhere.’” - David Cohen 

“Companies that work just always seem to move at lightning pace.” - David Cohen 

“It turns out that giving up your one obvious competitive advantage often proves to be deadly. If a startup can’t do more faster, it usually just gets dead faster.” - David Cohen 

“There is an enormous difference between exciting technology and an exciting business.” - Howard Diamond 

“Changes come daily, weekly, and monthly - not once a quarter or once a year.” - Ari Newman 

“While it was only a detour of a week, that’s a lot in TechStars time.” - Bill Warner

“Only hope instead is to listen to their head and their heart and follow a path that they believe in, keeping some of the feedback and discarding other thoughts and ideas.” - Bill Warner

“…when presented with exponential growth, remember that people tend to drastically overestimate what will happen in the short term, but will profoundly underestimate what happens over longer time spans.” - Ryan McIntyre 

“…consider life as a founder of a startup to be one big intelligence test.” - Ryan McIntyre 

“Remember that human nature has a tendency to admire complexity, but to reward simplicity.” - Ben Huh

“If you are innovating, you actually don’t know what your product needs to be. Furthermore, your customers don’t either. No one does.” - Ajay Kulkarni and Andy Cheung

“Nearly every startup must find ways to differentiate itself from competitors.” - Raj Aggarwai 

“What is the thing that matters most to making progress right now?” - Dick Costolo

“…you cannot create the need.” - Michael Zeissner 

“Opportunity cost can kill a startup.” - Michael Zeissner 

“It’s easy to feel trapped by these handcuffs but if you change your perspective just a little, you might find that you hands are bound by nothing more than air, and the future is yours to create.” - Eric Marcoullier 

“There is one thing that the hundred of founders I meet each year have in common, and that is that their plan is wrong. Sometimes it’s the big things, sometimes it’s the little things, but the plan is always wrong.” - Rob Hayes 

“…we have to strike while the iron is hot! My experience is that this is rarely true.” - David Brown 

“Take the time to get it right and you’ll find that those competitors might not be as close as you think.” - David Brown 

“Seeking the perfect combo: ‘a smart-ass team with a kick-ass product in a big-ass market.’” - Jeff Clavier 

“The moral of the story is easy: When you follow your heart, good things usually happen. We have a very short stay on this spinning orb and I believe life is way too short to be stuck in a career that doesn’t fulfill you.” - Mark Solon 


Why do a coding test on a white board?

“on a white board, no syntax errors, compilable” 

Huh? You’re worrying about whether or not what you write on a white board will compile? How do you know? Press a magic button to OCR what you’ve written, download it into some computer somewhere, and compile it? Sounds like you’re interviewing at firms with technology I didn’t know existed. 

Your interviewers have you code on a white board so that they can evaluate “you”, not your code. They want to see how you handle a problem, how you approach your work, how you think on your feet, how you deal with interaction, and how your intelligence and experience applies to their business. Anyone who worries about whether white board code actually compiles is missing the point. If they’re more interested in perfect syntax than embracing you and your potential contribution, then you don’t want to work for them anyway. 

I think you’re making this too hard on yourself. Memorize nothing. Just be yourself. Programming is like riding a bike; once it’s part of your DNA, you don’t have to worry about it. Just relax, trust your inner programmer, and let this become a self-solving problem; some jerks may reject you, but the right fit will come when someone sees who you really are.

How do I close a sale?

“How to close a sale?” 

Ask your customer, not me. 

I’m not trying to be abrupt, but it sounds like you’ve already done all the right things and your relationship with your customer should have reached the point where you can ask them exactly this question. 

Dealing with institutions can be it’s own animal. The best way to learn how their buying process works is to ask them! In a perfect world, you may still be 6 months away from a sale. You wouldn’t agonize over it if you knew, and you’d know if you asked. 

In dealing with institutional customers, I even take it a step further. Before I invest any time in the sales cycle, I have them teach me what it takes to get a sale, exactly what I have to do, and how long it will take. Real buyers will be happy to tell you all of this; in fact, they may think you’re sales amateurs if you don’t bother to ask. Lots of times the buyer may be frustrated by their own organization and will coach you to be more successful so that they can get what they want. 

There are millions of potential tips: “You have to talk to Joe Smith first.” “Never call Fred on Monday.” If you filled out Form XG7-B first, you’ll save 6 weeks.” “Mary only buys from people she meets through Bill or her Business Group.” “You have to be a preferred vendor of XYZ..” 

I hope you get the picture. Like I said, it sounds like you’ve done all the right things so far. No one here at hn knows what else you need to do. Your customer does. Ask them. Today.

What do your parents think you do?

Dear Dad,

My customers are small business people (retailers, wholesales, doctors, lawyers, etc.) who own computers that have replaced their file cabinets and some of their clerical employees. Those computers came with lots of stuff in them but need more as their business changes or they discover stuff they forgot. I upgrade their computers with the stuff they need. We call that stuff “software”. They pay me. Well enough for me to buy you dinner Sunday night and take you to the Steeler’s game. What do you say?

Love, Eddie

Dear Mom,

I sit in an office writing all day long. I have a fridge and a microwave and occasionally go out to lunch with people down the hall. When it gets cold I wear the sweater you bought me last month. I love what I do. I write stuff, kinda like Stephen King or Danielle Steele, but business stuff, not fiction. My customers love what I write for them and they pay me well, so you never have to worry about me again. I showed Uncle Lenny what I was working on and he thought it was great. I’ll pick you up for lunch and a trip to the mall at noon on Saturday. See you then.

Love, Eddie