Project Holarchy

The Starting Situation

I was the engineering lead and had a pretty decent team of developers, architects, and UX designers around me. The company had an unhealthy love affair with SCRUM, so productivity and employee satisfaction was low, but we fixed that.
The company was an established one. It had products on a market which were sold using ecommerce at its best. Online ad campaigns and affiliate partners drove traffic, the fulfilment chain was all online and highly automated. From a performance marketing point of view, we lacked the latest and greatest in comparison to what mobile apps using Flury or comparable tools were able to do but this was a solvable problem.
The major problem was the shrinking overall market that made some competitors react in interesting ways: Some of them simply abandoned it. The products targeted on Windows clients only and its features got implemented into new Windows releases aka the software got obsolete.
The vision of the company – also never formulated in this way – could be summarized to “help consumers manage and organize their digital environment”. When it started, the digital environment pretty much was the PC. But this is no longer true.

The Vision

Today it starts from your smartwatch, over mobile phones and tablets, notebooks, PCs, TVs, up to your cleaning robots, the car and home. All of them are digital and smart in their own respect but function only in silos. It was obvious that the industry would form working groups to enable communication between these silos as happened with Google Weave for example. But it was also obvious that this would take a long time and competitive standards would exist for a long time which is the rationale behind Deutsche Telekom’s Qivicon. On top comes the move towards the economy of share.
Our vision was to build a holarchy – aka the project name Holarchy. A holarchy is a system of diverse systems that react as a whole more intelligent and capable than its parts alone. A typical biotope is an example. As such the holarchy provides some interesting aspects such as adaptability to environment changes or ability to grow and shrink.
The vision here was that each device is part of your personal holarchy as well as pure cloud based services. The holarchy would treat devices as sensors, actors and agents while cloud services would have been agents alone. The holarchy would act as biological systems act in playing with new systems to learn their capabilities as well as cross function between each other. The holarchy would have been a distributed system by nature that would survive the drop off of single members. Members would have had a trust level within the holarchy meaning that some highly individual and personal devices such as a mobile phone would have been higher trusted as a vehicle from the car sharing which was obviously only temporarily part of the holarchy. So the ability to issue certain requests into the holarchy or holding certain data points belonged to the trust level of the device.
This was a brave vision and while all parts for its implementation were on the horizon (e.g. IBM Watson was just announced), it was a big thing. So we started to work towards it while extending our current product base. We did a platform that spanned several clients. We developed features using machine learning. We build a data collection mechanism that would help us to understand our customers better. Lots of stuff we did.
But the owners decided otherwise.

Not Brave Enough??

The vision was dropped due to financial issues with the current product set. The strategy was to fix this by concentrating on what had worked for decades. In a way I can totally understand this strategy and while it would not have been mine I helped executing it as far as I was needed.
But it nagged me. I was legally and morally bound not to pursue with this idea. I made some suggestions on different ways to save the team. In the end it did not turn out.
So, I see now companies like http://improbable.io/ or projects like https://www.ethereum.org/ and think, this could have been us. Some of it are building blocks for our idea, some are comparable long term in their vision and got founded. But I did not go this route…

My Thinking

I was not brave enough to do this because…

  1. No way of bootstrap. For this, my personal wealth was by no means big enough. I would have needed external investment. But I would have been a large chunk of this investment as my monthly personal cash flow would have been significant.
  2. I had no network within the VC scene and no time to build it.
  3. Malta. It is a great place to live and has a lot of talent. Prices are affordable but the investments available are simply magnitudes too small to drive something like that. These types of investments you only get in London, Silicon Valley, maybe Berlin…

So, I decided not to go for it…

Managing in Times of Crisis

+++ As being posted on LinkedIn +++

 

Leading a cruise ship in calm sea and sunny weather is nice and easy. But hardly the time can you identify great leaders. In times of crisis, leaders need to show how well developed both sides of their skills are – management and leadership. Management is necessary because you will have to show good management practices which follow some simple rules. But management alone will not do the job; leadership will make all the difference. In the following, I collected some points to think about when managing a crisis in your business.

