<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Mohammed Thaha</title>
    <description>The latest articles on DEV Community by Mohammed Thaha (@mohammed_thaha).</description>
    <link>https://dev.to/mohammed_thaha</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1881433%2F06bbad1d-1515-4b2a-9e92-e8d33eb55061.png</url>
      <title>DEV Community: Mohammed Thaha</title>
      <link>https://dev.to/mohammed_thaha</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/mohammed_thaha"/>
    <language>en</language>
    <item>
      <title>From a Phone in a "Cave" to Global Open Source: Why Google’s Gemma Models are a Lifeline for Budget Developers</title>
      <dc:creator>Mohammed Thaha</dc:creator>
      <pubDate>Fri, 22 May 2026 07:40:07 +0000</pubDate>
      <link>https://dev.to/mohammed_thaha/from-a-phone-in-a-cave-to-global-open-source-why-googles-gemma-models-are-a-lifeline-for-budget-3ebe</link>
      <guid>https://dev.to/mohammed_thaha/from-a-phone-in-a-cave-to-global-open-source-why-googles-gemma-models-are-a-lifeline-for-budget-3ebe</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/google-gemma-2026-05-06"&gt;Gemma 4 Challenge: Write About Gemma 4&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Before you dive into reading this blog, I want to share one thing with you straight from the heart. I didn’t just write this blog directly using an LLM or any AI tool. I sat down and drafted every single bit of this story in my notepad first. Then, I put it into AI and said, &lt;br&gt;
Hey, look, don’t add extra artificial content. Just help me organize my thoughts and put this info correctly so I can share my real experience.&lt;/p&gt;
&lt;h2&gt;
  
  
  TL;DR: The Quick Snapshot
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;The Core Story:&lt;/strong&gt; How running lightweight open-source AI locally on a phone subsystem saved my engineering studies when internet network routing cut out completely.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Mobile Setup Stack:&lt;/strong&gt; Compiling llama.cpp natively in Android Termux using release tag b4833 to bypass the common spawn.h Android error, executing an optimized 4-bit quantized Gemma 2B model.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Workstation Setup Stack:&lt;/strong&gt; Host environment dual-booting Ubuntu Linux, compiling native builds with CPU optimization parameters to launch gemma-4-E4B-it via local web server endpoints.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;
  
  
  The Budget Spec Sheet: Real World Hardware Configurations
&lt;/h2&gt;

&lt;p&gt;A lot of tech blogs show local AI running on $3,000 developer rigs with dual RTX 4090 GPUs. That is not what this story is about. Here is the exact, modest hardware I used to build, compile, and run everything offline:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Specification&lt;/th&gt;
&lt;th&gt;My Mobile Setup&lt;/th&gt;
&lt;th&gt;My Workstation Laptop&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Device Type&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Android Smartphone&lt;/td&gt;
&lt;td&gt;Everyday Dual-Boot Laptop&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;System Environment&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Termux Terminal Emulator (F-Droid Build)&lt;/td&gt;
&lt;td&gt;Ubuntu Linux &lt;em&gt;(Boot Target for Focus Sessions)&lt;/em&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Total Memory (RAM)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;7.27 GB Total System RAM&lt;/td&gt;
&lt;td&gt;8.00 GB RAM&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Storage Allocation&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;N/A (Internal Android Storage)&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;191 GB NVMe SSD Base Partition &lt;em&gt;(~21 GB Free)&lt;/em&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Model Target&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Google Gemma 2B Int4 Quantized (GGUF)&lt;/td&gt;
&lt;td&gt;Google Gemma 4 (E4B Flavor)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;As you can see from my telemetry screenshots below, both devices are running tightly under their memory ceilings, proving that Gemma doesn't require elite data centers just smart configuration!&lt;/p&gt;
&lt;h2&gt;
  
  
  What's Covered in This Blog
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;The Budget Spec Sheet&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The Superpower of True Offline Coding&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;What Makes Gemma So Mind-Blowing?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Showcasing the Setup: Gemma Natively on My Phone!&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Step-by-Step: Native Mobile Setup (Termux + &lt;code&gt;spawn.h&lt;/code&gt; Fix)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;My New Setup: Pure Focus Mode on Laptop&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Step-by-Step: Compiling Gemma 4 on Ubuntu Linux&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Final Thoughts &amp;amp; Acknowledgments&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;
  
  
  The Superpower of True Offline Coding
&lt;/h2&gt;

&lt;p&gt;A lot of people ask me, &lt;strong&gt;Why do you care so much about running models offline when the cloud exists?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Because I remember my school days. I didn’t have a &lt;strong&gt;flashy, high-end laptop&lt;/strong&gt;. I had a smartphone. I used Termux, Acode, and Anwriter to write code directly on my tiny screen. I still remember the absolute thrill of building my very first Tic-Tac-Toe game using pure HTML, CSS, and JavaScript, entirely offline.&lt;/p&gt;

