December 2016
Rainbow of Credit by Frankie Leon is licensed under the CC BY 2.0
Creating and testing Stripe Webhooks using StripeEvent
Today we’re using Stripe webhooks to listen for invoice.payment_failed. We’ll walk you through how to set this up step-by-step.
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.
Getting Started with Action Cable
With the inclusion of Action Cable in Rails 5, we can easily add WebSockets to our Rails applications. This post walks through how to set up Action Cable as a response to an action on an Active Record model.
How We Develop Mobile Applications - Pt 2 - iOS
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 iOS app.
November 2016
Avoid parsing Rails controller params by using Metal
While looking at a controller today, I came to the conclusion it’s better to use ActionController:API
instead of ActionController::Metal
. Here’s why.
So You Want to Talk at Conferences
I thought it would be awesome to start speaking at conferences, but I wasn’t sure where to start. Here’s how I prepared for my first time at the podium.
Continuing Education at Collective Idea - RubyConf 2016
When attending RubyConf 2016, I learned more than just additional gems about Ruby. I learned about continuing education and why it matters.
Even the Justice League Works Remotely
Hiring remote developers who are not yet senior requires looking for certain critical characteristics. Learn what those are and what you should consider if you are hiring or looking for a remote position.
How We Develop Mobile Applications
Developing a mobile application that works on both iOS and Android takes a bit of work. Here are some best practices to get you going.
macOS alternatives: What about SteamOS?
After Apple’s October 27 Mac event, many people were left to wonder, “Should I think about a macOS alternative? What else is out there?”
Program Like a Dancer
The art of dancing and the act of programming are quite similar. How so? It’s the way both dancers and programmers respond to feedback.
October 2016
Closeup Brooms by OpenRoadPR is licensed under the Creative Commons Zero Licence
Troubleshooting Feature Specs
Figuring out why your feature tests are failing can be difficult, especially when setting up the first few tests in the codebase.
Teaching the Future to Code
This past weekend we shared our coding knowledge with some eager 7th and 8th-grade girls ready to create their own websites with BitCampGR.
BitCamp GR at Collective Idea
We are very excited to be hosting our very first BitCamp GR event this weekend in conjunction with Hope College Computer Science Department.
How to Create a Trending Hashtag
During the third and final Presidential Debate, the hashtag #TrumpBookReport was trending on Twitter. Turns out, I created this hashtag sensation, and I can teach you my tricks.
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!
Your User Can’t Click Your Floating Action Button
An easy way to make your Android app’s main action more accessible for people using screen readers.
Bundler's Multiple Source Security Vulnerability
While working on a project, I discovered a major security vulnerability that affects all stable versions of Bundler.
4 Twitter Tips to Use at the Next Conference You Attend
Networking is taking place both online and offline at conferences big and small. Here are a few tips to help you out with virtual networking.
September 2016
Computer Notebook Typing by Thomas Lefebvre is licensed under Creative Commons Zero
A Survival Guide for Non-Writers Who Have to Write for the Web
Writing for the web isn’t easy especially if it isn’t your full-time job. It doesn’t have to be painful though. Here are a few tips to help you survive.
Autocomplete your Rails Form using Selectize.js
When using Ruby on Rails Form Helpers, it could be useful to add an autocomplete feature to fields where users might reuse data. One way to do that is to use Selectize.js to create a dropdown and populate it with data from the user model.
Free SSL on Heroku
Starting today, Heroku has a new free SSL offering. Use it with Let’s Encrypt for a fully free SSL system.
Spacemacs: The Final Frontier for a Diehard Vim Fan
Collective Idea’s been bit by the Elixir bug recently. And in my research to configure its Alchemist tools, I’ve discovered an interesting text editor: Spacemacs. Spacemacs is an easy-to-install set of defaults for Emacs. And I love it! But, I’m a diehard Vim fanatic. How could I say something that sacrilegious!?
A New Way of Learning
Looking back, I now know there are a lot of that can’t be learned from a book or tutorial. Through working with others, I was able to build on my skills in a way I wouldn’t have been able to do in isolation.
My Ruby Epiphany
I’ve been using and teaching Ruby for many years now, but I recently had an epiphany about private methods.
4 Reasons Elixir is the New Hotness
Have you heard the buzz about Elixir? Look no further to see what all the commotion is about!
August 2016
To Do List by Adam Diaz is licensed under CC BY-SA 4.0
Keeping on Task using Dead Man’s Snitch
How to use webhooks and Dead Man’s Snitch to hold yourself accountable for getting things done.
I’m Sorry, But Stop Apologizing
Stop saying sorry all the time. Especially when there is no reason for it. Just say what you need to say.
How to Become a Better Pair Programmer - Part Four
In the last part of our four-part series, we look at a variety of roles one can take on during a pair programming session. Are you the researcher, tester, sounding board, or something else?
How to Become a Better Pair Programmer - Part Three
Pair programming isn’t always just about working with another person. Sometimes, partnering up on a project requires you to know more about how YOU work within the partnership.
Welcome Victoria Gonda
We’re very excited to welcome Victoria Gonda to the Collective Idea family.
July 2016
wocintech (microsoft) - 61 by WOCinTech Chat is licensed under CC BY 2.0
How to Become a Better Pair Programmer - Part Two
Part two of our four-part series on pair programming touches on the topics of the time involved when pairing, why you should keep your ego in check, and how to assume the best of your pair partner.
Solutions to Potential Upgrade Problems in Rails 5
The Rails 5 upgrade has a few changes that may cause confusion. We look at how to get around the disabling of autoloading and look at the new deprecation warnings.
How to Become a Better Pair Programmer - Part One
So what can you, as a well-meaning professional developer do to contribute more to your team? We have several suggestions for reaching your pair programming potential.
How Rails Can Reduce Your Monthly Headaches
Months can be difficult to work with when they have a differing number of days. Rails helps out with #month, but you still need to use caution.
Turning the Train into My Mobile Office
Collective Idea encourages everyone to work where they are most productive; whether that means at home, a coffee shop, the office, co-working space, or train.
Efficient Learning for New Programmers
Good practice tips for those who are new to programming and have limited time to complete ideas.
Celebrating Our Newly Expanded Office Space
This past year we expanded our office space and our team. We held a Grand Opening party to celebrate.
June 2016
Unlearning How to Type
A week ago I finished building an Ergodox keyboard as a way of easing RSI problems and having fun. However, in adjusting to this
new keyboard layout, I learned some valuable lessons about my personal development style instead.
How to Resync Your PostgreSQL Database Pointer
If you’re working with PostgreSQL and you’ve recently gotten a UniqueViolation error, you may just need to correct an out-of-synce database pointer.
Why We Support the Seamless Accelerator
West Michigan is home to the Seamless Accelerator, an initiative that aims to bring IoT startup ideas to market. Once component to the accelerator is resource partners like Collective Idea.
A Sense of Place
Out of all the places in the world we can set up shop to do software development, we’re in Holland, Michigan and thriving.
Wyatt: The simple way to generate RSpec tests
As software developers, we like to work smarter, not harder. If you’re looking for a smarter way to generate RSpec tests, check out Wyatt.
Programmer in a 3D printer world
A 3D printer can do more than just create fun objects. They can be programmed to solve every day problems.
Interview: Talking Middleman V4 and Front-end Dev with Thomas Reynolds
Middleman was built by Thomas Reynolds over eight years ago as a way to build static sites with easy-to-use framework. I talk with Mr. Reynolds about a few new features for Version 4 of the tool.
Fun with SVG: CSS background-blend-mode Fallback
I want to use the new hotness, but Internet Explorer/Edge doesn’t support it yet.
May 2016
“Blue Planet Globe”:https://pixabay.com/en/earth-blue-planet-globe-planet-11015/ by “WikiImages”:https://pixabay.com/en/users/WikiImages-1897/ is licensed under “Creative Commons CC0”:https://creativecommons.org/publicdomain/zero/1.0/deed.en
Beyond YML Files - dynamic translations
The standard I18n implementation has you store your translation in .YML files in your project. This solution requires developer involvement and project redeployment any time a translation needs to change. Translations are data - not code - so a better solution is to empower an admin to make these changes herself.
Volunteering for BitCamp GR
Volunteering at BitCamp GR, by Software GR, is an amazing day-long event to teach young girls software development.
How We Work: Space
Our space is a bit different than many offices, but is a reflection of how we work.
Creating a Mentally Healthy Work Environment
There are a number of things an employer can do to create and foster a happy and healthy workforce.
3 Excellent Reasons to Try Green Commuting
Air pollution is a problem that affects everyone. So to help combat the problem, we tried green commuting for a week. Here are our top tips!
GitHub's Price Hike and Why We're OK With It
GitHub is changing their prices for organizations. Here’s why you should stop worrying.
Pitfalls of a Legacy iOS Project
What seemed like a simple-reskinning turned into a much more involved project. It’s codebase that’s sat dormant for a few years, and that posed difficulty finishing tasks in the time we originally thought it would.
The following covers a few of the lessons we learned. That way you can be aware of pitfalls the next time you have to update a legacy iOS application.
Walk Through the Collective Idea Office
We’re in the middle of expanding our office in located in Downtown Holland. Before we unveil the office it its entirety, check out our previous [i] space in 3D!
CODE Film Review: Diversity in Computing
We held hosted a screening of CODE: Debugging the Gender Gap in Graves Hall on the Hope College campus, and are happy with the conversations it started about the lack of women and minorities in the computing industry. The film, and the discussion that followed emphasized two important efforts when approaching this issue: exposure and support.
April 2016
Rails + React + NPM: Another Option
Most of the instructions I found for combining react-rails
with browserify-rails
and npm modules were at least a year out-of-date. But I finally got it all working, and it turns out that it’s pretty straightforward. In this bog post, I’ll show you how to use the convenient react-rails
helpers to build views while using browserify-rails
to bring in npm modules where and when you need them.
Movie Night!
Collective Idea and the Hope College Computer Science Department are working together to host a screening of CODE: Debugging The Gender Gap in Holland, MI. You are invited to gather with us to watch this film in Winants Auditorium in Graves Hall on April 18th at 7:00 pm.
How We saved the TSA $185,200. I mean 185,200 Bytes.
The TSA paid $1.4 million for a Randomizer app that chooses left or right We can build it better.
Multiple Personalities in Git
At Collective Idea, we use Git all the time. Right now, I have 50 Git repositories cloned on my computer and they fall into a few categories. My problem is that I need to commit from a different email address depending on which type of project I’m working on. I explored three ways to do this, looking for the least intrusive.
March 2016
Modern Javascript and Rails
Want to write ES6 and/or use JSX or any of a vast array of modern Javascript tools in your Rails app? What about also writing your Javascript tests with the same tools? It’s easy with Browserify-rails and Teaspoon!
February 2016
The NoCMS Manifesto
I’ve been thinking a fair amount recently about life in a post-Wordpress world. Specifically, I’ve been pondering what a fully modern CMS might look like if it were designed in 2016 from mature, stable technologies with the goal of giving publishers the flexibility that they need to solve their number one problem. Of course, the number one problem in publishing isn’t slow page loads, nor is it the fact that Wordpress has a crufty UX while all the cool kids are doing edit-in-place. Performance and UX do matter, but by far the biggest problem in publishing right now is that it’s no longer clear how anyone will make money by typing things onto the Internet for other people to look at.
January 2016
The Late Train by Alex Becerra is licensed under CC BY 2.0
Painless Activity Streams in Rails
There’s a better way to implement business logic, and track events in Rails.
WISP Trials: Waiting For the Balloons
I used to think Google’s plan to give the world Internet via balloon was kind of looney. Then I moved to Texas and started a small hobby wireless ISP (WISP). Here are some things I learned about why American broadband is a fiasco, a fiasco that’s about to get way worse.
Let's Encrypt with a Rails app on Heroku
I needed to renew an SSL certificate today, so I used it as an excuse to try Let’s Encrypt for a free certificate for a Rails app hosted on Heroku.
PostgreSQL 9.5 Upgrade with Homebrew
PostgreSQL 9.5 was released yesterday and has a lot of cool new features. If you’re on Mac OS X and using Homebrew, you can upgrade with the steps below.