spolsky
Joined 19 years ago
Joined 19 years ago
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.
https://msdn.microsoft.com/en-us/library/office/gg615596(v=o...
(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.
[1] http://www.joelonsoftware.com/articles/fog0000000043.html
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.
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.
Co-founder of Fog Creek Software (the people who bring you Trello, FogBugz, and Kiln)
Mostly retired writer of Joel on Software.
Find me at @spolsky, joelonsoftware.com, and [email protected].