CommunityNews
Revisiting interface segregation in Go
Object-oriented (OO) patterns get a lot of flak in the Go community, and often for good
reason.
Still, I’ve found that principles like SOLID, despite their OO origin, can be useful
guides when thinking about design in Go.
Recently, while chatting with a few colleagues new to Go, I noticed that some of them had
spontaneously rediscovered the Interface Segregation Principle (the “I” in SOLID) without
even realizing it. The benefits were obvious, but without a shared vocabulary, it was harder
to talk about and generalize the idea.
Read in full here:
Popular Backend topics
New
A short history of ReScript (BuckleScript).
It takes time to write such a post for a non-native speaker like me, but I appreciate what t...
New
Is Rust Used Safely by Software Developers?.
Rust, an emerging programming language with explosive growth, provides a
robust type syste...
New
A conversation with Laurent Mazare about how your choice of programming language interacts with the kind of work you do, and in particula...
New
Multicore OCaml by kayceesrk · Pull Request #10831 · ocaml/ocaml.
This PR adds support for shared-memory parallelism through domains and...
New
Building a Neural Network in Pure Lisp without Built-in Numbers using only Atoms and Lists.
A neural network written in pure Lisp withou...
New
Why Rust should not have provided unwrap.
I see the unwrap function called a lot, especially in example code, quick-and-dirty prototype ...
New
Some Thoughts on Zig — Sympolymathesy, by Chris Krycho.
One of the biggest things Zig has going for it—especially compared to Rust—is th...
New
Introducing Trilogy: a new database adapter for Ruby on Rails | The GitHub Blog.
We’ve open sourced Trilogy, the database adapter we use...
New
Perfecting WebGPU/Dawn native graphics for Zig.
A 700+ commit complete rewrite of mach/gpu (the WebGPU interface for Zig) has been compl...
New
Other popular topics
Machine learning can be intimidating, with its reliance on math and algorithms that most programmers don't encounter in their regular wor...
New
Andy and Dave wrote this influential, classic book to help their clients create better software and rediscover the joy of coding. Almost ...
New
Brace yourself for a fun challenge: build a photorealistic 3D renderer from scratch! In just a couple of weeks, build a ray tracer that r...
New
Learn from the award-winning programming series that inspired the Elixir language, and go on a step-by-step journey through the most impo...
New
Design and develop sophisticated 2D games that are as much fun to make as they are to play. From particle effects and pathfinding to soci...
New
New
I am asking for any distro that only has the bare-bones to be able to get a shell in the server and then just install the packages as we ...
New
New
I have always used antique keyboards like Cherry MX 1800 or Cherry MX 8100 and almost always have modified the switches in some way, like...
New
Build modern server-driven web applications using htmx. Whatever programming language you use, you’ll write less (and cleaner) code.
...
New
Categories:
Sub Categories:
Popular Portals
- /elixir
- /rust
- /wasm
- /ruby
- /erlang
- /phoenix
- /keyboards
- /python
- /js
- /rails
- /security
- /go
- /swift
- /vim
- /java
- /clojure
- /emacs
- /haskell
- /typescript
- /svelte
- /onivim
- /kotlin
- /c-plus-plus
- /crystal
- /tailwind
- /react
- /gleam
- /ocaml
- /elm
- /vscode
- /flutter
- /html
- /ash
- /deepseek
- /zig
- /opensuse
- /centos
- /php
- /scala
- /react-native
- /lisp
- /textmate
- /sublime-text
- /nixos
- /debian
- /agda
- /deno
- /django
- /kubuntu
- /nodejs
- /arch-linux
- /ubuntu
- /spring
- /revery
- /manjaro
- /lua
- /julia
- /diversity
- /quarkus
- /markdown









