<?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: Flavio Wuensche</title>
    <description>The latest articles on DEV Community by Flavio Wuensche (@fwuensche).</description>
    <link>https://dev.to/fwuensche</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%2F120518%2F6a88de27-2ab8-46d0-84ad-10e656ff97cd.jpg</url>
      <title>DEV Community: Flavio Wuensche</title>
      <link>https://dev.to/fwuensche</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/fwuensche"/>
    <language>en</language>
    <item>
      <title>Sum up: The Coaching Habit</title>
      <dc:creator>Flavio Wuensche</dc:creator>
      <pubDate>Sat, 27 Feb 2021 12:40:41 +0000</pubDate>
      <link>https://dev.to/fwuensche/summary-the-coaching-habit-477a</link>
      <guid>https://dev.to/fwuensche/summary-the-coaching-habit-477a</guid>
      <description>&lt;p&gt;This is a summary of The Coaching Habit written through the eyes of an Engineering manager in 30-min. &lt;/p&gt;

&lt;p&gt;The main sources were my highlights from the book itself and an interesting article I've read in which the author adapted some questions of the book: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.amazon.com/Coaching-Habit-Less-Change-Forever-ebook/dp/B01BUIBBZI" rel="noopener noreferrer"&gt;The Coaching Habit kindle book on Amazon&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Related article: &lt;a href="https://pragma.team/blog-list/2017/2/16/unlocking-your-coaching-habit-agile-tour-16-recap" rel="noopener noreferrer"&gt;Unlocking Your Coaching Habit&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  Highlights
&lt;/h1&gt;

&lt;p&gt;My favorite one:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;The single biggest problem with communication is the illusion that it has taken place.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;First things first. Be comfortable saying no:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;It doesn’t matter if you’ve mastered all the productivity hacks in the world; the faster you dig, the faster the world keeps flooding in.&lt;/p&gt;

&lt;p&gt;Block defined an adult-to-adult relationship as one in which you are “able to ask for what you want, knowing that the answer may be no.” &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;About asking open questions:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;be comfortable with the silence, stop planning the next question, follow-up with "and what else?"&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Optimize for usefulness (get off firefighter mode):&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Coaching for development is about turning the focus from the issue to the person dealing with the issue, the person who’s managing the fire. This conversation is more rare and significantly more powerful.&lt;/p&gt;

&lt;p&gt;Call them forward to learn, improve and grow, rather than to just get something sorted out.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;About starting 1:1s with a direct open question: &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Cut the preliminary flim-flam. You don’t need a runway to pick up speed—you can just take off.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;About running your 1:1s:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Tell less and ask more. Your advice is not as good As you think it is. &lt;/p&gt;

&lt;p&gt;When you start your weekly check-in meeting by asking, “What’s important right now?” keep the pressure on by asking, “And what else?” &lt;/p&gt;

&lt;p&gt;Silence is often a measure of success.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Don't mask your advice behind a question:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Stop offering up advice with a question mark attached. That doesn’t count as asking a question. If you’ve got an idea, wait. Ask, “And what else?” and you’ll often find that the person comes up with that very idea that’s burning a hole in your brain. And if she doesn’t, then offer your idea—as an idea, not disguised as a fake question. &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Still on 1:1s, don't jump into solutions too early:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;what they’re laying out for you is rarely the actual problem. And when you start jumping in to fix things, things go off the rails in three ways: you work on the wrong problem; you do the work your team should be doing; and the work doesn’t get done.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;About providing timely feedback: &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Have you ever made popcorn? One “pop.” Then another. Then another. And then the popping goes crazy. Problems proliferate in the same way. &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Back to saying no:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“No, I can’t do that” is another option. Having the courage to say No is one of the ways you stop being so “helpful.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;From my experience, tho, you don't always need to say no. Most of the time, when you say no, what you actually mean is "yes but". Say YES, but set your boundaries. "Yes, but I'll need two extra weeks." "Yes, but the team needs a more seasoned developer." You get the point.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;And finally, you can just buy yourself some time. “Let me think about that.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;As humans, we tend to overreact to things. We enter urgency mode too fast. That's how we got where we are today, but that's another story. The point I want to make here is that it is often a good idea to let people sleep on their problems. More often than not it was not a real problem after all. Other times they'll just get sucked into a new urgency. A good way to leverage that is to show yourself available, but just enough so that they have time to think. For instance: "Sure, glad to help, can you schedule us a call next week?"&lt;/p&gt;

