<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">

 <title>Jacques Lalancette</title>
 <link href="https://jacola.github.io/atom.xml" rel="self"/>
 <link href="https://jacola.github.io/"/>
 <updated>2022-01-19T01:35:46+00:00</updated>
 <id>https://jacola.github.io</id>
 <author>
   <name>Jacques</name>
   <email>me@jacques.io</email>
 </author>

 
 <entry>
   <title>Vim as an IDE on Windows 10</title>
   <link href="https://jacola.github.io/vim-as-an-ide-on-windows10"/>
   <updated>2020-02-28T00:00:00+00:00</updated>
   <id>https://jacola.github.io/vim-as-an-ide-on-windows10</id>
   <content type="html">&lt;p&gt;I want the same experience independent of the platform I’m using. For this reason, I’m a die-hard Vim fan. With mosh and &lt;a href=&quot;https://github.com/tonsky/FiraCode&quot;&gt;FiraCode&lt;/a&gt; life is good. On Windows, it has been a challenge to have an excellent vim experience.&lt;/p&gt;

&lt;p&gt;Issues with Visual Studio Code:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;Vim plugin didn’t work how I wanted. For example: I couldn’t hit &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;5{tab}&lt;/code&gt; to indent a block.&lt;/li&gt;
  &lt;li&gt;The clipboard didn’t work sometimes. (I still can’t explain it.)&lt;/li&gt;
  &lt;li&gt;Multiple histories (vim and &amp;amp;  Visual Studio Code) means that undo and redo operations are messy.&lt;/li&gt;
  &lt;li&gt;No relative line numbers making it hard to quickly do &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;5dd&lt;/code&gt; or something when I want to move a code block.&lt;/li&gt;
  &lt;li&gt;I love splitting windows, but don’t like navigating through tabs.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Several months ago, I started looking for solutions around &lt;a href=&quot;https://neovim.io/&quot;&gt;Neovim&lt;/a&gt;, but I had trouble finding something that would support FiraCode’s ligatures. &lt;a href=&quot;https://github.com/Kethku/neovide&quot;&gt;Neovide&lt;/a&gt; looked like a possible solution, but there were a few challenges. The biggest one is that it won’t run on my home computer (it builds, but no errors).&lt;/p&gt;

&lt;p&gt;I started looking at other solutions.&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;Running vim through &lt;a href=&quot;https://docs.microsoft.com/en-us/windows/wsl/install-win10&quot;&gt;WSL&lt;/a&gt;. Disk, i/o with WSL, is usually too slow, and I want to access my local filesystem without symlinks. Additionally, I can’t open Ubuntu in the windows store and don’t want to troubleshoot it.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/daa84/neovim-gtk&quot;&gt;NeovimGTK&lt;/a&gt;’s windows build. While the binary available ran, it wouldn’t display ligatures. I spent a lot of time trying to build it from source with MSYS2 &amp;amp; GTK, but on step 144/145, I always saw this error:
&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;fatal error LNK1181: cannot open input file 'gtk-3.lib' msys2&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;There’s a broad spectrum of possible solutions to get vim working with FiraCode (WSL, building Linux apps on windows, etc…), but in the end here is what I found to work the best.&lt;/p&gt;

&lt;p&gt;A week ago, Microsoft released the preview of &lt;a href=&quot;https://github.com/microsoft/terminal&quot;&gt;Windows Terminal&lt;/a&gt;. FiraCode works in Windows Terminal with the following settings:&lt;/p&gt;
&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;{
  ...
  &quot;profiles&quot;: {
    &quot;defaults&quot;: {
      // Put settings here that you want to apply to all profiles
      &quot;fontFace&quot;: &quot;Fira Code Retina&quot;,
      &quot;fontSize&quot;: 10,
      &quot;background&quot;: &quot;#141414&quot; // Hide the ugly blue.
    },
    ...
  }
  ...
}
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;&lt;img src=&quot;/public/static/windows-terminal-experience-min.png&quot; alt=&quot;Windows Terminal experience.&quot; /&gt;
Windows Terminal experience.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/static/chrome-mosh-client-to-vps-min.png&quot; alt=&quot;Chrome store Mosh client connected to VPS.&quot; /&gt;
Chrome store Mosh client connected to VPS.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/static/blink-ipad-connected-to-vps-min.png&quot; alt=&quot;Blink on an iPad connected to VPS.&quot; /&gt;
Blink on an iPad connected to VPS. (Retina screens are so nice…)&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Performant CSS Sprite Sheets in React</title>
   <link href="https://jacola.github.io/performant-css-sprite-sheets-in-react"/>
   <updated>2020-02-21T00:00:00+00:00</updated>
   <id>https://jacola.github.io/performant-css-sprite-sheets-in-react</id>
   <content type="html">&lt;p&gt;My original implementation for rendering for a single tile was causing performance issues. It was slow because whenever the client added a row (scrolling to the next row/column), there was some lag as it read the 250kb image from the cache for each new tile. This caused my game to drop frames unless the entire (small) map was already on screen. The offending code was something like this:&lt;/p&gt;

