Skip to content

Instantly share code, notes, and snippets.

View matagus's full-sized avatar
🐿️

Matías Méndez matagus

🐿️
View GitHub Profile

Culture

  • What do you like best about working there?
  • What do you like least?
  • How would you describe this company's culture? engineering culture?
  • What causes the most conflict among employees here?
  • What would you change if you could?
  • How has the company changed in the past five years? How do you think it will change in the next five?
  • How long has the longest serving team member been there?
  • What's the average or median tenure?
@mh-keshavarz
mh-keshavarz / silk-profiler.py
Last active June 12, 2026 06:12
A function replacing silk middleware
from django.test.client import RequestFactory
from django.http import HttpResponse
from django.db import transaction, DatabaseError
from django.db.models.sql.compiler import SQLCompiler
from django.utils import timezone
from silk.collector import DataCollector
from silk.config import SilkyConfig
from silk.model_factory import RequestModelFactory, ResponseModelFactory
from silk.profiling.profiler import silk_meta_profiler

HOW TO ACE A SYSTEMS DESIGN INTERVIEW

Compiler design dependency comic, originally from http://www.xkcd.com/754/ Comic courtesy of XKCD, via Creative Commons License

One interview that candidates often struggle with is the systems design interview. Even if you know your algorithms and write clean code, that code needs to run on a computer somewhere—and then things quickly get complicated. A truly unbelievable amount of complexity lies beneath something as simple as visiting Google in your browser. While most of that complexity is abstracted away from the end user, as a system designer you have to face it head on, and the more you can handle, the better.

We’re looking for generalists with depth—people who are good at most things, and great at some. If systems design isn’t your strength, that’s okay, but you should at least be able to talk and reason competently about a complex system.

Read on to learn about what we’re looking for and how you can prepare.

@onlurking
onlurking / programming-as-theory-building.md
Last active September 11, 2026 01:56
Programming as Theory Building - Peter Naur

Programming as Theory Building

Peter Naur

Peter Naur's classic 1985 essay "Programming as Theory Building" argues that a program is not its source code. A program is a shared mental construct (he uses the word theory) that lives in the minds of the people who work on it. If you lose the people, you lose the program. The code is merely a written representation of the program, and it's lossy, so you can't reconstruct

Hi Tom!

Here's what the Markdown for a book looks like on macwright.org:

---
categories:
  - book
layout: book
title: 'My Year of Rest and Relaxation'
"""
This file is based on https://github.com/foresmac/django-binaryuuidfield/tree/initial-setup
"""
import uuid
from django import forms
from django.core import exceptions
from django.db import models
from django.utils.translation import ugettext_lazy as _
@arieltorti
arieltorti / pasoscraper.py
Last active November 8, 2019 16:17
PASO 2019 Scraper
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# @Author: Ariel Torti
# @GitHub: github.com/maks500
import argparse
import logging
import os
import shutil
import sys
import time
@hydrosquall
hydrosquall / index.md
Last active January 8, 2022 19:35
Building Inclusive Code Review Culture
@Cryptophobia
Cryptophobia / changelog-v2.21.0.md
Created May 6, 2019 00:34
Hephy Workflow v2.21.0 Changelog

Releases

  • router v2.15.1 -> v2.16.0
  • slugbuilder v2.7.0 -> v2.7.1
  • workflow v2.20.2 -> v2.21.0
  • workflow-cli v2.20.2 -> v2.21.0
  • workflow-e2e v2.20.2 -> v2.21.0

Features

@samsch
samsch / stop-using-jwts.md
Last active September 17, 2026 03:20
Stop using JWTs

Stop using JWTs!

TLDR: JWTs should not be used for keeping your user logged in. They are not designed for this purpose, they are not secure, and there is a much better tool which is designed for it: regular cookie sessions.

If you've got a bit of time to watch a presentation on it, I highly recommend this talk: https://www.youtube.com/watch?v=pYeekwv3vC4 (Note that other topics are largely skimmed over, such as CSRF protection. You should learn about other topics from other sources. Also note that "valid" usecases for JWTs at the end of the video can also be easily handled by other, better, and more secure tools. Specifically, PASETO.)

A related topic: Don't use localStorage (or sessionStorage) for authentication credentials, including JWT tokens: https://www.rdegges.com/2018/please-stop-using-local-storage/

The reason to avoid JWTs comes down to a couple different points:

  • The JWT specification is specifically designed only for very short-live tokens (~5 minute or less). Sessions