How It’s Made

Insight into the making of Cushion and the thought process behind building an app from scratch.

Story

Funding Cushion

May 24, 2016

A few years ago, a friend of mine at FiftyThree reached out to see if I was available for a freelance gig. A few weeks later, we launched my first scroll-based animation website, for FiftyThree’s Pencil. Shortly after, my friend reached out again to see if I’d be open to an intro. FiftyThree’s earliest investor, Shana Fisher of Third Kind Venture Capital, saw the website and wanted to meet.

Read more...

Story

Hiring a Team of Freelancers

Mar 22, 2016

This past month, I did something I never thought I’d do—I hired people. From the very beginning, I always saw myself building Cushion as a solo developer, riding into the sunset with a small, sustainable app. I romanticized growing Cushion to the point where I could live off its income alone. Once I reached that goal, I would retire to a cabin upstate and simply maintain it for years to come.

Read more...

Story

Taking a Real Break From Work

Feb 24, 2016

Last night, I landed at Laguardia after a week-long vacation in Southern California. For my wife and I, this was our first real vacation for only the two of us. It was also a much needed break from work—for both of us.

Read more...

Dev

Slack as a Notification Center

Feb 06, 2016

Slack is commonly used as a chat tool for teams, but for the past year and a half, I’ve used Slack as a notification center. Until recently, I’ve been a one-person team, so people were always surprised when they learned that I had a Slack for Cushion. When you consider all of Slack’s integrations and how trigger-happy most services are with emails, Slack becomes the perfect solution for wrangling notifications into one place.

Read more...

Story

Document Your Features

Jan 30, 2016

Recently, I discovered that a specific feature was causing confusion for almost everyone who used it. This feature was originally called “Blocks”, then “Project Blocks”, then “Time Blocks”, and now finally “Workloads”. Renaming the feature is another story, but I want to talk more about the support burden caused by the confusion. Any time a user had a question about the feature, they would either email me and ask to explain it, or worse—leave without caring to learn about it.

Read more...

Archive

  1. Funding Cushion
    Story
  2. Hiring a Team of Freelancers
    Story
  3. Taking a Real Break From Work
    Story
  4. Slack as a Notification Center
    Dev
  5. Document Your Features
    Story
  6. 300
    Story
  7. Vacations
    Design
  8. Offering Discounts
    Design
  9. Waves of Traffic
    Story
  10. Less Blogging, More Journaling
    Story
  11. Retention Through Useful Features
    Design
  12. The Onboarding Checklist
    Design
  13. Spreading the Word
    Story
  14. From Beta to Launch - The Subdomain
    Dev
  15. From Beta to Launch - Sign up
    Design
  16. From Beta to Launch - Messaging
    Design
  17. Launch
    Story
  18. Authenticating with 3rd Party Services
    Dev
  19. Intro to Integrations
    Design
  20. Inspiration vs Imitation
    Story
  21. The Emotional Rollercoaster
    Story
  22. Designing Project Blocks
    Design
  23. Everything in Increments
    Story
  24. Deleting Your Account
    Design
  25. Designing the Subscription Page
    Design
  26. Rewriting the Timeline
    Dev
  27. Restructuring the Individual Project Page
    Design
  28. Project Blocks
    Story
  29. Redesigning the Homepage
    Design
  30. Multiple Timelines
    Design
  31. Archiving and Estimate Differences
    Design
  32. Multiple Financial Goals
    Design
  33. Zooming in on the Timeline
    Design
  34. Currency
    Dev
  35. Preferences, Accounts, and a Typeface Change
    Design
  36. Sending Out the First Email
    Story
  37. Currency Inputs, Notifications, and Invoice Nets
    Design
  38. Dots and Lines
    Design
  39. Calculating in the Database and Revealing Tendencies
    Dev
  40. Improved Form UX
    Design
  41. Cushion is Online
    Story
  42. Schedule Timeline Patterns
    Design
  43. A Slimmer Schedule Timeline
    Design
  44. The Schedule Timeline
    Design
  45. Plugging in Real Data for the First Time
    Design
  46. Transitions and Project Lists
    Design
  47. Death to Modals
    Design
  48. The Individual Project Page
    Design
  49. Estimated Incomes and Talks with Other Freelancers
    Story
  50. Statuses to Lists and the Paid Beta
    Story
  51. The Timeline
    Story
  52. Invoice Terminology
    Dev
  53. Modal Forms
    Dev
  54. Wiring the Backend to the Frontend
    Dev
  55. Balancing Design and Dev
    Story
  56. Timecop, Monocle, and Vagrant
    Dev
  57. Going with Ruby and Sinatra
    Dev
  58. Ditching local-first and trying out Node.js
    Dev
  59. Switching to AngularJS
    Dev
  60. Building the Table with Vue.js
    Dev
  61. Clients, Projects, and Invoices
    Dev
  62. Introduction
    Story

Ask a Freelancer

A podcast series where experienced freelancers answer questions about freelancing.

Listen to the Podcast

Talking Shop

An interview series where we talk to freelancers about important topics in the freelance world.

Read the Interviews

Running Costs

Take a close look at the costs that go into running a web app and why we use specific services.

View the Costs

How It’s Made

Follow along with the journal for insight into the overall experience of building an app.

Read the Journal