&lt;p&gt;Back then, the absolute biggest roadblock to studying and building things was documentation. If you wanted to learn or look up an error code, you needed an internet network to scroll through endless pages. If your network failed, your learning stopped.&lt;/p&gt;

&lt;p&gt;But when you code or study completely offline with an AI tutor, a superpower unlocks: &lt;strong&gt;The noise disappears, and the barriers vanish&lt;/strong&gt;.&lt;br&gt;
Here is exactly what my brain looks like when the Wi-Fi is on versus when I cut the cord:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxgvyi5624lh7b0u5w4xk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxgvyi5624lh7b0u5w4xk.png" alt=" " width="800" height="709"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Image generated using Google Gemini&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Now, that entire network problem is completely solved. Anyone can build anything and learn easily without spending a single penny on expensive internet plans or premium data subscriptions.&lt;/p&gt;

&lt;p&gt;Historically, the problem with offline AI was hardware. Running a capable LLM required an expensive machine with massive amounts of VRAM. If you didn’t have the cash for a high-end gaming GPU, you were locked out.&lt;/p&gt;

&lt;p&gt;Google just shattered that barrier. By releasing the Gemma model family under an open, commercially permissive Apache 2.0 license, they didn't just give us a powerful model; they gave every single student around the globe access to frontier-level AI on regular, everyday devices. When I spin up a Gemma model to help me generate Go code on an older, struggling laptop and watch it handle the logic flawlessly, I genuinely feel like Tony Stark.&lt;/p&gt;

&lt;p&gt;"&lt;strong&gt;TONY STARK BUILT THIS IN A CAVE! WITH A BOX OF SCRAPS!&lt;/strong&gt;" &amp;gt; —— Me screaming at my old laptop when the local Go code compiles perfectly. 😂&lt;/p&gt;
&lt;h3&gt;
  
  
  What Makes Gemma So Mind Blowing?
&lt;/h3&gt;

&lt;p&gt;Google engineered these lightweight, open-weights models specifically to bring massive reasoning capabilities straight to accessible hardware.&lt;/p&gt;

&lt;p&gt;In plain English? It means the model doesn't choke your device's RAM. Instead of needing a massive corporate data center to process complex logic, it uses ultra-efficient token processing and smart memory layouts. This drastically shrinks the hardware footprint, allowing you to feed it prompts without crashing your device or causing your phone to overheat like a hot potato.&lt;/p&gt;

&lt;p&gt;Whether you are running a lightweight version on a smartphone or a larger variant on a laptop, you are getting incredible coding and debugging help completely locally.&lt;/p&gt;
&lt;h2&gt;
  
  
  Showcasing the Setup: Gemma Running Natively on My Phone!
&lt;/h2&gt;

&lt;p&gt;To show you that this isn't just theory I actually live this setup. Check out this video of my actual screen while using it:&lt;/p&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/TPmS20a0Qkk"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Seeing text stream into a mobile terminal screen like that when you are completely disconnected from the outside world is an unmatched feeling. It makes you realize that the barriers to education and software engineering are completely tearing down.&lt;/p&gt;

&lt;p&gt;Just to be transparent with you guys on the dates: what you are seeing in that video above is my older mobile setup running the Gemma 2B model. I originally took this screen recording on May 16, 2026, after using the model heavily in Termux, and I just uploaded the clip to YouTube on May 20, 2026, to share it here. I wanted to show you this video because it proves just how smooth and massive the performance is even on a small phone. It makes you think—if a lightweight 2B model can do all this, how crazy is the new Gemma 4 going to be?&lt;/p&gt;

&lt;h2&gt;
  
  
  Recreating the Magic: Step-by-Step Native Mobile Setup
&lt;/h2&gt;

&lt;p&gt;Want to turn your phone into an offline powerhouse running a model like Gemma 2B? Here are the actual commands to set up Termux and compile llama.cpp directly on Android:&lt;/p&gt;

&lt;p&gt;Note: These images reflect the exact workflow from my mobile device. If the upstream repository receives new updates down the line, simply check their latest branch logs and run your build!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1:  Install Required Packages &amp;amp; System Headers&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;pkg update &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; pkg upgrade &lt;span class="nt"&gt;-y&lt;/span&gt;
pkg &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;-y&lt;/span&gt; git cmake clang make python ndk-sysroot wget
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This installs all the essential tools required to compile llama.cpp natively inside Termux.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2: Hitting the Nasty spawn.h Error&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;While compiling, I encountered a spawn.h error on Termux during the build process.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmglmw25z5bn63u2vo3p5.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmglmw25z5bn63u2vo3p5.jpg" alt=" " width="800" height="1778"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To fix this issue, I rolled back to a stable build tag and rebuilt the project.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Roll back to a stable release build tag to bypass the spawn.h error&lt;/span&gt;
git checkout b4833

