Weston Ganger BCIS


Web/App Software Engineer. Owner and Developer of Solid Foundation Web Development

Backend preference. Specializing in Ruby, Rails, Crystal, Javascript, Linux, & Databases.

Career Summary

I started my career as a simple website designer but quickly moved into Software Engineeering and Application Development mainly for the Web platform. I work with the stakeholders in all stages of the development lifecycle.
I have spent the last 5 years developing Ruby-on-Rails applications for usage internally within BC Hydro. During this time, I have created many new applications and maintain legacy applications. These applications manage various business processes and workflows within the organization.

About Me

I am 27 and have had a Bachelor of Computer Information Systems (BCIS) from University of the Fraser Valley since 2014.

In 2014, I started a software development consultancy Solid Foundation Web Development located in the Lower Mainland, BC, Canada. If you have any software development needs Contact Me.

I am a Christian believer and declare that Jesus Christ is God and king. Ask me why.

When I am not coding, I enjoy Automobile building and driving, Outdoors, Extreme Sports, & Family Time.

Profile Links

In an effort to optimize the use of my time and energy, I will no longer be maintaining the boatloads of public and professional profiles that everyone says you should keep up on. Listed here are the only public profiles I support.

My Blogs / Articles

I try to document anything notable that I do or come across on my journeys. Here you will find a list of topics that I sometimes post on.

My Open Source Work

Here is a list of open source coding libraries that I have created and maintain. These libraries aid in some part of the software development process. These are all publicly available for use within any software development project.


form_builder.crFormBuilder is a library for dead simple HTML form builder for Crystal with built-in support for many popular UI libraries such as Bootstrap. I created this to address a need in the Crystal community for an HTML form builder. This appears to be the only shard dedicated solely to form building for the Crystal language so far.Creator & Maintainer
GitHub Stars


axlsx_stylerBuild clean and maintainable styles for your axlsx spreadsheets. Build your spreadsheeet with data and then apply styles later. I utilize this gem within my other software, Spreadsheet Architect. I needed to ensure the projects future so I now handle all maintenance of this library.Project Maintainer since 2018RubyGems Downloads
GitHub Stars
minitest_change_assertionsProvides assertions for your Minitest suite to determine if an object has been changed Creator & MaintainerRubyGems Downloads
GitHub Stars
paper_trail-association_trackingPlugin for the PaperTrail gem to track and reify associations. I spearheaded the extraction of the code for association tracking and restoration of PaperTrail versions. This enables to developers to contribute to the association related code much more easily.Project Maintainer since 2018RubyGems Downloads
GitHub Stars
paperclip_utilsA collection of processors and helper methods for easier dynamic processors and styles on your Paperclip uploadsCreator & MaintainerRubyGems Downloads
GitHub Stars
prawn-railsPrawn Handler for Rails. I utilize this gem within my other software. I wanted to ensure the projects future so I now handle all maintenance of this library.Project Maintainer since 2017RubyGems Downloads
GitHub Stars
protected_attributes_continuedProtected Attributes for Rails 5. I created this plugin to address a need in upgrading legacy Ruby-on-Rails applications.Creator & MaintainerRubyGems Downloads
GitHub Stars
rails_nested_layoutsDead simple nested layouts for RailsCreator & MaintainerRubyGems Downloads
GitHub Stars
rearmed-rbRearmed-RB helpful methods and monkey patches for Objects, Strings, Enumerables, Arrays, Hash, Dates, & RailsCreator & MaintainerRubyGems Downloads
GitHub Stars
rearmed_railsA collection of helpful methods and monkey patches for RailsCreator & MaintainerRubyGems Downloads
GitHub Stars
RODFRODF is a library for writing to ODF output from Ruby. It mainly focuses creating ODS spreadsheets. I utilize this gem within my other software, Spreadsheet Architect. I needed to ensure the projects future so I now handle all maintenance of this library.Project Maintainer since 2016RubyGems Downloads
GitHub Stars
sexy_form.rbSexyForm is a library for dead simple HTML form builder for Ruby with built-in support for many popular UI libraries such as Bootstrap. This libraries code was originally written for FormBuilder.cr. I decided to port the code over to Ruby because the FormBuilder.cr design pattern turned out so awesome. I believe I have added another great form builder option to the Ruby language.Creator & MaintainerRubyGems Downloads
GitHub Stars
spreadsheet_architectSpreadsheet Architect is a library that allows you to create XLSX, ODS, or CSV spreadsheets super easily from ActiveRecord relations, plain Ruby objects, or tabular data. I created this to address a need in the Ruby community to create spreadsheets easily. I think I have succeeded in creating the most easily usable plugin for spreadsheet creation in Ruby.Creator & MaintainerRubyGems Downloads
GitHub Stars


