<?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>Forem: GeorgiMY</title>
    <description>The latest articles on Forem by GeorgiMY (@georgimy).</description>
    <link>https://forem.com/georgimy</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%2F960516%2F1c0f6004-1159-4c4a-b5c7-87ad5420fea8.png</url>
      <title>Forem: GeorgiMY</title>
      <link>https://forem.com/georgimy</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/georgimy"/>
    <language>en</language>
    <item>
      <title>How I Earned $2,000 At Age 16 From Scholarships As a Programmer</title>
      <dc:creator>GeorgiMY</dc:creator>
      <pubDate>Sun, 19 Jan 2025 10:12:13 +0000</pubDate>
      <link>https://forem.com/georgimy/how-i-earned-2000-at-age-16-from-scholarships-as-a-programmer-2ajn</link>
      <guid>https://forem.com/georgimy/how-i-earned-2000-at-age-16-from-scholarships-as-a-programmer-2ajn</guid>
      <description>&lt;p&gt;My mind has always been occupied by 3 subjects: Programming, Money, and Physics. &lt;strong&gt;Only by combining them&lt;/strong&gt; did I have success in all three.&lt;/p&gt;

&lt;h2&gt;
  
  
  Should You Pursue A Scholarship As A Developer At All?
&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%2Fan6won3g8dwxoao2lutu.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%2Fan6won3g8dwxoao2lutu.jpg" alt="WARNING!!! You’ll witness a lot of meme stealing!" width="520" height="580"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;With all the application forms and competitions, it’s easy to wonder if it’s worth the effort.&lt;/p&gt;

&lt;p&gt;It’s unquestionably a lot of work!&lt;/p&gt;

&lt;p&gt;Here are some benefits and drawbacks of pursuing scholarships which would answer if you should go after them!&lt;/p&gt;

&lt;h3&gt;
  
  
  BENEFITS
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Having some spending money as a teenager is always amazing!&lt;/li&gt;
&lt;li&gt;Winning a scholarship, no matter the amount, is an achievement. It validates your hard work, skills, and potential&lt;/li&gt;
&lt;li&gt;You can proudly add winning a scholarship to your resume or portfolio&lt;/li&gt;
&lt;li&gt;Even if you don’t get a scholarship the project you develop doesn’t have to gather dust! You can use it for different competitions and make it into a product or even sell it!
### DRAWBACKS
Scholarships are often highly competitive, especially those with larger payouts
The scholarship process and developing the project can add a lot of pressure and stress to your life
Sadly, people tend to get very jealous. Don’t expect everyone to be happy for your success, but-&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;Don’t let the noise of others’ jealousy drown out your own success&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;The benefits outweighed the drawbacks for me!&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I think even if the drawbacks outweigh the benefits for you, this article may change your opinion. Only one way to find out! 😄&lt;/p&gt;

&lt;h2&gt;
  
  
  How I Made $2000 💸
&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%2Fs5h6ww1iuxti26jh009t.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%2Fs5h6ww1iuxti26jh009t.jpg" alt="I'm a big Ice Cube fan" width="500" height="310"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I was still 15 when someone brought to my attention a competition. A yearly “olympiad” organized by the Ministry of Education in my home country, Bulgaria. If you are interested in the specifics of the competition I’ll write another article about this topic going in depth.&lt;/p&gt;

&lt;p&gt;So I got to work creating what I now call &lt;strong&gt;“My First Big Project”&lt;/strong&gt;!&lt;br&gt;
In that competition, &lt;strong&gt;I placed 2nd in the whole country&lt;/strong&gt;. That &lt;strong&gt;qualified me to get a $900 scholarship&lt;/strong&gt;, and with it, I got many rewards from the competition’s sponsors as well. I’ve estimated the price of these rewards to be around $100.&lt;/p&gt;

&lt;p&gt;That all totals to $1000 though. Well The year after that, I created “&lt;strong&gt;My Second Big Project&lt;/strong&gt;” and &lt;strong&gt;won second place again&lt;/strong&gt;! I qualified for the same &lt;strong&gt;$900 scholarship&lt;/strong&gt;, and there were some different rewards, but &lt;strong&gt;it all totaled around $1000&lt;/strong&gt; as well.&lt;/p&gt;

&lt;p&gt;That’s why now I can say that I have made a little &lt;strong&gt;over $2000&lt;/strong&gt; in my early developer journey!&lt;/p&gt;

