406 comments

[ 4.2 ms ] story [ 278 ms ] thread
> Science seems broken. The current funding models are broken and favor political skill over scientific genius.

Isn't that already catered to by experiment.com, a YC company?

They fund multiple companies in a vertical...
Very cool to see this list expanded. My own personal interest lies in programmer tools and their inevitable evolution, so it's great to see them listed on there.

A few of the accelerators I'd applied to in the past don't see the business opportunity present in developer tools (Who pays for those?) so it's a relief that YC recognizes the opportunity there.

It helps that many of the YC partners are developers themselves.
Absolutely. The final decision makers at other accelerators were often non-technical and (understandably) did not immediately see the value in developer tools.

Thankfully, companies like Jetbrains, Github and Light Table have made a lot of progress in demonstrating that a viable market exists here.

Which ones are the new ones?
Many were slightly tweaked. But these are the new categories:

Pharmaceuticals Government Human Augmentation VR and AR Programming Tools Hollywood 2.0 Diversity Developing Countries Enterprise Software Financial Services Telecommunication

- INTERNET INFRASTRUCTURE

"An important trend is the API-ification of everything. As more and more businesses are accessible with a web API, the Internet becomes more and more powerful."

I think a POSTman style Zapier, love-child would go down very well. Also products like Mashery where you provide APIs as a service and charge.

Notably missing from the list...

- Anything related to travel.

- Anything related to storage

