<?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: Ujjwal Jha</title>
    <description>The latest articles on Forem by Ujjwal Jha (@ujj1225).</description>
    <link>https://forem.com/ujj1225</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%2F2146381%2Fe52cd9b0-e919-4939-91d6-1f718e60d4b4.jpeg</url>
      <title>Forem: Ujjwal Jha</title>
      <link>https://forem.com/ujj1225</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/ujj1225"/>
    <language>en</language>
    <item>
      <title>Why I Quit Development to Break Into Cybersecurity</title>
      <dc:creator>Ujjwal Jha</dc:creator>
      <pubDate>Sun, 15 Jun 2025 08:29:13 +0000</pubDate>
      <link>https://forem.com/ujj1225/why-i-quit-development-to-break-into-cybersecurity-1h32</link>
      <guid>https://forem.com/ujj1225/why-i-quit-development-to-break-into-cybersecurity-1h32</guid>
      <description>&lt;p&gt;I started at the terminal with my fingers frozen, time ticking–tic-tic-tic–less than 5 minutes left for my very first Capture The Flag (CTF) challenge, and I had no idea what to do. This was an uncharted territory—a silent challenge which seemed like it was screaming at me asking: ‘Do you have what it takes to exploit this? That’s when it hit me: &lt;strong&gt;I didn’t just want to build apps anymore. I wanted to break them—and maybe defend them.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;But, how did I get here? To know please read into my journey of &lt;strong&gt;how a developer with a safe career decided to risk everything to find his passion in cybersecurity.&lt;/strong&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%2Fmaim5bfz7ge69cpxwro9.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%2Fmaim5bfz7ge69cpxwro9.png" alt="Image description" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This dates back to the time of my graduation where akin to many other students, I, too, was standing in a corridor of uncertainty. In the final semester of my undergraduate studies, like every other guy in the field, I too was doing the same routine development tasks. Well, not my fault—that’s all I knew—that’s all my friends, seniors, and juniors knew. Hell, &lt;strong&gt;that’s all everyone seemed to know&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;And suddenly, someone who always wanted to be different from the crowd, ahead of the curve, found himself amidst it. And the funniest part was that in these 4 years, I had learnt about 56 different subjects ranging from various domains from physical devices to cloud and yet, &lt;strong&gt;at the end of it, all I was doing was building the same cookie-cutter websites, duct-taped together with boilerplate code and AI tools&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Prior to this sem, I was &lt;strong&gt;pretty complacent with myself as doing development got me easy money&lt;/strong&gt;. The easy paychecks were like a drug to me, kept me hooked, kept me working, kept me happy but it all changed on One chilly day, when my batchmates lounged in the sun while debating career paths. "Full-stack," "AI," "blockchain"—the same buzzwords echoed until one friend described his cybersecurity project. I didn’t understand the technical details, but the way he talked about breaking and defending systems &lt;strong&gt;lit a fuse in my brain.&lt;/strong&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%2F3qlyk8v83durlry1aeu1.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%2F3qlyk8v83durlry1aeu1.png" alt="Image description" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I thought, wait, I too should have projects of that sort. Intrinsically rummaging through my mind in hopes of discovering a nice unique project, something different, something awesome but I couldn't strain it out of my mind. Suddenly, the guy who has been unbeaten in 11 hackathons seemed like a regular running behind paychecks. &lt;/p&gt;

