4 ms·
Idk, tony is my programming role model. Fantastic guy, extremely knowledgeable, explains things in very approachable way. Love him to death. He's helped me fix
by killin_dan 9y ago
Idk, tony is my programming role model. Fantastic guy, extremely knowledgeable, explains things in very approachable way. Love him to death.
He's helped me fix MANY stupid type puzzles, and scalaz scumbags ran him out of the entire language.
I mainly do f# and erlang now :(
Scala has plenty of problems aside from the users. I can't begin to explain how terrible sbt is to people who haven't suffered its grasp. Sbt imo is the single most critical obstacle preventing widespread adoption. It's awful.
There's too much politics in the scalaverse. The people are too whiny, the tooling whines even more than the people, and its a damn shame because it's really great code at the end of the day. Its the most fascinating objfunctional I know of, though F# isn't bad at all. Great tooling too, but poor native support.
- walkingolof 9y agoWhat do you find problematic with SBT ? I'm from the C++ camp and I just love SBT, simple and powerful, so I never really understood what the issue was with SBT (i've seen other people complain about it too)
- killin_dan 9y agoToo many weird macros, too many non-english operators, too much weird bullshit with Ivy, that if you install scala from source sbt will fuck it up if you try and do coverage testing on different versions, build times are ridiculous (this has improved quite a bit since I first used sbt, but it's still embarrassingly slow compared to other build systems (FAKE comes to mind immediately, or rebar3 is real nice too, hell I still use rake for when I have an obnoxious code structure with ten million subdirs, and it's great if you use jruby) What's good about it? What about sbt makes it better than any other build tool OTHER than the fact that it lets you use scala? I don't mind that SBT uses a bunch of advanced concepts and type safety, that's fucking AWESOME, but it's so difficult to wrangle it to just build something correctly, it seems like there's such a huge time investment to learning it to a threshold where its features are useful enough to make that investment seem worth it. Several years later, I still have not reached that point. It seemed like such a pain at first to learn other languages (Erlang syntax still confuses me sometimes) but then I started completing components in these languages and there were moments when I started working on prod builds, and using rake, FAKE, rebar3, etc, and it really put into perspective how much time I had been spending internally screaming at sbt to just DO IT already. There will always be a special place in my heart for Scala as a language, and I think it's one of those languages we'll look back on in 3017 and think "Damn, we learned a lot then" but I'm getting over it in my day-to-day work. I'm also being slowly enslaved by .NET corp overlords now, but I've been complaining about SBT for a LONG time before this, and a lot of other people have too, sometimes for the same reasons that I hate it, sometimes for their own special reasons. It causes way too much friction for Lightbend to continue to look the other way. It's cool when you read the list of features, but write a complicated build and look me in the eyes and say you enjoyed it, you just can't.
- eweise 9y agowhy not just use Maven?
- killin_dan 9y agoI don't want to trade a shit for a turd. And I also don't want to learn another jvm build system. I've long awaited a day where scala native can start replacing things, but they've already put their sbt in their coffin.
- tekacs 9y agohttps://github.com/cvogt/cbt https://github.com/cvogt/cbt [0] is under very active, heavy development and seems like a potential beacon of hope to SBT-haters (including myself). The CBT author and community seem determined to genuinely make it a completely viable SBT replacement (it already works pretty well). Given that during the earlier part of my career starting a new SBT project would involve 1 - 2 days of wrangling every time (there's always something simple that needs changing, that's inevitably harder than it need be in SBT), I can't wait to see CBT mature. [0]: In their own words: 'fun, fast, intuitive, compositional, statically checked builds written in Scala'
- cdegroot 9y agoIt'd be the first build system for any JVM language that would be nice. I don't know what it is, but they all seem to come with various amounts of suckage (started with Java when GNU Make was the most advanced option, via ant, maven, gradle, buildr, sbt, ...). It must be the JVM. I worked with Scala for close to a decade now, and my conclusion is that its advantages (type stuff) are mostly theoretical, and its drawbacks (sbt, type stuff, the JVM, slow compiler, the mess of features) are mostly practical. I'm happy to have mostly moved on.
- killin_dan 9y agoWhat do you use now? Have you tried F#?
- pimeys 9y agoWhile not on the same level as Cargo, I'd say l Leiningen is a very robust and nice build system for the JVM. Miles ahead of SBT.
- killin_dan 9y agoYeah but who would want to use clojure of they had a choice to use scala? Lein is what I always wished sbcl had.
- killin_dan 9y ago