<?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: Amit Wagner</title>
    <description>The latest articles on DEV Community by Amit Wagner (@amit221).</description>
    <link>https://dev.to/amit221</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%2F223427%2Fb231606b-9b85-453a-93a5-2d117d45057a.png</url>
      <title>DEV Community: Amit Wagner</title>
      <link>https://dev.to/amit221</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/amit221"/>
    <language>en</language>
    <item>
      <title>I built a bot that donates my unused Cursor Composer tokens to open source</title>
      <dc:creator>Amit Wagner</dc:creator>
      <pubDate>Sat, 21 Mar 2026 08:27:40 +0000</pubDate>
      <link>https://dev.to/amit221/i-built-a-bot-that-donates-my-unused-cursor-composer-tokens-to-open-source-2m7o</link>
      <guid>https://dev.to/amit221/i-built-a-bot-that-donates-my-unused-cursor-composer-tokens-to-open-source-2m7o</guid>
      <description>&lt;p&gt;I use Cursor every day. Sonnet, the frontier models — constantly. But Composer and Auto? I'd open them, poke around, and close them. Those tokens just expire every month doing nothing.&lt;/p&gt;

&lt;p&gt;So I built Iynx.&lt;/p&gt;

&lt;h2&gt;
  
  
  What it does
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Searches GitHub for trending repos with open issues&lt;/li&gt;
&lt;li&gt;Picks an issue it thinks it can actually fix&lt;/li&gt;
&lt;li&gt;Writes the code, runs tests inside Docker&lt;/li&gt;
&lt;li&gt;Opens a real PR automatically&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Why I built it
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Already paying for Composer and not using it&lt;/li&gt;
&lt;li&gt;Want to contribute to open source but never have the time&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Try it
&lt;/h2&gt;

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

&lt;p&gt;MIT licensed. Happy to answer questions!&lt;/p&gt;

</description>
      <category>ai</category>
      <category>opensource</category>
      <category>python</category>
      <category>cursor</category>
    </item>
    <item>
      <title>Kipping duplicated data between collection synced with mongodb-data-sync</title>
      <dc:creator>Amit Wagner</dc:creator>
      <pubDate>Sun, 10 Nov 2019 13:23:46 +0000</pubDate>
      <link>https://dev.to/amit221/kipping-duplicated-data-between-collection-synced-with-mongodb-data-sync-2c8c</link>
      <guid>https://dev.to/amit221/kipping-duplicated-data-between-collection-synced-with-mongodb-data-sync-2c8c</guid>
      <description>&lt;p&gt;&lt;strong&gt;MongoDB&lt;/strong&gt; is undoubtedly a popular document database. It has become a top database choice for many web apps, especially those powered by NodeJS. The scalability, efficiency, and speed are only some of its benefits. However, for high read performance, denormalization is crucial and it can be painful doing so with MongoDB.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why you should in some cases Denormalizate the data
&lt;/h2&gt;

&lt;p&gt;Denormalization has many advantages, the most notable being the improvements it brings to the read performance of the database. Another advantage of Denormalization is the simplicity of read queries (by removing the necessity of joins). If you’ve used MongoDB before, you probably already know the only JOIN method it provides is LEFT_OUTER_JOIN, unlike relational databases that provide many other JOIN methods. This forces writing APPJOINs that query the database multiple times and slowing down the performance. To overcome this issue many programmers use Denormalization. &lt;/p&gt;

&lt;p&gt;Denormalization also makes it possible to index all fields and enables faster searching and sorting of the database.&lt;br&gt;
However, it has its own downsides such as handling duplicate data, and having consistency across collections. When you denormalize MongoDB, you should expect to have less consistent results when compared to a normalized schema.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Solution
&lt;/h2&gt;

&lt;p&gt;A possible solution to this is to create jobs to sync data so it becomes stable. Another is to update all the collections. But this is stressful and makes denormalization discouraging. With &lt;a href="https://www.npmjs.com/package/mongodb-data-sync"&gt;mongodb-data-sync&lt;/a&gt;, it is easier as you can set it up once, and not have to worry about consistency anymore. &lt;/p&gt;

&lt;p&gt;As an application grows, more relationships show up that affect the logic. Looking at this from the angle of denormalizing the database, &lt;a href="https://www.npmjs.com/package/mongodb-data-sync"&gt;mongodb-data-sync&lt;/a&gt; lets you simply declare these dependencies. It takes up the task of syncing the data without you having to worry about the complexities. All this with the assurance that speed is not negatively affected and the data remains consistent.&lt;/p&gt;

&lt;p&gt;Often times, every tool that makes it easier to build software adds an overhead that can negatively affect the product over time. You don’t need to worry about that in this case as most of the checks before synchronization are done in memory. Also, &lt;a href="https://www.npmjs.com/package/mongodb-data-sync"&gt;mongodb-data-sync&lt;/a&gt; makes use of MongoDB’s change streams which lets applications and libraries access real-time database changes.&lt;br&gt;
Installing Mongodb-data-sync&lt;/p&gt;

&lt;p&gt;There are two parts to &lt;a href="https://www.npmjs.com/package/mongodb-data-sync"&gt;mongodb-data-sync&lt;/a&gt;: the engine and the SDK. To get the library working, you need to install these parts and set them up:&lt;/p&gt;

&lt;p&gt;npm install mongodb-data-sync -g will install the engine&lt;br&gt;
npm install mongodb-data-sync --save will install the SDK&lt;/p&gt;

&lt;p&gt;You can check the npm page to learn more about how you can use the library in your projects and handle your mongodb dependencies gracefully.&lt;/p&gt;

</description>
      <category>mongodb</category>
      <category>node</category>
      <category>dependencies</category>
      <category>javascript</category>
    </item>
    <item>
      <title>NodeJS-Finding your console logs with console-form</title>
      <dc:creator>Amit Wagner</dc:creator>
      <pubDate>Wed, 04 Sep 2019 04:47:18 +0000</pubDate>
      <link>https://dev.to/amit221/nodejs-finding-your-console-logs-with-console-form-2j2i</link>
      <guid>https://dev.to/amit221/nodejs-finding-your-console-logs-with-console-form-2j2i</guid>
      <description>&lt;p&gt;As a javascript developer, you probably use console.log or console.error a lot, it's the fastest way to debug and it's one of the first things you learn to code when you start with javascript,&lt;/p&gt;

&lt;p&gt;But what happens when you have to do many consoles in different places in order to debug, or you have a big app with many consoles and you want to delete some of them,&lt;/p&gt;

&lt;p&gt;well this is what &lt;a href="https://www.npmjs.com/package/console-from"&gt;console-from&lt;/a&gt; was designed to do. you just require it at the start of your app and from now on all your consoles will show you there location &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--iTgIaYNY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/braylepyyhhhphzzd7co.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--iTgIaYNY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/braylepyyhhhphzzd7co.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>npm</category>
      <category>node</category>
    </item>
  </channel>
</rss>
