<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Karan</title>
    <description>The latest articles on Forem by Karan (@karan).</description>
    <link>https://forem.com/karan</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%2F92093%2F9e571b7b-4556-4c18-9d98-8347c1a170d5.jpg</url>
      <title>Forem: Karan</title>
      <link>https://forem.com/karan</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/karan"/>
    <language>en</language>
    <item>
      <title>Things to consider while asking for advice</title>
      <dc:creator>Karan</dc:creator>
      <pubDate>Fri, 28 Sep 2018 02:48:32 +0000</pubDate>
      <link>https://forem.com/karan/things-to-consider-while-asking-for-advice-1cno</link>
      <guid>https://forem.com/karan/things-to-consider-while-asking-for-advice-1cno</guid>
      <description>&lt;p&gt;This is a comment I posted earlier on &lt;a href="https://dev.to/svemaraju/askdev-how-to-approach-people-online-for-asking-career-related-advice-4lal"&gt;this discussion&lt;/a&gt;. Wanted to share it with the wider community.&lt;/p&gt;




&lt;p&gt;I frequently receive cold emails for some advice. I love helping people but its only possible to do so if -&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;The ask is &lt;strong&gt;highly specific&lt;/strong&gt; - The help needs to be very specific request. Which means no "meeting for coffee", no "general discussion", no "pick your brains about an idea i have", nothing vague.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The ask has &lt;strong&gt;high context&lt;/strong&gt; - The context has to be explained upfront and has to be specific too. The answer that is right for person X is not right for person Y. Hence the answer to most questions is always in the territory of "it depends on the situation". Describe your situation and the answer becomes useful for you.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The ask has &lt;strong&gt;high relevance&lt;/strong&gt; - Do your research on the person before sending an email. Don't ask a software engineer about hardware problems. Don't ask a highly technical person management questions and vice versa. The question needs to be relevant to the experience of the person who is asked the question. If you can't figure out if its relevant - ask them that if the question is relevant to their experience.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Examples - &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;A good ask - “I know you have built analytics systems before. I am currently building one for my project which needs to ingest 10 GB / day and in 6 months scale to 1 TB / day. We are currently using Azure and are open to using tools from Java and Python. How do I design it so that it scales well?" &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A bad ask - "I loved your post about X. Can we connect to discuss more of it?"&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A good ask - "I am currently struggling with React JS and building apps in which use redux. Can you help me understand it? I will need 45 mins of active discussion to give you context."&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A bad ask - "I need help on what to do with my career."&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A good ask - "I am not sure what I want to do next. I am a fresh graduate with no professional experience and I am currently thinking AI/ML vs Blockchain. Money is tight and I really need to figure this out in a month or so."&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>career</category>
      <category>advice</category>
    </item>
    <item>
      <title>How to take breaks while coding</title>
      <dc:creator>Karan</dc:creator>
      <pubDate>Fri, 17 Aug 2018 18:29:17 +0000</pubDate>
      <link>https://forem.com/karan/how-to-take-breaks-while-coding-2ccp</link>
      <guid>https://forem.com/karan/how-to-take-breaks-while-coding-2ccp</guid>
      <description>&lt;p&gt;I felt the need to write this post is to expand my reply on &lt;a href="https://dev.to/brendazam/the-distractions-killers-2931/comments"&gt;Brenda's post of "distractions while taking break".&lt;/a&gt; It is also a topic in the the book I am currently writing (more at the end of this post).&lt;/p&gt;

&lt;p&gt;This is an interesting problem which almost all engineers struggle with regularly. How to take breaks and make them useful so that you are productive on a daily basis.&lt;/p&gt;

&lt;p&gt;There are 2 most common questions that people ask -&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Frequency of breaks - How many times should one take a break? &lt;/li&gt;
&lt;li&gt;Length of the break - How long should they be?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;My answers to both is "it depends". There is unfortunately no single effective schedule that someone can follow. The Pomodoro technique fails for most people in the long run because it has too much of a rigid structure. IMHO, it is not flexible enough for coding. But your mileage may vary.&lt;/p&gt;