&lt;p&gt;MapTile.js&lt;/p&gt;
&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;import React from react;

export const MapTile = props =&amp;gt; (
  &amp;lt;div
    style={{
      // ...
      background: `url(${props.tileset})
        -${props.tileX * TILE_SIZE}px
        -${props.tileY * TILE_SIZE}px`,
    }}
  /&amp;gt;
);
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;I send a &lt;a href=&quot;https://www.mapeditor.org/&quot;&gt;Tiled&lt;/a&gt; map from the server to the client. These maps use tilesets, which are large images with hundreds of tiles, so I wanted to implement &lt;a href=&quot;https://www.w3schools.com/css/css_image_sprites.asp&quot;&gt;CSS sprite sheets&lt;/a&gt; inside of a React component.&lt;/p&gt;

&lt;p&gt;My final solution is this:&lt;/p&gt;
&lt;ol&gt;
  &lt;li&gt;Create a CSS file containing all of the tileset names used in tiled. For example:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;MapTile.module.css&lt;/p&gt;
&lt;div class=&quot;language-css highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;nc&quot;&gt;.tilea&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
  &lt;span class=&quot;nl&quot;&gt;background-image&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;sx&quot;&gt;url(/assets/tilea.png)&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;ol&gt;
  &lt;li&gt;Assign the class to the div that holds the tile sheet and only explicitly specify the backgroundPosition with inline styles.&lt;/li&gt;
&lt;/ol&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;import React from 'react';
import styles from './MapTile.module.css';

export const MapTile = props =&amp;gt; (
  &amp;lt;div
    className={styles[props.tileset]}
    style={{
      // ...
      backgroundPosition: `-${props.tileX}px -${props.tileY}px`,
    }}
  /&amp;gt;
);
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;&lt;a href=&quot;https://www.youtube.com/embed/eL2D26kSDP8&quot;&gt;See it in action on YouTube&lt;/a&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Scratching an Itch</title>
   <link href="https://jacola.github.io/scratching-an-itch"/>
   <updated>2020-02-19T00:00:00+00:00</updated>
   <id>https://jacola.github.io/scratching-an-itch</id>
   <content type="html">&lt;p&gt;Twenty years ago, I was an exchange student in Japan. I was in the countryside, and my host family didn’t have the internet. In the evenings, I developed a simple online RPG, called Aspereta, in VB6 and DirectX.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/static/aspereta-2002-min.png&quot; alt=&quot;Aspereta circa 2002&quot; /&gt;&lt;/p&gt;

&lt;p&gt;A couple of times a year, I get the itch to make a game of some sort. I don’t usually scratch it because making a game can be a lot of work. In January, I had a short trip to Europe that involved a long flight. I started looking at game development using React and React Native.&lt;/p&gt;

&lt;p&gt;I saw a few posts on Medium and videos on YouTube that I saved locally for the flight.&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://medium.com/better-programming/flappy-bird-with-react-native-game-engine-and-matter-js-d5673f50eb9&quot;&gt;Flappy Bird With React-Native-Game-Engine and Matter.js&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://www.youtube.com/watch?v=0pfLapmfxdY&quot;&gt;Drew Conley - The Danger Crew: Lessons learned from building an RPG in React&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I spent the flight playing with &lt;a href=&quot;https://github.com/bberak/react-native-game-engine&quot;&gt;react-native-game-engine&lt;/a&gt; and its documentation. When I got back home, I spent some time looking into the various options for creating things with React Native. There were some tutorials for using Three, Phaser, etc. with React Native, but there wasn’t much information available on these.&lt;/p&gt;

&lt;p&gt;With React Native, I didn’t want to spend my time learning a graphics/game library. I made a basic tilemap with multiple players rendered by react-native-game-engine, but it wasn’t quite what I wanted.&lt;/p&gt;

