Thanks Klarna IL!


It all began at Reversim Summit 2013, when Uri Nativ saw me wearing a t-shirt of SoftwareLeadWeekly:

Well, to be honest, I only printed a couple of t-shirts (no real budget) so I had none to give.

If you’d attend Uri’s talk about QA without QA, you will quickly know how unique and helpful he is. It didn’t take much time until he reached out, offering to print these t-shirts for me.

Oh, wow. Yes please!

Thanks to Uri and Michal Tirosh from Klarna Israel, SoftwareLeadWeekly got 30 t-shirts and over 200 laptop stickers to hand out. Their genuine care and passion to help was amazing – I exchanged around 30 emails with Michal, as she wanted to make sure everything will be perfect and to my satisfaction.

I felt humble and grateful to have them on my side. I still do.

Uri and Michal – Thank you!


How To Use Your Unfair Advantage To Create an Unforgettable First Day For New Hires


Let’s say that you’ve just hired Emma, one of the most talented [title goes here] on the face of the planet! How cool is that, right?!

If you’re like most of us, you’ve probably prepared a powerful (mac)laptop and a gigantic, cinema-size screen waiting for her arrival. But you didn’t stop there, haven’t you? You smart, devilish-fox…

You also came up with one or two tasks she can do on her first day at work, maybe even considered to let her press the BIG RED button and deploy her work to production. Anything you can do to make her feel frighteningly productive, eh? Nodding your head?

I’m sorry to burst your bubble, but you’re doing it wrong.

People want to connect with people, not with todo lists

Even though feeling productive is a strong emotion, it is also a short-lived one. In order to create a long lasting emotion, a real WOW effect, you have to create a personal bond.

Research has shown that a person’s mood can be affected even by 3 degrees of separation from people they don’t even know. That’s right, t-h-r-e-e. Do you remember feeling utterly ecstatic because a task of a user-story of a feature smiled at your direction? Nope? Nothing? Bingo!

It’s time to pull out your secret weapon.


 AirBnB’s secret weapon


Do you remember the slide of which investors drool on? The one with those smiling faces of people trying to have fun and build things? “Our Team”, you refer to it (others may call it holy-f$ck-what-a-bunch-of-geeks), and this, my friend, is your unfair advantage.

Ever wondered how you can use this handsome bunch of people to create an unforgettable first day at work for your new employees?

“Your job is to bring down the walls”

I really like the way Roy Klein, our newest secret weapon at Commerce Sciences, puts it –

You’re job at the first week is to bring down the walls and let new teammates talk and get to know the team. If they’re good, they’ll be effective anyway, so don’t worry so much about it. Find ways to make them connect. Eat lunch out every day together, play some Team Fortress 2. Whatever works!

Some ideas to get your brain ticking, your heart pumping and your face doing some funky stuff

Make them smile

To fuel your creativity, let me share a personal story. Five years ago, after getting a super talented engineer to agree joining the team at Delver, I wanted to make sure he’ll have an awesome first day.

I was so excited to have him with us that my mind was spinning like crazy, figuring out how to make it a memorable first day.

About a week before he joined, I saw on Facebook that he raved about Let’s Say You’ve Gone Back in Time poster. “Ahh!”, I thought, “I can purchase it and have it framed!” This is exactly what I did, having it hang above his workstation, waiting for his arrival.

Ask your team to be creative, to go crazy, to give away some loovvvvve

If you know that your new guy or gal enjoy playing a game, say Startcraft 2, maybe you can buy a miniature and place it on their table, with a little note “We’ve got your back! Attack!” Or, if your new hire is a part of distributed team, send them a barber shop quartet to sing her a song.

It’s time to pull some Nicki Minaj craziness to show them you were waiting for them!

Make it a company tradition

We have a little tradition, where the last person to join the company is responsible to create a “starter kit” for the next one to join. No rules, no guidelines, just your creativity, time and effort. It’s something that started before I joined, and it blew my mind on my first day at work. What a day!

