<?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>Design Community: Anuj Bolewar</title>
    <description>The latest articles on Design Community by Anuj Bolewar (@bolewara).</description>
    <link>https://design.forem.com/bolewara</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%2F3452859%2Fdd3b12bb-e75a-4159-8fdb-2fc7e9e4b865.png</url>
      <title>Design Community: Anuj Bolewar</title>
      <link>https://design.forem.com/bolewara</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://design.forem.com/feed/bolewara"/>
    <language>en</language>
    <item>
      <title>Building a 75,000-Product Image Feature Dataset for the Amazon ML Challenge 2025</title>
      <dc:creator>Anuj Bolewar</dc:creator>
      <pubDate>Fri, 17 Oct 2025 08:07:38 +0000</pubDate>
      <link>https://design.forem.com/bolewara/building-a-75000-product-image-feature-dataset-for-the-amazon-ml-challenge-2025-5hgn</link>
      <guid>https://design.forem.com/bolewara/building-a-75000-product-image-feature-dataset-for-the-amazon-ml-challenge-2025-5hgn</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%2F6ytivukpwlilhut1ki6i.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%2F6ytivukpwlilhut1ki6i.png" alt="dataset_ML-hakathon-Amazon" width="800" height="800"&gt;&lt;/a&gt;&lt;br&gt;
Hey everyone! Hope you’re all doing great today.&lt;br&gt;&lt;br&gt;
So I’ve got something pretty exciting to share with you all — I just created a &lt;strong&gt;massive image features dataset&lt;/strong&gt; for the &lt;strong&gt;Amazon ML Challenge 2025!&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;Processing &lt;strong&gt;75,000 product images&lt;/strong&gt; and extracting deep learning features was absolutely wild. I never thought I’d be building ML-ready datasets at this scale — but here we are!&lt;/p&gt;




&lt;h2&gt;
  
  
  How It All Started
&lt;/h2&gt;

&lt;p&gt;While reading through the &lt;strong&gt;Amazon ML Challenge&lt;/strong&gt; problem statement about predicting product prices, I noticed something interesting.&lt;/p&gt;

&lt;p&gt;The challenge provides &lt;strong&gt;product images&lt;/strong&gt;, but most participants would probably struggle with &lt;strong&gt;efficient image processing&lt;/strong&gt;.&lt;br&gt;&lt;br&gt;
That’s when it hit me —  &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Wait, I could create a ready-to-use feature dataset that makes everyone’s life easier!”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Why make everyone extract image features from scratch when it can be done once and shared with the whole community?&lt;/p&gt;




&lt;h2&gt;
  
  
  The Challenge That Sparked This Idea
&lt;/h2&gt;

&lt;p&gt;The competition focuses on predicting product prices using &lt;strong&gt;both text and images&lt;/strong&gt;.&lt;br&gt;&lt;br&gt;
The connection between visuals and pricing is fascinating — a clean, professional product photo often correlates with higher perceived value.&lt;/p&gt;

&lt;p&gt;But there’s a catch — working with raw images is:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; Time-consuming
&lt;/li&gt;
&lt;li&gt; GPU-intensive
&lt;/li&gt;
&lt;li&gt; Technically complex for beginners
&lt;/li&gt;
&lt;li&gt; Repetitive work everyone must do
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;So I thought —  &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“What if I create a dataset that eliminates all these pain points?”&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  The Creative Process Was Actually Fun
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Coming Up With The Architecture
&lt;/h3&gt;

&lt;p&gt;I’ve always loved &lt;strong&gt;transfer learning&lt;/strong&gt;, so I chose &lt;strong&gt;ResNet50&lt;/strong&gt;, pretrained on ImageNet, to extract image embeddings.&lt;/p&gt;

&lt;p&gt;The pipeline:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Extract &lt;strong&gt;2048-dimensional features&lt;/strong&gt; using ResNet50
&lt;/li&gt;
&lt;li&gt;Apply &lt;strong&gt;PCA compression&lt;/strong&gt; to reduce them to &lt;strong&gt;100 dimensions&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Save it all in a &lt;strong&gt;clean, ML-ready CSV file&lt;/strong&gt;
&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  The Technical Challenge
&lt;/h2&gt;

