Going Agile? Stick with the Fundamentals!

Agile Software Development practices are bringing a host of benefits to more and more organizations who choose to adopt this Lean way of working – and do it right.  The press is full of success stories and examples of companies who have successfully made the journey.  Well documented benefits include greater stakeholder involvement yielding improved customer satisfaction, higher quality products, greater adaptability to change, faster risk retirement, and earlier initial product (and value) delivery to name just a few.  So what could possibly go wrong?  See where this is going?

The real-world fact is that moving to Agile is not necessarily an easy move, especially for larger development teams.  Like any methodology there is no such thing as perfect, meaning that there exist pitfalls and problem areas that have caused more than one company to wade in deep and then get out quick.  Interestingly many of the pitfalls are not at all new to Agile, they are classic old school pitfalls that still apply even with Agile.  Sorry – Agile does not solve all problems.  You still need some level of up front estimates to help build a solid business case and avoid stakeholder disillusionment.  You still need solid customer engagement and in fact Agile requires greater customer engagement!  Your Agile teams and their leaders still need to look above the trees and see the forest, meaning you cannot just jump in and begin sprinting without a clear vision of your destination.  And the list goes on.  My message here is that the fundamentals still matter.

Today I want to focus on one fundamental that transcends methodology and that is developing a solid business case to justify an investment in software development.  To quote Stephen R Covey, “Begin with the End in Mind.”  When it comes to software development, this translates to starting with a good vision document, reviewed and approved with key stakeholders.  It is appalling how often this step is skipped and it is fundamental.  Complete this step or do not pass go!

When the vision is agreed upon, quantify the business benefits, develop a cost estimate, and complete your business case before the project begins, before Agile teams are fully assembled — aka early on.  There are those who might argue estimates are too difficult and that Agile eliminates the need for this step.  “It’s too waterfall”.  My advice is go right back to the fundamentals and complete your estimates.  In fact, use modern tools and Lean thinking to improve your estimates and complete them much faster.

One tool that I’ve found to be highly effective is SEER from Galorath and there are other similar modeling tools available.  These tools allow project leaders to quickly describe a project in a surprisingly few number of steps and then based upon sound estimation techniques and real world project histories, create estimates for cost, effort/complexity, and duration.  More than that, modeling tools enable PMs to quickly test different ideas to help business teams evaluate multiple scenarios and business cases with relative ease.  Unlike traditional techniques, which can be quite time consuming and less accurate, using tools like SEER reduces estimation demand on your most experienced and valuable technical resources, which really fits well with Agile thinking.   You do not want to have experienced developers and architects getting dragged into being professional estimators, you want them developing great software!


Making Raspberry Pi with DaneNet

I had a very enjoyable day last week working with other local volunteers and the good folks from DaneNet for this year’s IT Day of Service event here in Madison, WI!  Thanks Matt!  Our project this year: find creative ways to help local non-profits through the “Internet of Things”, with the things in this case being tiny little Raspberry Pi single board computers.

You might be wondering how something like a $35 credit card sized single board computer could be used to help to a non-profit organization.  Well it turns out there are actually many interesting applications and I was amazed at what we could accomplish in just a short few hours of hacking through various solutions.  One application we discovered was setting up a Raspberry Pi device connected to WIFI and a refurbished LCD computer monitor to create a very cost effective and easy to use welcome display.  Simply tape the device to the back of the monitor and voila, you’ve got digital signage at a fraction of the price of a commercial system.  You’ve probably seen this in office settings displaying a welcome message, employee news, or announcing visiting dignitaries.

Another interesting application we found was using a Raspberry Pi connected to one or many digital temperature sensors.  This turned out to be very useful for the folks at DaneNet, who wanted to be able to monitor the temperature of their client’s server rooms and server equipment remotely.  A combination of some open source PHP code, a Maxim digital temperature sensor, and a handful of discrete components yielded a highly cost effective remote data center monitor accessible over the Internet.

If you have not had the opportunity to try out a Raspberry Pi, here is another idea to add to your “Things I’d like to learn in 2015” list, especially as an educational project with children.  We had a number of kids at our IT Day of Service event and they all had a lot of fun.

Note: “Raspberry Pi is a trademark of the Raspberry Pi Foundation”

Making Cloud Economics Work

Moving applications and infrastructure to the cloud can make a lot of sense for your company, but be prepared to make some changes to create an economic model that makes sense.  The traditional ways you have implemented solutions on terra firma may not fly in the cloud without some re-engineering.  It should not come as a big surprise that to get the most out of any new solution, it pays to take some time to understand the new solution, make sure it meets your needs, and then optimize around it.  Consider a few of these examples.