8 months ago, when Omri joined the company, it was my turn to prepare something for him. Luckily, I had the chance to sit with him for lunch before his official arrival. We had an interesting discussion about our shared interests and how we’re both fascinated by “brain hacks” – figuring out how our brain works and how we could utilize it better. I remembered a great book I read called Your Brain: The Missing Manual and thought to myself that it would be a great welcome gift to give him. I knew that 5 years from now, when Omri opens this book and re-reads my dedication on the first page, he’ll remember his first day with us. It wasn’t much of a starter kit (yes, we had his working station ready as well ;)), but it was something I thought he would appreciate. I hoped it would make his first day with us memorable.

When our latest teammate, Roy, joined us, it was Omri’s turn to prepare an awesome starter kit. I forgot to mention that Omri is our marketing hero and by far the most creative dude on the team. The box you see at the top of this post was made by Omri, and was waiting on the table for Roy when he arrived. It was filled with jokes, coffee capsules, nerf-gun ammo (don’t ask) and above all, Omri’s personality.

Passionate about #culture and #people?

Check out my latest side-project, SoftwareLeadWeekly.

Your turn!

Do you have a story you can share about how you WOW-ed your new teammates? I’d love to hear from you in the comments.


Starting a Weekly Newsletter: Optimizations and Lessons Learned


Three months ago, I’ve started a new side-project called SoftwareLeadWeekly – a weekly email that I curate, packed with great leadership and management articles.

So far, I’ve sent 12 newsletters and collected A LOT of feedback regarding the website (where you can subscribe) and the email content my subscribers receive.

Some changes I made due to the feedback led to 24% higher click-through-rate while avoiding others helped me to see 15% higher conversion rate. Interesting eh?

Don’t try to immediately convince everyone you are trustworthy

When I’ve started with the newsletter, one of the comments I got from friends was “you need to explain your readers why they should trust you before they sign up. They don’t know you as much as we do”.

I was afraid that people wouldn’t believe me or believe that I could provide high quality content without convincing them first, so I’ve added my credibility to the top of the homepage. About a week after I launched it, I got an email from a one of my readers – “[…] got a recommendation about your site from a friend and I wanted to let you know I almost missed it. Your signup button was below the fold on my laptop and there was so much stuff going on. Just my 2c.”

Lesson Learned: I designed the page for the wrong type of visitors, aiming to convince visitors with low intent to subscribe instead of quickly allowing interested visitors to join me. I decided not to listen to my fears and let my content speak for itself. I’ve removed the section about myself, reduced the image size and moved the entire subscription-box to the middle of the page, way above the fold.

The results? 15% higher conversion rate!

Before (left) and after (right):

swl-homepage-before    swl-homepage


Poor layout can kill even the greatest content

It took me some time to learn this lesson. The quality of the content I send is critical, yet, some people still missed it because it was hard to quickly scan through my email.

I started with a poorly designed email template: gray background color, different-size images, small fonts, poor use of spacing. It was painful to read. After talking with some of my readers, I decided to simplify the layout, aiming for quick scanning – I’ve removed the gray background, got rid of the images, increased the font-size, grouped articles by topics and used proper spacing so your eyes could easily jump from one article to another. One more trick I’ve used was adding the source of the article, just like Hacker News and Reddit do, next to each link to earn credibility and provide context.

Changing my content layout increased my click-through-rate by 24%.

Lesson Learned: optimize toward clarity even before optimizing for content. Otherwise, you’re investing in something that no one will see or read. It is just like having a confusing UI with wonderful technology underneath it. No one will care.

Before (left) and after (right):

issue1          issue9

Visualize your work

When I only started, I used my email to manage my weekly list, adding great articles during the week and then organizing it on Friday, before I published my newsletter. Even though it’s a pragmatic system, I found it be boring and unmanageable. Who wants that, right?