&lt;h2&gt;
  
  
  Overview Of My Projects 👨‍💻
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;My first project&lt;/strong&gt; was a website that was a physics educational platform about gravity for students between the ages of 8 and 14.&lt;/p&gt;

&lt;p&gt;The tech stack was simple. I used Javascript, HTML, CSS, and the p5js library to do the vector math and shape drawing.&lt;/p&gt;

&lt;p&gt;It might look basic, but there are no direct tutorials on how to do these things! There were physics and mathematics involved, not only programming. That’s why this project was looked at as &lt;strong&gt;so valuable&lt;/strong&gt;! It’s new, it’s different, it’s thought out and it’s useful, that’s why it brought me success!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;My second project&lt;/strong&gt; aimed to help scientists gather useful and accurate data through physics simulations of black holes.&lt;/p&gt;

&lt;p&gt;I made the application using Unity. It was coded in C# and had an external application coded in Python.&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%2Far33d5u7gvjdux5v525e.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%2Far33d5u7gvjdux5v525e.jpg" alt="Me Winning" width="800" height="1064"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you want more information about the projects and my story on developing them, I’ll write follow-up articles about them and another post that will show you how to create exactly what I have done — award-winning academic projects. Be sure to let me know in the comments if you are interested!&lt;/p&gt;

&lt;h2&gt;
  
  
  How To Find High School Scholarships As A Developer 💸👀
&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%2Fqv25v30y2izdrq9ua8sb.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%2Fqv25v30y2izdrq9ua8sb.gif" alt="Everyone gets a scholarship" width="406" height="276"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Depending on where you live scholarships are different but they usually have the same type of requirements. They require you to have some sort of academic success.&lt;/p&gt;

&lt;p&gt;To find scholarships in your country, you can type in a browser:&lt;br&gt;
“IT scholarships in {your country} for high school students”&lt;br&gt;
There should be a website that lists multiple scholarships. There you’ll see what the requirements are as well as the registration procedure for the scholarship you choose.&lt;/p&gt;

&lt;p&gt;Alternatively, you can search for international scholarships, but the competition there is quite more substantial because you are not only competing with people from your country but also with people from other countries. It’s not a bad idea to look at the opportunities though! You can search for:&lt;br&gt;
“International IT scholarships for high school students in {your country}”&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%2Fmz4ftheiywo2u61pcsov.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%2Fmz4ftheiywo2u61pcsov.jpg" alt="Sadly don't qualify" width="512" height="427"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Usually for more developed countries organizations will award greater sums of money per scholarship, but the competition will also increase proportionally.&lt;/p&gt;

&lt;h2&gt;
  
  
  Was It Worth It?
&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%2Fyp7hcbhir6apcfkjj89x.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%2Fyp7hcbhir6apcfkjj89x.gif" alt="The guy nodding" width="500" height="225"&gt;&lt;/a&gt;&lt;br&gt;
In my case yes.&lt;/p&gt;

&lt;p&gt;I only speak from the experience I had with the scholarship that I chose, but there are many different scholarships out there!&lt;/p&gt;

&lt;p&gt;I had to work every day for 6 months on each of those projects. Every day after school I would go back home only to write code for 5-8 hours.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What I did was not healthy&lt;/strong&gt;! It was hard and it was very time-consuming, but there was simply no other way! This was one of the very few viable options for a 16-year-old developer like me to make this kind of money!&lt;/p&gt;

&lt;p&gt;Don’t get me wrong, I am not complaining! No one pushed me to do this, &lt;strong&gt;I created these projects because I wanted to and because I liked it&lt;/strong&gt;! I had always wondered what it was like to build such projects and I finally got some insight into the world of software and web development!&lt;/p&gt;

&lt;p&gt;You can see some big improvements from the first project, so that’s another bonus!&lt;/p&gt;

&lt;p&gt;The truth is that your dreams won’t materialize if you don’t put in hard work and many hours into them! &lt;strong&gt;I am very glad I learned this when I was still 15 years old&lt;/strong&gt;, but it’s never too late to learn!&lt;/p&gt;

&lt;p&gt;So in some sense, it was definitely worth it!&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Do People Give Away “Free Money”?
&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%2Fz1q0s08msfomwjrzemcy.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%2Fz1q0s08msfomwjrzemcy.jpg" alt="Free Money" width="600" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  1: There’s no such thing as free money!
&lt;/h1&gt;