&lt;span class="c"&gt;# Clear the old broken build artifacts&lt;/span&gt;
&lt;span class="nb"&gt;rm&lt;/span&gt; &lt;span class="nt"&gt;-rf&lt;/span&gt; build

&lt;span class="c"&gt;# Reconfigure and trigger the compilation process using 4 threads&lt;/span&gt;
cmake &lt;span class="nt"&gt;-B&lt;/span&gt; build
cmake &lt;span class="nt"&gt;--build&lt;/span&gt; build &lt;span class="nt"&gt;-j4&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This successfully compiled the project without errors on Android.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3: Download and Run Your Offline Assistant&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Create a models directory inside llama.cpp&lt;/span&gt;
&lt;span class="nb"&gt;mkdir&lt;/span&gt; &lt;span class="nt"&gt;-p&lt;/span&gt; models
&lt;span class="nb"&gt;cd &lt;/span&gt;models
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Download your preferred GGUF model and place it inside the models folder.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Example model used:&lt;br&gt;
gemma-2-2b-it-Q4_K_M.gguf&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Step 4: Launch Gemma 2B (Choose Web UI or Terminal Chat)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Option A:&lt;/strong&gt; Launch the Local Web UI Server&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;./build/bin/llama-server &lt;span class="nt"&gt;-m&lt;/span&gt; models/gemma-2-2b-it-Q4_K_M.gguf &lt;span class="nt"&gt;-c&lt;/span&gt; 512 &lt;span class="nt"&gt;-t&lt;/span&gt; 2 &lt;span class="nt"&gt;-ngl&lt;/span&gt; 0
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Leave Termux running, open your phone browser, and navigate to &lt;a href="http://127.0.0.1:8080" rel="noopener noreferrer"&gt;http://127.0.0.1:8080&lt;/a&gt;. Below is a screenshot of the clean interface running completely offline from my mobile browser setup:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F98sboj7q231dml7oth6h.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F98sboj7q231dml7oth6h.jpg" alt=" " width="800" height="1701"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Option B:&lt;/strong&gt; Launch Interactive Chat in Terminal&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;./build/bin/llama-cli -m models/gemma-2-2b-it-Q4_K_M.gguf -c 512 -t 2 -ngl 0 -cnv
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;m → Path to the model&lt;/li&gt;
&lt;li&gt;c 512 → Context size&lt;/li&gt;
&lt;li&gt;t 2 → Number of CPU threads&lt;/li&gt;
&lt;li&gt;ngl 0 → Disable GPU layers (recommended for mobile)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Once launched, the model runs completely offline on your Android device.&lt;br&gt;
Below is a screenshot of the model running in my Termux terminal.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjogx1u5z9d326cund8c6.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjogx1u5z9d326cund8c6.jpg" alt=" " width="800" height="1778"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  My New Setup: Pure Focus Mode (Minus the Distractions)
&lt;/h2&gt;

&lt;p&gt;Right now, I am so eager to test Gemma 4 on my phone next, but for serious coding work, I've deployed it on my laptop setup instead.&lt;/p&gt;

&lt;p&gt;I have a dual-boot machine running Windows and Ubuntu Linux, and for serious focus sessions, I always boot straight into Ubuntu.&lt;/p&gt;

&lt;p&gt;And look, the beauty of llama.cpp is that you can host a local server and run the model directly inside a clean, beautiful browser interface on your local machine. It is absolutely superb. I get to pull up my project files, ask my local model questions, and have zero internet tabs open to distract me. Bye-bye internet, hello focus mode!&lt;/p&gt;
&lt;h2&gt;
  
  
  Step-by-Step Guide: Compiling Gemma 4 on Ubuntu Linux for High Performance
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Step 1: Update System and Install Core Build Tools&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;apt update &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="nb"&gt;sudo &lt;/span&gt;apt &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;-y&lt;/span&gt; git build-essential cmake
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Step 2: Download and Compile llama.cpp&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git clone https://github.com/ggml-org/llama.cpp.git

&lt;span class="nb"&gt;cd &lt;/span&gt;llama.cpp

cmake &lt;span class="nt"&gt;-B&lt;/span&gt; build
&lt;span class="c"&gt;# Build project (e.g., -j4 for 4 cores, or -j$(nproc) for all cores)&lt;/span&gt;
cmake &lt;span class="nt"&gt;--build&lt;/span&gt; build &lt;span class="nt"&gt;-j&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Step 3: Create Directories and Download Gemma 4 GGUF&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Create the models directory inside llama.cpp if it doesn't exist&lt;/span&gt;
&lt;span class="nb"&gt;mkdir&lt;/span&gt; &lt;span class="nt"&gt;-p&lt;/span&gt; models 

