<?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: Kurian Benoy</title>
    <description>The latest articles on DEV Community by Kurian Benoy (@kurianbenoy).</description>
    <link>https://dev.to/kurianbenoy</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%2F93792%2Fe615d9cd-234f-48ad-915f-14daddb215f0.jpeg</url>
      <title>DEV Community: Kurian Benoy</title>
      <link>https://dev.to/kurianbenoy</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/kurianbenoy"/>
    <language>en</language>
    <item>
      <title>Shutdown Routine</title>
      <dc:creator>Kurian Benoy</dc:creator>
      <pubDate>Wed, 14 Apr 2021 09:27:42 +0000</pubDate>
      <link>https://dev.to/kurianbenoy/shutdown-routine-4plj</link>
      <guid>https://dev.to/kurianbenoy/shutdown-routine-4plj</guid>
      <description>&lt;p&gt;&lt;a href="https://kurianbenoy.com/"&gt;This was originally published in my personal website&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It was a casual Saturday morning, and I was waiting in front of&lt;br&gt;
an Akshaya Center to get my Aadhar Card photo updated. Even after one hour, the line hadn't moved much. So I sort of decided to start reading one of my kindle E-books on my phone.&lt;/p&gt;

&lt;p&gt;The book was Deep work written by Cal Newport. I had purchased this book, for more than 2-3 months, yet I didn't make much progress in reading this book. I had almost completed 30% of the book when I left it earlier. So I  continued slowly reading through the book in a chair with five people surrounded around me.&lt;/p&gt;

&lt;p&gt;The book first explains why Deep work is valuable, and later talks about how to achieve deep work. So on resuming reading in a queue, I stumbled upon the idea of having a Shutdown routine. I have to admit that, I am not good so far at managing work and life.  Let me admit that writing this blog post completed only on Tuesday, because of this. There have been days when few of my colleagues have told it late and rest now at the midnight. It is always important to have a proper balance between life and work. &lt;/p&gt;