&lt;h1&gt;
  
  
  2: If you’re not paying for the product, you’re the one being sold.
&lt;/h1&gt;

&lt;p&gt;There is no rule #3, I hope you like the article so far😄&lt;/p&gt;

&lt;p&gt;People have different motives for creating scholarships. Believe me, it’s not because they are really keen on giving you money!&lt;/p&gt;

&lt;p&gt;In my case, I got “free money” because by giving me this money the country hopes I’ll stay, later on becoming a well-rounded developer in return making the country better.&lt;/p&gt;

&lt;p&gt;There are other reasons of course. If a private company is giving scholarships it might be because they are scanning for possible bright sparks among the crowds of people typing in the ChatGPT prompt “Make me a website”. Usually, they are more likely to give higher sums of money, so that you are more likely to end up working for them in the future.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&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%2Fgc76anvyjy2qi0uecmet.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%2Fgc76anvyjy2qi0uecmet.png" alt="In Conclusion" width="300" height="154"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Scholarships take time and dedication because people simply don’t give out money to everyone!&lt;/p&gt;

&lt;p&gt;Scholarships are hard to acquire but you should have learned if pursuing one is the right choice for you.&lt;/p&gt;

&lt;p&gt;If you want to learn what being a developer is like, you should start and finish a big project! The only way you can do that is if this project has meaning to you!&lt;/p&gt;

&lt;p&gt;People are willing to invest in your future because in return they can make their money back tenfold!&lt;/p&gt;

&lt;p&gt;I haven’t put any ads or external links for the best reader experience and if you want to see more articles like this one I’d be thankful if you’d follow me and like this article! If you have any questions at all feel free to ask them in the comments as well as if you feel like I’ve missed something important on the topic. Have a great day and thank you for your time!&lt;/p&gt;

</description>
      <category>simulation</category>
      <category>scholarship</category>
      <category>career</category>
      <category>startup</category>
    </item>
    <item>
      <title>I Made A SaaS In 3 Weeks At Age 17</title>
      <dc:creator>GeorgiMY</dc:creator>
      <pubDate>Sun, 19 Jan 2025 08:37:44 +0000</pubDate>
      <link>https://forem.com/georgimy/i-made-a-saas-in-3-weeks-at-age-17-hp9</link>
      <guid>https://forem.com/georgimy/i-made-a-saas-in-3-weeks-at-age-17-hp9</guid>
      <description>&lt;p&gt;In 3 weeks I developed a fully functional Software as a Service!&lt;/p&gt;

&lt;p&gt;I want to completely break down my short, but hard journey, what I learned, what I could have done better, what’s to come, and how it all culminated in creating DebateTrend.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is DebateTrend?
&lt;/h2&gt;

&lt;p&gt;DebateTrend is a web app, SaaS, where you can debate with AI on different topics!&lt;br&gt;
You can have multiple debates with different debate styles for different lengths of time!&lt;/p&gt;

&lt;p&gt;The special part is at the end of each debate. You can have another AI that will look through the debate by just clicking a button! It will give you and the AI you debated a score from a system I call “debate score”.&lt;br&gt;
It will also give you recommendations on where you can improve your debating skills!&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/grT_nQtobss"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;There’s a saying in this community that I 100% agree with and I keep repeating it every time I get the chance (quite annoying, I know)&lt;/p&gt;

&lt;p&gt;“Create something based on your own issues, that you wish existed and that you will personally use”&lt;/p&gt;

&lt;h2&gt;
  
  
  The Idea
&lt;/h2&gt;

&lt;p&gt;That’s exactly how I came up with DebateTrend!&lt;/p&gt;

&lt;p&gt;I was listening to a Jordan Peterson debate/talk and wondered:&lt;/p&gt;

&lt;p&gt;“I wish I could debate someone. I want to improve my debating skills”&lt;/p&gt;

&lt;p&gt;“Wouldn’t it be cool if you could debate with AI on issues… wait-”&lt;/p&gt;

&lt;p&gt;I started researching debating AI and the closest thing I found to what I had in mind was a sub-tool from a website that had a higher number of ads than I can count. It was ugly and it was more of a ChatGPT copy than ChatGPT itself.&lt;/p&gt;

&lt;p&gt;“I could do better” — Said the guy who had never integrated authentication, hosted a web app, integrated AI, and made a real-time chat. Quite foolish.&lt;/p&gt;

