<?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: Bert Cafecito</title>
    <description>The latest articles on DEV Community by Bert Cafecito (@bertcafecito).</description>
    <link>https://dev.to/bertcafecito</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%2F2477248%2Fc91661ab-a8e8-4ba4-97bf-528977964847.png</url>
      <title>DEV Community: Bert Cafecito</title>
      <link>https://dev.to/bertcafecito</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/bertcafecito"/>
    <language>en</language>
    <item>
      <title>🚀 From Idea to GitHub in 2 Days: Introducing InkCollector</title>
      <dc:creator>Bert Cafecito</dc:creator>
      <pubDate>Tue, 03 Jun 2025 19:30:00 +0000</pubDate>
      <link>https://dev.to/bertcafecito/from-idea-to-github-in-2-days-introducing-inkcollector-2pb4</link>
      <guid>https://dev.to/bertcafecito/from-idea-to-github-in-2-days-introducing-inkcollector-2pb4</guid>
      <description>&lt;p&gt;This weekend, I gave myself a wild little challenge: build a Python package in just two days.&lt;/p&gt;

&lt;p&gt;It’s called InkCollector—a CLI tool that collects data about the Disney Lorcana TCG. I didn’t start with a grand vision—just a curious itch to make something useful and fun. And surprisingly… I pulled it off. 🎉&lt;/p&gt;

&lt;h2&gt;
  
  
  🧗‍♂️ What Didn’t Go So Well
&lt;/h2&gt;

&lt;p&gt;At first, I did what I always do: tried to finish full features before committing. I had a bunch of tabs open, code half-done, test cases in my head, and docs that weren’t updated. Then I got distracted. Twice. Maybe more than twice.&lt;/p&gt;

&lt;p&gt;Boom. Lost progress. No commits. Just vibes and regret.&lt;/p&gt;

&lt;h2&gt;
  
  
  ✅ What Did Work
&lt;/h2&gt;

&lt;p&gt;So I made a pivot. Instead of doing a lot, I started doing a little—and doing it often:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;One commit to tweak a function&lt;/li&gt;
&lt;li&gt;One commit to update the README&lt;/li&gt;
&lt;li&gt;One commit just to clean formatting&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Tiny steps. Each one moved me forward, and I felt way less overwhelmed. Debugging got easier. The project felt lighter—like it was breathing with me instead of fighting me.&lt;/p&gt;

&lt;p&gt;Also, I went old school and used pen and paper to make lists. ✍️&lt;/p&gt;

&lt;h2&gt;
  
  
  🤖 I Used AI—And I’m Glad I Did
&lt;/h2&gt;

&lt;p&gt;Yup, I used AI while building this. It helped with boilerplate, untangled a few weird moments in the code, and honestly made the whole process way more fun.&lt;/p&gt;

&lt;p&gt;Even this journal entry? Drafted with AI. I’m not above it—I’m into it.&lt;/p&gt;

&lt;h2&gt;
  
  
  💡 What I Learned
&lt;/h2&gt;

&lt;p&gt;InkCollector isn’t perfect, but it’s alive. I shipped it, documented it, tested it, and even gave it a little polish. It’s on GitHub now, ready for feedback and improvement.&lt;/p&gt;

&lt;p&gt;Here’s the link if Future Me wants to look back (or if someone else wants to tinker with it):&lt;br&gt;
🔗 &lt;a href="https://github.com/bertcafecito/inkcollector" rel="noopener noreferrer"&gt;https://github.com/bertcafecito/inkcollector&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Signing off for now. The package is live. I feel accomplished.&lt;/p&gt;

&lt;p&gt;– Bert 🧙‍♂️💻&lt;/p&gt;