&lt;p&gt;His project did sound exciting, interesting and everyone looked at him in awe. I had nothing of that sort. That night, after coming back from college, I threw my backpack on the floor, took out a packet of chips and let myself fall down the Google rabbit hole and what I discovered &lt;strong&gt;split my life into Before CTF and After CTF.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Well, we shall go deep into CTFs, my journey and how I improved on it later but, for now, long story short, I sucked. It was a new territory much like a new game for me, one at which I sucked big time. Yes, that's what the start of this blog referred to. But, yeah it was fun, it was exciting, In fact, I’d go as far as calling it &lt;strong&gt;therapeutic for someone like me who had always found long hours of development (much more of copy pasting) draining.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I messaged that friend, binged THM rooms and sacrificed sleep to long hours of youtube tutorials. Then, as I was approaching the end of my undergrad exams, luck intervened: &lt;strong&gt;Vairav Technology&lt;/strong&gt;, a top-tier cybersecurity company in Nepal, launched a SOC Mentorship Program. I applied, terrified but certain that this was my shot. &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%2Feydvzx0lxor69fbqu8qh.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%2Feydvzx0lxor69fbqu8qh.png" alt="Image description" width="800" height="349"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And as Morgan Housel wrote in The Psychology of Money:&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%2Fuqynfhb5e256296q31bv.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%2Fuqynfhb5e256296q31bv.png" alt="Image description" width="800" height="70"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I’d taken the risk of abandoning a “safe” career in development and Guess what? Luck handed me an opportunity in the form of Vairav's SOC Mentorship which guided my career into this field. &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%2F7owpagr3iu7q9813rgo3.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%2F7owpagr3iu7q9813rgo3.png" alt="Image description" width="800" height="412"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For Anyone Standing at the Edge&lt;br&gt;
If you’re reading this, hesitating then please remember:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Excitement &amp;gt; Stability&lt;/strong&gt; – If cybersecurity makes your brain buzz, run toward it.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Start Small&lt;/strong&gt; – A single TryHackMe room or CTF can change your trajectory.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Find the right people, right community&lt;/strong&gt;– I wouldn’t be here without my amazing friends and mentors. Now, I’m paying it forward.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;And for the ones who haven’t explored the field yet, I’d say: give it a try, mate.&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Lets connect: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.linkedin.com/in/ujjwal-jha-887951259/" rel="noopener noreferrer"&gt;Linkedin&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/Ujj1225" rel="noopener noreferrer"&gt;Github&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>cybersecurity</category>
      <category>career</category>
      <category>security</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Daytona-Sample-React: Text AI</title>
      <dc:creator>Ujjwal Jha</dc:creator>
      <pubDate>Mon, 23 Dec 2024 03:41:06 +0000</pubDate>
      <link>https://forem.com/ujj1225/daytona-sample-react-text-ai-31gg</link>
      <guid>https://forem.com/ujj1225/daytona-sample-react-text-ai-31gg</guid>
      <description>&lt;p&gt;My daytona sample is a React project called Mindsnap-prosemaster-daytona. It is a very simple beginner friendly Application developed using React, Node and AI following the MVC Architecture&lt;/p&gt;

&lt;p&gt;In our fast paced world, no one wants to spend their time configuring stuff, the developers out there want to just get on with it and code it down. Sounds like you? Then, Cheers! you have come to the right place.&lt;/p&gt;

&lt;p&gt;But, wait, we all know that's not how development works. Sadly, Even for the simplest of projects you need to have configuration tools, packages to install, ports to forward, sometimes vpn setup and more. This is where Daytona comes in with its simple yet ground-breaking solution for developers.&lt;/p&gt;

&lt;p&gt;Starting to feel curious, huh?&lt;/p&gt;

&lt;p&gt;In this post, I’ll take you through my journey of building MindSnap ProseMaster—a super beginner-friendly application designed to transform long texts into quick summaries, key insights, and fun mnemonics. &lt;/p&gt;

&lt;p&gt;Let's start with a short intro on how I built this application. I think this was my first application that I built using react and node. It was fairly simple. Now assuming you know how api calls are made this will be fairly easy!&lt;/p&gt;

&lt;p&gt;First, This is a single page application with one Input box where users can enter any text and now using this text and passing a prompt i send it to the gemini api. The response from gemini api is displayed back to the screen.&lt;/p&gt;

&lt;p&gt;So, how did I, a developer who doesn’t know about containers or anything of that sort come to know of daytona?&lt;/p&gt;

&lt;p&gt;Well we will need to thank Quira for this one. Quira’s Quest 023 featured Daytona with a huge pool prize of 6000 USD. As soon as I got to know of it I started skimming through my projects to make submission for the quest! &lt;/p&gt;

