<?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: Wojciech Lepczyński</title>
    <description>The latest articles on DEV Community by Wojciech Lepczyński (@wlepczynski).</description>
    <link>https://dev.to/wlepczynski</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%2F831244%2Fa94b84b0-d3d9-45b4-b03f-4b4b079a4929.jpg</url>
      <title>DEV Community: Wojciech Lepczyński</title>
      <link>https://dev.to/wlepczynski</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/wlepczynski"/>
    <language>en</language>
    <item>
      <title>How I Turned an Old Phone into a Linux Server</title>
      <dc:creator>Wojciech Lepczyński</dc:creator>
      <pubDate>Mon, 03 Nov 2025 18:28:28 +0000</pubDate>
      <link>https://dev.to/wlepczynski/how-i-turned-an-old-phone-into-a-linux-server-5f3g</link>
      <guid>https://dev.to/wlepczynski/how-i-turned-an-old-phone-into-a-linux-server-5f3g</guid>
      <description>&lt;p&gt;So, I had a few old Android phones lying around, too slow for everyday use but still perfectly functional. Instead of letting them collect dust, I wondered: could I turn one into something useful?&lt;/p&gt;

&lt;p&gt;That’s how I ended up transforming an old smartphone into a tiny Linux server and testing environment.&lt;/p&gt;

&lt;p&gt;The setup was surprisingly easy. Installing Termux or UserLAnd directly from the App Store takes just a few taps — no rooting, no complicated setup, nothing extra needed. Within minutes, I had a working Linux shell running on my phone, ready for experiments.&lt;/p&gt;

&lt;p&gt;

  &lt;iframe src="https://www.youtube.com/embed/WrPzK5033q4"&gt;
  &lt;/iframe&gt;


&lt;/p&gt;

&lt;p&gt;What’s amazing is how capable these old devices still are. Once I connected a keyboard and a monitor, the phone suddenly felt like a real mini-PC. I could use SSH, run small scripts, host files, even test code — all on a device that used to sit forgotten in a drawer.&lt;/p&gt;

&lt;p&gt;Sure, it’s not the fastest system in the world, but it works. And if you prefer something more storage-focused, turning an old phone into a mini NAS (Network Attached Storage) is another really fun project worth exploring.&lt;/p&gt;

&lt;p&gt;

  &lt;iframe src="https://www.youtube.com/embed/i2IL_im7B5c"&gt;
  &lt;/iframe&gt;


&lt;/p&gt;

&lt;p&gt;If you’re curious how I did it — from connecting peripherals to setting up the environment — you can watch the full process in my latest video. And if you like projects that give new life to old tech, you’ll find more like this on my YouTube channel.&lt;/p&gt;

</description>
      <category>linux</category>
      <category>nas</category>
      <category>developer</category>
    </item>
    <item>
      <title>How I Built a Wireless Weather Station with an E-Paper Display</title>
      <dc:creator>Wojciech Lepczyński</dc:creator>
      <pubDate>Mon, 03 Nov 2025 18:05:07 +0000</pubDate>
      <link>https://dev.to/wlepczynski/how-i-built-a-wireless-weather-station-with-an-e-paper-display-24mh</link>
      <guid>https://dev.to/wlepczynski/how-i-built-a-wireless-weather-station-with-an-e-paper-display-24mh</guid>
      <description>&lt;p&gt;A few weeks ago, I got my hands on a 5.79″ e-paper display powered by an ESP32. It looked like a simple screen at first — thin, minimal, and a bit mysterious — but once I realized it had Wi-Fi built in, my first thought was: this could become a weather station.&lt;/p&gt;

&lt;p&gt;

  &lt;iframe src="https://www.youtube.com/embed/LCe-pZzVj8M"&gt;
  &lt;/iframe&gt;


&lt;/p&gt;

&lt;p&gt;I’ve always liked the idea of having a display that shows useful information without drawing attention to itself. Something that blends in quietly — no glowing backlight, no constant flicker — just clear, sharp information that feels like reading paper. That’s exactly what e-paper does. It only consumes energy when refreshing the screen, and once it shows an image, it stays there even after you unplug it. It’s almost magical.&lt;/p&gt;

&lt;p&gt;So I started experimenting. I connected the display, wrote a few lines of code, and pointed it to the OpenWeather API to grab live weather data. The moment it connected to Wi-Fi and the first temperature reading appeared, I knew this was going to be something special.&lt;/p&gt;

&lt;p&gt;What surprised me most was how effortless it felt. No Raspberry Pi, no external controller — everything runs directly on the ESP32 inside the display. One small device handles Wi-Fi, API requests, data parsing, and updates the screen.&lt;/p&gt;

&lt;p&gt;When it all came together, I had a minimalist weather station that updates automatically and uses almost no power. It sits quietly on my desk, showing current conditions — temperature, humidity, wind, and an icon for the weather. Even if I disconnect it from power, the image stays visible.&lt;/p&gt;

&lt;p&gt;That’s the beauty of e-paper: it feels permanent, even though it’s digital.&lt;/p&gt;

&lt;p&gt;This little project reminded me how versatile the ESP32 really is. You can turn an e-paper screen like this into almost anything — a smart home dashboard, a calendar, a crypto price monitor, or an e-ink to-do list. I presented some of them in a &lt;a href="https://youtube.com/shorts/d30ajaU9GcU?si=iyiW4GljW0TDbIG6" rel="noopener noreferrer"&gt;short video&lt;/a&gt;. The possibilities are endless once you realize how little power it needs.&lt;/p&gt;

&lt;p&gt;If you’d like to see how I built it — from unboxing the display to setting it up and uploading the code — I recorded the whole process. You’ll find all the steps and details in &lt;a href="https://youtu.be/LCe-pZzVj8M" rel="noopener noreferrer"&gt;my latest video &lt;/a&gt;.&lt;/p&gt;

</description>
      <category>iot</category>
      <category>esp32</category>
    </item>
    <item>
      <title>Turn Your Wi-Fi Router and a USB Stick into a NAS</title>
      <dc:creator>Wojciech Lepczyński</dc:creator>
      <pubDate>Mon, 18 Aug 2025 06:10:12 +0000</pubDate>
      <link>https://dev.to/wlepczynski/turn-your-wi-fi-router-and-a-usb-stick-into-a-nas-592f</link>
      <guid>https://dev.to/wlepczynski/turn-your-wi-fi-router-and-a-usb-stick-into-a-nas-592f</guid>
      <description>&lt;p&gt;You don’t need expensive hardware to have your own network storage.&lt;br&gt;
