<?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: Cyber Janitor</title>
    <description>The latest articles on Forem by Cyber Janitor (@cyberjanitor).</description>
    <link>https://forem.com/cyberjanitor</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%2F3813843%2Fbafcf400-1a9c-48c9-aa9d-9389cb9111ae.jpg</url>
      <title>Forem: Cyber Janitor</title>
      <link>https://forem.com/cyberjanitor</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/cyberjanitor"/>
    <language>en</language>
    <item>
      <title>The Axios/npm Incident &amp; Why AI Won’t Replace Devs</title>
      <dc:creator>Cyber Janitor</dc:creator>
      <pubDate>Sat, 04 Apr 2026 00:56:58 +0000</pubDate>
      <link>https://forem.com/cyberjanitor/the-axiosnpm-incident-why-ai-wont-replace-devs-1a0d</link>
      <guid>https://forem.com/cyberjanitor/the-axiosnpm-incident-why-ai-wont-replace-devs-1a0d</guid>
      <description>&lt;p&gt;The axios/npm incident shows why AI won’t replace developers&lt;/p&gt;

&lt;p&gt;This week’s axios/npm compromise might be one of the biggest security incidents we’ve seen this year. What’s interesting isn’t just the attack itself, it’s how simple the underlying issues usually are. Leaked tokens, secrets left in code, and trusting dependencies without really checking them.&lt;/p&gt;

&lt;p&gt;I saw a joke recently: “If you want a free API key, just search GitHub.” It’s funny, but it’s also not far from reality.&lt;/p&gt;

&lt;p&gt;We’re in this era of shipping fast with AI. You can generate code instantly and wire things together in minutes. That’s powerful, but it also means a lot more code is being pushed out by people who don’t fully understand what’s happening under the hood.&lt;/p&gt;

&lt;p&gt;If a maintainer following normal security practices can still get compromised, then someone blindly trusting generated code is even more exposed.&lt;/p&gt;

&lt;p&gt;We’re producing more code than ever, but not increasing understanding at the same pace. That gap is where problems start.&lt;/p&gt;

&lt;p&gt;AI isn’t replacing developers. It’s raising the cost of not knowing what you’re doing.&lt;/p&gt;

&lt;p&gt;That's it for my short rant, thanks for reading!&lt;/p&gt;

&lt;p&gt;Check out my free site &lt;a href="https://coderacer.dev" rel="noopener noreferrer"&gt;coderacer&lt;/a&gt; to improve your code typing speed in 10 different languages! No sign up required to play!&lt;/p&gt;

</description>
      <category>ai</category>
      <category>javascript</category>
      <category>npm</category>
      <category>security</category>
    </item>
    <item>
      <title>You Should Learn Embedded Systems</title>
      <dc:creator>Cyber Janitor</dc:creator>
      <pubDate>Tue, 24 Mar 2026 17:07:26 +0000</pubDate>
      <link>https://forem.com/cyberjanitor/you-should-learn-embedded-systems-5dgb</link>
      <guid>https://forem.com/cyberjanitor/you-should-learn-embedded-systems-5dgb</guid>
      <description>&lt;p&gt;Even if you may not be an Embedded Systems Engineer or want to be one, I think it's great for all developers to learn a little bit. I'll cover why I think you should learn a bit as well as how to get started.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Embedded?
&lt;/h2&gt;

&lt;p&gt;There's so much new technology, and our computers are very complex and fast. There's so much that you can do that it often makes us unsure of &lt;strong&gt;what we should do.&lt;/strong&gt; We can feel "choice overload". Embedded systems is a broad field. But a  Microcontroller like the Arduino, STM32, PIC, or ESP32 are far more limited than a modern computer. The type of code you can run is limited. The peripherals are limited. The speed is limited. There is a lot less choice. It takes you back to an earlier time when developers had to work with the limited memory and CPU speed that they had. &lt;strong&gt;Constraints are seen as bad, but sometimes those constraints are what allow creative solutions to arise.&lt;/strong&gt; You begin to master that environment and write creative solutions to accommodate it. You no longer think to throw more compute power at the problem. You begin to write more efficient code.&lt;/p&gt;

