GitHub sold for 7.5 billion dollars to Microsoft. Not everyone is happy about the decision, and there has been a lot of discussion about it. Brandon Kelly found immediate repercussions to the acquisition, and GitLab had 10x more repostories than normal on Sunday. Read GitHub’s announcement, Microsoft's announcement, GitLab’s thoughts, GitLab’s response to make Ultimate and gold tier free, and Jason Fried’s prediction of this happening four years ago. Also, make sure you checkout GitHub XP, Microsoft’s OSS track record, Nat Friedman’s AMA, The Linux Foundation’s Reaction and a #1 trending repo on GitHub this week.
It seems to be quite the norm that dev teams struggle to deliver ontime. Tyler Hakes discusses the high cost of poor planning, and how planning should be based on data instead of intuition. Tyler argues dev teams should plan slowly, consciously, and reliably instead of quickly, and automatically, which leads to technical debt.
Good Luck With That Public License is a license for when you want to release code but don’t want to suggest that the released code actually works.
The author has absolutely no clue what the code in this project does.
Learn all about the reverse emulating the NES In Tom7’s video ‘Reverse emulating the NES to give it SUPER POWERS!’. Not to give away too much: he makes a RaspberryPi cartridge, creates NintendoPower-point, and runs Super Mario World on an original NES. Warning: This video gets super NES technical! Too get even more technical and process-heavy watch the 40+ min video of how he made "Reverse emulating the NES’.
Is it possible to write non-trivial codebases in C without going mad? Andre Weissflog reflects on his experience with C and the 32k lines of code across 4 projects he has written. What he learned: 1. Pick the right language for a problem. 2. C + WebAssembly = 💖. 3. C99 > C89. Read the entire piece ‘One year of C’, to get a feel for the current state of C.
Elixir Project Structure was a hot topic this week, and Dave Thomas is not convinced by the current status quo. Joe Armstrong responded to a thread on ElixirForum about the talk that sparked the conversation. Lots of other neat Elixir stuff this week if you're interested: Checkout the recent update from the Elixir team, an Elixir Sagas pattern implementation, and Tensorflex, which brings Tensorflow bindings to Elixir.
Apple deprecated OpenGL in favor of their own bullshit (Metal 2) - Fewer supported open standards is just one of the features in macOS Mojave! Other features in Mojave include a dark mode (see a leaked image of Xcode), updated Mac App store, Create ML a native framework for doing machine learning, and an updated Network Framework -- maybe this means the networking stack got an update and will be less crappy. Let’s just hope that Network Framework 2 doesn't deprecate TCP.
In Semantics and complexity of GraphQL, Hartig and Pérez research GraphQL complexity and produce a formalization for it. The takeaway:
Putting it all together, you can build a robust GraphQL API by rewriting incoming queries into non-redundant ground-typed normal form, computing the expected result size in polynomial time, and then proceeding to execute the query only if the expected size is below an acceptable threshold.
Sergey Matyukevich released a guide for learning operating system development using Linux kernel and Raspberry Pi. This repository is
a step-by-step guide that teaches how to create a simple operating system (OS) kernel from scratch.
Open Source re-creation of Dune II - This was the first RTS I ever played, and I loved it. Now it’s been re-created from scratch in C89. The code’s pretty readable at first glance.
We haven’t seen a good ‘hate on AMP’ article recently, until today. Thank you Jeremy Keith for reminding us how much AMP sucks in your piece AMPstinction. Jeremy argues that from the beginning AMP’s intentions weren’t clear. He argues that AMP would be better thought of as a temporary polyfill instead of the solitary viable framework. Don’t let an advertising company dictate how you communicate with your users, AMP needs to die in a fire.