Having some experience with Trello, I decided to give it a try, simply because Trello has such a BEAUTIFUL layout that magically makes a list of articles into a collage of thoughts. With Trello, I enjoy looking back at previous issues I’ve sent. It fuels me to keep going, to push harder, to keep it beautiful and engaging.

Lesson Learned: using visualization to manage my work makes me happier. It’s a place I can take inspiration from, looking at previous articles I’ve sent or browse through the photos. It’s like looking at beautiful painting, made of your own work. You can check out the public Software Lead Weekly Trello board.

 Software Lead Weekly Trello Board

If you found this post helpful, I’d be humbled if you’d follow me on twitter (@orenellenbogen).


Best teams work for each other

“Why do you love working as X so much? so much that you’re willing to spend that many hours of your life at?”

Pause for a second. Try to close your eyes and think what will be your answer for this question?

For me, the answer is obvious: It’s the people and challenges that make my brain tick and my motivation SKY high. It’s the feeling that I can really make things better by investing everything I got into it that makes me proud of my work. I get huge satisfaction installing TFS 2008, trying to make our Integration Tests work X6 faster, practicing some Agile principles I’ve read about or take any other “dirty yet important work” no one would like to touch. I’m not scared of  hard work and if I can feel, down there in my stomach, that it would make my teammates more productive – I’ll do anything I can to make it happen. Oh, and I’m trying to build one of the most complex search engine the world has the offer with a bunch of brilliant guys! Can you blame me for working so hard, enjoying every minute of it?

Sure, getting a few bucks more would be great, but that will not make me proud of what I’m doing. One of the main things I’ve learned in my 8 years of developing software, is that highly motivated teams will always make the best products. Leave aside for a moment the productivity boost these teams enjoy and imagine their daily work, their lunches together, their working environment, their joy of talking with one another about day to day stuff. Imagine how they dream about their goals together, discussing ways to making it better and more enjoyable. It’s the buzz these companies have that drove the best guys to them, so “effortlessly”. The commitment to one another will make sure you’ll build quality systems, that you’ll try your best to deliver on time, to make it better, smarter, BIGGER, every single day. It will allow you to grow like you could never anticipated. Trying to grow this culture in your team is one of the hardest things in the world, way harder than any logical puzzle thrown at you. Believe me.

It’s just so damn hard to get it right.

There are many men who feel a kind of twister pride in cynicism (Theodore Roosevelt, The Man In The Arena speech).
Over cynicism means death for any joint effort. No matter how strong your team is, negativity and cynicism will break your team spirit. It always does.
Stop being so negative, so cynical about your actions and your dreams. You can do great things by answer the question above and remember that it’s all about the people around you. It’s all about you! you can actually make everyone around you better by taking action. Stop listening to people who thinks they know best and mocking you with “you’re only a tiny nail in a giant machine”. Don’t be afraid of constantly trying to make a difference, even if you’ll lose here and there. Read books, talk about them and your ideas, share and try, try, try, and try again!

This attitude will probably make you a winner, someone that others will enjoy working with, being with, taking inspiration from.
I know that these guys are the one I love working with or going to a bar close by, drinking some beer and talking about how to change the world.

Best people simply do for each other.


Semingo, Delver, Demo, What a rush!

Alright alright, so I didn’t post anything for… a decade or so.
but I’m here (at the office that is) all day long, being a part of a great Team, building the greatest\coolest piece of software I’ve ever dream of.

I promised myself that I’ll be short this time so here it goes, Oren’s 60 seconds update:

  1. We’ve changed our name from Semingo to Delver (delver: (n) deep thinker; one who investigates data).
    Hopefully (if God will hear his little buddy here), the phrase “To delve” will catch up with the scary “Google-it”.
  2. We’re going to show our product to the world at the DEMO conference (28-30 January, yes, in 4 days!) in Palm Desert, CA.
    If you want to be one of our first beta users, please go to our site: and register (we’ll send you an email once we’ll release our beta).
  3. We’re looking for super talented folks to join our amazing Team, interested?

Short, to the point, no technical buzzzzz. I’m feeling violated.