&lt;p&gt;The fact that a user-ready version of the website was made in three weeks is a miracle in itself. (very humble of me)&lt;/p&gt;

&lt;h2&gt;
  
  
  Tech Stack
&lt;/h2&gt;

&lt;p&gt;So that’s exactly what I did!&lt;/p&gt;

&lt;p&gt;Of course, since I didn’t know many things I had to add a lot of tech that I wasn’t familiar with to my tech stack but here’s the final version:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Language&lt;/strong&gt;: Javascript&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Database&lt;/strong&gt;: MongoDB hosted on Atlas&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Hosting&lt;/strong&gt;: Vercel&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Framework&lt;/strong&gt;: Express&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Auth&lt;/strong&gt;: PassportJs&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Emails&lt;/strong&gt;: Resend&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Payments&lt;/strong&gt;: Stripe&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Front End&lt;/strong&gt;: TailWindCSS, some regular CSS and DaisyUI&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;WebSockets&lt;/strong&gt;: Pusher, because Vercel = no sockets integrated into your web app which I found the painful way&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AI&lt;/strong&gt;: OpenAI’s API ChatGPT 4-o mini&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Something I had completely no idea about though, was how to implement security so I can publish a clean and secure product.&lt;/p&gt;

&lt;h2&gt;
  
  
  Security
&lt;/h2&gt;

&lt;p&gt;When you don’t know something it’s best to ask people who do.&lt;/p&gt;

&lt;p&gt;I saw a tweet of Marc Lou showing how he got DDoSed a little after he released his start-up, and I honestly felt horrified!&lt;br&gt;
“If he gets DDoS-ed what about me? A nobody!”&lt;/p&gt;

&lt;p&gt;&lt;iframe class="tweet-embed" id="tweet-1841497127668883935-433" src="https://platform.twitter.com/embed/Tweet.html?id=1841497127668883935"&gt;
&lt;/iframe&gt;

  // Detect dark theme
  var iframe = document.getElementById('tweet-1841497127668883935-433');
  if (document.body.className.includes('dark-theme')) {
    iframe.src = "https://platform.twitter.com/embed/Tweet.html?id=1841497127668883935&amp;amp;theme=dark"
  }



&lt;/p&gt;

&lt;p&gt;The answer was in the question: If people don’t know you, they don’t and can’t care about you.&lt;/p&gt;

&lt;p&gt;From this X post, I got quite good feedback and implemented some security features. The most important one is — Not caring.&lt;/p&gt;

&lt;p&gt;I liked one of the replies a lot, it went something like this:&lt;/p&gt;

&lt;p&gt;“You’re at a really early stage. If people do decide to DDoS you that means you would have gotten enough attention, but at that point, you would have also gotten $ to fight back.”&lt;/p&gt;

&lt;p&gt;I greatly educated myself on security. I am going to make another post specifically talking about SaaS security.&lt;/p&gt;

&lt;p&gt;I’m sure there are many security vulnerabilities I’ll have to learn about as a painful lesson.&lt;/p&gt;

&lt;h2&gt;
  
  
  Painful Lessons
&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%2F2ujh7l8gbnskq3cbfmz9.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%2F2ujh7l8gbnskq3cbfmz9.jpg" width="800" height="449"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Sadly the painful lessons are always the most useful ones, the ones you’ll remember and the ones you won’t repeat again!&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;I couldn’t have known&lt;/strong&gt; —As I mentioned in the previous chapter I found out the painful way that web sockets don’t work in environments like Vercel, because it’s serverless and static. The “static” part should have given it away but I somehow completely skipped it.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Build In Public&lt;/strong&gt; — “Building in public” is the practice of sharing what you’re working on and how you’re working on it with like-minded people. Related to the last lesson, if I had “built-in public” I would have prevented the issue of not knowing that serverless/stateless meant I couldn’t use sockets and sessions. Building in public = less pain of figuring out what you HAD to do when you’ve already done it.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;A lot of the things I talk about in this article I talk about daily on my X where I “build in public”. I’d appreciate it if you give me a follow there — &lt;a href="https://x.com/Georgi_MY" rel="noopener noreferrer"&gt;https://x.com/Georgi_MY&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Marketing
&lt;/h2&gt;

&lt;p&gt;The matter of the fact is that it doesn’t matter if you build an amazing product or one that’s literal trash. You can’t get the feedback required to know what your SaaS is without doing marketing first.&lt;/p&gt;

