“Simple can be harder than complex: You have to work hard to get your thinking clean to make it simple. But it’s worth it in the end because once you get there, you can move mountains.”    -Steve Jobs

As software continues to eat the world, it is also eating our wallets.

 68% of software projects fail. Let’s pause and think about that for a minute. One out of every three projects become what might be considered successful. I would classify successful as within budget, on time, provides value, and delightful client experiences.

The high failure rate translates to an estimated $75b a year in rework and abandoned software projects in the US alone. I know, crazy right?

One primary reason so many projects fail is that we tend to add complexity in all areas. From the early sales calls to gathering requirements, to managing expectations, to delivery, to launch, and everything in between.

From my experiences, I firmly believe simple is the way to go from start to finish.

At Skiplist, we deeply believe in simple over complex. Simplicity enables us to stay lean and continuously deliver value. We call this approach Thoughtful Software™.

My hope is you will find the simplistic approach informative and helpful in breaking down complexities you may encounter.

Ultimately, our goal is to work together to flip the abysmal 68% failure rate statistic on its head and transform the software industry.

This is our challenge. There is nothing revolutionary here; it is just hard to do.

 Life is simple. People make it complicated.

There are no shortages of complicated processes and applications in the software industry. People love complicated. It is human nature to add twists, turns, and drama.

Our brains crave stimulation. It likes to stay busy. We tend to think something can’t be this simple and proceed to believe it is more complicated than it is. Commonly referred to as a complexity bias. Relationships, health, and of course, software all succumb to our preferences. It is within these biases we sidestep the need to understand.

 

“Complexity bias is our tendency to look at something that is easy to understand or look at it when we are in a state of confusion and view it as having many parts that are difficult to understand.” Farnam Street

 

The problem is that complexity requires more effort to sustain it. There are more chances for a system to break down with more parts.

Simplicity, on the other hand, requires more effort to achieve it. It takes mental brain power to break down a problem to its simplest components.

Take the iPhone as the quintessential example of a complex system tirelessly broken down to simple user experience. Whether you prefer iOS or Android, the iPhone is super easy to use. Apple took a product as complex as building a smartphone and turned it into a device my mom can use like a pro. Brilliant.

Unfortunately, we don’t take cues from successful companies such as Apple. Our propensity to continuously fill our minds with noise creates a sense of urgency around missing the latest information.

It is this constant flow of information where we blur the line of utopia and reality.

 

To-Do or Not To-Do

Take our obsession with to-do lists. I did a quick search on the app store and found at least 30 or more task planning apps. Why are there so many of these apps? Utopia is, I’ll be an organized ninja and cut down each task one by one. Reality is, after failing time after time to organize the 100 things I have to do every day; I gave up and came up with a simple system.

Every day, I come up my top three essential tasks I must finish and make sure I get those done before the end of the day. Get to my three and everything else I can adapt. I’ll block out time for my top three, but I keep a fluid schedule otherwise. Too many tasks and apps were too complicated.   

I believed the process of getting things done required an elaborate system of apps intertwined in the cloud. What I needed to get organized came down to a piece of paper, pen, and my three things for the day.

Please don’t feel too bad for yourself or me. Complexity sells. Simple is thought to be boring. It might be, but it is also useful and sustainable.

“Everything should be made as simple as possible, but not simpler.” – Einstein

 

Complexity is free

In his book “Thank you for being late,” Thomas Friedman discusses how the accelerated advancement of hardware and software over the last 20 years has allowed companies to introduce products into the market at a rapid pace.

What once took two years to develop a prototype, is now reduced to a week. We can leverage three-dimensional software, 3-D printers, cloud technology, and several other advanced tools; essentially, the underlying complexity to build a product is now free.

We don’t have to think about spinning up a server or even managing it. Just build. Money has also become more accessible through crowdfunding and the growth of venture capital.

Although Friedman explains that complexity became “fast, free, easy for you, and invisible,” it also comes at a price. Our ability to build products quickly allows us to throw whatever feature we want in without truly understanding the consequences.

We are in the age of accelerators. Computing, access to information, access to people, everything around us is changing rapidly. Maybe this is the new norm. After all, the software industry is only a few decades old. Perhaps this is the time to, as Mark Zuckerberg says, “move fast and break things.”

