The beauty of Go. I recently started exploring Go for some of my side projects and was really struck by its beauty.
I realized how beautifully it made a balance between ease of use (generally associated with dynamically typed, interpreted languages), and performance and safety (type safety, memory safety) (generally associated with statically typed, compiled languages). Apart from these, two more features make it really the perfect language for modern systems development. Both these features are explained in more detail in the Strengths section below. One of them is first class support for concurrency in the language (through goroutines and channels, explained below). Concurrency, by its design, enables you to efficiently use your CPU horsepower. The other feature I really like about Go is interfaces.
Vault Project (Complete Introduction) Vault is the latest Hashicorp open-source project.
It’s a client/server tool to securely store & access any kind of secrets like API keys, passwords, certificates etc. There’s a seal/unseal mechanism requiring a defined amount of keys, as well as user access management & control. Various backends are available (like AWS dynamic access keys generation), and various authentication backends are available (like GitHub). It means for example that in a complicated situation (laptop stolen, server compromised…), a single authorized person can seal the vault so the secrets can’t be accessed. You can find a very nice Vault Interactive Tutorial here. Those notes are mostly from the 9-parts-long Getting Started with Vault. Installation. The Next Big Programming Language You’ve Never Heard Of. Getty Andrei Alexandrescu didn’t stand much of a chance.
And neither did Walter Bright. When the two men met for beers at a Seattle bar in 2005, each was in the midst of building a new programming language, trying to remake the way the world creates and runs its computer software. That’s something pretty close to a hopeless task, as Bright knew all too well. “Most languages never go anywhere,” he told Alexandrescu that night. Alexandrescu, a graduate student at the time, could’ve said the same thing to Bright, an engineer who had left the venerable software maker Symantec a few years earlier. Andrei Alexandrescu.Photo: Ariel Zambelich/WIRED. Facebook Introduces ‘Hack,’ the Programming Language of the Future.
Jon Snyder/WIRED Facebook engineers Bryan O’Sullivan, Julien Verlaguet, and Alok Menghrajani spent the last few years building a programming language unlike any other.
Working alongside a handful of others inside the social networking giant, they fashioned a language that lets programmers build complex websites and other software at great speed while still ensuring that their software code is precisely organized and relatively free of flaws — a combination that few of today’s languages even approach. In typical Facebook fashion, the new language is called Hack, and it already drives almost all of the company’s website — a site that serves more than 1.2 billion people across the globe. O’Sullivan and company publicly revealed their new language this morning, and at the same time, they “open sourced” it, sharing the technology with the world at large and encouraging others not only to use it, but to help improve it.
In the Beginning The New PHP. The Julia Language. Out in the Open: Man Creates One Programming Language to Rule Them All. Stefan Karpinski, the co-creator of Julia.
Photo: Brendan Adamson Stefan Karpinski was building a software tool that could simulate the behavior of wireless networks, and his code was a complete mess. But it wasn’t his fault. As a computer science grad student with years of industry experience under his belt, Karpinski was far from a programming novice. He knew how to build software. Dubbed Julia, it provides an early glimpse into what programming languages might look like in the not too distant future. Google Embraces Docker, the Next Big Thing in Cloud Computing. Illustration: Ross Patton/WIRED Google is putting its considerable weight behind an open source technology that’s already one of the hottest new ideas in the world of cloud computing.
This technology is called Docker. You can think of it as a shipping container for things on the internet–a tool that lets online software makers neatly package their creations so they can rapidly move them from machine to machine to machine. On the modern internet–where software runs across hundreds or even thousands of machines–this is no small thing. Google sees Docker as something that can change the way we think about building software, making it easier for anyone to instantly tap massive amounts of computing power. How do you build a container-ready application? Containers are a major trend in deploying applications in both public and private clouds.
But what exactly are containers, why have they become a popular deployment mechanism, and how will you need to modify your application to optimize it for a containerized environment? What are containers? The technology behind containers has a long history beginning with SELinux in 2000 and Solaris zones in 2005. Today, containers are a combination of several kernel features including SELinux, Linux namespaces, and control groups, providing isolation of end user processes, networking, and filesystem space. Why are they so popular? The recent widespread adoption of containers is largely due to the development of standards aimed at making them easier to use, such as the Docker image format and distribution model. The lightweight isolation that containers provide creates a better abstraction for an application component.
Introduction to Docker.