Sunday, January 16, 2011

Mene Mene Tekel Ufarsin


Mene, Mene Tekel Ufarsin. Bad translation of this would be "Measured, Measured again, Weighed in the balance and found Wanting." (From the book of Daniel if you are into that kind of thing) And that is the dreaded thing about being a geeky programmer - the fear of being thought of as falling behind - not that you ARE behind, but those around you just think that you are falling behind. I just read a blog from Mark Proctor and then the link by Richard Clayton. Just for giggles and grins, you really need to go out and read all of both articles (and maybe a couple of others from Clayton) to see what he means in the first two paragraphs on Proctor's blog.

However, one sticky-wicket point that I have found with Drools is that there is a perception that sometimse things change TOO quickly. Sure, maybe to some of the newer programmers it is way cool the way that Drools is constantly advancing - and, of course, so they think, everybody needs the changes NOW! But consider that they (the overworked, underpaid programming trolls who keep the wheels of IT turning a better bottom line for the overdressed and overpaid managers) can't keep up with all of the changes to Drools AND the changes to everything else AND be even half-way knowledgeable about any of them.

So, here is my personal opinion and, knowing that it won't be heeded, I'll give it anyway: Drools needs to slow down the releases to every six to 12 months such that each release has significant changes and bug fixes. (Probably the technical Red Hat releases of Red Hat Drools are that slow. Don't know because I don't deal with Red Hat folks in person.) I prefer every 12 months but, then, I'm a slow learner and tend to try and find potential problems rather than fixes for problems that I have in production. But look guys, try to wait at least every six to nine months for each new release! Not only would this give the programmer trolls time to catch BUT it would also give the Red Hat / Drools team(s) time to fix all of the bugs in the last release.

By constantly updating you force the programmers to keep up to date with the latest changes or get lost in the process when they miss something. A year or so ago Drools threw everything out at once (like, FIVE products) and most of them were half-baked and not really ready for prime time, especially the decision table / spreadsheet conversions. A few other things were there that were "fixed" with a few 24-48 hour debugging and testing cycles but some still aren't fixed and ready.

Being a guy who has to learn almost (dang near) everything in the rulebase space and really know what I'm talking about, I spend almost three months (OK, at least two months) on each product that I have to examine so that I can verify that the product will do what the manual says it will do. And when Drools kicks out five changes and then an update within a month and another update right behind that, well, it really takes the glow off the updates and keeps me working WAY too hard for what I get out of it. The other problem with Drools is the documentation doesn't keep track with the changes. They are always late and not terribly clear in some cases.

First Drools used CVS, then Maven, then Subversion, and now Git? All I want to do is control my source code - NOT learn a whole new SCCS language every few months! (FYI) I went from FORTRAN to BASIC (yes BASIC, but multi-user Unix Workstation BASIC), then C, then C++ then Java and now I'm off to Objective C, J2EE, C# and all the others. All this and being part DBA, SysAdmin of eight different variations of UNIX (AT&T Unix, Solaris, BSD, AIX, HP-UX, DEC Unix, SCO Xenix/Unix; and then comes Linux and all of its variations from various manufacturers like Red Hat and Novell).

Oh, and let's not leave out CORBA, COM/DCOM and the mess that all of that caused - MS just HAD to put out .NET to be competitive with Java. Now, put on top of that, 10 different BRMS/rulebased systems trying and scrambling to be concurrent with all of the aforementioned systems above and then the confluence of databases: Informix (absorbed by IBM), DB2, DBase, and the multi variations of OODB. Sorry, Charlie; one guy just can NOT learn all of these things in depth and be worth a flip at any of them. What was that old saying? "A Jack of all Trades and a Master of None." Maybe we need a product called "None" and we can all master it. :-)

So, what do we do? Personally, I chose to focus mostly on Rulebased systems; all 10 (and growing) of them. Then learn enough Java and J2EE to keep my head above water, return to C/C++/C# now and then to keep your chops and be somewhat conversant. Now I want to do CLIPS and Objective-C so I have to RE-read all of my books on that again just to catch up to where I left off and start it all over again.

