<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>HLAB Journal</title><description>Clear thinking on AI systems, open technology, and modern software.</description><link>https://hlab.tech/</link><language>en-us</language><item><title>Building an enterprise AI platform: permission-aware RAG that holds up in production</title><link>https://hlab.tech/posts/enterprise-ai-platform-reference-architecture/</link><guid isPermaLink="true">https://hlab.tech/posts/enterprise-ai-platform-reference-architecture/</guid><description>A reference architecture for retrieval, orchestration, serving, governance, and AI operations, built around a fictional manufacturer and the production incidents that shaped it.</description><pubDate>Fri, 23 Oct 2026 09:00:00 GMT</pubDate><category>Case study</category><category>AI</category><category>RAG</category><category>AI governance</category><category>Enterprise architecture</category><author>Kiarie Henry Mbugua</author></item><item><title>How I built a governed dependency pipeline: no package ships until it earns trust</title><link>https://hlab.tech/posts/how-i-built-a-governed-dependency-pipeline/</link><guid isPermaLink="true">https://hlab.tech/posts/how-i-built-a-governed-dependency-pipeline/</guid><description>I built a quarantine-to-approved npm pipeline that scans every requested package, judges it with a tested Open Policy Agent policy, and keeps evidence for every decision. It blocked a vulnerable lodash version before any developer could install it.</description><pubDate>Fri, 16 Oct 2026 09:00:00 GMT</pubDate><category>Case study</category><category>Supply chain security</category><category>Open Policy Agent</category><category>DevSecOps</category><category>AI</category><author>Kiarie Henry Mbugua</author></item><item><title>Score match quality and load results into Postgres</title><link>https://hlab.tech/posts/lesson-5-score-match-quality-and-load-results-into-postgres/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-5-score-match-quality-and-load-results-into-postgres/</guid><description>Use eval/score.py to compute precision, recall, and F1 for a reconciliation run against the ground_truth.json answer key, then optionally load the same run into a Postgres target schema.</description><pubDate>Sat, 05 Sep 2026 09:00:00 GMT</pubDate><category>Python</category><category>Data Engineering</category><category>PostgreSQL</category><category>Data Quality</category><author>Kiarie Henry Mbugua</author></item><item><title>Reconcile ERP and CRM records with the pipeline</title><link>https://hlab.tech/posts/lesson-4-reconcile-erp-and-crm-records-with-the-pipeline/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-4-reconcile-erp-and-crm-records-with-the-pipeline/</guid><description>Run the reconcile CLI to ingest, clean, validate, and resolve ERP and CRM exports into a single crosswalk, quarantine log, and Markdown reconciliation report.</description><pubDate>Fri, 04 Sep 2026 09:00:00 GMT</pubDate><category>Python</category><category>Data Engineering</category><category>Entity Resolution</category><category>ETL</category><author>Kiarie Henry Mbugua</author></item><item><title>Customize messiness and build a reproducible configuration file</title><link>https://hlab.tech/posts/lesson-3-customize-messiness-and-reproducible-config-files/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-3-customize-messiness-and-reproducible-config-files/</guid><description>Tune the missing-value, bad-date, encoding, duplicate, orphan, and amount-drift ratios that control how messy a generated dataset is, and save your choices to a config file datagen can replay exactly.</description><pubDate>Thu, 03 Sep 2026 09:00:00 GMT</pubDate><category>Python</category><category>Data Engineering</category><category>Synthetic Data</category><category>Data Quality</category><author>Kiarie Henry Mbugua</author></item><item><title>Compare ERP and CRM field mappings and the ground truth answer key</title><link>https://hlab.tech/posts/lesson-2-compare-erp-and-crm-field-mappings-and-ground-truth/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-2-compare-erp-and-crm-field-mappings-and-ground-truth/</guid><description>Read the same customer, invoice, and payment across a flat ERP CSV export and a nested CRM JSON export, and learn what the ground_truth.json answer key does, and doesn&apos;t, record.</description><pubDate>Wed, 02 Sep 2026 09:00:00 GMT</pubDate><category>Python</category><category>Data Engineering</category><category>Data Quality</category><category>Entity Resolution</category><author>Kiarie Henry Mbugua</author></item><item><title>Generate a synthetic ERP and CRM dataset</title><link>https://hlab.tech/posts/lesson-1-generate-a-synthetic-erp-and-crm-dataset/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-1-generate-a-synthetic-erp-and-crm-dataset/</guid><description>Use the datagen CLI to produce a reproducible, deliberately messy ERP and CRM export pair, complete with a ground-truth answer key, the foundation every reconciliation lesson in this series runs against.</description><pubDate>Tue, 01 Sep 2026 09:00:00 GMT</pubDate><category>Python</category><category>Data Engineering</category><category>Synthetic Data</category><category>uv</category><author>Kiarie Henry Mbugua</author></item><item><title>Test model output with deterministic rules</title><link>https://hlab.tech/posts/lesson-6-test-model-output-with-deterministic-rules/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-6-test-model-output-with-deterministic-rules/</guid><description>Add deterministic rule checks to a prompt-evaluation workflow, then measure exactly where simple substring rules produce false positives and false negatives.</description><pubDate>Sat, 22 Aug 2026 09:00:00 GMT</pubDate><category>Python</category><category>AI</category><category>RAG</category><category>Model Evaluation</category><author>Kiarie Henry Mbugua</author></item><item><title>Benchmark retrieval quality</title><link>https://hlab.tech/posts/lesson-5-benchmark-retrieval-quality/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-5-benchmark-retrieval-quality/</guid><description>Turn six labeled retrieval questions into a repeatable BM25 quality report using Hit@k, Recall@k, and mean reciprocal rank, then use the report to find what lexical retrieval misses.</description><pubDate>Fri, 21 Aug 2026 09:00:00 GMT</pubDate><category>Python</category><category>AI</category><category>RAG</category><category>Retrieval Evaluation</category><author>Kiarie Henry Mbugua</author></item><item><title>Merge rankings with Reciprocal Rank Fusion</title><link>https://hlab.tech/posts/lesson-4-merge-rankings-with-reciprocal-rank-fusion/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-4-merge-rankings-with-reciprocal-rank-fusion/</guid><description>Combine BM25 and vector rankings with Reciprocal Rank Fusion, promoting chunks found by multiple retrievers without ever comparing their incompatible raw scores.</description><pubDate>Thu, 20 Aug 2026 09:00:00 GMT</pubDate><category>Python</category><category>AI</category><category>RAG</category><category>Rank Fusion</category><author>Kiarie Henry Mbugua</author></item><item><title>Build and search a vector index</title><link>https://hlab.tech/posts/lesson-3-build-and-search-a-vector-index/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-3-build-and-search-a-vector-index/</guid><description>Build a small exact vector index that stores L2-normalized vectors, ranks results by cosine similarity, and rejects vectors from an incompatible model or dimension.</description><pubDate>Wed, 19 Aug 2026 09:00:00 GMT</pubDate><category>Python</category><category>AI</category><category>RAG</category><category>Vector Search</category><author>Kiarie Henry Mbugua</author></item><item><title>Implement Okapi BM25 from scratch</title><link>https://hlab.tech/posts/lesson-2-implement-okapi-bm25-from-scratch/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-2-implement-okapi-bm25-from-scratch/</guid><description>Build the keyword-ranking function behind a local retrieval pipeline: preserve identifiers, calculate Okapi BM25 scores, and return deterministic ranked results without a search library.</description><pubDate>Tue, 18 Aug 2026 09:00:00 GMT</pubDate><category>Python</category><category>AI</category><category>RAG</category><category>Search Algorithms</category><author>Kiarie Henry Mbugua</author></item><item><title>Chunk Python and Markdown for retrieval</title><link>https://hlab.tech/posts/lesson-1-chunk-python-and-markdown-for-retrieval/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-1-chunk-python-and-markdown-for-retrieval/</guid><description>Build the ingestion pipeline that splits Python and Markdown files into stable, citable chunks, the foundation every retrieval guide in this series searches.</description><pubDate>Mon, 17 Aug 2026 09:00:00 GMT</pubDate><category>Python</category><category>AI</category><category>RAG</category><category>Chunking</category><author>Kiarie Henry Mbugua</author></item><item><title>Lesson 1: A Step by Step Guide in Passing Data to Excel and Generating a Pie Chart using Python 3.7, Openpyxl and Pandas.</title><link>https://hlab.tech/posts/lesson-1-a-step-by-step-guide-in-passing-data-to-excel-and-generating-a-pie-chart-using-python-3-7-openpyxl-and-pandas/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-1-a-step-by-step-guide-in-passing-data-to-excel-and-generating-a-pie-chart-using-python-3-7-openpyxl-and-pandas/</guid><description>Hello and welcome to this Python and Pandas tutorial series, my name is Henry Mbugua and I will be taking you through the various aspects and new answers of how to pair Python and Excel which unlocks powerful tools that not only reduce your workload but also allow you to do more by helping your […]</description><pubDate>Mon, 13 Apr 2020 10:01:36 GMT</pubDate><category>data science</category><category>Python</category><author>Kiarie Henry Mbugua</author></item><item><title>Lesson 3: A Step by Step Tutorial on How to use V-for directive and render data in an HTML page by Consuming Nasa Neows API using Vue.js Framework 2.6 and Axios.js Promise Based Http Client</title><link>https://hlab.tech/posts/lesson-3-a-step-by-step-tutorial-on-how-to-use-v-for-directive-and-render-data-in-an-html-page-by-consuming-nasa-neows-api-using-vue-js-framework-2-6-and-axios-js-promise-based-http-client/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-3-a-step-by-step-tutorial-on-how-to-use-v-for-directive-and-render-data-in-an-html-page-by-consuming-nasa-neows-api-using-vue-js-framework-2-6-and-axios-js-promise-based-http-client/</guid><description>Hello and welcome to this Vue js tutorial series, my name is Henry Mbugua, I will be taking you through the various aspects, and new answers of how to consuming Nasa Open APIs using Vue.js and Axios.js which is a promise-based HTTP client for browsers and node.js, Vue.js is a progressive JavaScript Framework for building […]</description><pubDate>Fri, 27 Mar 2020 23:25:08 GMT</pubDate><category>Vue.js</category><author>Kiarie Henry Mbugua</author></item><item><title>Lesson 2: A Step by Step Tutorial on How to Refactor Our Vue.js Code and usage of Vue.js dev tools extension in Consuming Nasa Open API using Vue.js Framework 2.6 and Axios.js Promise Based Http Client</title><link>https://hlab.tech/posts/lesson-2-a-step-by-step-tutorial-on-how-to-refactor-our-vue-js-code-and-usage-of-vue-js-dev-tools-extension-in-consuming-nasa-open-api-using-vue-js-framework-2-6-and-axios-js-promise-based-http-clien/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-2-a-step-by-step-tutorial-on-how-to-refactor-our-vue-js-code-and-usage-of-vue-js-dev-tools-extension-in-consuming-nasa-open-api-using-vue-js-framework-2-6-and-axios-js-promise-based-http-clien/</guid><description>Hello and welcome to this Vue js tutorial series, my name is Henry Mbugua, I will be taking you through the various aspects, and new answers of how to consuming Nasa Open APIs using Vue.js and Axios.js which is a promise-based HTTP client for browsers and node.js, Vue.js is a progressive JavaScript Framework for building […]</description><pubDate>Sun, 22 Mar 2020 10:48:53 GMT</pubDate><category>Vue.js</category><author>Kiarie Henry Mbugua</author></item><item><title>Lesson 1: A Step by Step Tutorial on How to Consume Nasa Open APIs Using Vue.js Framework 2.6 and Axios.js Promise Based Http Client</title><link>https://hlab.tech/posts/lesson-1-a-step-by-step-tutorial-on-how-to-consume-nasa-open-apis-using-vue-js-framework-2-6-and-axios-js-promise-based-http-client/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-1-a-step-by-step-tutorial-on-how-to-consume-nasa-open-apis-using-vue-js-framework-2-6-and-axios-js-promise-based-http-client/</guid><description>Hello and welcome to this Vue js tutorial series, my name is Henry Mbugua, I will be taking you through the various aspects, and new answers of how to consuming Nasa Open APIs using Vue.js and Axios.js which is a promise-based HTTP client for browsers and node.js, Vue.js is a progressive JavaScript Framework for building […]</description><pubDate>Sat, 14 Mar 2020 21:47:10 GMT</pubDate><category>Vue.js</category><author>Kiarie Henry Mbugua</author></item><item><title>Lesson 4: A Step by Step Tutorial on How to Register Validation and Confirmation URL’s Integration to M-PESA API Using Laravel 6.9 and PHP 7.3</title><link>https://hlab.tech/posts/lesson-4-a-step-by-step-tutorial-on-how-to-register-validation-and-confirmation-urls-integration-to-m-pesa-api-using-laravel-6-9-and-php-7-3/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-4-a-step-by-step-tutorial-on-how-to-register-validation-and-confirmation-urls-integration-to-m-pesa-api-using-laravel-6-9-and-php-7-3/</guid><description>Hello and welcome to this PHP/Laravel tutorial series, my name is Henry Mbugua, I will be taking you through the various aspects, and new answers of M-PESA integration using Laravel web framework and PHP 7.3. Laravel is one of the most popular PHP frameworks and can help you build the application from ground up with […]</description><pubDate>Sat, 07 Mar 2020 20:09:04 GMT</pubDate><category>Laravel web framework</category><author>Kiarie Henry Mbugua</author></item><item><title>Lesson 3: A Step by Step Tutorial on How to develop C2B Integration to M-Pesa on Daraja Using Laravel 6.9 and PHP 7.3</title><link>https://hlab.tech/posts/lesson-3-a-step-by-step-tutorial-on-how-to-develop-c2b-integration-to-m-pesa-on-daraja-using-laravel-6-9-and-php-7-3/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-3-a-step-by-step-tutorial-on-how-to-develop-c2b-integration-to-m-pesa-on-daraja-using-laravel-6-9-and-php-7-3/</guid><description>Hello and welcome to this PHP/Laravel tutorial series, my name is Henry Mbugua, I will be taking through the various aspects and new answers of M-Pesa integration using Laravel web framework and PHP 7.3. Laravel is one of the most popular PHP frameworks and help you build an application from ground up with expressive, elegant […]</description><pubDate>Sun, 09 Feb 2020 11:07:51 GMT</pubDate><category>Mpesa Integration</category><category>Laravel web framework</category><author>Kiarie Henry Mbugua</author></item><item><title>Lesson 2: A Step by Step Tutorial on How to develop an STK push Integration to M-PESA API Using Laravel 6.9 and PHP 7.3</title><link>https://hlab.tech/posts/a-step-by-step-tutorial-on-how-to-develop-an-stk-push-integration-to-m-pesa-api-using-laravel-6-9-and-php-7-3/</link><guid isPermaLink="true">https://hlab.tech/posts/a-step-by-step-tutorial-on-how-to-develop-an-stk-push-integration-to-m-pesa-api-using-laravel-6-9-and-php-7-3/</guid><description>Hello and welcome to this PHP/Laravel tutorial series, my name is Henry Mbugua, I will be taking you through the various aspects, and new answers of M-PESA integration using Laravel web framework and PHP 7.3. Laravel is one of the most popular PHP frameworks and can help you build an application from ground up with […]</description><pubDate>Sat, 25 Jan 2020 09:40:52 GMT</pubDate><category>Laravel web framework</category><author>Kiarie Henry Mbugua</author></item><item><title>Lesson 1: A Step by Step Tutorial on How to Integrate to Safaricom Mpesa API using Laravel 6.9 and PHP 7.3</title><link>https://hlab.tech/posts/lesson-1-a-step-by-step-tutorial-on-how-to-integrate-to-safaricom-mpesa-api-using-laravel-6-9-and-php-7-3/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-1-a-step-by-step-tutorial-on-how-to-integrate-to-safaricom-mpesa-api-using-laravel-6-9-and-php-7-3/</guid><description>Hello and welcome to this PHP/Laravel tutorial series, my name is Henry Mbugua and I will be taking you through the various aspects and new answers of M-pesa Integration using Laravel web framework and PHP 7.3. Laravel is one the most popular php framework and can help you build php application from ground up with […]</description><pubDate>Tue, 31 Dec 2019 17:22:17 GMT</pubDate><category>Mpesa Integration</category><category>Laravel web framework</category><author>Kiarie Henry Mbugua</author></item><item><title>A Step by Step Guide on How to Send Automated Email, attach a PDF Document Using Laravel Task Scheduler in Laravel 6.5 and PHP 7.3</title><link>https://hlab.tech/posts/a-step-by-step-guide-on-how-to-send-automated-email-attach-a-pdf-document-using-laravel-task-scheduler-in-laravel-6-5-and-php-7-3/</link><guid isPermaLink="true">https://hlab.tech/posts/a-step-by-step-guide-on-how-to-send-automated-email-attach-a-pdf-document-using-laravel-task-scheduler-in-laravel-6-5-and-php-7-3/</guid><description>Hello and welcome to this PHP/Laravel tutorial series, my name is Henry Mbugua and I will be taking you through the various aspects and new answers of how to build an automated workflow of sending emails in Laravel 6.5. We will also learn how we can generate a pdf document using DOMPDF wrapper for Laravel. […]</description><pubDate>Sun, 24 Nov 2019 13:35:14 GMT</pubDate><category>Task Scheduler</category><category>Laravel web framework</category><author>Kiarie Henry Mbugua</author></item><item><title>Lesson 2: A Step by Step Tutorial on How to Create a USSD Menu Business Logic Using Africa’s Talking Gateway in Laravel 5.8 and PHP 7.2.10</title><link>https://hlab.tech/posts/lesson-2-a-step-by-step-tutorial-on-how-to-create-a-ussd-menu-business-logic-using-africas-talking-gateway-in-laravel-5-8-and-php-7-2-10/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-2-a-step-by-step-tutorial-on-how-to-create-a-ussd-menu-business-logic-using-africas-talking-gateway-in-laravel-5-8-and-php-7-2-10/</guid><description>Hello and welcome to this PHP/Laravel tutorial series, my name is Henry Mbugua and I will be taking you through the various aspects and new answers of how to build real-time interactive text-based solutions that can be accessed on every type of mobile phone, including feature phone, thus a USSD menu. Every time you dial […]</description><pubDate>Sat, 16 Nov 2019 11:49:26 GMT</pubDate><category>USSD</category><category>Laravel web framework</category><author>Kiarie Henry Mbugua</author></item><item><title>Lesson 3: A Step by Step Tutorial on How to connect our Github Repository with Travis CI in Test-Driven Development Using Django 2.2 and Python 3.7.</title><link>https://hlab.tech/posts/lesson-3-a-step-by-step-tutorial-on-how-to-connect-our-github-repository-with-travis-ci-in-test-driven-development-using-django-2-2-and-python-3-7/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-3-a-step-by-step-tutorial-on-how-to-connect-our-github-repository-with-travis-ci-in-test-driven-development-using-django-2-2-and-python-3-7/</guid><description>Hello and welcome to this Python/Django tutorial series, my name is Henry Mbugua and I will be taking you through the various aspects and new answers of how to build better software using Test Driven Development. In lesson 2, we created a new Django project and we also learned that we are going to develop […]</description><pubDate>Mon, 04 Nov 2019 19:28:17 GMT</pubDate><category>Django web framework</category><category>Python</category><author>Kiarie Henry Mbugua</author></item><item><title>Lesson 1: A Step by Step Tutorial on How to Create a USSD Menu Using Africa’s Talking Gateway in Laravel 5.8 and PHP 7.2.10</title><link>https://hlab.tech/posts/lesson-1-a-step-by-step-tutorial-on-how-to-create-a-ussd-menu-using-africas-talking-gateway-in-laravel-5-8-and-php-7-2-10/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-1-a-step-by-step-tutorial-on-how-to-create-a-ussd-menu-using-africas-talking-gateway-in-laravel-5-8-and-php-7-2-10/</guid><description>Hello and welcome to this PHP/Laravel tutorial series, my name is Henry Mbugua and I will be taking you through the various aspects and new answers of how to build real-time interactive text-based solutions that can be accessed on every type of mobile phone, including feature phone, thus a USSD menu. Every time you dial […]</description><pubDate>Wed, 30 Oct 2019 19:26:59 GMT</pubDate><category>USSD</category><category>Laravel web framework</category><author>Kiarie Henry Mbugua</author></item><item><title>Lesson 2: A Step by Step Tutorial on How to Create a Blog Application in Test-Driven Development Using Django 2.2 and Python 3.7.</title><link>https://hlab.tech/posts/lesson-2-a-step-by-step-tutorial-on-how-to-create-a-blog-application-in-test-driven-development-using-django-2-2-and-python-3-7/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-2-a-step-by-step-tutorial-on-how-to-create-a-blog-application-in-test-driven-development-using-django-2-2-and-python-3-7/</guid><description>Hello and welcome to this Python/Django tutorial series, my name is Henry Mbugua and I will be taking you through the various aspects and new answers of how to build better software using Test Driven Development. In lesson 1, we learned why it is important to use test-driven development. In this lesson, we are going […]</description><pubDate>Sun, 27 Oct 2019 12:20:13 GMT</pubDate><category>Django web framework</category><category>Python</category><author>Kiarie Henry Mbugua</author></item><item><title>Lesson 1: A Step by Step Tutorial on How to Use Test Driven Development When Developing Applications Using Django 2.2 and Python 3.7.</title><link>https://hlab.tech/posts/lesson-1-a-step-by-step-tutorial-on-how-to-use-test-driven-development-when-developing-applications-using-django-2-2-and-python-3-7/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-1-a-step-by-step-tutorial-on-how-to-use-test-driven-development-when-developing-applications-using-django-2-2-and-python-3-7/</guid><description>Hello and welcome to this Python/Django tutorial series, my name is Henry Mbugua and I will be taking you through the various aspects and new answers of how to build better software using Test Driven Development. Developing an application is very difficult, even for a medium-size project which have many moving parts. Software developers are […]</description><pubDate>Sun, 20 Oct 2019 14:53:55 GMT</pubDate><category>Django web framework</category><category>Version Control</category><author>Kiarie Henry Mbugua</author></item><item><title>Lesson 6: A Step by Step Tutorial on How to Fix Bug on Registering Confirmation and Validation URL’s to M-Pesa C2B Integration on Daraja Using Django 2.2 and Python 3.7</title><link>https://hlab.tech/posts/lesson-6-a-step-by-step-tutorial-on-how-to-fix-bug-on-registering-confirmation-and-validation-urls-to-m-pesa-c2b-integration-on-daraja-using-django-2-2-and-python-3-7/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-6-a-step-by-step-tutorial-on-how-to-fix-bug-on-registering-confirmation-and-validation-urls-to-m-pesa-c2b-integration-on-daraja-using-django-2-2-and-python-3-7/</guid><description>Hello and welcome to this Python/Django tutorial series, my name is Henry Mbugua and I will be taking you through the various aspect and new answers of M-pesa Integration using Django web framework and Python 3.7. In lesson 5, we learned how to register confirmation and validation URL’s, however, we had some challenges with getting […]</description><pubDate>Wed, 16 Oct 2019 17:15:38 GMT</pubDate><category>Django web framework</category><author>Kiarie Henry Mbugua</author></item><item><title>A Step by Step Tutorial on How to Monitor Software Errors in Real-Time Using Sentry in Django Web Applications.</title><link>https://hlab.tech/posts/a-step-by-step-tutorial-on-how-to-monitor-software-errors-in-real-time-using-sentry-in-django-web-applications/</link><guid isPermaLink="true">https://hlab.tech/posts/a-step-by-step-tutorial-on-how-to-monitor-software-errors-in-real-time-using-sentry-in-django-web-applications/</guid><description>Hello and welcome to this Python/Django tutorial series, my name is Henry Mbugua and I will be taking you through the various aspects and new answers of monitoring applications that help all software development teams to discover and prioritize errors in real-time using Sentry. Application Error Problem Statement Most software developers rely mostly on error […]</description><pubDate>Sun, 13 Oct 2019 12:02:35 GMT</pubDate><category>Django web framework</category><category>Sentry</category><author>Kiarie Henry Mbugua</author></item><item><title>Lesson 5: A Step by Step Tutorial on How to Register Confirmation and Validation URL’s to M-Pesa C2B Integration on Daraja Using Django 2.2 and Python 3.7</title><link>https://hlab.tech/posts/lesson-5-a-step-by-step-tutorial-on-how-to-register-confirmation-and-validation-urls-to-m-pesa-c2b-integration-on-daraja-using-django-2-2-and-python-3-7/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-5-a-step-by-step-tutorial-on-how-to-register-confirmation-and-validation-urls-to-m-pesa-c2b-integration-on-daraja-using-django-2-2-and-python-3-7/</guid><description>Hey and welcome to this Python/Django tutorial series, my name is Henry Mbugua and I will be taking you through the various aspect and new answers of M-Pesa Integration using Django web framework and Python 3.7. In lesson 4, we learned how to prepare our Mpesa model and running migrations, in this lesson we are […]</description><pubDate>Thu, 10 Oct 2019 10:42:12 GMT</pubDate><category>Mpesa Integration</category><category>Django web framework</category><category>Python</category><author>Kiarie Henry Mbugua</author></item><item><title>Lesson 4: A Step by Step Tutorial on How to develop C2B Integration To M-Pesa On Daraja Using Django 2.2 and Python 3.7</title><link>https://hlab.tech/posts/lesson-4-a-step-by-step-tutorial-on-how-to-develop-c2b-integration-to-m-pesa-on-daraja-using-django-2-2-and-python-3-7/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-4-a-step-by-step-tutorial-on-how-to-develop-c2b-integration-to-m-pesa-on-daraja-using-django-2-2-and-python-3-7/</guid><description>Hey and welcome to this Python/Django tutorial series, my name is Henry Mbugua and I will be taking you through the various aspect and new answer of M-pesa Integration using Django web framework and Python 3.7. In lesson three we learned how to develop an STK push integration, in this lesson we are going to […]</description><pubDate>Tue, 10 Sep 2019 17:10:04 GMT</pubDate><category>Mpesa Integration</category><category>Django web framework</category><category>Python</category><author>Kiarie Henry Mbugua</author></item><item><title>Lesson 3: A Step by Step Tutorial on How to do STK Push Integration To M-Pesa On Daraja Using Django 2.2 and Python 3.7</title><link>https://hlab.tech/posts/lesson-3-a-step-by-step-tutorial-on-how-to-do-stk-push-integration-to-m-pesa-on-daraja-using-django-2-2-and-python-3-7/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-3-a-step-by-step-tutorial-on-how-to-do-stk-push-integration-to-m-pesa-on-daraja-using-django-2-2-and-python-3-7/</guid><description>Hey and welcome to this Python/Django tutorial series, my name is Henry Mbugua and I will be taking you through the various aspect and new answer of M-pesa Integration using Django web framework and Python 3.7. In lesson two we learned how to generate mpesa token, in this lesson we are going to learn how […]</description><pubDate>Sun, 25 Aug 2019 14:29:09 GMT</pubDate><category>Django web framework</category><category>System Integration</category><author>Kiarie Henry Mbugua</author></item><item><title>Lesson 2: A Step by Step Tutorial on How to Generate Mpesa Access Token Using Django 2.2 and Python 3.7.</title><link>https://hlab.tech/posts/lesson-2-a-step-by-step-tutorial-on-how-to-generate-mpesa-access-token-using-django-2-2-and-python-3-7/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-2-a-step-by-step-tutorial-on-how-to-generate-mpesa-access-token-using-django-2-2-and-python-3-7/</guid><description>Hey and welcome to this Python/Django tutorial series, my name is Henry Mbugua and I will be taking you through the various aspect and new answer of M-pesa Integration using Django web framework and Python 3.7. In lesson one, we learned the importance of having Mpesa developers account, in this lesson we are going to […]</description><pubDate>Sun, 18 Aug 2019 06:18:10 GMT</pubDate><category>Mpesa Integration</category><category>Django web framework</category><category>Python</category><category>System Integration</category><author>Kiarie Henry Mbugua</author></item><item><title>Lesson 1: A Step by Step Tutorial on How to Integrate to Mpesa API Using Django 2.2 and Python 3.7</title><link>https://hlab.tech/posts/lesson-1-a-step-by-step-tutorial-on-how-to-integrate-to-mpesa-api-using-django-2-2-and-python-3-7/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-1-a-step-by-step-tutorial-on-how-to-integrate-to-mpesa-api-using-django-2-2-and-python-3-7/</guid><description>Hey and welcome to this Python/Django tutorial series, my name is Henry Mbugua and I will be taking you through the various aspect and new answer of M-pesa Integration using Django web framework and Python 3.7. Django is a powerful Python web framework that can help you develop web applications quickly, from a simple prototype […]</description><pubDate>Sun, 11 Aug 2019 14:10:12 GMT</pubDate><category>Mpesa Integration</category><category>Django web framework</category><category>Python</category><category>System Integration</category><author>Kiarie Henry Mbugua</author></item><item><title>Lesson 4: A Step by Step guide on Showing Registered Users, activating &amp; deactivating users in Django 2.2 and Python 3.7</title><link>https://hlab.tech/posts/lesson-4-a-step-by-step-guide-on-showing-registered-users-activating-deactivating-users-in-django-2-2-and-python-3-7/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-4-a-step-by-step-guide-on-showing-registered-users-activating-deactivating-users-in-django-2-2-and-python-3-7/</guid><description>Hello and welcome to this Python 3.7 and Django 2.2 tutorials, my name is Henry Mbugua and I will be taking through the various aspects of how to show a list of registered users, activating and deactivating users in Django. In our previous lessons, we learned how to create a custom dashboard and we are […]</description><pubDate>Sat, 22 Jun 2019 14:37:47 GMT</pubDate><category>Django web framework</category><category>Python</category><author>Kiarie Henry Mbugua</author></item><item><title>Lesson 3. A Step by Step guide on Creating Custom Dashboard and Login User in Django 2.2 and Python 3.7.</title><link>https://hlab.tech/posts/lesson-3-a-step-by-step-guide-on-creating-custom-dashboard-and-login-user-in-django-2-2-and-python-3-7/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-3-a-step-by-step-guide-on-creating-custom-dashboard-and-login-user-in-django-2-2-and-python-3-7/</guid><description>Hello and welcome to this Python 3.7 and Django 2.2 tutorial series, my name is Henry Mbugua and I will be taking you through the various aspect and new answer of how to create a custom dashboard, redirect users to this custom dashboard after register and to login user. In our previous tutorial, we learned […]</description><pubDate>Sun, 26 May 2019 12:04:22 GMT</pubDate><category>Django web framework</category><category>Python</category><author>Kiarie Henry Mbugua</author></item><item><title>Lesson 2: A Step by Step Guide on How to Use Bootstrap and Register User in Django 2.2 Authentication System and Python 3.7</title><link>https://hlab.tech/posts/lesson-2-a-step-by-step-guide-on-how-to-use-bootstrap-and-register-user-in-django-2-2-authentication-system-and-python-3-7/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-2-a-step-by-step-guide-on-how-to-use-bootstrap-and-register-user-in-django-2-2-authentication-system-and-python-3-7/</guid><description>Hello and welcome to this Python 3.7 and Django 2.2 tutorial series, my name is Henry Mbugua and I will be taking you through the various aspect and new answer of how to use the Bootstrap front-end framework in Django, and register a user. In our previous tutorial, we learned how to set up a […]</description><pubDate>Sat, 18 May 2019 12:26:16 GMT</pubDate><category>Django web framework</category><category>Python</category><author>Kiarie Henry Mbugua</author></item><item><title>Lesson 1: A Step by Step Guide on How To Use Django 2.2 Authentication System and Python 3.7</title><link>https://hlab.tech/posts/lesson-1-a-step-by-step-guide-on-how-to-use-django-2-2-authentication-system-and-python-3-7/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-1-a-step-by-step-guide-on-how-to-use-django-2-2-authentication-system-and-python-3-7/</guid><description>Hello and welcome to this Python 3.7 and Django 2.2 tutorial series, my name is Henry Mbugua and I will be taking you through the various aspects and new answers of this Django python framework and specifically, the Django authentication system. Django comes with a built-in authentication framework that takes care of registering users, associate […]</description><pubDate>Wed, 01 May 2019 12:02:01 GMT</pubDate><category>Django web framework</category><category>Python</category><author>Kiarie Henry Mbugua</author></item><item><title>A Step by Step guide on how to use Gitflow in Software Development</title><link>https://hlab.tech/posts/a-step-by-step-guide-on-how-to-use-gitflow-in-software-development/</link><guid isPermaLink="true">https://hlab.tech/posts/a-step-by-step-guide-on-how-to-use-gitflow-in-software-development/</guid><description>Introduction Hello and welcome to a step by step guide on how to use Gitflow. In this lesson, we are going to learn what is Gitflow, why it’s important to software developers and how to use it. My name is Henry and let’s learn how to use Gitflow. What is Gitflow In our step by […]</description><pubDate>Mon, 22 Apr 2019 17:22:36 GMT</pubDate><category>Version Control</category><author>Kiarie Henry Mbugua</author></item><item><title>Lesson 1: A Step by Step Guide to Learning Data Science Using Python</title><link>https://hlab.tech/posts/lesson-1-a-step-by-step-guide-to-learning-data-science-using-python/</link><guid isPermaLink="true">https://hlab.tech/posts/lesson-1-a-step-by-step-guide-to-learning-data-science-using-python/</guid><description>Hello and welcome to this Python and data science tutorial series, my name is Henry Mbugua and I will be taking you through the various aspect and new answers to this data science tutorial series. The first thing we are going to cover is to understand what is data science. What is Data Science? Data […]</description><pubDate>Sun, 14 Apr 2019 13:49:53 GMT</pubDate><category>data science</category><category>Python</category><author>Kiarie Henry Mbugua</author></item><item><title>A Step by Step guide on how to use Git and Github</title><link>https://hlab.tech/posts/a-step-by-step-guide-on-how-to-use-git-and-github/</link><guid isPermaLink="true">https://hlab.tech/posts/a-step-by-step-guide-on-how-to-use-git-and-github/</guid><description>Introduction Hello and welcome to a step by step guide on how to use Git and Github. In this lesson, we are going to learn what is Git, why it’s important to software developers and how to use it. My name is Henry and let’s learn how to use Git. What is Git? Git in […]</description><pubDate>Sun, 24 Mar 2019 14:02:47 GMT</pubDate><category>git</category><category>github</category><category>Version Control</category><author>Kiarie Henry Mbugua</author></item><item><title>Part X: Displaying Our Posts to Site Visitors in Laravel 5.7 and Php 7.2</title><link>https://hlab.tech/posts/part-x-displaying-our-posts-to-site-visitors-in-laravel-5-7-and-php-7-2/</link><guid isPermaLink="true">https://hlab.tech/posts/part-x-displaying-our-posts-to-site-visitors-in-laravel-5-7-and-php-7-2/</guid><description>Hello and welcome to this tutorial series, my name is Henry and I will be taking you through the various aspect of creating a simple blog system using Laravel web framework. In lesson IX, we completed working on our admin dashboard. In this lesson, we are going to work on our landing page. When you […]</description><pubDate>Sun, 17 Mar 2019 18:09:44 GMT</pubDate><category>Laravel web framework</category><author>Kiarie Henry Mbugua</author></item><item><title>Learn How to Do Web Scraping Using Python 3.7 and Beautiful Soup 4</title><link>https://hlab.tech/posts/learn-how-to-do-web-scraping-using-python-3-7-and-beautiful-soup-4/</link><guid isPermaLink="true">https://hlab.tech/posts/learn-how-to-do-web-scraping-using-python-3-7-and-beautiful-soup-4/</guid><description>Introduction Hello and welcome to this tutorial, my name is Henry and I will be talking you through the various aspect of web scraping using Python 3.7 and Beautiful Soup 4. There are more than 150 million active websites today and finding relevant, comprehensive and apt information has a pivotal role to play in business, […]</description><pubDate>Thu, 14 Mar 2019 15:37:48 GMT</pubDate><category>beautifulsoup4</category><category>Python</category><category>scraping</category><author>Kiarie Henry Mbugua</author></item><item><title>Part IX: How to Delete a Post and Final Admin Dashboard Touch in Laravel 5.7 and Php 7.2</title><link>https://hlab.tech/posts/part-ix-how-to-delete-a-post-and-final-admin-dashboard-touch-in-laravel-5-7-and-php-7-2/</link><guid isPermaLink="true">https://hlab.tech/posts/part-ix-how-to-delete-a-post-and-final-admin-dashboard-touch-in-laravel-5-7-and-php-7-2/</guid><description>Hello and welcome to this tutorial series, my name is Henry and I will be taking you through the various aspect of creating a simple blog system using Laravel web framework. In Part VIII, we learnt how to edit and update our post. In this Lesson, we are going to learn how to delete a […]</description><pubDate>Sun, 10 Mar 2019 10:28:41 GMT</pubDate><category>blog</category><category>Laravel web framework</category><category>PHP</category><author>Kiarie Henry Mbugua</author></item><item><title>Part VIII: How to Edit and Update Our Post in Laravel 5.7 and Php 7.2</title><link>https://hlab.tech/posts/part-viii-how-to-edit-and-update-our-post-in-laravel-5-7-and-php-7-2/</link><guid isPermaLink="true">https://hlab.tech/posts/part-viii-how-to-edit-and-update-our-post-in-laravel-5-7-and-php-7-2/</guid><description>Hello and welcome to this tutorial series, my name is Henry and I will be taking you through the various aspect of creating a simple blog system using Laravel web framework. In Part VII we learned how to upload and display an image. In this lesson, we are going to learn how to edit and […]</description><pubDate>Sat, 09 Mar 2019 17:21:32 GMT</pubDate><category>blog</category><category>Laravel web framework</category><category>PHP</category><author>Kiarie Henry Mbugua</author></item><item><title>Part VII: How to Upload Image in Our Blog Application Using Laravel 5.7 and Php 7.2</title><link>https://hlab.tech/posts/part-vii-how-to-upload-image-in-our-blog-application-using-laravel-5-7-and-php-7-2/</link><guid isPermaLink="true">https://hlab.tech/posts/part-vii-how-to-upload-image-in-our-blog-application-using-laravel-5-7-and-php-7-2/</guid><description>Hello and welcome to this tutorial series, my name is Henry and I will be taking you through the various aspect of creating a simple blog system using Laravel web framework. In part VI we were able to store a blog post in our database. In this lesson, we are going to add the ability […]</description><pubDate>Sun, 03 Mar 2019 08:10:53 GMT</pubDate><category>blog</category><category>Laravel web framework</category><category>PHP</category><author>Kiarie Henry Mbugua</author></item><item><title>Part VI: How to store and Retrieve a Blog Post in Laravel 5.7 and Php 7.2</title><link>https://hlab.tech/posts/part-vi-how-to-store-and-retrieve-a-blog-post-in-laravel-5-7-and-php-7-2/</link><guid isPermaLink="true">https://hlab.tech/posts/part-vi-how-to-store-and-retrieve-a-blog-post-in-laravel-5-7-and-php-7-2/</guid><description>Hello and welcome to this tutorial series, my name is Henry and I will be taking you through the various aspect of creating a simple blog system using Laravel web framework. In part V of this tutorial series, we created a form to create a post. In this lesson, we are going to learn how […]</description><pubDate>Sat, 02 Mar 2019 17:03:00 GMT</pubDate><category>blog</category><category>Laravel web framework</category><category>PHP</category><author>Kiarie Henry Mbugua</author></item><item><title>Part V: Running Our Blog Migration and Creating Blog Post in Laravel 5.7 and Php 7.2</title><link>https://hlab.tech/posts/part-v-running-our-blog-migration-and-creating-blog-post-in-laravel-5-7-and-php-7-2/</link><guid isPermaLink="true">https://hlab.tech/posts/part-v-running-our-blog-migration-and-creating-blog-post-in-laravel-5-7-and-php-7-2/</guid><description>Hello and welcome to this tutorial series, my name is Henry and I will be taking you through the various aspect of creating a simple blog system using Laravel web framework. In part IV of this tutorial series, we created our blog migration. We pick from that and learn how to run our blog migration […]</description><pubDate>Sat, 23 Feb 2019 13:54:12 GMT</pubDate><category>blog</category><category>Laravel web framework</category><category>PHP</category><author>Kiarie Henry Mbugua</author></item><item><title>Part IV: Creating Blog Migration and Showing Registered Users in Our Admin Portal Using Laravel 5.7 and Php 7.2</title><link>https://hlab.tech/posts/part-iv-creating-blog-migration-and-showing-registered-users-in-our-admin-portal-using-laravel-5-7-and-php-7-2/</link><guid isPermaLink="true">https://hlab.tech/posts/part-iv-creating-blog-migration-and-showing-registered-users-in-our-admin-portal-using-laravel-5-7-and-php-7-2/</guid><description>Hello and welcome to this tutorial series, my name is Henry and am really excited to continue building our blog application using Laravel 5.7. In part III of this tutorial series, we managed to set up our admin portal using Bootstrap 4. In part three, we had a task of querying the registered users and […]</description><pubDate>Wed, 20 Feb 2019 17:05:42 GMT</pubDate><category>blog</category><category>Laravel web framework</category><category>PHP</category><author>Kiarie Henry Mbugua</author></item><item><title>Part III: Using Bootstrap 4 on our Blog Admin Dashboard in Laravel 5.7 and Php 7.2</title><link>https://hlab.tech/posts/laravel5-7-blog-admin-setup-using-bootstrap-4/</link><guid isPermaLink="true">https://hlab.tech/posts/laravel5-7-blog-admin-setup-using-bootstrap-4/</guid><description>Hello and welcome to part III of this tutorial series, my name is Henry Mbugua and am really excited to continue building our blog application using Laravel 5.7. In part II of this tutorial series, we managed to register a user and logged in our default admin dashboard The next step in this tutorial is […]</description><pubDate>Sun, 17 Feb 2019 11:07:01 GMT</pubDate><category>blog</category><category>Laravel web framework</category><category>PHP</category><author>Kiarie Henry Mbugua</author></item><item><title>Part II: Creating Blog Admin Portal Using Laravel 5.7 and Php 7.2</title><link>https://hlab.tech/posts/blog-application-in-laravel-5-7/</link><guid isPermaLink="true">https://hlab.tech/posts/blog-application-in-laravel-5-7/</guid><description>Hey and welcome to this Laravel tutorial series, my name is Henry Mbugua and I will be taking you through the various aspect of creating a blog in Laravel 5.7 web framework and Php 7.2. In part I of this tutorial series, we managed to set-up our Laravel blog project and we are going to […]</description><pubDate>Sat, 09 Feb 2019 08:17:30 GMT</pubDate><category>blog</category><category>Laravel web framework</category><category>PHP</category><author>Kiarie Henry Mbugua</author></item><item><title>Part II: How to Sign up User and Send confirmation Email in Django 2.1 and Python 3.6</title><link>https://hlab.tech/posts/part-ii-how-to-sign-up-user-and-send-confirmation-email-in-django-2-1-and-python-3-6/</link><guid isPermaLink="true">https://hlab.tech/posts/part-ii-how-to-sign-up-user-and-send-confirmation-email-in-django-2-1-and-python-3-6/</guid><description>Hello and welcome to the second part of this tutorial series, I am really excited to continue with this tutorial series. In part one, we were able to setup our django project and we are going to continue from there. Here is the link to part one of this tutorial series. Creating Django Application We […]</description><pubDate>Sun, 02 Dec 2018 15:09:38 GMT</pubDate><category>Developer</category><category>Django</category><category>Python</category><category>Django web framework</category><author>Kiarie Henry Mbugua</author></item><item><title>Part I: Email verification upon sign up in Django 2.1 and Python 3.6</title><link>https://hlab.tech/posts/part-i-email-verification-upon-sign-up-in-django-2-1-and-python-3-6/</link><guid isPermaLink="true">https://hlab.tech/posts/part-i-email-verification-upon-sign-up-in-django-2-1-and-python-3-6/</guid><description>Hello and welcome to this python, django tutorial series. My name is Henry Mbugua and I will be taking you through the various aspect of signing up a new user and ask them to confirm that they own or control the email address used during sign up, by sending a confirmation email to activate there […]</description><pubDate>Wed, 24 Oct 2018 05:52:18 GMT</pubDate><category>Django</category><category>Python</category><category>Django web framework</category><author>Kiarie Henry Mbugua</author></item><item><title>Part 1: Building A Blog Application Using Laravel 5. 7 and Php 7.2</title><link>https://hlab.tech/posts/part-1-building-a-blog-application-using-laravel-5-7-and-php-7-2/</link><guid isPermaLink="true">https://hlab.tech/posts/part-1-building-a-blog-application-using-laravel-5-7-and-php-7-2/</guid><description>Welcome to the first section of this tutorial series, building a blog application. In the course of this tutorial series, we will be learning the following: Registering and login users. Admin control panel to manage posts and users. Uploading Image. User commenting on posts. Assumption Laravel 5.7 has a few system requirements and in this […]</description><pubDate>Sun, 14 Oct 2018 08:47:04 GMT</pubDate><category>blog</category><category>Laravel web framework</category><category>PHP</category><author>Kiarie Henry Mbugua</author></item><item><title>How to Become a Better Software Developer – Our Thought</title><link>https://hlab.tech/posts/how-to-become-a-better-software-developer-our-thought/</link><guid isPermaLink="true">https://hlab.tech/posts/how-to-become-a-better-software-developer-our-thought/</guid><description>Hello and welcome to Hlab, in this post we are going to answer a question that has been asked a lot. The question has been asked in various ways including but not limited to: How can I become a better developer? What should I build? Do you have any demo project that I can build? […]</description><pubDate>Sun, 07 Oct 2018 13:31:02 GMT</pubDate><category>Developer</category><category>Inspirational</category><author>Kiarie Henry Mbugua</author></item></channel></rss>