Archive

Author Archive

Distance From The “Source”

August 4, 2013 Leave a comment

Distance

As you can see, BD00 is waaay disconnected from “The Source“. How far away are you?

Categories: spirituality Tags:

Size, Flexibility, Learning

August 2, 2013 Leave a comment

Size Flex Learning

So, do ya think that the losses in flexibility and capacity for learning are forgone conclusions as an org increases in size (i.e. adds more managers, directors, executives)? If not, got any examples that demolish the theory?

One of the great tragedies of life is the murder of a beautiful theory by a gang of brutal facts. – Benjamin Franklin

Don’t Panic!

The fourth edition of “The C++ Programming Language” weighs in at 1346 pages and 44 chapters allocated over four partitions. The end of each chapter provides a list of advisory items – yielding a grand total of 699 nuggets of general programming and C++ specific wisdom for the reader to ponder.

TCPPL4

The figure below shows a breakdown of the behemoth book’s table of contents. The number of advisories provided in each chapter and each partition are shown on the right side.

TCPPL4 Advice

As a temporary excursion from reading and studying and writing exploratory snippets of C++11 code, I went through all 699 items and plucked out a subset of the tidbits I found most useful. Of course, your personal list would no doubt turn out differently.

Fave List

Even though it’s not on my list, my absolute favorite item of advice is the first one presented at the end of chapter 2:

dont panic

D’oh! Wanna guess at how much time is needed for all to become clear? Maybe Malcolm Gladwell‘s famous “10,000 hours” isn’t enough? But that’s why I love C++. It provides an endlessly rich and deep opportunity for learning.

Clean And Jagged

Suppose you’re developing a software-intensive product and you have to choose to write your app code on top of two competing infrastructure platforms:

clean jagged

Well, duh. I think I’ll take the candidate on the left. That way, if the code I write ends up being costly to maintain, it’s all my fault. I wasn’t “forced” to write crappy, jaggy code by having to comply with the platform:

Maintainable Apps

But wait! Suppose either the clean infrastructure doesn’t exist or (more likely) you’re “mandated” to write your apps on top of the jaggy infrastructure. In this situation, here’s the best and worst we can do:

Best Worst

In both cases, our code has some unwanted  “jagginess” to it – some forced upon us by the platform and some we introduced ourselves.

In summary, our code can take on one of the forms below. The two on the left, written on top of the clean infrastructure, are less costly to maintain than the two written on the right.

BNWSo, what’s the purpose of this post? Uh, I dunno. I started sketching out the graphics first and then I thought some interesting insight would pop up as I wrote the accompanying words. But other than the utterly obvious advice to “choose a clean infrastructure over a jaggy infrastructure when you can“, nothing arose.

Writing is sometimes like that. You have nothing to say, but you write and babble away anyway. In case you haven’t noticed, I do that a lot. Bummer.

Two Peas In A Pod

It’s funny how I never know which, if any, of my bogus posts will have the potential to generate an above average number of hits on this blog. The posts that I thought may have triggered a rise above the average daily hit count (approximately 50) never have. The posts that have indeed appreciably crossed the threshold, I never thought would. In four years of blogging, not a single one of my a-priori guesses has come true.

When I stitched together “The Point Of No Return” post, I thought “meh“; it’s just another average, unenlightening BD00 post. However, somehow, somewhere, some kind soul on the blog staff at the official ISO C++ org web site decided otherwise. He/she thought it useful enough to post a link to it right smack on the site’s home page:

BD00 And ISOCPP

W00T! Me and my man Bjarne Stroustrup on the same page – like two peas in a pod. Do ya think Bjarne would appreciate the BD00 connection?

peas in a pod

The dashboard below shows the spike in traffic experienced by BD00’s blog as a result of the generous plug from the blog staff at isocpp.org. I surely hope that the wordpress.com server farm didn’t crash from the sudden surge in traffic!

Nine Hundred Hits

Categories: C++ Tags: , , ,

Resistance And Lack

In “FAA’s air traffic modernization efforts face obstacles”, the US Transportation Department‘s Inspector General (IG) stated this finding:

“The FAA’s culture was resistant to the type of significant change needed to achieve NextGen and lacked a sense of urgency.”

