Nice Readings About Go, Python, and Technical Management

Reading time ~1 minute

I sometimes find interesting information in books that I do not find on the internet and that’s why I’m reading a lot. I read quite a lot of books recently and some were not worth it, but some were great, so let me share it with you here!

Go In-Depth

If you already know the basics about Go (Golang) and want to go deeper, The Go Programming Language (Donovan & Kernighan) is a great book.

Personally, before reading this book I had developed several projects in Go but I was still missing important points about the Go language, especially about the spirit of the language and how to be idiomatic. This book really helped me. It starts with the basics but goes very deep by talking about reflection, testing, low level programming,… Examples are very concise (I hate reading too much code in books) and related to useful real life scenarios.

Go and Concurrency

If you feel the book above does not go far enough about concurrency, you can read Concurrency In Go (Cox-Buday).

This book is very short and to the point. It really emphasizes best practices about concurrency (in general, and more particularly with the Go language). This book gives you patterns that you can apply in your own concurrent programs.

Tips and Tooling in Python

Python is quite an old language so many great tools exist around this language (libraries, frameworks, etc.). It’s not easy to have a clear view about all the possible options though. The Hitchhiker’s Guide to Python! (Kenneth Reitz) summarizes everything you should know about Python’s ecosystem. It can save you a lot of time. Careful: this is not a coding book!

Technical Management

If you are a in charge of a team of developers you already know that this is a very tough task. If you’re not yet, be prepared! In both cases it’s important to work on it. Managing and leading people is a very difficult job, especially in the programming field (lead developer, technical manager, CTO, …). This book was a great help to me: Managing the Unmanageable (Mantle & Lichty). It does not overwhelm you with theoretical concepts about management but instead gives you lots of very useful tips easy to apply.

Conclusion

If you read one of them please let me know your thoughts!

Existe aussi en français

API Rate Limiting With Traefik, Docker, Go, and Caching

Limiting API usage based on advanced rate limiting rule is not so easy. In order to achieve this behind the NLP Cloud API, we're using a combination of Docker, Traefik (as a reverse proxy) and local caching within a Go script. When done correctly, you can considerably improve the performance of your rate limiting and properly throttle API requests without sacrificing speed of the requests. Continue reading