In fact, you can build a simple NAS (Network Attached Storage) with just a Wi-Fi router and a regular USB stick you probably have lying around.&lt;/p&gt;

&lt;p&gt;And here’s the best part: in my latest YouTube video, I show the entire process plus an extra crazy trick where I turn an old Android phone into a fully functional file server.&lt;/p&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/i2IL_im7B5c"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  What You’ll Need
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;A Wi-Fi router with a USB port (check your model’s manual or the sticker on the back).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A USB stick or an external USB hard drive.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Access to your router’s configuration page (via a web browser).&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Step-by-Step Guide
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Plug the USB Stick into Your Router&lt;br&gt;
Locate the USB port on your router — it’s usually on the back.&lt;br&gt;
Insert your USB stick (or an external HDD) into it.&lt;br&gt;
Note: If you want to connect a hard drive, make sure you have enough power to power it, otherwise you will probably need to use an additional power supply or a USB HUB.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Access the Router’s Control Panel&lt;br&gt;
On your computer, open a web browser and type your router’s IP address.&lt;br&gt;
This is often 192.168.0.1 or 192.168.1.1 (check your router’s label).&lt;br&gt;
Log in with your admin username and password.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Enable the NAS/File Sharing Feature&lt;br&gt;
Every router is different, but look for settings called:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;USB Storage&lt;/li&gt;
&lt;li&gt;File Sharing&lt;/li&gt;
&lt;li&gt;Samba/SMB&lt;/li&gt;
&lt;li&gt;FTP Server&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Enable the feature, and if possible, set a username and password for security.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Connect from Your Devices&lt;br&gt;
Once enabled, your USB stick will appear as a network drive on devices connected to the same Wi-Fi network. &lt;br&gt;
On Windows, open File Explorer and type Your router's IP address and the name of the shared resource&lt;/p&gt;&lt;/li&gt;
&lt;/ol&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%2F7kmfvckuwwxsnjer3f6h.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%2F7kmfvckuwwxsnjer3f6h.jpg" alt="NAS from USB and router"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Why This Works
&lt;/h2&gt;

&lt;p&gt;Many modern routers include a small file-sharing server built-in.&lt;br&gt;
By using this feature, your USB stick becomes shared storage that’s always available to anyone on your home network — just like a traditional NAS.&lt;/p&gt;

&lt;h2&gt;
  
  
  Want More Crazy Storage Hacks?
&lt;/h2&gt;

&lt;p&gt;If you think this is cool, you’ll love the bonus in my YouTube video where I also turn an old Android phone into a network file server no extra PC needed.&lt;br&gt;
Watch the full process here: &lt;a href="https://www.youtube.com/watch?v=i2IL_im7B5c" rel="noopener noreferrer"&gt;NAS From Trash: Phone &amp;amp; USB stick as file server&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>network</category>
      <category>diy</category>
      <category>nas</category>
      <category>beginners</category>
    </item>
    <item>
      <title>My Private AI Assistant: No More Privacy Worries</title>
      <dc:creator>Wojciech Lepczyński</dc:creator>
      <pubDate>Mon, 04 Aug 2025 06:16:22 +0000</pubDate>
      <link>https://dev.to/wlepczynski/my-private-ai-assistant-no-more-privacy-worries-57c</link>
      <guid>https://dev.to/wlepczynski/my-private-ai-assistant-no-more-privacy-worries-57c</guid>
      <description>&lt;p&gt;Are you tired of AI assistants that send your every query to a massive cloud server, leaving you to wonder what happens to your data? The lack of privacy and control was a huge frustration for me, so I decided to do something about it. I built a completely local AI assistant that runs on my desk, is powered by Ollama from my old Laptop, and never, ever sends my information to the cloud. This is a story about taking back control of my personal data.&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%2F2lp11d55ceebnae3o3ab.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%2F2lp11d55ceebnae3o3ab.png" alt="CrowPanel AI Assistant screen"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The 'Why' Behind the Build: Taking Back My Data
&lt;/h2&gt;

&lt;p&gt;In a world where almost every smart device is connected to the internet and constantly transmitting data, the idea of a truly private assistant seemed like a dream. But it doesn't have to be. I wanted a personal AI that was fast, secure, and most importantly, private. By building a self-contained system, I could guarantee that all my conversations and requests would stay within my own network. This project is a testament to the power of local-first technology and the freedom it offers.&lt;/p&gt;

&lt;h2&gt;
  
  
  How It Works: A Simple, Private Setup
&lt;/h2&gt;

&lt;p&gt;The heart of the project is the CrowPanel Advance, a compact and versatile device with esp32 that serves as the assistant's user interface. It's connected via WiFi to a dedicated AI server that I set up on an old laptop, which runs the Ollama software. This is the magic part: Ollama allows me to run powerful large language models locally, so all the processing happens right there.&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%2Fgoh64ymzph2p8mj8utix.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%2Fgoh64ymzph2p8mj8utix.jpg" alt="CrowPanel AI network API connection"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The CrowPanel simply sends a request to my private server, which processes it and returns a response. The entire conversation remains on my private network. It’s safe, it's local, and it’s a brilliant example of what you can do with a little hardware and a lot of imagination. Oh, and its best feature? It can tell unique jokes whenever it's bored, and it's often bored! 🤣&lt;/p&gt;

&lt;h2&gt;
  
  
  What's Next? Stage 2 and Beyond
&lt;/h2&gt;

&lt;p&gt;This is just the beginning. This first stage focused on building the core functionality and proving that a private, local AI assistant is not only possible but also practical and fun. For the next phase, I have big plans:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A full graphical user interface (GUI): To make the assistant even more intuitive and user-friendly.&lt;/li&gt;
&lt;li&gt;Text-to-speech (TTS): To give the assistant a voice and make interactions more natural and hands-free.&lt;/li&gt;
&lt;li&gt;And more! The possibilities are endless.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you’re curious about how I built this system and want to follow along as the project evolves, you have to watch the video. &lt;br&gt;
  &lt;iframe src="https://www.youtube.com/embed/YXOzE8Rg--g"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>programming</category>
      <category>ai</category>
      <category>esp32</category>
      <category>machinelearning</category>
    </item>
    <item>
      <title>Raspberry Pi Cooling: Does Fan Direction Matter? I Put It to the Test</title>
      <dc:creator>Wojciech Lepczyński</dc:creator>
      <pubDate>Thu, 17 Jul 2025 15:50:31 +0000</pubDate>
      <link>https://dev.to/wlepczynski/raspberry-pi-cooling-does-fan-direction-matter-i-put-it-to-the-test-4ihl</link>
      <guid>https://dev.to/wlepczynski/raspberry-pi-cooling-does-fan-direction-matter-i-put-it-to-the-test-4ihl</guid>
      <description>&lt;p&gt;If you’ve ever wondered whether pushing air into your device is more effective than pulling hot air out, or if a bigger fan really means better cooling, then you’re in the right place.&lt;/p&gt;

