Thursday, June 26, 2003
When kangaroos fight backThis is the funnest thing I've heard in many days at Andrew Forward, highlights shamelessly copied here:
Australian virtual reality simulator for helicopter combat training wanted to include the local marsupials' movements and reactions to helicopters. Being efficient programmers, they just re-appropriated some code originally used to model infantry detachment reactions under the same stimuli, changed the mapped icon from a soldier to a kangaroo, and increased the figures' speed of movement. Eager to demonstrate their flying skills for some visiting American pilots, the hot-shot Aussies "buzzed" the virtual kangaroos in low flight during a simulation. The kangaroos scattered, as predicted, and the visiting Americans nodded appreciatively... then did a double-take as the kangaroos reappeared from behind a hill and launched a barrage of Stinger missiles at the hapless helicopter. (Apparently the programmers had forgotten to remove that part of the infantry coding.)
sounds like something out of the Tank Girl movie...
Building a Stable and Clustered J2EE Environment?Slashdork posted the question (with a better than average data/noise response) and this reply which can be summed up as : Apache (with mod_jk2) load-balancing solution in front for the static content, JBoss + Tomcat on Linux clustered using JBoss' JavaGroups based clustering (buy the JBoss docs to help with the clustering), and the DB clustered behind that. More info here on Clustering with JBoss 3.0 from the Chief architect of JbossGroup.
On a related noted Jeremy Zawodny's recent blog entry High Availability is NOT Cheap does a good job of summing up why it's not cheap, and what you really need to be thinking about.
My own gut feel has always been : to get from 99% uptime to 3 9's (99.9) multiple the cost by 10 and from 3 to 4 multiple by 10, and from 4 to 5 multiple by 10. So you can likely get 99% with say $20K (2 boxes plus a few other things), 99.9 with $200K and 99.99 with $2m. If you haven't done that then your are cheapening out somewhere which will blow up in your face. also the other side of the equation is how many 9's do you need? 99.999% uptime is 5 minutes, 99.99% is 52 minutes, 99.9% is 9 hours, 99% is 9 days How much perk revenue and/or transactions does that site handle, worst/best case? How much do you lose if/when is down? Yes, there are also perception and risk issues. Clearly it makes sense for an Amazon.com to spend to get 5 or 6 nines, but just as clearly most organizations do not need more than 4 9's, and would do OK with 3 9's. Good management, operational and IT practices can add a nine, such things as : developing your existing staff; external and internal monitoring for potential problems; testing before, during and after development.
UPDATED: I wasn't thinking of salary costs when I went out on a limb and quoted some WAG dollar figures. Rule of thumb : Salary/development costs match hardware/software costs. If not then you missed something (or our trying to sell me something!). You might get away with spending 100K over 2 years (stretching it out) rather than 200k in one year, but if you try to get away with only 100k the first year your successor will just end of spending 200k fixing up the mess you left behind. Dev costs = HW/SW costs is another unbreakable iron triangle. Staffing numbers seem to have an optimum level: too little and you spending all your time task switching (although you can deliver on a longer time frame); too many and you spend all your time meeting/communicating (or the people who "do" are too removed from the people who "decide"). This is one of the management best practices they don't teach in the MBA schools. (Based on the number of times I been ask to metaphorical told to delivery the baby in less than 9 Months : it takes one man and woman 9 months, doubling staff count wouldn't change that, anything less than 9 months is less than a prefect baby and all the management directives to the contrary wouldn't change that. Sorry I had to get that off my chest. bad experiences. If any of this is new to you read : The Mythical Man-Month: Essays on Software Engineering by Frederick P. Brooks, ISBN: 0201835959 , and if it isn't new then we should re-read it anyway.)
Of course the cost (HW/SW) of doing all this is a tenth of what it was in 1999, and is likely to be at tenth of todays cost in 2008. Or to put it another way you can afford another 9 more than you could in 99. Using Linux/Apache/Jboss/MySql alone could save $100K to $200K in software costs ( and MySQL has transactions) over an AIX/Solaris Websphere/WebLogic DB2/Oracle build. and this is before the SAP/MySQL Deal which will yield results in bringing down the SW costs for ERP/CRM/BI and data warehousing in a couple of years.
Wednesday, June 18, 2003
Blog updatesvarious small changes to the blog Template making it flow better, and adding an email address in such a way to defeat the spam bots. Also experimenting with a windows based blogging editor called wbloggar found via Lotus Domino blogger Extraordinaire CodeStore, which will hopefully lower the number of spelling errors, even if it can't do anything about my grammar or quality of writing!
Saturday, June 14, 2003
Installing, Running and Maintaining Large Linux ClustersFound via SlashDork is this piece on buiding up Linux clusters to more than 1000 nodes... experience confronting some of the LHC scale computing challenges: scalability, automation, hardware diversity, security, and rolling OS upgrades. Looks like a must read (must try to understand!). 1K nodes would be a good start in SPTRTW
Friday, June 13, 2003
Murphy is a alive and well, and managing your project
Murphy is a alive and well, and managing your projectFound on Rules In Project Management (more stuff there to) via Globe and Mail. I feel like I've lived many of these over the years, which is not a good thing...
- The same work under the same conditions will be estimated differently by 10 different estimators or by one estimator at 10 different times.
- The most valuable and least used word in a project manager's vocabulary is "No".
- You can con a sucker into committing to an unreasonable deadline, but you can't bully him into meeting it.
- The more ridiculous the deadline, the more it costs to try to meet it.
- The more desperate the situation, the more optimistic the situatee.
- Too few people on a project can't solve the problems - too many create more problems than they solve.
- You can freeze a user's specs, but he won't stop expecting.
- Frozen specs and the abominable snowman are alike: they are both myths and they both melt when sufficient heat is applied.
- The conditions attached to a promise are forgotten and the promise is remembered.
- What you don't know hurts you.
- A user will tell you anything you ask - nothing more.
- Out of the many possible interpretations of a communication, the least convenient one is the only correct one.
- What is not on paper has not been said.
- The first activity in any project is to identify the scapegoat.
- Things take longer than they do.
- The first 90% of tasks in a project will consume 90% of the allocated resource.
The remaining 10% of tasks in a project will consume the other 90% of the allocated resource.
- A 'piece of cake' is any unit of work, regardless of scope, for which someone else is totally responsible.
- A meeting is no substitute for progress.
- If you don't know where you're going, any path will get you there.
- No matter what has to be done immediately, there is always something else that has to be done first.
- If it was not written down, it was never said.
- Hindsight is the only exact science.
- A committee is a group of people that meet for hours to produce a result known as minutes.
- Diplomacy is the art of letting other people have your way.
- The proper course of action can always be determined from subsequent events.
- If at first you don't succeed, destroy all evidence that you made the attempt.
- Parkinson and Murphy are both alive and well - in your project.
The Globe article also suggests steps to improve project success, summarized and commented for your reading pleasure...
- Ensure that the project has an executive-level sponsor..., skills, time and desire to play an active role in the project and to remove any internal organizational obstacles that come up.
- Get a written statement of the objectives and the criteria for success; The objectives should be written and widely shared..If you have no goals you are sure to achieve them
- Manage client expectations...Build no less than needed to meet your goals, and no more!
- Build a dedicated and qualified team. Train and reward team members, and continually instill with a sense of team spirit...The Quality and robustness of the project refect what the team put into it, and what gets put into them...Garbage in, Garbage out. letting them kept their jobs jobs is not a reward, it's teaching how much you value them.
- Establish clear project governance, accountability and communication channels. Optimistic or pessimistic reporting is not helpful to anyone.
- Develop risk assessment and risk-reduction strategies..a rigorous examination of all the things that can go wrong during the project and what to do when they do -- or how to avoid them entirely...Plan for risk or risk your planing
- Streamlined management processes and financial controls... to pay for quality deliverables at all times....You cannot cut corners without leaving some out, be sure what remains adds value and furthers goals.
- Discourage office politics...The bigger the office the bigger the politics, and the bigger the executive-level sponsor you need to bang heads
- Learn from past mistakes -- either your own or someone else's. Learning from the past, or the present is always cheaper than learning in the future...Ian's Law of Learning Inflation
Monday, June 09, 2003
Look up Susur in a dictionary and it will be defined as Heavenly Food experience
Elicia and I celebrated our Sixth anniversary this weekend and went to Susur, which is the name of the Restaurant and the Master Chief. We had the tasting menu last year, but this year we went for the regular menu (as if anything on it was regular): delicious egg drop soup; thai spicy lobster bisque; melt in the mouth venison; heavenly duck; explosive lemon tart. Service was exemplary (I think they staff for one person per course per table!). Expensive, but once again a delightful gastronomic experience.Thank you my love! (that's to Elicia NOT Susur.)