&lt;p&gt;Eventually, after revisiting some resources and examples like &lt;a href=&quot;https://www.youtube.com/watch?v=0pfLapmfxdY&quot;&gt;Drew Conley - The Danger Crew: Lessons learned from building an RPG in React&lt;/a&gt;, &lt;a href=&quot;https://blog.usejournal.com/making-an-rpg-with-react-redux-dcfffdb06797&quot;&gt;Making an RPG with React + Redux&lt;/a&gt;, and &lt;a href=&quot;https://www.youtube.com/watch?v=QZcNGfcn-oo&quot;&gt;Making an RPG with React&lt;/a&gt;, I settled on building everything in React. I also saw &lt;a href=&quot;https://www.youtube.com/watch?v=PfSwUOBL1YQ&quot;&gt;this video series&lt;/a&gt; about making an online RPG with a server written in node.&lt;/p&gt;

&lt;p&gt;After a week of tinkering, I have a server that sends a Tiled map and lets players walk around, and a client that connects and renders the map.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://www.youtube.com/embed/ihTbg6KRkOk&quot;&gt;See it in action on YouTube&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Updates for this project: &lt;a href=&quot;https://instagram.com/lost.aeon&quot;&gt;@lost.aeon&lt;/a&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Three Months of Development on an iPad</title>
   <link href="https://jacola.github.io/three-months-of-development-on-an-ipad"/>
   <updated>2019-11-10T00:00:00+00:00</updated>
   <id>https://jacola.github.io/three-months-of-development-on-an-ipad</id>
   <content type="html">&lt;p&gt;For over three months, I wrote (JavaScript) code from my iPad every day. There was one exception when I had to attend a funeral. There are a few gaps on my GitHub profile from when I forgot to push code, or lost track of time in and pushed after midnight. This post is an update after a few more months of consistent usage.&lt;/p&gt;

&lt;p&gt;As I’ve outlined before, my setup is simple. I use &lt;a href=&quot;https://www.digitalocean.com&quot;&gt;DigitalOcean&lt;/a&gt; and connect to my server with &lt;a href=&quot;https://apps.apple.com/us/app/blink-shell-mosh-ssh-client/id1156707581&quot;&gt;Blink&lt;/a&gt;. Once connected, I tmux and vim - old habits die hard. During this time, I’ve encountered a few minor annoyances, and I’ll share them here.&lt;/p&gt;

&lt;h2 id=&quot;ime-change&quot;&gt;IME change&lt;/h2&gt;
&lt;p&gt;I map the escape key to capslock in &lt;a href=&quot;https://apps.apple.com/us/app/blink-shell-mosh-ssh-client/id1156707581&quot;&gt;Blink&lt;/a&gt; through Settings -&amp;gt; Keyboard -&amp;gt; Special Keys -&amp;gt; Caps as Esc. Most of the time, everything works fine, but I have Japanese and Emoji keyboards enabled, so sometimes this changes the input mode. To fix this unwanted behavior, I turned off General -&amp;gt; Keyboard -&amp;gt; Hardware Keyboard -&amp;gt; Switch Languages using Caps Lock.&lt;/p&gt;

&lt;h2 id=&quot;random-zooming&quot;&gt;Random Zooming&lt;/h2&gt;
&lt;p&gt;Blink randomly zoom in, just a little bit, just enough to seem off. I’m using a setting of 16px for my font, which might not be the default font size for Blink. It seems to correlate with app switching, or creating a new session. So I need to hit [Command] + [=] whenever I open Blink. When there are phantom zoomed sessions, I need to kill all mosh sessions and reconnect.&lt;/p&gt;

&lt;h2 id=&quot;lagging-input&quot;&gt;Lagging Input&lt;/h2&gt;
&lt;p&gt;Input lags a little. Mosh smooths it out and it’s only an issue when I’m in vim, and I press &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;[esc]:w[return]&lt;/code&gt; then see this:
&lt;img src=&quot;/public/static/input-lag-min.jpeg&quot; alt=&quot;vim tmux blink input lag&quot; /&gt;
😢😢😢😢&lt;/p&gt;

&lt;p&gt;The ability to write code on an iPad is improving, and while I find myself only reaching for my laptop when I need react/redux dev tools or other advanced debugging tools, the overall experience is enjoyable.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>One Month Developing a Web App on an iPad</title>
   <link href="https://jacola.github.io/one-month-developing-a-web-app-on-an-ipad"/>
   <updated>2019-08-30T00:00:00+00:00</updated>
   <id>https://jacola.github.io/one-month-developing-a-web-app-on-an-ipad</id>
   <content type="html">&lt;p&gt;I have been developing a single page app from my iPad for the last four weeks trying to push something to GitHub every day. It all started because I wanted to use GraphQL more. Using GraphQL, Vue, and Onsen UI, I built something similar to the iPhone Calendar app.&lt;/p&gt;

