Category Archives: Web Development

Photo of the book

The Phoenix Project – Book Review

The Phoenix Project

Gene Kim, Kevin Behr, & George Spafford

ISBN13: 978-0-9882625-9-1

The Phoenix Project is the latest book from the trio of authors Kim, Behr, and Spafford. Ardent students of IT may recognize them as the authors of the Visible Ops Handbook1. Their new book is a very entertaining story rather than a staid handbook. The Phoenix Project is a narrative on project management being reborn within a fictional company. Published recently the book delves into a fairly new area of Information Technology (IT) named Development Operations often referred to simply as DevOps. This marriage of operations and development improves operational efficiency and cross-functional collaboration between business units if done right.

In the book we follow Bill Palmer, a freshly minted Vice President of IT Operations, as he transforms a dysfunctional IT group into the key driver for the company. Bill is mentored throughout the book by Erik Reid, a guy who embraces the principles of Lean Manufacturing and how they apply to DevOps. The book is a very entertaining read with thoughtful commentary peppered throughout.

At the beginning the company is in a sharp decline. The IT unit in charge of launching the new product that will save the business, project Phoenix, is a wreck and the IT boss just got fired. Bill is asked to complete project Phoenix. He doesn’t quite know what he is getting into but he knows it is a mess. The project until this point has been managed in a waterfall project management style and the deliverables have been delayed until everything is complete. Immediately Bill sees this as a problem as no one really knows how complete Phoenix is, no testing has been done, and they have to launch in just a few weeks; on top of that normal operations must continue as well.

Through meetings cast in a sardonic light we are shown there are few processes in place and the ones that exist are not followed by anyone. By adopting agile software development practices the team slowly starts to turn the project around. Following a disastrous launch of Phoenix, a wake-up call resonates throughout the team. They start to give the processes an honest chance and again, the workflow improves and the subsequent releases are less challenging. However, the company is still tanking. Bill gets approval to speak with the heads of other divisions to determine what they need Phoenix to do now, rather than when it was first dreamt up. Gathering this data allows Bill to pivot, to borrow a term from the Lean Startup2. They reprioritized their backlog and started producing software that provided immediate value to those using it. I feel that is the key take-away from the book, identifying the business goal of the organization and then ensuring that the work is always striving to move the company towards that goal. The authors really drive the point home by having the company software security officer John shaken to his very core when his work is swept under the rug by auditors. After a hiatus from work he returns ready to make sure the security issues that are prioritized are ones that help the business achieve their goals, rather than stopping them from doing so as had been his previous modus operandi.

Eventually Bill helps transform the company from within. The CEO Steve Masters comes to realize the importance of IT in his company. At the beginning of the book IT was thought of as a necessary component to be dealt with, not the core asset that it is for any operation in any industry.

1The Visble Ops Handbook by Kim, Behr, and Spafford

2Lean Startup by Eric Ries

The book image is from IT Revolution Press: http://itrevolution.com/wp-content/uploads/2012/04/PPhardcover.png

The book's cover. Three people stand in front of a kanban board and the manager is starting the kanban process.

Kanban book review

Kanban: Successful Evolutionary Change for Your Technology Business

By David J. Anderson, ISBN 978-0984521401

Kanban is a process we have been using in the WebTech office for over a year now. We have adopted the system slowly and recently presented our version of Kanban at the Pacific Northwest Drupal Summit. During the Q & A portion it was suggested that I read this book. The last few chapters offer strategies for managing issues we have been experiencing as we move more of our work into a Kanban model.

The book itself is organized into twenty chapters; helpfully the end of each chapter has a list of takeaways that are easily digestible. The book guides the reader through what Kanban is, how to develop a system for your work, and then how to get the maximum performance from the system you implement. Though the book was only published in 2010 it feels dated. Much of the software and websites mentioned no longer exist. However, in their place strong sets of tools have developed.

Kanban is a visual system of identifying work that needs to be completed (the queue), selecting a task to complete, and then following through until it is complete. A challenge we run into is having our queue be a little overwhelming in terms of size. Early in the book, on page 30, Mr. Anderson discusses balancing demand with throughput. He identifies that Limiting Work In Progress (WIP) is the key to Kanban being successful. There are several ways to accomplish this and by implementing a few strategies we have seen our throughput increase dramatically.

