Friday, November 30, 2012

Job #2: College, Working hard, getting tired, and finding freedom.



After graduating from high school with a 2.7/4 grade point (not particularly good; I studied a lot, but not for school).  My mom sent me to Taylor University, in Upland Indiana starting in 1980/81 and I worked for the university during the summers (programming in the IT department) from my freshman through junior years.  

 An interesting thing happened during the summer of my junior year; 
1) my dad called and told me that business was bad so I needed to figure out a way to either support myself of pay for college myself. It was 1983 and Jimmy Carter's policies caused all the major pharmaceutical companies to cut R&D to almost nothing.   
2) The college IT department had been concentrating on rewriting/modernizing the student information system and was two years into the project. 

My student intern role in the previous and current summer was to maintain the old system.  The deans, VPs, and controller respected me because I was effective at solving their problems, and because I would often times work all night or all weekend when there was a crisis.  They appreciated the effort and results.  The director of IT transferred me to the new system (under a lot of pressure to show results) and I worked on it for a month and then there was my first career "surprise meeting” - I was invited to join, and I didn't know why at the time. Here was a room full of the big bosses - the guys in charge of all the departments I supported using the old system. 

I remember wondering "Why am I here?” - IT director made a mistake; he didn't realize how unhappy the stakeholders were and he allowed them to invite someone to "the meeting" who was too green to know when to shut up or know what lie was supposed to be told.  They were meeting to review the progress of the new software and make plans for when it would be available.  Again, "Why am I here?" - IT director gives the sales pitch, and stakeholders ask questions.  After about 20 minutes of discussion, the controller turned to me and said, "What do you think, James?" I'm sorry IT director, you should have coached me or never let them ask me.  I said, "Well, I've worked on it for a month, so I'm familiar with what it's trying to do - improve on the functions provided by the old system, but <pause> I can't with a clear conscience recommend migrating to this new system, if it's ever completed; I have friends in every one of your departments; people I have helped do their job over the last couple of years, and I don't want to see them more frustrated than they are now - in fact I'd like to go back to improving the old system.  I don't think the new one will ever work." - 

WOW - You could hear a pin drop.  I turned to look at the IT director; pail white face, eyes full of anger.  I panned the room; lot's of people looking down, avoiding eye contact.  IT director tries to recover - "James is only a junior and doesn't have a perspective on the full scope or extent of our progress; I don't think his opinion represents the reality of this project." I responded, "It's possible I'm completely wrong; I am inexperienced." - for the stakeholders, those words fell on deft ears though, as I represented a breath of fresh air after years of neglect; I had no idea.

Needless to say, this message was not well received by anyone.  The director of IT fired me an hour latter, and then a couple of days latter he got fired and all of his staff quit.  Needless to say, that left anyone who was anybody at the school trying to figure out how to run the school.  This was the first time I sent a message and an executive got fired, not the last - it's happened a half a dozen times over the years; mostly on purpose, this time by accident.  Over the years I discovered that power, influence, authority, and responsibility are not the same thing, and often found in strange places.

They promptly hired a new IT directory and me as his full time staff (with the negotiated point that as long as the data processing for the school was "happening", I could take as many classes as I wanted, tuition free, and during working hours).  The first year was tough; I replaced five people and because the system was developed in-house, you couldn't hire anyone who was up to speed; it was incredibly fragile and about half the operations either didn't work at all or didn't work well.  I got tired of working so hard so I automated the business processes and gave each department the power to fix any common problem all by themselves.  This freed up most of my time and gave far greater power and productivity to many of the employees in various departments.  The new IT directory was hailed as "remarkable" and I was considered the "Golden Child".  I took every class that the University offered that I was remotely interested in over the next four years, and spent my free time programming for fun.  I wrote my own editor, a couple of compilers, half a dozen interpreters, and significantly - a multi-session terminal control program that allowed an operator to do several things at once.  We called it JOBHOG.

That was my second job.  My inspiration was the mission of creating tools that empower people (especially myself); making their world better.  My hobby was applying mathematical concepts to computer programs and learning to measure algorithm performance.  My boss was a seasoned ex big bank executive and it was fun to be his right hand man.  Years after I left he was a little chagrined to admit that although I never seemed to be working on anything, he had to hire three people to replace me AND he had to keep a close eye because things didn't "just happen" any more.  That was funny.

Job #1: High School, Building fences, shoveling stuff



