<?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: Favour Chisom I.</title>
    <description>The latest articles on DEV Community by Favour Chisom I. (@fachiny17).</description>
    <link>https://dev.to/fachiny17</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%2F3900799%2F71c8b49f-ad18-4ac1-b7f8-9ab39d900e0c.png</url>
      <title>DEV Community: Favour Chisom I.</title>
      <link>https://dev.to/fachiny17</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/fachiny17"/>
    <language>en</language>
    <item>
      <title>My Brain on Databases vs. Solana: A Beginner’s Reality Check</title>
      <dc:creator>Favour Chisom I.</dc:creator>
      <pubDate>Thu, 30 Apr 2026 23:38:52 +0000</pubDate>
      <link>https://dev.to/fachiny17/my-brain-on-databases-vs-solana-a-beginners-reality-check-32dp</link>
      <guid>https://dev.to/fachiny17/my-brain-on-databases-vs-solana-a-beginners-reality-check-32dp</guid>
      <description>&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%2Fcfascapevu43uahzdaof.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%2Fcfascapevu43uahzdaof.png" alt=" " width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Day 11&lt;/strong&gt; of &lt;code&gt;#100DaysOfSolana&lt;/code&gt; flipped my database instincts upside down. I spent years thinking in tables, rows, and SQL queries but Solana’s account model is a completely different beast. Every single piece of state, whether a user’s wallet or executable program code, lives as a publicly readable account on a global ledger. There are no joins, no server-side filtering, and no admin overrides. Access control is baked into the runtime: only the owning program can modify an account’s data, and only with the right signatures. Storage isn’t a monthly cloud bill; it’s an upfront, refundable deposit in lamports per byte. The biggest shock? Transparency is the default, anyone can read your account data, no login required. This exercise built a mental bridge I know I’ll cross again and again as I dive deeper into Solana development.&lt;/p&gt;

</description>
      <category>100daysofsolana</category>
    </item>
    <item>
      <title>On Solana, Your Wallet Is Your Identity: What I Learned in My First Week (from a Complete Beginner)</title>
      <dc:creator>Favour Chisom I.</dc:creator>
      <pubDate>Mon, 27 Apr 2026 18:34:36 +0000</pubDate>
      <link>https://dev.to/fachiny17/on-solana-your-wallet-is-your-identity-what-i-learned-in-my-first-week-from-a-complete-beginner-3ah</link>
      <guid>https://dev.to/fachiny17/on-solana-your-wallet-is-your-identity-what-i-learned-in-my-first-week-from-a-complete-beginner-3ah</guid>
      <description>&lt;p&gt;I have spent the last week diving into Solana development, and I want to share what each day felt like as a complete beginner. Because honestly, nothing clicked until I did it myself.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Day 1: My First Keypair&lt;/strong&gt;