&lt;p&gt;Here are 8 of the steps I am going to take.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Twitter/X — Making two accounts.
One showing my progress from a developer side.
The other posting about debate news all over the world and every couple of posts promoting DebateTrend.&lt;/li&gt;
&lt;li&gt;TikTok/Instagram/YouTube/Facebook etc. — I will make silly short videos there promoting my website as a place where you can “argue” with AI.&lt;/li&gt;
&lt;li&gt;Partnerships with communities — Offering affiliate programs to discord communities and more.&lt;/li&gt;
&lt;li&gt;Medium — This article for example was also published on Medium&lt;/li&gt;
&lt;li&gt;YouTube — Using it like X by showing my progress from a developer/business side&lt;/li&gt;
&lt;li&gt;Debate teams — There are thousands of debate teams all over the US, UK and many other places in the world. My platform is a great way for them to test and improve their debating skills.&lt;/li&gt;
&lt;li&gt;ProductHunt — Launching on ProductHunt and all ProductHunt alternatives will be another crucial step to marketing&lt;/li&gt;
&lt;li&gt;Reddit — Many Reddit communities would be interested in what I am developing. r/SideProjects, r/Debates and many more.
There are some more things but my marketing scheme is so grand that it deserves a post of its own, which I will make and go into a lot more detail.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;There are some more things but my marketing scheme is so grand that it deserves a post of its own, which I will make and go into a lot more detail.&lt;/p&gt;

&lt;p&gt;All this seems great but with the slight issue that it’s all things I am planning to do, and haven’t started yet.&lt;/p&gt;

&lt;h2&gt;
  
  
  Income
&lt;/h2&gt;

&lt;p&gt;That means that currently since there has been almost no marketing, there has been no income.&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%2F0vll9b5ts686c07hfjz7.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%2F0vll9b5ts686c07hfjz7.png" width="800" height="359"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;My goal in the next 3 months is to reach $300 monthly recurring revenue or mrr for short.&lt;/p&gt;

&lt;h2&gt;
  
  
  Costs
&lt;/h2&gt;

&lt;p&gt;Even though I have played my cards so well that I can go without having any monthly costs I have decided to get some extras for better user experience.&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%2F60ciydslnq02a8bg8hyy.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%2F60ciydslnq02a8bg8hyy.jpg" width="640" height="1136"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Yearly purchase of the domain — debatetrend.com&lt;/p&gt;

&lt;h4&gt;
  
  
  Monthly costs ($10/mo):
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;($1/mo) Business email&lt;/li&gt;
&lt;li&gt;($9/mo) MongoDB Atlas which is the place where I host my database so I can move its physical location to be closer to the Vercel servers&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Future costs ($50/mo):
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;($10/mo) As previously listed&lt;/li&gt;
&lt;li&gt;($20/mo) Vercel Pro&lt;/li&gt;
&lt;li&gt;($20/mo) Resend subscription&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;I had been wondering for a long time if I could build a product and release it, but I never believed I could do it in just 3 weeks!&lt;/p&gt;

&lt;p&gt;I see a lot of potential for DebateTrend. I want to make it the next chess.com for debaters and I hope I have the persuasion needed to finish this.&lt;/p&gt;

&lt;p&gt;I’d be thankful if you’d follow me and like this article! If you have any questions at all feel free to ask them in the comments as well as if you feel like I’ve missed something important on the topic. Have a great day and thank you for your time!&lt;/p&gt;

</description>
      <category>saas</category>
      <category>startup</category>
      <category>ai</category>
      <category>challenge</category>
    </item>
    <item>
      <title>I Recreated My ExpressJS SaaS In NextJS</title>
      <dc:creator>GeorgiMY</dc:creator>
      <pubDate>Sat, 18 Jan 2025 21:21:02 +0000</pubDate>
      <link>https://forem.com/georgimy/i-recreated-my-expressjs-saas-in-nextjs-39m0</link>
      <guid>https://forem.com/georgimy/i-recreated-my-expressjs-saas-in-nextjs-39m0</guid>
      <description>&lt;p&gt;Just when I thought I was done with my first SaaS, DebateTrend, coded in Express I decided it would be a great learning experience to recode it entirely in another framework…&lt;/p&gt;

