<?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: Andrei Iatsuk</title>
    <description>The latest articles on DEV Community by Andrei Iatsuk (@ytskk).</description>
    <link>https://dev.to/ytskk</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%2F901292%2Fe9237942-b613-4aeb-a5a6-18bebaea381e.jpg</url>
      <title>DEV Community: Andrei Iatsuk</title>
      <link>https://dev.to/ytskk</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/ytskk"/>
    <language>en</language>
    <item>
      <title>Don't use mutable default arguments in Python</title>
      <dc:creator>Andrei Iatsuk</dc:creator>
      <pubDate>Mon, 01 May 2023 14:21:03 +0000</pubDate>
      <link>https://dev.to/ytskk/dont-use-mutable-default-arguments-in-python-56f4</link>
      <guid>https://dev.to/ytskk/dont-use-mutable-default-arguments-in-python-56f4</guid>
      <description>&lt;h2&gt;
  
  
  What is the mutable objects?
&lt;/h2&gt;

&lt;p&gt;Mutable objects — objects that allow you to modify their contents, such as adding, removing, or changing elements, without creating a new object.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Lists: A list is an ordered, mutable collection of items. You can add, remove, or change elements in a list after it's created. Example: &lt;code&gt;[1, 2, 3]&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Dictionaries: A dictionary is an unordered collection of key-value pairs. You can add, remove, or modify key-value pairs after the dictionary is created. Example: &lt;code&gt;{'key1': 'value1', 'key2': 'value2'}&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Sets: A set is an unordered collection of unique elements. You can add or remove elements from a set after it's created. Example: &lt;code&gt;{1, 2, 3}&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Custom classes or objects created using class definitions in Python are also generally mutable, unless you specifically design them to be immutable. &lt;code&gt;Example: MutableClass('Alice', 20)&lt;/code&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;For example built-in types like strings, tuples, and frozensets are immutable, meaning that you cannot modify them after they are created. When working with mutable types, it's important to be aware of their behavior, especially when passing them as arguments to functions or using them as default arguments.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why not to use
&lt;/h2&gt;

&lt;p&gt;Mutable default arguments can lead to unexpected behavior because they are created &lt;strong&gt;only once&lt;/strong&gt; during the function definition, and not every time the function is called. This means that if a mutable object like a list or dictionary is used as a default argument and is modified inside the function, the changes will persist across multiple function calls, potentially affecting the behavior of subsequent calls.&lt;/p&gt;

&lt;p&gt;Here's an example with mutable default argument:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;add_item&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;item&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;items&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;[]):&lt;/span&gt;
    &lt;span class="n"&gt;items&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;append&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;item&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;items&lt;/span&gt;

&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;add_item&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;  &lt;span class="c1"&gt;# Output: [1]
&lt;/span&gt;&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;add_item&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;  &lt;span class="c1"&gt;# Expected output: [2], Actual output: [1, 2]
&lt;/span&gt;&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;add_item&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;  &lt;span class="c1"&gt;# Expected output: [3], Actual output: [1, 2, 3]
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;As you can see, the &lt;code&gt;items&lt;/code&gt; is being shared across multiple function calls, and its contents are accumulating with each call.&lt;/p&gt;

&lt;p&gt;To avoid this issue, it's recommended to use None as the default value for mutable arguments and create a new mutable object inside the function if the input is None.&lt;/p&gt;

&lt;p&gt;Here's the right version:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;add_item&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;item&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;items&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="bp"&gt;None&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
    &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;items&lt;/span&gt; &lt;span class="ow"&gt;is&lt;/span&gt; &lt;span class="bp"&gt;None&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
        &lt;span class="n"&gt;items&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[]&lt;/span&gt;
    &lt;span class="n"&gt;items&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;append&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;item&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;items&lt;/span&gt;

&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;add_item&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;  &lt;span class="c1"&gt;# Output: [1]
&lt;/span&gt;&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;add_item&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;  &lt;span class="c1"&gt;# Output: [2]
&lt;/span&gt;&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;add_item&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;  &lt;span class="c1"&gt;# Output: [3]
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A new &lt;code&gt;items&lt;/code&gt; is created for each function call, ensuring that the lists are not shared across calls, and the function behaves as expected.&lt;/p&gt;

&lt;h3&gt;
  
  
  In lieu of a conclusion
&lt;/h3&gt;

&lt;p&gt;Understanding the difference between mutable and immutable objects in Python is crucial for writing efficient, reliable and secure code. As a developer, being aware of the consequences of mutability will help you make informed decisions when choosing appropriate data structures and handling function arguments. It will also help prevent unintended side effects and optimize code in terms of performance and memory management.&lt;br&gt;
I hope this article was useful to you and helps you better understand the concepts of changeability and immutability in Python. If you enjoyed this article and want to receive more content of this nature, please clamp, subscribe and welcome to the &lt;a href="https://dev.to/ytskk/lets-create-developers-community-5g1o"&gt;Digital Creators Community&lt;/a&gt;. Stay tuned for the latest programming tips, best practices, and ideas to help you improve your coding journey.&lt;br&gt;
Happy coding!&lt;/p&gt;

</description>
      <category>python</category>
      <category>beginners</category>
      <category>programming</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Complete Markdown guide</title>
      <dc:creator>Andrei Iatsuk</dc:creator>
      <pubDate>Tue, 25 Apr 2023 19:36:39 +0000</pubDate>
      <link>https://dev.to/ytskk/complete-markdown-guide-4hia</link>
      <guid>https://dev.to/ytskk/complete-markdown-guide-4hia</guid>
      <description>&lt;p&gt;In this article, I want to show you how you can do basic formatting by adding a few punctuation characters.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is M↓?
&lt;/h2&gt;

&lt;p&gt;Markdown is a markup language that you can use to add formatting to text documents. It is used everywhere, from comments, books, emails, to blog design, this article is formatted with markdown. It can be converted into HTML or other formats. Think of it as a streamlined, minimalist approach to web content creation that gives you the power to create stylish and engaging documents without getting bogged down in complicated code.&lt;br&gt;
Markdown is portable, lightweight, platform independent and quick. You can format text without taking your hands off the keyboard, and this is very important! You can even don’t apply the formatting and the text will still be readable.&lt;br&gt;
Again, the main idea is to add few characters to format your text, let’s dive in.&lt;/p&gt;
&lt;h2&gt;
  
  
  Basic Markdown Syntax
&lt;/h2&gt;
&lt;h3&gt;
  
  
  Headings
&lt;/h3&gt;

&lt;p&gt;There six level of headings, from 1 (the largest) to 6 (smallest). Create headers by using the hash &lt;code&gt;#&lt;/code&gt; symbol, followed by a space and your text. The number of hashes determines the header level.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# First level heading
## Second level heading
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h1&gt;
  
  
  This is an H1
&lt;/h1&gt;

&lt;h2&gt;
  
  
  This is an H2
&lt;/h2&gt;

&lt;h3&gt;
  
  
  This is an H3
&lt;/h3&gt;

&lt;h4&gt;
  
  
  This is an H4
&lt;/h4&gt;

&lt;h5&gt;
  
  
  This is an H5
&lt;/h5&gt;

&lt;h6&gt;
  
  
  This is an H6
&lt;/h6&gt;

&lt;h3&gt;
  
  
  Emphasis. Bold and Italic
&lt;/h3&gt;

&lt;p&gt;Add emphasis to your text using asterisks &lt;code&gt;*&lt;/code&gt; or underscores &lt;code&gt;_&lt;/code&gt; to make it bold or italic.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;*Italic text* or _Italic text_
**Bold text** or __Bold text__
***Bold and italic text*** or ___Bold and italic text___
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Italic &lt;code&gt;*Italic text*&lt;/code&gt; or &lt;code&gt;_Italic text_&lt;/code&gt;  &lt;em&gt;Italic text&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;Bold &lt;code&gt;**Bold text**&lt;/code&gt; or &lt;code&gt;__Bold text__&lt;/code&gt; &lt;strong&gt;Bold text&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Bold + Italic &lt;code&gt;*** Bold and italic text***&lt;/code&gt; or &lt;code&gt;___ Bold and italic text___&lt;/code&gt; &lt;strong&gt;&lt;em&gt;Bold and italic text&lt;/em&gt;&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Highlight and Strikethrough
&lt;/h3&gt;

&lt;p&gt;Use double equals signs to ==highlight== text&lt;br&gt;
&lt;/p&gt;

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

&lt;/div&gt;



&lt;p&gt;Use double tildes &lt;code&gt;~&lt;/code&gt; to &lt;del&gt;strikethrough&lt;/del&gt; text&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;~~strikethrough~~
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Lists
&lt;/h3&gt;

&lt;p&gt;You can create ordered (numbered) and unordered (bullet points) lists with or without task. Most programs support keeping a list creation after you move to a next line.&lt;/p&gt;

&lt;h4&gt;
  
  
  Unordered Lists
&lt;/h4&gt;

&lt;p&gt;Or bullet list you can create by using asterisk &lt;code&gt;*&lt;/code&gt;, hyphen &lt;code&gt;-&lt;/code&gt;, or plus sign &lt;code&gt;+&lt;/code&gt;, followed by a space.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;- Bullet point 1
- Bullet point 2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  Numbered Lists
&lt;/h4&gt;

&lt;p&gt;Start with &lt;code&gt;1.&lt;/code&gt; or with any number.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;1. First item
2. Second item 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  Task Lists
&lt;/h4&gt;

&lt;p&gt;Type &lt;code&gt;- [ ]&lt;/code&gt; or &lt;code&gt;1. [ ]&lt;/code&gt; then a space. By adding an &lt;code&gt;x&lt;/code&gt; into the brackets you can set task complete or incomplete.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;- [ ] Unordered incomplete task list item
1. [x] Numbered completed task list item
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Our plan:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;[x] What is M↓?&lt;/li&gt;
&lt;li&gt;[ ] Basic Markdown Syntax

&lt;ol&gt;
&lt;li&gt;[x] Headings&lt;/li&gt;
&lt;li&gt;[x] Emphasis. Bold and Italic&lt;/li&gt;
&lt;li&gt;[x] Highlight and Strikethrough&lt;/li&gt;
&lt;li&gt;[x] Lists

&lt;ul&gt;
&lt;li&gt;[x] Unordered lists&lt;/li&gt;
&lt;li&gt;[x] Numbered lists&lt;/li&gt;
&lt;li&gt;[x] Task lists&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;[ ] Blockquotes&lt;/li&gt;
&lt;li&gt;[ ] Links and Images&lt;/li&gt;
&lt;li&gt;[ ] Code and Codeblocks&lt;/li&gt;
&lt;/ol&gt;


&lt;/li&gt;

&lt;li&gt;[ ] Advanced Markdown Syntax

&lt;ol&gt;
&lt;li&gt;[ ] Tables&lt;/li&gt;
&lt;li&gt;[ ] Horizontal lines&lt;/li&gt;
&lt;li&gt;[ ] Escaping characters&lt;/li&gt;
&lt;li&gt;[ ] Footnote&lt;/li&gt;
&lt;li&gt;[ ] Comments&lt;/li&gt;
&lt;li&gt;[ ] Metadata&lt;/li&gt;
&lt;/ol&gt;


&lt;/li&gt;

&lt;li&gt;[ ] Useful Tools and Apps&lt;/li&gt;

