Two years ago, I started working on my first startup idea. At the time, my fiancé was spending hours hunched over her laptop typing basic information into online job applications over and over. After watching her struggle, the lightbulb went off. I decided to build a web app that would fill out those job applications automatically. I talked my idea over with friends and family and soaked up their praise.

One of the things I love about CSS is how easy it is to make one element look like another. In the example above, the first element is an anchor, the second is a button and the third is an input. I’ve overridden the click behavior of all three so they do the same thing.

If all three elements look and behave the same, does it matter which one you use? In this article, I’ll explain the difference between anchors, inputs and buttons, and I’ll show you when to use each one.

The other day my phone dinged with an email from an entrepreneur interested in teaming up. He wanted to meet for coffee and discuss his company. We set a time and place, and when everything was squared away he casually dropped this into the conversation:

I’m not sure how much info you will need to determine if you are a solid fit for this venture, but I generally have a personal rule that I don’t share any extended details without the execution of our NDA… I understand that some developers don’t like signing NDA’s, but mine doesn’t restrict your ability to work on projects in the future.

This is something I hear all the time when people pitch their startup ideas. At this point, I politely cancelled the meeting and moved on. Here’s why.

In the first part of this tutorial, you learned how to set up and implement a RubyMotion application. In this tutorial, you’ll learn about the Model-View-Controller or MVC design pattern and how you can use it to structure your application. You’ll also implement a painting view and add a gesture recognizer that allows the user to draw on the screen. When you’re done, you’ll have a complete, fully-working application.

RubyMotion is a framework that lets you build iOS applications in Ruby. It gives you all of the benefits of the Ruby language, but because the code you write is compiled to machine code, you gain all of the raw performance of developing in Objective-C. In this tutorial, you’ll build a painting application from scratch. I’ll show you how to incorporate Interface Builder into your workflow and how to properly test your application.

One of the best reasons to use Sass is variables. They help keep your code DRY, which makes it easy to maintain and change. However, with colors, it’s easy for your variables to get out of hand. In this article, I’ll show you a quick, easy method to wrangle your color variables.

You’ve probably heard the talk around the water cooler about how promises are the future. All of the cool kids are using them, but you don’t see what makes them so special. Can’t you just use a callback? What’s the big deal? In this article, we’ll look at what promises are and how you can use them to write better JavaScript.

Last June, I left my job in Corporate America to start freelancing full‑time. While it was a difficult to give up a steady paycheck and job security, it was a decision that’s made me a lot happier. With 2013 finished, I wanted to take the opportunity to reflect on what I’ve learned and where I want to take my business this year.

In today’s web, the word semantic gets thrown around a lot. But what does semantic mean? Why is it important? Semantic HTML expresses the meaning of the document. It’s less about how the text looks and more about what it is. Good semantic markup helps both people and machines understand the content and its context.

Let’s face facts: media queries can be a pain. They’re long, difficult to write and they get duplicated a lot in code. Sass includes a few helpful features that make media queries easier to work with. This article will show you these tricks and how you can use them to simplify your stylesheets.

Have you ever wanted to create a border in CSS that only extends across part of an element? It’s possible by applying margins, but that can get messy when you want your content to extend beyond its border. Here’s a handy technique that uses box shadows to achieve the same result.

You know you hate it: that ugly yellow background color in Webkit’s autocompleted fields. The background color for -webkit-autofill is set in the user agent stylesheet, preventing you from overriding it.