Yawn. A culture resistant to change and lacking a sense of urgency? WTF and LOL. That can be said for just about any behemoth public or private org in the world. Resistance and lack are baked-in behaviors of people ensconced in hierarchically structured command-and-control systems where politics rule the roost and merit goes unacknowledged (except in management circles).

You gotta love the job of “Inspector General“. These dudes aren’t expected to create any value and they get to trash struggling taxpayer-funded projects in front of congress. Just think about it. If they don’t piss all over the projects they “inspect“, then they would be perceived as not doing their job. Me thinks the job of IG could be perfect for BD00 if he wasn’t so enamored with software development.

project sux

The Bogus SE/SE Rule

July 25, 2013 2 comments

Relatively recently, I participated in a debate with a peer regarding the sacredness of the Single Entry / Single Exit (SE/SE) “rule” of programming. I wish I had this eloquent Herb Sutter treatise on hand when it occurred:

SESE

Woot! Now that I’ve stashed the case against SE/SE nazi “enforcement” on this blawg, I’m armed and ready to confront the next brainwashed purist on the matter.

violatesese

Categories: C++ Tags: ,

Where Are My Freakin’ Pants?!!!

July 24, 2013 1 comment

I’ve stated my admiration for Scott Berkun’s creative work several times before on this blawg (here and here and here and more!). Since he will be hatching his latest book soon, it’s time for BD00 to schtump for Scott once again.

Although BD00 would have preferred Scott to name his book with the same title as this post, it’s more respectfully named “The Year Without Pants: WordPress.com and the Future of Work“.  Cool cover, aye?

TYWP Cover

In TYWP, Scott will tell the tale of his temporary flight from total self-reliance back into the real world – working for one year as a project manager for WordPress.com’s creator Automattic Inc.

Like his previously penned, delightful, page-turners, I expect TYWP to be yet another delicious mix of insight, sage advice, comedy, and drama.

Tweet TYWP

If you’re gonna go a year without pants, you might as well don some funky red skivvies, no?

Categories: miscellaneous Tags:

The WTF? Metric

Lo and behold! It’s the monstrously famous iron triangle:

Iron Triangle

Even though all three critical project factors should be respected equally, BD00 put “schedule” on top because the unspoken rule is “schedule is king” in many orgs.

Everyone who’s ever worked on an important, non-boondoggle, project has heard or spoken words like these:

“I’m concerned that we’re exceeding the budget.”

“I’m afraid that we won’t meet the schedule commitment.”

But how many people have heard words like these:

“I fear that our product quality won’t meet our customer’s expectations.”

Ok, so you have heard them, but stop raining on my parade and let’s not digress.

The reason that quality concerns are mentioned so infrequently relative to cost and schedule is that the latter two objective project attributes are easily tracked by measuring the universally accepted “money” and “time” metrics. There is no single, universally accepted objective quality metric. If you don’t believe BD00, then just ask Robert Pirsig.

To raise quality up to the level of respectability that schedule and cost enjoy, BD00 proposes a new metric for measuring quality: the “WTF?“. To start using the metric, first convince all your people to not be afraid of repercussions and encourage them to blurt out “WTF?” every time they see some project aspect that violates their aesthetic sense of quality. Then, have them doggedly record the number and frequency of “WTF?”s they hear as the project progresses.

Before you know it, you’ll have a nice little histogram to gauge the quality of your project portfolio. Then you’ll be able to…, uh, you’ll be able to… do something with the data?

WTF Histo

Any Obstacles?

In Scrum, one of the three questions every team member is supposed to answer at the daily standup meeting is: “Are there any obstacles in your way?“. BD00 often wonders how many people actually answer it, let alone really answer it…

Scrum Obstacles

And no, BD00 doesn’t really answer it. Been there and done that. As you might surmise, because of his uncivilized nature and lack of political savvy, it didn’t work out so well – so he stopped using that industry-best practice. But for you and your team, really answering the question works wonders – right?

The day soldiers stop bringing you their problems is the day you have stopped leading them. They have either lost confidence that you can help or concluded that you don’t care. Either case is a failure of leadership.” – Karl Popper