Limiting WIP to increase throughput is counter-intuitive but we have been increasing our throughput by about twenty-five percent when compared to not limiting WIP. Chapter 7 deals with visualizing the work. Several ideas were presented that we were able to add to our JIRA Kanban tools including WIP indicators for our columns with the most constraint. There is a thorough discussion of Eli Goldratt’s The Goal when Mr. Anderson delves into bottlenecks and constraints. The gist he tries to get across is that the Five Focusing steps used in The Goal can be a great process to use when finding bottlenecks. Bottlenecks in Kanban slow everything down so you want to make sure a strategy is in place to minimize disruptions to that resource. Chapter 17 deals with bottlenecks in detail and has a fun story about SR-520 and the WSDOT Ferry system to help visualize the myriad of issues around bottlenecks within Kanban.

The last chapter covers issue management and escalation policies. Again, the queue can fill up very quickly and without an effective policy for choosing what gets priority our developers are often left in lurch of indecision.

As our student team grows making sure we that they can confidently self-select issues from our queue is vital to continued success. Mr. Anderson’s book certainly has helped mitigate pain points we have been facing. If you and your team use any sort of agile work process, consider reading this book and giving Kanban a try.

Additional Kanban Resources:

 

The aegir logo, a wave with the word aegir to the right of the wave.

Aegir site migration failure and success – say it ain’t so!

When using Aegir to upgrade production websites I follow a method very similar to the one outlined by Omege8cc – Safe Workflow

The safe workflow technique is nice as it lets you migrate sites into production without having to bring your live site down to basically test the migration. Occasionally, during the test migration Aegir reports that the migration has failed. However, if I look at my files it has successfully moved the entire site to the new platform but could not delete the settings.php file from the old platform and site. The important thing to check is that everything is now actually on your intended platform and is properly setup, vhost files, files dir, settings.php, etc…

If everything is peachy, Aegir did everything besides deleting the old settings.php file correctly. So, to clean up your Aegir interface you first want to delete the site that failed not using the delete button but by clicking the edit tab on the site and then in the URL changing the word edit to delete, and press enter. Confirm the deletion of the site.

Then on the server, delete the remaining old files off of the original platform. On the new platform navigate to your recently migrated site and change the file permissions on settings.php to 664. When you do your final migration Aegir will set the permissions back to the proper settings.

Next, go to the platform you migrated your site onto and verify the platform. Aegir will pick up the site, import it and you will be ready to finish your migrations.

Filing details for FCC motion 14-28

Net Neutrality – Please take a stand

I can blog and share my thoughts, code snippets, pictures, etc… with you my friends, the transient visitors, regulars, and the bots who see and digest my blog and other sites.

This can happen because you have unfettered access to my site. No one is blocking your attempts to visit, at least not if you are in the USA. I also don’t have to pay any extra for you to see the content I publish. I watched the FCC hearing live and after Tom Wheeler said his piece I was under the impression that he was for net neutrality. Then the vote was taken and I realized what he had been saying was in favor of a regulated internet.

My career has been built on an open internet and the sharing of thoughts. If a website like SitePoint, once a scion of the early CSS web development movement, had at that time had to pay to ensure a user could connect at a decent speed, I don’t think they would be around, which possibly means my current job, would not be around. There are data intensive services, case in point is Netflix. Now sure, I watch Netflix, but I don’t watch cable TV, and as a recent Huffington Post article details Netflix is taking up 34.2% of internet traffic so I would think a percentage of those folks don’t watch cable either.  Comcast and other internet data providers are often said to throttle the internet for traffic intensive services. Netflix is also competition though, served over the cable provider’s infrastructure. In the future as more and more devices get connected and we have more bandwidth intensive applications running it won’t just be Netflix that is an issue.

The FCC needs to take a stand and ensure that the internet is a public good. If more bandwidth is needed, why can we not start laying fiber to the home, FTH, so that bandwidth is not an issue. That is happening in many places and there is a grass roots movement to provide quality service to underprivileged areas. My favorite is The Free Network Foundation. The solution should not be charging other companies more money if they want to provide a popular product. A tiered system is not the solution.

Please let the FCC hear your voice. Go to http://www.fcc.gov/comments and click 14-28 and leave a public comment. So many people are doing this, there are 26,726 comments at this point in time 5/19/2014 10:18PM PST. Add your voice.

The author's FCC comments.
My FCC 14-28 Public Comment.