&lt;p&gt;Another reason to learn it is to understand how computers work under the hood. When I learned about how a DMA controller can move data between two memory locations (disk and RAM, or Network Interface Card and RAM) I understood how a computer could load a file from disk into memory without freezing your CPU on that task. Or when I created a recording device and a speaker I understood how computers can process digital signals and turn them into analog signals to be played on a speaker. Or how they can process incoming data from the microphone and and then transfer that data to an SD card. It's quite amazing how simple a lot of devices are. Devices or peripherals do two things: take in data (input) and give back data (output). They can also be called I/O devices. Embedded systems allows you to learn about these and understand and appreciate the abstraction provided by your operating system that makes it easy for you to interact with them.&lt;/p&gt;

&lt;h2&gt;
  
  
  How to learn?
&lt;/h2&gt;

&lt;p&gt;Embedded can seem intimidating since it's not entirely software but there's actual hardware involved. The circuitry you'll need to learn isn't too complicated. If you understand Ohm's law, and know how to use basic components like resistors and capacitors you should be good. Over time you can start to learn more, but for now that'll do. It does make it much easier if you have a multimeter and oscilloscope (but again for a beginner you can get away with not using them).&lt;/p&gt;

&lt;p&gt;Pick an easy microcontroller to start out with like the Arduino. You can make really basic projects, and what you want to do is use the on chip peripherals as well as external devices with the goal of making usable projects. For example you can use the in-built ADC peripheral (analog to digital converter) to take in data from an external temperature sensor. The temperature sensor will have an analog voltage value (from 0 to 3.3v) and your chip can read that on a specific pin and then convert it to a digital value you can read. Then you can connect a tiny external OLED screen like the SSD1306 and display the value on the screen. You've just created a thermometer!&lt;/p&gt;

&lt;p&gt;You can use motors to make the MCU move, and maybe create a remote control with a RF (radio frequency) transmitter and receiver. The transmitter can be used to send data and the receiver will be attached to the microcontroller and read any incoming commands. &lt;/p&gt;

&lt;p&gt;As you do these kinds of projects you'll begin to understand how hardware and software can work together and even begin to move on to other microcontrollers. The STM32 is more difficult to use but if you are very interested in diving deeper under the hood then you can explore that next. The ESP32 is a bit simpler and also great because of its in built wifi capabilities. So that's also something you can explore after the Arduino.&lt;/p&gt;

&lt;p&gt;Thanks for reading!&lt;/p&gt;

&lt;p&gt;Check out my free site &lt;a href="https://coderacer.dev" rel="noopener noreferrer"&gt;coderacer&lt;/a&gt; to improve your code typing speed in 10 different languages! No sign up required to play!&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%2Fabwjme3dbkdeb8d3k5wc.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%2Fabwjme3dbkdeb8d3k5wc.png" alt=" " width="800" height="321"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>iot</category>
      <category>learning</category>
      <category>systems</category>
    </item>
    <item>
      <title>Seeing the Positive In the AI Race</title>
      <dc:creator>Cyber Janitor</dc:creator>
      <pubDate>Sun, 22 Mar 2026 16:32:09 +0000</pubDate>
      <link>https://forem.com/cyberjanitor/seeing-the-positive-in-the-ai-race-321l</link>
      <guid>https://forem.com/cyberjanitor/seeing-the-positive-in-the-ai-race-321l</guid>
      <description>&lt;h2&gt;
  
  
  The AI Race Is Scary and Uncertain
&lt;/h2&gt;

&lt;p&gt;I won't deny that the AI race has its negative effect. But I want to explore some of the positives that might come out of it and why I think it's good to see them.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Reason To See The Positive
&lt;/h2&gt;

