How Pyroscope (OSS) does compression 10x better than gzip
Pyroscope is software that lets you continuously profile your code to debug performance issues down to a line of code. With just a few lines of code it will do the following:
The challenge with continuous profiling is that if…
“Debugging is like being the detective in a crime movie where you are also the murderer.” — Filipe Fortes
I know from personal experience that debugging performance issues on Python servers can be incredibly frustrating. Usually, increased traffic or a transient bug would cause end-users to report that something was wrong.
More often than not, it’s impossible to exactly replicate the conditions under which the bug occurred, so I would be stuck trying to figure out which part of our code/infrastructure was responsible for the performance issue on our server.
This article explains how to use flame graphs to continuously…
Since I started my journey in Software Engineering three years ago, there have been plenty of times that I’ve found the field to be non-inclusive. The most egregious of these is in the term “master-slave” architecture and the fact that I start off every day on Github requesting updates from “master.”
Even worse is that in Software Engineering “machines” are often called “workers” so I’ve heard people at work discuss “killing the slave [workers]” when talking about taking down servers.
Recently, Github made a transition from labeling their main branches as the “master” branch in an effort to promote more…
After a couple months of starting (but not finishing) several game prototypes, about a month a go I decided to commit to actually publishing one.
I knew I wanted to start with a game concept that was simple enough to build from beginning to end, but complex enough to require demonstrating many of the game development practices that I’ve learned.
The game that I settled on is a clone of a simple 2d puzzle game with a twist: the puzzle is a video instead of a static image.
A few years ago, I came up with a plan to make $10,000 per month. I had gotten comfortable in my role at work and I wanted to start working on a side project idea that would generate some “passive” income.
One day, a coworker of mine helped me solve (what I thought was) the last problem preventing me from starting and I told him that I was going to start working on it that night. But, after a few months of no updates he asked, “Whatever happened with that project you were working on?”.
As it turned out, I…
I think it’s fair to say that Augmented Reality (AR) is still in its “gimmicky” phase. People know about it, but it’s not quite taken seriously in a business context yet.
However, many popular products we use today had to go through a “gimmick” phase to get to where they are. And given recent trends in mobile hardware, one could make the argument that some day augmented reality will be part of our everyday lives.
One of the more practical present-day uses for augmented reality is adding effects to videos in popular apps like TikTok, Instagram, Skype, and Snapchat.
For most, writing a resume is one of the most boring activities on the planet. When I recently re-wrote mine, I couldn’t tell whether I was more dissatisfied with the tedious process or with the bland final result (or both?). As a former software engineer, making a resume in the standard professional format felt like building a website’s landing page with no CSS styling.
For example, let’s use Twitter’s landing page, which is designed to quickly give users direct snippets of information, in a similar way to how resumes are designed. …
In 2017, after four years of business school and internships at PwC, Google, and Goldman Sachs I made a decision not to pursue business at all.
I had always been on the business side of technical products but after seeing the kind of value that the engineers provided, I decided I wanted to learn how to code.
When I asked software engineers this question, they usually advised me to start with a language or a framework, but their answers were varied and sometimes even in direct contradiction of each other.
Being overwhelmed with choices of where to start, I ultimately…