<?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: Sadevz Labs</title>
    <description>The latest articles on DEV Community by Sadevz Labs (@sadevz_labs_01f7996f92795).</description>
    <link>https://dev.to/sadevz_labs_01f7996f92795</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.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3936467%2F9fd08d59-644a-4422-8845-d06a8280c155.png</url>
      <title>DEV Community: Sadevz Labs</title>
      <link>https://dev.to/sadevz_labs_01f7996f92795</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/sadevz_labs_01f7996f92795"/>
    <language>en</language>
    <item>
      <title>Regex Doesn't Have to Look Like Alien Mathematics</title>
      <dc:creator>Sadevz Labs</dc:creator>
      <pubDate>Wed, 26 Aug 2026 12:55:56 +0000</pubDate>
      <link>https://dev.to/sadevz_labs_01f7996f92795/regex-doesnt-have-to-look-like-alien-mathematics-251d</link>
      <guid>https://dev.to/sadevz_labs_01f7996f92795/regex-doesnt-have-to-look-like-alien-mathematics-251d</guid>
      <description>&lt;p&gt;Regular expressions are incredibly useful.&lt;/p&gt;

&lt;p&gt;They're also remarkably good at making experienced developers stare at 30 characters for five minutes.&lt;/p&gt;

&lt;p&gt;Take something simple:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;^[A-Za-z0-9]+$&lt;br&gt;
&lt;/code&gt;&lt;br&gt;
Once you know the pieces, it isn't nearly as intimidating.&lt;/p&gt;

&lt;p&gt;'^' means the beginning of the string.&lt;/p&gt;

&lt;p&gt;[A-Za-z0-9] matches letters and numbers.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;means one or more.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;$ marks the end of the string.&lt;/p&gt;

&lt;p&gt;The problem with regex isn't necessarily writing it.&lt;/p&gt;

&lt;p&gt;It's remembering all the tiny pieces.&lt;/p&gt;

&lt;p&gt;The regex syntax I keep forgetting&lt;/p&gt;

&lt;p&gt;Some of the most useful patterns are also the easiest to forget:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;\d    digit
\w    word character
\s    whitespace
.     any character
+     one or more
*     zero or more
?     zero or one
^     start
$     end
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Then there are groups, character classes, quantifiers, lookaheads and all the other things that send you searching the web again.&lt;/p&gt;

&lt;p&gt;So I made myself a reference&lt;/p&gt;

&lt;p&gt;While building Sadevz Tools, I created a Regex Cheat Sheet that keeps the common syntax and patterns together in one place.&lt;/p&gt;

&lt;p&gt;You can bookmark it here:&lt;/p&gt;


&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
      &lt;div class="c-embed__body flex items-center justify-between"&gt;
        &lt;a href="https://sadevz.com/resources/regex-cheat-sheet/" rel="noopener noreferrer" class="c-link fw-bold flex items-center"&gt;
          &lt;span class="mr-2"&gt;sadevz.com&lt;/span&gt;
          

        &lt;/a&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;



&lt;p&gt;I also built a Regex Tester for actually experimenting with patterns:&lt;/p&gt;


&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
        &lt;div class="c-embed__cover"&gt;
          &lt;a href="https://sadevz.com/regex-tester/" class="c-link align-middle" rel="noopener noreferrer"&gt;
            &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fsadevz.com%2Fregex-tester%2Fog-image.png" height="" class="m-0" width=""&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://sadevz.com/regex-tester/" rel="noopener noreferrer" class="c-link"&gt;
            Regex Tester — Test &amp;amp; Debug Regular Expressions Free | Sadevz
          &lt;/a&gt;
        &lt;/h2&gt;
          &lt;p class="truncate-at-3"&gt;
            Live match highlighting, capturing groups, replace testing, examples and a cheat sheet. 100% client-side.
          &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://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fsadevz.com%2Ffavicon.png" width="544" height="541"&gt;
          sadevz.com
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;The combination has become the workflow I prefer:&lt;/p&gt;

&lt;p&gt;Reference → write pattern → test → adjust.&lt;/p&gt;