&lt;p&gt;About avoiding being dragged into something you don't want to: &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Why are you asking me? Whom else have you asked? When you say this is urgent, what do you mean? According to what standard does this need to be completed? By when? If I couldn’t do all of this, but could do just a part, what part would you have me do? What do you want me to take off my plate so I can do this?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Yet another say no strategy: &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;if you write down someone’s request on a bit of paper or a flip chart, you can then point to it and say, “I’m afraid I have to say No to this,” which is a little better than “I’m afraid I have to say No to you.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;About planning things. It's all about the process: &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Plans are useless, but planning is indispensable,”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h1&gt;
  
  
  The 7 (+3) questions
&lt;/h1&gt;

&lt;h3&gt;
  
  
  1. Kickoff: what's on your mind?
&lt;/h3&gt;

&lt;p&gt;The Kickstart Question is the way to start any conversation in a way that’s both focused and open.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. AWE: and what else?
&lt;/h3&gt;

&lt;p&gt;The AWE Question—the best coaching question in the world—works as a self-management tool for you, and as a boost for the other six questions here.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Focus: what's the real challenge here for you? Why?
&lt;/h3&gt;

&lt;p&gt;What makes the Focus Question work so well are those two final words, “for you.” Don't forget them. Adding “for you” to a question helps people figure out the answers faster and more accurately.&lt;/p&gt;

&lt;p&gt;The why is optional, and be careful with that. You ask why because you want more detail. You want more detail because you want to fix the problem. And suddenly you’re back in the vicious circles of overdependence and overwhelm. If you’re not trying to fix things, you don’t need the backstory. &lt;/p&gt;

&lt;h3&gt;
  
  
  4. Foundation: what does success look like for you?
&lt;/h3&gt;

&lt;p&gt;The Focus Question and the Foundation Question are about getting to the heart of the challenge, so you’ve got your attention on what really matters.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Action: what could you do to get there?
&lt;/h3&gt;

&lt;p&gt;There’s being helpful, and then there’s being “helpful,” as in stepping in and taking over. And way too often, you get suckered into doing the latter. &lt;/p&gt;

&lt;p&gt;When you offer to help someone, you “one up” yourself: you raise your status, and you lower hers, whether you mean to or not.&lt;/p&gt;

&lt;p&gt;Hold yourself! Let them think.&lt;/p&gt;

&lt;h3&gt;
  
  
  6. Support: how can I help you?
&lt;/h3&gt;

&lt;p&gt;Michael calls it the Lazy Question and claims it'll save you hours. Put this way, it sounds more like a passive-aggressive way to delegate the responsibility than actually offering your help. I'm not comfortable with the mindset, so I'm recategorizing it as the Support Question. Oh, and it won't save you hours. If you want to preserve your time, opt for the Action Question just below.&lt;/p&gt;

&lt;h3&gt;
  
  
  7. Commitment: what are you committing to?
&lt;/h3&gt;

&lt;p&gt;There's no action without commitment. Assign a responsible, decide a delivery date, and be clear on the specs. If you hear their silence, politely ask them to rephrase what we're committing to.&lt;/p&gt;

&lt;h3&gt;
  
  
  8. Prioritization: if you're doing this, what are you saying no to?
&lt;/h3&gt;

&lt;p&gt;While the Action Question could save your time, the Prioritization Question will save the time of those you’re working with.&lt;/p&gt;

&lt;h3&gt;
  
  
  9. Close: how do you want to follow up on this?
&lt;/h3&gt;

