Feature Runways
Published 10/12/2015
In today's episode, we talk about "Feature Runways."
Join the Spec Slack community by going to spec.fm/slack
The takeaway:
We'll talk about how to consider the likely direction of future development, and make things flexible from the start in that direction. This works as a kind of "insurance policy."
Thanks to Spec.fm! Don't forget to leave a review for Developer Tea in iTunes!
Transcript (Generated by OpenAI Whisper)
Hey, everyone, and welcome to Developer Tea. My name is Jonathan Cottrell, and today I'm going to be talking to you about creating feature runways. But first, I want to thank Spec.fm. We don't have an official sponsor for today's episode, but Spec is what makes Developer Tea happen day in and day out. We are constantly working on this show as well as other things on Spec.fm, like, for example, the Spec Slack channel or Slack community. I guess channels are the individual chat rooms inside of Slack. But if you would like to join the Slack channel, it's totally free. You can come and talk to me. You can talk to Bryn and Brian from Design Details and everyone else that's a part of the Spec community. You can sign up for free at Spec.fm slash Slack. And of course, I'm there pretty much all the time. You can always ask me questions, and you may even hear them on the show. Check it out, Spec.fm slash Slack. We'd love to have you. There are a ton of awesome people who are leading in this industry that are in there as well. Who knows? You may get a chance to talk to them. So check it out, Spec.fm slash Slack. So I want to keep today's episode short. I know it is a Monday when this episode is being released. You have a lot of stuff to do, and so do I. So I want to go ahead and jump right into the topic, which is creating feature runways. Now, what exactly is a feature runway? Well, you're not going to be able to find it. You're going to be able to find it on Google, because I made this term up today. This is something that I've been trying to figure out exactly how to express it in words, and I'm deciding to call it future runways because, well, my dad was a pilot, but also because I think runway is a good way of explaining a future development, a path that lays out in front of you for you to go down or that you expect to go down. You could call them future trails, or if you want to call it something else, that's totally fine. But the concept is very simple. And it is if you have an idea of what might happen in the future in a given application, if you have an idea of certain features that you may need one day, or if you have some idea of a particular area of the application that is going to grow in complexity or is most likely to grow in complexity, but you aren't building it today, you still need to create a runway for it. In other words, you need to create the. Yeah. Fundamental kind of base level code in order to iterate in an easier way. So an example of this, let's say you're creating a blog kind of application where you want to have a post and you create the post to have a featured image. Well, it's very likely that down the road, you're going to want to be able to attach more than just one image to that blog post. So it would make sense for you to go ahead and create a blog post that would have a featured image. And you can create a post to many images relationship and only use one for now until you decide that you want to use many. Another example of this is if you're creating some kind of e-commerce platform and you only sell t-shirts now, but maybe you're going to sell another thing later. Maybe you're going to sell shoes later, for example, it makes sense for you to go ahead and make. Some of those structures are flexible. Don't hard code the word t-shirt for example, into the code, go ahead and offset that. So that scaling into shoes or let's say 30 other products is relatively easy to do. Now of course you have to be the one or you and your team, you have to make the determination of what things need to be flexible. What direction do those runways go down? Of course you don't need to over engineer. At the end of the day, you may want toension your evolution and evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution mini relationship. But if you were to have made the mistake of not creating it in the beginning and you need it later, well, that's going to take a significant amount of energy. So this idea of future runways, really, it's like an insurance policy. If you see areas where your application is likely to grow, then go ahead and build those areas a little bit more flexibly. Go ahead and start thinking down that road and build yourself into that direction. And you will thank yourself later that you have that insurance policy, that that little bit of extra effort saved you a lot of time in the long run. Thank you so much for listening to Developer Tea on this beautiful Monday. Hopefully it's as beautiful there as it will be here. Chattanooga is always a beautiful place to be. I expect to see you in the Slack room, the spec Slack room. It is spec.fm slash Slack. You can find that in the show notes as well as a link to leave Developer Tea a review on iTunes. That is a huge way of helping me out, especially if you find value in this show. I would like to ask you for that favor of leaving a review in iTunes for Developer Tea. It is a huge help to the show. Thank you again for listening. And until next time, enjoy your tea.