
CommunityNews
You probably don't need a DI framework
When working with Go in an industrial context, I feel like dependency injection (DI) often
gets a bad rep because of DI frameworks. But DI as a technique is quite useful. It just
tends to get explained with too many OO jargons and triggers PTSD among those who came to Go
to escape GoF theology.Dependency Injection is a 25-dollar term for a 5-cent concept.
— James Shore
DI basically means passing values into a constructor instead of creating them inside it.
That’s really it. Observe:
Read in full here:
Popular General Dev topics

The overengineered Solution to my Pigeon Problem.
TL;DR: I built a wifi-equipped water gun to shoot the pigeons on my balcony, controlle...
New

Apple’s Tim Cook to take 50% pay hit after shareholder feedback.
‘Target compensation’ for CEO down from $99.4m in 2022 to an expected $...
New

When Zig is safer and faster than Rust.
There are endless debates online about Rust vs. Zig, this post explores a side of the argument I...
New

Declarative GNOME configuration with NixOS.
I adore tinkering with my machine, trying new tools, extensions, themes, and ideas. When I w...
New

50 Shades of Go: Traps, Gotchas, and Common Mistakes for New Golang Devs.
Go is a simple and fun language, but, like any other language,...
New

GitHub - crablang/crab: A community fork of a language named after a plant fungus. All of the memory-safe features you love, now with 100...
New

Christian Mills - Testing Intel’s Arc A770 GPU for Deep Learning Pt. 2.
This post covers my experience training image classification mod...
New

Will Swifties’ war on AI fakes spark a deepfake porn reckoning?
New

We’re a tiny team @deepseek-ai pushing our limits in AGI exploration.
Starting this week , Feb 24, 2025 we’ll open-source 5 repos – one ...
New

Truly independent web browser. Contribute to LadybirdBrowser/ladybird development by creating an account on GitHub.
New
Other popular topics

Hello Devtalk World!
Please let us know a little about who you are and where you’re from :nerd_face:
New

poll
poll
Be sure to check out @Dusty’s article posted here: An Introduction to Alternative Keyboard Layouts It’s one of the best write-...
New

I’ve been hearing quite a lot of comments relating to the sound of a keyboard, with one of the most desirable of these called ‘thock’, he...
New

I ended up cancelling my Moonlander order as I think it’s just going to be a bit too bulky for me.
I think the Planck and the Preonic (o...
New

Hello content creators! Happy new year. What tech topics do you think will be the focus of 2021? My vote for one topic is ethics in tech...
New

In case anyone else is wondering why Ruby 3 doesn’t show when you do asdf list-all ruby :man_facepalming: do this first:
asdf plugin-upd...
New

The V Programming Language
Simple language for building maintainable programs
V is already mentioned couple of times in the forum, but I...
New

Here’s the story how one of the world’s first production deployments of LiveView came to be - and how trying to improve it almost caused ...
New

If you want a quick and easy way to block any website on your Mac using Little Snitch simply…
File > New Rule:
And select Deny, O...
New

Author Spotlight:
Peter Ullrich
@PJUllrich
Data is at the core of every business, but it is useless if nobody can access and analyze ...
New
Categories:
Sub Categories:
- All
- In The News
- Dev Chat (200)
- Questions (30)
- Resources (118)
- Blogs/Talks (26)
- Jobs (3)
- Events (14)
- Code Editors (58)
- Hardware (57)
- Reviews (4)
- Sales (15)
- Design & UX (4)
- Marketing & SEO (1)
- Industry & Culture (14)
- Ethics & Privacy (19)
- Business (4)
- Learning Methods (4)
- Content Creators (7)
- DevOps & Hosting (9)
Popular Portals
- /elixir
- /rust
- /wasm
- /ruby
- /erlang
- /phoenix
- /keyboards
- /rails
- /js
- /python
- /security
- /go
- /swift
- /vim
- /clojure
- /java
- /haskell
- /emacs
- /svelte
- /onivim
- /typescript
- /crystal
- /c-plus-plus
- /tailwind
- /kotlin
- /gleam
- /react
- /flutter
- /elm
- /ocaml
- /ash
- /vscode
- /opensuse
- /centos
- /php
- /deepseek
- /zig
- /html
- /scala
- /debian
- /nixos
- /lisp
- /agda
- /textmate
- /react-native
- /sublime-text
- /kubuntu
- /arch-linux
- /revery
- /ubuntu
- /spring
- /django
- /manjaro
- /diversity
- /lua
- /nodejs
- /c
- /julia
- /slackware
- /neovim