Archive for the ‘IDG Insider’ Category

Several years into widespread JavaScript fatigue, the front-end ecosystem isn’t getting any smaller or simpler. The world of front-end testing is also expanding, and the tools tend to be opinionated from framework to framework. This is sort of a double-edged sword. One the one hand, picking a framework narrows the testing options we have to choose from. On the other hand, testing stacks are less portable across frameworks, so we may have to learn a whole new set of tools … Read the rest

Scaling a relational database isn’t easy. Scaling a relational database out to multiple replicas and regions over a network while maintaining strong consistency, without sacrificing performance, is really hard.

ed choice plumInfoWorld

How hard? The CAP Theorem says that you can only have two of the following three properties: consistency, 100 percent availability, and tolerance to network partitions.

A network partition is a break that blocks all possible paths between some two points on the network. Partitions do happen, even if you … Read the rest

Everyone wants faster database queries, and both SQL developers and DBAs can turn to many time-tested methods to achieve that goal. Unfortunately, no single method is foolproof or ironclad. But even if there is no right answer to tuning every query, there are plenty of proven do’s and don’ts to help light the way. While some are RDBMS-specific, most of these tips apply to any relational database.

Whether you’re coding on SQL Server, Oracle, DB2, Sybase, MySQL, or some other … Read the rest

Node.js is a JavaScript runtime, built on Chrome’s V8 JavaScript engine, that’s suitable for implementing both desktop and server apps. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient compared to threaded servers, such as Apache, IIS, and your typical Java server.

While you can implement a web server or app entirely in plain Node.js code, an MVC framework can greatly reduce the amount of code you need to write. MVC (model-view-controller) is a paradigm intended … Read the rest

“The right tool for the right job.” If such wisdom holds true anywhere, it certainly holds true with the choice of database a developer picks for a given application. Document databases, one of the family of data products collectively referred to as “NoSQL,” are for developers who want to focus on their application rather than the database technology.

With a document database, data is not stored in tables with distinct column types. Instead, it’s stored in freeform “documents” with … Read the rest

Amazon Web Services clearly dominates the field. One of the first clouds, AWS is today’s leading choice for good reason. It offers so many options and services under its virtual roof that it’s nearly impossible to summarize the breadth. There are dozens of machine types to choose from, dozens of ways to store data, and hundreds if not thousands of software packages you can use to build out your environment. That’s the definition of the 800-pound gorilla in the cloud.… Read the rest

A new programming gig can be a great path forward—or a dead end you didn’t see coming. Not everyone caught in a heads-down job at a coding sweatshop knows that’s what they were in for when they agreed to the job. So, if you’re one of the 75 percent of developers open to new job opportunities, how can you tell if a new development gig is a good fit before you sign on? Or, more to the point, what’s … Read the rest

So you’re sitting on hundreds of thousands of lines of legacy C++. Oh, who are we trying to kid? It’s millions of lines of Vectran, a short-lived Fortran variant created by IBM in the ’70s. But hey, if it ain’t broke, right?

Except it is broken. Anytime someone tries to add a feature, the thing breaks. Even trying to fix bugs creates more bugs. But if you just don’t touch it, it keeps on working.

The problem is that innovation … Read the rest

During its eight-plus years in the wild, Google’s Go language—with version 1.8.1 out as of April 2017—has evolved from being a curiosity for alpha geeks to being the battle-tested programming language behind some of the world’s most important cloud-centric projects. 

Why was Go chosen by the developers of such projects as Docker and Kubernetes? What are Go’s defining characteristics, how does it differ from other programming languages, and what kinds of projects is it most suitable for building? In this … Read the rest

It’s tempting to think of machine learning as a magic black box. In goes the data; out come predictions. But there’s no magic in there—just data and algorithms, and models created by processing the data through the algorithms.

If you’re in the business of deriving actionable insights from data through machine learning, it helps for the process not to be a black box. The more you know what’s inside the box, the better you’ll understand every step of the process … Read the rest