&lt;h2 id=&quot;getting-started&quot;&gt;Getting Started&lt;/h2&gt;

&lt;p&gt;It was challenging to get started. I wasn’t sure which tools I needed to to make the process work. I set up a server on DigitalOcean that I connect to using Mosh, and I edit my code using tmux and vim. &lt;a href=&quot;https://apps.apple.com/us/app/secure-shellfish/id1336634154&quot;&gt;Secure ShellFish&lt;/a&gt; and using Textastic as a code editor worked well too.&lt;/p&gt;

&lt;p&gt;Once I could write code, I struggled to find a substitute for developer tools. I tried Firebug Lite, but no console output from page loading and multiple taps to load it was too much. I also struggled with Safari caching things. I discovered &lt;a href=&quot;https://apps.apple.com/us/app/inspect-browser/id1203594958&quot;&gt;Inspect&lt;/a&gt;, and I was skeptical about buying Inspect because it didn’t have a large number fo reviews. After using it for almost a month, it checks all the boxes for me, and I found it helpful to separate Safari (documentation) and debug screen. I also acknowledge that it isn’t at the same level as Chrome’s developer tools.&lt;/p&gt;

&lt;p&gt;When I was up and running, hot module reloading  (HMR) with Vue wasn’t working, and reloading my entire app.js was slow. For HMR, I needed to allow WebSocket connections to pass through my reverse proxy (Nginx). This &lt;a href=&quot;https://blog.asadjb.com/webpack-hot-module-replacement-with-nginx-as-reverse-proxy-8d3f96959689&quot;&gt;post&lt;/a&gt; helped me get going.&lt;/p&gt;

&lt;h2 id=&quot;results&quot;&gt;Results&lt;/h2&gt;
&lt;p&gt;There are three positive points about developing from the iPad.
I enjoy the focused environment of the iPad. 
I always have battery and internet connectivity. (I can’t stand fiddling with pocket wifi devices, carrying them around and keeping them charged, especially on public transportation.
It’s easier to switch contexts for me than with a PC as the tools are separate from my other daily work.
It’s worth noting that I have two small children and can’t accurately predict when and where I’ll have time to work on things. I’m willing to sacrifice a little usability for speed and convenience.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>The Best Terminal Experience from an iPad</title>
   <link href="https://jacola.github.io/best-terminal-experience-from-an-ipad"/>
   <updated>2019-08-25T00:00:00+00:00</updated>
   <id>https://jacola.github.io/best-terminal-experience-from-an-ipad</id>
   <content type="html">&lt;p&gt;Mosh &lt;a href=&quot;https://mosh.org&quot;&gt;mobile shell&lt;/a&gt; is a game-changer. Mosh lets me keep my session even when my IP changes, which means when I change between wifi and 3G, my connection stays. It also instantly shows my input, underlining it until it reaches the server.&lt;/p&gt;

&lt;p&gt;The client I use is &lt;a href=&quot;https://apps.apple.com/us/app/blink-shell-mosh-ssh-client/id1156707581&quot;&gt;Blink&lt;/a&gt;. I have been using it on my iPad for over three weeks trying to write code on a remote machine running tmux and vim.&lt;/p&gt;

&lt;p&gt;Once in a blue moon, something gets tripped up, and I need to kill some phantom mosh sessions that are messing up tmux.&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;kill `pidof mosh-server`
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;It’s worth noting that I’ve tried using two different VPS providers. &lt;a href=&quot;https://www.linode.com&quot;&gt;Linode&lt;/a&gt; has servers in Tokyo, while &lt;a href=&quot;https://www.digitalocean.com&quot;&gt;DigitalOcean&lt;/a&gt; does not. Despite there being 100+ ms more latency with DigitalOcean, the experience is the same. DigitalOcean’s machines built my code faster at the same price point.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>From my iPad</title>
   <link href="https://jacola.github.io/from-my-ipad"/>
   <updated>2019-08-06T00:00:00+00:00</updated>
   <id>https://jacola.github.io/from-my-ipad</id>
   <content type="html">&lt;p&gt;I built this site solely from my iPad. That was undoubtedly the easy part.&lt;/p&gt;

&lt;p&gt;Built using this &lt;a href=&quot;https://github.com/poole/lanyon&quot;&gt;Lanyon Jekyll Theme&lt;/a&gt; and deployed it on GitHub Pages.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>How I Learned About Machine Learning</title>
   <link href="https://jacola.github.io/how-i-learned-about-machine-learning"/>
   <updated>2018-06-01T00:00:00+00:00</updated>
   <id>https://jacola.github.io/how-i-learned-about-machine-learning</id>
   <content type="html">&lt;p&gt;Originally an email to a friend in June 2018.&lt;/p&gt;

&lt;p&gt;A friend asked me how I got started with machine learning the other day. I found the train and test nature of machine learning addictive, to say the least, and spent 2016 obsessed with the topic. Stealing any moment I could work on a Kaggle problem or read the latest posts that flooded Hacker News at the time. The response below is what I told my friend.&lt;/p&gt;

&lt;p&gt;I started with the two courses mentioned in a &lt;a href=&quot;https://medium.com/learning-new-stuff/machine-learning-in-a-year-cdb0b0ebd29c&quot;&gt;Medium article&lt;/a&gt;. The &lt;a href=&quot;https://www.udacity.com/course/intro-to-machine-learning--ud120&quot;&gt;Udacity course&lt;/a&gt; is overly simplistic. After that, I moved to &lt;a href=&quot;https://www.coursera.org/learn/machine-learning&quot;&gt;Andrew Ng’s Coursera course&lt;/a&gt; – it’s rough, but I plowed through it.&lt;/p&gt;

&lt;p&gt;After that, I went on to use this &lt;a href=&quot;http://course.fast.ai/&quot;&gt;course&lt;/a&gt; by Jeremy Howard, which was the most practical. The right balance between theory (all the linear algebra) and implementation (using Keras).&lt;/p&gt;

&lt;p&gt;Python Machine Learning was also a good book. When I have the willpower, I try to avoid screens before bed, so I was using this to supplement before bed. Happy to lend you this one if you’re interested.&lt;/p&gt;

&lt;p&gt;I also enjoyed listening to Talking Machines during my year of ML. Partially Derivative was also okay, but too focused on politics.&lt;/p&gt;

&lt;p&gt;Some of the Kaggle tutorials are helpful too! :)&lt;/p&gt;