&lt;li&gt;[ ] Ready, Set, Markdown!&lt;/li&gt;

&lt;/ol&gt;

&lt;p&gt;As you can see, you can nest lists and combine them. Don't worry about numbering going off during editing, everything will be fine in reader mode.&lt;/p&gt;

&lt;h3&gt;
  
  
  Blockquotes
&lt;/h3&gt;

&lt;p&gt;Add a space after &lt;code&gt;&amp;gt;&lt;/code&gt; to quote.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;gt; This is the blockquote.
&amp;gt;&amp;gt; Double indented
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;Different isn’t always better but better is always different!&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;— Author Unknown&lt;/p&gt;

&lt;h3&gt;
  
  
  Links and Images
&lt;/h3&gt;

&lt;h4&gt;
  
  
  Links
&lt;/h4&gt;

&lt;p&gt;Use the formula &lt;code&gt;[Link text](Link url)&lt;/code&gt; to add links. &lt;a href="https://www.bing.com" rel="noopener noreferrer"&gt;Open Google&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Images
&lt;/h4&gt;

&lt;p&gt;Add an exclamation mark to render both, web and local image&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;‌![Description](https://www.example.com/image.jpg)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Code and Codeblocks
&lt;/h3&gt;

&lt;h4&gt;
  
  
  Code
&lt;/h4&gt;

&lt;p&gt;Include inline code by wrapping it in backticks. For example, press &lt;code&gt;ctrl&lt;/code&gt;+&lt;code&gt;B&lt;/code&gt; to make text bold&lt;/p&gt;

&lt;h4&gt;
  
  
  Codeblocks
&lt;/h4&gt;

&lt;p&gt;Add the language name after the triple backticks to enable Syntax highlighting. &lt;em&gt;Does not work with all editors!&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;hello_world&lt;/span&gt;&lt;span class="p"&gt;():&lt;/span&gt;
    &lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Hello, World!&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Advanced Markdown Syntax
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Tables
&lt;/h3&gt;

&lt;p&gt;Create tables using pipes &lt;code&gt;|&lt;/code&gt; and hyphens &lt;code&gt;‌-&lt;/code&gt;. The header row is separated from the content by a line of hyphens and pipes. Each column in the row is separated by &lt;code&gt;|&lt;/code&gt;.&lt;br&gt;
You can apply other markdown formatting.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Header 1 | Header 2
---|---
Row 1 | Row 2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Row alignment&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;strong&gt;Text Align&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;Action&lt;/strong&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Left&lt;/td&gt;
&lt;td&gt;Used by default. Wrap colon &lt;code&gt;:&lt;/code&gt; horizontal line on the left side&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Center&lt;/td&gt;
&lt;td&gt;Wrap colon &lt;code&gt;:&lt;/code&gt; horizontal line on both sides&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Right&lt;/td&gt;
&lt;td&gt;Wrap colon &lt;code&gt;:&lt;/code&gt; horizontal line on the right side&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  Horizontal lines
&lt;/h3&gt;

&lt;p&gt;Create horizontal rules using three or more hyphens &lt;code&gt;---&lt;/code&gt;, asterisks &lt;code&gt;***&lt;/code&gt;, or underscores &lt;code&gt;___&lt;/code&gt; on a separate line.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;How cool is that?
___
The reverse side of the coin
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Escaping characters
&lt;/h3&gt;

&lt;p&gt;If you want to add a formatting character as a text, type a backslash first &lt;code&gt;\&lt;/code&gt;. This means &lt;code&gt;\*&lt;/code&gt; gives &lt;code&gt;*&lt;/code&gt;, &lt;code&gt;\_&lt;/code&gt; gives &lt;code&gt;_&lt;/code&gt; etc.&lt;br&gt;
&lt;em&gt;Escaping does not work with backtick character.&lt;/em&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  Footnote
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;!&lt;/strong&gt; Some Markdown parsers does not offer additional features, such as Task Lists, Footnotes, and Strikethrough text. Check your parser's documentation to see which features are supported.&lt;br&gt;
&lt;/p&gt;


&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Some body[^1] once told me…

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

&lt;/div&gt;



&lt;p&gt;To add Wikipedia&lt;sup id="fnref1"&gt;1&lt;/sup&gt; like footnote use square brackets preceded by a caret. Then add the footnote content like a reference link, for example.&lt;/p&gt;

&lt;h3&gt;
  
  
  Commets
&lt;/h3&gt;

&lt;p&gt;Markdown does not provide support for comments, but many editors do. &lt;em&gt;Each has a different format.&lt;/em&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Metadata or Frontmatter
&lt;/h3&gt;

&lt;p&gt;Frontmatter is a way to identify metadata in Markdown files. Metadata can literally be anything you want it to be, but often it's used for data elements your page needs and you don't want to show directly.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;---
type: book
start-date: 2023-01-01
finish-date: 2023-03-22
---
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Useful Tools and Apps
&lt;/h2&gt;

&lt;p&gt;Here's an list of tools and apps that make working with Markdown even more enjoyable:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Text editors: iA Writer ❤️, Sublime Text, Atom, Visual Studio Code, Vim ❤️, Emacs, Notepad++, BBEdit, Ulysses, LightPaper, TextMate, Byword, Brackets.&lt;/li&gt;
&lt;li&gt;Markdown previewers: Marked 2, Typora, Dillinger, StackEdit, Remarkable, Pandoc, Haroopad, MacDown, Abricotine, ReText.&lt;/li&gt;
&lt;li&gt;Note-taking apps: Bear, Simplenote, Joplin, Evernote, Quiver, Zettlr, Turtl, Boostnote, Notable, Inkdrop, Standard Notes, Obsidian ❤️.&lt;/li&gt;
&lt;li&gt;Documentation and collaboration tools: GitHub, GitLab, Bitbucket, HackMD, Notion, Dropbox Paper, Slite, Confluence, BookStack, Docusaurus, MkDocs.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Ready, Set, Markdown!
&lt;/h2&gt;

&lt;p&gt;You're now equipped with the knowledge to create beautiful, engaging documents using Markdown. Go ahead, unleash your creativity and let your words flow with style. Happy writing!&lt;/p&gt;

&lt;h3&gt;
  
  
  P.S.
&lt;/h3&gt;

&lt;p&gt;Would you like more guides like this or would you like to share your knowledge? Welcome to the digital community of creators, see &lt;a href="https://dev.to/ytskk/lets-create-developers-community-5g1o"&gt;https://dev.to/ytskk/lets-create-developers-community-5g1o&lt;/a&gt; for details.&lt;/p&gt;




&lt;ol&gt;

&lt;li id="fn1"&gt;
&lt;p&gt;Means &lt;a href="https://en.wikipedia.org/" rel="noopener noreferrer"&gt;https://en.wikipedia.org/&lt;/a&gt; ↩&lt;/p&gt;
&lt;/li&gt;

&lt;/ol&gt;

</description>
      <category>webdev</category>
      <category>beginners</category>
      <category>tutorial</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Dev Community Statistics Research</title>
      <dc:creator>Andrei Iatsuk</dc:creator>
      <pubDate>Tue, 25 Apr 2023 13:13:01 +0000</pubDate>
      <link>https://dev.to/ytskk/dev-to-statistics-53nm</link>
      <guid>https://dev.to/ytskk/dev-to-statistics-53nm</guid>
      <description>&lt;p&gt;Hello community! Since Dev Community has an API, and it is not restricted in use, I was curious to see how the site felt at all. I calculated some statistics, which I want to share with you.&lt;/p&gt;

&lt;h3&gt;
  
  
  Data processing
&lt;/h3&gt;

&lt;p&gt;Let's start small, from the article/latest endpoint I collected 497039 articles. Some of them were broken, I deleted them all where id, slug, path, published_at is null, leaving 497001. Very cool! Almost half a million! Surprisingly, all is well, but there will be some anomalies, about which follow.&lt;/p&gt;

&lt;h3&gt;
  
  
  Date related statistics
&lt;/h3&gt;

&lt;p&gt;The data is current as of April 25, 2023 12:00 PM.&lt;br&gt;
The copywrite states that it is effective as of 2016, but the API has returned several articles from 1970, 2001 and 2004, 2014, I will consider all articles hereafter. &lt;br&gt;
Let's see how many articles were published in each year.&lt;/p&gt;

&lt;h4&gt;
  
  
  Articles per year
&lt;/h4&gt;

&lt;p&gt;The data is sorted by articles count descending.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;strong&gt;Year&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;Articles Count&lt;/strong&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;2020&lt;/td&gt;
&lt;td&gt;121944&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2022&lt;/td&gt;
&lt;td&gt;121291&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2021&lt;/td&gt;
&lt;td&gt;119619&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2019&lt;/td&gt;
&lt;td&gt;57923&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2023&lt;/td&gt;
&lt;td&gt;46241&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2018&lt;/td&gt;
&lt;td&gt;19578&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2017&lt;/td&gt;
&lt;td&gt;9032&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2016&lt;/td&gt;
&lt;td&gt;659&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2015&lt;/td&gt;
&lt;td&gt;309&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2014&lt;/td&gt;
&lt;td&gt;151&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2013&lt;/td&gt;
&lt;td&gt;141&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2011&lt;/td&gt;
&lt;td&gt;35&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2012&lt;/td&gt;
&lt;td&gt;34&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2010&lt;/td&gt;
&lt;td&gt;33&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2009&lt;/td&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2001&lt;/td&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1970&lt;/td&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2004&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2000&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;As you can see, it turned out to be the most popular years. The community has shown great growth over the years!&lt;/p&gt;

&lt;h4&gt;
  
  
  Number of articles per day
&lt;/h4&gt;

&lt;p&gt;We see good growth from 2017 to 2019 and just a monster jump from 2019 to 2021.&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%2Fhq5ff5ncv0fzt5jxhr12.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%2Fhq5ff5ncv0fzt5jxhr12.png" alt="Number of articles per day" width="800" height="420"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you look in more detail, from the end of 2022 the number of articles per day begins to grow again.&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%2Fye4rao8v63afnovkxpjt.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%2Fye4rao8v63afnovkxpjt.png" alt="Articles per day from 2019" width="800" height="416"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Articles per year
&lt;/h4&gt;

&lt;p&gt;The share of articles by year looks like this, dominated by 2020, 2021, 2022.&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%2F5asioqv6w3tvyjq45a04.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%2F5asioqv6w3tvyjq45a04.png" alt="Articles per year pie chart" width="513" height="482"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you prefer a histogram, then please&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%2Flqpopww1zpj2zb5dgojk.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%2Flqpopww1zpj2zb5dgojk.png" alt="Articles per year hist" width="800" height="220"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Articles per month
&lt;/h4&gt;

&lt;p&gt;Number of articles by month for each year. 2023 has every chance of breaking the record!&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%2Fohrmalygxp0c53jnxz5h.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%2Fohrmalygxp0c53jnxz5h.png" alt="Article per month for each year from 2017" width="800" height="351"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Next, it was interesting to assess which months saw the most activity. &lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;strong&gt;Month&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;Count&lt;/strong&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;March&lt;/td&gt;
&lt;td&gt;48658&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;January&lt;/td&gt;
&lt;td&gt;48565&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;April&lt;/td&gt;
&lt;td&gt;44862&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;February&lt;/td&gt;
&lt;td&gt;42934&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;December&lt;/td&gt;
&lt;td&gt;42016&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;October&lt;/td&gt;
&lt;td&gt;40147&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;November&lt;/td&gt;
&lt;td&gt;39586&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;August&lt;/td&gt;
&lt;td&gt;39242&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;July&lt;/td&gt;
&lt;td&gt;38678&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;September&lt;/td&gt;
&lt;td&gt;37851&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;May&lt;/td&gt;
&lt;td&gt;37665&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;June&lt;/td&gt;
&lt;td&gt;36797&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;March, January, April and February. Now you know which month has the most competition)&lt;/p&gt;

