All posts by karljeffery

“Management in a digital age” deserves more focus

In the real world (that is, the non digital world), there have always been good managers, poor managers, and people who thought a lot about management – ever since people were managed.

Just about all of us could say what good management is.

As the person being managed, we are clear on the goals we are expected to work towards, we know where we are, we have a rough idea of what isn’t an acceptable way of getting there, and beyond that we have maximum freedom in how we get there.

So the manager needs to define the goal, outline the path, say what’s not allowed, and leave people to get on with it.

That means the manager trains his or herself to switch off the powerful human instincts to control too much, micromanage too much, worry and bother people too much. The bigger the stakes, the harder this is. Yet plenty of people have managed it.

Now look at the digital era. Most people use software tools all day long. If good management is translated into good software, that means we should have software which helps us understand where we are, what goals we need to achieve, and gives us maximum freedom how we get there.

Do any of us have this? Is anybody building this?

Most software seems to leave people feeling clueless about where they are and what is expected of them, whilst simultanously micromanaging them. Software can be pretty good at telling us what’s not allowed, but not in a very helpful way.

Software for people who like people

This blog is for people who are interested in software which can help people involved in managing something to better achieve their objectives.

Is this you?

Why are you interested in software?

Many people are interested in technology for technology’s sake. This sometimes seems to be the Google thinking. People who like technology being able to do something which it has never been able to do before.

Many people like social angles, like helping support democracy, or helping people learn, or manage some health issue – which are laudable aims even if software by itself doesn’t achieve much.

People in the business software arena are often interested in driving efficiencies and automating things. If it can be done cheaper and easier by a computer, let’s do it. Automation can put the computer in the heart of the company’s operation, managing supply chains,  transactions and data gathering.  Or perhaps they are interested in data entry and retrieval systems.

If someone is not managing anything, ie working on their own (like a graphic designer), they can probably easily find software which can do as much as software can.

But where the current software industry falls down is for people who need to manage something (where other people or companies are involved), including in security, policy, business management, financial management, assets, projects, customer service.

Many of the attempts to bring software into these sectors fail because people want to develop technology for technology’s sake, drive efficiencies, automate things or solve social problems.

It proves to be very hard to develop software which can help  people do things because it involves so much left brain + right brain together. Software people are usually good at left brain stuff – logic – but the people side of it can’t usually be solved by logic.

Even working out what someone’s specific objectives are involves a deep understanding of what they do, which is usually different to how you might think it is without asking them.

These points are important to stress because there is so much discussion right now about artificial intelligence and computers taking over people’s jobs. Computers are nowhere near being able to take over most people’s jobs, because the jobs involve understanding complex situations and computers can’t do that very well.

In the rare occasion where a job involves following specific steps then computers can do it. But that doesn’t apply in many cases, and normally it is the aspects of a job which don’t follow specific steps where you really need a computer – such as an airline check-in person facing an unusual request.

Why you should ignore the ‘internet of things’

If you hear the phrase ‘internet of things’ – you’re probably listening to someone trying to sell you something. Why is this? Because anyone else – someone you might want to use the data from the ‘things’ – is never going to see the ‘things’ in this way.

Let’s say you are a ship engineer keeping track of your ship’s operations. You can install more sensors, yes. But you’ll only do this if they’ll tell you something you want to know. In which case you’ll probably think of it as the ‘sensor which tells you x’. The same could go for anyone monitoring any industrial facility.

In your house, OK yes you can wire your washing machine and fridge to the internet. You can connect your car to the internet. But unless you’re just doing it for fun, surely you would only do this if it helped you to achieve some purpose so the same logic would apply.

Other examples – farmers monitoring their farms with various sensors, electricity companies monitoring consumption in a more granular way. They are going to think about what they are trying to achieve, not their ‘internet of things’.

Yes, we know, it is getting easier to add sensors and connect them up. The point is what we do with them.

Fintech – improving on HSBC

If by bank (HSBC) counts as a typical “traditional financial institution”, in my opinion it is exceptionally good at IT including cybersecurity, exceptionally good at customer service, offers all the services I need as a private individual and as a business, all for very low rates (last time I looked for a mortgage it was available for no fee at 1.79 per cent).