&lt;p&gt;No account or installation needed.&lt;/p&gt;

&lt;p&gt;Regex probably won't ever become beautiful.&lt;/p&gt;

&lt;p&gt;But at least we can make it slightly less hostile. 😄&lt;/p&gt;

</description>
      <category>coding</category>
      <category>programming</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>What Is Actually Inside a JWT?</title>
      <dc:creator>Sadevz Labs</dc:creator>
      <pubDate>Sat, 22 Aug 2026 16:25:21 +0000</pubDate>
      <link>https://dev.to/sadevz_labs_01f7996f92795/what-is-actually-inside-a-jwt-5clh</link>
      <guid>https://dev.to/sadevz_labs_01f7996f92795/what-is-actually-inside-a-jwt-5clh</guid>
      <description>&lt;p&gt;If you've worked with authentication, you've probably seen something resembling this:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;xxxxx.yyyyy.zzzzz&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;That's a JSON Web Token, or JWT.&lt;/p&gt;

&lt;p&gt;It looks cryptic at first, but its basic structure is surprisingly simple.&lt;/p&gt;

&lt;p&gt;A JWT normally contains three sections:&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Header
&lt;/h2&gt;

&lt;p&gt;The header contains information about the token itself, such as the signing algorithm and token type.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Payload
&lt;/h2&gt;

&lt;p&gt;The payload contains claims.&lt;/p&gt;

&lt;p&gt;Depending on the application, these might include things such as a user ID, role, issuer or expiration time.&lt;/p&gt;

&lt;p&gt;One important thing to remember: encoded does not mean encrypted.&lt;/p&gt;

&lt;p&gt;You shouldn't assume information inside a JWT payload is secret simply because the token looks unreadable.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Signature
&lt;/h2&gt;

&lt;p&gt;The signature is used to verify that the token hasn't been altered.&lt;/p&gt;

&lt;p&gt;Put the three pieces together and you get the familiar:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;header.payload.signature&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;A quick way to inspect one&lt;/p&gt;

&lt;p&gt;While working on Sadevz Tools, I built a small browser-based JWT Decoder for inspecting token contents without needing to set up a project just to decode one.&lt;/p&gt;

&lt;p&gt;You can use it here:&lt;/p&gt;


&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
        &lt;div class="c-embed__cover"&gt;
          &lt;a href="https://sadevz.com/jwt-decoder/" class="c-link align-middle" rel="noopener noreferrer"&gt;
            &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fsadevz.com%2Fjwt-decoder%2Fog-image.png" height="" class="m-0" width=""&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://sadevz.com/jwt-decoder/" rel="noopener noreferrer" class="c-link"&gt;
            JWT Decoder — Decode &amp;amp; Inspect JSON Web Tokens Free | Sadevz
          &lt;/a&gt;
        &lt;/h2&gt;
          &lt;p class="truncate-at-3"&gt;
            Paste any JWT to instantly view its header, payload, expiration and signature. 100% client-side, nothing leaves your browser.
          &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://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fsadevz.com%2Ffavicon.png" width="544" height="541"&gt;
          sadevz.com
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;It's free and doesn't require an account.&lt;/p&gt;

&lt;p&gt;I'm building these utilities around a simple idea: developer tools should sometimes just do one job and get out of your way.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;What small developer utility do you find yourself repeatedly searching for?&lt;/em&gt;&lt;/p&gt;

</description>
      <category>backend</category>
      <category>security</category>
      <category>software</category>
      <category>webdev</category>
    </item>
    <item>
      <title>JSON Formatting Is Simple. Debugging Bad JSON Isn't.</title>
      <dc:creator>Sadevz Labs</dc:creator>
      <pubDate>Fri, 21 Aug 2026 17:50:24 +0000</pubDate>
      <link>https://dev.to/sadevz_labs_01f7996f92795/json-formatting-is-simple-debugging-bad-json-isnt-465k</link>
      <guid>https://dev.to/sadevz_labs_01f7996f92795/json-formatting-is-simple-debugging-bad-json-isnt-465k</guid>
      <description>&lt;p&gt;JSON looks harmless until you're staring at a payload with a missing comma somewhere around line 200.&lt;/p&gt;