&lt;p&gt;Since coding is a creative endeavour, once you get "into the flow" its best to not take a break until you need to eat/pee/attending a meeting/do something urgent/or something else that forces an interruption. Forcibly breaking a state of flow causes irritation and grumpiness - try to not be in situations that encourage unintentional interruptions. &lt;/p&gt;

&lt;p&gt;Being in the flow for long is unsustainable - the flow will end in a natural way at some point - and you should take a break at that point. And in this case, the break can be of any length - from 15 mins to a day or two. &lt;/p&gt;

&lt;p&gt;One of the downsides of the flow is that one tends to ignore physical signs. Those are risky, being in touch with your body is crucial - especially while coding since most of the time you are inside your head. As soon as there is a physical feeling of sleepiness, discomfort, pain or exhaustion - you must take a break. No ifs, buts or maybes. Pushing yourself beyond what is physically tolerated by your body is a recipe for disaster in the long run.&lt;/p&gt;

&lt;p&gt;What about day to day when you are not in flow all the time? It's the easiest to arrange breaks around your physical needs - when you feel hungry, need to refill your bottle of water, go to toilet etc. Its natural, doesn't feel like an unwanted interruption, and is an easy place to start your break.&lt;/p&gt;

&lt;p&gt;But apart from the above two there is one more important question that most people don't think or talk about at all - &lt;strong&gt;What should you do while taking a break?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqldp15fb1tu4si9aq4ir.jpg" 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%2Fqldp15fb1tu4si9aq4ir.jpg" alt="Electronic Screen" width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I have seen a lot of people browse their social apps on phone, watch videos, play video games, read books/blog posts on their laptops/phones etc. Its usually something which is on an electronic device. And even though its not work - its unconsciously equally draining. &lt;/p&gt;

&lt;p&gt;One doesn't feel refreshed after staring at a screen for 15 mins. Your mind is still buzzing and there is no sense of peace, rest, unwind or calm - its still wound up and noisy. &lt;em&gt;The break ends up not being a break, there is no experience of real downtime.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;And this adds up over the days. It leads to a flash point where you just crash (usually on one of the weekend days), lie in bed for a day doing nothing to recover, and then the cycle starts again.&lt;/p&gt;

&lt;p&gt;Electronic screens are also the main reason for sleep deprivation - we do not realize how much it affects our sleep - using flux/night shift helps alleviate a little - but it's never enough.&lt;/p&gt;

&lt;p&gt;The one thing which I strongly urge practising software engineers to do is get away from their screens - for atleast couple of hours a day. &lt;strong&gt;Rest your eyes on something that is further than 10 meters for an extended period of time&lt;/strong&gt; - you will realize how &lt;em&gt;different&lt;/em&gt; it feels - just looking at something that is afar for an extended period of time. Who would have thought of that eh?&lt;/p&gt;

&lt;p&gt;For your break, don't carry your phone or laptop and &lt;strong&gt;physically&lt;/strong&gt; move to a different space like a balcony/play area/street/park etc. Let your eyes wander and see things. It doesn't matter what the thing is - could be trees, water, people or anything. And then let your mind wander along with your eye.&lt;/p&gt;

&lt;p&gt;You will surprised at how effective this habit is.&lt;/p&gt;




&lt;p&gt;PS - I am all about applying such mindfulness techniques as above to workplace in order to become a more productive engineer. I am writing a book (&lt;a href="https://leanpub.com/selfdebug/" rel="noopener noreferrer"&gt;self.debug&lt;/a&gt;) about it and I think it will help you as you start your software engineering journey. You can download it &lt;a href="https://leanpub.com/selfdebug/" rel="noopener noreferrer"&gt;here.&lt;/a&gt; It has a free option if you want to check it out - but its &lt;em&gt;super encouraging as an author to see readers pay for it&lt;/em&gt;.&lt;/p&gt;