chosen-readonlyChosen Readonly is a plugin that extends Chosen Selects to add support for the readonly attributeCreator & MaintainerNPM Downoads
GitHub Stars
cordova-plugin-apprateA plugin to provide rate this app functionality into your cordova application. I wanted to ensure the projects future so I now handle all maintenance of this library.Project Maintainer since 2016NPM Downoads
GitHub Stars
cordova-plugin-camera-previewCordova plugin that allows camera interaction from HTML code. I wanted to ensure the projects future so I now handle all maintenance of this library.Project Maintainer since 2016NPM Downoads
GitHub Stars
input-autogrowInput Autogrow is a jQuery autogrow plugin for inputsCreator & MaintainerNPM Downoads
GitHub Stars
input-case-enforcerInput Case Enforcer is a jQuery plugin to enforce uppercase, lowercase, or capitalized inputs & textareasCreator & MaintainerNPM Downoads
GitHub Stars
js-tryJS-Try is a Javascript implementation of the try method from Rails for safe navigationCreator & MaintainerNPM Downoads
GitHub Stars
rearmed-jsA collection of helpful methods and monkey patches for Arrays, Objects, Numbers, and Strings in JavascriptCreator & MaintainerNPM Downoads
GitHub Stars
select-syncSelect Sync is a jQuery plugin to synchronize selects by selected or disabled options easilyCreator & MaintainerNPM Downoads
GitHub Stars


bootstrap-directional-buttonsDirectional / Arrow buttons for BootstrapCreator & MaintainerNPM Downoads
GitHub Stars
chosen-bootstrap-themeBootstrap theme for Chosen Select that actually looks like BootstrapCreator & MaintainerNPM Downoads
GitHub Stars
chosen-material-themeMaterial theme for Chosen SelectCreator & MaintainerNPM Downoads
GitHub Stars
rearmed-cssCSS Utility Classes for rapid developmentCreator & MaintainerNPM Downoads
GitHub Stars

Public Projects (For Fun)

Listed here are some of the public projects I have created simply for my own curiousity and enjoyment.

ProjectApp DescriptionDev StoryLive Release Date
Calculator SidekickProviding free online calculators for any purpose.I wanted an easy way to create online js calculators and turn them into mobile apps. So I did exactly that and created this website. I created a mobile app called "Tip Sidekick" which grabs the calculator and embeds it within the application. It works very well, however unfortunately I abandoned the idea after making the first one. This is simply because I lost general interest in mobile apps and app stores as its a constant moving target. I now have decided to to only use the web if ever possible.April 2017
Coders LogA collection of community link-log about different code topics. If you have an article to share, created a library, or any other news, You can share it with the coding community.This website was built as a clone of one of my favourite websites, RubyFlow. At the time I was looking for a place to post my Linux and Cordova articles to but could not find any appropriate places. So I created this website with most every relevant programming language.March 2016
What Rattles My CagePost your rants and raves about the things that just rattle your cage!I wrote this application to teach myself how to write a Rails JSON API and AngluarJS 1.x applications. Was a really good learning experience.September 2015

My Mobile Apps

Here is a list of public mobile apps I have created over the years. I developed all of these for my own usage and enjoyment, to learn Cordova and Ionic, and to maybe make a few bucks on the side.

At this time, these are all still available on the Google Play Store. They were on the Apple App Store for a few years but I decided to stop paying the yearly ~$250 dev fee (ridiculous) at which point they remove all of your apps from the App Store which is very disappointing. The reason for dropping this cost is that I lost interest in mobile apps as they are a moving target and now support the web whenever at all possble.

