Skip to main content

Extreme Driving (XD)

If you've never heard of Extreme Programming (XP), you probably just won't get it. As a matter of fact, you might not get it anyway, but that's ok.

XD is a deliberate and disciplined approach to driving motor vehicles. If everybody just tries to drive whatever way, it will take longer to get anywhere, and there's more of a danger of a crash. That's why you must have and follow a driving methodology.

First of all, it's absolutely essential to have lots of "Call Up Meetings," which involve everybody calling and talk to each other on cellphones while driving. Never drive without them.

"Collective Mechanical Ownership" is another critically important concept of XD. It means that any driver must have access to change the mechanics in the vehicle at any time. So if one person wants to get in and rewire the starter, or another person decides to change the spark plugs, there doesn't have to be centralized oversight of all that.

And don't forget that you need to Unit Test every single step of the drive. The Unit Test consists of using a separate vehicle to attempt performing each action in advance, just to see if the performance of the action really results in the action being performed. For example, before turning left around a corner:

  • Stop and exit the vehicle being driven.
  • Enter and start the test vehicle.
  • Perform the action of turning left around the corner.
  • Verify that you have actually turned left around the corner.
  • Stop and exit the test vehicle.
  • Go back, re-enter, and restart the actual vehicle.
  • Actually perform the real left turn, now that the action has been tested and you're sure it will be safe and efficient.

And last of all, at the heart of XD, is the principle of "Pair Steering". Pair Steering simply means that two different people have their hands on the steering wheel, steering the motor vehicle at the same time. This way, if one person makes a steering mistake, the other person, having more specific experience in that area of steering can correct it immediately. Also the steering gets done much faster when the workload is divided up and shared- the old "divide and conquer" strategy.

Thank you.

Comments

Popular posts from this blog

How (Not) to Handle Different Exceptions

Came across this sample from a certain multi-billion-dollar company, purporting to show how to implement exception handling. I slightly changed a few cosmetic details to make it anonymous. try { // ... } catch (GeneralException e) { if (e instanceof SpecificExceptionA){ // ... } else if (e instanceof SpecificExceptionB){ // ... } } This is a true actual story--you can't make this stuff up. Yeah, I thought it was pretty hilarious; so I felt like I had to share it.

What We're About

About Us Mission Statement: We provide a product to make high performing software developers happy by giving them a chance to work in a more self-directed way on software that is more meaningful to them. Core Values (in priority order): Integrity : Honesty, trustworthiness, and faithfulness Preparation : Research, planning, and goals Reputation : Branding, naming, presence, and networking Profitability : Product sales Production : Product development, ideas, online content Improvement : Research and training Support : Minimal overhead Who We Are Isaac Serafino  is a Software Architect in Omaha, Nebraska. He has a strong experience developing technology solutions. He has long had the dream to lead his own startup business. Our Products Snap Screen™ More efficiently provide a safe environment for using electronic devices. Sends pictures of what is on the display at somewhat random times so user knows they could be observed at any time, but the supervisor does not

Reality Checks to Demystify Buzzwords

As an IT insider, I feel I have something valuable to offer nontechnical people in terms of correcting misinformation. Here are a few simple tests for some popular buzzwords in tech. When evaluating a product or service, if you can honestly answer Yes to the reality check question, the buzzword probably truly applies. If the answer is No, it is probably fake. agile Does it make the developers happy? blockchain Does it cut out the middleman? cloud Does it automatically scale? microservice Does it only do one thing? object oriented Is it mostly made of interfaces? RESTful When requests arrive at a certain address, are they ready to use (without parsing)? unit test Does it prevent the tested code from touching anything outside itself?