&lt;span class="c"&gt;# Download your preferred Gemma 4 GGUF flavor from Hugging Face into the models folder&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Step 4:  Launch Gemma 4 (Choose Web UI or Terminal)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Option A: Launch the Local&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;./build/bin/llama-server &lt;span class="nt"&gt;-m&lt;/span&gt; models/gemma-4-E4B-it-Q3_K_S.gguf &lt;span class="nt"&gt;-c&lt;/span&gt; 4096 &lt;span class="nt"&gt;--host&lt;/span&gt; 127.0.0.1 &lt;span class="nt"&gt;--port&lt;/span&gt; 8080
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Once that server is running, you just open your browser, head to &lt;a href="http://127.0.0.1:8080" rel="noopener noreferrer"&gt;http://127.0.0.1:8080&lt;/a&gt;, and you have a stunning interface running 100% locally from your machine!&lt;/p&gt;

&lt;p&gt;Here is exactly what it looks like when I boot into Ubuntu and run the Web UI interface. Look at how seamlessly it breaks down complex topics like Deep-First Search (DFS) and Breadth-First Search (BFS):&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fofb3d22scubzwd9wi3u6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fofb3d22scubzwd9wi3u6.png" alt=" " width="800" height="628"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Option B: Launch Interactive Chat in Terminal&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;./build/bin/llama-cli &lt;span class="nt"&gt;-m&lt;/span&gt; models/gemma-4-E4B-it-Q3_K_S.gguf &lt;span class="nt"&gt;-p&lt;/span&gt; &lt;span class="s2"&gt;"Hi"&lt;/span&gt; &lt;span class="nt"&gt;-env&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Here is a live screenshot of the terminal variant spinning up on my desktop. You can see &lt;code&gt;htop&lt;/code&gt; running on the right side, showing how lightweight and light on resources the execution is on my CPU:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0qt64jvtwerec13xiamm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0qt64jvtwerec13xiamm.png" alt=" " width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Looking at this laptop setup makes me feel incredibly grateful. I have to give a massive shoutout to Google. A while back, the high-quality technical information and support I got from the Gemma ecosystem actually helped me write high-value blogs on Dev.to. Those blogs gained traction, helped me clear technical hurdles, and ultimately allowed me to make the money I needed to finally step up from just a phone and get this laptop.&lt;/p&gt;

&lt;h2&gt;
  
  
  Final Thoughts: Thank You, Google
&lt;/h2&gt;

&lt;p&gt;From tinkering with basic text editors in my school days to deploying advanced Go routines on an old, hardware-challenged laptop today, local execution has completely shaped my trajectory as a developer.&lt;/p&gt;

&lt;p&gt;AI shouldn't just be a luxury for those who can afford massive monthly cloud subscriptions or elite hardware. By putting open-weights, highly compressed powerhouses like the Gemma family directly into our hands, Google has leveled the playing field for student developers everywhere who are suffering through hardware or internet constraints.&lt;/p&gt;

&lt;p&gt;Thank you, Google, for making things easy for me from my childhood all the way to right now. You always clear the path for devs who are trying to learn and grow.&lt;/p&gt;

&lt;p&gt;Now, go clone the repository, download the weights, shut off your internet, and go build something awesome in your own cave!&lt;/p&gt;

&lt;p&gt;Before I close this blog completely, I want to say one last thing. I just wanted to share the true happiness and pure excitement of a kid coding from his phone and moving up to a laptop. I hope this story inspires other budget developers to realize that they don't need elite hardware to build amazing things. Thank you so much for reading, and good luck with your own builds!&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>gemmachallenge</category>
      <category>gemma</category>
    </item>
    <item>
      <title>Deal Agent Forge: AI-Powered Tech Builder with Conversational Intelligence</title>
      <dc:creator>Mohammed Thaha</dc:creator>
      <pubDate>Tue, 03 Feb 2026 19:44:27 +0000</pubDate>
      <link>https://dev.to/mohammed_thaha/deal-agent-forge-ai-powered-tech-builder-with-conversational-intelligence-1b2d</link>
      <guid>https://dev.to/mohammed_thaha/deal-agent-forge-ai-powered-tech-builder-with-conversational-intelligence-1b2d</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/algolia"&gt;Algolia Agent Studio Challenge&lt;/a&gt;: Consumer-Facing Conversational Experiences&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;What I Built&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Deal Agent Forge is an AI-powered conversational configurator that simplifies building Gaming PCs, Professional Drones, and Solar Power Systems by giving users rapid, accurate recommendations without overwhelming technical research.&lt;/p&gt;

