Bag holders seldom make good history

My grandparents migrated to California from Oklahoma after the Dust Bowl. They are honest and simple people, with a deep respect for authenticity (if they did not use so many words). They believe televangelists are preaching for God’s sake, not their credit line’s. They settle for nothing less than a good deal and could never understand why people would pay for “brand.” The elaborate and invisible rules of “class” are not just ridiculous, but also offensive artifice. Why are you acting like you’re better than us and what are you up to anyway? In a way, it’s a very Protestant…


And why you don’t want to have one of many.

Photo by Sammy Williams on Unsplash

I’m gonna get heat for this. And that’s ok, but someone needs to say it:

No more operating systems as portfolios.

I get it, I do. I mean, I really do. My first portfolio was not the ever-popular Windows 98, nor the sleek indie pick MacOS. Oh no, my first portfolio operating system was IBM’s 1988 GEOS.


By starting your first dog grooming business

Photo by Joel Muniz on Unsplash

In case you missed it, AWS announced today that they are releasing the very first alpha launch of the forthcoming AWS Rust SDK. This is a huge step forward in showing that AWS really was serious in their initial support for Rust having actual input from the core Rust team. Now, keep in mind this is an alpha release so I cannot guarantee the quality or correctness of this post in two months time, much less two years, but I will duly try and come back and update any changes.

Without further ado, let’s get started building the database for…


Don’t be such a square!

Photo by Paul Einerhand on Unsplash

Reading back over traits in “The Book” of Rust (that has a biblical feel, doesn’t it?), I realized something that was totally impossible in Go: implementing traits for non-local types i.e. types that you did not create yourself. To see what I mean concretely, let’s say that we wanted to define a square method for floating-point numbers. Sure, it’s actually far fewer keystrokes to just multiply the value by itself, but let’s say we wanna be extra explicit (as things are often better that way). …


With tests! And plenty of apples.

Photo by Priscilla Du Preez on Unsplash

I have been scratching my head lately trying to think of something to do with Go. It’s a perfectly simple, easy-to-use language with a lot of boxes ticked and yet I have been unable to think of anything. Finally, the inspiration struck me: a thread-safe cache with tests. Now, since Go is a relatively high-level language, the actual implementation of this (extremely simple) cache is only wrapper functions around the map data structure. However, it is a good project to get familiar with writing tests and some good Go-isms.

Let’s start my getting our project structure ready. For me, this…


result, result_str, result_str_str…

Photo by Martino Pietropoli on Unsplash

I’ve been programming in Go again recently after a little hiatus and it has unfortunately brought to my attention the language’s lack of variable shadowing.

Variable shadowing is when you can redefine a variable in your scope and it allows you to do things such as:

Eryk Sobiecki

Coder, writer, dreamer, memer, and former Webizen.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store