&lt;p&gt;I recently ran a series of cooling experiments using a Raspberry Pi 3. While my setup was Pi-specific, the findings could easily apply to other compact devices like mini PCs, routers, or other devices.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why test cooling at all?
&lt;/h2&gt;

&lt;p&gt;Tiny computers like the Raspberry Pi tend to heat up fast under heavy workloads—think compiling code, emulation, web browsing, or running as a server. Even if they don’t hit dangerous temperatures right away, sustained heat can lead to thermal throttling and even reduce the lifespan of components.&lt;/p&gt;

&lt;p&gt;So I started wondering what is the most effective way to cool this type of device and does the direction of fan rotation really matter?&lt;/p&gt;

&lt;p&gt;Test #1: Fan Orientation &lt;br&gt;
I began with a 5V medium-sized fan I had lying around—larger than the typical ones bundled with basic cooling kits. I wrote a small script to simulate a heavy CPU load, monitor the temperature every few seconds, and log it to a CSV file for graphing.&lt;/p&gt;

&lt;p&gt;🔹 Blowing air in:&lt;br&gt;
Starting at 45°C, the CPU temperature dropped steadily to around 36°C after 5 minutes. A solid result.&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%2Fywgqxr4e65qz70n48yu1.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%2Fywgqxr4e65qz70n48yu1.jpg" alt="Raspberry pi air"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;🔹 Pulling air out:&lt;br&gt;
Same test conditions, same fan—but this time configured to extract hot air. The final temperature hovered just under 39°C, clearly less effective.&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%2F2pwdpy3bgmrr3ulr0a7k.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%2F2pwdpy3bgmrr3ulr0a7k.jpg" alt="Raspberry pi air"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Takeaway: If you’ve only got one fan, using it to push cool air into the case works better than trying to suck warm air out.&lt;/p&gt;

&lt;p&gt;Test #2: Comparing Fan Sizes and Types&lt;br&gt;
Next, I tried a variety of fans I had on hand, all under the same conditions: starting at 45°C, 5 minutes of stress, measuring the results.&lt;/p&gt;

&lt;p&gt;🔹 Small 5V fan:&lt;br&gt;
Quiet but underwhelming. It only brought temps down to just under 41°C.&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%2F8n55mog1azw57iwgkrxf.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%2F8n55mog1azw57iwgkrxf.jpg" alt="Raspberry pi Small 5V fan"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;🔹 Laptop cooling fan:&lt;br&gt;
Compact and thin, yet surprisingly powerful. When aimed directly at the heatsink, it cooled the Pi to nearly 36°C—but it was fairly noisy.&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%2F3n0pyam5s3lz06wwpsd5.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%2F3n0pyam5s3lz06wwpsd5.jpg" alt="Raspberry pi Laptop cooling fann"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;🔹 Large 12V PC fan (powered by 5V):&lt;br&gt;
Barely audible, but the lower voltage meant it spun too slowly. The result? A modest drop to below 40°C—not terrible, but not impressive either.&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%2Fbcr0q6sqtzk3otwunntk.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%2Fbcr0q6sqtzk3otwunntk.jpg" alt="Raspberry pi Large 12V PC fan"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;The best results came from the medium 5V fan and the laptop fan—both used to blow air inward.&lt;/p&gt;

&lt;p&gt;If you’re after a silent setup, the small 5V and underpowered 12V fans are your best bet, but you’ll be trading off a few degrees of cooling.&lt;/p&gt;

&lt;p&gt;Overall, drawing air in was consistently better than pulling it out—at least when using a single fan.&lt;/p&gt;

&lt;p&gt;As always, it’s a balance between noise and cooling efficiency. If your Raspberry Pi is running right next to you all day, go for a quieter option. If it’s tucked away in a server cabinet somewhere, prioritize performance.&lt;/p&gt;

&lt;p&gt;🎥 Want to see all the data in action?&lt;br&gt;
In the video linked below, I walk through each test step-by-step, show real-time temperature graphs, and demonstrate how each fan performed.&lt;/p&gt;

&lt;p&gt;Watch: &lt;a href="https://youtu.be/QS0EmZYutcg" rel="noopener noreferrer"&gt;"Blow In or Pull Out? I Tested 4 Fans on a Raspberry Pi"&lt;/a&gt;&lt;br&gt;
  &lt;iframe src="https://www.youtube.com/embed/QS0EmZYutcg"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>iot</category>
      <category>raspberrypi</category>
      <category>beginners</category>
    </item>
    <item>
      <title>How I Built a Retro Snake Game with AI in Under 5min</title>
      <dc:creator>Wojciech Lepczyński</dc:creator>
      <pubDate>Mon, 07 Jul 2025 16:21:04 +0000</pubDate>
      <link>https://dev.to/aws-builders/how-i-built-a-retro-snake-game-with-ai-in-under-5min-4pn3</link>
      <guid>https://dev.to/aws-builders/how-i-built-a-retro-snake-game-with-ai-in-under-5min-4pn3</guid>
      <description>&lt;p&gt;Have you ever wanted to create a game but didn’t know how to code? Thanks to Amazon Q Developer CLI, you can now build a game like Snake in just a few minutes using only natural language.&lt;/p&gt;

&lt;p&gt;As part of the Build Games Challenge by AWS, I made a Snake-style game where you collect AWS icons instead of apples. No manual coding. Just prompts.&lt;/p&gt;




&lt;h2&gt;
  
  
  Watch the Process:
&lt;/h2&gt;

&lt;p&gt;👉 &lt;a href="https://www.youtube.com/watch?v=1BcahTxvRww" rel="noopener noreferrer"&gt;How to Build the Game with Amazon Q Developer – Full Video &lt;/a&gt;&lt;/p&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/1BcahTxvRww"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;




&lt;p&gt;👉 &lt;a href="https://www.youtube.com/watch?v=gYqFB1N-jgU" rel="noopener noreferrer"&gt;Installing Amazon Q on Windows – Setup Guide&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/1BcahTxvRww"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;




&lt;h2&gt;
  
  
  What I Used:
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Amazon Q Developer CLI (free with AWS Builder ID)&lt;/li&gt;
&lt;li&gt;PyGame (for rendering Snake-style movement)&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Access the Code on GitHub
&lt;/h2&gt;