&lt;p&gt;While AI can be extremely dangerous and may make us feel like we might become obsolete, that type of thinking doesn't really lead to action. It might be right, or it might be wrong. But what I see is that once you start thinking of how it will be impossible to get a job, or there's no use in trying or learning since every career will be taken over by it, that's how you end up doing nothing. Seeing the positives and thinking "hey the future might have some good things" will allow you to take action.&lt;/p&gt;

&lt;h2&gt;
  
  
  New Opportunities and Inventions
&lt;/h2&gt;

&lt;p&gt;Linus Torvalds, the creator of Linux, said that although C stopped a lot of programmers from writing assembly it didn't get rid of programmers or decrease them. I believe AI will do the same. I acknowledge AI is different than a new language, but there's either two options. Either it makes us completely obsolete and at that point worrying about a job is the least of our worries anyway. Ultron should be your worry. But if it doesn't reach AGI and doesn't replace us, then it will be integrated with us. And that means that humans are still required. Not only that but they will be the drivers of it. Telling it what to do and how to act, and what to be used for.&lt;/p&gt;

&lt;p&gt;I see new opportunities and cool inventions being created. It's been less than 30 years since the first I Phone came out and look how much that changed the world. I think AI can do so much in such little time. That's also one of the dangers. One cool example is how it can preserve ancient languages. Once it learns them it can hold on to those pronounciations, grammar rules, etc. so that even if the amount of speakers in the real world diminishes we still have it stored somewhere. &lt;/p&gt;

&lt;p&gt;It's impossible to think of all the possibilities but AI can be applied to all domains. It's this insane amount of possibility that makes me excited. I don't know the future, but not knowing is part of the excitement and knowing that there is so many possibilities feels so suspenseful. &lt;/p&gt;

&lt;p&gt;I'm not saying to ignore the negatives but AI can produce a lot of amazing things too. It's easy to get views and clicks on the internet being negative so we're programmed to be more negative since that's all we see. But I think a middle ground is more accurate, practical, and better for our health and sanity. If we know there's something positive to look forward to, we're more likely to act. Being negative is almost a self fulfilling prophecy. If you think there's no hope it causes you to not act or try to build toward something better, therefore creating the very negative future you feared. If you think the future is doomed, then why do anything? I wouldn't say this is a coping mechanism, rather it's balance. Why hold on to an idea that is self defeating. Be wary of the harmful things in the world but also see the good in the world and appreciate it. Humanity has always had hope for the future, otherwise we would not have continued. Why would our previous generations have ushered in the new generation if they didn't have hope. I'm unsure of the future but to keep learning and growing is the only thing I'm sure of.&lt;/p&gt;

&lt;p&gt;Thanks for reading!&lt;/p&gt;

&lt;p&gt;check out my free site &lt;a href="https://coderacer.dev" rel="noopener noreferrer"&gt;coderacer&lt;/a&gt; to improve your code typing speed in 10 different languages! It's like typeracer but for code. No sign up required to play!&lt;/p&gt;

</description>
      <category>ai</category>
      <category>career</category>
      <category>discuss</category>
      <category>learning</category>
    </item>
    <item>
      <title>Excel At Coding Interviews</title>
      <dc:creator>Cyber Janitor</dc:creator>
      <pubDate>Thu, 19 Mar 2026 01:46:39 +0000</pubDate>
      <link>https://forem.com/cyberjanitor/excel-at-coding-interviews-2n0e</link>
      <guid>https://forem.com/cyberjanitor/excel-at-coding-interviews-2n0e</guid>
      <description>&lt;p&gt;If I were to go back all over again and re-learn data structures &amp;amp; algorithms, Leetcode, and interviewing under pressure I would do the following:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Mix between the depth &amp;amp; breadth approach&lt;/li&gt;
&lt;li&gt;Learn to type faster&lt;/li&gt;
&lt;li&gt;Let your brain do the work, and don't over stress&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  1. Mix between the depth &amp;amp; breadth approach
&lt;/h2&gt;

&lt;p&gt;There's a lot of topics to cover: graphs, trees, linked lists, arrays, dynamic programming, tries, queues, stacks, etc. So how do you get good at all of these since any one of them can show up on your interview? There's two approaches&lt;/p&gt;

