IT Blog, Web Development,

4 Technologies Which Shaped the Way We Make Software

2 m read
QArea Expert
QArea Expert Marketing Manager
August 5, 2014
Share on
Reading Time: 2 minutes

Have you ever thought why employees at software development companies provide their services and build software in this particular way and not another? Why do we make software in the way we’re used to and what technologies shaped it?

In my opinion, there are 4 technologies which have greatly revolutionized software development services and the way they’re delivered in the last ten years or so. The technologies themselves may seem not that important, but it’s their impact that holds fast on IT even now. By understanding this effect developers will be able to find new ways to fight their issues and build software better and faster.

Here are the top 4 technologies you should look for answers in:

  1. JUnit

The agile trend advocated new and to some extent weird development practices for that time, and the key ones among them were test-driven development and unit testing. Never before the idea of testing code piece by piece seemed possible, not even mentioning that tests can drive the design. Not until the introduction of JUnit.

First a Java unit testing tool, it soon became integrated in development tools due to its easy-to-use nature and compelling interface.

JUnit improved quality greatly and other languages consequently developed JUnit equivalents. Development libraries today have built-in testing facilities, and unit testing is a standard practice today thanks to JUnit.

  1. Lucene

It’s always been very hard to make sense of text without structure and just as well it’s always been critical to analytics. Lucene lies in the core of analytic efforts like sentiment analysis and intelligence gathering.

Written in Java, this technology is profoundly efficient at parsing and analysis of free text. All the familiar text searching capabilities used in development today, e.g. faceting, text highlighting, N-gram and wildcard searches – are all part of Lucene which is the key text mining technology for all platforms and languages.

  1. Node.js

The need to communicate  more data to the increasing number of users connected in different ways conditioned the shift in web apps’ architecture and led to creation of the new leaner and scalable approach, pioneered by Node.js, providing single-threaded and event-driven architectures. In the browser we think in terms of JavaScript while Node.js operates on our server to provide us with minimum waiting time and brings “reactive” applications to life.

  1. Ruby on Rails

At their high level all web apps do the same thing: make an interface allowing programmers to create, query, delete, or update data. But once running a web app in this way took an inadequately long time. And Rails changed that.

Unlike legacy web frameworks which required manual setup and further configuration, delivered common functionality faster using smart conventions and defaults. The framework sparked real a revolution in development productivity as a developer now could connect a basic web app to a database and run it easily in a day. The key Rails themes such as the MVC controller, convention over configuration, and Active Record pattern also influenced all subsequent web application frameworks greatly.

What other technologies do you think shaped the way we build software today and how?

Share on
Privacy Preference Center
Your Privacy

When you visit any web site, it may store or retrieve information on your browser, mostly in the form of cookies. This information might be about you, your preferences or your device and is mostly used to make the site work as you expect it to. The information does not usually directly identify you, but it can give you a more personalized web experience. Because we respect your right to privacy, you can choose not to allow some types of cookies. Click on the different category headings to find out more and change our default settings. However, blocking some types of cookies may impact your experience of the site and the services we are able to offer.

Strictly Necessary Cookies Always Active

These cookies are necessary for the website to function and cannot be switched off in our systems. They are usually only set in response to actions made by you which amount to a request for services, such as setting your privacy preferences, logging in or filling in forms.

You can set your browser to block or alert you about these cookies, but some parts of the site will not then work. These cookies do not store any personally identifiable information.

Performance Cookies

These cookies allow us to count visits and traffic sources so we can measure and improve the performance of our site. They help us to know which pages are the most and least popular and see how visitors move around the site.

All information these cookies collect is aggregated and therefore anonymous. If you do not allow these cookies we will not know when you have visited our site, and will not be able to monitor its performance.

Cookies used

Google Analytics
Functional Cookies

When you visit any web site, it may store or retrieve information on your browser, mostly in the form of cookies. This information might be about you, your preferences or your device and is mostly used to make the site work as you expect it to. The information does not usually directly identify you, but it can give you a more personalized web experience. Because we respect your right to privacy, you can choose not to allow some types of cookies. Click on the different category headings to find out more and change our default settings. However, blocking some types of cookies may impact your experience of the site and the services we are able to offer.

Cookies used

Test Second Test
Targeting Cookies

When you visit any web site, it may store or retrieve information on your browser, mostly in the form of cookies. This information might be about you, your preferences or your device and is mostly used to make the site work as you expect it to. The information does not usually directly identify you, but it can give you a more personalized web experience. Because we respect your right to privacy, you can choose not to allow some types of cookies. Click on the different category headings to find out more and change our default settings. However, blocking some types of cookies may impact your experience of the site and the services we are able to offer.

More Information

When you visit any web site, it may store or retrieve information on your browser, mostly in the form of cookies. This information might be about you, your preferences or your device and is mostly used to make the site work as you expect it to. The information does not usually directly identify you, but it can give you a more personalized web experience. Because we respect your right to privacy, you can choose not to allow some types of cookies. Click on the different category headings to find out more and change our default settings. However, blocking some types of cookies may impact your experience of the site and the services we are able to offer.