&lt;p&gt;I’ve published the full source code of my AWS Snake game on GitHub. Feel free to explore, and customize it!&lt;/p&gt;

&lt;p&gt;👉 &lt;a href="https://github.com/lepczynski-cloud/aws_snake_game" rel="noopener noreferrer"&gt;https://github.com/lepczynski-cloud/aws_snake_game&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Why I Chose Snake
&lt;/h2&gt;

&lt;p&gt;Snake is simple to understand, quick to implement, and easy to adapt. It was the perfect fit for testing how far I could go using only conversational prompts in Amazon Q.&lt;/p&gt;

&lt;p&gt;I also liked the idea of mixing nostalgia with cloud-native fun chasing down AWS icons is oddly satisfying.&lt;/p&gt;




&lt;h2&gt;
  
  
  What I Learned
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Prompting matters. Describing behavior clearly to Q gives you better code.&lt;/li&gt;
&lt;li&gt;Q handles repetitive logic brilliantly, like movement loops and collision detection.&lt;/li&gt;
&lt;li&gt;It’s easy to iterate: “Add a score counter”, “change the icon to S3”, or “make the snake go faster after 10 points” — Q just gets it done.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Summary
&lt;/h2&gt;

&lt;p&gt;If you’ve ever wanted to build a game but felt overwhelmed by code this challenge is made for you. With Q Developer CLI, you don’t need to be an expert. You just need an idea… and a little creativity.&lt;/p&gt;

&lt;p&gt;Share what you've built in the comments 🚀&lt;/p&gt;

</description>
      <category>amazonqdevcli</category>
      <category>buildgameschallenge</category>
      <category>programming</category>
      <category>ai</category>
    </item>
    <item>
      <title>Cheap VPN with MFA from Home to AWS</title>
      <dc:creator>Wojciech Lepczyński</dc:creator>
      <pubDate>Wed, 13 Nov 2024 12:10:53 +0000</pubDate>
      <link>https://dev.to/aws-builders/cheap-vpn-with-mfa-from-home-to-aws-2b3b</link>
      <guid>https://dev.to/aws-builders/cheap-vpn-with-mfa-from-home-to-aws-2b3b</guid>
      <description>&lt;p&gt;&lt;strong&gt;An EC2-based VPN&lt;/strong&gt; is essentially a custom VPN server that runs on an EC2 instance. By using a preconfigured AMI from the AWS Marketplace, the setup process becomes incredibly simple, even for those with limited technical knowledge. This approach gives you full control over the VPN configuration, while avoiding the pay-per-user costs common with AWS’s managed VPN solutions.&lt;/p&gt;

&lt;p&gt;An EC2-based VPN setup is perfect for smaller needs, like securely accessing your AWS test environments or development instances, or even for personal browsing. With the preconfigured AMI, you don’t need to install or manually configure VPN software. Just a few straightforward steps and you’re ready to go. I cover each of these steps in &lt;a href="https://youtu.be/rRLIn4LqIt8?si=ONEpjKoaRE4Aj4hN" rel="noopener noreferrer"&gt;my tutorial&lt;/a&gt;, where I also explain practical use cases for the VPN. You can easily add MFA and be even more secure&lt;/p&gt;

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

&lt;h2&gt;
  
  
  Key Benefits of EC2-Based VPN
&lt;/h2&gt;

&lt;p&gt;-- Cost-Effective --&lt;br&gt;
Using the AWS Free Tier, you can set up and operate a VPN at almost no cost, as long as you stick within Free Tier limits (750 hours per month). This setup avoids the per-hour costs that AWS’s managed VPN options charge, making it ideal for individual use, small projects, or hobbyist applications.&lt;/p&gt;

&lt;p&gt;-- Flexibility and Control --&lt;br&gt;
An EC2-based VPN allows you to adjust settings as you see fit. You have full access to the VPN instance and can customize it to match your specific needs, whether it’s adding users, adjusting encryption, or experimenting with different network configurations.&lt;/p&gt;

&lt;p&gt;-- Simple Setup with Minimal Technical Knowledge --&lt;br&gt;
Thanks to the preconfigured AMI from the AWS Marketplace, setting up an EC2 VPN is straightforward. The AMI simplifies the setup process, so even users with limited technical knowledge can quickly establish a secure VPN to their AWS environment.&lt;/p&gt;

&lt;p&gt;-- Privacy for Browsing --&lt;br&gt;
An EC2-based VPN allows for private, secure internet browsing from your home or other locations, giving you peace of mind for online privacy. This can be useful for bypassing network restrictions or for extra privacy while accessing sensitive resources.&lt;/p&gt;

&lt;p&gt;-- Simple Multi-Factor Authentication (MFA) Integration --&lt;br&gt;
You can easily enhance security by adding MFA to your setup. This extra layer of security helps ensure that only authorized users can access your VPN by requiring a one-time code in addition to a password. Using popular MFA tools and apps like Google Authenticator or Authy, you can set up MFA with minimal effort, providing robust protection against unauthorized access. This feature is ideal for users who want to secure their AWS environments further, especially when accessing sensitive resources remotely.&lt;/p&gt;

&lt;p&gt;-- Flexible Remote Access for Testing --&lt;br&gt;
This VPN setup enables you to connect remotely to test AWS resources across multiple regions. If you're running regional-specific tests or development environments in AWS, an EC2 VPN can provide quick access without requiring you to be physically present in each region.&lt;/p&gt;

&lt;p&gt;-- Integration with AWS Ecosystem --&lt;br&gt;
Since the VPN runs on EC2, it integrates well with other AWS services. You can combine the VPN setup with S3 storage, RDS databases, or even Lambda functions, making it easy to access your AWS resources as if they were part of your local network.&lt;/p&gt;

&lt;p&gt;-- Extendable for Larger Projects --&lt;br&gt;
As your needs grow, the VPN setup on EC2 can be scaled to support additional users, higher bandwidth, or multiple instances. &lt;/p&gt;

&lt;h2&gt;
  
  
  Comparison: EC2-Based VPN vs. AWS Managed VPN Services
&lt;/h2&gt;

&lt;p&gt;AWS also offers two managed VPN options. Client VPN for individual client connections and Site-to-Site VPN for linking entire networks. These services provide easy-to-use solutions with high availability, though they come at a higher cost and can offer more than a single user or small project may need.&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%2Fvteq2hsxip9l9vl3xvmw.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%2Fvteq2hsxip9l9vl3xvmw.JPG" alt="AWS VPN comparision" width="800" height="224"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Summary
&lt;/h2&gt;