&lt;p&gt;I distinctly remember thinking that I should choose a simple project, as a complex one might make it harder to set up a DevContainer for my workspace. But, oh God, I couldn’t have been more wrong.&lt;/p&gt;

&lt;p&gt;I know some of the readers are not familiar with &lt;em&gt;dev container&lt;/em&gt;, &lt;em&gt;workspace&lt;/em&gt;. But, fret not! I have covered them all in this blog so just keep reading and slowly it’ll all come to you.&lt;/p&gt;

&lt;p&gt;In fact let's get started with these terms:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Dev Container&lt;/strong&gt;: A pre-configured environment that contains all the tools and settings needed for development.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Workspace&lt;/strong&gt;: This is a digital space where we can store and organize all the files, code and respective projects we are working on.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Port&lt;/strong&gt;: Let's think of this like a door through which data flows between our development environment and other services or devices.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;PostCreateCommand&lt;/strong&gt;: An important command of devcontainer.json that runs automatically after setting up the development environment. I think this is used to finalize setup tasks.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Using Daytona, I discovered how easy it is to set up and manage development environments, no matter your skill level. Stick around to learn from my experience, and see how Daytona can make your next project smoother and more efficient!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Let's dive in on how I got started&lt;/strong&gt;&lt;br&gt;
I am more of a visual learner! This means rather than reading through long bulky text I like to see videos or images of implementation. So as usual, I did not read the instructions which were really simple and easy to follow. &lt;/p&gt;

&lt;p&gt;Here I'll need to thank  the open source community quira is creating. One of my dear friends whom I met in the community, &lt;strong&gt;K OM&lt;/strong&gt;, offered help. We hoped on a call where he explained 3 simple steps of getting started:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;First navigate to the project and set up a file called ‘.devcontainer/devcontainer.json’&lt;/li&gt;
&lt;li&gt;Generate a devcontainer using dev container generator&lt;/li&gt;
&lt;li&gt;Edit readme to make the users aware and done!&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Is it really that simple? Well the short answer is &lt;em&gt;YES&lt;/em&gt;. But there’s more to this, I like to believe that testing the workspace is a greater part of learning and using daytona.&lt;/p&gt;

&lt;p&gt;What actually motivated me? And What was the most frustrating part in this journey?&lt;br&gt;
The 100 first valid submissions would receive 50 USD each! If this is not a motivating factor for you then I don't know what is.&lt;/p&gt;

&lt;p&gt;Daytona has this featuring saying:&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%2Fdp3urjcin1e0lazks875.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%2Fdp3urjcin1e0lazks875.png" alt="Image description" width="428" height="38"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;But this was the most frustrating part for me. The application was working on my machine but not in the reviewers machine which momentarily led me to the question: Is Daytona Really worth it?&lt;/p&gt;

&lt;p&gt;Haha, now that I think of it. Sounds really funny. I was the one doing wrong configurations and blaming daytona thinking its making false claims.&lt;/p&gt;

&lt;p&gt;Yes, I admit I came for the reward but in all honesty, I stayed for the technology. I endured all those frustrations because I saw what daytona is really capable of.&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;Hence coming to the question, What specific problems did I face? *&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;The first problem that came to me was that the container I generated using AI was throwing a fatal error when trying to create the daytona workspace. &lt;/p&gt;

&lt;p&gt;After I solved that issue, the next one which came to me was that my project was created using vite and it turns out that when this is the case nothing is displayed on the screen. It’ll come as a white blank page. This was a client problem. &lt;/p&gt;

&lt;p&gt;Later, when I fixed that client problem, now my server was not responding. &lt;/p&gt;

&lt;p&gt;When both my client and server started working then I got this CORS issue.&lt;/p&gt;

