Side Projects

Back when we started USV in 2003/2004, we used to see a lot of side projects that had taken off and were turning into companies. We funded at least one such side project, Delicious, which ended up getting sold to Yahoo! a few years later. But I remember that we would see one or two of these sorts of things every month. It was a meaningful part of the internet innovation ecosystem at that time.

Fast forward to today and we don’t see many side projects that have turned into or are turning into companies anymore. I suspect that some of that is the effort to build and launch something that can reach broad adoption is harder. You have to build for desktop web, mobile web, iOS, and Android if you want to get your app in front of everyone. Back in 2003/2004, you just had to build for the desktop web.

But I also think that it is so much easier to quit your job and get some seed funding that less and less people are building apps as side projects today. Why work 60 hours a week at Facebook and then another 40 hours a week on your side project when you can quit your job at Facebook and land $250k of seed money on the day you leave?

I think the move away from side projects toward doing a startup day one is not all good. There was something great about the ability to experiment with an idea before committing to it and before sucking other people’s money into it. When it didn’t work, it didn’t work. No need to pivot to save face or get your investors whole. Just shut it down and tinker on another idea.

I am hopeful that crowdfunding services like our portfolio company KickstarterΒ and others offer people with good full time jobs the opportunity to be “entrepreneurs on the side”, to test their ideas with potential customers, to build prototypes, and to see if there is excitement about the idea before leaving their job and pursuing the idea on a full time basis.

My point is that experimentation is critical. We should have lots of it. Seed capital, venture capital, angel investments, angellist, YC, techstars, etc, etc are great and fund a ton of experimentation. But they do require a commitment of time (yours) and money (mine) that isn’t ideal in many cases. So I hope that the fact that we are seeing less and less side projects is a temporary thing and that the market will correct in some way to bring them back. I think they have an important role to play in the innovation economy.