&lt;p&gt;Let me introduce to you Kenneth Reitz, who is the author of famous python libraries like Request, Pipenv, Maya etc. He shared his experience with burnout. He was almost in a state of 410(where he was about to delete all the source code and beautiful software he had written for humans). Yet luckily for all of us, he didn't go that extreme step. [Check Kenneth's essay on his blog on the reality of developer burnout(&lt;a href="https://kenreitz.org/essays/2017/01/05/the-reality-of-developer-burnout"&gt;https://kenreitz.org/essays/2017/01/05/the-reality-of-developer-burnout&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;Shutdown routine is a state in the world where you decide to have a fixed end time for the various projects you build. And on the end of the day, decide to stop work with a specific shutdown routine.&lt;/p&gt;

&lt;p&gt;Cal Newport in his book argues for a complete shutdown from work after a specific period as an important activity. He gives reasonable points why it's important to have that  down time every day after book:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Down Time aids insights&lt;/li&gt;
&lt;li&gt;Down Time helps recharge energy needed to work deeply&lt;/li&gt;
&lt;li&gt;The work that evening downtime replace is usually not important&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The reason to have shutdown principle is valuable is because of a principle called &lt;strong&gt;Zeibarnik effect&lt;/strong&gt;. According to the Zeibarnik effect, interrupted and unresolved tasks can remain in our mind for a longer time and give a hard time. This is a cause for after-work stress which occurs even after work.&lt;/p&gt;

&lt;p&gt;This stress constantly reminds the brain of the portion you haven't completed that day, makes you think about the conversations you had at work and makes you in a sense where you are very less productive. This can cause you to work late in the night to complete the pending task, check emails or instant chat messages constantly even at night. This makes your work getting occupied for 24*7 hours every day.&lt;/p&gt;

&lt;p&gt;So with the Zeibarnik effect, It's making the time after work just&lt;br&gt;
more and more stressful. So what is the solution for this?&lt;/p&gt;

&lt;p&gt;According to research, the best way to counter the Zeibarnik effect is to make a plan. This may involve creating a task list of pending items. Commit to a specific plan for a goal therefore not only facilitates the attainment of the goals but also free cognitive resources for other pursuits. With this, you have a clear plan for your work and helps you work more deeply at the required time.&lt;br&gt;
This avoids the constant amount of shallow which we are committing, which makes you less productive.&lt;/p&gt;

&lt;p&gt;Cal calls to have a specific ritual before the end of the workday. In this time, you should create a plan on how to achieve the desired target, ensure the necessary communication is done and after this stop by saying I am shutting down(This is the&lt;br&gt;
the ritual which Cal Newport does to stop working).&lt;/p&gt;

&lt;p&gt;I am also planning to start planning this shutdown routine in the coming days and see how it goes.&lt;/p&gt;

</description>
      <category>work</category>
    </item>
    <item>
      <title>Hosting your website  🌐 with Github pages</title>
      <dc:creator>Kurian Benoy</dc:creator>
      <pubDate>Wed, 10 Mar 2021 06:47:29 +0000</pubDate>
      <link>https://dev.to/kurianbenoy/hosting-your-website-with-github-pages-5213</link>
      <guid>https://dev.to/kurianbenoy/hosting-your-website-with-github-pages-5213</guid>
      <description>&lt;p&gt;&lt;em&gt;Disclaimer: This may not just be the first blog post on this topic, yet we are not merely talking how to do it only but also why part which will delve a bit into some theoretical portions like DNS, webhosting etc.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;I am discussing in this article how to host a self domain with GitHub:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Buy a domain name&lt;/strong&gt; - I got mine from bigrock.in, while there are sites like google domains, hover, GoDaddy etc. My domain name cost about Rs 900+ after taxes like GST. If you are using a name with more than 5 characters a suffix like .com, .in etc. you will surely get a domain name in that price range. If the name is short, you may need to pay more and I have seen prices go up to Rs 6000 for a short domain name.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--HEhSijUd--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/24592806/110367638-f1b69f00-806d-11eb-9ff8-3290cf08ce3c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--HEhSijUd--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/24592806/110367638-f1b69f00-806d-11eb-9ff8-3290cf08ce3c.png" alt="domainname"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Create a repository with GitHub pages&lt;/strong&gt; with the name: username.github.io. By default without a domain name, your default domain name is username.github.io. I used &lt;a href="https://github.com/daattali/beautiful-jekyll"&gt;Beautiful Jekyll theme&lt;/a&gt; for building my blogging website. If you have a custom name, Enter your custom domain name in GitHub pages, and enforce HTTPS for our custom domain. Thanks to &lt;a href="https://letsencrypt.org/"&gt;Lets Encrypt which is providing free SSL/TLS Certificates&lt;/a&gt;. This process will create a CNAME record in your repository.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--FEgjoJA6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/24592806/110367702-0dba4080-806e-11eb-9b96-15770a7982ed.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--FEgjoJA6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/24592806/110367702-0dba4080-806e-11eb-9b96-15770a7982ed.png" alt="githubrepo"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--NFw_Jvfy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/24592806/110367923-507c1880-806e-11eb-92e7-3728f5a7f772.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--NFw_Jvfy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/24592806/110367923-507c1880-806e-11eb-92e7-3728f5a7f772.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Go to your DNS management system&lt;/strong&gt;. In the bigrock, scroll all the way down in your domain name page, and reach the setting for DNS Management&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ZDBHGhhe--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/24592806/110369070-d9478400-806f-11eb-8424-9a7f1dc1b7a1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ZDBHGhhe--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/24592806/110369070-d9478400-806f-11eb-8424-9a7f1dc1b7a1.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now on clicking Manage DNS create an A record, which is used to point to four name servers hosted by GitHub. First and&lt;br&gt;
foremost create a CNAME record that points your subdomain to the default domain for your site. For example, if you want to use the subdomain &lt;a href="http://www.example.com"&gt;www.example.com&lt;/a&gt; for your user site, create a CNAME record that points &lt;a href="http://www.example.com"&gt;www.example.com&lt;/a&gt; to .github.io&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--WSE_6mLS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/24592806/110369506-828e7a00-8070-11eb-9b89-fadd282e0374.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--WSE_6mLS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/24592806/110369506-828e7a00-8070-11eb-9b89-fadd282e0374.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;So what is a CNAME record?&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It's a record type in resource records that allows an alias to be created. It is a macro definition that helps in redirecting, from one website to another. So really we are actually mapping the server of kurianbenoy.github.io to kurianbenoy.com.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The next step is to create an A record in the DNS management system. In docs for &lt;a href="https://docs.github.com/en/github/working-with-github-pages/managing-a-custom-domain-for-your-github-pages-site"&gt;Configuring a custom domain for your GitHub Pages site - GitHub Docs&lt;/a&gt;, it's mentioned the various IPs used&lt;br&gt;
for creating A records in DNS providing servicer.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--nQjCzArH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/24592806/110370904-4a883680-8072-11eb-8af8-231907f1f115.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--nQjCzArH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/24592806/110370904-4a883680-8072-11eb-8af8-231907f1f115.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is A Record&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It is used to point your apex domain to the default domain for your site. &lt;/li&gt;
&lt;li&gt;A record is the most important record type and it holds a 32 bit IP address for some host. Every Internet host must have at least one IP address to communicate with others.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Tada, your site is hosted like mine -&lt;a href="https://kurianbenoy.com/"&gt;kurianbenoy.com&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Now to the theory portion. I also had hosted my domain earlier following the above steps more than once and it simply worked. Yet how it worked and why we needed black box was a big mystery to me, which I am trying to demystify with this article.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;DNS is used to map a specific name into an associated IP address&lt;/strong&gt;, an application program called library procedure called a &lt;strong&gt;resolver&lt;/strong&gt;. Domain names were initially created specifically for solving the problem in ARPNET to understand which all nodes were there in the system. In those days they used a text file named hosts.txt to keep track of all hostnames and update every night. Yet as time progressed, things started changing for good, and the Domain name system was bought in place.&lt;/p&gt;

&lt;p&gt;The domain name system consists of &lt;strong&gt;Top-level domain names&lt;/strong&gt; which are managed by ICANN. The various top-level domains are classified into two types:&lt;/p&gt;

&lt;p&gt;a) &lt;strong&gt;Generic top-level domain names&lt;/strong&gt; - which maps domains that are commonly used all over the world like .com, .net, .org etc. They can be used for any purpose, and the bost TLD by far is .com with more than 100+ million .com domains.&lt;/p&gt;