&lt;p&gt;Finally, I removed the server and directly called the api but then I got an error message while creating the workspace but it’d still open the IDE. Turns out that I had to change my devcontainer.json to match the changes I made in my code.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Solutions and how did I get to them?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Honestly, all of the problems had very simple solutions tied to it. Maybe I would never have figured them out if it hadn't been for the help of the Daytona team, especially &lt;strong&gt;Jafa&lt;/strong&gt;, who patiently reviewed and suggested the necessary changes. He helped me learn more about Daytona, how it works, and why it's the best.&lt;/p&gt;

&lt;p&gt;Some solutions that you might need are: &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;If your project is using Vite then In your package.json you need to specify vite with a host flag. It should look something like this:&lt;br&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%2F65as519rsyxy5fnkiedn.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%2F65as519rsyxy5fnkiedn.png" alt="Image description" width="429" height="43"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;If you have both frontend and backend requirements then you must add the server port as a forwarded port. Should look something like this:&lt;br&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%2Fweir78x9phbcwjofqrd6.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%2Fweir78x9phbcwjofqrd6.png" alt="Image description" width="800" height="73"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;And a final solution to all problems that you may encounter is: ASK. Go join daytona’s slack and tell them about your problem. I am pretty sure you’ll get the help you are looking for. &lt;a href="https://go.daytona.io/slack" rel="noopener noreferrer"&gt;Slack link&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;My Suggestions, Why use Daytona?&lt;/strong&gt;&lt;br&gt;
I’d rather ask why not daytona? It's super simple to use and easy to manage. It ensures you no longer have to go through the complexity of setting up development environments&lt;/p&gt;

&lt;p&gt;With Daytona, you can focus on what’s really important rather than worrying about any of the setup.&lt;/p&gt;

&lt;p&gt;Some of the best features that I feel make Daytona an attractive option for developers are: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Single Command&lt;/strong&gt;:&lt;br&gt;
Launch your entire development environment with just one command. No need to manually set things up—everything’s ready to go instantly.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Runs Everywhere&lt;/strong&gt;:&lt;br&gt;
Whether you’re on your laptop, a remote server, or in the cloud, your development environment works anywhere. It’s completely flexible, so you can work from any machine.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;IDE Support&lt;/strong&gt;:&lt;br&gt;
Seamlessly integrate with popular tools like VS Code and JetBrains. Plus, there’s a built-in web IDE so you can start coding without any setup.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Security&lt;/strong&gt;:&lt;br&gt;
Automatically connects you to your development environment via a secure VPN. This keeps your data safe and ensures you can work securely, even remotely.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These features save time, boost flexibility, and keep the development process smooth and secure. Hey, What more can a developer ask for? It's perfect for developers of all levels.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Honest Feedback!&lt;/strong&gt;&lt;br&gt;
Well, arguing that it's perfect might be a little too far-fetched. &lt;strong&gt;Though I feel it is one of the best in the business, there are certain changes that could actually make user experience better.&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Prebuilt Framework-Specific Templates&lt;/strong&gt;
Yes, I mean Templates, not samples. What's so different between them? I know daytona is collecting samples so that developers can refer to those samples and work on spinning daytona workspace. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But, if daytona provides &lt;strong&gt;ready-to-use-templates&lt;/strong&gt; for some of the popular tech stacks including a pre configured &lt;code&gt;devcontainer.json&lt;/code&gt; file. Something like an interactive setup wizard supporting some templates.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;One-Click Environment Sharing&lt;/strong&gt;
I think Daytona can add a feature to &lt;strong&gt;share development environments&lt;/strong&gt; instantly. Developers can send a link to teammates for collaboration. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Something like &lt;code&gt;daytona share&lt;/code&gt; that will generate a secure link to the environment, accessible via the built-in Web IDE. We can even have live collaboration here like in Google docs.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Maybe an AI powered Troubleshooter&lt;/strong&gt; 
I thought of this because many projects were stuck on very simple things like misconfigured ports, dependency mismatches, etc. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Again, these are my thoughts on what could make it better!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Takeaway:&lt;/strong&gt;&lt;br&gt;
The simple saying; don't judge a book by its cover. Daytona is way more than what I described and you’ll never find out unless you try. So what are you waiting for? Try now!&lt;/p&gt;

