Tuesday, December 26, 2017

Tis the Season for Video Games

This holiday season turned out the to be one of video game consoles at our house.  We added a Nintendo Switch, Playstation 4 Pro, Playstation Vita, and my previously mentioned RetroPi.  I give my first impressions of each console and the accessories.

Saturday, December 23, 2017

Youtube TV vs Hulu

Youtube TV and Hulu TV are two options for cord-cutters to get live TV.  After trying each for a few months, I decided to go with with Youtube TV because of its superior quality even though it had a smaller channel line-up.

Friday, December 22, 2017

A Return to Blogger

I've moved back to Blogger after about 6 months of using Hugo + Google App Engine.

Retro Gaming

When Nintendo announced the NES Classic it brought back memories of playing games like Duck Hunt and Punch Out!  This year, Nintendo announced the SNES Classic and although they promised more availability I wasn't as interested given that I mostly played Atari then NES and then skipped to the Playstation.  I don't have as much nostalgia for the SNES, but its announcement again brought up a desire to play some of the old NES games.  I decided that I'll set up my own retro gaming console.

Friday, October 6, 2017

Ducky Mini (Blue)

I mentioned in an earlier post that the keyboard on the Macbook Pro (touchbar) is so bad that I had to bring a separate keyboard to avoid aggrevating the carpal tunnel in my wrist. The keyboard that I bring along with me is the Ducky Mini mechnical keyboard with blue Cherry MX switches.

Everki Atlas and eBags TLS Professional Slim Backpacks Showdown

This is a comparison of the Everki Atlas and eBags TLS Professional Slim. These are two backpacks targeted at modern professionals needing backpacks for work.

Sunday, October 1, 2017

Work Everyday Carry

Here are the things I have along with me everyday. More specifically, these are the things I bring to work:

Saturday, September 30, 2017

Ebags TLS Professional Slim Backpack

Recently, I got a new backpack for work. I had been using a small custom Osprey Pixel that I got from the office. It wasn’t the ideal backpack. It was small and while the front flap offered protection from rain it also made access to items more inconvenient. For bringing my laptop and some daily accessories between home and work it was okay. Beyond my daily carry items, I couldn’t fit much more into it and even my normal load made the front pouch too tight to be usable. If I had to carry an extra item like a book it would be a very tight fit. I have also started to bring a Pixel C tablet to work since I’m often in meetings where my primary use for a computer is for note taking and looking up information. A 15” Macbook Pro is an overkill and heavy to be carrying and it required me to also bring its AC adapter along since most conference rooms don’t have USB Type-C chargers.

Monday, September 4, 2017

Everki Atlas Thoughts

I’ve now used the Everki Atlas backpack for few trips. I got it for traveling and is not meant to be my everyday carry (EDC) backpack. I needed a backpack that allows me to carry more stuff comfortably and I wanted features such as TSA checkpoint friendly and being able to stow it on top of my luggage so I don’t always have to carry it on my back.

Saturday, August 26, 2017

Traveling Conveniences

Modern day traveling has never been easier (buy a ticket online and you can soon be flying to a far-away exotic location), but it is also full of hassles. While we no longer have to deal with things like traveler checks (credit cards are more widely accepted) and bulky books (an entire library can live on your phone), we’re saddled with new inconveniences such as luggage restrictions, security checks, and providing power to our growing list of electronic devices.

Saturday, August 19, 2017

Upgrading to Fedora 26

Upgrading to Fedora 26 was very smooth. The one change I had to do was because I use the Terminus font. In Fedora 26, the font name changed so in the apps where I’ve picked Terminus, I had to change it to the new name (terminal and conky).
On one system that is connected to a TV through HDMI the login screen has the wrong refresh rate and resolution. I haven’t figured it out yet.

Friday, August 18, 2017

Tech Travel Gear

I’m not a frequent traveler but I do occasionally travel for work and family trips. I set up a modular organization system to allow me to quickly pack based on who is on the trip. I’ve settled on using these to organize all my tech gear:

Wednesday, July 26, 2017

2017 Razer Blade Stealth

For the first time since the days of Windows 95, I bought a Windows-based laptop. Specifically, I got the the 2017 13” model of the Razer Stealth Blade (RZ09-01963) equipped with:


  • 13.3” QHD+ 3200x1800 touch screen (16:9 aspect ration)
  • Intel Core i7-7500U (2 cores, 4 threads)
  • 16GB LPDDR3-1866MHz
  • 256GB SSD
  • Intel HD Graphics 620
  • Killer™ Wireless-AC (802.11a/b/g/n/ac + Bluetooth® 4.1)
  • I/O
    • Thunderbolt™ 3 (USB-C™)
    • USB 3.0 port x2 (SuperSpeed)
    • Multi-point touchscreen interface
    • Anti-ghosting keyboard with Chroma backlighting
    • HDMI 2.0a audio and video output
  • 720P camera
  • Audio
    • Built-in stereo speakers
    • 3.5mm headphone/microphone combo port
    • Array microphone
    • Dolby® Digital Plus Home Theater Edition
    • 7.1 Codec support (via HDMI)
  • Charger & Battery
    • Compact 45W USB-C power adapter
    • Built-in 53.6Wh rechargeable lithium-ion polymer battery
  • Size: 0.52” / 13.1 mmm (Height) x 12.6” / 321mm (Width) x 8.1” / 206 mm (Depth)
  • 2.93 lbs.