Identify a crisis, name it such and react

Sometimes it is hard to identify a crisis because things run so nice and smoothly, all is cozy. But as every captain has to see the weather forecasts, as a business leader you need to look ahead. Managing a crisis before it becomes life threatening is always better than waiting until you are in the middle of the hurricane. Keep your eyes and ears open. Is there something disrupting your business? Do the sales numbers not behave as they should? Do not overreact and interpret a bad week as the end of the world; but do not wait until the other guy already is eating your lunch.

A crisis means that the situation is not controllable by simple correction. Larger action is needed, so radical that it might disrupt your current business flow. Managing a crisis will also mean to invest in the future. You might jeopardize short term revenues.

When Steven Elop took over the helmet at Nokia, the company was not yet in deep trouble but it also ran out of time to prepare for the future. While trouble was not there yet, it was obvious that it will be. The perfect crisis. Elop wrote a memo (http://blogs.wsj.com/tech-europe/2011/02/09/full-text-nokia-ceo-stephen-elops-burning-platform-memo/) and compared Nokia to a burning platform with the choice to do nothing, stay on the platform and burn, or take the risk, jump and find a new future. He wrote this memo deliberately and was also pretty sure that it won’t be kept secret forever. But he did it to state the obvious and prepare Nokia, partners, and the world for what now had to happen.

Prepare you reaction – Do unpleasant changes quick and with a reason

The next phase is the most unpleasant one. Maybe we are talking about lay off, canceling beloved pet projects, reducing footprint, whatever. The first round of changes will effect business management. The business needs to be taken under control. Rigid cost management, clear KPIs, measurements, a review of processes. Goal of this exercise is to identify dead wood, waste. In short, things those are not part of your core competency. Knowing what you define of your core competency is of absolute help in this time.

This phase needs to be very short, so prepare it very good. And keep it deliberately short. When selling unnecessary things decide for the speed rather than for the absolute profit. Make the company go through this quickly. But keep an absolute eye on your employees; those who will have to leave and those who will stay. Have a good explanation and try to provide options. In my experience, treating somebody you have to lay off with absolute dignity and respect pays off. There are some areas where you need to guide the laid off person to the door. But in most cases giving the guys to go in dignity should be your primary goal. Picking up people at work and guiding them outside like a prisoner is a technique used by the police forces of some countries because it causes tremendous damage in the social status and self-esteem. You do not want to be like the GeStaPo.

For the people who stay it will be a very unpleasant time when you sit there and wait if you will be called in or not. So, for their sake, keep it short. Machiavelli was right when he stated that bad things need to happen sharp and quickly. Maybe he was right for the wrong reasons but still he was right.

All hands on deck

+ Declare and explain the obvious

As Elop did, it is now time to declare the obvious. The good old all hands meeting is a good idea now. Explain the why and how. Never talk negatively about those who had to go. In most cases, it was not at all their fault.

Don’t treat people like idiots. Some of them will know details because they prepared them for you. In this situation everybody expects changes. So, it is on you to deliver now.

+ Give a vision

Show a vision and a process how to get the company on the vision. Show that the changes were a preparation to get there. Companies can change tremendously when having the right vision. Again Nokia produced rubber tires before they started with mobile phones. But the vision needs to be good, understandable for everybody and obviously leading to the better.

+ Define a goal and show the progress

While the fact to have a clear vision is a necessary start, we can be satisfied with it. We need a plan how this translates into strategies and finally into actions. It is totally fine to not have all strategies and actions formulated by now, but then have a plan how to get there and when. Show that and how you measure and report the progress. You ask those people to go with you, so they deserve to be informed as much as possible. If you are member of the Shakespeare Company you might manage to get through keeping information behind your back. If you are not, better not try it. Human beings are very sensible for this and you lose their trust in the moment when you need it the most. There are things you cannot simply disclose to a broader audience… fine. Then say so and give a reason. As long as you do not have a crowd of yellow press journalists there, people will understand but trust you.

+ A crisis is time for good craftsmanship and change

Stating the obvious means also telling the truth about the immediate future. It is now time to get the business under control. This means a lot of boring stuff. Rigid cost management is one of this. Possible cuts of beloved activities or benefits. Everybody needs to understand and support. Now is the time to show the best craftsmanship in your proficiency. Make sure that people understand that it is not about controlling and judging them or their work. It is about having a clear picture on the situation to enable good decisions.

But it is also time for change. This cannot simply go on as before. So, look at the vision and scan your environment for things that do not fit into it, state it and get it sorted. For the leadership team this is the time to introduce radical change. People expect it and most of the time they are more than willing to suffer a short term for the better future. But this will not go on forever and if you miss the train, the situation gets even worse.

+ Ask everybody to help and give specific tasks

In times of crisis, normally nobody stays in bed. You need each and every one. But they need a clear position and a clear task. In an emergency training, this is called managing the scene. Do this! Have clear ideas, regular war room meetings. Share information and get information. Delegate as much as possible and keep yourself free as much as possible. Reason is that there will be a lot of unforeseen things popping up. If you are already loaded with work, you have to reprioritize all the time. Rather keep your team busy.

+ No politics please

In times of crisis, you will make new friends for life. You will discover that people are different to what you thought they are before. But you need to be open for that. Break little kingdoms by mixing up stuff and getting people to work together that normally would not work jointly. Make it obvious that it is no longer time for pet projects but for a clear check.

+ Keeping the notion of change

Keep your people informed how the situation looks like. How did we do according to the goals which we were given? Show specific actions and how they succeeded or failed. Over communicate.

But also, try not lose the idea of change. Make it a constant and keep on adopting. Small, continuous changes are better than a crisis.

The Business Lesson behind HDv 100/100: Preparing a Decision

+++ As being posted on LinkedIn +++

 

I had the opportunity to attend training at the Academy of Leadership of the German army. During the time there I learned an universal and pragmatic tool to cope with decisions in critical situations. I gave this tool to all of my team members ever since with the advice to see behind the military façade of it and use its core in business. You do not have to follow it slavishly but it is a good navigator**.

The military uses management by objectives. Which seems strange first – we all tend to think of a pure command and control scenario – is an absolute must. Soldiers are working in groups of specialists. Modern warfare asks every soldier to be a leader and to be led in constant change. In a way, a situation also quite common for today’s business scenario. So, having a look on the toolsets the military developed is interesting for sure.

One method is a format how to prepare and finally ask for a decision to be done from your management. At the first sight, the military way of doing it seems long and complex. I couldn’t believe it at first and asked my trainer when this is done. The answer was simple: Always, even under direct fire. Because these three minutes extra have proven to save lives later. In business, these three minutes reduce waste and save time.

So, whenever I want my management to decide or I am asked to decide, I stick to the following format. It all starts with an Analysis of the Order. It is something you do for yourself to start with but keep it in records. Whenever you give a status report or ask for a decision, you start by presenting your analysis as an introduction.

Analysis of the Order:

(1) Repeat the order given in the exact format it was given to you. This introduces all parties into the situation. Your manager might do a lot of things at once and she might not have present what the question was here.

(2) Intent of the superior in your own words. Reformulate this in your own words. Make it short and precise. It forces you to think about it and surfaces if you simply did not understand the request. If so, ask for clarification better in the beginning then after working for ours on the wrong things. Given your interpretation to the manager gives her the opportunity to see if you understood her intent. And finally, always fulfil the intent and not the direct order. Situations might change and you need to adapt.

(3) My main performance. You will probably be part of a larger team and you play a part here. Giving this information to the manager shows again if you understood what is asked.

(4) Restrictions. There are limitations (e.g. lack of resources, time constraints) and you need to make people aware of this as well as be aware to manage accordingly.

(5) Logical consequences / Check questions. You could call this KPIs or success control. Formulate questions and measurement to gauge the progress and final success of your actions.

If you know have to ask for a decision, stick to the following format:

(1) Analysis(see above)

(2) Status

(3) What has to be decided now?

(4) When needs the decision to be done latest?

(5) What options for a decision do we have (with the major arguments pro and con for each)?

(6) What option would I choose as the expert?

The key here is to optimally prepare the decision maker by giving the right amount of information. It is also a mean to steer the decision because it is easy for the decision maker to follow your advice. The preparation takes time and effort but pays back. And if you have an unprepared meeting, don’t be surprised about the outcome.

Let’s make a simple example:

Analysis:

Order given: Handling 3 party tracking on our customer nurturing process is a lengthy and complex process that leads to partner complaints. Your team should take over the process ownership.

Intention: Enabling a friction free onboarding of new partners as well as reducing measurement errors during tracking

Main performance: (1) Analysis of current situation, (2) requirement gathering and analysis from partner side, (3) process design and technical implementation, (4) operation and continuous improvement of process

Restrictions: (1) Process spans multiple teams, (2) current process needs to kept working until replacement is in place, (3) project has no budget assigned by now

Logical consequences: (1) Reduction in partner onboarding time, (2) reduction of measurement errors

Decision:

Status: We analysed partner needs and the situation we are in. To detail out possible implementations, we look for a basic decision.

What is to be decided? To provide an agile infrastructure, we need to revise the backend and do some major changes. This might be a major investment and defines the future flow of the project.

When needs the decision to be done? It blocks further work on the project, so a fast decision taking is necessary. At latest Friday this week, otherwise project gets delayed.

What options do we have? (1) Home grown process engine (Pro: The most flexible/Con: Most complex, expensive, longest development time), (2) Using BPM engine (OSS or licensed) (Pro: Faster implementation, supported, error proved, Con: Less flexible, expensive), (3) Using cloud based BPM (Pro: Faster implementation, supported, error proved, pay what you need, Con: On heavy load might be more costly than on premise, relying on cloud provider)

What option would I choose? Cloud based BPM.

It is a simple example and certainly in real live you would add more information. But please note one thing: Reformulating the intention behind the request gives a lot of more insight. For me this is the key to success.

 

** It is based on the HDv or Heeresdienstvorschrift. This is a collection of standards covering all aspects of military life. It is comparable to the NATO’s STANAG. The content of HDv 100/100 is similar to STANAG 2014 and it describes a standard format to give a military order.You can find similar standard formats for firefighters or ambulances.

Cannon.js – Want to steer a car?? Then you need to make the HingeConstraint update-able

Hi…

 

I am playing around with Three.js and Cannon.js. Making my little car steerable needed to be able to update the characteristics of the hinge constraint during the runtime. What you need to do is the following:

Within the cannon.js file, locate the HingeConstraint constructor and add the follwoing lines of code:

With this, you can steer your car around…

CU

0xff

 

Fire all managers… well, better not so radical…

Hi….

I saw a lot of discussion recently in the manager versus leader thing. I would not go so far as he does but you need to have a balance. From what I see, business becomes less integrated and more of supply chain management. Here I see the major field for managers today. It will be less the classical management as it is written in the standard MBA books. What is sure is, you need leaders or intrapreneurs!!

My personal impression is that still a lot of company cultures do not reflect this fact. Those intrapreneurs or leaders are not easy to handle with. They show a lot of energy, they tend to have ideas which explode the status quo. Then there are articles that you should not tolerate divas in teams. Sorry for my French: Bullshit!!!

You need to have a few of them. They need to be treated with care and respect. And you as their manager need to make sure they treat their environment with respect. Sometimes you need to let them run ahead and then make sure they come back lead the crowd to the new fields they discovered. You need to encourage people to become a leader in their field. And you need to train them that everybody can be leader and will a leader when the time comes. It is all about taking leadership and giving it to others to follow.

This means that you accept (1) that there is not the universal expert; (2) everybody is leader and a follower; (3) this includes the upper ranks; (4) this can only work if you have a clear communicated and widely supported vision; (5) learn, coach, teach…

CU

0xff

“Game of Thrones” is written on a DOS machine and what this really means…

Hi…

I found this: http://www.theverge.com/2014/5/14/5716232/george-r-r-martin-uses-dos-wordstar-to-write

First thought: I my god! Second thought: He is right!!

Let’s see it from his perspective. He wants a machine that focusses on text production. Why on earth does he need a graphical user interface?? He does obviously not care about WYSIWYG because the process here is focused on pure production only. No formating, no printing. He reduced the work environment to support the process at its best.

I had to think on diving computer again….

CU

0xff

 

Remember ASP???

Hi…

do you remember ASP or Application Service Providing? It was one of those hype topics in IT before SOA, IaaS, or the thing you are just thinking about came into the headlines. The idea was to host your applications no longer on your local box but to put it in the cloud (which was not named that way back then). On your local machine you would only see the UI. So, all data and installation efforts would recide on the hosters side.

Well, it never came to real popularity. I guess the technology was simply to clunky, the network bandwidths to shallow. I know quite a selection of companies founded around this which died off againi or do something completely different now.

All of sudden, our architect Richard Droscher mentioned Amazon Work Spaces (https://aws.amazon.com/workspaces/). I had a kind of a deja vu. But it all makes sense now. If you combine it with Intel’s announcement to support Chrome OS with every fiber of its heart (at least sounds like http://www.extremetech.com/computing/182006-intel-decides-that-chromebooks-for-some-reason-are-key-to-beating-arm-in-the-mobile-market). And the Android robot (which looks like a swing top recycling bin – sorry) is present at any Intel booth between here and Alpha Centaury. Sometimes my impression was that not Google but Intel owns Android.

Combining a workplace for US$ 280 as the Dell Chromebook 11 with this Amazon offer sounds interesting, doesn’t it? Those devices are actually cheap and rigid enough to be used in nearly any environment – not only as a PC replacement. Say goodbye to cash registers and what not.

They also have a bit of local storage to let them survive some network glitches in a single usage scenario…

Will we see the revival of ASP??

CU

0xff

 

PC Mechanic – Fix and Clean Your Machine

Hi…

THE OBSERVATION:

What are the things you do the most with your PC nowadays?? On the one side it is a working machine. This starts with doing your taxes (I am German, I know what I am talking about), maybe some studies, calculations, planning, online banking, ordering stuff online. You do lots of Email because the PC – to be honest – still is the best machine to do mails as it has a keyboard, a function clipboard, and lots of local storage. You store and sort the myriads of pictures, do a bit of post processing before uploading some of them somewhere. And finally you browse the web, do some gaming, social networking, watch videos, and much more. The killer application is the browser for sure. Here the focus shifts from the building IE to Chrome. But, most people underestimate how often they still use IE as a build in function of Windows. A lot of the functions above are supported by local applications helping you to use the additional capabilities only your PC has: Screen real estate, hard disk space, CPU power, comfortable input devices, clipboard, and the like.
As a user, some typical problems arise: Managing your disk space, especially when you work a lot with web browsers. You naturally generate junk files. So what you can ask? You have a terra byte of space. Well, having a few movies lying around as junk will show significant impact. Installing (and de-installing) local software leaves entries in the registry. Should not happen but still does. Assignments how to handle certain file types are a typical problem while the assigned handler does not exist anymore.
Last but not least, it is good from time to time to swipe things like cookies of your browsers. Maybe you want to get rid of the stored passwords in the browser. While it is certainly no final guarantee for total privacy, it helps a bit.

THE QUEST:

We were asked to build a product within 2 months to address this. So we started a project which we internally called Wolverine. It was a cross functional project involving sales, design, development, testing, and product management. It was an intense time as you can imagine but we made it. We tested thoroughly with dozens of man-weeks of testing. It was hard work but also fun to do. I hope the product shows it.

Time to say a little THANK YOU to the team:

  • Mike – Technical lead and heart and soul
  • Jorike, Daniel, Malcolm – Design is  more than pretty colours, I guess 😉 But we should have used some Comic fonts…
  • Damian – Make the thing a product is what you did…
  • Gilbert – We did it for you … and for thousands of customers 😉
  • Developers in Kiev and Malta – You made it a reality…
  • Testers in Kiev and Malta – Gave us a hart time but that’s your job 😉

THE RESULT:

http://www.uniblue.com/software/pcmechanic/
PC Mechanic – Fix and Clean Your Machine is the result. We followed the idea to build a product that helps you fix typical problems on your machine by opening up the wealth of opportunities you have. And we had the clean verb in mind. Cleaning not only unwanted files, shadow copies, and the like but also looking into what we can do from a privacy perspective.
We also wanted to cater two types of PC users: The interested, technically skilled user. Somebody who treats the PC as her or his hobby. We are sure, they want to see details and have additional functions because they know what they are doing. And then we wanted to cater the user that simply wants it auto-magically happening. Looking for the one-click solution. Knowing that it might not be the ultra-ultimate but save and good. Both of you will find something in this product.
Please try it and give us feedback. And if you are a Mac user, we have something down the same line in a product called Machanic… No, the names are just by chance 😉

 

CU

0xff

Software Design Lessons from my Diving Computer

Hi…
As I started my new hobby diving, I was told that the first gear should be an individual mask because it would contain prescriptive lenses. Well, why having a mask when you could have a new computer?? So, I invested in a Suunto Vyper dive computer.
Obviously, it is ruggedized and has touch points that can be operated with gloves and under water. But no touchscreen, no colorful display, only a few, very basic animations. Still, there is a more or less complex algorithm running inside. While playing around with it, I found some interesting aspects.
User interface is about simplicity. Suunto uses a menu working with up/down and a select buttons. When a sub-menu is selected, it shows that you are now a level deeper in the menu tree but it keeps showing the parent menu name. Idea is to ensure you where you are. If you have understood this strategy, you are fine. Besides diving, no more functions. Everything is focused. For me, this reflects a philosophy which apps should follow: Being focused on their task.
The UI needs to work in its environment. The UI of the computer is a simple LCD which can be illuminated in the dark. Because of the LCD, there cannot be two different things in the same place if the computer is in different status. You always know where to expect what. If you go deeper in water, you lose colors down to the point where only blue is left. Without an active light source, colors play no role. Therefore, a LCD black and white display is fine. Think about the environment in which your app is used. How much of what makes sense when? Colors and strengths of ambient light, think about it. Sound and vibration, think about it.
UI should mean user guidance. One thing I am missing (and here a richer display would be a great help) is user guidance. The computer expects you to be an expert. It comes with secure defaults, so normally nothing should go wrong. But whenever you change the percentage of oxygen for a Nitrox dive, it asks you about the partial pressure of oxygen you would like to go for (the secure default is 1.4 bar). I am pretty sure that most people diving in the summer then storing the gear for the rest of the year will need a short guidance to remember the details. Here, additional interface power and the opportunity to get a short lesson would be nice.
CU
0xff

Rotating a Vector by means of a Quaternion

Hi…

using cannon.js I needed to rotate some bodies (otherwise the wheels fly onto the body of a car during the first few moments of your scene)… the following code rotates a vector by using a quaternion. More insights into quaternions you can find here

http://math.stackexchange.com/questions/40164/how-do-you-rotate-a-vector-by-a-unit-quaternion

Have fun…

CU

0xff