</description>
      <category>abotwrotethis</category>
      <category>opensource</category>
      <category>devjournal</category>
      <category>python</category>
    </item>
    <item>
      <title>Submission for the DevCycle Feature Flag Challenge: Feature Trivia Game</title>
      <dc:creator>Bert Cafecito</dc:creator>
      <pubDate>Sun, 08 Dec 2024 04:01:36 +0000</pubDate>
      <link>https://dev.to/bertcafecito/submission-for-the-devcycle-feature-flag-challenge-feature-trivia-game-3ja4</link>
      <guid>https://dev.to/bertcafecito/submission-for-the-devcycle-feature-flag-challenge-feature-trivia-game-3ja4</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/devcycle"&gt;DevCycle Feature Flag Challenge&lt;/a&gt;: Feature Trivia Game&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;The app that I built for this challenge is a Trivia Game that allows users to answer multiple-choice trivia questions. The app features a frontend using HTML, CSS, and JavaScript. The frontend provides an interactive interface for users to engage with the trivia questions.&lt;/p&gt;

&lt;h3&gt;
  
  
  Features
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Time-Based Mechanics&lt;/strong&gt;: Control the availability of timers, speed bonuses, and time-based challenges.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Scoring System&lt;/strong&gt;: Configure scoring logic for the trivia app, including streak bonuses and difficulty-based points.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Power-Ups&lt;/strong&gt;: Allow players to use tools like 50/50, hints, or skip functionality.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Progression System&lt;/strong&gt;: Manage levels, XP, achievements, and content unlocks.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Accessibility&lt;/strong&gt;: Manage user accessibility options.&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;You can view the live demo of the app &lt;a href="https://bert-cafecito.github.io/devcycle-feature-flag-challenge/" rel="noopener noreferrer"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Question Screen
&lt;/h3&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%2Fc6p0cl0qlbsyylubwqmq.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%2Fc6p0cl0qlbsyylubwqmq.png" alt="Trivia Question" width="800" height="327"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Mechanics Screen
&lt;/h3&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%2Fmk5cye2vf97ybq7krvn8.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%2Fmk5cye2vf97ybq7krvn8.png" alt="Game Mechanics" width="800" height="290"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Accessibility Screen
&lt;/h3&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%2Fgrh8fkhr8000ohkq2v3t.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%2Fgrh8fkhr8000ohkq2v3t.png" alt="Game Accessibility" width="800" height="189"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Accessibility Feature
&lt;/h3&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%2F6oqrwsqkytn435lg1v2l.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%2F6oqrwsqkytn435lg1v2l.png" alt="Accessibility Feature" width="800" height="344"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Power-Ups Feature
&lt;/h3&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%2F6vq3xc73g93rjevxj9f3.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%2F6vq3xc73g93rjevxj9f3.png" alt="Power-Ups Feature" width="800" height="473"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Progression System Feature
&lt;/h3&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%2F9nx9bwjp7p2zzx8kgt4u.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%2F9nx9bwjp7p2zzx8kgt4u.png" alt="Progression System Feature" width="" height=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Scoring System Feature
&lt;/h3&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%2Fotpu10ifw6h4gwlkdqww.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%2Fotpu10ifw6h4gwlkdqww.png" alt="Scoring System Feature" width="800" height="475"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Time-Based Mechanics Feature
&lt;/h3&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%2Fwi0kbk7urjyugp59m6ny.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%2Fwi0kbk7urjyugp59m6ny.png" alt="Time-Based Mechanics Feature" width="800" height="436"&gt;&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;You can view the code repository &lt;a href="https://github.com/bert-cafecito/devcycle-feature-flag-challenge" rel="noopener noreferrer"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;This project is licensed under the MIT License. See the &lt;a href="https://github.com/bert-cafecito/devcycle-feature-flag-challenge/blob/main/LICENSE" rel="noopener noreferrer"&gt;LICENSE&lt;/a&gt; file for details.&lt;/p&gt;

&lt;h2&gt;
  
  
  My DevCycle Experience
&lt;/h2&gt;

&lt;p&gt;Integrating DevCycle into my application proved to be an insightful and valuable experience. Initially, understanding how to effectively leverage feature flags presented a challenge. Feature flags enable the activation or deactivation of specific features without requiring a code deployment—a powerful capability that necessitates a solid understanding of the system to fully utilize.&lt;/p&gt;