In the mid 70's, Bristol Meyers fired a bunch of scientists.  My father, a research toxicologist in his late 30's was not one of them, but lost some colleges that he considered talented; seeing that exemplary performance was no guarantee of continuous employment, he started a research toxicology business in 1976. I was a freshman in high school and in 1977 he purchased his first computer.  By 1979, I learned to program it in Fortran III and pdp-11 assembler.  He found that he could do toxicology four times more cost effectively using a direct computer interface than his competitors could with manual procedures.  That was my first job; I worked for "the man", literally.  

My inspiration was my dad's work ethic - failure was not an option in his mind.  My hobby was electronics projects and math - I enjoyed spending hours trying to simplify a big formula and/or make a mathematical model.  I liked the idea of mission/vision/purpose; though I didn't know how to create it.

Tuesday, November 13, 2012

Calculus of Algorithms

No, that's not really English; how about "Four orders of magnitude performance improvement".  Nope, I’m still trying to impress the boss.  Here: "Creating fast software" - that's better.  One of the most useful tools of my career is a mathematical idea I toyed with in high school - in those days (35 years ago)  I walked around with a (paper) notebook and 3 ink pens in my shirt pocket (seemed like they were always running out of ink).  I spent years using all my free time trying to figure out what I called "shadow math".  A professor would call it "finite integral calculus of a recursive field"