Amazon Elastic Compute Cloud or EC2, offers a wide range of IaaS and PaaS services.   No hardware to order, install, and maintain, no complicated HW maintenance plans to worry about, and all coupled with rapid setup and configuration.  With a little networking help to establish a secure network connection, EC2 can be quickly configured to provide a corporate private cloud to extend the capabilities of your data center.  So what is the down side?  Well cost can be a down side in some cases.  EC2, and the cloud in general, is all about leveraging massively scalable and shared infrastructure.  Your dollars will go much further if you consider a few of these non-traditional ways to leverage cloud infrastructure:

  • Turn on and turn off the instances in your environment. Why pay for servers 24/7, if you only need them running 8/5?  And why keep servers around at all if you are done with them?  The cloud provides this kind of flexibility and vendors like Automic can make this kind of on/off approach easy to manage – if you make the investment of some up front setup.
  • Reserve some instances when you know you will be using them for a while and save up to 75%. If you are worried that you might not need them in the future, check out the Amazon EC2 Reserved Instance Marketplace where you can sell un-needed capacity and buy it as well.  Similarly use Spot Instances for your short term projects.  Try to do that in a traditional data center!
  • Elastic Load Balancing may make sense in production environments to provide the flexibility to scale up and then scale down to meet seasonal demand and better manage costs.

Consider Microsoft Office 365, offering the ability to move your corporate email, user file storage, and content management to the cloud, while providing licenses and access to Office in the cloud or on the desktop.  Office 365 is really a feature packed cloud offering, but again a little re-engineering can provide big benefits:

  • Microsoft offers a range of options in licensing Office 365, starting with the basic E1 license providing email and office in the cloud only, all the way up to the E4 license providing full cloud and onsite access to the entire suite of office applications, SharePoint, file sharing and video conferencing services. E4 packs a lot of punch, but the cost difference is nearly 3X!  To achieve the best economics, carefully consider which employee groups can work effectively with basic E1 licenses and then scale up only as needed.
  • Maximize your licensing dollars by using everything you can! Office, Lync, SharePoint, file sharing, etc.  With 1GB of file storage and sharing per user, think of all of the SAN space ($$$) you can save if you move some of your storage to the cloud.  And Lync can take a big bite out of telecommunication costs, while boosting employee and external business partner collaboration – if you roll it out and get employees using it.

Finally, look for true cloud applications.  In my humble opinion there are true cloud solutions and sadly there are faux clouds as well, so buyer beware!  Faux clouds try to dress up like true clouds, but upon inspection are really just old school traditional applications and infrastructure, hosted in a remote data center.  That’s not cloud, it’s 90’s style hosting and can end up costing a lot more with few of the benefits.  True clouds offer:

  • Massively scaled multi-tenant solutions
  • Flexible, scalable, and agile, applications and infrastructure
  • Pay as you go, pay as you use, without long-term and restrictive telecom style contracts
  • Rich web service integration capabilities
  • Configurability and customization that is forward and backward compatible, allowing cloud upgrades to occur almost without notice

Navigating in the cloud can be a little tricky, although the offerings are rapidly maturing.  The folks at 451 Research provide some interesting benchmark data to help shed some light on how to cut through the hype with their “Cloud Price Index” that I recommend checking out.  If you have any insights into maximizing your cloud investment, please share?

SEC Filings as an IT Benchmarking Tool

Ever looked to SEC filings as a source for IT benchmark data?  These reports offer a wealth of information that can be used for competitive benchmarking, PESTEL analysis, macro trends analysis, and more.  And they are free!

I was recently doing some competitive benchmarking using SEC filings, which I hadn’t done for a while, and the exercise served as a reminder of the value of this type of data.  I focused on the 10-K annual report and 10-Q quarterly reports and there are others that may be of value depending on the situation.  I was pleasantly impressed at all the information I was able to retrieve.  In just a few minutes, I was able to compare total revenue and EBITDA and then went on to find details on capitalized software development, major IT capital purchases, and IT operating expenses.  While this data is fairly high level, it helped me to quickly understand how my company compared to three other competitors relative to percentage of spending in these areas, which will be very helpful during budget planning.

Then taking some time to more fully digest these reports, ranging from 55 to 90 pages, I found a bunch of competitive information beyond just the financial statement data.  One company discussed the importance of some key patents, a number of which were about to expire.  Another company talked about key technology initiatives, like the completion of a highly successful mobile device application that was developed to provide rapid self-service, and a new customer information system being developed that presented a high risk of business interruption if not completed successfully.  And a third company shared that sales had increased significantly due to technology investments to enhance the customer experience.  Some provided more details than others, but this was excellent competitive information overall.

The bottom line is that these standardized filings, designed to help investors make informed decisions about whether or not to invest in a company’s securities, can also help IT leaders refine their technology investment strategy.  Please share your thoughts and experiences with this type of benchmarking as well.

3D Printing and the Value of Learning Something New

I am sure this story will resonate with many readers who purchased toys for their kids this year.  My story starts out with a RC race car that I bought my grandson for Christmas, which lasted all of one day until it was broken.  It was accidentally stepped on it and a wheel broke off.  Hoping to get more than a day’s use out of the car, I set out to look for a replacement part so that I could quickly fix it.  To my dismay however, there were simply no replacement parts to be found and thus started my foray into 3D printing.