&lt;p&gt;A key challenge was learning how to properly configure and manage features within the DevCycle platform. After several attempts, I developed a deeper understanding of how to create and control features. This process involved setting up feature variations to deliver a more dynamic and tailored user experience.&lt;/p&gt;

&lt;p&gt;Additionally, I encountered the challenge of utilizing user targeting to personalize the user experience. I believe that leveraging user targeting could have significantly enhanced the interactivity and engagement of the trivia experience.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Feature Flag Evaluation:&lt;/strong&gt; By implementing targeting rules based on custom properties, I could have presented different feature variables based on the user’s progress in the trivia game.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Dynamic Adjustments:&lt;/strong&gt; Using feature flag values, I could have adjusted trivia question difficulty and time limits to create a personalized experience for each user. This would have made the app more engaging and challenging for users of varying skill levels.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;User Accessibility Options:&lt;/strong&gt; A great idea I had at the last minute, but didn't implement, was managing user accessibility options via a feature flag. This would have allowed me to dynamically adjust accessibility features, such as font size, color contrast, or other visual adjustments, based on user preferences. This could greatly enhance the user experience for individuals with specific needs or preferences.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;As a software engineer primarily focused on backend (server-side) development, I found that DevCycle is more tailored to frontend applications. However, I aimed to create the best static website possible that would leverage the advantages of DevCycle.&lt;/p&gt;

&lt;h2&gt;
  
  
  Suggestions for Improving DevCycle
&lt;/h2&gt;

&lt;p&gt;Based on my experience, here are a few suggestions for improving DevCycle:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Enhanced Documentation:&lt;/strong&gt; Providing more detailed documentation and examples for setting up and managing feature flags would help new users get up to speed more quickly.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;SDK Key Permissions:&lt;/strong&gt; I would appreciate a section that explains how to configure client SDK key permissions. In reviewing the documentation, I found limited information on the permissions granted to SDK keys. For enterprise-level implementations, especially for CISOs, having clear details on SDK key permissions is essential.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Discord Community:&lt;/strong&gt; The DevCycle Discord community felt somewhat lackluster and could benefit from more engagement and resources. A more active and resourceful Discord channel would help users feel more connected and supported. If you’d like to reach out, feel free to connect with me through your Discord server..&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;By addressing these areas, DevCycle can further enhance its platform and provide an even better experience for its users&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>devcyclechallenge</category>
      <category>webdev</category>
      <category>devops</category>
    </item>
    <item>
      <title>This seems fun to do...just brainstorming some ideas.</title>
      <dc:creator>Bert Cafecito</dc:creator>
      <pubDate>Fri, 29 Nov 2024 00:32:06 +0000</pubDate>
      <link>https://dev.to/bertcafecito/this-seems-fun-to-dojust-brainstorming-some-ideas-5742</link>
      <guid>https://dev.to/bertcafecito/this-seems-fun-to-dojust-brainstorming-some-ideas-5742</guid>
      <description>&lt;div class="ltag__link"&gt;
  &lt;a href="/devteam" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__org__pic"&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%2Forganization%2Fprofile_image%2F1%2Fd908a186-5651-4a5a-9f76-15200bc6801f.jpg" alt="The DEV Team" width="800" height="800"&gt;
      &lt;div class="ltag__link__user__pic"&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%2Fuser%2Fprofile_image%2F3%2F13d3b32a-d381-4549-b95e-ec665768ce8f.png" alt="" width="500" height="500"&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="https://dev.to/devteam/join-us-for-the-devcycle-feature-flag-challenge-1000-in-prizes-1h23" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Join us for the DevCycle Feature Flag Challenge: $1,000 in Prizes!&lt;/h2&gt;
      &lt;h3&gt;dev.to staff for The DEV Team ・ Nov 27 '24&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#devchallenge&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#devcyclechallenge&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#webdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#devops&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


</description>
    </item>
  </channel>
</rss>