&lt;p&gt;&lt;iframe class="tweet-embed" id="tweet-1855885626337300768-99" src="https://platform.twitter.com/embed/Tweet.html?id=1855885626337300768"&gt;
&lt;/iframe&gt;

  // Detect dark theme
  var iframe = document.getElementById('tweet-1855885626337300768-99');
  if (document.body.className.includes('dark-theme')) {
    iframe.src = "https://platform.twitter.com/embed/Tweet.html?id=1855885626337300768&amp;amp;theme=dark"
  }



&lt;/p&gt;

&lt;p&gt;That’s how my three-week journey with Next.js started. It was one of the best decisions I’ve made as a developer. In fact, I’ve grown to love Next.js so much that I plan to use it for all my future full-stack apps.&lt;/p&gt;

&lt;p&gt;Here’s what I learned and the major changes I made during the transition:&lt;/p&gt;

&lt;p&gt;Quick Overview Of DebateTrend?&lt;br&gt;
First of all, let me explain what my SaaS is about. DebateTrend is a web app, where you can debate with AI on different topics!&lt;br&gt;
You can have multiple debates with different debate styles for different lengths of time!&lt;/p&gt;

&lt;p&gt;Here’s a quick overview of what changed in my tech stack:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Language&lt;/strong&gt;: Javascript -&amp;gt; Typescript&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Framework&lt;/strong&gt;: Express -&amp;gt; Next.js&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Auth&lt;/strong&gt;: PassportJs -&amp;gt; NextAuth&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Front End&lt;/strong&gt;: TailWindCSS, ejs, some regular CSS and DaisyUI -&amp;gt; React, TailWindCSS, mjs, and some regular CSS&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;
  
  
  1. Switching from JavaScript with Ejs to TypeScript and React with MJS
&lt;/h2&gt;

&lt;p&gt;I had never used TypeScript, React, or MJS. This shift completely changed how I think about coding. While coding TypeScript was confusing it gave me more confidence in the code I was writing. Breaking down repeating code into React components helped me think of HTML as reusable code which felt like unlocking a cheat code.&lt;/p&gt;
&lt;h2&gt;
  
  
  2. Authentication Challenges
&lt;/h2&gt;

&lt;p&gt;The struggle with authentication keeps going. It was as painful as ever. I implemented both email and Google authentication but decided to move from Passport to NextAuth. While there was a learning curve, I found that NextAuth integrated better with the Next.js ecosystem and simplified future setups.&lt;/p&gt;
&lt;h2&gt;
  
  
  3. File-Based Routing
&lt;/h2&gt;

&lt;p&gt;One of my favorite parts of working with Next.js was rewriting API endpoints using file-based routing. Unlike code-based routing, file-based routing requires less boilerplate code. It took some getting used to but I would say I enjoyed it more and thus prefer it.&lt;/p&gt;
&lt;h2&gt;
  
  
  4. Database Shenanigans
&lt;/h2&gt;

&lt;p&gt;One of the main reasons I moved to NextJS was because I was getting some weird errors from the DB connections (most likely due to the serverless nature of Vercel) I couldn’t fix the problem even with help from others for more than 2 weeks. I then decided moving to Next would eliminate the problem since it was native to Vercel.&lt;/p&gt;

&lt;p&gt;Needless to say, when it came time to recode my MongoDB implementation I was quite stressed, since if I was still getting the same problem I would have to move the hosting and do dev-ops.&lt;/p&gt;

&lt;p&gt;Interestingly enough my code integrating MongoDB stayed almost identical, yet the problem never showed up again.🤷&lt;/p&gt;
&lt;h2&gt;
  
  
  5. First encounter with ESLint.
&lt;/h2&gt;

&lt;p&gt;Since I was new to NextJS I hadn’t run “npm run build” which makes the application production-ready and activates ESLint powers.&lt;br&gt;
Honestly, I didn’t even know what ESLint was. All I had heard from it were some memes.&lt;/p&gt;

&lt;p&gt;So I ran “npm run build” for the first time right before pushing it to production after 3 weeks of coding and remaking the app…&lt;br&gt;
I had 104 lines of errors.😶 My heart dropped.&lt;/p&gt;

&lt;p&gt;It was an even bigger shock when I managed to knock out all of the errors in just 3 hours. Keep in mind that it was my first time encountering ESLint errors! I’d say I did relatively well!&lt;/p&gt;

&lt;p&gt;Actually, after refactoring my code to be ESLint compatible I genuinely felt like my code was better and that I had become a better developer.&lt;/p&gt;

