Chapter 1 Let’s Go
Distributed Services with Go — by Travis Jeffery (8 / 84)
👈 Part 1 Get Started | TOC | How JSON over HTTP Services Fits into Distribut ed Systems 👉
Throughout my career I’ve written programs in C, Ruby, Python, JavaScript, Java, Elixir, Erlang, Bash, and more. Each of these languages had a lot of great things going for it but always at least a few things that bugged me a lot. C didn’t have modules, Ruby wasn’t fast enough, JavaScript and its type system made you question your sanity, and so on. This meant that each language had a specific use case, like all the different knives a chef uses. For example, a chef uses a cleaver to cut through big bones. Similarly, I’d use Java when writing big, objective-oriented programs and wanted to make a cup of tea between the time I started the program and it was ready to run. A chef uses a paring knife when making small, delicate cuts, and I’d use Bash when writing small, portable scripts. But I always wished I could find a language that was useful in almost all situations and didn’t irritate me.
Finally, I came upon Go, a language that can:
- Compile and run your programs faster than an interpreted language like Ruby;
- Write highly concurrent programs;
- Run directly on the underlying hardware; and
- Use modern features like packages (while excluding a lot of features I didn’t need, like classes).