Having heard so much about 3D printing in the last year, I saw this broken car as the perfect opportunity to jump into 3D printing myself, although I had no idea whether it was feasible or not.  Unlike my replacement part search, my search for 3D CAD (computer aided design) software and 3D online print vendors was successful to the point of sensory overload.  There is a dizzying array of choices and I finally had to look up some reviews to help guide me.

The first step was to find some good CAD software that I could use to design my replacement part.  I was looking for something simple to learn, fast to design with, and preferably free – don’t we all.  Very happily I ended up finding something that satisfied all three of my requirements in an online design tool called TinkerCad from Autodesk, the makers of AutoCad.  TinkerCad uses a simple, yet very powerful visual design paradigm based on merging together various geometric shapes that either add or remove material from a design.  Armed with my $15 micrometer, I was able to fully design my replacement part in about 15 minutes.  Wow!  I am sure there are other great CAD packages out there, but I am now officially a fan of TinkerCad.

TV-Thunder Part 2he next step was to pick an online 3D printing vendor, which is similar to choosing someone to print your photobook.  Sure I could have purchased my own 3D printer, but at 20 times the price of the toy car I was fixing, using a service seemed like the best approach.  I chose i.materialize because they were integrated directly with TinkerCad and they offered a huge selection of materials to print with, from plastic, to ceramic, to stainless steel.  I chose to print my design in a high strength plastic, but if the design proves successful and later I want to make it bullet proof, I’ll have many materials to choose from.

Now in a few more days my friendly UPS truck will show up with my custom designed part and my grandson will be back in business.  And I even open sourced my design and can now add “Open Source Contributor” to my resume.  If you happen to have a V-Thunder Pickup Electric RC Truck, feel free to use and enhance my design.  http://tinyurl.com/l3u3es3

Reflecting back on the whole experience reminded me of the importance of taking some time to dive in and learn something completely new.  Granted, learning to design and manufacture this new part was not that hard, but that is actually the beauty of the exercise.  It might have been very hard or very easy and had I not committed to learning the process, I’d never know.  And now I have a new skill that I can build upon and a great story to share as well.

So whether you want to try your hand at 3D printing or something else you’ve wondered about, make a New Year’s resolution to learn something new in the next 30 days!

Lead like a Martian

Having spent over a year stranded on Mars, Mark Watney’s experiences highlight many important lessons in leadership.  If you haven’t done so already, I highly recommend picking up a copy of “The Martian”, by Andy Weir.  The story is of course fictional, however the storyline is quite plausible and the science behind the story is fascinating.  Altogether a highly entertaining book that I just could not put down!

So what is Martian style leadership?  I am sure that everyone who reads this article will have their own opinions (do share) and here are my own.  Spoiler Alert: I tried not to give too much away, but if you have not read the book and hate spoilers, proceed with caution!

Never give up, never say die!  This story has many parallels to the Apollo 13 mission.  In this case an astronaut, Mark Watney, is stranded alone on Mars and supported by a team, that together simply will not give up and will not take no for an answer.  How many times have we seen/witnessed stories of success coming to those who persevered through significant challenges to emerge victorious?

Stay calm under pressure.  It is an understatement to say that Mark Watney faced huge challenges.  Many problems he encountered were unique to his situation and never before solved, yet he remained objective and focused on solutions.  When he couldn’t figure something out, he would often sleep on it and wake up refreshed and full of new ideas.

Dive into the data and do the math!  Whether calculating how many days he could live on potatoes or how much hydrazine to process to create water, Mark clearly did his homework to save his own life.  I am a firm believer in plunging into data at times to deeply understand the issues and reveal new solutions.  This may not save your life, but most certainly will help your career…

Take some risks!  Mark took some audacious risks, most which panned out and some that literally blew up in his face.  Quick to pick himself up, brush off the singed clothing, and move on, the Ares 3 mission would have ended in total failure had Mark not taken huge risks.

Maintain a good sense of humor.  The lesson here is that when your risks bets don’t pan out or when you make a mistake, have a good laugh and move on.  Not to be flippant, but we obviously cannot change the past.  This book has some very funny moments, often related to something going very wrong.  Mark Watney is quick to admit when he screws up, but then moves right on to saving the mission and saving his life.

“The Martian”, by Andy Weir is one of the Science Friday Best Science Books of 2014.  Pick up a copy and share a few of the lessons in leadership that you pick up – there are many.

On-Premises versus Cloud Infographic

A few weeks ago I found an infographic showing how the use of Cloud Computing can provide advantages over the traditional on-premise data center and it got me thinking.  While Cloud Computing is certainly not the answer for everyone and not the answer for all computational use cases, every day the cloud continues to evolve into a stronger and more compelling business case.  I would compare the evolution of cloud computing to similar transformations like the move from mainframes to open systems or the move from physical infrastructure to virtual, with each successive transformation moving fast than the last.  Thanks Gordon Moore!

While I liked the infographic I found, I also felt it was not complete and didn’t tell enough of the story, so I decided to create my own below.  Click on the image to see the full sized PDF.  Now help me out with your feedback.  How would you change this infographic to help tell a more complete story?  Any negatives or watch-outs?

Cloud Iceberg