&lt;p&gt;&lt;iframe class="tweet-embed" id="tweet-1864010548012105742-756" src="https://platform.twitter.com/embed/Tweet.html?id=1864010548012105742"&gt;
&lt;/iframe&gt;

  // Detect dark theme
  var iframe = document.getElementById('tweet-1864010548012105742-756');
  if (document.body.className.includes('dark-theme')) {
    iframe.src = "https://platform.twitter.com/embed/Tweet.html?id=1864010548012105742&amp;amp;theme=dark"
  }



&lt;/p&gt;

&lt;h2&gt;
  
  
  6. SEO kinda
&lt;/h2&gt;

&lt;p&gt;While I didn’t optimize SEO to the fullest capabilities that Next.js has, the transition has opened doors to explore features that are crucial for driving organic traffic.&lt;/p&gt;

&lt;p&gt;For any SaaS aiming to attract users without a massive ad budget, SEO should not be ignored, and Next.js makes it a lot easier.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Next.js has redefined how I think about building full-stack apps. Its efficiency and modern features have made it my go-to framework moving forward. If you’re considering switching frameworks or trying something new, give Next.js a shot!&lt;/p&gt;

&lt;p&gt;Thank you for reading, and best of luck!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>learning</category>
      <category>nextjs</category>
      <category>express</category>
    </item>
    <item>
      <title>My First Encounter With ESLint</title>
      <dc:creator>GeorgiMY</dc:creator>
      <pubDate>Sat, 18 Jan 2025 20:31:53 +0000</pubDate>
      <link>https://forem.com/georgimy/my-first-encounter-with-eslint-5g97</link>
      <guid>https://forem.com/georgimy/my-first-encounter-with-eslint-5g97</guid>
      <description>&lt;p&gt;Just when I wanted to push to production: &lt;strong&gt;104 lines of errors&lt;/strong&gt; that I had never seen before. That's how I met ESLint.&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%2Foi3idcukvblva06mo0wr.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%2Foi3idcukvblva06mo0wr.png" alt="I prefer it with this backgorund, it's not because I am lazy" width="800" height="505"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I had been re-coding my first SaaS, DebateTrend, from Express to Next.js because I thought it would be a good learning experience and I also &lt;br&gt;
wanted to move it to a full-stack framework with more built-in features.&lt;/p&gt;

&lt;p&gt;So after I had re-coded everything I decided there was no better time to move to production. That's exactly what I did. I pushed my code to GitHub expecting everything to go flawlessly and for the magic to happen in Vercel, but…&lt;/p&gt;

&lt;p&gt;"Build failed"&lt;/p&gt;

&lt;p&gt;I was incredibly confused. It ran perfectly fine when I tried it locally (famous last words). After a quick Google search, of the errors I was getting in the logs, I realized that I needed to run some kind of a command.&lt;/p&gt;

&lt;p&gt;Since I was new to Next.js I hadn't run "npm run build" at all. I didn't know that it checks if the application is production-ready and activates ESLint powers.&lt;/p&gt;

&lt;p&gt;Honestly, I didn't even know what ESLint was. All I had heard from it were some memes, from which I got an idea of what it was about.&lt;/p&gt;

&lt;p&gt;So I ran "npm run build" for the first time after 3 weeks of coding and remaking the app…&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;I had 104 lines of errors.&lt;/strong&gt;😶&lt;/p&gt;

&lt;p&gt;My heart dropped.😱&lt;/p&gt;

&lt;p&gt;Imagine my shock when I started googling these issues and finding out most of them were connected to React (a technology I had only started &lt;br&gt;
using the same time I started with Next.js)&lt;/p&gt;

&lt;p&gt;That was my warm introduction to ESLint.&lt;/p&gt;

&lt;p&gt;It was an even bigger shock when I started fixing the issues with the help of StackOverflow and ChatGPT managing to knock out all of the errors in just 3 hours!&lt;br&gt;
Keep in mind that it was my first time encountering ESLint errors! I'd say I did relatively well!&lt;/p&gt;

&lt;p&gt;After refactoring my code to be ESLint compatible I genuinely felt like my code was better and that I had become a better developer.&lt;br&gt;
Here's the article in which I talk about the whole transition from Express to Next.js.&lt;/p&gt;

&lt;p&gt;What was your first experience with ESLint?&lt;/p&gt;

&lt;p&gt;Thank you for your time and good luck on your journey!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>react</category>
      <category>typescript</category>
      <category>beginners</category>
    </item>
  </channel>
</rss>
