News from the World of Software Development – December 2017

base-1Welcome to the final 2017 edition of our news digest, where we train our eye on a few stories of interest to software developers and QA engineers. If you are interested in checking out last month’s digest, simply click on the following link. Hopefully, this month’s edition offers some inspiration for your own projects in the coming year and beyond.

WebAssembly gets your Browser Close to the Iron

The venerable and versatile JavaScript language continues to drive browser-based user experiences to even higher levels. Software engineers leverage a vast number of JavaScript libraries to add more functionality and otherwise become more productive when building web apps. We previously covered React Native, one of the most popular of these libraries.

Now, a brand new and potentially revolutionary tool is gaining steam in the web application world. Called WebAssembly, it promises to provide a significant performance boost to web apps by adding a compiled byte code binary library written in JavaScript or other languages. News about WebAssembly is percolating within the industry, including this week’s article in DZone.

WebAssembly, or wasm if you prefer, essentially serves a similar role as the JVM or .NET, but within a web browser. It replaces JavaScript’s own browser-based virtual machine with its own, and improved performance is the primary result. Most importantly, every major web browser on the market now supports WebAssembly.

The following statement from the WebAssembly FAQ hints at speed boost provided by this new format:

The kind of binary format being considered for WebAssembly can be natively decoded much faster than JavaScript can be parsed (experiments show more than 20× faster). On mobile, large compiled codes can easily take 20-40 seconds just to parse, so native decoding (especially when combined with other techniques like streaming for better-than-gzip compression) is critical to providing a good cold-load user experience.   

DZone writer, Federico Tomassetti, feels WebAssembly, and its improvement in parsing performance promises to bring formerly native desktop applications – like virtual reality or high-end video games – into the web browser. In some cases, a browser can execute these applications today, but wasm speeds up the parsing process, greatly reducing load times.

If your team is working on large high-end JavaScript applications, or even any other language that compiles to wasm byte code, WebAssembly needs to be on your radar. It just might be the biggest news in web development in the last decade. Perhaps you’ll read more about it in a future article here at the Betica Blog.

Artificial Intelligence becomes a Business Standard in 2017

AI and its related offshoot, machine learning, are now commonplace throughout the business world. This software-based innovation helps companies with a myriad of tasks: everything from data science to automated driving. SD Times published an article this week covering the inroads AI made in 2017.

The software development process also benefits from machine learning routines performing in a QA role. It is able to detect, fix, and even predict the existence of bugs. The biggest players in the tech world – Google, Microsoft, and IBM – are all investing a copious amount of resources in AI research as well as practical applications for the technology.

The fact the two major tech industry analyst groups – Forrester and Gartner – both predict the continued growth of AI in the business world in 2018 means you likely encounter it sooner than later in your own software engineering work. Hopefully, AI makes you a more productive programmer.

Keep returning to the Betica Blog for additional dispatches from the changing world of software development. Thanks for reading!

The Future of DevOps – in 2018 and Beyond

FUTUREOFDEVOPS-1

With the New Year nearly upon us, our thoughts turn towards the future. In a technology world where transformational changes seem to happen on a weekly basis, it pays to be able to look two, five, or even ten years down the road to better position your career or organization for success. This kind of professional foresight is essential.

When it comes to the software development process, DevOps lets companies deploy applications faster. In a competitive business world, it remains a key differentiator between companies. What does the future hold for this methodology that’s no longer the new kid on the block?

Here are a few DevOps predictions from DevOps.com to inspire your own thoughts towards the future of software development.

DevOps outshine Agile for Application Lifecycle Management

There’s no denying that Agile and DevOps are complimentary methodologies. In fact, we previously discussed how companies already experienced in Agile are better at adopting DevOps. As both mature, however, its greater standardization in tools and procedures is causing more organizations to fully embrace DevOps.

DevOps.com expects this trend to continue, as businesses increasingly turn to DevOps for their application lifecycle management needs.

Continued Adoption of Containers and Microservices

Container architecture – as illustrated by tools like Docker – and microservices fit perfectly in any DevOps operation. Containers allow the easy porting of code between development, QA, and production environments. This velocity is vital for reaching the Holy Grail of most software engineering teams – continuous delivery.

