This Week in Programming: Google’s Golang Heads for the Cloud
Once upon a time, the mention of the cloud would elicit a groan from the more technically apt. Rather than living up to its potential, the “cloud,” for a long time, was simply a “rebranding of the internet.” It was a term used interchangeably for files and services that were not on-premises, whether or not they actually met the tenets of cloud computing, such as rapid provisioning, scalability, redundancy, multitenancy, and so on. If something wasn’t locally installed and running, it was “in the cloud” and therefore the wave of the future.
Actual dream I had: some piece of tech I was working on had the unintended side effect of opening an interdimensional portal, and the demons were coming through, and I was like “hm I should file a JIRA about this”. The rest of the dream was mostly me struggling with the web UI.
— Avi Bryant (@avibryant) July 20, 2018
While many things are still cloud washed, in much the same way companies greenwash their otherwise environmentally unsound products, we are really starting to see the promises of the cloud being fulfilled. This week, Google held its annual cloud conference, Google Cloud Next, and made a number of announcements that look to make it easier than ever for developers to take advantage of the cloud — from serverless to continuous integration and continuous delivery to machine learning and AI.
So, that’s where we’ll focus our attention this week — some of the most interesting new developer goodies that you have to look forward to announced this past week by Google. And for those of you non-Google devs, well, there are a few other news bites we’ll take a look at. Without further ado…
Legacy code is code with value. Otherwise it would be “deleted code”.
Treat it like your home. Sure, it’s not perfect. But if you keep it clean and improve it when you can, you’ll enjoy your time spent in there much more. You don’t need to move to make life better for yourself. https://t.co/vMh7bN5zB6
— samir : Cuddles → Coffee → Code (@SamirTalwar) July 21, 2018
This Week in Programming
- Golang Heads to the Cloud: First up, some news about your favorite Google-backed, open-source language, Go. Google announced this week that it would be “releasing a new open source project, Go Cloud, a library and tools for developing on the open cloud,” taking aim at making Go “the language of choice for developers building portable cloud applications.” As Techcrunch explains it, “Today, developers often have to essentially write their own libraries to use the features of each cloud, but organizations today want to be able to easily move their workloads between clouds. What Go Cloud then gives these developers is a set of open generic cloud APIs for accessing blog storage, MySQL databases and runtime configuration, as well as an HTTP server with built-in logging, tracing and health checking.” Go Cloud is launching with support for Google Cloud Platform and Amazon Web Services, with plans to add support for other providers in the near future. According to the GitHub repository for Go Cloud, “A key part of the project is to also provide a code generator called Wire,” which “creates human-readable code that only imports the cloud SDKs for providers you use” allowing Go Cloud to “support any number of cloud providers, without increasing compile times or binary sizes, and avoiding any side effects from init() functions.” Make sure to check out the samples/tutorial page to get started.
- Google Offers CI/CD with Cloud Build: Continuing with the theme of bringing everything to the cloud, Google also announced this week the release of Cloud Build, its “fully-managed Continuous Integration/Continuous Delivery (CI/CD) platform that lets you build, test, and deploy software quickly, at scale.” According to Techcrunch, the service “works across a variety of environments including VMs, serverless, Kubernetes, or Firebase” as well as “supports Docker containers and it gives developers or operations the flexibility to build, test and deploy in an increasingly automated fashion.” The company also made a joint announcement with GitHub — reaffirming its partnership despite GitHub’s recent acquisition by Microsoft — to provide Cloud Build for GitHub and to deliver “fast, frictionless, and convenient Continuous Integration (CI) for any repository on GitHub, integrated directly into the GitHub developer workflow.” GitHub says that it will automatically “detect Dockerfiles in the root of a repository and automatically suggest you use a CI tool like Cloud Build from GitHub Marketplace if one isn’t already set up.”
- Going Serverless: Noting that it helped “pioneer the notion of serverless more than 10 years ago with the introduction of App Engine,” Google also announced this week that it would be bringing the best of serverless to you. Alongside the launch of Cloud Services Platform, “an entirely new product that lets you increase speed and reliability, improve security and governance, and build once to run anywhere across GCP and on-premises environment,” the company announced several developments to its serverless compute stack. These include new App Engine runtimes, a GKE serverless add-on, and the availability of Node.js 8 and Python 3.7 runtimes in Google Cloud Functions. Overall, these announcements led SDTimes to write that the company was entering “the next step in AI and cloud democratization.”
- The Full Google Cloud Next Recap: Before we move on from Google, here’s the company’s recap blog post that offers highlights from each day. Surely we’ve missed something or left something out, but there’s more to be discussed from the week past! Such as…
- …The Final Android P Preview: That’s right, one last bit from Google — the final preview update for Android P is out this week, unveiling final system behaviors and the official Android P APIs (API level 28). That means it’s time to get testing before the official release hits users.
- Microsoft Offers Quantum Katas: Microsoft announced the availability of a series of Quantum Katas this week “for those who want to explore quantum computing and learn the Q# programming language at their own pace.” The programming exercises offer “a sequence of tasks on a certain quantum computing topic, progressing from simple to challenging” and are available on GitHub. Install Microsoft’s Quantum Development Kit to get started.
- GitHub Learning Lab Adds Four Courses: Continuing with the learning, GitHub also announced four new courses on GitHub Learning Lab this week. The courses cover how to upload and migrate to GitHub, how to be a part of the GitHub community, and a basic intro to HTML. And this reminds me of another learning tidbit that crossed my feeds this week:
- Twitter’s New Developer Requirements: Next up, this article from ProgrammableWeb that outlines Twitter’s new developer requirements, which it says “are likely to irritate some developers and complicate the company’s efforts to rebuild trust with developers.” The requirements affect the way developers will request and obtain access to Twitter’s APIs. First, developers will need to apply for access using a method the company first announced last year, which requires that they “provide detailed information about how they intend to use Twitter’s API” for evaluation. According to the article, these new regulations will also limit apps to “300 combined Tweets and Retweets per 3 hours, 1,000 likes and follows per 24 hours, and 15,000 Direct Messages per 24 hours.”
- Microsoft’s Visual Studio IntelliCode Adds Python: Finally, Microsoft’s AI-assistant Visual Studio IntelliCode has added support for Python, the company announced this week. Surely, by now, you are tired of reading, so I offer you a lovely video to show all that Intellicode has to offer:
Google and Microsoft are sponsors of The New Stack.