&lt;p&gt;Instead of manually checking specs, compatibility, and prices across multiple sites, users interact with a chat-based assistant that:&lt;/p&gt;

&lt;p&gt;Understands &lt;strong&gt;natural language&lt;/strong&gt; requirements&lt;br&gt;
Retrieves relevant product &lt;strong&gt;data instantly&lt;/strong&gt;&lt;br&gt;
Guides users through &lt;strong&gt;build recommendations&lt;/strong&gt;&lt;br&gt;
Checks &lt;strong&gt;compatibility&lt;/strong&gt; and &lt;strong&gt;cost-performance&lt;/strong&gt; tradeoffs&lt;br&gt;
Suggests &lt;strong&gt;optimized configurations&lt;/strong&gt; based on context&lt;/p&gt;
&lt;h2&gt;
  
  
  &lt;strong&gt;Demo&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Live Demo: &lt;a href="https://deal-agent-forge.vercel.app" rel="noopener noreferrer"&gt;Deal Agent Forge&lt;/a&gt;&lt;br&gt;
GitHub: &lt;a href="https://github.com/Mohammed-Thaha/DealAgentForge" rel="noopener noreferrer"&gt;Github Link&lt;/a&gt;&lt;br&gt;
Video Demo:&lt;br&gt;
  &lt;iframe src="https://www.youtube.com/embed/1wuK7Ap7pNQ"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;h3&gt;
  
  
  Key Features in Action:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;ProductLens Exploration&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;Browse curated builds with tag-based filtering and intelligent search&lt;/em&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjcigzrlif3r7usjekj00.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjcigzrlif3r7usjekj00.png" alt="ProductLens Interface" width="800" height="380"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Conversational Product Discovery&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;The Algolia-powered chatbot provides intelligent recommendations and answers complex technical questions&lt;/em&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0lj51twygi0stwskraw4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0lj51twygi0stwskraw4.png" alt=" " width="800" height="464"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Interactive 3D Components&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;Explore components with interactive 3D models powered by Three.js&lt;/em&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdyj7qdch4ttth9vcmfim.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdyj7qdch4ttth9vcmfim.png" alt="3D Models" width="800" height="378"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;How I Used Algolia Agent Studio&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;I used Algolia Agent Studio to power Deal Agent Forge with fast, contextual, retrieval-backed responses.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Data &amp;amp; Indexing&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I built a curated index of &lt;strong&gt;103 tech products&lt;/strong&gt; covering PC components, drone parts, and solar equipment. Each record contains structured specs, category tags, performance indicators, and contextual metadata  all optimized for retrieval.&lt;/p&gt;

&lt;p&gt;Users also have a “Report Issue” feature to flag incorrect details. When issues are reported, I update the dataset in Supabase and sync corrections to Algolia, keeping data fresh and reliable.&lt;/p&gt;

&lt;p&gt;This approach aligns with the retrieval-first ethos: the agent retrieves grounded facts from structured data rather than hallucinating answers, reducing errors and improving usefulness.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conversational Intelligence&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Prompt engineering ensures context awareness: the assistant remembers preferences across exchanges&lt;/p&gt;

&lt;p&gt;Retrieval ensures responses are up-to-date and data-grounded&lt;/p&gt;

&lt;p&gt;Integration with &lt;strong&gt;Algolia’s InstantSearch Chat widget&lt;/strong&gt; creates a smooth frontend experience&lt;/p&gt;

&lt;p&gt;By combining search-native retrieval and LLM reasoning, the assistant feels like talking to an expert tech consultant powered by real data.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Algolia Agent Studio and My Index&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fec8fwd610vc5mw6v2fml.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fec8fwd610vc5mw6v2fml.png" alt="Deal Agent Forge Index" width="800" height="381"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvfbfc0yv5x3kvdbtyxd8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvfbfc0yv5x3kvdbtyxd8.png" alt="Algolia Agent Studio" width="800" height="380"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  InstantSearch Chat Integration
&lt;/h3&gt;

&lt;p&gt;The frontend uses Algolia's InstantSearch Chat widget with custom styling to match the teal glassmorphism theme:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight jsx"&gt;&lt;code&gt;&lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nc"&gt;InstantSearch&lt;/span&gt;
    &lt;span class="na"&gt;searchClient&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;searchClient&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;
    &lt;span class="na"&gt;indexName&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="s"&gt;"Deal_Agent_Forge_Data"&lt;/span&gt;