Microservices take the SOA concept to an even more granular level. This allows a development organization to easily scale certain portions of an application constructed using this architecture. Expect both concepts to play an essential role with any organization adopting DevOps.

A Stronger Focus on Cultural Change

Ingrained cultures remain the biggest obstacle to companies attempting to implement DevOps. This is especially the case at larger enterprises. As more companies become successful at DevOps adoption, those still yet to make that jump will focus more on ensuring company cultures sufficiently adapt to make the process easier.

As such, DevOps.com feels culture is the essential prerequisite to DevOps success.

DevOps Organizations continue to win the Race

Companies with a mature DevOps practice are able to deploy software 200 times faster than those who don’t, according to DevOps.com. More than anything, this cold, hard fact drives more organizations to either get with the plan or simply be left in the dust. DevOps cementing its status as an industry standard for software development is a logical expectation.

Data Analytics to rely on DevOps

DevOps.com predicts that DevOps will offer significant benefits to companies performing data analysis on their Big Data stores. The methodology’s enhanced velocity along with its sharply-defined tool set helps these organizations focus on finding actionable information within their masses of data. Automation of these processes also helps.

As DevOps continues to grow into maturity and standardization, expect its implementation to become easier at organizations of all sizes. Soon, new software developers will wonder how we ever managed to accomplish anything before its existence!

Keep coming back to the Betica Blog for additional stories and insights from the wide world of software development. As always – thanks for reading. Enjoy your Holiday Season!

PostgreSQL is a Hot Database Choice yet Again

It seems the venerable PostgreSQL database is garnering a new wave of buzz across the IT industry. Maybe our series of articles on Postgres earlier this year helped contribute to this newfound hipness? Probably not, but modern tech organizations hoping for a cheaper alternative to Oracle while still getting support for NoSQL consider it to be a worthy option.

Let’s look more closely at some of the reasons why PostgreSQL remains one of the hottest databases – relational or not – on the market. Perhaps it makes sense for your team’s next data-centric web or desktop application?

Postgres is actually growing in Popularity!?

PostgreSQL’s increase in popularity caught the attention of InfoWorld magazine, who recently talked about the database’s hot factor earlier this month. In fact, Postgres now ranks as the 4th most popular database in the industry, according to a study by DB-Engines. Not surprisingly, the only three DBs ranked higher are Oracle, MySQL, and SQL Server.

The reasons for the growing popularity of Postgres – especially with younger developers – are numerous. InfoWorld’s writer, Matt Asay notes the improved performance brought by the support for JSON included in PostgreSQL 9.2 and boosted in version 9.4. Another important reason involves programmers growing tired of trying to fit even hipper NoSQL options like MongoDB into solution where a relational database makes the most sense.

Ultimately, in a situation when an old-school DB works best, PostgreSQL’s open source nature is simply more cost effective than Oracle or SQL Server. In fact, Postgres first earned its mojo as a cheaper alternative to Oracle. Still, could this old school database scale fast enough for use in modern web applications?

PostgreSQL and its newfound Scalability

The ubiquitous nature of social networks like Facebook and Twitter puts the onus on modern web applications to be extremely scalable. Most RDBMS options generally provide poor scalability, as did Postgres for most of its existence. Asay notes the introduction of Citus, an extension for PostgreSQL, provides a level of scalability rivaling many of the popular NoSQL databases.

Citus supports Postgres instances across multiple nodes, while providing a distributed model for transactions and SQL queries. These features give this veteran relational database the parallelism required for a massively scalable application able to compete in today’s market place. Take that, Cassandra.

While Citus is available as an open source extension, the company that developed it also offers a commercial version with full support. This is a similar model that EnterpriseDB followed with PostgreSQL itself. Citus provides a great option for shops working with Postgres for development and them implementing Citus for extra scalability before going live.

It also lets companies take advantage of their in-house talent’s database skills without spending on training in the latest NoSQL database options. These bonuses are arguably behind the still growing popularity of PostgreSQL.  Elijah Zupancic‏, the Director of Solutions Engineering for Joyent comments on some of the other core reasons.

“From a developer perspective, it is a pleasure to use. The documentation is wonderful, the data types reflect the types developers work with, and there is little surprising.”

Keep coming back to the Betica Blog for additional insights on software development, testing, and occasionally, databases.