&lt;h4&gt;
  
  
  Articles per weekday
&lt;/h4&gt;

&lt;p&gt;The number by day of the week turned out to be almost in the original order, wow) Monday is a hard day - you need to handle the most articles.&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%2Fz6n6q9ams4fabnl2ll59.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%2Fz6n6q9ams4fabnl2ll59.png" alt="Articles per weekday" width="800" height="298"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Table variant&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;strong&gt;Weekday&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;Count&lt;/strong&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Monday&lt;/td&gt;
&lt;td&gt;82978&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Tuesday&lt;/td&gt;
&lt;td&gt;79608&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Wednesday&lt;/td&gt;
&lt;td&gt;77961&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Thursday&lt;/td&gt;
&lt;td&gt;76446&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Friday&lt;/td&gt;
&lt;td&gt;71795&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Sunday&lt;/td&gt;
&lt;td&gt;56069&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Saturday&lt;/td&gt;
&lt;td&gt;52144&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  Tags
&lt;/h3&gt;

&lt;p&gt;Total number of used tags is 1381472 and 54657 (3.96%) of them are unique.&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%2F4iybzq8bhmdidk04ij2t.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%2F4iybzq8bhmdidk04ij2t.png" alt="Top tags" width="800" height="305"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I'll leave the table so you can quickly go to the page.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;strong&gt;tag&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;count&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;link&lt;/strong&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;javascript&lt;/td&gt;
&lt;td&gt;90636&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/javascript"&gt;https://dev.to/t/javascript&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;webdev&lt;/td&gt;
&lt;td&gt;82029&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/webdev"&gt;https://dev.to/t/webdev&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;beginners&lt;/td&gt;
&lt;td&gt;62249&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/beginners"&gt;https://dev.to/t/beginners&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;programming&lt;/td&gt;
&lt;td&gt;43246&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/programming"&gt;https://dev.to/t/programming&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;tutorial&lt;/td&gt;
&lt;td&gt;40505&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/tutorial"&gt;https://dev.to/t/tutorial&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;react&lt;/td&gt;
&lt;td&gt;34798&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/react"&gt;https://dev.to/t/react&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;python&lt;/td&gt;
&lt;td&gt;24961&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/python"&gt;https://dev.to/t/python&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;productivity&lt;/td&gt;
&lt;td&gt;20388&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/productivity"&gt;https://dev.to/t/productivity&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;css&lt;/td&gt;
&lt;td&gt;18667&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/css"&gt;https://dev.to/t/css&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;discuss&lt;/td&gt;
&lt;td&gt;18421&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/discuss"&gt;https://dev.to/t/discuss&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;devops&lt;/td&gt;
&lt;td&gt;17198&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/devops"&gt;https://dev.to/t/devops&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;career&lt;/td&gt;
&lt;td&gt;16623&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/career"&gt;https://dev.to/t/career&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;node&lt;/td&gt;
&lt;td&gt;15599&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/node"&gt;https://dev.to/t/node&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;opensource&lt;/td&gt;
&lt;td&gt;14281&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/opensource"&gt;https://dev.to/t/opensource&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;html&lt;/td&gt;
&lt;td&gt;13795&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/html"&gt;https://dev.to/t/html&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;codenewbie&lt;/td&gt;
&lt;td&gt;13793&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/codenewbie"&gt;https://dev.to/t/codenewbie&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;aws&lt;/td&gt;
&lt;td&gt;13541&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/aws"&gt;https://dev.to/t/aws&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;typescript&lt;/td&gt;
&lt;td&gt;12582&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/typescript"&gt;https://dev.to/t/typescript&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;github&lt;/td&gt;
&lt;td&gt;10340&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/github"&gt;https://dev.to/t/github&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;java&lt;/td&gt;
&lt;td&gt;10254&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/java"&gt;https://dev.to/t/java&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;testing&lt;/td&gt;
&lt;td&gt;9714&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/testing"&gt;https://dev.to/t/testing&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;showdev&lt;/td&gt;
&lt;td&gt;9291&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/showdev"&gt;https://dev.to/t/showdev&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;security&lt;/td&gt;
&lt;td&gt;8217&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/security"&gt;https://dev.to/t/security&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;php&lt;/td&gt;
&lt;td&gt;7835&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/php"&gt;https://dev.to/t/php&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;docker&lt;/td&gt;
&lt;td&gt;7374&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/docker"&gt;https://dev.to/t/docker&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;linux&lt;/td&gt;
&lt;td&gt;7184&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/linux"&gt;https://dev.to/t/linux&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;database&lt;/td&gt;
&lt;td&gt;7042&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/database"&gt;https://dev.to/t/database&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;angular&lt;/td&gt;
&lt;td&gt;6856&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/angular"&gt;https://dev.to/t/angular&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;cloud&lt;/td&gt;
&lt;td&gt;6712&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/cloud"&gt;https://dev.to/t/cloud&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;vue&lt;/td&gt;
&lt;td&gt;6580&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/vue"&gt;https://dev.to/t/vue&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;git&lt;/td&gt;
&lt;td&gt;6506&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/git"&gt;https://dev.to/t/git&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ruby&lt;/td&gt;
&lt;td&gt;6371&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/t/ruby"&gt;https://dev.to/t/ruby&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&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%2F9m8jijl4a4519wolcsbf.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%2F9m8jijl4a4519wolcsbf.png" alt="Tags cloud" width="800" height="405"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Authors
&lt;/h3&gt;

&lt;p&gt;It's time to congratulate the most active authors. 16 most active ones.&lt;/p&gt;

&lt;h3&gt;
  
  
  Authors with most articles
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;strong&gt;User name&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;Articles count&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;Url&lt;/strong&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;excelgeek&lt;/td&gt;
&lt;td&gt;1577&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/excelgeek"&gt;https://dev.to/excelgeek&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ben&lt;/td&gt;
&lt;td&gt;1349&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/ben"&gt;https://dev.to/ben&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;chiki1601&lt;/td&gt;
&lt;td&gt;1027&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/chiki1601"&gt;https://dev.to/chiki1601&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;aumayeung&lt;/td&gt;
&lt;td&gt;981&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/aumayeung"&gt;https://dev.to/aumayeung&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;dailydevtips1&lt;/td&gt;
&lt;td&gt;969&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/dailydevtips1"&gt;https://dev.to/dailydevtips1&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;dailydeveloperjokes&lt;/td&gt;
&lt;td&gt;963&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/dailydeveloperjokes"&gt;https://dev.to/dailydeveloperjokes&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;bnevilleoneill&lt;/td&gt;
&lt;td&gt;822&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/bnevilleoneill"&gt;https://dev.to/bnevilleoneill&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;theabbie&lt;/td&gt;
&lt;td&gt;818&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/theabbie"&gt;https://dev.to/theabbie&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;dwane&lt;/td&gt;
&lt;td&gt;743&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/dwane"&gt;https://dev.to/dwane&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;thepracticaldev&lt;/td&gt;
&lt;td&gt;718&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/thepracticaldev"&gt;https://dev.to/thepracticaldev&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;asayerio_techblog&lt;/td&gt;
&lt;td&gt;660&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/asayerio_techblog"&gt;https://dev.to/asayerio_techblog&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;melvin2016&lt;/td&gt;
&lt;td&gt;650&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/melvin2016"&gt;https://dev.to/melvin2016&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;loizenai&lt;/td&gt;
&lt;td&gt;534&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/loizenai"&gt;https://dev.to/loizenai&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;apium_hub&lt;/td&gt;
&lt;td&gt;461&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/apium_hub"&gt;https://dev.to/apium_hub&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;tinydevops&lt;/td&gt;
&lt;td&gt;450&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/tinydevops"&gt;https://dev.to/tinydevops&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;sureshmohan&lt;/td&gt;
&lt;td&gt;448&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/sureshmohan"&gt;https://dev.to/sureshmohan&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Some stats&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;****&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;Count&lt;/strong&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;count&lt;/td&gt;
&lt;td&gt;110533.0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;mean&lt;/td&gt;
&lt;td&gt;4.496403788913718&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;std&lt;/td&gt;
&lt;td&gt;15.862431807521824&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;min&lt;/td&gt;
&lt;td&gt;1.0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;10%&lt;/td&gt;
&lt;td&gt;1.0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;25%&lt;/td&gt;
&lt;td&gt;1.0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;50%&lt;/td&gt;
&lt;td&gt;1.0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;75%&lt;/td&gt;
&lt;td&gt;3.0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;90%&lt;/td&gt;
&lt;td&gt;9.0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;95%&lt;/td&gt;
&lt;td&gt;16.0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;99%&lt;/td&gt;
&lt;td&gt;48.0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;max&lt;/td&gt;
&lt;td&gt;1577.0&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;There are 110533 authors and each author has written an average of 4 articles. However, a large spread, of course, against 1577 ;) Only a quarter of the authors wrote at least 3 articles. To be in the top 5% (Or write more articles than 95% of the authors) of authors by number of articles, you need to write at least 16, and to be in the top 1% already 48.&lt;/p&gt;

&lt;h4&gt;
  
  
  Most Discussed
&lt;/h4&gt;

&lt;p&gt;There's a monopoly of &lt;a class="mentioned-user" href="https://dev.to/thepracticaldev"&gt;@thepracticaldev&lt;/a&gt; and &lt;a class="mentioned-user" href="https://dev.to/ben"&gt;@ben&lt;/a&gt;, so if you take the unique ones, you get the following.&lt;/p&gt;

&lt;h5&gt;
  
  
  Here top 32 articles by comments count.
