Ken Brubaker

The ClavèCoder

<October 2008>
SuMoTuWeThFrSa
2829301234
567891011
12131415161718
19202122232425
2627282930311
2345678


Navigation

Subscriptions

News

Kenneth Brubaker
Senior Application Architect

Locations of visitors to this page

Post Categories



Trivia (RSS)

Trivia
Rationaization: Why's the code written that way?

Having worked on many rewrites, I often use The Roast was Too Big for the Pan analogy to explain why we need to understand why the code was written the way it was rather than parroting the system we are rewriting.

It's not necessarily safer to copy existing algorithms, because there are often interdependencies (read: kludges) between different steps of a long chain of calculations or transformations.

You need to make a conceptual model of the current system and then abstract the total effect of all the variables to really understand what is going on. This is a process called rationalization.

Take the time to really understand the algorithms and you will be much further along the road of both ending up with a working system and having a new system that is far more maintainable than the previous one.

posted Friday, September 14, 2007 2:02 PM by kenbrubaker with 0 Comments

Kenglish: Solutions Configuration Management

Solutions Configuration Management

n. The soup-to-nuts configuration management of Software Systems through SDLC and into product deployment in an enterprise data center. It is more encompasing than Software Configuration Management, becuase it includes the provisioning, configuration, and customization of shared enteprise resources in the data center. It also prescribes a Configuration Management workflow based on Solutions Management rather than individual applications.

Update:

Note that this does not cover Production Change Management, but, rather Change Management during development.

posted Thursday, January 04, 2007 6:39 AM by kenbrubaker with 0 Comments

Kenglish: Meticulity

Meticulity: The capacity for or degree of meticulousness. One's ability to be detail oriented. One's meticulity quotient is a large factor in one's success as a software developer.

Usage: Sam does not demonstrate a high degree of meticulity in his code.

posted Wednesday, October 18, 2006 7:51 AM by kenbrubaker with 0 Comments

Kenglish: Kerfuffle

Kerfuffle is a great kenglish word

Definition

Links:
http://www.randomhouse.com/wotd/index.pperl?date=20000324
http://www.worldwidewords.org/weirdwords/ww-ker1.htm

posted Tuesday, July 18, 2006 4:51 PM by kenbrubaker with 0 Comments

Risk/Reward: It's in the frontopolor cortex

Scientific American news shares that the seat of the Risk/Reward decision in the brain's frontopolor cortex and intraparietal sulcus. (Nature article.) Some people have especially large ones...

posted Monday, June 19, 2006 9:43 PM by kenbrubaker with 0 Comments

Meat Doneness Chart

I've just been through another review where we wanted to use Meat Cooking terminology for an artifact. I had looked this up before, but had neglected to blog on it so I didn't have the "Doneness" lost handy. This link at AskTheMeatMan.com clears it up. The Doneness levels are:

Doneness

Tempurature

Very Rare

130º F

Rare

140 º F

Medium Rare

145 º F

Medium

160 º F

Well Done

170 º F

Very Well Done

180 º F

posted Thursday, February 23, 2006 4:00 PM by kenbrubaker with 0 Comments

Aggregate difference for Average calcualtion

I've wondered for years if you could recalculate the average over some values if you only knew the change to one value. It turns out that you can as long as you know the total number of values. The derivation is fairly trivial, too. I just never did it until I actually had to do it for a client. I spend too much speculating, I guess. You can also calculate the new average if new values are added. Formulas and derivation below.

To calculate the change to the Average aggregation you need to keep the prior total count N and the prior total T.
 
If the value of one component of the aggregation changed by d the new total T' is calculated as:
T' = (NT + d)/N
If an additional component is created and it's value is v then new aggregation T' is calculated as:
T' = (NT + v) / (N + 1)
This can be generalized for a sum s of n values as:
T' = (NT + s) / (N + n)
Derivation:
For sum S of N values the average T is:
[1] S/N = T
For a change d to a value in S we have the new average T' as:
[2] (S + d)/N = T'
From [1] we have
[3] S = NT
Plugging that into [2] we have:
[4] (NT + d)/N = T'    QED
If n values with a sum of s are added to the aggregation you have:
[5] (S + s)/(N + n) = T'
Plugging [3] into [5] we have:
[6] (NT + s)/(N + n) = T'    QED

posted Saturday, February 18, 2006 11:15 AM by kenbrubaker with 0 Comments

Time is money
Apparently time has always been money.

posted Monday, November 07, 2005 10:25 AM by kenbrubaker with 0 Comments

Blaise Pascal's Long Letter

Don Box in his SOA talk referenced a classic quote about someone writing a long letter because he didn't have time to write a short one. This analogy has stuck with me and I wanted to get a hold of the true reference. Here it is:

