Sunday, August 14, 2022

Doing Something That’s Never Been Done

A Great Leading Indicator for Future Trouble - Missing Milestones

Executives, project sponsors, project managers, and steering committee members can learn a lot from how some deep technology startups approach their projects.

This isn’t true for all kinds of projects, but it is for every project that involves doing something that hasn’t been done before and has a high risk-reward profile.

This isn’t another lean startup story. Nor does it involve agile development or digital transformation. This is a story about doing technology research and development with clear goals and constraints. 

I’ve been an active angel investor for several years now. As such, I invest my own money in very early-stage startups. I try to help them with my knowledge, experience, and network, as well as my money. 

3D2cut is one of the startups I’ve invested in, and I sit on its advisory board. 3D2cut is all about winemaking. The company uses modern technology to tackle several problems associated with grapevine pruning.

The Challenge

Like winemaking, grapevine pruning is part science, part art, and getting it right determines the size of the harvest and the quality of the wine. 

In pruning, last year’s canes, which are now surrounded by a layer of wood, are removed to facilitate fresh new growth.

The work is laborious and expensive. There are around 7.5 M hectares of grapevines worldwide. Each year, approximately 1.3 M people prune for multiple weeks during the winter season.

Bad or imprecise pruning leads to wood diseases and can kill vines, which reduces yields and grape quality.

Therefore, as a vineyard owner or manager, you need well-trained staff to prune. 

However, training your staff to prune well takes a lot of resources, and the nature of the work – it’s hard! – means most pruning teams have a big turnover. Training staff is a recurring and expensive task.

Besides the cost, finding the required expertise to train pruners is a challenge.

Industrialization, extensive mechanical management of vineyards, and climate change make pruning far more complicated as your plants become more sensitive and crave for more gentle treatment.

That’s why you need an expert to correctly train your staff.

3D2cut has come up with a solution to address these challenges using modern technology. With this solution, everybody can become a Master Pruner without any training. The product guides vineyard staff through every cut.

The Solution

The solution is simple. 3D2cut will supply you with a device that uses Artificial Intelligence and Augmented Reality technologies to advise pruners on where to cut, simply and quickly.

This pruning expertise isn’t just any old advice. It represents the codified knowledge of the world’s premier pruning experts: Simonit & Sirch.

3D2cut’s solution results in:

> Better grapevine health, increased yields, and less need for chemicals.

> Less money and time spent on staff training, and reduced impacts arising from staff turnover.

> Rekindled passion for vineyard management thanks to a simplified, less stressful pruning process that’s also more sustainable.

Building It

The idea is simple, but that doesn't mean it was easy to achieve. We started by breaking down the problem and writing down its key assumptions. 

What did we need to be certain about to continue supporting the project?

> That the device could support augmented reality and work in the field. Rain, sun, snow, dust, long days. 

> That Simonit & Sirch’s knowledge could be codified in algorithms. We call this the Pruning Expert System (PES).

> That the device could recognize a vine in its natural environment and identify the vine type and its constituent parts (cane, cordon, shoot, bud, etc.) through machine learning. We call this the Vine Vision System (VVS).

> That we could create a large set of annotated images of vines to train and test the PES and VVS.

> That we could apply the PES to the results of VVS and project proposed cuts to the vine via the augmented reality device.

> That we could make this all work and produce the cutting proposals within 2 seconds.

> That we could patent the solution.

We then started testing these assumptions one by one.

After we validated the individual parts, we started building the walking skeleton and plugged in the parts. Next, we started field testing and improving the end-to-end solution.

This is where we are now. 

We have proven every assumption to be true, but we are not completely satisfied with the end-to-end product.

That said, we expect to have the first version of the product ready for a pilot client in December this year. Just in time for the northern hemisphere pruning season.

The Lessons

Start by formulating your key assumptions. Test them one by one. This process won’t tell you if the project is worth continuing, as many other factors will come into play, but it can definitely tell you if you need to abandon your project immediately. This step is excellent risk management. 

Proving individual assumptions is a sign of progress and supports discussions around funding. It also helps win support for your project from company stakeholders.

> See if you can create a win-win partnership with a company or team that complements your project team’s capabilities and assets. In our case, Simonit & Sirch are co-founders of 3D2cut. This alliance arms us with their unique expertise and gives them a vested interest in 3D2cut’s success. 

