<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Home on Madhur Ahuja</title><link>https://madhur.co.in/</link><description>Recent content in Home on Madhur Ahuja</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Sat, 15 Aug 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://madhur.co.in/index.xml" rel="self" type="application/rss+xml"/><item><title>This Blog Just Moved From Jekyll to Hugo</title><link>https://madhur.co.in/blog/2026/08/15/migrating-from-jekyll-to-hugo.html</link><pubDate>Sat, 15 Aug 2026 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2026/08/15/migrating-from-jekyll-to-hugo.html</guid><description>After 15 years on Jekyll, this site now runs on Hugo with the PaperMod theme — here&amp;#39;s what changed, what I kept, and what I dropped.</description></item><item><title>WireGuard Docker Configuration Drift</title><link>https://madhur.co.in/blog/2026/08/01/wireguard-docker-issue.html</link><pubDate>Sat, 01 Aug 2026 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2026/08/01/wireguard-docker-issue.html</guid><description>SWireGuard Docker Configuration Drift</description></item><item><title>Setting up SMTP Mail Relay with msmtpd and systemd Socket Activation</title><link>https://madhur.co.in/blog/2026/07/01/setup-email-smtp-relay-gmail.html</link><pubDate>Wed, 01 Jul 2026 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2026/07/01/setup-email-smtp-relay-gmail.html</guid><description>Setting up SMTP Mail Relay with msmtpd and systemd Socket Activation</description></item><item><title>Secure Your Homelab: Exposing Services Selectively with WireGuard VPN and Traefik</title><link>https://madhur.co.in/blog/2026/06/01/secure-homelab-wireguard-docker-traefik.html</link><pubDate>Mon, 01 Jun 2026 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2026/06/01/secure-homelab-wireguard-docker-traefik.html</guid><description>Secure Your Homelab: Exposing Services Selectively with WireGuard VPN and Traefik</description></item><item><title>How to Send Emails from Python Using msmtp and Gmail</title><link>https://madhur.co.in/blog/2026/05/01/send-gmail-email-python.html</link><pubDate>Fri, 01 May 2026 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2026/05/01/send-gmail-email-python.html</guid><description>How to Send Emails from Python Using msmtp and Gmail</description></item><item><title>Block Storage vs Object Storage</title><link>https://madhur.co.in/blog/2026/04/01/block-storage-vs-object-storage.html</link><pubDate>Wed, 01 Apr 2026 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2026/04/01/block-storage-vs-object-storage.html</guid><description>Block Storage vs Object Storage</description></item><item><title>Systemd timer running on every boot</title><link>https://madhur.co.in/blog/2026/03/01/systemd-timer-running-every-boot.html</link><pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2026/03/01/systemd-timer-running-every-boot.html</guid><description>Systemd timer running on every boot</description></item><item><title>Displaying Google Calendar Events in Conky</title><link>https://madhur.co.in/blog/2026/02/01/conky-google-calendar.html</link><pubDate>Sun, 01 Feb 2026 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2026/02/01/conky-google-calendar.html</guid><description>Displaying Google Calendar Events in Conky</description></item><item><title>Image location detection using Bedrock and Claude Model</title><link>https://madhur.co.in/blog/2026/01/01/image-location-detection-bedrock.html</link><pubDate>Thu, 01 Jan 2026 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2026/01/01/image-location-detection-bedrock.html</guid><description>Image location detection using Bedrock and Claude Model</description></item><item><title>Automating Gmail PDF Extraction and Paperless NGX Integration</title><link>https://madhur.co.in/blog/2025/12/29/automating-gmail-pdf-extraction-paperless.html</link><pubDate>Mon, 29 Dec 2025 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2025/12/29/automating-gmail-pdf-extraction-paperless.html</guid><description>A Python script that automatically extracts PDFs from Gmail, removes password protection, and uploads them to Paperless NGX for document management.</description></item><item><title>Building a RAG System for Your Jekyll Blog with AWS Bedrock Claude</title><link>https://madhur.co.in/blog/2025/12/01/jekyll-blog-rag-vector-db.html</link><pubDate>Mon, 01 Dec 2025 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2025/12/01/jekyll-blog-rag-vector-db.html</guid><description>Building a RAG System for Your Jekyll Blog with AWS Bedrock Claude</description></item><item><title>Rofi Process Killer</title><link>https://madhur.co.in/blog/2025/11/01/rofi-process-killer.html</link><pubDate>Sat, 01 Nov 2025 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2025/11/01/rofi-process-killer.html</guid><description>Rofi Process Killer</description></item><item><title>Configuring AWS ALB Timeouts</title><link>https://madhur.co.in/blog/2025/10/01/configuring-aws-alb-timeout.html</link><pubDate>Wed, 01 Oct 2025 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2025/10/01/configuring-aws-alb-timeout.html</guid><description>Configuring AWS ALB Timeouts</description></item><item><title>Non Blocking I/O</title><link>https://madhur.co.in/blog/2025/09/01/non-blocking-io.html</link><pubDate>Mon, 01 Sep 2025 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2025/09/01/non-blocking-io.html</guid><description>Non Blocking I/O</description></item><item><title>Troubleshooting Shared Library Issues on Linux</title><link>https://madhur.co.in/blog/2025/08/01/troubleshooting-shared-library-issues-linux.html</link><pubDate>Fri, 01 Aug 2025 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2025/08/01/troubleshooting-shared-library-issues-linux.html</guid><description>Troubleshooting Shared Library Issues on Linux</description></item><item><title>Row level locking in database</title><link>https://madhur.co.in/blog/2025/07/09/row-level-locking-database.html</link><pubDate>Wed, 09 Jul 2025 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2025/07/09/row-level-locking-database.html</guid><description>Row level locking in database</description></item><item><title>Run elasticsearch in docker</title><link>https://madhur.co.in/blog/2025/06/01/run-elasticsearch-docker.html</link><pubDate>Sun, 01 Jun 2025 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2025/06/01/run-elasticsearch-docker.html</guid><description>Run elasticsearch in docker</description></item><item><title>HTTP Certificate Pinning</title><link>https://madhur.co.in/blog/2025/05/01/http-certificate-pinning.html</link><pubDate>Thu, 01 May 2025 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2025/05/01/http-certificate-pinning.html</guid><description>HTTP Certificate Pinning</description></item><item><title>Combine videos using ffmpeg</title><link>https://madhur.co.in/blog/2025/04/01/combine-videos-ffmpeg.html</link><pubDate>Tue, 01 Apr 2025 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2025/04/01/combine-videos-ffmpeg.html</guid><description>Combine videos using ffmpeg</description></item><item><title>Case of sudden Kafka lag drop</title><link>https://madhur.co.in/blog/2025/03/01/case-of-sudden-kafka-lag-drop.html</link><pubDate>Sat, 01 Mar 2025 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2025/03/01/case-of-sudden-kafka-lag-drop.html</guid><description>Case of sudden Kafka lag drop</description></item><item><title>Revealing Hidden characters in a string</title><link>https://madhur.co.in/blog/2025/02/01/revealing-hidden-characters.html</link><pubDate>Sat, 01 Feb 2025 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2025/02/01/revealing-hidden-characters.html</guid><description>Revealing Hidden characters in a string</description></item><item><title>Homelab Dashboard</title><link>https://madhur.co.in/blog/2025/01/19/homelab-dashboard.html</link><pubDate>Sun, 19 Jan 2025 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2025/01/19/homelab-dashboard.html</guid><description>Homelab Dashboard</description></item><item><title>Qtile crash on Arch Linux</title><link>https://madhur.co.in/blog/2024/12/25/qtile-crash-arch-linux.html</link><pubDate>Wed, 25 Dec 2024 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2024/12/25/qtile-crash-arch-linux.html</guid><description>Qtile crash on Arch Linux</description></item><item><title>Resize disk in Proxmox VM</title><link>https://madhur.co.in/blog/2024/11/01/resize-disks-proxmox.html</link><pubDate>Fri, 01 Nov 2024 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2024/11/01/resize-disks-proxmox.html</guid><description>Resize disk in Proxmox VM</description></item><item><title>s3cmd Fast way to copy s3 data</title><link>https://madhur.co.in/blog/2024/10/07/s5cmd-fastest-way-to-copy-s3-data.html</link><pubDate>Mon, 07 Oct 2024 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2024/10/07/s5cmd-fastest-way-to-copy-s3-data.html</guid><description>s3cmd Fast way to copy s3 data</description></item><item><title>_class attribute in Spring data MongoDB_</title><link>https://madhur.co.in/blog/2024/10/05/class-attribute-spring-data-mongodb.html</link><pubDate>Sat, 05 Oct 2024 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2024/10/05/class-attribute-spring-data-mongodb.html</guid><description>_class attribute in Spring data MongoDB</description></item><item><title>Create local kubernetes cluster using Kind</title><link>https://madhur.co.in/blog/2024/09/01/create-local-k8s-cluster-kind.html</link><pubDate>Sun, 01 Sep 2024 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2024/09/01/create-local-k8s-cluster-kind.html</guid><description>Create local kubernetes cluster using Kind</description></item><item><title>Load testing Websocket servers using Locust</title><link>https://madhur.co.in/blog/2024/08/04/load-testing-websocket-servers-locust.html</link><pubDate>Sun, 04 Aug 2024 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2024/08/04/load-testing-websocket-servers-locust.html</guid><description>Load testing Websocket servers using Locust</description></item><item><title>Monitoring Redis Streams lag in Prometheus and Grafana</title><link>https://madhur.co.in/blog/2024/07/14/monitoring-redis-streams-lag-prometheus-grafana.html</link><pubDate>Sun, 14 Jul 2024 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2024/07/14/monitoring-redis-streams-lag-prometheus-grafana.html</guid><description>Monitoring Redis Streams lag in Prometheus and Grafana</description></item><item><title>Faking time in JVM Process</title><link>https://madhur.co.in/blog/2024/07/01/mocking-jvm-time.html</link><pubDate>Mon, 01 Jul 2024 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2024/07/01/mocking-jvm-time.html</guid><description>Faking time in JVM Process</description></item><item><title>Rtkit Daemon flooding journalctl logs</title><link>https://madhur.co.in/blog/2024/06/22/journalctl-rtkit-daemon.html</link><pubDate>Sat, 22 Jun 2024 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2024/06/22/journalctl-rtkit-daemon.html</guid><description>Rtkit Daemon flooding journalctl logs</description></item><item><title>My Homelab Update - Part I</title><link>https://madhur.co.in/blog/2024/05/01/my-homelab-update-part1.html</link><pubDate>Wed, 01 May 2024 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2024/05/01/my-homelab-update-part1.html</guid><description>My Homelab Update - Part I</description></item><item><title>Quick Websockets client in Python</title><link>https://madhur.co.in/blog/2024/04/13/quick-websockets-client-python.html</link><pubDate>Sat, 13 Apr 2024 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2024/04/13/quick-websockets-client-python.html</guid><description>Quick Websockets client in Python</description></item><item><title>Building RediSearch module in Amazon Linux 2</title><link>https://madhur.co.in/blog/2024/03/08/building-redisearch-module.html</link><pubDate>Fri, 08 Mar 2024 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2024/03/08/building-redisearch-module.html</guid><description>Building RediSearch module in Amazon Linux 2</description></item><item><title>Websocket - Close Status codes</title><link>https://madhur.co.in/blog/2024/02/11/websocket-close-status-codes.html</link><pubDate>Sun, 11 Feb 2024 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2024/02/11/websocket-close-status-codes.html</guid><description>Websocket - Close Status codes</description></item><item><title>Proxmox - Setting up user friendly urls</title><link>https://madhur.co.in/blog/2024/01/07/proxmox-user-friendly-urls.html</link><pubDate>Sun, 07 Jan 2024 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2024/01/07/proxmox-user-friendly-urls.html</guid><description>Proxmox - Setting up user friendly urls</description></item><item><title>Using Kitty hints to parse maven output</title><link>https://madhur.co.in/blog/2023/12/28/using-kitty-hints-parse-maven-output.html</link><pubDate>Thu, 28 Dec 2023 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2023/12/28/using-kitty-hints-parse-maven-output.html</guid><description>Using Kitty hints to parse maven output</description></item><item><title>Android SSL Pinning Bypass</title><link>https://madhur.co.in/blog/2023/12/05/android-ssl-pinning-bypass.html</link><pubDate>Tue, 05 Dec 2023 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2023/12/05/android-ssl-pinning-bypass.html</guid><description>Android SSL Pinning Bypass</description></item><item><title>Transfer files from k8s or docker shell to other host</title><link>https://madhur.co.in/blog/2023/11/14/transfer-files-from-shell-k8s.html</link><pubDate>Tue, 14 Nov 2023 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2023/11/14/transfer-files-from-shell-k8s.html</guid><description>Transfer files from k8s or docker shell to other host</description></item><item><title>Intellij cannot launch because 'process 2' already running</title><link>https://madhur.co.in/blog/2023/10/30/cannot-start-intellij.html</link><pubDate>Mon, 30 Oct 2023 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2023/10/30/cannot-start-intellij.html</guid><description>Intellij cannot launch because &amp;#39;process 2&amp;#39; already running</description></item><item><title>Recovering from Arch Boot failure</title><link>https://madhur.co.in/blog/2023/09/30/recovering-from-arch-boot.html</link><pubDate>Sat, 30 Sep 2023 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2023/09/30/recovering-from-arch-boot.html</guid><description>Recovering from Arch Boot failure</description></item><item><title>Ansible roles for installing and configuring Vitess</title><link>https://madhur.co.in/blog/2023/08/30/ansible-vitess.html</link><pubDate>Wed, 30 Aug 2023 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2023/08/30/ansible-vitess.html</guid><description>Ansible roles for installing and configuring Vitess</description></item><item><title>Creating vagrant basebox</title><link>https://madhur.co.in/blog/2023/07/30/creating-vagrant-base-box.html</link><pubDate>Sun, 30 Jul 2023 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2023/07/30/creating-vagrant-base-box.html</guid><description>Creating vagrant basebox</description></item><item><title>Process huge log files</title><link>https://madhur.co.in/blog/2023/06/10/processing-huge-log-files.html</link><pubDate>Sat, 10 Jun 2023 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2023/06/10/processing-huge-log-files.html</guid><description>Process huge log files</description></item><item><title>LeetCode Format v1.4</title><link>https://madhur.co.in/blog/2023/05/21/chrome-extension-leetcode-format.html</link><pubDate>Sun, 21 May 2023 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2023/05/21/chrome-extension-leetcode-format.html</guid><description>LeetCode Format v1.4</description></item><item><title>zsh and /etc/profile</title><link>https://madhur.co.in/blog/2023/05/10/zsh-and-etc-profile.html</link><pubDate>Wed, 10 May 2023 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2023/05/10/zsh-and-etc-profile.html</guid><description>zsh and /etc/profile</description></item><item><title>Taking memory dump of JVM Applications</title><link>https://madhur.co.in/blog/2023/04/23/taking-memory-dump-jvm.html</link><pubDate>Sun, 23 Apr 2023 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2023/04/23/taking-memory-dump-jvm.html</guid><description>Taking memory dump of JVM Applications</description></item><item><title>Workaround AWS Lambda 6 MB Response size limit</title><link>https://madhur.co.in/blog/2023/03/23/workaround-lambda-6mb-limit.html</link><pubDate>Thu, 23 Mar 2023 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2023/03/23/workaround-lambda-6mb-limit.html</guid><description>Workaround AWS Lambda 6 MB Response size limit</description></item><item><title>A nifty Apache Benchmark alternative - hey</title><link>https://madhur.co.in/blog/2023/02/23/apache-benchmark-alternative-hey.html</link><pubDate>Thu, 23 Feb 2023 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2023/02/23/apache-benchmark-alternative-hey.html</guid><description>A nifty Apache Benchmark alternative - hey</description></item><item><title>Monitoring Guava Cache Statistics</title><link>https://madhur.co.in/blog/2023/01/23/monitoring-guava-cache-statistics.html</link><pubDate>Mon, 23 Jan 2023 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2023/01/23/monitoring-guava-cache-statistics.html</guid><description>Monitoring Guava Cache Statistics</description></item><item><title>User Defined function(UDF) to filter cloudfront IP Addresses from AWS Athena Logs</title><link>https://madhur.co.in/blog/2022/12/10/aws-athena-user-defined-function-cloudfront-filter.html</link><pubDate>Sat, 10 Dec 2022 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2022/12/10/aws-athena-user-defined-function-cloudfront-filter.html</guid><description>User Defined function(UDF) to filter cloudfront IP Addresses from AWS Athena Logs</description></item><item><title>Linux Tips and Tricks</title><link>https://madhur.co.in/blog/2022/11/20/linux-tips-tricks.html</link><pubDate>Sun, 20 Nov 2022 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2022/11/20/linux-tips-tricks.html</guid><description>Linux Tips and Tricks</description></item><item><title>Adding HTTP Proxy to Spring WebFlux Client</title><link>https://madhur.co.in/blog/2022/09/03/adding-http-proxy-spring-webflux-client.html</link><pubDate>Sat, 03 Sep 2022 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2022/09/03/adding-http-proxy-spring-webflux-client.html</guid><description>Adding HTTP Proxy to Spring WebFlux Client</description></item><item><title>Fedora Tips &amp; Tricks</title><link>https://madhur.co.in/blog/2022/08/06/fedora-tips.html</link><pubDate>Sat, 06 Aug 2022 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2022/08/06/fedora-tips.html</guid><description>Fedora Tips &amp;amp; Tricks</description></item><item><title>Gracefully shutting down JVM applications</title><link>https://madhur.co.in/blog/2022/07/10/gracefully-shutting-down-jvm-applications.html</link><pubDate>Sun, 10 Jul 2022 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2022/07/10/gracefully-shutting-down-jvm-applications.html</guid><description>Gracefully shutting down JVM applications</description></item><item><title>Web3 ethereum development breaking changes</title><link>https://madhur.co.in/blog/2022/06/19/web3-ethereum-development-breaking-changes.html</link><pubDate>Sun, 19 Jun 2022 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2022/06/19/web3-ethereum-development-breaking-changes.html</guid><description>Web3 ethereum development breaking changes</description></item><item><title>Find non-expiring keys in Redis</title><link>https://madhur.co.in/blog/2022/06/04/find-non-expiring-keys-redis.html</link><pubDate>Sat, 04 Jun 2022 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2022/06/04/find-non-expiring-keys-redis.html</guid><description>Find non-expiring keys in Redis</description></item><item><title>Redis Node moving out of cluster repeatedly</title><link>https://madhur.co.in/blog/2022/05/15/redis-node-moving-out-cluster-repeatedly.html</link><pubDate>Sun, 15 May 2022 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2022/05/15/redis-node-moving-out-cluster-repeatedly.html</guid><description>Redis Node moving out of cluster repeatedly</description></item><item><title>Difference between upper90 and mean90</title><link>https://madhur.co.in/blog/2022/04/16/difference-betweeen-upper90-mean90.html</link><pubDate>Sat, 16 Apr 2022 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2022/04/16/difference-betweeen-upper90-mean90.html</guid><description>Difference between upper90 and mean90</description></item><item><title>Execute a transaction in etherum using ganache</title><link>https://madhur.co.in/blog/2022/03/20/ethereum-transaction-ganache.html</link><pubDate>Sun, 20 Mar 2022 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2022/03/20/ethereum-transaction-ganache.html</guid><description>Execute a transaction in etherum using ganache</description></item><item><title>Clear buffer memory on Linux</title><link>https://madhur.co.in/blog/2022/03/18/clear-buffer-memory-linux.html</link><pubDate>Fri, 18 Mar 2022 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2022/03/18/clear-buffer-memory-linux.html</guid><description>Clear buffer memory on Linux</description></item><item><title>Setup Cassandra Cluster using Ansible and Vagrant</title><link>https://madhur.co.in/blog/2022/03/13/setup-cassandra-cluster-using-ansible-vagrant.html</link><pubDate>Sun, 13 Mar 2022 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2022/03/13/setup-cassandra-cluster-using-ansible-vagrant.html</guid><description>Setup Cassandra Cluster using Ansible and Vagrant</description></item><item><title>Parental Control Softwares for Windows and Linux</title><link>https://madhur.co.in/blog/2022/03/06/parental-control-softwares.html</link><pubDate>Sun, 06 Mar 2022 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2022/03/06/parental-control-softwares.html</guid><description>Parental Control Softwares for Windows and Linux</description></item><item><title>Linux GUI Tips</title><link>https://madhur.co.in/blog/2022/02/27/linux-gui-tips.html</link><pubDate>Sun, 27 Feb 2022 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2022/02/27/linux-gui-tips.html</guid><description>Linux GUI Tips</description></item><item><title>Useful Systemd commands</title><link>https://madhur.co.in/blog/2022/02/20/useful-systemd-commands.html</link><pubDate>Sun, 20 Feb 2022 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2022/02/20/useful-systemd-commands.html</guid><description>Useful Systemd commands</description></item><item><title>CentOS is dead</title><link>https://madhur.co.in/blog/2022/02/05/centos-is-dead.html</link><pubDate>Sat, 05 Feb 2022 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2022/02/05/centos-is-dead.html</guid><description>CentOS is dead</description></item><item><title>Increase Grub2 Resolution in CentOS / Fedora</title><link>https://madhur.co.in/blog/2022/01/30/increase-grub2-resolution-centos.html</link><pubDate>Sun, 30 Jan 2022 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2022/01/30/increase-grub2-resolution-centos.html</guid><description>Increase Grub2 Resolution in CentOS / Fedora</description></item><item><title>Fedora / CentOS Tips &amp; Tricks - running it as Desktop OS</title><link>https://madhur.co.in/blog/2022/01/23/fedora-centos-tips-tricks.html</link><pubDate>Sun, 23 Jan 2022 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2022/01/23/fedora-centos-tips-tricks.html</guid><description>Fedora / CentOS Tips &amp;amp; Tricks - running it as Desktop OS</description></item><item><title>Quickly Compare two MySQL databases</title><link>https://madhur.co.in/blog/2022/01/16/quickly-compare-two-mysql-databases.html</link><pubDate>Sun, 16 Jan 2022 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2022/01/16/quickly-compare-two-mysql-databases.html</guid><description>Quickly Compare two MySQL databases</description></item><item><title>Forbidden error while accessing AWS services on Kubernetes</title><link>https://madhur.co.in/blog/2022/01/09/forbidden-aws-eks.html</link><pubDate>Sun, 09 Jan 2022 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2022/01/09/forbidden-aws-eks.html</guid><description>Forbidden error while accessing AWS services on Kubernetes</description></item><item><title>Provision Redis cluster through Vagrant and Ansible</title><link>https://madhur.co.in/blog/2022/01/01/redis-cluster-ansible.html</link><pubDate>Sat, 01 Jan 2022 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2022/01/01/redis-cluster-ansible.html</guid><description>Provision Redis cluster through Vagrant and Ansible</description></item><item><title>Proxy nodejs requests through Proxy Server</title><link>https://madhur.co.in/blog/2021/12/12/proxy-nodejs-requests.html</link><pubDate>Sun, 12 Dec 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/12/12/proxy-nodejs-requests.html</guid><description>Proxy nodejs requests through Proxy Server</description></item><item><title>Kernel Panic with AMD Ryzen 5600x on CentOS 7</title><link>https://madhur.co.in/blog/2021/11/27/linux-kernel-panic.html</link><pubDate>Sat, 27 Nov 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/11/27/linux-kernel-panic.html</guid><description>Kernel Panic with AMD Ryzen 5600x on CentOS 7</description></item><item><title>Offload IO Intensive tasks to worker threads</title><link>https://madhur.co.in/blog/2021/11/20/offload-io-intensive-tasks-to-threads.html</link><pubDate>Sat, 20 Nov 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/11/20/offload-io-intensive-tasks-to-threads.html</guid><description>Offload IO Intensive tasks to worker thread</description></item><item><title>Conventional Commits</title><link>https://madhur.co.in/blog/2021/11/13/conventional-commits.html</link><pubDate>Sat, 13 Nov 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/11/13/conventional-commits.html</guid><description>Conventional Commits</description></item><item><title>Querying AWS ALB Logs using Athena</title><link>https://madhur.co.in/blog/2021/11/06/querying-alb-logs-aws-athena.html</link><pubDate>Sat, 06 Nov 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/11/06/querying-alb-logs-aws-athena.html</guid><description>Querying AWS ALB Logs using Athena</description></item><item><title>Backup and Restore specific cassandra tables</title><link>https://madhur.co.in/blog/2021/10/30/backup-and-restore-specific-cassandra-tables.html</link><pubDate>Sat, 30 Oct 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/10/30/backup-and-restore-specific-cassandra-tables.html</guid><description>Backup and Restore specific cassandra tables</description></item><item><title>Using sshpass to skip entering passwords for SSH</title><link>https://madhur.co.in/blog/2021/10/23/using-sshpass-to-skip-entering-password.html</link><pubDate>Sat, 23 Oct 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/10/23/using-sshpass-to-skip-entering-password.html</guid><description>Using sshpass to skip entering passwords for SSH</description></item><item><title>Running Spark on Windows</title><link>https://madhur.co.in/blog/2021/10/16/running-spark-on-windows.html</link><pubDate>Sat, 16 Oct 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/10/16/running-spark-on-windows.html</guid><description>Running Spark on Windows</description></item><item><title>zsh Autocomplete</title><link>https://madhur.co.in/blog/2021/10/09/zsh-autocomplete.html</link><pubDate>Sat, 09 Oct 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/10/09/zsh-autocomplete.html</guid><description>zsh Autocomplete</description></item><item><title>Designing Change Data Capture</title><link>https://madhur.co.in/blog/2021/08/20/design-change-data-capture.html</link><pubDate>Fri, 20 Aug 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/08/20/design-change-data-capture.html</guid><description>Designing Change Data Capture</description></item><item><title>Liveness and Readiness Probes</title><link>https://madhur.co.in/blog/2021/08/14/liveness-and-readiness-probes.html</link><pubDate>Sat, 14 Aug 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/08/14/liveness-and-readiness-probes.html</guid><description>Liveness and Readiness Probes</description></item><item><title>Meaning of at-least once, at-most once and exactly-once delivery</title><link>https://madhur.co.in/blog/2021/07/18/meaning-of-at-least-once-at-most-once-and-exactly-once-delivery.html</link><pubDate>Sun, 18 Jul 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/07/18/meaning-of-at-least-once-at-most-once-and-exactly-once-delivery.html</guid><description>Meaning of at-least once, at-most once and exactly-once delivery</description></item><item><title>How tinyUrl Does redirection</title><link>https://madhur.co.in/blog/2021/07/11/how-tinyurl-does-redirection.html</link><pubDate>Sun, 11 Jul 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/07/11/how-tinyurl-does-redirection.html</guid><description>How tinyUrl Does redirection</description></item><item><title>Encoding and Hashing</title><link>https://madhur.co.in/blog/2021/07/06/encoding-and-hashing.html</link><pubDate>Tue, 06 Jul 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/07/06/encoding-and-hashing.html</guid><description>Encoding and Hashing</description></item><item><title>Capacity Estimation Examples</title><link>https://madhur.co.in/blog/2021/06/27/capacity-estimation.html</link><pubDate>Sun, 27 Jun 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/06/27/capacity-estimation.html</guid><description>Capacity Estimation Examples</description></item><item><title>Simple Design of Communication Service</title><link>https://madhur.co.in/blog/2021/06/20/simple-design-of-communication-service.html</link><pubDate>Sun, 20 Jun 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/06/20/simple-design-of-communication-service.html</guid><description>Simple Design of Communication Service</description></item><item><title>API Response Group Pattern - Improving latencies using GraphQL</title><link>https://madhur.co.in/blog/2021/06/13/api-response-group-pattern.html</link><pubDate>Sun, 13 Jun 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/06/13/api-response-group-pattern.html</guid><description>API Response Group Pattern - Improving latencies using GraphQL</description></item><item><title>Migrating from SQL to No-SQL without downtime</title><link>https://madhur.co.in/blog/2021/06/05/migrating-from-sql-nosql.html</link><pubDate>Sat, 05 Jun 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/06/05/migrating-from-sql-nosql.html</guid><description>Migrating from SQL to No-SQL without downtime</description></item><item><title>Fun with Splunk</title><link>https://madhur.co.in/blog/2021/05/30/fun-with-splunk.html</link><pubDate>Sun, 30 May 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/05/30/fun-with-splunk.html</guid><description>Fun with Splunk</description></item><item><title>Few Useful Kubectl commands</title><link>https://madhur.co.in/blog/2021/05/22/few-useful-kubectl-commands.html</link><pubDate>Sat, 22 May 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/05/22/few-useful-kubectl-commands.html</guid><description>Few Useful Kubectl commands</description></item><item><title>Handling Distributed transactions rollback</title><link>https://madhur.co.in/blog/2021/05/16/handling-distributed-transactions-rollback.html</link><pubDate>Sun, 16 May 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/05/16/handling-distributed-transactions-rollback.html</guid><description>Handling Distributed transactions rollback</description></item><item><title>Removing the empty space around image using blur technique in CSS</title><link>https://madhur.co.in/blog/2021/05/09/removing-empty-space-around-image-using-blur-css.html</link><pubDate>Sun, 09 May 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/05/09/removing-empty-space-around-image-using-blur-css.html</guid><description>Removing the empty space around image using blur technique in CSS</description></item><item><title>Useful Angular libraries</title><link>https://madhur.co.in/blog/2021/05/02/useful-angular-libraries.html</link><pubDate>Sun, 02 May 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/05/02/useful-angular-libraries.html</guid><description>Useful Angular libraries</description></item><item><title>HashMap with TTL</title><link>https://madhur.co.in/blog/2021/02/27/hashmap-with-ttl.html</link><pubDate>Sat, 27 Feb 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/02/27/hashmap-with-ttl.html</guid><description>HashMap with TTL</description></item><item><title>Same origin policy and CORS</title><link>https://madhur.co.in/blog/2021/02/20/same-origin-policy-and-cors.html</link><pubDate>Sat, 20 Feb 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/02/20/same-origin-policy-and-cors.html</guid><description>Same origin policy and CORS</description></item><item><title>Ways of traversing tree</title><link>https://madhur.co.in/blog/2021/02/10/ways-of-traversing-tree.html</link><pubDate>Wed, 10 Feb 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/02/10/ways-of-traversing-tree.html</guid><description>Ways of traversing tree</description></item><item><title>Pitfalls while using Lombok with Java Development</title><link>https://madhur.co.in/blog/2021/02/06/pitfalls-while-using-lombok.html</link><pubDate>Sat, 06 Feb 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/02/06/pitfalls-while-using-lombok.html</guid><description>Pitfalls while using Lombok with Java Development</description></item><item><title>LeetCode Format</title><link>https://madhur.co.in/blog/2021/01/18/leetcode-format.html</link><pubDate>Mon, 18 Jan 2021 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2021/01/18/leetcode-format.html</guid><description>LeetCode Format</description></item><item><title>Realtime Google Analytics in Firefox tab</title><link>https://madhur.co.in/blog/2020/12/27/realtime-google-analytics-firefox-tab.html</link><pubDate>Sun, 27 Dec 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/12/27/realtime-google-analytics-firefox-tab.html</guid><description>Realtime Google Analytics in Firefox tab</description></item><item><title>Sockets in shell</title><link>https://madhur.co.in/blog/2020/12/13/sockets-in-shell.html</link><pubDate>Sun, 13 Dec 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/12/13/sockets-in-shell.html</guid><description>Sockets in shell</description></item><item><title>Binary Search bug in JDK</title><link>https://madhur.co.in/blog/2020/12/05/binary-search-jdk-bug.html</link><pubDate>Sat, 05 Dec 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/12/05/binary-search-jdk-bug.html</guid><description>Binary Search bug in JDK</description></item><item><title>Generic traffic splitting algorithm</title><link>https://madhur.co.in/blog/2020/11/29/generic-traffic-splitting-algorithm.html</link><pubDate>Sun, 29 Nov 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/11/29/generic-traffic-splitting-algorithm.html</guid><description>Generic traffic splitting algorithm</description></item><item><title>Speed up debugging in IntelliJ</title><link>https://madhur.co.in/blog/2020/11/13/speed-up-slow-debugging-intellij.html</link><pubDate>Fri, 13 Nov 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/11/13/speed-up-slow-debugging-intellij.html</guid><description>Speed up debugging in IntelliJ</description></item><item><title>Dual Booting Windows and Linux on different HDD / SDD</title><link>https://madhur.co.in/blog/2020/11/01/dual-boot-windows-kali-different-hdd.html</link><pubDate>Sun, 01 Nov 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/11/01/dual-boot-windows-kali-different-hdd.html</guid><description>Dual Booting Windows and Linux on different HDD / SDD</description></item><item><title>Partitioned Browser Cache Starting Chrome v86</title><link>https://madhur.co.in/blog/2020/10/18/partitioned-browser-cache.html</link><pubDate>Sun, 18 Oct 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/10/18/partitioned-browser-cache.html</guid><description>Partitioned Browser Cache Starting Chrome v86</description></item><item><title>Handle timeouts while connecting to cassandra</title><link>https://madhur.co.in/blog/2020/09/27/handle-cassandra-timeouts.html</link><pubDate>Sun, 27 Sep 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/09/27/handle-cassandra-timeouts.html</guid><description>Handle timeouts while connecting to cassandra</description></item><item><title>Object Oriented Programming in JavaScript</title><link>https://madhur.co.in/blog/2020/09/27/oop-javascript.html</link><pubDate>Sun, 27 Sep 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/09/27/oop-javascript.html</guid><description>Object Oriented Programming in JavaScript</description></item><item><title>Javascript Event loop and call stack</title><link>https://madhur.co.in/blog/2020/09/12/javascript-event-loop-call-stack.html</link><pubDate>Sat, 12 Sep 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/09/12/javascript-event-loop-call-stack.html</guid><description>Javascript Event loop and call stack</description></item><item><title>Estimate no. of kafka partitions handled by a single thread on compute</title><link>https://madhur.co.in/blog/2020/09/06/estimate-partitions-single-thread-compute.html</link><pubDate>Sun, 06 Sep 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/09/06/estimate-partitions-single-thread-compute.html</guid><description>Estimate no. of kafka partitions handled by a single thread on compute</description></item><item><title>Kafka Consumer Multithreading</title><link>https://madhur.co.in/blog/2020/08/30/kafka-consumer-multithreading.html</link><pubDate>Sun, 30 Aug 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/08/30/kafka-consumer-multithreading.html</guid><description>Kafka Consumer Multithreading</description></item><item><title>Debugging SSL Issues</title><link>https://madhur.co.in/blog/2020/08/21/debugging-ssl-issues.html</link><pubDate>Fri, 21 Aug 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/08/21/debugging-ssl-issues.html</guid><description>Debugging SSL Issues</description></item><item><title>Why do Lambda functions require final variables</title><link>https://madhur.co.in/blog/2020/08/16/lambda-functions-final-variable.html</link><pubDate>Sun, 16 Aug 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/08/16/lambda-functions-final-variable.html</guid><description>Why do Lambda functions require final variables</description></item><item><title>Best Mechanical Keyboards in India for Engineers</title><link>https://madhur.co.in/blog/2020/08/08/best-mechanical-keyboards-india.html</link><pubDate>Sat, 08 Aug 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/08/08/best-mechanical-keyboards-india.html</guid><description>Best Mechanical Keyboards in India for Engineers</description></item><item><title>Overview of Active-Active Kafka Cluster using MirrorMaker 2.0</title><link>https://madhur.co.in/blog/2020/08/01/active-active-kafka-cluster.html</link><pubDate>Sat, 01 Aug 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/08/01/active-active-kafka-cluster.html</guid><description>Overview of Active-Active Kafka Cluster using MirrorMaker 2.0</description></item><item><title>Kotlin for Java Developers - Part 3</title><link>https://madhur.co.in/blog/2020/07/26/kotlin-for-java-developers-part3.html</link><pubDate>Sun, 26 Jul 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/07/26/kotlin-for-java-developers-part3.html</guid><description>Kotlin for Java Developers</description></item><item><title>Kotlin for Java Developers - Part 2</title><link>https://madhur.co.in/blog/2020/07/17/kotlin-for-java-developers-part2.html</link><pubDate>Fri, 17 Jul 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/07/17/kotlin-for-java-developers-part2.html</guid><description>Kotlin for Java Developers</description></item><item><title>Kotlin for Java Developers</title><link>https://madhur.co.in/blog/2020/07/10/kotlin-for-java-developers.html</link><pubDate>Fri, 10 Jul 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/07/10/kotlin-for-java-developers.html</guid><description>Kotlin for Java Developers</description></item><item><title>Bulk insertion of Rows in CosmosDB</title><link>https://madhur.co.in/blog/2020/07/03/buld-insert-cosmosdb.html</link><pubDate>Fri, 03 Jul 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/07/03/buld-insert-cosmosdb.html</guid><description>Bulk insertion of Rows in CosmosDB</description></item><item><title>The validation data provided must contain class</title><link>https://madhur.co.in/blog/2020/06/28/validation-data-provided-must-contain-class.html</link><pubDate>Sun, 28 Jun 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/06/28/validation-data-provided-must-contain-class.html</guid><description>The validation data provided must contain class</description></item><item><title>Determine if your Macbook battery is about to die</title><link>https://madhur.co.in/blog/2020/06/21/find-out-if-your-macbook-battery-die.html</link><pubDate>Sun, 21 Jun 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/06/21/find-out-if-your-macbook-battery-die.html</guid><description>Determine if your Macbook battery is about to die</description></item><item><title>Finding intersection of two lists in shell</title><link>https://madhur.co.in/blog/2020/06/13/find-intersection-lists-shell.html</link><pubDate>Sat, 13 Jun 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/06/13/find-intersection-lists-shell.html</guid><description>Finding intersection of two lists in shell</description></item><item><title>Executing commands in parallel in Shell and other fun stuff</title><link>https://madhur.co.in/blog/2020/06/06/generate-multiple-uuid-shell.html</link><pubDate>Sat, 06 Jun 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/06/06/generate-multiple-uuid-shell.html</guid><description>Executing commands in parallel in Shell and other fun stuff</description></item><item><title>Customize Windows 10 Desktop</title><link>https://madhur.co.in/blog/2020/05/30/customize-windows10-desktop.html</link><pubDate>Sat, 30 May 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/05/30/customize-windows10-desktop.html</guid><description>Customize Windows 10 Desktop</description></item><item><title>Different HTTP Timeouts in HTTP Client</title><link>https://madhur.co.in/blog/2020/05/16/http-timeouts.html</link><pubDate>Sat, 16 May 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/05/16/http-timeouts.html</guid><description>Different HTTP Timeouts in HTTP Client</description></item><item><title>Unit testing HTTP retry strategies</title><link>https://madhur.co.in/blog/2020/05/09/unit-testing-http-retry-strategies.html</link><pubDate>Sat, 09 May 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/05/09/unit-testing-http-retry-strategies.html</guid><description>Unit testing HTTP retry strategies</description></item><item><title>Tools to test remote connectivity in Linux</title><link>https://madhur.co.in/blog/2020/05/01/tools-test-connectivity-linux.html</link><pubDate>Fri, 01 May 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/05/01/tools-test-connectivity-linux.html</guid><description>Tools to test remote connectivity in Linux</description></item><item><title>Classloaders, Containers &amp; Unit Tests</title><link>https://madhur.co.in/blog/2020/04/25/classloaders-containers-unit-tests.html</link><pubDate>Sat, 25 Apr 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/04/25/classloaders-containers-unit-tests.html</guid><description>Classloaders, Containers &amp;amp; Unit Tests</description></item><item><title>Fastest way to spin up Kubernetes cluster on AWS</title><link>https://madhur.co.in/blog/2020/04/11/fastest-way-spin-kubernetes-cluster.html</link><pubDate>Sat, 11 Apr 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/04/11/fastest-way-spin-kubernetes-cluster.html</guid><description>Fastest way to spin up Kubernetes cluster on AWS</description></item><item><title>Adding package suppressions in Checkstyle and Spotbugs</title><link>https://madhur.co.in/blog/2020/03/28/adding-package-suppressions-checkstyle-spotbugs.html</link><pubDate>Sat, 28 Mar 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/03/28/adding-package-suppressions-checkstyle-spotbugs.html</guid><description>Adding package suppressions in Checkstyle and Spotbugs</description></item><item><title>Lessons learnt using Apache HTTP Connection Pooling Library</title><link>https://madhur.co.in/blog/2020/03/22/prevent-connection-leak-apache-http.html</link><pubDate>Sun, 22 Mar 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/03/22/prevent-connection-leak-apache-http.html</guid><description>Lessons learnt using Apache HTTP Connection Pooling Library</description></item><item><title>Tailing log files on multiple remote machines</title><link>https://madhur.co.in/blog/2020/03/14/tailing-multiple-log-files.html</link><pubDate>Sat, 14 Mar 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/03/14/tailing-multiple-log-files.html</guid><description>Tailing log files on multiple remote machines</description></item><item><title>Importing certificate into Java Keystore</title><link>https://madhur.co.in/blog/2020/03/07/import-certificate-java.html</link><pubDate>Sat, 07 Mar 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/03/07/import-certificate-java.html</guid><description>Importing certificate into Java Keystore</description></item><item><title>Solving: Request header is too large</title><link>https://madhur.co.in/blog/2020/02/29/request-header-is-too-large.html</link><pubDate>Sat, 29 Feb 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/02/29/request-header-is-too-large.html</guid><description>Solving: Request header is too large</description></item><item><title>Must have Java code analysis Tools - Part 3</title><link>https://madhur.co.in/blog/2020/02/15/must-have-java-code-analysis-tools-part3.html</link><pubDate>Sat, 15 Feb 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/02/15/must-have-java-code-analysis-tools-part3.html</guid><description>Must have Java code analysis Tools - Part 3</description></item><item><title>Incrementally routing traffic to newer version of service</title><link>https://madhur.co.in/blog/2020/02/08/incrementally-route-traffic-newer-version-service.html</link><pubDate>Sat, 08 Feb 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/02/08/incrementally-route-traffic-newer-version-service.html</guid><description>Incrementally routing traffic to newer version of service</description></item><item><title>Must have Java code analysis Tools - Part 2</title><link>https://madhur.co.in/blog/2020/02/02/must-have-java-code-analysis-tools-part2.html</link><pubDate>Sun, 02 Feb 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/02/02/must-have-java-code-analysis-tools-part2.html</guid><description>Must have Java code analysis Tools - Part 2</description></item><item><title>Must have Java code analysis Tools - Part 1</title><link>https://madhur.co.in/blog/2020/01/26/must-have-java-code-analysis-tools-part1.html</link><pubDate>Sun, 26 Jan 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/01/26/must-have-java-code-analysis-tools-part1.html</guid><description>Must have Java code analysis Tools - Part 1</description></item><item><title>Running splunk on docker on OSX</title><link>https://madhur.co.in/blog/2020/01/18/running-splunk-docker-osx.html</link><pubDate>Sat, 18 Jan 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/01/18/running-splunk-docker-osx.html</guid><description>Running splunk on docker on OSX</description></item><item><title>Ensuring git commit messages contain JIRA ID</title><link>https://madhur.co.in/blog/2020/01/12/git-prepare-commit-message-jira-id.html</link><pubDate>Sun, 12 Jan 2020 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2020/01/12/git-prepare-commit-message-jira-id.html</guid><description>Ensuring git commit messages contain JIRA ID</description></item><item><title>Goodreads For Flipkart</title><link>https://madhur.co.in/blog/2019/09/13/goodreads-flipkart-chrome-extension.html</link><pubDate>Fri, 13 Sep 2019 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2019/09/13/goodreads-flipkart-chrome-extension.html</guid><description>Goodreads For Flipkart</description></item><item><title>Kafka rebalancing</title><link>https://madhur.co.in/blog/2019/08/31/kafka-rebalancing.html</link><pubDate>Sat, 31 Aug 2019 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2019/08/31/kafka-rebalancing.html</guid><description>Kafka rebalancing</description></item><item><title>id generation strategies</title><link>https://madhur.co.in/blog/2019/08/19/id-generation-strategies.html</link><pubDate>Mon, 19 Aug 2019 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2019/08/19/id-generation-strategies.html</guid><description>id generation strategies</description></item><item><title>Meaning of atleast once, atmost once and exactly once delivery</title><link>https://madhur.co.in/blog/2019/08/04/atleast-once-atmost-once-exactly-once.html</link><pubDate>Sun, 04 Aug 2019 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2019/08/04/atleast-once-atmost-once-exactly-once.html</guid><description>Meaning of atleast once, atmost once and exactly once delivery</description></item><item><title>Deadlocks in Optimistic locking</title><link>https://madhur.co.in/blog/2019/08/02/deadlocks-optimistic-locking.html</link><pubDate>Fri, 02 Aug 2019 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2019/08/02/deadlocks-optimistic-locking.html</guid><description>Deadlocks in Optimistic locking</description></item><item><title>Concurrency in Python</title><link>https://madhur.co.in/blog/2019/07/14/concurrency-python.html</link><pubDate>Sun, 14 Jul 2019 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2019/07/14/concurrency-python.html</guid><description>Concurrency in Python</description></item><item><title>Parallelism and ordering</title><link>https://madhur.co.in/blog/2019/07/04/parallelism-ordering.html</link><pubDate>Thu, 04 Jul 2019 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2019/07/04/parallelism-ordering.html</guid><description>Parallelism and ordering</description></item><item><title>Setting up Java project for monitoring</title><link>https://madhur.co.in/blog/2019/06/29/java-monitoring.html</link><pubDate>Sat, 29 Jun 2019 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2019/06/29/java-monitoring.html</guid><description>Setting up Java project for monitoring</description></item><item><title>Considerations for high throughput kafka producer</title><link>https://madhur.co.in/blog/2019/06/17/highthroughputkafka.html</link><pubDate>Mon, 17 Jun 2019 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2019/06/17/highthroughputkafka.html</guid><description>Considerations for high throughput kafka producer</description></item><item><title>Consuming from Kafka</title><link>https://madhur.co.in/blog/2019/06/15/consumingkafka.html</link><pubDate>Sat, 15 Jun 2019 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2019/06/15/consumingkafka.html</guid><description>Consuming from Kafka</description></item><item><title>Lessons from History</title><link>https://madhur.co.in/blog/2019/06/15/lessonsfromhistory.html</link><pubDate>Sat, 15 Jun 2019 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2019/06/15/lessonsfromhistory.html</guid><description>Lessons from History</description></item><item><title>Using SEDA</title><link>https://madhur.co.in/blog/2019/06/09/stagedevents.html</link><pubDate>Sun, 09 Jun 2019 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2019/06/09/stagedevents.html</guid><description>Using SEDA</description></item><item><title>Life is a game of risk and reward</title><link>https://madhur.co.in/blog/2018/04/18/liferiskreward.html</link><pubDate>Wed, 18 Apr 2018 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2018/04/18/liferiskreward.html</guid><description>Life is a game of risk and reward</description></item><item><title>Koshish</title><link>https://madhur.co.in/blog/2018/04/07/koshish.html</link><pubDate>Sat, 07 Apr 2018 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2018/04/07/koshish.html</guid><description>Koshish karne waloon ki kabhi haar nahi hoti</description></item><item><title>Ramifications of a mediocre founders</title><link>https://madhur.co.in/blog/2018/04/01/rarmificationsmediocrecto.html</link><pubDate>Sun, 01 Apr 2018 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2018/04/01/rarmificationsmediocrecto.html</guid><description>Ramifications of a mediocre founders</description></item><item><title>Push beyond comfort zone</title><link>https://madhur.co.in/blog/2018/03/27/pushbeyondcomfortzone.html</link><pubDate>Tue, 27 Mar 2018 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2018/03/27/pushbeyondcomfortzone.html</guid><description>Push beyond comfort zone</description></item><item><title>Quality or Quantity</title><link>https://madhur.co.in/blog/2018/02/24/quality-quantity.html</link><pubDate>Sat, 24 Feb 2018 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2018/02/24/quality-quantity.html</guid><description>Quality or Quantity</description></item><item><title>Doraha</title><link>https://madhur.co.in/blog/2018/02/16/poem-doraha.html</link><pubDate>Fri, 16 Feb 2018 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2018/02/16/poem-doraha.html</guid><description>Doraha</description></item><item><title>Handling stack traces in Elasticsearch Logstash Kibana (ELK)</title><link>https://madhur.co.in/blog/2017/04/30/view-exceptions-in-elk.html</link><pubDate>Sun, 30 Apr 2017 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2017/04/30/view-exceptions-in-elk.html</guid><description>Handling stack traces in Elasticsearch Logstash Kibana (ELK)</description></item><item><title>Using curator to delete older elasticsearch indices</title><link>https://madhur.co.in/blog/2017/04/09/usingcuratordeleteelasticindex.html</link><pubDate>Sun, 09 Apr 2017 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2017/04/09/usingcuratordeleteelasticindex.html</guid><description>Using curator to delete older elasticsearch indices</description></item><item><title>Angular2 Confirmation Dialog component</title><link>https://madhur.co.in/blog/2017/03/26/angular-confirmation-dialog.html</link><pubDate>Sun, 26 Mar 2017 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2017/03/26/angular-confirmation-dialog.html</guid><description>Angular2 Confirmation Dialog component</description></item><item><title>Useful tcpdump usages</title><link>https://madhur.co.in/blog/2017/02/18/useful-tcpdump-netcat-usages.html</link><pubDate>Sat, 18 Feb 2017 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2017/02/18/useful-tcpdump-netcat-usages.html</guid><description>Useful tcpdump usages</description></item><item><title>Bulk git clone repositories</title><link>https://madhur.co.in/blog/2017/02/12/git-bulk-clone.html</link><pubDate>Sun, 12 Feb 2017 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2017/02/12/git-bulk-clone.html</guid><description>Bulk git clone repositories</description></item><item><title>Tuning Linux servers for scalability</title><link>https://madhur.co.in/blog/2017/01/30/tuning-linux-servers-scalability.html</link><pubDate>Mon, 30 Jan 2017 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2017/01/30/tuning-linux-servers-scalability.html</guid><description>Tuning Linux servers for scalability</description></item><item><title>Close look at proxy_cache_lock and proxy_cache_use_stale in Nginx</title><link>https://madhur.co.in/blog/2016/12/25/proxy-cache-lock-nginx.html</link><pubDate>Sun, 25 Dec 2016 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2016/12/25/proxy-cache-lock-nginx.html</guid><description>Close look at proxy_cache_lock and proxy_cache_use_stale in Nginx</description></item><item><title>Improving performance using Batch APIs</title><link>https://madhur.co.in/blog/2016/12/25/batch-api-framework-nodejs.html</link><pubDate>Sun, 25 Dec 2016 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2016/12/25/batch-api-framework-nodejs.html</guid><description>Improving performance using Batch APIs</description></item><item><title>Couchbase exception handling in Node.js</title><link>https://madhur.co.in/blog/2016/12/04/handling-couchbase-node.html</link><pubDate>Sun, 04 Dec 2016 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2016/12/04/handling-couchbase-node.html</guid><description>Couchbase exception handling in Node.js</description></item><item><title>Integrate node.js logging with Sentry</title><link>https://madhur.co.in/blog/2016/12/04/integrating-sentry-node.html</link><pubDate>Sun, 04 Dec 2016 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2016/12/04/integrating-sentry-node.html</guid><description>Integrate node.js logging with Sentry</description></item><item><title>Debugging SSL Issues in Java</title><link>https://madhur.co.in/blog/2016/10/30/debugging-ssl-issues-java.html</link><pubDate>Sun, 30 Oct 2016 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2016/10/30/debugging-ssl-issues-java.html</guid><description>Debugging SSL Issues in Java</description></item><item><title>Learnings from moving from MBR to GPT, multi-booting and random stuff</title><link>https://madhur.co.in/blog/2016/10/16/learning-moving-mbr-gpt-uefi.html</link><pubDate>Sun, 16 Oct 2016 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2016/10/16/learning-moving-mbr-gpt-uefi.html</guid><description>Learnings from moving from MBR to GPT, multi-booting and random stuff</description></item><item><title>Effect of connection pooling on node.js performance</title><link>https://madhur.co.in/blog/2016/09/05/nodejs-connection-pooling.html</link><pubDate>Mon, 05 Sep 2016 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2016/09/05/nodejs-connection-pooling.html</guid><description>Effect of connection pooling on node.js performance</description></item><item><title>Code linting tools</title><link>https://madhur.co.in/blog/2016/09/04/code-linting-tools.html</link><pubDate>Sun, 04 Sep 2016 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2016/09/04/code-linting-tools.html</guid><description>Code linting tools</description></item><item><title>Adding Service worker to Jekyll Site</title><link>https://madhur.co.in/blog/2016/08/21/service-worker-jekyll-site.html</link><pubDate>Sun, 21 Aug 2016 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2016/08/21/service-worker-jekyll-site.html</guid><description>Adding Service worker for to Jekyll Site</description></item><item><title>Caching authenticated requests using NGINX</title><link>https://madhur.co.in/blog/2016/07/31/nginx-cache-authenticated-requests.html</link><pubDate>Sun, 31 Jul 2016 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2016/07/31/nginx-cache-authenticated-requests.html</guid><description>Caching authenticated requests using NGINX</description></item><item><title>Create a couchbase bucket during build of the container</title><link>https://madhur.co.in/blog/2016/07/07/create-couchbase-bucket-docker.html</link><pubDate>Thu, 07 Jul 2016 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2016/07/07/create-couchbase-bucket-docker.html</guid><description>Create a couchbase bucket during build of the container</description></item><item><title>Speeding up Node.js HTTP requests with DNS caching</title><link>https://madhur.co.in/blog/2016/05/28/nodejs-dns-cache.html</link><pubDate>Sat, 28 May 2016 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2016/05/28/nodejs-dns-cache.html</guid><description>Speeding up Node.js HTTP requests with DNS caching</description></item><item><title>Things to learn for Modern Web Development</title><link>https://madhur.co.in/blog/2016/05/14/things-learn-modern-web-development.html</link><pubDate>Sat, 14 May 2016 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2016/05/14/things-learn-modern-web-development.html</guid><description>Things to learn for Modern Web Development</description></item><item><title>Read Google docs spreadsheet using Python</title><link>https://madhur.co.in/blog/2016/05/13/google-docs-spreadsheet.html</link><pubDate>Fri, 13 May 2016 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2016/05/13/google-docs-spreadsheet.html</guid><description>Read Google docs spreadsheet using Python</description></item><item><title>Handling special characters in Python 2</title><link>https://madhur.co.in/blog/2016/04/25/handling-special-characters-python.html</link><pubDate>Mon, 25 Apr 2016 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2016/04/25/handling-special-characters-python.html</guid><description>Handling special characters in Python 2</description></item><item><title>Making AngularJs play nice with Social sharing</title><link>https://madhur.co.in/blog/2016/04/09/making-angular-play-nice-with-social-sharing.html</link><pubDate>Sat, 09 Apr 2016 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2016/04/09/making-angular-play-nice-with-social-sharing.html</guid><description>Making AngularJs play nice with Social sharing</description></item><item><title>On calling your former employers shit</title><link>https://madhur.co.in/blog/2016/04/08/calling-former-employers-shit.html</link><pubDate>Fri, 08 Apr 2016 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2016/04/08/calling-former-employers-shit.html</guid><description>On calling your former employers shit</description></item><item><title>Understanding free output in Linux</title><link>https://madhur.co.in/blog/2016/04/08/understanding-free-output.html</link><pubDate>Fri, 08 Apr 2016 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2016/04/08/understanding-free-output.html</guid><description>Understanding free output in Linux</description></item><item><title>NSImage Caching</title><link>https://madhur.co.in/blog/2016/01/25/using-ns-image.html</link><pubDate>Mon, 25 Jan 2016 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2016/01/25/using-ns-image.html</guid><description>NSImage Caching</description></item><item><title>Google groups for Developers</title><link>https://madhur.co.in/blog/2016/01/03/google-groups-developers.html</link><pubDate>Sun, 03 Jan 2016 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2016/01/03/google-groups-developers.html</guid><description>Google groups for Developers</description></item><item><title>Managing Programmers By Douglas Crockford</title><link>https://madhur.co.in/blog/2015/12/27/managing-programmers.html</link><pubDate>Sun, 27 Dec 2015 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2015/12/27/managing-programmers.html</guid><description>Managing Programmers By Douglas Crockford</description></item><item><title>Timing function / task execution in Celery</title><link>https://madhur.co.in/blog/2015/12/14/timing-function-calls.html</link><pubDate>Mon, 14 Dec 2015 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2015/12/14/timing-function-calls.html</guid><description>Timing function / task execution in Celery</description></item><item><title>Ringtone Preference in Feed Notifier</title><link>https://madhur.co.in/blog/2015/12/06/notification-feed-notifier.html</link><pubDate>Sun, 06 Dec 2015 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2015/12/06/notification-feed-notifier.html</guid><description>Ringtone Preference in Feed Notifier</description></item><item><title>Flexbox is not supported Android 4.3 and below</title><link>https://madhur.co.in/blog/2015/11/29/flexbox-not-supported.html</link><pubDate>Sun, 29 Nov 2015 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2015/11/29/flexbox-not-supported.html</guid><description>Flexbox is not supported Android 4.3 and below</description></item><item><title>Scaling Celery Task queue</title><link>https://madhur.co.in/blog/2015/11/17/celery-tips-and-tricks.html</link><pubDate>Tue, 17 Nov 2015 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2015/11/17/celery-tips-and-tricks.html</guid><description>Experiences of Scaling Celery Task queue</description></item><item><title>CountDownLatch in Python using Condition Objects</title><link>https://madhur.co.in/blog/2015/11/02/countdownlatch-python.html</link><pubDate>Mon, 02 Nov 2015 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2015/11/02/countdownlatch-python.html</guid><description>CountDownLatch in Python using Condition Objects</description></item><item><title>Feed notifier updated</title><link>https://madhur.co.in/blog/2015/10/25/feed-notifier-updated.html</link><pubDate>Sun, 25 Oct 2015 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2015/10/25/feed-notifier-updated.html</guid><description>Feed notifier updated</description></item><item><title>Why is only UI thread allowed to modify the UI</title><link>https://madhur.co.in/blog/2015/10/18/ui-thread-modify.html</link><pubDate>Sun, 18 Oct 2015 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2015/10/18/ui-thread-modify.html</guid><description>Why is only UI thread allowed to modify the UI</description></item><item><title>Angular Chat popup</title><link>https://madhur.co.in/blog/2015/09/14/angular-chat-popup.html</link><pubDate>Mon, 14 Sep 2015 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2015/09/14/angular-chat-popup.html</guid><description>Angular Chat popup</description></item><item><title>Caching http requests with Angular</title><link>https://madhur.co.in/blog/2015/08/24/angular-caching.html</link><pubDate>Mon, 24 Aug 2015 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2015/08/24/angular-caching.html</guid><description>Caching http requests with Angular</description></item><item><title>Emoji Keyboard and Chat bubbles in Android</title><link>https://madhur.co.in/blog/2015/03/06/emoji-bubbles-android.html</link><pubDate>Fri, 06 Mar 2015 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2015/03/06/emoji-bubbles-android.html</guid><description>Emoji Keyboard and Chat bubbles in Android</description></item><item><title>Encoding and Decoding Emoji for Cross platform</title><link>https://madhur.co.in/blog/2014/12/26/emoji-encoding-decoding.html</link><pubDate>Fri, 26 Dec 2014 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2014/12/26/emoji-encoding-decoding.html</guid><description>Encoding and decoding Emoji for Cross platform</description></item><item><title>Useful Javascript Design patterns</title><link>https://madhur.co.in/blog/2014/12/15/javascript-design-patterns.html</link><pubDate>Mon, 15 Dec 2014 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2014/12/15/javascript-design-patterns.html</guid><description>Useful Javascript Design patterns</description></item><item><title>Multiboot: Booting linux from ISO placed in HDD via GRUB</title><link>https://madhur.co.in/blog/2014/10/18/linux-multiboot.html</link><pubDate>Sat, 18 Oct 2014 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2014/10/18/linux-multiboot.html</guid><description>Multiboot: Booting linux from ISO placed in HDD via GRUB</description></item><item><title>An awesome conky configuration</title><link>https://madhur.co.in/blog/2014/10/10/awesome-conky.html</link><pubDate>Fri, 10 Oct 2014 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2014/10/10/awesome-conky.html</guid><description>An awesome conky configuration</description></item><item><title>Union and Intersection of ArrayList in Java</title><link>https://madhur.co.in/blog/2014/07/29/unionintersection.html</link><pubDate>Tue, 29 Jul 2014 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2014/07/29/unionintersection.html</guid><description>Union and Intersection of ArrayList in Java</description></item><item><title>Algorithm: Convert number to word</title><link>https://madhur.co.in/blog/2014/07/28/convertnumbertoword.html</link><pubDate>Mon, 28 Jul 2014 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2014/07/28/convertnumbertoword.html</guid><description>Algorithm: Convert number to word</description></item><item><title>Find Nth largest element in an array</title><link>https://madhur.co.in/blog/2014/07/28/findnthlargest.html</link><pubDate>Mon, 28 Jul 2014 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2014/07/28/findnthlargest.html</guid><description>Find Nth largest element in an array</description></item><item><title>Building Git 2.0.0 from sources on Windows</title><link>https://madhur.co.in/blog/2014/06/08/guidebuildgit2.html</link><pubDate>Sun, 08 Jun 2014 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2014/06/08/guidebuildgit2.html</guid><description>Building Git 2.0.0 from sources on Windows</description></item><item><title>Change ImageView src based on Android Application theme</title><link>https://madhur.co.in/blog/2014/06/04/changeimageviewsrctheme.html</link><pubDate>Wed, 04 Jun 2014 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2014/06/04/changeimageviewsrctheme.html</guid><description>Change ImageView src based on Android Application theme</description></item><item><title>Hermes removed from Play Store by Google</title><link>https://madhur.co.in/blog/2014/05/26/hermesremoved.html</link><pubDate>Mon, 26 May 2014 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2014/05/26/hermesremoved.html</guid><description>Hermes removed from Play Store by Google</description></item><item><title>Javascript Basics Part IV</title><link>https://madhur.co.in/blog/2014/05/25/javascriptbasic4.html</link><pubDate>Sun, 25 May 2014 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2014/05/25/javascriptbasic4.html</guid><description>Javascript Basics Part IV</description></item><item><title>Javascript Basics Part III</title><link>https://madhur.co.in/blog/2014/05/24/javascriptbasics3.html</link><pubDate>Sat, 24 May 2014 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2014/05/24/javascriptbasics3.html</guid><description>Javascript Basics Part III</description></item><item><title>Javascript Basics Part II</title><link>https://madhur.co.in/blog/2014/05/23/javascriptbasics2.html</link><pubDate>Fri, 23 May 2014 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2014/05/23/javascriptbasics2.html</guid><description>Javascript Basics Part II</description></item><item><title>Javascript Basics Part I</title><link>https://madhur.co.in/blog/2014/05/22/javascriptbasics.html</link><pubDate>Thu, 22 May 2014 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2014/05/22/javascriptbasics.html</guid><description>Javascript Basics Part I</description></item><item><title>Portable Jekyll Upgraded to 2.0.1</title><link>https://madhur.co.in/blog/2014/05/07/portablejekyllupdated.html</link><pubDate>Wed, 07 May 2014 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2014/05/07/portablejekyllupdated.html</guid><description>Portable Jekyll Upgraded to 2.0.1</description></item><item><title>Decoding the hidden Wunderlist API (Part I)</title><link>https://madhur.co.in/blog/2014/05/02/decodewunderlistapi.html</link><pubDate>Fri, 02 May 2014 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2014/05/02/decodewunderlistapi.html</guid><description>Decoding the hidden Wunderlist API (Part I)</description></item><item><title>Decoding the hidden Wunderlist API (Part II)</title><link>https://madhur.co.in/blog/2014/05/02/decodewunderlistapi2.html</link><pubDate>Fri, 02 May 2014 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2014/05/02/decodewunderlistapi2.html</guid><description>Decoding the hidden Wunderlist API (Part II)</description></item><item><title>Feedly OAuth 2.0 implementation using Scribe in Java</title><link>https://madhur.co.in/blog/2014/04/17/feedlyoauth2flow.html</link><pubDate>Thu, 17 Apr 2014 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2014/04/17/feedlyoauth2flow.html</guid><description>Feedly OAuth 2.0 implementation using Scribe in Java</description></item><item><title>Hosting Git repository on a Windows LAN</title><link>https://madhur.co.in/blog/2014/04/09/hostgitwindowslan.html</link><pubDate>Wed, 09 Apr 2014 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2014/04/09/hostgitwindowslan.html</guid><description>Hosting Git repository on a Windows LAN</description></item><item><title>Updating Created By field in SharePoint through Client Object Model</title><link>https://madhur.co.in/blog/2014/04/09/updatingcreatedby.html</link><pubDate>Wed, 09 Apr 2014 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2014/04/09/updatingcreatedby.html</guid><description>Updating Created By field in SharePoint through Client Object Model</description></item><item><title>Convert claims based login name in SharePoint Client object model</title><link>https://madhur.co.in/blog/2014/01/29/convert-claim-based-login-name.html</link><pubDate>Wed, 29 Jan 2014 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2014/01/29/convert-claim-based-login-name.html</guid><description>Convert claims based login name in SharePoint Client object model</description></item><item><title>Reading and writing People Values in SharePoint List through Silverlight Client object model</title><link>https://madhur.co.in/blog/2014/01/29/read-write-people-values-sharepoint-silverlight.html</link><pubDate>Wed, 29 Jan 2014 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2014/01/29/read-write-people-values-sharepoint-silverlight.html</guid><description>Reading and writing People Values in SharePoint List through Silverlight Client object model</description></item><item><title>Writing Silverlight people picker control using SharePoint 2010 Client object model</title><link>https://madhur.co.in/blog/2014/01/29/silverlight-people-picker.html</link><pubDate>Wed, 29 Jan 2014 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2014/01/29/silverlight-people-picker.html</guid><description>Writing Silverlight people picker control using SharePoint 2010 Client object model</description></item><item><title>New look for my site</title><link>https://madhur.co.in/blog/2014/01/10/newlookofmysite.html</link><pubDate>Fri, 10 Jan 2014 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2014/01/10/newlookofmysite.html</guid><description>New look for my site</description></item><item><title>Introducing Hermes Android App</title><link>https://madhur.co.in/blog/2013/11/05/introducinghermesandroidapp.html</link><pubDate>Tue, 05 Nov 2013 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2013/11/05/introducinghermesandroidapp.html</guid><description>Introducing Hermes Android App</description></item><item><title>Making most out of _data directory in Jekyll</title><link>https://madhur.co.in/blog/2013/11/05/makingmostdatadirectory.html</link><pubDate>Tue, 05 Nov 2013 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2013/11/05/makingmostdatadirectory.html</guid><description>Making most out of _data directory in Jekyll</description></item><item><title>Portable Jekyll Updated to Jekyll v1.3.0</title><link>https://madhur.co.in/blog/2013/11/05/updateportablejekyll.html</link><pubDate>Tue, 05 Nov 2013 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2013/11/05/updateportablejekyll.html</guid><description>Portable Jekyll Updated to Jekyll v1.3.0</description></item><item><title>Adventures with Corel Draw</title><link>https://madhur.co.in/blog/2013/07/20/adventurecoreldraw.html</link><pubDate>Sat, 20 Jul 2013 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2013/07/20/adventurecoreldraw.html</guid><description>Adventures with Corel Draw</description></item><item><title>Building portable Jekyll for Windows</title><link>https://madhur.co.in/blog/2013/07/20/buildportablejekyll.html</link><pubDate>Sat, 20 Jul 2013 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2013/07/20/buildportablejekyll.html</guid><description>Building portable Jekyll for Windows</description></item><item><title>Jekyll upgraded to 1.0.2</title><link>https://madhur.co.in/blog/2013/06/02/jekyllupgraded.html</link><pubDate>Sun, 02 Jun 2013 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2013/06/02/jekyllupgraded.html</guid><description>Jekyll upgraded to 1.0.2</description></item><item><title>Browser Market Share of Internet Explorer</title><link>https://madhur.co.in/blog/2012/05/05/browsermarketshare.html</link><pubDate>Sat, 05 May 2012 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2012/05/05/browsermarketshare.html</guid><description>Browser Market Share of Internet Explorer</description></item><item><title>WebServices or Client Object Model</title><link>https://madhur.co.in/blog/2012/04/15/webservicescom.html</link><pubDate>Sun, 15 Apr 2012 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2012/04/15/webservicescom.html</guid><description>WebServices or Client Object Model</description></item><item><title>Move your projects from TFS to Git in Codeplex</title><link>https://madhur.co.in/blog/2012/03/27/codeplexmovegit.html</link><pubDate>Tue, 27 Mar 2012 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2012/03/27/codeplexmovegit.html</guid><description>Move your projects from TFS to Git in Codeplex</description></item><item><title>Enable code highlighting with Pygments/Jekyll</title><link>https://madhur.co.in/blog/2012/03/05/codehighlightjekyll.html</link><pubDate>Mon, 05 Mar 2012 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2012/03/05/codehighlightjekyll.html</guid><description>Enable code highlighting with Pygments/Jekyll</description></item><item><title>What's wrong with Microsoft</title><link>https://madhur.co.in/blog/2012/03/01/whatswrongwithmsft.html</link><pubDate>Thu, 01 Mar 2012 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2012/03/01/whatswrongwithmsft.html</guid><description>What&amp;#39;s wrong with Microsoft</description></item><item><title>How to upgrade your Jekyll Blog/Site to HTML5</title><link>https://madhur.co.in/blog/2012/02/26/upgradehtml5.html</link><pubDate>Sun, 26 Feb 2012 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2012/02/26/upgradehtml5.html</guid><description>How to upgrade your Jekyll Blog/Site to HTML5</description></item><item><title>Conditional comments in Internet Explorer</title><link>https://madhur.co.in/blog/2012/02/20/conditionalcommentsie.html</link><pubDate>Mon, 20 Feb 2012 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2012/02/20/conditionalcommentsie.html</guid><description>Conditional comments in Internet Explorer</description></item><item><title>Learning HTML5</title><link>https://madhur.co.in/blog/2012/02/20/learnhtml5.html</link><pubDate>Mon, 20 Feb 2012 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2012/02/20/learnhtml5.html</guid><description>Learning HTML5</description></item><item><title>Future of Web and Mobile: HTML5, CSS3 and Javascript</title><link>https://madhur.co.in/blog/2012/02/15/futurewebmobile.html</link><pubDate>Wed, 15 Feb 2012 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2012/02/15/futurewebmobile.html</guid><description>Future of Web and Mobile: HTML5, CSS3 and Javascript</description></item><item><title>Using MakeFile with Assembly Programming</title><link>https://madhur.co.in/blog/2012/02/08/makefileassembly.html</link><pubDate>Wed, 08 Feb 2012 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2012/02/08/makefileassembly.html</guid><description>Using MakeFile with Assembly Programming</description></item><item><title>GitHub Pages are served from the Default Branch</title><link>https://madhur.co.in/blog/2012/02/02/githubpages.html</link><pubDate>Thu, 02 Feb 2012 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2012/02/02/githubpages.html</guid><description>GitHub Pages are served from the Default Branch</description></item><item><title>Updated with Blueprint CSS Framework</title><link>https://madhur.co.in/blog/2012/02/02/updateblueprintcss.html</link><pubDate>Thu, 02 Feb 2012 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2012/02/02/updateblueprintcss.html</guid><description>Updated with Blueprint CSS Framework</description></item><item><title>Invoke SharePoint 2010 Approval Workflow with Dynamic Approvers using Web Services and Jquery</title><link>https://madhur.co.in/blog/2012/01/09/spworkflowapprovers.html</link><pubDate>Mon, 09 Jan 2012 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2012/01/09/spworkflowapprovers.html</guid><description>Invoke SharePoint 2010 Approval Workflow with Dynamic Approvers using Web Services and Jquery</description></item><item><title>Silverlight Chart Control for SharePoint 2010</title><link>https://madhur.co.in/blog/2011/12/29/slchart.html</link><pubDate>Thu, 29 Dec 2011 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2011/12/29/slchart.html</guid><description>Silverlight Chart Control for SharePoint 2010</description></item><item><title>Windows command shell(cmd.exe) runs only first command</title><link>https://madhur.co.in/blog/2011/12/29/cmdshellfirst.html</link><pubDate>Thu, 29 Dec 2011 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2011/12/29/cmdshellfirst.html</guid><description>Windows command shell(cmd.exe) runs only first command</description></item><item><title>Privilege escalation on Windows using Binary Planting</title><link>https://madhur.co.in/blog/2011/09/23/privilegeescalation.html</link><pubDate>Fri, 23 Sep 2011 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2011/09/23/privilegeescalation.html</guid><description>Privilege escalation on Windows using Binary Planting</description></item><item><title>Crack or Reset Windows Passwords</title><link>https://madhur.co.in/blog/2011/09/18/crackresetwindows.html</link><pubDate>Sun, 18 Sep 2011 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2011/09/18/crackresetwindows.html</guid><description>Crack or Reset Windows Passwords</description></item><item><title>Difference between Filtered vs Closed Ports</title><link>https://madhur.co.in/blog/2011/09/18/filteredclosed.html</link><pubDate>Sun, 18 Sep 2011 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2011/09/18/filteredclosed.html</guid><description>Difference between Filtered vs Closed Ports</description></item><item><title>HackingLab Challenge: Disassemble .NET Clients</title><link>https://madhur.co.in/blog/2011/09/10/hackchallenge.html</link><pubDate>Sat, 10 Sep 2011 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2011/09/10/hackchallenge.html</guid><description>HackingLab Challenge: Disassemble .NET Clients</description></item><item><title>Best fonts for programming</title><link>https://madhur.co.in/blog/2011/09/09/bestfontscode.html</link><pubDate>Fri, 09 Sep 2011 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2011/09/09/bestfontscode.html</guid><description>Best fonts for programming</description></item><item><title>AOE slang</title><link>https://madhur.co.in/blog/2011/09/06/aoeslang.html</link><pubDate>Tue, 06 Sep 2011 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2011/09/06/aoeslang.html</guid><description>AOE slang</description></item><item><title>Removing the Default Editor Parts from SharePoint Web Parts</title><link>https://madhur.co.in/blog/2011/09/06/hidingproppane.html</link><pubDate>Tue, 06 Sep 2011 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2011/09/06/hidingproppane.html</guid><description>Removing the Default Editor Parts from SharePoint Web Parts</description></item><item><title>Migrating 3rd party blogs to Jekyll</title><link>https://madhur.co.in/blog/2011/09/01/migratingblogtojekyll.html</link><pubDate>Thu, 01 Sep 2011 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2011/09/01/migratingblogtojekyll.html</guid><description>Migrating 3rd party blogs to Jekyll</description></item><item><title>Running Jekyll on Windows</title><link>https://madhur.co.in/blog/2011/09/01/runningjekyllwindows.html</link><pubDate>Thu, 01 Sep 2011 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2011/09/01/runningjekyllwindows.html</guid><description>Running Jekyll on Windows</description></item><item><title>Pass the Hash Exploitation on Windows</title><link>https://madhur.co.in/blog/2011/08/16/passthehash.html</link><pubDate>Tue, 16 Aug 2011 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2011/08/16/passthehash.html</guid><description>Pass the Hash Exploitation on Windows</description></item><item><title>Burnout</title><link>https://madhur.co.in/blog/2011/08/13/burnout.html</link><pubDate>Sat, 13 Aug 2011 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2011/08/13/burnout.html</guid><description>Burnout</description></item><item><title>Integrating Wordpress Tag cloud Plugin in Jekyll</title><link>https://madhur.co.in/blog/2011/08/12/wptagcloudjekyll.html</link><pubDate>Fri, 12 Aug 2011 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2011/08/12/wptagcloudjekyll.html</guid><description>Integrating Wordpress Tag cloud Plugin in Jekyll</description></item><item><title>Protections against buffer overflow exploits in Linux</title><link>https://madhur.co.in/blog/2011/08/06/protbufferoverflow.html</link><pubDate>Sat, 06 Aug 2011 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2011/08/06/protbufferoverflow.html</guid><description>Protections against buffer overflow exploits in Linux</description></item><item><title>Classic Buffer overflow exploits on Linux x64</title><link>https://madhur.co.in/blog/2011/08/04/exploitdevlinux.html</link><pubDate>Thu, 04 Aug 2011 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2011/08/04/exploitdevlinux.html</guid><description>Classic Buffer overflow exploits on Linux x64</description></item><item><title>Exploring Web Application vulnerabilities</title><link>https://madhur.co.in/blog/2011/07/26/explorwebappsecurity.html</link><pubDate>Tue, 26 Jul 2011 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2011/07/26/explorwebappsecurity.html</guid><description>Exploring Web Application vulnerabilities</description></item><item><title>Hacking Router password using Hydra</title><link>https://madhur.co.in/blog/2011/07/25/hackrouterpassword.html</link><pubDate>Mon, 25 Jul 2011 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2011/07/25/hackrouterpassword.html</guid><description>Hacking Router password using Hydra</description></item><item><title>My Top Network Security Tools</title><link>https://madhur.co.in/blog/2011/06/22/topsecuritytools.html</link><pubDate>Wed, 22 Jun 2011 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2011/06/22/topsecuritytools.html</guid><description>My Top Network Security Tools</description></item><item><title>Facebook Vulnerability - Session sidejacking</title><link>https://madhur.co.in/blog/2011/06/12/facebooksessionhijacking.html</link><pubDate>Sun, 12 Jun 2011 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2011/06/12/facebooksessionhijacking.html</guid><description>Facebook Vulnerability - Session sidejacking</description></item><item><title>Creating Tag cloud of Categories in Jekyll</title><link>https://madhur.co.in/blog/2011/06/11/tagcloudjekyll.html</link><pubDate>Sat, 11 Jun 2011 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2011/06/11/tagcloudjekyll.html</guid><description>Creating Tag cloud of Categories in Jekyll</description></item><item><title>Github as a development platform</title><link>https://madhur.co.in/blog/2011/06/11/githubplatform.html</link><pubDate>Sat, 11 Jun 2011 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2011/06/11/githubplatform.html</guid><description>Github as a development platform</description></item><item><title>Reverse engineering Google chrome extensions</title><link>https://madhur.co.in/blog/2011/06/03/reverseengineerchrome.html</link><pubDate>Fri, 03 Jun 2011 00:00:00 +0000</pubDate><guid>https://madhur.co.in/blog/2011/06/03/reverseengineerchrome.html</guid><description>How to reverse engineer Google Chrome extensions</description></item><item><title>Bookmart</title><link>https://madhur.co.in/projects/bookmart/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://madhur.co.in/projects/bookmart/</guid><description>&lt;p&gt;I developed this site as a part of Tusitala Web Developer challenge 2014 hosted by Ideatory&lt;/p&gt;
&lt;p&gt;The site is deployed on heroku cloud. Check out this site at &lt;a href="http://bookmart.herokuapp.com"&gt;http://bookmart.herokuapp.com&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Developed in PHP and MYSQL.&lt;/li&gt;
&lt;li&gt;Mobile first design using Twitter Bootstrap framework&lt;/li&gt;
&lt;li&gt;Supports social login (Google, Facebook &amp;amp; Twitter)&lt;/li&gt;
&lt;li&gt;Utilizes an open source module to render epub on browser&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>DashAnalytics</title><link>https://madhur.co.in/projects/dashanalytics/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://madhur.co.in/projects/dashanalytics/</guid><description>&lt;h2 id="dashanalytics-for-dashclock"&gt;DashAnalytics for DashClock&lt;/h2&gt;
&lt;p&gt;DashAnalytics is an extension for &lt;a href="https://play.google.com/store/apps/details?id=net.nurik.roman.dashclock"&gt;DashClock Widget&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;DashAnalytics displays the metrics from your &lt;a href="http://www.google.co.in/analytics/"&gt;Google Analytics&lt;/a&gt; Website or App profile. Very useful to track on regular basis metrics such as Daily Visitors, visits, new visits for your Website or Mobile application.&lt;/p&gt;
&lt;h2 id="website-metrics-displayed"&gt;WebSite Metrics Displayed&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Visitors&lt;/li&gt;
&lt;li&gt;Visits&lt;/li&gt;
&lt;li&gt;Percentage new visits&lt;/li&gt;
&lt;li&gt;New visits&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="mobile-app-metrics-displayed"&gt;Mobile App Metrics Displayed&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Visitors&lt;/li&gt;
&lt;li&gt;Visits&lt;/li&gt;
&lt;li&gt;Percentage new visits&lt;/li&gt;
&lt;li&gt;New visits&lt;/li&gt;
&lt;/ul&gt;
&lt;a href="https://play.google.com/store/apps/details?id=in.co.madhur.ganalyticsdashclock"&gt;
&lt;img alt="Get it on Google Play"
src="https://madhur.co.in/images/Get_it_on_Google_play.svg" /&gt;
&lt;/a&gt;
&lt;p&gt;Have a bug report or feature request? Just find the issue or file a new one &lt;a href="https://github.com/madhur/GAnalytics/issues"&gt;here&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Feed notifier</title><link>https://madhur.co.in/projects/feed-notifier/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://madhur.co.in/projects/feed-notifier/</guid><description>&lt;h2 id="feed-notifier"&gt;Feed Notifier&lt;/h2&gt;
&lt;p&gt;&lt;a href="!https://raw.githubusercontent.com/madhur/dashclock-feedly-extension/develop/res/drawable-xhdpi/ic_launcher.png"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Feed notifier is a simple, highly customizable and an intuitive notifier for your favorite unread articles in Feedly.&lt;/p&gt;
&lt;p&gt;Features:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Notification per feed or category&lt;/li&gt;
&lt;li&gt;Dashclock Extension&lt;/li&gt;
&lt;li&gt;Widget&lt;/li&gt;
&lt;/ul&gt;
&lt;a href="https://play.google.com/store/apps/details?id=in.co.madhur.dashclockfeedlyextension"&gt;
&lt;img alt="Get it on Google Play"
src="https://madhur.co.in/images/Get_it_on_Google_play.svg" /&gt;
&lt;/a&gt;
&lt;p&gt;Please visit the &lt;a href="https://github.com/madhur/dashclock-feedly-extension"&gt;Feed Notifier&lt;/a&gt; github page for more information. Also make sure to log your issues/feature requests to the &lt;a href="https://github.com/madhur/dashclock-feedly-extension/issues?state=open"&gt;Github issue log&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Goodreads Flipkart Chrome Extension</title><link>https://madhur.co.in/projects/goodreads-chrome-flipkart/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://madhur.co.in/projects/goodreads-chrome-flipkart/</guid><description>&lt;p&gt;A Chrome extension for viewing Goodreads Reviews while on Flipkart&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.producthunt.com/posts/goodreads-for-flipkart?utm_source=badge-featured&amp;utm_medium=badge&amp;utm_souce=badge-goodreads-for-flipkart" target="_blank"&gt;&lt;img src="https://api.producthunt.com/widgets/embed-image/v1/featured.svg?post_id=167633&amp;theme=dark" alt="Goodreads for Flipkart - Access Goodreads reviews below Flipkart's book description | Product Hunt" style="width: 250px; height: 54px;" width="250" height="54" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Please visit the &lt;a href="https://github.com/madhur/Goodreads-flipkart-chrome"&gt;Goodreads Flipkart Chrome Extension&lt;/a&gt; github page for more information. Also make sure to log your issues/feature requests to the &lt;a href="https://github.com/madhur/Goodreads-flipkart-chrome/issues?state=open"&gt;Github issue log&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Hermes</title><link>https://madhur.co.in/projects/hermes/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://madhur.co.in/projects/hermes/</guid><description/></item><item><title>LeetCode Format Extension</title><link>https://madhur.co.in/projects/leetcode-format/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://madhur.co.in/projects/leetcode-format/</guid><description>&lt;p&gt;This extension adds the Format button to the LeetCode code editor. Currently supported programming languages are Java, JavaScript and TypeScript.&lt;/p&gt;
&lt;p&gt;Available for both Google Chrome and Firefox.&lt;/p&gt;
&lt;iframe style="border: none;" src="https://cards.producthunt.com/cards/posts/279437?v=1" width="500" height="405" frameborder="0" scrolling="no" allowfullscreen&gt;&lt;/iframe&gt;
&lt;p&gt;&lt;a href="https://addons.mozilla.org/en-US/firefox/addon/leetcode-format/"&gt;Download here for Firefox&lt;/a&gt;
&lt;a href="https://chrome.google.com/webstore/detail/leetcode-format/imogghebhifnnlgogigikjecilkicfpp?hl=en"&gt;Download here for Chrome&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Legacy Projects</title><link>https://madhur.co.in/projects/old/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://madhur.co.in/projects/old/</guid><description>Older projects I am no longer actively maintaining</description></item><item><title>madhur.co.in</title><link>https://madhur.co.in/projects/madhur-co-in/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://madhur.co.in/projects/madhur-co-in/</guid><description>&lt;p&gt;This current site built with &lt;a href="http://jekyllrb.com"&gt;Jekyll&lt;/a&gt; is a project in itself. It has come a long way since I started in this 2011.&lt;/p&gt;
&lt;p&gt;Some of the unique features of this site are:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Mobile first design using &lt;a href="http://getbootstrap.com/"&gt;Twitter Bootstrap framework&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Static site integration with &lt;a href="http://jekyllrb.com"&gt;Jekyll&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Integration with &lt;a href="http://disqus.com/"&gt;Disqus&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Integration with Gibhub API to pull commits and issues using &lt;a href="https://github.com/octokit/octokit.rb"&gt;Octokit&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Syntax highlighting with &lt;a href="http://pygments.org/"&gt;Pygments&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Integration with &lt;a href="http://fancyapps.com/fancybox/"&gt;Fancybox&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Scalebable CSS icons from &lt;a href="http://fortawesome.github.com/Font-Awesome"&gt;FontAwesome&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Site and source code hosting on &lt;a href="http://github.com"&gt;github&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Custom Tag Cloud Plugin&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This site is heavily inspired and borrows some of the plugins and designs from:&lt;/p&gt;</description></item><item><title>My Site WebPart Property Changer</title><link>https://madhur.co.in/projects/my-site-webpart-property-changer/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://madhur.co.in/projects/my-site-webpart-property-changer/</guid><description>&lt;p&gt;A simple tool to change webpart property in MySite for all users automatically without going manually and change it one by one for each user.&lt;/p&gt;</description></item><item><title>OSX Hdd Usage</title><link>https://madhur.co.in/projects/osx-hdd-usage/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://madhur.co.in/projects/osx-hdd-usage/</guid><description>&lt;p&gt;An app to track your Mac HDD Usage&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.producthunt.com/posts/hdd-usage?utm_source=badge-featured&amp;utm_medium=badge&amp;utm_souce=badge-hdd-usage" target="_blank"&gt;&lt;img src="https://api.producthunt.com/widgets/embed-image/v1/featured.svg?post_id=170230&amp;theme=dark" alt="HDD Usage - HDD Usage shows the utilization of your HDD in Mac Menu bar | Product Hunt" style="width: 250px; height: 54px;" width="250" height="54" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Please visit the &lt;a href="https://github.com/madhur/hdd-usage-electron"&gt;OSX Hdd Usage&lt;/a&gt; github page for more information. Also make sure to log your issues/feature requests to the &lt;a href="https://github.com/madhur/hdd-usage-electron/issues?state=open"&gt;Github issue log&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Privacy Policy</title><link>https://madhur.co.in/privacy/hddusage/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://madhur.co.in/privacy/hddusage/</guid><description>&lt;h2 id="privacy-policy---hdd-usage"&gt;Privacy Policy - HDD Usage&lt;/h2&gt;
&lt;p&gt;Madhur Ahuja built the HDD Usage app as an Open Source app. This SERVICE is provided by Madhur Ahuja at no cost and is intended for use as is.&lt;/p&gt;
&lt;p&gt;This page is used to inform visitors regarding my policies with the collection, use, and disclosure of Personal Information if anyone decided to use my Service.&lt;/p&gt;
&lt;p&gt;If you choose to use my Service, then you agree to the collection and use of information in relation to this policy. The Personal Information that I collect is used for providing and improving the Service. I will not use or share your information with anyone except as described in this Privacy Policy.&lt;/p&gt;</description></item><item><title>Privacy Policy</title><link>https://madhur.co.in/privacy/vocabbuilder/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://madhur.co.in/privacy/vocabbuilder/</guid><description>&lt;p&gt;&lt;strong&gt;Privacy Policy&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;This privacy policy applies to the Vocab Builder app (hereby referred to as &amp;ldquo;Application&amp;rdquo;) for mobile devices that was created by Madhur Ahuja (hereby referred to as &amp;ldquo;Service Provider&amp;rdquo;) as a Free service. This service is intended for use &amp;ldquo;AS IS&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What information does the Application obtain and how is it used?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The Application does not obtain any information when you download and use it. Registration is not required to use the Application.&lt;/p&gt;</description></item><item><title>Privacy Policy</title><link>https://madhur.co.in/privacy/weather/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://madhur.co.in/privacy/weather/</guid><description>&lt;h2 id="privacy-policy---weather-pollution-bar"&gt;Privacy Policy - Weather Pollution Bar&lt;/h2&gt;
&lt;p&gt;Madhur Ahuja built the Weather Pollution Bar app as an Open Source app. This SERVICE is provided by Madhur Ahuja at no cost and is intended for use as is.&lt;/p&gt;
&lt;p&gt;This page is used to inform visitors regarding my policies with the collection, use, and disclosure of Personal Information if anyone decided to use my Service.&lt;/p&gt;
&lt;p&gt;If you choose to use my Service, then you agree to the collection and use of information in relation to this policy. The Personal Information that I collect is used for providing and improving the Service. I will not use or share your information with anyone except as described in this Privacy Policy.&lt;/p&gt;</description></item><item><title>RabbitMQ Monitor</title><link>https://madhur.co.in/projects/rabbitmq-monitor/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://madhur.co.in/projects/rabbitmq-monitor/</guid><description>&lt;h2 id="rabbitmq-monitor-widget"&gt;RabbitMQ Monitor Widget&lt;/h2&gt;
&lt;p&gt;&lt;a href="!https://raw.githubusercontent.com/madhur/dashclock-feedly-extension/develop/res/drawable-xhdpi/ic_launcher.png"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;RabbitMQ Monitor Widget allows you to monitor your RabbitMQ queues.&lt;/p&gt;
&lt;p&gt;Just specify the hostname, management port and credentials to access your RabbitMQ Management.&lt;/p&gt;
&lt;p&gt;Features&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Highly Configurable Widget&lt;/li&gt;
&lt;li&gt;Specify Sync interval&lt;/li&gt;
&lt;/ul&gt;
&lt;a href="https://play.google.com/store/apps/details?id=in.co.madhur.rabbitmonitor"&gt;
&lt;img alt="Get it on Google Play"
src="https://madhur.co.in/images/Get_it_on_Google_play.svg" /&gt;
&lt;/a&gt;
&lt;p&gt;Please visit the &lt;a href="https://github.com/madhur/mq-monitor"&gt;RabbitMQ Monitor&lt;/a&gt; github page for more information. Also make sure to log your issues/feature requests to the &lt;a href="https://github.com/madhur/mq-monitor/issues?state=open"&gt;Github issue log&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Realtime Google Analytics Count in Tab</title><link>https://madhur.co.in/projects/realtime-google-analytics-firefox/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://madhur.co.in/projects/realtime-google-analytics-firefox/</guid><description>&lt;p&gt;Firefox Extension to see the number of Realtime users on your site in the tab of
the Realtime google analytics overview page.&lt;/p&gt;
&lt;p&gt;Inspired by the similar chrome extension &lt;a href="https://github.com/haydenjameslee/realtime-google-analytics-in-tab-chrome-extension"&gt;realtime-google-analytics-in-tab&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://addons.mozilla.org/en-US/firefox/addon/google-analytics-count-in-tab/"&gt;Download here&lt;/a&gt;&lt;/p&gt;</description></item><item><title>SharePoint Gadget</title><link>https://madhur.co.in/projects/sharepoint-gadget/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://madhur.co.in/projects/sharepoint-gadget/</guid><description>&lt;p&gt;This gadget pulls the data from a SharePoint list and displays nicely onto a desktop. The gadget utilzes following libraries&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://jquery.com"&gt;Jquery&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.datejs.com"&gt;Datejs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://spservices.codeplex.com/"&gt;SPServices&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://sugarjs.com/"&gt;Sugar&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Silverlight Organization Chart for SharePoint</title><link>https://madhur.co.in/projects/silverlight-organization-chart-for-sharepoint/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://madhur.co.in/projects/silverlight-organization-chart-for-sharepoint/</guid><description>&lt;p&gt;&lt;a href="http://www.madhur.co.in/silverdemo/Index.html"&gt;Live Demo with Sample Data&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="features"&gt;Features&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Collapse/Expand of Nodes&lt;/li&gt;
&lt;li&gt;Reset Root anywhere within the Org Chart&lt;/li&gt;
&lt;li&gt;Root can be permanently set in web part through parameters&lt;/li&gt;
&lt;li&gt;Optionally draws dotted line based on input data.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="steps"&gt;Steps&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Get the .xap file&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Insert the Silverlight WebPart in your SharePoint 2010 site and point it to .XAP file.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Create the list with schema shown in screenshot&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Put the GUID of this list in the &amp;ldquo;Custom Initialization Property&amp;rdquo; of the web part as following&lt;/p&gt;</description></item><item><title>Silverlight People picker and People Chooser WebPart</title><link>https://madhur.co.in/projects/silverlight-people-picker/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://madhur.co.in/projects/silverlight-people-picker/</guid><description>&lt;p&gt;Whenever you are developing a silverlight solution on SharePoint 2010, one of the basic functionality you will require is the ability to select people from your Active Directory.&lt;/p&gt;
&lt;p&gt;Sadly, I could not find a ready made custom silverlight control which I could utilize for my solution. I decided to write on my own. Rather than writing from scratch, I decided to
use the boilerplate code &lt;a href="http://blogs.technet.com/b/speschka/archive/2011/08/09/writing-a-sharepoint-2010-people-picker-control-for-silverlight.aspx"&gt;provided&lt;/a&gt; by Steve.&lt;/p&gt;
&lt;p&gt;This project contains a Silverlight People picker and People Chooser WebPart&lt;/p&gt;</description></item><item><title>Site Quota WebPart</title><link>https://madhur.co.in/projects/site-quota-webpart/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://madhur.co.in/projects/site-quota-webpart/</guid><description>&lt;p&gt;A simple webpart which shows the allocation space used by sharepoint site against its allocated quota. The site collection must have quotas enabled.&lt;/p&gt;</description></item><item><title>STP Inspector</title><link>https://madhur.co.in/projects/stp-inspector/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://madhur.co.in/projects/stp-inspector/</guid><description>&lt;p&gt;STP Inspector is an site template inspector for WSS/MOSS 2007. It analyzes a site template file (.stp) and basically shows its dependencies on the site features and site collection features.&lt;/p&gt;
&lt;p&gt;I wrote this utility to debug some of the issues which are faced while applying site templates saved from different server. The issues are more often when site template contains custom solution such as custom master page, web parts or features.&lt;/p&gt;</description></item><item><title>Vocab Builder</title><link>https://madhur.co.in/projects/vocab-builder/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://madhur.co.in/projects/vocab-builder/</guid><description>&lt;h2 id="vocab-builder"&gt;Vocab Builder&lt;/h2&gt;
&lt;p&gt;Vocab Builder helps you build and revise your vocabulary. Works great for GRE, CAT, CMAT, XAT, SAT, GMAT, etc&lt;/p&gt;
&lt;h2 id="features"&gt;Features&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Collection of around 4800 words&lt;/li&gt;
&lt;li&gt;Completely offline - no internet connection required.&lt;/li&gt;
&lt;li&gt;Customizable - Add your own words, edit existing words.&lt;/li&gt;
&lt;li&gt;Learning mode and revision mode.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In revision mode, you swipe to reveal the word meaning.&lt;br&gt;
In learning mode, the meaning is automatically shown.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Tagging &amp;amp; Synonyms - A word can be tagged with multiple other words. It allows you to make your own grouping of words.&lt;/li&gt;
&lt;li&gt;Periodic Notification - A notification can be configured to appear periodically which will show you the word along with its meaning.&lt;/li&gt;
&lt;li&gt;The notification can be configured to show only the words you want to learn.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="star-rating-system"&gt;Star Rating System&lt;/h2&gt;
&lt;p&gt;Vocab Builder is unique from other vocabulary building software in a way it employs flexible star rating system. It makes no assumption regarding your current level of vocabulary or the words you find easy/difficulty.&lt;/p&gt;</description></item><item><title>Weather Pollution Bar</title><link>https://madhur.co.in/projects/weather-pollution-bar/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://madhur.co.in/projects/weather-pollution-bar/</guid><description>&lt;p&gt;A simple weather and pollution shortcut menu for OS X, written purely in &lt;a href="https://developer.apple.com/swift/"&gt;Apple Swift 2.1&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;sup&gt;*Pollution is currently available in India only in select cities.&lt;/sup&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://github.com/madhur/weather-pollution-bar"&gt;https://github.com/madhur/weather-pollution-bar&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://itunes.apple.com/us/app/weather-pollution-bar/id1077958272?ls=1&amp;amp;mt=12"&gt;&lt;img loading="lazy" src="https://madhur.co.in/images/appstorebadge.svg"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="credits"&gt;Credits&lt;/h2&gt;
&lt;p&gt;The weather data is obtained from &lt;a href="http://openweathermap.org/api"&gt;OpenWeatherMap API&lt;/a&gt;
The pollution data is obtained from &lt;a href="http://cpcb.nic.in/"&gt;CPCB&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I also looked to projects such as &lt;a href="https://github.com/fitztrev/shuttle"&gt;Shuttle&lt;/a&gt; for direction on building status bar Cocoa apps.&lt;/p&gt;</description></item></channel></rss>