Containers / Development

This Week in Programming: Docker Previews Desktop for Mac M1

19 Dec 2020 6:00am, by

What with the world such as it is — massive government-wide breaches and record daily COVID-19 deaths — we thought we’d kick off this week with just a bit of good news for you developers using Docker on your shiny new Macs: the tech preview of Docker Desktop for M1 is here and, so far, the reviews are good.

If you haven’t yet read about Apple’s new M1 chip, the TLDR; is that it is fast and powerful: “The new chip is said to offer 3.5 times the CPU and five times the graphics performance, as well as up to nine times faster processing for machine learning.”

With at least 1.5M of its users developing on Macs, Docker started working on building a new Docker Desktop that would work on the new architecture last month. Now, the company has announced a tech preview of the new build, though it warns that it is “not release quality yet, or even beta quality,” but rather that they “wanted to let you try it as soon as possible.” According to the post, the company faced three big challenges, not the least of which being that they use Go extensively, which won’t support Apple Silicon until its 1.16 release, which is targeted for February 2021.

One of the big features users can look forward to with Docker Desktop on M1 is multiplatform development, which some users expressed some disbelief toward, but Docker points out that this has been the case for Docker all along.

“Docker has had support for multiplatform images for a long time, meaning that you can build and run both x86 and ARM images on Desktop today,” they write. “The new Docker Desktop on M1 is no exception; you can build and run images for both x86 and Arm architectures without having to set up a complex cross-compilation development environment.”

For those of you lucky enough to already have an M1 in hand, the Docker Desktop for M1 tech preview is available for download, and the company says it expects it to be generally available in early 2021.

This Week in Programming

  • Rust Reviews Its Foundation Conversation: Last week, the Rust team gathered together the community to have a conversation about a Rust Foundation, and now they are offering what they see as the next steps for that conversation. First up, there’s a new survey about the conversation itself, but beyond that, the blog post tackles the basics of how the Foundation and the Rust project relate to one another. Essentially, the mission of the Foundation is to empower the Rust maintainers and, for most Rust teams, the Foundation doesn’t change anything about the scope of their work and decision-making authority — except, apparently, for the core team, which will enjoy a lighter load, as “various legal details” will be handed off to the Foundation. So, if you still have questions about said foundation, make sure to read the FAQ, as it is expected to officially launch early next year.
  • The Rust 2020 Survey Says… the IDE experience is improving, more and more people are using the language, and doing so in production more than ever before. The 2020 Rust survey results, at least according to their reading, appear to show a language making good on its promises of improvement. “Generally, respondents seemed to have a positive picture not only for how Rust has improved over the last year but for the year to come,” they write. “In particular, many noted their excitement for new features to the language such as const generics and generic associated types (GATs) as well as the 2021 edition, improvements to async, the Bevy game engine, more adoption of Rust by companies, WebAssembly and more!”

  • GitHub Says You Still Get to Keep Your IP… Sorta: GitHub is following up on its 2017 release of the Balanced Employee Intellectual Property Agreement (BEIPA) with an updated and revised BEIPA 2.0, driven by community feedback. Version 1.0 was, you see, “more favorable to the employee than usual” in granting exclusive IP rights to either employees (or employers). In BEIPA 2.0, when IP is created outside of an employee’s scope of work but is related to their work, “the employee owns such IP, while the employer gets an unlimited license to use it.”  Other changes include the removal of confidentiality obligations, the addition of a clause around not sharing any information subject to someone else’s NDA or IP rights, and the addition of a “survivorship” clause, which provides that if any terms are found invalid by a court, the others remain in effect.
  • GitHub Bids Cookie Banners and Passwords Adieu: In what appears to be the most exciting news of the week for many, GitHub has said it got rid of its cookie banners by taking one simple step: just not using any non-essential cookies. The banners, you see, all came as part of a European Union law that requires you to use cookie banners if your website contains cookies that are not required for it to work. If you used said cookies, the banner was a workaround. GitHub now says that it has “removed all non-essential cookies from GitHub, and visiting our website does not send any information to third-party analytics services” and that “going forward, we will only use cookies that are required for us to serve GitHub.com.” Cookies aside, the company has set a date on its previous promise to begin requiring the use of token-based authentication, rather than passwords, for all authenticated Git operations: Aug. 13, 2021. Workflows affected will include command-line Git access, desktop applications using Git (but not GitHub Desktop), and any apps or services that access Git repositories on GitHub.com directly using your password.

  • Google’s MLKit Gets Entity Extraction: Google offered a quick update on its ML Kit SDK, which it released six months ago, writing that it is “excited to add Entity Extraction to the official ML Kit lineup and also debut a new API for our early access program, Selfie Segmentation!” The  Entity Extraction API lets you detect and locate entities from raw text, and take action based on those entities, both on static text as well as in real-time, supporting 11 different entities in 15 different languages. Read on for which entities are supported. As for the Selfie Segmentation API, it does exactly what you might imagine, separating the subject of a selfie from the background, making it easy to add image effects.
  • Java Officially Becomes Jakarta: Last up, iProgrammer has the story around the release of the Jakarta EE 9 specifications, which includes the official move from Java to Jakarta. “The move from Java EE to Jakarta EE was necessary because while Oracle handed over the open source version of Java to the Eclipse Foundation, it kept the names ‘Java’ and ‘javax’ and refused permission for their use,” they explain.

Feature image: Happy Holidays from Docker.

A newsletter digest of the week’s most important stories & analyses.