#545 — March 12, 2025
Go Weekly
TypeScript's Compiler to Get 10x Faster, Thanks to Go — TypeScript has shaken up the JavaScript ecosystem in recent years with an increasing number of developers relying on its strong typing and added structure. TypeScript’s compiler isn’t particularly fast, though, but the TypeScript team at Microsoft is changing that by porting it to Go!
Anders Hejlsberg (Microsoft)
📺 The Syntax podcast had Anders on for an episode discussing the whole porting process. Lots of details for those who want to go deeper.
Why Reimplement TypeScript's Compiler in Go? — Many people have been asking why Microsoft is porting TypeScript’s compiler to Go rather than, say, Rust or C#. TypeScript’s architect Anders Hejlsberg delivered the definitive comment on the matter: Go fit the technical requirements and proved the best high performance language to which to port JavaScript for a variety of reasons.
Microsoft's TypeScript Repo
🔒 Protect Against AI Bots, Fraud, and Abuse in Real Time — With WorkOS Radar you can detect, verify and block harmful behaviour, protecting your app with advanced device fingerprinting. Stop fake signups, stop free tier abuse, and stop bot attacks and brute force attempts today.
Workos sponsor
New Low-Level Tools for Garbage Collection Efficiency — A look at two new features offered by Go 1.24’s garbage collector: runtime.AddCleanup and weak.Pointer. Cleanups are like finalizers, but get around some of their quirks by not resurrecting objects they’re attached to. Weak pointers, meanwhile, let you reference objects without preventing their garbage collection.
Michael Knyszek
💡 The Go team has updated the Go garbage collector docs with info about the above features.
Different Ways of Working with SQL Databases in Go — Starting with a simple schema presenting a basic blog system, Alex walks through a variety of approaches from working with raw SQL and database/sql to sqlx, using ORMs, and sqlc.
Alex Pliutau
Building a Secure Session Manager — The stateless nature of requests to a webapp demands some sort of session management, most commonly via a cookie containing a unique ID to identify the user. Mohamed looks at a way to keep this whole process secure.
Mohamed Said
💡 Mohamed follows on with Implementing Cross-Site Request Forgery (CSRF) Protection in Go Web Apps.
Using Cursor for Large Projects — If you’ve tried using tools like Cursor to write Go code in larger projects, you’ll have almost certainly run into its limitations. Thierry has some tips for adding a bit of structure to the ghost in the machine.
Thierry S. (Stream)
Sign Up for a Workshop to Get Started Building Go-Powered Decentralized Apps — App builders, Go enthusiasts, tinkerers: come and build on gno.land, a smart contract platform for a freer, fairer world.
gno.land sponsor
📄 Building Cross-Platform SDKs: From FFI to WebAssembly – Another story where Cgo reared its ugly head and forced a different approach. Mark Phelps (Flipt)
📄 The Benefits of Native FIPS Support in Go 1.24 Derek Parker (Red Hat)
🛠 Code & Tools
RobotGo: Native Cross-Platform GUI Automation — A way to control the pointer, keyboard, read the screen, etc. Combine this with an LLM perhaps.. if you dare?
V Caesar et al.
ghw 0.15.0: A Go Hardware Discovery/Inspection Library — Find out things about the memory, CPU, storage, network support, and similar things about the host computer. Focused on Linux and Windows, with partial macOS support.
Jay Pipes
ObjectBox Go 1.9: A Fast, Embedded Database for Go Objects — Store objects in ObjectBox and find them again using powerful queries.
ObjectBox Ltd.
-
🤖 Ollama v0.6 – Tool for running and managing large language models. v0.6 adds support for Google's new Gemma 3 model.
-
Gum v0.16 – Tool for creating stylish shell scripts with customizable utilities.
-
Semantic Search 0.4 – Library for embedded vector searching and semantic embedding generation with
llama.cpp. -
Ark 0.3 – Entity Component System (ECS) for Go.
📰 Classifieds
📢 Elsewhere in dev
A quick roundup of some other interesting stories in the broader landscape, in case you've missed them:
-
The HTTP Archive has finished publishing their Web Almanac for 2024, a fantastic resource of information about how technologies are really used on the modern Web in areas as diverse as HTTP support, security, and JavaScript.
-
A developer is facing potential jail time for deploying a 'kill switch' into his employer's systems to perform nefarious actions if he were to be removed from the company's staff directory.
-
🐘 If you've got Postgres SQL query plans you need to analyze, these are some of the tools to try.
-
🤖 Esteemed LLM-whisperer Simon Willison drops a ton of insights and tips on how he uses LLMs to help him write code.