&lt;p&gt;An EC2-based VPN offers a flexible, low-cost way to securely access AWS from anywhere, making it especially valuable for testing regional setups and experimenting with AWS services at no extra cost. If you're interested in a straightforward, step-by-step setup that anyone can follow, even with minimal technical background then check out &lt;a href="https://youtu.be/rRLIn4LqIt8?si=ONEpjKoaRE4Aj4hN" rel="noopener noreferrer"&gt;my YouTube tutorial&lt;/a&gt;. It guides you through every detail, so you can have your EC2-based VPN up and running in no time!&lt;/p&gt;

</description>
      <category>aws</category>
      <category>tutorial</category>
      <category>beginners</category>
      <category>vpn</category>
    </item>
    <item>
      <title>AWS Lambda: OCR and Text Translation in the AWS Cloud</title>
      <dc:creator>Wojciech Lepczyński</dc:creator>
      <pubDate>Thu, 07 Nov 2024 21:14:19 +0000</pubDate>
      <link>https://dev.to/aws-builders/aws-lambda-ocr-and-text-translation-in-the-aws-cloud-2oe4</link>
      <guid>https://dev.to/aws-builders/aws-lambda-ocr-and-text-translation-in-the-aws-cloud-2oe4</guid>
      <description>&lt;p&gt;Extracting text from images and translating it automatically can be a complex process, but with AWS Lambda, Amazon Rekognition, and Amazon Translate, you can create a powerful, serverless workflow that handles both Optical Character Recognition (OCR) and translation seamlessly. Whether for automating document processing, translating visual content, or analyzing multilingual images, this setup offers a scalable solution in the cloud.&lt;/p&gt;

&lt;h2&gt;
  
  
  Introduction to OCR and AWS Lambda
&lt;/h2&gt;

&lt;p&gt;OCR (Optical Character Recognition) is a technology that identifies and extracts text from images. By combining AWS Lambda, a serverless service that executes code in response to events with Amazon Rekognition for OCR and Amazon Translate for language translation, we can automate text extraction and translation without managing servers.&lt;/p&gt;

&lt;p&gt;In this article, you’ll learn:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;How to use AWS Lambda to trigger Amazon Rekognition for OCR.&lt;/li&gt;
&lt;li&gt;How to send extracted text to Amazon Translate for translation.&lt;/li&gt;
&lt;li&gt;How to automate this workflow so the user receives translated text as the final output.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you’re curious to see this in action, I’ve recorded a &lt;a href="https://youtu.be/O68zNwKrr_c" rel="noopener noreferrer"&gt;video tutorial&lt;/a&gt; demonstrating text extraction and translation with AWS. You’ll find a step-by-step example of using Lambda and Rekognition to recognize and translate text from images into any language.&lt;/p&gt;

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

&lt;h2&gt;
  
  
  Step 1: Setting Up S3 and Lambda
&lt;/h2&gt;

&lt;p&gt;First, let’s prepare the necessary resources to store images and trigger the OCR and translation process.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Create an S3 Bucket – This will be used to store your images. Lambda can automatically respond to new file uploads in S3 by triggering the OCR and translation workflow.&lt;/li&gt;
&lt;li&gt;Configure AWS Lambda – Create a Lambda function that activates when an image is uploaded to the S3 bucket. Python or Node.js are great options for using AWS SDK.&lt;/li&gt;
&lt;li&gt;IAM Permissions – Assign the Lambda function a role with permissions to access S3, Amazon Rekognition, and Amazon Translate.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Step 2: Implementing Text Recognition with Amazon Rekognition
&lt;/h2&gt;

&lt;p&gt;Once an image is uploaded to S3, Lambda will use Amazon Rekognition to detect text in the image.&lt;/p&gt;

&lt;p&gt;Here’s a sample code in Python to perform OCR and translation:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import boto3

def lambda_handler(event, context):
    s3_client = boto3.client('s3')
    rekognition_client = boto3.client('rekognition')
    translate_client = boto3.client('translate')

    # Image details
    bucket_name = event['Records'][0]['s3']['bucket']['name']
    image_key = event['Records'][0]['s3']['object']['key']

    # OCR with Rekognition
    response = rekognition_client.detect_text(
        Image={'S3Object': {'Bucket': bucket_name, 'Name': image_key}}
    )

    # Extract detected text
    detected_text = " ".join([text['DetectedText'] for text in response['TextDetections'] if text['Type'] == 'LINE'])

    if detected_text:
        # Translate the text
        translated_text = translate_client.translate_text(
            Text=detected_text, 
            SourceLanguageCode="auto", 
            TargetLanguageCode="pl"
        )['TranslatedText']

        print(f"Translation: {translated_text}")

    return {
        'statusCode': 200,
        'body': translated_text
    }

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 3: Translating Text with Amazon Translate
&lt;/h2&gt;

&lt;p&gt;In this example:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Lambda triggers Amazon Rekognition, which scans the image for text and returns it.&lt;/li&gt;
&lt;li&gt;The text is then sent to Amazon Translate, which translates it into Polish (but it can be any other language).&lt;/li&gt;
&lt;li&gt;For multilingual applications, Amazon Translate supports automatic detection of the source language with "SourceLanguageCode": "auto", allowing seamless translation between languages.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Additional Features: Changing Image Format, Resizing, and Adding Watermarks
&lt;/h2&gt;

&lt;p&gt;Aside from OCR and translation, you may want to process images by changing their format, resizing, or adding watermarks. This can be done with AWS Lambda using additional libraries like Pillow. I have a &lt;a href="https://youtu.be/SFWHkg5xbZY" rel="noopener noreferrer"&gt;video tutorial on advanced image processing&lt;/a&gt;, where I cover how to resize images, convert formats, and add watermarks using AWS Lambda. If you’re interested in learning these additional steps, feel free to check it out!&lt;br&gt;
&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/SFWHkg5xbZY"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 4: Optimizing and Scaling the Process
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Batch Processing – For multiple images, you can set Lambda to process them in batches or schedule processing for larger workloads.&lt;/li&gt;
&lt;li&gt;Adding a Layer for Libraries – This is something I mentioned earlier. If you need advanced image processing, you can add a layer to your Lambda function with libraries like Pillow to facilitate resizing, watermarking, or format conversion.&lt;/li&gt;
&lt;li&gt;Storing Translated Results in S3 – For larger projects, consider storing translated text in S3 for easy retrieval and reference.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Use Cases and Benefits
&lt;/h2&gt;

