* dedicate x hours a day for a specific time period (say 8pm-12pm) every day.
* Let friends and family know that they can help by leaving you alone during this time
* make sure you still get enough sleep.
* use your lunch period at work to plan your next work period
* reward yourself, friends and family at the weekend by being extra sociable. Host BBQ's, movie nights anything so you stay in contact with humanity and don't lose those your care for.
* realise that you can only keep this up for 6 months before you will start to become too tired.
* be ruthless with features and only aim to implement the absolute minimum to get you where you want to go.
* pick a set of friends who are 'go to' friends when you need to bounce idea's. They should be used when you think you are procrastinating. They don't even need to understand what you are doing, the act of explaining will add clarity to your situation.
For me it failed because wasn't ruthless enough and I over spec'd and under estimated time.
good luck.
One thing I always liked doing was finishing up my day job work-day, going to the gym, working out, showering, changing, and walking back into my home office like I'm starting the day over again, this time working on my startup. The exercise is not only good for you, but can wake you up and help you turn off your day job, and reboot fresh for your startup work.
* Talk with your employer to see if you can flex your time. I happen to be able to work 32 hours a week in 3 shifts. That way, I have 4 days a week to code.
* Be patient with yourself. If you're serious about doing this, be in it for the long haul. Don't think that you're going to be able to bring the next "______ killer" to market in 3 months. Think in terms of years and not months.
* Focus on a business that will bring in revenue as opposed to building a business that attracts eyeballs. If you can bring in more cash, you don't need to work as much, allowing you to focus more time on your own company.
So, you could go back to grad school for a semester, and then reset your student loans. It's a pain, but there's cases where that's worth it.
For example, you need to choose between two ways of doing something on a screen and aren't sure which way users would like more. Instead of deciding yourself (we all know how well that often turns out), find a way to implement both ways at work and see how those users respond.
You've done good work for your employer and its users, you got paid for it, you've learned something invaluable for your startup, and you don't have to worry about IP issues (it's just an idea, right?)
Sometimes, if you change your thinking, you can turn what appears to be a liability into an asset. Although a day job sucks your time, it's a great way to get experience you need. Think of its as someone else paying you to do R & D.
- Use every spare moment you can find to work on your startup.
- If you're married, don't neglect your wife/husband. Make time for what's truly important.
- Stay up late, but don't forgo sleep.
- Slim down your feature set and only do what's absolutely necessary.
- Lock yourself away in a private area so you can get into the zone.
- DON'T USE CREDIT. If you can't afford something (hosting, etc.) wait until you can. Start your company without debt.
- Get friends and family to test your software. There's no better QA department than your spouse. Who could be more critical than the person you married.
- Sometimes you won't be able to work on your project for weeks. Don't sweat it. Wait it out and keep focused. Come back to it.
- Stay focused on completing the software, no matter what problems come up. You can complete it. You will mentally fight your own self telling you to quite. That's the hardest part.
- The question "why am I doing this?" will come up in your internal monolgue at least 5 times a day. You have to really want it to combat your own doubt.
I have to disagree with your idea that friends and family make good QA. The problem is that they love you (or at least like you). I think you would get much better feedback from strangers who can be honest without caring whether their opinion hurts you.
I agree with a lot of what dazzawazza said, but here's some more
- Along with dedicating x hours of time to work on it, create a TODO list for the week, or a specific one for the day that is actually reasonable and will get you somewhere on your project. I make a weekly todo as I only spend about 3 days a week at most on my projects.
- With your limited time, follow the whole principle of launching early and often. Unless you're the king of hype, no one is going to hurt your feelings about your simple, slightly broken prototype of a system until you're closer to the end.
- Have somewhere that you can work peacefully. Make an office area at home away from kids/wife/girlfriend and let them know you need some time to work. Coffee shops also work great for you laptop folks.
That's just a few more, hope it helps you out. It's a tough thing to do but oh so rewarding.
http://www.tastesatlkr.com * I wrote by myself, finsished it mostly and then it fizzeled. No intrest.
http://www.qwertykitchen.com * Equal partnership, still working on it and it works. We just have to figure out how to bring in traffic.
http://www.loudfarm.com * Not done yet. * Minority equity holder. * so far I feel has bee my most succsefull code wise. The most limited in scope, it is going to be bay area only. * Feels like the best chance at working.
Things I have learned. * The only projects that stuck, were ones that I had fun doing. * The wife can be helpful, but respect her time. * Don't spend money unless you absolutely have too.
Take away, only do something extra curricular if its fun, and you are learning something new. Otherwise you should invest your time in the company. Who knows you might be able to innovate there.
The second biggest risk is failure to pull the trigger (or inability to do so). Know what your target is for jumping into it full-time (and make sure co-founders are on board with this target). Be sure you have the financial means to jump when the time comes-- start saving now. PROFIT generally comes a long time after REVENUE.
I wrote a guest post on VentureHacks on this exact topic (http://venturehacks.com/articles/half-assed ). As is often the case, some of the comments are really valuable.
Or, to put it another way, the only way to work two jobs for an extended period is for one of those jobs to be a hobby.
So don't sweat it. For me, 6 months was a nice overlap. I quite my job after that and haven't looked back since.
My best advice is to surround yourself with people who are excited about your product and can give you feedback.
In my case, I had a customer who was very excited about the product, technical peers who I would bounce ideas off of, and a supportive family that wants me to succeed.
Plus, you need to have the drive to make the startup a reality. If you don't have drive, nothing will get done.
Here's what I've been doing recently, but I'm at a slight advantage since I'm self employed.
When possible, I try and use the time I spend working on client web projects to advance my own projects. For example, I'm researching CMSes for a client and myself. What I learn building their site, I can apply to my site during the evening and visa versa. Makes me much more efficient on both fronts, especially being able to work on both in tandem. And, knowledge retention is generally higher.
I spent about 3 days doing pretty extensive research and testing on TXP, WP, SilverStream, and EE. Selected SilverStream CMS and now a lot farther along in BOTH projects than I had imagined being just a few days ago.
No matter what country your programmers are from, if they have spent enough time working on various projects to know what they're doing, they probably also know what they're worth.
I haven't outsourced any projects so far. I have, however, worked on a project launched with an off-the-shelf script - it definitely saved time and effort upfront, but the code is far from great, so it's been more frustrating over time. I still haven't decided whether the tradeoff was worth it.
Have you actually used this strategy yourself, and if so, how did you make it work?
On seeing your first comment, I sort of knew where this was going..
Looking at horrible code produced by your cheap rent-a-coders won't make it any better - making it yourself might.
Obviously, the first step is to use as much existing open source code as possible, but a lot of companies will also need to do some custom infrastructure on top of that. These extensions can be a distraction, so if you can leverage the open source community to help develop/maintain them you will eliminate a huge time sink.
o Assess yourself
o Assess your market
o Assess your day job
o Use Lisp
o Prioritize continually