&lt;p&gt;Photo by Luke Ow on Unsplash, Photo by Adrien Olichon on Unsplash&lt;/p&gt;

</description>
      <category>productivity</category>
      <category>learning</category>
      <category>career</category>
    </item>
    <item>
      <title>Being average in &gt; 1 things is easier and more valuable than being excellent at 1 thing.</title>
      <dc:creator>Karan</dc:creator>
      <pubDate>Sun, 12 Aug 2018 08:54:17 +0000</pubDate>
      <link>https://forem.com/karan/being-average-in--1-things-is-easier-and-more-valuable-than-being-excellent-at-1-thing-1epm</link>
      <guid>https://forem.com/karan/being-average-in--1-things-is-easier-and-more-valuable-than-being-excellent-at-1-thing-1epm</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;Note - This guideline is most useful for the bottom 99% of the practising software engineers. So if you are part of the remaining 1% - you can safely skip the this post.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;There is a surprisingly easy hack that you can apply to increase your value generally in life. Pick up more skills. It sounds obvious when put on paper but there is one subtlety which makes it a “hack” in my opinion.&lt;/p&gt;

&lt;p&gt;For this point we turn to the excellent Scott Adams’ book - “How to fail at almost everything and still win big”. Speaking about being successful, he says -  &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“… I tell them there’s a formula for it. You can manipulate your odds of success by how you choose to fill out the variables in the formula. The formula, roughly speaking, is that every skill you acquire doubles your odds of success.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;He goes on to mention that the level of proficiency for a skill is not mentioned because -&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“… you can raise your market value by being &lt;em&gt;merely good&lt;/em&gt; - not extraordinary - at more than one skill.”&lt;/p&gt;

&lt;p&gt;“To put the success formula into its simplest form: &lt;strong&gt;Good + Good &amp;gt; Excellent&lt;/strong&gt;”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This subtlety makes it very easy to execute. You don’t need to be extraordinary, you just have to be ordinary/average. Hence, if you are an average software engineer and you have any of the skills mentioned below - &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Good at drawing &lt;/li&gt;
&lt;li&gt;Public speaking&lt;/li&gt;
&lt;li&gt;Managing people &lt;/li&gt;
&lt;li&gt;Have a knack to pick up people’s emotions&lt;/li&gt;
&lt;li&gt;An eye for design in product&lt;/li&gt;
&lt;li&gt;Spot problems in operational processes&lt;/li&gt;
&lt;li&gt;Shoot, edit and/or make videos&lt;/li&gt;
&lt;li&gt;Make original music&lt;/li&gt;
&lt;li&gt;Sing &lt;/li&gt;
&lt;li&gt;Writing essays/blog posts&lt;/li&gt;
&lt;li&gt;Or anything else&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You are immediately more valuable to yourself and your organisation vs someone is who is a very good software engineer only. So if you are a software engineer who can think of product ideas and execute independently (remember you only have to be of an &lt;strong&gt;average&lt;/strong&gt; skill in it) - you have more than doubled your value. &lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Leverage that skill.&lt;/strong&gt;
&lt;/h4&gt;




&lt;p&gt;This is a short excerpt from a book I am writing - &lt;strong&gt;&lt;a href="https://leanpub.com/selfdebug"&gt;self.debug&lt;/a&gt;&lt;/strong&gt;. Its about using emotions and mindfulness to become a better software engineer. Please download it (has a &lt;strong&gt;free option&lt;/strong&gt;!), and help make it better by providing feedback.&lt;/p&gt;




&lt;p&gt;Photo by Alice Achterhof on Unsplash&lt;/p&gt;

</description>
      <category>career</category>
      <category>learning</category>
    </item>
  </channel>
</rss>