&lt;p&gt;Combining AWS Lambda, Amazon Rekognition, and Amazon Translate opens up flexible possibilities for OCR and translation, including:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Automated processing and translation of documents in multiple languages.&lt;/li&gt;
&lt;li&gt;Processing visual content such as screenshots or product images.&lt;/li&gt;
&lt;li&gt;Creating a fully automated translation system for marketing and e-commerce.&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;With AWS, you can build a scalable OCR and translation system that works without server management. AWS Lambda provides the flexibility to trigger workflows, and Amazon Rekognition and Amazon Translate make it possible to recognize and translate text with high accuracy.&lt;/p&gt;

&lt;p&gt;For a full demonstration of OCR and translation, or to learn about advanced image processing, feel free to check out my &lt;a href="https://youtu.be/O68zNwKrr_c" rel="noopener noreferrer"&gt;video tutorials on these topics&lt;/a&gt;. Each tutorial walks through practical examples, showing how easy it can be to set up powerful automation in the AWS cloud.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>tutorial</category>
      <category>lambda</category>
      <category>ai</category>
    </item>
    <item>
      <title>Detaching an EC2 Instance from Autoscaling – A Practical Example</title>
      <dc:creator>Wojciech Lepczyński</dc:creator>
      <pubDate>Thu, 19 Sep 2024 14:42:36 +0000</pubDate>
      <link>https://dev.to/wlepczynski/detaching-an-ec2-instance-from-autoscaling-a-practical-example-oie</link>
      <guid>https://dev.to/wlepczynski/detaching-an-ec2-instance-from-autoscaling-a-practical-example-oie</guid>
      <description>&lt;p&gt;Autoscaling is a powerful tool in AWS that automatically adjusts the number of EC2 instances based on current traffic. It's ideal for production environments where resource demands can change dynamically. However, in some cases—such as during development testing—having stable and predictable resources is critical.&lt;/p&gt;

&lt;p&gt;Example: Stable Testing Environment for a Development Team&lt;br&gt;
Imagine a company that needs a testing environment for one of its development teams. The main production environment uses autoscaling to automatically adjust the number of EC2 instances according to traffic. However, the developers need a stable environment for their specific tests, which will not be affected by autoscaling rules.&lt;/p&gt;

&lt;p&gt;Why is this important? Autoscaling can dynamically add or remove instances, introducing changes that disrupt testing. Different teams might be working on various tasks, but for this particular team, it's crucial that their EC2 instance remains stable and isolated from external influences. This ensures that tests run predictably and the results are reliable.&lt;/p&gt;
&lt;h2&gt;
  
  
  When Should You Detach an Instance from Autoscaling?
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Specific Testing Needs – Developers may require a fixed instance for debugging and testing, where resource fluctuations could disrupt stability.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Critical Data – If the instance holds temporary yet important data that should not be lost.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Consistent Monitoring – In cases where a constant instance is needed for monitoring or long-term analysis.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;
  
  
  How to Do It?
&lt;/h2&gt;

&lt;p&gt;Detaching an EC2 instance from autoscaling is relatively straightforward. I have created a detailed guide explaining how to successfully detach an EC2 instance from an autoscaling group step by step. Feel free to check it out for more details—you can find the article here &lt;a href="https://lepczynski.it/en/aws_en/how-to-detach-an-ec2-instance-from-auto-scaling-in-aws/" rel="noopener noreferrer"&gt;https://lepczynski.it/en/aws_en/how-to-detach-an-ec2-instance-from-auto-scaling-in-aws/&lt;/a&gt;.&lt;/p&gt;

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

&lt;h2&gt;
  
  
  Practical Use
&lt;/h2&gt;

&lt;p&gt;Once the EC2 instance is detached, the development team can perform tests in a stable environment without worrying that the instance will be terminated or replaced. This isolation allows the team to focus on their specific tests without the risk of external disruptions.&lt;/p&gt;

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

&lt;p&gt;Detaching an EC2 instance from autoscaling is a great solution when you need a stable, independent instance that won’t be affected by dynamic changes. It’s especially useful for development testing and other critical scenarios. For more detailed steps, check out my full guide on detaching an EC2 instance from autoscaling.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>cloud</category>
      <category>tutorial</category>
      <category>beginners</category>
    </item>
    <item>
      <title>VPC Flow Logs</title>
      <dc:creator>Wojciech Lepczyński</dc:creator>
      <pubDate>Tue, 23 Apr 2024 19:01:54 +0000</pubDate>
      <link>https://dev.to/aws-builders/vpc-flow-logs-46k9</link>
      <guid>https://dev.to/aws-builders/vpc-flow-logs-46k9</guid>
      <description>&lt;p&gt;Hi there! I wanted to share some valuable insights with you about AWS Flow Logs, which can be an invaluable tool in working with AWS cloud.&lt;/p&gt;

&lt;h2&gt;
  
  
  What are AWS Flow Logs?
&lt;/h2&gt;

&lt;p&gt;AWS Flow Logs is a mechanism that allows users to monitor network traffic within the AWS infrastructure. It's somewhat like a "black box" for the cloud - it records where the traffic is coming from, where it's going, and how much data it's transmitting. Flow log data can be published to the following locations: Amazon CloudWatch Logs, Amazon S3, or Amazon Data Firehose&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%2Felo6u8mihsoapbezjy27.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%2Felo6u8mihsoapbezjy27.png" alt="Image description" width="800" height="660"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Key Benefits:
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Easier Troubleshooting: When something isn't working as it should, Flow Logs help you find the root cause of the problem. Sometimes, just a glance at the network traffic data is enough to find the source of the issue.&lt;/li&gt;
&lt;li&gt;Enhanced Security: With Flow Logs, you can quickly detect and analyze suspicious or unauthorized network activities.&lt;/li&gt;
&lt;li&gt;Performance Optimization: Understanding the dynamics of network traffic is key to optimizing the performance of applications and services in the cloud. With Flow Logs, you can identify "bottlenecks" in the infrastructure and optimize its performance.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Flow log records
&lt;/h2&gt;

&lt;p&gt;The flow log records represent network flows within your VPC. By default, each record captures an IP traffic flow. These records are formatted as strings with fields separated by spaces, containing for example information such as the source, destination, port and protocol of the flow. When setting up a flow log, you have the option to use the default format or specify a custom one.&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%2Fiub7aq8exl69j82cttu9.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%2Fiub7aq8exl69j82cttu9.png" alt="Image description" width="800" height="279"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  How to Start Using AWS Flow Logs?
&lt;/h2&gt;