&lt;p&gt;I haven’t taken this one, but it’s on my radar: https://developers.google.com/machine-learning/crash-course/&lt;/p&gt;

&lt;p&gt;If I could do it again, I would do the Udacity course, then take the google and/or fast.ai course and supplement it with a book and the Andrew Ng class.&lt;/p&gt;

&lt;p&gt;The Google course on Android development was well done. However, it focuses directly on TF, while fast.ai uses Keras, which can use TF or Theano as a backend.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Why Blog in 2018?</title>
   <link href="https://jacola.github.io/why-blog-in-2018"/>
   <updated>2018-05-01T00:00:00+00:00</updated>
   <id>https://jacola.github.io/why-blog-in-2018</id>
   <content type="html">&lt;p&gt;Originally posted in May of 2018&lt;/p&gt;

&lt;p&gt;Recently, a friend of mine started writing some blog posts, and a few of his first posts were centered around the reason for starting a blog.&lt;/p&gt;

&lt;p&gt;When I was younger, I owned the top spot on Google for my name. I had a website at &lt;a href=&quot;https://jacqueslalancette.com&quot;&gt;https://jacqueslalancette.com&lt;/a&gt; (it redirects here now), which never was home to much. For most of its existence, it just pointed to my Facebook and LinkedIn profile pages. When it had content, I would get snarky comments. While these comments would usually come from people that I had little respect for, it wasn’t enjoyable. So after a while, I just took everything down.&lt;/p&gt;

&lt;p&gt;Since then, I was overtaken by &lt;a href=&quot;http://www.stockcarquebec.ca/pilotes/L/jlalancette.htm&quot;&gt;#99&lt;/a&gt;, a French Canadian stock car driver with the same name. At the same time, I also stopped using most social media sites. I still use Facebook on occasion for messaging.&lt;/p&gt;

&lt;p&gt;That said idea of a blog has always been intimidating. I have lived in Japan for my entire adult life, and my writing hasn’t improved since I received poor marks in school. When I write anything in prose, usually at work, my bosses tell to remove the details and turn it into PowerPoint slides. People love bullet points because using them helps people hide behind ambiguity.&lt;/p&gt;

&lt;p&gt;On top of that, I was always concerned about the content being perfect enough, profound enough, insightful enough, consistent enough, etc. One day, I realized that it doesn’t matter. I have witnessed a program touching the hands of an end-user for the first time and know nothing is perfect on the first try, in fact usually it’s far from it. Listening to &lt;a href=&quot;https://www.akimbo.me/&quot;&gt;Seth Godin’s Akimbo podcast&lt;/a&gt; made me realize that eventually, something I write will resonate with someone and contribute something to them. If it helps one person, it’s enough.&lt;/p&gt;
</content>
 </entry>
 

</feed>
