Although I’ve read this probably a dozen times. What I think about this today, as I’m about to reviel my next project is that it’s so crazy how things evolved for open source. Nowadays people compete with companies and having an announcment like this usually includes :
- website explaining as a pitch what is better about your software
- ready to use examples and templates to support your claim
- branding with a logo that makes you look more professional
- issue tracker
- github repository ( even mirror of yours )
- bugfree software ready for production from day one.
And many more which I probably miss.
Writing something “cool” nowadays is not enough to be taken from the folks seriously.
I can't count the number of times I've read an announcement of some OSS project, gone to the project home page, read it all and still had absolutely no idea what it was, what it did or why it might be important.
It is impressive how much Linus had working at that point though. Getting bash and gcc working and a multithreaded FS is no mean feat, and is enough for other people to actually make useful contributions without excessive pain.
Most often it is that the author is so involved they forget to given enough context. They are so passionate about a topic, but don’t realize that others do not drink the same Kool-Aid every day.
More than half of the emails I get from technology companies fail to start with a reminder of what their product or service does. I see this much, much less frequently with consumer products — better marketing.
While this may be true, it can still be helpful to have an FAQ, context, or other way that interested parties can understand applicability.
I fully appreciate shorthand/jargon are ways to communicate complex ideas swiftly. Yet, taking time to provide some form of entry point for the uninitiated shows a disciplined approach that often translates to other areas of the project.
I think that is a little simplistic, the main thing that got Linux going was sustained and continued effort. If this first message had been a flop Linus would likely have continued working and pushing it through. It was almost a decade before Linux could be considered a "real" operating system ready for production.
The bulk of the .com era was still on SUN and commercial Unicies. Linux was still in its early adopter phase. It was only in the 2000s that it started to get widespread adoption.
It's very common now for a brand new project that's not even at a raw alpha quality to have a fancy logo. It feels like priorities can get out of whack sometimes.
Some would argue that you should be trying to market what isn’t ready yet, to see if people are actually interested. What’s wrong with having a logo to let people know you’re serious about the project and that if it gains traction it has less of a chance of being yet another abandoned github repo?
Yeah, that is fair. I think it depends on how you look at it. For me when I see a very early project with a shiny logo it feels to me like the author is more interested in getting popular than building something. But maybe I'm just jaded.
> Writing something “cool” nowadays is not enough to be taken from the folks seriously.
Linux' success was not due to this message. I mean, the message advertised a toy OS in a group devoted to toy OSs, which naturally helped attract contributors, but it wasn't sue to that post why nowadays half the world runs on linux. Linux was also not the only FLOSS OS kernel out at that time, nor was it even working. In fact, arguably what made linux the success was the fact that, years later, they managed to get a working UNIX clone to run the full GNU stack, thus providing just enough features to offer a tool with practical use for a very specific use (servers).
Even then the main driving force wasn't the kernel itself but the distributions that managed to provide convenient software bundles that users could simply pickup and test and use. For those projects, providing those websites and templates and howtos and videos and tutorials was essential to get their foot on the door,because otherwise the barrier to entry would remain high and higher than any of their competitors'.
people give Jobs and Gates a lot of credit because they focused on commercial products that were marketed to the public -- Linus, for me, is probably the single most important person to technology (software) in the last 35 years. With Linux and Git alone, it as impactful and game changing in this industry that I can think of. I cannot think of any person that's been this important to my career and my income.
I really dislike this snarky comment, but rather than down vote it, I thought I'd give an alternate view.
I was around at the time that Linux was born. I remember the HURD. I had done some work on Mach while I was in university and I was hugely interested in working on the HURD. I sent email to MIB and essentially received a reply "We don't need you kid". But this is the way it was at the time. People working on GNU were used to doing things in a Cathedral fashion (to put it in ESR's terms). They had small teams where only a few trusted people had input. The rest were users, not collaborators.
The internet was not common at that point and we didn't have things like distributed source repositories. Development was usually done using CVS and you had to be a core contributor to have access. You got access to source code from releases only. And while some projects had fairly regular releases, some did not. For the HURD, I think the idea was that there was no point to having regular releases because it wasn't even self hosting yet.
Linus showed up and changed the world. He said, "Here's this thing I've been working on" and he didn't care who you were. If you sent him a patch, he looked at it. This was completely different from how things used to work for most projects. Linus didn't make you sign over your copyright. He didn't vet you as a core or non-core developer. He just took your patch and evaluated it on its technical merits.
The whole Bazaar approach that is common today, stems from how Linus ran kernel development right from the start. It changed everything in free software development because it was just 100x better. No friction. Welcoming. Not discriminatory.
But if you think RMS is sad about this state of affairs, I think you are terribly mistaken. The HURD was a failure because the world changed under them. Linus came around and showed everybody how software freedom is supposed to work in practice. This took a powerful but small group and expanded its reach to the everyday programmer. RMS's dream of a world where normal developers valued free software over proprietary software came about because of this shift -- and he's smart enough to realise it.
RMS was clumsy about the whole GNU/Linux thing, but Linux only existed because GNU existed. Back in the day, the first thing I would do when I got a new Unix box was to install GNU -- because it was massively better than whatever crap came with the Unix system. Even now, despite the advances of BSD systems, I would still install GNU on top of a BSD kernel if I was running BSD.
Occasionally I hear people asking the question, "If Android is running Linux, why can't I run my Linux apps on my phone?" It drives me crazy. It's because you've got an Android/Linux box instead of a GNU/Linux box. The bit you want is GNU, not Linux. This is precisely why people like RMS wanted to stress the importance of GNU in the equation. I don't agree with his approach, but it's foolish to deny the basis of the argument.
Without RMS's vision, we would not be where we are today. I lived in the world where I had to use $5k per seat proprietary libraries to get anything done. I lived in the world where large corporations who built compilers told me what I was allowed to build. RMS rescued us from that. ESR gave us a vocabulary with which to talk about this stuff. He categorised the kinds of ways people approached things and allowed us to think critically about what we were doing. Linus showed us how to actually make it work. All of these people have disagreed with specific things the others have said, but they also show massive respect for one another -- for good reason. Without them, our lives as developers would be infinitely worse.
This. Linux wasn't based on proprietary code, and wasn't saddled by any sort of license.
The original BSD that Bell Labs gave to Berkeley in 1974 was anything but open source. It was an operating system that Bell had provided to the university with source code available for modification and redistribution ONLY to other universities WHO ALSO HELD research licenses from Bell Labs.
And it still wasn't open-source in the early 90's when Berkeley scrubbed all the proprietary bits out of it and tried to sell it for profit. That's when AT&T sued them.
So even if you HAD a copy of the BSD source code pre-1994 it wouldn't have been the same as someone handing you code and asking for your advice on it. You would have certainly found yourself in court if you modified early BSD for redistribution.
Bell Labs was allowed to finally start charging for UNIX after the split was done, so they went after the most attractive fish that were getting paid to sell UNIX, as AT&T wanted to bring it all back in house.
I agree with this. It is likely that something else would've filled the void. Maybe something much better. Maybe we're missing on a lot because Linux popped up :)
<sidebar>
I just finished reading the book "Here Comes Everybody" by Clay Shirky (circa 2008). In the book he mentions this very "announcement."
What's fascinating, per the book, is Linux was one of the first significant byproducts (if you will) of (internet) connectivity and how that enabled easy group / team formation.
In the case of Linux, its growth helped to further connectivity, etc. That is, in creating Linux, it helped spread Linux.
I don't know that I would call Linux "one of the first". Usenet had been around for a long time, and there were plenty of projects that were enabled via Usenet and mailing lists. For example, perl predates Linux by four years.
Pardon me for mis-paraphrasing a 300 page book. The key I left out was that Linux went on to compete with the likes of Microsoft, and is used on a significant number of internet servers.
I'm pretty sure it was one of the first to start so small and acheive so much.
I distinctly remember when I became aware of NNTP, the new protocol that allowed Usenet to be distributed almost in real-time, using TCP/IP instead of UUCP. Electronic mail, file transfers, and remote terminals already existed using various other protocols, but seeing Usenet over the Internet made me realize that something new and exciting was about to happen (and a few years later that turned out to be Tim Berners-Lee).
Such a humble announcement. I miss these kinds of projects. Most new projects today (by individuals or otherwise) are usually "best of", "world changing", "ground shaking", emoji filled nonsense, usually biting more than the developer(s) can handle, causing a buggy mess.
To be clear, Linux was definitely a buggy mess at the beginning and definitely more than Linus could handle, but they got through that by building community around fixing all of that.
That's fine, bugs are acceptable and expected as long as expectations are set accordingly. It seems clear from the start that the project didn't promise the world and its sister.
More than he could handle? “I’ve already ported bash and gcc and it seems to work”. Who, even today, would even dare trying to do so much work in a few months?
I remember when I first installed Linux and was trying to find my way around (1994ish) and I couldn't help but feel hopelessly behind, like everybody had way more experience than I did, and knew way more than I did.
Funny thing was, of course, that WAS true at the time, but it wasn't a reason not to do it. Let that be a lesson to anyone who hasn't learned the lesson themselves yet!
Followed the instructions, got it installed on a spare machine at work, rebooted and it was working! Logged in and tried some command (I think it was "dir")
I got back "bash: dir: command not found" (although I recall it as "syntax error" so my memory is fuzzy)
I was taken aback. Did I really make such a huge mistake that the operating system wanted to bash me?
Wow, fascinating. I love the detail about probably never supporting anything other than AT hard disks and 386; isn't it funny now that Linux supports more hardware than just about damn near any operating system, free or otherwise?
> I'm doing a (free) operating system (__just a hobby, won't be big and professional like gnu__) for 386(486) AT clones. [...] and it probably never
will support anything other than AT-harddisks, as that's all I have :-(.
__just a hobby, won't be big and professional like X__ probably is how most of the startups get started.
Based on the pitches I’ve seen, it’s very much the opposite. ”We are about to completely upend the X industry, with a market potential of hundreds of billions”
Obligatory link to one of the many corporate bullshit generators around, though this one creates entire documents and not just sentences. Just in case someone needs one :)
Does anyone know the video of an entrepreneur at a conf who nailed the startup pitch language and levers? I’ve been looking for it for quite some time, I don’t know the name, it was a 5-minute pitch between sessions.
When I hear this, My instinct is to roll my eyes. So much hyperbole in startups, it’s one of the large reasons I don’t see myself working for a startup.
I'm currently doing the opposite of every 'rule' and loving it.
Building what I want, because I want it to exist. Showing it to nobody else to test or get feedback on; no focus groups, no beta testing, no external input. Solo founder effort. Not taking VC; not under any circumstances or terms. Not selling or promoting anything before it launches. It's commercially minimalist by design and ethos, ideally it takes in the least amount of money necessary to fund its own expansion. There's no exit, hopefully it lasts perpetually; I aim to at least guarantee and pursue its operation for the next decade (it'll take that long to really build it out). It's thin on both the front and back ends, inexpensive to run and scale. Something like it doesn't currently exist and it will benefit humanity very modestly if I get it up to scale.
It's the first time in the last 20 years I've built something very large in scope that wasn't about making money in any manner. Something that is more important than my own ambitions in life. Going to launch it with a Show HN in the next two months or so. Hopefully it works out, either way it was a lot of fun to build (it will have likely taken seven or eight months of work from conception to kicking it out the door).
It’s all about the context. That’s a list of things that VCs want to see - their business mode is all about funding companies that have a decent shot to make a TONNE of money, reasonably quickly, so they can have a huge exit in the funds timeframe. If you want VC money, it’s reasonable advice to follow. But if you just wanna build an open source passion project, or even a bootstrapped business, it doesn’t apply.
I actually don’t see a conflict between that advice, which is aimed at people trying to start VC funded businesses, and what Linus did, which was an open source passion project that grew into something more.
Probably the best ones. The people who are convinced from the start that their product is revolutionary tend to be less flexible than those who are just fiddling around, and may as a result fail to develop it as effectively.
Just yesterday I was watching his interview from a couple of years ago (in Finnish, sadly he doesn't do many of those any more).
He credited having a fair amount of free time during his 8 years of studying at University of Helsinki being a fairly big enabler of how Linux happened (or how he had time to work on it). I found that interesting
I'm from the Helsinki University of Technology and it was not uncommon that people got their masters degree in about 10 years of studying and working simultaneously.
That's kind of interesting now. Most Linux installations today coexist with a management processor running Minix. So what was a sort of mild rivalry is now a détente.
Minix had a proprietary license that forbade distributing altered copies (but not patches, but managing patches "out of tree" was unwieldy). Minix 3 is (I believe) gpl.
So free of any Minix code, means, it's free software, primarily. Not really a slight against Minix, per se.
Depends on what we had instead. The fact that Wintel systems had unlocked bootloaders was absolutely critical. But it could equally have been started on any system with an MMU. Certainly it's been ported to a lot of systems.
> Was it important to have a monoculture is what I'm wondering
Obviously this is just speculation but I would say, no. And the reason I say that is that Linux primarily took off on the server side. Mobile was quite a lot later.
On the server side it wasn't a monoculture. Sun was a huge player. When we were making the case for Linux, around 2000, it was presented as a cost play against Sun/Solaris.
Of course, it's fair to say that part of the reason it was a cost play was because Intel kit was so cheap and that was a direct effect of the desktop environment. But I'd contend that it wasn't a reaction to the Wintel desktop monopoly.
You mean “IBM PC clone”. “Wintel” wasn't really a thing until Microsoft’s dominant consumer and business OSs were Windows, starting with Windows 95, by which point Linux had already done a lot of spreading.
It's because MS-DOS and to a lesser extent Windows 3 was so bad at isolating you from the hardware that all the hardware had to be identical. If MS-DOS had been more like, say, CP/M then we would have had loads of weird machines from different manufacturers isolated from the software by proprietary BIOS[1] blobs. This would have made it harder to provide a useful Linux that worked across multiple machines.
[1] I mean "BIOS" in the CP/M sense of a layer that completely abstracted the hardware to the BDOS.
Q-DOS from which MS-DOS is derived is basically a clone of CP/M. I've written a CP/M bios for fun to bootstrap my IMSAI. It's not really that high level. You got even more from IBM's BIOS but of course that was too slow for what people wanted to do with those machines - so everyone talked to the hardware directly.
In those days it didn't matter what you were doing - the hardware was too slow. It's not like today where you can trade off performance for reliability or cleanliness. People praise Wozniak for his genius of trading hardware for software, but the tight coupling made it really hard to make future iterations. People didn't value upwards compatibility yet.
This line should contain a brief summary of the message. It is
usually used as part of a follow-up to another message. Again, it
is very useful to the reader in determining whether to read the
message.
One question:
Being noob at OS stuff, I feel quite impressed that bash and GCC could work on the Linux that Linus built on his own.
But everybody says that Linux really was something interesting as soon as a proper memory management was added to it. And that was done, but not by Linus.
So, which achievement sounds to you the most impressive? Building the first Linux? Or adding that (afaiu, critical) memory management feature?
To me it feels that kernel debugging is the hard part; if you're lucky you get a nice clean panic with stacktrace, but if not the machine just locks up. Or overwrites critical parts of its filesystem. Or, in some extreme cases, is bricked and will never boot again.
There were also ongoing lawsuits concerning AT&T code:
https://en.wikipedia.org/wiki/386BSD#History
I'm not 100% sure but from memory I don't believe the HURD (Mach-based) kernel was even bootable in 1991.
I didn't see bootable HURD releases till much later in the 1990's and they were notoriously unstable.
I like how the first comment muses about porting it to Amiga, and Linus reiterates that no, sorry, it's completely impossible to port. Just way too hardware-dependent, don't even bother trying.
- website explaining as a pitch what is better about your software
- ready to use examples and templates to support your claim
- branding with a logo that makes you look more professional
- issue tracker
- github repository ( even mirror of yours )
- bugfree software ready for production from day one.
And many more which I probably miss.
Writing something “cool” nowadays is not enough to be taken from the folks seriously.