However, I argue moving fast does not mean we should be reckless. Moving fast does not mean we should compromise our privacy and security. Moving fast does not mean we should build crappy products. Moving fast does not mean we should add complexity unnecessarily.

We should instead move thoughtfully and break the status quo.

First Principles

First-principles is an effective strategy to break down ideas to their fundamental truths. Mostly think like a scientist to understand what we know about a problem. This type of thinking can open up new ways to attack a problem.

No one today embodies first principles thinking and breaking the status quo more than Tesla and SpaceX founder Elon Musk.

Elon Musk famously said in an interview:

 

“I tend to approach things from a physics framework. Physics teaches you to reason from first principles rather than by analogy. So, I said, okay, let’s look at the first principles. What is a rocket made of? Aerospace-grade aluminum alloys, plus some titanium, copper, and carbon fiber. Then I asked, what is the value of those materials on the commodity market? It turned out that the materials cost of a rocket was around two percent of the typical price.”

From Musk’s viewpoint, he believed his vision to reach Mars would not be feasible with the status-quo. Rockets were just too expensive, and if he understood the underlying problem of why rockets are expensive, the next logical move was to build his own.

Thus, SpaceX was born, and a fundamental difference with SpaceX rockets is they are designed to be re-usable. In a traditional space shuttle, the large fuel tanks and side boosters are discarded after every launch. Knowing fuel costs are the most expensive part of a rocket, Musk thought to himself, why not figure out a way to land the rocket safely to be able to reuse the fuel tanks.

I’m ridiculously simplifying what Musk thought here.

Notice, to build and land a re-usable space shuttle is a complex project. However, Musk broke down the high cost of rockets to a simple thought. Re-usable rockets. Going to Mars is about as exciting work as you’ll ever find.

Musk will admit thinking from a first-principles perspective “takes a lot more mental energy.” It is easier to explain than it is to practice.

What Musk is advocating is to break things down to their fundamental truths. In other words, get simple. Therein lies our challenge. Simple is hard to do.

A Simple Foundation 

Lego is a great case study of a company that chose to eliminate complexities in manufacturing and operations. Founded in 1932 and until 1998, Lego turned a profit every year until after a series of self-inflicted mistakes led Lego to nearly collapse in 2014.

Jorgen Knudstorp took over as CEO and a principal mandate for him was to simplify everything at Lego. He started by reducing the number of pieces from 12,900 to 7,000. They implemented smart manufacturing practices to reuse certain parts for different sets to reduce the cost of new molding.

By simplifying how Lego operated, they turned around a nearly bankrupt company into one of the largest toy manufacturers in the world.

Lego’s turnaround illustrates a significant point about a simple mindset. There isn’t anything groundbreaking in what they did. Lego just had to think hard about its business and get creative.

To “move mountains” as Steve Jobs put it, requires us to dig deep and evaluate every aspect of a service and products company.

Thoughtful Software is Born

When we set out a few years ago to start a software company, we knew we wanted to take a different approach. We looked at every aspect of building a services and products company — everything from legal to sales to engineering.

We have never lost sight of the high project failure rate in the software industry and our grand vision: thoughtful people and Thoughtful Software™ can change the world for the better.

Granted we are far from achieving our vision but changing an entire industry takes time. We have had our bumps and bruises, and I am sure we will have plenty more. We have also made tons of mistakes. I am not trying to glorify our failures as many do in Silicon Valley. Mistakes are painful. I prefer to make less of them.

The following is a snapshot of how we broke down various aspects of Skiplist built around removing complexity to achieve our vision. We firmly believe if we continue to maintain a simplistic approach, we not only will create more value for our clients, we can stay lean in the process.

 

A Simple Culture

Thoughtful Software™ is a process, a movement, a mindset, and an approach we believe the industry desperately needs. First and foremost, put people at the center of everything we do.

We noticed a significant reason projects fail is often we lose sight of the goal by adding complexities. We are improving our lives through usable and enjoyable software. We make decisions to solve people problems, not just write lines of code into a machine.

