this post was submitted on 14 Jun 2023
40 points (97.6% liked)
Programmer Humor
32464 readers
444 users here now
Post funny things about programming here! (Or just rant about your favourite programming language.)
Rules:
- Posts must be relevant to programming, programmers, or computer science.
- No NSFW content.
- Jokes must be in good taste. No hate speech, bigotry, etc.
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
100% serious, because my next job uses Go - Why? Everything is painful and takes way more code than it should.
Its compiler is very fast, the libraries are great, importing new packages is easy and straightforward, HTTP libraries and frameworks are some of the best I've worked with.
Compared to Java or C#, there really isn't that much boilerplate.
Why is "the compiler is very fast" a good argument though? I'd rather the compiler spends 1 minute and does it well and optimized instead of 10 seconds and I have to write Go, honestly.
In many cases, for many things, compiling isn't the part that takes the longest in development anyway.
There are some great aspects to Go, like how you can map fields of a struct to json properties for Marshal/Unmarshalling and channels is an interesting idea, but other than that it doesn't seem to me like there's a lot of pros over, say, C# which is almost ubiquitous in many industries these days.
Because after waiting for 10+ minutes for a project to build in Android Studio, something like Go feels like a godsend. Also, you're implying that quicker is worse when it comes to compilers and Golang, which is definitely not the case, and Go's compiler produces very well optimized executables.
Do you think the same project, but written in Go, would compile be significantly faster and if so, why can't the compiler for the Android project achieve a similar speed?
Edit: added "compile", as that's what I meant.
I 100% think it would. Android Studio is hot garbage. Not just the compiler, but the whole build process.
Gradle configuration syncing takes over a minute for the most minor of changes when building a project. Importing a new package in Go takes less than a second in most cases.
Changing a version of any imported package in Android Studio has a 50-50 chance of breaking everything. Heck, even creating a new project in Android Studio has a 50-50 chance of working.
The reasons why Android Studio can't achieve similar speeds are plenty, but here are some:
I'd take C# over Go any day.
You call a function, check for err. You call a function, check for err. You call a function, check for err. You parse a string to a number, check for err.
Some of the ugliest code I've worked in. Just give me a try catch!
Is it fast! I'll give it that.