<?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: Kevin Ng</title>
    <description>The latest articles on DEV Community by Kevin Ng (@kevinngth).</description>
    <link>https://dev.to/kevinngth</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F497845%2Fa8b5bf08-edef-4110-b7ca-edc2d2dbf7fb.png</url>
      <title>DEV Community: Kevin Ng</title>
      <link>https://dev.to/kevinngth</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/kevinngth"/>
    <language>en</language>
    <item>
      <title>Overcoming that scroll direction discomfort </title>
      <dc:creator>Kevin Ng</dc:creator>
      <pubDate>Mon, 28 Dec 2020 12:47:39 +0000</pubDate>
      <link>https://dev.to/kevinngth/overcoming-that-scroll-direction-discomfort-5g77</link>
      <guid>https://dev.to/kevinngth/overcoming-that-scroll-direction-discomfort-5g77</guid>
      <description>&lt;p&gt;Being a MacBook user, my job requires me to log in to a Windows VM from my MacBook, so I bought a new keyboard and mouse to help me cope with that.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/j0qclsfQMGBhaVvYGT/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/j0qclsfQMGBhaVvYGT/giphy.gif" alt="RGB keyboard and mouse"&gt;&lt;/a&gt;&lt;/p&gt;
My setup is something similar to this



&lt;p&gt;Colourful right? It makes development very enjoyable. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/hvRoo3YcAPUheF3MxY/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/hvRoo3YcAPUheF3MxY/giphy.gif" alt="This one sparks joy"&gt;&lt;/a&gt;&lt;/p&gt;
This one sparks joy



&lt;p&gt;But here comes the problem: &lt;/p&gt;

&lt;p&gt;I realised that the scroll direction on my new mouse mimics the scroll direction of the Apple trackpad. I like how in 2011, Apple introduced natural scrolling on the trackpad to mirror the way we use our phones. But to me, this feels awkward on the mouse because I'm not interacting with the screen using my fingers. At my workplace, I'm kinda forced to use the old-school scroll direction: roll the mouse wheel up to scroll up and down to scroll down. &lt;/p&gt;

&lt;p&gt;So, I did a quick search and found that it's such a common problem that some people even wrote to Apple:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ncQN43qG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/zwo1djtvpknk7q25twur.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ncQN43qG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/zwo1djtvpknk7q25twur.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;
Thanks Peter Marcotte, you're a hero. Source: &lt;a href="https://apple.stackexchange.com/questions/116617/how-to-separate-mouse-and-trackpad-settings"&gt;stackexchange.com&lt;/a&gt;



&lt;p&gt;After trying out several solutions, I finally found one that I'm happy with and would recommend: &lt;a href="https://mos.caldis.me/"&gt;https://mos.caldis.me/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Installed the app, opened it up and saw that both &lt;strong&gt;Smooth Scrolling&lt;/strong&gt; and &lt;strong&gt;Reverse Scroll&lt;/strong&gt; were already checked for me. On top of that, I checked the &lt;strong&gt;Launch on Login&lt;/strong&gt; as well, so that the setting stays.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--EEeIBCyF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/j9t0esviecrxhg8gvt70.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--EEeIBCyF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/j9t0esviecrxhg8gvt70.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;
Preferences page


 

&lt;p&gt;The app made scrolling with a mouse buttery smooth, as advertised. But it also created another issue when I'm in my company's VM using Citrix. It caused my mouse wheel to take a gigantic step every time I scroll, jumping too forward and too backward past where I intended to stop. Luckily there's a nifty tab called &lt;strong&gt;Exception&lt;/strong&gt; that helps me to customise my mouse settings for any particular app. I customised the settings for my mouse to disregard global settings when it's in Citrix and reduced the step speed and duration to the minimum.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Kb24rPHk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/fzovmcybucobfpdi3nvk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Kb24rPHk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/fzovmcybucobfpdi3nvk.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;
Exception page


 

