{"id":185,"date":"2025-05-25T16:35:07","date_gmt":"2025-05-25T16:35:07","guid":{"rendered":"https:\/\/ghothi.co.uk\/?page_id=185"},"modified":"2025-05-28T13:56:52","modified_gmt":"2025-05-28T13:56:52","slug":"ai-ml-automation","status":"publish","type":"page","link":"https:\/\/ghothi.co.uk\/?page_id=185","title":{"rendered":"AI\/ML\/Automation"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"185\" class=\"elementor elementor-185\" data-elementor-post-type=\"page\">\n\t\t\t\t<div data-particle_enable=\"false\" data-particle-mobile-disabled=\"false\" class=\"elementor-element elementor-element-0117e6a e-flex e-con-boxed e-con e-parent\" data-id=\"0117e6a\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-eae4a3a elementor-widget elementor-widget-heading\" data-id=\"eae4a3a\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">AI <span style=\"font-weight: normal;\">\/<\/span> ML <span style=\"font-weight: normal;\">\/<\/span> Automation <span style=\"font-weight: normal;\">\/<\/span> Civil Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f11b7ae elementor-grid-1 elementor-posts--thumbnail-left elementor-grid-tablet-1 elementor-hidden-mobile elementor-grid-mobile-1 elementor-widget elementor-widget-posts\" data-id=\"f11b7ae\" data-element_type=\"widget\" data-settings=\"{&quot;classic_columns&quot;:&quot;1&quot;,&quot;classic_row_gap&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:50,&quot;sizes&quot;:[]},&quot;classic_columns_tablet&quot;:&quot;1&quot;,&quot;classic_columns_mobile&quot;:&quot;1&quot;,&quot;classic_row_gap_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;classic_row_gap_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]}}\" data-widget_type=\"posts.classic\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-posts-container elementor-posts elementor-posts--skin-classic elementor-grid\">\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-407 post type-post status-publish format-standard has-post-thumbnail hentry category-ai-ml-automation\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=407\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img fetchpriority=\"high\" decoding=\"async\" width=\"292\" height=\"300\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/06\/612Tz6ZjrYL-292x300.jpg\" class=\"attachment-medium size-medium wp-image-410\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/06\/612Tz6ZjrYL-292x300.jpg 292w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/06\/612Tz6ZjrYL.jpg 746w\" sizes=\"(max-width: 292px) 100vw, 292px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=407\" >\n\t\t\t\tDeploying AI\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>Some notes on AI deployment from Sol Rashidi&#8217;s book &#8216;Your AI Survival Guide: Scraped Knees, Bruised Elbows, and Lessons Learned from Real-World AI Deployments&#8216;. She&#8217;s probably one of the best AI deployment practitioners out there. She&#8217;s a C-Suite executive (Chief Data\/AI\/Analytics Officer) at several Fortune 100&#8217;s, has 10 patents, and<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=407\" aria-label=\"Read more about Deploying AI\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-367 post type-post status-publish format-standard has-post-thumbnail hentry category-ai-ml-automation\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=367\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img decoding=\"async\" width=\"300\" height=\"300\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/01\/png-transparent-postgresql-original-wordmark-logo-icon-thumbnail-300x300.png\" class=\"attachment-medium size-medium wp-image-374\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/01\/png-transparent-postgresql-original-wordmark-logo-icon-thumbnail-300x300.png 300w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/01\/png-transparent-postgresql-original-wordmark-logo-icon-thumbnail-150x150.png 150w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/01\/png-transparent-postgresql-original-wordmark-logo-icon-thumbnail.png 360w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=367\" >\n\t\t\t\tSQL Dump\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>Crib notes from when I used SQL to manage my online platform&#8217;s database. Focuses on the most practical 20% that delivers 80% of the results.<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=367\" aria-label=\"Read more about SQL Dump\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-349 post type-post status-publish format-standard has-post-thumbnail hentry category-ai-ml-automation category-civil-engineering\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=349\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img decoding=\"async\" width=\"200\" height=\"200\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/02\/new_civil_engineer_logo.jpg\" class=\"attachment-medium size-medium wp-image-353\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/02\/new_civil_engineer_logo.jpg 200w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/02\/new_civil_engineer_logo-150x150.jpg 150w\" sizes=\"(max-width: 200px) 100vw, 200px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=349\" >\n\t\t\t\tAutomating Construction News\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>Reading industry news is part of the job. But doing it manually every day\u2014clicking headlines, skimming paragraphs, filtering out noise\u2014is a time sink. So I automated it. The script checks&nbsp;sites like ICE, New Civil Engineer, Construction Enquirer etc., pulls the latest articles, summarises them with GPT, and compiles it all<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=349\" aria-label=\"Read more about Automating Construction News\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-391 post type-post status-publish format-standard has-post-thumbnail hentry category-uncategorized\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=391\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"240\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/PDFXEdit_28-May-2025_28.02.40PM-300x240.png\" class=\"attachment-medium size-medium wp-image-392\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/PDFXEdit_28-May-2025_28.02.40PM-300x240.png 300w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/PDFXEdit_28-May-2025_28.02.40PM-1024x818.png 1024w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/PDFXEdit_28-May-2025_28.02.40PM-768x613.png 768w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/PDFXEdit_28-May-2025_28.02.40PM.png 1083w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=391\" >\n\t\t\t\tJan 2024 &#8211; ML Notes\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>Dump of current notes on ML &#8211; most aspects learnt from A. Ng<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=391\" aria-label=\"Read more about Jan 2024 &#8211; ML Notes\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-119 post type-post status-publish format-standard has-post-thumbnail hentry category-ai-ml-automation category-civil-engineering\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=119\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"178\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/09\/unsupervised-learning-300x178.jpg\" class=\"attachment-medium size-medium wp-image-139\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/09\/unsupervised-learning-300x178.jpg 300w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/09\/unsupervised-learning-1024x608.jpg 1024w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/09\/unsupervised-learning-768x456.jpg 768w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/09\/unsupervised-learning-500x297.jpg 500w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/09\/unsupervised-learning-150x89.jpg 150w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/09\/unsupervised-learning-400x237.jpg 400w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/09\/unsupervised-learning-800x475.jpg 800w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/09\/unsupervised-learning-200x119.jpg 200w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/09\/unsupervised-learning.jpg 1186w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=119\" >\n\t\t\t\tUnsupervised Machine Learning (TBM)\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>I&#8217;ve mostly toyed with supervised machine learning in the past due to its much larger utility compared to unsupervised learning. But, this has left me knowing very little about unsupervised machine learning. Although it has lower utility, I still want to know how it can be used practically, especially for<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=119\" aria-label=\"Read more about Unsupervised Machine Learning (TBM)\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-402 post type-post status-publish format-standard has-post-thumbnail hentry category-uncategorized\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=402\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"289\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/PDFXEdit_28-May-2025_28.03.30PM-300x289.png\" class=\"attachment-medium size-medium wp-image-403\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/PDFXEdit_28-May-2025_28.03.30PM-300x289.png 300w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/PDFXEdit_28-May-2025_28.03.30PM-768x739.png 768w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/PDFXEdit_28-May-2025_28.03.30PM.png 863w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=402\" >\n\t\t\t\tApril 2023: Prompt Engineering Notes\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>Guessing this will quickly get outdated with how fast the LLM space is moving, but my notes on prompt engineering below. Uploading as a quick reference source as otherwise it will 100% get lost on my desktop!<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=402\" aria-label=\"Read more about April 2023: Prompt Engineering Notes\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-29 post type-post status-publish format-standard has-post-thumbnail hentry category-ai-ml-automation\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=29\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img loading=\"lazy\" decoding=\"async\" width=\"292\" height=\"300\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/House-Hunting_GHothi-1-292x300.gif\" class=\"attachment-medium size-medium wp-image-34\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/House-Hunting_GHothi-1-292x300.gif 292w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/House-Hunting_GHothi-1-997x1024.gif 997w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/House-Hunting_GHothi-1-768x788.gif 768w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/House-Hunting_GHothi-1-500x513.gif 500w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/House-Hunting_GHothi-1-150x154.gif 150w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/House-Hunting_GHothi-1-400x411.gif 400w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/House-Hunting_GHothi-1-800x821.gif 800w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/House-Hunting_GHothi-1-200x205.gif 200w\" sizes=\"(max-width: 292px) 100vw, 292px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=29\" >\n\t\t\t\tMaking a House Screening Tool\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>When I started looking at houses, one thing was clear: location matters. A lot! But it&#8217;s hard to get a feel for a place without actually living there. Crime stats seemed like a good proxy for quickly finding out what the quality of life is like in an area without<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=29\" aria-label=\"Read more about Making a House Screening Tool\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-59 post type-post status-publish format-standard has-post-thumbnail hentry category-ai-ml-automation category-civil-engineering\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=59\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"200\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/07\/Photos_30-July-2024_30.10.57AM-300x200.png\" class=\"attachment-medium size-medium wp-image-61\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/07\/Photos_30-July-2024_30.10.57AM-300x200.png 300w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/07\/Photos_30-July-2024_30.10.57AM-768x512.png 768w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/07\/Photos_30-July-2024_30.10.57AM-500x333.png 500w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/07\/Photos_30-July-2024_30.10.57AM-150x100.png 150w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/07\/Photos_30-July-2024_30.10.57AM-400x267.png 400w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/07\/Photos_30-July-2024_30.10.57AM-800x533.png 800w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/07\/Photos_30-July-2024_30.10.57AM-200x133.png 200w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/07\/Photos_30-July-2024_30.10.57AM.png 984w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=59\" >\n\t\t\t\tTraining a YOLOv8 Object Detector\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>If you want to teach a model to spot things in pictures, then object detection is probably what you&#8217;re looking for. Computer vision isn&#8217;t exactly anything new, but YOLOv8 is leaps and bounds better than earlier versions I used in the past, which makes this interesting. To help explain the<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=59\" aria-label=\"Read more about Training a YOLOv8 Object Detector\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-384 post type-post status-publish format-standard has-post-thumbnail hentry category-ai-ml-automation\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=384\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"199\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2023\/02\/chrome_28-May-2025_28.02.37PM-300x199.png\" class=\"attachment-medium size-medium wp-image-387\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2023\/02\/chrome_28-May-2025_28.02.37PM-300x199.png 300w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2023\/02\/chrome_28-May-2025_28.02.37PM.png 740w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=384\" >\n\t\t\t\tEmbeddings\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>My note dump on OpenAI&#8217;s embedding model. First impressions &#8211; it looks really promising and is much faster than using local embeddings from HuggingFace models. Will be using it for vector similarity matching to auto-group KWs for my online platform&#8217;s SEO articles.<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=384\" aria-label=\"Read more about Embeddings\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-17 post type-post status-publish format-standard has-post-thumbnail hentry category-ai-ml-automation\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=17\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img loading=\"lazy\" decoding=\"async\" width=\"240\" height=\"300\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/pycharm64_21-May-2024_21.04.45PM-240x300.png\" class=\"attachment-medium size-medium wp-image-19\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/pycharm64_21-May-2024_21.04.45PM-240x300.png 240w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/pycharm64_21-May-2024_21.04.45PM-150x187.png 150w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/pycharm64_21-May-2024_21.04.45PM-400x499.png 400w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/pycharm64_21-May-2024_21.04.45PM-200x250.png 200w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/pycharm64_21-May-2024_21.04.45PM.png 431w\" sizes=\"(max-width: 240px) 100vw, 240px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=17\" >\n\t\t\t\tAutomating Document Comparison w\/ Python &#038; Tkinter\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>So, you&#8217;ve got a client with some seriously specific document requirements, huh? I feel your pain! Processes are important, especially for change tracking, but sometimes they can feel like they&#8217;re eating up all your time! I recently worked on a project where the client needed the documents to be updated<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=17\" aria-label=\"Read more about Automating Document Comparison w\/ Python &#038; Tkinter\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-316 post type-post status-publish format-standard has-post-thumbnail hentry category-civil-engineering\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=316\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img loading=\"lazy\" decoding=\"async\" width=\"189\" height=\"300\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/711zBXmx03L._SL1360_-189x300.jpg\" class=\"attachment-medium size-medium wp-image-323\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/711zBXmx03L._SL1360_-189x300.jpg 189w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/711zBXmx03L._SL1360_-645x1024.jpg 645w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/711zBXmx03L._SL1360_-768x1220.jpg 768w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/711zBXmx03L._SL1360_.jpg 856w\" sizes=\"(max-width: 189px) 100vw, 189px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=316\" >\n\t\t\t\tEarthwork notes from SHW &amp; Nowak\/Gilbert\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>My WIP notes from: Not a full summary at all, just a collection of the key points I\u2019ve found useful for working on earthwork projects that deal with things like compaction, classification, fill behaviour etc. etc. You&#8217;ll probably need to zoom in in order to be able read anything.<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=316\" aria-label=\"Read more about Earthwork notes from SHW &amp; Nowak\/Gilbert\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-1 post type-post status-publish format-standard has-post-thumbnail hentry category-ai-ml-automation\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=1\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img loading=\"lazy\" decoding=\"async\" width=\"236\" height=\"300\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/passport-checker_GH-236x300.png\" class=\"attachment-medium size-medium wp-image-26\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/passport-checker_GH-236x300.png 236w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/passport-checker_GH-804x1024.png 804w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/passport-checker_GH-768x978.png 768w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/passport-checker_GH-500x637.png 500w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/passport-checker_GH-150x191.png 150w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/passport-checker_GH-400x509.png 400w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/passport-checker_GH-800x1019.png 800w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/passport-checker_GH-200x255.png 200w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/passport-checker_GH.png 893w\" sizes=\"(max-width: 236px) 100vw, 236px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=1\" >\n\t\t\t\tAutomating Passport Appointment Checks\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>My partner recently needed to visit a very unwell family member overseas. But her current passport was about to expire, and we needed to renew it ASAP. The UK Government website has a way to fast-track the process, but it&#8217;s near-impossible to actually secure a slot. The slots appear randomly<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=1\" aria-label=\"Read more about Automating Passport Appointment Checks\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-23 post type-post status-publish format-standard has-post-thumbnail hentry category-ai-ml-automation\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=23\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"203\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2022\/02\/few-shot-classification-300x203.png\" class=\"attachment-medium size-medium wp-image-208\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2022\/02\/few-shot-classification-300x203.png 300w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2022\/02\/few-shot-classification-500x338.png 500w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2022\/02\/few-shot-classification-150x101.png 150w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2022\/02\/few-shot-classification-400x271.png 400w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2022\/02\/few-shot-classification-200x135.png 200w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2022\/02\/few-shot-classification.png 748w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=23\" >\n\t\t\t\tCategorising Data with Zero-Shot Classification\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>Recently, I needed to group about 1000 terms into a number of categories. Doing it manually was far too painful, so I turned to machine learning as it can be so good for these kinds of tasks. Specifically, I used the torch and transformers library from Hugging Face. Their pipeline<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=23\" aria-label=\"Read more about Categorising Data with Zero-Shot Classification\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-398 post type-post status-publish format-standard has-post-thumbnail hentry category-ai-ml-automation\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=398\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img loading=\"lazy\" decoding=\"async\" width=\"296\" height=\"300\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/chrome_28-May-2025_28.03.22PM-296x300.png\" class=\"attachment-medium size-medium wp-image-400\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/chrome_28-May-2025_28.03.22PM-296x300.png 296w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/chrome_28-May-2025_28.03.22PM.png 763w\" sizes=\"(max-width: 296px) 100vw, 296px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=398\" >\n\t\t\t\tMarch 2021: ML Notes\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>Dump of my notes from Machine Learning for Absolute Beginners (3rd e.d.) by Oliver Theobald. V. good book for a quick intro to ML.<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=398\" aria-label=\"Read more about March 2021: ML Notes\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-254 post type-post status-publish format-standard has-post-thumbnail hentry category-ai-ml-automation category-civil-engineering\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=254\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"181\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-26_12-40-16-300x181.jpg\" class=\"attachment-medium size-medium wp-image-256\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-26_12-40-16-300x181.jpg 300w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-26_12-40-16.jpg 751w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=254\" >\n\t\t\t\tFixing Broken SharePoint Links\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>If you&#8217;ve ever worked with SharePoint, you\u2019ve probably seen this happen: Someone moves a folder. Or renames a file. And now the link doesn&#8217;t work&#8230; Now you&#8217;re stuck manually going through each folder you think it might be in, hoping you get lucky or can suss out where it might<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=254\" aria-label=\"Read more about Fixing Broken SharePoint Links\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-196 post type-post status-publish format-standard has-post-thumbnail hentry category-civil-engineering\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=196\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"160\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-25_17-18-05-300x160.jpg\" class=\"attachment-medium size-medium wp-image-202\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-25_17-18-05-300x160.jpg 300w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-25_17-18-05-1024x547.jpg 1024w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-25_17-18-05-768x410.jpg 768w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-25_17-18-05-1536x820.jpg 1536w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-25_17-18-05-500x267.jpg 500w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-25_17-18-05-150x80.jpg 150w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-25_17-18-05-1200x641.jpg 1200w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-25_17-18-05-400x214.jpg 400w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-25_17-18-05-800x427.jpg 800w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-25_17-18-05-200x107.jpg 200w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-25_17-18-05.jpg 1849w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=196\" >\n\t\t\t\tReducing Analysis Time by 60% by hacking an obsecure LUSAS feature\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>In one of my recent bridge assessment projects, I ran into some serious inefficiency. As part of a Level 2 Finite Element Analysis (FEA), I needed to run over 10 different analysis scenarios. Each scenario included four load cases (LCs): The problem was that LC1 to LC3 were exactly the<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=196\" aria-label=\"Read more about Reducing Analysis Time by 60% by hacking an obsecure LUSAS feature\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<\/div>\n\t\t\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6e70f4c elementor-grid-1 elementor-hidden-desktop elementor-hidden-tablet elementor-grid-tablet-2 elementor-grid-mobile-1 elementor-posts--thumbnail-top elementor-widget elementor-widget-posts\" data-id=\"6e70f4c\" data-element_type=\"widget\" data-settings=\"{&quot;classic_columns&quot;:&quot;1&quot;,&quot;classic_row_gap&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:50,&quot;sizes&quot;:[]},&quot;classic_columns_tablet&quot;:&quot;2&quot;,&quot;classic_columns_mobile&quot;:&quot;1&quot;,&quot;classic_row_gap_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;classic_row_gap_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]}}\" data-widget_type=\"posts.classic\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-posts-container elementor-posts elementor-posts--skin-classic elementor-grid\">\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-407 post type-post status-publish format-standard has-post-thumbnail hentry category-ai-ml-automation\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=407\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img fetchpriority=\"high\" decoding=\"async\" width=\"292\" height=\"300\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/06\/612Tz6ZjrYL-292x300.jpg\" class=\"attachment-medium size-medium wp-image-410\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/06\/612Tz6ZjrYL-292x300.jpg 292w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/06\/612Tz6ZjrYL.jpg 746w\" sizes=\"(max-width: 292px) 100vw, 292px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=407\" >\n\t\t\t\tDeploying AI\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>Some notes on AI deployment from Sol Rashidi&#8217;s book &#8216;Your AI Survival Guide: Scraped Knees, Bruised Elbows, and Lessons Learned from Real-World AI Deployments&#8216;. She&#8217;s probably one of the best<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=407\" aria-label=\"Read more about Deploying AI\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-367 post type-post status-publish format-standard has-post-thumbnail hentry category-ai-ml-automation\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=367\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img decoding=\"async\" width=\"300\" height=\"300\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/01\/png-transparent-postgresql-original-wordmark-logo-icon-thumbnail-300x300.png\" class=\"attachment-medium size-medium wp-image-374\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/01\/png-transparent-postgresql-original-wordmark-logo-icon-thumbnail-300x300.png 300w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/01\/png-transparent-postgresql-original-wordmark-logo-icon-thumbnail-150x150.png 150w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/01\/png-transparent-postgresql-original-wordmark-logo-icon-thumbnail.png 360w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=367\" >\n\t\t\t\tSQL Dump\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>Crib notes from when I used SQL to manage my online platform&#8217;s database. Focuses on the most practical 20% that delivers 80% of the results.<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=367\" aria-label=\"Read more about SQL Dump\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-349 post type-post status-publish format-standard has-post-thumbnail hentry category-ai-ml-automation category-civil-engineering\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=349\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img decoding=\"async\" width=\"200\" height=\"200\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/02\/new_civil_engineer_logo.jpg\" class=\"attachment-medium size-medium wp-image-353\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/02\/new_civil_engineer_logo.jpg 200w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/02\/new_civil_engineer_logo-150x150.jpg 150w\" sizes=\"(max-width: 200px) 100vw, 200px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=349\" >\n\t\t\t\tAutomating Construction News\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>Reading industry news is part of the job. But doing it manually every day\u2014clicking headlines, skimming paragraphs, filtering out noise\u2014is a time sink. So I automated it. The script checks&nbsp;sites<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=349\" aria-label=\"Read more about Automating Construction News\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-391 post type-post status-publish format-standard has-post-thumbnail hentry category-uncategorized\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=391\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"240\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/PDFXEdit_28-May-2025_28.02.40PM-300x240.png\" class=\"attachment-medium size-medium wp-image-392\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/PDFXEdit_28-May-2025_28.02.40PM-300x240.png 300w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/PDFXEdit_28-May-2025_28.02.40PM-1024x818.png 1024w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/PDFXEdit_28-May-2025_28.02.40PM-768x613.png 768w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/PDFXEdit_28-May-2025_28.02.40PM.png 1083w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=391\" >\n\t\t\t\tJan 2024 &#8211; ML Notes\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>Dump of current notes on ML &#8211; most aspects learnt from A. Ng<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=391\" aria-label=\"Read more about Jan 2024 &#8211; ML Notes\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-119 post type-post status-publish format-standard has-post-thumbnail hentry category-ai-ml-automation category-civil-engineering\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=119\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"178\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/09\/unsupervised-learning-300x178.jpg\" class=\"attachment-medium size-medium wp-image-139\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/09\/unsupervised-learning-300x178.jpg 300w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/09\/unsupervised-learning-1024x608.jpg 1024w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/09\/unsupervised-learning-768x456.jpg 768w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/09\/unsupervised-learning-500x297.jpg 500w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/09\/unsupervised-learning-150x89.jpg 150w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/09\/unsupervised-learning-400x237.jpg 400w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/09\/unsupervised-learning-800x475.jpg 800w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/09\/unsupervised-learning-200x119.jpg 200w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/09\/unsupervised-learning.jpg 1186w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=119\" >\n\t\t\t\tUnsupervised Machine Learning (TBM)\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>I&#8217;ve mostly toyed with supervised machine learning in the past due to its much larger utility compared to unsupervised learning. But, this has left me knowing very little about unsupervised<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=119\" aria-label=\"Read more about Unsupervised Machine Learning (TBM)\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-402 post type-post status-publish format-standard has-post-thumbnail hentry category-uncategorized\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=402\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"289\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/PDFXEdit_28-May-2025_28.03.30PM-300x289.png\" class=\"attachment-medium size-medium wp-image-403\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/PDFXEdit_28-May-2025_28.03.30PM-300x289.png 300w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/PDFXEdit_28-May-2025_28.03.30PM-768x739.png 768w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/PDFXEdit_28-May-2025_28.03.30PM.png 863w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=402\" >\n\t\t\t\tApril 2023: Prompt Engineering Notes\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>Guessing this will quickly get outdated with how fast the LLM space is moving, but my notes on prompt engineering below. Uploading as a quick reference source as otherwise it<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=402\" aria-label=\"Read more about April 2023: Prompt Engineering Notes\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-29 post type-post status-publish format-standard has-post-thumbnail hentry category-ai-ml-automation\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=29\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img loading=\"lazy\" decoding=\"async\" width=\"292\" height=\"300\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/House-Hunting_GHothi-1-292x300.gif\" class=\"attachment-medium size-medium wp-image-34\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/House-Hunting_GHothi-1-292x300.gif 292w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/House-Hunting_GHothi-1-997x1024.gif 997w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/House-Hunting_GHothi-1-768x788.gif 768w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/House-Hunting_GHothi-1-500x513.gif 500w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/House-Hunting_GHothi-1-150x154.gif 150w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/House-Hunting_GHothi-1-400x411.gif 400w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/House-Hunting_GHothi-1-800x821.gif 800w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/House-Hunting_GHothi-1-200x205.gif 200w\" sizes=\"(max-width: 292px) 100vw, 292px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=29\" >\n\t\t\t\tMaking a House Screening Tool\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>When I started looking at houses, one thing was clear: location matters. A lot! But it&#8217;s hard to get a feel for a place without actually living there. Crime stats<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=29\" aria-label=\"Read more about Making a House Screening Tool\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-59 post type-post status-publish format-standard has-post-thumbnail hentry category-ai-ml-automation category-civil-engineering\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=59\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"200\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/07\/Photos_30-July-2024_30.10.57AM-300x200.png\" class=\"attachment-medium size-medium wp-image-61\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/07\/Photos_30-July-2024_30.10.57AM-300x200.png 300w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/07\/Photos_30-July-2024_30.10.57AM-768x512.png 768w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/07\/Photos_30-July-2024_30.10.57AM-500x333.png 500w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/07\/Photos_30-July-2024_30.10.57AM-150x100.png 150w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/07\/Photos_30-July-2024_30.10.57AM-400x267.png 400w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/07\/Photos_30-July-2024_30.10.57AM-800x533.png 800w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/07\/Photos_30-July-2024_30.10.57AM-200x133.png 200w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/07\/Photos_30-July-2024_30.10.57AM.png 984w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=59\" >\n\t\t\t\tTraining a YOLOv8 Object Detector\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>If you want to teach a model to spot things in pictures, then object detection is probably what you&#8217;re looking for. Computer vision isn&#8217;t exactly anything new, but YOLOv8 is<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=59\" aria-label=\"Read more about Training a YOLOv8 Object Detector\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-384 post type-post status-publish format-standard has-post-thumbnail hentry category-ai-ml-automation\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=384\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"199\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2023\/02\/chrome_28-May-2025_28.02.37PM-300x199.png\" class=\"attachment-medium size-medium wp-image-387\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2023\/02\/chrome_28-May-2025_28.02.37PM-300x199.png 300w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2023\/02\/chrome_28-May-2025_28.02.37PM.png 740w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=384\" >\n\t\t\t\tEmbeddings\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>My note dump on OpenAI&#8217;s embedding model. First impressions &#8211; it looks really promising and is much faster than using local embeddings from HuggingFace models. Will be using it for<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=384\" aria-label=\"Read more about Embeddings\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-17 post type-post status-publish format-standard has-post-thumbnail hentry category-ai-ml-automation\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=17\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img loading=\"lazy\" decoding=\"async\" width=\"240\" height=\"300\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/pycharm64_21-May-2024_21.04.45PM-240x300.png\" class=\"attachment-medium size-medium wp-image-19\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/pycharm64_21-May-2024_21.04.45PM-240x300.png 240w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/pycharm64_21-May-2024_21.04.45PM-150x187.png 150w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/pycharm64_21-May-2024_21.04.45PM-400x499.png 400w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/pycharm64_21-May-2024_21.04.45PM-200x250.png 200w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/pycharm64_21-May-2024_21.04.45PM.png 431w\" sizes=\"(max-width: 240px) 100vw, 240px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=17\" >\n\t\t\t\tAutomating Document Comparison w\/ Python &#038; Tkinter\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>So, you&#8217;ve got a client with some seriously specific document requirements, huh? I feel your pain! Processes are important, especially for change tracking, but sometimes they can feel like they&#8217;re<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=17\" aria-label=\"Read more about Automating Document Comparison w\/ Python &#038; Tkinter\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-316 post type-post status-publish format-standard has-post-thumbnail hentry category-civil-engineering\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=316\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img loading=\"lazy\" decoding=\"async\" width=\"189\" height=\"300\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/711zBXmx03L._SL1360_-189x300.jpg\" class=\"attachment-medium size-medium wp-image-323\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/711zBXmx03L._SL1360_-189x300.jpg 189w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/711zBXmx03L._SL1360_-645x1024.jpg 645w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/711zBXmx03L._SL1360_-768x1220.jpg 768w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/711zBXmx03L._SL1360_.jpg 856w\" sizes=\"(max-width: 189px) 100vw, 189px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=316\" >\n\t\t\t\tEarthwork notes from SHW &amp; Nowak\/Gilbert\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>My WIP notes from: Not a full summary at all, just a collection of the key points I\u2019ve found useful for working on earthwork projects that deal with things like<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=316\" aria-label=\"Read more about Earthwork notes from SHW &amp; Nowak\/Gilbert\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-1 post type-post status-publish format-standard has-post-thumbnail hentry category-ai-ml-automation\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=1\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img loading=\"lazy\" decoding=\"async\" width=\"236\" height=\"300\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/passport-checker_GH-236x300.png\" class=\"attachment-medium size-medium wp-image-26\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/passport-checker_GH-236x300.png 236w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/passport-checker_GH-804x1024.png 804w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/passport-checker_GH-768x978.png 768w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/passport-checker_GH-500x637.png 500w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/passport-checker_GH-150x191.png 150w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/passport-checker_GH-400x509.png 400w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/passport-checker_GH-800x1019.png 800w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/passport-checker_GH-200x255.png 200w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2024\/05\/passport-checker_GH.png 893w\" sizes=\"(max-width: 236px) 100vw, 236px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=1\" >\n\t\t\t\tAutomating Passport Appointment Checks\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>My partner recently needed to visit a very unwell family member overseas. But her current passport was about to expire, and we needed to renew it ASAP. The UK Government<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=1\" aria-label=\"Read more about Automating Passport Appointment Checks\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-23 post type-post status-publish format-standard has-post-thumbnail hentry category-ai-ml-automation\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=23\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"203\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2022\/02\/few-shot-classification-300x203.png\" class=\"attachment-medium size-medium wp-image-208\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2022\/02\/few-shot-classification-300x203.png 300w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2022\/02\/few-shot-classification-500x338.png 500w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2022\/02\/few-shot-classification-150x101.png 150w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2022\/02\/few-shot-classification-400x271.png 400w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2022\/02\/few-shot-classification-200x135.png 200w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2022\/02\/few-shot-classification.png 748w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=23\" >\n\t\t\t\tCategorising Data with Zero-Shot Classification\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>Recently, I needed to group about 1000 terms into a number of categories. Doing it manually was far too painful, so I turned to machine learning as it can be<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=23\" aria-label=\"Read more about Categorising Data with Zero-Shot Classification\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-398 post type-post status-publish format-standard has-post-thumbnail hentry category-ai-ml-automation\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=398\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img loading=\"lazy\" decoding=\"async\" width=\"296\" height=\"300\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/chrome_28-May-2025_28.03.22PM-296x300.png\" class=\"attachment-medium size-medium wp-image-400\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/chrome_28-May-2025_28.03.22PM-296x300.png 296w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/chrome_28-May-2025_28.03.22PM.png 763w\" sizes=\"(max-width: 296px) 100vw, 296px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=398\" >\n\t\t\t\tMarch 2021: ML Notes\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>Dump of my notes from Machine Learning for Absolute Beginners (3rd e.d.) by Oliver Theobald. V. good book for a quick intro to ML.<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=398\" aria-label=\"Read more about March 2021: ML Notes\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-254 post type-post status-publish format-standard has-post-thumbnail hentry category-ai-ml-automation category-civil-engineering\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=254\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"181\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-26_12-40-16-300x181.jpg\" class=\"attachment-medium size-medium wp-image-256\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-26_12-40-16-300x181.jpg 300w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-26_12-40-16.jpg 751w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=254\" >\n\t\t\t\tFixing Broken SharePoint Links\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>If you&#8217;ve ever worked with SharePoint, you\u2019ve probably seen this happen: Someone moves a folder. Or renames a file. And now the link doesn&#8217;t work&#8230; Now you&#8217;re stuck manually going<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=254\" aria-label=\"Read more about Fixing Broken SharePoint Links\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<article class=\"elementor-post elementor-grid-item post-196 post type-post status-publish format-standard has-post-thumbnail hentry category-civil-engineering\">\n\t\t\t\t<a class=\"elementor-post__thumbnail__link\" href=\"https:\/\/ghothi.co.uk\/?p=196\" tabindex=\"-1\" >\n\t\t\t<div class=\"elementor-post__thumbnail\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"160\" src=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-25_17-18-05-300x160.jpg\" class=\"attachment-medium size-medium wp-image-202\" alt=\"\" srcset=\"https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-25_17-18-05-300x160.jpg 300w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-25_17-18-05-1024x547.jpg 1024w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-25_17-18-05-768x410.jpg 768w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-25_17-18-05-1536x820.jpg 1536w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-25_17-18-05-500x267.jpg 500w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-25_17-18-05-150x80.jpg 150w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-25_17-18-05-1200x641.jpg 1200w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-25_17-18-05-400x214.jpg 400w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-25_17-18-05-800x427.jpg 800w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-25_17-18-05-200x107.jpg 200w, https:\/\/ghothi.co.uk\/wp-content\/uploads\/2025\/05\/2025-05-25_17-18-05.jpg 1849w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/div>\n\t\t<\/a>\n\t\t\t\t<div class=\"elementor-post__text\">\n\t\t\t\t<h3 class=\"elementor-post__title\">\n\t\t\t<a href=\"https:\/\/ghothi.co.uk\/?p=196\" >\n\t\t\t\tReducing Analysis Time by 60% by hacking an obsecure LUSAS feature\t\t\t<\/a>\n\t\t<\/h3>\n\t\t\t\t<div class=\"elementor-post__excerpt\">\n\t\t\t<p>In one of my recent bridge assessment projects, I ran into some serious inefficiency. As part of a Level 2 Finite Element Analysis (FEA), I needed to run over 10<\/p>\n\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-post__read-more-wrapper\">\n\t\t\n\t\t<a class=\"elementor-post__read-more\" href=\"https:\/\/ghothi.co.uk\/?p=196\" aria-label=\"Read more about Reducing Analysis Time by 60% by hacking an obsecure LUSAS feature\" tabindex=\"-1\" >\n\t\t\tRead More \u00bb\t\t<\/a>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/article>\n\t\t\t\t<\/div>\n\t\t\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>AI \/ ML \/ Automation \/ Civil Engineering<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-185","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/ghothi.co.uk\/index.php?rest_route=\/wp\/v2\/pages\/185","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ghothi.co.uk\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/ghothi.co.uk\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/ghothi.co.uk\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ghothi.co.uk\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=185"}],"version-history":[{"count":39,"href":"https:\/\/ghothi.co.uk\/index.php?rest_route=\/wp\/v2\/pages\/185\/revisions"}],"predecessor-version":[{"id":397,"href":"https:\/\/ghothi.co.uk\/index.php?rest_route=\/wp\/v2\/pages\/185\/revisions\/397"}],"wp:attachment":[{"href":"https:\/\/ghothi.co.uk\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=185"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}