&lt;p&gt;b) &lt;strong&gt;Country-level domain names&lt;/strong&gt; - which maps domain names based on the associated country names. Like our country India has .in, various government sites use domains based on it like data.gov.in&lt;/p&gt;

&lt;p&gt;A domain name can be mapped to one or more associated servers. So even though when calling google.com, it can be mapped to multiple servers in various locations of the world&lt;/p&gt;

&lt;p&gt;Besides these top-level domain names, there are &lt;strong&gt;second-level domains&lt;/strong&gt; which is the name which you want to assign for your individual domain name. Also,&lt;strong&gt;subdomains&lt;/strong&gt; can be used to map domain names to certain specific or other sites by adding a word followed by a dot. For example, if you want to create a specific blogging website in my domain name - you can easily add:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;blog.kurianbenoy.com&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Another interesting thing about domain names is they can only be in ASCII, even though with certain software some certain Unicode words can be used for domain names. The business of &lt;strong&gt;Domain name registries who are accredited with ICANN&lt;/strong&gt; sell the various domain names and are responsible for providing basic functionalities like name server for our use case. Domain names are considered like real estates, the shorter and attractive it is. The more money it costs.&lt;/p&gt;

&lt;p&gt;The domain name is a component of a uniform resource locator (URL) used to access web sites(this is a common question in computer networks theory class), for example: [4]&lt;/p&gt;

&lt;p&gt;URL: &lt;a href="http://www.example.net/index.html"&gt;http://www.example.net/index.html&lt;/a&gt;&lt;br&gt;
Top-level domain: net&lt;br&gt;
Second-level domain: example&lt;br&gt;
Hostname: www&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Resource Records&lt;/strong&gt; are associated with a single host or top-level domain names. The real function of DNS is to map domain names into resource records. The resource&lt;br&gt;
records are five-tuple format as follows:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Domain_name&lt;/li&gt;
&lt;li&gt;Time_to_live&lt;/li&gt;
&lt;li&gt;Class&lt;/li&gt;
&lt;li&gt;Type&lt;/li&gt;
&lt;li&gt;Value&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I know it is not a proper ending, just let me know in the comments if I have missed anything. It's always to better to do something than doing nothing.&lt;br&gt;
That's why I am continuing my weekly ramblings even though it's not perfect&lt;/p&gt;

&lt;p&gt;~ Kurian Benoy&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;📢 Resource alert&lt;/strong&gt; I found this awesome cartoon comic which explains &lt;a href="https://howdns.works/episodes/"&gt;how DNS works&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  References
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Github docs&lt;/li&gt;
&lt;li&gt;how to host your website on GitHub pages-medium&lt;/li&gt;
&lt;li&gt;Computer Networks, Andrew S Tanenbaum&lt;/li&gt;
&lt;li&gt;Use in website hosting-Domain Name, Wikipedia&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>webdev</category>
      <category>github</category>
      <category>hosting</category>
      <category>todayilearned</category>
    </item>
  </channel>
</rss>
