Coding Computer by Lukas is licensed under Creative Commons Zero
Working with JavaScript Objects
TIL that when you have a plain object and store instance variables on it, you’re actually setting a class variable across all instances. Here’s how to fix that.
Guard is Your Friend
Test-driven development can be a little slow going, jumping between your code and your console, and targeting tests by line is prone to error. Use these tools and techniques to streamline your TDD.
Cropping Animated GIFs with MiniMagick
Cropping an animated GIF with crop
will continue to use the original image’s canvas size. This cool trick will ensure the cropped image ends up the correct size.
How We Develop Mobile Applications - Pt 2 - Android
Now that you know what your mobile application will do and look like, it’s time to get your various environments set up. Here’s our list of things we check off at Collective Idea for creating an Android app.
Retrofitting Espresso
You don’t need an IdlingResource
, and sleep()
is fickle. Make Espresso wait for your observables running on background schedulers with this one cool trick!
Bi-Directional and Self-Referential Associations in Rails
I’ve been working on an application that works to match users together based on a complex set of criteria (read: big slow database query and in-memory processing). The core usage of the application revolves around these user matches, so I want to make sure that either the algorithm will run very fast or can be cached so that it’s not run every time a user visits their matches page.
The most important requirement for our matches is reciprocation. To solve this problem and meet all of the requirements, we can create a bi-directional, self-referential, self-syncing, many-to-many association between users using a has_many :through
association with a join model to keep track of a user’s matches.