To manifest a culture around people and delightful client experiences, we knew we had to start with a core set of values. Values guide us through difficult times and around blind corners.

Initially, we had ten values, but when we couldn’t remember them all ourselves, it became apparent we needed a more straightforward set of values. Then there were four.

 

Values

1. Simple over Complex

2. Team over Individual

3. Innovation over Stagnation

4. Relationships over Money

 

Rooted in strong values, we can then begin to shape a better client experience. I’ll admit creating a delightful client experience is quite hard and I wholeheartedly agree with Musk, it requires a great deal of mental energy.

Expending the extra mental energy to simplify though, is worth it every time. The alternative is the current environment where complexity sells, especially in the consulting industry with more information, more abstraction, and expert hand waving.

 

Embrace Complexity

Client experiences matter whether you are selling a product or a service. Clients and users have a myriad of options to choose from today.

We should not ignore complexity but embrace it to make better decisions for our clients and users.

Complex products are challenging to learn and use. The iPhone wasn’t the first smartphone, and Apple made it simple to use. Complex products and systems are difficult to maintain and can be hazardous within specific applications such as medical and transportation.

When we know where the complexity lies, we can build products and systems and   earn our complexity.

 

Thoughtful Journey

For us at Skiplist, we didn’t set out to revolutionize work or publicize our unique way. We have a standard policy to evaluate and iterate if we can make things better. Be comfortable with changes. Iterate over perfect.

We encourage open communication and lean practices. We are not fans of meetings or busy work and fewer meetings for more focused deep work.

If we do have a meeting, we keep them to 30 minutes or less. I love 15-minute meetings.

In Legal, we have developed a streamlined system to review and sign contracts quickly. I never understood why it takes months to sign an agreement.

In Sales, we are big on conversations over pitch decks. Decks are boring.

We outlined a simple pipeline and sales process. If your sales team is spending more time on data entry than sales, you have a complex process problem, and it costs you productivity.

Excessive data is crippling. We don’t need expensive salespeople, spending a large chunk of their day updating the CRM.

In Product, we bring in product managers early to sales conversations to help map out ideas and build out what we call product/project briefs. The briefs help the entire team and the client eliminate misunderstandings.

In Marketing, we believe in no gimmicks to our approach. Chasing search engine rankings and clicks deviates us from the Thoughtful Software™ mission. We focus on only a few things,  our podcast, newsletter, and blog.

In Engineering, we often debate the best methods for delivering great work and ask lots of questions.  If we break down a project into eight-week blocks with deliverables every two weeks, would we be able to deliver the value we promised? Do clients understand the deliverables? Are two weeks even appropriate? Simplicity can’t be born from a complex engineering process. We aren’t just looking at agile practices as the “future”; we are always asking how we can simplify our process and practices while creating an exceptional experience for our customers.

 

Choose Simple Over Complex

All this is to say; we value simplicity. There is nothing revolutionary here, just a relentless mindset to stay focused on achieving our Thoughtful Software™ mission.  

The result is our continuous pursuit to choose simple over complex, provide delightful client experiences, and deliver quality work.

Next-generation applications in healthcare, transportation, education, finance, and so on must be simple and effective. We owe it to the betterment of our society to deliver Thought Software™.

If you’d like to learn more about Thoughtful Software™, please contact our team.  

“Simplicity is the ultimate sophistication.” Leonardo Da Vinci

Thoughtful, exceptional software begins with the end.

It takes clear definition of goals, understanding of business objectives, and alignment between software developers, clients, and users.

In this brief article, you’ll learn:

  • What is thoughtful software?

  • Why is thoughtful software important for every organization?

  • How to build software for a successful outcome?

  • Why an iterative, phased approach yields the best results?

  • Why personal values are important to build great software?

  • And why the creation and maintenance of quality software leads to long term success?

Work with partners who are genuine in understanding your goals.

WHY DO PROJECTS FAIL?

“Thoughtful software is better for the environment”

– Fahad Shoukat

Currently, it is estimated that over $3 trillion is wasted on software projects that never come to fruition. This translates to a staggering amount of value lost for both businesses and consumers. And it’s not just the private sector that struggles; for example, the Air Force spent $1 billion on a software project and had nothing to show for it.

