McNelson's corner of the web

Latest blog post

Upgrading to the Xiaomi M365 Beta or Pro Firmware
Jul 12, 2019

I've ridden about 1,000 km in total since buying my M365, nearly the distance between Portland and the SF Bay Area. Back when I was looking to buy, a big advantage for this scooter was the community around custom firmware. As a result I have the scooter's handling characteristics exactly how I want them, and now they're time-tested. Only a few kicks and it climbs hills easily. It responds just as I expect to to the throttle. I'm used to the regenerative braking. I really feel I can put the scooter exactly where I want it in a lane when riding with traffic.

My tech background

2019
The Xiaomi M365 electric scooter reels me into a massive amount of modding and tuning on both the software and hardware side.
Despite how hard it is to break away from Ruby, pushed as much as possible into ES6, Vue and Webpack.
2018
Embraced Vue to build a new single-page application on an expanding engineering team.
Carved away Rails' view layer responsibility to focus on making an API via the JSONAPI spec. Found its development a bit on the stagnant side.
Threw out my .vimrc and rebuilt everything in Neovim. I was far too used to latency on save.
They Are Billions snags far too much of my free time.
2017
Set up an in-house Elasticsearch/Kibana box behind Nginx. Kibana is such a powerful tool.
Warily ventured into the world of Amazon API Gateways & Lambda Functions, which I found to be very convoluted.
Began playing with Webpack and Yarn after a couple of Rails 5 upgrades.
2016
Took the lead on several complex feature releases for a logistics solution in a 5-person team.
Thoroughly enjoyed building a UI with the slick combination of JBuilder and React.
Realized the importance of Selenium to today's application development practices.
Rocket League joins TF2 as probably one of my favorite games of all time.
2015
Attempted to wrap my brain around how ElasticSearch worked.
Took on the agonizing task of migrating a whole Github org from Travis to Codeship.
Upon getting a Continuous Glucose Monitor, made a visualizer app so I could store all my BG readings!
Hopped jobs and took a Rails app off the ground.
2014
Integrated Paypal and Amazon payments for ecommerce platform on very quick order.
Considered launching an idea with some friends, found it was next to impossible with a full-time job.
Wrote a game in Node with a Campfire bot interface that helped encourage our dev team to review PRs.
Poked Angular JS with a stick. Didn't like it.
2013
Extraordinarily lucky to learn Rails inside and out with a top-notch engineering team that changed everything I knew about web development.
2012
Got serious about Javascript and started with Ruby on Rails, professionally and for college project.
Couldn't believe how much better Git was than SVN!
Took classes in C & C++ and found them to be just exemplary languages.
Somewhat fell in love with Illustrator after taking class in brand identity design. Not terribly keen on Photoshop, however.
Wordpress here, Wordpress there. Everyone's doing it.
2011
Racked my noggin setting up email service on my Slice, and then migrating it all to Linode after Rackspace sadly bought Slicehost.
A pretty quintessential Silicon Valley startup revealed to me the miracle of version control software.
Got a Droid Incredible and immersed myself in customizing every last little thing.
Last graduating year to do Flash & Actionscript, then they switch to Javscript. Just my luck.
Learned frameworks exist when I bumped into CodeIgnitor, showed me the concept of MVC.
Internship in SEO/marketing showed me that route also wasn't meant to be.
2010
Comatose for a couple weekends playing Minecraft.
Took a break to do college stuff!
2009
Particular illustration in Graphic Design class clearly indicated it wasn't meant to be, but would at least give me laughs for years to come.
Class in Visual Basic becomes the first and last time I touch an M$ programming language.
Played lots of Valve games and kept plugging away at PHP.
2008
Got my public static void main on in BlueJ. Ick.
Took a Web Design basics class to make sure I got the little details for this career path.
More continuous beating up of Wordpress to yield endless possiblities.
2007
Kept hacking features into phpBB, really started to grasp SQL.
Illustrator class showed that I might have an arty side.
Discovered I could break into my KRZR flip Phone with P2K Commander & M-Explorer.
2006
Made a Tripod website detailing a side project.
Graduated to Pinnacle Studio 10 from Premiere, found that it crashed and froze up just as much.
2005
Wanted to host a phpBB forum on a cloud instance, so I unknowingly gave myself my first true introduction to Linux (CentOS) and Vim.
Made some game mods written in Pawn (C-like lightweight embedded language).
Installed Podzilla (iPod Linux) in order to watch videos on my iPod nano, pretty mindblowing at the time.
Drew up game sprites and forum signatures in GIMP.
2004
Adobe Premiere 7 was a totally miraculous program when it wasn't freezing up or crashing.
Learned how the macro switch worked on a camera after accidentally leaving it on throughout a trip to Europe.
Still enamored with The Sims, made a little Frontpage website that shows all cars in the game.
Made cheesy fighting scenes and other animations in PowerPoint.
2003
Meteor, an indie top-down shooter, provides my first exposure to C.
Cakewalk Express Tried to write covers of various songs in Cakewalk Express.
2002
Endlessly tinkered with interactive buttons in MS Frontpage.
Tried The Sims at a friend's house and built ALL THE HOUSES.
Endured a serious Stagecast Creator phase on a school Apple G3.
Obsessed over locking topics on discussion forums.
2001
Tech program at school gave me my first taste of Coreutils.
Acquired hand-me-down SNES and courageously tried to beat Jurassic Park.
Lots of Need for Speed High Stakes, the game of my childhood.
2000
Checked out what the inside of our 933 MHz Pentium III computer looked like.
Figured out how I could change my desktop background & screensaver on Windows 2000!