56,966 blogs · [ { "id": "01a08784-df59-7179-925d-7e61f041ff3e", "title": "Modern Software Engineering: The 2021 Book We Needed for the AI Era", "url": "https://hussainweb.me/blog/modern-software-engineering-review/", "published_at": "2026-08-26T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e61f0d507b2", "title": "Solving Homelab Authentication: A Story of Cloudflare, Authelia, Keycloak, and Tinyauth", "url": "https://hussainweb.me/blog/homelab-authentication-journey/", "published_at": "2026-08-06T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e61f1cbb9c3", "title": "The hidden trap in Terraform's S3 backend (and why Cloudflare breaks it)", "url": "https://hussainweb.me/blog/terraform-s3-backend-cloudflare-proxy-pitfalls/", "published_at": "2026-08-03T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e61f25cd20e", "title": "Life after MinIO: Why I switched to SeaweedFS in my homelab", "url": "https://hussainweb.me/blog/minio-alternatives-seaweedfs-garage/", "published_at": "2026-07-30T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e61f2eeb080", "title": "Granular Proxmox Terraform state and live homelab discovery", "url": "https://hussainweb.me/blog/homelab-proxmox-terraform-discovery/", "published_at": "2026-07-28T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e61f35e3b33", "title": "Ollama quietly stopped using my AMD iGPU", "url": "https://hussainweb.me/blog/ollama-amd-igpu-vulkan/", "published_at": "2026-07-16T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e61f37f508c", "title": "Generating Semantic Note Filenames: Taming Local LLMs with Ollama and Gemma 4", "url": "https://hussainweb.me/blog/generating-semantic-note-filenames/", "published_at": "2026-07-14T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e61f42bc70b", "title": "Finding My Perfect PKM Fit: The Journey from Logseq to Obsidian", "url": "https://hussainweb.me/blog/pkm-migration-logseq-obsidian-tolaria/", "published_at": "2026-07-10T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e61f4ed5395", "title": "Moving Development to the Cloud: The AI-First Home Server", "url": "https://hussainweb.me/blog/moving-dev-to-proxmox-ai-agents/", "published_at": "2026-05-14T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e61f5245d14", "title": "Winning the AWS Jam Toronto: An Unexpected Journey", "url": "https://hussainweb.me/blog/aws-jam-toronto-2026/", "published_at": "2026-05-06T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e61f5f8e134", "title": "How I Saved My Immich Installation from a Broken PostgreSQL Upgrade on TrueNAS", "url": "https://hussainweb.me/blog/truenas-immich-postgres-upgrade/", "published_at": "2026-04-13T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e61f68ec00a", "title": "Beyond \"It Works on My Machine\": Lessons from Modernizing a Legacy Ansible Role", "url": "https://hussainweb.me/blog/modernizing-ansible-role-chezmoi/", "published_at": "2026-04-09T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e61f76e4c2d", "title": "Self-Hosting Atuin with Docker and Coolify", "url": "https://hussainweb.me/blog/self-hosting-atuin-with-docker-and-coolify/", "published_at": "2026-04-08T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e61f856988c", "title": "Teaching Gemini My Voice: A Journey into Skill Creation", "url": "https://hussainweb.me/blog/teaching-gemini-my-voice-skill-creation/", "published_at": "2026-04-03T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e61f8dee5a8", "title": "The Reboot: Ditching the Grand Architecture for Astro", "url": "https://hussainweb.me/blog/the-reboot-ditching-the-grand-architecture-for-astro/", "published_at": "2026-04-02T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e61f9a180b5", "title": "The month of DrupalFest", "url": "https://hussainweb.me/blog/the-month-of-drupalfest/", "published_at": "2021-04-30T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e61f9e212eb", "title": "What I want to see in Drupal's Future", "url": "https://hussainweb.me/blog/what-i-want-to-see-in-drupals-future/", "published_at": "2021-04-30T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e61fa4ffd3d", "title": "Understanding overridden configuration in Drupal", "url": "https://hussainweb.me/blog/understanding-overridden-configuration-in-drupal/", "published_at": "2021-04-29T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e61fad96a3f", "title": "A Drupal Developer's Tech Stack... continued", "url": "https://hussainweb.me/blog/a-drupal-developers-tech-stack-continued/", "published_at": "2021-04-28T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e61fb84d87b", "title": "A Drupal Developer's Tech Stack", "url": "https://hussainweb.me/blog/a-drupal-developers-tech-stack/", "published_at": "2021-04-27T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e61fbcefbb5", "title": "Remote Drupal Development", "url": "https://hussainweb.me/blog/remote-drupal-development/", "published_at": "2021-04-26T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e61fccc9d3c", "title": "Altering forms in Drupal: a workable mixed approach", "url": "https://hussainweb.me/blog/altering-forms-in-drupal-a-workable-mixed-approach/", "published_at": "2021-04-25T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e61fd2828d8", "title": "Altering forms in Drupal: Comparing hooks and object-oriented approaches", "url": "https://hussainweb.me/blog/altering-forms-in-drupal-comparing-hooks-and-object-oriented-approaches/", "published_at": "2021-04-24T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e61fdd36b04", "title": "How I contribute to Drupal (my workflow)", "url": "https://hussainweb.me/blog/how-i-contribute-to-drupal-my-workflow/", "published_at": "2021-04-23T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e61fecd7cb9", "title": "Tracking Drupal (and open source) contributions", "url": "https://hussainweb.me/blog/tracking-drupal-and-open-source-contributions/", "published_at": "2021-04-22T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e61fefd918a", "title": "The Panacea of Objects in Drupal", "url": "https://hussainweb.me/blog/the-panacea-of-objects-in-drupal/", "published_at": "2021-04-21T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e61ff687688", "title": "What does a Drupal developer do?", "url": "https://hussainweb.me/blog/what-does-a-drupal-developer-do/", "published_at": "2021-04-20T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e61ffb8c369", "title": "Career Growth with Drupal", "url": "https://hussainweb.me/blog/career-growth-with-drupal/", "published_at": "2021-04-19T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e62000ad3b1", "title": "What I look for in Drupal contrib modules", "url": "https://hussainweb.me/blog/what-i-look-for-in-drupal-contrib-modules/", "published_at": "2021-04-18T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e6200b27aec", "title": "What I would like to see in Drupal 10", "url": "https://hussainweb.me/blog/what-i-would-like-to-see-in-drupal-10/", "published_at": "2021-04-17T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e6201aeacd9", "title": "Building a Digital Experience with Drupal", "url": "https://hussainweb.me/blog/building-a-digital-experience-with-drupal-dxp/", "published_at": "2021-04-16T00:00:00+00:00" }, { "id": "01a08784-df59-7179-925d-7e62027de390", "title": "People in Drupal", "url": "https://hussainweb.me/blog/people-in-drupal/", "published_at": "2021-04-15T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5b7ecd4e5", "title": "My thoughts on Automatic Updates in Drupal", "url": "https://hussainweb.me/blog/my-thoughts-on-automatic-updates-in-drupal/", "published_at": "2021-04-14T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5b884627d", "title": "Simple Infrastructure as Code (IaC) for Drupal", "url": "https://hussainweb.me/blog/simple-infrastructure-as-code-iac-for-drupal/", "published_at": "2021-04-13T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5b922124d", "title": "Running (testing) Drupal in CI pipeline", "url": "https://hussainweb.me/blog/running-testing-drupal-in-ci-pipeline/", "published_at": "2021-04-12T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5b9c490b6", "title": "Thriving on Chaos in Drupal", "url": "https://hussainweb.me/blog/thriving-on-chaos-in-drupal/", "published_at": "2021-04-11T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5ba42e361", "title": "Drupal Podcasts (and some PHP ones)", "url": "https://hussainweb.me/blog/drupal-podcasts-and-some-php-ones/", "published_at": "2021-04-10T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5bab629fe", "title": "Why you shouldn't decouple Drupal and why you should", "url": "https://hussainweb.me/blog/why-you-shouldnt-decouple-drupal-and-why-you-should/", "published_at": "2021-04-09T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5bb0715ce", "title": "The magic of Drupal events", "url": "https://hussainweb.me/blog/the-magic-of-drupal-events/", "published_at": "2021-04-08T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5bb9b11a9", "title": "Accessing Drupal.org API", "url": "https://hussainweb.me/blog/accessing-drupal-org-api/", "published_at": "2021-04-07T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5bbf8a3d4", "title": "My advice to my younger self (and to new Drupal developers)", "url": "https://hussainweb.me/blog/my-advice-to-my-younger-self-and-to-new-drupal-developers/", "published_at": "2021-04-06T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5bc8407bd", "title": "Code Quality check tools for Drupal", "url": "https://hussainweb.me/blog/code-quality-check-tools-for-drupal/", "published_at": "2021-04-05T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5bd806b29", "title": "Speed up Drupal websites by using PHP's preloader", "url": "https://hussainweb.me/blog/speed-up-drupal-websites-by-using-phps-preloader/", "published_at": "2021-04-04T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5be4efe71", "title": "Quick setup of a Drupal site", "url": "https://hussainweb.me/blog/quick-setup-of-a-drupal-site/", "published_at": "2021-04-03T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5beb1197d", "title": "Let the fest begin! #DrupalFest", "url": "https://hussainweb.me/blog/let-the-fest-begin-drupalfest/", "published_at": "2021-04-02T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5bf084246", "title": "My (updated) Drupal Story", "url": "https://hussainweb.me/blog/my-updated-drupal-story/", "published_at": "2021-04-02T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5bf54b306", "title": "Setting up Python venv in Visual Studio Code", "url": "https://hussainweb.me/blog/setting-up-python-venv-in-visual-studio-code/", "published_at": "2021-03-07T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5bfc0e8cd", "title": "Learning Go for PHP Programmers - Part 1", "url": "https://hussainweb.me/blog/learning-go-for-php-programmers-part-1/", "published_at": "2020-01-26T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5bff1ebc5", "title": "An easier way to get the current node in a block plugin in Drupal 8", "url": "https://hussainweb.me/blog/an-easier-way-to-get-the-current-node-in-a-block-plugin-in-drupal-8/", "published_at": "2020-01-05T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5c0c797da", "title": "Upgrade your Drupal site to the new official Drupal 8.8 composer template", "url": "https://hussainweb.me/blog/upgrade-your-drupal-site-to-the-new-official-drupal-8-8-composer-template/", "published_at": "2019-12-05T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5c12e0593", "title": "Open content in new tab with an image formatter", "url": "https://hussainweb.me/blog/open-content-in-new-tab-with-an-image-formatter/", "published_at": "2019-10-06T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5c1bd8e8b", "title": "Drupal Meetup Bangalore - July 2019", "url": "https://hussainweb.me/blog/drupal-meetup-bangalore-july-2019/", "published_at": "2019-07-27T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5c269e9b7", "title": "Drupal Meetup Bangalore - September 2018", "url": "https://hussainweb.me/blog/drupal-meetup-bangalore-september-2018/", "published_at": "2018-09-29T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5c3532ccb", "title": "How to get the current node in a block plugin in Drupal 8", "url": "https://hussainweb.me/blog/how-to-get-the-current-node-in-a-block-plugin-in-drupal-8/", "published_at": "2018-09-28T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5c37a139f", "title": "Drupal Meetup Bangalore - August 2018", "url": "https://hussainweb.me/blog/drupal-meetup-bangalore-august-2018/", "published_at": "2018-08-22T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5c39c488c", "title": "Drupal Meetup Bangalore - July 2018", "url": "https://hussainweb.me/blog/drupal-meetup-bangalore-july-2018/", "published_at": "2018-07-28T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5c3d606b8", "title": "IBM Call for Code", "url": "https://hussainweb.me/blog/ibm-call-for-code/", "published_at": "2018-07-17T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5c467a088", "title": "Polyglot runtimes meetup 24-Mar 2018", "url": "https://hussainweb.me/blog/polyglot-runtimes-meetup-24-mar-2018/", "published_at": "2018-03-26T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5c53aaa6d", "title": "IBM Code Day 2018", "url": "https://hussainweb.me/blog/ibm-code-day-2018/", "published_at": "2018-02-28T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5c5d465f2", "title": "Applying composer patches fails silently", "url": "https://hussainweb.me/blog/applying-composer-patches-fails-silently/", "published_at": "2017-12-13T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5c6b355c6", "title": "Drupal Meetup Bangalore - November 2017", "url": "https://hussainweb.me/blog/drupal-meetup-bangalore-november-2017/", "published_at": "2017-11-27T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5c6bfc168", "title": "Vagrant 2.0 and DrupalVM", "url": "https://hussainweb.me/blog/vagrant-2-0-drupalvm/", "published_at": "2017-09-08T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5c7737a5e", "title": "Drupal Meetup Bangalore - February 2017", "url": "https://hussainweb.me/blog/drupal-meetup-bangalore-february-2017/", "published_at": "2017-02-28T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5c7ff56b0", "title": "Polyglot Languages & Runtimes Meetup - Going Functional (Programming)", "url": "https://hussainweb.me/blog/polyglot-languages-runtimes-meetup-going-functional-programming/", "published_at": "2016-09-17T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5c8264b6c", "title": "Drupal Meetup Bangalore - August 2016", "url": "https://hussainweb.me/blog/drupal-meetup-bangalore-august-2016/", "published_at": "2016-08-29T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5c89ff73a", "title": "An account of Docker Meetup #22 in Bangalore", "url": "https://hussainweb.me/blog/account-docker-meetup-22-bangalore/", "published_at": "2016-08-20T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5c96b68c9", "title": "Efficient Drupal / PHP development on Windows using cygwin and Cmder", "url": "https://hussainweb.me/blog/efficient-drupal-php-development-windows-using-cygwin-cmder/", "published_at": "2016-07-28T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5ca1d6457", "title": "2nd Open Source Bangalore Meetup", "url": "https://hussainweb.me/blog/2nd-open-source-bangalore-meetup/", "published_at": "2016-07-23T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5cb062276", "title": "Account of Docker Meetup #21 in Bangalore", "url": "https://hussainweb.me/blog/account-docker-meetup-21-bangalore/", "published_at": "2016-07-11T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5cb912f7b", "title": "Drupal Meetup Bangalore - March and April 2016", "url": "https://hussainweb.me/blog/drupal-meetup-bangalore-april-2016/", "published_at": "2016-05-01T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5cbeab4cc", "title": "Porting token module to Drupal 8", "url": "https://hussainweb.me/blog/porting-token-module-drupal-8/", "published_at": "2016-04-30T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5ccb6044c", "title": "First DigitalOcean meetup in India held in Bangalore", "url": "https://hussainweb.me/blog/digitalocean-meetup-india-bangalore/", "published_at": "2016-04-27T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5cd23d0ba", "title": "Upgrading to Ubuntu 16.04 Server (Xenial Xerus) on DigitalOcean", "url": "https://hussainweb.me/blog/upgrading-ubuntu-16-04-server-xenial-xerus-digitalocean/", "published_at": "2016-04-25T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5cda61840", "title": "Tesco Github meetup in Bangalore", "url": "https://hussainweb.me/blog/tesco-github-meetup-bangalore/", "published_at": "2016-03-14T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5cdfffa32", "title": "DrupalCon Asia - Day 2 and 3", "url": "https://hussainweb.me/blog/drupalcon-asia-day-2-and-3/", "published_at": "2016-02-25T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5ce0b90a6", "title": "DrupalCon Asia - Day 0 and Day 1", "url": "https://hussainweb.me/blog/drupalcon-asia-day-0-and-day-1/", "published_at": "2016-02-20T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5ce68e222", "title": "Drupal Global Sprint Weekend 2016 in Bangalore", "url": "https://hussainweb.me/blog/drupal-global-sprint-weekend-2016-in-bangalore/", "published_at": "2016-02-01T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5cf16890c", "title": "My Drupal Story - How I came for code and stayed for community", "url": "https://hussainweb.me/blog/drupal-story-came-code-stayed-community/", "published_at": "2016-01-19T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5cf6aec91", "title": "Drupal 8 Release celebrations at Bangalore", "url": "https://hussainweb.me/blog/drupal-8-release-celebrations-bangalore/", "published_at": "2015-11-23T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5d047e2b5", "title": "5 Reasons to attend a Drupal Release Celebration Party", "url": "https://hussainweb.me/blog/5-reasons-attend-drupal-release-celebration-party/", "published_at": "2015-11-19T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5d06e2a4d", "title": "Drupal Meetup Bangalore - May, 2015", "url": "https://hussainweb.me/blog/drupal-meetup-bangalore-may-2015/", "published_at": "2015-07-21T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5d1679f4c", "title": "Drupal Meetup - April, 2015", "url": "https://hussainweb.me/blog/drupal-meetup-bangalore-april-2015/", "published_at": "2015-04-30T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5d1b58ebe", "title": "Drupal Meetup - March, 2015", "url": "https://hussainweb.me/blog/drupal-meetup-bangalore-march-2015/", "published_at": "2015-04-14T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5d1e36c7e", "title": "Setting up a Drupal Development Machine on Windows with Ubuntu Server in Virtual Machine", "url": "https://hussainweb.me/blog/setting-drupal-development-machine-windows-ubuntu-server-virtual-machine/", "published_at": "2014-12-29T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5d2523262", "title": "Drupal 8 Module Upgrade Sprint in Bangalore - Dec 20, 2014", "url": "https://hussainweb.me/blog/drupal-8-module-upgrade-sprint-bangalore-dec-20-2014/", "published_at": "2014-12-25T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5d2a62c2d", "title": "Install Ubuntu Server 14.04+ on VirtualBox", "url": "https://hussainweb.me/blog/install-ubuntu-server-14-04-virtualbox/", "published_at": "2014-12-16T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5d353df56", "title": "Drupal Minicamp Bangalore - Nov, 2014", "url": "https://hussainweb.me/blog/drupal-minicamp-bangalore-nov-2014/", "published_at": "2014-12-15T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5d3ed1a02", "title": "Acquia Certified Developer - Frontend Specialist", "url": "https://hussainweb.me/blog/acquia-certified-developer-frontend-specialist/", "published_at": "2014-11-17T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5d4cd8e30", "title": "PHP Meetup Bangalore - Oct, 2014", "url": "https://hussainweb.me/blog/php-meetup-bangalore-oct-2014/", "published_at": "2014-10-22T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5d554adaf", "title": "Drupal Meetup Bangalore - Jul/Aug 2014", "url": "https://hussainweb.me/blog/drupal-meetup-bangalore-julaug-2014/", "published_at": "2014-08-07T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5d5fe6a13", "title": "Drupal 8 and Semantic Versioning", "url": "https://hussainweb.me/blog/drupal-8-and-semantic-versioning/", "published_at": "2014-07-29T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5d63c5855", "title": "Drupal Global Training Day - May, 2014", "url": "https://hussainweb.me/blog/drupal-global-training-day-may-2014/", "published_at": "2014-06-02T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5d734b9f8", "title": "Upgrading to Apache 2.4 - Ubuntu 13.10 upgrade stories", "url": "https://hussainweb.me/blog/upgrading-apache-2-4-ubuntu-13-10-upgrade-stories/", "published_at": "2013-10-26T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5d77829b7", "title": "Setting up SSH Tunneling", "url": "https://hussainweb.me/blog/setting-ssh-tunneling/", "published_at": "2013-10-01T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5d7e21556", "title": "Drupal Meetup in Bangalore - Sep, 2013", "url": "https://hussainweb.me/blog/drupal-meetup-bangalore-sep-2013/", "published_at": "2013-09-28T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5d88b2fa9", "title": "Drupal Minicamp in Bangalore - Sep, 2013", "url": "https://hussainweb.me/blog/drupal-minicamp-bangalore-sep-2013/", "published_at": "2013-09-24T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5d8aedcea", "title": "Beginning Drupal Contribution", "url": "https://hussainweb.me/blog/beginning-drupal-contribution/", "published_at": "2013-08-05T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5d948b981", "title": "Compile PHP 5 with FPM on Ubuntu 13.04 (or any Debian Distro)", "url": "https://hussainweb.me/blog/compile-php-5-source-with-fpm-ubuntu-13-04-debian/", "published_at": "2013-08-03T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5da417aa2", "title": "Lets talk about Data - MySQL 5.6 and Big Data", "url": "https://hussainweb.me/blog/lets-talk-about-data-mysql-5-6-and-big-data/", "published_at": "2013-04-06T00:00:00+00:00" }, { "id": "01a08784-df5a-739e-82ca-98b5daa3c7dd", "title": "Drupal Meetup in Bangalore - March, 2013", "url": "https://hussainweb.me/blog/drupal-meetup-in-bangalore-march-2013/", "published_at": "2013-03-31T00:00:00+00:00" } ] posts Claim your blog
Back to hussainweb.me
Blog · corpus.blog/blogs/hussainweb.me/posts

hussainweb.me

hussainweb.me

2026

2021

2020

2019

2018

2017

2016

2015

2014

2013