3 ms·
Over and over again I keep hearing the advice to "build using what you know." How do I separate what might be a side project to learn a new stack from a side p
by passivepinetree 8y ago
Over and over again I keep hearing the advice to "build using what you know."
How do I separate what might be a side project to learn a new stack from a side project that might eventually make money?
- clintonb 8y agoPrioritize. If your goal is to get something out quickly and make money, use what you know. If your goal is to learn a new stack, learn the new stack. If you learn enough to comfortably release to customers, do it; otherwise, either get comfortable or rebuild.
- Mc_Big_G 8y agoI had to make this decision recently and my conclusion was if your goal is to build something that makes money, do it with what you know. Why? Because you can spend 100% of your time building instead of 50/50 learning/building (or worse). Projects with the goal of being a business should iterate and fail fast. If you win the app lottery and actually build something people will pay for, they won't want to wait for you to learn while you build it out. Someone else will do it with some "old" tech like ruby on rails and take your customers and revenue. Spend your time working on the business, not the tech. Developers think code is important but the reality is that it almost doesn't matter. You can build something successful with the worst tech decisions imaginable. I know it's hard to accept but it's true. I've personally witnessed an absolute frankenstein's monster app, made of a mish-mash of what are now considered the worst technologies, get sold for $30+ million and the founders retired to the Caribbean where the build a mansion and an upscale restaurant just for fun. I pity the people devs who have to inherit that, but the value wasn't in the tech and it almost never is.
- i_made_a_booboo 8y agoIf you're spending 100% of your time building you're doing it wrong anyway. I feel like this is just missing so much conte xt. If you are working full time and can hack in your after hours to learn a new tech stack first and then start your project there might be an aggregate benefit over just starting the project right away using what you know. Context matters to a huge degree in these kinds of discussions. I feel like people just like to give blanket statement advice.
- cutler 8y agoWhich app was that?
- 1996 8y agoNeed based learning: only use new stacks when your have no other solution given time constraints
- losvedir 8y agoI've also heard for side projects when you want to learn a new technology to experiment with one piece of it, so you're not totally overwhelmed, and so you can see how it works with stuff you know. For instance, use the rails backend deployed to AWS that you know, but swap out angular for react. I think this works for your question pretty well - if the side project becomes a money-making project, at least there's only one part of it that will be a technical risk, and often if you need to do something quickly, you can work around and do it in the parts that you know.
- jdietrich 8y agoOne for me, one for the bank. Before you write a line of code, make a clear decision as to whether it's a learning experience or a business venture. Plan your project based on the goal you've chosen. If it's a learning experience, consciously avoid doing anything that doesn't push you to learn something new. If it's a business venture, consciously avoid doing anything unless you believe it has the highest RoI. Some purely recreational projects do turn into viable businesses, but far more projects have failed due to indecision and yak shaving. If you're building a business, you don't gain anything by experimenting with a new stack. If you're learning React, you don't gain anything by writing a bunch of CSS and marketing copy. Don't be afraid to step away from the keyboard and ask yourself "Is this a good use of my time?".
- greysteil 8y agoSo much this. If you want to build a business then there will be a lot of non-technical things to learn along the way. Keep the tech familiar so you can focus on those.
- i_made_a_booboo 8y agoThe intention at the outset. There's a low chance of success whether you are trying to make money or not. If you make money accidentally in a new tech stack... who cares because you can afford to support it. Also build using what you know isn't always the best advice. Figure out what you want to optimize for and optimize for it. That may include doing things in a different stack.