&lt;p&gt;And one last thing before I see you off: I’d like to extend my deepest gratitude to the entire Quira and Daytona team for coming up with this. Kudos!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/Ujj1225/MindSnap-ProseMaster-daytona" rel="noopener noreferrer"&gt;&lt;strong&gt;Github link to my project&lt;/strong&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://github.com/daytonaio/daytona" rel="noopener noreferrer"&gt;&lt;strong&gt;Github link of daytona&lt;/strong&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://quira.sh/quests/creator/submissions?questId=23" rel="noopener noreferrer"&gt;&lt;strong&gt;Link to Daytona Quest&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>daytona</category>
      <category>opensource</category>
      <category>javascript</category>
      <category>gemini</category>
    </item>
    <item>
      <title>Floyd's Tortoise and Hare Algorithm</title>
      <dc:creator>Ujjwal Jha</dc:creator>
      <pubDate>Thu, 21 Nov 2024 00:18:50 +0000</pubDate>
      <link>https://forem.com/ujj1225/floyds-tortoise-and-hare-algorithm-17gf</link>
      <guid>https://forem.com/ujj1225/floyds-tortoise-and-hare-algorithm-17gf</guid>
      <description>&lt;p&gt;An interesting algorithm used to detect cycles in linked lists. Well, it really isn't limited to that but used primarily for the cycle detection. &lt;/p&gt;

&lt;p&gt;Today was my first step back into DSA after the holidays, and this was the first problem I encountered. Without going much into the details of the question, I'll tell you what it was. &lt;/p&gt;

&lt;p&gt;So basically a linked list was provided to me and it asked to check if the list contained a cycle. If yes return 1 else 0&lt;/p&gt;

&lt;p&gt;Initially I wasn't aware of this algorithm so as anyone would, I used an old school approach where I maintained track of the visited nodes. If the already visited nodes came while traversing the list then i would return 1 else 0. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Coding implementation&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;def has_cycle(head):&lt;br&gt;
    visited = []&lt;br&gt;
    current = head&lt;br&gt;
    while current is not None:&lt;br&gt;
        if current in visited:&lt;br&gt;
            return 1&lt;br&gt;
        visited.append(current)&lt;br&gt;
        current = current.next&lt;br&gt;
    return 0&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Well this was fine and all but after submitting my solution when I looked at the discussion section. I saw people talking about this algorithm. Then, After some research I got the hang of it. &lt;/p&gt;

&lt;p&gt;Here, we maintain two pointers a slow and a fast pointer. Slow pointer metaphorically is the tortoise which moves one step at a time and the fast pointer metaphorically the hare is the one which moves two step at a time. &lt;/p&gt;

&lt;p&gt;We exit the loop if our hare reaches the end, it signifies that no loop was present else its impossible for the hare to reach the end. &lt;/p&gt;

&lt;p&gt;In case there is a point where hare and tortoise come back together even though their speed differs then it signifies that there was a loop which sent hare back. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Coding implementation&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;def has_cycle(head):&lt;br&gt;
    slow = head&lt;br&gt;
    fast = head&lt;br&gt;
    while fast and fast.next:&lt;br&gt;
        slow = slow.next&lt;br&gt;
        fast = fast.next.next&lt;br&gt;
        if slow == fast:&lt;br&gt;
            return 1&lt;br&gt;
    return 0&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;If you want to try out the question yourself, Here is the link: &lt;a href="https://www.hackerrank.com/challenges/detect-whether-a-linked-list-contains-a-cycle/problem" rel="noopener noreferrer"&gt;Cycle-Detection&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You might wonder except for cycle detection where else can it be used. Here are some use cases where you'll find this algorithm to be a life savior:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Finding Middle Element of the list&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Finding the Start of a cycle &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Finding repeated pattern in sequences&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Optimizing iterative process&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Want to learn more about how we can use this algorithm for these cases? Let's connect!&lt;/p&gt;