It has been unwilling to take much risk in terms of lending to my business, but then as a bank it is not in the business of taking high financial risk, and my business has been a pretty high financial risk for a while, being in the oil and gas industry.

So how does a fintech company compete with this?

Here’s a few ideas.

Many people find their bank not very ‘user-friendly’. My bank does create a few hoops – complex logins, difficulty setting up new bank accounts. Perhaps there’s room for improvement there.

HSBC has a weakness on some financial transfers – occasionally I’ve made transfers to India which have got stuck on the way, or blocked for security reasons, and no proactive contact from the bank to fix it, they basically wait until I call them. It probably isn’t HSBC’s fault, but there’s room for improvement possibly.

I probably score reasonably well on whatever HSBC’s scoring system is. The scoring system gets pretty vicious for people on the wrong side of it. Perhaps there are millions of people with low score but who could be good customers. Are there opportunities there?

Perhaps there could be better international services. Sometimes I receive and spend money in the same foreign currency, and if my company was bigger there would be more than that. Perhaps it could hold the money for me for a while in Euros or Dollars so I don’t lose twice on the exchange?

The money transfer costs are quite high – £17 to send £100 to the Netherlands for example

I don’t have much insight on when my customers will pay, except from employing someone to talk to people with overdue debts, which is expensive. Having that knowledge could be very valuable.

Bank reconciliations are a very manual process, employing someone to compare the bank statement line by line with the record in the accounts software. Perhaps this could be easier? (Although the bulk of this effort is keeping the accounts software up to date, which would need to be done manually anyway)

Perhaps all the various roles – accounting, debt collection, bank transfer management, cash flow prediction, could all be better integrated?

It is possible to imagine more sophisticated loan offerings – at the moment loans are basically only offered when the risk is zero, and impossible or silly rates otherwise.

Could there be a loan business for more high risk, but still low risk, loans, with some kind of compensation? For example loans guaranteed against future bookings, or loans which are deducted before any payments are made? Or loans for specific business sectors where the bank gets involved in the business’ future scenario modelling to get a better sense of the risk?

Why are we so quick to believe computers are taking over the world?

I have just read this BBC News article. The heading, “robots and drones take over classrooms”, and the opening illustration, showing a robot teacher, suggests that this is an article about robots taking away teachers’ jobs. The third paragraph talks about “a world where artificial intelligence and robots threaten jobs.”

But the article itself is about nothing of the sort.

The article is about a London school where students built a virtual reality Ethiopian village, the students programmed a robot to ski, and an Indiana school where students learned to program a drone. Then it talks about Microsoft building software for headsets for understanding the human body. There is a discussion about whether students should be learning this sort of stuff.

Of course it makes sense for students to learn as much about computers as they possibly can, or are inclined to. [Although based on personal experience, the idea that all young people would rather learn how to code than watch YouTube is not true].

But none of this is taking anyone’s job away, if anything the teachers are far more engaged doing this, and far more robotlike if they were reciting the same lessons year after year with no mental engagement at all (fairly common 20 years ago, based on personal experience).

So what’s going on. Is society just really keen to talk about robots taking over people’s jobs? Is this narrative driven by the sort of people who enjoy threating people’s livelihoods? Anyway, its a load of nonsense.

 

 

 

 

 

Is Steve Jobs’ genius helping us be the person we want to be – and what is the lesson for enterprise software companies?

