My all-in-one software solution stack explained
To help the startup and small to medium business also leverage the powerful functionality and feature of what big companies use, my new software stack accommodates all clients from very small to bigger businesses. I can now deliver, stable, quick and automated solutions to help business owners grow their business and full-fill their needs. A system that is more economically viable for a business and less risky to implement.
Why I wrote this article
So it has come to my understanding that some find it difficult to understand what I am doing right now and what service I am delivering at the moment. I came to realise that my new services are a bit too Greek/technical to explain to clients. So I decided that I need to write something that everyone can understand and show real world use-cases. I will start out with a non-technical explanation and only get more technical at the very end. So you get the most important part at the beginning and can decide if you want to pull the plug if the section gets too complicated to follow.
So about 2 years ago I started to realise that I cannot deliver the complete all-in-one solution to clients. That is not the only reason. I also got tired of studying and customising other developers code for 4 years strait. Since every piece of software can be written in a 100x different ways and each developer use his own methods to write software it gets a bit long in the tooth. Don’t get me wrong, I have learned a lot and seen a lot of useful software structures and useful techniques on my journey. But it was time to change and pursue my passion into custom developed solutions. To achieve what I wanted to do, it looked like I needed to learn another 4x additional coding languages and frameworks ?. To me this was not the best approach and a waist of time, because it takes allot of time to get acquainted with a new coding language and on top of that to understand another framework for each coding language your acquire. So I needed an all-in-one solution not only to write software for clients, but starting out my own software projects of which I want to create businesses from.
My goal was to specialise in one technology stack to perform:
- Apps that live within websites that connect to databases and services (Single Page Applications.)
- Custom developed website front-ends that loads, at least, under 1 second in a web browser. That is fast, scalable, and secure. Headless setups.
- Software as a service (SaaS), software served via a server in the cloud to a website as an additional software component/functionality.
- Native mobile applications for Android and iOS.
- Intranet Software Solutions, Cloud-based apps that runs on a server but on a intranet.
I was also tired to restrict myself to one platform like PHP & MySQL that I use to code custom features and plugins for WordPress and WooCommerce. I wanted a solution that could run on almost any platform imaginable. Cross-platform compatible. So that my software solutions is not limited by another language or software platform as almost any other language or platform utilise my new software stack in some way or another.
To me as someone that is not only a developer, but a business owner for the last 19 years I needed to find something that not only made business sense, but will satisfy my client’s requirements in every single way. Also, be affordable and will show a return on investment. I needed to find a solution that can cater to all markets big or small. It also needed to be something another developer could easily take over if I start to hire developers to work on bigger projects. So I went on a quest for months to find a technology stack/coding solution to achieve this. I found my ultimate stack and boy o’boy the more I use it to build out systems for clients the more I love it!
My New stack
Let us first start with what is possible and let’s use real-world examples. See I don’t expect even a medium-sized business to use all the features that these applications utilise. You might be familiar with some of these apps and also have some idea what they are capable off. Just think how you can incorporate these functionalities/features into your business.
So every time you turn on your TV, mobile or computer to watch Netflix, know that it was built with React front-end.
Showmax is an online streaming services that started in South Africa also developed with a React front-end.
They build most of the interface on React. Facebook is also a very good example of what components are. Every single block you see on Facebook is a component. Every single block component is separately developed and maintained. This is the true power of React. Every single component/block a user can interact with, without requiring the whole webpage to reload. How cool is that?! Sorry I can’t get over it! Do you know how frustrating it was in the past to develop custom websites and you need to reload the webpage every…, single…, time…, to see your changes? It was not fun. Lets not even get started testing on a shared hosting server.
Since Instagram is owned by Facebook, the user interface is another React example. Their mobile app is also developed with React Native.
Yes, ladies and gentleman. That “hard to put down” little app called WhatsApp was developed utilising React.
Dropbox, a Mass Online file storage platform also developed with React.
Airbnb developers also a contributor to the React Library. I am actually using some of the features Airbnb developed in my apps. No need to reinvent the wheel.
Uber – React + Node
Uber is running over 4000 micro services in their live production environment. They rely both heavily on React and NodeJS Server.
Discord – The ultimate online gaming messenger app.
Everything from their website to their desktop and mobile apps is running a React user interface. It hard to state this sometimes as by the time you read this they, the software company, could have changed to something else. So please just take note.
The yahoo website is using React since Facebook also owns yahoo.
The mail client for Yahoo mail also utilises a React interface.
e-Commerce & Websites
I have development for most of my development career on WooCommerce, but after playing with a React-Build e-Commerce environment it is something from another planet. It is fast, scalable, and fully customisable. You know the problem like with WooCommerce and other CSM e-Commerce systems? There are always features missing to fit in 100% with your business model. I have seen this countless times, that is what I have been doing for the last 4 to 5 years. If the features are available, it is not 100% what you need. Most of the time, these available solutions is bloated with stuff you do not require. So in return, your server has more work to perform and slows down the overall user experience. Just something I also need to mention is that if you go for a reactive front-end, we can still make use of your existing e-commerce CMS back-end. It becomes known as a headless setup. All these big e-commerce sites like Amazon, Takealot (S.A.) is custom build software solutions to cater for their client’s and their own needs. This is to give their customers a unique experience, because they are in full control of their own software and does not rely on CMS platform or plugin developer to one day bring on the requested changes, or to finally fix that bug.
More examples of React build websites and e-Commerce websites
Please note the speed and flexibility these websites in the examples below. Add items to the cart and check out the filter process. Its instant! Browse between the pages. Take note how snappy it is going from page to page. It is because the whole site gets loaded in the user’s browser, memory, and does not have to reload every single time when you go from page to page. These sites are also not stuffed with unnecessary code or features so it makes the application itself very light and fast to serve to users.
e-Commerce example – demo only.:
Real Websites examples:
There are hundreds of more examples to showcase. We can even drill down into each feature, but it is going to turn this post into a book, very quickly. Now think of what we can achieve with your requirements or ideas? The sky is not the limit anymore.
I have not even started to scratch the surface. There is so much to talk about this technology stack; it will literally take days around a table. All you need to know is that this tech will be wonderful for your business and budget depending on your requirements.
Now I can deliver the full boutique to a client by only utilising one language and its available frameworks and libraries.
Then I got asked the other day, but are you not a high risk, because if something happens to you, who will continue on the apps you write? How did Microsoft start, WordPress, Facebook, Linux – Unix, Apple? All by a single creator taking it one-step at a time that was later joined by other developers to turn it to the giant software companies it is today. In Baby Steps, and to answer your question, there is a whole community out there that can easily take over any project of mine and also note this software stack was not born yesterday. It has been in the market for a few years now. My solutions is all documented, and the code is commented for any developer to easily take over and they will be up and running in no-time if they know what they are doing.
So if you have an idea for a website app or mobile app or if you want to automate a manual business process, please get in contact, I would like to know more and help you with it.
The technical parts, you can stop here if you want to. It just a breakdown of the tech I use.
Breakdown of my Development Stack
REACT DEVELOPER (Development)
In React every single element like even a button is a component. You can change the components or extended on. They each render and function in their own app state. React use a memory allocation called state which is used to add, update, remove data from memory. It uses a render method to asynchronously update each individual component’s content without requiring a complete page reload. So basically your app can start out small with only a handful of components and can later become this full-blown application with many components. If you need to bring on changed, you just add more components to the existing app or if you need to change a component you just change that one component. The whole app does not require a rewrite. So can you see that the continued work on an app like this will be cheaper to maintain than a regular legacy app. I mostly use React to build out single page applications.
NODEJS DEVELOPER (Development)
REACT NATIVE DEVELOPER (Development)
I have seen website-version-mobile-apps that looks and operate exactly like native apps does, but there are some differences. It is not really a big problem if your app is small. If you are looking for true speed, stability and want to have access to almost all the operating system features and hardware function of the mobile device then you require a native solution like React Native. It was quoted that React Native is faster and is packaged smaller than apps that has coded in Java or Objective-C, because with Java and Objective-C the more features you require the more libraries you need to add to your code. Most of the time, you only require one feature from a library, but the whole library is injected into the app. This increases the application size and these apps also use more hardware resources.
If you like to find out more or have an idea for an app or even want to automate an existing process, you need to perform manually, then please get in touch and tell me more.