2015: A Retrospective

This post is long over due. Another year has come and gone already and as per tradition, I wanted to take some time to reflect on the year that has gone by.
Year in Summary
My 2015 was a year that was mostly consumed by my work at Kinetic Cafe. At the end of 2015, I was able to launch the first commercially ready version of the Kinetic Commerce Platform. The best manifestation of the platform is the launch of ALDO’s mobile app as well as a number of in-store touch points that leverages the platform that was built. The platform was used to launch the app in both Canada and the US and did well with Black Friday as well as Boxing Day traffic on the system. We also launched a second client which is focused more on the malls. While it is a smaller launch in itself, it does represent a whole other use leveraging the same platform
This, however, did detract from a number of my personal goals that I had set out last year.
  • I started reading a number of books
    I picked up the Phoenix Project, Isaac Waterson’s biography of Steve Jobs, Zero to One and …. but I really only finished the Phoenix Project. Also, I didn’t even start on any fictional books.
  • I started working out late in the year. I rode my bike three times last year which was three times more than I did the previous year and I started to do the 7 minute working out frequently for only two weeks
  • I definitely did not blog as much as I did the previous year. I ended the year with 13 blogs and 11 pages
  • I did limit the number of projects that I would be working on but that was also partially due to the lack of time I had. Despite the lack of time, I definitely was more focused on my coding and was able to pick up a lot more code and I’m happy with progress. One of my primary focus was on a project we nicknamed Places and Things – it was to be a combination of Yelp and Red Flag Deals. We did launch a very simple version of the Yelp thing but quickly realized that sourcing relevant information would take too much time to ramp up. Instead, I decided to think a bit more about my shopping idea which will be a new and improved version of the Shop With Me project that started almost 4 years ago now
So this brings me back to 2016
Keep Doing
  • Keep coding – In 2015, I really started to find my feet again when it came to core development. I was able to start a few projects on my own and deliver a few phases.
  • Keep writing – Writing continues to be a good way to self-reflect as well as being consumed by work. It forces me to articulate my thoughts and remind myself of the things that I’m most passionate about
Stop Doing
  • Stop allowing work to be consuming – This is likely the one goal that I failed miserably at last year. I do enjoy what I’m doing but sometimes I let it define who I am. I have to do a better job at spending more time with my family and more importantly, be able to keep growing myself about the things I’m passionate about
Start Doing
  • Start being more healthy – As I’m getting older, my health goal needs to expand to just more than working out. I intend to sleep more than 7 hours a night on average and also work out at least 3 times a week.
  • Start reading more – In 2015, I started to read again. However, I do have to keep at it. I think a part of it is to find a system that will work for me. I want to complete reading at least 4 books this year regardless of genre
  • Launch one personal project and keep it running for at least 3 months
Happy 2016!

Installing Ruby on Rails on OS X with rbenv

I decided to do a full install of OS X when Yosemite came out and that included installing Ruby and Ruby on Rails on my machine again. Over the last couple of years, I’ve switched from rvm to rbenv because it is a lighter weight solution. Here are the steps that I take to install Ruby on Rails on OS X today

Continue reading “Installing Ruby on Rails on OS X with rbenv”

Nexus 5X Portrait Image
FDf4mSCRxJqXRbw98iI2UP-HI0GkgEQsrjcmZGGZbmQ1=w630-h418-p-no

Nexus 5X – Initial Review

I’ve been eagerly waiting for the Nexus 5X to replace my HTC One M8 that was getting long in the tooth. I was very excited when I finally received in on October X and have been using it as my primary phone ever since. After a few weeks of use, I figured that this would be a good time to write a review about it.
Nexus 5X Photo. Click link to go to full unboxing photo album
The summary of my thoughts on the phone is that it is a mid-range phone that is under powered for my use. Read on for more details

Continue reading “Nexus 5X – Initial Review”

Pentaho Data Integration crashing after El Capitan Update

I recently started to play around with Pentaho again for a side project at work and found that it was crashing whenever I tried to edit the database connection details. After doing a number of searches, I came across this Jira ticket in Pentaho. The gist of it is that El Capitan is not officially supported and causes Data Integration to crash. Fortunately there’s a fix out there that seems to work.

Continue reading “Pentaho Data Integration crashing after El Capitan Update”

Hardware Reflections – USB C and Wireless Charging

