pull down to refresh

So, what's your favorite programming language?
I knew this was coming lol. Python probably, though I don't think I'd be good enough to build something of this scale.
reply
Hmm python. Welp, everybody knows I'm a ruby guy. Can even compile it to C if you want. Know a few good GUI libraries for ruby (adapted from their respective C libraries) as well. Ruby has ruby on rails which is a web framework if you're looking for that.
So next question, of the things you think need built, which of them would have the biggest impact?
reply
You know that would be tough to evaluate, probably would be search.
When it comes to the programming language, python probably would be too slow I reckon. Ruby probably would be a lot better, I wonder how other options might stack up.
Would also probably be a good idea to use one that other lightning projects are being built with to increase possible contributors maybe.
Frankly all software I've done before was either a simple university project, or some dumb bot that's just a front for some API XD
reply
Lot of Bitcoin projects use Rust these days. You could try learning that.
reply
1358 sats \ 7 replies \ @ek 5 May 2023
I have become a Go maxi.
After a long time working with Python and NodeJS software and after the initial weirdness (wtf are channels and goroutines and why should I care), it's feels really nice to work in a statically typed language (without generics however ...) again where concurrency support is built-in with goroutines and channels. It feels soooo much better to have a compiler do type checking for you (in a guaranteed way) even if that means you have to define your types first, so you are slower first. But I would trade runtime errors with compile-time errors any time.
Also, the build process spits out a single binary which can be run anywhere where golang is installed (afaik) and the ecosystem is not a complete mess like Python (looking at you, Python package managers) and NodeJS (npm vs. yarn, CJS vs ESM, Javascript vs TypeScript). I also like how imports work in Go. In Python, you run into this circular import issue pretty fast if you don't try to stay ahead of it.
I also tried to learn Rust but the syntax felt rough. When I tried out Golang, I didn't look back.
@theindranetworkprotocol also made me try out Go. If I remember correctly, he also mentioned here and there how awesome Go is.
reply
I like Go because Go lets me write code and then build the structure as I go. You gotta watch out for race conditions with maps and slices, make sure you isolate things using interfaces to avoid tight coupling, the pattern of passing closures is a good way to keep the code concise and single-responsibility.
The best thing about Go is you can just dive into it. The worst thing about go is that you can just dive into it. The drowning feeling you can get sometimes when you tinker with too many pieces at once inside a concurrent system... thank Linus for Git so I don't have to restart the whole thing from scratch!
What IDE do you use? Mine just expired.
Wait, Go seems to support Generics, lol: https://go.dev/blog/intro-generics
I think I confused Generics with function overloading. This is what Golang does not support. But I was able to deal with it. Was just unexpected but not that big of a deal in the end.
Thanks, will look into it.
reply