&lt;p&gt;We're good to go. We have an action. The problem is, other people not always have a well-oiled system to process their work. When that's the case, ask this question. The outcome might be another meeting, and it should be scheduled now. Or it could be a follow-up task, in which case you might as well want to add it into your &lt;code&gt;waiting&lt;/code&gt; task list. &lt;/p&gt;

&lt;h3&gt;
  
  
  10. Learning: what was most useful for you?
&lt;/h3&gt;

&lt;p&gt;And the Learning Question, after all, will ensure that everyone finds their interactions with you more useful. &lt;/p&gt;

&lt;p&gt;They start learning, start creating new neural pathways, only when they have a chance to recall and reflect on what just happened. &lt;/p&gt;

&lt;p&gt;“What’s essential is to interrupt the process of forgetting.” That forgetting starts happening immediately, so even by asking the question at the end of a conversation, you’ve created the first interruption in that slide towards “I’ve never heard that before!”&lt;/p&gt;

&lt;h1&gt;
  
  
  Conclusion
&lt;/h1&gt;

&lt;p&gt;It was a simple and quick read, for a very low price (&lt;a href="https://www.amazon.com/Coaching-Habit-Less-Change-Forever-ebook/dp/B01BUIBBZI" rel="noopener noreferrer"&gt;$3,99 on Amazon&lt;/a&gt;) and the value I'm taking from it, while applying on my everyday job, is way above my previous expectations. Highly recommended.&lt;/p&gt;

&lt;p&gt;I've actually printed the modified version of the 7 questions I've found in the forementioned article, added one of my own to make it 10, and pasted it into my wall. Here's what the article version looks like. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.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%2Fgpwea55ij1nb3a202q20.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.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%2Fgpwea55ij1nb3a202q20.jpg"&gt;&lt;/a&gt;&lt;br&gt;Image from &lt;a href="https://pragma.team/blog-list/2017/2/16/unlocking-your-coaching-habit-agile-tour-16-recap" rel="noopener noreferrer"&gt;https://pragma.team/blog-list/2017/2/16/unlocking-your-coaching-habit-agile-tour-16-recap&lt;/a&gt;
  &lt;/p&gt;

</description>
    </item>
    <item>
      <title>Au revoir vim: work in the cloud using VS Code</title>
      <dc:creator>Flavio Wuensche</dc:creator>
      <pubDate>Sat, 27 Apr 2019 15:50:02 +0000</pubDate>
      <link>https://dev.to/fwuensche/say-goodbye-to-vim-work-in-the-cloud-using-vs-code-2jdm</link>
      <guid>https://dev.to/fwuensche/say-goodbye-to-vim-work-in-the-cloud-using-vs-code-2jdm</guid>
      <description>&lt;p&gt;&lt;strong&gt;TL;DR.&lt;/strong&gt; Install sshcode with &lt;code&gt;go get -u go.coder.com/sshcode&lt;/code&gt; and connect to your remote virtual machine using &lt;code&gt;sshcode kyle@dev.kwc.io&lt;/code&gt; ^^ voilà.&lt;/p&gt;




&lt;h1&gt;
  
  
  Motivation
&lt;/h1&gt;

&lt;p&gt;There are several reasons to setup a development environment in the cloud:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;access your development environment from any device&lt;/li&gt;
&lt;li&gt;insanely fast internet connection&lt;/li&gt;
&lt;li&gt;try new technologies while keeping your local machine safe&lt;/li&gt;
&lt;li&gt;easily onboard new teammates by sharing snapshot to your VM&lt;/li&gt;
&lt;li&gt;make your laptop battery last insanely longer&lt;/li&gt;
&lt;li&gt;buy a $200 Chromebook and start coding with nearly zero setup&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  Context
&lt;/h1&gt;

&lt;p&gt;So far, in order to work 100% in the cloud, you had to create a virtual machine and ssh into it from a terminal. Then you had to use vim as your main text editor, maybe tmux for managing your terminal sessions and windows. It worked, but you got no choice but to use vim.&lt;/p&gt;