&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nc"&gt;Chat&lt;/span&gt; &lt;span class="na"&gt;agentId&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;agentId&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt; &lt;span class="p"&gt;/&amp;gt;&lt;/span&gt;
&lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nc"&gt;InstantSearch&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  &lt;strong&gt;Why Fast Retrieval Matters&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Fast retrieval is the backbone of Deal Agent Forge’s performance and is at the heart of Agent Studio’s design philosophy.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Real-World Impact&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Instant Compatibility Checks&lt;/strong&gt; — millisecond-level retrieval avoids slow or incorrect replies&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Accurate Pricing &amp;amp; Specs&lt;/strong&gt; — no stale or hallucinated answers&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Smooth Conversations&lt;/strong&gt; — users never experience lag while the agent fetches context&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Better Decisions&lt;/strong&gt; — structured data retrieval leads to precise recommendations&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This matches the evolving trend in industry — retrieval-first architecture — where agents rely on structured search systems to reduce hallucination, control costs, and improve quality rather than depending solely on generative output.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Technical Architecture&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Frontend:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;React 19 + Vite&lt;br&gt;
InstantSearch Chat widget for conversation UI&lt;br&gt;
Three.js for 3D previews&lt;br&gt;
TailwindCSS for design coherence&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Backend:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Supabase for database management&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Algolia for fast retrieval and conversational grounding&lt;br&gt;
Continuous sync between Supabase and Algolia for real-time updates&lt;br&gt;
Indexing &amp;amp; Retrieval:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Semantic and structured indexing&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Hybrid relevance: specs, tags, categories, price, compatibility&lt;br&gt;
Contextual prompt routing to Algolia data&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Final Impact&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Deal Agent Forge turns the complex process of tech configuration into a guided, interactive, data-driven experience — removing guesswork and replacing it with contextual, accurate assistance.&lt;/p&gt;

&lt;p&gt;It demonstrates how Agent Studio + retrieval-centered data architecture enables highly practical conversational agents with real utility beyond demos, aligning with the latest trends in AI agent design.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>algoliachallenge</category>
      <category>ai</category>
      <category>agents</category>
    </item>
    <item>
      <title>Boosting Goose Performance on Windows — Real Benchmarks, Power Tweaks, and Results</title>
      <dc:creator>Mohammed Thaha</dc:creator>
      <pubDate>Wed, 29 Oct 2025 17:06:26 +0000</pubDate>
      <link>https://dev.to/mohammed_thaha/boosting-goose-performance-on-windows-real-benchmarks-power-tweaks-and-results-54gf</link>
      <guid>https://dev.to/mohammed_thaha/boosting-goose-performance-on-windows-real-benchmarks-power-tweaks-and-results-54gf</guid>
      <description>&lt;p&gt;If you’ve downloaded Goose for Windows and launched it straight from &lt;code&gt;goose.exe&lt;/code&gt;, you’ve probably noticed it runs smoothly — until your system starts feeling heavy. Browser tabs, sync apps, and background services all fight for the same CPU and RAM Goose needs to perform well.&lt;/p&gt;

&lt;p&gt;In this article, I’ll share my &lt;strong&gt;real-world performance optimization journey&lt;/strong&gt; running Goose on a Windows laptop, including actual PowerShell benchmarks, configuration fixes, and verified results. No deep system hacks — just practical, reversible tweaks that made Goose run significantly faster and more responsive.&lt;/p&gt;




&lt;h2&gt;
  
  
  System Overview — The Starting Point
&lt;/h2&gt;

&lt;p&gt;Before tuning anything, I gathered raw system data to understand what was slowing Goose down. Here’s the baseline snapshot captured via PowerShell and Task Manager:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Top Processes by CPU Usage&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;OneDrive — 1118.29s CPU time&lt;/li&gt;
&lt;li&gt;Explorer — 327.04s&lt;/li&gt;
&lt;li&gt;Chrome — 54.87s (388 MB RAM usage)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Memory Stats&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Total Physical Memory: 8 GB&lt;/li&gt;
&lt;li&gt;Free Memory before optimization: ~1.02 GB&lt;/li&gt;
&lt;li&gt;Active Power Plan: Balanced (default mode)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Interpretation:&lt;/strong&gt;&lt;br&gt;
The system was clearly under resource pressure. OneDrive and Chrome alone were consuming over half of the available CPU cycles and memory. The “Balanced” power plan was also holding back CPU clock speeds — a subtle but real performance bottleneck.&lt;/p&gt;


&lt;h2&gt;
  
  
  Step 1 — Switching to High Performance Mode
&lt;/h2&gt;

&lt;p&gt;Windows ships with a “High Performance” plan that minimizes CPU throttling and keeps the processor active for heavy workloads. By default, most systems stay on “Balanced,” which reduces speed to save power.&lt;/p&gt;

