Wiredelta

7 Reasons Why You Should Consider A Rebuild And Give Your Business A Second Chance

Is my website or mobile app stopping my business from growing and reaching its full potential? If this question is also on your mind, we have good news for you. Recently, we have published an article looking at the 7 most common pain points a business owner has when it comes to their digital platform and how affects their expansion and ROI.

 

In this article, we will go even further and tackle those 7 points from a more technical and more detailed point of view. So, join us as we dive deep into the 7 most common reasons to consider a rebuild.

 

But if you are not sure this article is for you, think about this – Is your current setup either not scalable, it is too slow, cannot be updated or improved on? Or it simply doesn’t work as intended anymore? If so, the best chance your business has to start flourishing again is if you either start thinking about modernizing part of your systems or even start from scratch.

 

However, many times, business owners don’t want to start over. And this is a natural and understandable response. People don’t like change, they don’t trust change, and most of all, rebuilding an app or a website involves a certain amount of financial investment they are not necessarily ready to make.

 

But, on the other hand, change is inevitable, and avoiding it, at least in the web and mobile development world, will only result in more costs, more hassle, and can even go as far as affecting the business as a whole.

 

So, today we want to take a few minutes and explain why, and when you should as a web or mobile app owner consider a rebuilt. But, before we proceed, let’s explain first what a rebuild is in the development universe.

 

What is a rebuild?

A rebuild, or rebuilding a digital platform is pretty straightforward. We take the current system and break it down into technologies used, features, functionalities, expectations, user journey, etc. Then, once we understand the project inside out, we rebuild it.

 

It sounds quite simple, right?

 

When should you consider a rebuild?

 

Well, that’s because it is! You see, a rebuild is not only finding good technologies that allow us to recreate a platform. It entails finding technologies that can do what your digital platform already does, but better, more scalable, and more sustainable. A bit like re-inventing the wheel.

 

So when you and your team break down your current app or website, look at what can it do, but also look at what it can’t and should do, or at what it should but doesn’t do. In other words, identify the current problems – the ones that made you consider making a change in the first place – as well as try to foresee problems that might occur in the future and combat them too.

 

For example, if your platform is built on Shopify you might want to rebuild it because the platform is limited when it comes to functionality, and neither your team nor your users are happy.

 

Another reason for moving away from platforms like Shopify is that they are closed-source platforms, and you do not own or control the code, the hosting solution and your team cannot build on top of the available features unless Shopify has an app for it.

 

This might sound bad, but in reality, limited control is actually what many startups and small shops look for. In fact, you might also have been in this situation when you first created your current website or app.

 

Regardless, Shopify and many other platforms like it are an amazing tool for building a quick MVP, or proof-of-concept. They are affordable, they are professional, and the results are often quite impressive.

 

However, this is where most shops face their second issue, scalability. As a small shop, with a few hundred users, having limited control and not having to worry about things like SSLs, hosting, maintenance, etc., is a blessing.

 

But, when your shop starts growing, that limited functionality will quickly become a barrier for you. Moreover, a few hundred users won’t bat an eye if you had a feature today and tomorrow it’s not supported anymore. A few thousand of them, on the other hand, will notice and will speak up.

 

And since there is no way to bring that functionality back or add any other extras that your users clearly want, the only option is to rebuild your platform using a more flexible solution. Of course, this is only one example. But there are many other reasons why you should consider a rebuild, so let’s take a look at the 7 most common ones.

 

1. You are stuck with an old-tech stack

We have previously talked about legacy systems and if companies should build from scratch or build on top of these systems. But as a web agency promoting modern development, Wiredelta has a strong opinion towards moving away from these “old” systems.

 

And by old systems, we don’t only mean legacy systems, but old tech in general.

 

old technology and legacy systems
Source: 3dexport.com

 

You see, a legacy system is an intricate system that a company has built many years before, and because it is the core part of said business, because it is so vital and because it can be very costly to replace, many companies opt to keep it and try to build on top of it.

 

Moreover, technology evolves so fast these days that even a platform built a few years prior can become “old tech”. For example, Wiredelta’s previous website was built in AngularJS, a top technology at the time that everyone used and loved.

 

However, only a few years later, AngularJS was literally replaced by what we now know simply as Angular. The new framework brought many changes that deprecated the previous version, and because the two versions were so different, developers stopped supporting AngularJS. Not only that, but browsers like Google Chrome also stopped supporting it, making the websites look broken.

 

As a result, our website was slowly becoming unusable, which is why in 2019 we rebuilt it using the world’s most popular content management system, WordPress.

 

In both situations, rebuilding is the only way to go forward. Whether you have a legacy system or simply use a technology that is no longer supported, the costs of keeping the platform up surpass by far the investment in building a new one.

 

For one, developers learn and adapt to new technologies as they evolve, which means that if you choose to stick with your current platform, you will have to find developers that can work with your technology.

 

Using the simple supply-demand rule, the older your technology is the less supply of developers willing or capable to work with it. And when there is demand but little supply, prices will go up and those developers will be expensive. Consider using survey campaign management to determine if your technology is in demand or not.

 

