<?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: Winner</title>
    <description>The latest articles on DEV Community by Winner (@winnerezy).</description>
    <link>https://dev.to/winnerezy</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%2F2051225%2Fd7ff783a-7f55-4298-bed9-1e5ba77648d3.jpeg</url>
      <title>DEV Community: Winner</title>
      <link>https://dev.to/winnerezy</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/winnerezy"/>
    <language>en</language>
    <item>
      <title>Day 2 of My 2025 Coding Streak: Major Progress on Lyra</title>
      <dc:creator>Winner</dc:creator>
      <pubDate>Thu, 02 Jan 2025 22:59:07 +0000</pubDate>
      <link>https://dev.to/winnerezy/day-2-of-my-2025-coding-streak-major-progress-on-lyra-5d2l</link>
      <guid>https://dev.to/winnerezy/day-2-of-my-2025-coding-streak-major-progress-on-lyra-5d2l</guid>
      <description>&lt;p&gt;The new year has kicked off with incredible momentum, and I am thrilled to share some exciting updates about my coding journey. It’s the second day of my 2025 coding streak, and I’ve made considerable progress on a project that has been my focus for the past three months. Reflecting on last year, I can confidently say it was my prime learning phase. This year, however, is all about creating impactful and useful software.&lt;/p&gt;

&lt;p&gt;The Progress So Far&lt;/p&gt;

&lt;p&gt;On the first day of this year, I tackled a significant challenge in the frontend aspect of my project. It felt great to start the year on such a productive note. Today, I’m even more ecstatic because I resolved a major backend bug that had been a persistent obstacle since I began this journey. Fixing this issue not only felt rewarding but also reinforced my determination to push Lyra closer to completion.&lt;/p&gt;

&lt;p&gt;What is Lyra?&lt;/p&gt;

&lt;p&gt;For those who are curious, Lyra is a PostgreSQL data visualization tool designed to transform raw data into insightful charts and graphs. The goal is to provide developers with an easier and more engaging way to interact with their data. By visualizing their data as charts, Lyra aims to enhance the user experience, making data analysis more intuitive and accessible.&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%2Fgof42gzwxoeb7xc8ce2z.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%2Fgof42gzwxoeb7xc8ce2z.png" alt="Image description" width="800" height="397"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Feel free to join the waitlist for updates on Lyra - &lt;a href="https://tally.so/r/3EB9do" rel="noopener noreferrer"&gt;https://tally.so/r/3EB9do&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Looking Ahead&lt;/p&gt;

&lt;p&gt;This year, my focus is clear: to create meaningful software that solves real problems. Lyra represents this mission, and I’m excited about the potential it holds for developers. With two productive days behind me, I’m eager to see how much more progress I can make as the streak continues.&lt;/p&gt;

&lt;p&gt;Stay tuned for more updates on Lyra and my coding journey!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>programming</category>
      <category>react</category>
    </item>
    <item>
      <title>Node.js vs Django: Choosing the Right Backend Framework</title>
      <dc:creator>Winner</dc:creator>
      <pubDate>Mon, 25 Nov 2024 15:53:25 +0000</pubDate>
      <link>https://dev.to/winnerezy/nodejs-vs-django-choosing-the-right-backend-framework-1fif</link>
      <guid>https://dev.to/winnerezy/nodejs-vs-django-choosing-the-right-backend-framework-1fif</guid>
      <description>&lt;p&gt;When it comes to backend development, two popular frameworks that often come to mind are Node.js and Django. Both have their strengths and weaknesses, and choosing the right one for your project can be a daunting task. In this article, we’ll delve into the details of Node.js and Django, exploring their pros and cons, to help you make an informed decision.&lt;br&gt;
Node.js: The JavaScript Runtime&lt;br&gt;
Node.js is a JavaScript runtime built on Chrome’s V8 engine. It allows developers to run JavaScript on the server-side, making it a popular choice for real-time web applications, microservices, and RESTful APIs.&lt;br&gt;
Pros:&lt;/p&gt;

&lt;p&gt;Fast and Scalable: Node.js is built on a non-blocking, event-driven I/O model, making it incredibly fast and scalable.&lt;br&gt;
 JavaScript Everywhere: With Node.js, you can use JavaScript on both the front-end and back-end, reducing the learning curve and increasing productivity.&lt;br&gt;
 Large Ecosystem: Node.js has a massive ecosystem of packages and modules, making it easy to find libraries and tools for your project.&lt;/p&gt;

