41554 blogs · [ { "id": "01a087de-e6a4-7075-a213-446c1b793ebf", "title": "Articles", "url": "https://shahinism.com/articles/", "published_at": "2026-04-06T07:46:00+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c1c71d798", "title": "Legacy Migration Starts with Understanding, not Inventory", "url": "https://shahinism.com/articles/2026/04/legacy-migration-starts-with-understanding-not-inventory/", "published_at": "2026-04-06T07:46:00+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c1cd5f021", "title": "Career Growth: Who is going to do it?", "url": "https://shahinism.com/articles/2024/07/career-growth-who-is-going-to-do-it/", "published_at": "2024-07-29T08:05:58+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c1d992ccf", "title": "Useful output in CLI applications", "url": "https://shahinism.com/articles/2024/07/useful-output-in-cli-applications/", "published_at": "2024-07-29T08:04:03+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c1e662322", "title": "System Integration Test for Data Products", "url": "https://shahinism.com/articles/2024/04/system-integration-test-for-data-products/", "published_at": "2024-04-29T18:46:00+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c1e69137e", "title": "Custom Dashboard for Great Expectation", "url": "https://shahinism.com/articles/2024/04/custom-dashboard-for-great-expectation/", "published_at": "2024-04-24T18:46:00+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c1edf53a6", "title": "Software Engineering for Data Engineers: Introduction", "url": "https://shahinism.com/articles/2024/01/software-engineering-for-data-engineers-introduction/", "published_at": "2024-01-23T18:46:00+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c1fc51b92", "title": "Mysterious Spark Checkpoints", "url": "https://shahinism.com/articles/2023/12/mysterious-spark-checkpoints/", "published_at": "2023-12-20T02:46:00+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c200d6c1e", "title": "Composing Functions for PySpark's Structured Streaming", "url": "https://shahinism.com/articles/2023/10/composing-functions-for-pysparks-structured-streaming/", "published_at": "2023-10-12T08:00:10+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c20334d2c", "title": "Iceberg on Glue: The table name confusion!", "url": "https://shahinism.com/articles/2023/10/iceberg-on-glue-the-table-name-confusion/", "published_at": "2023-10-10T08:00:09+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c20964f85", "title": "Introducing devenv Templates: Simplifying Development Environments with Nix", "url": "https://shahinism.com/articles/2023/10/introducing-devenv-templates-simplifying-development-environments-with-nix/", "published_at": "2023-10-08T14:07:16+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c217daff9", "title": "The Fire of Purpose: From Personal Growth to Team Success", "url": "https://shahinism.com/articles/2023/10/the-fire-of-purpose-from-personal-growth-to-team-success/", "published_at": "2023-10-01T13:14:16+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c21b7798d", "title": "TIL: Kafka CLI and group offset", "url": "https://shahinism.com/articles/2023/06/til-kafka-cli-and-group-offset/", "published_at": "2023-06-15T14:19:58+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c21c391f8", "title": "AI is here; what's your plan?", "url": "https://shahinism.com/articles/2023/05/ai-is-here-whats-your-plan/", "published_at": "2023-05-29T19:09:21+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c22540736", "title": "Fixing the Git GPG sign issue", "url": "https://shahinism.com/articles/2023/01/fixing-the-git-gpg-sign-issue/", "published_at": "2023-01-06T08:17:49+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c22a5117a", "title": "Run Spark Applications on AWS Fargate", "url": "https://shahinism.com/articles/2021/02/run-spark-applications-on-aws-fargate/", "published_at": "2021-02-18T18:46:00+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c236f6ca3", "title": "How to Handle Null in Spark", "url": "https://shahinism.com/articles/2020/07/how-to-handle-null-in-spark/", "published_at": "2020-07-20T18:46:00+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c24452afb", "title": "AWS VPC With Public and Private Subnets", "url": "https://shahinism.com/articles/2020/01/aws-vpc-with-public-and-private-subnets/", "published_at": "2020-01-20T07:46:00+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c245ed5dc", "title": "AWS Vault with Yubikey", "url": "https://shahinism.com/articles/2020/01/aws-vault-with-yubikey/", "published_at": "2020-01-01T01:01:01+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c24f388d3", "title": "Plumbum for shell scripting in Python", "url": "https://shahinism.com/articles/2020/01/plumbum-for-shell-scripting-in-python/", "published_at": "2020-01-01T01:01:01+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c25bc7c17", "title": "Simple shell pop-up in Emacs", "url": "https://shahinism.com/articles/2020/01/simple-shell-pop-up-in-emacs/", "published_at": "2020-01-01T01:01:01+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c26610bda", "title": "Using data to improve software engineering", "url": "https://shahinism.com/articles/2020/01/using-data-to-improve-software-engineering/", "published_at": "2020-01-01T01:01:01+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c272a42a7", "title": "Polyglot Dojo #4: Permutation", "url": "https://shahinism.com/articles/2019/12/polyglot-dojo-4-permutation/", "published_at": "2019-12-27T01:01:01+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c27e6abcb", "title": "Polyglot Dojo #3: Hashmap", "url": "https://shahinism.com/articles/2019/12/polyglot-dojo-3-hashmap/", "published_at": "2019-12-25T01:01:01+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c28bdab2d", "title": "Polyglot Dojo #2: FizzBuzz [2*]", "url": "https://shahinism.com/articles/2019/12/polyglot-dojo-2-fizzbuzz-2/", "published_at": "2019-12-19T01:01:01+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c291c8bf1", "title": "Polyglot Dojo #1: Compress String", "url": "https://shahinism.com/articles/2019/12/polyglot-dojo-1-compress-string/", "published_at": "2019-12-04T01:01:01+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c298fe700", "title": "Polyglot Dojo #0: Introduction", "url": "https://shahinism.com/articles/2019/11/polyglot-dojo-0-introduction/", "published_at": "2019-11-29T01:01:01+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c29fd2642", "title": "How to not use Google search", "url": "https://shahinism.com/articles/2019/06/how-to-not-use-google-search/", "published_at": "2019-06-04T01:01:01+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c2aea4033", "title": "Run Python test suites without leaving Emacs", "url": "https://shahinism.com/articles/2019/05/run-python-test-suites-without-leaving-emacs/", "published_at": "2019-05-27T01:01:01+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c2bba4406", "title": "My Journey to Privacy", "url": "https://shahinism.com/articles/2019/05/my-journey-to-privacy/", "published_at": "2019-05-16T01:01:01+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c2c6a1ee4", "title": "First Post", "url": "https://shahinism.com/articles/2019/04/first-post/", "published_at": "2019-04-23T01:01:01+00:00" }, { "id": "01a087de-e6a4-7075-a213-446c2c96bd5e", "title": "For God’s sake, secure your Mongo/Redis/etc!", "url": "https://shahinism.com/articles/2016/12/for-gods-sake-secure-your-mongoredisetc/", "published_at": "2016-12-27T12:11:03+00:00" } ] posts Claim your blog
Back to shahinism.com
Blog · corpus.blog/blogs/shahinism.com/posts

shahinism.com

shahinism.com

2026

2024

2023

2021

2020

2019

2016