top | item 26477507

Ask HN: What are some “10x” software product innovations you have experienced?

441 points| pramodbiligiri | 5 years ago

Peter Thiel has written about the "10x rule" for startups, where your innovation has to be 10 times better than the second best option [1].

Have you personally experienced such 10x improvements in your own interactions with software? What were they?

[1] - https://thenextweb.com/entrepreneur/2015/07/13/the-10x-rule-for-great-startup-ideas/

795 comments

order
[+] jasode|5 years ago|reply
+ using Google for search in 2000 and being amazed at how much better the results were than AltaVista and Yahoo Search.

+ Google Maps in 2004 and dragging the map interactively around. This was a quantum leap beyond Mapquest's page reload and reset with cumbersome arrow buttons. This was a paradigm shift that let me explore a geography better than any book atlas. I gave away all my atlases

+ MS Window Media Player's ability to cleanly accelerate playback to 2x,3x,4x of audiobooks and tutorial videos for slow speakers. MS Windows 7 had this long before Youtube's player had a 2x playback option.

+ SQLite library : more than 10x improvement since I came from old school of writing custom formats for persisting data. No more dumping memory structs to disk or writing b-trees in C Language from scratch.

+ C++ STL in late 1990s. Instantly reduced need to write custom data structures like linked-lists or in-house string libraries for common tasks

+ VMware in 2000s : more than 10x productivity enhancement because I can play with malware in a virtual software sandbox instead of tediously re-imaging harddrives of air-gapped real physical machines

+ Google Chrome in 2008 : 10x quality-of-life since misbehaving websites crashing don't bring down all the other tabs in my browsing session like Firefox/Opera.

I probably have more than a hundred examples. Some software tech 10x improvements are more diffused. Reddit+HN websites are a much better use of my time than USENET newsgroups. Youtube with recordings of tech conference presentations I can watch at 2x+ is a better used of my time than physically traveling to the site.

[+] deckard1|5 years ago|reply
Firebug.

Every developer from around 2006-2008 knows what I'm talking about. Debugging JS in IE6 was like trying to build a house blindfolded with both arms tied behind your back. Firebug is when JS went from just a web augmentation toy that could silently fail and your web page would still mostly function to becoming a critical function for a web page (many will see this as all a big mistake).

[+] rudyfink|5 years ago|reply
Here are a few that I did not see listed by others:

1. Automatic device discovery and driver installation (e.g., with USB devices (also USB device categories, etc.)). Instead of trying to find a driver, things just worked.

2. Automatic updates. Keeping everything updated, largely, fell into the background.

3. Graphical integrated development environments (IDEs) for software development. I realize editors can be contentious, but tab completion of variable names, automatic identification of methods within scope, syntax highlighting, easily dropping breakpoints, etc. are, in my experience, wonderful improvements on productivity.

4. What you see is what you get (WYSIWYG) text / image editors. Thankfully, I did not spend much time in the prior era, but it was, at times, maddening to get something to format correctly.

5. Ad blockers / reader modes. Again, I know these can be contentious, but, for me, these reformatting services are sometimes the only way to make some websites practically readable.

I strongly second:

-The rise of memory-managed languages (e.g., JAVA, C#, etc) with pretty robust default library sets, especially for string manipulation, graphics, and network operations.

-Moving map software, especially for mobile GPS mapping.

-Spreadsheet software.

-Being able to easily search for answers to fairly technical programming problems, compiler errors, etc. along with better access to online documentation.

[+] jakevoytko|5 years ago|reply
Gmail.

Using web-based email clients was a nightmare before Gmail. They had limited storage space, and the UX was pretty bad, they were hard to search, etc. You spent all your time figuring out what you wanted to delete, or seeing your emails bounce when people had full inboxes. If you didn't log in for a while, your account would disappear.

And then suddenly, you got a GB of storage. For free. No questions asked. And its UI was simple and easy-to-use. And you could search it.

A lot of other products are 10x better in individual areas. For instance, Google Sheets was much more portable/shareable than Excel when it launched. But even today there's no comparison, Excel is superior for actual spreadsheet functionality. But Gmail was better on every axis, even against local clients like Thunderbird and Outlook.

[+] jasode|5 years ago|reply
>And then suddenly, you got a GB of storage. For free. No questions asked. And its UI was simple and easy-to-use. And you could search it.

Also don't forget that Gmail at the time had the most intelligent spam blocking algorithm compared to AOL/Yahoo/Hotmail/etc.

It was a big enough deal that some observers that switched to Gmail considered the email spam problem as "solved" because Gmail seemed so good at it. (On the other hand, many independent people trying to run their own SMTP servers think that Gmail is too aggressive with spam filtering because it also blocks many legitimate senders with low/unknown reputation.)

[+] narrator|5 years ago|reply
I studied Google's file system. What Google figured out is that, with the rise of very fast networking such as 10 Gig Ethernet and faster, the network is much faster than local disk. Files were spread across multiple servers so they could all stream different parts of the file off their local disks simultaneously to the client computer faster than the local disk on any one computer could run. Thus, you could have systems like Gmail that could run much faster than even local disk based email clients, even with thousands of users.

Other providers were probably using expensive NASs with huge profit margins built in. Google was using thousands of the cheapest crappiest commodity parts because it was all triple redundant... and it worked faster because the network was really fast and multiple computers could stream different parts of the same file to clients.

[+] apohn|5 years ago|reply
Gmail also automatically saved drafts. I can't tell you how many long emails I wrote and lost before hitting the send button with other web email UIs.

Gmail was not just 10x. I think it redefined what a good web based email experience could be. I think it completely changed what people realized and expected the web browser could be from an interactivity standpoint.

[+] anderspitman|5 years ago|reply
Not just a GB. It was also constantly increasing in size, with a live counter to show how much storage you had available. Super gimmicky, but fun.

I guess there are probably a lot of people here who are too young to have ever used those early versions. You also had to scrounge forums for an invite code.

[+] macNchz|5 years ago|reply
Gmail was amazing when it launched...I was so excited to get an invite from a friend during the beta period. It made the crappy POP sync for my ISP email account look like a joke. Funny thing is–closing in on 20 years later–I dislike the latest generation of Gmail's web interface so much that I'm back to using a desktop email client.
[+] thraxil|5 years ago|reply
- SSH. Maybe not in terms of performance or efficiency, but before SSH, we were using telnet everywhere and just sending passwords in plaintext all over the internet. Plus, you could give someone your public key and they could give you access to a server instead of the "here's a temporary password, change it as soon as you log in" approach.

- Perl. This was at the time when the other languages available to me as a student were Java or C (mid to late 90s). Those were fine, but Perl definitely felt 10x more productive for me for the things I actually wanted to write. Plus CPAN was the first directory of libraries/modules that I'd encountered of its ilk.

- VMWare/virtualization. We used it for an Operating Systems class so we could learn by actually writing Linux kernel code and running it on a VM. This was huge at the time. Friends at other schools taking Operating Systems had to work on dumbed down simulations and "teaching" OSes. Before VMWare, if you wanted to work on the kernel, you had to have spare hardware and a lot of patience for re-building your system when you did something stupid. With VMWare, you could just restore from a good snapshot and try again.

- apt-get. Coming to Debian from (old, pre-yum) Redhat, being able to type a command and reliably install pretty much anything was a huge improvement over untangling RPM dependencies. Even RPMs were a pretty big improvement over manual compiling or Windows-style installer wizards.

- Numpy (or "Numeric" as it was called at the time). Vector math in clean Python that was mind-blowingly efficient. The only other option that really balanced performance and high level accessibility was MATLAB, but that wasn't suitable for using in an application.

[+] Farbklex|5 years ago|reply
Steam for PC Gaming.

At first, it was just annoying DRM. But it was convenient.

- Before that, you had to manually update your games in order to play the latest version

- Without no-cd cracks, you were required to leave a CD / DVD in your drive

- with the addition of steam workshops, installing mods for certain games became easier. You didn't have to manually copy paste files.

- you have one central friend list, and invite system which many PC games use. It took some time until more companies launched own launchers and fragmented this ecosystem again.

- save game cloud backups became the norm. No need to manually backup a savegame folder if you want to ever reinstall a game.

- the refund system is user friendly (refund if you haven't played for more than 2 hours)

- steam link allows you to stream your games from a PC to other clients locally or through the internet

- steam remote play together allows you to stream a game to a friend for remote couch-coop. Other player doesn't need to own the game and since a recent update, doesn't require a Steam account.

- family sharing lets users easily share a whole game library with friends and family

- big picture mode offers a great gamepad focused UI which is ideal for living room gaming PCs on the TV

- enchanced Steam controller settings which let you configure the Steam Controller and after some updates also other controllers for each game. This even works if the game doesn't have official controller support.

- compared to other launchers it is really fast…looking at you "Xbox Game Pass for PC Launcher" thing

[+] showerst|5 years ago|reply
Showing my age here, heh:

1. Early Ruby on Rails -- Now that MVC/ORM packges are the norm, it's hard to describe how revolutionary the original '15 minute blog' video was. It really felt like a quantum leap for CRUD apps.

2. Uber/Lyft - It has literally remolded the city I live in, by making large areas that are transit-inconvenient more attractive to live in.

3. Linode -- Access to a cheap server that you could spin up/down in a minute with root access was really great, in an era where a server that wasn't just a junk shared host often required months of commitment and started at 100 bucks a month.

4. Google Maps -- Just head and shoulders above mapquest.

[+] mchusma|5 years ago|reply
+1 for Uber/Lyft. I remember being SO excited for them to come to my area, as they are so much better than taxis.
[+] girishso|5 years ago|reply
+1 for Ruby on Rails, I was developing on ASP.NET back then. It would have taken me at-least a week to develop 'the blog'. Rails had so many great ideas baked in (apart from MVC/ORM) viz. dev/production environments, migrations, default locations for css/js/images.
[+] eps|5 years ago|reply
Re: Age

C with Classes was a very welcome advancement over C.

Watcom C/C++ compiler with DOS/4G extender was a pure fucking miracle. Need 1MB in one chunk? Just call the damn malloc().

Windows NT was a phenomenal leap forward for desktop OSes.

[+] paxys|5 years ago|reply
I lived half of my adult life in a major city before Uber/Lyft, and yet it is unimaginable what life was like before them. Did I really get ready for a night out and go out in the rain desperately waving for a cab?
[+] aerovistae|5 years ago|reply
I have no familiarity with #2 so that's interesting to me-- do you or other people actually use uber/lyft to get to and fro work? Isn't that like $15-20 each way every day, thousands of dollars a year?
[+] hackmiester|5 years ago|reply
I cannot see in the dark, and I live in a city that is not very walkable. Before Lyft, I just didn't go places at night. So, yeah.
[+] practicalpants|5 years ago|reply
Rails + Heroku circa 2011... I became a professional web developer and launched a startup mainly because of these technologies, so quick and easy.

Yes, with Uber and equivalents around the world, I have zero reason to own a car. My driver's license expired years ago and I can't be bothered to renew it.

[+] ralmidani|5 years ago|reply
+1 for Rails. Also Django (Which came out around the same time).
[+] justinzollars|5 years ago|reply
I owe a lot to DHH and Ruby on Rails. It landed me a job in Silicon Valley 11 years ago. It was a game changer for my life. Glad to see it listed here.
[+] CalChris|5 years ago|reply
Yeah, Uber/Lyft is 10x better than cabs ever were.
[+] dimal|5 years ago|reply
USB. It's hard to imagine, but we used to have a thing called SCSI (pronounced "scuzzy", and that's how it felt) which allowed you to connect to exactly one serial device. The plug was huge. And cables cost $50. Mice used an entirely separate interface that was different on Macs and PCs, and since Apple was dying at the time, it was a struggle to get Mac mice for a reasonable price. With USB, you could suddenly attach any device to Mac or PC and often not even need a driver. You could buy a splitter and attach multiple devices. Incredible! Wifi. I remember seeing Apple's Airport demo. You could connect to the internet WITHOUT WIRES! Magic!
[+] quesera|5 years ago|reply
> SCSI ... which allowed you to connect to exactly one serial device

Pedantry, but: SCSI is parallel, not serial. The distinction is the number of data lines in the cable -- serial has one line, and SCSI has 8 or 16. This allows for much faster data transfer rates, at the (significant) expense of greater complexity and cabling cost.

The other advantage of SCSI is the ability to connect to multiple devices through "daisy-chaining". Old-style serial connections (RS-232, RS-422, etc) were strictly point-to-point.

Modern SCSI (SAS) runs the SCSI protocol over a serial connection, because port clock speeds are now fast enough that the parallel advantage isn't important for most uses.

Not to detract from USB though. It was an improvement over all of the above, and nowadays it's pretty fast, too.

[+] mikewarot|5 years ago|reply
>we used to have a thing called SCSI (pronounced "scuzzy", and that's how it felt) which allowed you to connect to exactly one serial device.

No, SCSI was worse than that... you had 5 or so different types, about 5 different connectors, and you had to terminate things, set the dip-switches just right, have the right Adaptec card, with the right drivers, and if you didn't look at things too hard... you might be able to take a $5 CD blank and get a good burn on it... otherwise you had a $5 coaster.

I hate SCSI because I always had the SCSI Blues.

[+] analog31|5 years ago|reply
Indeed, I'm running a lab experiment right now, and I count six USB cables coming out of the computer, one of which goes to a powered hub with a further five cables plugged in. Two of the USB interfaced hardware gadgets are homemade. All controlled by Python. A couple of the devices required downloading drivers from the vendor, but the setup process was utterly uneventful.
[+] grumple|5 years ago|reply
I remember when plug-and-play was a big deal, good one.
[+] 1970-01-01|5 years ago|reply
Nobody has the audacity to mention The Pirate Bay. Ethical and moral issues aside, it was and arguably still is a 10x method for obtaining digital content and software.
[+] Nekhrimah|5 years ago|reply
In a similar vein, Napster was also a game changer for mp3 distribution.
[+] paxys|5 years ago|reply
Pirate Bay, Napster, Limewire etc. are what dragged us into the digital media age. Might not seem like it today but had studios and record companies had their way, Netflix or Spotify would not exist.
[+] quickthrower2|5 years ago|reply
BitTorrent too the underlying protocol with less nonsense than download sites that often want to tease you in to a paid subscription. Torrents are as good as it gets but malware and pretend movies linking to the aforementioned sites are sometimes a problem
[+] benibela|5 years ago|reply
And libgen/scihub for ebooks
[+] dopeboy|5 years ago|reply
Stackoverflow. Its closest competitor, experts exchange, was a slow website that required you sign up to see an answer that was rarely useful. There's a direct correlation to SO and dollars of revenue I've driven.
[+] petepete|5 years ago|reply
Experts Exchange also used to do that awful thing where they let Google index the solution but would hide it from visitors until they'd signed in.

I believe Google penalised them for doing it so they used another sneaky trick where they showed a obscured/pixelated answer first and then the actual one further down than most people would scroll.

SO was better in every way.

[+] scubbo|5 years ago|reply
TIL that Experts Exchange actually existed, rather than being a meme of "why you should consider how your business name will look as a domain".
[+] jimbokun|5 years ago|reply
Their weekly podcast where they discussed progress on building the site that week was fascinating too.
[+] Mandatum|5 years ago|reply
I wouldn't give them 10x, but certainly 2-3x for junior developers compared to predecessors and 1.2x for others. Which is still incredibly significant and nothing to sneeze at.
[+] billfruit|5 years ago|reply
Its closest competitor has been Quora for several years.
[+] vincent-manis|5 years ago|reply
The abolition of punched cards...finally, it was practical to indent code!

Visual editing...I remember when all text editors used a command language that made you keep a listing of the file next to your terminal so you could translate your markup into editor commands. (And, yes, I still know my way around ed.)

SCCS/CVS/RCS: as wonderful as git/hg/fossil and others are, any source control system is better than none.

Tree-structured file directories, so you could separate files of different projects into different directories.

Yes, I HAVE been around a long time!

[+] nicbou|5 years ago|reply
1. DOCKER

I don't hear "works on my machine" nearly as much nowadays. Everyone is running the same code in the same environment. It's all there under source control.

Now I can get a project running on a different machine in a few minutes, without any special instructions. That also applies to my colleagues, or people looking at my GitHub projects. My software's interface with the host machine is clearly defined, so there are very few surprises.

2. GOOGLE PHOTOS

No more moving photos around with cables and SD cards. No more tagging anything in Lightroom. I can type "pug" and I'll see every photo of a pug I've taken.

There are no logistics around taking pictures anymore, and it's much better that way.

3. MAPS

Google Maps, but also Open Street Map. Cartography is an incredible blessing, and we take it for granted.

[+] bps4484|5 years ago|reply
Jquery - abstracted away tons of cross-browser inconsistent behavior, both with the dom and javascript, and added new selectors to make dom manuplation easier. I think there was a reason it was adopted as fast as it was, it really was a 10x improvement in working client side.
[+] tootie|5 years ago|reply
Surprised no one has mentioned AWS yet. Anyone who remembers procuring, racking and imaging physical servers knows how utterly incredible it is create a cloud VM. And probably a good 20X improvement to use a value add cloud service like S3 or Netlify.
[+] atian|5 years ago|reply
Yes, the thing in iOS that automatically clips SMS verification codes sent to you. It saves me from going to my messages and finding the code.
[+] passivate|5 years ago|reply
Reaper. Its simple, fast, and no licensing bull.

Steam. Just works, simple and easy to use. Copy-Paste the Steam folder to your new system to move your entire game library.

ZoomIt by Sysinternals - excellent, excellent tool that has improved all my presentations/screen-share sessions.

Everything by David Carpenter - super fast system wide search for files that has bookmarks and other features like match using file name/file path/regex etc.

ShareX - Very useful screenshoting/screenrecording + more tool with automation capabilities like auto upload to imgur, etc.

[+] PragmaticPulp|5 years ago|reply
User experience is usually the 10x differentiator.

An Uber and a regular Taxi will both get me to my location with similar time and cost. The difference was that I could get an Uber by pressing a couple buttons on my phone and monitor the entire process from an app. A taxi required (at the time) phone calls, waiting around for a taxi to arrive, trying to communicate location, and other hassles that disappeared when using Uber.

Same final product (car transportation between points) but the experience was 10x better.

[+] yosamino|5 years ago|reply
Postfix. It's the only software package that I use where I am consistently sure that any issue I come up with is me making a mistake in configuration or me not having read the documentation closely enough.

It's stable, it has good error messages, it supports all the different ways to send email. And it's documentation is just really well and precisely written.

It's just really good.

It's not that I think that Postfix is 10x better than other email software that I use - it's 10 times better than any other kind of software I have used in the 20 years that this has been a relevant question.

Thank you Wietse, thank you Viktor, thank you Ralf and thank you Kyle.

[+] AlexB138|5 years ago|reply
I'll avoid dating myself by keeping it sufficiently vague, but Open Source Software. Going from the world of closed source, for-profit software to that of FOSS is like night and day. It's more like a 100x improvement. Today's open-source world is quite different, but I'll still take it hands-down.
[+] Lichtso|5 years ago|reply
Not sure if mathematics counts as software:

Geometric / Clifford Algebra.

It makes just about every aspect of handling geometry in computer graphics and robotics so much easier. It comes with a ton of upsides and only two downsides: You probably were not taught it yet (so you have to learn it) and if you do, others will have trouble following you unless they learn it too.

I somehow feel like coming from a tribe where we only count up to three, and then being introduced to the concept of natural numbers (and other number classes) by outsiders. As I stared to use it myself, it changed the way I think about things, but now I can't communicate with the rest of my tribe anymore. Yet, I think it is worthwhile and about the only silver bullet I have seen.

If you are interested, here [0] is a nice introduction to one class of clifford algebras.

[0] https://arxiv.org/abs/2002.04509