&lt;/h5&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;****&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;Article title&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;Comments count&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;Author name&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;Published date&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;Url&lt;/strong&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;Welcome Thread - v45&lt;/td&gt;
&lt;td&gt;1192&lt;/td&gt;
&lt;td&gt;dev.to staff&lt;/td&gt;
&lt;td&gt;Oct 16 2019&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/thepracticaldev/welcome-thread-v45-4fn3"&gt;https://dev.to/thepracticaldev/welcome-thread-v45-4fn3&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;Can I see your desktop home screen&lt;/td&gt;
&lt;td&gt;449&lt;/td&gt;
&lt;td&gt;Saurabh Sharma&lt;/td&gt;
&lt;td&gt;Feb 21 2018&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/itsjzt/can-i-see-your-desktop-home-screen--4ffb"&gt;https://dev.to/itsjzt/can-i-see-your-desktop-home-screen--4ffb&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;"What are you ""old enough to remember"" in software development?"&lt;/td&gt;
&lt;td&gt;387&lt;/td&gt;
&lt;td&gt;Ben Halpern&lt;/td&gt;
&lt;td&gt;May 23 2019&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/ben/what-are-you-old-enough-to-remember-in-software-development-2e28"&gt;https://dev.to/ben/what-are-you-old-enough-to-remember-in-software-development-2e28&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3&lt;/td&gt;
&lt;td&gt;17 Compelling Reasons To Start Ditching TypeScript Now.&lt;/td&gt;
&lt;td&gt;360&lt;/td&gt;
&lt;td&gt;Mahmoud Harmouch&lt;/td&gt;
&lt;td&gt;Jan 02 2023&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/wiseai/17-compelling-reasons-to-start-ditching-typescript-now-249b"&gt;https://dev.to/wiseai/17-compelling-reasons-to-start-ditching-typescript-now-249b&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;Stop Using React&lt;/td&gt;
&lt;td&gt;359&lt;/td&gt;
&lt;td&gt;ender minyard&lt;/td&gt;
&lt;td&gt;Sep 15 2020&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/ender_minyard/why-you-should-stop-using-react-g7c"&gt;https://dev.to/ender_minyard/why-you-should-stop-using-react-g7c&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;td&gt;Useful resources for programmers.&lt;/td&gt;
&lt;td&gt;358&lt;/td&gt;
&lt;td&gt;Sahil Rajput&lt;/td&gt;
&lt;td&gt;Nov 19 2018&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/sahilrajput/useful-websites-for-programmers-36k"&gt;https://dev.to/sahilrajput/useful-websites-for-programmers-36k&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;6&lt;/td&gt;
&lt;td&gt;Resume Review&lt;/td&gt;
&lt;td&gt;357&lt;/td&gt;
&lt;td&gt;Kim Arnett &lt;/td&gt;
&lt;td&gt;Dec 12 2018&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/kaydacode/resume-review-1oei"&gt;https://dev.to/kaydacode/resume-review-1oei&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;7&lt;/td&gt;
&lt;td&gt;How to Build a Full Stack NFT Marketplace - V2 (2022)&lt;/td&gt;
&lt;td&gt;340&lt;/td&gt;
&lt;td&gt;Nader Dabit&lt;/td&gt;
&lt;td&gt;Jul 06 2021&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/edge-and-node/building-scalable-full-stack-apps-on-ethereum-with-polygon-2cfb"&gt;https://dev.to/edge-and-node/building-scalable-full-stack-apps-on-ethereum-with-polygon-2cfb&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;8&lt;/td&gt;
&lt;td&gt;Portfolio Advice Thread&lt;/td&gt;
&lt;td&gt;339&lt;/td&gt;
&lt;td&gt;Ali Spittel&lt;/td&gt;
&lt;td&gt;Nov 15 2018&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/aspittel/portfolio-advice-thread-56g9"&gt;https://dev.to/aspittel/portfolio-advice-thread-56g9&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;9&lt;/td&gt;
&lt;td&gt;Why You Shouldn't Use A Web Framework&lt;/td&gt;
&lt;td&gt;337&lt;/td&gt;
&lt;td&gt;David Wickes&lt;/td&gt;
&lt;td&gt;Jul 26 2018&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/gypsydave5/why-you-shouldnt-use-a-web-framework-3g24"&gt;https://dev.to/gypsydave5/why-you-shouldnt-use-a-web-framework-3g24&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;10&lt;/td&gt;
&lt;td&gt;How is your portfolio built?&lt;/td&gt;
&lt;td&gt;313&lt;/td&gt;
&lt;td&gt;Tim Smith&lt;/td&gt;
&lt;td&gt;Jul 10 2019&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/iam_timsmith/how-is-your-portfolio-built-49g9"&gt;https://dev.to/iam_timsmith/how-is-your-portfolio-built-49g9&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;11&lt;/td&gt;
&lt;td&gt;Stop Using .env Files Now!&lt;/td&gt;
&lt;td&gt;313&lt;/td&gt;
&lt;td&gt;Gregory Gaines&lt;/td&gt;
&lt;td&gt;Sep 19 2022&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/gregorygaines/stop-using-env-files-now-kp0"&gt;https://dev.to/gregorygaines/stop-using-env-files-now-kp0&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;12&lt;/td&gt;
&lt;td&gt;Is using Linux really productive?&lt;/td&gt;
&lt;td&gt;305&lt;/td&gt;
&lt;td&gt;Dhruv garg&lt;/td&gt;
&lt;td&gt;Jul 05 2020&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/dhruvgarg79/is-using-linux-really-productive-37m3"&gt;https://dev.to/dhruvgarg79/is-using-linux-really-productive-37m3&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;13&lt;/td&gt;
&lt;td&gt;Hi CodeLand! We're Microsoft and we want to empower you to do more.&lt;/td&gt;
&lt;td&gt;284&lt;/td&gt;
&lt;td&gt;"Nitya Narasimhan, Ph.D"&lt;/td&gt;
&lt;td&gt;Jul 23 2020&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/azure/hi-codeland-we-re-microsoft-and-we-want-to-empower-you-to-do-more-50c8"&gt;https://dev.to/azure/hi-codeland-we-re-microsoft-and-we-want-to-empower-you-to-do-more-50c8&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;14&lt;/td&gt;
&lt;td&gt;Show me your personal website/portfolio&lt;/td&gt;
&lt;td&gt;274&lt;/td&gt;
&lt;td&gt;TheOnlyBeardedBeast&lt;/td&gt;
&lt;td&gt;Jul 10 2020&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/theonlybeardedbeast/show-me-your-personal-website-portfolio-2fni"&gt;https://dev.to/theonlybeardedbeast/show-me-your-personal-website-portfolio-2fni&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h5&gt;
  
  
  Top 16 authors by comments count
&lt;/h5&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;strong&gt;Place&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;Author username&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;Total comments count&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;Url&lt;/strong&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;thepracticaldev&lt;/td&gt;
&lt;td&gt;67831&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/thepracticaldev"&gt;https://dev.to/thepracticaldev&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;ben&lt;/td&gt;
&lt;td&gt;45132&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/ben"&gt;https://dev.to/ben&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3&lt;/td&gt;
&lt;td&gt;&lt;a class="mentioned-user" href="https://dev.to/jess"&gt;@jess&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;10250&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/jess"&gt;https://dev.to/jess&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;&lt;a class="mentioned-user" href="https://dev.to/madza"&gt;@madza&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;8817&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/madza"&gt;https://dev.to/madza&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;td&gt;&lt;a class="mentioned-user" href="https://dev.to/nickytonline"&gt;@nickytonline&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;6547&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/nickytonline"&gt;https://dev.to/nickytonline&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;6&lt;/td&gt;
&lt;td&gt;&lt;a class="mentioned-user" href="https://dev.to/graciegregory"&gt;@graciegregory&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;6310&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/graciegregory"&gt;https://dev.to/graciegregory&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;7&lt;/td&gt;
&lt;td&gt;&lt;a class="mentioned-user" href="https://dev.to/aspittel"&gt;@aspittel&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;4545&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/aspittel"&gt;https://dev.to/aspittel&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;8&lt;/td&gt;
&lt;td&gt;&lt;a class="mentioned-user" href="https://dev.to/sarthology"&gt;@sarthology&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;3699&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/sarthology"&gt;https://dev.to/sarthology&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;9&lt;/td&gt;
&lt;td&gt;dailydevtips1&lt;/td&gt;
&lt;td&gt;3585&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/dailydevtips1"&gt;https://dev.to/dailydevtips1&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;10&lt;/td&gt;
&lt;td&gt;michaeltharrington&lt;/td&gt;
&lt;td&gt;3343&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/michaeltharrington"&gt;https://dev.to/michaeltharrington&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;11&lt;/td&gt;
&lt;td&gt;grahamthedev&lt;/td&gt;
&lt;td&gt;2305&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/grahamthedev"&gt;https://dev.to/grahamthedev&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;12&lt;/td&gt;
&lt;td&gt;peter&lt;/td&gt;
&lt;td&gt;2161&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/peter"&gt;https://dev.to/peter&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;13&lt;/td&gt;
&lt;td&gt;emmabostian&lt;/td&gt;
&lt;td&gt;2124&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/emmabostian"&gt;https://dev.to/emmabostian&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;14&lt;/td&gt;
&lt;td&gt;sm0ke&lt;/td&gt;
&lt;td&gt;2075&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/sm0ke"&gt;https://dev.to/sm0ke&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;15&lt;/td&gt;
&lt;td&gt;bytebodger&lt;/td&gt;
&lt;td&gt;1996&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/bytebodger"&gt;https://dev.to/bytebodger&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;16&lt;/td&gt;
&lt;td&gt;deciduously&lt;/td&gt;
&lt;td&gt;1840&lt;/td&gt;
&lt;td&gt;&lt;a href="https://dev.to/deciduously"&gt;https://dev.to/deciduously&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;By the way, there are 921071 comments in total. Top 4096 authors by comments you can find on Google Sheets.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Published version: &lt;a href="https://docs.google.com/spreadsheets/d/e/2PACX-1vQATeCfUyIlbFeY35Xnv1pqRDOJsYNmQoVSbuxdBj005av7XVtUS0VaUMF78iuCAnlsZYhBcVfROX_f/pubhtml?gid=1707627826&amp;amp;single=true" rel="noopener noreferrer"&gt;https://docs.google.com/spreadsheets/d/e/2PACX-1vQATeCfUyIlbFeY35Xnv1pqRDOJsYNmQoVSbuxdBj005av7XVtUS0VaUMF78iuCAnlsZYhBcVfROX_f/pubhtml?gid=1707627826&amp;amp;single=true&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Sheet version: &lt;a href="https://docs.google.com/spreadsheets/d/1sLIWVI8CnJytm8yG0D250PkuymDqd4b9xQ0QPaUelbI/edit?usp=sharing" rel="noopener noreferrer"&gt;https://docs.google.com/spreadsheets/d/1sLIWVI8CnJytm8yG0D250PkuymDqd4b9xQ0QPaUelbI/edit?usp=sharing&lt;/a&gt;
&lt;/li&gt;
&lt;/ol&gt;

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

&lt;p&gt;If you have read to this point, then you at least enjoyed it) I would like to make a site that will track these statistics constantly, add a little more parameters and design the leaderboards.&lt;/p&gt;

</description>
      <category>showdev</category>
      <category>programming</category>
      <category>python</category>
      <category>webdev</category>
    </item>
    <item>
      <title>How I use ChatGPT to create a game</title>
      <dc:creator>Andrei Iatsuk</dc:creator>
      <pubDate>Sun, 08 Jan 2023 20:30:35 +0000</pubDate>
      <link>https://dev.to/ytskk/how-i-use-chatgpt-to-create-a-game-1gob</link>
      <guid>https://dev.to/ytskk/how-i-use-chatgpt-to-create-a-game-1gob</guid>
      <description>&lt;h3&gt;
  
  
  Briefly about my experience with ChatGPT, how I generate the story, the whole story, equipment and mechanics for my game.
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Careful, there’s a lot of text.&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  A little backstory
&lt;/h2&gt;

&lt;p&gt;I have long wanted to make a game that I would play myself, so that it would have the mechanics that I want, the story, the balance and so on. I do not really like to write myself, because it takes a huge amount of time, I’m into it with my head and could not do anything else) And then came ChatGPT, which will be your interlocutor, who will never ignore and do not get tired. He can create you a thousand versions of your request without ever repeating, or not, as you indicate. &lt;br&gt;
This is where the first problem comes in, the chat room can be incredibly creative at first glance, but it’s not really. Trust but verify (folk wisdom).&lt;/p&gt;