ProjectApp DescriptionDev StoryLive Release DateImage
Chuck Norris Jokes & FactsGet a random jokes or facts about the man himself, Chuck Norris.Chuck Norris is rad and these jokes are funny. While creating Random Joke Generator I thought it might be a good idea to create a more specific version of the application. The Chuck Norris Joke dataset large and perfect for this.March 2016
Its Your TurnSimply press a button and the app will tell the next person to take their turn This application was developed during one evening when attempting to play a slightly boring game. We kept forgetting whos turn it was and who had the dice. So I created this app to manage turn taking and make noise and voice when its time to change turns. I tried creating the application in both React Native and Ionic v2 but I didnt enjoy react as expected so I settled with Ionic 2.x for the final product.April 2017
Official Beer Pong RulesThe Definitive Beer Pong Rules app. Contains Word Series of Beer Pong rules, West Coast rules, East Coast rules, House Rules, and Fun Rules.At every party with beer pong happening there are always people arguing about the rules. I created this app to solve this exact problem. To no surprise, even after introducing it, the arguing didnt stop.October 2015
Random Joke GeneratorGet a random joke at the click of a button. Over 15000 jokes to get you laughing.I wanted to make an fun joke application to pass the time when in line or bored. So I compiled a source database of jokes from around the web and created and Rails API to access it. I then created a mobile app to download one joke at a time randomly. I use this application all the time when I am bored looking for a quick laugh or joke. Its a hoot.March 2016
Snow Vision CameraSee the world in snow vision! Use your camera to see an augmented reality with falling snow.After creating the application Super Mirror HD. I decided if I could actually do something useful or fun. This was the idea I came up with. Very simple and fun project that worked well using only jQuery effects.January 2016
Sudoku UltraChallenge your mind with this fun and addictive game of sudoku.After the success of my word game, Super Word Twister, I decided people like mind games. I knew my Nana really liked Sudoku so I thought it would be useful to a few people if I created a mobile application with this game.June 2017
Super Dice RollerThe definitive dice rolling app. Swipe, Touch, or Shake to roll the dice. Visual and Voice responses.I built this application to address a need. When playing a board game we kept forgetting who had the dice. This way we could leave the phone on the table and use a gesture to active the digital dice roll.March 2016
Super Farm ClickerBuild your crew and expand your farm in this extensive incremental/clicker game.The second most successful app I ever built. The reason for this apps success is that clicker games are highly addictive due to the RPG elements they play on. I have always been a fan of RPG video games so naturally this was a fun project for me.October 2015
Super Mega QuizA fun quiz and trivia game. Over 300 questions to answer.A clone of my other application, Super Millionaire Quiz, with a new set of questions.Jan 2016
Super Millionaire QuizA fun quiz and trivia game based on the game show Who Wants to be a Millionaire.I thought this was a good game idea that would fit well within the idea of an Ionic / Angular application. I found a few data sets to work with and whipped this game up.November 2015
Super Mirror HDThe definitive mirror to go app. Super Mirror HD allows you to check out your makeup, hair, or face.One day my Mom and Aunt said to me, "oh my gosh, it would be such a good idea to create an app thats like a mirror." I laughed and replied saying that you could just open the camera app. I then thought it might be a interesting application to create and would be funny to see how many gullible people would download this, which is 5000+ as of August 2017.November 2015
Super Word TwisterA fun and addictive text twisting game.The first mobile app I ever built, and the most successful due to a free $500 Amazon App Store ads promotion which provided a bunch of initial traffic and downloads. I built this using Ionic / AngularJS 1.x. I created this application as a clone of a fun test twisting game I used to play a lot on my PSP. This project was really fun for me as I have always enjoyed word games.September 2015
Tip SidekickSimple and Easy Calculator for calculating tip amount and splitting the bill.This is the first and only application I created to complement my website, calculator-sidekick.westonganger.com The idea was to create a calulator on a webpage and then be able to utilize these within a dead simple cordova mobile application and appear native at the same time. The idea worked perfectly however I lost interest in creating each and every mobile app so I stopped with this one.April 2017
Word JumblerA fun text twisting game. Hundreds of words to spell. Hi-Scores to brag to your friends.A clone of my first game, Super Word Twister.December 2015