Looking back on failed projects can help determine why the project failed. Unfortunately, the success or failure of a project is determined by a number of factors. Recent statistics show the most common reasons for project failure are:

The figures shown above only provide a small glimpse into the complexity of software projects and factors involved that ultimately determine success or failure. Additional studies demonstrate that software projects tend to run 66% over budget and 33% over time.

Most businesses are able to handle the additional costs in time and money; however, reports show that 17% of projects are so poorly executed that they threaten the very existence of the company.

BUILD THOUGHTFUL SOFTWARE

Prevent your projects from becoming part of these abysmal statistics.

Imagine and create thoughtful software.

Be committed to building, delivering, and maintaining software that is thoughtful, usable, and valuable.

Strive to build products that enhance user experience, provide value, and emphasize quality. But how do we define thoughtful software?

Thoughtful software is usable, unobtrusive, and is enjoyable to use.

It prioritizes the needs of users; rather than the needs of developers and designers. And for our clients, the creation of incredible, thoughtful software products leads to added value and tremendous opportunities for growth and sustainability.

Here we present how Skiplist builds software and what you should consider when building software and choosing a software development partner.

1. ASK WHY

“The art and science of asking questions is the source of all knowledge”

– Thomas Berger

Ask why and understand the journey that creates that pain point. Experts recognize always starting with WHY and completing a successful software project are inextricably linked.

This does not mean starting slow. However, an initial meeting or call should be to understand the problem we are trying to solve. Seems simple, right?

Often developers are so quick to take on a project, they forget to ask about business outcomes. These are important to establishing the engagement and vision of the project.

  • Is this feasible?

  • Why are we building something?

  • Who is the intended user?

  • Timing to complete the project?

  • What are the goals for you and your team?

Ultimately, these questions are not very helpful if not rooted by strong personal values of the people working together. After all it is people working together with people.

Alignment in values is important.

2. WE ARE DEFINED BY OUR CONVICTIONS

“A people that values its privileges above its principles, soon loses both.”

– Dwight D. Eisenhower

Skiplist is a collection of talented individuals who came together to build thoughtful software.

We wanted to create a different experience for ourselves and our clients.

The software industry is full of bloat. Starting a project can be painful. Getting a master services agreement (MSA) signed? Forget about it.

Many projects never take flight due to legal teams going back and forth for months. Your project may be outdated by the time the MSA is finally signed.

Clients and vendors labor over writing a detailed scope of work (SOW) when in reality building great software happens outside the SOW. Through good communication and flexibility to make changes.

Corralling the relevant resources and managing a team in a rigid environment can be painfully challenging.

Relationships are more important than ever. Software is an iterative process.

There is a better way.

For that better experience, we stick to our 10 core values. We believe these should help you as well.

  1. Simple over complex

  2. Caring over apathy

  3. Long term over short term

  4. Candor over cowardice

  5. Change over stagnation

  6. Team over individual

  7. Transparency over obfuscation

  8. Relationships over money

  9. Iterate over perfect

  10. Learning over ignorance

In the end, our journey and experiences together are what matters. Let’s make them good ones.

3. DOING GREAT WORK REQUIRES GREAT TEAMS AND ALIGNMENT

“Teamwork is the ability to work together toward a common vision. The ability to direct individual accomplishments toward organizational objectives. It is the fuel that allows common people to attain uncommon results.”

– Andrew Carnegie

We are all one team. Let’s do this!

When you have a team that is founded on 10 core values and a mission to build thoughtful software, quite a bit of good can happen.

Combined with enterprises who hold similar values, the possibilities are limitless.

One core aspect of great teams is specialization. To achieve the best outcomes, bring in talented people who excel in certain areas. For example, a user experience (UX) designer can be the difference between a successful or failed product.

Don’t just build an app for the sake of it. Carefully plan it out with experienced architects and designers who can help support the vision. Five star ratings correlate to a better brand image and increased revenue.

Leveraging data can be a competitive advantage if implemented properly. Data science isn’t just a buzzword and data scientists are very expensive.

It is more impactful to start with a proof of concept (POC) to test the idea. Then develop a roadmap to increase the probability of success.

