<?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: Paul</title>
    <description>The latest articles on DEV Community by Paul (@psimk).</description>
    <link>https://dev.to/psimk</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%2F999052%2F30069b38-0e71-4e74-9cf4-1aee01a6c46e.jpg</url>
      <title>DEV Community: Paul</title>
      <link>https://dev.to/psimk</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/psimk"/>
    <language>en</language>
    <item>
      <title>Meet Spuddy 🥔</title>
      <dc:creator>Paul</dc:creator>
      <pubDate>Sun, 14 Sep 2025 10:29:33 +0000</pubDate>
      <link>https://dev.to/psimk/meet-spuddy-8a7</link>
      <guid>https://dev.to/psimk/meet-spuddy-8a7</guid>
      <description>&lt;h1&gt;
  
  
  What's &lt;em&gt;Spuddy&lt;/em&gt;?
&lt;/h1&gt;

&lt;p&gt;&lt;em&gt;Ever tried checking off items on a shopping list app, while juggling groceries and a phone?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Spuddy&lt;/strong&gt;, is a shopping list app that I built two years ago, out of frustration with the user experience of other shopping list apps.&lt;/p&gt;

&lt;p&gt;I built it to be easy to use - everything is reachable with one hand, and checking off is a simple swipe to the left or right.&lt;/p&gt;

&lt;p&gt;The technology behind it, is also not traditional, as it's a &lt;a href="https://developer.mozilla.org/en-US/docs/Web/Progressive_web_apps/Guides/What_is_a_progressive_web_app" rel="noopener noreferrer"&gt;Progressive Web App (PWA)&lt;/a&gt;, with real-time sync, so you can share your shopping list with your family, and everyone can see updates in real-time.&lt;/p&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%2Fc5clmaxyu2cg1gwuz0qt.gif" 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%2Fc5clmaxyu2cg1gwuz0qt.gif" alt="Spuddy on Android" width="760" height="1688"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The first &lt;code&gt;#buildinpublic&lt;/code&gt; project
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Spuddy&lt;/strong&gt; will be my first &lt;code&gt;#buildinpublic&lt;/code&gt; project.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Even though I built &lt;strong&gt;Spuddy&lt;/strong&gt; two years ago, I never really shared it publicly.&lt;br&gt;
That was, because it was aimed at addressing my own needs, and I didn't think that anyone else would be interested in it.&lt;/p&gt;

&lt;p&gt;However, now that I am trying to be more open about my projects, and share my journey of building things in public - &lt;strong&gt;Spuddy&lt;/strong&gt; will be my first &lt;code&gt;#buildinpublic&lt;/code&gt; project.&lt;/p&gt;

&lt;p&gt;I think that it is fairly poetic, that a shopping list app, will be the first project that I will be sharing publicly.&lt;br&gt;
As for most frontend engineers, a shopping (todo) list app is the first project that they ever build.&lt;/p&gt;

&lt;h2&gt;
  
  
  From side project to product
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Spuddy&lt;/strong&gt; already exists, so why rebuild it? I mean, I can just share the code, open up the domain, and be done with it, right?&lt;/p&gt;

&lt;p&gt;As I wrote last week, in my first post "&lt;a href="https://psimk.dev/posts/my-internet-goal/#the-commitment" rel="noopener noreferrer"&gt;My Internet Goal (The Commitment)&lt;/a&gt;", I don't want to just open source my projects.&lt;br&gt;
I want to build them into products, and to learn what a "product" is.&lt;/p&gt;

&lt;p&gt;To transform my tiny &lt;strong&gt;Spuddy&lt;/strong&gt; into an actual product, I will have to implement these things:&lt;/p&gt;

&lt;h3&gt;
  
  
  A Landing Page
&lt;/h3&gt;

&lt;p&gt;One of the first things that anyone should think about, when building a product, is marketing!&lt;br&gt;
And the most important first step in marketing your product, is to have a landing page.&lt;/p&gt;

&lt;p&gt;This landing page should explain what &lt;strong&gt;Spuddy&lt;/strong&gt; is, and why you should use it.&lt;/p&gt;

&lt;h3&gt;
  
  
  Miscellaneous Pages
&lt;/h3&gt;

&lt;p&gt;Since this is a product, where I am allowing the user to input data, I will also need a couple other pages:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Privacy Policy&lt;/li&gt;
&lt;li&gt;Cookie Policy&lt;/li&gt;
&lt;li&gt;Terms of Service&lt;/li&gt;
&lt;li&gt;Contacts&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Authentication &amp;amp; Authorisation
&lt;/h3&gt;

&lt;p&gt;This is obvious, but currently anyone can do anything in &lt;strong&gt;Spuddy&lt;/strong&gt; :)&lt;/p&gt;

