Common Table Expressions in Postgres
PostgresSQL WITH Queries, also known as Common Table Expressions (CTEs), allows us to write complex queries by defining temporary tables for use in a larger query. In other words, we can create in-memory temporary tables and query against them. Here is an (trivial) example where we want the email addresses of all the users who […]
Evernote to Blog Post
Today I learned how to publish our TIL posts directly to our blog, straight from my favorite text tool, Evernote . We are simply making the connection with one of our go-to’s, Zapier . The concern with this integration is that our zap is searching for new notes every 15 minutes, so you would need […]
Recursion in Elixir
Coming from an object oriented language with data mutability, learning looping in Elixir required that I let go of my current understanding about iterating over a collection. In fact, just forget looping and think recursion. So, what’s recursion? Recursion is solving a problem whereby one applies the same solution to smaller instances of that problem. […]
Angular 1.x Dropdown Menus
(Removing The Blank Option)
Over the past week I kept running into the issue of iterating over an array or an object in a <select> field with ng-repeat, only to find that I had a blank option as the first item in the dropdown. After trying several strategies, I finally found one that worked. Let’s say you want to […]
Animating height with only CSS
CSS transitions allows smooth animation of containers using max-height. Using height will not work.
Example:
Efficient Object Oriented Design with UML Sequence Diagrams
So, you have a feature to write. Now what? Do you start coding right away and hope for the best? Hopefully not. Here’s an example of using a Universal Modeling Language (UML) Sequence Diagram to plan a feature. In this example, User calls the create() method on Post, which in turns calls the send() method […]
Increase Productivity On Your Mac
Today I learned about a tool to help with workflows on your mac. The Better Touch Tool allows the user to create custom workflows, keyboard shortcuts and snap areas. The custom keyboard shortcuts can be set to individual apps or to be enabled in certain circumstances. In addition to special keyboard shortcuts, the app also […]
The Power of 3 [micro team edition]
Today I learned that we need to keep doing something that we have found really works: At Trim, we believe that a lean, cross-functional team of three can build a product. To us, that team of three is made up of one product design lead, one product development lead, and one product strategist. We call this […]
Environment Variables in Webpack
Diving into webpack module loader can often seem like a confusing and daunting task. Luckily, setting environment variables is rather straight forward. At the top of your webpack.config.js file define your environment variables like so: Then in the plugins array use DefinePlugin method to define global variables configured at compile time: Re-compile and now your […]
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 […]