&lt;p&gt;Processing 75,000 product images isn’t just “run a script and chill”.&lt;br&gt;&lt;br&gt;
I had to make sure the extracted features were:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Meaningful:&lt;/strong&gt; capturing rich visual details
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Efficiently processed:&lt;/strong&gt; I hit &lt;strong&gt;502 images/sec&lt;/strong&gt; on GPU
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Handled missing data:&lt;/strong&gt; about 2% of products had missing images
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Easy to use:&lt;/strong&gt; simple CSV ready for pandas or sklearn&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I also worked on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Optimizing the batch pipeline
&lt;/li&gt;
&lt;li&gt;Fine-tuning PCA (retaining &lt;strong&gt;83% variance&lt;/strong&gt;)
&lt;/li&gt;
&lt;li&gt;Normalizing features
&lt;/li&gt;
&lt;li&gt;Writing documentation and examples&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  What I Learned About Feature Engineering
&lt;/h2&gt;

&lt;p&gt;Before this project, I understood deep learning theory — but &lt;strong&gt;building a real-world feature pipeline&lt;/strong&gt; taught me so much more.&lt;/p&gt;

&lt;p&gt;We’re talking about compressing thousands of pixels into just &lt;strong&gt;100 numerical features&lt;/strong&gt; — yet those vectors can:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Identify similar products
&lt;/li&gt;
&lt;li&gt;Enable price prediction
&lt;/li&gt;
&lt;li&gt;Drive recommendation engines
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That’s the power of &lt;strong&gt;representation learning&lt;/strong&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Technical Breakdown
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Image Processing Pipeline
&lt;/h3&gt;

&lt;p&gt;&lt;code&gt;ResNet50 → 2048 features → PCA → 100 features&lt;/code&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Quality Checks
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;98% image coverage (&lt;strong&gt;73,485 / 75,000&lt;/strong&gt;)
&lt;/li&gt;
&lt;li&gt;Feature distributions validated
&lt;/li&gt;
&lt;li&gt;Visual similarity tested
&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Optimization
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;GPU accelerated → &lt;strong&gt;502 images/sec&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Parallel processing
&lt;/li&gt;
&lt;li&gt;Memory-efficient pipeline
&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Documentation
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Detailed README
&lt;/li&gt;
&lt;li&gt;Example notebooks
&lt;/li&gt;
&lt;li&gt;Ready-to-run scripts
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  The Challenges I Faced
&lt;/h2&gt;

&lt;p&gt;The hardest decision? &lt;strong&gt;Choosing PCA dimensions.&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
After several experiments:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;100 dimensions retained &lt;strong&gt;83% variance&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Balanced accuracy + efficiency
&lt;/li&gt;
&lt;li&gt;Great for visualization and clustering
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Handling missing images was another challenge — I used &lt;strong&gt;zero vectors&lt;/strong&gt; with a &lt;strong&gt;missing flag&lt;/strong&gt; to maintain data consistency.&lt;/p&gt;




&lt;h2&gt;
  
  
  💭 What This Experience Taught Me
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Data Infrastructure Matters&lt;/strong&gt; — great models need great data.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Usability Is Everything&lt;/strong&gt; — make it easy for others to use.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Optimization Pays Off&lt;/strong&gt; — from 50 → 502 images/sec!
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Community Value&lt;/strong&gt; — sharing saves others’ time and energy.&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  The Numbers That Made Me Proud
&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;Value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Total Products&lt;/td&gt;
&lt;td&gt;75,000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Valid Images&lt;/td&gt;
&lt;td&gt;73,485 (98%)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Speed&lt;/td&gt;
&lt;td&gt;502 images/sec&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Compression&lt;/td&gt;
&lt;td&gt;2048 → 100 dims&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Variance Retained&lt;/td&gt;
&lt;td&gt;83%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;File Size&lt;/td&gt;
&lt;td&gt;79 MB&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  Use Cases I’m Excited About
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt; &lt;strong&gt;Visual Product Search&lt;/strong&gt; – find similar-looking items
&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Clustering&lt;/strong&gt; – group visually related products
&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Price Prediction&lt;/strong&gt; – combine with text features
&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Recommendations&lt;/strong&gt; – suggest look-alike products
&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Research&lt;/strong&gt; – benchmark multimodal ML pipelines
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Future Plans
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Extract features from other layers
&lt;/li&gt;
&lt;li&gt;Try &lt;strong&gt;EfficientNet&lt;/strong&gt; or &lt;strong&gt;Vision Transformers (ViT)&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Create &lt;strong&gt;multimodal datasets (image + text)&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Build a &lt;strong&gt;real-time API&lt;/strong&gt; for on-the-fly feature extraction
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  My Honest Take on Feature Engineering
&lt;/h2&gt;

