In a galaxy far, far, away there existed a very unique application with a very unique database. I do feel that the original incarnation of the application should be at the minimum in a reference book and perhaps, the Smithsonian. The design came from a time when architects were not happy with what Microsoft had to offer and tried to do their own thing. On a side track, was the push towards model driven development and modeling business processes into applications.
Heh, I got to play in all of those environments and gathered a bit o’ knowledge from the experience. So, I had an antique application that enhancing wasn’t in the picture. It was based on a “bound” technology and the only resolution was a complete re-write. I can hear the collective groans over the time this was going to take. Four years…that was the resource cost. Why?
Knowledge about the industry: Medication management is a very important and critical process. It must be exact. That is the first criteria. Now let us add in the rest:
- Changing fact and measurement dimensions
- Volatile environment
This is a known, known in the design wheel. Our product must comply with any regulatory requirement from CMS, DEA and even state and local governments and agencies. So we have to have a dynamic security profile that can be applied in any connection consideration as well and data I/O.
Here we have a changing environment where data analytics will play a key role for current and future compensation. Our data structure is designed around the object model that represents the business environment. There have been historical requests that I have been unable to respond to because of the legacy database. One of my main goals was to ensure all data entered was structured so that it was suitable for a data warehouse and analytical treatment. Ah, the joys of writing from the ground up.
Changing Fact and Measurement Dimensions
One of the challenges we had to consider was the constantly changing dynamics of the medical reporting needs. CMS and others, are pushing for quality care. That has always been a major consideration in design. The biggest question to answer? What design will allow easy extension on the focused area of change and can maintain a consistent database model? That is always a key focus. Database changes are extremely costly. The underlying physical database has to be:
- Isolated from the application
- Only accessed from the logical layer
Because of this, structures to manage the dynamic changes in the business requirements were engineered into the design. This allows us to add new values and fields without have to modify the database.
The last consideration I had to take into account was the constant changing government requirements around healthcare. As we all know, currently, this is still in a state of change and varying requirements. So any system designed around this has to be flexible in adapting to new changes. This is where “from the ground up” gives us a real advantage. We were able to engineer around all of the current requirements, provide for future changes and base it all on what is needed.
We have built an application that will manage all care administrations that a care facility will need but also an application for anyone who has need to report on health care management. The scope of what we have to track has gone beyond “give 1 pill a day” to:
- How is Mary Feeling Today?
- Has Mary gone for a walk?
- How much has Mary consumed in food weight?
- How much has Mary’s excrement weighed?
As you can see from the sample questions, we can produce a lot of useful and interesting information. That is just the tip of the iceberg. There is a whole wealth of medication information that can be derived from the results of both the medication and vital measurements.
I am really excited that we are reaching the final evolution of the new application and I can convert my existing customers over. We have implemented so many improvements and made sure the application has flexibility for future enhancements with a short turnaround.
I have learned more about health care management, resident care and ongoing needs than I ever knew existed. We all will experience some form of elder care. If anyone I know goes under care, I want them to be under our system because I know we will be monitoring all the key points and the resident and their family will have an open pipeline for secure communication.
More to come…
True life? Can there be such a thing.. come on now, we’re
talking about stuff here… ok, new font…
There are so many fun fonts but I digress…
WOW, creating a video takes some serious processor…
Again, I digress…
<queue the “Final Countdown”/>
Where was I…
The dreaded Estimate…
This is one area where this is no right answer. As professionals, we know that at the beginning of the project, there is no way in hell an accurate estimate is possible.
Unknowns… at this point, the unknowns you don’t know about are going to come out and get you quick…
Just saying, you’re working on a masterpiece for a sector that has a lot of the Man involved. I mean, Government would have worked but really, each entity is a force unto itself… “The Man” and I liked it better.
It really should be “The Entity described as the Entity”.
Ah, object oriented programming
, I capiche! Totally used wrong I know. In fact, I think I’ll retract that.
Word just doesn’t hang with Italian slang… what gives… gimme back my font!
Ok, back to the font of choice…you know, I remember a time when you could simply change the body font of the document and be done. Now, it’s hidden back stage in document properties. Say that ten times fast… come on, you know, you wanna…
Wow, did I ever jump right off that estimate question. Hey, it’s a really tough question. I mean, there is always the FANTASY that everything will just fall into place.
No equipment delays
Top notch programmers
A solid and reliable version 1 that upgrading will be a piece of cake…
<queue the Eagles, “The Long Run”>
Switched to the Judas Priest station…
Needed high energy…
Back to the life of a prog…
Or this is my take…
Look, when I get into the code… it’s all there is. The problem…the solution…
It’s the solution that gives me the juice.
(boring Verdana… but consistent…once upon a time, I went to a career … hmmm consult? anyway, they had some good advice…juice…what drives you to show up, succeed?)
I do wish my video processor would finish. It’s playing heck with my blue tooth speaker…but wait, there’s a recall…buy something trendy, it’s what you get. It’s not made anywhere but shipped in pieces to the final assembly <The Final Countdown>sorry but that is another story.
All right, I give up… better get back to the topic. You see, that’s where this has been. It may seem scattered but when you focus solely on an object to the exclusion of all else, the else gets…dingy.
Yes, a small boat used to do tasks….for the BIG boat. Unless, you’re the Tom Sawyer type and do your own thing.
Font dizzy yet? Well, I’m not sure about the Judas Priest station… hmmmm. KONGOS?
Ah, much better….
So finally, where does this all end up in the world of estimates. That’s right, haven’t really told you a thing. We know that for a project to have life, it must have a release point. This is not a completion point. Let me stress that. As programmers, we know a lot of different ways to accomplish things. Even more when it comes to appearance and form factor. What we don’t know, unless some whiz kid has come up with a customer requirements mind reader with a future mod to adjust for customer feature drift. Customers want to change things. We, love to change things. But next, in a funny thing happened on the way to the database…
Been reading a lot of inspirational books lately and you can add to that Magazine articles that my best friend has been handing off. Hey it’s a lot of good information. Sometimes it’s a psychology today article. Other times it’s a book about a startups and running one.
I think the hardest job is to take a company from ground zero (or maybe ground negative) and turn the sucker around in a short time to catch the wave of opportunity that abounds in the industry you’re are targeting.
Have I lost you yet? I often start in the middle of a subject then fill in the details.
I think having watched “Pulp Fiction” to many times has impacted my ability to converse…
It’s all good. Plus having a digression checker never hurt. So please, just go with the flow, I’ll get it all covered by the end.
I love playing poker. Sure, it’s gambling but it is also a game of skill and psychology. You can play your cards or you can play the person. If you play your cards, and do it well, you won’t be the Big winner but you should have a reasonable play. If you want to win, and win big, you have to play the player. You may have heard the saying that “any hand can win”. It’s all about strategy. Poker, Holdem included, is all about playing the table. Controlling your responses is first. Hey if you can’t minimize your ”tells” a better player will take your bank. If you can utilize your “tells” to first establish a pattern then change it up, you stand a much better chance of cashing in. The same thing applies to Business. A great book on start up mentality is “All In Startup” by Diana Kander. This book portrays a really good concept. But it really does come down to being all in.
Are you committed? We all have outside commitments. Are you someone who can jump into a startup situation and deal with the requirements? There is a reason that most relationships don’t survive a startup. One or the other has to give. Can your significant other really deal with the fact that you’ll be working 18 hour days for a stretch? What, 18 hour days? You must be mad!!!! It’s a Mad Mad Mad world buddies…
Ok, here’s the why…
You’ve got a hot idea
It’s a hot market
The window is open only for so long
How do you meet those requirements?
Well first, back to “All In Startup” and why you should read it. It comes back to addressing that “hot idea”. The bottom line is that you may feel you have the killer app but does it really address a potential customer’s Migraine. “Migraine”? Isn’t that just a headache? No, it’s a headache of massive impact. That is what you have to solve. Sure you product may be the cat’s meow but if it doesn’t address anyone’s migraine it will not go very far. Ok, you argue, hey, my app is hot and it will solve x. Everyone hate’s dealing with x so my app is totally cool. I’m not saying that there isn’t a market for x but that’s kinda like being the killer rock guitar player that is finally discovered in a back ally bar. It happens but the odds are stacked against ya. It’s much better to be a mediocre player with connections… but that is another story. I’ve got them but this is not the place .
Anyway, read the book. It’s advice is beyond the scope here but it is well worth it.
Add in “Hold Me Tight” by Dr. Sue Johnson. Now here you are going to ask me why is a relationship book important in a business context? Everything is connected. Any relationship has all sorts of aspect but the concept of establishing connections is key. You have to connect. This book will give you insight into the whole aspect of connections plus where you might be missing the boat both personally and professionally.
Have I wandered too far off topic? I don’t think so. These things I’ve talked about have played a key role in the whole startup experience.
You have to be prepared for both the stress, the ability to set your own tone and goals plus getting your team on board.
You are going to have players of every stripe and you need a mix.
What if you had a pro team of all the best stars? Well, without the members that do the mundane and ordinary, your “stars” will find it challenging to achieve their high level of performance. You need the routine, mundane, day to day operations covered before you let your “stars” loose on the world.
You’ve seem them right?
Drivers jetting down the road…
Holding a phone but not to their ear…
In English, as I understand it, hands free means…
Is there any question?
Can there be any doubt?
I even overheard a conversation where…
Someone got a ticket…
Was all miffed for being cited…
A scary call if you got money at all…
We are all so wired in…
Even my bank…
Sometimes I might forget to send them a note…
I’m out of the country, yes, those charges are ok…
But sometimes…you get the call..
Maybe by shopping at some national retailer…
You know the one…
Next thing you know, you have a replacement card…
It’s in the mail…
Oh… Do they still accept cash?
They? Why anyone… gas stations…
The local establishment…
Fortunately… that’s still a yes…
Until Skynet strikes!
Your cash has been terminated…
It’s something we all should do but it seems to rarely happen. What is it? While I’m not endorsing this site, MindTools does have a pretty good description. Wikipedia also has a page on it (see Active Listening). I did like the warning at the top of the page in Wikipedia that talks about weasel words. Perhaps that falls in like with double speak. Whatever the definition the point is, that active listening is rarely practiced.
Ok, so now you know a little bit about active listening, heck maybe you already practice it in principal. When I’m talking with someone, I go into the conversation expecting that they will not be an active listener. Since I can’t make someone listen, I need to adjust my message so that the important parts come across. This is especially challenging when the message is not going to be accepted easily by the listener. For example, when giving constructive criticism to an employee, I expect them to be practicing Active Thinking. Funny right? The act of hearing only a few words of your topic then immediately form a rebuttal. It’s during the rebuttal phase that practicing Active Listening becomes a challenge. It’s during this process that I put things in black and white. I know they are not going to listen fully. So backing it up in writing reduces the chance of ambiguity. Is this fool proof? No, but I’ve found that it is significantly more successful than just “saying it”.
Ok, perfection is a fictional concept that can never be obtained. So why am I even bringing it up? Key to my practice of Active Listening is to accept that I don’t have all the answers. Also, my point of view is a matter of my perception. I accept that the person already has a different perception and by listening to their contribution to the conversation helps me form a better idea of where they are coming from. This is a process that will never be perfect. My goal with every conversation is to gain a little more insight into their perception. This helps improve future messages to achieve a higher chance of getting through.
Sound bites just a political thing?
Or maybe just the news? Sound bites are used because they are effective. Short simple statements with intentional pauses have been shown to increase comprehension. I’ve used this technique when dealing with particularly difficult people. Me? I’m difficult? To some people I’m sure I am. My goal is to get my message across at the office. It’s not a social hour. When in a social situation, I‘m not worried about clear and complete understanding. As long as a good time was had by all, I call that a winner. By the way, I found that using sound bites for humor can be pretty fun too.
So while this short blog may not be overwhelmingly educational. I enjoyed writing it and sharing some of my thoughts on Active Listening. Writing this is my way to help me to remember to use Active Listening especially during stressful situations.
It has been a while since I’ve blogged. Mainly that is due to having a significant role change. In the past year I’ve gone from a cog in the machinery to being the big cog. Dream job? In many ways yes. But the old adage of being careful what you wish for is always something to keep in mind. It might just happen and then you are on a heck of a rollercoaster ride. Now, that’s all I’m going to delve into that piece of history. The main idea behind this blog is about managing multiple projects, people and processes in a diverse and changing system. What is this, you ask? It’s like looking at technology from a distance and up close at the same time. Having a team of diverse and talented individuals who may or may not be in the right role. Keeping stake holders happy and projects on track. A typical day you say. Well if you’ve been there and done that, I would concur.
The future is out there. How you see it and perceive it can play tricks on your plans. Plan? Really, you mean you have to have a plan? How can you plan when you have conflicting projects? One plan is to not have a plan. Yes, I said it. No plan whatsoever. You just react to stuff as it comes up.
How, you might ask, is not having a plan having a plan? Plans are choices and by not choosing to pre-plan your projects you’ve made a choice. So if plans are choices and one was made…voila! A plan. Typically, this type of plan results in chaos. Now that may be fine for advanced mathematics but not really for a business. Not only that you leave yourself open to be blindsided, missed opportunities and generally letting things go to waste. Like not cleaning out the refrigerator, ever. Some of those mystery items in the fridge are truly scary. In business, scary things should be avoided. At least in my opinion.
The clock is ticking. Time is of the essence. Ugh! When does it stop? With luck, never. Perhaps never is too long but you get the meaning.
Now you might be wondering why I’m talking about no plan? Yes? Well, that is the environment I inherited. So, how do you turn it around from an unplanned reactive environment to one where plans are established and executed?
One thing I’ve seen in other environments is the tendency for the change agent to come in with the Great Plan and the attitude of “we’re going to set sail on a new direction, TODAY!”
Having an established plan is wonderful and you do need to have that vision. But it’s a “Vision” not a “Plan”. Why? All the existing employees are used to the old way. People don’t like big changes. Someone coming in with the Big Plan is going to meet a lot of resistance and eventually, the old habits win out. You also end up with grumpy staff!
Eventually you end up looking like…
with all your plans a mess and no traction.
So how does that change?
It depends a lot on your leadership, and the leadership of others. So, keep your vision but you’ve got to do some homework first.
Does that mean you can’t start out right away? Absolutely not.
The first task is to start getting rid of blockers. Perhaps a blocker is an individual. Maybe it’s a process.
Am I saying to “Fire ‘em All”?
No, but you may have to do that unpleasant task more than once. Again, homework!
Staffing changes is an option but before you even go down that route, you have to make sure you’ve identified and acquired the all tribal knowledge that is available.
You may find yourself in a situation where most of the tribal knowledge has already walked out the door. I know this situation first hand. You could have staff on hand that are making the motions but really have no idea how the whole system should even work. If that’s the case, after you’ve ascertained that “Elvis” has indeed left the building then it is time to fire that shot across the bow to let the team know you mean business.
Letting someone go is never easy and should never be done lightly. Homework and documentation. Let me say that again. Homework and documentation.
You have key decisions to make about the role that person occupies. Are you eliminating the role and reducing head count? Are you replacing the person and not the role? A couple of key questions (there are more…) but also you have to make sure that HR is involved with the process and it is done in a legal and professional manner. No kidding! Remember, HR always.
Ok, so maybe it’s a process you’ve got to fire. Huh? Trust me, some of your employees look at their processes as another individual. I mean, it’s like… “We can’t stop doing that! The company will fail if we stop doing that! “That” is the way its always been done. We can’t survive if we don’t do it!” You get it. Homework, again. If you run into this, and you will, you have to have a clear idea of what process or purpose the task fills. Things like repetitive functions that can be reduced to a single or automated step are my favorite.
Reports that go no where. Yes, these animals exist far more than you’d ever realize. I was at a company once where there were dozens of reports generated and sent to a file directory that nobody had read access to. Outside of IT, nobody knew the reports even existed. The staff who generated the reports spent two days every month creating these critical company reports. Critical? Yes, that’s what the department understood. Who knows, maybe it was a former executive who wanted them. Some of the reports were useful and they were kept. The irony was that the ones that took the longest had no current business use. Two days turned into fifteen minutes. Imagine that!
Now it’s time to build all the disparate parts into a functioning whole. The plan? I did start out this mess by talking about a plan… You have to make small turns of each gear that drives the company. Looking where you can remove a cog or, preferably, make the cog smaller so it turns faster. When you take a piece out in the middle of the line, make sure that the other process can move in to fill that gap. This is critical. If you don’t, you simply silo the processes and the dysfunction continues.
The hardest part in all this is having the patience to wait out the small changes. The importance of patience becomes more pronounced when your vision begins to take focus.
Making small changes to address the future vision is an Agile way of looking at business. See, the concept doesn’t just apply to programming. It’s all a series of processes that have to work together to make a whole system.
You can’t be afraid of making the difficult choices, sometimes they are all you have. Typically, if it is difficult the impact is much greater. More when it’s a person choice than a process. Keep in mind though that a process choice may directly affect a person in an unforeseen manner. Isn’t that just a kicker? You get rid of a process making some employees life easier and they quit because you took their process away. Hogwash you say? Unfortunately, I’ve seen it first hand.
Set the vision – you need to know where you are going
Make a general plan – to many details ensure the plan will break. The more detailed, the sooner it breaks!
Increment the change – small changes are easier for the whole to digest. Break up big changes into small parts.
Wait the change – you have to give the change you made time to be adapted to. To many small changes too fast can even be worse than a big change.
Revisit the plan and adjust – Once change has started, new things will come to light that were either not known (a real surprise), the change introduced a new situation (surprising but not a shocker) or you’ve some more time to do some more homework and can better tune the plan (I like this one).
Well, not exactly…
you see, I had a problem…
Ok already, yes it was a self created problem.
not really something I could do anything about. Here is the problem scenario.
You have a windows 8 computer
No password, no password recovery disk
You are hosed…or rather I was. The computer? Brand new hi-power dell running windows 8. Ok, I did all the old school tricks to try to get to the command prompt. I wanted to run:
But every time I tried to get past the logon screen, I was stymied. Finally I booted into the bios. Why? Because it was set to boot from the Hard Drive first. Why was this important? Because I had a brand new Windows 8 install disk that would allow me to get to the command window without the challenge. Being in install mode and all.
So after going into the bios and moving ol’ dvd rom to the top, I was able to boot off the install dvd.
Got to the “install windows” screen. In the lower left corner in really small writing is a repair windows link. Click on it and a few new options show up. You can “Refresh” among other things. But I went to Advanced. Clicked on the Command Prompt option. Once there it was a pretty simple couple of steps to :
a) re-enable the local admin account
b) reset the local admin password
Log back in as admin and finish fixing the system.
Seems like it would have been easy from the beginning. To bad I fussed around with old school options before I figured this one out.
Hope this saved you some time…