&lt;p&gt;Cons:&lt;/p&gt;

&lt;p&gt;Callback Hell: Node.js’s asynchronous nature can lead to “callback hell,” making code harder to read and maintain.&lt;br&gt;
 Error Handling: Node.js’s error handling can be tricky, especially for beginners.&lt;br&gt;
 Limited Multithreading: Node.js is designed for single-threaded applications, which can limit its performance in CPU-intensive tasks.&lt;/p&gt;

&lt;p&gt;const express = require('express');&lt;br&gt;
const bodyParser = require('body-parser');&lt;br&gt;
const app = express();&lt;br&gt;
const port = 3000;&lt;br&gt;
app.use(bodyParser.json());&lt;br&gt;
let users = [&lt;br&gt;
 { id: 1, name: 'John Doe', email: '&lt;a href="mailto:john@example.com"&gt;john@example.com&lt;/a&gt;' },&lt;br&gt;
 { id: 2, name: 'Jane Doe', email: '&lt;a href="mailto:jane@example.com"&gt;jane@example.com&lt;/a&gt;' },&lt;br&gt;
];&lt;br&gt;
// Get all users&lt;br&gt;
app.get('/users', (req, res) =&amp;gt; {&lt;br&gt;
 res.json(users);&lt;br&gt;
});&lt;br&gt;
// Get a user by ID&lt;br&gt;
app.get('/users/:id', (req, res) =&amp;gt; {&lt;br&gt;
 const id = parseInt(req.params.id);&lt;br&gt;
 const user = users.find((user) =&amp;gt; user.id === id);&lt;br&gt;
 if (!user) {&lt;br&gt;
 res.status(404).json({ message: 'User not found' });&lt;br&gt;
 } else {&lt;br&gt;
 res.json(user);&lt;br&gt;
 }&lt;br&gt;
});&lt;br&gt;
// Create a new user&lt;br&gt;
app.post('/users', (req, res) =&amp;gt; {&lt;br&gt;
 const { name, email } = req.body;&lt;br&gt;
 const newUser = { id: users.length + 1, name, email };&lt;br&gt;
 users.push(newUser);&lt;br&gt;
 res.json(newUser);&lt;br&gt;
});&lt;br&gt;
app.listen(port, () =&amp;gt; {&lt;br&gt;
 console.log(&lt;code&gt;Server started on port ${port}&lt;/code&gt;);&lt;br&gt;
});&lt;/p&gt;

&lt;p&gt;Django: The Python Web Framework&lt;br&gt;
Django is a high-level Python web framework that enables rapid development of secure, maintainable, and scalable websites. It provides an architecture, templates, and APIs to build robust web applications.&lt;br&gt;
Pros:&lt;/p&gt;

&lt;p&gt;Rapid Development: Django’s batteries-included approach and extensive libraries make it ideal for rapid prototyping and development.&lt;br&gt;
 Secure: Django provides a robust security framework, protecting your application from common web vulnerabilities.&lt;br&gt;
 Scalable: Django is designed to handle high traffic and large datasets, making it a great choice for complex web applications.&lt;/p&gt;

&lt;p&gt;Cons:&lt;/p&gt;

&lt;p&gt;Steep Learning Curve: Django has a complex architecture and a lot of built-in features, which can be overwhelming for beginners.&lt;br&gt;
 Monolithic: Django is designed as a monolithic framework, which can make it harder to integrate with other services or frameworks.&lt;br&gt;
 Performance: Django’s dynamic typing and overhead can result in slower performance compared to Node.js.&lt;/p&gt;

&lt;p&gt;models.py:&lt;/p&gt;

&lt;p&gt;from django.db import models&lt;/p&gt;

&lt;p&gt;class User(models.Model):&lt;br&gt;
 id = models.AutoField(primary_key=True)&lt;br&gt;
 name = models.CharField(max_length=255)&lt;br&gt;
 email = models.EmailField(unique=True)&lt;/p&gt;

&lt;p&gt;serializers.py:&lt;/p&gt;

&lt;p&gt;from rest_framework import serializers&lt;br&gt;
from .models import User&lt;/p&gt;