&lt;h3&gt;
  
  
  Breadth
&lt;/h3&gt;

&lt;p&gt;Like a breadth first search, the breadth based learning approach allows us to expand outward in each direction, meaning study all topics at once. Although we may not become experts or specialized in any given thing with this approach, we still gain a lot of experience in a wide variety of things. So don't just master linked lists then move on to trees, then after mastering that move on to graphs. That will take you a long time. Just like in school they don't make you only take math, then after passing it you only take English. The topics are different enough that you can practice both in the same session without feeling drained. So try to practice a wide range of questions with different topics as early as you can. &lt;strong&gt;Don't wait to perfect one then start learning another.&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;The breadth based philosophy also applies to the way you practice a given problem. Let's say you can't figure out the problem after 15 minutes, that's fine, just look at the solution. Although problem solving is important, learning from other people's solutions and not spending too much time on one thing will also help a lot. Let's say you struggle on one problem for a whole hour while someone else attempts 4 problems then looks at the solution. They've learned 4 patterns in that hour. You've only learned only one. Although arriving at the solution yourself makes your problem solving ability much better, you don't need to do that for every problem. That will get in your way more than it helps. It can be good to build a foundation from other peoples solutions and explanations and then after you gain enough experience you can challenge yourself more. Basically use the training wheels while you can to ease the process, then once you are an intermediate you can take them off.&lt;/p&gt;

&lt;h3&gt;
  
  
  Depth
&lt;/h3&gt;

&lt;p&gt;The depth based approach allows you to zone in on one particular thing. This is where you "specialize". This method is used to get to the next level. The breadth approach is better for beginners since it's harder for them to specialize when they don't even have a foundation. But once you do you can zone in on a given problem type. This helps your brain see the patterns better since you keep attempting the same type of problem until eventually they become second nature.&lt;/p&gt;

&lt;p&gt;The depth philosophy is the opposite of breadth when it comes to how you approach the problem. With this approach I want you to not give up until you solve the problem. (Unless it's extremely hard and you really know you can't do it). But you can take breaks, or do another problem, or come back the next day. But what is important is that from the moment you start the problem to the moment you end, your reasoning is entirely yours and not influenced by anyone else. That gives you confidence in your own problem solving ability and also improves that part of your brain. Secondly it allows you to speed that process over time. A problem that may have taken you 3 hours to get the optimal approach for this year may take 5 minutes and seem trivial in the future.&lt;/p&gt;

&lt;p&gt;So mix these two approaches. You can do both at the same time. For beginners I'd say practice mainly the breadth approach. For more advanced people do more of the depth approach. But an approximately even balance of both is still great regardless of level.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Learn To Type Faster
&lt;/h2&gt;

&lt;p&gt;This is a no brainer and pretty self explanatory. If you type faster you code faster, and if you code faster you can solve more problems, they take less time, and you are less likely to fail due to time constraints. Also you can impress your interviewing with your lightning fast hands. But how do you do it? There's two things I think are necessary. One is general typing practice using sites like monkeytype or typeracer. These allow you to practice typing quotes, random words, and paragraphs of text. This will increase your speed very quickly and then you will start to plateau. You can push harder if you want but going from 120 wpm to 150 wpm is a much slower process than going from 40 to 100 wpm. And 120 is sufficient but feel free to aim for faster, it doesn't hurt.&lt;/p&gt;

&lt;p&gt;Once you hit that plateau a better "bang for your buck" is to practice code specific typing. So you might be great at typing regular alphabet characters, but do you slow down when you type semicolons, brackets, or even numbers? These characters are prevalent in code and so practicing them will make you stop or slow down less when you code. I developed a site called &lt;a href="https://coderacer.dev" rel="noopener noreferrer"&gt;CodeRacer&lt;/a&gt;. At first this site was a project just for me to improve my coding speed. It worked wonders and so I decided to share it. It's absolutely free and you can practice typing out real code snippets for free in 10 different langauges. No sign up needed! There's also other sites out there for practicing code. In my biased opinion of course I enjoy mine the most.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Let your brain do the work, and don't over stress
&lt;/h2&gt;

