Eclipse Theia 1.0 – Open-Source Alternative to Visual Studio Code
The Eclipse Foundation - home to a global community, the Eclipse IDE, Jakarta EE and over 415 open source projects, including runtimes, tools and frameworks.
OT and CRDT trade-offs for Real-Time collaboration
What do OT (Operational Transformation) and CRDT (Conflict-free Replicated Data Type) really mean? And which one should you use in your real-time collaboration solution?
Dividing front end from back end is an antipattern
We software developers have historically used the terms “frontend” and “backend” to describe work on client-side (e.g., browser) and server-side applications, respectively. This conceptual split has evolved into the creation of specialized developer roles for each, which is still the norm throughout the industry. In…
My C code works with -O3 but not with -O0
v1.2 - added comments from HN v1.3 - added “What does fits mean ?” v1.4 - added the conclusion When something very basic goes wrong, I have this hierarchy of potential culprits: the compiler buggy hardware OS vendor last and least me, because I don’t make mistakes :) So what...
Announcing TypeScript 3.9
Today we're excited to announce the release of TypeScript 3.9! If you're unfamiliar with TypeScript, it's a language that builds on JavaScript by adding
Safely Reviving Shared Memory
At Mozilla, we want the web to be capable of running high-performance applications so that users and content authors can choose the safety, agency, and openness of the web platform. ...
AWS CloudFormation now supports blue/green deployments for Amazon ECS
Discover more about what's new at AWS with AWS CloudFormation now supports blue/green deployments for Amazon ECS
How to write the perfect pull request (2015)
As a company grows, people and projects change. To continue to nurture the culture we want at GitHub, we’ve found it useful to remind ourselves what we aim for when…
GitHub Actions: Organization secrets
You can now create organization secrets, reducing the need to duplicate secrets across repositories. Access policies let you control which repositories have access to the organization secret Updating a secret…
GTK 3.99
This week, we're releasing GTK 3.99, which can only mean one thing: GTK4 is getting really close! Back in February, when 3.98 was released, we outlined the features that we wanted to land before making a feature-complete 3.99 release. This was the list: Event controllers for keyboard shortcuts Movable popovers…
.NET 5.0 – New APIs
Get started with the new exciting APIs introduced with .NET 5.0. Understand the intention of engineers that added them.
Jane Street and the OCaml Compiler (2018) [video]
Jane Street is a quantitative trading firm and liquidity provider with a unique focus on technology and collaborative problem solving.
A New Back End for Cranelift
This post will describe my recent work on Cranelift as part of my day job at Mozilla. In this post, I will set some context and describe the instruction selection problem. In particular, I’ll talk about a revamp to the instruction selector and backend framework in general that we’ve been working on.
Go Developer Survey 2019 Results
An analysis of the results from the 2019 Go Developer Survey.
Project Loom and Structured Concurrency
Project Loom is one of the major “projects” in which Java is moved forward, alongside the perhaps better known projects Amber and Valhalla. It will bring “virtual” threads with low resource footprint and low cost of blocking to the Java plaform. Here is my annual advent season update, this time with a focus on…
How to GraphQL with Ruby, Rails, Active Record, and No N+1
An exhaustive hands-on guide for dealing with N+1 problem in database-backed Ruby or Rails applications that use Active Record and serve the GraphQL APIs
Racket 7.8
Racket version 7.8 is now available from https://racket-lang.org/ Racket CS may become the default Racket implementation in the next release. With the improvements in this release, Racket CS provides all of the functionality of Racket BC (the curre...
New JSX Transform
This blog site has been archived. Go to react.dev/blog to see the recent posts. Although React 17 doesn’t contain new features, it will provide support for a new version of the JSX transform. In this post, we will describe what it is and how to try it. What’s a JSX Transform? Browsers don’t understand JSX out of the…
Why numbering should start at zero (1982)
To denote the subsequence of natural numbers 2, 3, ..., 12 without the pernicious three dots, four conventions are open to us
Why we need a book about naming
Any fool can write code that a computer can understand. Good programmers write code that humans can understand. — Martin Fowler
Windows 10 Hosted App Model
In Windows 10 version 2004, we are introducing the concept of Hosted Apps to the Windows App Model. Hosted apps are registered as independent apps on Windows, but require a host process in order to run. An example would be a script file which requires its host (eg: Powershell or Python) to be installed. By
Embedded Rules of Thumb (2018)
26 April 2018 by Phillip Johnston • Last updated 10 June 2021You may call them guidelines, heuristics, or rules of thumb. No matter, the purpose is the same: to provide a reasonable approximation of the truth. These rules of thumb can help guide your understanding of the systems you work on, focus you toward the ……
Understanding Recursive Queries in PostgreSQL
This article gives a simple introduction with examples to recursive queries in PostgreSQL. It also includes a comparison to Oracle recursive queries.
Go’s Major Versioning Sucks – From a Fanboy
Learn Go (Golang) by writing real code in this interactive course. Practice structs, interfaces, errors, concurrency, and idiomatic backend patterns.