Many people have tried to reverse engineer Steve Jobs and build companies or government departments like he did, and there are many theories about what made him successful. Here’s another – that he understood how to make us become the person we want to be.
This is no trivial thing. Whether we feel that we are the person we want to be is just about another name for ‘happy’. If we are the person we want to be at work, then we’re happy at work, not to mention doing a good job.
We all want to be respected. We want to feel that we have some degree of leverage over our employer to counterbalance the leverage our employer has over us. We want to feel that we are doing something useful. And these may be key points but what makes us happy is also an endless list which varies from person to person.
Steve Jobs managed to create electronic devices which made many of us feel the way we want to feel. That was a kind of double genius, first understanding how a device could possibly do this without seeing it, and then getting the thing built.
When people say he was unpleasant to work with perhaps they are only saying what it was like to be on the receiving end of having a boss with a clear idea of where he wants to go which you can either fit in with or leave. That’s not pleasant but you can judge him on his results.
How can a phone help people feel better about themselves? I don’t use any Apple products but I can think of many ways – the device gives me what I want, it responds to me, it doesn’t annoy me like a lot of software does, it surprises me, it feels great to have close to me, I feel like I understand it.
Plug that into the discussions going on about how to build business software and systems today. Our relationship with our employer is in many ways more personal than our relationship with our phones, in that it governs whether we can provide for our families, or our status in the world (for people who care about that). If people work with software all day long, the software is in some ways the vehicle with people work with their employers.
So is it possible to build business software which makes us feel much more respected, valued, that we have at least some leverage over our employers, that we are doing something useful? Surely, yes it is.
Not many business software companies think about this sort of thing. But if they did, would they be as successful as Steve Jobs?

Time to ditch the ‘artificial intelligence’ name?

Wikipedia defines ‘artificial intelligence’ as ‘intelligence exhibited by machines’. But the term AI is often taken to mean, machines doing something similar to what people can do.
The debate about what computers can do and what people can do, and when computers might catch up, is fascinating. But it’s not a business discussion – perhaps something more for weekends or evenings.

Right now, in 2017, computers can’t do anything near what people can do in most cases, although they can do a lot which people can’t do, too. The useful understanding is what computers can actually do.

So to sidetrack the ‘computers vs people’ discussion perhaps we need a new name for computers doing clever things (something more than entering and retrieving data from a database, or following an if .. then routine). How about ‘computer cleverness’?

Then to understand computer cleverness better, perhaps it makes sense to think about different sorts of computer cleverness, so we know which one we’re talking about, and can work out which sort is most useful for the application in hand.

I can think of four groups of computer cleverness.

The most basic, and often the most valuable, is logic. The computer follows logic pre-programmed by a person. Consider a scenario when an alarm goes off on a plant. The operators probably go through a set series of steps to try to work out whether there is a real cause for alarm. A computer could be programmed to follow these steps – and do it in a millisecond – so perhaps the alarm doesn’t need to sound at all.

The second is statistical analysis. An example of this is when a computer takes some readings from sensors, does some calculations, and outputs what is probably happening (ie probability > x). For example, usually when a sensor shows this vibration signature, it means this.  It can suggest what is happening right now (you are operating a drill bit and the drill bit is sticking).

A third is simulation. A computer can build a model of real life, which can run, so you can see what might happen in real life, for example to see how a building evacuation might work. The simulation could also run parallel to actual real life, so you can see more clearly what is happening, for example in a complex engineering plant or retail store.

A fourth is machine learning. This is when a computer uses a few layers of mathematical processes (which can themselves involves statistics or logic), with a variable weighting or impact on the overall result. This is used when the computer is trying to match images, or translate text, or understand audio, or find something which might be useful in a pile of data, work out how to win at Go! or Amazon making suggestions of what you might buy next. Machine learning is perhaps most applicable to consumer environment rather than a business operational environment, where the scales are usually too small and risks too high to justify the investment of building it. But not necessarily. One example of a business application is when computers are identifying cancer cells.

That is more or less it, as far as I can see. Which doesn’t mean that there’s a limit to what computers can do, but if you decide whether the ‘computer cleverness’ you are hearing about fits mainly into one of these buckets then you can get a better understanding of how to move forward.

Donald Trump’s immigration ‘executive order’ looks a lot like bad business software

