Programming Languages

This Week in Programming: Dart 2 Arises from the Ashes

3 Mar 2018 6:00am, by

Dart, Objective-C, CoffeeScript, Lua, Erlang. What does this list of programming languages have in common?

If your answer is “the five worst programming languages to learn in 2018” then you’d be in agreement with a survey put out by Codementor. According to the report, these languages “top the list of coding languages that developers should avoid learning in 2018 due to their lack of community engagement, jobs, and growth.”

And even if that wasn’t your answer, I’m sure you read that and said to yourself “Yep, that sounds about right.” But perhaps one or two other announcements this week will change that for at least one language on the list — Dart.

Already, we’ve seen what a big company like Google backing a language can do for its popularity — (cough) Kotlin (cough). This week’s news in the programming world has a bunch coming from the Mobile World Congress over there in Barcelona, and leading it for us is Google’s announcement of Flutter beta 1. Flutter is Google’s new mobile UI framework for native interfaces for both iOS and Android.

How does this relate to Dart, you ask? Well, Flutter itself is written in Dart, as are all Flutter-based apps.

Meanwhile, Google also announced a Dart 2 Reboot, according to Application Developer Trends, which says that Google has “revamped” Dart by adding strong typing and other optimizations. The devs over at Jaxenter, meanwhile, says that they have “been eagerly awaiting all the major changes this release has in store” and that “Dart 2 is something of a major reboot for the language, bringing it closer in line to what its creators originally intended.”

So, while 2017 version of you — the one who may have said not to learn Dart when asked by some survey three months ago — may not agree, perhaps the 2018 version of you should take up Dart after all.

This Week in (Google) Programming

  • Let The AR Begin: In one of many pertinent announcements by Google this week, the company also announced ARCore 1.0 alongside updates to Google Lens, it’s Google Goggles replacement. While the Google Lens updates don’t really fall under the pretense of programming, ARCore is Google’s augmented reality SDK for Android that lets you build apps just like it. With this release, ARCore has left beta and is now ready for production, meaning you developers can now publish AR apps to Google’s Play Store. ARCore, the company says, works on 100 million Android smartphones, including 13 models, and will soon work on devices by Samsung, Huawei, LGE, Motorola, ASUS, Xiaomi, HMD/Nokia, ZTE, Sony Mobile, and Vivo. Version 1.0 also includes “improved environmental understanding and that enables users to place virtual assets” and is supported in Android Studio Beta in the Emulator, allowing desktop virtual environment testing.
  • Enter Google In The Chatbot Arms Race: Last week, Atlassian announced it was opening up its Stride API to developers, and now Google is following suit with the release of its Hangouts Chat platform and API. The move has been expected for a while now, as Google had already talked about Hangouts Chat, its “messaging platform for enterprise collaboration on web and mobile.” As the company notes in the announcement, however, “more interesting is that starting today you’ll be able to craft your own bot integrations using the Hangouts Chat developer platform and API.” Though Google calls Apps Script “one of the easiest ways to create and deploy bots,” it will also support Python, Java, PHP, Go and more on Google App Engine or whatever language you please on your own Google Compute Engine instance, or other public or private cloud.
  • No More Non-SDK Android Interfaces: Heads up Android developers, Google also announced this week that it would be working to improve stability by reducing the usage of non-SDK interfaces, as using such interfaces “risks crashes for users and emergency rollouts for developers.” Following a 2016 restriction of allowed C/C++ symbols, the next release of Android will expand these restrictions to include the Java language interfaces of the SDK. For the full details on how this might break your existing apps, make sure to give the announcement a full read, but Google says that “it is an explicit goal of our planning and design to respect our developer community and create the absolute minimum of change while addressing app stability.” In short, though, “if your app currently relies on non-SDK interfaces, you should begin planning a migration to SDK alternatives.”
  • Google Actions: And finally, Android developers can finally build Google’s “actions” (think Alexa’s “skills”) in 16 languages, including Hindi, Thai, Indonesian, Danish, Norwegian, Swedish, and Dutch. In addition, actions are also now also able to use askForPlace, a new conversation helper that uses the Google Places API to understand location-based user queries mid-conversation.

This Week in (GitHub) Programming

  • A New GitHub App for Slack: If you’re not one of those IRC diehards, chances are you use Slack. Ang GitHub. Well, the two companies have partnered to release a new GitHub and Slack app. According to GitHub’s announcement, the new app “brings GitHub activity right into your Slack channels to keep your teams up to date and productive,” allowing you to subscribe to GitHub repositories and automatically see updates from new pull requests, issues, code reviews, and deployments. The Slack/GitHub integration is open source and built with the publicly-available APIs. Visit the GitHub repository for the integration if you want to contribute code, submit feature requests or bug reports.
  • GitHub Desktop 1.1 Is Here: Next in a series of bigger and smaller announcements by GitHub this week, we have GitHub Desktop 1.1, which features “a fresh release” of the Electron app. The newest features of GitHub Desktop 1.1 include syntax highlighting in diffs, a pull request list, which displays open pull requests alongside the branches for the current repository, co-authored commits, and the ability to see which pull requests pass commit status checks and which need more work. For the full details, check out the release notes.
  • Adios to Weak Cryptographic Standards: We mentioned this when it was announced, so here it is again — GitHub will no longer support weak cryptographic standards. It has permanently removed support for TLSv1/TLSv1.1, diffie-hellman-group1-sha1, diffie-hellman-group14-sha1 on github.com and api.github.com.
  • PHP Pull Requests: Finally, GitHub has added a feature to review changed functions in your PHP pull requests with a change to the file finder that lets you navigate to changed methods and functions right in you pull requests. By searching the file finder for the term function or the name of a changed function in a PHP file, you will get a filtered view of the results to help identify the most impactful parts of a pull request. If that fails to make sense, check out the documentation.

This Week in (Non-Affiliated) Programming

  • Ruby’s Just-In-Time Compiler: The latest version of Ruby, affectionately called Ruby 2.6.0-preview1 by its friends, has been released and introduces an initial implementation of a JIT (Just-in-time) compiler. The JIT compiler will improve Ruby program execution performance by printing C code to a disk and spawning common C compiler processes to generate native code. Right now, the release is mostly a chance to check out platform compatibility and determine security risks — most optimization has yet to be implemented. For details on how to try out the preview, check out the announcement.
  • The 2017 Go Survey Says: We here at The New Stack have our own take on the way, but the Go 2017 survey results are in, as I’m sure you’ve likely heard. Here’s the super-fast gist of them: Go is popular and people are making money using it. And people who use Go, well, they like Go, too. For the full details, check out the results yourself or check back here for our full write-up.
  • Java EE Is Dead — All Hail Jakarta EE! And finally, in the biggest news of the week by far (we certainly saved the best for last) Jakarta EE is the new name for Java EE! With just under 7,000 responses, nearly 65 percent unsurprisingly chose “Jakarta EE” over the alternative “Enterprise Profile.” Does “Enterprise Profile” sound anything like the name for a language? Oh also, don’t be calling it EE4J, that’s a solid no-no, apparently.

Google is a sponsor of The New Stack.


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

View / Add Comments

Please stay on topic and be respectful of others. Review our Terms of Use.