&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;What is ChatGPT, I think, do not need to explain, but just in case, here’s how the chat defines itself:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;What is ChatGPT?&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
ChatGPT is a chatbot that uses natural language processing (NLP) technology to generate human-like responses to user input. It is based on the GPT (Generative Pre-trained Transformer) language model, which is a machine learning model that has been trained on a large dataset of text and is able to generate coherent and coherent responses to user prompts.  &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;em&gt;This is how I will format the generated ChatGPT text&lt;br&gt;
Input in bold, then the response (this is not a direct quote, the output can be changed for better readability)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;I found a huge number of interesting uses for this chat, for absolutely different tasks (if you’re interested, let me know).&lt;/p&gt;

&lt;h2&gt;
  
  
  Generating a Plot
&lt;/h2&gt;

&lt;p&gt;At the heart of any good game is a lore. What is the lore? &lt;em&gt;Again, the definition will be given by the chat.&lt;/em&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;What is Lore?&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
In-game information and narrative elements that flesh out the game world and give it a sense of history and depth. This can include everything from the history and culture of the game’s fictional civilizations, to the backstories and motivations of the game’s characters, to the details of the game’s magic systems or technology.  &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Here the principle is similar to Midjourney and Stable Diffusion, in essence it accepts keywords, but because of the different wording, you get slightly different output, which allows you to generate such a variety of different options.&lt;/p&gt;

&lt;p&gt;I created a new chat (I’ll tell you why later) and sent this text: “Write the text with the story line or plot of a medieval fantasy in Nordic style. Use original, unique names without Nordic names”.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;If you do not specify to use original and unique words or any names, it will rampantly take names from similar plots (games and mythology). Without Nordic names because to avoid using words from folklore and again mythology. Like Midgard, Valheim, Thor, Freyja, Loki and so on.&lt;/em&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Here’s what you got in the first version
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Write the text with the story line or plot of a medieval fantasy in Nordic style. Use original, unique names without Nordic names&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
In the land of Zyrthania, magic was an integral part of everyday life. The people lived in small villages scattered throughout the countryside, each governed by a powerful wizard known as a “rune master.”&lt;br&gt;&lt;br&gt;
At the heart of the kingdom was the capital city of Arvandor, a bustling metropolis filled with grand temples, sprawling markets, and towering castles. The city was ruled by the wise and just Queen Elara, who was advised by a council of the most powerful rune masters in the land.&lt;br&gt;&lt;br&gt;
But despite the prosperity and peace that reigned in Zyrthania, there were those who sought to undermine the queen and bring about chaos. Chief among these was the rogue wizard, Valthor the Corrupt.&lt;br&gt;&lt;br&gt;
Valthor had once been a member of the queen’s council, but his thirst for power had turned him to the dark arts. He had assembled a band of followers, known as the Shadow Cult, and together they plotted to overthrow the queen and seize control of the kingdom.&lt;br&gt;&lt;br&gt;
As the tensions between the queen and Valthor reached a boiling point, a young orphan named Kael found himself drawn into the conflict. Kael was a skilled archer with a quick wit and a brave heart, and he soon caught the attention of the queen and her advisors.&lt;br&gt;&lt;br&gt;
Together, Kael and the queen’s forces set out to stop Valthor and his cult. They faced fierce battles and treacherous magic, but in the end, they were able to defeat the Shadow Cult and restore peace to the kingdom.&lt;br&gt;&lt;br&gt;
Kael was hailed as a hero and given a place of honor at the queen’s side, and the people of Zyrthania rejoiced at the defeat of the wicked Valthor. The kingdom was safe once more, thanks to the bravery and determination of its greatest defenders.  &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;You can also ask him to tweak the text a little, for example, to focus on the relationship between the characters&lt;/p&gt;

&lt;h3&gt;
  
  
  Second version
&lt;/h3&gt;

&lt;p&gt;Input: “Tweak the plot and focus on the relationship between the characters.”&lt;/p&gt;

&lt;p&gt;The only difference was in the last two paragraphs:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Tweak the plot and focus on the relationship between the characters.&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Kael and Queen Elara formed a close bond as they worked together to stop Valthor and his cult. Kael admired Elara’s strength and wisdom, and she saw in him the potential for greatness. As they faced fierce battles and treacherous magic, their relationship deepened and they grew to rely on each other for support.&lt;br&gt;&lt;br&gt;
In the end, they were able to defeat the Shadow Cult and restore peace to the kingdom. Kael was hailed as a hero and given a place of honor at the queen’s side, and the people of Zyrthania rejoiced at the defeat of the wicked Valthor. The kingdom was safe once more, thanks to the bravery and determination of its greatest defenders, Elara and Kael.  &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;It’s not great because there’s not enough detail, but that’s probably because we’ve generated a lot of text as it is.&lt;/p&gt;

&lt;p&gt;Remember that I said to use unique names and also wrote that everything must be checked, so let’s ask to generate a list of all used names:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Create a list of all used names&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;Zyrthania  &lt;/p&gt;

&lt;p&gt;Arvandor  &lt;/p&gt;

&lt;p&gt;Queen Elara  &lt;/p&gt;

&lt;p&gt;Valthor the Corrupt  &lt;/p&gt;

&lt;p&gt;Shadow Cult  &lt;/p&gt;

&lt;p&gt;Kael  &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Zyrthania — these are the names of the kingdom of some comic book.&lt;br&gt;
Arvandor — Forgotten Realms&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Watch out for these things if you use chat in commercial projects.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Expanding the Lore
&lt;/h2&gt;

&lt;p&gt;And now comes the most interesting part. In this case, the chat is the screenwriter, who never tires of generating new plots and rewriting old ones. Let’s expand our plot. This can be done by asking questions about the proposed option. The best part is that the chat room understands the context and remembers the correspondence within a single chat room, for a total of 3,000 words, according to &lt;a href="https://help.openai.com/en/articles/6787051-does-chatgpt-remember-what-happened-earlier-in-the-conversation" rel="noopener noreferrer"&gt;this&lt;/a&gt; answer.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Why did Valthor decide to overthrow the queen?&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Valthor the Corrupt decided to overthrow the queen because he was driven by his thirst for power. He had once been a member of the queen’s council, but his desire for more power and control led him to turn to the dark arts and assemble a band of followers known as the Shadow Cult. Together, they plotted to overthrow the queen and seize control of the kingdom of Zyrthania.  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why was Valthor nicknamed the Corrupt?&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
It is likely that Valthor was nicknamed the Corrupt due to his actions and use of dark magic in his attempt to overthrow the queen and seize control of the kingdom. The use of dark magic is often associated with corruption and malevolent intentions, and it is possible that Valthor earned this nickname because of his association with these practices.  &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;You can continue questioning, clarifying or changing points yourself. But for now let’s stop at this option, or we can hang for a very long time.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Create Kael’s background. Why and how was he drawn into the conflict?&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Kael was an orphan who grew up on the streets of the capital city of Arvandor. Despite his difficult upbringing, he was a skilled archer with a quick wit and a brave heart. He made a living by working as a messenger and taking on odd jobs, always striving to improve his circumstances and make a better life for himself.&lt;br&gt;&lt;br&gt;
Kael was drawn into the conflict between Queen Elara and Valthor the Corrupt when he stumbled upon one of Valthor’s plots to overthrow the queen. Kael’s quick thinking and bravery caught the attention of the queen and her advisors, and he was recruited to help stop Valthor and his Shadow Cult.&lt;br&gt;&lt;br&gt;
Kael saw this as an opportunity to not only make a difference and protect his kingdom, but also to prove himself and gain a sense of purpose. He threw himself into the fight with all his might, using his skills and cunning to help defeat Valthor and restore peace to the land.  &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Very good, the motivation of the hero is traced, there is also a good backstory. We could go on endlessly, delving into history, but we’ll move on.&lt;/p&gt;

&lt;p&gt;Of course, the first time may not turn out very well, the chat may not understand some requests or understand, but not as wanted. You just need to rephrase the request, change the form and so on (there’s a whole science — writing the right prompts, if you’re interested — let me know). You act as an editor: you must carefully examine a vast array of variants and select the most fitting and engrossing one. This process involves carefully examining and evaluating each option, taking into account its pertinence, excellence, and probable attraction.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;How should we name that?&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
It is ultimately up to you to decide how to name the events of the story. Some possible options could include:&lt;br&gt;&lt;br&gt;
The Conflict of Zyrthania  &lt;/p&gt;

&lt;p&gt;The Battle for the Crown  &lt;/p&gt;

&lt;p&gt;The War of the Wizards  &lt;/p&gt;

&lt;p&gt;The Fight for Freedom  &lt;/p&gt;

&lt;p&gt;The Revolution of Arvandor  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Add words like Mage Rebellion and Conflict&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;Here are a few more options that incorporate the words “mage,” “rebellion,” and “conflict”:  &lt;/p&gt;

&lt;p&gt;The Mage Rebellion of Zyrthania  &lt;/p&gt;

&lt;p&gt;The Conflict of the Magi  &lt;/p&gt;

&lt;p&gt;The Wizard’s War  &lt;/p&gt;

&lt;p&gt;The Magician’s Revolt  &lt;/p&gt;

&lt;p&gt;The Great Mage Uprising  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Magician’s Revolt&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
“The Magician’s Revolt” is a potential name for the events of the story, which involve a conflict between the queen and a rogue wizard named Valthor the Corrupt, who is trying to overthrow the queen and seize control of the kingdom. The name “The Magician’s Revolt” suggests a rebellion or uprising of mages or magical beings against a ruling authority, which could be a fitting description for the events of the story. However, it is ultimately up to you to decide on the most appropriate name for the story based on its themes and events.  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Separate characters, based on conflict side. As table&lt;/strong&gt;&lt;br&gt;&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%2F3yfqaenysqxlkmkymsuy.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%2F3yfqaenysqxlkmkymsuy.png" alt="Table separating the characters in the story based on which side they are on in the conflict." width="800" height="311"&gt;&lt;/a&gt;  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Create description of the appearance of the characters and show as list&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;Here is a list describing the appearance of the characters in the story:  &lt;/p&gt;

&lt;p&gt;Queen Elara: Queen Elara is described as a wise and just ruler, with a regal bearing and an air of authority. She has long, flowing hair that is either blonde or silver, depending on the light, and piercing blue eyes that seem to see into the very soul of those around her. She is tall and slender, with delicate features and a graceful bearing.  &lt;/p&gt;

&lt;p&gt;Valthor the Corrupt: Valthor the Corrupt is described as a rogue wizard with a dark and malevolent aura. He has long, flowing hair that is jet black, and his eyes are dark and piercing, seeming to glow with an inner light. He is tall and thin, with sharp, angular features that give him a cruel and sinister appearance.  &lt;/p&gt;

&lt;p&gt;Kael: Kael is described as a young orphan with a quick wit and a brave heart. He has short, spiky hair that is a sandy blonde color, and his eyes are a bright, piercing blue. He is lean and agile, with a wiry build and a quick, graceful movements.  &lt;/p&gt;

