Archive
Butt The Schedule
Did you ever work on a project where you thought (or knew) the schedule was pulled out of someone’s golden butt? Unlucky you, cuz Bulldozer00 never has.
Maintenance Cycles And Teams
The figure below highlights the unglamorous maintenance cycle of a typical “develop-deliver-maintain” software product development process. Depending on the breadth of impact of a discovered defect or product enhancement, one of 4 feedback loops “should” be traversed.
In the simplest defect/enhancement case, the code is the only product artifact that must be updated and tested. In the most complex case, the requirements, architecture, design, and code artifacts all “should” be updated.
Of course, if all you have is code, or code plus bloated, superficial, write-once-read-never documents, then the choice is simple – update only the code. In the first case, since you have no docs, you can’t update them. In the second case, since your docs suck, why waste time and money updating them?
After the super-glorious business acquisition phase and during the mini-glorious “initial development” phase, the team is usually (but not always – especially in DYSCOs and CLORGs) staffed with the roles of domain analyst(s), architect(s), designer(s), and programmer(s). Once the product transitions into the yukky maintenance phase, the team may be scaled back and roles reassigned to other projects to cut costs. In the best case, all roles are retained at some level of budgeting – even if the total number of people is decreased. In the worst case, only the programmer(s) are kept on board. In the suicidal case, all roles but the programmer(s) are reassigned, but multiple manager type roles are added. (D’oh!)
Note that there does not have to be a one to one correspondence between a role and a person; one person can assume multiple roles. Unfortunately, the staff allocation, employee development, and reward systems in most orgs aren’t “designed” to catalyze and develop the added value of multi-role-capable people. That’s called the “employee-in-a-box” syndrome.
Filtered And Delayed
In the consumer products business, the customer and the user are one and the same – a “customoozer“. The figure below shows two system “designs” for a consumer products company. All other things equal, which one has the competitive advantage?
In industries like B2B and government contracting, where the customer and end user are separate entities with differing wants/needs/agendas, the typical institutional design structure is shown below:
It’s no wonder that most innovation occurs in the consumer products industry.
If it could be pulled off, do you think that the subversive system enhancement below could provide a competitive advantage?
A Thing In Context
Tweet Spree!
While browsing through my online Amazon book notes, I decided to go on a short, hodgepodge tweet spree. What do you think of my spontaneous selections?
Thus, I’m a fickle, stupid, conscious (but paradoxically robotic) being living in a quantized universe who’s neither growing or developing and can’t maintain a coherent train of thought. D’oh!
Are you a member of this tribe too?
Discrete, Not Continuous?
I’m in the process of reading my seventh layman’s book on quantum physics. It’s written by quantum physicist William Bray and its long winded title is: “Quantum Physics, Near Death Experiences, Eternal Consciousness, Religion, and the Human Soul“.
Mr. Bray writes something fascinating about space and time that I don’t recall seeing in any of the other QP books:
On a Planck scale, each moment exists in an isolated region (we call a Planck interval) of space-time existing only in the past or future to another point, and never in the present. No two things anywhere in space-time share a common present, no matter how close they are to one another, all the way down to 10**(-35) meters, or 10**(-44) seconds, apart. – William Bray (p. 31). Kindle Edition
In other words, Mr. Bray asserts that space and time are not continuous dimensions, they’re discrete. The universe is not analog, it’s digital. The movement of energy and matter in time is herky-jerky, jump-to-jump, like a motion picture. However, it “looks” smooth and continuous because of the lack of resolution and sensitivity of our woefully inadequate senses and sense-extending tools. D’oh!
Here’s what Wikipedia says about Planck time:
Theoretically, this is the smallest time measurement that will ever be possible. As of May 2010, the smallest time interval that was directly measured was on the order of 12 attoseconds (12 × 10**(−18) seconds)…. All scientific experiments and human experiences happen over billions of billions of billions of Planck times, making any events happening at the Planck scale hard to detect.
My interpretation is that we will never be able to mechanistically detect what happens between two adjacent planck time points.
So, what do you think exists between two adjacent, discrete, planck time points? Could it be that bits of infinite consciousness leak into the finite universe?
After doing some superficial research on Mr. Bray, I’ve become quite skeptical:
- There are no recommendations/testimonials from peers on the inside or backside covers of the book.
- Googling on “William Joseph Bray” doesn’t reveal that much.
- He’s got a facebook page, but I’m not a member so I didn’t get to see it.
- I discovered his web site, and his credentials seem to be too extensive to be believable.
Nevertheless, the book is a fascinatingly refreshing and novel read. In a nutshell, his main theme is that consciousness is not caused by bio-chemical processes in the brain, it’s quite the opposite. Infinite consciousness lies outside of the finite physical universe and it thus paints the universe into being by “collapsing the wavefunction“. Consciousness is the ultimate observer and it creates you and me and everything else in the universe.
Don’t forget, BD00 is a self-proclaimed L’artiste, so don’t believe a word he sez. What do you think?
Report Card
Can’t And May
Well Architected
The UML component diagram below attempts to model the concept and characteristics of a well architected software-intensive system.
What other attributes of well architected/designed systems are there?
Without a sketched out blueprint like this, if you start designing and/or coding and cobbling together components randomly selected out of the blue and with no concept of layering/balancing, the chance that you end up will a well architected system is nil. You may get it “working” and have a nice GUI pasted on top of the beast, but under the covers it will be fragile and costly to extend/maintain/debug – unless a miracle has occurred.
If you or your management don’t know or care or are “allowed” to expose, capture, and continuously iterate on that architecture/design dwelling in your faulty and severely limited mind and memory, then you deserve what you get. Sadly, even though they don’t deserve it, every other stakeholder gets it too: your company, your customers, your fellow downstream maintainers, etc….
Transparency, Meritocracy, and Collaboration
When Red Hat Inc. went public with much fanfare 12 years ago, I thought there was no way the company would make money on the Linux open source operating system. As usual, BD00 was outright wrong. This MIX article by Red Hat VP Jackie Yeaney, “Democratizing the Corporate Strategy Process at Red Hat”, may explain one reason why.
In her article, Ms. Yeaney shares all the details of the company’s strategic development process along with some performance metrics that demonstrate its effectiveness. Here are some snippets that I found refreshingly interesting.
“When I first started working with Red Hat at the beginning of 2008, it was readily apparent that the traditional corporate strategy development process would simply not work in an open source company where transparency, meritocracy, and collaboration were prized elements of the culture.”
“While many might view it is as a disadvantage or a time sink to systematically gather feedback from across the company, at Red Hat it’s a core part of our competitive advantage.”
“We built an internal wiki that leaders of each exploration team used to organize their thoughts and ideas out in the open where any employee could make comments or suggestions. Anyone who was particularly interested could read about the progress, and add their ideas or volunteer to help (and many did).”
“This information-gathering dialog lasted about 5 months. We communicated our progress along the way through regular updates at company meetings, through email, and on the Intranet. The strategy team leaders posted status updates to the wiki and replied to comments on their team’s internal blog. Jim hosted a company-wide online chat session where associates could ask him any question they wanted to about the strategy process (or anything else that was on their minds), and team leads communicated key updates through company-wide announcements and discussions.”
The likelihood that you have any clue of how business strategy is created in your org is low. The likelihood that you’re given the chance to actively participate in the process is even lower, dontcha think? Instead of being “engaged with” you’re simply “communicated to“, no?














