<?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: Collins Mwanga</title>
    <description>The latest articles on DEV Community by Collins Mwanga (@colmwanga).</description>
    <link>https://dev.to/colmwanga</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.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3922078%2F11584fe2-269b-47fb-8235-5b09cb045108.jpeg</url>
      <title>DEV Community: Collins Mwanga</title>
      <link>https://dev.to/colmwanga</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/colmwanga"/>
    <language>en</language>
    <item>
      <title>BitScope</title>
      <dc:creator>Collins Mwanga</dc:creator>
      <pubDate>Fri, 10 Jul 2026 10:27:56 +0000</pubDate>
      <link>https://dev.to/colmwanga/bitscope-3p8p</link>
      <guid>https://dev.to/colmwanga/bitscope-3p8p</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for &lt;a href="https://dev.to/challenges/weekend-2026-07-09"&gt;Weekend Challenge: Passion Edition&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;I built &lt;strong&gt;BitScope&lt;/strong&gt;, an interactive Bitcoin Core learning lab powered by a user’s own local Bitcoin node.&lt;/p&gt;

&lt;p&gt;BitScope is not a hosted block explorer clone. It is a hands-on learning environment for people studying Bitcoin from the command line upward. The goal is to help learners understand what Bitcoin Core actually sees and returns through RPC: blocks, transactions, wallets, UTXOs, mempool policy, fees, scripts, descriptors, PSBTs, Taproot, peers, regtest mining, and transaction construction.&lt;/p&gt;

&lt;p&gt;Every major workflow is designed to connect four things:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;the human-friendly explanation,&lt;/li&gt;
&lt;li&gt;the equivalent &lt;code&gt;bitcoin-cli&lt;/code&gt; command,&lt;/li&gt;
&lt;li&gt;the underlying JSON-RPC method and parameters,&lt;/li&gt;
&lt;li&gt;and the raw Bitcoin Core response.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The project is especially focused on regtest education, so users can safely mine blocks, fund wallets, build transactions, experiment with scripts, and learn advanced Bitcoin workflows without touching real funds.&lt;/p&gt;

&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;Public project docs and screenshots:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://comwanga.github.io/BitScope/" rel="noopener noreferrer"&gt;https://comwanga.github.io/BitScope/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The public site is documentation-only. The real BitScope app is intentionally local-first because it connects to the user’s own Bitcoin Core RPC node and should never expose wallet RPC credentials to a hosted backend.&lt;/p&gt;

&lt;p&gt;Demo flow highlights:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Start Bitcoin Core in regtest mode.&lt;/li&gt;
&lt;li&gt;Launch the FastAPI backend and Next.js frontend.&lt;/li&gt;
&lt;li&gt;Open the dashboard to inspect node status.&lt;/li&gt;
&lt;li&gt;Use Demo Mode to create a fresh wallet, mine spendable blocks, send a transaction, inspect scripts, and view the exact CLI/RPC commands behind each step.&lt;/li&gt;
&lt;li&gt;Explore blocks, transactions, mempool, fees, wallets, descriptors, PSBTs, multisig, timelocks, peers, keys, and script labs.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Code
&lt;/h2&gt;

&lt;p&gt;GitHub repository:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/comwanga/BitScope" rel="noopener noreferrer"&gt;https://github.com/comwanga/BitScope&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  How I Built It
&lt;/h2&gt;

&lt;p&gt;BitScope is a full-stack local Bitcoin Core lab.&lt;/p&gt;

&lt;p&gt;The backend is built with &lt;strong&gt;Python, FastAPI, Pydantic, and Bitcoin Core JSON-RPC&lt;/strong&gt;. It provides a service layer around Bitcoin Core RPC calls, translates RPC errors into learner-friendly API responses, and keeps RPC credentials strictly server-side.&lt;/p&gt;

&lt;p&gt;The frontend is built with &lt;strong&gt;Next.js, TypeScript, and Tailwind CSS&lt;/strong&gt;. It includes a responsive dark-mode-first interface with learning cards, command explanation panels, raw JSON toggles, and guided workflows.&lt;/p&gt;

&lt;p&gt;The most important architectural decision was to keep BitScope &lt;strong&gt;local-first&lt;/strong&gt;. A hosted app would be easier to demo, but it would teach the wrong security model. Bitcoin Core RPC credentials belong on the user’s machine, not in a public cloud deployment. So the hosted GitHub Pages site is only for screenshots and documentation, while the working app runs locally or through Docker.&lt;/p&gt;

&lt;p&gt;Some notable features include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Node status dashboard using &lt;code&gt;getblockchaininfo&lt;/code&gt;, &lt;code&gt;getnetworkinfo&lt;/code&gt;, and &lt;code&gt;getmempoolinfo&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Block and transaction explorers backed directly by Bitcoin Core.&lt;/li&gt;
&lt;li&gt;Wallet lab for balances, addresses, UTXOs, and transaction history.&lt;/li&gt;
&lt;li&gt;Regtest mining and faucet workflows.&lt;/li&gt;
&lt;li&gt;Demo Mode for fast onboarding with a fresh wallet and guided transaction flow.&lt;/li&gt;
&lt;li&gt;Mempool and fee policy views.&lt;/li&gt;
&lt;li&gt;RPC explorer with read-only guardrails.&lt;/li&gt;
&lt;li&gt;PSBT lab.&lt;/li&gt;
&lt;li&gt;Multisig create/fund/spend workflow.&lt;/li&gt;
&lt;li&gt;Timelock lab for locktime, CLTV, CSV, and sequence.&lt;/li&gt;
&lt;li&gt;Script Lab with conditionals, P2SH/P2WSH, hashlocks, and script testing.&lt;/li&gt;
&lt;li&gt;OP_RETURN data transaction builder.&lt;/li&gt;
&lt;li&gt;Peer dashboard with privacy warnings for Tor/I2P and service flags.&lt;/li&gt;
&lt;li&gt;Educational keys page covering descriptors, xpubs, derivation paths, and hardware-wallet PSBT flow without handling real private keys.&lt;/li&gt;
&lt;li&gt;GitHub Actions CI and GitHub Pages deployment for public docs.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;One of the biggest challenges was handling live Bitcoin Core state during testing. Regtest is powerful, but it is also stateful: coinbase maturity, stale wallets, deleted addresses, insufficient funds, and node resets can all break tests if the lifecycle is not isolated. I added documentation and structure around clean regtest testing, wallet setup, maturity mining, and safer RPC error handling.&lt;/p&gt;