here are a few links from interesting articles about us:

 – (from our home site)

 – (6 minutes of live! demo\video, presented by our CEO at DEMO conference)

 – (5 minutes demo\video from IsraelWebTour 2008)

 – (great summary to understand our product)



Next post – some cool multi-threading code and how to test it without wanting to stick a nail in your eye (or someone’s else eye).
Now I’m feeling better…


What I am doing to become a better developer

Gosh, I did not know Raymond Lewallen was reading my blog (I guess I should start writing some meaningful stuff and stop playing around ;)) but I’m more than happy to raise up to the challenge and talk about what I am doing in order to go to the next level.

In one of my post, What it takes to become a great developer, I mentioned the notion of “Be Eager To Learn”. I don’t consider myself as a good developer due to my natural skills (I don’t think that I’m mediocre, but certainly not Larry Page). Starting 8 years ago as a little teenager at 15, I had to work my ass off in order to keep up and show the rest of the people I was working with that I’m just as good as they are. Reaching this goal, I wanted to show myself that I can be the best guy at the company.

Eight years passed and a lot have changed, but I’m still very much eager to get better and more versatile. One thing I’ll always keep with me, as it proved it self so far, is the no-fear attitude and the (sometimes) ridiculous optimism. I’m not afraid of doing new things or changing positions when an “offer you can’t refuse” knocks on my door. Life is short and you most grow each and every day. I’m still the same team player guy, although I can get over confident (aka arrogant) or raise my voice here and there. I care about my teammates and know when to say “I’m sorry”. I work with my heart and hopefully my current and future teammates will forgive me for my faults.

I think that in the last few years I’ve learned a lot about myself, about the things that really intrigued me, that push me to excel. I love coding, I love talking with people, mentoring, lecturing about technologies or Agile methodologies, but most of all – I enjoy taking ownership of projects I participate in and making them successful. I’m looking to surround myself with people smarter than me, those that have natural gifts in them, and making them better.

Things I should do

I should try to get more organized in planning my time. I read a lot of books about self management but I don’t feel like I’m practicing them as much as I should. I should really invest more time in myself, trying to set goals and constantly reviewing them. I’m leading the Agile a la Scrum at Semingo so I hope to use this work & review notion more in my life.

I should learn more about Agile, Scrum and XP. I’ve read a few great books about Agile\Scrum\Management but I still have a lot of unanswered questions. I know that these methodologies only offer some solutions but I don’t believe we should enforce them. I believe in making our own Agile process at Semingo. That said, I do want to read more books from people with different experience, different ideas and best practices I could learn from.

I should definitely write more posts! (particularly about Agile\Scrum)

Things I want to do

TDD: getting better in it and start lecturing about it more.
Multi-threading: This one is a new set of skills I’m developing at my current job. Looking at the near future, this skill is crucial as a developer.
WCF: I need to use it in my current job and I have a lot of catch up to do.
Lecturing: At least 4-5 lectures a year looks like a solid goal at the moment.

Most of all, I want to make Semingo the best place to work at, to bring more amazing guys&gals to work with us and making an application that will change the way millions of people work.

Things I won’t do

I think that it’s getting clear to me that I do not want to be an external coach. I don’t see myself coaching a team for a 2-3 months and then shifting to another team. I enjoy working with people and I take pride and strength in making things complete.

I won’t stop talking and writing about software, practices and people as long as I have keyboard and working set of 1-N fingers available. Count on it!

Tagging these folks

Pasha BitzShani Raba, Doron Yaacoby, Eran Nachum, Ken Egozi


One thing ends so that another could begin

This title encapsulate a lot of changes in my life.

Leaving Mercury\HP

After less than a year, I had to make one of the hardest choices in my life and decided to resign my position at Mercury after receiving an opportunity to join a baby(we’re looking for offices now) startup named Semingo. Mercury is a great home for developers; The quality of the people there is beyond anything I’ve seen in the last ~8 years, the projects are challenging, the clients are demanding and the amount of investments the management put in the teams is unimaginable. No wonder why Mercury was bought for the huge price of 4.5 billion dollars by HP. Putting the clients first, hire great managers, non-stop training and fetching the best programmers available is a bullet-proof path for success.