The big news this weekend was Donald Trump’s “executive order’, that there should be no immigration into the US from certain countries for a while.
Aside from the various political issues involved with this, it also looks like a lot like really bad software.
Reading the ‘executive order’ (here) it seems to make reasonable sense – Donald Trump had a goal, to tighten up security, and decided something drastic needed to be done about it, in fact making this promise was a big part of his election pledge.
The text seems fairly carefully written, saying we need a new system, we’ll stop the system we have now until we have a new system in place, and let’s see how it goes. It notes that many of the September 11th 2001 attackers managed to get around the US visa policy.
What happened? Enormous confusion, particularly over whether permanent residents would be allowed to return to their homes, and families separated, people unable to fly home from Central America to the UK (since the flight involved a stopover in the US), and much more.
The way the system should work is exactly as it is currrently designed. You have human experts at the border, making decisions but with a lot of regulatory guidance. You have people managing the overall system making adjustments as necessary – tightening security, or loosening to allow more people through. After September 11 2001, there was a lot of security tightening.
Widely recognised as a narcissist, Donald Trump probably does not have much ability to see things he cannot see. Or to put it another way, all of us have limits in how much of the world we can understand, but we retain an understanding that there are many people in the world who understand things that we don’t understand, and know how to do things that we can’t. Donald Trump probably does not possess this ability. He has faith in himself.
So his chosen course of action is to drop a barrier to the current way that things work, and start building a new system, and then see how it goes.
The system he has designed is a fairly robotic one, where he gives the border agents fairly strict instructions about what to do (there should be a “a database of identity documents proffered by applicants to ensure that duplicate documents are not used by multiple applicants”). One imagines that US Border Control have a great deal more expertise than Donald Trump about how to check that applicants are who they say they are, but this is something Donald Trump is unable to see.
And of course, the system completely went wrong. Airlines have to cover the costs of flying people home if they don’t get admitted into a country, so they have a strong incentive not to allow people onto planes unless they will be sure they will get admitted, which means they will err on the side of caution. The intent of the executive order may have been to allow people with permanent residency to enter but give them a few more questions at the border, but what actually happened is they weren’t allowed on the planes and got stuck in Dubai.
The problem of people being unable to fly from Costa Rica to the UK since it requires a transit stop in the US probably wasn’t thought through.
So many people ended up on the wrong side of the net, including high profile people such as Somali born British world champion Mo Farah, who has a dual citizenship.
The whole thing must also be massively demoralising to border control agents.
And it probably has achieved absolutely nothing for security. Are there individuals intent on harm who would have got through the old system but will be stopped by the current system? It seems pretty unlikely.
How does this relate to software development?
First – don’t expect to get it all right the first time – real life is more complicated than you plan it to be – build a system which you can test and iterate.
Second – let experts have a much bigger role – listen to them, and use their judgement.
Thirdly – have humility in your expectations for any automation system which involves people. There are some automation systems with people which work, but automation systems for people are extremely hard because people and real life is so complicated. A larger human discretionary component is probably much better.

The software ‘terms and conditions’

Software companies  – and websites – which give people complex ‘terms and conditions’ to read are not just being a little ignorant – they are insulting their customers.

Let’s go through what this is saying, as an imaginary conversation between me, the software company, and you, the customer.

You know and I know that you’re not going to read this.

But I can force you – or very strongly encourage you – to tick a box to say you’ve read it as a condition for going forward with my service because – that’s very easy to do with software.

I get some advantage from this over you (otherwise I wouldn’t be doing it).

So I’m basically happy to exploit your laziness / trust for my own benefit and give you nothing back. Although I take it we’re still friends, because this is what everybody else does, isn’t it?

Imagine the owner of your local public house doing something similar – I’ll serve you beer if you sign this long legal document – to illustrate how ridiculous it is. Yet somehow because we’re in the software realm we’re conditioned to accept it. Does that mean that software programs people to act like morons?

Do these terms have any legal weight? I don’t know, how can you sue someone for not reading something it is obvious they’d never read. But you can still go ahead and do everything you said you had the right to do, and its pretty hard for someone to stop you.

Far better – I would have thought – to scrap the lot of them unless they really add something and people really have a chance to consider them.

 

What is the point of the Fitbit

If you want to monitor your own health, here’s some useful factors.

 

How much are you sleeping and how well

What are you eating

Are you brushing your teeth

Are you getting any exercise

Are you spending time in dangerous environments

(If in China or India) are you spending lots of time in dirty air

Are you spending too much time indoors

 

You can sleep more, exercise more or differently, eat less or eat differently, have more time in clean air, get outside more

Surely the difference between unhealthy and superhealthy is pretty much all there.

What has Fitbit got to do with any of it?