ankush.dev

https://ankush.dev/ (RSS)
visit blog
The Soul of an Old Machine: Revisiting the Timeless von Neumann Architecture
11 Nov 2024 | original ↗

Revisiting the timeless Von Neumann Architecture

On Distractions
16 Jun 2024 | original ↗

Blocking them is NOT the solution

Solving Concurrency Bugs Using Schedules and Imagination
29 May 2024 | original ↗

Race conditions are hard, debugging them without right approach is even harder.

If You Wish to Truly Understand Frappe's Scheduler, You Must First Invent the Universe
25 May 2024 | original ↗

Carl Sagan famously said, "If you wish to make an apple pie from scratch, you must first invent the universe". Like an apple pie, many things that seem simple at first are extremely complex; it's just that we choose to ignore the complexity for practical purposes. In this post, I'll try to go as low as I can in abstractions of Frappe Scheduler, but I don't promise a recipe for inventing the universe.Carl Sagan famously said, "If you wish to make an apple pie from scratch, you must first invent the universe". Like an apple pie, many things that seem simple at first are extremely complex; it's just that we choose to ignore the complexity for practical purposes. In this post, I'll try to go as low as I can in abstractions of Frappe Scheduler, but I don't promise a recipe for inventing the universe. Frappe's scheduler is one of the features that truly make it...Frappe's scheduler is one of the features that truly make it...

[deck] MySQL Internals for Frappe Developers
2 Apr 2024 | original ↗
Reducing Memory Footprint of Frappe Framework
4 Aug 2023 | original ↗

Reducing memory usage by removing module importsReducing memory usage by removing module imports Frappe broadly runs three types of Python processes in production:Frappe broadly runs three types of Python processes in production: Web worker (Gunicorn)Web worker (Gunicorn) Background worker (RQ worker)Background worker (RQ worker) Scheduler (Simple infinite loop to enqueue background jobs)Scheduler (Simple infinite loop to enqueue background jobs) Since Frappe is a batteries-included framework, it does a lot of things out of the box, but not all those things need to be loaded in the memory all the...Since Frappe is a batteries-included framework, it does a lot of things out of the box, but not all those things need to be loaded in the memory all the...

On our glorious past
14 Sept 2021 | original ↗

We were not alone!

Parsing 140 gigabytes of chess games without compute clusters
28 Aug 2021 | original ↗

or why you should learn unix shell tools

How to Excel at Engineering
2 May 2021 | original ↗

This post is about my reflections on the last several years as Mechanical Engineer and then transitioning to Software Engineering. Over the years I've thought about what it takes to become good at any engineering field. I've narrowed down three things:This post is about my reflections on the last several years as Mechanical Engineer and then transitioning to Software Engineering. Over the years I've thought about what it takes to become good at any engineering field. I've narrowed down three things: BasicsBasics ToolingTooling CompositionComposition BasicsBasics You can not be a good Mechanical Engineer if you don't understand physics and likewise, you can't program well if you don't understand basic...You can not be a good Mechanical Engineer if you don't understand physics and likewise, you can't program well if you don't understand basic...

Stop writing regexes to lint your code
4 Apr 2021 | original ↗

The plural of regex is regrets.The plural of regex is regrets. The problem with regex-based linting tools is fundamentally you are reimplementing language's grammar in hacky manner and you'll inevitably find out edge cases.The problem with regex-based linting tools is fundamentally you are reimplementing language's grammar in hacky manner and you'll inevitably find out edge cases. Take this simple python code as an example.Take this simple python code as an example. def add(a, b): return a + b def add(a, b): return a + b How would you match this code using regexes? Firstly regexes are a pain to work with multiple lines, secondly, python is not a regular language...How would you match this code using regexes? Firstly regexes are a pain to work with multiple lines, secondly, python is not a regular language...

Taking notes and managing tasks with Vim
9 Nov 2020 | original ↗

My semi-finished VimWiki Frankenstein system

On mastery, cycling and mental health
25 Nov 2018 | original ↗

Story of my transition to Computer Science

How a mediocre internship shaped my life.
31 Jan 2018 | original ↗

Story of my transition to Computer Science

↑ these items are from RSS. Visit the blog itself at https://ankush.dev/ to find other articles and to appreciate the author's digital home.