Readit News logoReadit News
mdaniel commented on Why was Apache Kafka created?   bigdata.2minutestreaming.... · Posted by u/enether
AtlasBarfed · 18 hours ago
I thought Kafka ditched the zookeeper
mdaniel · 12 hours ago
I wish; KIP-500[1] was the "let's use native Raft" implementation but I have never once in my life seen anyone using Kafka in KIP-500 mode

1: https://cwiki.apache.org/confluence/display/kafka/kip-500:+r...

mdaniel commented on Why was Apache Kafka created?   bigdata.2minutestreaming.... · Posted by u/enether
adev_ · 19 hours ago
> Why they'd need Kafka was always our first question, never got a good answer from a single one of them

"To follow the hype train, Bro" is often the real answer.

> If you need a queue, great, go get RabbitMQ, ZMQ, Redis, SQS, named pipes, pretty anything but Kafka.

Or just freaking MQTT.

MQTT has been battle-proven for 25 years, is simple and does perfectly the job if you do not ship GBs of blobs through your messaging system (which you should not do anyway).

mdaniel · 12 hours ago
I presume one will want to use https://github.com/eclipse-mosquitto/mosquitto if going that route because I seem to recall the "mainstream" MQTT project doing a rugpull but since I'm not deeply in that community, I don't have substantiating links handy
mdaniel commented on Shader Academy: Learn computer graphics by solving challenges   shaderacademy.com/... · Posted by u/pykello
FrequentLurker · a day ago
Here is a clean link if anyone wants: https://shaderpark.com
mdaniel · a day ago
Thank you, and now I have a new pattern to watch out for in URLs. After all the energy we just had to go through to rescue all the goo.gl links when Big Evil decided that hosting a redirect webserver was too much trouble for them, and here we go again with share.google - crazypants
mdaniel commented on What is going on right now?   catskull.net/what-the-hel... · Posted by u/todsacerdoti
siva7 · 2 days ago
What the heck, the universal job description of a PM is to genuinely understand the requirements of their product. I'm always baffled how such people stay in those roles without getting fired.
mdaniel · a day ago
For consideration, one can pretty objectively determine a programmer who is not qualified. Secretary. CFO. Sysadmin. How would one judge a product manager? That there's no product? That it sucks balls? "We're soliciting feedback and finding product market fit, iterating, A/B testing, we'll be better next quarter, goto 1"

I wouldn't want that job, but I also don't currently know how to bring demonstrable evidence that they're incompetent, either

I have roughly the same opinion about UX folks, but they don't jam up my day to day nearly as much as PMs

mdaniel commented on Go is still not good   blog.habets.se/2025/07/Go... · Posted by u/ustad
pjmlp · 2 days ago
I never understood the mentality to have SCM urls as package imports directly on the source code.
mdaniel · 2 days ago
Well, that's the problem I was highlighting - golang somehow decided to have the worst of both worlds: arbitrary domains in import paths and then putting the actual ref of the source code ... elsewhere

  import "gopkg.in/yaml.v3" // does *what* now?

  curl https://gopkg.in/yaml.v3?go-get=1 | grep github
  <meta name="go-source" content="gopkg.in/yaml.v3 _ https://github.com/go-yaml/yaml/tree/v3.0.1{/dir} https://github.com/go-yaml/yaml/blob/v3.0.1{/dir}/{file}#L{line}">
oh, ok :-/

I would presume only a go.mod entry would specify whether it really is v3.0.0 or v3.0.1

Also, for future generations, don't use that package https://github.com/go-yaml/yaml#this-project-is-unmaintained

mdaniel commented on Go is still not good   blog.habets.se/2025/07/Go... · Posted by u/ustad
hellcow · 2 days ago
> The fact that it knows about github and the way that it's difficult to replace a dependency there with some other one including a local one.

Use `replace` in `go.mod`, or `go.work` if you're hacking on it locally?

mdaniel · 2 days ago
or go ahead and commit it, if you're galaxy brain and want to throw off would-be attackers trying to understand your codebase https://github.com/pulumi/pulumi/blob/v3.191.0/pkg/go.mod#L5 or https://github.com/opentofu/terraform-provider-aws/blob/main...
mdaniel commented on Go is still not good   blog.habets.se/2025/07/Go... · Posted by u/ustad
SkiFire13 · 2 days ago
> Two types of nil

What in the javascript is this.

mdaniel · 2 days ago
I get bitten by the "nil interface" problem if I'm not paying a lot of attention since golang makes a distinction between the "enclosing type" and the "receiver type"

  package main

  import "fmt"

  type Foo struct{
   Name string
  }

  func (f *Foo) Kaboom() {
   fmt.Printf("hello from Kaboom, f=%s\n", f.Name)
  }

  func NewKaboom() interface{ Kaboom() } {
   var p *Foo = nil
   return p
  }

  func main() {
   obj := NewKaboom()

   fmt.Printf("obj == nil? %v\n", obj == nil)
   // The next line will panic (because method receives nil *Foo)
   obj.Kaboom()
  }



  go run fred.go
  obj == nil? false
  panic: runtime error: invalid memory address or nil pointer dereference

mdaniel commented on Go is still not good   blog.habets.se/2025/07/Go... · Posted by u/ustad
keb_ · 2 days ago
Absolutely no on Java. Even if the core language has seen improvements over the years, choosing Java almost certainly means that your team will be tied to using proprietary / enterprise tools (IntelliJ) because every time you work at a Java/C# shop, local environments are tied to IDE configurations. Not to mention Spring -- now every code review will render "Large diffs are not rendered by default." in Github because a simple module in Java must be a new class at least >500 LOC long.
mdaniel · 2 days ago
I know, both proprietary and enterprise, right? https://github.com/JetBrains/intellij-community/blob/idea/20... (I would also link to the Apache 2 copy of PyCharm but it wouldn't matter to folks who just enjoy shitting on professional tools)
mdaniel commented on Go is still not good   blog.habets.se/2025/07/Go... · Posted by u/ustad
nkozyra · 2 days ago
By choosing default values instead of templatized values?

Other than having to periodically remember what 0-padded milliseconds are or whatever this isn't a huge deal.

mdaniel · 2 days ago
I'm not OP, but I also got tripped up the first time I saw time.Parse("2006-01-02 03:04:05") and was like what the actual?!

https://pkg.go.dev/time#Layout

mdaniel commented on Go is still not good   blog.habets.se/2025/07/Go... · Posted by u/ustad
pjmlp · 2 days ago
Unless it made use of CGO and has dynamic dependencies, always is a bit too much.
mdaniel · 2 days ago
Or the import path was someone's blog domain that included a <meta> reference to the actual github repo (along with the tag, IIRC) where the source code really lives. Insanity

u/mdaniel

KarmaCake day7955May 23, 2010
About
https://MatthewDaniel.com/

[ my public key: https://keybase.io/mdaniel; my proof: https://keybase.io/mdaniel/sigs/ovUHBxc--eowJt65GiqARinI6Y6Hg3J8CRC2EgGA5kE ]

View Original