&lt;p&gt;Sure, raw images are great for end-to-end learning,&lt;br&gt;&lt;br&gt;
but &lt;strong&gt;pre-extracted features democratize access&lt;/strong&gt; — no GPU required, and instant modeling possible.&lt;/p&gt;

&lt;p&gt;It’s about practicality — get to the &lt;strong&gt;ML part faster&lt;/strong&gt; &lt;/p&gt;




&lt;h2&gt;
  
  
  Check Out the Dataset
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Dataset:&lt;/strong&gt; &lt;a href="https://www.kaggle.com/datasets/anujbolewar/product-image-features" rel="noopener noreferrer"&gt;Kaggle – Product Image Features&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Includes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; Feature extraction code
&lt;/li&gt;
&lt;li&gt; Usage tutorials
&lt;/li&gt;
&lt;li&gt; Analysis scripts
&lt;/li&gt;
&lt;li&gt; Documentation for quick start
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Perfect for the &lt;strong&gt;Amazon ML Challenge&lt;/strong&gt; or &lt;strong&gt;any e-commerce ML project.&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;Creating this dataset was both &lt;strong&gt;challenging and deeply rewarding&lt;/strong&gt;.&lt;br&gt;&lt;br&gt;
It taught me how to think about scalability, optimization, and sharing ML resources with the community.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;There’s something magical about seeing those progress bars fly at 502 images/sec —&lt;br&gt;&lt;br&gt;
knowing your work might save others &lt;em&gt;days&lt;/em&gt; of processing time.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  Technical Specifications
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Parameter&lt;/th&gt;
&lt;th&gt;Value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Model&lt;/td&gt;
&lt;td&gt;ResNet50 (ImageNet pretrained)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Original Features&lt;/td&gt;
&lt;td&gt;2048&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Compressed Features&lt;/td&gt;
&lt;td&gt;100 via PCA&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Variance Retained&lt;/td&gt;
&lt;td&gt;83%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Processing Speed&lt;/td&gt;
&lt;td&gt;502 images/sec (GPU)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;File Format&lt;/td&gt;
&lt;td&gt;CSV (pandas-ready)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  💬 What Do You Think?
&lt;/h2&gt;

&lt;p&gt;What’s your take on &lt;strong&gt;feature engineering for ML competitions&lt;/strong&gt;?&lt;br&gt;&lt;br&gt;
Have you ever built your own dataset like this?&lt;/p&gt;

&lt;p&gt;Share your thoughts below — let’s talk data, optimization, and creativity!&lt;/p&gt;

&lt;p&gt;Until next time —&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Keep Building. Keep Learning.&lt;/strong&gt; &lt;/p&gt;

</description>
      <category>machinelearning</category>
      <category>deeplearning</category>
      <category>dataengineering</category>
      <category>pca</category>
    </item>
    <item>
      <title>My First NFT Creation Journey - From Zero to Digital Artist!</title>
      <dc:creator>Anuj Bolewar</dc:creator>
      <pubDate>Thu, 25 Sep 2025 03:44:07 +0000</pubDate>
      <link>https://design.forem.com/bolewara/my-first-nft-creation-journey-from-zero-to-digital-artist-395i</link>
      <guid>https://design.forem.com/bolewara/my-first-nft-creation-journey-from-zero-to-digital-artist-395i</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%2F39wrkurrnxks73d6bf2x.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%2F39wrkurrnxks73d6bf2x.jpg" alt=" " width="512" height="468"&gt;&lt;/a&gt;Hey everyone! Hope you're all doing great today.&lt;/p&gt;

&lt;p&gt;So I've got something pretty exciting to share with you all - I just created my very first NFT! And let me tell you, this whole experience has been absolutely wild. I never thought I'd be diving into the world of digital art and blockchain, but here we are!&lt;/p&gt;

&lt;h2&gt;
  
  
  How It All Started
&lt;/h2&gt;

&lt;p&gt;Picture this: I'm just casually browsing through social media (you know how it is), when suddenly this amazing artwork catches my eye. It was this super cool leopard character wearing headphones and a hoodie, sitting at a computer with all these glowing blue tech elements around it. Something about it just screamed "modern digital world" to me.&lt;/p&gt;

&lt;p&gt;That's when it hit me - "Wait, I could totally create something like this!" I mean, why not give it a shot, right?&lt;/p&gt;