BUT, fear not, dear reader - another blog will follow this to tell us what wossies we have become because we have to read another book or two. Personally, I blame it all on football, baseball, hockey, and, most of all, television laced with copius quantities of bad beer, chips and tacos. Unfortunately, time is totally linear for all of the humans involved and we just cannot use it like it is not going to end - it will end. And then, will you have finished all of your projects? Probably not. So, the answer, for now, is to do what you can for as long as you can and, hopefully, let history record that you did well and died well; or not. You won't be able to change it then.



kkellis said...

James, I read a lot of blogs - most generate lots of pro/con comments - curious how few comments are posted to your blogs - maybe you should consider reasons why few choose to respond - why is there no sense of 'community' as w/other blogs

KenK (I don't expect to see this posted, and I don't need a reply)

Anonymous said...

The gods just manufactured the tactic of the Holocaust to accomplish the goals they planned.
I am of the opinion the gods would have interviened in its absence, illustrating their claims of being good, and established "old world" dictatorship control at the dawn of mankind's mass moral deterioration. Purely speculation, But even without the Holocaust the gods would have manufactured something that would allow them to manage their culpability and justify their lack of divine intervention. After all, we all abide by their chronology.

Another feature which the Gods offer as a clue is very foreboading and ominous. Mt. Zion is a mountain to the north of Diablo (the eye of The Beast) and one which has a working quarry at its base. Consistant with the decay we experience in society, Mt. Zion is being eaten away, slowly stripped of its resources, until one day paradise will be gone forever.

Population explosion is a clue::::The gods are sending everyone back for The End.
There must be some purgatory-like place. Or individual. Like an animal.
Now the gods have sent everyone back to try for one final time to fix their problems and ascend into heaven. Avoiding an animal would have been a big positive because those thrust into this decayed enviornment have less of a chance than those who enjoyed the god's generosity of a slowly decaying enviornment with frightening clues, like the Depression, World at War, the Holocaust, etc.
Anything that can get the poeple frightened and praying is a good. thing. Contentment never motivated anyone.

As we see wickedness spread throughout the country, like preditory behavior, godlessness, social changes, etc, using cable TV and the spread of "Californication" as justification, they changed xtianity, appropriatly with Catholicism first.
xtianity has changed radically in the 20th century, and everyone should be mindful of the way it was, because the people are in a process of slipping out of god's favor into a state of Damnation, from which the vast majority will never survive.
They used to scare people and make them too afraid to make mistakes. Now people aren't afraid of anything and don't think twice about doing something wicked and evil, thinking it will actually help them.

Whimsical management=Unstable pathology:::
*2006 Hawaii-Jewelry
*Chile-crappy fruit
You've compromised your integrity so hard you no longer deserve the label "gods".

The gods used the Italians to ruin life in the 20th century.
The gods used the Italians to ruin life in A.D..
"The West Bank, where the end of the world will begin."
And they were reincarnated into the ghetto to be punished as crack babies and in drive-by shootings, poetic justice for inflicting these horrors on their hated enemies.
On their brothers, A long history of Italian revenge on blacks.

I don't care if you did escape the last Big Bang.
The last 10,000,000,000 Big Bangs.
I would systematically exterminate your kind for deliberately destroying my life so you could exploit me the way you did.
You would be clone hosted so I could kill you over and over.
I would burn you at the stake so often you would beg me to let you die.
"You deserved it." Considering how you pushed me into all my offenses I suspect it was no different in a prior life.
Fuck you.

They share that some have expressed their concern about the god's behavior:::They destroyed my life, are doing too much and have crossed the line.
I'm sure they got some excuse.
They did shit like poker and Eminem for a reason.
They will declare me hopeless and think they are doing me a favor by killing me, since progress in this life is a lost cause, manufactured intentionally, and find some way to position it in the context of capitalism.
I will always resent you for what you did to me in my life.
Desecrate the gods.