&lt;p&gt;Shadow Cult members: The members of the Shadow Cult are described as a diverse group of individuals, united by their loyalty to Valthor the Corrupt and their desire for power. They range in appearance and dress, but they all share a dark and sinister aura. Some have dark, flowing robes adorned with intricate symbols, while others wear more practical garments such as leather armor. All of them have a dangerous, untrustworthy air about them.  &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;ChatGPT does not yet know that Midjourney and Stable Diffusion exist, so to generate a prompt, you need to explicitly specify what to do.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Format to comma separated properties. Focus on descriptions of appearance and clothing&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;Queen Elara: regal bearing, long flowing hair (blonde or silver), piercing blue eyes, tall and slender, delicate features, graceful bearing  &lt;/p&gt;

&lt;p&gt;Valthor the Corrupt: dark and malevolent aura, long flowing hair (jet black), dark and piercing eyes, tall and thin, sharp and angular features  &lt;/p&gt;

&lt;p&gt;Kael: quick wit, brave heart, short spiky hair (sandy blonde), bright blue eyes, lean and agile, wiry build, quick and graceful movements  &lt;/p&gt;

&lt;p&gt;Shadow Cult members: diverse group, loyalty to Valthor the Corrupt, desire for power, dark and sinister aura, dark flowing robes adorned with intricate symbols, leather armor, dangerous and untrustworthy air  &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Also you can say &lt;code&gt;descend to noun and adjectives with ',', separated&lt;/code&gt; to achieve the same effect. &lt;br&gt;
You can try to generate characters from this description, it would be interesting to see.&lt;/p&gt;

&lt;h2&gt;
  
  
  Creating Mechanics
&lt;/h2&gt;

&lt;p&gt;Let’s move on to describing locations and mechanics, because we’re still making the game, remember?&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;description for lands, kingdoms&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;Zyrthania: Zyrthania is the kingdom in which the story takes place. It is described as a land where magic is an integral part of everyday life, and the people live in small villages scattered throughout the countryside. The kingdom is ruled by a wise and just queen, who is advised by a council of powerful wizards known as “rune masters.”  &lt;/p&gt;

&lt;p&gt;Arvandor: Arvandor is the capital city of Zyrthania, located at the heart of the kingdom. It is described as a bustling metropolis filled with grand temples, sprawling markets, and towering castles. The city is ruled by Queen Elara, and it is the center of political, cultural, and economic life in the kingdom.  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Create who will we play for and what role will he play.&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;For example, the player might choose to play as Queen Elara, the wise and just ruler of Zyrthania, and work to defend the kingdom and restore peace against the threat of Valthor the Corrupt and the Shadow Cult. Alternatively, the player might choose to play as Kael, a young orphan with a quick wit and a brave heart, and help the queen and her supporters in their efforts to defeat Valthor and his followers.  &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Too obvious, what if I want to add some madness?&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;I want to play a magic sheep that will help Elara&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;In the story as currently described, there are no magic sheep or any other non-human characters. If you would like to play a magic sheep that helps Queen Elara, it would be necessary to modify the story to include this character and their role in the events of the story. It is possible to incorporate a magic sheep character into the story in a variety of ways, depending on the specific goals and motivations of the character and how they fit into the overall plot and conflict of the story.  &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Very cool mechanism, if you correct the plot a lot, it won’t let you run into logical errors. 👍&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;I will play for unnamed hero and help Kael&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;If you would like to play as an unnamed hero who helps Kael in the story, there are many different ways that you could fit into the events and conflicts described in the story. Here are a few potential roles that you might play as an unnamed hero:  &lt;/p&gt;

&lt;p&gt;An ally of Kael: You could play as an ally of Kael, helping him in his efforts to defend the kingdom and stop Valthor the Corrupt. You might fight alongside Kael in battles, use your own magical or combat skills to assist him, or provide other forms of support as needed.  &lt;/p&gt;

&lt;p&gt;A mentor or guide to Kael: You could play as a mentor or guide to Kael, offering him guidance and support as he navigates the challenges and dangers of the kingdom. You might have your own knowledge and skills that you can share with Kael, or you might simply offer him encouragement and advice as he works to defeat Valthor the Corrupt.  &lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Creating Journal Notes
&lt;/h2&gt;

&lt;p&gt;I want to put notes of different content into the journal depending on the character’s attributes&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;There are now five types of descriptions for each item, monster and NPS: Journal Notes (description of appearance with no details or thoughts), Stupidest Notes (the most trivial description that only a mediocre or drunk can come up with, literally, two or three words, with mistakes and mats), Primitive Notes (a simple unfilled description that a non-immersionist can give, a guess is made about the items that might drop out), Advanced Notes (with a more precise description of details and appearance, beautiful language, complex constructions, a list of items that may drop out is given), Connoisseur’s Notes (notes by an absolute expert, beautiful syllable, quotations, phraseology, full description of details, list and probability of items that may drop out).&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;I see. It sounds like you are planning to include different levels of detail and depth in your descriptions of items, monsters, and NPCs in your text-based RPG. The Journal Notes would provide a basic overview of the appearance of these elements, while the Stupidest Notes would be more trivial and simplistic. The Primitive Notes would offer a more detailed description, but would be incomplete or somewhat vague, while the Advanced Notes would be more thorough and well-written. The Connoisseur’s Notes would be the most in-depth and expertly written descriptions, with a high level of detail and a comprehensive list of potential drops.  &lt;/p&gt;

&lt;p&gt;Incorporating these different levels of description could add depth and variety to your game world, and allow players to discover more about the items, monsters, and NPCs they encounter as they progress through the game. It might also be fun to include some humorous or tongue-in-cheek descriptions in the Stupidest Notes category, or to include some memorable quotes or passages in the Connoisseur’s Notes to add some flavor and character to the descriptions.  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Glossary notes for Rat&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;Journal Notes: “A small, rodent-like creature with sharp teeth and a scaly tail. They are often found in dirty or cluttered places.”  &lt;/p&gt;

&lt;p&gt;Stupidest Notes: “Rats are icky! They have pointy teeth and gross tails. You can find them in yucky places.”  &lt;/p&gt;

&lt;p&gt;Primitive Notes: “Rats are small, agile creatures with sharp teeth and tough, scaly tails. They can be found in dirty or cluttered environments, such as sewers, garbage piles, and abandoned buildings. They may drop coins or small, useless items when defeated.”  &lt;/p&gt;

&lt;p&gt;Advanced Notes: “Rats are small, agile creatures that are often seen as pests in cities and towns. They have sharp teeth and tough, scaly tails, and are known for their ability to chew through almost any material. Despite their small size, rats can be dangerous when cornered, and are known to spread disease through their presence in dirty or cluttered environments. When defeated, rats may drop coins or other small, worthless items.”  &lt;/p&gt;

&lt;p&gt;Connoisseur’s Notes: “Rats, those pesky little creatures that seem to thrive in the filthiest of environments. They are small, agile, and possess sharp teeth and tough, scaly tails that allow them to chew through almost anything. Despite their size, rats can be quite ferocious when cornered, and their presence is often associated with the spread of disease. It is said that the coins they sometimes drop upon defeat are tainted with the grime of their surroundings, and are thus not worth much. However, a true connoisseur knows that the value of an object is not determined by its worth in gold, but by the story it holds. Who knows what tales these coins could tell, if only they could speak?”  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Wand of Sparking Glossary notes, item, equipment&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;Journal Notes: “A wand that can create sparks of electricity. It has low attack power but can stun enemies.”  &lt;/p&gt;

&lt;p&gt;Stupidest Notes: “Just a wand to beat the monsters?”  &lt;/p&gt;

&lt;p&gt;Primitive Notes: “The Wand of Sparking is a magical wand that can generate sparks of electricity. It has low attack power, but it can stun enemies, making it useful in combat.”  &lt;/p&gt;

&lt;p&gt;Advanced Notes: “The Wand of Sparking is a magical weapon imbued with the power of electricity. Its slender, silver shaft is topped with a crystal that glows with an otherworldly energy, and its tip is shaped like a fork, allowing it to channel the energy into deadly sparks. Despite its low attack power, the Wand of Sparking can stun enemies, making it a useful weapon in combat. It is also a useful tool for exploration, as its sparks can be used to light torches or reveal hidden objects.”  &lt;/p&gt;

&lt;p&gt;Connoisseur’s Notes: “The Wand of Sparking is a weapon of great power and finesse, fit for the most skilled and discerning mages in the Labyrinth. Its silver shaft is a work of art, crafted by the finest artisans and imbued with the power of electricity. Its glowing crystal serves as a conduit for the arcane energies that flow through it, allowing it to unleash devastating sparks of lightning upon its enemies. Despite its low attack power, the Wand of Sparking is a formidable weapon in the hands of a skilled wielder, as it can stun enemies and disrupt their attacks. It is also a valuable tool for exploration, as its sparks can be used to light torches or reveal hidden objects.  &lt;/p&gt;

&lt;p&gt;But what is the true power of a weapon, one might ask? Is it the materials it is made of, the craftsmanship that goes into its creation, or the magic that it wields? Or is it the stories and legends that surround it, the deeds it has accomplished, the lives it has touched? Perhaps the true power of a weapon lies in its ability to bring out the best in its owner, to inspire them to greatness and bravery in the face of danger.  &lt;/p&gt;

&lt;p&gt;As the great wizard Merlin once said, ‘The power of magic is not in the wand, but in the heart of the one who wields it.’ Perhaps the true power of the Wand of Sparking lies not in its materials or its magic, but in the wisdom and skill it imparts upon its owner. Only the most discerning mages will understand the true power of this weapon, and it is they who will wield it with honor and pride.”  &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Let us now generate some races&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Create and describe a race Humans. Humans are the most balanced race and can excel in any role.&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;Here is an example of how you might describe the human race in more detail, including their lore, motivation, strengths, weaknesses, and attribute distribution:  &lt;/p&gt;

&lt;p&gt;Lore: Proud and ancient race of humans who have lived in the Kingdom for centuries. They are known for their versatility and adaptability, and are respected by the other races for their strength and determination.  &lt;/p&gt;

&lt;p&gt;Motivation: The Human are driven by their ambition and desire for success. They are fiercely competitive and always strive to be the best at whatever they do. They are also motivated by their sense of duty and responsibility to their families, friends, and communities.  &lt;/p&gt;

&lt;p&gt;Strengths: The Human are naturally gifted with a wide range of skills and abilities. They are highly adaptable and can excel in any role they choose to pursue. They are also known for their strength and determination, and are not easily discouraged or defeated.  &lt;/p&gt;

&lt;p&gt;Weaknesses: Despite their many strengths, the Human are not without their flaws. They can sometimes be prone to overconfidence and recklessness, leading them to take unnecessary risks and make poor decisions. They also have a tendency to be competitive and ambitious, leading them to strive for power and status at all costs.  &lt;/p&gt;

&lt;p&gt;Attribute Distribution: The Human have a balanced distribution of attributes, with no particular strength or weakness in any particular area. They are equally skilled in combat, magic, and stealth, and can excel in any role they choose to pursue.  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Describe their appearance&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;Diverse race of humans, with a wide range of physical appearances. They can have any combination of skin, hair, and eye colors, and can vary in height, weight, and body type. Some Human may have a more rugged and muscular appearance, while others may have a more slender and graceful build.  &lt;/p&gt;

