HomeReturn Home

Posts Tagged ‘programming’

Return On Intention Episode 14 – Bad Ads and Dieing Facebooks part 3 of 3

Monday, July 19th, 2010

Return On Intention Episode 14 – Bad Ads and Dieing Facebooks part 3 of 3

In this episode Daniel Lyons, programmer and all around smart guy talks with Reid Givens about:

  • Is Advertising inherently bad, or did we just screw it up?
  • When ads are ok and when they aren’t
  • Advertising does not equal marketing
  • This is not a post marketing era – its a post advertising era
  • What do you compete on?
  • We want to know when we are being advertised too
  • Facebook is the bathroom wall
  • Purchase mediums are not all created equal
  • The ipad is more than just a bigger iphone
  • Trying to make a difference in a commodity business – iNetu.net
  • The official leave Facebook movement and its impact
  • We all have it, and it ain’t goin’ away – email
  • Preview of why “the cloud” sucks

Running Time: 56 minutes 52 seconds.

Comment email - comments {at} reidgivens {dot} com

The paradox of choice and doing good work. Its a nightmare.

Wednesday, December 31st, 2008

This post is insirpired by my business partner, Daniel Lyons and the post F*ck this industry and while were at it f*ck Joel Spolsky from his blog Story to Tell. I guess his post was inspired by Joel Spolsky, so I if you want someone to blame for this, blame Joel. Now I don’t know who Joel Spolsky is, so I can’t say that I fully support Dan on his post title, but I typically follow Dan’s lead on the matters of programming and it’s internet famous stars. Daniel follows Joel Spolsky, I follow Mitch Joel. So, to Joel S, if you read this, I’m sorry. At the same time, I can’t be loyal to you, I don’t know you. I do know Dan, so screw you. :)

This post isn’t really about Joel. In Dan’s post, he brings up the difference’s in programmers who love their craft, and “Monkeys” who love to make money and learn just enough programming techniques to make it. It’s not really a question of who is better, its a matter of how each is perceived and the things they love. They are just different animals all living in the same zoo.

I think much of differences are  due to a persons internal wanting for “Doing Good Work”. That can mean a lot of different things to different people depending on their reasons for doing that work. People who generally love what they do and are passionate for their craft want to ensure that the way it is executed is done the best way possible, but in the arena of client work, this is often not necessary.

This is because the client just wants something that they can use and don’t care much how it is implemented, as the craftsman would. They do want what everyone else is getting based on fear, and they don’t care at the same time based on ignorance. They couldn’t possibly know what the craftsman knows.

From the business standpoint, at the strategic level, its about results and direction, and that rarely has anything to do with the details of execution type. For a web based company that sells a product online, their customers don’t care, and their business strategy doesn’t change regardless of wether their website is php based or ruby based. In addition, most often the programming is paid for by the hour, so the “best” solution is often more expensive, so most companies don’t want it. 

This situation will not really bother the “Monkeys”, they are OK with this model as they have set a primary goal of money and not code elegance or fun. Well, fun might not be a good counter weight because if they want to optimize for making money, then making money is probably fun. The point being is that a hard-core passionate programmer is most often more interested in the correct fit of the technology to the problem and the way the code is assembled and structured to be the best it can be. They still care about the money, but not so much that it overrides their desire to do “good work”. 

You have to feel good about what you do. If you don’t then you will go crazy, hate your job, give up, do bad work, feel worse about the bad work you did….and on and on.  The desire to do good work will depend on what motivates to work at all. For some it is money, so they can take action quickly based on their limited knowledge of all computer languages and just get to work. The programmers have an internal debate on what language to use, which, if any, frameworks to use and other technical stuff I don’t fully understand, just to determine that all have their own inherent strengths and weaknesses so no really good decision can be made. Mean while, the “Monkey” has already got started and reached the first milestone. Is the code awesome? No. Elegant? No. Optimized? No. Extendable and Scalable? No. On it’s way to the clients hands and thus a pay check? Yes. 

This point of view supports the good is the enemy of great philosophy. It simply states that in the time it takes you to get something perfect, you could have 10 good enough things done. So what is the best way to go? As a company do you hire programmers or “Monkeys”? As a code slinger, do you optimize for money or fun? The answer to these questions are the same as most high level questions…. It depends. 

I think that this is very closely related to the difference between artists and designers. Artists create things based on expression. It’s an internally looking process. Desigers create things that are usuable. It’s an external looking process. So given the choice which is better, artists or designers. The answer, as above is it depends. There is a vibrant for both skill sets. It’s a lot like coffee. 

Starbucks makes its money selling coffee type beverages customized to each customer. Dunkin Donuts brews coffee and you buy. Startbucks is part of the personalized economy and Dunkin Donuts is part of the mass economy. Starbucks has huge customer loyalty and makes a good profit, and Dunkin Donuts is America’s largest seller of coffee. There is room for both. Just like there is room for both artists and designers. Just like there is room for programers and “Monkeys”.  It all depends on the end goal, or what Dan refers to as what variables to optimize for. 

It has been said that what you measure is what you care about. Do you measure what you already care about or do you start to care about new things based on what you decide to measure. In this context it is almost a chicken and egg situation. I guess the advise I have is that if you are happy and you are meeting your  goals, measure what you already care about. If you are not happy or not meeting your goals, measure something else. There is a lot to be said about achieving a goal and happiness. It seems like a good place to start.

For managers, if you need to make the decision between programmer and “Monkeys”, or artists and designers, the above questions apply. In addition though, it might be a good idea for you first to define if you purpose as a manager is to protect the interests of your shareholders, or your steak-holders. This will go along way to identify if your money or fun dilemma.