&lt;h2&gt;
  
  
  The Creative Process Was Actually Fun
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Coming Up With The Concept&lt;/strong&gt;&lt;br&gt;
First things first, I had to decide what my NFT would be about. I've always been fascinated by the contrast between nature and technology. Like, how crazy is it that we live in a world where animals and digital tech can coexist in art?&lt;/p&gt;

&lt;p&gt;So I went with this idea of a snow leopard - these beautiful, mysterious creatures - but placed in a completely digital environment. Kind of like asking "What if animals were part of our tech world?"&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Design Challenge&lt;/strong&gt;&lt;br&gt;
Now here's where things got interesting. I wanted to create something that looked professional but still had that personal touch. The leopard needed to feel alive, not just like some random cartoon.&lt;/p&gt;

&lt;p&gt;I spent hours working on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Getting those piercing blue eyes just right&lt;/li&gt;
&lt;li&gt;Making sure the headphones looked realistic &lt;/li&gt;
&lt;li&gt;Creating that glowing keyboard effect&lt;/li&gt;
&lt;li&gt;Adding all those floating UI elements in the background&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  What I Learned About NFTs
&lt;/h2&gt;

&lt;p&gt;Before starting this project, I honestly didn't know much about NFTs beyond "expensive digital pictures." But diving deeper, I discovered it's actually about ownership and authenticity in the digital space.&lt;/p&gt;

&lt;p&gt;Think about it - we share millions of images online every day, but NFTs give creators a way to say "Hey, this specific piece is mine, and here's the proof."&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Technical Side&lt;/strong&gt;&lt;br&gt;
Creating the actual NFT was easier than I expected. Once you have your artwork ready, you just need to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Choose a marketplace (I went with OpenSea)&lt;/li&gt;
&lt;li&gt;Upload your image&lt;/li&gt;
&lt;li&gt;Add a description and properties&lt;/li&gt;
&lt;li&gt;Pay the minting fee&lt;/li&gt;
&lt;li&gt;And boom - you're officially a digital artist!&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The Challenges I Faced
&lt;/h2&gt;

&lt;p&gt;Not gonna lie, it wasn't all smooth sailing. The hardest part was probably getting the lighting effects right. You know how in movies, everything glows perfectly? Yeah, that's harder to recreate than you'd think.&lt;/p&gt;

&lt;p&gt;Also, choosing the right colors was tricky. I wanted that cyberpunk vibe without making it look too overwhelming. Blue seemed perfect because it's both tech-y and cool.&lt;/p&gt;

&lt;h2&gt;
  
  
  What This Experience Taught Me
&lt;/h2&gt;

&lt;p&gt;This whole NFT creation process opened my eyes to so many things:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Creativity Has No Limits&lt;/strong&gt;: When you're working digitally, you can literally create worlds that don't exist. Want a leopard using a computer? Done. Want floating UI elements? Easy.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Art Meets Technology&lt;/strong&gt;: NFTs are this fascinating intersection of creativity and blockchain technology. It's like the perfect blend of left brain and right brain thinking.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Community Matters&lt;/strong&gt;: The NFT community is actually pretty supportive. People genuinely appreciate good art and creativity.&lt;/p&gt;

&lt;h2&gt;
  
  
  Future Plans
&lt;/h2&gt;

&lt;p&gt;Now that I've gotten my feet wet, I'm already thinking about what's next. Maybe a whole collection of tech-savvy animals? Or perhaps exploring different artistic styles?&lt;/p&gt;

&lt;p&gt;I'm also curious about adding utility to NFTs - like maybe creating characters that could be used in games or interactive experiences.&lt;/p&gt;

&lt;h2&gt;
  
  
  My Honest Take On NFTs
&lt;/h2&gt;

&lt;p&gt;Look, I get that NFTs can be controversial. Some people see them as just overpriced JPEGs, while others see them as the future of digital ownership. &lt;/p&gt;

&lt;p&gt;From my experience, I think they're really about giving digital creators new ways to monetize their work and connect with audiences. Whether that's revolutionary or not, I'll leave up to you to decide.&lt;/p&gt;

&lt;h2&gt;
  
  
  Check Out My NFT!
&lt;/h2&gt;

&lt;p&gt;Want to see the final result? You can check out my snow leopard NFT right here on OpenSea: &lt;br&gt;
&lt;strong&gt;&lt;a href="https://opensea.io/item/polygon/0x91b25d7f66576f8d3b5ba8ea29602f55f6d48e71/1" rel="noopener noreferrer"&gt;View My NFT Collection&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I'd love to know what you think! Does it capture that tech-meets-nature vibe I was going for?&lt;/p&gt;

