Is Ruby ready for Enterprise?

online training about bugle customer success thought leadership elearning author topic

At first glance, this post may sound a bit "techy", however I'll relax on the technical terms and focus on explaining how a platform’s stack can help achieve demanding requirements at the Enterprise software industry, and how we handle those requirements, at bugle.

First of all, what "Enterprise" really is?

According to the Wikipedia, “Enterprise software is a computer software used to satisfy the needs of an organization rather than individual users.”

Some examples of enterprise systems are:
- Business Intelligence
- Business Process Management
- Content Management System
- Customer Relationship Management
- Learning Management System

Enterprise systems often need to integrate with each other in a broader network of other systems, allowing information to be shared through communication protocols that comprise security and privacy.

Those systems are usually implemented using technologies behind industry giants including Microsoft, Oracle, IBM, SAP, among others.

Then, in such scenario, programming languages like C#, ABAP and Java are very common to appear in those implementations. They carry a lot of built-in features and especially written libraries for the sole purpose of integrating Enterprise systems.

 

Okay, but how about the "Ruby" you mentioned in the title?

Ruby is a programming language created in 1995 and popularized in the tech startup scenario circa 2004.

It's been used, mostly, in the startup environment, which usually is composed by systems that satisfy users rather than organizations. For some, it's quite the contrary of an Enterprise software. All the built-in features and libraries were not written to meet Enterprise requirements by design but focused on "developer friendliness".

 

So, we can argue that Ruby is not ideal for Enterprise software, right?

Not really.

Despite of being biased on the startup scenario, the Ruby on Rails ecosystem is very mature, providing constant community support and security updates.

Along the years, the Ruby community grew organically and has created a large set of tools that satisfy Enterprise requirements.

For instance, Rails (the most popular web framework in Ruby) has evolved a lot and provides top-notch security for Enterprise systems. We can check that by looking at the "Security" section on the Rails documentation, here.

 

The technology behind bugle

Bugle was created in the startup scene aiming to bring a whole new experience to the e-training industry while covering the existing flaws faced by the massive Learning Management Systems (LMS) giants.

So far, bugle has been challenged by many Enterprise requirements from our customers and tried its best to meet those requirements while delivering value fast and frequently.

Bugle's technology aims to satisfy users but, at the same time, to meet organizations’ requirements and needs. In other words, bugle’s main challenge is to make sure users have a great experience while integrating with Enterprise systems that our customers use on a daily basis.

That said, Ruby on Rails was the primary choice for powering the entire bugle platform, as it still remains our main technology since 2014.

 

Cool, but is Ruby a technology ready for the Enterprise?

Short answer, yes.

Let's describe a few features commonly required by Enterprise systems in more detail.

Secure authentication

The most important aspect for every software system is the authentication. At bugle, we rely on battle-tested and secure solutions for dealing with user credentials, such as advanced encryption and password strength checks.

Single Sign-On (SSO)

Corporate customers that hold the user credentials can leverage our platform to perform SSO authentication using protocols like SAML, OAuth2 and OpenID.

On-premises Cloud

Bugle allows customers to have a completely isolated platform in a different server or region in the cloud provider.

Since our applications comprise cloud-native requirements, we are able to deploy anytime, to any cloud provider based on the customer preference, be it AWS, Azure or GCP.

Multi platforms at once

Customers that are organized into a bigger group or corporation holding can manage multi platforms, share content among them and distribute accordingly to their partners or trainees.

Learning Management Systems (LMS)

Customers can create courses either on external course builders and add them to the bugle platform, or export courses created on the bugle platform to an external LMS, by leveraging bugle for distribution and centralized reporting.

White label software

Our corporate customers can create customized themes for their own needs, using custom images and colours, thus giving a unique look & feel to their academies.

Robust permission system

Bugle provides a robust mechanism of permissions, based on roles that can be attached to specific areas on the platform.

Feature toggle

Our platform allows customers to turn on/off features across the platform.



In summary

This brief article focused on enlightening the industry to demystify some misconceptions related to Ruby being applied to the Enterprise environment.

Along with great product engineering and modern UX, bugle has evolved in the e-training scenario by bringing simple yet powerful solutions for the Enterprise industry, powered by Ruby to meet even the most demanding customer requirements.


Check out our "Software Integration - the layman's guide" eBook to learn more about integrating enterprise software with your training platform:
New call-to-action
Here is some additional knowledge you can dive into:

Behind the scenes with bugle’s product team (article)
The benefits of Integration and how bugle’s API can help (article)
7 Training platform integrations to boost your business (article)
12 tips to choose the right training platform (article)

Would you like to learn more about how bugle can help? 
Let's talk.

Writen by Leandro Proença
04-Nov-2021 09:15:00

Share This!