New! Learn to build search with Rails + Postgres.Get Early Access!

Posts

.NET Blazor for Rails Developers
September 12, 2020

Photo by Johannes Plenio on Unsplash Introduction This past weekend, I decided to explore .net’s Blazor. I’ve heard a lot of good things…

How to Test Your Frontend with the Cypress.io Framework
February 01, 2019

Modern JavaScript frameworks present an easier and more organized way to create web applications. However, they also add complexity that…

Re-Imagining the World with AR
March 17, 2018

Like many of you I watched Apple’s Key Notes on June 5, 2017 and saw the introduction ARKit. It seemed cool, but no more than an entrainment…

Renovating Our Office: Distributed => Co-located Team
October 24, 2017

Nano 3 Labs started as a distributed team of skilled developers. I was still unsure whether I would stay in Vancouver or move away elsewhere…

Building An App, Part II: Functional Prototype + Production
June 20, 2017

In Part I: Research and Design we talked about getting the initial ideas onto a concrete digital form. In this part, we will continue and…

Building an App, Part I: Research + Design
March 21, 2017

Creating an app can be a scary endeavour to undertake, especially if you don’t fully understand the entire process and life cycle of…

Death of the indie web developer
March 20, 2017

Back in the 80’s when video games were still new, games were often developed by a single person. Fast forward to the 90’s and we start…

The 4-Hour Code Week
December 08, 2016

This post wasn’t written for you. It was written for me, future me that is. Yes, the me that one year ago had a 50-day github streak. The…

2017 The Year of Mobile Shopping
December 01, 2016

Mobile shopping first emerged in 1997. Ten years later, in 2007, we were introduced to the original iPhone. This year (2016) Mobile traffic…

Creating our company logo
September 28, 2016

Creating our company logo nano3labs was first conceived almost four years prior to us becoming a “real” company. In 2013, after handing in…

Building sticky products users love with Google Chrome
September 23, 2016

In product design circles you will often hear talk about making products sticky, addictively useful and ingrained in our lives. We want…

Chrome Extension tip: never cache current tab
June 17, 2016

Chrome Extensions typically use a background.js script which runs in a separate process that is shared across all tabs. Therefore it is…

Chatbots are just command line interfaces
May 31, 2016

Chatbots are all the craze nowdays, but did you know you already wrote one without even realizing it? Lets lookup the definition of a…

Switch: Add Multiple Languages to Your Site Using Google Spreadsheets
January 20, 2016

Dealing with multiple languages (aka locales) can be challenging. Having multiple JSON files with hundreds of keys for each language quickly…

Ruby Debugging Tip: Vendor-in Your Gems
March 21, 2015

Coming to Ruby from Node.js, I was used to always having all my code at the tips of my fingers, right inside my sweet project. When I first…

FitnessKPI - Tracking What Matters
January 29, 2015

Over the last few months I have been working with Swift to bring a new app to help keep track of my fitness. FitnessKPI is designed to…

Stubbing without RSpec
August 20, 2014

In  you can typically call the method to stub something out. However, this method only works inside an or  a block. Try using rspec stubs…

0idle: A marketplace where Event Organizers find Venues
September 12, 2013

My roommate (Anton Kishchenko) and I started working on a marketplace to help event organizers find venues called 0idle. After initial…

Quickly find where an asset is in Rails
June 18, 2013

Rails AssetPipeline is a great feautre. However, sometimes it gets really confusing as to where a resource is located. Imagine you had to…

Introduction to Backbone Part 2 - Server-side
May 07, 2013

I finally found the time to complete the second part of my introduction to backbone. You can find the complete source code here: https…

Introduction to Backbone Part 1 - Client-side
September 10, 2012

I decided to do a screencast showing off how to use backbone.js. There are two parts to the screencast, the second of which will be posted…

Winnipeg.js
September 03, 2012

I collaborated with one of my favoriate designers Vadim Brodsky to create a website for the Javascript User Group in Winnipeg. Needless to…

Comparing Object in Javascript
August 24, 2012

As you start writing unit-test you will undoubtedly discover the challenges of comparing object in Javascript. In this short article we will…

Quick Tip: Customizing your chrome dev tools
August 01, 2012

I recorded  a quick screencast to show how to customize your chrome dev tools to have a different color theme. So take a look and show your…

SnippetSky: Store, manage and share bits of code
July 30, 2012

We  are thrilled to announce SnippetSky is now available for public beta. We have poured our hearts and souls into it to make it the best…

Reborn: Simplicity and Focus
July 13, 2012

As you may have noticed the site has a fresh new look now. But it is more than that, much more. I now have a more focused approach to the…

StudioKW - StudioKW.com
February 07, 2012

Simple is beautiful and that is exactly what we have done with the new design of StudioKW. Built on the powerful wordpress platform this…

Deleting Multiple Database Tables – The Easy Way
September 24, 2011

In this article we will look at a way to delete multiple database tables quickly without using the statement. This can be very useful if…

Getting Reliable z-index Cross-Browser
August 20, 2011

It is not as easy as you might think to get the correct z-index of an element using a javascript call like $(element).css(‘z-index’). The…

Asian Cabana - asiancabana.com
March 05, 2011

A friend of mine owns and runs a store in Winnipeg under the name: "Asian Cabana". He asked me if I could build a website for his store to…

Multiple Popup Windows Workaround
May 17, 2010

Problem In Firefox, if window.open is called before a previous call to this method had a chance to return, multiple windows would appear…

Snow in JavaScript
May 17, 2010

Winter is finally over, but we can still make nice digital snow to cool us down during hot summer days. We will start by considering the…

Resolving PHP Relative Path Problem
March 18, 2010

Using relative paths in PHP may prove to be a little tricky for beginners. Especially if you are coming from another language. The way the…

Escaping HTML in Java
March 02, 2010

HTML uses some special characters to control how a page is displayed. These characters need to be escaped before placed on a page if they…

UMSAE Website - umsae.com
February 27, 2010

Designed and developed the University of Manitoba Society of Automotive Engineers website. I started with a few simple paper sketches…

Go back to the homepage
© 2021 Michael Yagudaev