Tuesday, July 25, 2017

Thoughts on Hugo

posted earlier about moving from Blogger to Hugo and it has been a couple of months so I thought that I share my thoughts on how Hugo has been working out.

Sunday, July 16, 2017

Upgrading from Fedora 24 to 25

Fedora 26 was released this month which starts the 1 month count down to Fedora 24 becoming unsupported in another month.
The steps to upgrading is very simple and going from 24 to 25 has been the easiest upgrade I’ve had. I even had to double check that I actually got upgraded to 25 after it rebooted since it was so seamless.
I originally planned to immediately upgrade to Fedora 26, but there was one package that wasn’t available in 26 so I’ll wait a few months for 26 to settle down and then upgrade.

My First GopherCon

Being a member of the Go team allowed me to attend my first GopherCon in Denver from July 13 to July 15. This is the 4th GopherCon to be held and previously I’ve only watched the recordings of the sessions on the Gopher Academy Youtube Channel.

Tuesday, June 20, 2017

Backpack Rain Cover

In my review of the Everki Atlas, I pointed that the outside pocket might collect water if it rains. While the rest of the backpack’s contents will be fine, items in that pocket might get wet. Everki does sell a backpack rain cover that can protect the backpack but it is outrageously expensive.
Instead, I got the Ayamaya 40L raincover from Amazon. It is a fraction of the price and easily fits the Atlas. I also like the fact that the Ayamaya doesn’t have any logos on it and is just a cover.

Thursday, June 8, 2017

Moving from Blogger to Hugo

I really liked Blogger and I’ve hosted my blog on it since 2011. It was free (still is), but still had all the essentials features for a blog at the time and I like that it was integrated with Google.
My blogging needs haven’t changed since then but the world have evolved and Blogger no longer have all the essential features necessary for a blogging platform. Specifically, I’m talking about Blogger’s lack of support for SSL/TLS for custom domains. I could accept the dated editor controls, quirkiness in the WYSIWYG UI, and limited customization of themes, but there’s no excuse for not having https enabled on a web site anymore.
I’ve now moved Lazy Hacker Babble from Blogger to Hugo + Google App Engine. Hugo is a static site generator written in Go. It takes your markdown file and generates an entire web site consisting of static files so it doesn’t require databases runtimes, extra libraries, etc. Since it’s written in Go, Hugo comes as a stand-alone binary so there is no need to install a bunch of extra software in order to run it.

Wednesday, June 7, 2017

Setting up HTTPS on App Engine With a Custom Domain

The Go programming language provides a great tool, go get, to fetch packages.  A common use case is to get a package that is hosted on Github:

Saturday, May 13, 2017

Hootoo Travelmate Elite and Using Chromecast In Hotels

Our family always brings a Chromecast with us when we travel so we can watch our video library on the TV.  The challenge has always been getting it to work in hotels especially ones that require a password to access its wifi.

Everki Atlas Review

I've been using a Victorinox backpack for many years whenever I've had to travel.  I can't find a link to it since it's no longer being made, but it is very well made, TSA friendly, side-loading laptop compartment, allows for good organization and can hold a good amount of items).  It is not a light backpack and is pretty heavy when loaded up.  Especially when traveling with the family which increases the number of electronics, I definitely started to feel the weight.

I started to look for a new travel backpack with all the same goodness but lighter and can hook on to the trolley handle of my luggage.  I've also gotten to like backpacks that can stand on its own so that would be a bonus feature.

Initially, the Everki Versa caught my eye as it fit many of my criteria, but I was concerned that it might be too small and it wasn't light at 4.01 lbs.  Instead, I chose the Everki Atlas which is larger then the Versa but is lighter.

