ups and downs
Month summary - October 2023
Month summary · Issue of October 2023

Month summary — October 2023

Tue 31 Oct 20237 min read45 links

I am aggregating here some more or less interesting stuff of various IT related materials which I came across this month. Some of them are strictly related to the things I did or am currently doing.

Quoted from the source

01Some thoughts

This month, I spruced up my Python API and background workers on Google Cloud Platform repo. It’s a neat package with a simple app and all the setup for FastAPI, CloudRun, and PubSub. Just a fun little project showcasing Python on Google Cloud – check it out!

By the way, last month I gave a lightning talk at PyCon CZ based on this repository.

PyCon CZ.

02Articles

13 links
graphite.dev

What is a merge queue, and does your team need one?

Merge queues aren’t right for every team and whether or not your team needs a merge queue depends on a number of factors.

dwdraju.medium.com

How “It works in my machine” turns “It works in my container”?

Let’s dive into why the “It works in my container” situation arises.

learningdaily.dev

When Taylor Swift crashed Ticketmaster: A lesson on scaling for spikes

In general, it is a good practice to brace for 10 billion system calls by deploying all the mitigation tactics mentioned above (caching, elastic demand, graceful degradation, etc.).

careercutler.substack.com

How to get more interviews, offers, and higher compensation at top tech companies

Main takeaways from the live event discussion from over 35 years of experience.

jarvispowered.com

You don’t hate JIRA, you hate your manager

I’m usually not one to run to the defense of a specific technology, especially one I hate. Though, I think it’s important that people hate things for the right reason.

vadimkravcenko.com

Managing difficult software engineers

This guide is born out of those countless interactions, conversations, and experiences.

smashingmagazine.com

Designing Accessible Text Over Images: Best Practices, Techniques, And Resources (Part 1)

In this two-part series of articles, Hannah Milan covers the best practices when using various accessible text over images techniques for designing your web and mobile app content. These practices can help you to make the text over images more accessible while retaining an aesthetically pleasing look. Get ready to deep-dive through the subtle changes in your design, such as the text’s position, size, and background style, and explore the importance of using real text for accessibility purposes, as opposed to using images of text.

startcodingnow.com

3 Git Configuration Tips I Use Every Day

If you want to move past add, commit, and push, keep reading.

caddyserver.com

Automatic HTTPS

Caddy is the first and only web server to use HTTPS automatically and by default.

blog.devgenius.io

Amazon Prime Video reduced costs by 90% by ditching Microservices

This article is not sponsored by the World Monolith Supremacy Association.

news.tonydinh.com

My solopreneur story: zero to $45K/mo in 2 years

Today is exactly 2 years since I quit my job and become a full-time indie hacker.

betterprogramming.pub

A Visual Guide to Sed

Mastering the text substitution tool.

devszczepaniak.pl

Dominik Szczepaniak: Mermaid – Diagrams as a Code

Dobrze zaprojektowany diagram może stanowić lepsze przedstawienie kodu lub architektury niż obszerne opisy, interfejsy czy komentarze w kodzie. W tym artykule przedstawię Ci kilka argumentów za tym, dlaczego warto korzystać z diagramów, jakie są główne problemy z pracą z diagramami. Pokażę Ci narzędzie Mermaid, które pozwala w prosty i przyjemny sposób zarządzać diagramami w postaci kodu, a także pokażę Ci jak szybko postawić aplikację serwującą dokumentację wzbogaconą o diagramy wykonane w Mermaid.

03Productivity

5 links
johnwhiles.com

Maybe you should do less ‘work’

Working in tech, I’ve observed developers who work as hard as possible when they don’t need to. I’m here today to tell you that it’s a bad idea and you shouldn’t do it.

jvns.ca

Learning at work - Julia Evans

Here are some things me & people on twitter came up with. Everything in here is stuff I can do during my workday.

jvns.ca

How I learned to program in 10 years - Julia Evan

Anyway, this is mostly to say – if you’re programming and just starting out, and worrying that people say you can learn to program in 24 hours or 12 weeks… whatever. It’s taken me 11 years so far, and I’m not done :)

newsletter.weskao.com

15 principles for managing up

When your boss loves you, you have options. Here’s how to help your manager get what they need, so you get what you want.

04Python

10 links

6 Cool Things You Can Do With The Functools Module

In conclusion, the functools module in Python’s Standard Library is a treasure trove of tools, especially for those who frequently work with functions and decorators.