- Anything related to video (Maybe that's Hollywood 2.0?)

Let me reply regarding travel:

- is full 99% of so established players, with lots of money. To enter this marked requires either equally amount of money or something truly truly innovative...which brings to point 2:

- what is left to invent in this area to be so disruptive so that a start-up in this area makes sense? I'd love to be contradicted, but I think all important things in travel have been invented.

> what is left to invent in this area to be so disruptive so that a start-up in this area makes sense? I'd love to be contradicted, but I think all important things in travel have been invented.

Not even close. Travel is sooooo god damn complicated and inaccessible to most people. Even though traveling should be popular, on a population basis basically nobody travels. This can change with better software, I'm sure of it.

> Even though traveling should be popular, on a population basis basically nobody travels. This can change with better software, I'm sure of it.

I see this sort of attitude a lot from SV-types, but the reason most people don't travel is because they lack time (well, time flexibility--ie. they have regular obligations at home) and/or money.

Unfortunately, established players often means full of legislation protecting those players. There are plenty of ideas in the travel space - but they require the ambition to challenge governments and lobbying. Uber, Lyft, and AirBnB are a great examples.
Let's see:

- When should I buy a ticket, what is the punishment for not buying right now?

Kayak has a "when to buy" feature, but I can't think of anyone else. Microsoft Travel stopped doing it and even then there's was only for US.

- How often is the flight I'm booking delayed? For how long? Airport or Airline fault?

Some Airlines show you the delay/arrival percentage but its not aggregated anywhere AFAICT. Also I believe airplanes have a lot of leeway before a flight is considered "delayed" Also people suggest never to land/fly out of O'Hare in Chicago if possible but is there evidence for this? Would someone outside the US who is not a frequent flyer even know about this?

- How much space does this airline's seat provide?

I'm willing to spend a little more for more space on longer flights...

- Does this plane have power outlets? And not the ones that EmPower plugs, those don't count. I'm looking at you United!

The problem is there's actually very little accurate information except the cost of the flight, and thats what most people choose to pick their flight. Sometimes even willing to take weird layovers/extra stops to do it. If it can be shown that your comfort and stress would be better cared for by purchasing a ticket that cost $50 by next Wednesday.... well no one has done that.

> - How much space does this airline's seat provide?

> - Does this plane have power outlets? And not the ones that EmPower plugs, those don't count. I'm looking at you United!

Seatguru

> I think all important things in travel have been invented.

In decades, if not years, you will look back and laugh at yourself for this.

I can think of two very easily: Sub-Orbital travel and medical tourism.
You're travelling to a new city you've never been to before and you're looking for a hotel that's cheap but decent quality, in a safe area and well connected via public transport to the tourist areas.

How many steps does it take you to find a hotel ?

How many steps should it take ?

How about this:

If you travel quite a bit (say 10 international flights/yr), would you pay 15k/yr to never have to think about travel? You book meetings on your phone "Jan 20, Calcuta | Feb 23, Tucson, etc | OScon in X, etc" and everything else happens behind the curtains.

The startup books flights, hotels, taxi, shuttles, trains, etc, and your Google Now just talks to you: You have a flight tomorrow at 8:00. When you land: Take train A293 at 3pm, etc.

The more you travel, and based on feedback, the app learns (less train, a little more up-scale hotels, she doesn't mind taking the bus, etc)

Like being a millionaire with a full-time assistant, but for the middle class. Does that exist? Could AI tackle it? Maybe a semi-automated version?

How far off is singularity? Seems like quite an interesting topic.
About as far off as the second coming of Jesus Christ, the reunification of the Beatles, and Duke Nukem Forever (ah oops, maybe scratch that last one).
By some reasoning we're already past it, in the middle of it, it's just around the corner or it will never appear. It's a totally meaningless question without first defining what the singularity actually is. The world we live in today is already very far removed from the one that I was born in but the linkages are still there to be followed.

To know how far the singularity is 'off' is by definition impossible, it means that you have knowledge of which linkages are required to get to the point that you won't be able to predict the ones after that.

After all when the singularity is here the world we will end up in will have no relationship to the one we are in today.

For the record, I think we will see a period of accelerated progress and then we will either fuck up or things will slow down again, I don't believe there will be a runaway event.

There are a lot of different definitions of "singularity" but generally it means creating superhuman AI, which then makes better AI and does things we can't imagine and so on.
How far off is singularity?

It seems like the question can be rephrased as, "At any point in history, have humans been able to advance technology in a substantial way simply because they wanted to, rather than by stumbling upon a way to do it?"

Most technology is incremental. Take flight, for example. The glider had already been around for a substantial amount of time before the Wright brothers solved the "control problem" and the engine problem. Those two problems were the only two left before powered flight was a reality, and the Wright brothers knew it.

For the singularity, on the other hand, there's no clear laundry list of problems to solve in order to achieve it. In fact, there's no clear way to even define AI, or at least define it in a way that can be meaningfully translated into current technology.

Maybe the advent of quantum computing will change this. I've suspected that AI is fundamentally impossible to implement on a Von Neumann architecture. But this is very easy to say from the point of view of a society which hasn't remotely discovered how to make AI work yet. It's similar in spirit to someone from the 1500s saying "I think electricity is fundamentally impossible to harness, because there's no proper medium to channel it" even though metal was quite widespread at the time. Humans just hadn't figured out how to fashion wires yet.

The only thing we can say for certain is that we don't know what we need to know in order to make the singularity a reality, let alone how long it will take.

In fact, there's no clear way to even define AI,

It's easy to define, but the term has been stolen by people wanting more media attention for less work.

AI is just "what we are" without all the squishy parts. AI ("hard" AI, AGI) is a fully thinking, doing, feeling software system implemented in non-biology.

I've suspected that AI is fundamentally impossible to implement on a Von Neumann architecture.

Balderdash. We haven't discovered any computation problem that our universal computing architecture can't compute because... universal. It's not "universal \ things-that-can-generate-thoughts." Universal simulation machines can simulate things... universally. Now, we may not have the software architecture discovered yet, but it's certainly doable given our current hardware.

We haven't discovered any computation problem that our universal computing architecture can't compute because... universal. It's not "universal \ things-that-can-generate-thoughts." Universal simulation machines can simulate things... universally.

And yet, the Game of Life is completely deterministic and is the opposite of real life in pretty much every way, even with the new advances. Quantum may change this.

There are certainly problems which are tractable only on quantum computers. Shor's algorithm is of course the classic example. Saying that Von Neumann architecture is a universal problem solver is a rejection of the idea that quantum computing allows any new problems to be solved, but we have evidence that that's not the case.

Game of Life is completely deterministic and is the opposite of real life in pretty much every way

My computer also can compute 5 + 5 and that is the opposite of real life in pretty much every way too. Not every algorithm results in life [and it requires algorithm + data + continual input, which the GoL doesn't integrate].

is a rejection of the idea that quantum computing allows any new problems to be solved

Because the idea quantum computing solves new problems has no basis in research or reality?

"Quantum" != magic

A tiny, currently impractical, factorization algorithm isn't a new problem current computers can't solve. They just take the long way 'round.

The fact that a previously-intractable problem can be solved in a tractable amount of time on a quantum computer is important. It doesn't mean the problem didn't exist before, but rather that the problem can now be solved.

For all we know, making an intractable problem tractable is the necessary step to make AI a reality. In fact, it's hard to argue that it isn't, so quantum computing becomes very interesting.

For all we know, making an intractable problem tractable is the necessary step to make AI a reality.

But, we know that's not a necessary step. We have computer vision systems working essentially the same way our brains perceive images (and since the new systems are on computers, we can speed them up millions of times to recognize millions of images quickly instead of relying on our dumb 10Hz to 100Hz brain clock).

so quantum computing becomes very interesting.

But quantum computing doesn't magically reduce difficult things to non-difficult things: http://www.scottaaronson.com/blog/?p=206

Also, required reading on why no quantum juju is required: http://www.scottaaronson.com/papers/giqtm3.pdf

I didn't say quantum computing magically reduced anything. You've set up a strawman and proceeded to beat it with a hammer. I said that quantum computers can solve previously-intractable problems.

We don't know what steps are necessary to reach AI, so we don't know what is or isn't a necessary step. Vision is a tiny part of cognition, as evidenced by the fact that there are fish which have no vision (or at least no human-like vision) since they live in absence of light. Yet they are alive: they reproduce, they seek food, they think, they do all of the things a living creature does, except see light.

You're confusing computing performance intractability with conceptual intractability. Shor doesn't do anything new for AI, it just speeds things up.
Never would I have guessed that saying "Quantum computing may open up new avenues of exploration" would be so controversial.

I said quantum computing makes previously-intractable problems tractable, and that it's therefore interesting for AI. I used Shor's algorithm as an example of a problem which could not be solved on a classical computer, but could be solved on a quantum computer, not as an example of a new AI problem.

That's still an incredibly unclear definition (c.f. the Chinese Room Argument, P-zombies, etc., etc.).

And that human intelligence is an entirely computable process isn't exactly universally accepted.

isn't exactly universally accepted.

Good point. People will always believe in magic and gods and meeting dead friends again too, but while they continue to stand firm in their fantasy beliefs, we march forward creating an actual future.

Depends a bit how you define it. I quite like (output of stuff)/(hours of human labor required) going infinite which should happen when robots can build better robots without us. Unlike the 'singularity' in most of the literature that one is actually a singularity in the math sense. 2040?
>An important trend is the API-ification of everything. As more and more businesses are accessible with a web API, the Internet becomes more and more powerful.

This is a bad thing. Replacing opens standards with proprietary APIs locked behind access tokens hardly makes the internet more accessible.

Walled gardens are great for making money though…

The alternative to known and published APIs is no API, not closed APIs. In general the API companies we do fund are of the open sort and they accomplish something useful in the real world, eg Lob, EasyPost, Hellosign.
There is no such thing as an open web API. They are all proprietary alternatives to open data formats or protocols. If those companies used open and standard data formats or protocols (I admit that in many cases this might mean proposing a new standard) there would be no need for a custom API at all. Standard data formats can still exist behind a paywall, so it's not an issue of free-as-in-beer. It's an issue of user lockin.

For a bunch of things it won't matter one way or the other because not many people will ever use it, and there isn't much likelihood of other organisations offering the same data anyway.

Take Google Reader API though, where we ended up with a bunch of clients that only targeted the proprietary Google Reader API. When Reader shut down clients had to be rewritten to work with the APIs of other RSS syncing services, services had to try and recreate the Reader API to ease migration and so on. All to arrive at a situation that isn't much better than before - a bunch of clients hard coded to specific services that will have to be altered if those services go away. If Reader had been based on an open protocol then switching would have been trivial for everybody - you just point your client at the address of your new rss syncing server.

I want a world where switching between providers and clients is trivial(ish), like email, rss or the web itself, not a world like Google Reader where we are all hard coded into proprietary APIs that are one cost-cutting meeting away from being closed, leaving everybody with a lot of work to do to migrate.

I'm sure there is less opportunity to make money that way - you can't lock people in as easily and so on. However it's not like most of the companies we are talking about here are ever going to be profitable. The game is about getting bought out. I'd rather we at least create something a bit more lasting while we play the buyout lottery.

If a data format is open, startups can still provide proprietary metadata & analytics, which could be distributed via API. The presence of open data would encourage startups to define a common, open API. The challenge is convincing startups that they should invest limited resources into building an ecosystem, instead of a walled garden.
I think you might be confusing the "scrapability" with openness. If the information was behind a login / paywall to begin with, whats the harm in needing a token to access that API?
I have to admit I'm a bit more cynical. Sure somethings are just private/charged for etc and access tokens are just part of a paywall. That is fair enough. I think in a lot of cases it's really about control though. Information that isn't behind a paywall, but that requires a token to access through the API. The classic example would be Twitter, when they shut down most of the third party clients.

There is of course a decent argument that it's their service and they can put whatever T&C on it that they like. However YC didn't seem to care about T&C when they funded AirBNB and defended their (ab)use of Craigslist.

I loved seeing VR on this list as an Oculus enthusiast.

The http://www.reddit.com/r/oculus, http://www.reddit.com/r/oculusdev/, and https://developer.oculusvr.com/ are jam packed with excited hackers cranking out their projects and with the Oculus Connect conference coming up I'd love to see some of this talent pointed towards Y-Combinator

VR can be so much more than what Oculus and its associated acts are about. In fact, they cast a shadow over it that will probably be harmful to it in the long run.

The Oculus acquisition by Facebook is possibly the worst thing that could have happened to VR. With the Rift, Oculus had the opportunity to chart a brand new low cost platform accessible to millions, and be the next IBM/Microsoft/Apple/etc of their day. They had everything going on for them: a founder who knows the field by heart, which allowed him to act the moment he saw the curves of "state of the art" and "realistic potential for a consumer product" intersect. A lucrative vertical (gaming) in which to get their v1 out. Industry titans believing in and joining the company.

I don't know about you, but this reminds me of things like the Macintosh: the potential for brand new applications (with VR, "computer assisted design" takes on a whole new meaning). The potential to reach brand new audiences, and to make existing audiences experience thing they could have never experienced on traditional 2D screens.

But they went the acquisition route. Now they're owned by Facebook, which means that everything they do has to go through all the motions that a large company has. They can't do anything really risky, they can't say "fuck you" to the status quo (because Facebook is the status quo). What are we going to see from Oculus? Locked-in app stores. Social networking bullcrap à la second life (pro tip: we've been trying to make "social VR" a thing since the very first days of the internet, and it's always failed. The Palace (1995), Second Life (2003), etc. Every 10 years, like clockwork, someone tries it again and miserably fails. It makes for great science fiction -presumably why people are so intent on trying to make them happen in the first place- but in reality, it just doesn't work out.

What will we see from Oculus? Most likely nothing ever really revolutionary. As far as gaming goes, we'll probably see half-assed VR from Microsoft and Sony.

But as far as truly disruptive uses of VR goes? Well, it certainly won't be Oculus. Maybe someone else will pick up the torch where Palmer Luckey dropped it, but it seems like the window of opportunity has closed.

They took VC money to get Dk1 out and prep Dk2. Then Facebook came knocking and they were forced to sell so the VCs could get their ROI. No one wanted to do it, least of all the top man.
I completely agreed with you in the weeks following the Facebook acquisition.

BUT in the months now following my opinion has changed.

There remains a vibrant and resilient ecosystem of devs working on amazing homebrew stuff that everybody on day-one predicted would close up shop.

But since a lot of the work is unity based, the end platform almost doesn't matter and people realize that.

Oculus will start out as the PC enthusiast / high-res experience and FB gives them the dry powder to actually get the hardware out the door.

But in the long-ball view EVERY smart phone, console, etc etc etc will be capable of VR and it's largely thanks to the preliminary oculus effort and their inclusive structure of opening the platform to small devs.

Think about MineCraft as an example.

Brilliant concept, single dev (then small team), and now basically universal adoption that is completely device and platform agnostic

And of course large studios will throw huge budgets against the VR platform, and maybe Oculus isn't the long-term leader but they are wholly responsible for the coming renaissance!

>As far as gaming goes, we'll probably see half-assed VR from Microsoft and Sony.

Look at all the amazing things the Kinect did. I played a few Kinect games. The effect is amazing. Imagine if Facebook bought it instead of MS. I don't see why MS or Sony would make things half-assed. If anything, VR gaming might be a natural monopoly from a commercial entity instead of some open standards things Oculus kinda-sorta is pushing.

Reminds me of how people are baffled that there's a near MS monopoly on the dekstop and why Linux can't break through. Natural monopoly here as well.

VR gaming might be a console-only affair with a small "pc master race" types telling us how much better their experience is. Meanwhile, Jane Console Gamer puts on her headset and enters the world of Minecraft or whatever is going to be the big time waster, with little fuss as it all because it "just works." Meanwhile Joe PCGamer is whining on forums why $video_game isn't working with his Oculus and he has no one to support him.

> Look at all the amazing things the Kinect did

Mmh, what amazing things did he do? Last time I checked, there is no killer app for the Kinect. Microsoft tried to force it on everyone by bundling it with the Xbox One (because no one wanted it otherwise), and now they're removing it because even when their console is bundled with it, no one does anything with it.

It certainly was explosive on the 360. As an Xbox One owner, there just aren't too many games that make use of it, compared to the dozens on titles on the 360. There's a dance game and a token fitness game and not much else. I think if the console launched with 5-10 good Kinect games, it would be a different story. It looks like MS was too afraid of being a second run console if they waited too long after the PS4's debut and launched with very few titles and very few good titles, let alone kinect titles.
(comment deleted)
Awesome, ambitious and inspiring list of the challenges humans need to solve to move forward. One huge issue forgotten though: animals and wild life. They also inhibit our planet and part of our lives, but many quickly disappearing.
Couldn't agree more. Protecting wildlife is like protecting nature's most valuable works of art, and it's a real tragedy that they have become so marginalized in our anthropocentric system. It would be fascinating to focus on solving problems that go beyond our own species. One of the main issues is the economics of biodiversity — how do you put a price on the preservation of an ecosystem or a species? It's certainly not a straightforward answer, but it's a question that's well-worth thinking about.
Well said, we share our planet. Poor animals and plants dont have their own voice, but certainly need more represntation in our daily thinking.

Would be great to hear from the leader of the startup world. Even if only to bring attention to their cause

What would be some good startup ideas here?

My only idea is a company that manages National/Regional parks and has a monetary incentive like a)Being paid by people who visit their parks. b) Being paid as a service per square foot they manage. What other incentives can we create to make sure the companies are kept honest without involving too much government oversight?

I liked this line: "the government is a very large customer with very bad software."

It could also be written like this: the government is a very bad customer with very large software.

Ditto 'the enterprise'.
Yes at the surface. However, I think there are opportunities in enterprises at the lower levels or through guerrilla style tactics (e.g. Yammer). Through a combination of free and price points that allow individual or middle management authorization there are opportunities.
Selling to governments is very difficult and time consuming. The company I work for has spent over a year now trying to get approved to sell our software to the NYC schools (not land a sale, just get approved to try to land sales), and it looks like we may have hit a dead end.
One of the previous places I did some freelance stuff for solved this by partnering with a vendor that was already on the approved list.
So there is an opportunity here for a company that does nothing by handle the ugly administrative stuff on the government end, presenting a cool hacker-friendly work environment on the other? And pocketing a hefty cut for the service, I presume. Sort of a general contractor with very different inside and outside cultures.

"Yes, we launched it and it works. We have a great technical staff, and we've won some very lucrative contracts. We called it EnterpriseAdaptor, thinking the geeks would go for that but everyone persists in calling it CondomCo."

Interesting thought. One of the challenges will be that they look at stuff like how much capital you have and how long you have been in business.

There are a number of companies that can help you (Lockheed Martin, CSC, and IBM being three) if you find yourself in a position where you have something you need to sell in to government and don't have the credentials to land the contract directly. They do essentially what you describe... take a cut off the top in exchange for doing some of the paper work and taking some of the liability if things go awry.

There was a company advertising on HN's latest "who's hiring" about specifically improving government IT. They don't seem to respond to email, though.
"the government is a very bad customer" is better statement of the problem. The real problem with government is the system of software procurement and management.

This includes decision makers who often play favorites and often have zero expertise or sound counsel to leverage in making key technology related decisions.

The healthcare exchange is not an exception to the rule. It is the status quo of most government technology related initiatives.

Well, I already applied, but I guess I can update my app. Human Augmentation ftw!
Yes, you can update your app all the way to the deadline.
With less than a month left to the deadline, its really challenging to build a decent MVP with some traction in one of these fields. And I think that seem to be at least the minimum requirement to get into YC.
From the post: "Responding to an RFS will never be the deciding factor in who we fund. "
I agree. I am just saying if it clicks my idea bulb, its probably tough (still possible) to build it.
Maybe it's a marketing stunt? I mean, they're in for the money, so they have to fund stuff, that pays out later. BUT they have to appease their critics, who say "all you fund is the next snapchat!!".

With this list, they can say "Oh we wanted to cure cancer, the people who wanted funding for it just got no skills!"

They actually already have startups working on cancer, like Bikanta (YC S14).
Yes their last batch startups were targeting pretty serious problems. I remember 2 of them were around nuclear energy so definitely relevant to the list.
you certainly do NOT need an MVP to get into YC. lots of people get in with just a compelling idea.

maybe i will write a blog post about this.

please do. in the last few years, the model for seed funding seems to have moved largely to having an mvp, if for no other reason than demonstrating technical ability.
You should. I was under the apparently mistaken impression that people who get into YC at least have a functioning demo, and generally have users already. So when my friend and I were applying, we limited ourselves to ideas for which we could create a semi-functional demo in the few weeks before the application deadline. We ended up getting rejected because of the idea that we chose, and rightly so, but I wonder what ideas we would have come up with if we had not felt so time constrained. (I am glad that we were rejected because I don't think that we were ready to start a company yet, but I am curious anyway.)

[Edited for clarity.]

"You shouldn’t start a company just because it’s on this list."
Was interested to see nothing mentioned about news & current events information startups. This seemed to be a re-occuring "problem worth solving" on YCombinator lists, and is notably absent.
Do you mean things like Flipboard, Circa, etc.? Not very surprising to see them absent on YC's list. Like the more recent waves of social networks, they don't offer much and just add to the noise.

Who will remember these companies in 10, 20, 50 years? Most likely no one.

Who will remember companies that solve problems related to healthcare, energy, food allocation? A lot more people.

There's much to like about this list. It's ambitious in a tangible and actionable way. YCombinator realizes that if we don't want there to be a second bubble burst in Silicon Valley, we need to reach escape velocity and leave the social networks and iPhone news apps behind. That's a solid trajectory for them to take.

No, I didn't mean like Flipboard or Circa. I also wouldn't expect much support for these kinds of things.

I meant companies that are trying to change how news is consumed and produced, not those that prettify how it is presented for final consumption.

PG outlined the problem pretty clearly in 2008[0]. Perhaps you believe the news industry is healthy and functioning in delivering accurate current events to world citizens as it is. I do not believe that that is the case.

I was thinking of companies like Grasswire or non-profits like Ushahidi and Standby Task Force for this category. I'm sure there are others changing this space significantly.

[0]-http://old.ycombinator.com/ideas.html (item 3)

Cool, I wasn't sure what you were talking about so your examples help.

I'm not sure that the news industry is healthy and functioning, but I do know that world citizens seem to be very happy living in a world of celebrity photos and memes and " listicles" these days. The fact that PG's examples are Perez Hilton and TechCrunch demonstrates that pretty well.

The only thing that has really changed news is that now everyone has a camera on their phone and can post footage of events on Twitter, Instagram, etc. That stuff does bubble up to the top when it happens- I'm not quite sure where we can go from here.

Put more cameraphones in the hands of oppressed citizens, sure. Besides that, I think the world of news is going to stay where it's been in the past couple years: ridiculously dumb websites for the masses (Buzzed et al.), sites with high quality content for extremely small niches (but a small niche of 10k people each paying $10 a year can easily support an independent journalists or two, so great), and cameraphone footage as primary sources for everything (which is wonderful- it's raised awareness tremendously in the recent years for things like police violence).

Appreciate your thought out reply.

>I do know that world citizens seem to be very happy living in a world of celebrity photos and memes and " listicles" these days.

Like they were happy using nokia 3600 phones before there were touch screens.

Listen, I'm not saying it's a guaranteed money maker or something; I'm saying it's a category of industry that could use improvement and attention from startups. It is poised for profound change.

>The only thing that has really changed news is that now everyone has a camera on their phone and can post footage of events on Twitter, Instagram, etc.

That's very true. I've found it quite interesting that ordinary citizens have been breaking stories before professional journalists could even make it to scene for a number of years now. Makes me think the industry could use a change.

I hope we could see more change than you predict, but wouldn't be surprised if you were right. I'll leave it at that.

EDIT: Cut an unfinished thought.

I'm glad the disrupt Hollywood rfc is now Hollywood 2.0, before it seemed needlessly antagonistic.

If anyone else is interested in Hollywood 2.0, hit me up (check profile). Tinj is reimagining content ratings, reviews and recommendations.

Two things I think are missing from the list:

1. It has often been commented that the next Google will come from the company who develops a palatable version "next generation TV". Hollywood 2.0 really covers only part of this.

2. A YC generator. YC emerged as an anomaly in the VC field and became widely successful. How can its success be replicated, both for US and in other countries. This was on a 2008 list that pg posted (http://old.ycombinator.com/ideas.html).

These new RFS are awesome. I hope YC help accelerate a few startups that doing these type of RFS. It would be game changing. I can see allot more investor interest in YC if a non tradition YC backed company based on one of these RFC makes it big.

I had my doubts about @sama but he is pretty much on the right track and and seems to be the right person for the job. They are fighting the typical SV stereotype about not funding big ideas. Go YC keep on disrupting!

> What comes after programming languages?

I've been working on this for several years, though a startup seems the wrong vehicle for it. I think the description in the RFS is misguided:

"We’re interested in helping developers create better software, faster. This includes new ways to write, understand, and collaborate on code, and the next generation of tools and infrastructure for delivering software continuously and reliably."

There's a blind spot in prose like this that gets repeated all over the place in our community: it emphasizes writing over reading. I think we have to start with reading. My hypothesis is that we need to reform the representation of programs to address this use case: I download the sources for a tool I use, wanting to make a tweak. How can I orient myself and make a quick change in just one afternoon? This is hard today; it can take weeks or months to figure out the global organization of a codebase.

You can't "deliver software continuously and reliably" until you rethink its underpinnings. Before the delivery problem there's a literacy problem: we programmers prefer to write our own, or to wrap abstraction layers over the code of others, rather than first understanding what has come before.

More on my approach: http://akkartik.name/about

Absolutely, and this problem is so profound because it's become part of the platforms we are supposed to deliver stable products on.

Software engineering won't exist as a profession until it really is turtles all the way down, and not a pig on a fish on a tiger etc.

> a pig on a fish on a tiger etc.

Is this a reference to something, or should I point here if I want to reference this idea?

I'm also surprised at this one.

The software fulfillment process has a lot of issues.

We are stuck in a local maxima and jumping the chasm to the next maxima with ideas like "what comes after programming languages" is really really hard.

Sadly, one of the biggest hurdles is self preservation because software developers don't want "software development accessible to the widest part of our society". I hate to say it, but there are Luddites among us.

So, I tend to agree that a startup is the wrong vehicle for this.

> I think we have to start with reading.

I agree with this point. People understand things differently. There should be multiple ways for people to read and understand software programs. Unfortunately, there is only one major way now and that is with source code.

I do think that tools like IFTTT are moving us towards more accessibility but it is a small step.

I like what you are working. Keep the conversation going.

(comment deleted)
> Sadly, one of the biggest hurdles is self preservation because software developers don't want "software development accessible to the widest part of our society". I hate to say it, but there are Luddites among us.

It's a strange form of Luddism that seeks to limit opportunities to integrate the existing skills of the labor force into the structure of production. We don't have much in the way of unions or guilds, so perhaps the only effective way to restrict the labor supply is to keep the tools user-unfriendly.

I'm pretty sure that our assumption that programming languages will look like programming languages in the future is sort of like the assumption that phones will always have buttons on them.

Once Apple and other companies showed what the world looks like when a phone is a giant touch screen + giant battery, phones with buttons become a niche, not the norm.

I don't know what the programming paradigm is that completely changes that, but I do know that I haven't seen it yet and everything we've done so far seems to completely miss the mark.

Someone is going to come along with some other radical assumption about what designing/implementing software really is about.

I know that it is not about static vs dynamic, functional vs. imperative, etc. like we've traditionally thought. Maybe it will be more like using Excel or Gmail. Maybe it will be more like flowcharts, or maybe just like sketching out a structure and the machine knows how to wire it together for you. Maybe humans won't be involved at all.

Speculation is endless, but nobody has had the iPhone unveil of new programming paradigms yet.

Speaking from personal experience, the thought: "Take away languages. Now what do I use instead?" can be paralyzing.

I'll suggest an alternative approach that might stimulate your neurons. Look back at the ways that your life is improved reading code today compared to twenty years ago. When I look back, the highlights for me are:

a) version control, and

b) automated tests