&lt;p&gt;In terms of fashion and clothing, the Human tend to be practical and functional in their dress. They often wear durable and comfortable clothing that is suitable for the various roles they may play in the Labyrinth. Some Human may choose to wear more decorative or fashionable clothing to express their personality or status, while others may prefer more utilitarian or functional attire.  &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;To get a better idea of what might be in the Glossary, let’s ask the chat&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;My Glossary content&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;Your glossary content will depend on the specific details and features of your text-based RPG. Some possible elements that you might include in your glossary are:  &lt;/p&gt;

&lt;p&gt;Characters: Brief descriptions or backgrounds for the different characters that players encounter in the game, including NPC’s (non-player characters) and any unique or memorable characters that players might encounter during gameplay.  &lt;/p&gt;

&lt;p&gt;Items: Descriptions of the different items that players can find or acquire in the game, including weapons, armor, potions, and other consumables. You might also include information on how these items can be used or equipped, and what effects they have on gameplay.  &lt;/p&gt;

&lt;p&gt;Locations: Descriptions of the different locations that players can visit in the game, including towns, dungeons, and other areas of interest. You might include information on the layout and layout of these locations, as well as any notable features or characters that players might encounter there.  &lt;/p&gt;

&lt;p&gt;Game mechanics: Explanations of the various gameplay elements and mechanics that players will encounter in the game, including character stats, combat, leveling, and other systems.  &lt;/p&gt;

&lt;p&gt;Lore: Background information and context for the game world, including its history, cultures, and other details that help to flesh out the game world and give it depth and richness.  &lt;/p&gt;

&lt;p&gt;Easter eggs: Hidden references, jokes, or other details that are included for the benefit of players who are well-versed in the game or its source material.  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Create equipments for my game&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;The Legendary Blade of Valor: This ancient sword was wielded by the great hero Valor, who used it to defeat countless foes and conquer numerous kingdoms. It is said that the blade is imbued with the power of Valor’s spirit, making it incredibly powerful and deadly.  &lt;/p&gt;

&lt;p&gt;The Ebony Bow of Shadows: This dark, powerful bow was crafted by the dark elves of the underground kingdom of Moria. It is said to have the ability to shoot arrows that can pass through solid objects and strike enemies from the shadows.  &lt;/p&gt;

&lt;p&gt;The Holy Hammer of the Sun: This holy weapon is wielded by the priests of the sun god Sol. It is said to have the ability to smite the enemies of the sun with holy flames, and is often used to defend against dark creatures and demons.  &lt;/p&gt;

&lt;p&gt;The Enchanted Belt of Strength: This magical belt is said to imbue the wearer with incredible strength and endurance. It is often sought after by warriors and champions who need extra strength in battle.  &lt;/p&gt;

&lt;p&gt;The Amulet of Protection: This ancient amulet is said to protect the wearer from all manner of harm, including physical attacks, magical curses, and even death. It is highly sought after by those who find themselves in dangerous situations.  &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Now let’s create two merchants with different characters and try to buy some goods from them.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Add two merchant characters to the game. First is a dwarf named Gaald, he doesn’t trade and speak with other races, he’s profane, sometimes stammers and calls all the goods iron, stuff, bullshit and so on. Second is Scoal the Elf. He can tell a whole story about any commodity, speaks very nicely, using complicated constructions and turns, but stammers, he doesn’t concentrate on the characteristics of things, but puts more emphasis on the appearance and history.&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;There are the glossary notes for Gaald and Scoal:  &lt;/p&gt;

&lt;p&gt;Gaald:  &lt;/p&gt;

&lt;p&gt;Race: Dwarf  &lt;/p&gt;

&lt;p&gt;Occupation: Merchant  &lt;/p&gt;

&lt;p&gt;Description: Gaald is a gruff, unrefined dwarf who doesn’t have much patience for other races. He is known for his profanity and tendency to stammer when he gets agitated. Despite his rough exterior, he is a skilled merchant and has a vast knowledge of various goods. However, he tends to refer to everything as “iron,” “stuff,” or “bullshit,” making it difficult for others to understand what he is selling.  &lt;/p&gt;

&lt;p&gt;Quirks: Profanity, stammering, tendency to refer to everything as “iron,” “stuff,” or “bullshit”  &lt;/p&gt;

&lt;p&gt;Scoal:  &lt;/p&gt;

&lt;p&gt;Race: Elf  &lt;/p&gt;

&lt;p&gt;Occupation: Merchant  &lt;/p&gt;

&lt;p&gt;Description: Scoal is an elegant elf with a penchant for storytelling. He is known for his eloquent speech and ability to spin a tale about any commodity he is selling. However, he tends to get carried away with his stories and can sometimes stammer or lose his train of thought. Despite this, he is a skilled merchant and has a deep appreciation for the beauty and history of the items he sells.  &lt;/p&gt;

&lt;p&gt;Quirks: Elegant speech, love of storytelling, tendency to stammer or lose focus when telling stories  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The main character is human. Write a dialogue describing and selling The Ebony Bow of Shadows on behalf of Gaald and Scoal.&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;Gaald: “Hey, want an ebony bow? It’s made of the finest ebony, real solid stuff. Good for shootin’ arrows and all that bullshit. It’s called the Ebony Bow of Shadows, or some fancy crap like that. What do you say, wanna buy it or what?”  &lt;/p&gt;

&lt;p&gt;Scoal: “Ah, my dear friend, I assure you that the Ebony Bow of Shadows is much more than just a simple weapon. Its intricate design and flawless craftsmanship make it a true work of art. The ebony wood used to create this bow is not only exceptionally strong and durable, but it also holds a dark, mysterious energy that imbues the weapon with a sense of power and stealth. And with its unique ability to fire arrows that seem to vanish into the shadows, it is sure to be a valuable asset in any adventure. So, dear customer, if you are in need of a weapon that is not only formidable, but also aesthetically pleasing, I implore you to consider the Ebony Bow of Shadows. It is truly a one-of-a-kind treasure.”  &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;On the given description Gaald is really rude, short, really described the most necessary things, but still spoke to a representative of another race (an oversight). On the contrary, Scoal described the artifact very beautifully.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;glossary notes for Gaald and Scoal&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;Glossary notes for Gaald:  &lt;/p&gt;

&lt;p&gt;Gaald is a gruff and surly dwarf who is known for his distrust of other races. Despite his gruff exterior, he is a skilled blacksmith and craftsman, and is always on the lookout for new materials and techniques to improve his craft. Despite his reputation, Gaald is actually a fair trader and is willing to negotiate prices on his goods. However, he is not known for his social graces, and may come across as rude or dismissive to those he does not trust.  &lt;/p&gt;

&lt;p&gt;Gaald’s shop is a small and cramped affair, located in the heart of the dwarven district. It is filled with all manner of weapons, armor, and other equipment, all of which are of the highest quality. Gaald is known for his expertise in crafting with ebony, and is particularly proud of his Ebony Bow of Shadows, which is said to be one of the finest bows ever created.  &lt;/p&gt;

&lt;p&gt;Glossary notes for Scoal:  &lt;/p&gt;

&lt;p&gt;Scoal is an elegant and refined elf, with a passion for the finer things in life. He is known for his love of art, literature, and music, and is always seeking out new and rare objects to add to his collection. Despite his refined tastes, Scoal is also a shrewd businessman, and is always looking for opportunities to turn a profit.  &lt;/p&gt;

&lt;p&gt;Scoal’s shop is a grand and opulent affair, located in the heart of the elven district. It is filled with all manner of rare and exotic items, ranging from ancient artifacts to fine jewelry and art. Scoal is always willing to trade for valuable items, and is known for his love of collecting rare and unique objects. Despite his love of the finer things in life, Scoal is also known for his tendency to get carried away with his stories and lose track of the conversation, which can be frustrating for those trying to do business with him.  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Hero have human race. Want to start to talk with Gaald. Create dialog&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;Hero: “Hello there, Gaald. I am a human adventurer, and I am interested in purchasing some of your goods. Do you have any weapons or armor that might suit my needs?”  &lt;/p&gt;

&lt;p&gt;Gaald: “I don’t deal with your kind. Get out of my shop.”  &lt;/p&gt;

&lt;p&gt;Hero: “I understand if you have reservations about working with humans, but I assure you I am a trustworthy person. Is there anything you might be willing to sell to me?”  &lt;/p&gt;

&lt;p&gt;Gaald: “I said I don’t deal with humans. Now get out before I throw you out.”  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Hero have human race. Want to start to talk with Scoal. Create dialog&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;Hero: “Good day, Scoal. I am in need of a new bow and I have heard that you have a wide selection of fine quality bows. Do you happen to have any ebony bows in stock?”  &lt;/p&gt;

&lt;p&gt;Scoal: “Ah, yes, my good sir. I do happen to have an ebony bow in my inventory. It is a very special bow, indeed. I call it the Ebony Bow of Shadows. It is made of the finest ebony and imbued with a dark, magical energy that allows the wielder to move stealthily and strike from the shadows. It is a truly formidable weapon.”  &lt;/p&gt;

&lt;p&gt;Hero: “That sounds like exactly what I’m looking for. How much are you asking for it?”  &lt;/p&gt;

&lt;p&gt;Scoal: “Well, given the exceptional quality and craftsmanship of this bow, I must ask for a rather high price. Are you prepared to pay 1000 gold for it?”  &lt;/p&gt;

&lt;p&gt;Hero: “That is a bit steep. Do you think you could come down on the price a bit?”  &lt;/p&gt;

&lt;p&gt;Scoal: “I understand your hesitation, but this is a rare and valuable weapon. I could possibly go down to 900 gold, but that is as low as I am willing to go. It is a fair price for such a fine weapon.”  &lt;/p&gt;

&lt;p&gt;Hero: “I’ll have to think about it. Thank you for your time, Scoal.”  &lt;/p&gt;

&lt;p&gt;Scoal: “Of course, my good sir. Please do take your time to consider your purchase. If you decide to buy the Ebony Bow of Shadows, I am confident that it will serve you well in your adventures.”  &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Somehow) There’s so much more to go on, generating ideas for mechanics, different monsters, adding abilities to them, writing stories…&lt;/p&gt;

&lt;p&gt;And once again I want to remind you that neither chat, nor any other neural network can (yet) replace you, it only helps, is a tool of inspiration or does routine work. &lt;br&gt;
If you're reading these lines, then either you've read the whole article (wow) or you just skimmed through) Either way, thanks for reading!&lt;br&gt;
I’ll leave you with these thoughts, good luck!&lt;/p&gt;

</description>
      <category>serverless</category>
      <category>cloud</category>
      <category>devops</category>
      <category>productivity</category>
    </item>
    <item>
      <title>DECO — Unofficial DEV Community App</title>
      <dc:creator>Andrei Iatsuk</dc:creator>
      <pubDate>Wed, 16 Nov 2022 10:13:08 +0000</pubDate>
      <link>https://dev.to/ytskk/deco-unofficial-dev-community-app-2b73</link>
      <guid>https://dev.to/ytskk/deco-unofficial-dev-community-app-2b73</guid>
      <description>&lt;p&gt;Hello, my name is Andrey, I’m practicing Flutter developer. For a while I have been working on the useful project, in my opinion, and thrilled to share with you. &lt;/p&gt;

&lt;h3&gt;
  
  
  Motivation
&lt;/h3&gt;