&lt;p&gt;I've run into this plenty of times while working with APIs, configuration files and backend responses. Usually the problem is tiny:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;a missing comma&lt;/li&gt;
&lt;li&gt;an extra comma&lt;/li&gt;
&lt;li&gt;mismatched brackets&lt;/li&gt;
&lt;li&gt;single quotes instead of double quotes&lt;/li&gt;
&lt;li&gt;an unescaped character&lt;/li&gt;
&lt;li&gt;or simply a giant minified response that's impossible to read&lt;/li&gt;
&lt;li&gt;The first thing I do: format it&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Take something like:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nl"&gt;"user"&lt;/span&gt;&lt;span class="p"&gt;:{&lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="s2"&gt;"Sam"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="nl"&gt;"active"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="nl"&gt;"roles"&lt;/span&gt;&lt;span class="p"&gt;:[&lt;/span&gt;&lt;span class="s2"&gt;"admin"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="s2"&gt;"editor"&lt;/span&gt;&lt;span class="p"&gt;]}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;and turn it into:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"user"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Sam"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"active"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"roles"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="s2"&gt;"admin"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="s2"&gt;"editor"&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Nothing magical happened, but the structure becomes immediately easier to inspect.&lt;/p&gt;

&lt;h2&gt;
  
  
  Formatting and validation aren't the same thing
&lt;/h2&gt;

&lt;p&gt;This distinction is easy to overlook.&lt;/p&gt;

&lt;p&gt;Formatting makes valid JSON &lt;em&gt;readable&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Validation tells you whether the JSON is actually &lt;em&gt;valid&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;If the input contains broken syntax, prettifying it isn't enough. You first need to know where the parser stopped understanding the structure.&lt;/p&gt;

&lt;h2&gt;
  
  
  So I built the tiny tool I wanted
&lt;/h2&gt;

&lt;p&gt;While building &lt;strong&gt;Sadevz Tools&lt;/strong&gt;, I added a browser-based JSON Formatter &amp;amp; Validator for exactly this workflow.&lt;/p&gt;

&lt;p&gt;You can try it here:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://sadevz.com/json-formatter/" rel="noopener noreferrer"&gt;https://sadevz.com/json-formatter/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There's no signup or installation. Paste the JSON, work with it, and move on.&lt;/p&gt;

&lt;p&gt;I'm gradually building more small browser utilities around the same idea: tools that solve one annoying problem without turning it into a SaaS product.&lt;/p&gt;

&lt;p&gt;If you're a developer, I'd be interested to know what feature you consider essential in a JSON utility.&lt;/p&gt;

</description>
      <category>backend</category>
      <category>debugging</category>
      <category>json</category>
      <category>programming</category>
    </item>
    <item>
      <title>A Student's Blog</title>
      <dc:creator>Sadevz Labs</dc:creator>
      <pubDate>Sat, 30 May 2026 19:22:21 +0000</pubDate>
      <link>https://dev.to/sadevz_labs_01f7996f92795/a-students-blog-2mn</link>
      <guid>https://dev.to/sadevz_labs_01f7996f92795/a-students-blog-2mn</guid>
      <description>&lt;p&gt;One of my students just wrote his first article ever. I asked him to write on the relation between full stack developers and AI, and can AI replace full stack developers, if yes, why. &lt;br&gt;
So, he did his research on the web and came up with the following article. Please have a look at it, and see a student's POV. &lt;/p&gt;

&lt;p&gt;The article is at: &lt;br&gt;
&lt;/p&gt;
&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
      &lt;div class="c-embed__body flex items-center justify-between"&gt;
        &lt;a href="https://www.sadevz.com/blog/will-ai-replace-full-stack-developers-understanding-the-real-limits" rel="noopener noreferrer" class="c-link fw-bold flex items-center"&gt;
          &lt;span class="mr-2"&gt;sadevz.com&lt;/span&gt;
          

        &lt;/a&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


</description>
      <category>ai</category>
      <category>webdev</category>
      <category>programming</category>
    </item>
  </channel>
</rss>