See if you can apply knowledge and working solutions from unrelated areas. In our case, we applied algorithms for detecting human movement to detecting vine structures. It worked very well and saved us a lot of effort. It also allowed us to leverage the experience and knowledge of the people who invented these algorithms. Instead of starting from scratch, we could build on a strong foundation.

If possible, collaborate with experts – universities or research institutes, for example – on certain parts of the problem where there is a common interest. We work together with IDIAP. One IDIAP employee works on problems formulated by 3D2cut; meanwhile, a 3D2cut employee is completing his Master’s degree at IDIAP.  

Build for, and test in the field. Don’t create artificial problems to test your assumptions. Make it as real as possible. Only then will you be testing the assumptions. We started working on our VVS by using vine images with an artificial background. We learned a lot, but it wasn’t the problem we had to solve. Vines in vineyards do not have an artificial background. We spent time and money on annotating these images with artificial backgrounds. In hindsight, we spent too much on these efforts.

Most startups don’t have much money to spend. You’re forced to focus and be creative. You can make that happen in your project by applying stage-gate funding, which is when you release more budget for the project only if certain milestones are achieved. This is comparable with the startup funding concept. It starts with the 3F (friends, family, and fools), then a Seed round, then a Series A, Series B, and so on. You should spend significant money to scale, not necessarily to build.

You can validate assumptions whilst knowing that another assumption is still outstanding or that the result is not yet what you need. For example, we started building PES and VVS and tested them in the field on a tablet instead of glasses that support augmented reality. By not waiting for such glasses, we bought ourselves a lot of time and discovered new requirements for the glasses.

Even if technology isn’t ready today, you can anticipate what’s coming in the near future. Based on our field tests with the tablet, we realized that the first version of the product would need both a tablet/cellphone and glasses to work. We know that within the foreseeable future that glasses alone will fulfil our needs, but today this is not the case.

Smart and motivated people learn very fast. You don’t need experts in every area. You need a small team with people that are capable and willing to learn. Since you don’t know upfront what problems you’ll encounter and what solutions will be available, it makes no sense to look for a bunch of experts. You can always hire an expert for a few consulting days if necessary.

Start building a walking skeleton as early as possible. You’ll need to work and test it in an end-to-end environment as soon as you can. Only then will you see the real results of your changes.

In a nutshell: Corporates can learn a lot from how some deep technology startups approach their projects.

Read more…

Sunday, August 07, 2022

Why Are Your Best People Not Working on This?

User Enablement is Critical for Project Success
A phenomenon I see happening again and again in larger organizations is destroying employee morale and economic value.

There’s that big internal project (think ERP, CRM, HCM/Payroll, Core Banking/Insurance) that has the potential to stop the whole organization in its tracks and will cost the organization millions of hard-earned cash to implement.

And somehow, the best people in the organization aren’t involved in the project. 

How stupid is that?

Depending on your margins, you may have to earn many more millions to pay for the project. So, if you can prevent costs from doubling and extract some benefits from it, this would seem a smart investment, right?

Profit margins vary considerably by industry, but as a general rule of thumb, a 10% net profit margin is considered average, a 20% margin is considered high (or “good”), and a 5% margin is low.

Let’s stick with the middle and take 10%. This means that for every million you spend on your internal project, you have to generate 10 million in additional revenue to make up for it.

Considering that most technology projects will cost twice what is budgeted – without taking losses in revenue and productivity into account – I think it’s worthwhile to have your best people spend some time on the project.

But you know what?

Nobody wants that. Not your executives. Not your line managers. And not your staff. 

Why is that? 

The answer is simple. Nobody makes a career with such a project. You can only lose.

If you’re staffed on the project, nine out of ten times you’ll still have to do your regular job as well. This means double the work and more stress. Your goals, bonus, and promotion probabilities are tied to your normal job, not to the project. But you have less time to achieve them. This is not conducive to career advancement.

Your line managers can try to fill the gaps in their teams but they will have additional work because their people are working on the project. This will affect their goals, chances for promotion, and bonus payments. So they will do anything to prevent their best people working on that critical project.

