Posted on: Saturday April 04, 2015
Posted on: Friday April 03, 2015
Studying frameworks, you have to relearn, moving to new solutions that appear all the time, and a part of your experience will be erased. But when you learn principles — they stay.
And another golden nugget about front-end frameworks
Programming becomes a victim of marketing. They promise us a magic button that will solve all of our problems.
Posted on: Monday March 30, 2015
In The Case for Leaning Out, Nico Lang describes the American work ethic. No, ethic isn't the right word. Obsession. That's better. Nico Lang describes America's obsession with work. We work at work, after work, before work, when we are with our families, and even when we are on vacation.
This article hit me right between the eyes. As a developer, it's super easy to get caught up in dollar signs and the glorified startup life. It's important to remember the sacrifices required to even get a glimpse of any of that. To me, it's not worth it.
The problem, of course, isn’t just our jobs: We’re working even when we’re not working. We go to happy hour with our coworkers after we get off, share a beer in the office and loiter socially before we leave, take our laptops home when we just have to finish just one more spreadsheet for tomorrow’s meeting, check emails over brunch, and shuffle outside to take an “important call” while everybody else is ordering mimosas. If you’re a writer, your social life likely consists of going to parties with other writers, who will, inevitably, talk about writing; even when we leave work, we can’t shut up about it.
The Italians have a concept called “la dolce far niente,” which translates to “the sweetness of doing nothing.” In context, that phrase might recall Diane Lane tromping through the vineyards of Tuscany, stepping on grapes, and having PG-13 romances, but for the overworked cubicle dweller, the sweet life begins when we learn to lean out. Amy Poehler calls it “healthy detachment,” but the Zen spiritual leader Thich Nhat Hanh describes it as “letting go.” Hanh writes, “Letting go gives us freedom, and freedom is the only condition for happiness. If, in our heart, we still cling to anything—anger, anxiety, or possessions—we cannot be free.”
Let go, do great work, but live your life. Only get one.
Posted on: Thursday March 26, 2015
Did you know you can tell
ActiveRecord which record you want in plain english up to the fifth record? I didn't.
All of these return the record you asked for. This is great for playing in the console and needing a specific record. I use this all the time when developing with just few records.
Posted on: Wednesday March 25, 2015
I just logged into a server for the first time in a while and saw something I forgot I did. I forgot I updated my irb prompt to say 'Sup Bro'. I really have no idea why. I was just playing.
I imagine I put this in
.irbrc somewhere, but can't find it for the life of me.
Posted on: Tuesday March 24, 2015
I'm the type of guy that likes control. I like to know how things are working so that when they break, and they will break, I know how to fix them. This can be a good thing and a bad thing. It's a good thing because I think it makes me a better developer. I've never regretted learning something about the systems I work with. It's bad because I generally don't like systems that do stuff for me. Even though they may be saving me work.
Take Heroku for example. It can save a ton of time. But what happens when it breaks? What happens when it doesn't support what I want to do? As far as I know, I still can't write to the file system on Heroku. So I don't use it for my projects. I manage my own VPS. It's not that hard. Seriously.
Even though managing a VPS is relatively simple, it can make deploying more work that it has to be. Capistrano and other tools are way too much.
I've done dinosaur deploys for a long time. Push to some repo. SSH into my server, pull, and run any asset or bundling tasks I need.
That is until I started looking at
post-receive hooks in Git. These are awesome and exactly what I need. I haven't played with them yet, but I will be. I think I can squeeze in an hour or so to play tomorrow.
Here is one of the better articles on how
post-receive hooks work when you host your own git repos.
Posted on: Thursday March 05, 2015
When working with a feature in an existing Ember app, I needed to now what controller Ember expects. I had a form using Dockyard’s super cool EasyForm, but every time I submitted the form, the console would yell at me saying that my controller didn’t handle the action.
After hours of reading docs and trying to understand how the controller was wired up for this form, a coworker had the perfect solution.
Place that code in your template and it will print what controller that template is tied to.
I think of this as similar to Ruby’s
debug method, where I can print out data in the view so I can try and diagnose errors I don’t understand.
It’s not a great solution. Some sort of proper debugging method would be way more helpful, but it works for now.
If you know of a better way, please let me know.
Posted on: Tuesday March 03, 2015
I’ve been playing with a new Sinatra app. While I am building it out, I am getting back to basics. I’m only adding what I need as I need it. I really have no preconceptions of what I am building. It’s a journaling app, and I am just starting with a big ‘ol textarea.
Keeping with simplicity, my database is super simple. I am just using sqlite and accessing it via the Sequel Rubygem.
While putting things together, I had some crappy data I wanted to clear out, but didn’t want to write some method to reset the database or setup environments yet. Turns out it’s pretty simple with Sequel.
With a sqlite database called
journal and a table called
entries, in a terminal, I just run
This drops me into an irb session with
DB setup as my database.
Sequel implements a
Now I have my clean database.
Posted on: Monday March 02, 2015
I will be presenting at self.conference on May 29-30. Not sure about the time slot yet.
I’ve been working on 100% remote team for about six months, and it’s been unlike any remote team I have been on before. Some things have worked well for us, and many things have not.
I will be presenting on what we have learned about working remote. Some things you can try, what types of things you want to avoid, and some tips to help make your team a little tighter when you are all spread out.
Hope to see you there!
Posted on: Sunday March 01, 2015
It’s no secret that I have an issue with Startups. Not the idea of startups, but the community around startups. The whole thing is based on getting a hit. Building something you don’t care about to get rich. In it’s essence, the majority of the startup scene is equal to a giant get rich quick scheme. And if you’re a developer, it’s more like a pyramid scheme and you are at the bottom doing the work and getting the least reward. Unless of course, it’s a hit. Then you get climb up the pyramid and be a cherished success story.
Business, at it’s core is not that hard.
Here it is, in it’s simplest form.
Find a market
Discover what that market wants/needs
Build what that market wants/needs
Sell the product
You don’t need some stupid vocabulary. You don’t need follow some stupid community that is run by billionaires that want to capitalize on your skills. All you need is a problem to solve that is worth paying for and the skills to solve it.