free html hit counter
Posted on: Sunday, January 30, 2011 by Rajiv Popat

The Sex And Cash Theory For Anyone In A Creative Field.

Most programmers who love the craft of building software and are deeply passionate about it seem to find strange avenues or third places to channel their creativity.

Most of them are also faced with a life long contradiction Hugh MacLeod explains rather articulately through a cartoon drawn behind a business card.

He refers to the contradiction between shipping genuine art and paying the bills as the Sex and Cash theory in his book Ignore Everybody. Hugh explains:

The creative person basically has two kinds of jobs: One is the sexy, creative kind. Second is the kind that pays the bills. Sometimes the task at hand covers both bases, but not often. This tense duality will always play center stage. It will never be transcended.

A good example is Phil, a New York photographer friend of mine. He does really wild stuff for the small, hipster magazines— it pays virtually nothing, but it allows him to build his portfolio. Then he’ll leverage that to go off and shoot some retail catalogues for a while. Nothing too exciting, but it pays the bills.

Another example is somebody like Martin Amis, the bestselling British author. He writes "serious" novels, but also supplements his income by writing the occasional newspaper article for the London papers, or making the occasional television appearance (novel royalties are generally pathetic—even rock stars like Amis aren't immune).

Or actors. One year John Travolta will be in an ultrahip flick like Pulp Fiction ("Sex"), another he’ll be in some forgettable, big-budget thriller like Broken Arrow ("Cash").

Or painters. You spend one month painting blue pictures because that’s the color the celebrity collectors are buying this season ("Cash"), you spend the next month painting red pictures because secretly you despise the color blue and love the color red ("Sex").

Or geeks. You spend your weekdays writing code for a faceless corporation ("Cash"), then you spend your evenings and weekends writing anarchic, weird computer games to amuse your techie friends ("Sex").

This tense duality will always play center stage. It will never be transcended.

And nobody is immune. Not the struggling waiter, nor the movie star.

As soon as you accept this, I mean really accept this, for some reason your career starts moving ahead faster. I don't know why this happens. It's the people who refuse to cleave their lives this way—who just want to start Day One by quitting their current crappy day job and moving straight on over to bestselling author—well, they never make it.

Anyway, it's called "The Sex & Cash Theory." Keep it under your pillow.

Sound advice for both young programmers as well as veterans who have spent years depending on their organization for every ounce of creativity that they are allowed to demonstrate. I know you probably know the part of your career that is connected to the cash part, do you really know the sources of the sex part?

If not, now is a time where you start separating the two and focusing on both of them fairly seriously. The sex part of your career needs just as much attention as the cash part. Start giving it the serious attention it deserves.

I wish you good luck.

posted on Sunday, January 30, 2011 11:10:41 PM UTC by Rajiv Popat  #    Comments [0]
Posted on: Saturday, January 29, 2011 by Rajiv Popat

Avoiding The Addiction Of Endless Moping.

Talking is an art. A long candid talk can clear things up within a team.

Talking is also an addiction.

Like in every art, the trick with talking is knowing when to stop.

Are you talking because you are connecting to someone, clearing confusions, spreading your thoughts, sharing an idea or doing something productive?

Or are you rambling on and on because it feels good and it lets you get away without having to take up scary challenges or take up efforts where you might fail?

If your ideas are compelling they do not require very lengthy conversations. (One of the reasons why TED talks are really short).

If your ideas are not compelling all the talking in the world will not cause them to spread.

And the talking will keep you from working on them and actually making them strong enough.

Keep a casual eye on each conversation you have and when you feel you are dragging on and on merely because you are afraid of ending an conversation.

Every time you find yourself doing this, you are not talking, you are probably moping.

Stop it. Move to some real work and get productive.

You might actually feel better. Seriously.

posted on Saturday, January 29, 2011 8:30:00 PM UTC by Rajiv Popat  #    Comments [0]
Posted on: Friday, January 28, 2011 by Rajiv Popat

Naming Our Very First Free Product - Part 1.

In one of my earlier posts I talked about not worrying about a name for your product till you ship the first sprint.

Last Saturday we shipped a fully functional private beta for a free online hobby project of ours.

One way to think about what the application does, is think of it as a third place for book lovers and book readers. It's designed to help you share what you are reading, bump into people who are reading similar stuff and then have meaningful conversations with them.

(We believe that discussions around books tend to be much more engaging than using "Social Media" and "Web 3.0" to tell the world when was the last time you used the bathroom).

With the first sprint under a private beta, we have about a month to name the website before it starts boarding more people.

If you are a book lover interested in beta testing the application we would love to hear from you on the email address rajiv AT but the primary place where we need your help right now is the naming.

Got any suggestions for an awesome name? Email me at rajiv AT or by clicking the Mail image link on the left of this blog post.

Got any links or pointers on naming products? How about an awesome book on naming products? You can use the comment field below.

Naming is a part of the celebration of shipping and I would love it if you can join in this little celebration of ours.

You have been officially invited. Seriously.

Start by helping us name the website.

posted on Friday, January 28, 2011 4:09:00 AM UTC by Rajiv Popat  #    Comments [0]
Posted on: Sunday, January 23, 2011 by Rajiv Popat

Lessons From A Side Project - Part 2.

A couple of months ago we started working on a little project of ours in our free time. It was mostly a weekend thing. Not connected with my professional work or my organization. Just a little fun service you can use for free.

On Saturday this little website of ours went live.

We have decided to keep this site in a private beta for a month and not tell you much about it. Not because it is a secret (I know ideas are a dime a dozen), but because we would rather have you try out the application when it is out rather than us talking about it.

This series of posts is not about the service or what it does. It's about the things I learnt from building this side project and one of our biggest realization as we worked during the weekends was about excuses people (me included) give about why they do not start side projects during weekends.

Honestly, there is no reason not to.

Hosting infrastructure and tools are cheap. They are cheaper than you can think.

Anyone who says that he is not building or implementing an idea because he does not have sufficient resources is bullshitting. It is that simple.

Hosting accounts that are good enough to get a full blown implementation going can be less than fifty dollars a month. Yes, I know. Its ridiculous. Yes I know you probably might not scale with that infrastructure but scaling it is not your biggest problem when you are getting started, getting people to give a shit about your blog or application is.

With the plethora of open source tools out there, the Microsoft Bizspark program and the base installations that most hosting providers are giving out now a days, if you go out looking for a venture capitalist to fund your idea there is something fundamentally wrong with your approach.

If you need venture capitalists, it probably means you are not lean enough or it probably means you are not embracing constraints.  

With the productivity that most development environments and databases provide you now a days, if you cannot build a small implementation of an idea or a hobby, without quitting your day job or making a big deal about it, there is something fundamentally wrong with the way you manage your weekends.

With every passing day, the reasons for not implementing your idea into a concrete working application, are diminishing.

Reasons like No Funding, No Resources, No Time, No Venture Capitalists are probably not the things that are holding you back. Laziness, Fear of Failing (or succeeding), Bad Time management and your lizard brain are.

(Honest confession: At least these were the things that were holding me back from pursuing and completing this project).

Ok, now that I have confessed, I am calling your bluff. Accept it. With lesser and lesser reasons to hide behind, chances are that you are going to get your butt off that couch, fire up that IDE and work on something that fascinates you.

A couple of months ago, we called our own bluff, got our own butt off the couch and if there is one thing I can tell you after launching a private beta for this system, it is that, if you have an idea lingering in your head, you are doing yourself a disservice by not implementing it.

Shipping a hobby feels good.

Go on. Start this weekend. I wish you good luck.

posted on Sunday, January 23, 2011 9:30:00 PM UTC by Rajiv Popat  #    Comments [0]
Posted on: Saturday, January 22, 2011 by Rajiv Popat

Books And Why You Should Be Reading Them.

Besides programming, writing and reading are my life long passions.

Are you having a baby?

I cant wait to plug this book to you.

Trying to become better at software development?

Try starting with this one.

Want to understand how your brain works?

Why not start with this one.

In a whole lot of conversation I have with my colleagues, acquaintances or even friends, I tend to quote from books. That is what book lovers do.

Books are a means to draw inspiration, ideas, fun and above all, they provide a means to glean into another book reader's mind and connect to a real person. I continue to be amused by just how many conversations you can have with random strangers over a book at a local bookstore.

Most of those discussions are way deeper than using "Social Media" and "Web 3.0" to basically announce that you are now going to go to the bathroom.

If you aren't reading books, you should.

If you find reading difficult you should consider listening to audio books.

Either ways, if you aren't reading or listening to a couple of books every months, you are doing yourself a disservice.

Go on.

Take a walk to a local book store or grab a copy of something you would like to read from Amazon or Audible and start reading. Its fun. Seriously.

posted on Saturday, January 22, 2011 9:32:00 PM UTC by Rajiv Popat  #    Comments [0]
Posted on: Friday, January 21, 2011 by Rajiv Popat

Your Sources Of Motivation After Your Warm Up Period

When you are hired on your first job, most of your time is spent on impressing your bosses. A pat on your back ever now and then keeps you going for about a year.

The next couple of years are you start looking for promotions and growth. You are still looking for pats but just pats aren't enough. About three to four years into your career, after chasing pats on your back, promotions and technical growth I usually see pretty much two things happening to most engineers and developers around the world:

  1. They burn out and decide to move on to roles which are not, do not seem like, they are as demanding as development. Another way of putting it is that they become what we otherwise refer to as a managers who want to stay as far away from any real work as possible.
  2. They have their very own personal realization that pats on your back, promotions and salary hikes will keep you going only for so long. Having realized this they find their own creative outlets to look for their very own personal intrinsic motivation which either comes from the fact that thousands of people use something that they have built or from touching hundreds of lives with their work outside of work.

If you are that developer who was reasonably good at what he did and has spent three or four years of your career chasing pats on your back or promotions and are now facing that mid life crisis of your software development life you are pretty much left with one of the above choices.

Choose wisely, because many a times, these choices are not reversible. Once you start working on full time management of teams, going back and writing code is going to be challenging especially if your reason for becoming a manager was that you were sick and tired of development. On the other hand, once you start working on side projects and checking in those kickass changes to your project, sitting in meetings is going to feel hugely irritating when you realize that you have to manage teams in your work life.

I am not saying that you cannot do both. You can be a kick ass programmer who loves leading teams or a kickass manager who loves writing code. That is clearly not the point here. The point here is that the first three to four years of your career are your warm up period. What you choose to do next, pretty much defines how long you are going to stick around and how happy you are going to be.

Choose wisely. Stop listening to what folks around you are telling you and start looking for your very own personal sources of staying motivating. For some, this involves leading and connecting to others. For others it involves building stuff. Either way, three or four years is about time you start realizing what you love doing and start doing that more often.

I wish you good luck.

posted on Friday, January 21, 2011 8:30:00 PM UTC by Rajiv Popat  #    Comments [0]
Posted on: Sunday, January 16, 2011 by Rajiv Popat

A Life Long Mountain Of Challenges With Milestones.

You need your own mountain.

A set of challenges arranged in a coherent never-ending stream with constant sequential milestones where you can celebrate your doneness.

Each challenge focused around deliberate practice.

Unless you happen to be working for an organization that has a steady revenue stream through search and encourages your research project to stay alive for a year, deliberate practice, when you are constantly shipping is hard.

Spending a week on tuning your Ajax calls using JQuery instead of the ASP.NET update panel, when there is no concrete Return On Investment, is deliberate practice.

It is also hard to propose in a management meeting.

But you still need to learn how to do those Ajax calls and use them seamlessly in your application. Which is why you need your own mountains to climb. And you need to climb them, every week. Even if you climb just a few inches every week.

If you keep at if, after a while, the inches you climb might just start adding up.

The mountain can be a long running side project. A constant stream of training sessions you plan on taking. Or a series of technical articles you plan on writing. What ever it is, pick something which involves a series of coherently arranged never-ending challenges and constant sequential milestones.

So, what's your mountain?

If you haven't found one yet, might I suggest that you keep your eyes open and start climbing it as soon as you find it.

I wish you good luck.

posted on Sunday, January 16, 2011 6:54:05 PM UTC by Rajiv Popat  #    Comments [0]
Posted on: Saturday, January 15, 2011 by Rajiv Popat

Practice Continuous Learning With Deliberate Practice.

If you are somewhat naturally inclined a few years of mucking around in a field can make you decently good at it. Good enough a get a job and start making a living out of it. That's exactly how far mucking around will typically take you.

From that point on you have two options:

  1. Keep looping: where you keep writing the same CRUD screens for seventy years and keep making a living out of it.
  2. Move to the next level one step at a time with Deliberate Practice.

Deliberate Practice is where you meticulously and carefully examine every aspect of what you do and what the best people in your field of work do.

For authors deliberate practice involves not just writing, but reading the works of other authors who happen to be better than them. For musicians, it involves listening to the music of other musicians. For software programmers it involves reading code and learning from other Alpha Geeks and kickass programmers around the world.

But deliberate practice doesn't end at meticulous observation. It involves stepping out of practice using your comfort zone and moving to practice using your learning zone.

A classic example of this would be, spending a week to figure out how to tube, tweak and improve your JQuery based Ajax calls to make them faster. Deliberate practice is hard work. Deliberate practice is painful. Deliberate practice is scary because the first step is a silent acceptance of how little you know.

Deliberate Practice, or lack of it thereof,  might also be the reason behind why most programmers cannot program.

What did you do today? Complete your tasks the entire day? Or did you indulge in the act of deliberate practice using your learning mode for at least a couple of hours? Yes we know deliberate practice is hard and painful but that anything that is wroth doing, is. Go on. Keep a few hours a day aside for deliberate practice of your craft.

I wish you good luck.

posted on Saturday, January 15, 2011 8:30:00 PM UTC by Rajiv Popat  #    Comments [0]