&lt;p&gt;When I first started doing Leetcode I would attempt a problem, come up with a solution I thought was really good, then realize it's either flawed and can't pass the test cases, or it's too slow and times out. I'd search up the solution and then think to myself how I could never come up with a solution like that. I'm not smart enough. Funny thing is, those were easy level problems! Now I look back at those problems like they are nothing. I can code an optimal solution with my eyes closed in 30 seconds. &lt;/p&gt;

&lt;p&gt;A mental model that would have helped me a lot when I started is to think of learning the same way I think about exercise or weight lifting. If you challenge yourself with sufficient weight and go close to failure then your muscle will grow because you've put your body under a new stimulus that it needs to adapt to. You don't tell the muscle how to grow, the body just does that for you in the background. Similarly when you do Leetcode you challenge yourself with a problem you know is slightly above your pay grade. Then once you complete it and feel exhausted your brain realizes it needs to adapt to make you more efficient at doing this. And by the time of the next session your brain has magically made you slightly better at this. So ignore any discouraging thoughts that make you believe that if you can't solve an easy problem now then you will be destined to stay that way your whole life. You'd be surprised how fast you can adapt to these things.&lt;/p&gt;

&lt;h2&gt;
  
  
  Extra Little Tid-bit
&lt;/h2&gt;

&lt;p&gt;Hey if you stuck around I want to give you one more little tip. &lt;strong&gt;Always challenge yourself.&lt;/strong&gt; If you've never heard of the 10,000 hour rule it states that if you practice something for 10k hours then you'll be a master in that field. I watched an interview with Andrej Karpathy where he said that those 10k hours have to be quality hours where you are close to your ceiling and you are actively challenging yourself. For example if you want to get better at math and keep practicing addition with single digits then you won't get better. The cycle is simple. Practice something close to your ceiling -&amp;gt; adapt (sleep, rest, eat) -&amp;gt; repeat. After every practice session you develop a higher ceiling! And if you're wondering how you can determine if something is close to your ceiling I say just pick something that you don't immediately know the solution to, especially if it's slightly exhausting or hard to figure out.&lt;/p&gt;

&lt;p&gt;Thanks for reading!&lt;/p&gt;

&lt;p&gt;check out my site &lt;a href="https://coderacer.dev" rel="noopener noreferrer"&gt;coderacer&lt;/a&gt; to improve your code typing speed in 10 different languages!&lt;/p&gt;

&lt;p&gt;Until next time!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>productivity</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Why Programmers Need To Type Fast</title>
      <dc:creator>Cyber Janitor</dc:creator>
      <pubDate>Tue, 10 Mar 2026 16:16:55 +0000</pubDate>
      <link>https://forem.com/cyberjanitor/why-programmers-need-to-type-fast-3k10</link>
      <guid>https://forem.com/cyberjanitor/why-programmers-need-to-type-fast-3k10</guid>
      <description>&lt;p&gt;Hi,&lt;/p&gt;