The hardest part was leaving my friends there, but I know that I’ll keep in touch with them. I said goodbye to the guys in a small gathering so I want to leave it private, but I do want to thank you all again for sharing your life, your ideas and challenges with me:
Hagay, Number, Big Guy, Jersey, Nicos, Rico, Master Jedi(Doron), Moti, Jonit, Chonga, Maya, Mininberg, Alon, Chik Chik, Abergel, Oleg, Mizrahi, Ravit, Sefi, Lidor, Zini, Arie, Ifat and the rest of the guys there(I hope I did not forget anyone :|) – goodbye and good luck. I love you all.

Joining Semingo

This was an offer that I just could not say no to. The project is inspiring, the scale and size are unimaginable, the team is built from a group of young(avg. ~25) “hackers”(my nickname for highly talented workaholic developers), great technology, great management. All the right cards. In addition, and this one is crucial – I’m 23 years old so this is a great(maybe the only) time to work 14-18h a day without paying alimony\psychotherapist. I’m sure that it will be very interesting ride. 

At the moment, I can’t say much about the stuff we’re doing except that it’s a very challenging web 2.0 project.
I promise to publish more about the team, work methodologies(agile\scrum) and technical experience later on…

Leaving my home, renting an apartment:

I’m looking for an apartment in Herzelia\Herzelia Pitouch, close to the our future office. If you know a guy that knows a guy – please send me an email! ;)

Gosh, it’s going to be one hell of a year!


What it takes to become a great developer

There is a big set of posts about this issue lately. From Ayende‘s Can you learn to program better? and What can make a great programmer? to Phil Haack and his Better Programming By Programming Better to Jeff Atwood and his How To Become a Better Programmer by Not Programming and many others…
Well, they are all great developers and they all give us a great view for what is a great developer and how can you become one(or realize that you already are, for that matter). I like the way Jeff sums it up:
” You won’t– you cannot— become a better programmer through sheer force of programming alone. You can only complement and enhance your existing programming skills by branching out. Learn about your users. Learn about the industry. Learn about your business. “

I agree with all of them about the HUGE leap each great developer should take from being a good developer into a great developer. Not many have done it, although I believe that many more can. I’m not sure if you heard about Ron Clark, his story is an amazing demostration of true passion to bring the best out of people. Ron managed to take a bunch of kids from Harlem, those that no one believe in them, and make them one of the best classes in the US. In his first lesson, he wrote on his board: “Dream Big! Take Risks!”. He manged to direct his students with his 55 rules and teach them how to become a great human beings before everything else. It’s a story about how to get everyone around you excited, driven to extract the very best out of themselves.

In my point of view, great developers are the one that really into code because they love it and because they want to make the rest of us guys better. They possess Ron’s Passion to make everything better. The software they are building and the guys that are involved in doing it.