The video above goes over the its key features so I'll just give my impression of the Atlas after taking it out on a 1 week business trip.

  • The construction and materials seems solid and comparable to the Victorinox.
  • Organizationally, it is very similar to the Victorinox with the pockets and compartment (the Atlas have a few more internal pockets).  
  • A feature that I liked in the Victorinox is a divider in the main compartment to help separate paper/magazine from the rest of the item and the Atlas has it as well.
  • The water bottle pocket is a good size whereas it was a tight fit with the Victorinox.
  • When fully loaded, it didn't feel as heavy as the Victorinox since the backpack is better balanced.
  • Hooking it on the trolley handle meant I didn't have to carry it all the time.

  • The quick access magazine pocket is convenient but I worry that if it was raining that water will collect in the pocket.
  • Opening up the backpack to go through TSA screening means unzipping that compartment.  This is the same as most TSA backpacks, but I found the Victorinox's method which uses velcro and clip to be faster to open up.
  • I like the side loading compartment on the Victorinox which makes it easy to get the laptop out without taking off the backpack.  Top loading makes it a bit easier to access the laptop while on a plane, though.
Wish List

Here are a few things that I think would make the backpack even better:
  • Rain cover or something to prevent water from going into the magazine pouch.
  • Hard case compartment is something that might be nice but honestly I'm not sure about it.
  • Hole to run a cable through for headphones or charger.
  • Pocket on the shoulder strap for holding transit tickets/cards.
  • The tuck-in strap of the Versa looks like a nice feature.  The Atlas is not too bad because it has a chest strap that helps keeps the shoulder strap from flopping around.

Saturday, April 1, 2017

Accessing Github Through SSH As Different Users

To set up access to Github using different accounts, start by creating ssh keys for each account.

$ cd ~/.ssh
$ ssh-keygen -t rsa -C "github-acct1" -f "github-acct1"
Then add the ssh key to the Github account.

Next, create ~/.ssh/config to tell ssh when to use which account (set permission to be 600):

# Github account #1                                              
Host github.com-acct1                                                                 
   HostName github.com                                                          
   User git                                                                     
   IdentityFile ~/.ssh/github-acct1                                           
# Github account #2                                                         
Host github.com-acct2                                                        
   HostName github.com                                                          
   User git                                                                     
   IdentityFile ~/.ssh/github-acct2

Check out a repo as the user to use by matching to the Host value in ~/.ssh/config:

$ git clone git@github.com-acct1:repo
Change to the repo directory and set the name and email to use for commits if needed.

$ cd repo
$ git config user.name "Acct1"
$ git config user.email acct1@example.com

To avoid accidentally using the wrong account (e.g. default):

$ git config --global --unset user.name
$ git config --global --unset user.email
$ git config --global user.useConfigOnly true
If you get an error message about the user (or the wrong user) not having the right permission to access the repo:

$ eval "$(ssh-agent -s)"
$ ssh-add

Monday, February 20, 2017

Yubikey, U2F and protecting your accounts.

Setting up 2-factor authentication is an important step to keeping your online accounts safe.  For many people, this comes in the form of having an additional code that must be entered in addition to their passwords such as those that is sent to their phones through SMS or using an app like Google Authenticator.

Admittedly, this additional security comes with an additional inconvenience of needing to have your phone nearby and looking up the code which probably turns off a lot people.  To simply the process, Google, Yubico and some partners developed Universal 2nd Factor (U2F) which is now handled by the FIDO Alliance.  This open standard uses an hardware key that you insert into the computer's USB slot (or using NFC) instead of typing a code.

Google, Facebook, Dropbox, Github and a host of other services now support this.  The keys can be purchased from Amazon and ranges from $18 to $50 depend on the features you want.  For primarily Fido/U2F support, only the $18 Yubikey is needed.

Sunday, February 19, 2017

Google Wifi, mesh networks, redundancy

Google Wifi is a new device that can create a wireless network "mesh" by simply adding wifi points to your network.  It is super simple to setup.  Simply plug it in and add it to your home network through the mobile app.

Setting up a home network usually involves having a router (likely with wifi capabilities) that devices connect to.  Single router solutions like Asus RT-ac68u and Google OnHubs have very good reach and for most situations are going to be all you need.  The RT-AC68U allows you to tweak and configure to your heart's delight. The OnHub leverages Google's technology to monitor and configure itself for maximum performance thus regulating managing your router to the background.

There is one flaw to the single router solution which I painfully experienced recently:  single point-of-failure.  One day, my router just stopped working and nothing I did could bring it back to life.  When the internet is down in my house... well, the natives are not happy and good 'ol dad will hear about it!  In this situation, it usually mean going out and buying a replacement ASAP and if it happens at night that'll mean finding ways to pacify the citizens' unrest until that replacement can be bought.  Fortunately, in my case, I had an unused router left in storage.

"Redundancy" is a good thing in the technology world.  This brings me back to Google Wifi.  Most discussions about Google Wifi focuses on its wireless mesh capabilities, but each Google Wifi unit can also be a router.  In fact, unless you are using an OnHub as your router, at least one unit has to be the router.  If one unit fails that will just mean the reach of the home network is smaller but the network is still up.  If it is the unit that serves as the router that fails, simply using one of the other units as the router.