seddonym.me

What is Inversion of Control and Why Does it Matter?

Inversion of Control is a principle for improving the modularity of software. It’s a powerful strategy for simplifying systems that might otherwise become tangled and difficult to understand.

blog.miguelgrinberg.com

We Have To Talk About Flask

Flask 3.0 was released on September 30th, 2023, along with a parallel 3.0 release of Werkzeug, its main dependency. That day, the Flask-Login extension, one of the most popular of all Flask extensions, stopped working due to a backwards incompatible change introduced in Werkzeug. It is October 19th when I’m writing this, and Flask-Login remains broken.

semaphoreci.com

Building Custom Middleware in FastAPI

In this article you’ll see how to build custom middleware, enabling you to extend the functionality of your APIs in unique ways by building function-based and class-based middleware to modify request and response objects to suit your need and to handle rate limiting. You’ll also see how to write test cases and the best practices to follow.

blog.szymonmiks.pl

Services vs Command Handlers - Szymon Miks

Organizing code in an application is crucial for its maintainability and scalability. Two common approaches for structuring code are services and command handlers. In this blog post, we will explore these approaches and discuss when it is appropriate to use each one.

bitecode.dev

Asyncio, twisted, tornado, gevent walk into a bar…

… they pay, they leave, they drink, they order.

pybit.es

Make Each Line Count, Keeping Things Simple in Python

Simplicity in your code means fewer possibilities for bugs to hide and easier debugging when they do arise 📈

klichx.dev

asyncio: real world coroutines - Michał Klich

In this article, I’ll be writing about working with coroutines, handling errors, retrying them automatically, and tracking execution progress.

blog.pythonlibrary.org

An Intro to Protocol Buffers with Python

Protocol buffers are a data serialization format that is language agnostic. They are analogous to Python’s own pickle format, but one of the advantages of protocol buffers is that they can be used by multiple programming languages.

quanttype.net

Do not use requirements.txt

However, pip was designed to be a package installer and not a full-fledged project workflow tool. pip lacks two essential features, dependency lockfiles and automatic management of virtualenvs

dataroc.ca

The most performant timestamp functions in Python

Use time.time() for epoch timestamps.

Use datetime.utcnow() for datetime timestamps.

For tz-aware datetimes, you should do your own research. I only skimmed the surface here

05Django

2 links
johnnymetz.com

Supercharge Your Django App: 7 Sneaky Tricks to Crush Slow Database Queries

Django provides many tools and methods for optimizing database queries in its Database access optimization documentation. In this blog post, we will explore a collection of additional and essential tips I’ve compiled over the years to help you pinpoint and resolve your inefficient Django queries.

coderedcorp.com

Why is the Django Admin “Ugly”?

While talking with people at Djangocon US, one question kept coming up: “why is the Django admin so ‘ugly’?”. I’m paraphrasing here, so pardon the click-bait title, but the question came in many forms. Why does the Django admin have a “dated” UI? Why has the Django admin not changed much in all these years? Why is the Django admin missing ?

06Python libraries

5 links
github.com

loguru

Loguru is a library which aims to bring enjoyable logging in Python.

diagrams.mingrammer.com

Diagrams

Diagram as Code

Diagrams lets you draw the cloud system architecture in Python code.

github.com

hypothesis

Hypothesis is a powerful, flexible, and easy to use library for property-based testing.

github.com

RenderCV

LaTeX CV generator from a YAML/JSON input file.

github.com

Prefect

Prefect is a workflow orchestration tool empowering developers to build, observe, and react to data pipelines

07Cloud

2 links
newsletter.goodtechthings.com

Wait, is cloud bad?

I regret to inform you that there is discourse

github.com

GoogleCloudPlatform/cloud-run-hello

Demo container for Google Cloud Run.

08Other stuff

5 links
socialcooling.com

Social Cooling

LIKE OIL LEADS TO GLOBAL WARMING…

DATA LEADS TO SOCIAL COOLING

killedbygoogle.com

Killed by Google

Google Graveyard

littleblah.com

A Senior Engineer’s CheckList

This is a simple checklist, and while it is useful to any software engineer, it is especially useful to senior engineers.

github.com

The Book of Secret Knowledge

This repository is a collection of various materials and tools that I use every day in my work. It contains a lot of useful information gathered in one piece. It is an invaluable source of knowledge for me that I often look back on.

09Videos

3 videos · play right here · tap to play