I tried to come up with my “rules” that helped me progress and influence others in the last 7 years:

  1. Be proud of your work – The most important rule I give others – Love your job, Enjoy code, Appreciate elegant solutions and let them be your inspiration.
  2. Be Eager to learn – In order to become one, you must learn the “55 rules”, the foundation of your progression bar. Ayende says it best:
    ” At any rate, what I am trying to say is that you need to act. Doesn’t matter what you do, you need to keep pushing your knowledge until extra knowledge is easy to absorb. “. Always have a list of things you would like to know. Clear some time for you in order to progress. baby steps.
  3. Write it all down – It will take you years to understand why X is “better” than Y. Why writing logic inside a stored procedure is not always the smartest thing(or why SP is not the best way in common\simple scenarios), why it’s important to unit-test your classes or why loose-coupling is that important. Following only ideas from others without suffering from your mistakes will keep you always a mediocre\good programmer at best. I have started my world with Data-Access-Layer written manually, then generated it and only then using some sort of ORM tool for this task. I’ve learned so much in the process that “spending” years at each phase made me understand better the way I work and the way I want to work. It was worth it. I don’t encourage repeating others mistakes, I just want you to follow your heart. There are mistakes worth repeating, if it will improve you and make you releaize things about yourself.
  4. Seek for better ways to solve things – In time, you’ll see a lot of recurrent patterns in your code. The way you write your application tiers, your data-access, your database, your sql, your security handling, your logging mechanism, how you integrate with other applications or how you create a solid framework. In time, you’ll see a lot of recurrent thinking you were used to. Only in time you’ll know how to solve code duplication in a proper manner, how to build a smart API and how to estimate your mission so you’ll meet the deadline without staying at work for 14 hours a day.
  5. Don’t be afraid to get credit for your work – remember, be proud of your work. You deserve it. Take ownership!
  6. Be proud of your people – Your people will make you progress or stay put. It is simple as that. 
  7. Share your knowledge – I remember that a good friend of mine talked with me about whether is should help others at the office on the expense of his time. He felt that writing code for others will make them progress on his expense. I could relate to his thoughts, but I strongly disagree with him and that’s what I told him: Teaching others is the best way to take the next step. Make sure you educate others, it will make them easier to give you back. I believe that this ability and willingness to teach distinguish the great ones from the good ones. If you really want to progress from being a programmer to a Team Leader\Architect\Adviser\whatever, you would need your co-workers support, right?
  8. Find a mentor – find someone at work that will make you work harder just to so they would be proud of you. I call it the “work-daddy syndrome”. It is much easier to motivate yourself if you know that someone expect greatness of you. My parents expected that I’ll be great from the first day I could remember myself. They never pushed me too hard or made me stress. They were there for me when I needed them. Always with something good to say to calm me down. The reason I am so motivated to be the greatest programmer I can be is that I have great friends that expect it from me and I had the pleasure to work with my mentors and get their feedback to push me forward. I want to make them proud.
  9. Be a mentor for others – All my life I thought that I am blessed with great family, great friends and great co-workers because I manged to contribute to others. I allow myself to feel this as I know that I do my best to contribute others, to make my surrounding feel that we’re heading for a better place. That we will actually be there soon. Look hard and find someone that you can see the potential in him, and if he\she let’s you, help them to become better. There is no better feeling that getting a big Thank You. I’m hardly a religious guy, but I feel it easier to except good surprises in life due to good acts on my side. If something terrible happens, I know that I have a good place to fall into, that I’ll bounce back.
  10. Enjoy life, it’s yours – leave a funny comment in your code, don’t be afraid of saying geeky comments, laugh about your\others old code. Laugh as much as you can. People will follow you if you’ll know how to make them smile when things are hard. Coding can be a bitch, great programmers makes you forget it for a while.

Good luck, I know you can make it. 


And we wonder why everyone hates us(Israelis)

I’ve just opened Yediot Acharnot’s(one of the largest newspaper in Israel) site –


On the bottom-left of the picture you can see the title “The Palestinians: 13 years old was killed by the Israeli Defense Force fire”. Reading a few sentences inside of the article paints a different picture: several Palestinians terrorists, and the 13 years old boy among them, throw a grenade on our soldiers and one of our officers was hit. The fire was in response to that grenade. What the hack a 13 years old boy running with terrorists? Should we not defend ourself? Would you remain motionlessly after being hit by a grenade!? I doubt it… This boy have a mother and father, where were they? The hatred made them blind? made them believe that their son’s life are not worthy? Is it OK to send your son to explode and than raise his little brother to follow his path?!

The Lebanon War was exactly the same – they(Hizbala) fired missiles from civilians houses and then entered the building. Did our army react? in 99.9% of the time the answer was NO(you didn’t hear about it right?); One time (Kfar Kana) we did react – the entire world was shocked by it for several days. Where are the pictures of the destroyed houses by that missile? Where are the Israelis Pictures who died from that missile? 