Here's a simple example: Suppose you have a calculation "NUMBER plus 5" meaning that you have a number in mind and I'm naming it "NUMBER".  The result of the calculation is that now you have a new number (that we'll call "RESULT") and it's 5 bigger than the original number ("NUMBER").  Let's name the calculation "CALC".  So far we have:

"NUMBER" - some number you know but are unwilling to say (not because it's evil or anything, you're just enjoy keeping a secret!)

"CALC" - a definition of a way to modify "NUMBER"; in this case it's not a secret: "NUMBER + 5".

"RESULT" - the result of "CALC"; we're calling it "RESULT" because if you wanted to keep "NUMBER" secret, you're probably not going to want to say
"RESULT"'s value either.

What if, for reasons obviously far away from common sense, you want to perform CALC over and over again; and each time use RESULT for NUMBER?

Step 1: create the first RESULT with CALC and NUMBER.  So in shorthand: RESULT <= CALC(NUMBER), or specifically RESULT is NUMBER plus 5.

Step 2: create a new RESULT with CALC and RESULT.  i.e. RESULT <= CALC(RESULT) (written backwards; sorry, still trying to sound smart), or specifically RESULT plus 5 is the new RESULT.

Step 3: repeat step 2 over and over again.  RESULT is going to be bumping up by 5 over and over again. let's call the count of the number of times step 2 gets done "TIMES", since it's obviously also a secret; maybe it's not a secret - I just don't know what value it is; that's why it has a name.

Now you have a new value- you started with NUMBER and used CALC a lot (TIMES times to be precise) and the result is RESULT (still a secret, you're happy because now you have three!).

And, now you know how to program a computer, iPhone, or Android; that’s all that programs and apps are: written down steps and made-up names when your not sure what the value is going to be.  Bad news though; you're only an average programmer at this point.  To get the big bucks, you have to do something a little different:

Step 1: calculate 5 times TIMES plus NUMBER - i.e. use multiplication (i.e. better math), and don’t use repeating steps.

It's that simple; except for the final step - you'll need to show your boss that the new calculation (call it "TURBOCALC") is about a billion times faster (when TIMES is a billion) and that now the people who really care about the CALC result can have it instantaneously on their iPhone instead of waiting till tomorrow AND they're lining up in the streets, bubbly, and delighted to pay good money for TURBOCALC.

Epilogue
It's really amazing what the opportunities for improvement are out there.  Sure, this example had two variables and one (simple) calculation.  Real world examples have hundreds (or thousands) of variables, many calculations, and lots of special rules - but the concept is the same.

Friday, November 9, 2012

Yesterday (PEST), Today (REST), and Tomorrow (GVC)

Yesterday I woke up and felt Post Election Stress Tension (PEST).  My neighbors were celebrating in the street; Facebook friends gleaming - many sharing pictures and statuses like they had defeated some evil or something.  It's sad to see the country so divided between rich and poor people; I'm in the "everybody should be a rich person" camp - I've been both and must say that rich far more comfortable, though admittedly, happiness comes from within.. 

Unfortunately, it's now a virtual certainty that will never happen in the US; the mass of poverty, class envy, racism, substandard education, and public assistance are growing and will accelerate at record rates - kind of like trying to go to work and finding out that  you have a flat tire; I don't usually celebrate - unless, of course, there's a required meeting I didn't want to attend.  Ah - maybe they were celebrating in the street because they didn't want to work or have prosperity?

Today, I accept that the country has changed - it probably changed while I was asleep a few years ago.  In the US, citizens who don't do their own research and/or don't want to be rich are now in the electoral majority. It's time to Redo Every Strategy Today (REST). 

Strategy before the change:
* Work in the US, get paid and hold US dollars.
* Invest in US companies.
* Own US property, pay property taxes
* Pay full taxes on all earnings and returns - without professional help.
* Have qualifications that add value in the US.

Strategy after the change:
* Work US and non-US companies and get paid and hold multiple currencies.
* Invest in non-US companies.
* Own no property, pay no property taxes.
* Pay professionals to (legally) minimize taxes.
* International certifications (from a business school in the UK).
* Create a global virtual brand presence for my product.

Tomorrow, I will be A Global Virtual Citizen (GVC).

Epilogue
My vote didn't count; I'm in the minority now.  The people have spoken; they decided expand poverty in this country - go for it.  I don't have to participate or pay for it.

Friday, October 26, 2012

A poem about me

I clean the floor as a third shift janitor
I lead a massive cult
I tried to get fired
I got a promotion and a bonus
I am patently unprofessional
I am a professional
I haven't worked in decades
I make incredible results
I am a myth
I am a legend
I am random
I am predictable
I sit in the sunlight
I run in the fog
I fly a hang glider
I deliver like a freight train

Thursday, October 18, 2012

Types of Intelligence

There are many; here are a few, some more noble than others.

* Competence intelligence - the capability to figure out in which areas of endeavor you are personally incompetent and which ones you are well versed.
A person with high competence intelligence is rare.  Most people have no idea how lacking they are in any particular pursuit and you can't begin to fix a problem unless you know it exists.  A person without this intelligence blames outside influences, other people, and unfortunate events for their lack of results.  On the other hand, when good things happen, a person without this has no idea why and often speeds toward self-sabotage and bitter failure trying to replicate the good thing by engaging in activities that produce bad results.

As a simple rule of thumb, this person knows that "Doing the right thing well produces excellent results over a period of time, regardless of circumstance".  It is possible to accidentally produce an exemplary result in a short time while doing the wrong thing or doing the right thing poorly.  This person is able to discern which strategies are destined to be a train wreck, and avoid them.

* Common sense intelligence - the capability to recognize risks/rewards for their actual eventual impact and act accordingly.

The rule of thumb - when you are witnessing a disaster of any kind and you can hold your thumb up at arm’s length; close one eye and put your thumb between you and the event; if the thumb does not cover the event completely, you are TOO CLOSE.

The rule of money - Money has no inherent value; it is merely a medium of exchange between something of value to one party and something of value to another party.  Wealth is selling what you have, using the money to buy something of value, adding value to it, selling it, and using the money to buy something of greater value. Poverty is selling what you have of value and using the money to buy something of less value.

The rule of supply - if you are preparing for something new, you don't know how many supplies it will take so make sure you have many times more than you think you need.

The rule of defense - if you have enemies (and everyone does), do what you have to do to create a perception that you are invincible so the enemies will find someone else to bother.

The rule of attack - if you are surrounded on all sides and in danger, without hesitation attack the strongest opponent decisively with all your might; in the event that they were caught off guard and you win, the others will think twice about threatening you.  In the event that you lose, better to go out fighting than surrendering.

* Spatiotemporal intelligence - a capacity form mental models of non-linear/non-intuitive spatial and temporal realities that although they are real, they don't make sense to most people.

A person with high spatiotemporal intelligence is like a kung-fu master in some area; he/she rarely fights; the fight doesn't last long; it doesn't look hard or complex; the result is highly effective.

* Legal/judicial intelligence - the capability to think and act unjustly in the name of justice.

A person with a high legal intelligence realizes that the legal system is fundamentally broken; similar to the ancient Egypt when only scribes  and priests were taught how to read and write, and the hieroglyphs were intentionally complex to preserve their status.  In spite of this, they study for years to learn how to manipulate the system and follow a career path that milks the ignorant masses of unimaginable wealth "practicing law" in the name of justice; a true injustice.  As a group they do everything imaginable to prevent common people from understanding even the basic precepts of our legal system, falling just short of denying basic human rights to anyone who questions the system.

Tuesday, October 2, 2012

So you tryin ta be white?

Are you talking about working towards being happy, healthy, wealthy, wise, enjoying my career, capable of advancement, and able to care for my family as opposed to miserable, tore down, broke, addicted, unemployed, hopeless, helpless, angry, and abusive? - well, um, I prefer to call it trying to be right, which has nothing to do with skin color, but you can call it white if you want to - sounds like group self-sabotage; just a thought.