Forget all their benefits to the people writing code. For me, the guy with one afternoon to make a tweak to an alien codebase, it has been invaluable to have not just the current snapshot of a codebase but a story of its evolution so that I can see what the skeleton of the program used to look like in a simpler time, and gradually play enhancements forward atop it[1]. It has also been invaluable to be in situations where I can go, hmm why do I need _, why don't I just rewrite it as _, try it, and find a failing test with an enlightening name.

What's common to these two ideas is that they are additive. You don't have to give up programming languages. You just need new ways to share information between programmers besides just the code that runs "in production". My current favorite candidate for the next augmentation for codebases is logs. More info: http://akkartik.name/post/tracing-tests. If that whets your appetite feel free to get in touch. My email is in my profile.

[1] More details of how this helps: http://akkartik.name/post/wart-layers

I agree on readability as a prime area for improvement. Thats one of the things I tried to tackle in Obvious (http://retromocha.com/obvious/) but readability is a human/social/communication problem.

Programming as it is now is a 2 way communication mechanism, we are writing code for other humans to understand, but for a machine to translate into what we intend for the machine to execute.

So, your point of making code a better human to human communication mechanism is absolutely correct.

What I really wonder about is what set of tools could exist that could solve whole sets of low level problems that we are specifying now that we shouldn't. Sort of like, right now we have blueprints and so on, and then humans look at those and build a house. Yet, with 3-D printed houses, you feed a set of materials and specifications into a machine, and you get a house built for you.

What is the programming equivalent that would allow us to "3-D print" software, so to speak? For physical things, it seems to be the combination of 3-D CAD systems, 3-D printers, and maybe some thought about how things need to be designed to fit this approach.

I have no idea exactly, but I could see a future where instead of paying people to hand craft all the code, that a series of features, modules, structure, etc. are specified, and the software is just "built". There would be more effort in the specification, but less on the build.

I remember programming a Lego robot with this visual puzzle piece method as a kid. It was awesome. I have a feeling something similar already exists for general purpose programming. I can definitely see something visual-based that hides a lot of unnecessary details working for a lot of basic applications - at least to get the skeleton of an MVP up.
My guess is that one thing that future software will have is automatic generation of user interfaces.

I think "naked objects" or "apache isis" are the best examples we've got for that for now , but they are rooted in somewhat complex java code, instead of being rooted in an easy to use tool, such that lets the business analyst who had some course , sit with the client and fully define a running system , step by step. In some cases the auto-generated UI would be good as it is , and the system will be used as-is.

In other cases , we might need easy tools to customize the UI.

I saw apache is as mention.it nearly the same what i doing now.consider as code block-From database column can create application.Upon combobox figure come foreign key value.The reason i do this,client keep playing what if scenario form like this is this suppose to validate or not?Why code block instead of user define validation.They will some part wanted to customize triple field combobox filter.It cannot be done via user define column based rule.
The assumption that UI design must be done by hand is probably one of the most important "bottleneck" in software development.

When you think about it, the job of a designer is often quite systematic. You have some entities/data you need to communicate to the user, through whatever interface/device that's available to him. A touchscreen, a keyboard, knobs, LEDs, microphone, speaker, paper, etc.

When your "user" is a computer, JSON (while not perfect) seems to do the job as an interface. In the case of humans, JSON does a poor job at efficiently communicating information.

For humans:

- A calendar is better than "2012-11-05"

- A color is better than "#FF3300"

- An image is better than "http://example.com/image.png"

- A clickable link is better than "http://example.com/document.html"

The list goes on. We can easily generate a basic UI based on complex entities, and map specific types to custom/reusable templates if needed.

Now that your UI can automatically be generated from data, you can build an app (business model) once, and make it usable (and actually look and feel good/native) on any device. A smartwatch, a smartphone, a smarttv, etc.

Basically, the core of software development should be knowledge representation. Describe the world semantically (with RDF or similar technologies), and let the UI-compiler generate a UI for any given target platform, language, culture, user preferences. That's what responsive design should be all about.

What you're saying is reasonable, and there are lots of people attempting to make RAD systems. Unfortunately, they always place severe limitations on the kind of software that can be created with them, and hence none of them have become particularly popular.

It seems that there's something missing from all the existing implementations of your suggestion. Perhaps it is that the UI and data flow primitives that we have aren't flexible enough to express a lot of business models, thus requiring custom implementations.

Delphi, Visual Basic, FoxPro and Access were all extremely popular RAD tools exactly because they made creating a certain class of systems extremely easy.
I had the misfortune of using Visual FoxPro once upon a time. It was horrifyingly bad, but perhaps by that time (2002-2004) it was suffering serious impedance mismatch with the rest of technology which had moved on. Anyway, I wouldn't call it a good example :)

Regardless, that was kind of my point - all these systems are only good as long as you stay within their constraints. The unfortunate thing is that the constraints always end up being way too tight in practice.

I've really enjoyed your writing on your blog at http://akkartik.name which I found through your guests posts at Ribbonfarm. Have you been writing anywhere else about your work or thoughts about readable programs?
Thanks! No new projects/demos/prototypes yet beyond the links at the bottom of http://akkartik.name/about, but I have a half-baked project in the works. Let's chat more offline; I sent you an email.
That has got to be one of the most awesome mission statements I've read in a long time. Clear, directed, actionable, all good things.

FWIW I think you are exactly right, it made me sad that Google expected people to be 'useless' for anywhere from 6 to 9 months of their early employment as they tried to get their head around the code base and tools. Having the ability to eliminate that spin up time would probably triple their productivity numbers.

This is a great point. I am always struck by how there are so many times where, if I could sit down with the original program author for 5 - 10 minutes, I could understand more from that interactive back-and-forth than several hours of reading code in solitude.

This tells me it's not that understanding how that code works is intellectually difficult; rather it's discovering how it works is time-consuming.

It would be amazing if you could "interact" with the code about its structure and intent the same way you might interact with its author.

As it happens, I've been working on something like that. Still pretty half-baked, but send me an email and I'll show you what I have. Email in profile.

"There are so many times where, if I could sit down with the original program author for 5 - 10 minutes, I could understand more from that interactive back-and-forth than several hours of reading code in solitude."

Peter Naur wrote a paper in 1985 where he conjectured that this seemed to be a universal law. No matter how much documentation authors provided, new programmers still needed to talk to them. http://alistair.cockburn.us/ASD+book+extract%3A+%22Naur,+Ehn...

I always thought it would be cool to record audio the whole time the editor is open, and the programmer would just talk the whole time about his thought process. Then the audio would be broken up and indexed with the source code.

So you could choose to hear what the author was saying right when he was working on a certain area of the code. (You'd normally turn it off, but if you're really stuck it might be a good last resort.)

I do this with a notebook. When I'm coding I always jot down notes and thoughts. As long as you can remember the date when something was coded, you can see what I was thinking while writing it.

Has helped me figure out what the hell I'm doing many a time.

Could it also be that the structure and intent of the code is ambiguous even to the author? I often feel this way when reading code, and also writing code or explaining it to others....
It also doesn't help that very few projects bother documenting for developers. I believe some traditional UML tactics and other documentation could often not only help with on boarding developers but also lead to a realization of just how convoluted the structure is currently.
I think you're correct in that what you're working on comes before what comes after programming languages†; you're working on the penultimate paradigm. Being able to trace, visualize, give context to and zoom in and out of the relationships of code would be a significant multiplier in the way it will allow accelerated understanding of novel and forgotten code. The value of this can't be overstated. In key ways, which the smalltalk people are very diligent in making sure no one forgets, we've gone backwards in this area.

But are you sure the RFS actually disagrees with you? What you're working on covers 2/3 of what the RFS deems worth focusing on. Collaboration and understanding.

†I think it's clear what comes after programming languages. A return to their roots. Programming a computer today is like moving by telling every single muscle what to do. To make writing code easier we want to be able to do more with less, to have the code figure out from context what the best thing to do is. We want more intelligence in our compilers. It is telling how powerful the notion of AI is when so many world changing ideas (functional programming, OOP, search, Databases [influence goes: prolog -> datalog -> SQL]) are compromises, failed attempt and detritus of AI projects.

I think you're absolutely right. But the penultimate step is worth highlighting separately, the way the right lemma can render a proof obvious. Especially given how difficult a proposition this penultimate step is. It's like saying you want a better algorithm for multiplication when you use roman numerals.

So I'll stand by my statement that the RFS's phrasing is -- not wrong, but rather -- misguided as stated. Or maybe "misleading" would be better, but that carries connotations of malice.

With any improvement in programming language technology, we narrow the disparity between human and computer representations of logic. In it's simplest form, this is the premise of language designers.

The biggest difficulty with current languages is their reliance on absolute determinacy. Programmers must express in exact form what computations ought be performs, and the languages possesses no intelligence in themselves. I think this needs to change. Inference should have applications outside type declaration, and the vast knowledge base that is the Internet should be taken into account.

At this point, there are two promising pursuits that I've seen. First is Wolfram Language, which you've all heard of. The other is Escher, which enables "programming in analogies". It's on early stages right now, but I'd encourage you to check it out at https://github.com/gocircuit/escher.

The problem with analogy-based programming is the lack of determinacy. There are no guarantees when it comes to abstract, knowledge-based inference. And so many concepts in modern programming would have to be abandoned to make this shift. Unit tests, for instance, would lost value dramatically.

In the end, an analogy-based approach seems inevitable though, especially once natural language-based inexact. grow popular. Everyday speech is littered with ambiguities, and programming "languages" need to handle these. They can't throw compilation errors upon each inexact command.

I'm not as confident as you, but yes I've been watching Escher development for some time.
Declarative approaches (like answer set programming, or satisfiability modulo theories) revolve around expressing what the final result should look like, with no regard for how the result is achieved.
We already have the tools to deliver software continuously and reliably. They are called containers and virtual machines. The problem as usual is not with the technology. If you look back we had SmallTalk virtual machines some time ago that you could pause, ship over the network, and pick up where you left off.

Reading is not the issue as well because most code is terrible and it doesn't matter how easy you make it to read the code I'm still going to waste my time reading it. So I'd say that the problem again lies elsewhere. Few people have the aesthetic sense to write elegant code. It doesn't matter how many tools and abstractions you throw at the problem there are still going to be people writing terrible code.

Writing and reading code or doing anything else with it is in many ways like art. It is also like science and craft and a bunch of other things that require creativity. Even with the accessibility of paints and all the accompanying technology we still don't have the likes of Michaelangelo and Picasso being any more prevalent than they were around the time those guys were alive. Literature is another good example. We teach everyone to read and write but it doesn't matter how much money or technology you throw at it (ebooks, libraries, etc.) we still don't have any more great writers than we did a century ago.

This is not a technology problem. It is a culture and human problem for which you are not likely to find a technical solution.

I didn't say we need to teach people to write elegant code. See my examples at http://akkartik.name/post/tracing-tests. I take this perverse joy in coming up with ugly code that is suited to its surroundings, and I'm extremely well-suited for programming because when it comes to code our aesthetics are like George Costanza's instincts (http://en.wikipedia.org/wiki/The_Opposite).

I want programming to be like reading, with most people able to skim most article-length pieces of prose -- even if it's poorly written -- and get a sense for its global organization. That doesn't require teaching everyone to write like Shakespeare.

Good luck. I'm still not going to read terrible code no matter how easy it is. It took me a while to come to this realization but aesthetically unpleasant code is indicative of the author's abilities and without elevating the level of all programmers I don't see how making code easier to read is going to make much difference. Some tooling might make it easier/faster to come to the conclusion that some piece of software is not worth investing more time in but with enough experience that judgement is not hard to make. Note that LibreSSL was a fork and rewrite of OpenSSL. Even if it was easier to navigate OpenSSL it still would have been the correct decision to scrap large swaths of it because it was horrendous code, easy to read or not.
Thanks for the luck. We might be in violent agreement or disagreement depending on what code you consider aesthetically pleasant. Everyone can agree on the crap, but can you share examples of code that you liked that might help me triangulate on your aesthetics. Alternatively, I'd be interested to hear if my published projects are pleasant or not. To help you triangulate on mine: http://akkartik.name/post/readable-bad.

To reiterate, you're responding to things I didn't say. Code shouldn't have to be perfectly designed to be readable, and nobody should have to wade through utter crap either. Very often code starts out nice when it has one author or three, and gradually turns to crap as more cooks are added. I want to eliminate that dependency on author churn, to have it be beautiful or ugly based on the capabilities of the programmers involved, not on the difficulty they had understanding those who came before. To make progress on this project, I find it most valuable to utterly ignore aesthetics.

I don't think we are agreeing or disagreeing. I do want tools that make it easier to navigate and understand code and I also want cultural shifts in programmer communities that lead to better software overall. I'm just saying the communal aspect is more important than any given programmer's ability to navigate code but the two are obviously intertwined in complicated ways.

That article you linked to (http://alistair.cockburn.us/ASD+book+extract%3A+%22Naur,+Ehn...) connects the dots really well. Programming is really about building theories and then implementing them with computational building blocks and then transferring the understanding of those theories. Short of developing mind reading I think there is an irreducible complexity in that endeavor that is impossible to skirt around.

In light of that article I'd like to amend my comment about aesthetically pleasant code. Some programmers are good at structuring things so that the overarching theory is present throughout all code level structures. That kind of code is both aesthetically pleasant and easy to read. I don't know if this is some kind of special talent of if it can be learned but given that most software is a confused mess I'm willing to bet there is a large talent component.

Yeah, he may well be right and I might be totally barking up the wrong tree. But that just seems so depressing I can't help but tilt at this particular windmill. The hope is that his theory will become obsolete if the activity of programming changes radically enough.

I started out thinking you couldn't solve social problems with technical solutions. Now I think social problems arise in the context of configurations of technical energy barriers. Making something easier can make good behavior more or less likely to arise. So it behooves technologists to think hard about what they make easier. But this is getting abstract, and I need to show examples of what I'm trying, what I'm keeping and what I'm discarding. If you send me an email I'll show you what I have.

>>It took me a while to come to this realization but aesthetically unpleasant code is indicative of the author's abilities

Not necessarily. It can also be indicative of the circumstances in which the code was written. Even great programmers can write terrible code if they are stressed out or overworked. So you can't just look at the code they have written and jump to conclusions about their programming ability.

> most code is terrible... Few people have the aesthetic sense to write elegant code...

Elegant code does not necessarily mean readily understandable code (or "readable" code). For example, some Haskell programmers like writing extremely elegant code -- so elegant that you can base a whole new (elegant) branch of mathematics on it -- yet it is no more readable than, say, many early BASIC programs.

But why pick on Haskell? I've never seen Microsoft Word's code, but let's imagine it were the paragon of OOP design. Then, I'd like to add a feature similar to the spellchecker, that tests whether consecutive sentences rhyme. Now, I could probably find the spell-checking code rather easily, only to learn that it is attached to the main program via the most beautifully intricate plugin system -- with lifecycle management, runtime loading and unloading and whatnot -- that it takes me a few days only to learn that bit.

The point is that software is complicated, and very non-standardized. Code readability rests only in part on its structure, and a lot on how many "advanced" language features are used, the number of libraries used and their familiarity. You'll probably find "terrible" code that uses a couple of popular, mature libraries, that you're familiar with, much easier to understand than the most "elegant" polyglot codebase (written in both Python and Haskell, because, you know, the best tools were picked for each job) that makes use of 10 of the newest, shiniest libraries you've read a lot about on HN and always wanted to learn but never had the time to.

Totally agree. My 2 additional cents.

Most reasonably skilled programmers can read code. They choose not to. Cultural problem not technical one.

I've been in the industry a long time and the best codebases I've seen had a handful of things in common:

* They were written by highly competent programmers who all had an interest in doing a good job. * The code was neat, well-document, and sensibly structured based on agreed upon standards. * The programmers writing them weren't forced to inject changes faster than they could compensate for them.

That's it. Most of the disasters in industry are the result of extrinsic demands. People not caring or people. People documenting nothing. People under extreme deadline pressure hammering in something that then has massive, long-term design ripple effects on the rest of the codebase. Do this several dozen times and you're almost certain to produce a disaster and some point.

Therefore, most software problems have to do with people in over their heads or making changes haphazardly to meet deadlines. These cultural issues seem largely to stem from people thinking that writing software is a deterministic process - it isn't, and has more in common with chaotic systems than linear deterministic systems. Hell, I've written virtually the exact same piece of software twice at one company and each time produced both identical bugs and completely new bugs.

We would probably benefit more from understanding what software actually is and educating people about that than attempt to technologize away our problematic understanding of technology.</screed>

I am the founder a developer tools startup and I've thought a lot about the future of programming. To be honest, the developer tools market is extremely competitive ("everything must be free") and it is not for the faint of heart. That said, if anyone wants to chat sometime in the Bay Area about future dev tools and/or startups around them, I'd be happy to meet. (contact info at https://wukix.com/contact)
Hi Wes! I enjoyed your talk on Mocl at the Bay Area Lisp meetup last year.
Thanks! I hope there is another BALisp meetup soon. The recent Parallac thing was cool, although it clearly needed more Lisp :)
Emphasis on reading. In my experience writing good code or effecient writing/debugging of code only came after: 1. Learning to read the project code i.e. understanding idioms, structures, execution paths, project syntax+language 2. Learning to extrapolate i.e. anticipating answers or making good guesses for inevitable questions during code writing. Questions like where/when should I do this or where/when is this info I need actually available

Both those things literally only came after reading so much code! No shortcuts from the Dev environment (idea, docs) aside from navigation and search!

I just started a new job and have hopped into the first codebase I'll need to work with that I didn't write from scratch myself. I've just been pining for a way to browse through this code as easily as documents in a web browser. Maybe that's the wrong paradigm, but man, there's got to be a better way to read code that lends itself to understanding what's going on. Even though my IDE can "find usages" and I can set breakpoints and step through things, the breakpoints get hit so fast that it's hard to internalize things before hitting "play" again. But stopping for too long breaks the real-time nature of the system. Which I guess is too many words which essentially mean, "I've recently felt this pain, and I agree."
I recently had that experience as well... felt that the code was pretty terrible but didn't want to say anything as the new guy. Toiled at patching it for a month and a half before sitting down and having a talk with some of the more senior developers about my issues. Turns out that I kind of vocalized what a lot of people had been thinking and we rewrote it in less than half the number of lines in about 3 weeks. Not sure what the moral is here, other than that some code is bad.
Yes times 1,000!

This is what we're trying to address at Sourcegraph (https://sourcegraph.com/). 80% of programming is about reading and understanding code, not writing code.

Why don't existing tools focus more on helping people read and understand code--and, more broadly, collaborate on a development team? Things like:

* seeing everywhere a function or class is used, in context (like https://sourcegraph.com/github.com/joyent/node/.CommonJSPack... on the right side)

* seeing who at your company knows the most about an area of your codebase

* seeing the history of changes, in terms of functions/modules added, not just lines (like https://sourcegraph.com/github.com/fsouza/go-dockerclient/.c...)

* having a long-lived discussion about a module/class/function that doesn't vanish after a commit is merged or the file's lines shift around

So far, most of the innovation in programming tools has been in editors or frameworks, not in collaboration and search tools for programmers.

While there are great editors and frameworks, the lopsidedness is unfortunate because making it easier for programmers to learn and reuse existing code and techniques, and to collaborate on projects, can have a much bigger impact than those other kinds of tools. That's because, in my experience, the limiting factors on a solo developer's productivity are the editors and frameworks she uses, but the limiting factor on a development team's productivity is communication (misunderstanding how to use things, reinventing the wheel, creating conflicting systems, not syncing release timelines, etc.).

FWIW, I think this is absolutely fucking genius and everyone should check it out...

...but I can't give you money without Java/Scala support. Roadmap? Pleeeeease? =)

The site doesn't seem to list which languages are supported.
Currently it's Python, Go, Ruby, and JavaScript (node.js only; not client-side yet). Java is coming soon. It does say it on the homepage and the docs page. Where were you looking? We'll make it clearer.
Do the JetBrains IDEs support this?

Find All Usages and Jump To Definitions are the reason I spend 400 EUR on Resharper licenses, it makes reading code so much easier..

Brooks addresses this:

Perhaps the biggest gain yet to be realized in the programming environment is the use of integrated database systems to keep track of the myriads of details that must be recalled accurately by the individual programmer and kept current in a group of collaborators on a single system.

Surely this work is worthwhile, and surely it will bear some fruit in both productivity and reliability. But by its very nature, the return from now on must be marginal.

Tools will not solve the essential difficulties of software engineering.

Thank you for the initial posting, so much true. Brook's comment is a bit old and there usually evolve things to adress issues: His integrated database system is: The web, (project-)wikis, issue tracking, version control, (discussion&help-)forums, the code and comments in code. Anyways, it's true: Reading code often is a nightmare... but at least for me also because of over-abstraction/complication (done by IT guys/colleagues) and misdevelopments/trends/hypes (mainly done by the IT industry).
Very cool! This needs Java support and integration with IntelliJ IDEA.
I have similar needs to understand complex code base such as 5-20gb of Android platform code, so I wrote an webapp/site for that:

It lets you cross reference and document any language with gigabytes of code, e.g. Android platform code. Jelly bean ~9 gb of code.

Try it out: http://www.srcmap.org/s/sl.htm/p=android-4.2.2_r1

Sample Documents created from that app are here:

http://www.srcmap.org/p/1/4af293f91271/Android_Init_startup_...

http://www.srcmap.org/p/1/80c16319d25e/Docker.html

http://www.srcmap.org/p/6/4a88339ceef3/mtpd_source_code_stud...

http://www.srcmap.org/p/1/212c9a285186/Google_IO_2014____sch...

The ux is ok. A few gigabytes of code db running in a cheapest $5 instance of Digital Ocean.

The app is very simple ~8 mb of standalone binary, no external dependency do any other app/db.

What does the yc folks/alum think? Good enough to get into yc?
Who are you selling it to / what's your plan to grow any part of the biz?
For now, free for individual developers to help validate and get tractions, like to see if i can entice free higher level license with exchange for contents/sharings, Doesn't seem to be working.

I like to sell it as team/site license for large dev team in the future. The traction doesn't seem to be there yet.

Because my burn rate is < $150 per year, I have ~1500 users / month come to the site from pure google search alone.

I am just slowly experiment with different features/msg/channels.

I feel very strongly about this and have very crude ideas about what I want (e.g., expressed here: https://news.ycombinator.com/item?id=8283025).

Would love to get in touch with you.

While interesting - the thing that surprised me the most was not seeing "security" (take that for what you will) on the list. Given the year of disclosures, the heartbleed incident, and all other sorts of things - I feel like this field is ripe for a disruption.

Between the staid companies that have been providing tools for decades that can be better, the tools that don't really exist that need to - I think we're ready. Similarly, with the security world starting to consolidate (FireEye buying Mandiant, likely goings public of companies like Rapid7 and TripWire), I'd think it's an ample rate/return option.

> Internet Infrastructure

> We can’t imagine life without the Internet. We need to be sure it keeps working–this includes everything from security to free and open communication to infrastructure.

I see that as internet/communication specific. But with meshnets, darknets, increasingly privatized communication networks and the like, I see these as two separate callouts.

The YC one is 'internet specific' - at least as I read it.

Yep, I was surprised too. We submitted our infosec company and hopefully there'll be others who are doing the same thing. There aren't enough easy to use security tools, maybe one of us will be caught in the net.
Awesome, good luck!
I see what you did there: "We deserve a simpler, more elegant solution for a more civilized age"
>Specifically, lightweight, short-distance personal transportation is something we’re interested in.

Doesn't this already exist, in the form of the bicycle?

Many people with reduced mobility (e.g. my grandmothers) can't ride them, though. There's space for alternatives.
The bicycle is a 80/20 solution, but it's hard to make VC-level money in the business. Plus, a few more decades of high-tech short-distance personal transportation and we'll all look like in Wall-E and the bicycle will become 20/80.
Don't dismiss it out of hand. The world bicycle market is $70B/yr. A Silicon Valley company, Specialized, makes $500M/yr revenue. If you had the next thing that millions of people would commute short distances on, there's more than enough potential for VC.
Yes, this one was licked in 1885. The problem is not something amenable to a startup company. It's a huge entrenched cultural preference for terribly inefficient vehicles and development patterns that go with them.

Bicycles are not an 80/20 solution, they're a 99% solution, with the appropriate kind of bicycle and accessories. You can haul all kinds of crap - construction equipment, children, appliances, etc. - with a bicycle.

There are many other kinds of bicycles that make them accessible to people with reduced mobility: tricycles, hand-cycles, electric assist. Further - active transportation also counts as exercise and physical therapy, even further reducing the number of people who end up with reduced mobility in the first place!

I don't really know what a startup could possibly do in this area that's not already being done by the dozens of active transportation advocacy organizations at every level of society.

Everyone in this thread keeps bringing up the same argument about these catagories: "The problem is not something amenable to a startup company."

Isn't that the point of these requests? To inspire new and innovative ways of addressing a small (or, a chance at a larger) piece of these huge problem spaces?

It doesn't matter if you don't think these are realistic requests. YC is just trying put out an image that it wants to invest in historically "hard" market startups.

(As an aside, I'd say that bikes are not a 99% solution until the majority of people aren't afraid of riding them around cars.)

How do you deal with weather? It's certainly a lot more comfortable to drive somewhere in pouring rain than it is to bike, even when well prepared. And that preparation takes time and effort. Not to mention trying to bike in winter.

I really really hate cars, but I can see why people prefer them.

In cities I can imagine an apparatus not unlike a retractable roof in function, spanning the gaps between buildings. It would capture rainfall and prevent flooding while keeping citygoers dry. The "rooves" themselves would channel water as would an aqueduct, possibly reorienting themselves to better handle local downpours. The underside would need to emit light, whether transmitted natural light or otherwise.

Such a system would bring ancillary benefits of improving travel safety in the city, and reducing the need for road maintenance and vermin control (esp. mosquitoes).

I imagine the biggest technical challenge to be durabiity: The need to be resilient against hail, high winds and flying debris. And should it fail at the worst time ... an awful thought! But levees are a similar technology in that regard.

Or in the extreme heat you can get during the summer. Not fun showing up to work drenched in sweat because you biked in.
Not long ago a brilliant inventor, Dean Kamen, created a startup that tried to solve this. The product received considerable hype before launch. When Steve Jobs saw a prototype, he reportedly said: "This will change the way cities are designed."

The final product -- Segway -- didn't, though. I'm not sure anyone is willing to try again soon.

Don't see your Jobs quote in this account, although there are many more skeptical quotes, such as "Jobs said he lived seven minutes from a grocery and wasn't sure he would use Ginger to get there."

http://hbswk.hbs.edu/archive/3533.html

Looks like the Jobs quote was a rumour, at least according to BusinessWeek in 2001:

"Other stories claimed that Apple Computer co-founder Steven P. Jobs got an early peek and made the wacky prediction that cities would redesign themselves around the device. (Jobs denies he ever said this.)"

http://www.businessweek.com/stories/2001-12-16/commentary-gi...

But then, I wrote "reportedly", and it was indeed widely reported at the time :)

The bicycle already exists, but I read that section assuming ideas related to it like:

- bike/scooter/... share programs

- new designs for bikes to improve safety, could work with the existing market

- while you're at it, new additions to other forms of transportation etc. to improve safety too.. even if a lot of it is policy, but even things like self-driving cars fall into this category

- new designs for bikes to improve ease of use. I don't ride bikes because I have never found any seat and any amount of cushioning that isn't immediately painful, while bikes that accommodate that (like recumbent bikes) are typically not as portable

Some of this is outside the scope of YC or it's definitely something else like policy, but just a thought. I especially like the idea of improving rideshare programs, and that is very doable. I was going to try out SF's program but there's no bikes near me since the company behind the rideshare program went out of business. :(

I'd like to see a diff between this and the previous RFS(s). How often has this list been revised, anyway?
Last time was July 2014.
There is a minor typo in the "Government" section: s/INternet/Internet (or just "internet"...)
It's a fantastic list; I'd like to comment on how some of the problems are already solved (outside the U.S.) or not cast properly.

> Healthcare in the United States is badly broken. We are getting close to spending 20% of our GDP on healthcare; this is unsustainable.

That's mostly a policy problem, not a technology problem. Countries with single-payer healthcare spend massively less on it per % of GDP than the United States with its pro-profit healthcare system, and American doctors and healthcare corporations end up being fabulously more rich than in those countries. (And they still have private healthcare, like in Sweden, which competes with public healthcare organizations.) The other reason healthcare costs are getting higher is that people are getting older and thus more sick. That's a generational bump, there's very little we can do about that. Not that I'm opposing the types of ideas YC is after in this sector (preventative medicine and better sensing/monitoring), just that the premise is wrong that it's a technological problem.

> At some point, we are going to have problems with food and water availability.

That's because we dedicate most of our water and land resources to feeding cattle that we then eat. Innovations that will have the most impact in that sector will involve weaning people from animal products. Stuff like Beyond Eggs and lab-grown meat.

> It’s not a secret that saving money is hard, and that people tend to be bad at doing it. The personal savings rate has largely been falling since the early 80s.

Sure, some super-low-cost index funds would help, but the main problem here is two-fold: 1) real incomes are stagnant, due to government policies favouring corporations and 2) government/pension funds are much better at providing good ROI on investment than individuals can. Once again policy change is much more likely to have a massive impact than trying to improve the individual worker's investment returns. Collect retirement contributions at the source, and have the best investors in the country manage them. Without taking a profit for themselves. It's done elsewhere.

I think startups can prevail in terms of business model and not just technology.

Look at Uber, Uber has an app, but the real issue in Uber is creating a marketplace, managing a brand, managing relationships with drivers, fighting the taxi companies, etc.

Innovations in how health care is organized and delivered are very possible.

As for food and water I'll say that the case for vegetarian and veganism is often overstated. Out here in upstate New York we have plenty of water and plenty of hillsides that are good for grazing and not for tilling. In other places the situation is different, but in some places animal agriculture is part of the solution and not the problem.

I think both the single payer and pension arguments miss the fact that the US is at a hub of a system. Inflated drug prices in the US finance drug development and cheaper drug prices in the ROW. Similarly, what a government run pension fund can attain in another country is unrelated to what one can attain in the US.

I agree with the part about stagnant real incomes, which meshes with the rising cost of health insurance, housing and college, but I don't think professional pension fund managers do that much better than individuals in the long term. They may avoid stupid mistakes like selling all of your shares in the winter of 2008-2009, but the real advantage pensions have is that they can borrow from peter to pay paul, at least in the short term.

I also thought the Financial Services section was rather tame and un-disruptive.

The problem is not that it's hard to find good ways to save and invest, although that is a true statement. The problem, at least for most people in the US, is that besides Social Security, "personal saving and investing" is currently the only available way to secure one's future/retirement. An additional, related problem is that the only personal saving and investing option available to most people is "buy one or more Financial Services products": Savings accounts, stocks, bonds, funds, 401(k)s, Roth IRAs, even pensions which are long gone. They're pretty much all the same scam: Hand your own personal money to someone else, and in 50 years, it may end up bigger or smaller or the same, depending mostly on who you chose to give it to, and other factors totally outside of your control. If it ends up bigger, you chose wisely and/or got lucky, and deserve to retire comfortably. If it ends up a lot bigger, you chose brilliantly and/or got really lucky, and deserve to retire in luxury. If it ends up smaller, you chose stupidly and/or got unlucky and deserve to eat dog food when you're old.

Can we get away from "use your own personal money to buy a risky financial services product" being the sensible way to secure one's financial future? Now that would be a worthwhile problem to solve.

Not to mention the fact that "Saving and Investing" is only available to people who can actually afford to save and invest (which is yet another problem that desperately needs solving).

Curious, what would that look like?
I dunno. Looks a lot like basic income, but it isn't normaly tagerted at retirement.

Or maybe ryandrake had a more "tax the rich" goal, with the usual set of problems. (It's usualy much better to solve the problem that people got rich exploiting [moraly or not], instead of simply taxing them.)

Don't know what it would look like, but for sure it would be ideal if it could be solved by the private sector without policy changes (i.e. taxes).
A Roth IRA and a 401k are investment vehicles - stocks, bonds, funds are investments. I don't think you quite understand investing which is why Financial Services needs to be disrupted.

You claim it's all a scam but the market has been going up and up over the last 100 years. The scam lies with the advisors and products that charge high fees and are not transparent. Companies like Betterment and Wealthfront are changing the game buy making these fees transparent and putting you in a good diversified portfolio.

The second problem is that like you mentioned saving and investing is only available to people who can afford to save. This is the same thought that 85% of millennials who don't save feel but the reality is, you can. There is just no easy way to do it...yet

https://www.wellsfargo.com/press/2014/20140610_millennials http://stockcharts.com/freecharts/historical/djia1900.html

Look at the top causes of bankruptcy...

#1 on that list is medical costs.

To quote the article: http://finance.yahoo.com/news/pf_article_109143.html "A study done at Harvard University indicates that this is the biggest cause of bankruptcy, representing 62% of all personal bankruptcies. One of the interesting caveats of this study shows that 78% of filers had some form of health insurance, thus bucking the myth that medical bills affect only the uninsured. "

So yea, fixing healthcare will also fix a lot of America's debt problem. There are only a couple ways to do that - decrease the costs or have a single payor. We've tried the 'decrease costs' part with college funding. That didn't work, because any time we subsidize funding to colleges, they request more money. College debt is huge now. So going the medical route and just subsidizing a broken system isn't going to fix it. It will only make the problem worse. We need to have medicare for everyone, and it should start before birth. If someone wants a college education, allow them to get it, only paying to re-take classes. That would wipe out most people's debts.

(comment deleted)
Note the Harvard study is from 2010. The Affordable Care Act (Obamacare) passed in 2010, started going into effect in 2014, and bans lifetime caps on health insurance payouts. The intent was to address exactly that problem--medical bankruptcies.

So the big policy change the parent asks for has already happened, and the U.S. will gain universal insurance coverage over the next couple years.

If we want to see healthcare costs drop in cost beyond that policy change, it's almost certainly going to need to be driven by technology in some way.

"That would wipe out most people's debts."

Yeah, but people being is debt is great for the part of the financial services industry that they owe money to, often with ridiculous and crippling interest rates (compare to the interest rates these players get from the government when they borrow, which is essentially 0% -- which is nice, for them). This is especially true when it comes to student debt, which can't ever be discharged. And these companies have a ton of political power (money begets power begets money).

Which all is to say I agree with frandroid. The root problem here is our political system is almost completely broken due to lobbying and lack of meaningful campaign finance laws and the best way to actually fix some of the issues listed here is fixing those core government/policy problems, but those problems aren't technical in nature and won't be fixed with a Ruby on Rails app.

Software may be eating the world, but if your only options for government leadership are (to put it in South Park terms) a "turd" or a "douche", both of which are controlled by big money whose interests are at odds with the overall populace then there are a lot of core problems that there will never be a software fix for (short of the call for better AI going really well and having a benevolent SkyNet take over).

I came here to say exactly that. The new projects YC wants to see are great and are defiantly problems worthy of effort, but the more pressing problems seem structural at the moment.

I also agree with your final conclusion ("skynet") and think it is inevitable given time. Remove human corruptibility from governance. Efficiency... it is selected for.

>That's mostly a policy problem, not a technology problem.

Yep. You're not going to fix a problem caused by privatization with more privatization.

Also, a lot of this prevention can be tied back to diets, not a lack of sensors.

> Countries with single-payer healthcare spend massively less on it per % of GDP than the United States with its pro-profit healthcare system

Countries with universal coverage through other-than-single-payer systems do this, too. (every OECD country other than Mexico and the US has universal coverage -- but not all of them through single-payer -- and every OECD country spends massively less per GDP, let alone per capita, on healthcare than the US does; to the extent that many of those that do have public single-payer universal systems pay less in GDP for that than the US does considering public costs in the US alone, without considering the slightly-higher private costs in the US.)

And two big pieces of the cost savings are:

1 - using buying leverage to negotiate prices, something republicans owned by the drug and device industry specifically banned (see eg [1])

2 - rationality about end of life care, which we spend a lot of money on -- 20%+ off the top of my head. As many doctors have shared, they often choose not to aggressively treat terminal illnesses and focus on quality of life. Unfortunately (remember Sarah Palin's death panels, and let's all thank John McCain for bringing that snowbilly grifter to the national stage), attempts to do things like pay doctors to sit down with patients and have end of life conversations, explaining what is happening have been successfully yet stupidly fought off. Whereas when doctors talk about how they die, they often chose to undergo very little treatment [2,3]

   Almost all medical professionals have seen what we call “futile care” being 
   performed on people. That’s when doctors bring the cutting edge of 
   technology to bear on a grievously ill person near the end of life. The 
   patient will get cut open, perforated with tubes, hooked up to machines, and 
   assaulted with drugs. All of this occurs in the Intensive Care Unit at a 
   cost of tens of thousands of dollars a day. What it buys is misery we would 
   not inflict on a terrorist. I cannot count the number of times fellow 
   physicians have told me, in words that vary only slightly, “Promise me if 
   you find me like this that you’ll kill me.” They mean it. Some medical 
   personnel wear medallions stamped “NO CODE” to tell physicians not to 
   perform CPR on them. I have even seen it as a tattoo. [2]
This doctor summarizes his choices as

   my physician has my choices. They were easy to make, as they are for most 
   physicians. There will be no heroics, and I will go gentle into that good 
   night. [2]
A different article

   Research shows that most Americans do not die well, which is to say they do 
   not die the way they say they want to — at home, surrounded by the people 
   who love them. According to data from Medicare, only a third of patients die 
   this way. More than 50 percent spend their final days in hospitals, often in 
   intensive care units, tethered to machines and feeding tubes, or in nursing 
   homes. [3]
There is almost always something that a doctor can do, but patient comfort is approximately priority F.

   More typical was an almost eighty-year-old woman at the end of her life, 
   with irreversible congestive heart failure, who was in the I.C.U. for the 
   second time in three weeks, drugged to oblivion and tubed in most natural 
   orifices and a few artificial ones. Or the seventy-year-old with a cancer 
   that had metastasized to her lungs and bone, and a fungal pneumonia that 
   arises only in the final phase of the illness. She had chosen to forgo 
   treatment, but her oncologist pushed her to change her mind, and she was put 
   on a ventilator and antibiotics. Another woman, in her eighties, with 
   end-stage respiratory and kidney failure, had been in the unit for two 
   weeks. Her husband had died after a long illness, with a feeding tube and a 
   tracheotomy, and she had mentioned that she didn’t want to die that way. But 
   her children couldn’t let her go, and asked to proceed with the placement of 
   various devices: a permanent tracheotomy, a feeding tube, and a dialysis 
   catheter. So now she just lay there tethered to her pumps, drifting in and 
   out of consciousness. [4]
And finally -- you should read all of [5], though it's heart-wrenching -- many terminal patients don't want to be aggressively treated when outcomes and the experience are fully explained. A close family member had to make similar choices and chose to die at home. The surgeons and oncologist where happy to keep going, but he was dying, and nothing the doctors could do would change that. They could onl...
But those systems tend to look like a "single-payer donkey with a free-market tail stuck on." The government decides the content of the basic packages, funds them for the poor, etc. If that sounds exactly like the ACA, you're correct, but you may have missed a very subtle and very important distinction -- take a closer look.

Page 6 of

http://www.commonwealthfund.org/~/media/Files/Publications/F...

gives a very thorough overview.

A friend of mine ran across this in Switzerland. It has a nominally free-market system, but when he moved there, he ended up automatically enrolled in a plan without doing anything at all. He was remiss in reading and translating all his mail upon moving there, and after some months of inaction: 1) he was signed up to a default insurance plan; 2) which was partially subsidized based on his estimated income; and 3) he was billed for the remainder. Nominally private-sector, but still quite state-supervised. There is a minimum standard for plans, you must have one, and subsidies ensure that everyone can afford it. Unlike Obamacare, the "must have one" part is not enforced by fining you $700 on your taxes, either, but rather by actually signing you up for one.
This is how vehicle liability insurance works in Sweden. You must have it, and if you don't, the government will just sign you up for a government-run default insurance pool and bill you for it. Certainly beats having to have "uninsured motorist insurance"...
Is there a practical difference between being billed for a plan you were automatically signed up for and being assessed a tax fine?
Well, in the first case you're actually enrolled in a health-insurance plan, whereas in the second case you aren't. This solves many problems; for example, everyone who visits a doctor's office or hospital can be assumed to have insurance coverage, so those institutions aren't left with the mess of what to do with uninsured patients.
> But those systems tend to look like a "single-payer donkey with a free-market tail stuck on."

