Oct 25, 2019 newsletter

You’re looking quite Dapr: Microsoft launches new tool for developers integrating microservices into their app

Microsoft recently released Dapr, a new event-driven runtime built to help developers build microservices-based apps.

Dapr, short for Distributed Application Runtime, exposes a set of common APIs that simplify how developers code against their microservices.

"Dapr codifies the best practices for building microservice applications into open, independent, building blocks that enable you to build portable applications with the language and framework of your choice."

Dapr injects a side-car container or process to each compute unit. The side-car handles event triggers and communicates with the compute unit through standard HTTP or gRPC protocols. Dapr manages communication between microservices via a collection of building blocks that simplify how developers implement distributed system capabilities, such as publish and subscribe messaging between services, state management, service-to-service invocation, distributed tracing, and more.

Dapr is a robust glue tool that takes a low level approach to software micronization to connect various microservices.

Dapr is designed for cloud-first development, which often relies on many modular parts using different languages and development stacks. Dapr can be implemented on any cloud platform and works with any programming language. For example, developers could connect a microservice running Python to another built with Java. Given its flexibility, Dapr’s side-car containers and standard HTTP APIs will also integrate into most existing codebases, designed to help engineering teams integrate legacy code with newer services.

What makes Dapr especially powerful is that it is developer-first, too. According to Gabe Monroy, a director of program management for Azure, "Dapr is developer-centric versus infrastructure-centric."

Developers can write code in their choice of programming language while Dapr abstracts away much of the complexity of microservices communication. Developers worry less about infrastructure and more about building applications.

Dapr is a powerful step in the right direction from Microsoft to simplify the low-level requirements of modern software architecture.


PyTorch gets smarter on mobile devices in its pursuit to dethrone TensorFlow

PyTorch is rapidly closing the functionality gap with TensorFlow.

While TensorFlow gained an early lead as the most robust and feature-rich machine learning framework, PyTorch’s recent announcement of new mobile capabilities makes PyTorch a growing contender for software developers.

PyTorch mobile helps developers build powerful machine learning features on less powerful devices. With an all new end-to-end development workflow from Python to deployment, developers can bring advanced AI algorithms—like computer vision and natural language processing—to Android and iOS to supercharge their apps.

Using machine learning on edge devices improves security and speed while minimizing data traffic to the cloud or on networks. PyTorch needs these mobile capabilities to be a serious option for many engineering teams.

PyTorch often lags behind TensorFlow. Backed by Google, TensorFlow grew quickly and amassed unmatched popularity in the development community. AWS and Azure quickly integrated TensorFlow as a core part of their cloud offerings.

Google’s reputation as an AI juggernaut grew and TensorFlow came to dominate developer mindshare. TensorFlow became the default tool for production-grade machine learning implementations.

Still, PyTorch is growing rapidly and recovering lost ground.

First, PyTorch is growing in academics and research. PyTorch citations in research papers grew 194% in the first half of 2019 alone. Second, its cloud presence is expanding. Alibaba Cloud recently joined Amazon Web Services, Microsoft Azure, and Google Cloud as supported cloud platforms for PyTorch developers.

The next battle is for the edge developer.

While Microsoft pushes its IoT cloud platform and Google tests its Raspberry Pi-like Coral board, PyTorch might be able to hook more developers with its revamped mobile tools.

Edge computing might be a new frontier, but it could also PyTorch’s ticket to widespread adoption.


The deepfake arms race: Amazon is now a part of Facebook’s Deepfake Detection Challenge

Deepfake technology is now more accessible to developers than ever before. As deep learning tools become more advanced and compute power becomes more readily available, big tech is starting to fight back. Amazon is the latest company to jump into the battle to detect deepfake images.

The ongoing war against deepfakes and altered images is being waged on several fronts.

First, governments are turning to regulation to control deepfake technology. California signed into a law that makes it a crime to distribute falsely doctored audio or video of a political candidate before an election. Virginia, Texas, and New York have introduced similar laws dealing with deepfakes.

Second, developer platforms are hoping to limit potentially harmful tools. GitHub removed all open source repositories containing the source code for DeepNude, a tool that created fake inappropriate photos from images of real people.

Third, and perhaps most promisingly, big tech companies are building smarter deepfake detection algorithms. AWS is adding up to $1M in credits for any team that needs cloud computing to complete the Deepfake Detection Challenge, Facebook’s open challenge to create better deepfake detection technology.

Amazon also sees an opportunity to reinvigorate its reputation in the world of artificial intelligence. AWS often loses mindshare to Google, creator of the popular TensorFlow framework and Google Assistant, and to Microsoft, who heavily markets Azure’s AI features.

As developer tools become more difficult to contain, big tech is locked in an arms race to detect deepfake creations. A public challenge open to developers might just be the key to success—and a nice boost to Amazon's AI reputation.


Small bytes

  • Mozilla released Firefox 70 with social tracking blocked by default, privacy reports, and performance gains. Firefox is doubling down on its privacy-first strategy [MOZILLA]
  • NordVPN was hacked after an unsecured server was compromised. NordVPN blamed the server owner [THE REGISTER]
  • Bazel, Google’s open source build and test tool, is now generally available after reaching version 1.0. With its superior speed and usability, Bazel is used by a number of big open source projects, such as TensorFlow and Angular [GOOGLE]

Tools

  • Shoulders lets you quickly view a list of open issues for the open-source packages that your project depends on [GITHUB]
  • Tina is an open-source site editing toolkit for React-based frameworks, like Gatsby & Next.js [TINA]
  • Free-for.dev is a list of software (SaaS, PaaS, IaaS, etc.) and other offerings that have free tiers for developers [FFD]
  • Pretty Quick runs Prettier on your changed files [GITHUB]
  • Lazy enables keyboard-driven commands to manage your surroundings directly from macOS [LAZY]
  • BuilderX is a browser based design tool that codes React Native and React for you [BUILDERX]
Never miss the big news

Every week, our team will send you three of the most important stories for developers, including our analysis of why they matter. Software development changes fast, but src is your secret weapon to stay up to date in the developer world.

Featured articles
AI Ethics: How Diverging Global Strategies Open a Gaping Regulatory Void

Today global initiatives on AI are a series of regulatory and ethical gambles—a dangerous, potentially existential game.


Can Master Chief win the day for Microsoft Azure?

Why the Xbox will be Azure’s unlikely hero.


Churn Baby, Churn

Understanding churn rates can help developers be more productive and write quality code

Made with by Software. Read more about our mission.