<?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: Ilya Afendin</title>
    <description>The latest articles on DEV Community by Ilya Afendin (@beastful).</description>
    <link>https://dev.to/beastful</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%2F705531%2Ff2f73329-72a0-44b3-b97a-100191db3c3e.jpg</url>
      <title>DEV Community: Ilya Afendin</title>
      <link>https://dev.to/beastful</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/beastful"/>
    <language>en</language>
    <item>
      <title>What do programmers play?</title>
      <dc:creator>Ilya Afendin</dc:creator>
      <pubDate>Fri, 07 Feb 2025 15:02:57 +0000</pubDate>
      <link>https://dev.to/beastful/what-do-programmers-play-303f</link>
      <guid>https://dev.to/beastful/what-do-programmers-play-303f</guid>
      <description>&lt;p&gt;The way you spend your free time has a huge impact on your professional skills, furthermore it could even be the reason why you choose the job you do. Programming is special in this way, the set of soft skills required to be a good engineer is similar to skills that games can develop in you. &lt;/p&gt;

&lt;h2&gt;
  
  
  Gaming Impact for a Programmer
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Problem-Solving Skills 📝&lt;/strong&gt; Gaming often involves puzzles and challenges that require quick thinking and strategy. This helps programmers sharpen their problem-solving skills, which are crucial when debugging code or designing algorithms.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Creativity Boost ✨&lt;/strong&gt; Many games have rich worlds and stories. Playing them can inspire programmers to think outside the box and come up with creative solutions in their own projects.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Teamwork and Collaboration 🤝&lt;/strong&gt; Multiplayer games teach the importance of teamwork. Programmers often work in teams, so understanding how to communicate and collaborate effectively is a big plus.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Learning New Technologies 🧑‍💻&lt;/strong&gt; Gaming is at the forefront of tech innovation. Programmers can learn about graphics, AI, and networking through game development, keeping their skills fresh and relevant.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Stress Relief 😟&lt;/strong&gt; Let’s be real—coding can be stressful! Gaming provides a fun escape, helping programmers unwind and recharge their brains.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Community and Networking 🌐&lt;/strong&gt; The gaming community is huge! Programmers can connect with others, share ideas, and even find job opportunities through gaming networks.&lt;/p&gt;

&lt;h2&gt;
  
  
  Games on my way
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Factorio&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Factorio is like a programmer's dream playground where you get to build and optimize complex systems, just like coding but with conveyor belts and factories! You start by mining resources and gradually automate everything, from crafting items to managing power. It’s all about efficiency—finding the best layouts, minimizing bottlenecks, and scaling up your production. Just like debugging code, you’ll spend hours tweaking your designs to make them run smoother, and the satisfaction of watching your factory thrive is like seeing your code finally work perfectly. Plus, with mods and community challenges, there’s always something new to learn and create!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;EVE online&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Eve Online can be a fascinating experience for a programmer as it offers a vast universe where complex systems and player-driven economies come to life, allowing you to explore game mechanics and algorithms behind the scenes. You can dive into developing tools, scripts, or bots to enhance gameplay, analyze data from the game to understand trends, or even contribute to community projects. The game’s API provides a playground for creating applications that can track assets, manage fleets, or optimize trading strategies, all while engaging with a vibrant community of fellow developers and players. Overall, it’s an opportunity to blend creativity with technical skills in a dynamic and ever-evolving environment.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Chess&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Chess is like coding for the mind; each piece represents a different function, and every move is a line of code that can lead to victory or defeat. Just as a programmer anticipates bugs and optimizes algorithms, a chess player strategizes several moves ahead, considering the opponent's potential responses. Both require critical thinking, patience, and the ability to adapt to changing situations. Plus, just like debugging, sometimes you have to sacrifice a piece (or a line of code) to achieve a greater goal. So, whether you're capturing a pawn or fixing a syntax error, the thrill of the challenge keeps you coming back for more&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Minecraft&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In Minecraft, redstone is like the programming language of the game, allowing you to create complex machines and contraptions with just a few blocks; as a programmer, you can think of redstone as a way to build logic gates, automate tasks, and even create mini-computers, making the game not just about survival and creativity but also about problem-solving and engineering, where your coding skills can translate into innovative designs and efficient systems.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>I implemented battles in the Game of Life ⚔️</title>
      <dc:creator>Ilya Afendin</dc:creator>
      <pubDate>Wed, 05 Feb 2025 15:28:05 +0000</pubDate>
      <link>https://dev.to/beastful/i-added-confrontation-to-the-game-of-life-g4c</link>
      <guid>https://dev.to/beastful/i-added-confrontation-to-the-game-of-life-g4c</guid>
      <description>&lt;p&gt;The Game of Life, often just called "Life," is a fascinating simulation created by mathematician John Conway in 1970. It’s not a game in the traditional sense—there are no players, no dice, and no winning or losing. Instead, it’s a zero-player game that explores how simple rules can lead to complex behaviors.&lt;br&gt;
Picture a grid made up of squares, where each square can either be alive (filled) or dead (empty). The game evolves in steps, or "generations," based on a few straightforward rules that dictate how cells interact with their neighbors.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Survival: If a live cell has two or three live neighbors, it stays alive.&lt;/li&gt;
&lt;li&gt;Death: A live cell with fewer than two live neighbors dies of loneliness, while one with more than three neighbors dies of overcrowding.&lt;/li&gt;
&lt;li&gt;Birth: A dead cell with exactly three live neighbors comes to life.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;With just these three rules, you can create some mind-blowing patterns and behaviors. Some configurations stabilize over time, some oscillate back and forth, and others can even move across the grid. It’s a beautiful exploration of how life can emerge from simplicity, making it a favorite among mathematicians, computer scientists, and hobbyists alike. So, whether you’re looking to create stunning patterns or just want to watch how things evolve, the Game of Life offers endless possibilities!&lt;/p&gt;