&lt;p&gt;class UserSerializer(serializers.ModelSerializer):&lt;br&gt;
 class Meta:&lt;br&gt;
 model = User&lt;br&gt;
 fields = ['id', 'name', 'email']&lt;/p&gt;

&lt;p&gt;views.py:&lt;/p&gt;

&lt;p&gt;from rest_framework import status&lt;br&gt;
from rest_framework.response import Response&lt;br&gt;
from rest_framework.views import APIView&lt;br&gt;
from .models import User&lt;br&gt;
from .serializers import UserSerializer&lt;/p&gt;

&lt;p&gt;class UserListView(APIView):&lt;br&gt;
 def get(self, request):&lt;br&gt;
 users = User.objects.all()&lt;br&gt;
 serializer = UserSerializer(users, many=True)&lt;br&gt;
 return Response(serializer.data)&lt;/p&gt;

&lt;p&gt;def post(self, request):&lt;/p&gt;

&lt;p&gt;serializer = UserSerializer(data=request.data)&lt;br&gt;
 if serializer.is_valid():&lt;br&gt;
 serializer.save()&lt;br&gt;
 return Response(serializer.data, status=status.HTTP_201_CREATED)&lt;br&gt;
 return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)&lt;/p&gt;

&lt;p&gt;urls.py:&lt;/p&gt;

&lt;p&gt;from django.urls import path&lt;br&gt;
from . import views&lt;br&gt;
urlpatterns = [&lt;br&gt;
 path('users/', views.UserListView.as_view()),&lt;br&gt;
]&lt;/p&gt;

&lt;p&gt;Remember, both Node.js and Django are powerful frameworks that can help you build amazing applications. Take the time to explore each option, and choose the one that best fits your needs.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>python</category>
      <category>programming</category>
    </item>
    <item>
      <title>How To Create A Web Server With Node JS</title>
      <dc:creator>Winner</dc:creator>
      <pubDate>Sun, 22 Sep 2024 15:50:14 +0000</pubDate>
      <link>https://dev.to/winnerezy/how-to-create-a-web-server-with-node-js-1p05</link>
      <guid>https://dev.to/winnerezy/how-to-create-a-web-server-with-node-js-1p05</guid>
      <description>&lt;p&gt;Node.js is a powerful JavaScript runtime environment that allows developers to create scalable and efficient web servers. In this guide, we'll walk through the steps to create a simple web server using Node.js.&lt;/p&gt;

&lt;p&gt;Step 1: Create a New Project&lt;/p&gt;

&lt;p&gt;Create a new directory for your project and navigate to it in your terminal/command prompt.&lt;/p&gt;

&lt;p&gt;Bash&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;mkdir my-web-server
cd my-web-server
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Step 2: Create a Server File&lt;/p&gt;

&lt;p&gt;Create a new file called server.js and add the following code:&lt;/p&gt;

&lt;p&gt;JavaScript&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
const http = require('http');

const server = http.createServer((req, res) =&amp;gt; {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello World\n');
});

server.listen(8080, () =&amp;gt; {
  console.log('Server running on port 8080');
});
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Step 3: Require HTTP Module&lt;/p&gt;

&lt;p&gt;The http module is built into Node.js and provides functionality for creating a web server.&lt;/p&gt;

&lt;p&gt;JavaScript&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const http = require('http');
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Step 4: Create Server&lt;/p&gt;

&lt;p&gt;Create a new server instance using the createServer method.&lt;/p&gt;

&lt;p&gt;JavaScript&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const server = http.createServer((req, res) =&amp;gt; {  });
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Step 5: Define Request Handler&lt;/p&gt;

&lt;p&gt;Define a callback function to handle incoming requests.&lt;/p&gt;

&lt;p&gt;JavaScript&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;(req, res) =&amp;gt; {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello World\n');
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Step 6: Listen on Port&lt;/p&gt;

&lt;p&gt;Specify the port number for your server to listen on.&lt;/p&gt;

&lt;p&gt;JavaScript&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;server.listen(3000, () =&amp;gt; {
console.log("Running")l
});
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Step 7: Start Server&lt;/p&gt;

&lt;p&gt;Run your server using Node.js.&lt;/p&gt;

&lt;p&gt;Bash&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;node server.js
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Result&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsr8friibnayvmu2hikvv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsr8friibnayvmu2hikvv.png" alt="Image description" width="" height=""&gt;&lt;/a&gt;&lt;/p&gt;

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