</description>
      <category>dsa</category>
      <category>programming</category>
      <category>algorithms</category>
      <category>100daysofcode</category>
    </item>
    <item>
      <title>Revolutionizing Research with PaperPal: AI-Powered Summarization &amp; Q&amp;A Tool for Researchers</title>
      <dc:creator>Ujjwal Jha</dc:creator>
      <pubDate>Mon, 30 Sep 2024 11:43:12 +0000</pubDate>
      <link>https://forem.com/ujj1225/revolutionizing-research-with-paperpal-ai-powered-summarization-qa-tool-for-researchers-4beb</link>
      <guid>https://forem.com/ujj1225/revolutionizing-research-with-paperpal-ai-powered-summarization-qa-tool-for-researchers-4beb</guid>
      <description>&lt;p&gt;Ever felt overwhelmed while reading a ton of research papers? If so, PaperPal is here to help.&lt;br&gt;
PaperPal is an AI driven tool for *&lt;em&gt;summarizing research papers and answering related research questions. *&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;This is a tool tailored for students and researchers who want to simplify the research process i.e consuming a lot of research in a very short amount of time. &lt;/p&gt;

&lt;h2&gt;
  
  
  Making of PaperPal
&lt;/h2&gt;

&lt;p&gt;During the Initial planning phase of PaperPal, I thought of using ChatGpt to power the application. I had used this in my previous projects so I thought this was a good idea. But sadly, it turns out that Gpt no longer provides credits for testing. &lt;/p&gt;

&lt;p&gt;Then, After some research on Anthropic and Mistral AI, I went on to LLAMA. This was the great moment of realization for PaperPal. Though, I faced a lot of challenges like:&lt;/p&gt;

&lt;p&gt;1.Not having access to llama-3 models &lt;br&gt;
2.Not knowing about huggingface_hub and login it requires &lt;br&gt;
3.Even after logging it threw an error that I was trying to access a gated repo.&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%2Fsxzs2guw748nnzi1a91b.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%2Fsxzs2guw748nnzi1a91b.png" alt="Image description" width="800" height="56"&gt;&lt;/a&gt;&lt;br&gt;
4.Then after taking a look around to see if there was another way of doing this, I found hugging face Api Inference. This is the very snippet that guided me on how to make it work.&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%2F1e0qbl1wnzyxfnlsylq6.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%2F1e0qbl1wnzyxfnlsylq6.png" alt="Image description" width="800" height="346"&gt;&lt;/a&gt;&lt;br&gt;
5.A moment of breakthrough I must say because using models has never been this easy. This was my version of implementation.&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%2Fx94t7o0988dmyjoe5ajc.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%2Fx94t7o0988dmyjoe5ajc.png" alt="Image description" width="775" height="719"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Why did I face this Problem and How can people like me avoid this and make the most of such models?
&lt;/h2&gt;

&lt;p&gt;Well, in all honesty, I faced this issue because I am more of a Visual Learner. Someone who learns more from Images, Videos rather than long boring texts. I was trying to figure it out on my own without relying on available relevant documentation. Due to this, even easy answers came to me through a hard route. &lt;/p&gt;

&lt;p&gt;If you are someone like me, all I can advise is “Read the Docs”. That's all there is to it. The more you read the easier it becomes. &lt;/p&gt;

&lt;p&gt;This tool comes with &lt;strong&gt;three primary functions&lt;/strong&gt;: &lt;br&gt;
1.Research Paper Summarization.&lt;br&gt;
2.QnA related to the Research &lt;br&gt;
3.Translation of Research to other languages for multilingual support&lt;/p&gt;

&lt;h3&gt;
  
  
  Problems in Current System
&lt;/h3&gt;

&lt;p&gt;1.Time Consuming Research &lt;br&gt;
2.Difficulty in extracting key insights &lt;br&gt;
3.General Answers to paper related questions&lt;/p&gt;

&lt;h3&gt;
  
  
  Solution by PaperPal
&lt;/h3&gt;

&lt;p&gt;1.Automated Summarization &lt;br&gt;
2.Focused Insight Extraction&lt;br&gt;
3.Research specific QnA&lt;/p&gt;