&lt;p&gt;I began to think what more complicated I can do. I got to know the Dev community a while ago and found it very interesting and promising. What a surprise it was that it didn't have a native friendly mobile app, not even a community version. Somehow that's how I came up with the idea of creating an open source Dev app. I'm looking forward to any suggestions, whether it's development help, design, or new features.&lt;/p&gt;

&lt;h3&gt;
  
  
  Quick overview
&lt;/h3&gt;

&lt;p&gt;Let's talk about the features you can see in the app for now. In the process of development there were a lot of ideas that I really hope to implement. Some, of course, are limited by the capabilities of the API.  I'll make a roadmap a bit later.&lt;/p&gt;

&lt;h4&gt;
  
  
  Select preferred tags
&lt;/h4&gt;

&lt;p&gt;By default you can read popular articles and the newest ones at once (the output may be a little weird, you may give out articles in different order, not update articles for a long time, but that's all because of the API's peculiarities). Right on the home page you can add the tags you are interested in and read the current articles.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&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%2Fc4pxnbya2wekmm9hftq6.png" alt="Tags selection page" width="800" height="1731"&gt;&lt;/th&gt;
&lt;th&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%2Feo7bpc0600wq051zam3b.png" alt="Simulator Screen Shot - iPhone 14 - 2022-11-16 at 13 16 40" width="800" height="1731"&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;For now tag can be selected in Preferences -&amp;gt; Tags&lt;/p&gt;

&lt;h4&gt;
  
  
  Read articles from your mobile
&lt;/h4&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&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%2Fwauw7v6kmxaabvadw9kk.png" alt="Simulator Screen Shot - iPhone 14 - 2022-11-16 at 13 01 00" width="800" height="1731"&gt;&lt;/th&gt;
&lt;th&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%2F4sdvvj6d4w7f3cchj8e8.png" alt="Simulator Screen Shot - iPhone 14 - 2022-11-16 at 13 01 18" width="800" height="1731"&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h4&gt;
  
  
  Review User and Organization profile
&lt;/h4&gt;

&lt;p&gt;You can go to authors' profiles and view information about them, links to resources, and a list of articles.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&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%2F5wvnhft67bx7y0ao2v6l.png" alt="Simulator Screen Shot - iPhone 14 - 2022-11-16 at 13 05 05" width="800" height="1731"&gt;&lt;/th&gt;
&lt;th&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%2Ft2qajctmfrm1nyzam60e.png" alt="Simulator Screen Shot - iPhone 14 - 2022-11-16 at 13 04 44" width="800" height="1731"&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h4&gt;
  
  
  Theming
&lt;/h4&gt;

&lt;p&gt;App lives in light mode and dark mode, of course. Just one of the future features is the ability not only to change the accent color, but also to completely change the appearance of the application, adjusting to a comfortable and favorite format for you.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&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%2Fnerig1n7hioxgr8nfuj9.png" alt="Simulator Screen Shot - iPhone 14 - 2022-11-16 at 13 08 05" width="800" height="1731"&gt;&lt;/th&gt;
&lt;th&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%2Fb8zpz997qnx4nk473h6e.png" alt="Simulator Screen Shot - iPhone 14 - 2022-11-16 at 13 07 23" width="800" height="1731"&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&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%2Flnhtqyqwqn5c8cxiz7d7.png" alt="Simulator Screen Shot - iPhone 14 - 2022-11-16 at 13 07 31" width="800" height="1731"&gt;&lt;/td&gt;
&lt;td&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%2Fncuhsjhpbb0gf2ju5j8a.png" alt="Simulator Screen Shot - iPhone 14 - 2022-11-16 at 13 07 44" width="800" height="1731"&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;I believe in power of community and that we can build an interesting app 😊&lt;/p&gt;

&lt;h3&gt;
  
  
  GitHub
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://github.com/ytskk/deco" rel="noopener noreferrer"&gt;https://github.com/ytskk/deco&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Downloads
&lt;/h3&gt;

&lt;p&gt;For now its just a link to apk file.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://drive.google.com/file/d/1TJTZZ8G1YGmBEzwsEPS2sklrcvBb7lu6/view?usp=sharing" rel="noopener noreferrer"&gt;https://drive.google.com/file/d/1TJTZZ8G1YGmBEzwsEPS2sklrcvBb7lu6/view?usp=sharing&lt;/a&gt;&lt;/p&gt;

</description>
      <category>showdev</category>
      <category>flutter</category>
      <category>opensource</category>
      <category>deco</category>
    </item>
    <item>
      <title>Flutter todo app with Riverpod</title>
      <dc:creator>Andrei Iatsuk</dc:creator>
      <pubDate>Fri, 23 Sep 2022 15:45:39 +0000</pubDate>
      <link>https://dev.to/ytskk/flutter-todo-app-with-riverpod-5g09</link>
      <guid>https://dev.to/ytskk/flutter-todo-app-with-riverpod-5g09</guid>
      <description>&lt;p&gt;Hello 👋. I am a novice mobile Flutter developer. Made my first app and would like to share it with you. Of course, like everyone else I started with a simple Todo list, but to make something interesting I changed the idea a bit.&lt;br&gt;
I played around with the dynamic Material 3 theme, the colors adjust to the theme)&lt;/p&gt;

&lt;p&gt;As for a state management I choose Riverpod as a easy and quick way to interact with the logic. &lt;/p&gt;

&lt;p&gt;If you want to participate in the project, test, suggest features, help with development, link to the github repository.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/ytskk/taskline" rel="noopener noreferrer"&gt;https://github.com/ytskk/taskline&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Screenshots
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;Actual for version 1.0.0&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Theme adapts to your device theme. &lt;/p&gt;

&lt;h3&gt;
  
  
  Home screen
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Light&lt;/th&gt;
&lt;th&gt;Dark&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&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%2Fkf94s0etkmmduqrdynzt.png" alt="Home screen light" width="800" height="1733"&gt;&lt;/td&gt;
&lt;td&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%2F9gv5twpy5wscfah4ktyb.png" alt="Home screen dark" width="800" height="1733"&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  Task creation
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Light&lt;/th&gt;
&lt;th&gt;Dark&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&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%2Ful7tnk8sj4wj2unholvw.png" alt="Task creation light" width="800" height="1733"&gt;&lt;/td&gt;
&lt;td&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%2Ff3ayt45koy7lcpk0ao6p.png" alt="Task creation dark" width="800" height="1733"&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  Home screen with tasks
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Light&lt;/th&gt;
&lt;th&gt;Dark&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&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%2Fmth29f49xhvtoyn9k9at.png" alt="Home screen with tasks light" width="800" height="1733"&gt;&lt;/td&gt;
&lt;td&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%2Fgmqhuldre07nvg5j0gni.png" alt="Home screen with tasks dark" width="800" height="1733"&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  Filters
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Light&lt;/th&gt;
&lt;th&gt;Dark&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&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%2F4re40qsyhlkq82on0gpg.png" alt="Filters light" width="800" height="1733"&gt;&lt;/td&gt;
&lt;td&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%2Frjheyo8inaasi7m7wa6o.png" alt="Filters dark" width="800" height="1733"&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  Task edit
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Light&lt;/th&gt;
&lt;th&gt;Dark&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&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%2F5e6u7mnefm2ku8py43cm.png" alt="Task edit light" width="800" height="1733"&gt;&lt;/td&gt;
&lt;td&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%2Fvdim682ows82re2751ij.png" alt="Task edit dark" width="800" height="1733"&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

</description>
      <category>dart</category>
      <category>flutter</category>
      <category>showdev</category>
      <category>beginners</category>
    </item>
    <item>
      <title>How to check if a number is a power of two for O(1)</title>
      <dc:creator>Andrei Iatsuk</dc:creator>
      <pubDate>Sat, 13 Aug 2022 14:27:00 +0000</pubDate>
      <link>https://dev.to/ytskk/how-to-check-if-a-number-is-a-power-of-two-for-o1-58o1</link>
      <guid>https://dev.to/ytskk/how-to-check-if-a-number-is-a-power-of-two-for-o1-58o1</guid>
      <description>&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%2F6gc4pcxap46oxznvc9k4.jpeg" 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%2F6gc4pcxap46oxznvc9k4.jpeg" alt="Image description" width="800" height="528"&gt;&lt;/a&gt;&lt;em&gt;Dart solution.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;In JS looks something like this.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;isIntegerPowerOfTwo&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;number&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt;
    &lt;span class="nx"&gt;number&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;number&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;number&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt; &lt;span class="o"&gt;===&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Thanks to &lt;a href=""&gt;Luke Shiru&lt;/a&gt; for code. &lt;/p&gt;

&lt;h3&gt;
  
  
  Explanation
&lt;/h3&gt;

&lt;p&gt;In binary representation, numbers consist of 0 and 1. And it just so happens that all powers of two are 10*. &lt;br&gt;
For example, 2 -&amp;gt; 10, 8 -&amp;gt; 1000, and so on. &lt;br&gt;
When we do a comparison of number &amp;amp; number - 1 == 0, we check 100 &amp;amp; 011, which will always yield 0.&lt;/p&gt;

&lt;p&gt;3 → 11. 3 &amp;amp; 2 =&amp;gt; 11 &amp;amp; 10 = 1.&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>algorithms</category>
      <category>dart</category>
      <category>programming</category>
    </item>
    <item>
      <title>Finding unpaired number</title>
      <dc:creator>Andrei Iatsuk</dc:creator>
      <pubDate>Wed, 10 Aug 2022 17:46:00 +0000</pubDate>
      <link>https://dev.to/ytskk/finding-unpaired-nu-nac</link>
      <guid>https://dev.to/ytskk/finding-unpaired-nu-nac</guid>
      <description>&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%2Fpt80h2hvxmxfqpe7nuz8.jpeg" 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%2Fpt80h2hvxmxfqpe7nuz8.jpeg" alt="Image description" width="800" height="573"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The explanation lies in the binary representation of the number. It uses the same trick as the bitwise encryption. When we meet the same character twice, the XOR operation gives 0. So all that is left is a number without a pair.&lt;/p&gt;

&lt;p&gt;Example&lt;br&gt;
[1, 2, 1]&lt;br&gt;
0 ^ 1 (000 ^ 001) = 1 (001)&lt;br&gt;
1 ^ 2 (001 ^ 010) = 3 (011)&lt;br&gt;
3 ^ 1 (011 ^ 001) = 2 (010)&lt;br&gt;
Answer is 2&lt;/p&gt;

</description>
      <category>dart</category>
      <category>algorithms</category>
      <category>programming</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Interesting way to inverse number in JavaScript</title>
      <dc:creator>Andrei Iatsuk</dc:creator>
      <pubDate>Tue, 09 Aug 2022 20:01:37 +0000</pubDate>
      <link>https://dev.to/ytskk/interesting-way-to-inverse-number-in-javascript-1cc7</link>
      <guid>https://dev.to/ytskk/interesting-way-to-inverse-number-in-javascript-1cc7</guid>
      <description>&lt;p&gt;It’s binary inversion. ~n = -(n + 1)&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%2Fdlx3cnea6cnygfooiwpi.jpeg" 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%2Fdlx3cnea6cnygfooiwpi.jpeg" alt="Image description" width="746" height="384"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>typescript</category>
      <category>algorithms</category>
      <category>programming</category>
    </item>
  </channel>
</rss>
