Trim Agency
Posted on January 29, 2017 by Alex Miller on Today I Learned

Module Decorators

Why decorate objects instead of using inheritance? It’s a more dynamic, flexible and transparent alternative to subclassing. There’s several different ways of using the decorator pattern in Ruby, but I’m just going to show the module/extend approach. You can read about other decorator techniques in Dan Croak’s blog post. Use a module and extend to […]

Posted on January 26, 2017 by Wilson Rook on Today I Learned

Today I learned how to connect Slack with Email

Today I learned about a few new workflow ideas to improve communication with clients. Being the technologists that we are, the value of modern communication tools like Slack is very clear. Many clients or business partners, however, may not be interested in learning a brand new tool or workflow. Slack is a powerful asynchronous communication tool […]

Posted on January 25, 2017 by Ryan Stone on Team Trim, Today I Learned

CSS & SVG Based Tooltips

While working on a quick cleanup sprint I ran into an issue with a tooltip-box. The original design was using a raster-based image as a CSS background and it wasn’t meeting our needs. Googling revealed the problem had been solved but still didn’t give me a shadow on the arrow tip. Below is the quick […]

Posted on January 24, 2017 by Wilson Rook on Today I Learned

Simple Sprint Retrospective

At the end of every sprint, it is a good idea for the team to conduct a retrospective. The sprint retrospective gives the team the opportunity to reflect on the process of the past week. The simple and effective retrospective processes used by one of the leaders in Agile education is a great place to […]

Posted on January 23, 2017 by Wilson Rook on Today I Learned

Git and GitHub Tutorials

Basic courses on git Try Git allows the beginner to try out commands using the dreaded command line without fear. This interactive web app walks you through the basics of using Git. The Introduction Series in the GitHub & Git Foundations is a collection of several videos covering a wide range of beginner to intermediate Git tasks. […]

Posted on January 21, 2017 by Dom Miller on Today I Learned

Immutable Objects using Object.assign

Is immutability important? Mutating data can produce code that’s hard to read and error prone. But we can avoid this mess using vanilla javascript’s ES6 feature Object.assign! Let’s look at the problem…. When we changed obj2’s key property, it also changed obj1’s key property. No bueno! The solution: As you can see we changed obj2’s […]

Posted on January 20, 2017 by Miguel Lozano on Today I Learned

CSS Image Masking

Today I learned a very efficient way to create triangular cutouts using solid colored and transparent css borders. The angle of the triangle cutouts can be changed by adjusting the widths of the borders and the height of the mask div. For best view of Results, click “Edit On CodePen” See the Pen CSS Triangle […]

Posted on by Alex Miller on Today I Learned

Ruby’s Safe Navigation Operator

nil‘s in Ruby can be annoying. Thankfully, Ruby version 2.3.0 gave us a safe navigation operator, something that other languages like C# and Swift already had. It’s very much like ActiveSupport’s try method, which checks if a receiver responds to a method before calling that method. If the receive doesn’t respond to the method, nil […]

Posted on by Wilson Rook on Today I Learned

Apprenticeship: Week 1 Complete

The longest week. The shortest week. Any time one is exposed to a brand new experience, time often feels broken. The week flew by to seem that we just started this morning, yet it feels as though we have been here for weeks. I have been overwhelmed with excitement and energy with the new opportunity […]

Posted on January 15, 2017 by Tim Hasse on Today I Learned

What is Demo Day? What is a blocker?

Today I learned that we need to establish some critical structure, largely that we hope is going to come with the addition of a dedicated scrum master at Team Trim. As we all grow to becoming ‘agilelists,’ we have identified the need to define two critical functions of our sprint activity: 1. We need a Demo […]