&lt;/h2&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%2F0be03yumlx4fvt4kyxi6.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%2F0be03yumlx4fvt4kyxi6.png" alt=" " width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I created a new project folder and installed &lt;code&gt;@solana/kit&lt;/code&gt;. Then I wrote a tiny script that called &lt;code&gt;generateKeyPairSigner()&lt;/code&gt; and printed the wallet address. When I ran it, a long string of letters and numbers appeared. That string, I learned, was my public key like an account number I could safely share. The private key stayed hidden inside the &lt;code&gt;wallet&lt;/code&gt; object, never printed. It felt strange not seeing it. I copied the address, opened &lt;a href="https://faucet.solana.com/" rel="noopener noreferrer"&gt;faucet.solana.com&lt;/a&gt;, selected Devnet, and requested an airdrop. I actually encountered an error because I didn't connect &lt;a href="https://github.com/fachiny17" rel="noopener noreferrer"&gt;my github account&lt;/a&gt; to it. A few seconds after connecting my github, free test SOL landed at my address. I updated the script to check the balance and saw &lt;code&gt;2.5 SOL&lt;/code&gt; in the terminal. I also realized that running the script again gave me a completely new wallet each time. It was like printing a new bank account slip and throwing it away. &lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Day 2: Making the Wallet Stick&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;The goal was to create a wallet, save it to a file, and load it later. I wrote a function that first tried to read a &lt;code&gt;wallet.json&lt;/code&gt; file. If the file existed, it would reconstruct the keypair from its bytes. If not, it would generate a new one, save it, and carry on. My first attempt failed with an error: &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"key is not extractable."&lt;br&gt;
 The &lt;code&gt;generateKeyPairSigner()&lt;/code&gt; function creates keys that can't be exported for security. That stumped me. After digging, I switched to using &lt;code&gt;createKeyPairSignerFromPrivateKeyBytes()&lt;/code&gt; and generated my own 32 random bytes using Node's &lt;code&gt;crypto.randomBytes(32)&lt;/code&gt;. I saved those bytes (just the private key) into a JSON file as an array of numbers. When I ran the script again, it loaded the same address and showed the balance I’d funded earlier. For the first time, I had a wallet I could reuse. &lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Day 3: SOL and Lamports, the Smallest Unit&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;I installed the Solana CLI and generated a fresh keypair (&lt;code&gt;solana-keygen new&lt;/code&gt;). Then I used &lt;code&gt;solana balance --url devnet&lt;/code&gt; to see my balance in SOL, and &lt;code&gt;--lamports&lt;/code&gt; to see it in lamports. The conversion: 1 SOL = 1,000,000,000 lamports. Integers only, no decimals. This explained why earlier my script showed 2000000000 when I expected 2. It’s like working with cents in payment APIs. I also checked a transaction fee 5000 lamports, or 0.000005 SOL by inspecting the transaction history. I finally understood why blockchain code never uses float numbers. Everything is exact.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Day 4: Connecting a Real Browser Wallet&lt;/strong&gt;
&lt;/h2&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%2F660iwbe7b19kd64ove7o.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%2F660iwbe7b19kd64ove7o.png" alt=" " width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This was the big leap: building a web app that talks to a browser extension. I created a Vite project, installed &lt;code&gt;@solana/kit&lt;/code&gt; and &lt;code&gt;@wallet-standard/app&lt;/code&gt;. The JavaScript detected installed wallets (like Phantom) using getWallets(), filtered for Solana chains, and showed buttons for each. Clicking one triggered connect(), which opened a popup asking permission. Once I approved, the page displayed my address and devnet balance fetched via RPC. I didn’t touch a private key at all the wallet handled it. Seeing it work in the browser felt like building something real. The Wallet Standard meant my app would work with any compliant wallet, not just Phantom. That’s elegant.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Day 5: Comparing Wallet Types&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;I stepped back to compare the three wallets I now had: the CLI wallet (plaintext JSON file), the browser extension (password-encrypted, with seed phrase), and a mobile wallet I installed fresh. Each generated a keypair, but the experience differed. The CLI was lightning-fast for scripting. The browser wallet added a confirmation layer every signature required a popup. The mobile wallet used biometrics and felt the most secure day-to-day. I sent 0.01 SOL from my phone to my CLI address and verified it arrived. All of them held the same kind of keypair, but security and convenience varied wildly. That’s when it hit me: identity on Solana is a private key, and wallets are just different containers for it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What It All Means&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;After five days, the concept clicked. On Solana, you don’t have a username or email; you have a keypair. Your address is your public key, and you prove ownership by signing with your private key. No company can revoke that, reset a password, or lock you out. It’s like SSH keys for the entire internet. That’s both empowering and terrifying because if you lose the key, nobody can help you. But it also means you truly own your identity, assets, and interactions across every app on the network. That shift in mindset is the biggest lesson I’ve taken away.&lt;/p&gt;

&lt;p&gt;I’m still getting used to double-checking backups, but I can’t unsee it now: my wallet is my identity on Solana. And that’s a good thing.&lt;/p&gt;

</description>
      <category>100daysofsolana</category>
      <category>solana</category>
      <category>web3</category>
      <category>blockchain</category>
    </item>
  </channel>
</rss>