&lt;p&gt;The best part is that you can enable Flow Logs yourself, with minimal effort. Just use the AWS console or command-line tools to activate this feature at the VPC, subnet, or network interface level. &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%2F7lbsovx4bg3iav6ar0le.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%2F7lbsovx4bg3iav6ar0le.png" alt="Image description" width="800" height="157"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can watch my &lt;a href="https://youtu.be/Xfo4xR7FT8g?feature=shared"&gt;video tutorial on YouTube&lt;/a&gt;, which shows step by step what exactly needs to be done. Which IAM policy to choose, what IAM role. How to create a Log group in CloudWatch and how to save logs from network interfaces there. I walk you through how to use AWS Flow Logs and interpret the collected data step by step. It's a great way to deepen your knowledge of the AWS cloud.&lt;/p&gt;

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

&lt;p&gt;Documentation: &lt;a href="https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html"&gt;https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html&lt;/a&gt;&lt;/p&gt;

</description>
      <category>network</category>
      <category>aws</category>
      <category>devops</category>
      <category>cloud</category>
    </item>
    <item>
      <title>Benefits of Attending IT Conferences: Expanding Knowledge, Building Networks, and Finding Inspiration</title>
      <dc:creator>Wojciech Lepczyński</dc:creator>
      <pubDate>Fri, 19 Apr 2024 16:57:19 +0000</pubDate>
      <link>https://dev.to/wlepczynski/benefits-of-attending-it-conferences-expanding-knowledge-building-networks-and-finding-inspiration-4pi1</link>
      <guid>https://dev.to/wlepczynski/benefits-of-attending-it-conferences-expanding-knowledge-building-networks-and-finding-inspiration-4pi1</guid>
      <description>&lt;p&gt;Industry conferences in the field of Information Technology play a crucial role in the professional and personal development of individuals interested in this domain. Whether you're a programmer, data analyst, project manager, or entrepreneur in the tech industry, attending IT conferences can offer a variety of benefits worth considering. Below are some of the key advantages:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Expanding Technical Knowledge:&lt;/strong&gt; IT conferences provide an excellent opportunity to acquire the latest knowledge in technology, trends, and innovations in the IT industry. Through presentations, workshops, and panel discussions, participants can learn about the latest tools, work methods, and best practices employed by industry leaders. This enables individuals to continually develop their technical skills and stay up-to-date with the latest trends.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Building Networks:&lt;/strong&gt; IT conferences bring together professionals, experts, and enthusiasts from various sectors of the technology industry. Participating in such events allows for valuable networking, exchange of experiences, and getting acquainted with potential business partners or employers. Building a solid network of contacts can be crucial in career development and opening up new business opportunities.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Inspiration and Motivation:&lt;/strong&gt; IT conferences are often filled with inspiring speeches, case study presentations, and success stories from individuals in the tech industry. Attending such events can provide a significant dose of motivation and help in setting personal career goals. Additionally, the opportunity to meet and converse with individuals who have succeeded in the IT field can be incredibly inspiring and encouraging to pursue one's own goals.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Exploring New Opportunities:&lt;/strong&gt; IT conferences are often places where representatives from different companies showcase their products, services, and innovations. Participating in such events offers the opportunity to explore the latest technological solutions and discover new possibilities that can be useful both in professional work and in the development of personal projects or ventures.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Excellent Learning and Experience Exchange Atmosphere:&lt;/strong&gt; IT conferences are not only places to acquire knowledge and build contacts but also provide an excellent opportunity for learning through the exchange of experiences with other participants. Often, these meetings are full of informal discussions, networking lunches, or evening social gatherings that facilitate making new acquaintances and exchanging ideas and experiences.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;In conclusion, attending IT conferences can bring numerous benefits both professionally and personally. Expanding knowledge, building networks, finding inspiration, exploring new opportunities, and learning and exchanging experiences are just some of the advantages that can result from participating in such events. Therefore, it's worthwhile to keep track of industry conference calendars and regularly participate in them to continually develop professionally and stay abreast of the latest trends and innovations in the field of information technology.&lt;/p&gt;

&lt;p&gt;If you want to learn more about the &lt;strong&gt;AWS Community Day 2024&lt;/strong&gt; conference, feel free to read &lt;a href="https://lepczynski.it/en/aws_en/aws-community-day-poland-2024-2/"&gt;my article&lt;/a&gt; on the blog here:&lt;br&gt;
&lt;/p&gt;
&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
      &lt;div class="c-embed__cover"&gt;
        &lt;a href="https://lepczynski.it/en/aws_en/aws-community-day-poland-2024-2/" class="c-link s:max-w-50 align-middle" rel="noopener noreferrer"&gt;
          &lt;img alt="" src="https://res.cloudinary.com/practicaldev/image/fetch/s--NG8FgdtG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lepczynski.it/wp-content/uploads/2024/04/aws-community-day-poland-2024-v2.jpg" height="517" class="m-0" width="775"&gt;
        &lt;/a&gt;
      &lt;/div&gt;
    &lt;div class="c-embed__body"&gt;
      &lt;h2 class="fs-xl lh-tight"&gt;
        &lt;a href="https://lepczynski.it/en/aws_en/aws-community-day-poland-2024-2/" rel="noopener noreferrer" class="c-link"&gt;
          AWS Community Day Poland 2024 - Wojciech Lepczyński - DevOps Cloud Architect
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;p class="truncate-at-3"&gt;
          On April 11, 2024, one of the most anticipated cloud conferences in Poland took place - AWS Community Day 2024...
        &lt;/p&gt;
      &lt;div class="color-secondary fs-s flex items-center"&gt;
          &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://res.cloudinary.com/practicaldev/image/fetch/s--fJGRPA7y--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lepczynski.it/wp-content/uploads/2020/05/cropped-atmosphere-blue-blue-sky-cloud-216631-scaled-1-32x32.jpg" width="32" height="32"&gt;
        lepczynski.it
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;To see what swag I brought back from the conference, check out &lt;a href="https://youtu.be/sBxv6dGceJo?feature=shared"&gt;my YouTube video&lt;/a&gt; here:&lt;br&gt;
&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/sBxv6dGceJo"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>career</category>
      <category>learning</category>
      <category>community</category>
    </item>
    <item>
      <title>Composite Alarms in AWS Cloud: Advanced Notification System</title>
      <dc:creator>Wojciech Lepczyński</dc:creator>
      <pubDate>Thu, 28 Mar 2024 20:34:10 +0000</pubDate>
      <link>https://dev.to/aws-builders/composite-alarms-in-aws-cloud-advanced-notification-system-2omn</link>
      <guid>https://dev.to/aws-builders/composite-alarms-in-aws-cloud-advanced-notification-system-2omn</guid>
      <description>&lt;p&gt;Monitoring the state and performance of various resources is a crucial element in maintaining stability and efficiency within IT systems. One of the most powerful monitoring tools in &lt;strong&gt;AWS cloud&lt;/strong&gt; is the &lt;strong&gt;CloudWatch&lt;/strong&gt; service, which enables the collection and monitoring of &lt;strong&gt;metrics and logs&lt;/strong&gt; from various AWS services and resources.&lt;/p&gt;

