Saturday, December 29, 2012

Everything should be everyone's business!

When working with more than 2-3 developers on a big project, you can't always be aware of everything that happens around you... Never the less, you should and even need to!

What am I talking about ?
You should be aware of everything that happens on your project - from open bugs, to the build server status, the site/product performance, to new implemented features, errors in the log, and the list goes on...
Every aspect of YOUR project should interest on a daily basis!

Why is this hard ?
When working with many people, on a big project, you can't really go over all the commits, the new features, always check the performance graphs, search the logs for errors and QA the site for new bugs.

How is this done ?
Sometimes all you need to do, is make things a little easier for everyone. What do I mean by that ? I mean that sometimes you need to give developers the right tools to view the logs, sometimes you need to put up a new monitor in your company hallway and display the performance graphs for people to see each time they go for a coffee break and sometimes you need to build a system that will send automatic emails to each developer that breaks something to get their attention...

A couple of things I am working on in my company to make things more transparent and 'in their face' :
- We have a custom built internal performance profiler that we use a lot. It looks like the mvc-mini-profiler (built by StackOverflow) and is displayed when adding a secret cookie. This wasn't good enough for me! I wanted everyone to be seeing this all the time. So, I modified it to be displayed for everyone coming from inside our office networks.

Numbers are pixelated intentionally

- Performance graphs... We heavily use graphite, and store there TONS of data... The problem is, it's sometimes hard to look for exactly what you need, and it's not that comfortable. This also is unacceptable... What I did was create a really nice looking dashboard with very little information, but just enough to see what's important, and soon we're going to hang it in the hallway for everyone to see all the time!

Numbers are pixelated intentionally

- Bugs... Sometimes people run into them, but it's not that easy taking care of them... I created a button that will be rendered on our site, for everyone within the network, and clicking on it will allow you to report a bug really easily - you just need to enter a title for the bug, and the system will add all other relevant information (a screenshot, what version, which user, errors previously caught, and so on). This will automatically open a bug in our bug system.

- Logs - We have an internal utility that reads the log every day and checks for the top erroneous components. I decided I needed to put this up on another monitor in the hallway, and next to each component I put the name of the person responsible for everyone to see! :) No one wants to be on this monitor, and therefore this is bound to work...

I strongly believe in this whole philosophy, and won't quit until the cleaning lady will be calling me in the morning to tell me that the monitor is red! :)

Sunday, December 16, 2012

I'm back...

I didn't write any posts for quite a while and I'm really disappointed about that...
Most of the things I do, or try to do, on a regular basis turn into habits that are eventually just part of my system. Every once in a while when something unusual happens that 'knocks me off the wagon' I realize it's hard to get back to doing it. Eventually I force myself to get back to it, and then everything gets back to normal...

In this case, blogging - I have abandoned it for quite a while now. It started a couple of months ago when I started preparing myself for a month long trip to Japan, and since I returned I haven't got to it.

So... sorry for disappointing you, the reader, if you were expecting something technical, or computer related, but I just felt the need to write something here just to get the ball rolling again.

And since I'm here, and I already told you about my trip to Japan, I thought I'll at least post some photos to feast your eyes on... :)

The character on the billboard is one of the most famous singers in Japan. Young teenagers buy tickets in advance and fill up entire stadiums just to watch 'her' sing on a giant screen!

Used laptops going for really cheap...

Typical Japanese cosplay @ Takeshita Dori

Some interesting architecture... (Maybe this building was straight before all the earthquakes! )

The average grocery store filled with lines of people reading the new weekly manga

Enjoy :)
I'll be back soon with something more technical for you...