Blaise Pascal, Lettres Provinciales, Letter XVI, December 4, 1656. (tr. Thomas M'Crie)

    Reverend fathers, my letters were not wont either to be so prolix, or to follow so closely on one another. Want of time must plead my excuse for both of these faults. The present letter is a very long one, simply because I had no leisure to make it shorter. You know the reason of this haste better than I do. You have been unlucky in your answers. You have done well, therefore, to change your plan; but I am afraid that you will get no credit for it, and that people will say it was done for fear of the Benedictines. 

In the original French:

Mes Reverends Peres, mes lettres n'avaient pas accoutume de se suivre de si pres, ni d'etre si etendues. Le peu de temps que j'ai eu a ete cause de l'un et de l'autre. Je n'ai fait celle-ci plus longue que parce que je n'ai pas eu le loisir de la faire plus courte.

Now we know!

posted Friday, October 28, 2005 10:32 AM by kenbrubaker with 0 Comments

Kenglish: Brownian Architect

Term: Brownian Architect

Related Terms: Brownian Architecture

Noun:
Application architect that makes snap decisions for various design problems by using the first design pattern that comes to mind without regard to long term effects or maintaining an overall architectural plan. Applications managed by Browning Architects are characterized by Brownian Architecture.

Strategy for Avoiding Brownian Architecture:
The primary way to produce a coherent architecture when dealing with a Brownian Architect is to employ a Brownian Motor. The concept is to ignore architectural decisions and continue to discuss the design problem until the Brownian Architect randomly lands on the correct decision. Note that great deal of energy must be spent to produce a coherent architecture in this way.

posted Monday, September 12, 2005 9:37 AM by kenbrubaker with 0 Comments

Kenglish: Brownian Architecture

Term: Brownian Architecture

Related Terms: Brownian Architect

Noun:
Software architecture designed by a Brownian Architect. Marked by a random juxtaposition of conflicting software design patterns and procedures.

 

posted Friday, September 09, 2005 7:47 AM by kenbrubaker with 0 Comments

et al.

Et al., I was introduced to this beauty in 8th grade. This was when we were doing deed searches in a school project, and I learned not to abbreviate et, which means, of course, “and”. I was trying to remember what al. was an abbreviation for, so I googled it. There are no less than six words for which al. may be the abbreviation: alius (singular), alii, aliae, alia (masculine, feminine, neutral plural for others), alter (perhaps the infinitive?), alibi (for other references, it says).

No wonder it's abbreviated!

posted Monday, May 02, 2005 1:07 PM by kenbrubaker with 0 Comments

Hey where's my posts?

Some of you may be wondering why I've had a dry spell here. One reason is below:

This third installment of the Brubaker family came on November 21, 2004.

Also, since the end of November I've been made the Temporary Acting Enterprise Architect for one of my company's Business Units and have been in constant meetings for three weeks. So I haven't missed the news about Oracle CLR and other items and hope to blog a bit while I'm on vacation this week.

Our company's starting a massive effort to move ALL of our US region server software to an outsourced Data Center running Windows Server 2003 on the wintel stack. Also, all the desktops/laptops are moving to Windows XP SP2. Let me assure you that the current installed base is all over the map. The last juicy morsel to this yummy pie is that all the software must go through external configuration management to get into the new environment...and it all has to be done in under two years!

For someone who wants to effect change, (e.g., establish a corporate .NET practice) this is a time of unprecedented opportunity. However since I own the entire Windows stack, the Microsoft relationship and, currently, the corporate enterprise perspective with the business unit with the most wintel software developed over they largest geographical area, I'm getting spread very thin.

It looks likely that during the month of January 2005, I'll be flying all over the country, listening to teams of developers describing what they remember of how over 200 applications are currently designed, so I can help them migrate to the new environment. I doubt I'll be able to blog much...

 

posted Tuesday, December 21, 2004 4:38 AM by kenbrubaker with 1 Comments

Survey: Why do you read my blog?

.Text tells me that about 300 pairs of eyes look at my postings. I realizes that many of these are Googling or Feedstering eyes. However, between the dotnetjunkies shared feed (Please patronize these generous folks) and my personal feed, I think there are some regulars.

To serve you better, please respond with a comment as to why you read my blog. My current rule for posting is whatever I think is interesting and don't want to lose track of myself. What interests you?

posted Monday, July 26, 2004 6:33 AM by kenbrubaker with 0 Comments

Kenglish: Kenfluenced

Ken·flu·enced  KEN-flue-inst  ppt. of Kenfluence

  1. having begun using kenglish terminology
  2. having begun abstract thinking using verbose language

 

posted Thursday, June 17, 2004 6:40 AM by kenbrubaker with 0 Comments

Kenglish: Pretension

Pretension is a great way to lose respect of your peers. As my friend Brad has commented:

“If he were only half as good as he thinks he is, he would be a great developer.”

Brad likes to emphasize the idea of negative ability: that quality that allows one to say “I don't know”. You can never reach your potential if you think you know it all and are always right.

This discussion relates to this issue. As does this study summarized here.

Synonym: Incompetence

posted Friday, June 04, 2004 6:28 AM by kenbrubaker with 0 Comments

Kenglish: Artifice
I looked up the word Artifice recently. Very good Kenglish word in that it can have both a positive and negative connotation. Even the sound of it has two meanings: Artistic Ediface and Artificial Edifice. All in all it's almost as good as an old Kenglish standby, Fulsome.

posted Wednesday, April 21, 2004 9:43 AM by kenbrubaker with 0 Comments

My Fellow Chordates
The PC Police are careful to ensure that everyone uses inclusive language, however we must all draw the line somewhere. I draw mine at the Phylum Chordata. I address all my co-workers Gentlechorates, for example. It seems to me the spinal chord is what separates us humans, sharks and hagfish from the ganglion driven world of worms. I call making things second nature, “Putting it in the spinal chord.” Like any good reflex, that is where our quickest surest actions take place. To whit: we're really not that much different from chickens! 

posted Wednesday, January 28, 2004 4:01 AM by kenbrubaker with 0 Comments




Powered by Dot Net Junkies, by Telligent Systems