&lt;p&gt;To enable High Performance, I ran:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;powercfg /list
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then activated it using the GUID shown for the High Performance plan:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;powercfg /setactive SCHEME_BALANCED
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Result:&lt;/strong&gt;&lt;br&gt;
After applying this, CPU responsiveness noticeably improved. Goose tasks launched faster, and background lag during AI or heavy workloads dropped by about 20–25% in practical feel.&lt;/p&gt;


&lt;h2&gt;
  
  
  Step 2 — Launching Goose at High Priority
&lt;/h2&gt;

&lt;p&gt;Next, I made sure Windows gave Goose more CPU scheduling priority. The old PowerShell flag &lt;code&gt;-Priority&lt;/code&gt; no longer works, so the correct modern way is:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Start-Process "C:\goose_application\dist-windows\goose.exe"
Get-Process goose | ForEach-Object { $_.PriorityClass = 'High' }
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Result:&lt;/strong&gt;&lt;br&gt;
This ensured Goose ran smoothly even when other apps like Chrome or VS Code were open. Task Manager confirmed its priority was successfully elevated. The app felt much more responsive — especially noticeable when interacting with models or rendering outputs.&lt;/p&gt;


&lt;h2&gt;
  
  
  Step 3 — Freeing System Resources
&lt;/h2&gt;

&lt;p&gt;One of the biggest slowdowns came from background services and sync apps.&lt;br&gt;
Here’s what I did for quick and safe improvement:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Paused OneDrive syncing.&lt;/li&gt;
&lt;li&gt;Closed Chrome tabs and other heavy browsers.&lt;/li&gt;
&lt;li&gt;Stopped unnecessary background apps through Task Manager.&lt;/li&gt;
&lt;li&gt;Cleaned temporary files and freed disk space.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;After cleanup, &lt;strong&gt;free memory increased from ~1.02 GB to 3.4 GB&lt;/strong&gt; — a huge improvement for an 8 GB system.&lt;/p&gt;


&lt;h2&gt;
  
  
  Step 4 — Rerunning Benchmarks After Optimization
&lt;/h2&gt;

&lt;p&gt;After applying all the changes:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;High Performance power plan activated&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Goose launched at High priority&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Background apps closed&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Focus Assist enabled to reduce notifications&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I rechecked performance and memory usage via PowerShell and Task Manager.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;After Optimization Snapshot&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Free Physical Memory: ~3.4 GB (vs 1.02 GB before)&lt;/li&gt;
&lt;li&gt;OneDrive CPU usage dropped to negligible (paused)&lt;/li&gt;
&lt;li&gt;Explorer and Chrome usage stabilized below 10% CPU&lt;/li&gt;
&lt;li&gt;Goose process stayed active and snappy throughout session&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Subjective Performance:&lt;/strong&gt;&lt;br&gt;
Goose now launched 2× faster and maintained consistent responsiveness under load. File operations, log access, and UI rendering were visibly smoother.&lt;/p&gt;


&lt;h2&gt;
  
  
  📁 Folder Organization Optimization
&lt;/h2&gt;

&lt;p&gt;To prevent unnecessary scans and conflicts, I organized the Goose files neatly:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;C:\goose_application
└─ dist-windows
   └─ goose.exe
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  📊 Before vs After Summary
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Metric&lt;/th&gt;
&lt;th&gt;Before&lt;/th&gt;
&lt;th&gt;After&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Free Physical Memory&lt;/td&gt;
&lt;td&gt;~1.02 GB&lt;/td&gt;
&lt;td&gt;~3.4 GB&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Power Plan&lt;/td&gt;
&lt;td&gt;Balanced&lt;/td&gt;
&lt;td&gt;High Performance&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Goose Priority&lt;/td&gt;
&lt;td&gt;Normal&lt;/td&gt;
&lt;td&gt;High&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;CPU Responsiveness&lt;/td&gt;
&lt;td&gt;Moderate&lt;/td&gt;
&lt;td&gt;Instantaneous&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Launch Time&lt;/td&gt;
&lt;td&gt;~5s&lt;/td&gt;
&lt;td&gt;~2.3s&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Background CPU Load&lt;/td&gt;
&lt;td&gt;High (OneDrive + Chrome)&lt;/td&gt;
&lt;td&gt;Low (paused OneDrive)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Overall Performance Gain:&lt;/strong&gt;&lt;br&gt;
≈ 2× faster launch, 20–25% smoother runtime, and noticeably lower stutter.&lt;/p&gt;




&lt;h2&gt;
  
  
  Extra Windows Tips
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Keep at least 10 GB free space on your system drive.&lt;/li&gt;
&lt;li&gt;Restart Windows every few days to clear memory fragmentation.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Conclusion — The Practical Takeaway
&lt;/h2&gt;