&lt;h3&gt;
  
  
  Product Analytics
&lt;/h3&gt;

&lt;p&gt;It might be a complete waste of time to work on this, as I don't know if anyone will ever use &lt;strong&gt;Spuddy&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;However, I want to learn how to build in product analytics, so it's easy to implement in future projects.&lt;/p&gt;

&lt;h3&gt;
  
  
  Pricing &amp;amp; Subscriptions
&lt;/h3&gt;

&lt;p&gt;Similar to product analytics, this might be a complete waste of time, if no one ever uses &lt;strong&gt;Spuddy&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;However, I want to learn how to build a pricing &amp;amp; subscription model, so I can implement it in future projects.&lt;br&gt;
If I do ever get users, then I will have to somehow pay for the hosting costs, as real-time sync is not free.&lt;/p&gt;

&lt;h3&gt;
  
  
  UI / UX Improvements
&lt;/h3&gt;

&lt;p&gt;Since &lt;strong&gt;Spuddy&lt;/strong&gt; was built just to serve my own needs, I added random features, like the recipe screen.&lt;br&gt;
Without really thinking about the overall user experience, and letting these features sit in the oven long enough to finish baking.&lt;/p&gt;

&lt;p&gt;I want to take a step back, and think about the overall user experience, and how I can improve it.&lt;br&gt;
For this Minimal Viable Product (MVP), I want to focus on the core experience of a shopping list app, and make it feel as great as possible.&lt;/p&gt;

&lt;h3&gt;
  
  
  Technology
&lt;/h3&gt;

&lt;p&gt;The real-time sync of &lt;strong&gt;Spuddy&lt;/strong&gt; is currently powered by a manual deployment of &lt;a href="https://github.com/yjs/y-websocket-server/" rel="noopener noreferrer"&gt;&lt;code&gt;y-websocket-server&lt;/code&gt;&lt;/a&gt; on &lt;a href="https://fly.io/" rel="noopener noreferrer"&gt;Fly.io&lt;/a&gt;.&lt;br&gt;
It's annoying to manage, as &lt;a href="https://github.com/yjs/y-websocket-server/" rel="noopener noreferrer"&gt;&lt;code&gt;y-websocket-server&lt;/code&gt;&lt;/a&gt; depends on a seldom used DB - &lt;a href="https://github.com/google/leveldb" rel="noopener noreferrer"&gt;leveldb&lt;/a&gt;, which doesn't have much tooling around it.&lt;br&gt;
Moreover, as this is YJS, and I am using React, I had to roll my own hooks &amp;amp; integration from React to YJS - all of it is fairly ugly code.&lt;/p&gt;

&lt;p&gt;For this new version of &lt;strong&gt;Spuddy&lt;/strong&gt;, I want to switch to &lt;a href="https://www.instantdb.com/" rel="noopener noreferrer"&gt;InstantDB&lt;/a&gt; as the backend.&lt;br&gt;
It not only provides a hosted solution, but also has first class support for React.&lt;br&gt;
This will make it much easier to maintain, and I can focus on building the product, rather than the infrastructure.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;NOTE: InstantDB is open-source, and can be self-hosted.&lt;br&gt;
I will likely be exploring this option, post-launch, if I ever get users.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  What's next?
&lt;/h2&gt;

&lt;p&gt;Next, I will be setting up the boilerplate for the new version of &lt;strong&gt;Spuddy&lt;/strong&gt;, with the technology changes mentioned above.&lt;br&gt;
It will be open sourced from the get-go, and I will share this as part of a follow-up post.&lt;/p&gt;

&lt;p&gt;Then, I will start working on the design of the application - both the UI and UX.&lt;br&gt;
I usually just start with coding, but this time I want to take a step back, and think about the overall experience.&lt;br&gt;
I think this will also be a good opportunity to share my design thoughts, and get feedback from you, &lt;em&gt;the reader&lt;/em&gt;.&lt;/p&gt;

</description>
      <category>programming</category>
      <category>buildinpublic</category>
    </item>
    <item>
      <title>My internet goal</title>
      <dc:creator>Paul</dc:creator>
      <pubDate>Mon, 08 Sep 2025 14:32:00 +0000</pubDate>
      <link>https://dev.to/psimk/my-internet-goal-paf</link>
      <guid>https://dev.to/psimk/my-internet-goal-paf</guid>
      <description>&lt;h1&gt;
  
  
  A life of creation
&lt;/h1&gt;

