Excel Is Obsolete – Here Are the Top 2 Excel Alternatives from R and Python
Updated: April 26, 2022.
Even in 2022, many companies still don’t consider Excel alternatives. We have seen the full spectrum of use cases of Excel in our time, including some truly scary ones. The goods news is – there is a clear trend of companies switching to Excel alternatives. The bad news is – this is only after losing money and time due to easily avoidable errors and the inevitable, ensuing chaos they bring.
In this post, we’ll explain our take on the proper time to use spreadsheets and when it’s better to consider Excel alternatives. We’ll take a closer look at some of the root causes of the widespread success of spreadsheets and then verify which of these are still relevant and which have changed as technology shifted.
Table of contents:
- Why Spreadsheets Work Well
- Problems with Spreadsheets
- Why Excel is Obsolete for Tech Professionals
- Is Excel Obsolete for Business Users?
- Quick fix: Tableau and PowerBI as Excel Alternatives
- Best Excel Alternatives: Shiny and Dash
- How to Switch from Excel to R Shiny
Why Spreadsheets Work Well
Spreadsheets are an excellent tool and they have proved their usefulness for many decades in a variety of different contexts. The main advantages of spreadsheets are flexibility paired with a simple and powerful reactive computational model. A reactive model means that everything is recalculated in real-time, and when you add new formulas to your spreadsheet, you don’t need to think about the order of computations (as in most programming languages). Simply put: you can do complex work with spreadsheets without having to understand the fundamentals of computer science or code anything. Nice work, Excel!
Spreadsheet formulas are easy to create with only a handful of complex concepts like VLOOKUP or pivot tables. Part of the success of spreadsheets is the What You See Is What You Get (WYSIWYG) layout, which means that you’re dealing with a significantly reduced level of abstraction. Enter a number, enter an equation, and voila – you get results with no coding required.
Don’t bother with Excel alternatives – When spreadsheets are still a good fit
The landscape for spreadsheets has changed in the last couple of years, but they still remain relevant under certain circumstances. Some examples include:
- Correctness is not mission-critical.
- Data is small and formulas are not extremely complicated.
- There’s no need for real-time updates or collaboration, or it is possible to use online spreadsheets (Office 365 or Google Docs) accepting their poor scalability. Microsoft suggests less than 30 concurrent users and Google also has its official limit of 100. Keeping well below this limit is necessary for everything to run smoothly.
- Optimizing the user experience and the interface is not important.
- The solution is temporary, and the spreadsheet will not require maintenance.
In practice, this means it might be a good idea to stay with spreadsheets when:
- The solution is not going to be utilized across the company or its only role is being a scratchpad. Excel reports can be instantly generated by R or Python (and others) to allow business people to play with data.
- Spreadsheets can be useful in the early stages to develop an initial idea with the goal of moving on to a more stable software solution if needed.
- There are no resources for a more bespoke solution.
- It is cheaper than building software, especially for tasks that require a significant amount of manual work, such as tedious and time-consuming data gathering tasks done by entry-level workers.
Problems with Spreadsheets
And the story could end here. But the reality is that the use of spreadsheets has its own challenges and risks. The internet is full of articles covering these spreadsheet problems. We routinely read about CFOs discussing alternatives or JPMC losing more than $6 billion because of a spreadsheet error. More recently, nearly 16,000 coronavirus cases went unreported in England due to a basic Excel formatting error.
The recurring top problems with spreadsheets are always errors and chaos. There is simply too much room for human error with Excel, and it is extremely easy to accidentally break a complex spreadsheet. You could be running your entire business based on fundamental miscalculations or missing data and never know it.
There’s also no option for version control with Excel. This means that once something is broken, it can be very difficult (and sometimes impossible) to fix it.
Why Excel is Obsolete for Tech Professionals
In general, the graphical user interface (GUI) has become much better over time. It’s been a long time since the launch of VisiCalc, and we no longer work with small, monochromatic displays. Rather, we have ready access to powerful devices with impressive graphical frameworks. With accelerating development, people have gotten used to better-looking designs from Facebook, Google, and many SaaS services. Most mainstream computer programs look better and are far more intuitive than when Excel was in its heyday.
The gap between the 2-dimensional grid and custom-made applications gets larger by the day. A lot of business folks expect more than cells. They need interactivity and robust interfaces.
AJAX and WebSockets are technologies that allow for background communication from the browser to the server, making today’s website interactive. AJAX allows for one-way communication – the browser sends requests to the server, while WebSocket works both ways but is more challenging to scale.
The way we use the web has changed as well. Nowadays it is a real-time, collaborative environment. Sometimes it is hard to imagine what the web had looked like without technologies like AJAX and WebSockets. These technologies sparked the change to real-time experience, but today, we take them for granted.
The volume, velocity, and variety of data have also increased with the rise of big data. We’ve seen spreadsheets with vast amounts of data and formulas and hundreds of sheets. The question is whether spreadsheets were intended to be used this way or perhaps a database would be better suited for such purposes?
VBA or Visual Basic for Applications is a programming language that allows for control of many aspects of the host application, including manipulating user interface features, such as menus and toolbars, and working with custom user forms or dialog boxes. The language itself is narrow and limited.
Is Excel Obsolete for Business Users?
The definition of a “business user” varies depending on who you ask. Let’s declare it as a person who knows how Excel works but doesn’t have the time or will to study Excel alternatives, such as R and Python. Can we consider Excel as an obsolete technology in this case?
Well, no. The first version of Excel was released in 1985, which means there are almost four decades of accumulated knowledge worldwide. Sure, the initial release was nowhere near what we have today, but still, the main premise of spreadsheets was there. On the other side, Python was released in 1991, and R in 1993. Tableau was initially released in 2005, and it took additional 10 years for Microsoft to release PowerBI.
Let’s focus on the programming languages first. Sure, Python and R were released relatively close to Excel, but we don’t use the vanilla language for interactive data analysis. The first version of Dash hit PyPI (Python Package Index) in August of 2015, and version 1 was released in 2019. That’s only three years ago! Shiny is a bit older, as it was introduced to beta testers in July of 2012.
The moral of the story is that not all businesses and business users need something more sophisticated than Excel. We also can’t expect them to completely ditch something that was four decades into making for new technology with a steep learning curve. And that’s fine.
Quick fix: Tableau and PowerBI as Excel Alternatives
An easy fix would be to just buy an existing alternative software solution. And this might be the right solution for standard, well-defined, universal scenarios like CRM or Business Intelligence. Of course, these have some other consequences like sacrificing custom functionalities and the ability to make quick adjustments or experiments.
For selected groups of problems purchasing Salesforce or Anaplan might be a solution. Regardless, most companies are going to keep some custom spreadsheets they use as tools. Tableau or Power BI may seem like attractive options, but they do not offer a real solution since one of the most crucial functionalities of these spreadsheet tools is adding and modifying the data. Furthermore, just like spreadsheets, BI tools carry the risk of creating chaos in larger deployments.
Though we recommend R Shiny, Tableau and PowerBI can be solid options for some use-cases. Read our Shiny comparisons Tableau vs. R Shiny and PowerBI vs. R Shiny to figure out which option is right for your specific needs.
Best Excel Alternatives: Shiny and Dash
An ideal solution would provide for rapid development, validation of correctness, extendibility, and adjustability while keeping the same reactive model as Excel. There exist two main alternatives, which fit better into this contemporary landscape than spreadsheets – Shiny and Dash.
Shiny is a web framework created for R which is relatively easy to learn. It is not unusual to see people familiar with R build something on their first day of playing around with Shiny. Learning R is significantly harder than learning Excel. Still, it is orders of magnitude easier than learning any other programming language. This is clearly visible from the number of people with different backgrounds using R.
Want to combine R Shiny and Tableau? Read our guide and create Tableau dashboard extensions with R Shiny.
David Robinson’s talk at the UseR Conference can give you more insight into the industries using R and its fast growth within each.
Dash was introduced for Python with a very similar concept in mind. It allows its users to build analytical web applications from prebuilt components, solely in Python. Dash is built on field-proven technologies like Flask and React. It is probably a little more difficult to learn Python and Dash from scratch when compared to R and Shiny, but this might be the right choice for someone familiar with Python.
How Shiny and Dash beat Excel
It currently appears that Shiny and Dash are the most promising tools to fill the gap. They allow for quick iteration cycles and are much less heavy than other programming frameworks. Both require a person to develop the tool, but so does Business Intelligence software.
The most important features that Shiny and Dash share with spreadsheets are flexibility and a powerful reactive computational model. They are slightly more complex but in exchange, they solve most of the critical problems with Excel.
Source code, which Shiny and Dash apps have, is the only known way to avoid ambiguity and chaos in the long run. Writing code allows encapsulating abstraction and dividing working parts into modules.
Tests are the only effective way to minimize errors. At Appsilon, we proved that both logic and the interface of Shiny and Dash applications can be tested automatically, catching mission-critical errors faster and increasing iterations speed. Those tests can be easily automated and plugged into continuous integration. As a result, bugs are caught sooner, they don’t go into production and they don’t face final users. Fixing those types of errors is several orders of magnitude faster and cheaper.
Want to see some impressive Shiny Dashboards? Visit Appsilon’s Shiny Demo Gallery.
Shiny and Dash are web frameworks. And the web is where you want to be. This gives you all the innovations at hand and independence from huge vendors. The web also means scale. While scaling is not one of Shiny’s biggest strengths, we have managed to scale Shiny applications to hundreds or even thousands of concurrent users for our clients. Scaling Dash seems even more promising as we’ve learned from our deployments.
User experience is also extremely important. Both frameworks allow you to build beautiful business applications. There is no comparison between the UX of spreadsheets and Python Dash or R Shiny frameworks. An intuitive and appealing interface means easier and faster adoption within your company. A tool is only useful if it is actually being used.
Shiny and Dash are not tools for everyone, so not everyone can be a creator, but this group is much larger than you might expect. A developer doesn’t even have to be an Engineer – it can be an ambitious and curious Excel user or someone tired of the limitations of traditional Business Intelligence. Your data analytics team needs at least one Shiny or Dash developer. Needless to say, once the tool is created, anyone can use it and get insights.
How to switch from Excel to R Shiny
Even though it seems that Shiny is a sweet spot now, we are excited to see upcoming innovations in this space. Delivery time for Shiny is a huge advantage, but application performance and scale are important issues for corporate solutions as well. It takes some practice to write Shiny apps that scale effectively, and even for well-written applications, their scalability has limits.
Dash from Plotly is also entering this space and they’re actively working on their dashR package for R as well. We are excited to see competition in this area as this is going to be beneficial for all of us. We expect to see improvements in Shiny both in terms of efficiency and capabilities in the near future, and hope for some movement in the Julia community as well. Escher for Julia proved that a reactive model can be implemented in Julia without much difficulty – sadly the project seems to be no longer maintained.
If you’re ready to try out some Shiny alternatives to Excel, I recommend reading an overview of handy R packages by Marcin Dubel. He shows that you do not have to sacrifice Excel’s table-data functions if you make the switch. If you’re looking to make the jump from Excel to Shiny but you don’t have much (or any) experience with R, read How to Switch from Excel to R Shiny: First Steps. We’ll walk you through how to get started with R Shiny from a standing start.