Did Kadafi asked himself why a terrorist entered a building after firing a missile? I bet that he did. “Well, they fight the way they fight. I don’t find logic in their actions that I can relate to, but it must be there… right?”.

Did you ever see on television(CNN, FOX news, whatever) a 13 years old kid throwing a grenade on a tank that kills our soldiers or the 5 minutes later that this kid was shot? Why don’t you investigate where his parents were at that time? What about the terrorist that threw a grenade inside a house with civilians in attempt to kill one of our soldiers and “accidentally” killed the civilians in that house? I guess you heard something like “Israeli Defense Force killed an entire family while catching a terrorist”. What about the 100->55->44->30->22 dead in Kfar Kana. The German’s press(no the Israeli press, the German’s!) took picture of the place and they catched(on video) that the bodies were moved around just so it will appear that more than 100 people died!

That’s OK, I don’t expect from the outsiders to play nice, to cover all the facts and tell the story from our side as well(I’m no journalist, but isn’t it the first rule you learn – “cover the story from every angle”). That’s asking too much I assume. But from Israeli media I do expect more! These reporters make us look bad. Tell the story as it was and emphasize the cause that lead to that result, you are Israeli reports for god sake!!

The funny stuff is that we(the Israelis) always think that our ambassadors are not doing it(Public Relations) right on the outside.
We are so wrong. Our problem is from the inside, if a guy like me have to read this story from the Palestinians side and in small letters – our side, in an Israeli newspaper, it’s our fault.


I really tried not to get into the core of my thoughts as it might start a World War III which is usually a bad thing(right?). Our people want peace, we want to live with our neighbors, we do hurt that their kids are dying and our people are being bumbed in buses. I sometimes wonder though, what about the other side? What about the world?…


Patching words to music

I can’t think about a better phrase to describe the latest songs in the industry. Listening to the radio makes you switch between the stations like you have some kind of disease; The songs lost all their meanings and instead we are swamped with “catchy” songs that we hate, but just can’t live without whistle them every 2 minutes or so. Just listen to Justin Timberalke’s latest song – “SexyBack”, this is all about the catchy music, the words are completely irrelevant and you can’t even hear the singer as the drums block his(?) voice(I’m not sure it’s even Justin’s voice). Does Justin OK with this kind of music? I’m not sure, but I *hope so. It still makes me think a lot about the way I worked until now and the way I’m working today; I really believe that being a programmer is as artistic as being a singer or a writer. There were times in life that I felt we are writing code just to make half-baked applications and ship them out to the mass(our clients), the quality was peripheral, and it conflicted with my “artistic”-self values. Are you familiar with that feeling ? There were also times of elation, when our code was beautiful, pure, magical. It made me smile talking about it later on. Working on a big product, at Mercury, and talking with the (amazing)guys at work, made me feel how lucky I am. Thankfully, I’m still in a position in life that I can made an influence, although I’m not naive and fully aware to the fact that clients are always right and $$$ will dictate deadlines and features packs. There is one sentence I keep saying to the guys working with me (since I was 16) – “be proud of your code”. Write your name in big, CAPITAL LETTERS, at the beginning of your files, make sure everyone knows YOU did it. This will push you into excellence (you don’t want others looking in your code and swearing your mom, do you? update: your mom says “no!”) and inspire you to think about better, more creative and unique solutions instead of ad-hoc, ugly “But hey, it works!” solutions.

So, please, don’t let **marketing or money dictate your life. Everything in Life is a trade-off, but you should decide your path, don’t walk silently in a path carved by others even if it’s easier. At the end of the day, saying “But I had to” or “But it’s shorter” will not make you sleep better at night; If you like what you’re doing, I’m sure that you are familiar with the feeling.

* I know. he is rich & famous, he must be happy. Does he ? maybe…
** Unless this is your decision, which makes it OK. As long as it is your choice.