56,966 blogs · [ { "id": "01a08c66-fa69-737f-8f31-1df21037a8bc", "title": "Profiling Cheatsheet", "url": "https://zignar.net/2025/09/23/profiling-cheatsheet", "published_at": "2025-09-23T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df210a878e5", "title": "Dealing with flaky tests", "url": "https://zignar.net/2025/06/26/dealing-with-flaky-tests", "published_at": "2025-06-26T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df21132dbc8", "title": "The Debug Adapter Protocol is a REPL protocol in disguise", "url": "https://zignar.net/2025/06/23/debug-adapter-protocol-is-a-repl-protocol", "published_at": "2025-06-23T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df211b71866", "title": "No-Config Python debugging using Neovim", "url": "https://zignar.net/2025/03/02/no-config-python-debugging-using-neovim", "published_at": "2025-03-02T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df2123999b8", "title": "Template files for nvim", "url": "https://zignar.net/2024/11/20/template-files-for-nvim", "published_at": "2024-11-20T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df2128ae9b5", "title": "Debugging Lua in Neovim", "url": "https://zignar.net/2023/06/10/debugging-lua-in-neovim", "published_at": "2023-06-10T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df2128ccf69", "title": "Debugging Neovim with Neovim and nvim-dap", "url": "https://zignar.net/2023/02/17/debugging-neovim-with-neovim-and-nvim-dap", "published_at": "2023-02-17T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df212de8153", "title": "Using Neovim as Lua interpreter with Luarocks", "url": "https://zignar.net/2023/01/21/using-Luarocks-as-lua-interpreter-with-luarocks", "published_at": "2023-01-21T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df213b799d3", "title": "Structuring Neovim Lua plugins", "url": "https://zignar.net/2022/11/06/structuring-neovim-lua-plugins", "published_at": "2022-11-06T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df214224538", "title": "Testing Neovim LSP plugins", "url": "https://zignar.net/2022/10/26/testing-neovim-lsp-plugins", "published_at": "2022-10-26T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df21510877f", "title": "New LSP features in Neovim 0.8", "url": "https://zignar.net/2022/10/01/new-lsp-features-in-neovim-08", "published_at": "2022-10-01T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df2153628f5", "title": "Using tshark to monitor PostgreSQL traffic", "url": "https://zignar.net/2022/09/24/using-tshark-to-monitor-pg-traffic", "published_at": "2022-09-24T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df21547cb5a", "title": "A tree sitting in your editor", "url": "https://zignar.net/2022/09/02/a-tree-sitting-in-your-editor", "published_at": "2022-09-02T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df21571bd6a", "title": "Can you write a CLI using Java?", "url": "https://zignar.net/2022/05/14/can-you-write-a-cli-using-java", "published_at": "2022-05-14T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df215c4f715", "title": "Reading science papers on a Remarkable", "url": "https://zignar.net/2022/01/27/reading-science-papers-on-a-remarkable", "published_at": "2022-01-27T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df216974c32", "title": "A boring statusline for Neovim", "url": "https://zignar.net/2022/01/21/a-boring-statusline-for-neovim", "published_at": "2022-01-21T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df217866ec1", "title": "Building a web 3.0 Twitter clone", "url": "https://zignar.net/2021/12/25/web-30-twitter", "published_at": "2021-12-25T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df217be1c65", "title": "Help people help you and put in some effort", "url": "https://zignar.net/2021/12/03/help-people-help-you-and-put-in-some-effort", "published_at": "2021-12-03T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df218b91d24", "title": "Why Haskell became my favorite scripting language", "url": "https://zignar.net/2021/07/09/why-haskell-became-my-favorite-scripting-language", "published_at": "2021-07-09T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df218ea83d0", "title": "The Circuit Breaker mechanism in CrateDB", "url": "https://zignar.net/2021/06/17/the-circuit-breaker-mechanism-in-cratedb", "published_at": "2021-06-17T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df219d276b9", "title": "Group By query execution in CrateDB", "url": "https://zignar.net/2021/06/04/group-by-query-execution-in-cratedb", "published_at": "2021-06-04T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df21a3d4c8e", "title": "Query Then Fetch execution in CrateDB", "url": "https://zignar.net/2021/05/28/query-then-fetch-execution-in-cratedb", "published_at": "2021-05-28T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df21a9a9a34", "title": "Distributed SELECT statement execution in CrateDB", "url": "https://zignar.net/2021/05/20/distributed-select-statement-execution-in-cratedb", "published_at": "2021-05-20T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df21b8607c2", "title": "How CrateDB plans and executes queries", "url": "https://zignar.net/2021/05/15/how-cratedb-plans-and-executes-queries", "published_at": "2021-05-15T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df21c066e20", "title": "Neovim completion plugin building blocks", "url": "https://zignar.net/2021/05/14/neovim-completion-pluign-building-blocks", "published_at": "2021-05-14T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df21c416de4", "title": "Avoid shallow functions", "url": "https://zignar.net/2021/05/14/avoid-shallow-functions", "published_at": "2021-05-14T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df21c45413c", "title": "Are you asking too many questions, or not enough?", "url": "https://zignar.net/2021/04/15/are-you-asking-too-many-questions-or-not-enough", "published_at": "2021-04-15T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df21d444c58", "title": "Triggering Jenkins jobs from the command line", "url": "https://zignar.net/2021/02/25/triggering-jenkins-jobs-from-the-command-line", "published_at": "2021-02-25T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df21d9db76d", "title": "Arguing about taste", "url": "https://zignar.net/2021/01/22/arguing-about-taste", "published_at": "2021-01-22T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df21db170f4", "title": "Elastic moving to SSPL and making money with open source", "url": "https://zignar.net/2021/01/16/elastic-moving-to-sspl-and-making-money-with-open-source", "published_at": "2021-01-16T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df21e485494", "title": "Working on the right task and managing energy levels", "url": "https://zignar.net/2021/01/01/working-on-the-right-task-and-managing-energy-levels", "published_at": "2021-01-01T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df21f336d38", "title": "Adding the pg_catalog.pg_am system table to CrateDB", "url": "https://zignar.net/2020/12/09/adding-the-pg-catalog-pg-am-table-to-cratedb", "published_at": "2020-12-09T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df21f564f93", "title": "Why you should keep a clean git history", "url": "https://zignar.net/2020/11/14/why-you-should-keep-a-clean-git-history", "published_at": "2020-11-14T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df21fd4ed81", "title": "Neovim under the hood - Understanding the language server client", "url": "https://zignar.net/2020/10/27/neovim-under-the-hood-understanding-the-language-server-client", "published_at": "2020-10-27T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df220851991", "title": "Setup Neovim for Java Development Part 2", "url": "https://zignar.net/2020/10/17/setup-Neovim-for-java-development-2", "published_at": "2020-10-17T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df221137360", "title": "Generating Data Sets Using mkjson", "url": "https://zignar.net/2020/05/01/generating-data-sets-using-mkjson", "published_at": "2020-05-01T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df221bad379", "title": "From synchronous planning to Hammock Driven Development", "url": "https://zignar.net/2020/03/22/from-synchronous-planning-to-hammock-driven-development", "published_at": "2020-03-22T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df221e6ea16", "title": "Install scripts: A maybe not so good idea", "url": "https://zignar.net/2020/03/10/install-scripts-a-not-so-good-idea", "published_at": "2020-03-10T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df222d27b64", "title": "Building Features Nobody Asked For", "url": "https://zignar.net/2020/02/17/building-features-nobody-asked-for", "published_at": "2020-02-17T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df222f117b2", "title": "Asynchronous Planning Poker", "url": "https://zignar.net/2020/02/01/asynchronous-planning-poker", "published_at": "2020-02-01T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df222fdf0ca", "title": "Asynchronous Communication And The Curse Of Knowledge", "url": "https://zignar.net/2020/01/25/asynchronous-communication-and-the-curse-of-knowledge", "published_at": "2020-01-25T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df22350367e", "title": "Setup Neovim for Java development", "url": "https://zignar.net/2019/11/21/setup-neovim-for-java-development", "published_at": "2019-11-21T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df223d6fb07", "title": "Running Steamlink on Arch Linux ARM", "url": "https://zignar.net/2019/11/10/steamlink-on-archlinuxarm", "published_at": "2019-11-10T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df22426d2b8", "title": "Are sprint commitments necessary?", "url": "https://zignar.net/2019/02/09/are-sprint-commitments-necessary", "published_at": "2019-02-09T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df2248d5bf2", "title": "Performance Theory 101 for insert throughput scaling with CrateDB", "url": "https://zignar.net/2019/01/28/insert-throughput-scaling", "published_at": "2019-01-28T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df225419a39", "title": "Premature optimization isn’t the root of all evil", "url": "https://zignar.net/2016/04/07/premature-optimization-isnt-the-root-of-all-evil", "published_at": "2016-04-07T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df2255b2959", "title": "(Abusing) Elasticsearch as a Framework", "url": "https://zignar.net/2016/03/18/abusing-elasticsearch-as-a-framework", "published_at": "2016-03-18T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df2258cc33d", "title": "Home Audio Using HifiBerry And Raspberry Pi", "url": "https://zignar.net/2016/03/01/home-audio-hifi-berry-and-raspberry-pi", "published_at": "2016-03-01T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df22595c0ba", "title": "IPython %magic", "url": "https://zignar.net/2016/01/16/ipython-magic", "published_at": "2016-01-16T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df225ca05c4", "title": "Sniffing HTTPS traffic of a virtualbox guest VM using mitmproxy", "url": "https://zignar.net/2015/12/31/sniffing-vbox-traffic-mitmproxy", "published_at": "2015-12-31T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df22605223c", "title": "Building SQL Auto Completion - Funday at CrateIO", "url": "https://zignar.net/2014/10/07/building-an-sql-auto-completion", "published_at": "2014-10-07T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df2263fe4de", "title": "Getting started with D-Bus using Python and systemd", "url": "https://zignar.net/2014/09/08/getting-started-with-dbus-python-systemd", "published_at": "2014-09-08T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df226dc31cb", "title": "Running Crate Data on CoreOS and Docker", "url": "https://zignar.net/2014/09/02/crate-data-on-core-os", "published_at": "2014-09-02T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df2272b156c", "title": "Linux on a MacBook Air 2012", "url": "https://zignar.net/2012/12/20/linux-on-a-macbook-air", "published_at": "2012-12-20T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df2276ebf87", "title": "Install Python, Pip and Virtualenv on Windows", "url": "https://zignar.net/2012/06/17/install-python-on-windows", "published_at": "2012-06-17T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df2285865e2", "title": "Sending a fax using Linux, a fritzbox and VOIP", "url": "https://zignar.net/2012/04/16/capifax", "published_at": "2012-04-16T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df228a7baed", "title": "ActiveSync on Linux using z-push, nginx and an imap backend", "url": "https://zignar.net/2012/04/14/z-push", "published_at": "2012-04-14T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df22924fd1b", "title": "Going Paperless", "url": "https://zignar.net/2012/04/08/going-paperless", "published_at": "2012-04-08T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df2293e2635", "title": "Good ideas aren’t as important as you think they are", "url": "https://zignar.net/2012/03/21/good-ideas-arent-as-important-as-you-think-they-are", "published_at": "2012-03-21T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df2296b67e5", "title": "EF 4.1 - Loading related Entities on type mismatch", "url": "https://zignar.net/2012/02/20/ef-4.1-loading-related-entities-on-type-mismatch", "published_at": "2012-02-20T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df229b0ca96", "title": "Baancomplete 0.2", "url": "https://zignar.net/2012/02/14/baancomplete-0.2", "published_at": "2012-02-14T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df229ed9699", "title": "Our inability to make decisions", "url": "https://zignar.net/2012/01/31/our-inability-to-make-decisions", "published_at": "2012-01-31T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df22ad20f6e", "title": "I use this #2", "url": "https://zignar.net/2012/01/28/i-use-this-_2", "published_at": "2012-01-28T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df22b7f98c5", "title": "I use this #1", "url": "https://zignar.net/2012/01/14/i-use-this", "published_at": "2012-01-14T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df22bb3940b", "title": "Too many choices considered harmful", "url": "https://zignar.net/2011/12/28/too-many-choices-considered-harmful", "published_at": "2011-12-28T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df22c21eab5", "title": "Copy data from Mysql to Postgres Part 2", "url": "https://zignar.net/2011/11/01/copy-data-from-mysql-to-postgres-part-2", "published_at": "2011-11-01T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df22cd0e37d", "title": "Copy data from Mysql to Postgres using SqlAlchemy", "url": "https://zignar.net/2011/11/01/copy-data-from-mysql-to-postgres-using-sqlalchemy", "published_at": "2011-11-01T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df22d1f7dcf", "title": "Chocolatey - A package manager for windows", "url": "https://zignar.net/2011/10/23/chocolatey-a-package-manager-for-windows", "published_at": "2011-10-23T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df22d850077", "title": "Migrations Xen, Wheezy, Postgres and Python3", "url": "https://zignar.net/2011/10/22/migrations:-xen,-wheezy,-postgres-and-python3", "published_at": "2011-10-22T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df22e142976", "title": "Syntax highlighting for less", "url": "https://zignar.net/2011/09/25/syntaxhighlightingforless", "published_at": "2011-09-25T00:00:00+00:00" }, { "id": "01a08c66-fa69-737f-8f31-1df22e3bdd43", "title": "Baancomplete", "url": "https://zignar.net/2011/09/20/baancomplete", "published_at": "2011-09-20T00:00:00+00:00" } ] posts Claim your blog
Back to Personal weblog about programming, linux, life, the universe and everything
Blog · corpus.blog/blogs/zignar.net/posts

Personal weblog about programming, linux, life, the universe and everything

zignar.net

2025

2024

2023

2022

2021

2020

2019

2016

2015

2014

2012

2011