Have you felt the pain of using Active Record on a large codebase? How about messy controllers? Well, you should probably enter to win a free copy of Ryan Bigg’s Exploding Rails. We are giving away 3 copies of it!
This week Google announced Knative, their new open-source project that powers GKE’s serverless addon. You can read the official announcement here. Then, Mark Chmarny shares details and discusses how you can "build, deploy, and manage modern serverless workloads using Knative on Kubernetes". Knative provides Kubernetes with building blocks for container build orchestration, eventing, and request-driven compute. More interesting discussion in the announcement thread on the orange site.
Elixir announced the release of version 1.7. This version is summed up as a Quality of Life improvement version. Documentation, error handling, logger reporting, ExUnit and more are all getting some love for an improved Elixir developer experience.
Discord provides hope for using React Native with iOS. Fanghao Chen suggests React Native on iOS allows for faster iteration of UI components and over the air patches. Some issues the Discord team has ran into are immature long lists, startup delay, and high-priority updates. Luckily for you, Fanghao has some advice of how to deal with all of these issues; read the whole article to tackle these issues and a couple more. However, don’t read these articles if you are hoping to use React Native for Android, because Fanghao (and Discord) at this point doesn’t think it is worth it.
New requirements for developers are coming to Twitter. In a move to kill most 3rd party apps on Twitter, accounts will have new limitations on Tweets, Likes, Follows, and more. If anything you develop depends on Twitter’s API, you might want to look at the API platform roadmap.
The Go programming language team announced a new OSS project called Go Cloud. The project aims to help developers that are building portable cloud apps. Read the announcement, checkout the repo, or see what other people are saying with orange site discussion. The project is built atop of Google's new CI/CD tool Cloud Build. Read more about Cloud build in Techcrunch's write up.
Ryan Baker discusses API patterns can drive UX for web applications. Ryan talks through timeouts, minimum wait times and retries. These patterns help reduce UX variability and keep the user informed of what is going on in your application. Ryan also shares code implementations of each pattern.
Webpages have doubled in size, over the last three years. The average now is over 2MB.
Matt Butcher implores you to Be Nice and Write Stable Code in his software architect-hat exposition on the importance of Semantic Versioning and Stable APIs. He discusses a variety of use cases for expanding an API without breakage, and some common mistakes that are made that cause backwards-incompatibility. Well-written and actionable.
Learn Q# and quantum programming with Microsoft’s newly open sourced Quantum Katas. The Katas are coding exercises covering Basic quantum computing gates, Superposition, Measurements, and the Deutsch–Jozsa algorithm.
Blaine Osepchuk argues Uncle Bob’s book Clean Architecture is poorly organized and silent on improving existing systems. Blaine recommends reading other books on development architecture such as Clean Architecture and Patterns of Enterprise Application Architecture instead.
New interesting Elixir projects abound. Mustafa Turan shares Elixir EventBus, a library that allows different Elixir modules to communicate with each other in a decoupled fashion. Faraz Haider provides his introductory Elixir project Lispex, a Lisp interpreter in Elixir. Finally, we saw the first public release of Membrane Framework: a multimedia framework (think Gstreamer replacement) that is written in Elixir and C.