Modal Title
CI/CD / Data Science / Machine Learning / Open Source / Serverless / Software Development

This Week in Programming: Oracle, Lawnmowers, and Open Source

Oct 7th, 2017 6:00am by
Featued image for: This Week in Programming: Oracle, Lawnmowers, and Open Source

With Oracle OpenWorld this week, there was much Oracle-centric news, so we’ll start with a round-up around some of that, before moving on to a series of announcements from the likes of PostgreSQL, Komodo, Python, Google, Mozilla, and Kotlin. Beyond that, we’ve seen a handful of great tutorials and think-pieces around topics such as code migration to React 16, no-code machine learning, blockchains, and yet another data-driven look at the greater programming ecosystem. It’s been a busy week and there’s a lot of ground to cover, so without further ado…

  • First, we wrote earlier this week about Oracle’s new serverless options and the open-sourcing of Fn, which “is targeted at bringing serverless computing onto any platform.” This comes alongside a Kubernetes-based “container native application development platform.”
  • InfoWorld takes us through the rest of the Oracle announcements this week, starting with the new changes to Java EE as the Eclipse Foundation begins its adoption. With cloud and microservices capabilities still expected, the foundation will be open-sourcing the Java EE technology compatibility kits (TCKs), which are used to check for compliance with Java standards, and get rid of what Eclipse Executive Director Mike Milinkovich termed a “pay-to-play model” under Oracle.
  • Next, Microsoft’s Azure Functions serverless computing platform will finally get Java, joining JavaScript, C#, F#, Python, PHP, Bash, Batch, and PowerShell. And along similar lines, Microsoft’s Visual Studio Code gains Java debugging capabilities “including launch/attach, breakpoints, control flow, data inspection, and a debug console.”

Now, if you’ve been paying attention to all this week, you may or may not have noticed the less covered “news” out of Oracle, which comes in the form of a response to the “Presidential Executive Order on Strengthening the Cybersecurity of Federal Networks and Critical Infrastructure.” While on one hand the company may be offering new, open source services as mentioned above, at issue with some is the company’s claim that open source software use in the private sector has been “rapidly declining” and that “there is no math that can justify open source from a cost perspective as the cost of support plus the opportunity cost of forgoing features, functions, automation and security overwhelm any presumed cost savings.” Techdirt offers a full write-up on the snafu, which it dubs “Oracle Tells The White House: Stop Hiring Silicon Valley People & Ditch Open Source“.

Moving beyond Oracle, we have a bunch of announcements this week:

  • PostgreSQL 10 was released with “significant enhancements to effectively implement the divide and conquer strategy, including native logical replication, declarative table partitioning, and improved query parallelism.”
  • The quickly growing, statically typed language Kotlin delivers version 1.2, bringing with it an “experimental multiplatform projects capability [that] lets developers reuse code between supported target platforms: JVM and JavaScript initially, and later native.”
  • ActiveState launched Komodo IDE 11, which SD Times summarized as adding “a revamped code intelligence system” as well as “new debugging functionality, integration with the popular,  smarter autocomplete, and a host of other features to minimize setup, more efficiently manage projects, and enable developers to code smarter and faster.”
  • For you Google app developers out there, Google announced new languages, device support and features for Google Assistant.
  • And finally, Mozilla continues its support of open source projects with more than a half a million dollars in awards to open source projects, including “the webpack project, a popular JavaScript module loader” and “mod_md, an Apache module which speaks ACME, the automated certificate issuance protocol, to make it easier for websites to deploy and use secure HTTP.”

Now that we’ve covered the bases, we can look at some of those more thoughtful pieces that have caught our attention in the past week:

  • First, we have a study on which languages are bug-prone, which examines “the effect of language features such as static versus dynamic typing and allowing versus disallowing type confusion on software quality.” It turns out that “language design does have a significant, but modest effect on software quality” and “it does appear that disallowing type confusion is modestly better than allowing it, and among functional languages, static typing is also somewhat better than dynamic typing,” with “functional languages […] somewhat better than procedural languages.”
  • Continuing with my predilection for nearly everything that crosses the pages of the StackOverflow blog, we get yet another data-driven look at programming languages, this time with a mapping of the ecosystems of software development. This time around, the blog looks at the connections between different languages and technologies, offering a neat relational map that is fully interactive. Seriously, go click around and check it out.
  • Last week, we took a look at all the hubbub around relicensing React, which sort of overshadowed the simple fact that Facebook had just announced a rewrite of much of its front-end library. This week, the great migration begins, and the folks at Discord off some lessons from migrating a large codebase to React 16, including some thoughts on the why, how, and subtle surprises along the way.
  • Google offers a fun little experiment called Teachable Machine, which allows non-coders a chance to play with machine learning, but also gives coders access to the open-source library deeplearn.js alongside the open-source code for Teachable Machine.

  • If the above video is familiar, it may be because someone has tried to explain the blockchain to you before. Fear not, Hacker Noon is here to save the day with a tutorial on learning blockchains by building one in Python.

And finally, a thoughtful piece on how software is about storytelling, which implores readers to stop looking at technology in a vacuum and instead try to understand the context. Oftentimes, it argues, documentation is neglected and only explains how, not why, a certain technology was created the way it was. This often leads us to discard it, as if the creators were lesser than us, rather than trying to have empathy and understanding for the circumstances of its creation. From the piece:

Storytelling in software is important. Without it, software archeology is simply the study of puzzles created by time and neglect. When an organization doesn’t record its history, it’s bound to repeat the same mistakes. A company’s memory is comprised of its people, but the fact is people churn. Knowing how you got here often helps you with getting to where you want to be. Storytelling is how we transcend generational gaps and the inevitable changing of the old guard to the new guard in a maturing engineering organization.

That’s all for this week. We’ll leave you off for now with a funny talk, via the always provocative Bryan Cantrill, comparing Oracle’s Larry Ellison to a lawnmower, lest you ascribe the company’s greater intentions around open source:

Google and Microsoft are sponsors of The New Stack.

Group Created with Sketch.
THE NEW STACK UPDATE A newsletter digest of the week’s most important stories & analyses.