&lt;p&gt;I can finally get back to developing without experiencing brain fart when switching between trackpad and mouse.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>First shot at open source</title>
      <dc:creator>Kevin Ng</dc:creator>
      <pubDate>Sun, 08 Nov 2020 08:40:26 +0000</pubDate>
      <link>https://dev.to/kevinngth/first-shot-at-open-source-3cn5</link>
      <guid>https://dev.to/kevinngth/first-shot-at-open-source-3cn5</guid>
      <description>&lt;p&gt;Around mid-October, my friend introduced &lt;a href="https://hacktoberfest.digitalocean.com/"&gt;Hacktoberfest 2020&lt;/a&gt; to me. It looked so interesting that I decided to sign up even though I had no experience with contributing to open-source.&lt;/p&gt;

&lt;h3&gt;
  
  
  Background
&lt;/h3&gt;

&lt;p&gt;I'm going to talk a little about myself. I'm new to the coding scene and started my journey with a bootcamp and now I'm working as a junior software engineer. During this time, whenever there were discussions about contributing to open source, it sounds so distant because I feel like I don't really have anything to contribute with my current skill level.&lt;/p&gt;

&lt;h3&gt;
  
  
  Process
&lt;/h3&gt;

&lt;p&gt;Nonetheless, the event and reward for participation drew me in. Onboarding was simple, all I had to do was link my Github account to the event. They even had a short video walkthrough to guide newbies like me. Some important takeaways were how to look for projects that were open-source and contribution guidelines. To find projects, here's a list of online tools that I found very helpful:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/mungell/awesome-for-beginners"&gt;Awesome for Beginners&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://goodfirstissues.com/"&gt;Good First Issues&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://up-for-grabs.net/#/"&gt;Up For Grabs&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Contributions
&lt;/h3&gt;

&lt;p&gt;The video walkthrough also held my hands through making a first PR with an open-source project, DigitalOcean Community's &lt;a href="https://github.com/do-community/cloud_haiku"&gt;haiku collection&lt;/a&gt;. It helped me to understand the most non-disruptive way of contributing:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;look through the issues tab to find suitable problems to tackle&lt;/li&gt;
&lt;li&gt;fork the repo&lt;/li&gt;
&lt;li&gt;clone it to local&lt;/li&gt;
&lt;li&gt;make changes&lt;/li&gt;
&lt;li&gt;push changes up to forked repo&lt;/li&gt;
&lt;li&gt;submit a pull request&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The next repo I worked on was to write a readme for &lt;a href="https://github.com/happycoder0011/CIPHER_DIARIES"&gt;cipher diaries&lt;/a&gt; explaining how the rail fence cipher works. &lt;/p&gt;

&lt;p&gt;After that, I found another project that collects solutions for &lt;a href="https://github.com/ZoranPandovski/al-go-rithms"&gt;algorithms&lt;/a&gt;. I helped code out an implementation for rail fence cipher which I learned while writing the readme for the previous project. How convenient!&lt;/p&gt;

&lt;p&gt;A more impactful project that I took on was to help a &lt;a href="https://github.com/Greatgabbar/Certificate-Generator"&gt;certificate generator&lt;/a&gt; with front-end code. I managed to refactor their view files by making partials for pages to reduce repetition. This way, the &lt;code&gt;.ejs&lt;/code&gt; view files can be kept short without having to write a full HTML document for every page created. This was fulfilling because it added scalability to the project. &lt;/p&gt;

&lt;h3&gt;
  
  
  Reflections
&lt;/h3&gt;

&lt;p&gt;Having tried out various ways of contributing, I feel that solving a project's pain points returned the most sense of satisfaction. I'll be looking forward to Hacktoberfest 2021. In the meantime, I'll definitely be looking at the issues tab of the common open-source libraries to find ways that I can contribute.&lt;/p&gt;

</description>
      <category>hacktoberfest</category>
    </item>
  </channel>
</rss>