Also, since there is no support for the technology anymore, everything you want to build on top of it will have to be done manually. This means that it will take a longer time to build, but also it means that it is not as secure and as stable as it would be if it had an army of developers behind it. Even if your developer is the best in the world, testing is still crucial.

 

Finally, the more you build on top of a legacy system, the heavier it gets. The platform will start to lag, it won’t perform as it used to, things will fail and errors will start to roll in. Soon after, user complaints will also start to pour in, and you are in a pickle.

 

2. Your current app or website is beyond repair/patching

You don’t have to have a legacy or outdated system for it to not work anymore. Sometimes, it is because of bad development work or too many changes.

 

Simply put, if the development team you have chosen to work with is not experienced enough, they might be able to create a working version of your website, or at least that what it seems like. But in reality, this version of your platform is not scalable or sustainable.

 

spaghetti code
Source: lineofcode.io

 

The code might be too scrambled, or they might have hardcoded things they shouldn’t have, instead of using existing functions, libraries, and packages provided by the technology they are using. For example, if your development team decides to hardcode functions in WordPress instead of using plugins, the website will probably do what it should – for a while.

 

But once WordPress has an update, those hardcoded functions will stop working and you have a problem on your hands. The same goes for JavaScript frameworks or others like them that have a community behind them, constantly improving and updating them.

 

Similarly so, if you bring too many changes to the original functionality, your developers will be forced to re-write functions and add code on top of the existing ones. Like with the example before, these “mutations” will soon become unstable and new unhandled errors will start occurring over time.

 

3. The current architecture is not scalable

Speaking of changes, these don’t just affect the code itself, but they affect the entire architecture. And if your architecture was not built with scalability in mind, to begin with, it will soon become a problem. This is why not rushing the planning phase of the project is such a crucial step.

 

Cardboard box overflowing with numerous brown paper packages.
Source: istockphoto.com

 

For example, you might have started with a database architecture that worked perfectly for your needs initially. However, as your business grows and you add more functionality to your website, that once great architecture might not meet your needs anymore.

 

At this point, changing the architecture might be either very difficult, which will take a lot of time and work. So, it might be easier for your developers to simply rebuild it to meet your current needs, and also find ways to make it more scalable in the future.

 

Basically, if your system does not have a scalable database design, to begin with, it will simply not allow you to scale. It’s as simple as that.

 

4. Limited features or benefits

We mentioned at the beginning closed-source platform, giving Shopify as an example. One of our clients at Kostner.com was facing a similar situation, only their initial platform was built using WordPress.com.

 

If you’re a bit confused, it’s understandable, so allow us to explain. WordPress has two sides – the commercial one, wordpress.com, and the development side, wordpress.org. The first side, the commercial one is in fact a closed-source version of WordPress, with limited access and functionality.

 

WordPress.org, on the other hand, is open-source, and it provides the freedom Kostner, and many others, actually need to grow their business and reach their full potential. So, when Kostner came to us, we agreed that WordPress is a good choice, however, together with Kostner, we decided to move them to the open-source version.

 

Aside from that freedom, an open-source technology means that it has a community behind it, who are contributing to it, improving and updating the technology, and more importantly, they support it. In other words, if there is an error, there is an entire community there to help.

 

Closed-source technologies don’t have that community. They are developed, supported, and updated only by the company behind them, which naturally means fewer features and fewer updates, but also means more errors, more time spent testing, and so on.

 

 

However, even in the situation where you are using open-source technology, if that technology is not quite popular and lacks community and support, you will end up in the same limited situation. So, once again, trust your team and give them enough time in the planning phase.

 

In the planning phase, the team will do research to find the best technology for you. So, if you rush this process instead of taking it one step at a time, they are likely to miss important information and suggest the wrong technology. As a result, your platform will be built on top of something that will not suit your needs and will eventually have to consider a rebuild.

 

5. The rebuild will bring more value than building on top

There are several situations when rebuilding a website will bring more value than building on top, aside from the examples we already discussed. One of them, and probably the most common is after launching an MVP.

 

Usually, MVPs – or minimum viable products – are simple products, rushed to market that have insufficient planning and scoping and are prone to quickly becoming unscalable. This is mostly because most MVPs are not meant to become the final product. They are instead a simple working prototype or are used as proof of concept.

 

how to build an MVP
Source: codobux.medium.com

 

However, many companies see it differently. They see the MVP as the start of the project, the first phase, but still do not invest the necessary time and resources needed for proper scoping and planning. As a result, the technology used to build the MVP, the database designs, and many other such components may be wrong.

 

The same situation applies to legacy systems or outdated systems. If your platform uses an unscalable backend and you would like to build a new feature for it, it doesn’t matter that you are using new and modern technology for it. At the end of the day, that new feature is still built on an old system, which is slowly becoming obsolete.

 

When the day comes and you finally decide to rebuild your backend, that feature will become redundant and will have to be rebuilt to match and work with the new system. So, instead of risking doubling your work, maybe consider a rebuild from the start.

 