&lt;p&gt;Do you have many brilliant ideas but struggle to type the verbose lines of code you need or hate having to look down at your keyboard to find the curly brace and semi colon. What you should do is switch to Python 😂! I'm just kidding! But what you do need is to get faster at coding. And by that I don't mean your problem solving (which is very important too don't get me wrong). This post will focus on increasing your actual keyboard speed. This is often a neglected part of coding. Speed matters. Of course you need to be good at problem solving but don't let speed limit you.&lt;/p&gt;

&lt;h2&gt;
  
  
  So How Do You Type Lighting Fast?
&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%2Fj1qynjyr33dva490sgqv.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%2Fj1qynjyr33dva490sgqv.png" alt="How your typing will look after using coderacer" width="500" height="219"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There's &lt;strong&gt;Two Steps&lt;/strong&gt;:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Get your general Words Per Minute (WPM) up&lt;/li&gt;
&lt;li&gt;Do code specific typing practice&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;For step 1 I'd recommend monkeytype and typeracer. These websites allow you to type out quotes, text snippets, and random words. They are both free and time tested and helped me a lot. Getting your general typing skills better will make you type word much faster and aside from the langauge specific characters, a lot of coding is really key words and variables.&lt;/p&gt;

&lt;p&gt;Step 2 is all about refining your code specific speed. Semicolons, brackets, curly bracers, etc. are all characters you don't use much on a daily basis. To practice that, I'd recommend &lt;a href="https://coderacer.dev" rel="noopener noreferrer"&gt;CodeRacer&lt;/a&gt; since that's a site I created for myself to get faster at coding and it worked. It's like the sites above except you can type out code snippets instead of general text. It's totally free to use and you can practice in 10 languages and type real code snippets in JavaScript, Python, Java, C++, Go, TypeScript, Kotlin, HTML, Typescript, &amp;amp; C#. It also lets you view your wpm, mistakes, accuracy, and a leaderboard. Again it's totally free and you don't need an account to play but you can create one if you want to view your past games &amp;amp; stats.&lt;/p&gt;

&lt;p&gt;If you want to get better at typing actual code check out &lt;a href="https://coderacer.dev" rel="noopener noreferrer"&gt;https://coderacer.dev&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Thanks for reading!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>productivity</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Increase Your Coding Speed FAST</title>
      <dc:creator>Cyber Janitor</dc:creator>
      <pubDate>Mon, 09 Mar 2026 04:47:43 +0000</pubDate>
      <link>https://forem.com/cyberjanitor/increase-your-coding-speed-fast-5g1e</link>
      <guid>https://forem.com/cyberjanitor/increase-your-coding-speed-fast-5g1e</guid>
      <description>&lt;h2&gt;
  
  
  Why Does Code Typing Speed Matter?
&lt;/h2&gt;

&lt;p&gt;Increasing your coding speed is really important because it allows you to focus on implementation rather then be slowed down by ability. When typing code becomes second nature, you can allocate all your brain processing power to actual problem solving.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tool To Boost Your Speed
&lt;/h2&gt;

&lt;p&gt;This is a site that I created but I promise its actually good and not just a lazy promo. It’s a free game / site I created called &lt;a href="https://coderacer.dev" rel="noopener noreferrer"&gt;CodeRacer&lt;/a&gt;. This site allow you to type out code snippets in 10 different languages (Java, Python, C++, C, Typescript, Go, C#, HTML, Javascript, &amp;amp; Kotlin).&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%2F04okw3hkqp78yqagruch.webp" 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%2F04okw3hkqp78yqagruch.webp" alt="A preview of CodeRacer. You can type out snippets and see your stats after" width="800" height="321"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I created this tool for myself a few years back and only just recently released it. I used to have to look down on my keyboard when typing things like semi colons, brackets, curly braces, parenthesis, numbers, or even greater/less than signs. Games like typeracer and monkeytype were great for general speed but these characters were often never present in those games and so I thought the best way to get better at typing code is to type more code. So I developed CodeRacer. Within just a week I noticed a huge difference in my speed. I didn’t have to look down at the keyboard any more to type these characters and my coding speed got better. And it wasn’t a placebo because I tracked the WPM (words per minute) and over time it got higher.&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%2Fn97fhdnfbyd6hgpwu4l9.webp" 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%2Fn97fhdnfbyd6hgpwu4l9.webp" alt="WPM tracking after completing the game. More stats can be seen in the user profile page. (No need to create an account to play. But game history/metrics can be tied to an account)" width="800" height="490"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Try it out now. If you want to improve your coding speed head over to &lt;strong&gt;&lt;a href="https://coderacer.dev" rel="noopener noreferrer"&gt;https://coderacer.dev&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>developers</category>
      <category>webdev</category>
      <category>coding</category>
      <category>programming</category>
    </item>
  </channel>
</rss>
