Cross-entropy is widely used in modern ML to compute the loss for classification
tasks. This post is a brief overview of the math behind it and a related
concept called Kullback-Leibler (KL) divergence.
Information content of a single random event
We'll start with a single event...
How do cryptocurrencies actually work, though? Join Alice and Bob as they
embark on designing a new digital ledger for secure “Bobcoin” transactions.
Ideally, every function that writes to the stdout probably should ask for a io.Writer and
write to it instead. However, it’s common to encounter functions like this:
func frobnicate() {
fmt.Println("do something")
}
This would be easier to test if frobnicate wou...
As mentioned in Using Renovate to manage updates to golangci-lint versions I very much recommend using Renovate to update your golangci-lint versions.
With the release of golangci-lint v2 a couple of weeks ago, consumers need to perform a one-time migration of their configuration...
#549 — April 9, 2025
Unsub | Web Version
Go Weekly
Faster Shuffling in Go with Batching — Put down that deck of cards.. ‘shuffling’ here refers to moving the contents of an array about. It is based on expensive random inte...
A couple of weeks ago, I joined the lovely Kris Brandow and Ian Wester-Lopshire on the Fallthrough podcast to talk some more about API design.
As I mentioned in I'm on Fallthrough: An Exploration of APIs, Versioning, & HTTP this was a planned follow-up, as we didn't quite cha...
The word2vec model was proposed in a 2013 paper by Google researchers called
"Efficient Estimation of Word Representations in Vector Space",
and was further refined by additional papers from the same team. It kick-started
the modern use of embeddings - dense vector repr...
Quick takeaways
Clean Architecture is most beneficial for complex projects with larger teams - for small teams or simple projects, it can become overengineering.
Separation of concerns is the core benefit - keeping domain logic separate from implementation details makes code mor...