I’ve been debating about what new phone I want to get and I’ve had a hard time coming up with one. I know – first world problems, right? I’ve always prided myself to be someone who wouldn’t buy technology for the sake of technology. So here I am in 2015, phones for the most part are more or less commodotized. The difference between one phone to the next is going to be CPU, RAM and screen size. All of which really aren’t interesting from a consumer perspective. Sure – phones are faster. But for the general consumer, most phones are fast enough; for me, phones are fast enough. Sure, you can get bigger screen size but at some point screens are just getting too big. For me, after having an OnePlus One, I have to say that the largest size phone I want is going to be around 5”. Anything bigger is just too uncomfortable. I swiftly debated about getting a Samsung Galaxy S6 Edge because it was different – the curved edge could pose to be an interesting UX paradigm. However, that’s really pushing it. If I have a hard time justifying buying a new phone, it’s even harder to justify buying a personal computing device if it’s not broken and let’s face it, MacBooks for the most part last 4 years which is forever in terms of technology.
So this led me down a different path of reflection – what would I consider interesting tech that I would invest in? If hardware is starting to become commoditized, then what would I look for in new hardware. After a long period of reflection (primarily through writing this blog), it made sense for me that consolidation of portable technology would likely be a large theme for me in terms of next technology purchases. For context, I carry a phone, tablet, lightweight computer whenever I am not at home and I find myself carrying a lot of different accessories to support these devices on the road.

Continue reading “Hardware Reflections – USB C and Wireless Charging”

What’s in my bag – the daily version

My daily needs is geared primarily towards my commute to work and the time I spend around the office. With most of my recent roles, it’s really rare that I’m at my desk. Also, the commute on the subway is the rare time of my day where I have to myself to read, write, code and sometimes just listen to music while I doze off. Since this is a daily commute version, I wanted to carry what would be the absolute essential and nothing more as weight becomes an issue very quickly as I’ll be lugging this in my bag daily

Continue reading “What’s in my bag – the daily version”

Commuting and my random gadgetry

I’m commuter and I started this blog post primarily to help me rationalize what’s in my bag as over the months I commute to work, my bag keeps getting heavier daily until I do a purge and begin that cycle again. For myself, I find I get this way when I’m not cognizant of what it is I’m trying to accomplish and loading up a bag with more stuff is always easy until it gets so full where it gets to the breaking point. Like many people, I’m a commuter in multiple aspects:
  • I travel to work daily on local public transit
  • I travel weekly to out of town for day trips and sometimes overnight trips
  • I travel yearly for vacation

Continue reading “Commuting and my random gadgetry”

Unable to re-install Windows 8

I decided to downgrade my computer from Windows 10 to Windows 8 today and was unable to re-install Windows 8 initially. Whenever I tried to install Windows 8, I kept running into the issue where I got the following error “We couldn’t create a new partition or locate an existing one.  For more information, see the Setup log files.” After banging my head for a while, I came across a number of articles including this one which I took the steps from.

  1. Remove all drives from the computer. This includes hard disks, usb disks and also any PCI-E disks you might have
  2. Reboot the PC with the Win 8 CD in and select repair
  3. Head over to the advanced tools option
  4. Once in the command prompt Type the following:
    DISKPART
    LIST DISK
    SELECT DISK <whatever disk number you have>
    CLEAN
    CREATE PARTITION PRIMARY
    ACTIVE
    FORMAT FS=NTFS QUICK
    ASSIGN LETTER=<whatever disk letter you want it to be>
  5. Repeat the steps above for all other Hard Disks present but don’t make any other disks active
  6. Reboot and start the installation again

I think I ran into this issue primarily because I also dual boot my machine between Ubuntu and Windows and Windows 8 doesn’t seem to like seeing a GRUB partition in existence.

This works with Windows 8

Installing Ansible on Ubuntu

The easiest way to get the latest version of Ansible consistently is to not depend on the OS repositories (i.e. homebrew or apt) but rather through PIP.

Install the development tools

sudo apt-get install python-dev python-setuptools build-essentials

With that install, you should get easy_install as well

Install PIP

sudo easy_install pip

Now with PIP installed, you can quickly install Ansible

sudo pip install ansible

I found that I needed to install python-dev and build-essentials to compile any of the necessary files

Hope this helps!

 

Organizing Ansible

While we’ve been using Ansible for almost a year at Kinetic Cafe, I’ve been spending a lot more time with it at a personal level. A big part of it is that I tend to really like being familiar with the tools that my team uses at work and the other is because I actually have a lot of home and cloud servers running because I tend to like being familiar with the tools that the team uses at work. Ansible’s strength stems from the idea that you can ssh to a server and perform a series of tasks based on modules already built for you. At it’s core are concepts like inventories, roles, handlers, dependencies and variables but then allows users to use it in many different ways within that structure. However, this flexibility lead to chaos when I started to use it so I took some time organizing Ansible in a meaningful way for my home infrastructure.

Continue reading “Organizing Ansible”