Coding on the Go

I’m one of those weirdos who wants to code on my phone. Sometimes I’ll just get bored waiting in a lobby, riding on the ‘L’, sitting at a boring party, or sometimes I just don’t have my MacBook near me and inspiration strikes. A year ago I would have thought complete project management on iOS was impossible but it turns out you can now do everything from writing code, SSHing into servers, and managing Git repositories all from the comfort of your iPhone. Today I’m going to show you how you can manage any coding project from your phone.

Read on

Training Wheels

Services like Heroku, Elastic Beanstalk, and the rest are great tools for “easy” and “fast” web application deployment. While I can’t deny the benefits of these PaaS providers I think that some of their users are doing a disservice to themselves by choosing to use them. When PaaS services like Heroku get used as a developer’s first introduction to application deployment it can have a lasting, sometimes negative impact on their growth trajectory.

Read on

How Non-PHP Web Apps Work

I’m currently teaching a web development immersive course at General Assembly and we’re on the section on MVC. We’re using Ruby with Sinatra to teach MVC and a pattern I’ve noticed is that students have a PHP style mindset about how routes are handled in a modular Sinatra app. By “PHP style mindset” I mean they seem to think that the file names have something to do with how routes are rendered. I want to cover how non-PHP web applications (including but not exclusively Sinatra) handle routing today so we can clear this up for beginners to Ruby, Node.js, Python, or other dynamic languages once and for all.

Read on

Securing API Keys in a JavaScript Single Page App

About three years ago I wrote about securing API keys in a client-side JavaScript application. I had some good ideas but boy was I overthinking it. Now in 2016, as a senior developer I have some better advice for securing not just your API keys but your entire web application when developing single page apps in vanilla JavaScript or with a framework like React or Angular.

Read on

Dropping IE Support

I’ve almost completely dropped support for old Internet Explorer in my most recent projects despite the fact that they should be accessible to a wide and non-technical audience. Call me crazy but I have more reasons than simple insanity for doing so. Internet Explorer usage (for versions I’m not targeting) has dropped to single digits and progressive enhancement is something that should be applied in a generalized way that targets all browsers. I won’t advocate for dropping IE wholesale but if you’re thinking of moving that way, maybe this will ease some of your concerns.

Read on

Getting Good at Development

I’ve been thinking a lot about design lately and having a hell of a time designing and coding a simple landing page for a marketing campaign I’m working on. 2015 was a very code heavy year for me. I didn’t do much design work for most of the year so now that I need to design something it’s harder than ever. This then got me to thinking about how it was that I got to be any good at either coding or design. What I discovered is something I wish I had known as a beginner and something that I think would help anyone struggling with a creative block or just general frustration over the quality of their work. This is how to become good at anything.

Read on

Design for Programmers (and Other Non-Designers)

Let’s face it – most developers suck at design. They aren’t the greatest marketers either. That’s okay, you can’t be an expert in everything. But what happens when you want to create beautiful designs to bring your ideas to life? Designing landing pages and marketing sites is tough for programmers and non-designers. That’s why today I’m going to share with you my secrets to designing great looking web pages even (or especially) if you’re not a designer.

Read on

Mobile First Is Now Mandatory

About six years ago I started really getting into the idea of Mobile First design for the web. At the time this was a newer concept. Up until then everyone was focused on responsive design and making sure that sites scaled down nicely. We’ve come to a point now where scaling down is the wrong way to go about design. It’s no longer optional to think of mobile first and scale your designs up from mobile instead of scaling down from desktop these days.

Read on

Classes in JavaScript [Video]

A while back I wrote about initializing a class in Node. Well, now the nice people over at Webucator have taken that post and made it into a video.

Read on

You Shoudn’t Need document.ready

If you’ve been developing with jQuery for any length of time you’ll have seen or even be using $(document).ready() at the start of your JavaScript file. Did you know you don’t really need that there? In fact, I’d argue that if you’re using $(document).ready() in your JavaScripts then you’re doing something wrong.

Read on