&lt;p&gt;I am sure I am not the only one who has seen &lt;a href="https://www.youtube.com/watch?v=o-UYuhU_gxk" rel="noopener noreferrer"&gt;dozens of videos&lt;/a&gt;, &lt;a href="https://levels.io/startups/" rel="noopener noreferrer"&gt;read blogs&lt;/a&gt; and &lt;a href="https://www.indiehackers.com/podcast/189-chris-and-bruce-of-wherebyus" rel="noopener noreferrer"&gt;listened to podcasts&lt;/a&gt; about successful indie-preneurs that &lt;strong&gt;created&lt;/strong&gt; it. Engineers, such as &lt;a href="https://x.com/levelsio" rel="noopener noreferrer"&gt;Peter Levels&lt;/a&gt; &amp;amp; &lt;a href="https://x.com/dannypostmaa" rel="noopener noreferrer"&gt;Danny Postma&lt;/a&gt;, or even a Photographer - &lt;a href="https://x.com/DaniConnorWild" rel="noopener noreferrer"&gt;Dani Connor&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;You might ask - &lt;em&gt;Well, what have they created, that's so interesting?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;I am not writing about the business or some project, that they managed to create - these get plenty of highlights as is.&lt;br&gt;
I am writing about their lives. Each of these, and more, individuals have managed to create a life, that allows them to live from their own skills &amp;amp; creativity.&lt;/p&gt;

&lt;p&gt;This is completely different from my life, where I am living off my current 9-5, 40 hour work week, company.&lt;/p&gt;

&lt;h2&gt;
  
  
  The anxiety of growth
&lt;/h2&gt;

&lt;p&gt;Something that I have been feeling more and more over my Software Engineer career, is this anxiety, that &lt;strong&gt;I always must perform&lt;/strong&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You get into a meeting with someone, and they expect you to solve their issue, in the way that pleases them.&lt;/li&gt;
&lt;li&gt;You get a assigned a project, where even though your manager says it is okay to fail, you know that they and everyone around wants this project to be an absolute success.&lt;/li&gt;
&lt;li&gt;You get a promotion into a new role, and now you find time to both do more and learn new skills with the same time you had before.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is okay. Large businesses need to constantly &lt;a href="https://www.matt-bristow.com/tech-industry-growth" rel="noopener noreferrer"&gt;grow into even larger businesses&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;But that's &lt;strong&gt;not okay for me&lt;/strong&gt;. I don't want to be this optimised machine that is capable of conforming to every new person and decision made by someone on the top floor.&lt;/p&gt;

&lt;h2&gt;
  
  
  Who am I
&lt;/h2&gt;

&lt;p&gt;I am a Software Engineer with over 7 years of experience in the industry, primarily focused on Frontend.&lt;/p&gt;

&lt;h2&gt;
  
  
  Who am I (actually)
&lt;/h2&gt;

&lt;p&gt;I am just a guy writing this from my home office in Lithuania, Vilnius:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;My favourite dish is &lt;a href="https://en.wikipedia.org/wiki/Carbonara" rel="noopener noreferrer"&gt;Pasta Carbonara&lt;/a&gt; (&lt;em&gt;no cream&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;One of my favourite movies is &lt;a href="https://www.imdb.com/title/tt1877830" rel="noopener noreferrer"&gt;The Batman (2022)&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;I've taken up some basic woodworking as a hobby, hopefully I can share something on this&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Lastly, I live in a family of four: a gorgeous &amp;amp; smart fiance, a dog, and two cats. &lt;/p&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%2Fckkex4x0rpwmj9rwzyc2.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%2Fckkex4x0rpwmj9rwzyc2.jpg" alt="Urnius &amp;amp; Kefyras, both are tabby siberian cats" width="800" height="800"&gt;&lt;/a&gt;&lt;/p&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%2Fvfiqo7m3bqg1zocwa2a7.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%2Fvfiqo7m3bqg1zocwa2a7.jpg" alt="Toto, named after the great Toto Wolff" width="800" height="800"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The Commitment
&lt;/h2&gt;

&lt;p&gt;Internet, I am committing to spending the next year, working towards generating 2,000 € monthly passive income.&lt;br&gt;
I will be doing this together with my 9-5 job.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;How?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;I am not sure yet, but here are my thoughts:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;I have seldom done open source, and I want to give back to the community that helped me build my skills.&lt;/li&gt;
&lt;li&gt;I have never done freelance, and I think that's valuable as you get exposed to many different products.&lt;/li&gt;
&lt;li&gt;I have never released a paid product of my own, and I don't understand how the whole complex process works.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I need more time to convert these thoughts into actual values that I can live by, and I think that will happen over time.&lt;br&gt;
However, I can promise that I will share every step of this journey, whatever it is with you,&lt;/p&gt;




&lt;blockquote&gt;
&lt;p&gt;Hopefully, I will also get better at blogging, so these posts are less rough.&lt;/p&gt;
&lt;/blockquote&gt;

</description>
      <category>buildinpublic</category>
      <category>programming</category>
    </item>
  </channel>
</rss>