And you, as an executive involved in the project, can only work on spending and damage control, as everybody expects the project will be a success and within budget. The probabilities that one or the other will happen are very small. And the chances of them both happening at the same time are close to zero. 

And when you’re not a COO, CFO, or CIO, you’re expected to work on client-facing tasks, not internal projects, even when you and your teams will have to work every day with the result of that project. 

There’s a massive misalignment of incentives here. 

You have to fix this misalignment, because with critical projects it is very simple: If you want to have a higher probability of success, you need to involve your best people.

If possible, put them on it full time, and relieve them from their day jobs. It should be made clear across the organization that the project has priority and that day-to-day things may take a little longer.

Bonus payments and possible promotions should be tied to the project goals. Career goals and project goals should be aligned. If this doesn’t happen, your best people will focus on the things that improve their careers, which may not always be in your organization’s best interests.

In a nutshell: If you want to have a higher probability of success with your critical internal project, involve your best people.

Read more…

Thursday, July 07, 2022

Don't Forget SaaS Performance Testing!

Your Strategic Sweet Spot

I wrote about application performance a few years ago in my article “It's Never Too Early to Think About Performance”. Since then I have learned and witnessed a few things that warrant a new article on this topic.

As more and more companies leverage SaaS for their business applications the number of companies that suffer from serious performance problems is growing by the day,

SaaS solutions like for example Salesforce, Workday and S/4HANA can be implemented in a way that performance is decent. They can also be implemented in a way that your users will wait for a very long time after each click or keystroke they make. The latter will lead to much frustration and high opportunity costs. 

How is that? 

Well, if the solution is deemed too slow, people will find ways to not use the solution unless they absolutely have to. This means adoption will be terrible, and your original business case will be not worth the paper it was printed on. As I have written before; any system is only as good as how well it is used. 

Still many projects that implement such SaaS solutions ignore performance and do not include client side performance testing into their scope of work. And this is a very big mistake.

Companies assume that the SaaS vendor is responsible for delivering a fast enough user experience. But this is not the case. They can’t. Vendors can only be responsible for the things they have under control.

Your devices, your security stack, your browser, your internet connection, your network, your location. They all have a significant impact on the performance of your SaaS solution. None of them is under the control of your SaaS vendors.

Also your configurations, your customisations, your number of concurrent users, and your amount of data have a significant impact on the performance of the solution.

Trust me, running a revenue recognition run in SAP S/4HANA with 100 or 100.000 WBS elements makes a big difference. As there is a big difference between running a report on 50 or 50.000 opportunities in Salesforce.

And these business applications cannot live in isolation. They need to be talking with each other. They need cloud integrations. See “The Biggest Challenge of Postmodern ERP - Cloud Integrations” for some additional thoughts on this topic.

Each of these cloud integrations need to be tested individually, but even more important are the end-to-end throughput times. How long does it take before your new employee in Workday shows up in your Oracle ERP? What if you have 1000 new employees?

Most of these cloud integrations are not part of a standard SaaS solution, and therefore not under control of your SaaS vendor.

So before you even think about going live with any SaaS solution you should do the following tests:

> Load Tests: you need to understand the behaviour of the system under a specific expected load. Testing with 250 invoices does not make sense when you know you will have 250.000 invoices in the solution within a year. When you know you have 5.000 concurrent users working on the system every day you should test this before you go live. Not after… 

> Stress Tests: you need to understand the upper limits of capacity within the system. And if this capacity is lower than the capacity you expect you need then you need to deal with this before you go live. Not after…

> Soak Tests: you need to determine if the system can sustain the continuous expected load. This can be as simple as running your load tests for a number of consecutive days. 

> Spike Tests: you need to determine if the system can sustain a suddenly increasing load generated by a large number of users and/or new data in the system. Businesses are mostly seasonal and have spike periods. For example your Year End Closing in SAP/Oracle or Black Friday for your sales. You will need to know if your solution can handle this before you have to do the work. Not after…

Fixing performance issues whilst you are working with the solutions is much harder as fixing them before you go live. See Going Live Too Early Can Be Worse as Going Late for some additional thoughts on going live checks.

In a nutshell: make performance testing mandatory for every SaaS implementation project and define decent performance as a killer criterium before going live.

Read more…