&lt;h2&gt;
  
  
  Wrapping Up
&lt;/h2&gt;

&lt;p&gt;Creating my first NFT has been one of those experiences that's equal parts challenging and rewarding. It pushed me to learn new skills, think creatively, and step into a space I never imagined I'd be part of.&lt;/p&gt;

&lt;p&gt;Whether you're thinking about creating your own NFT or just curious about the process, I'd say go for it! The worst thing that can happen is you learn something new and create some cool art in the process.&lt;/p&gt;

&lt;p&gt;What do you think about NFTs? Are you planning to create any? I'd love to hear your thoughts in the comments!&lt;/p&gt;

&lt;p&gt;Until next time, keep creating!&lt;/p&gt;

</description>
      <category>nft</category>
      <category>cryptocurrency</category>
      <category>blockchain</category>
      <category>ethereum</category>
    </item>
    <item>
      <title>My Python KeyLogger Project: More Than Just Keystroke Capture!</title>
      <dc:creator>Anuj Bolewar</dc:creator>
      <pubDate>Mon, 22 Sep 2025 18:41:40 +0000</pubDate>
      <link>https://design.forem.com/bolewara/my-python-keylogger-project-more-than-just-keystroke-capture-lpk</link>
      <guid>https://design.forem.com/bolewara/my-python-keylogger-project-more-than-just-keystroke-capture-lpk</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%2Fjzcnjr1i9k0vrsbeobvw.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%2Fjzcnjr1i9k0vrsbeobvw.png" alt=" " width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Hey everyone!&lt;br&gt;
            I'm Anuj, and I'm super excited to share my latest project that I've been working on - a comprehensive KeyLogger system with reverse shell capabilities.&lt;br&gt;
When I first started this project, I thought I'd just build a simple keylogger to learn about cybersecurity. But, it turned into something way cooler than I expected! Let me walk you through what I built and what I learned along the way.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Spark Behind This Project .&lt;/strong&gt;&lt;br&gt;
So it all started when I was watching some cybersecurity videos and got curious about how penetration testing tools actually work. I'd always heard about keyloggers and reverse shells, but I wanted to understand them from the ground up.&lt;br&gt;
You know that feeling when you see something cool and think "I bet I can build that"? That was me. I wanted to dive deep into Python networking, understand how background processes work, and get my hands dirty with some real cybersecurity concepts.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What I Actually Built&lt;/strong&gt;&lt;br&gt;
      This isn't your typical "hello world" keylogger. I ended up building a complete 4-module system:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Main Components:&lt;/strong&gt;&lt;br&gt;
keylogger.py - The brain that captures keystrokes intelligently&lt;br&gt;
reverse_shell.py- A powerful client with tons of features&lt;br&gt;
server.py - Command and control server&lt;br&gt;
test_client.py- Testing framework to make sure everything works&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cool Features:&lt;/strong&gt;&lt;br&gt;
Works on Windows, Linux, and macOS (cross-platform was tricky!)&lt;br&gt;
Complete reverse shell access&lt;br&gt;
Remote screenshot capture&lt;br&gt;
Smart keylogger that filters out sensitive stuff&lt;br&gt;
Runs completely silently in the background&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Technical Stuff&lt;/strong&gt; (Don't Worry, I'll Keep It Simple):&lt;br&gt;
Let me show you some of the cool code I wrote. The keylogger part was actually pretty elegant:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;python def on_press(key):&lt;br&gt;
    global log&lt;br&gt;
    try:&lt;br&gt;
        log = log + str(key.char)  # Regular characters&lt;br&gt;
    except AttributeError:&lt;br&gt;
        # Handle special keys like space, enter, etc.&lt;br&gt;
        if key == key.space:&lt;br&gt;
            log = log + " "&lt;br&gt;
        else:&lt;br&gt;
            log = log + " " + str(key) + " "&lt;br&gt;
&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The reverse shell communication was where I really learned about networking:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;pythondef reliable_send(data):&lt;br&gt;
    jsondata = json.dumps(data)&lt;br&gt;
    s.send(jsondata.encode())&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;def reliable_recv():&lt;br&gt;
    data = ""&lt;br&gt;
    while True:&lt;br&gt;
        try:&lt;br&gt;
            data = data + s.recv(1024).decode().rstrip()&lt;br&gt;
            return json.loads(data)&lt;br&gt;
        except ValueError:&lt;br&gt;
            continue&lt;br&gt;