Google Wifi works great, but the added benefits of the redundancy makes me really recommend it especially...

(T-shirt available from snorgtees.com)

My System (2015)

In a blink of an eye, two years has passed since I upgraded my primary system and it seems to be true that we've arrived at the end of Moore's Law as I've not felt an urge to upgrade the system.  I've not noticed slow down in performance of what I do on a day-to-day basis on the system which is primarily coding with VIM and browsing with Chrome.  I don't use this system for gaming and Linux is my primary OS which might contribute to everything still being relevant.  It's possible that my next upgrade will be driven by an upgrade to my monitors from dual HD to dual 4k.

This system is very Linux friendly and has an added bonus of having dual gigabit Ethernet which is one reason that I got it over the Asus Vivo Mini that I've also mentioned before.  This system also has dual displayport outputs and an HDMI if you're inclined to power 3 external monitors.  It runs cool and quiet and I've not had any problems with it in the two years that I've been using it.  This particular Shuttle bare bones system is no longer available but there is a newer version which seems identical except with a newer Intel chipset that has improved graphics, allows for more memory and supports newer Intel processors.
  • Shuttle PC DS87
  • Intel Core i7-4790S Processor (8M Cache, 3.2 GHz)
  • Samsung 850 EVO 500GB 2.5-Inch SATA III Internal SSD (MZ-75E500B/AM)
  • 2 of Crucial 16GB Kit (8GBx2) DDR3 1600 MT/s (PC3-12800) CL11 SODIMM 204-Pin 1.35V/1.5V Notebook Memory CT2KIT102464BF160B

Saturday, February 18, 2017

My Favorite "Management" Books

Besides the books that I’ve previously listed, here are some books that are more focused on management rather then software engineering or technical project management that I’ve found to still be good reads for engineers.
The First 90 Days gives advice on how to transition into new roles with case studies on do’s and don’t. I found it useful in helping to develop a learning plan for myself whenever I start on a new team or in a new role.
Who Says Elephants Can’t Dance isn’t a “how to manage” book or even a “How Louis Gerstner manages” book. It’s presented more as a story of IBM’s turn-around. I like to read this book when I feel frustrated about a company to remind myself that change can happen even in the largest of companies.
Additionally, here are some books that’s been recommended to me which I have not yet read but I thought that I’d pass along:

Monday, January 2, 2017

Upgrading from Fedora 23 to Fedora 24

With the release of Fedora 25, Fedora 23 reached its end-of-life so I had to upgrade the system.  I'm usually a bit hesitant on upgrading to the latest-and-greatest version so soon after its release so I upgraded to Fedora 24 (also to avoid doing a direct upgrade over multiple versions).

The first thing I usually do is to check the wiki for commonly known problems to see if any will effect me.  Also, a quick Google search might help turn up any issues users are facing.

Upgrading an existing Fedora instance is very simple and can be done from the command line like a package update with DNF.  Fedora Magazine has the simple instruction which is mostly a formatted snippet from the Wiki which has more details such as a FAQ and post upgrade suggestions.

The upgrade went smoothly and felt faster then going from 22 to 23 but I didn't time it.  Once it finished and rebooted, I was able to log in and all the essential functions seemed to be working.

There were two things that didn't work as they did previously with Fedora 23.  Conky, which I use to display a calendar on the desktop, was showing up in the wrong place.  I have a dual monitor setup with my second monitor in a portrait orientation and I had the calendar on the second monitor.  However, now it was showing the calendar near the middle of the first monitor instead as an windowed application.  A quick search revealed that Conky has changed how its configuration format has changed but that wasn't the problem (Conky will try to convert it on the fly if it sees the old format).  The windowed was because of a typo in my config that it ignored before (or maybe Conky changed what it expected).

I'm not sure what's causing the positioning problem though.  It seems like what it thinks is the "top_right" is only on the primary monitor now so I had to assume the offset from the primary monitor (using negative value for the x,y coordinates).

The second problem was that I previously had different wallpapers for each monitor.  Gnome (and specifically Cinnamon which is what I use) doesn't support this feature so I use Nitrogen to set the wallpapers, but in Fedora 24 Nitrogen crashes with "nitrogen --restore" or if run manually with just "nitrogen" it doesn't see the second monitor.  After a lot of searching and going down various paths such as using dconf-editor to change the behavior of the file manager, I suspected that it might be because Fedora 24 is using Nitrogen 1.6 which has a log of changes especially in how it detects which type of desktop is being used.  My solution for now was to install version 1.5.2 instead:

$ sudo dnf --showduplicates list nitrogen
$ sudo dnf remove nitrogen
$ sudo dnf install nitrogen-1.5.2-17.fc24
The first dnf command will shows all the versions of Nitrogen available and the next two is to remove the current version and install the 1.5.2 version.