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

Problems updating therubyracer gem in Yosemite

I decided to run a bundle update on one of my core projects today and lo and behold, I received the following error:

Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

 /Users/kelvin/.rbenv/versions/2.2.0/bin/ruby -r ./siteconf20150415-9556-1l623l4.rb extconf.rb 
checking for main() in -lpthread... yes
checking for main() in -lobjc... yes
creating Makefile

make "DESTDIR=" clean

make "DESTDIR="
compiling accessor.cc
clang: warning: argument unused during compilation: '-rdynamic'
In file included from accessor.cc:1:
In file included from ./rr.h:6:
In file included from /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/vector:265:
In file included from /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__bit_reference:15:
In file included from /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/algorithm:628:
In file included from /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/memory:604:
/Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/iterator:341:10: fatal error: '__debug' file not found
#include <__debug>
 ^
1 error generated.
make: *** [accessor.o] Error 1

make failed, exit code 2

Gem files will remain installed in /Users/kelvin/.rbenv/versions/2.2.0/lib/ruby/gems/2.2.0/gems/therubyracer-0.12.2 for inspection.
Results logged to /Users/kelvin/.rbenv/versions/2.2.0/lib/ruby/gems/2.2.0/extensions/x86_64-darwin-14/2.2.0-static/therubyracer-0.12.2/gem_make.out
An error occurred while installing therubyracer (0.12.2), and Bundler cannot continue.
Make sure that `gem install therubyracer -v '0.12.2'` succeeds before bundling.

It turns out that there is an issue with the command line tools in Xcode 6.3. So you have to revert back to Xcode 6.2. For a full reference, here’s the link from StackOverflow where I got my information from.

Unfortunately, there’s not an easy way to directly link to the download but here’s the link to the general Developer Downloads from Apple

 

My first forray into Ansible

Learning Ansible has been on my to-do list for a very long time now but I finally found the time to learn it, play with it and even write scripts to

  • create a server on Vultr
  • configure a server based on my preferred configuration
  • deploy an Apache server and a MySQL server
  • Configure the Apache and MySQL server for WordPress
  • Restore my old WordPress install to the new WordPress install

Continue reading My first forray into Ansible

Using FullContact to responsibly declare Contact Bankruptcy

 

I decided to declare Contact Bankruptcy – it’s based on the premise of email bankruptcy where you delete all your emails and assume that if you’ve missed any critical email, the original sender would email you with a reminder of sorts. When I declared contact bankruptcy, it was the idea of deleting all of my contacts and starting again.

For most people, this is probably not an issue. I’m actually often times shocked about how laissez faire most people are about their contacts. Not me. I’m obsessed with information correctness especially about personal information especially contact information. To give you some context, I’ve been managing my personal information electronically since around 1995. I’ve countless desktop software (i.e. Lotus Organizer, Microsoft Outlook, Palm Desktop) before transitioning to various online services (Google Mail, Yahoo, Microsoft Hotmail, Plaxo, Gist). As a result of porting data from one system to the next, I have all of the issues that come with large ETL projects and it’s resulted in really dirty contact data. Of all the issues, the ones that drive me most mad is that I have contacts who are either irrelevant (i.e. contact information is no longer valid so I can’t contact them anyway), information that is incorrect (fields filled with incorrect information due to a messed up export/import) and contacts that have been incorrectly merged. One particular pet peeve – I have well over 300 contacts that have an anniversary date of Dec 31, 1969. In itself may seem harmless except that on New Year’s even, I have 300 recurring events of fictional anniversary dates. The most telling sign for me is that my contact list is over 3000 contacts long and I sure don’t know 3000 people. So I decided to declare contact bankruptcy.

Continue reading Using FullContact to responsibly declare Contact Bankruptcy

Opinions about People, Process and Technology

Optimization WordPress Plugins & Solutions by W3 EDGE