I wouldn't use either of the terms "single-payer" or "free-market" in describing systems in which there are multiple private sector health insurers (payers), and it is mandatory for individuals to purchase a plan from one, with highly regulated plan provisions and operations.

They don't much look like "single-payer" anything, and don't very much look like any "free-market" bit has been stuck on (there is a market component, but its not free.)

> If that sounds exactly like the ACA, you're correct

The ACA is similar in outline, but the differences aren't particularly subtle (the ACA's isn't universal; the poor, elderly, and disabled -- rather than being subject to the mandate and operating through the same market, potentially with a public subsidy, instead are directed to one [in some cases, both] of two completely separate public insurance systems, etc., etc., etc.)

"That's mostly a policy problem, not a technology problem."

That's the point though: the right insight might provide a technology solution to what everyone could only think of as a policy problem.

Water will be a serious problem, if I remember correctly Jordan has to import potable water. I'm sure they would be interested in any ycombinator ideas, and the government of California.

Where I live there is an abundance of crystal clear drinking water being wasted by fracking to sell LNG at bargain basement prices.

> That's because we dedicate most of our water and land resources to feeding cattle that we then eat.

As a farmer, I'm struggling to picture how we could change that land utilization in a significant way without technology to enable it. It's not quite as simple as consumer desires, although you are right that changing consumer habits changes the flow of money and where it is invested which would also spur on the necessary technology, presumably.