&lt;h2&gt;
  
  
  Prize Categories
&lt;/h2&gt;

&lt;p&gt;I am not submitting this to a sponsor-specific prize category. This is a passion project focused on Bitcoin Core education, local-first tooling, and helping developers understand Bitcoin by working directly with their own node.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>weekendchallenge</category>
    </item>
    <item>
      <title>My Journey Through Mastering Bitcoin</title>
      <dc:creator>Collins Mwanga</dc:creator>
      <pubDate>Sat, 09 May 2026 16:12:34 +0000</pubDate>
      <link>https://dev.to/colmwanga/my-journey-through-mastering-bitcoin-59h3</link>
      <guid>https://dev.to/colmwanga/my-journey-through-mastering-bitcoin-59h3</guid>
      <description>&lt;p&gt;Before starting the Mastering Bitcoin pathway, I thought Bitcoin was mostly about sending money online and watching prices go up and down. I knew the basics, but I didn’t really understand how Bitcoin actually works under the hood. This learning journey completely changed that.&lt;/p&gt;

&lt;p&gt;One of the biggest things I learned is that Bitcoin is not “magic internet money.” It is a carefully designed system built on mathematics, cryptography, networking, and game theory. Every chapter felt like opening a door into a new world. At first, terms like private keys, UTXOs, scripts, mempool, and consensus sounded complicated, but over time they started making sense.&lt;/p&gt;

&lt;p&gt;The most surprising part for me was realizing how simple some Bitcoin ideas are once you break them down. For example, learning about private and public keys helped me understand why Bitcoin ownership is really about controlling cryptographic keys, not “holding coins” in an app. The idea that you can prove ownership mathematically without needing permission from a bank still blows my mind.&lt;/p&gt;

&lt;p&gt;Another thing that surprised me was how decentralized Bitcoin really is. Before this course, I assumed there must be some central authority somewhere controlling things behind the scenes. But learning about nodes, miners, consensus rules, and peer-to-peer networking helped me see how the network operates without a leader. That was a major mindset shift for me.&lt;br&gt;
Not everything was easy though.&lt;/p&gt;

&lt;p&gt;Some concepts challenged me a lot, especially UTXOs and Bitcoin Script. At first, I struggled to understand why Bitcoin transactions work the way they do. I kept comparing Bitcoin to traditional banking systems, which only made things more confusing. Once I stopped thinking in terms of “account balances” and started thinking in terms of “spending outputs,” things finally clicked.&lt;/p&gt;

&lt;p&gt;Bitcoin Script was another difficult area. Reading scripts felt like learning a tiny programming language. I had to go through examples multiple times before understanding how transaction conditions are verified. What helped me most was slowing down, drawing diagrams, reading examples carefully, and experimenting with small code snippets. Eventually, I started appreciating how powerful and secure the scripting system is despite being intentionally limited.&lt;/p&gt;

&lt;p&gt;This journey also changed how I think about money, trust, and technology. I now see Bitcoin as much more than a currency. It is a system designed to remove the need for blind trust. Instead of trusting institutions, users can verify things themselves. That idea feels very powerful, especially in a world where financial systems are often centralized and opaque.&lt;/p&gt;

&lt;p&gt;I also started seeing Bitcoin as a technology platform, not just an asset. Learning about wallets, transactions, multisig, Lightning, and security opened my eyes to the possibilities developers can build on top of Bitcoin. It made me more interested in the technical side of the ecosystem.&lt;/p&gt;

&lt;p&gt;As someone who enjoys building things, this pathway inspired me to explore Bitcoin development more seriously. I’ve become interested in backend systems, Bitcoin infrastructure, and privacy-focused tools. I’m especially curious about how Bitcoin can be integrated into decentralized applications and secure communication systems.&lt;/p&gt;

&lt;p&gt;Going forward, I want to continue experimenting with Bitcoin-related projects and improving my understanding of the protocol. I also want to contribute to open-source tools and help make Bitcoin education more accessible, especially for beginners who may feel intimidated by technical topics.&lt;/p&gt;

&lt;p&gt;Overall, this learning journey has been both challenging and exciting. There were moments where concepts felt overwhelming, but working through them step by step made the experience rewarding. More importantly, it gave me confidence that complex systems can be understood with patience and curiosity.&lt;/p&gt;

&lt;p&gt;Bitcoin is no longer just something I “know about.” It’s now something I understand much more deeply, and that has changed the way I think about technology, freedom, and the future of finance.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>bitcoin</category>
      <category>blockchain</category>
      <category>learning</category>
    </item>
  </channel>
</rss>