&lt;h2&gt;
  
  
  Motivation
&lt;/h2&gt;

&lt;p&gt;Now, imagine adding a twist to this classic game by introducing interspecies fighting. This modification takes the original concept and injects a competitive element where different species (or types of cells) vie for survival and dominance on the grid. Inspired by the natural world, where competition for resources and territory is a driving force in evolution, this version of the Game of Life allows for a more dynamic interaction between cells. Instead of merely surviving or dying based on their neighbors, cells could engage in battles, with certain species having advantages or disadvantages based on their characteristics. This adds layers of strategy and unpredictability, making the game even more engaging and reflective of the complexities of life itself.&lt;/p&gt;

&lt;h2&gt;
  
  
  Understanding the Game of Life
&lt;/h2&gt;

&lt;p&gt;The original mechanics are pretty straightforward. Each cell interacts with its eight neighbors (the cells that are horizontally, vertically, or diagonally adjacent) and follows these rules:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Birth: A dead cell comes to life if it has exactly three live neighbors.&lt;/li&gt;
&lt;li&gt;Survival: A live cell stays alive if it has two or three live neighbors; otherwise, it dies due to loneliness or overcrowding.&lt;/li&gt;
&lt;li&gt;Death: A live cell dies if it has fewer than two or more than three live neighbors.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The objective? There isn't really a traditional goal like winning or losing. Instead, the game is all about watching how patterns evolve over time. You can create initial configurations and then sit back to see how they change, sometimes leading to stable structures, oscillators, or even moving patterns known as spaceships. It’s a mesmerizing exploration of life, death, and everything in between, all driven by simple rules!&lt;/p&gt;

&lt;h2&gt;
  
  
  Rules for Interspecies Fighting
&lt;/h2&gt;

&lt;p&gt;In this modified version of the Game of Life, we introduce a fresh take on the traditional birth rule by incorporating three distinct types of cells: red, white, and blue. In the original game, a new cell is born based on the number of live neighbors around it, but here, we add a unique twist to the birth process.&lt;br&gt;
Instead of simply following the classic birth criteria, when a new cell is created, it will take on the color of the minority cell type among its neighboring cells. So, if a newborn cell is surrounded by two red cells, one white cell, and three blue cells, it will adopt the color of the minority, which in this case would be red. This creates a dynamic and evolving color landscape on the board, where the interactions and proportions of different cell types can lead to fascinating patterns and behaviors.&lt;/p&gt;

&lt;h2&gt;
  
  
  Let`s play
&lt;/h2&gt;

&lt;p&gt;What’s truly surprising about this modified version is how balanced it can be. The mechanics encourage a competitive environment where each species has to adapt and strategize to maintain its presence on the grid. The interactions between the different colors create a dynamic battlefield where players can witness the ebb and flow of dominance.&lt;/p&gt;

&lt;h2&gt;
  
  
  PvP battle
&lt;/h2&gt;

&lt;p&gt;Two gliders faced to each other&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%2Fnbee82brnktiaouna8pg.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%2Fnbee82brnktiaouna8pg.png" alt="Game of Life pattern" width="369" height="286"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After they reached each other, both disappeard&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%2Fc25os3hllhaag5npthmc.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%2Fc25os3hllhaag5npthmc.png" alt="Game of Life pattern" width="369" height="286"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Score: 0:0&lt;/p&gt;

&lt;h2&gt;
  
  
  Confrontation
&lt;/h2&gt;

&lt;p&gt;6 gliders moving towards each other through the static obstacles&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%2F63noha9d2vv42ggtts2a.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%2F63noha9d2vv42ggtts2a.png" alt="Game of Life pattern" width="670" height="516"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The result is one white static obstacle and two looped patterns.&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%2Ftpd0g4fem06h28pcalbw.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%2Ftpd0g4fem06h28pcalbw.png" alt="Game of Life pattern" width="670" height="516"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Score: 3:7&lt;/p&gt;

&lt;h2&gt;
  
  
  Tower attack
&lt;/h2&gt;

&lt;p&gt;4 gliders vs. 15 static obstacles&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%2Fsywsbgwcv1dnjepataoz.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%2Fsywsbgwcv1dnjepataoz.png" alt="Game of Life pattern" width="694" height="535"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;End result:&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%2Fdyhzvgrvdy2frqfg63ti.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%2Fdyhzvgrvdy2frqfg63ti.png" alt="Game of Life pattern" width="694" height="535"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Score: 41:3&lt;/p&gt;

&lt;h2&gt;
  
  
  Chaos
&lt;/h2&gt;

&lt;p&gt;This pattern is completely unpredictable. You can check it by yourself &lt;a href="https://conway-game-online.web.app/" rel="noopener noreferrer"&gt;here &lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4tvrmwzla9xz2fuwkybm.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%2F4tvrmwzla9xz2fuwkybm.png" alt="Game of Life pattern" width="694" height="535"&gt;&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;When I first decided to create the game, I didn't expect the cells to compete so evenly. However, when I filled the cells randomly in the prototype, the results really inspired me to take it online. It turned out to be a great way to showcase interesting and ever-changing patterns&lt;/p&gt;

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