From someone who is not a farmer and doesn't know so much about this, for example could we grow vegetables and feed them to humans directly, rather than feeding grains to cattle?
That's probably a good idea, but it's worth noting that about 30% of the Earth's land surface is too dry for crops, but works fine for pasturing cattle.
I don't really think the issue with with grazing cattle on land that's suitable for it. I think the issue is that we're raising cattle in places that _arent_ suitable for it.

Take for instance the factory farms which have to constantly ship food in to feed the cattle. Another example is deforestation to create fields for cattle to graze.

I think the OP is right, we need to convince more people that beef is not a sustainable food with the rate at which we consume it today.

The problem is our taste for grain (and alfalfa) fed meats.

People probably wouldn't eat as much meat as they do now if it were from free range, non-grain fed animals.

I've been trying to feed vegetables to three small humans. Sometimes it works, but sometimes the humans seem to reject them and it fails.
Agreed, I'm a Canadian living in the bay area, and I recently broke my collar bone in Canada. I went the the emergency room in Canada and again, when I touched down in the USA.

The room in Canada was paid out of pocket (because I'm not a resident) and cost $600 for 1 x-ray a consultation with 2 doctors and a room for the night, and another $30 for the pain meds (morphine)

The 60 minute consultation I had in the US was $150 co pay, which if I had no insurance would have been $2000 Which got me an x-ray and 15 minutes with a doctor and another $10 for "prescription" acetaminophen. (aka overpriced over the counter Tylenol)

Doctors aren't the problem, it's the insurance companies. I don't see how it's a technology problem as much as a political will (and maybe stubbornness in believing America is always the best even when it's not). The best we can hope for is technology can help by gathering political will.

I'd love to be proved wrong.

Have any previous RFSes been filled? Have any been successful?