&lt;p&gt;Within the CloudWatch service, there exists the capability to create "composite alarms," allowing the consolidation of multiple alarms into one logical expression. This enables the creation of more complex monitoring conditions, significantly enhancing the flexibility and capabilities of the monitoring system within AWS cloud.&lt;/p&gt;

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

&lt;h3&gt;
  
  
  Consolidating Alarms into Composite Alarms
&lt;/h3&gt;

&lt;p&gt;A composite alarm in AWS CloudWatch allows for the combination of alarms from other metrics or resources into one logical expression. This means that we can specify a condition that will be triggered when the conditions of all defined alarms within it are met. We can also apply different logical operators such as &lt;strong&gt;AND, OR, or NOT&lt;/strong&gt;, providing us with a wide range of options for defining advanced monitoring rules.&lt;/p&gt;

&lt;h3&gt;
  
  
  Operators Available for Use:
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;AND&lt;/strong&gt;: This logical operator triggers the composite alarm when all the defined alarms within it are active.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;OR&lt;/strong&gt;: The OR operator activates the composite alarm when at least one of the defined alarms within it is active.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;NOT&lt;/strong&gt;: The NOT operator allows for the definition of negation, activating the composite alarm when the defined alarm is not active.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  How Can This Be Helpful?
&lt;/h3&gt;

&lt;p&gt;Creating composite alarms in AWS CloudWatch can be incredibly helpful in monitoring complex infrastructures and applications. It allows for the definition of more advanced alarm rules, which can take into account multiple different factors simultaneously. For example, we can create a composite alarm that triggers only when CPU usage exceeds a certain threshold and there is also an issue with service availability.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;ALARM(RAMUtilizationTooHigh) AND ALARM(CPUUtilizationTooHigh)&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;The expression specifies that the composite alarm goes into ALARM only if RAMUtilizationTooHigh and CPUUtilizationTooHighare in ALARM.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;(ALARM(RAMUtilizationTooHigh) OR ALARM(CPUUtilizationTooHigh)) AND OK(NetworkOutTooHigh)&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;The expression specifies that the composite alarm goes into ALARM if (RAMUtilizationTooHigh) or (CPUUtilizationTooHigh) is in ALARM and (NetworkOutTooHigh) is in OK. This is an example of a composite alarm that reduces alarm noise by not sending you notifications when either of the underlying alarms aren’t in ALARM while a network issue is occurring.&lt;/p&gt;

&lt;h3&gt;
  
  
  Utilization in Complex Notification Systems
&lt;/h3&gt;

&lt;p&gt;Composite alarms are invaluable in building advanced notification systems. With them, we can define more intelligent rules that notify about issues only when they are essential for the stability or performance of the system. For instance, we can configure a notification system to send an alert only when there is both high resource consumption and a decrease in application performance.&lt;/p&gt;

&lt;h3&gt;
  
  
  Summary
&lt;/h3&gt;

&lt;p&gt;Composite alarms in AWS CloudWatch are powerful tools that allow for the consolidation of multiple alarms into one logical expression. They enable the creation of more advanced monitoring rules, significantly increasing the flexibility and effectiveness of monitoring systems within the AWS cloud. Utilizing composite alarms is crucial for building complex notification systems that inform about significant issues in infrastructure or applications only when necessary.&lt;/p&gt;

&lt;h3&gt;
  
  
  Additional Resource: YouTube Channel
&lt;/h3&gt;

&lt;p&gt;For a practical demonstration of creating simple composite alarms consisting of multiple CloudWatch alarms, you can visit my &lt;a href="https://youtu.be/g23DEJiG8fk?feature=shared"&gt;YouTube channel&lt;/a&gt;. There, you'll find a video describing this topic and see how the creation of composite alarms looks in a real cloud environment.&lt;br&gt;
&lt;/p&gt;
&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
      &lt;div class="c-embed__cover"&gt;
        &lt;a href="https://www.youtube.com/watch?feature=shared&amp;amp;v=g23DEJiG8fk" class="c-link s:max-w-50 align-middle" rel="noopener noreferrer"&gt;
          &lt;img alt="" src="https://res.cloudinary.com/practicaldev/image/fetch/s--omJkmf5s--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://i.ytimg.com/vi/g23DEJiG8fk/maxresdefault.jpg%3Fsqp%3D-oaymwEmCIAKENAF8quKqQMa8AEB-AH-CYAC0AWKAgwIABABGBggPih_MA8%3D%26rs%3DAOn4CLDewjO0St7jYwCQmUvFHz-ArXMgvw" height="450" class="m-0" width="800"&gt;
        &lt;/a&gt;
      &lt;/div&gt;
    &lt;div class="c-embed__body"&gt;
      &lt;h2 class="fs-xl lh-tight"&gt;
        &lt;a href="https://www.youtube.com/watch?feature=shared&amp;amp;v=g23DEJiG8fk" rel="noopener noreferrer" class="c-link"&gt;
          AWS Composite Alarm | CloudWatch 2024 - YouTube
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;p class="truncate-at-3"&gt;
          Welcome on my YouTube channel, my name is Wojciech Lepczyński and today I will be talking about Composite Alarm in AWS Cloud! In today's world, monitoring an...
        &lt;/p&gt;
      &lt;div class="color-secondary fs-s flex items-center"&gt;
          &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://res.cloudinary.com/practicaldev/image/fetch/s--nXYTbHH1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://www.youtube.com/s/desktop/accca349/img/favicon.ico" width="16" height="16"&gt;
        youtube.com
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;Blog: &lt;a href="https://lepczynski.it/en"&gt;https://lepczynski.it/en&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;AWS documentation: &lt;a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html"&gt;https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html&lt;/a&gt;&lt;/p&gt;

</description>
      <category>aws</category>
      <category>cloud</category>
      <category>monitoring</category>
      <category>devops</category>
    </item>
  </channel>
</rss>
