Posts Tagged ‘technology scalability problems’

Independence Day

Saturday, July 4th, 2009
This Fourth of July marks the 233rd year since the adoption of the Declaration of Independence by the US Continental
Congress. In honor of this declaration of freedom I’ve come up with a list of five things that you should consider
declaring independence from yourself. This is just a starter list, write your own Declaration of Independence and change
the rest of 2009 today.
1. Time Drains i.e. email and meetings – as Tim Ferriss says less is more when it comes to email and meetings.  Matt
Waite, a new technologist, says “meetings suck” and even has a game to play during meetings.  Seth Godin just attacks the
issue head on with a nine step process.

This Fourth of July marks the 233rd year since the adoption of the Declaration of Independence by the United States Continental Congress. This is usually celebrated with fireworks, picnics, political speeches, etc. This year I was reflecting a little on enormity of that step 233 years ago. To declare independence from something not only takes courage but also provides a rallying cry.

In honor of this declaration of freedom I’ve come up with a list of five things that you should consider declaring independence from in your business. This is just a starter list, write your own Declaration of Independence and change the rest of 2009 today.

  1. Time Drains (email and meetings) – as Tim Ferriss says less is more when it comes to email and meetings.  Matt Waite, a news technologist, says “meetings suck” and even has a game to play during meetings that will hopefully get you to reconsider scheduling another one without a good reason.  Seth Godin just attacks the issue head on with a nine step process.
  2. Scaling – If you have struggled with your application or database scaling for the first half of 2009, start putting an end to it today. Figure out what is not working (SPOF, synchronous calls, inability to rollback, etc) and stop those behaviors.  We all know the well quoted saying about doing the same thing over and expecting different results. Learn or teach your team how to scale applications and databases. Go even further and declare your freedom from relational databases and get rid of it.
  3. Unhappiness – Life is way too short to be unhappy where you spend the majority of your time. Start your search for happiness by reading about this longitudinal study that is trying to answer, among others, the question of “Is there a formula – some mix of love, work, and psychological adaptation – for a good life?” If you work at a j-o-b and not a career or a calling consider making a change. If you have longed to start your own business the folks at 37Signals has some advice for you to evolve your idea from a side project to full time. If you think its a terrible time to start a business, reconsider, there are a lot of reasons that might make now the perfect time. And once you’ve take the leap consider Paul Graham’s 13 sentence advice to startups.
  4. Product Delivery Nightmares – Many of our clients complain about not being able to get products and new features out the door as fast as they would like. Usually the first, an in our opinion, incorrect attempt at fixing this is to start changing the SDLC to/from Agile, Extreme Programming, Waterfall, etc. The software development methodology is almost never the problem. The first step towards correcting this is to make sure you have realistic expectations and then work on developing detailed plans that incorporate feedback from each previous cycle for continuous improvement. Measuring is difficult and often controversial but it is essential in order to incent success and reward people appropriately. Not blaming the methodology is not an excuse for poor coding practices. As Jeff Atwood explains in his “The Bathroom Wall of Code” post, cutting and pasting flawed code from the internet can lead to disastrous results. We are all probably guilty of “cut and paste coding” but if the code gets checked in it becomes our code for better or worse. Code reviews are one such required engineering practice that will produce quality products and better engineers.
  5. People Problems – If you are leading a team there are almost always personnel issues to deal with. Some problems are unforeseeable and just take time and energy to resolve but others can and should be screened. We came up with a three part series on how to interview engineers in order to avoid some of these pitfalls after the hire. If you already have your team, put a plan in place to seed, feed, and weed. Continuing with the plant analogy, people like plants will seek the path of least resistance, meaning that we prefer to perform tasks that we are good at. Without a development plan in place helping push your team members to practice their weaknesses, they will not get better and you will continue to suffer for it.

Declare your independence from these or other problems that have plagued you for the first half of 2009 and end the year on an upswing.

Twitter Posts

Thursday, June 25th, 2009

If you are like me you probably read hundreds of articles and posts each week. I often come across an interesting article related to scalabiltiy and share it on Twitter. For those of our blog readers who don’t follow us on Twitter I thought I’d share some linksthat I’ve recently posted:

If you have any favorite articles you’ve read in the last month share them with us in the comments.

Coming soon to a book store near you!

Tuesday, January 27th, 2009

 

Well it’s not actually coming soon but it is in the works.  We’re very excited that we’ve just signed a book deal with Prentice-Hall for a book covering all aspects of scalability.  The working title is The Art of Scalability – Scalable Web Architecture, Processes, and Organizations for the Modern Enterprise.  Prentice-Hall is a Pearson Education company and the nation’s leading educational publisher.  Together with another Pearson company, Addison-Wesley, they have published some of the classics including The Art of Computer Programming, The C Programming Language, The C++ Programming Language, The Mythical Man-Month, and Design Patterns.  We are very pleased to be working with this excellent team.  

We have been considering putting together a book for some time and even started the process over a year ago but things got very busy and we put the idea on the backburner.  Having written dozens of articles over the past year we decided it was time to revitalize the idea.  We were fortunate enough to get the attention of couple publishers and ultimately it worked out for us to partner with Prentice-Hall on this project.  

We know there are other scalability books out there but none of them deal with the entirety of the problem.  If you are familiar with our methodology you already know that we think scaling a service or application is dependent on much more than just technology.  We approach scalability from three perspectives and as with the over used stool analogy, if one of the three legs is missing or defective the stool isn’t stable and neither is the application.  The three must have “legs” for scalability are people, process, and technology.  The Art of Scalability will teach engineers, architects, managers, and executives how to solve technology scalability problems through changes in their architecture, processes, and organization structure.

One of the very neat things that Prentice-Hall has setup is an online review system that allows anyone interested to get a sneak preview of the book as it is being written and it allows anyone interested in acting as part of our editorial staff to provide feedback before the book is published.   We’ll give you more information about this process as we get started.  We also plan to use our forum and this blog to keep everyone updated on our progress, so check back often or subscribe to it through your RSS reader.