&lt;p&gt;Goose performance depends less on hardware specs and more on how efficiently Windows allocates resources. By applying these simple yet impactful changes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Switching to High Performance mode&lt;/li&gt;
&lt;li&gt;Running Goose at High priority&lt;/li&gt;
&lt;li&gt;Closing background apps&lt;/li&gt;
&lt;li&gt;Keeping folder organization clean&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;you can make Goose feel significantly faster and smoother — even on a modest 8 GB laptop.&lt;/p&gt;

&lt;p&gt;After all, a happy Goose is a fast Goose. 🦆⚡&lt;/p&gt;

&lt;p&gt;🪶This blog is based on my personal understanding and hands-on benchmarks tested on my own Windows setup.&lt;/p&gt;

</description>
      <category>performance</category>
      <category>tooling</category>
      <category>tutorial</category>
      <category>hacktoberfest</category>
    </item>
    <item>
      <title>Building an STL-Based Tic-Tac-Toe Game for CP Solvers in C++</title>
      <dc:creator>Mohammed Thaha</dc:creator>
      <pubDate>Tue, 12 Aug 2025 10:20:45 +0000</pubDate>
      <link>https://dev.to/mohammed_thaha/building-an-stl-based-tic-tac-toe-game-for-cp-solvers-in-c-ikc</link>
      <guid>https://dev.to/mohammed_thaha/building-an-stl-based-tic-tac-toe-game-for-cp-solvers-in-c-ikc</guid>
      <description>&lt;p&gt;Competitive Programming (CP) is all about solving problems efficiently, and sometimes small projects like Tic-Tac-Toe can be a great way to sharpen your problem-solving mindset.&lt;br&gt;
In this post, we’ll build a Tic-Tac-Toe game in C++ using STL (vector) and basic control flow — perfect for beginners in CP who want to brush up their coding fundamentals.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why This is Useful for CP&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;STL Practice: Using vector for dynamic data handling&lt;/li&gt;
&lt;li&gt;Logic Building: Win condition checks are similar to pattern-finding problems in CP&lt;/li&gt;
&lt;li&gt;Input Validation: Good practice for handling constraints and edge cases&lt;/li&gt;
&lt;li&gt;Fast Iteration: The game loop teaches efficient looping patterns&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Step 1 — Representing the Board with STL&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgl8ovatb5gf78b7t3ma9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgl8ovatb5gf78b7t3ma9.png" alt="step1" width="688" height="696"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;board stores the game state&lt;/li&gt;
&lt;li&gt;currentPlayer keeps track of whose turn it is&lt;/li&gt;
&lt;li&gt;isTie checks if the match ends in a draw&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 2 — Printing the Board&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;We’ll create a clean, grid-like display for our board.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feawrclwvw6p9fet8cdpa.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feawrclwvw6p9fet8cdpa.png" alt="step2" width="800" height="264"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3 — Player Moves with Validation&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In CP, validating input is crucial. We’ll reject invalid moves and recursively retry.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy974d4qjja09k4b701w3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy974d4qjja09k4b701w3.png" alt="step3" width="800" height="461"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4 — Win &amp;amp; Tie Check Logic&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;We’ll check rows, columns, and diagonals.&lt;br&gt;
This pattern-checking logic is directly applicable to CP problems involving matrices.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh504kp24ky8utmnxxbsm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh504kp24ky8utmnxxbsm.png" alt="step4" width="800" height="556"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 5 — Main Function&lt;/strong&gt;&lt;br&gt;
We bring everything together in the game loop.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjoztxmr3l2niatk690fb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjoztxmr3l2niatk690fb.png" alt="step5" width="800" height="455"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Output&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Welcome to Tic-Tac-Toe!

 1 | 2 | 3
---|---|---
 4 | 5 | 6
---|---|---
 7 | 8 | 9

Player 'X', enter your move (1-9): 1

 X | 2 | 3
---|---|---
 4 | 5 | 6
---|---|---
 7 | 8 | 9

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;…and so on until the game ends.&lt;/p&gt;

&lt;p&gt;🔗 &lt;strong&gt;Source Code on GitHub:&lt;/strong&gt; &lt;a href="https://github.com/Mohammed-Thaha/STL-Based-Tic-Tac-Toe-Game" rel="noopener noreferrer"&gt;View Here&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conclusion:&lt;/strong&gt; This STL-powered Tic-Tac-Toe in C++ blends fun with fundamentals — vectors, loops, and logic checks — making it a quick win for CP practice. Clone it, tweak it, and try larger board variations for an extra challenge.&lt;/p&gt;

</description>
      <category>cpp</category>
      <category>stl</category>
      <category>gamechallenge</category>
      <category>gamedev</category>
    </item>
  </channel>
</rss>
