Why processes/methodologies are no silver bullets for software development

Every time you hear that a new process is about to be implemented at your company to increase productivity or software quality or creativity you should open wide your eyes and look around. Chances are that the problems are not processe related in the first place. 

Bolt-with-nut

Let me start with a true story about bolts, washers, and nuts. I was in the 5th or 6th grade when all the boys from my class had the privilege to understand the working class: once a week we were taken to a factory and given the task to put together a bolt, two washers (split and flat), and a nut (these Kafkaesque tasks were common during the communist regime). In front of us on huge steel tables was a pile and we had a quota. After a while we realised that if we split in teams and each person does only one task we will finish the job faster. A simple change in the process increased our productivity while the people working on were the same.

Later I learned about Mr. Ford and his innovation (assembly line) and nodded wisely – I knew first-hand what it was all about.

During my software engineering time I learned another lesson about productivity: if you use the right tools (IDEs, programming languages, libraries, or frameworks) the same person can achieve more with the same input (at least once she or he understands the new tool). Simple example: suppose you have to plot data in some nice looking charts. There are two ways: write the code from scratch or use one of the countless libraries available for your programming language.

So far so good and probably nothing to argue against. So where issues start to creep out? On short: when you try to implement a process at the company level (or even team’s level) process that you hope to yields better results then what you already get (more creativity, faster time to market, better software).

I’ve seen teams doing great using some kind of waterfall approach and then switching to Scrum and doing also great (hard to tell if it was better or not). And the opposite: teams struggling in waterfall setups weren’t necessary better when switching to agile.

Trying to implement agile methods (like Lean Startup) at big companies is a painful process to observe and probably even more painful if you are part of the teams. 

So why’s that? I think the main problem has to do with the homogeneity (or lack of) at big companies or big teams. In theory you take the new process and lay down on the company the same way you’d lay a blanket on bed: it will fit neatly and cover everything evenly. 

Untitled-1-01

The reality is that the blanket has to cover not a flat surface but a rough terrain that has lots of mountains, valleys, hills, and plains. Executives and senior management are the mountains, while the engineering teams are the hills or plains. And the valleys are the disconnect between the executive management and the engineering teams. Each party will take only what it makes sense and discard the rest of it. The end result hardly can be the one you hoped for.

Untitled-1-02

Many of these cool processes were designed by startups. At startups the homogeneity is almost perfect – founders/executives are core part of the engineering team. All people pull in the same direction and have the same picture of the environment.

So why try in the first place? I think the assembly line from manufacturing industry and the developer tools are part of the problem – we think that surely it can be as easily to change the dynamic of a company or teams using the process X or Y.

In my humble opinion it is less about the process and probably 90% about having the right people with the right attitude in your team or company. Starting with the executives and finishing with the engineering teams. And because it is always harder to recruit and keep the right people we go out and hunt for the hottest methodology and try to make it fit at our company.

If you think I am wrong then explain me why a company like Samsung can’t beat a company like Apple when it comes to mobile devices? Do you really think that it is the process they are using or the people who work at these two companies?

Credits: “Bolt-with-nut” by Pavel Krok – Own work. Licensed under CC BY-SA 2.5 via Wikimedia Commons – http://commons.wikimedia.org/wiki/File:Bolt-with-nut.jpg#/media/File:Bolt-with-nut.jpg

Keep Walking

I had the time of my life at Adobe, especially the time spent as an evangelist. I still remember the day I met Ben Forta for the firs time and he offered me the chance to join Adobe’s Platform Evangelism team.

Right there I knew that it was a big opportunity. But even so I couldn’t imagine the impact will have on me not only from a professional point of view but from a citizen of this planet too. As developers we think that we know our clients and users. Some might actually know. But for the most of us it is always more about the ride then the summit. And for software products you have to make happy your clients otherwise there will be no trip anymore.

As an evangelist I got into a position where I had to understand not only the technical bits but also customers, marketing, sales and business, social media, public speaking, and politics to name just the obvious. I got to meet and learn from colleagues and bosses, customers, and fellow speakers. I got to travel around the world and make new friends. Some lessons were about technology and doing your job, some were more about being a better person and understanding the world we are all sharing.

For all of this I am incredibly thankful.

Red Pill

But every great chapter has an end and all we can hope is that the next chapter will be as good or maybe even better. For the past year I’ve been thinking what’s next for me after the evangelism. Out of all the things I could have tried, the product management was looking the most challenging and rewarding at the same time. Working and spending time with some great product managers (Andrew, Jacob, Adam, Thibault, Ryan) helped me to shake off any second thoughts.

Once again I was fortunate enough to have a choice: PM with Adobe or with Bitdefender . Bitdefender just felt right, the team, the products, the challenges ahead. I knew some of the people over there and had great respect for them. So I took the red pill. One month later I can already say that I have the time of my life.

We think a lot about products, technologies, and companies. But at the end of the day it is always about you. What does it make you tick and makes you to keep pushing forward, keep walking? Do you want to take the blue pill or red pill?

PS. I will continue to blog here. It will be less on technology and more on product management.

Tips & tricks for traveling like a pro

My travels in the pat 16 months

For the past 6-7 years I’ve been traveling a lot (about 90 days a year). So, it is only natural that I became better and better at coping with travel related stress. And when I say better I mean I discovered the tricks that minimize the stress associated with travel. Let’s face it: unless you work as pilot or something like this you are a lot more interested in what awaits you once you got off the plane than what you experienced during the flight.

So here are some tips in no particular orders.

1. Check-in online. Always!

Unless you always travel business or first class you should check-in online as soon as possible. Sometimes it is possible to choose the seats at booking time. But you should always be able to choose seats when checking-in online.

