I don't think Daniel's point is that Chat is generically a clunky UI and therefore Cursor cannot possibly exist. I think he's saying that to fully specify what a given computer program should do, you have to provide all kinds of details, and human language is too compressed and too sloppy to always include those details. For example, you might say "make a logon screen" but there are an infinite number of ways this could be done and until you answer a lot of questions you may not get what you want.
If you asked me two or three years ago I would have strongly agreed with this theory. I used to point out that every line of code was a decision made by a programmer and that programming languages were just better ways to convey all those decisions than human language because they eliminated ambiguity and were much terser.
I changed my mind when I saw how LLMs work. They tend to fill in the ambiguity with good defaults that are somewhere between "how everybody does it" and "how a reasonably bright junior programmer would do it".
So you say "give me a log on screen" and you get something pretty normal with Username and Password and a decent UI and some decent color choices and it works fine.
If you wanted to provide more details, you could tell it to use the background color #f9f9f9, but a part of what surprised my and caused me to change my mind on this matter was that you could also leave that out and you wouldn't get an error; you wouldn't get white text on white background; you would get a decent color that might be #f9f9f9 or might be #a1a1a1 but you saved a lot of time by not thinking about that level of detail and you got a good result.
I don't know why everybody thinks Microsoft Word doesn't have Reveal Codes. They have it; it's called Reveal Formatting; it has mostly been there since version 1.0 which I remember installing from 100 floppy disks in college in 1989.
A member of that team told me that for much of the project the implementation of the function to calculate the height of a line of text, which is a very complication operation involving fonts, sub- and super-scripts, etc., was implemented as "return 12;" (that was the entire body of the function) and it was marked as "DONE". With a bug of course but we can fix the bugs later
Sorry, Prashant, you lost track of the plot of the story somewhere along the way.
(creator of FogBugz, here)
FogBugz won and Jira won, but they were playing different games.
I wanted to make software development better for programmers. When I started creating Fog Creek Software in 2000 programmers were treated like typists. They were not paid very well (my starting salary was $33,000). There was almost no thought around how software should be developed. Companies that scored high on the Joel Test[1] were almost unheard of.
The LAST thing I wanted to do was make another tool of oppression for management to impose gantt charts and deadlines and strict rules about who has to sign off on things.
I set out to make software development better for programmers by blogging[2] and by building a company that would be a great place to work[3].
In 2000 the only way to do that was to bootstrap it. With a team of four people we couldn't build anything complicated. We started with bug tracking software because at least we could touch one aspect of programmers' lives with our philosophy.
FogBugz was designed for smaller collegial teams of people that wanted to work together effectively and needed a clean and simple way to track issues using the smart workflows that small, professional teams like to use.
It was remarkably successful and profitable from 2000 to today. We've never stopped working on improving it, but we also have never abandoned the market of small collegial teams of smart people.
By contrast, Jira was designed as "Enterprise Software" with features to help managers impose specific workflows on teams. Selling Enterprise software is a lovely, profitable business and Atlassian has great success selling to large organizations who ignore FogBugz, but it's the opposite of what I wanted to do. Anyway Atlassian is going public with this enterprise software, good for them, I'm sure they're going to enjoy their well-earned private jets.
But FogBugz was the means, not the ends, and at Fog Creek our ambition was not to be the world's greatest bug tracker software company, it was to fix things for developers. So we kept plugging away at other ideas. Some of them were kinda dumb. Some were moderate successes.
Two of them, Stack Overflow and Trello, were huge hits and spun off into separate companies. Stack Overflow, thanks to Jeff Atwood's inspired leadership, has had more impact on making software development better for programmers than any bug tracker ever will. Trello has grown as popular in three years as Jira grew in 15 years.[4]
Neither of them would have been possible if we didn't have the cash cow of steady FogBugz profits. That's what bootstrapping is, folks! You build one thing and use it to build a bigger thing.
In the meantime I think the world has figured out that programmers are writing the script for the future that everybody is going to live in, so conditions have gotten better. In big cities employers are falling over themselves to invent new ways to pamper and delight their programmer employees, with the massages and the sushis and the dog yoga. We programmers built ourselves hundreds of amazing tools, from github to npm to ci tools, build tools, IDEs, code refactorers, etc. etc. that make programming a million times better than it was in 2000, and bug tracking is just a slice of that pie and not a particularly important or interesting one.
But that said, FogBugz is still very popular and very profitable and thousands of teams use it every day, and we're still reinvesting those profits in making it better and in developing new products to make the world better for developers, and even though it doesn't support pointy-haired micro-managers and doesn't allow you to create a custom workflow requiring that a VP-or-higher sign off on bug reports, there are still small, collegial teams of smart developers who have figured out that this is how they want to work.
I don't know why people keep doing this startup every two months. Every two months somebody tries it and then discovers why it doesn't work.
For almost all the smaller buildings in New York (non-professionally managed), which is where you see these middlemen brokers:
* The brokers are given an exclusive by the landlords because the landlords are not professionals and often not in New York City. They don't want to do any work, they want the brokers to do the work of listing the apartment, showing the apartment, and checking the qualifications of the tenant.
* The landlord has to give the broker an exclusive otherwise the broker won't do the work, because the broker needs to get paid.
* Although the broker fee (normally 15% of first year rent) seems expensive and even extortionate to the typical fresh college grad renting their first apartment, the brokers as a whole are not making very much money, because they have to do an awful lot of work to get the exclusives (marketing themselves to landlords, so to speak) and an awful lot of work to coordinate keys, show apartments, etc. It is easy to see this because there is massive turnover in the broker business and almost all of the rental brokers you see in New York charging "extortionate" fees are, for the most part, broke.
* Which is why they seem so slimy: they're kinda desperate.
* A ton of apartments in New York are still under some form of rent control, especially the cheap ones in small buildings that kids want. That means that the maximum rent is set by law. So even if a tenant MIGHT be willing to pay a higher rent if they didn't have to pay the brokerage fee, they can't. The landlord of a $1800 rent stabilized apartment is going to get $1800/month whether they use a broker or not. So for this landlord, the broker is paid for by the tenant, and might as well be free. Considering how much work they do, and how much they charge, zero, it's a great deal for the landlord.
So every time one of these fresh-eyed college grads shows up in New York, decides that the rental brokers are making bank and need to be disintermediated, and writes an App that will Connect the Landlord Directly to the Tenant, no landlords sign up for it. The bottom line is that the brokerage function is not ripe for disruption because, slimy as it seems, there's just not that much money being made.
If you want to help, post this patent application to askpatents.com and get some feedback on prior art published there that a patent examiner can find.
This wouldn't be the first time Uber has tried to patent something obvious (http://patents.stackexchange.com/questions/5900/mobile-taxi-...) and I'm sure that they will keep whacking away at bad patents until one slips through. There's very little cost to them to file, and if they are lucky enough to get a bad patent accepted, I'm sure they'll be delighted to use it to block competition.
Right. It's not so easy to pull off for someone bootstrapping (but then again, rich players / people with audiences / people with social capital will always have an advantage, this is no different)
The only business models I want to work on any more have some mass-market component that is absolutely free, and a niche companion product that makes money off of the exhaust fumes of the mass-market component.
The last two businesses I started are Stack Overflow, which is free, where the careers business on the side makes money on the small fraction of Stack Overflow users who are looking to get better jobs, and Trello, which is free, but the business of providing administrative tools to large organizations using Trello can sustain the whole business.
This is more than just "freemium" or "advertising-supported." Freemium and Ad-supported business models are special cases of this general model. The real insight is that the free product has a chance to reach an enormous audience which provides distribution/advertising/marketing making it trivial to go to market with your paid product.
What Marco is reporting here is that the old-fashioned "make something and get people to pay for it" business is much harder to pull off and likely to always be left in the dust by someone making the same thing for free, getting 100x the user base, and getting 1% of them to pay for some value added feature.
You can filter by user in Trello... even using keyboard shortcuts! It's right on the Filter menu, and the handy "q" keyboard shortcut filters to your own cards.
But also not something you need to buy. We're working very hard to make sure everybody understands that Trello is free and will always be free.
With that, we have to make money to support the development and servers. Our ultimate goal is that the 1% of people who get the most value out of Trello will pay us, and that will collectively bring in enough money to pay for the whole operation.
The people getting the most value out of Trello are organizations, and super-fans.
The organizations pay us by buying Trello Business Class (https://trello.com/business-class), which gets them advanced administrative features that organizations like to have.
The super-fans are people who really just want a way of showing their love for Trello and supporting the company, and that's who Trello Gold is for. They show us some love by either (a) paying us or (b) referring friends to Trello, and in exchange we give them some cute stickers and board backgrounds and a little crown thing on your avatar so they can show all their friends how cool they are.
We actually thought of calling it "Trello Fan Club."
Either way, the long term goal remains to keep Trello 100% free, but still have a way where the 1% of people who get the most value out of it can pay us. For those 1% it's an easy sell. There are people running their businesses on Trello and they've told us that if we sold a brown paper bag called Trello Brown Paper Bag they would buy it, just to support the software they love and make sure it has a future.
If you asked me two or three years ago I would have strongly agreed with this theory. I used to point out that every line of code was a decision made by a programmer and that programming languages were just better ways to convey all those decisions than human language because they eliminated ambiguity and were much terser.
I changed my mind when I saw how LLMs work. They tend to fill in the ambiguity with good defaults that are somewhere between "how everybody does it" and "how a reasonably bright junior programmer would do it".
So you say "give me a log on screen" and you get something pretty normal with Username and Password and a decent UI and some decent color choices and it works fine.
If you wanted to provide more details, you could tell it to use the background color #f9f9f9, but a part of what surprised my and caused me to change my mind on this matter was that you could also leave that out and you wouldn't get an error; you wouldn't get white text on white background; you would get a decent color that might be #f9f9f9 or might be #a1a1a1 but you saved a lot of time by not thinking about that level of detail and you got a good result.