&lt;p&gt;Nowadays, with the advent of modern text editors built on top of NodeJS, you can have a full native-like application running inside your browser. And that's exactly what I want to introduce to you today.&lt;/p&gt;

&lt;p&gt;With the help of &lt;code&gt;code-server&lt;/code&gt; and &lt;code&gt;sshcode&lt;/code&gt;, two solutions brought to you by the coder.com amazing team, &lt;strong&gt;you can now EASILY code in the cloud using VS Code&lt;/strong&gt;. &lt;/p&gt;

&lt;h1&gt;
  
  
  Getting started
&lt;/h1&gt;

&lt;h4&gt;
  
  
  What you'll need
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;Google Chrome (locally installed)&lt;/li&gt;
&lt;li&gt;Visual Studio Code (locally installed)&lt;/li&gt;
&lt;li&gt;a remote virtual machine: I highly recommend Digital Ocean&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Step-by-step installation (Mac)
&lt;/h4&gt;

&lt;p&gt;The instructions at the &lt;a href="https://github.com/codercom/sshcode" rel="noopener noreferrer"&gt;main project repo&lt;/a&gt; are quite minimalist, so I'm detailing them here.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# install sshcode using go&lt;/span&gt;
brew &lt;span class="nb"&gt;install &lt;/span&gt;go
go get &lt;span class="nt"&gt;-u&lt;/span&gt; go.coder.com/sshcode

&lt;span class="c"&gt;# add the binary to your path&lt;/span&gt;
&lt;span class="c"&gt;# in case you're using zsh, for instance:&lt;/span&gt;
&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s2"&gt;"export PATH=&lt;/span&gt;&lt;span class="se"&gt;\$&lt;/span&gt;&lt;span class="s2"&gt;PATH:~/go/bin"&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&amp;gt;&lt;/span&gt; ~/.zshrc

&lt;span class="c"&gt;# open a new terminal and launch vscode&lt;/span&gt;
sshcode kyle@dev.kwc.io
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If you have Chrome installed, it opens the browser in app mode. That means there's no keybind conflicts, address bar, or indication that you're coding within a browser. It feels just like native VS Code.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fraw.githubusercontent.com%2Fcodercom%2Fsshcode%2Fmaster%2Fdemo.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fraw.githubusercontent.com%2Fcodercom%2Fsshcode%2Fmaster%2Fdemo.gif" alt="sshcode demo gif"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Extra tricks
&lt;/h1&gt;

&lt;h4&gt;
  
  
  Open an specific project
&lt;/h4&gt;

&lt;p&gt;You can specify a remote directory as the second argument:&lt;br&gt;
&lt;code&gt;sshcode kyle@dev.kwc.io /root/www/doctolib&lt;/code&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Skip extensions sync
&lt;/h4&gt;

&lt;p&gt;By default, sshcode will rsync your local VS Code settings and extensions to the remote server every time you connect. This operation may take a while on a slow connections, but will be fast on follow-up connections to the same server. To disable this feature entirely, pass the &lt;code&gt;--skipsync&lt;/code&gt; flag.&lt;/p&gt;

&lt;h4&gt;
  
  
  Sync back
&lt;/h4&gt;

&lt;p&gt;By default, VS Code changes on the remote server won't be synced back when the connection closes. To synchronize back to local when the connection ends, pass the -b flag.&lt;/p&gt;

&lt;h1&gt;
  
  
  Drawbacks
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;you'll notice some delay at times, depending on internet connection&lt;/li&gt;
&lt;li&gt;since you're in the cloud, you should be more conscious about security&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Any questions or ideas to share? Leave a comment below.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Are you into productivity hot tips for web development?&lt;/strong&gt; I'm a Brazilian full-stack developer, living and working in Paris, and I regularly share articles like the one you've just read. &lt;a href="https://twitter.com/whosantelo" rel="noopener noreferrer"&gt;Follow me on twitter&lt;/a&gt; to stay tuned.  &lt;/p&gt;

</description>
      <category>vscode</category>
      <category>cloud</category>
      <category>ssh</category>
      <category>hottips</category>
    </item>
  </channel>
</rss>
