Open source isn’t the community you think it is

Name your favorite open source project, and the odds are good—very good—that a small handful of contributors account for the vast majority of significant development thereof. The odds are just as good that most of those contributors work for just one or a few vendors. Such is open source today, and such has been open source for the past 20 years.

So, does that mean open source is really just commercial software by another name?

Source: New feed

What’s new in the Sails Node.js framework

Sails, an MVC web framework for building Node.js applications also known as Sails.js, is now in Version 1.0 production status, featuring an async/await capability from the ECMAScript 2017 specification that promises to improve developer productivity.

Async/await promises sizable gains in productivity and fewer lines of code. It lets server-side JavaScript code be written with the await keyword, instead of using lower-level, more-fragile flow control functions such as nested callbacks and promise chains. “Callback hell,” the most common source of bugs and stability issues in Node.js and Sails applications, is ended with async/await. Developers also are freed from manual error handling after every database query.

To read this article in full, please click here

Source: New feed

How to get started with AI—before it’s too late

AI and machine learning are going to start making a lot more decisions. They probably still won’t be used in the near future to make “big” decisions like whether to put a 25 percent tariff on a commodity and start a trade war with a partner.

However, nearly anything you’ve stuck in Excel and massaged, coded, or sorted is a good clustering, classification, or learning-to-rank problem. Anything that is a set of values that can be predicted is a good machine learning problem. Anything that is a pattern or shape or object that you just go through and ”look for” is a good deep learning problem.

To read this article in full, please click here

Source: New feed

Sensors and machine learning: How applications can see, hear, feel, smell, and taste

Through the power of deep and machine learning, faster CPUs, and new types of sensors, computers can now see, hear, feel, smell, taste, and speak. All these senses take the form of some kind of sensor (like a camera) and some kind of mathematical algorithm, usually a supervised machine learning algorithm and a model.

Here is what is available.

See: image and facial recognition

Recent research into image and facial recognition lets computers not only detect object presence but detect multiple instances of similar objects. Facebook and Google have really been leading the way here, with multiple open source releases. Facebook has stated that it has a goal of detecting things in video.

To read this article in full, please click here

Source: New feed

5 common pitfalls of CI/CD—and how to avoid them

Devops may be one of the haziest terms in software development, but most of us agree that five activities make devops what it is: continuous integration, continuous delivery, cloud infrastructure, test automation, and configuration management. If you do these five things, you do devops. Clearly, all five are important to get right, but all too easy to get wrong. In particular, continuous integration and continuous delivery (CI/CD) may be the most difficult devops moves to master.

Continuous integration (CI) is a process in which developers and testers collaboratively validate new code. Traditionally, developers wrote code and integrated it once a month for testing. That was inefficient—a mistake in code from four weeks ago could force the developers to revise code written one week ago. To overcome that problem, CI depends on automation to integrate and test code continuously. Scrum teams using CI commit code daily at the very least, while a majority of them commit code for every change introduced.

To read this article in full, please click here

Source: New feed

Skip containers and do serverless computing instead

Normally, mainstream enterprises are slow to embrace cutting-edge technologies, with startups and other early adopters setting the pace on everything from public cloud to NoSQLs. Serverless computing, however, just might be different.

Serverless, first popularized by AWS Lambda, has seen “astonishing” growth of over 300 percent year over year, according to AWS chief Andy Jassy. Ironically, that growth may be driven by the “laggards,” as Redmonk analyst James Governor calls them, rather than the techno-hipsters.

To read this article in full, please click here

Source: New feed

GitHub’s tool reduces open source software license violations

GitHub has open-sourced its Licensed tool, a Ruby gem that caches and verifies the status of license dependencies in Git repos.

Licensed has helped GitHub engineers who use open source software find potential problems with license dependencies early in the development cycle. The tool reports any dependencies needing review.

Source: New feed

AWS Lambda tutorial: Get started with serverless computing

If laziness really is one of the virtues of a great programmer, then AWS Lambda is like a developer’s holy grail. With Lambda, you don’t have to spin up any servers, or configure or patch them, or pay for them to run hour after hour and week after week. You don’t even have to write much code.

AWS Lambda is about getting the job done with least effort—and little cost. You write simple functions and wire them to a request or an event, and Lambda executes those functions whenever that request or event occurs. You get charged only when your code actually runs.

(Insider Story)
Source: New feed

Git essentials: Get started with Git version control

This article introduces you to Git, including how to install the necessary software to access Git servers where your software project will be stored.

Version control concepts

To understand Git and the concept of version control, looking at version control from an historical perspective is helpful. There have been three generations of version control software.

The first generation

The first generation was very simple. Developers worked on the same physical system and “checked out” one file at a time.

To read this article in full, please click here

Source: New feed

Big data analytics with Neo4j and Java, Part 1

Relational databases have dominated data management for decades, but they’ve recently lost ground to NoSQL alternatives. While NoSQL data stores aren’t right for every use case, they are generally better for big data, which is shorthand for systems that process massive volumes of data. Four types of data store are used for big data:

  • Key/value stores such as Memcached and Redis
  • Document-oriented databases such as MongoDB, CouchDB, and DynamoDB
  • Column-oriented data stores such as Cassandra and HBase
  • Graph databases such as Neo4j and OrientDB

This article introduces Neo4j, which is a graph database used for interacting with highly related data. While relational databases are good at managing relationships between data, graph databases are better at managing n-th degree relationships. As an example, take a social network, where you want to analyze patterns involving friends, friends of friends, and so on. A graph database would make it easy to answer a question like, “Given five degrees of separation, what are five movies popular with my social network that I have not yet seen?” Such questions are common for recommendation software, and graph databases are perfect for solving them. Additionally, graph databases are good at representing hierarchical data, such as access controls, product catalogs, movie databases, or even network topologies and organization charts. When you have objects with multiple relationships, you’ll quickly find that graph databases offer an elegant, object-oriented paradigm for managing those objects.

To read this article in full, please click here

Source: New feed