&lt;h2&gt;
  
  
  Feasibility of PaperPal
&lt;/h2&gt;

&lt;p&gt;There are certain studies and tools that clearly show how feasible and important tools like PaperPal are in the market. Here are two examples:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Genei's AI for Research Summarization&lt;/strong&gt;: An AI tool, Genei, offers summarization and question-answering capabilities, demonstrates that 95% of its users find it enhances their research productivity.&lt;a href="https://www.genei.io/" rel="noopener noreferrer"&gt;Link&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AI in Research Paper Summarization and Accessibility&lt;/strong&gt;: A study published in Nature explores the potential of AI tools to mass-produce lay summaries of research articles, helping bridge the gap between complex scientific content and broader readerships.&lt;a href="https://www.nature.com/articles/d41586-024-00865-4" rel="noopener noreferrer"&gt;Link&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Advantage of LLAMA over other models
&lt;/h2&gt;

&lt;p&gt;While building this project, I observed some of the advantages of using LLAMA over other models like ChatGPT, Anthropic, and Mistral AI. Some of them are listed below:&lt;/p&gt;

&lt;p&gt;1.LLAMA is an open-source model. While models like ChatGPT, Anthropic, Mistral AI offered free trials with limited access to the API, they often required a minimum credit balance even for limited access. On the other hand, LLAMA models that I have used such as facebook/nllb-200-distilled-600M and TinyLlama allowed access without any credit balance requirement and offered better customization and flexibility.&lt;/p&gt;

&lt;p&gt;2.LLAMA allows us to fine-tune the model based on our requirements to perform specific tasks such as translation, chats, etc.&lt;/p&gt;

&lt;p&gt;3.LLAMA offers better data privacy than other commercial models such as ChatGPT, Anthropic, Mistral AI, etc. The commercial models often collect user inputs and analyse them in order to improve their performance, raising the concerns over data privacy.&lt;/p&gt;

&lt;h2&gt;
  
  
  STRUCTURE OF PAPERPAL
&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%2Fm7kpl3ii1nfff70jloj8.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%2Fm7kpl3ii1nfff70jloj8.png" alt="Image description" width="426" height="727"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  USED MODELS
&lt;/h3&gt;

&lt;p&gt;For PaperPal, I used two specific models for chat and translation, chosen for their effectiveness and suitability for these roles.&lt;br&gt;
1.&lt;strong&gt;TinyLlama-1.1B-Chat-v1.0&lt;/strong&gt;: This model is perfect for the chat functionality because of its ability to handle conversational queries efficiently. Despite being lightweight compared to other models, it delivers fast responses without compromising the quality of the generated text. It’s also highly customizable, which allowed me to fine-tune it to better answer research-specific questions and offer more targeted insights during the Q&amp;amp;A process.&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%2Fys7gv1kls8xxran02xp4.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%2Fys7gv1kls8xxran02xp4.png" alt="Image description" width="570" height="185"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;2.&lt;strong&gt;facebook/nllb-200-distilled-600M&lt;/strong&gt;: For the translation feature, this model excels because it supports over 200 languages with strong multilingual translation abilities. It's designed specifically for efficient and high-quality translations, making it ideal for researchers who need to read papers in different languages. The model’s distilled version provides faster translations with minimal resources, making it both practical and scalable.&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%2Fs18fzpmx3od1d76ycz9z.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%2Fs18fzpmx3od1d76ycz9z.png" alt="Image description" width="456" height="152"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Both models strike a balance between performance and resource efficiency, which makes them perfect for handling the core tasks in PaperPal.&lt;/p&gt;

&lt;h2&gt;
  
  
  CONCLUSION
&lt;/h2&gt;

&lt;p&gt;The PaperPal project successfully utilizes the capabilities of the given models to provide user with automated summarization and translation of research articles thereby enhancing the accessibility of research. &lt;/p&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>ai</category>
      <category>llama</category>
    </item>
  </channel>
</rss>