Comments (Archived):

  1. stevebrewer

    When it’s a side project, your focuse tends to be on the quality of the product. When you have a zero cash date, your focus tends to be on the quality of the business.

    1. fredwilson

      right. and to start, it’s best to focus on product, until you have PMF, then you can turn your focus to the business

        1. fredwilson

          wow. i meant product market fit.

  2. jason wright

    less and less people/ side projects, or fewer and fewer? i’m feeling like a grammar grouch today.

    1. fredwilson

      that’s fine. how should i edit it?

      1. jason wright

        just leave it for posterity. in the future people will realise that their forebears cared more about how to get things done than the accuracies of how to describe how to get things done.

      2. Vasudev Ram

        Less is for bulk quantities (like weights – lighter or heavier – this log is less heavy than that one), fewer is for numbers of discrete items (less people came to Bob’s party than to Tom’s), is my guess.

        1. jason wright

          the countable (fewer) and uncountable (less) noun – i can count the number of people and the number of side projects, so ‘fewer’ for both.I can count the number of bottles of water, but i can’t count the water inside the bottles (the noun is not ‘molecules’ of water, but water as a single mass in the bottle).another example would be less traffic (mass, uncountable) but fewer cars (countable).

          1. Vasudev Ram

            Good catch, thanks.

  3. Jordan Thaeler

    Who are these people magically leaving facebook and grabbing $250K on day one? I don’t know any seed investors who don’t ask for $1M ARR.

    1. fredwilson

      do you live in silicon valley?

      1. pointsnfigures

        Ha, I don’t know a company I have invested in that was even close to $100k ARR at seed.

  4. Eddie Wharton

    Hopefully, places like Orbital can enable more experimentation. Venture-backable is a hard filter for considering new ideas. Even things that become venture-backable don’t always start looking that way.

    1. fredwilson

      Orbital is great

  5. LIAD

    I love the non-commital aspects of launching side project trial balloons. Can be incredibly nimble and agile. Don’t need to please or appease anyone. No huge loss of face if things go awry. No big deal if you decide to turn off the serversI think more than the extra dev burden of building for multiple platforms, the main reason for their slowdown is that side projects in and of themslves bring no glory.You can’t boast about securing funding. Cant do a press release about your new investors, can’t tweet about the cool angels you’ve got backing you.Side projects are where the rubber meets the road when it comes to passionate innovation

    1. fredwilson

      yupif this is all about fame vs fortune, then i’m out

      1. LIAD

        Glad we agree ;-

    2. Sam

      “Side projects… bring no glory. You can’t boast about securing funding. Cant do a press release about your new investors, can’t tweet about the cool angels you’ve got backing you.” Good thing I don’t give a shit about glory. And I am at the point in my life and career where I can bootstrap a side project for a while. My biggest challenge is finding the time, but I’m working on that, too.

  6. jason wright

    why spend 60 hours per week on facebook and then another 40 earning a living? just quite facebook.

  7. Semil Shah

    This reminds me of the Chris Dixon post “what are the smartest people doing on the weekends?” framework. Also, PG has written often about how some of the best YC companies in the early days happened to just find success rather than architecting it. And then you have the ultimate example in Facebook, which seemed to start off as a happy accident.

    1. LE

      rather than architecting itThis, by the way, is why it’s often difficult to follow up on an initial success. The initial business was the lucky sperm of an idea (where the other ideas of other people failed which you never hear about). Trying to think up another viable idea is certainly possible, and has happened, but it removes the serendipity and most importantly luck that led to the initial idea in the first place. [1] Additionally on round 2 it’s a different game just because of the help that you can get which you didn’t get on the first idea. But that alone doesn’t make a good idea.An example of this certainly has to be Josh of Delicious. Afaik Tasty Labs was acquihired by Walmart which is quite different than actually building and selling something.Another example is Andressen and Loudcloud. After a pivot it ended up in a good position but the initial idea was not right for the time (and despite what anyone thinks being before your time is not a business strategy but a failure. The idea is for an idea to work and make money. You don’t start a business thinking “the idea is to figure out something once I am doing something”. At least not in traditional business you don’t. Startups with OPM, different story.).[1] Hard for me to explain this but in short if enough people are trying enough things (part of Fred’s point) something might come of it and then we celebrate the people whose ideas worked and ignore the people whose ideas did not.

      1. Vasudev Ram

        Good insights. I’d say both kinds are useful to have though, or maybe all three – the traditional businesses, the bootstrappers, and the funded startups.

    2. pointsnfigures

      yes, and sometimes good businesses start out as a “toy”

    3. sigmaalgebra

      Don’t be misled:Go to a golf course and to any par 3 whole and see who made the hole in one shots? Pro golfers or hackers? Of course, hackers. Why? While the hackers are not nearly as good, there are so many more of them.Still, if you want a hole in one, then it’s much better to be a really good, pro golfer.Sure, luck beats careful planning, good science, engineering, etc. But where the heck do we get some of that luck?

  8. awaldstein

    Truth is Fred that it’s super cheap to start things, more expensive to grow them even at an early stage pre market fit.So side projects like writing books that don’t require deployment are still strong and KS perfect, early project that are really seed companies not so much,

  9. Chuk

    I have always had side projects, love ’em. Couple of trends worth noting on the employer side. They believe they are paying for all of my time, they’re not, but they think and act like they are. Paperwork when signing on for employment has also become quite prohibitive. Seems like these factors would also reduce the likelihood of side projects.

    1. pointsnfigures

      Or, you have a company culture like 3M where side projects are integrated into your job and encouraged.

    2. Kirsten Lambertsen

      Same. Experienced this directly. Feels like a devolution.

    3. Brandon G. Donnelly

      this does feel totally archaic

  10. Guy Gamzu

    This is exactly what I did with Curve ( It is a portfolio based investor group. We wanted to experiment a thesis we had in building a new type of market index (C25). This type of project is classic for a ‘slow cooker’. You can’t have it without giving it enough time and it must grow organically. Any type of ‘steroids’ or pushing for other KPI’s is likely to adversely impact the entire purpose of the whole thing.

    1. Dave Ruso

      What do you mean by ‘investor group’? why slow?

      1. Guy Gamzu

        Members manage their equity portfolios. They can post transactions, questions, opinions etc. A member can follow other members and get alerts when they do a transaction or post something.The top 25 members (by follower count) are the ‘Chiefs’. Each chief’s holdings (including cash) is 1/25 of the entire index. Every end of trading day the system look for changes (in holding and or Chief composition) and buy / sell to adjust. You can see the results of the last 12 months (vs S&P and DOW).

  11. Nidhi Mevada

    There are two kind of successful companies I have seen,1. College projects converted into companies like Google,Facebook. Many college students have good projects, but really hard to get entrepreneur who have courage, passion and perseverance.2. See hidden problem and start from scratch like Airbnb, as Ron Conway says “Starting company from scratch is most hardest thing on the world”. These one see a lot of ups and downs, even die, take pivot but they know real problem and bang on it. Salute to them!

  12. kevando

    This topic becomes very super important when you talk about basic income

    1. Vasudev Ram

      Good point.I commented here:…on this related HN thread:Andy Grove’s Warning to Silicon Valley (…

  13. Martin Wawrusch

    Very interesting post. I just did one this month which turned from a single client paying me to solve an immediate problem to a utility with transactional pricing that works across all industries and solves an immediate need really well. (I can’t mention the name here yet as we still have to add Stripe).Web Development used to be super easy. You upload HTML, and boom, you had a web business. Now it’s really complicated, you talk in servers, have different clients, etc. This all changed recently through the introduction of AWS API Gateway and AWS Lambda. It basically brings back the simplicity of the first days of the Internet for the backend. On the other side you now have Angular 2 and material design which gives you a good enough experience on both mobile and desktop, without having to go native.We spent a total of about 115 hours on our side project, and will have to spend about 30 more till Sunday to make this a secure and paid for product, with affiliate partner program etc. We are already cashflow positive (treating our invested time as sunken costs) and are operating with a 96% margin. Not bad for 3 weeks of work on the side.I think there will be a huge renaissance of side projects, and we will start to see it now.

  14. ttasterisco

    I don’t think the multiple platforms thing is an issue; you start by just picking one and working on it to prove that it has interest.The main reason why you might be seeing less side projects becoming companies is perhaps due to startups being trendy so people go directly into startup mode.

  15. kirklove

    We don’t see many side projects that have turned into or are turning into companies anymore != shortage of side projects.You’re conflating two different things.There are still a ridiculous number of side projects. Just the routes to launching them are much broader now and don’t always have to rely on VC dollars, such as:Direct to App StoresChrome ExtensionsGitHubUnity (games)Kickstarter (like you mentioned) Peer to peerAlso, bigger picture, a lot of side projects don’t want to become “businesses” they want to remain side projects (for control, or time, or the market is just really small). All things that make VCs limp. So why pitch one of those to a VC. I wouldn’t.

    1. Vasudev Ram

      Great comment.>GitHubBitbucket too, though it has less mind share.Even SourceForge (which was huge before Github and others were a thing), though people have criticisms of them (ads and other) from some time.Not to mention, many (paid) digital app download sites (other than the biggies who can be counted on the fingers of a hand or two).

      1. sigmaalgebra

        > (other than the biggies who can be counted on the fingers of a hand or two).Same as counting without taking shoes off!

    2. Vasudev Ram

      > !=You should explain that that means “not equal to” for non-tech folks :)Interesting to see that tech terms are becoming mainstream. Seen other examples.A cultural thing.

    3. fredwilson

      That’s such great insight. Maybe the lack of them coming our way is a good thing not a bad thing

      1. Twain Twain

        Adam Grant of Wharton has a pretty good analysis of how investors miss out on the creative tinkerers who don’t necessary conform to investor conventions about time.Investors tend to err towards linear time of milestones whilst original thinkers flex the rules of everything — even time, space and matter itself.*…So somewhere is someone doing side project who won’t surface to investors. And then they (the investors) won’t know what hit them and the world and changed everything. Meanwhile, that creative founder just keeps doing what makes sense to them and what they believe world wants & needs.

    4. falicon

      Deja-vu…didn’t I just show you an early prototype of my latest “side project” yesterday (which will be direct to app store when it’s finally ready) πŸ˜‰

      1. kirklove

        You are the undisputed KING of side projects, buddy!

  16. Vasudev Ram

    I’d say plenty of side projects are going on, based on my observations on various forums (and this is an interest area of mine, and I do some myself, ongoing). They just might not be that visible to you, in the circles in which you move. And many of them might not be fundable by you but still some of those might turn into viable businesses, just not at your scale.

  17. Kirsten Lambertsen

    I think it’s temporary. I’ll see if I can articulate my thoughts…In the days of Delicious et al, the atmosphere had not wound up yet to what it has been for the last several years. Back then, I don’t recall feeling like, “If I don’t get this out there in the next month, someone else will beat me to it or the funding fountain will have been shut off.” We didn’t feel like *everybody* was doing it.After Dot Bomb, it felt like nobody was doing it. And as you’ve said, some great companies came out of that period. But then things heated up again. Accelerators popped up everywhere. It felt like one needed to jump in and grab some of that while the getting was good. “Fail fast” doesn’t exactly apply to a passion project.But now we’re coming down from that somewhat frenzied phase. It’s starting to feel again like there’s enough time to tinker on something on the side until it starts to form into something cool. Everybody’s definitely doing it. Someone definitely is going to come up with your idea at the same time you do, but never in the same way. The more time you can take to inject your own personal vision into your idea, the better your chances of surviving.

    1. Susan Rubinsky

      I strategically chose to not work on several passion projects over the last eight years to:- Raise my son (I’m a single Mom) and get him off to college- Build my business back after the recession (only in the last three years have I been back to a — barely — livable income)- Rebuild my nest egg (that I used to get through the recession)Since I’m just a solo operator (though with about ten vendors/subcontractors), I know I’m not really who Fred is referring to. However, I have been working in tech since the early 90’s and have have partnered in or worked in several startups so I I know what Fred is talking about. During this last recession I chose only to act on ideas I knew I could ramp up and monetize quickly.Just last week I joined an entrepreneur group here in CT. Well, I went to a meeting to check out who was there and what people were doing. I’m definitely going back. There were some fairly interesting projects.What I found most fascinating was that there was a huge range of ages, from teens and college students to retirees. Less heartening was the fact that only three women were there and one was a woman from the state who came to talk about grants and funds that were available. The other woman was young (late 20’s?) pitching her food startup (similar to Blue Apron).Some other pitches were:Diamond App – utilizes big data to calculate the true value of the specific diamond you are interested in buying. I want to market for this guy. He is a tech geek but has not idea how to market it. I said to him, you mean, “Diamonds are forever, but your debt doesn’t have to be”?Kricket – NGO Delivery App – Foursquare for NGO’s looking for donations (I saw demo of app. I think it’s not robust enough. Needs several more iterations and far more tools to make it effective)Green Pellets – Environmentally friendly pellets to burn in your woodburning stove. Up to 60% less emissions than alternatives; similar price point. Company just walked out on final negotiations with Walmart. Currently negotiating a new deal with a big box store.(Forgot product name) – Craigslist meets Uber for renting household items like chainsaws, ladders, etc. I think this is a crowded market.Auto Pimp Guys (I actually forgot the name of the company and I just kept calling these guys this) – some kind of online auto service I wasn’t completely clear about.”Don’t Spill Your Coffee on Your Keyboard” – Clip-on Cup holder (also folds up flat when you’re not using it – Apparently this product has taken off in the wheelchair-bound market. People in wheelchairs love it.

      1. Lawrence Brass

        “Raise my son (I’m a single Mom) and get him off to college” sounds like a passion and love project to me. The strongest women I know have gone through similar processes. I have the luck to share my life with someone ‘hardened’ that way.

        1. Susan Rubinsky

          Ha! Glad you think so! Thanks.

      2. Kirsten Lambertsen

        “Diamonds are forever, but your debt doesn’t have to be”? Nice!Any passion projects brewing now?

        1. ShanaC

          debeers being around makes that not sound too appealing to me.

  18. Nick Grossman

    totally agree

  19. Raj

    The unstated benefit here is learning on the side. That’s one big reason to do side projects IMO. It’s the accumulated learning from doing something every day that can pay dividends long-term. If one ends up with a worthwhile side project then that’s fantastic too. But what insight have you gained that you otherwise didn’t have?

    1. pointsnfigures

      pursuing joy for the sake of joy (not money, acclaim etc)

  20. pointsnfigures

    I’ll push back a bit on this post not because I disagree, but it might be framing.If a full time student at a university is going to class, and working on something-I might view it as a side project.I am also speculating that there are things being worked on inside different industries that are hard to innovate in because of regulation (Healthcare, Ag and Finance come to mind) where employees are a bit older, have a lot of local knowledge and need less VC money-they bootstrap them.But, I agree with the principle of side projects and experimentation. Too often, entrepreneurs go for money too early.

  21. Dorian Benkoil

    I think there’s another factor, Fred: It’s easier to launch something and get it to cash-flow positive, producing income but perhaps without the kind of growth that justifies VC-type investment. Sustainable business, just not hockey-stick scaleable. (I realize this resonates with a few other comments.)

  22. Marcelo Calbucci

    I have Open Office Hours every Monday and I meet with many (want)entrepreneurs. It warms my heart when they are doing it as a side-project while maintaining their main corporate job. And, for the people who work at a corporate job and ask me to evaluate their startup idea (a PowerPoint deck) the first thing I tell them is to go build it on the side.I don’t see a shortage of side-projects. What I see is that people start side-projects with the clear intent of building a billion dollar business, and that skews experimentation to things they can image a business model for in the future.For an engineer, the cost of side-projects has gone up, not down — I’ve been doing for 15-years. It used to be you’ve got a colo-server or a VM for $30-50/month and you could run your DB, back-end, front-end, cache, email server, search, whatever out of the same box. You could have 10 side projects on the same box. Now, cloud providers have made it “easier” to deploy complex services, but there is a cost. A side-project can easily run a couple hundred dollars a month… AWS + Sendgrid +Twilio + Mixpanel + Stripe + Google Mail + Mailchimp + Vimeo + Urbain Airship + New Relic + Pingdom + Stripe + …

    1. pointsnfigures

      would the psychology be different if they didn’t think billion dollar business and just thought about building value for an initial set of people that could use it?

      1. Marcelo Calbucci

        I think so. If they have an itch and they want to scratch it, is different than wondering if another million people will have the same itch. The thing of side-projects is that you want to make something that it’s either useful for you or for a close friend / loved one. You feel satisfied if you solved that problem with the presumption it’ll make it a full-blown business out of it later.

    2. LE

      It used to be you’ve got a colo-server or a VM for $30-50/month and you could run your DB, back-end, front-end, cache, email server, search, whatever out of the same box. Now, cloud providers have made it “easier” to deploy complex services, but there is a cost.You can still do all of that on a colo server and/or VM for less than you ever could.The cost has definitely gone down. The cost has only gone up if you choose to have someone else to do all of the things that you can do yourself, if you want to take the time. Like you did back in the olden days when the cost was high. [1]In other words if you choose to do things yourself the cost is lower. If you choose to have someone else do things for you maybe (maybe) the cost is higher.We are talking about people starting out trying to see if their idea has legs, not people who are maybe attempting to do something which requires all of the companies you are mentioning which is obviously not the case with everything that someone might do on the side.[1] I mean it’s laughable. When I started (’96) I had to buy a zillion books (O’Reilly at least 30 of those I am sure), spend time reading, testing, buy a server, then another, get a T1 line the list is endless. Back then there was no googling to figure out an answer to a question, you slaved away for hours and hours to try to solve a single problem. No comparison in any way shape or form to how easy it is today.

      1. Marcelo Calbucci

        Yes, and no. The bar has been raised for what people want to do. Not only that, running your own X (e.g. email server) is a lot harder today, so why wouldn’t you use Sendgrid and pay $10/month? Back in the day you didn’t worry much about zero-day vulnerabilities, being IP-blocked by Google, etc.And like you implied, part of doing a side-project is to learn something new, so doing it the same old way is not as fun.

        1. CJ

          Not harder to do these things, just easier to outsource them. It’s still cheaper to do it yourself, it’s just easier to let someone else do it for you so you can focus on the things you want to do.The side-effect is that it makes a side-project less rewarding in the experience column which was always a good way to level up in corporate america.

        2. Dan Moore

          > the bar has been raised…No just for what people want to do, but what users expect.

    3. karen_e

      So true. My list as a marketer is different but no less painful. And the cost of Adobe is brutal for solo designers.

      1. Marcelo Calbucci

        I know. Adobe is particularly cruel because they don’t offer any discount for startups or side-projects. Most companies, big or small, give some descent discount or a large-ish trial period.

      2. David C. Baker

        I use Adobe heavily in my work, and I’ve come to see them as an arrogant monopolist. Very much like Quark was before they got crushed by Adobe and then had to reinvent themselves.Adobe’s monthly subscription model and their intrusiveness in your desktop eco-system is highly irritating.But I still use them, grudgingly.

        1. Susan Rubinsky

          I refuse to upgrade to the subscription. I’m still making CS6 work for me. The cost of the subscription is far too high.I’ve been saying for years that Adobe needs a competitor.

        2. Lawrence Brass

          Everyone is going after a subscription model these days, from streaming music to software the idea is to plug in a small tube in your wallet. Which, I have to say, is a much better model than watching for ads every 10 or so posts.Jetbrains ( ), a software tool development company that makes really cool products, has recently changed to an alternative model, mostly because customers complained when they first switched. You get a perpetual license for past versions of their products, but pay a subscription to get new or upgraded versions. Wise.

          1. John Terrence

            That seems like a much more reasonable model. I don’t understand how businesses don’t push to use that model and have the option to be fully independent from the vendor(maybe even on your own server) , than the regular saas which greatly increases your risks and lock-in.

          2. Vasudev Ram

            >the idea is to plug in a small tube in your wallet.Nice way of putting it πŸ™‚ I’m going to steal that.

          3. Lawrence Brass

            If you steal my tubes you will end paying my bills. πŸ™‚

    4. Vasudev Ram

      Yes. And the madness is going to greater and greater depths:Recent HN threads on the NPM left-pad issue:Left-pad as a service:…NPM and Left-Pad: Have We Forgotten How to Program?…Though of late, I’ve noticed that more people seem to be seeing some sense . Still a minority maybe. Only going by HN.

      1. Martin Wawrusch

        The ‘left-pad’ vulnerability was known for years and it’s entirely NPMs fault for not making NPM modules immutable in the first place. That said the value of the NPM ecosystem is so high compared to the tiny problems that happened (just compare the numbers – 1 major problem vs millions of users).

        1. Vasudev Ram

          I’ve skimmed the recent threads about it and read about both the pros and cons of people with different viewpoints, and understand that the issue is not simple. Was only mentioning the incident as an example of the kind of things that happen – and tend to happen more so when the stakes are high.There have been many such high-profile such incidents (breaches, etc.) in recent years – say the last 5 or so. And many were avoidable.

    5. Vasudev Ram

      I think at least some of the SV (and other) startup crowd are using all those services because every other (funded) startup is, so it is sort of “the done thing”.The Emperor Has No Clothes kind of story.Alternatively (and this is likely equally or more true because so many of them are young), they do it (use all those services) because all the other “cool” kids are, so they don’t want to look different or like outsiders (because being seen as such can carry severe social penalties).Peer pressure, herd mentality, dare I say even – lemmings.

      1. Marcelo Calbucci

        I disagree.

      2. Martin Wawrusch

        That’s not true. Those services are where they are because they solved real pain points. Implementing a payment gateway before stripe was a nightmare as an example, if they would even let you. Image Processing? Sure you can do it easily on your server (If you choose to have those, which is not a good idea as serverless will be the new normal soon), but you also need to keep that running – more moving parts. Instead, deals with that in a beautiful way for $12/m minimum.

        1. Dan Moore

          I did some work with in the early 2000s and I can attest that what Stripe lets you do is amazing.

          1. Martin Wawrusch

            Yeah, me too. I hated that company so much πŸ˜‰

        2. Vasudev Ram

          >That’s not true. Those services are where they are because they solved real pain points. Implementing a payment gateway before stripe was a nightmare as an example,Looks like you may have misinterpreted what I said. I am not claiming that any of those services are useless, or don’t solve real pain points. Agree about payment gateway issues etc. (had done PayPal integration in 2001). Etc.I had said:> I think at least some of the SV (and other) startupsi.e. “I think” and “at least some” – implying not a fact but an opinion, and not about all of them.Maybe I didn’t word it clearly enough. What I meant was – I think some of the startups may be using _some of_ those kinds of services that they may not need in the initial stages, just because it is the done thing>but you also need to keep that running – more moving parts. Instead, deals with that in a beautiful way for $12/m minimum.It’s not a clear pro though. Yes, more moving parts, if you do it yourself [1], but less reliance on other companies who may fail, shut down, or be acquired and the service shut down.[1] Also, work is what a company is about. If one wants to have the least amount of work possible, one can not be in or start a company at all.I guess you know about “our incredible journey” stories. If not, google the term:…I’ve actually consulted to startups who did those sorts of things, so have some basis for my opinion.Anecdote: I’ve been contacted sometimes by startup founders, to be a co-founder. One such guy – an Oxford business school graduate – his plan was to build a product that totally piggybacked on [big social media company]’s API. After thinking about it a bit, I told him that I would not join, and thought his plan was a risk, since the company might change the terms of use of the API (on which his startup would depend), or withdraw the API entirely. I guess you know other companies have done that stuff like that. These issues are commonly discussed on HN now and then.

          1. Vasudev Ram

            Speaking of issues discussed on HN, and since it is topical – as in, happening right now, see this thread:…, specfically, this sub-thread (which starts from the top-voted comment – as of now):…It talks about security issues.

  23. LE

    …Why work 60 hours a week at Facebook and then another 40 hours a week on your side project when you can quit your job at Facebook and land $250k of seed money on the day you leaveWell for one thing because your “shitty little photo sharing app” is probably not going to work, that’s why. So unless you can easily get another job, or have family money, or some support system, then it’s stupid to quit your day job to be one of those failures.Another thing to consider is the time value of your life as you get older. Just like getting into a relationship that goes nowhere (you don’t get married and you break up after 7 years let’s say) starting a company that then takes 4 to 8 years out of the prime of your life is maybe a bad idea. You can’t get those years back. And when you exit (without a clear win or close to it) you could very well not be in a great position to get a decent job when you need money, if you do that is (who knows, right?) I would imagine that most people never think about this, anymore than they think when they are young about other future events.All of use I am sure know multiple people salivating at the chance of winning that lottery (I have talked several out of going that route..)

  24. Mario Cantin

    I’ve been doing three side projects since 2010. They all have failed miserably so far. I’ve learned useful things as a product manager, but I’m non-technical and that’s turning out to be a pain in the ass of a barrier in trying to build a technology product/company; and so I’m going to bite the bullet and start doing classes in computer science so I start to know WTF I’m doing.I’m 50. I’m going to be doing this until I succeed at it or until I die.All I know for sure is that one of them is going to come first….

    1. Kirsten Lambertsen

      Love this!!!

      1. Mario Cantin

        I’m delighted it resonates.

        1. Kirsten Lambertsen

          I relate heavily. At 49 I have one successful (but didn’t make me rich) startup and one failed startup under my belt, and about 500 ideas I want to work on. And, I’m just in the last two years taking myself seriously as a developer. I can attest that it makes all the difference in bringing your ideas to life. Cheers!

          1. Mario Cantin

            That’s hearth-warming to hear.I too have an insatiable appetite for being creative.

    2. Vasudev Ram

      Fantastic!Good luck.

      1. Kirsten Lambertsen

        Good on you! And what a neat share CodingBat is. I found the Javascript-inspired version which made me very happy πŸ™‚

        1. Vasudev Ram

          Wow, cool. Thanks. I’ll check that out too.

    3. Susan Rubinsky

      I feel like I don’t know WTF I’m doing a lot. For example, I often tell my clients, “Oh yeah! I can make that happen!” Then I leave the meeting and think, “I have no idea how I’m going to make that happen.” And then you get thinking.In fact, the second I start to feel like I’ve got everything under control is the second I remind myself that I must be getting complacent.Also, 50 is a great age to go for it. I just don’t buy into the bullshit that older people can’t accomplish things. We sure can! (I’m 49)

      1. Mario Cantin

        You’re staying humble it seems, I believe in that too. The string of failures in doing side projects in a foreign industry to me (Tech) has done a nice job of stripping me of whatever arrogance I had going on.

      2. Plissken

        I wish I had that attitude. I would say I have the know-how. I don’t have the confidence. My boss always asks me, “Hey, can you do this?” I’m like….”uh maybe. I don’t know. I don’t feel comfortable doing it.” It turns out I always seem to get the job done, but I still haven’t built up confidence in myself. Always feel like an imposter.

        1. Susan Rubinsky

          That’s called “Imposter syndrome.” I get it.

      3. Douglas Drumond

        > Also, 50 is a great age to go for it. I just don’t buy into the bullshit that older people can’t accomplish things. We sure can! (I’m 49)It really bothers me how young people think older people can’t accomplish things, specially in IT. Experience grows with age, it doesn’t shrink.

    4. Lawrence Brass

      ” I’m going to be doing this until I succeed at it or until I die. ”I call that someone with the determination of a termite, sooner or later the house, tree or whatever you are carving through will fall down. It is curious that reaching the end of ’employability’, as understood and defined by the old economy, can motivate this type of determination.Mixing consulting with product development is working for me but I think that is because I have been self employed-unemployed for a long time.I have seen the shine in the eyes of people in their fifties and sixties when we talk about startups.Good luck!

      1. Mario Cantin

        “Sooner or later the house, tree or whatever you are carving through will fall down.”Am I right to think that you meant this positively, or does it actually have a negative connotation?I’m a restorative mason by trade and own a small company in that field through which I generate an above-average income. I have always been self-employed and resourceful. I have the option to carry on through with that until retirement as it’s not broken.However, I’m catching up on some bigger ambitions that I would later on regret not having pursued.Furthermore, I’m off four to five months a year the way I’ve set up my lifestyle business — Canadian winters are cold — and so there’s time to get other stuff done.Success is largely about timing and even luck. I’m putting the odds on my side somewhat by constantly be working on preparing myself (for example reading this blog) for when I see the opportunity I’ll need to seize.

        1. Lawrence Brass

          I mean it in a Michelangelo carving marble positive way Mario. It is the inevitability part of the termite ‘work’ I was trying to make a point of, of course termites and restorative masons are not good friends, or maybe they are in some way. :)5 months off is a luxurious lifestyle and an excellent way to do other projects, much better than doing side projects simultaneously with a day job in my opinion. Focus is important.

          1. Mario Cantin

            Termites don’t bother masons as they don’t eat brick, and they don’t really bother the carpenters either as they creates jobs for them, ha ha! It’s the building owners who are not too pleased.I’m with you: focus is key. Right now my focus is to bag up money for the winter. Then, it’ll be the side projects/computer science classes.

    5. Brandon G. Donnelly

      you should probably just give up…KIDDING.i’m with you, mario!you only have to be right once πŸ˜‰

      1. Mario Cantin

        I’ve checked your blog/profile. We may have some points in common.

        1. Brandon G. Donnelly

          totally. let’s chat.

          1. Mario Cantin

            My snapchat is mario_cantin

      2. Mario Cantin

        “You only have to be right once.”My favorite Mark Cuban quote

        1. Brandon G. Donnelly

          nailed it

    6. sigmaalgebra

      At least at first, what you may need is really just an introduction to practical computing and not really computer science.The Internet, especially Wikipedia, should be quite good as sources.For an introduction here, consider an outline:The Core of a ComputerRead a little about each of processors, processor clocks, machine instructions, main memory, memory addressing, programs, disk storage, other peripherals.Learn the basics of counting in base 2 and base 16.Get the basics of speeds, capacities, costs, principles of operation.With those basics in place, learn about cache memory, processor cores, virtual memory, and virtual machine.Operating SystemsLikely from your usage of computers, you already know the basics of operating systems and, likely, file systems — e.g., Microsoft’s new technology file system (NTFS).The history of operating systems is huge, but for now you can concentrate on versions of Linux and/or Windows.Programming LanguagesThe main programming languages are all more similar to each other than, say, French and Spanish or German and English.The basics are elementary data types, elementary data structures, especially arrays, naming and allocating storage.Then get an introduction to the basic programming statements — if-then-else, select-when, do-while (and variations), call-return, and facilities for input and output.Object Oriented ProgrammingTake a cake recipe and call it an object-oriented class. Each of the ingredients in the recipe — flour, butter, sugar, eggs, chocolate — is a property of the class. Each operation in baking the cake — measuring, mixing, beating, pouring, baking, cooling, etc. — works on the properties and is a method. But, can’t eat the recipe; indeed, it doesn’t have even a single egg with it.So a particular cake made from the recipe is an instance of the class.It may be that there is a master recipe for just one layer of cake — no one ever uses that recipe alone.Then from this master recipe can make cakes with chocolate, lemon, almond, soaked with sugar syrup, rum, Kirschwasser, filled with apricot jam or cherries, coated with butter cream, whipped cream, chocolate curls, marshmallow cream, etc. Each of these more specific cakes inherits from the master recipe. In object-oriented programming, so it is with classes.An important application:When you use a computer with a Web browser to visit a Web site, the first thing you do is send the Web server a request GET. Here you also send to the Web server some standard data on you, e.g., the computer operating system you are using, the Web browser you are using, of course your IP address. The Web server then creates for you a logical session with a session identifier (ID) and sends the page, with the session ID, back to you.When you get the Web page back, if fill in a text box, a check box, a radio button, click on a button, image, or a link, then you send back to the Web server a POST with the data you entered and your session ID.So, the programmer of the Web server has to list what data they want to keep on (about) logical sessions. Typically there is an object oriented class for that data, with lots of properties but maybe few or no methods, and there is an instance of that class for your logical session. That class is the session state.While you are reading one of the Web pages, your instance of that session state class is stored in some session state store — e.g., Redis (I wrote my own).That store is a key-value store: The key is your session ID, and the value is your instance of the session state class (see AVL trees and B-trees below).In the code of the Web pages, sending a session ID key to the session state store causes the session state store to return the corresponding session state instance.Typically what send/receive from the session state store is just an array (list) of bytes. So, given an instance of the session state class, need to convert that instance to/from such a byte array. For this, object-oriented languages typically have a way do de/serialize between a class instance and a byte array. In particular, e.g., in what I wrote, the session state store just receives, stores, and returns byte arrays.Relational DatabaseTypically a program reads/writes data from/to files on a file system on a hard disk drive.Then, sure, other programs may want to make use of some or all of that data on the disk drive. And, sure, over time, the problems the programs solve may change so that the programs have to change so that, maybe, the data in the files has to change. Keeping up with the changes, etc. was long seen as way too much work, that a better approach was needed — database software to sit between the program and the file system on the disk drive.Broadly, the approaches to database settled down to versions of hierarchical, network, and relational. Mostly relational won out, and in the 1970s M. Blasgen at IBM and E. Wong at Berkeley made progress. IBM’s work resulted in DB/2 (database 2) and Wong’s work resulted in INGRES.First cut, relational database is just dirt simple: A database consists of tables. Each table has rows and columns. Each column is for some one variable, say, date, name, street, city, state, zip code, phone area code, phone number, account balance.Each row has such data for some one person.Or if not a person then a unit of inventory, a customer, a 1040 tax form, etc.Typically a table has a key, some data unique for each row. Then given the key, getting or changing the row with the key is much faster than otherwise. Well, what key? The principle is third normal form where each row is a function of its key, the whole key, and nothing but the key. Then third normal form is one of the first lessons in designing the tables of a relational database.Especially important about relational database are ease of use for the common work that was considered too difficult, relatively easy ways to respond to changes, reliability, and security. After a lot of work, now performance can be considered surprisingly good.Part of the reliability of relational data is from transactions. The classic example is a bank customer moving money from checking to savings. So, even if the computer fails during the work, when the computer is running again, want the work either completely done or completely undone. So, want the work to be an atomic transaction. Relational database achieves this, and just how is worth understanding.Maybe two programs are trying to do transactions on one database. Maybe program X is using table A but also needs table B, and program Y is using table B but needs to use table A. So, neither program X nor Y can continue. But program X has already made some changes to table A which must be undone if program X is to stop; similarly for program Y and changes to table B. So, relational database needs means of automatic (transparent to the programmers) of deadlock detection and resolution. Yup, relational database has that.For more, as at…look up ACID In computer science, ACID (Atomicity, Consistency, Isolation, Durability) is a set of properties that guarantee that database transactions are processed reliably. There is a special programming language for communicating with relational database called structured query language (SQL). Commonly some quite complicated database operations can be specified in a SQL statement of just a dozen or so lines.There are several relational database software products, DB/2 from IBM, SQL Server from Microsoft, MySQL from Oracle, etc.Computer Science=== ParsingEarly in computer science was Bachus-Naur form (BNF). This is a way to specify the syntax of a programming language.In such work a programming language is a set (as in mathematics) of strings of characters where each string is a legal program in the language. Then BNF is basically some specialized notation for some traditional operations in set theory that specify the full set of strings, that is, the language.Next, need to write a program that will take a string and determine if it is legal in the language and parse the string into the more elementary parts of the language. Well, some early work in computer science showed that, given the BNF for a language, could, from the BNF, essentially automatically write a computer program that would take any string, check if it was legal in the language, and, if so, parse it.Such parsing is an early part of a compiler for a programming language, that is, that translates a program to machine instructions or something close to machine instructions.If you want to write a compiler, then maybe you will want more details.For more, see the work of Frank DeRemer on LALR parsing.=== Algorithms and Data StructuresThere is still the now quite oldDonald E. Knuth, The Art of Computer Programming, Volume 3, Sorting and Searching,That volume has much of the part of computer science called algorithms and data structures.The most important algorithms are for sorting and searching. The most important sorting algorithms are merge sort and heap sort.The most important data structures are trees, and the two most important tree algorithms are AVL trees (mostly for data in main memory — by two guys in Russia) and B-trees (work of Bayer & McCreight — at Boeing) mostly for data on hard disk and likely commonly used at the lower levels of relational database software.Both of these trees are balanced in that each of the leaves is about the same number of branches away from the root of the tree, even if the tree is continually changed with insertions and deletions. Just how to do that, with good performance, is clever.Now object-oriented programming languages commonly have collection classes, and the good versions of these are likely based on AVL trees or the more recent and comparable red-black trees and are essentially main memory key-value stores.Heap sort also uses an important, but very simple, data structure called a heap which is really just a clever, fast, efficient way to store a tree where at each node there are only two branches.A lecture of one hour can give you the important high points of algorithms and data structures — you have a good start just from here.There is much, much more in algorithms and data structures, but nearly all the important parts of such work are really in various parts of applied mathematics, not computer science.=== Machine LearningThe current hot field of computer science is machine learning, but that is really basically some classic multivariate statistics but done on a large scale.=== P versus NPComputer science has a challenging, unsolved problem, P versus NP. The applied math community also regards this problem as theirs. The problem is a deep, shocking, profound question in computational complexity. On the Internet, there are plenty of introductions and as much more as you could wish.Ethernet and LANLearn a little about local area networks (LANs) and, from Google, A media access control address (MAC address), also called physical address, is a unique identifier assigned to network interfaces for communications on the physical network segment. MAC addresses are used as a network address for most IEEE 802 network technologies, including Ethernet and WiFi. So, that’s a start on how the signals on the Ethernet cable on your computer are handled.You can have a LAN switch which permits connecting many computers and other devices in one communications network.Internets and the InternetLearn about internet protocol (IP) addresses, version 4, IPv4 now and version 6, IPv6, later, routing, the domain name system (DNS), internet access providers (ISPs), static versus dynamic IP addresses, domain name registration, etc.Read about transmission control protocol (TCP) and internet protocol (IP) for TCP/IP and TCP/IP sockets, the work-horse of the Internet.Look at the applications programming interface (API), that is, the collection of software functions can call, for TCP/IP socket communications. Maybe write a simple program that uses sockets.E-mailA first, really simple, application of TCP/IP is e-mail, e.g., with post office protocol 3 (POP3).There learn about multimedia internet mail extensions (MIME) that permits sending pictures, music, etc. via e-mail.Move up from there to understanding hypertext transfer protocol (HTTP — similar to e-mail) and, then, hypertext markup language (HTML). To help set colors, fonts, text sizes, etc., see how cascading style sheets (CSS) work.GibberishPractical computing is just awash in gibberish, e.g., of three letter acronyms (TLAs) — e.g., ATX, EATX, EIDE, SCSI, SATA, USB, and on and on.Good news: Nearly all of this silly gibberish is, at the level of a user, conceptually dirt simple, and an Internet search and a few minutes can yield a good description.So, don’t get stuck on the gibberish.The above should be a good start.Okay, some more:Programming from 100 Feet upIf you have a significant piece of software to write, then use divide and conquer. To do this, look at the real problem and partition the work into pieces where hopefully the pieces are relatively independent, each piece is relatively easy to understand and test, and the pieces are relatively robust to small modifications in the original problem.The main, classic means of partitioning are functions (or, if you prefer, subroutines).E.g., there is a function for calculating square root. You could write a function to take two dates and return the number of days between them. For the airline fleet scheduling I did at FedEx, I had a function to take latitude and longitude for two points and calculate the great circle distance between them (basically the law of cosines for spherical triangles). Maybe you could write a function to take a JPG file and write some text, say, a date and your name, near the bottom, right corner.The place in the program where the execution starts is commonly called the main program. Okay — it’s nice if you can have good enough problem partitioning to make the main program just dirt simple: get inputdo the workreport the outputcatch any exceptional conditions and give a good message on what went wrong In the part doing the work, hopefully that will partition similarly.So, with all this partitioning, hopefully for each function, there is a really nice, simple description of what the function does.Sure, when write the program, have to create lots of names, for storage, classes, functions, etc. So, right, create mnemonic names.Still, mnemonic names or not, when such a program is written, only the programmer and God understand it, and, six months later, only God — unless you write lots of, say, English comments that explain what the heck the program is doing and how it does it.If you want such software to be a significant asset (considering how much it cost, you should), then you must do really well writing such comments. Commonly the comments will be more important than the rest, and the writing can be more challenging for the comments than the programming language statements. Right, good programmers need to know how to do well writing English.Or, think of a text in freshman physics and regard the displayed equations as like the code and the text as like the comments. Really.Indeed, there may be lots of external documentation with no code at all.TypingPiano playing requires hitting keys. Programming requires typing.Broadly you have two choices for the target of the typing, (1) a good text editor (with a good way to write macros) and (2) an integrated development environment (IDE).I just use a good text editor (KEdit), but an IDE can be better in various respects.TeamsSignificant programming projects need teams, and the team members have to coordinate. So, there is a severe management challenge. Relevant tools can be an IDE and a code repository, e.g., Github.Programming SkillsStarting with little or no background in computing, getting proficient with a first, serious programming language can take a year of full time work.There can be much more time for getting good with various specializations.One valuable approach to get past tricky issues for the first time is to get paid support from specialized experts.Database SkillsGetting good with a high end application of relational database, say, for a major bank, is a specialized, full-time job.One valuable approach to get past tricky issues for the first time is to get paid support from specialized experts.Go for it!

      1. Mario Cantin

        Holy shit, I can’t believe that you’ve put all this information together to help me!Dude, you take helping others seriously, thank you very, very much.

        1. sigmaalgebra

          Ah, it’s okay! I thought I’d write a book, but for a subject as simple as practical computing I could just type it all in quickly here!

          1. Mario Cantin

            I deeply appreciate the gesture.

          2. Mark Essel

            I suspect quickly is relative ;)If you take all your disqus comments and aggregate them, I’m confident you could contend for biblical length.

          3. Vasudev Ram

            You should actually save it for reuse with any one else later who might find the info useful. Maybe rewrite it a bit, but otherwise it is very good. Maybe make it a blog post.or a PDF that people can download.

          4. Susan Rubinsky

            You should write that book.

          5. Vasudev Ram

            In the process you also showed us that Disqus can support fairly long comments πŸ™‚ Useful to know. Some other web and even desktop apps cut you off at a shorter number of lines. Same with copy and paste. There is a limit to how much can be copied in one go. Seen it in a few editors, web pages, etc.

        2. Mark Essel

          I did some brushing up on CS back in 2011 and shared it in a series of posts (the internal links at the top of each post are busted)part 1-5…http://victusfate.github.iohttp://victusfate.github.iohttp://victusfate.github.io…Dug through my blog for why all internal links are no longer functioning. Looks like my host github changed something and somehow the jekyll team blames disqus for pretty urls. I’ll need to spend some time house cleaning this weekend to get it back in order.

          1. Mario Cantin


          2. sigmaalgebra

            Those posts are all deeper than mind and add a lot!Note to readers: I mentioned object oriented programming, and I use it, but I don’t take it seriously. E.g., I never use multiple inheritance or even inheritance and never send a message to an object. I didn’t include all the common terminology or concepts. With Web site session state, I did give a real example. Net, when programming in a language such as Microsoft’s C# or Visual Basic .NET or the open source C++, it’s pretty much necessary to use objects, but actually it is not necessary to use them fully or even to take them seriously, and I don’t! For someone just getting started, taking objects seriously and, then, getting bogged down is a threat for no very good reason. So, take objects seriously if you wish, but, for a beginner, you don’t have to take objects so seriously you might get bogged down, get lost, stop, and give up.I should mention Microsoft’s .NET Framework: Why? Three reasons: First there is a lot of utility there. Second, .NET is getting more important if only because Windows 10 is now running on more hardware, IIRC recently even the Raspberry Pi. Third, there are now versions of the .NET Framework that run on operating systems other than Windows.What the heck is the Microsoft .NET Framework? First, it was no doubt one heck of a lot of work by Microsoft. Second, it appears that the goal or .NET is to have, call it, ready made code, for essentially everything that is at all common in at least commercial computing. Third, in simple terms, .NET is one huge library of object-oriented classes. E.g.,at… there is the generic version of the class Microsoft calls SortedDictionary which can be used as a key-value store in main memory and is likely based on either AVL trees or red-black trees.Time out: I mentioned Knuth’s book on sorting and searching. But red-black trees are not in that book but are inRobert Sedgewick and Kevin Wayne,Algorithms, FOURTH EDITION,Addison-Wesley, New York, 2011.I have this in PDF I got for free atftp://ftp.micronet-rostov.r… science/data Structures & algorithms/[Pearson] – Algorithms, 4th ed. – [Sedgewick, Wayne].pdfContinuing with .NET: Microsoft’s on-line documentation of .NET is enormous. I have about 5000 Web pages of that documentation, found, read, stored, abstracted, and indexed, and my guess is that the 5000 is less than 25% of the total Microsoft has.The .NET documentation is organized essentially as a tree. So, from any Web page in the tree, can navigate toward or away from the root of the tree. So, the URL I gave above for SortedDictionary can be used as a way into the tree. Else, apparently a good way into the root of the tree is…But, .NET is bigger than that. For one, there are versions from 1.0 through 4.5 or so. I’m using version 4.0 and don’t want to take time now to change to a later version.Some of .NET is ADO.NET, or active data objects and is how a program can get to SQL Server relational database.Another part of .NET is ASP.NET for writing Web pages. While the Web pages for my startup are working fine, are fast, do just what I want, I’m no expert in Web page programming so can’t say how good/bad ASP.NET is for writing code for Web pages. To me, in some ways ASP.NET looks amazingly good, e.g., during debugging. In other ways, I suspect that ASP.NET is a bit too clumsy. Really, there is some underlying sense to how ASP.NET works, and it’s good to understand that: Basically your code that uses ASP.NET hangs HTML controls on a big tree, and just before sending the Web page some ASP.NET code traverses the tree and generates the actual, corresponding HTML code.There is an architectural approach to writing Web pages called model, view, controller; somehow .NET supports it; but I don’t much understand just what that is, how it’s different, or how it might be better. To me, understanding model, view, controller was a case of the candle not worth the match.Note: Since I’m doing my startup and not programming for someone else’s, I get to select the software tools I want to use, and there I stay with simpler tools and minimize how many of those I use. So, I’m not trying to learn every software tool used somewhere.I got version 4.0 of the .NET Framework code by clicking on some Microsoft Web page and doing a download. The code went to my boot drive partition. There I found a file vbc.exe which is the compiler for Microsoft’s programming language Visual Basic .NET. So, I wrote a simple script program in my favorite command line scripting language Rexx, type my Visual Basic .NET code into a file with file type VB, give that file to the script, and get back either some quite good error messages or an EXE file that will run. Simple. Fast, Works great. Read more Microsoft documentation and can learn how to create and use DLL files and namespaces — and I do.Microsoft has some Web server software Internet information server (IIS). So, apparently when a request comes from the Internet, IIS gets it anddoes the right things as a Web server.In particular, if write Visual Basic code, say, with ASP.NET, put the code in a file with extension ASPX, and give the file name of that program to a Web browser, then apparently the Web browser will use the internal loop back IP address to get the Web page, IIS will get the request, IIS will look at the ASPX file, see that it needs to be compiled, will notice that it needs to use the Visual Basic compiler, and will use that compiler. If there are errors in the program, what the Web browser will display are the errors — quite nicely. Else IIS will run the program, and the browser will display the Web page. It works very nicely for developing Web pages. So, get to avoid the complexity of an IDE.Microsoft’s favorite, industrial strength language is C#. I don’t like it because it borrows the deliberately obscure, idiosyncratic syntax from C — I don’t like that syntax, find it error prone and difficult to teach, learn, read, and write. But the C syntax is well established in computing now.Yes, some years ago there was Visual Basic, and it was an elementary language. But Microsoft made a change, wanted to keep something like Visual Basic but have it one of their main, industrial strength languages. They did that. The result is the .NET version of Visual Basic. The syntax is like that traditional in computing via Pascal, Fortran, PL/I, etc. And, apparently Visual Basic .NET is the same or nearly so as C# except for syntactic sugar and nothing to laugh at.The point is much larger, one IBM tried hard for years to achieve and failed: Really, the main Microsoft languages, C#, Visual Basic, F#, likely Iron Python, likely more, are all very similar, really close to equivalent. They are all based on the Microsoft common language runtime (CLR) and are all essentially equivalent ways to get to the classes in the .NET Framework. Indeed, for each class in the .NET Framework, the documentation for that class applies to all the languages. Nice. Really nice. Good work. Darned good work. Blew away what IBM long tried to do. Some smart cookies did some good work, managed not badly, maybe well.So, I’m using Visual Basic .NET. But when I use a class from the .NET Framework, that was likely written in C#. So, right, classes, functions, etc. in one language can call such in any of the other languages. And if want to call old C, which at one point my code does, there’s a way to do that, also, called platform invoke.So, that’s cutting a little deeper into practical computing.

          3. Vasudev Ram

            >in my favorite command line scripting language RexxHow long have you been using Rexx, and how do you find it, BTW? I’m a bit of a language fan and keep checking out new ones now and then. Some of them also turn out to be useful at work and business.So interested to know.I do know what it is, its background, that there are a few different free versions like Object Rexx and Net Rexx (and probably plain Rexx), but am interested in hearing your experiences with it.

          4. Vasudev Ram

            >Some of them also turn out to be useful at work and business.E.g. I got into both Ruby and Python via that route. It started as just exploring them for fun on the side (my main work was in Java and C at the time), when they were both fairly new.

          5. sigmaalgebra

            For other readers here, Rexx was done by Mike Cowlishaw in England for IBM. It was an improvement over earlier IBM scripting languages. Mike borrowed some syntax from PL/I, and for more he had something of a philosophy that is good, at least for a scripting language.In IBM, Rexx was very popular on IBM’s VM/CMS systems. In particular, the internal computing of IBM was long heavily from about 3600 VM/CMS systems around the world connected with point to point bisync lines, the whole thing called VNet. There the VM/CMS systems acted as both servers and routers. So, for its utility, VNet was internal to IBM but something like the Internet now.At one time in IBM Research, an IBM suit executive gave a talk and then got a question from the audience about maybe selling VNet setups to major IBM customers. The suit went ballistic at such a suggestion. Gee, the guy just turned down something as important as the Internet! It was running all of IBM, but this guy still wanted to sell just MVS, CICS, IMS, DB/2, on-line transaction processing, in a glass house, with essentially nothing in office computing. Dumb. That old IBM glass house stuff lost out big, huge, historically major big time and now is nearly dead.On the VNet servers, often Rexx was used for continuously running server programs, e.g., e-mail, internal phone books, fora. There were extensions to Rexx to permit some low level access to VM and CMS. So, in that sense, for some years, Rexx was a pillar of all internal IBM computing. So, Rexx is no toy.In addition, inside IBM, there was documentation for easy ways to make Rexx a macro language for any executing program. Well, no doubt the most important case was for IBM’s text editor XEDIT, done by an IBM guy in Paris. XEDIT is elegant.So, right, both Rexx and XEDIT were done as side projects (gee, that’s Fred’s title here!) inside IBM but became pillars inside IBM and important parts of the product line outside. Or, dogfooding is eating your own dog food, i.e., using your own product, but Rexx and XEDIT are the reverse, making good products out of your own, good internal tools.So, sure, when I was at IBM’s Watson lab (right, an AI project), I made heavy use of Rexx and XEDIT.When PCs came along, on PC/DOS and then OS/2, and soon Windows, there were versions of Rexx and XEDIT. The version of XEDIT was KEdit by Mansfield Software in Connecticut. The macro language of KEdit on Windows is KEXX, the Mansfield version of Rexx; for some reason, on Windows, KEdit doesn’t try to use the Rexx scripting language that runs on Windows as the KEdit macro language.Whatever, on Windows, Rexx, really Open Object Rexx, is my scripting language; KEdit is what I type into, for software for my startup, for longer posts to Disqus, for mathematical typing into Knuth’s mathematical word processing TeX, etc., and KEXX is my KEdit macro language. I have about 150 KEdit macros in KEXX and about 150 scripts in Rexx.If work at it, then a macro in KEXX can call a script in Rexx, and of course a script in Rexx can call an EXE program.If get too ambitious with Rexx, say, its stem variables that are versions of key-value stores, can encounter some bugs, but I haven’t seen such a bug in about 15 years.There are some Rexx libraries for math functions, for Windows screen manipulations, for TCP/IP, etc. Somewhere there is documentation for how to write such extensions, but I’ve never written one. E.g., I have a Rexx script that arranges the windows on the Windows screen with the UL corner of each window equally spaced on a line from about the top center of the screen to the left center of the screen, while maintaining the Z-order. I have an icon in the UL corner of the screen that invokes this script. So, when the screen gets to be a total mess, one click on the icon cleans up the screen. Useful? Yes. Perfect? No — e.g., commonly I get back errors from the Windows Script Host or some such, likely about trying to use bad window handles, likely from the old IBM interface to the Windows windows not very well done.Really, my most important tools are (old 2003) Outlook e-mail (still works fine, I’m surprised at how well), Firefox Web browsing, Rexx scripts, KEdit editing, KEdit KEXX macros, Visual Basic .NET, the .NET Framework 4.0, Knuth’s TeX for mathematical word processing, the spell checker ASPELL (amazing) that came with a TeX distribution, and SQL Server. And, right, I’ve written about 150 macros for TeX. And some of the scripts and KEXX macros are for TeX.That’s ENOUGH both for a lot of darned good, important, powerful, valuable computing and a lot of investment in tools.Right, I don’t use an IDE (e.g., Visual Studio) or a code repository (e.g., Github). I do just fine without them. In both cases, to me, the candle just is not worth the match. And as I have seen, for a software project up to at least 10 people, can continue to do just fine without those.More generally, there’s a theme in my computing: I like text, simple text, mostly in just the old ASCII character set, certainly in not more than the now standard 8 bit character set, and certainly not the rest of Unicode except maybe for some exceptional purpose (so far never done it) in a Web page.Sure, in some sense I should move to Windows Power Shell for a scripting language, say, to get easy access to .NET. That’s in the work queue when I have free time to invest in more tools. Maybe I’ll move to Power Shell after I have my 30 car garage with light trucks, muscle cars, sports cars, supercars, etc. up in the hills of New Hampshire some place where I can have fun fighting winter snows and heading for the coast to feast on seafood!But my main interest is making MONEY, via my startup, and most definitely not tools.No joke: I want to type into a good editor, not an app.While I really like KEdit, maybe the main recommendation for a high end editor is EMACS or something based on it — I have not made the investment to find out.For a scripting language on Windows, maybe the main recommendation is Power Shell, but, again, I have not made the investment to be sure.For me, now, I don’t need better tools and certainly don’t need to make more investments in tools. Instead I just need to keep using the tools I have, beat down independent, exogenous interruptions, and get my startup live.What the heck to do on Linux, for a programming language, for a scripting language, maybe even for an editor, I don’t have a clue, and, again, I don’t want to make the investment in tools to find out.

          6. Vasudev Ram

            Thanks. Good info about Rexx and interesting back story about IBM’s use of it, etc. I remember VNET ([email protected]) from when I was first getting into email and fiddling around learning all about it, some of the underlying tech and protocols, etc. IBM is so big that there are gateways between its email and Internet email.

          7. Mark Essel

            “But my main interest is making MONEY, via my startup, and most definitely not tools.” Good ole focus. Godspeed sigmaI noticed you mentioned github, but not git. Do you use any version control? My world exploded once I started thinking in changesets and branches, git’s been good to me. I used svn for a few years painfully before that and manual difference tools before that. Sublime editor has also been good for adjusting to any syntax/language and getting out of the way.

          8. sigmaalgebra

            Use Version Control?> Do you use any version control?Short answer? Yes. Longer answer? Via an on-line code repository? Nope.Own Version ControlWell, yes, enough; I use enough in version control: One approach is to use the hierarchical file system and the old, standard DOS/Windows directory copying utility XCOPY. So, if want a new version of all the software for the project, then just XCOPY the directory of the old version to, say, a sibling directory on the file system directory tree. Another approach is just to leave the old version in place and have some numerical suffixes on the names of some of the crucial files.E.g., my schema for SQL Server is SCHEMAddd.SQL where the ddd is a sequence number and currently 010 — so, right, I am up to version 10 of the SQL Server schema. Yup, version control.Now my use of schema is not the same as Microsoft’s: From reading J. Ullman, etc., maybe I’m right and Microsoft, wrong. So, my files SCHEMAddd.SQL have the SQL statements CREATE TABLE, define the columns, their data types, and default values, define the keys, the clustered keys, etc. And it is a SQL file which means that Microsoft’s SQL Server utility SQLCMD.EXE will read that SQL file and do what it says, that is, create the database although with no rows yet. So, for my version control, I have 10 of those now.For something closer to what Microsoft calls the schema, I have various Rexx scripts running Microsoft’s utility program SQLCMD.EXE running various SQL files for logins, user IDs, capabilities, access control lists, etc. I’m not really a real database administrator (DBA) — I just play one in my project.Some Version Control ChallengesBut for me, version control is not a totally simple subject: E.g., my startup has software for, let’s see, the Web pages, the session state store, the SQL Server database, and two specialized servers. These are all for on-line, production, but there are more programs that run occasionally off-line that are also important. And among these programs, the scripts that start them, etc., there are some dependencies. E.g., the various servers communicate with TCP/IP, and since I’m not running an internal DNS yet, I allocate IP addresses and port numbers by hand — so such port numbers are dependencies. There are also some common source code include files and common DLLs. These dependencies have to be correct or the site won’t work.So, how would I use a repository? Well, for the simple approach, I’d have to save everything related via dependencies as some one save, node, or whatever the repository called it. Bummer.No On-Line RepositorySo far the whole project is only about 80,000 lines of typing, maybe two dozen programs and about that many significant scripts. So, I just have some simple text notes that keep track of all of it for me so that when I revisit some of the software six months or more after the last time I will know what is going on.On the one hand, I’m fully aware that a large software project with dozens or more developers very much needs some quite careful version control. This point is as serious as the software and helps solve a problem with difficulty comparable with that of the rest of the project. No joke.On the other hand, I have to doubt that just a repository solves all the important problems of version control and that, instead, actually need some human intelligence in there, if only in some text files that explain things, that is, some, right, that dirty word, documentation. So, repository or not, by whatever means, I still have to do well at version control.Well, so far I am doing well; so far version control is not a problem. Then, so far, for me, an on-line repository is just a candle, for me, so far, not worth the match, for me, so far. Did I mention, for me, so far?A Surprise?That I am using no on-line repository is a surprise? Not to me: The project I was on at IBM Research, just a few people, shipped two IBM software Program Products, IBM’s highest quality software project category, and there was no repository — the project just used the VM/CMS file system, and that file system was not even hierarchical. Worked fine. Version control just was not a central or big problem.Version Control over HistoryFor more, for centuries, people have done big projects, sometimes by one person, sometimes by large teams, of wide variety, gee, without current server based on-line repositories for version control. Gee, I never heard that the guys who were the architects and project leaders of the wooden ships of the British navy were screaming for on-line repositories for version control — access to good oak trees, maybe, on-line repositories, no. Same for architecture and project planning and project management for railroads, steel mills, long bridges, tall buildings, deep mines and tunnels. Beethoven’s Ninth Symphony with about 100 musicians and about 100 singers — he was deaf at the time and had no on-line repository for version control. Looking at Beethoven’s manuscripts, they are awash in revisions. So, if he added a few bars for the brass but neglected to make the change for the rest of the orchestra and chorus, then in simple terms a performance would have been a big mess. Wagner’s The Ring, four operas, about 20 hours, lots of dependencies, and no on-line repository for version control. George Lucas for Star Wars, dozens, maybe hundreds of people involved, lots of dependencies, used an on-line repository for version control? I doubt it.Yes, like others going back in history, I do version control. For me for now, an on-line repository for version control is a candle not worth a match. For me for now, version control is just not one of the main problems, is just not on the critical path.”Things should be as simple as possible but not simpler.”Later Concerns about On-Line RepositoriesLater? One of my concerns about version control will be the security of the proprietary intellectual property protected as trade secrets. For this reason, I’m not thrilled to have my code outside the room where I do the work; for now, there is no big reason to have that code outside that room; for the future, there is a problem there I will have to solve.For now, no one would care, that is, no one would be interested in that code. But if my project is successful, which is the main goal and point, some people will care, very much.Intellectual PropertyAnd my project is different, and different in a way that should be a big advantage and barrier to entry: There’s some original, crucial applied math at the core of my project. Silicon Valley is much longer on hen’s teeth than entrepreneurs or VCs who could derive that math, or even understand it if I tried to explain it to them, but, with the code, even just the EXEs, some diligent programmers with an IDE could decompile and/or study the code and, even if they didn’t have the theorems and proofs for the math that showed why the math has to work, might be able to reproduce the functionality. Bummer.Such security concerns are not common in Silicon Valley, but neither are big, successful startups with some crucial applied math at the core. That math is a huge advantage; I’m not going to throw it away just because others don’t have such an advantage.Being ExceptionalIn Silicon Valley, big, successful startups are rare, say, come along only a few times, maybe only once, each 10 years or so. So, each such success is rare, is necessarily in at least some important respects exceptional. So, setting aside luck — “Blind, stupid, simple, doo-dah, clueless LUCK” — being exceptional, especially exceptional in a powerful, valuable way, is likely a necessary condition for the success.So far, the technical internals of my project are unusual, and unusually powerful, exceptional, and I should not throw away what is exceptional just to fit in with the 99% of the rest of Silicon Valley startups that are not exceptional enough to be really successful.Silicon Valley’s ProblemSilicon Valley has a huge problem: They know that the successes they need are exceptional, e.g., at most just a few each decade, but, still, for finding such projects they keep looking at simplistic patterns they saw from the past. Ah, these patterns came from the LPs taking MBA courses in accounting and finance? Gads. Gee, how did the SR-71http://iliketowastemytime.c…ever get built without the great, necessary wisdom of MBA courses in accounting and finance?Some patterns are important, but not the ones Silicon Valley understands and pursues. So, I’m not fitting in with 99% of what Silicon Valley does — no one who seeks actual success should.DisclaimerTyped into KEdit using macros in KEXX. Spell checked with ASPELL invoked with a Rexx script. Several other Rexx scripts were also used. This post is part of work organized in a taxonomic hierarchy built on the Windows file system NTFS. No on-line repository was utilized in writing this post.

          9. Mark Essel

            When you have the time to explore, I highly recommend trying out git even if it’s for a single simple script you use. You can keep your code entirely local (each git repo has the entire code history, as any distributed version control tool does). Stick with the basics: git init, git add, git commit, branches, and .gitignore your generated files. If and when you collaborate, explore pull requests. It really opened up the way I think about code in 2009. Git is more than just a candle.Here’s a great example of where git comes in very handy, disposable exploratory code. Even if you’re not using branches and decide to explore a different way of doing some processing and later find out it’s a dead end, reverting is just a git stash away. Oh wait you had some pearls in that stashed code, go ahead and git stash apply.” the various servers communicate with TCP/IP, and since I’m not running an internal DNS yet, I allocate IP addresses and port numbers by hand — so such port numbers are dependencies. There are also some common source code include files and common DLLs. These dependencies have to be correct or the site won’t work.”I love to keep information like this-> mostly static in configuration files (usually json these days) under version control. Ideally a deployment tool like jenkins or CircleCI can maintain dependencies better than I can manually. Even heroku has a nice revert button built into its management console.We had a deploy a few weeks back where I discovered I clobbered production while walking back uptown to Penn Station. My coworker who was unfamiliar with the details of why prod was broken instantly reverted and got us back in action.

          10. sigmaalgebra

            Thanks for the advice. I will keep and index it and look forward to the state of my project when I will use it. I do understand that, as my company grows, my approach to software versions will have to change, accept that what you are saying is likely the right direction, and thank you for the nutshell description.For now, I’m running about as fast as I can and don’t have time or resources to stop and change shoes. Besides, for now, the shoes are no problem at all.I will consider better considered approaches to versions when I am through with alpha test and beta test and about to go live.Why then? Because I’m afraid that the extra work of going live — right, the good news of usage growing rapidly — might force me into, say, only five hours of sleep a night. Bummer. So, before I go live, I want the old work in good, clean shape.

          11. Lawrence Brass

            “I mentioned object oriented programming, and I use it, but I don’t take it seriously.” – @sigmaalgebra:disqusVery wise.I have struggled with Object Oriented Programming for years and am always curious about why most people accept it without questioning. I saw OOP religious fanatics take the corporate world during the 90’s, “everything is an object”, UML, CORBA, even Microsoft’s COM. Madness.Performance wise their systems sucked, maintenance wise too, but OOP was a religion by then. I saw it as an academic experiment that went out of control but really couldn’t be very vocal about it because I did’t want to be tagged as an outlaw. In fact, with the years and the experience using it, I found ways to use it wisely very in the line with your comments.Nicely designed classes that you may find in professional libraries or frameworks are cool, some user interface OOP implementations are nice too but for almost everything else it is an unneeded level of abstraction and complexity in my opinion. Patterns were created to try to manage that complexity.Even Bjarne Stroustrup, father of C++, has been talking about “modelling shallow hierarchies instead of deep and complex ones” in his talks these years. He is a mathematician too as you may know.Platform invoke when needed, again, very wise.

          12. sigmaalgebra

            Now, in all the world, that make two of us!

          13. Vasudev Ram

            Just looked at a couple of those links. I like the writing style. The images in the data structures article are also cool.

      2. Vasudev Ram

        That is a good introduction to a lot of key concepts in software and hardware that developers need to know something about. Well done.

      3. Susan Rubinsky

        The reference to cake is brilliant. Thanks for sharing this. This is a great primer.

    7. Justin Vincent

      Don’t do classes in computer science! Just get a free account on and start hacking. You’ll be building stuff within a few weeks.

    8. Plissken

      Mario, do you work alone on your side projects, or have you hired people to fill roles you have no expertise in (i.e. programming)?I ask because if you have hired people in the past, and you like to focus on product management role, I think it would be enough to learn programming at a somewhat basic level (i.e. you are able to build a small-but somewhat complex app) to be able to communicate with developers you hire on a technical level.If you’ve been doing the side projects yourself and enjoy the programming aspect, I say go for trying to gain a deeper knowledge of programming.

      1. Mario Cantin

        For the first side project I hired a single developer out of India plus a part-time designer for about a year.The second project was 2-3 people for about six weeks. It was kind of a pivot of the first project.For the third side project, I had a 5-6 people team mostly full-time for three months, then I fired them and hired a different designer out of East Europe to completely redo the design. I then hired an experienced full stack engineer who had experience scaling sites and who is deep into the Agile/Scrum movement to implement the design and deal with the spaghetti code that the other team had created.I already know enough to be able to manage a product and conduct technical conversations with the developers, and I appreciate that coding takes time and I therefore keep the deadlines realistic.So I can already get by in getting a product created as long as I’m willing and able to soak money into it to have others build it.But it’s become obvious that I’ll go further by digging in and learning to code.

        1. Vasudev Ram

          If you don’t have it already, I recommend you get the book Code Complete 2nd Edition by Steve McConnell.Google for both the author’s name and book title, read his background . He consulted to Microsoft, wrote a few best-sellers (on software topics – all practical, not high-faluting advice), has his own software consulting and product company (Construx), was called “one of the three most influential figures in software” by Software Magazine, editor of the IEEE magazine on software, etc.. Read some reviews of the book, then take a call on buying it. Tons of experienced software people swear by it.It’s like a guide that tells you many if not most of the areas / discplines / methods about software development that you need to know about and be able to do (or get done), gives tutorials and examples on those areas (with what, why, how and when), and has plenty of links to more detailed and authoritative information.If you buy only one software book and get everything else from tutorials on the net, it should be this one. It really is that good. (IMO, but a lot of other people think so too.)

          1. Mario Cantin

            Thanks and greatly appreciated.

  25. falicon

    No matter what I’m doing ‘full time’, I always have at least one side project going…it helps me learn, stay creative, and make ‘non-standard’ connections between lots of different things…some make money, most do not (directly)…but all are fun (to me) even if they do cause some outside people to think of me as ‘unfocused’ from time to time πŸ™‚

    1. Kirsten Lambertsen

      I feel you, bruh πŸ˜‰

      1. falicon

        +100 πŸ™‚

  26. Kirbycuke

    I’m a regular reader of this blog but not in the tech world. Find what you all have to say enlightening. I have a side project that I want to explore. Not sure if it should only be a responsive website that I charge for using its service or an app. Interested to hear opinions on when something should be an app versus just a responsive website. Also, I have a clear idea of the design and the UX – but do not know the best source for connecting with or hiring an app developer. Wonder if anyone has some recommendations. Thanks!

  27. Kirsten Lambertsen

    Oh, we should all share our side projects here :-)’d love to see what everybody else is tinkering on.

    1. Brandon G. Donnelly

      side project show and tell. love it.

    2. Lawrence Brass

      What we talk about at the bar stays at the bar, right? πŸ™‚

      1. Kirsten Lambertsen

        I’m a vault.

    3. Dan Moore

      Fun idea! What does your side project do? Some kind of Twitter aggregators?Here is mine: side project that lets me play with new services, put on my marketing hat, etc. All the while providing a service in an area I am passionate about (local food)But the yearly updates are brutal–lots and lots of data entry.

      1. Kirsten Lambertsen

        That’s cool! I’ll have to share it with my family in Colorado πŸ™‚ I’ll *bet* the manual data entry is crazy — get Fiverr on that, heh.Yeah my little gizmo is a way of bringing some sanity to my Twitter lists and making it easy for me to follow/boost specific people (groups of people). So I can glance at one of these and know that I’ve seen everything by any given person in the group for today (it’s limited to the past 24 hours).I’m in the process of adding Instagram right now. So I’ll see both Twitter and Instagram in one interface for my groups of people. Happy to make one of these for you or anyone here who asks.

        1. Vasudev Ram

          Sounds useful. I would like to have one, please.

          1. Kirsten Lambertsen

            OK! You can either (i) point me to a Twitter list you’d like to use or (ii) send me the Twitter handles for a group of people you’d like to keep track of (kirsten at kirstenlambertsen dot com).

          2. Vasudev Ram

            Great! Thanks; will collect that info and send it to you.

          3. Vasudev Ram


      2. Kirsten Lambertsen

        Good job landing that domain, btw!

    4. Twain Twain

      Making kids’ clothes for friends. By the time I have kids, I’ll be so great at sewing … I won’t need to buy baby clothes. Haha, I hope!It’s not scalable and won’t make me rich but it’s just as technical as doing a wireframe and coding.

      1. Kirsten Lambertsen

        And you have to be able to do everything backwards! I love sewing πŸ™‚ It gets really fun when you start making your own patterns.

        1. Twain Twain

          EXACTLY, backwards too!!! :*).So when it’s assumed women aren’t mathematical and technical, this couldn’t be more wrong.When we sew, we do transposes, translations, symmetry, spatial reasoning and precision that can be more complex than anything in the Logic Reasoning parts of IQ tests and is as engineering-related as fixing car engines, putting up shelves and architecting computers and code.In my school they introduced us to sewing in the same year they introduced us to Computer Science.@fredwilson:disqus – As I said before, one day I’m selling my homemade wares on Etsy!

        2. Twain Twain

          When we make our own patterns, we can tell stories in the materials we choose and how we put pieces together.

      2. ShanaC

        awwwwwwwwwwwwwwTrain pantsawwwwwwwwwwwww

        1. Twain Twain

          Oh you should see the Superman PJs…Too cool for school!

  28. Felix Dashevsky

    A former colleague’s new book, called the 10% Entrepreneur, is apropos:

  29. leec

    All the (good) entrepreneurs I know have a box on the shelf labelled “Interesting Problems” with folders for several projects in various stages of noodling. πŸ™‚

  30. BillMcNeely

    Big non tech corporations are becoming more accepting of your side projects . Interview with 2 Fortune 500 co’s this week no issue

  31. Lawrence Brass

    Maybe the complexity of the projects had been rising too, I mean the type of project that can get investor’s attention.

  32. Dan Moore

    > Why work 60 hours a week at Facebook and then another 40 hours a week on your side project when you can quit your job at Facebook and land $250k of seed money on the day you leave?I think the grind it out side projects that you will be back in vogue when the funding is no longer so easy.I wonder what the longer term effect will be. I think it’d be easier to try again, after locking your wounds, if all you had was a few failed projects, as opposed to having blown through 250k of opm.

  33. jesusramirez

    The cool thing about sideprojects is that you can start thing that wouldn’t do if you were trying to make money, and that leads to unexpected opportunities.My current project is http://lingorank.comWho else has a so amazing review in mandarin like this… ?



  35. Bruce MacDonald

    As an employee of a large corporation, I either signed an Intellectual Property agreement or became subject to one. (I can’t recall signing one though) If I start a side project I have no incentive, do I? So I have to seek VC if I want to eat during development.Of course I would probably have to lawyer up before I start pitching in case of an IP claim…

  36. Phil Jackson

    I sold ApiAxle which was a side-project. Not a large acquisition, but it was 100% mine at the time.I’m currently working on another, Yipgo. There’s a very experimental version at right now.

  37. Ivan Vanderbyl

    I’ve been building side projects since early High School. Now, after 10 years of working at various tech companies, and multiple failed starts, my current company is a side project which turned profitable and has been employing myself and 2 others for a year, full time.

  38. Dave Dann

    Wait I can earn how much on seed money?! geeze I have been bashing away on side projects for so long and struggling to get anywhere…

  39. Conrad Twizzle

    I want to help people test out these ideas early on with their community and grow social proof with real capital from their networks. Check out to help grow your side project.

  40. JimwHuff

    Nice article. Thank you Fred. I have seen a negative association with talking to VC’s about “side projects” bc that also means that you aren’t full-time or aren’t “serious” about a project. We had someone tell us to come back when we quit our jobs. (Maybe that was just an excuse.) A VC’s time is becoming more and more in demand so these side project conversations could be the causality of that. (Note: this is just my limited experience.) Thanks for all the great posts.

  41. davidu

    Funny you mention FB…Facebook started out as a side project.

  42. RussellBallestrini my current side project. Feels weird that I’m using Disqus to write this to you. Check it out.

  43. ShanaC

    A lot of places have started to write much more prohibitive contracts against side projects(I actually asked a friend for his employment contract just to build a toy app, believe it or not, as a complete side project..ugg)

  44. t.k.

    My side project starts from my graduate study course work, now not only I have converted it into a published paper, but also want to continue working on it and make a math-aware search engine in the future.

  45. nope

    Its possible also an effect of bad working agreements, which make sure that an employ isn’t allowed tho have side projects in the field he is actually employed without giving the employer the possibility to take over the rights of the result.In Austria such agreements are very common even though there are lawyers who think that such clauses are practically not actionable.

  46. Mark Mc Laughlin

    Fred. I like to think that Coras which started out as a side project has been built on the R&D of running Ticket ABC for 7 years so maybe Ticket ABC has actually been the side project (albeit an all consuming one) leading to Coras becoming the main project and the big opportunity.

  47. Ahmad Takatkah

    I think they’re back already. Pre-Seed Programs (such as Lean Launchpad and Founder Institute) that run during weekends are a big example of that. Although they are more of training programs, but they do give founders the full accelerators experience. What I would love to see is angel investors investing in participants as they start with these programs not at the end.

  48. Abhishek

    “I suspect that some of that is the effort to build and launch something that can reach broad adoption is harder. You have to build for desktop web, mobile web, iOS, and Android if you want to get your app in front of everyone. Back in 2003/2004, you just had to build for the desktop web.”Also the number of people doing side projects have increased a lot since the days of delicious. This is also making new ideas come by harder and harder. When you think of something you believe is unique and new, you will always find somebody doing something similar. This does not mean you can’t succeed but many ideas must be getting killed because of this reason.


    We are respecting to you #Respect

  50. Dave Chase (@chasedave)

    As one immersed in healthcare and seeing 98% of the digital health startups being the walking dead right now (pulled trigger too early), I think the call for side projects makes total sense in this vertical. For at least 12-15 months, I was doing double-duty on my last startup before being “all in”. It was only when we got some strong external validation that we made that move. It ultimately turned out well (good exit for investors and team).

  51. David King

    Recently I decided that rather than working on side projects while having a Full-time job I decided to take a slightly different approach to entrepreneurship. Rather than building a “company” out of the gate – start everything as a project. I’ve coined the term projectpreneurship and its completely possible that a project will turn into a company, but each project is simply designed to be a “zero inventory” concept to start, have a defined period of experimentation, and generally have a day 1 business model.The first project that I launched now has 1K people signed up, has done $1K in revenue in 1 week and received press already in the first few months. Even if this doesn’t go massive its a small win and a success I can build from.As entrepreneurs do we have to start up looking to build companies or can we just create projects that create some value and allow us to capture some of that value?Oh here is the project

  52. curtissumpter

    This was such an enlightening and liberating post. Really helpful. Thanks Fred.

  53. awaldstein

    we said the same thing, only you better of course

  54. LE

    In a sense a side project is perhaps doing something on a small scale where you attempt to find, or do find, as they call it now, “product market fit”. And if it appears to be something that people will pay you money for you then put more time and energy into it. That is much less scary in so many ways then having to actually think something out and spend real money to see if it works. And by statistics if it appears you are on to something then you are on to something and you go further and tie up the loose ends and do some calculations.In college and high school for example I did both photography and car waxing “on the side” (while I was a student as well as a few others similar things). From my experience with that I knew that I could “start a company” doing the same. I could tell that just by how easy it was for me to get customers. I didn’t start a company but I know I could have. No big surprise that people use those non-unique services, right? Give them good service and they will pay you money. Simple. Many business are started this way. Someone see a small opportunity and then notices they can duplicate that by selling to other people.As far as “take it to market” that was the basis for why I skipped my first idea out of college which was to sell computer and word processing supplies. I went door to door for about a week and quickly determined that it would take to long to land orders. So I then realized that I would need to print and do mail order to sell the supplies (and that’s where the printing idea came from but by the time I got that actually making money the opportunity wasn’t needed).

  55. jason wright

    over probability mass function?

  56. jason wright

    the simple pleasures of life

  57. LIAD

    There is a downside though. Sometimes without that added pressure and responsibility you may change course or give up prematurely.

  58. William Mougayar

    Yup. Or the opportunity window may pass, because you couldn’t pull the trigger.