41554 blogs · [ { "id": "01a087e8-a4b8-7138-90bc-65f9518966a1", "title": "The macOS Apps I'm Using", "url": "https://switowski.com/blog/my-favorite-macos-apps-2024/", "published_at": "2024-11-16T00:00:00+00:00" }, { "id": "01a087e8-a4b8-7138-90bc-65f95239575b", "title": "I Like Makefiles", "url": "https://switowski.com/blog/i-like-makefiles/", "published_at": "2024-09-18T00:00:00+00:00" }, { "id": "01a087e8-a4b8-7138-90bc-65f9527d1887", "title": "Web Automation With n8n, Telegram, Online Forms, and a Bit of Python", "url": "https://switowski.com/blog/web-automation/", "published_at": "2024-08-22T00:00:00+00:00" }, { "id": "01a087e8-a4b8-7138-90bc-65f952debfdf", "title": "I've Built My First Successful Side Project, and I Hate It", "url": "https://switowski.com/blog/i-have-built-my-first-successful-side-project-and-i-hate-it/", "published_at": "2024-08-19T00:00:00+00:00" }, { "id": "01a087e8-a4b8-7138-90bc-65f9539b2781", "title": "My Stream Deck Setup", "url": "https://switowski.com/blog/my-stream-deck-setup/", "published_at": "2024-05-13T00:00:00+00:00" }, { "id": "01a087e8-a4b8-7138-90bc-65f9542925ee", "title": "You Don't Need Stream Deck, You Need Macros", "url": "https://switowski.com/blog/you-dont-need-stream-deck-you-need-macros/", "published_at": "2024-05-09T00:00:00+00:00" }, { "id": "01a087e8-a4b8-7138-90bc-65f954708015", "title": "Managing Gigabytes of Images with git-annex", "url": "https://switowski.com/blog/git-annex/", "published_at": "2024-03-13T00:00:00+00:00" }, { "id": "01a087e8-a4b8-7138-90bc-65f954a01350", "title": "No \"Hello\", No \"Quick Call\", and no Meetings Without an Agenda", "url": "https://switowski.com/blog/no-hello-no-quick-call-no-agendaless-meetings/", "published_at": "2024-01-16T00:00:00+00:00" }, { "id": "01a087e8-a4b8-7138-90bc-65f954cf3f30", "title": "How to Enjoy Your Next Conference Better", "url": "https://switowski.com/blog/how-to-enjoy-your-next-conference-better/", "published_at": "2024-01-03T00:00:00+00:00" }, { "id": "01a087e8-a4b8-7138-90bc-65f9552de1ab", "title": "A Beginner's Guide to Continuous Integration in Python", "url": "https://switowski.com/blog/ci-101/", "published_at": "2023-12-23T00:00:00+00:00" }, { "id": "01a087e8-a4b8-7138-90bc-65f9554bc95f", "title": "pre-commit vs. CI", "url": "https://switowski.com/blog/pre-commit-vs-ci/", "published_at": "2023-11-28T00:00:00+00:00" }, { "id": "01a087e8-a4b8-7138-90bc-65f95607dc2d", "title": "Should I Have a Blog?", "url": "https://switowski.com/blog/should-i-have-a-blog/", "published_at": "2023-11-14T00:00:00+00:00" }, { "id": "01a087e8-a4b8-7138-90bc-65f9564287e7", "title": "Dear Conference Organizer", "url": "https://switowski.com/blog/dear-conference-organizer/", "published_at": "2023-10-22T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004ebc71047", "title": "map() vs. List Comprehension", "url": "https://switowski.com/blog/map-vs-list-comprehension/", "published_at": "2023-07-31T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004ec3a4fdd", "title": "Inlining Functions", "url": "https://switowski.com/blog/inlining-functions/", "published_at": "2023-07-24T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004ec8a884d", "title": "Pathlib for Path Manipulations", "url": "https://switowski.com/blog/pathlib/", "published_at": "2023-07-17T00:00:00+00:00" }, { "id": "01a087e8-a4b8-7138-90bc-65f9585a5ff7", "title": "How to Make a Great Conference Talk", "url": "https://switowski.com/blog/how-to-make-a-great-conference-talk/", "published_at": "2023-03-20T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004ed5daa59", "title": "String Formatting", "url": "https://switowski.com/blog/string-formatting/", "published_at": "2023-03-02T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004edeb84e0", "title": "Compare to None", "url": "https://switowski.com/blog/compare-to-none/", "published_at": "2023-02-23T00:00:00+00:00" }, { "id": "01a087e8-a4b8-7138-90bc-65f95a90666e", "title": "WTF Excel?!", "url": "https://switowski.com/blog/wtf-excel/", "published_at": "2023-01-26T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004ee6ddc20", "title": "Dictionary Comprehension", "url": "https://switowski.com/blog/dictionary-comprehension/", "published_at": "2023-01-19T00:00:00+00:00" }, { "id": "01a087e8-a4b8-7138-90bc-65f95ab3a4a6", "title": "How I Organize My Notes With Obsidian", "url": "https://switowski.com/blog/obsidian/", "published_at": "2022-12-23T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004eea4b2e5", "title": "dict() vs. {}", "url": "https://switowski.com/blog/dict-function-vs-literal-syntax/", "published_at": "2022-12-01T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004ef2f8ca7", "title": "How to Benchmark (Python) Code", "url": "https://switowski.com/blog/how-to-benchmark-python-code/", "published_at": "2022-11-17T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004f01bb8c1", "title": "Upgrade Your Python Version", "url": "https://switowski.com/blog/upgrade-your-python-version/", "published_at": "2022-11-14T00:00:00+00:00" }, { "id": "01a087e8-a4b8-7138-90bc-65f95ca12090", "title": "Add Comments To Your Commands", "url": "https://switowski.com/blog/comment-your-commands/", "published_at": "2022-10-20T00:00:00+00:00" }, { "id": "01a087e8-a4b8-7138-90bc-65f95d4feed0", "title": "New Blog, Who Dis?", "url": "https://switowski.com/blog/new-blog-who-dis/", "published_at": "2022-10-14T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004f0990a40", "title": "Python Versions Management With pyenv", "url": "https://switowski.com/blog/pyenv/", "published_at": "2021-02-03T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004f0c06f80", "title": "25 IPython Tips for Your Next Advent of Code", "url": "https://switowski.com/blog/25-ipython-tips-for-your-next-advent-of-code/", "published_at": "2021-01-27T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004f0c40103", "title": "Remove Duplicates From a List", "url": "https://switowski.com/blog/remove-duplicates/", "published_at": "2020-10-22T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004f14a1ff2", "title": "type() vs. isinstance()", "url": "https://switowski.com/blog/type-vs-isinstance/", "published_at": "2020-10-15T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004f1735e1b", "title": "Membership Testing", "url": "https://switowski.com/blog/membership-testing/", "published_at": "2020-10-08T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004f202c6bd", "title": "Checking for True or False", "url": "https://switowski.com/blog/checking-for-true-or-false/", "published_at": "2020-10-01T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004f260c520", "title": "Sorting Lists", "url": "https://switowski.com/blog/sorting-lists/", "published_at": "2020-09-24T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004f2e2b077", "title": "For Loop vs. List Comprehension", "url": "https://switowski.com/blog/for-loop-vs-list-comprehension/", "published_at": "2020-09-17T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004f3b292b1", "title": "Ordered Dictionaries", "url": "https://switowski.com/blog/ordered-dictionaries/", "published_at": "2020-09-10T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004f49682c3", "title": "Easy Speedup Wins With Numba", "url": "https://switowski.com/blog/easy-speedup-wins-with-numba/", "published_at": "2020-09-03T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004f5479a0e", "title": "Find Item in a List", "url": "https://switowski.com/blog/find-item-in-a-list/", "published_at": "2020-08-27T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004f5e8d62e", "title": "Ask for Forgiveness or Look Before You Leap?", "url": "https://switowski.com/blog/ask-for-permission-or-look-before-you-leap/", "published_at": "2020-08-19T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004f6179570", "title": "Writing Faster Python - Introduction", "url": "https://switowski.com/blog/writing-faster-python-intro/", "published_at": "2020-08-18T00:00:00+00:00" }, { "id": "01a087e8-a4b9-7369-8254-9394e7ed75e9", "title": "Let's Write an IPython Extension the Hard Way", "url": "https://switowski.com/blog/lets-write-ipython-extension/", "published_at": "2020-07-16T00:00:00+00:00" }, { "id": "01a087e8-a4b9-7369-8254-9394e8b2ae4e", "title": "My Favorite CLI Tools", "url": "https://switowski.com/blog/favorite-cli-tools/", "published_at": "2020-06-18T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004f6cffda9", "title": "18 Plugins for Writing Python in VS Code", "url": "https://switowski.com/blog/plugins-for-python-in-vscode/", "published_at": "2020-04-27T00:00:00+00:00" }, { "id": "01a087e8-a4b9-7369-8254-9394e961eb19", "title": "My Favorite Macbook Tools", "url": "https://switowski.com/blog/favorite-mac-tools/", "published_at": "2020-01-09T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004f795065b", "title": "5 Ways of Debugging with IPython", "url": "https://switowski.com/blog/ipython-debugging/", "published_at": "2019-12-23T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004f7955c08", "title": "Disable pip Outside of Virtual Environments", "url": "https://switowski.com/blog/disable-pip-outside-of-virtual-environments/", "published_at": "2019-11-28T00:00:00+00:00" }, { "id": "01a087e8-a4b9-7369-8254-9394eaec7268", "title": "How to Prepare for the CAPM Certification Exam", "url": "https://switowski.com/blog/how-to-pass-capm-exam/", "published_at": "2019-11-14T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004f8805fe3", "title": "You Don't Have to Migrate to Python 3", "url": "https://switowski.com/blog/you-dont-have-to-migrate-to-python3/", "published_at": "2019-10-30T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004f963e941", "title": "IPython Extensions Guide", "url": "https://switowski.com/blog/ipython-extensions-guide/", "published_at": "2019-10-15T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004f9b933ca", "title": "Automatically Reload Modules with %autoreload", "url": "https://switowski.com/blog/ipython-autoreload/", "published_at": "2019-10-01T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004fa4cf269", "title": "It's 2019 and I'm Still Using Python 2", "url": "https://switowski.com/blog/it-is-2019-and-i-am-still-using-python2/", "published_at": "2019-08-28T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004fb1ddb0a", "title": "Wait, IPython Can Do That?!", "url": "https://switowski.com/blog/wait-ipython-can-do-that/", "published_at": "2019-07-07T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004fbf07560", "title": "Creating Magic Functions in IPython - Part 3", "url": "https://switowski.com/blog/creating-magic-functions-part3/", "published_at": "2019-02-15T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004fcd83b5e", "title": "Creating Magic Functions in IPython - Part 2", "url": "https://switowski.com/blog/creating-magic-functions-part2/", "published_at": "2019-02-08T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004fd20be6c", "title": "Creating Magic Functions in IPython - Part 1", "url": "https://switowski.com/blog/creating-magic-functions-part1/", "published_at": "2019-02-01T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004fd87dce2", "title": "__str__ vs. __repr__", "url": "https://switowski.com/blog/str-vs-repr/", "published_at": "2019-01-25T00:00:00+00:00" }, { "id": "01a087e8-a4b9-7369-8254-9394edfa6efb", "title": "Git Aliases Don't Have to Be Boring!", "url": "https://switowski.com/blog/7-git-functions-to-make-your-life-easier/", "published_at": "2019-01-18T00:00:00+00:00" }, { "id": "01a087e8-a4b9-7369-8254-9394ee7923a0", "title": "Configuring Git", "url": "https://switowski.com/blog/configuring-git/", "published_at": "2019-01-11T00:00:00+00:00" }, { "id": "01a0821e-c46d-7081-a1f8-c004fe27d695", "title": "IPython Startup Files", "url": "https://switowski.com/blog/ipython-startup-files/", "published_at": "2019-01-04T00:00:00+00:00" } ] posts Claim your blog
Back to Sebastian Witowski
Blog · corpus.blog/blogs/switowski.com/posts

Sebastian Witowski

switowski.com

2024

2023

2022

2021

2020

2019