56,966 blogs · [ { "id": "01a087a3-4b83-7232-b2a6-159d258ca7ec", "title": "A checkbox to enable the Django debug toolbar", "url": "https://mdk.fr/blog/django-debug-toolbar-checkbox.html", "published_at": "2026-05-16T22:23:23+00:00" }, { "id": "01a087a3-4b83-7232-b2a6-159d25c13718", "title": "How I use Sieve", "url": "https://mdk.fr/blog/how-i-use-sieve.html", "published_at": "2026-02-24T10:57:00+00:00" }, { "id": "01a087a3-4b83-7232-b2a6-159d2609ad01", "title": "Black screen at boot on my PinePhone", "url": "https://mdk.fr/blog/black-screen-at-boot-on-my-pinephone.html", "published_at": "2023-01-13T09:19:30+00:00" }, { "id": "01a087a3-4b83-7232-b2a6-159d2624be8b", "title": "Finding a lost iPhone owner, the hard way", "url": "https://mdk.fr/blog/finding-a-lost-iphone-owner-the-hard-way.html", "published_at": "2022-06-07T11:11:51+00:00" }, { "id": "01a087a3-4b83-7232-b2a6-159d26df56d9", "title": "Releasing pipe v2.0", "url": "https://mdk.fr/blog/releasing-pipe-v20.html", "published_at": "2022-05-23T08:12:10+00:00" }, { "id": "01a087a3-4b83-7232-b2a6-159d2765182e", "title": "How to install any distrib on a Gandi VPS", "url": "https://mdk.fr/blog/how-to-install-any-distrib-on-a-gandi-vps.html", "published_at": "2021-11-18T08:09:06+00:00" }, { "id": "01a087a3-4b83-7232-b2a6-159d278de24c", "title": "How APT does its fancy progress bar", "url": "https://mdk.fr/blog/how-apt-does-its-fancy-progress-bar.html", "published_at": "2021-10-13T09:04:55+00:00" }, { "id": "01a087a3-4b83-7232-b2a6-159d27e2e6fd", "title": "HackInScience hits 10k solved exercices per month!", "url": "https://mdk.fr/blog/hackinscience-hits-10k-solved-exercices-per-month.html", "published_at": "2021-06-04T16:59:56+00:00" }, { "id": "01a087a3-4b83-7232-b2a6-159d2826a952", "title": "How I use bash", "url": "https://mdk.fr/blog/how-i-use-bash.html", "published_at": "2021-06-04T04:33:17+00:00" }, { "id": "01a087a3-4b83-7232-b2a6-159d292631d7", "title": "Reversing a coffee machine key", "url": "https://mdk.fr/blog/reversing-a-coffee-machine-key.html", "published_at": "2021-05-07T13:35:46+00:00" }, { "id": "01a087a3-4b83-7232-b2a6-159d29abf500", "title": "Python Translation Workshop 3", "url": "https://mdk.fr/blog/python-translation-workshop-3.html", "published_at": "2018-09-12T21:00:50+00:00" }, { "id": "01a087a3-4b83-7232-b2a6-159d29e58955", "title": "La PyCon Fr 2018 approche !", "url": "https://mdk.fr/blog/la-pycon-fr-2018-approche.html", "published_at": "2018-08-15T10:45:24+00:00" }, { "id": "01a087a3-4b83-7232-b2a6-159d2ab2c12b", "title": "Atelier de traduction de la doc de Python", "url": "https://mdk.fr/blog/atelier-de-traduction-de-la-doc-de-python.html", "published_at": "2017-12-09T22:52:02+00:00" }, { "id": "01a087a3-4b83-7232-b2a6-159d2b2317b0", "title": "Compose Key vs Dead Key", "url": "https://mdk.fr/blog/compose-key-vs-dead-key.html", "published_at": "2017-11-18T17:28:22+00:00" }, { "id": "01a087a3-4b83-7232-b2a6-159d2b5724d9", "title": "Python Documentation Translation", "url": "https://mdk.fr/blog/python-documentation-translation.html", "published_at": "2017-06-09T07:45:29+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c8530286ec0", "title": "A JustInTime class", "url": "https://mdk.fr/blog/a-justintime-class.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c85306b06ba", "title": "ashttp: vt100 screen scraping exported over HTTP", "url": "https://mdk.fr/blog/ashttp-vt100-screen-scraping-exported-over-http.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c85313ad74b", "title": "Automating GNU screen startup", "url": "https://mdk.fr/blog/automating-gnu-screen-startup.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c853220c04a", "title": "[Bashism] How to generate random number without $RANDOM ?", "url": "https://mdk.fr/blog/bashism-how-to-generate-random-number-without-random.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c8532336082", "title": "C# Using alias directives", "url": "https://mdk.fr/blog/c-using-alias-directives.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c85329876d4", "title": "Cisco CheatSheet", "url": "https://mdk.fr/blog/cisco-cheatsheet.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c8532d54e93", "title": "Combinatory logic from scratch", "url": "https://mdk.fr/blog/combinatory-logic-from-scratch.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c8533294d53", "title": "Covariance and Contravariance in C#3", "url": "https://mdk.fr/blog/covariance-and-contravariance-in-c3.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c853392ee90", "title": "echo and backslash-escaped caracters / new lines: how to write portable scripts ?", "url": "https://mdk.fr/blog/echo-and-backslash-escaped-caracters-new-lines-how-to-write-portable-scripts.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c8533ff9e21", "title": "emacs: Highlighting errors for c, python, and other languages", "url": "https://mdk.fr/blog/emacs-highlighting-errors-for-c-python-and-other-languages.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c8534bc286b", "title": "Emacs: replace tabs with spaces", "url": "https://mdk.fr/blog/emacs-replace-tabs-with-spaces.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c8535864da6", "title": "emacs: standard input is not a TTY", "url": "https://mdk.fr/blog/emacs-standard-input-is-not-a-tty.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c853641f8c4", "title": "Exclude directories from recursive grep", "url": "https://mdk.fr/blog/exclude-directories-from-recursive-grep.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c853716df7b", "title": "How to check if a string is valid utf-8", "url": "https://mdk.fr/blog/how-to-check-if-a-string-is-valid-utf-8.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c853787c57e", "title": "Howto invoke an event via reflection", "url": "https://mdk.fr/blog/howto-invoke-an-event-via-reflection.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c8538256af6", "title": "Integrating google bookmarks in google chrome", "url": "https://mdk.fr/blog/integrating-google-bookmarks-in-google-chrome.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c8538815a07", "title": "Javascript Foncteur", "url": "https://mdk.fr/blog/javascript-foncteur.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c85390dd321", "title": "Lazy Loading in php with spl_autload", "url": "https://mdk.fr/blog/lazy-loading-in-php-with-spl_autload.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c8539a11465", "title": "nfsmount: rpc failed: 2", "url": "https://mdk.fr/blog/nfsmount-rpc-failed-2.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c853a3302e2", "title": "Numeric arguments in emacs", "url": "https://mdk.fr/blog/numeric-arguments-in-emacs.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c853ad2b3ea", "title": "Pipe: Infix syntax for Python", "url": "https://mdk.fr/blog/pipe-infix-syntax-for-python.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c853b0866e8", "title": "Post data lost on 301 Moved Permanently", "url": "https://mdk.fr/blog/post-data-lost-on-301-moved-permanently.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c853be426bb", "title": "Python: Consulting PEPs from command line, while being offline", "url": "https://mdk.fr/blog/python-consulting-peps-from-command-line-while-being-offline.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c853c3307ff", "title": "Python coroutines with async and await", "url": "https://mdk.fr/blog/python-coroutines-with-async-and-await.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c853ca75434", "title": "Python: Introducing ppipe : Parallel Pipe", "url": "https://mdk.fr/blog/python-introducing-ppipe-parallel-pipe.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c853ce21894", "title": "Searching and replacing in emacs", "url": "https://mdk.fr/blog/searching-and-replacing-in-emacs.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c853d727b38", "title": "squid: (101) Network is unreachable when DNS returns IPv6", "url": "https://mdk.fr/blog/squid-101-network-is-unreachable-when-dns-returns-ipv6.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c853e3fd7cb", "title": "The art of Events", "url": "https://mdk.fr/blog/the-art-of-events.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c853e9328c9", "title": "The ?? operator aka the Null Coalescing Operator", "url": "https://mdk.fr/blog/the-operator-aka-the-null-coalescing-operator.html", "published_at": "2017-04-04T21:11:23+00:00" }, { "id": "01a087a3-4b84-72bd-acae-8c853efa6209", "title": "YAUIB : Yet another useless IRC Bot !", "url": "https://mdk.fr/blog/yauib-yet-another-useless-irc-bot.html", "published_at": "2017-04-04T21:11:23+00:00" } ] posts Claim your blog
Back to mdk.fr
Blog · corpus.blog/blogs/mdk.fr/posts

mdk.fr

mdk.fr

2026

2023

2022

2021

2018

2017