The Birth of Signup
Ambitious projects are both challenging and exciting. Most of us can relate to the feeling of excitement when you get to work, knowing you will get one step closer towards perfecting your product. And while it is undoubtedly exhilarating, in no way is this road paved with roses. It can be scarily easy to fall victim to tunnel vision or lose your focus, alongside curiosity. This is where Signup comes into play: it is a simple service that reminds you to cherish small victories, one subscriber at a time.
What does it do
With Signup you can get a text message every time a new user signs up for your service. Signup is designed with makers in mind. It connects developers who create not just for the sake of completing a task, but who want to see how their work performs. It keeps you updated, but it is also an instant motivation boost and a way to draw inspiration from your community.
Where it all began
As a side-project, Signup is a good example of combining your team’s business vision with pure passion and creativity. Emil (from 46elks) was enthusiastic about learning more about Go (programming language) and he was able to do so by working on this side-project. Needless to say, the whole team loved the idea and encouraged Emil the best we could. He deepened his knowledge in his spare time, and was allowed to use his work-hours to work on the actual product. Such combination is the essence of passion-driven project like this one: And trust us, the excitement is contagious.
As with all side-projects, Signup began as an idea, born in a young developer’s mind. Some would say that the first step is always the toughest. It’s true, in a sense, but an idea serves as a catalyst of action. You can perfect and polish it in your mind, but the breakthrough occurs with the first line of code. Whatever stage your project is in, just get to coding. Don’t wait until you have it all figured out, because more likely than not, you will come up with an even greater solution along the way. But you won’t know about it until you act.
Be a minimalist
The beauty of a side-project lies in simplicity. As a developer, avoid spending too much time on the exterior. Focus on functionality and embrace minimalistic/efficient design. No deadlines on a side venture may tempt you to tinker with your project forever. However, try keeping it simple and use frameworks, boilerplates, templates and things that will save you a lot of time.
For example, we decided to go with Twitter’s famous Bootstrap to build the frontend for Signup. Both the public website and the minimalist dashboard use it. Bootstrap and similar HTML / CSS boilerplates (such as Pure, Skeleton or Github’s Primer) are very convenient for prototyping and shipping a polished product fast. Plus, they often handle responsiveness (how the website looks on mobile) natively through the use of media-queries.
When you are looking for a way to quickly ship a production ready web app, they are usually the way to go.
Integrating the backend API
APIs are also a great way to ship production-ready applications fast. They save you hours of development. A web app almost always has to send emails to the users. In the past, you would have had to setup an SMTP and maintain it. APIs such as SendGrid or Mandrill now allow us to send emails without thinking about the infrastructure.
In the case of Signup, we obviously used our own API: 46elks for text messages. A few lines of code allow us to send you a text message whenever someone creates an account on your webapp.
In line with our minimalistic principle, connecting Signup to 46elks’ API was a simple step. As the Elk API is RESTful and not dependent on SDKs, there is no one predetermined way of utilising it. Using the built-in methods will depend on the language you are working with. Our API doesn’t push you into following one specific direction — it encourages you to think of a creative solution and have fun while doing it.
After our work on Signup was complete, it was time for reflection. We were able to look back at the whole process, learn from it and prepare ourselves for the projects ahead. One major thing Signup has reminded us is that details, especially copy and text (the actual wording on the page) take plenty of time. If the purpose of your project is to create a tool to make your life easier, don’t fall into the trap of over-complicating it with often unnecessary details that don’t serve the purpose but may, if rushed, disrupt your user’s’ experience.
Always encourage curiosity in your team. If you have an idea you believe in, start writing. Polish up all the details but keep the vision simple. Don’t wait, don’t hesitate. Write the first line of code and see your ideas come to life.
Don’t overlook the small victories :)