My personal preference is to get isle seats front of the plane. This way I can get in and out fast.

If you check-in online and you only have cabin luggage, than you can get to the airport as late as just 30 minutes before taking-off (at least here in Europe). This is handy when you have heavy traffic or you just over-slept.

2. Travel light

It takes lot of discipline and/or experience to pack only the things you really need. But once you start doing this you will get back precious time. The goal here is to not check in any luggage. This means that you don’t spend time waiting for your luggages nor being stressed out because your luggage didn’t make it to your final destination.

3. Tripit

Tripit has mobile apps for all smartphones. It helps you to keep the most important aspects of your travel neatly organized and literally at your finger tip: a quick glance tell you when is your next flight, what airport terminal, what hotel and address you have to get to.

What’s eve more cool is that you can forward the booking confirmation you got from your airline or hotel to “plans@tripit.com” and have the trip automatically added to your profile (you just have to send it from the email address you set for your Tripit account).

Personally, I set a rule in my email client to automatically forward all confirmations to Tripit.

4. Passbook

If you’re using an iPhone you should give Passbook a try (I am sure Android users have something similar). Passbook keeps a virtual boarding pass at your finger tip: even if your phone is locked, a quick swipe on the Passbook notification icon will display the boarding pass. In most European airports this is all you need to get through the security and to board the aircraft.

If you haven’t use it, you should know that in order to get a boarding pass into the app you actually have to use the air company mobile app to do the check in and once completed you should have the option to add the boarding pass to Passbook.

5. Best headset you can afford

Once you get onboard one of the biggest source of stress is the noise – engine and people. The only thing you can do to protect against this is to buy yourself a nice headset that has noise cancelation.

I’m using a Bose pair. It does an amazing job in keeping out the engine noise but the build quality is not the best. The fabric that covers the speakers can fall apart after less than two years.

6. Get on a frequent flyer program

If you fly frequently enough it makes sense to apply to a frequent flyer program. Do your research well and choose wise. You should know that not all programs are equal.

Once you accumulated enough miles to get status (silver, gold, platinum) you are going to enjoy benefits like: priority check-in, priority boarding, priority security check in, better seats & on-board service, free or miles-paid upgrades to the next class, free additional luggage allowance, improved customer service.

It might not look like much, but these things save you time (because you spend less time in line for example) and help minimize the stress. In case your flight gets canceled or delayed due to bad weather or some other unexpected incidents trust me when I say that if you have status the ground personnel will do their best to send you to your destination. When there are only 20 seats left in that other plane it’s really sweet to be on the VIP list. Most of the time they will not charge additional fees.

Another benefit of having status is that you get access to the airline’s airport lounges. If you are like most people thinking that this is great because of the free meals or drinks than you are wrong. It is about having a quiet environment for working or relaxing; it is about having cleaner rest rooms than the airport averages (including showers). The public restaurants or lounges are sometimes so noisy that you may regret you have ears; and don’t even get me started on rest rooms.

Conclusions

There are other things you can do but those are more a personal thing than general public advices. The last advice I have for you is that to be polite when you argue with the ground/airplane personnel. They have to deal with assholes every day; you have better chances to succeed with your request if you behave like a gentleman.

Of course this is true when you are not in a Ukrainian/Turkish airport :).

Three things I learned at Cannes Lions 2014

Cannes Young Lions Print Competition briefeing

This year I had the pleasure to brief and help the competitors from the Young Lions competition (Adobe was one of the event sponsors). These competitions are just one small part of this 7-day festival, the biggest in the world.

You can imagine that you have lots of things to learn and absorb and even more when it is your first visit to Lions festival.

Much to my surprise, what I loved the most were related to the work of the Cyber competition winners, the Print competition theme, and the team who supported the 5 competitions related to creative work. Let me explain why.

The Print Competition brief was pretty simple: drive social media awareness in USA for the WWF organization. This is the work of the winning team (Japan team):

GOLD_print-japan

The brief reminded me that even the most hardcore smartphone/tablet/PC user spends lots of time every day on other things than digital screens. So, when you or your company plans a campaign to get more Likes or tweets remember that sometime the best channel might not be digital at all.

The winners of the Cyber competition were just awesome! Trust me that I’m not saying this just because they are fellow Romanians :). The brief was to create an online campaign to raise awareness and funds for an organization helping blind people.

Their proposal was just brilliant: partner with large e-commerce companies and each year run a campaign where the customers are experiencing the same shopping experience as a blind people (it means they can’t use their eyes to shop). You have to give them credit for this crazy idea, very powerful with great potential to trigger strong emotions and in the end help the blind people. Well done guys!

Finally, the backstage team who offered competitors guidance and technical support was amazing – thank you Alain, Robert, Mark, and of course Liza. Alain has been running/helping the competitors for the past 15 years or more, Robert and Mark for the past 8 years or so. They offered me a great point of view on how technological changes (computers and software) transform the competition (Print, Logo Design, Cyber, and Film competitions).

 

Support for high pixel density screens in Adobe Muse CC 2014

The high pixel density screen proliferation introduced a new “requirement” for most web sites: providing two different resolutions for the images. If you decide on going just for the standard resolution, then those pictures will look fuzzy on devices such as iPhone 5 or 5s, iPad Air, or MacBook Pro with retina display.

In order to get around this problem the common solution is to have two versions for a given image: “normal” resolution (to be used for low pixel density screens) and twice the resolution (for high pixel density screens). Then with a little bit of JavaScript you can serve the right image.

Adobe Muse CC has now support for handling high-resolution screens. As because we are talking about Muse, it doesn’t involve any coding. You just have to enable an option and use 2X images.

Continue reading