Teamwork:

  • 97% of employees and executives believe lack of alignment within a team impacts the outcome of a task or project.

  • 86% of employees and executive cite lack of collaboration or ineffective communication for workplace failures.

  • About 75% of employers rate teamwork and collaboration as “very important”.

  Figure: The New Organization: A Network of Teams (Deloitte, 2016)
Figure: The New Organization: A Network of Teams (Deloitte, 2016)

We understand the need for dynamic, flexible, and dependable teams to complete our projects and form lasting relationships with our clients.

Listening and executing on software projects quickly and within budget is crucial to success.

4. SOFTWARE IS AN ITERATIVE PROCESS

“Software is a great combination between artistry and engineering.”

– Bill Gates

We firmly believe that software development is an iterative process that requires a phased approach.

A phased approach is necessary and important because it allows for our developers and our clients to provide continuous feedback, make improvements, and manage changes to the project without disruption.

Reduce uncertainty.

A phased approach consists of 3 phases:

  • Phase 1 — Discovery

  • Phase 2 — POC / MVP

  • Phase 3 — Expansion

PHASE 1 — DISCOVERY

The requirements gathering or discovery phase is an essential part of any project. Though often it is overlooked as we rush to save time and start the project.

Experienced project managers will agree if requirements are identified early on, the probability of a successful outcome dramatically increases.

In this phase we want to establish a few important aspects.

  • Purpose of your project

  • Domain you operate in

  • Your unique operation complexities

  • Produce alignment between teams

If you are working with experienced professionals, this process moves fairly quickly.

PHASE 2 — POC / MVP

In the proof of concept phase demonstrates that certain concepts or theories may have potential for real-world applications.

A prototype is a very useful tool to determine the feasibility of a product without the high cost and going too far into a project.

A POC may involve extensive research. It allows time to examine and test assumptions. Often wireframes and mockup designs are created to visualize what may be possible.

In this phase, we can also get a better idea of the estimated total cost of the project. Budget overruns are usually a result of poor upfront planning. Stuff happens and projects do get derailed. We understand.

However, we can make a conscious effort early to minimize these effects down the line.

The next step can be a minimum viable product (MVP). The MVP takes the POC a step further to build a functional beta product where users can actually use and play with something real.

This provides invaluable feedback of how users interact with a product. The next steps are to learn from our findings, iterate, and build a better product for a full launch.

  • Alignment and understanding are achieved

  • Identify and build

  • Learn and iterate

  • Prepare for launch

PHASE 3 — EXPANSION

The term “production ready” is often misunderstood. It depends on who you are talking to.

A programmer would say a “production ready” software is:

  • It runs

  • It meets the product requirements as defined in the discovery phase

  • Its design was well thought out in the POC phase

  • It is stable

  • It can be maintained

  • It can be scalable

  • It is documented

Management would say a “production ready” software is:

  • It runs

  • It turns a profit

This all depends on the purpose of the product which we define by asking questions at the beginning of the project. For example, some research projects may not need to be a scalable solution.

However, if there is a bigger vision for a particular project it would make sense to plan ahead. Designing the architecture upfront to allow for scalability should not be overlooked.

Additionally, during this phase new features may be introduced and implemented. Feedback from the POC phase is important to refining a “production ready” product.

  • Production ready

  • New features

  • Exponential success

5. PLAN FOR THE FUTURE

“Productivity is never an accident. It is always the result of a commitment to excellence, intelligent planning, and focused effort.”

– Paul J. Meyer

Planning ahead will save time and money. The challenge is always balancing being prepared with moving quickly to meet demand.

Experienced developers, designers, and architects know it is always better to understand the end goal. We may not always know how the end may look but we can guide the process with a vision of what we want to build.

When are you working with experienced professionals at Skiplist, we are able to move swiftly by following the steps outlined in this paper. We are also able to adapt and make changes to keep the project on schedule.

When we all have the vision in mind and are aligned in values. The future can be more predictable.

CLOSING THOUGHTS

Now that you know what thoughtful software is, how there are different software partners in this noisy world, and what it takes to not be another statistic.

The question remains, will you be responsible for initiating an amazing, thriving software project?

This article was originally published on Skiplist.com