&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What I love about this is how clean the JSON communication makes everything. No more dealing with messy raw socket data!&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Learning Curve :&lt;/strong&gt;&lt;br&gt;
Building this taught me so much more than I expected:&lt;br&gt;
&lt;strong&gt;Socket Programming&lt;/strong&gt;: I'd never done network programming before. Learning how clients and servers communicate, handling connections, dealing with timeouts - it was like unlocking a whole new world.&lt;br&gt;
&lt;strong&gt;Threading&lt;/strong&gt;: Getting the keylogger to run in the background while maintaining the reverse shell connection was my first real experience with concurrent programming.&lt;br&gt;
&lt;strong&gt;Cross-Platform Development:&lt;/strong&gt; Making this work on Windows, Linux, and macOS was honestly the hardest part. Different file paths, different permissions, different behaviors - but so satisfying when it all came together.&lt;br&gt;
&lt;strong&gt;File Handling:&lt;/strong&gt; Implementing secure file transfer with Base64 encoding taught me a lot about data serialization.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Challenges I Faced :&lt;/strong&gt;&lt;br&gt;
Not gonna lie, there were some frustrating moments:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Windows Defender:&lt;/strong&gt; It kept flagging my reverse shell (which is actually expected behavior for this type of tool). Had to add exceptions for testing.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Path Management:&lt;/strong&gt; Getting file paths to work correctly across different operating systems was more complex than I thought.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Connection Reliability:&lt;/strong&gt; Network connections can be flaky. I had to implement retry logic and proper error handling.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Testing:&lt;/strong&gt; Making sure everything worked across different platforms required setting up multiple test environments.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Features That Make Me Proud&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Smart Keystroke Capture:&lt;/strong&gt; It doesn't just dump everything - it intelligently handles special keys and formats the output properly.&lt;/p&gt;

&lt;p&gt;**Remote File Operations: **You can upload and download files, even grab files directly from URLs.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Screenshot Capability:&lt;/strong&gt; Using the mss library, it can capture screenshots remotely across different platforms.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Stealth Mode:&lt;/strong&gt; Runs completely silently with no visible windows or indicators.&lt;/p&gt;

&lt;p&gt;**Robust Communication: **JSON-based protocol with proper error handling and retry mechanisms.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Tech Stack:&lt;/strong&gt;&lt;br&gt;
Python 3.8+ (obviously!)&lt;br&gt;
Libraries: pynput, mss, requests, python-dotenv&lt;br&gt;
Built-in modules: socket, threading, subprocess, json, base64&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Architecture:&lt;/strong&gt;&lt;br&gt;
Client-server model with JSON communication&lt;br&gt;
Multi-threaded for concurrent operations&lt;br&gt;
Environment-based configuration&lt;br&gt;
Cross-platform file system handling&lt;/p&gt;

&lt;p&gt;The whole thing is about 500+ lines of code spread across multiple modules, but it's clean and well-organized.&lt;/p&gt;

&lt;p&gt;I built this to learn about cybersecurity concepts, understand how these tools work, and improve my Python skills. Always use tools like this responsibly, in controlled environments, and only with proper authorization.&lt;br&gt;
If you're interested in cybersecurity, use this knowledge to build better defenses, not to cause harm.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What's Next?&lt;/strong&gt;&lt;br&gt;
Adding AES encryption to the communication&lt;br&gt;
Building a web-based control interface&lt;br&gt;
Implementing database storage for logs&lt;br&gt;
Maybe exploring mobile platforms&lt;br&gt;
Adding steganography features&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Final Thoughts&lt;/strong&gt;&lt;br&gt;
This project pushed me way out of my comfort zone and taught me so much about networking, security, and system programming. There's something incredibly satisfying about seeing your reverse shell connect for the first time, or watching your keylogger silently capture data exactly as intended.&lt;/p&gt;

&lt;p&gt;The best part? Everything is open source on my GitHub. If you're curious about cybersecurity or want to learn about socket programming, feel free to check it out, star it if you find it interesting, and don't hesitate to ask questions!&lt;/p&gt;

&lt;p&gt;GitHub Repository: &lt;a href="https://github.com/anujbolewar/KeyLogger" rel="noopener noreferrer"&gt;https://github.com/anujbolewar/KeyLogger&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;What do you think? Have you worked on any cybersecurity projects? I'd love to hear about your experiences in the comments!&lt;/p&gt;

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