6. It costs less to rebuild than to fix or build on top

So far, you can probably already see many benefits of rebuilding a website that has “run its course”, instead of trying to keep it alive at all costs. Revamping the technology used in a company opens new opportunities, helps the platform grow, keeps up the user experience, and costs less.

 

 

Legacy systems - dilbert
Source: https://dilbert.com/strip/2017-02-22

 

That’s right, if you consider a rebuild for your website or app, it could actually cost less than trying to keep a legacy system up and running. For one, as we said before, newer, popular technologies have an abundance of developers working with them which means that there is a high supply of work power, therefore lower costs.

 

Second, when you do find a developer or team that is capable to work with your outdated system, you will want them on retainer. If you’re not sure what that means, you will either have to hire that person or people or pay a very high amount of money for them to prioritize your project and make sure they are available when something goes wrong.

 

In the development world, Murphy’s Law is very applicable – if anything can go wrong, it will.

 

Third, updated frameworks come with pre-built functionality, that has been developed and tested by thousands of developers if not more. They are available to use and stable, unlike a functionality your own developers will have to spend time to code and test.

 

Not only that both of these actions will exponentially grow your development time and costs, based on the complexity of the feature, they will also exponentially grow the chances of bugs and errors, as they do not have the luxury of thousands of users volunteering their time.

 

However, it doesn’t have to be an old technology or a legacy system that stops your growth and drains your funds. For example, another one of our partners, EGN, had their previous website built using Drupal, a very popular and widely used content management system.

 

As a whole, Drupal can do anything that EGN needed, but, most changes required a developer. Naturally, this technical limitation also created a marketing and growth limitation. The marketing department lacked the freedom to create new pages or edit existing ones without support from their development team.

 

So, they made the decision to rebuild their platform using WordPress, using the Elementor Pro page builder and a multisite integration. Not only that this rebuild freed their marketing team and allowed them to perform their tasks easily and without any code involved, but it also ended up costing EGN a lot less than it would have if they kept their former setup.

 

7. Your architecture is not secure enough

Security is an incredibly important aspect of web development and it needs to be applied to both the frontend and the backend. However, some developers tend to undermine the importance of this task, or simply “blame it on the other guy”.

 

In other words, frontend developers will shift responsibility on the backend, and vice-versa. The reality is that both ends need to be secure. For example, if you are collecting user data – usernames, passwords, and other sensitive data – the frontend has to hash or encrypt this information before it sends it to the backend.

 

Similarly, when the backend stores or sends such sensitive information to the frontend, it has to also encrypt it to avoid the risk of data breaches. If one of these sides forgets, refuses, or simply does not consider it important enough to implement a good hashing system, your user data is at risk.

 

Now, the reason why we only mention security as a bonus is that sometimes a full rebuild is not necessary, in many cases a partial one would suffice. For example, if the backend is secure, then you would only need to consider a rebuild for the frontend.

 

Another security risk is having open APIs. APIs, if your not familiar with the term, are services that allow the frontend to communicate with the backend. In simple terms, APIs allow your users to actually interact with the functionality your backend developers created.

 

How apis work
Source: redhat.com

 

However, these APIs also need to be secured, and not open to the public. For example, if you have an API that communicates with your database, and that API is open, a malevolent person can simply access the URL of the API and gain access to your database. From there, they can steal data, make changes in your database, or even delete all of your information. To do that you do need need to be a hacker or even that experienced with development, open API is an easy target even for people with beginner level knowledge.

 

If that happens, not only that all of your user data has been exposed and your database has been compromised but your business is now on the way to failure and if discovered possibly awaiting a massive lawsuit.

 

Once more, a full rebuild might not be needed, but you might have to partially consider a rebuild. So, you should have an experienced development team assess your situation, measure the risks, and provide you with the best solution before that happens.

 

So why should you consider a rebuild?

Be it that your platform is stopping your business from growing, your users are unhappy with its performance or lack of functionality, or worse, because your users’ data is at risk, it is best to keep an open mind. Most times, a rebuild will end up saving you money in the long run, and it might be the best decision for your business.

 

Don’t let a leak in your ship sink your entire operation. And remember that finding new clients once you’ve lost the trust of your recurring ones is ten times more costly. So instead of fighting a battle you will most likely lose, consider this: you are not still using the same computer you first bought back in the ’90s, right?

 

Why should your website or mobile app not receive the same treatment?

 

That said if you feel like you are in any of the situations presented today, or are unsure if your platform is performing at its best, reach out to us and let us help. We can set up a free consultation, identify your problems and work together towards finding the best solution for your business.

 

See More Articles

https://wiredelta.com/support-your-companys-growth/

https://wiredelta.com/find-the-best-web-development-agency/

WE CAN BRING YOUR DIGITAL IDEA TO LIFE TOO

Every business deserves a strong digital presence. But more importantly, every business deserves an experienced digital team that can build the tools you need to grow your business online.