In life, there are many parallels you can make. You can compare apples to oranges, rings on a tree to the complexities of your life, black to white, or the stages of child development to your seemingly hopeless career. One parallel that isn’t talked about enough is the surprising similarities between software developers and rap stars.
Rap has had its fair share of beefs during the past 30 years including with Boogie Down Productions battling Marley Marl, LL Cool J trading jabs with Kool Moe Dee, Ice T and Cannibus, Biggie vs Tupac, Common vs Ice Cube, and 50 Cent taking on everyone he comes across.
There are lessons that can be learned from our rap counterparts, and we should be wary of their results. Careers have been ended by just singing hooks on songs. Lives have also been lost. There is plenty of enough money, projects, and fame to go around. Anyone who is deserving can plant their stake in the ground and claim success with attacking or being attacked by someone else.
Bling Bling while drinking incredibly expensive champagne
Lots of people want to be superstars. In the rap world, it is customary to portray your self as a bigger than life version of your real persona. If you’ve sold a million records, it is expected that you have some exceedingly overpriced necklace that hangs down to your real jewels. People need to know you are coming, and gawk and stare, and point while you are there. Once you are gone, you must be talked about constantly. You don’t even need to be talented because that isn’t what’s important.
There are many programmers that enjoy and even expect the limelight. Perhaps they’ve written some great web framework, and expect to be noticed when they are at an event. Maybe they even think that an event really isn’t an event unless they there. Or even worse yet, maybe they think they are the event.
Looking good while doing nothing can only get you so far. How about some fries with my burger?
Slinging my rocks while wielding my glock
Gangster goes hand in hand with rap. Or so it seems. Someone has to be tougher than someone else. My block is tougher than your block, and my city is tougher than your city, and my coast is tougher than your coast. All we’ve proved with this over the past few years is that real people die, and real careers are made and killed. In reality it doesn’t matter because crappy rap doesn’t live in on particular place. It exists everywhere.
Believe it or not, there are some developers who think they have a little gangster in them. You know the type that rants on and on and on in their blogs about pretty much everything about nothing at all. This is actually a good thing. Diversity is good for programmer communities, and little controversy never hurt anyone who didn’t already have it coming to them.
It was so much better back in 1988
1989 was arguably the best year of Rap. So many great songs were released that year, that it will go down as the greatest year of rap ever.
Unfortunately in programming world, we have haven’t had a best year yet. Many great things were invented in the past that set us up for the position we are in right now. The problem is that all that old stuff is just that; old stuff. We need to move on and not get hung on things that were done. Everything may have been done, but everything hasn’t been done well yet. Keep scratching those itches, and pushing the bar a little more forward every day.
There will always be backpack rap
I’m a huge fan of backpack rap. Non mainstream rap is pretty much all I can stomach anymore. The great thing is that there is a place for both commercially motivated and underground rap. (not in my iTunes, but that is another topic for another time)
In programmer land, we need those people pushing those underground trends. Ruby was around for quite a few years before it became the extremely popular language it is today. We also need those folks who hack functional programming for fun, and logic programming while eating breakfast to keep on creating such cool stuff that most of us don’t understand.
You made it a hot line, I made it a hot song
Where would rap be without sampling? I’m a firm believer in sampling if everyone gets a cut of the riches. I love the familiarity of an old song embedded, cut, and mixed into a new song.
Developers do this all time. With open source, and all the social code collaboration sites out there, most likely the code you are looking for has been written, or is in the process of being written. Standing on the shoulders of the giants should be the law of the land. When you finish reading this, go fork some code, and send back some patches. Or don’t. It is all up to you.
Now, that we understand the similarities between rap and programming, what lessons can we learn?
- Always record more tracks.
- It doesn’t matter who wins. Its how you look while winning.
- Never get high off your own supply.
- If it isn’t fun, maybe you should go do something else.