7 ms·
I completely agree with the heart of this article, and its reasoning for Go's popularity (e.g. familiarity for people who know languages like C and Java). It s
by innocentoldguy 10y ago
I completely agree with the heart of this article, and its reasoning for Go's popularity (e.g. familiarity for people who know languages like C and Java). It speaks to my experiences, anyway.
I went down the Go path myself for a while, because it was familiar, but I found that it had many of the same issues I was trying to get away from in other languages. As the article points out, I also found Go "boring."
After searching for a while, I ended up wanting to use Haskell, but it was taking me too long to become proficient with Haskell's unfamiliar syntax and functionality; which is why, the author posits, Haskell hasn't taken over the world. I ended up using Elixir instead. It offered me the functional paradigm I was looking for in Haskell, and the ease of managing large-scale applications, while also offering a familiar and easy to learn syntax. I'm still studying Haskell, and may eventually employ it professionally, but for now, Elixir is working for me just fine.
- sudshekhar 10y agoAre you using the above languages for your day to day job? Or are you working on your own side projects? If the later, can you give some examples of the things you're building. I've tried learning them several times, but mostly stop after finishing the basic syntax :/
- innocentoldguy 10y agoHello, sudshekhar, I am not using Haskell in my day to day job, yet, but I am using Elixir, and have been since last April. For learning Elixir, I highly recommend Dave Thomas' book Programming Elixir, The Little Elixir & OTP Book, by Benjamin Tan Wei Hao, and the website https://www.learnelixir.tv https://www.learnelixir.tv. You may want to start with the website and jump into the books afterwards. I learned with the two books, but one of my co-workers started with the website, and said he found it quite helpful. I watched the tutorial videos after the fact, and they are quite good. The website https://www.dailydrip.com https://www.dailydrip.com also has a lot of Elixir tutorials (similar to Avdi Grimm's website, Ruby Tapas), but you have to be careful because the older videos contain descriptions of features that are deprecated. I wouldn't bother with Daily Drip until you have a solid foundation in Elixir, and can pick around the deprecated bits. The later videos on Daily Drip are up-to-date though.
- a3n 10y ago> After searching for a while, I ended up wanting to use Haskell, but it was taking me too long to become proficient with Haskell's unfamiliar syntax and functionality; which is why, the author posits, Haskell hasn't taken over the world. Similar experience for me. You can't read Haskell without learning Haskell.
- spudlyo 10y agoI like Go specifically because it is boring. I really enjoy the simplicity of it, which makes it easy to read and understand the core packages. I feel like the language doesn't try to do too much and gets out of my way so I can concentrate on the task at hand. I don't write large complex applications though, thus far I've used it to write programs that fit into Go's sweet spot -- high performance network daemons that do a lot of I/O.
- throwaway949 10y agoGo will lead to a generation of "stupid" developers writing "stupid" code because they were told you don't need "this or that", then the next generation will rediscover things such as functional programming,generics or type classes. Or Go will evolve to something more complex, like every language do and early adopters will be pissed off things aren't like the "good old times" anymore as they are incapable of using constructs they don't understand. Go developers already have that "dumb-down" reputation.
- justicezyx 10y agoI don't think so. Programming abstraction is elevating upwards. Language will play a less instrumental role. Apis are taking over. Ai is becoming a fundamental building block of any non trivial application. What you said could happen, but they are more possible to become even less relevant.
- marcrosoft 10y agoI guess I am a "stupid" developer. I hope Go does not "evolve" to support generics (whatever that is) because me and thousands of others have written Go code that produced value to many without it.
- Zach_the_Lizard 10y agoAnd others of us have wasted thousands of man hours because now we need an interval tree that works with date ranges and numeric ranges. Now we need to generate code (extra build step, slowing down development) or copy and paste (error prone). And then another repo adds another interesting use for this single data structure and that type needs to be supported. And that's one data structure. We've got thousands of developers, many of whom are now writing Go. This comes up all the time and is not a niche use case. At this scale it's quite costly. IMO slapping on even basic Java / C# style generics does not harm you and if anything lets you optionally choose to use higher order functions or novel data structures you can't implement today without reflection.