20 years ago, Apple bought NeXT - <AUTHOR> https://512pixels.net/2016/12/20-years-ago-apple-bought-next/ <comment><USER3> I was working at Pixar at the time and a couple of us went out to lunch when the news broke to figure out What It All Meant. We passed Steve's office on the way out and one of our party, who had worked with him since early Apple days, congratulated him. The big question was whether they would keep the Unix plumbing visible and useful, or would it be buried under some API layer of no use to us Unix graybeards. Fortunately, the plumbing wasn't hidden in the walls.

<comment><USER4> Didn't Steve have an email that was in your mailbox by default when you got a new account on a NeXT machine? It had some embedded images and an audio file of him talking.

Anyway, I sent whoever it was, pretty sure Steve, an email with read receipt enabled and he bitched me out for invading his privacy. This was ~93 or so.

<comment><USER5> Honestly I find read receipt requests to be in very poor taste, if not a sign of outright hostility, and no, having them by default is not an acceptable excuse, no more than forgetting capslock on would.

<comment><USER6> Those things annoy me too, but thankfully it's been years since anyone sent me one (unless my mail clients have been silently reporting back to people other than the NSA, of course). I assume the read receipt request button has been made harder to find in newer versions of Outlook or something.

I reckon the correct way to handle these receipt requests is to configure the mail client to send a modified receipt email which _also_ has a read receipt request, and keep replying in kind until your correspondent gets the message (or the mail servers break down due to two bots telling each other that they read the notification that they just read each other's mail telling them they read their mail, of course).

<comment><USER7> It has been a while but with Outlook there was an option to ignore all read receipt requests. Maybe you turned that on?

<comment><USER6> I don't use Outlook; what I mean is that it seems that other email users aren't sending so many read receipt requests for some reason (such as changes to Outlook's user interface). Either that, or I correspond with a better class of email user these days.

</comment></comment></comment></comment></comment></comment><comment><USER8> The standard snark is that NeXT bought Apple for -$400 million.

<comment><USER9> When I joined Apple Software Engineering in 2001 as a writer, the first thing I noticed was that former NeXT people ran the company, made the important decisions, and believed fervently that the new Apple would be wildly successful. Oh, how right they were.

<comment><USER10> >Oh, how right they were.

Well, there's a sentence you don't hear often, nowadays!

<comment><USER11> Yes, if you live in the Matrix that doesn't acknowledge Apple's victories and praises Google and Microsoft failures.

</comment></comment></comment></comment><comment><USER12> In the early 90s, I remember reading in NeXTWorld Magazine many articles about the speed of development under NeXTStep. Ten times faster, according to John Carmack, who was creating Doom. Every developer agreed. Each issue showcased apps with surprising and elegant capabilities, really new features available nowhere else. The proposition was that NeXT Cubes were really worth the price, that they enabled magical solutions, and that there was still time left to join the other pioneers. Alas, I could only afford the magazine subscription. (In 2016 dollars, NeXT Cubes cost from $11,000 to $17,000.) When the Apple- NeXT merger was announced, people who had been following the NeXT saga, who had been aware of the benefits of NeXTStep and OpenStep, could easily imagine something great happening, and were especially glad when things worked out well in the end. (Here's an archive of old NeXTWorld magazines. The PDF scans are actually easier on the eyes. [http://www.nextcomputers.org/NeXTfiles/Articles/NeXTWORLD/](http://www.nextcomputers.org/NeXTfiles/Articles/NeXTWORLD/))

<comment><USER13> So where's the $15k super machine for today? I'd absolutely look to pay that for something with a similar advantage over a MacBook Pro.

<comment><USER14> Computing has changed. For CAD, games, a/v production, you still need a workstation. But the workstation is now obsolete in major fields that it once dominated.

Industrial simulation: these days the optimal approach is to get access to CPU is to crunch on headless servers, ideally in the cloud. Expand and contract computing power on a needs basis.

Front-office development: Objective C and Interface Builder was much better for prototyping ideas than C. Modern python/perl/racket/go/c#/etc are much further ahead. There were no mainstream dynamic programming tools more powerful than awk when NeXT was launched. Now the most common expression of hackers is dynamic programming on fabulously powerful free tools. High-quality operating systems are also free. Documentation is free. And it's all far better than what people used to pay for.

Deployment: interactive user interfaces are now delivered through the a web browser. Previously a lot of workstations were sold to run custom internal apps.

Save your money! Get a digital ocean account, and run your macbook until the power supply dies. Perhaps in another ten years google-style web-browser laptops will be ubiquitous.

<comment><USER15> I was agreeing until this point:

> There were no mainstream dynamic programming tools more powerful than _awk_ > when NeXT was launched

Maybe I'm missing something, but:

1950s: Lisp and Fortran

1972: Prolog

1977: Bourne shell and Icon

1978: C shell

1979: REXX

1980: Smalltalk-80 (on Macs, even!)

1983: Korn shell

1983: C++

1987: Perl 1.0

1988: Modula-3, and NeXT computer is launched

<comment><USER16> Having dug around a bit with Awk that might be a true statement. Awk has an entire ocean of features that mere mortals are completely unaware of hidden behind the 1960s teletype optimized interface. So the statement that there were no tools more powerful than Awk might be true, but only because we don't know if there is a full fledged AI hidden under the layers of impenetrable interface.

</comment></comment></comment></comment></comment><comment><USER17> "I'd argue that this is probably the single most important tech acquisition of all time."

However, it was not Apple's first choice. They first attempted to acquire Be Inc. (BeOS) but Jean-Louis Gassée held out for $275 million and lost the deal in a surprise move when Apple, instead, bought NeXT.

<comment><USER18> Now that would be an interesting alternate timeline!

/ MacBook Pro with Blinkenlights bar /

<comment><USER19> The Mac would not have been a huge success probably in that scenario.

<comment><USER16> I don't know. A BeOS foundation for MacOS would have made it even better at multimedia production. The tradeoff of course is that it probably would have been late to the whole Internet thing that was becoming something of a big deal around that point. BeOS's network stack was different enough from Berkeley sockets that porting network apps was a challenge. It lacked a version of Netscape at a time when even FreeBSD had a native version for example. In the late 90s this was not acceptable. Apple's engineering culture wasn't one of embracing open standards either, they could have very well stuck with the Be network paradigm and made it a headache to port any POSIX application.

Be's heavily multitasking kernel would have been quite a boon for Apple when off the shelf processors started going wide though. They could have been really reaping the benefits from C2Ds and beyond.

</comment></comment></comment></comment><comment><USER20> I was applying for jobs back in 1997, and during that time they had a huge career fair called the Brass Ring fair. Employers from around Silicon Valley would have booths and hire people on the spot. I distinctly remember Apple's booth being completely barren, they were practically dead to most engineers. How the tables have turned since then. The big question is, Apple's path appears to be following the path after Steve Jobs left the first time, with the muddied product picture, no innovation, etc. I hope history doesn't repeat itself twice.

<comment><USER21> It will. No company remains dominant forever.

<comment><USER22> Exactly. Some people never imagined Apple being more successful than MS.

</comment></comment></comment><comment><USER23> It would be great if someone wrote an article about the alternate histories where Apple chose other strategies. For instance, what an Apple-Be merge would have resulted in, what kind of products and tech. And how NeXT would have lasted without Apple.

<comment><USER24> Wow, I haven't heard someone mention BeOs in over a decade. That was a pretty OS, but I'd take that black NeXT case any day. Those NeXT boxes were so cool.

<comment><USER23> There's stories on HN about Haiku from time to time. That project's still going on in the background.

<comment><USER25> Just a few days ago, in fact:

[https://news.ycombinator.com/item?id=13200633](https://news.ycombinator.com/item?id=13200633)

</comment></comment></comment></comment><comment><USER26> I copy from a comment of mine from last week. In case you wanna procrastinate on a fascinating story about how Apple transitioned to NextStep's stack without completely annihilating their already weak developer base, here's a few links:

You get a corporate drama, a human drama and a tech drama all wrapped up in one series of presentations:

Jobs' return (as a consultant) 1997, promoting technologies from NeXT. Watch basically everyone asleep at the wheel except Jobs, the man with a plan.

[https://www.youtube.com/watch?v=4QrX047-v-s](https://www.youtube.com/watch?v=4QrX047-v-s)

WWDC Q&A - 'the art of saying no'

[https://www.youtube.com/watch?v=6iACK- LNnzM](https://www.youtube.com/watch?v=6iACK-LNnzM)

Jobs' hostile takeover in July by doing a (probably illegal?) stock dump

[https://en.wikipedia.org/wiki/Gil_Amelio#Apple_Computer](https://en.wikipedia.org/wiki/Gil_Amelio#Apple_Computer)

Announcing a Deal with Microsoft as de facto CEO in August, booed by the crowd

[https://www.youtube.com/watch?v=IOs6hnTI4lw](https://www.youtube.com/watch?v=IOs6hnTI4lw)

Internal meeting in September 1997

[https://www.youtube.com/watch?v=9GMQhOm- Dqo](https://www.youtube.com/watch?v=9GMQhOm-Dqo)

iMac introduction 1998 - Apple is back

[https://www.youtube.com/watch?v=oxwmF0OJ0vg](https://www.youtube.com/watch?v=oxwmF0OJ0vg)

Macworld 1998 - Apple is essentially saved as a company

[https://www.youtube.com/watch?v=gdYiqVzPjAc](https://www.youtube.com/watch?v=gdYiqVzPjAc)

OSX Strategy reveal

[https://www.youtube.com/watch?v=E5dWDg6f9eo](https://www.youtube.com/watch?v=E5dWDg6f9eo)

1999 - OSX Server launch

[https://youtu.be/NuCYHrSig94?t=48m40s](https://youtu.be/NuCYHrSig94?t=48m40s)

2000 - OSX launch

[https://www.youtube.com/watch?v=Ko4V3G4NqII](https://www.youtube.com/watch?v=Ko4V3G4NqII)

<comment><USER27> I was for a while thinking of the case where Apple bought NeXT but Gil Amelio and later Ellen Hancock stayed as CEO, and CHRP actually happened. While PC margins was declining, I was thinking that Apple could mostly focus on the higher-end PC and workstation markets, especially as OpenStep/Rhapsody was a UNIX.

<comment><USER26> According to Jobs they were at times 90 days away from bankruptcy. If that's true I'm thinking nothing but Jobs' full steam turnaround, including getting Microsofts' investor money could have saved the company. Doesn't seem to me like Armelio had either the energy nor the connections to do that.

</comment></comment></comment><comment><USER28> My father's most regretted financial move is ignoring his weird thought to buy 10 shares of Apple stock at this time.

<comment><USER29> Whenever I start to think like this, I remind myself that it's about as useless as thinking "if only I bet it all on 00" at the roulette table.

Crystal balls that see the future are certainly in short supply. But if I had one there's a lot better ways to make money than using it to buy 10 shares of Apple 20 years ago.

<comment><USER30> That's an utterly ridiculous comparison. Companies / stock prices are not a normal, random distribution like roulette results.

There are masses of information available on companies / stock market. Assuming roulette wheel is fair, there is none other than 1/32 chance known.

<comment><USER31> Please tell me what ticker symbol I should buy today, that will rise in value over 10,000% over the next two decades.

Nobody can. Over a 20 year timeline, it's essentially the same as a roulette wheel.

<comment><USER30> That is disingenuously retarded and trollish.

You seriously can't fathom that knowing financials, track record, ceo, products, pending deals, etc. etc. gives you more information than random chance? How do you make any informed choice about anything at all then?

<comment><USER31> I can fathom it, but not on a 20-year timeline. The market prices stocks with all the information available. It's not perfect obviously, but it's better than any other price-generation algorithm that lacks a crystal ball. I you happen to have a unique perspective that the rest of the market lacks, then you can invest in that stock and make a good return.

But 20 years out, the hypothetical "I wish I had bought AAPL in 1996" is just as useless as the "I wish I had bet on green" comparison. In this scenario, it's an apt comparison.

Anyone making an informed choice in 1996, knowing financials, track record, ceo, products, pending deals, etc. etc. would have stayed the hell away from AAPL

</comment></comment></comment></comment></comment></comment><comment><USER32> "I'd argue that this is probably the single most important tech acquisition of all time."

Microsoft buys the pieces that eventually become MS-DOS?

Going back further, pharma companies buying tech that they turned into mass produced antibiotics and gave us the sulfa drug revolution?

Apple buying NeXT hardly compares to the acquisition of steel smelting.

<comment><USER33> I'd suggest the author's definition of 'tech' meant 'computers'.

I don't believe Microsoft acquired QDOS, just the IP.

Furthermore, bringing Jobs back to Apple resulted in Apple going from nearly bankrupt a top 5 Market Cap Company in the world ([http://dogsofthedow.com/largest-companies-by-market- cap.htm](http://dogsofthedow.com/largest-companies-by-market-cap.htm))

<comment><USER32> _I 'd suggest the author's definition of 'tech' meant 'computers'._

I wouldn't be surprised. It's a common affliction around here.

</comment></comment></comment><comment><USER34> > What came out of this deal not only saved Apple and the Mac,

Er... interesting revisionism, here. That acquisition didn't do much to save Apple from the financial hole it had dug for itself.

Bill Gates is really what saved Apple back then.

<comment><USER35> > I called up Bill and said, "I'm going to turn this thing around." Bill > always had a soft spot for Apple. We got him into the application software > business. The first Microsoft apps were Excel and Word for the Mac. So I > called him and said, "I need help." Microsoft was walking over Apple's > patents. I said, "If we kept up our lawsuits, a few years from now we could > win a billion-dollar patent suit. You know it, and I know it. But Apple's > not going to survive that long if we're at war. I know that. So let's figure > out how to settle this right away. All I need is a commitment that Microsoft > will keep developing for the Mac and an investment by Microsoft in Apple so > it has a stake in our success."

<comment><USER36> _> The first Microsoft apps were Excel and Word for the Mac._

Nice quote otherwise, but this bit is not actually true. Microsoft got into apps via Word and Multiplan on DOS.

Excel and Word for the Mac were its first _graphical_ applications.

<comment><USER37> Microsoft got into applications before DOS existed. Microsoft applications like Multiplan were available for a variety of platforms, running CP/M and a variety of other operating systems. You could get Multiplan for systems as small as the TI-99/4 and as large as Xenix!

<comment><USER36> _> Microsoft got into applications before DOS existed._

Not actually true. DOS was already done when Microsoft hired Charles Simonyi from Xerox Parc to start its application division in 1981.

Multiplan and Word were the first results, released in 1983, by which time it was obvious that Lotus 1-2-3 was going to win.

Simonyi had big ideas about "metaprogramming" and using what was basically a VM to make applications portable. (I ran Multiplan on a Tandy 100-style portable, where the program came on a chip!)

In an interview, Simonyi said:

QUOTE

"Multiplan was done on a byte-coded interpreting system, much like Java. It was probably the most ported system ever deployed. We thought that the market would be fractured for a long time and that we would be on all of those machines -- which we were. "Interestingly enough, MS-DOS changed that and created a unified market. And, of course, Lotus 1-2-3 made their bet on creating a single, optimized, direct implementation for MS-DOS, and they cleaned up. We learned a lot from that failure. And then of course, when the next shift came to GUIs [graphical user interfaces], we cleaned their clock with Excel."

[https://web.archive.org/web/20080905231519/http://www.comput...](https://web.archive.org/web/20080905231519/http://www.computerworld.com/softwaretopics/software/appdev/story/0,10801,76413,00.html)

<comment><USER38> Supposedly, Microsoft Office used a bytecode language for a long time afterward, at least into the 1990s. Old time Mac users probably remember MS Office 4.2, which was an identical clone of the Windows version and ran like molasses.

</comment></comment></comment></comment></comment></comment><comment><USER39> You mean Apple bought back Steve Jobs, right?

<comment><USER40> Considering the contributions NeXT technology has made to OS X and iOS, no that's an oversimplification.

<comment><USER41> Jobs brought in a great team from NeXT - like Jon Rubinstein, who oversaw the development of the iMac and the iPod, and later came as close to rescuing Palm, Inc. (with the Pre) as was possible.

<comment><USER40> Yep that's a good point as well. Jobs wasn't the only valuable person who came from NeXT.

<comment><USER36> Another was Avadis "Avie" Tevanian, who worked on Mach at Carnegie Mellon University before joining NeXT. He took over Apple software.

</comment></comment></comment></comment></comment><comment><USER42> Painful to me, I left Apple in May of that year, thinking them toast.

</comment><comment><USER43> >> What came out of this deal not only saved Apple and the Mac, but made the iPhone, iPad and more possible as well.

What prevents Apple from making the iPhone and iPad? They could have bought Palm, QNX, did something based on Linux...

What was the key? BSD? Objective-C? I don't see those being that important.

The one thing NeXT did enable them to do was the PowerPC to Intel switch.

<comment><USER44> Steve Jobs, the team he assembled, and a willingness to cut. Apple at the time was running the Newton which, although I loved programming it, was a totally wrong direction. It just wasn't connected as Mr. Jobs explained in his Q&A[1]. He built a much better OS than the Mac at that time.

Palm couldn't build the iPhone with Palm and had to build WebOS. QNX is amazing, but its UI and client developer library wasn't there or else RIM / Blackberry would have used that. Apple had used Linux, and frankly, there was no way Apple would have done a Linux-based system after the whole GNU thing at NeXT.

I do think Objective-C, the developer tools, and NS class libraries don't quite get the credit they should. They were very good (go read the Taligent documentation). Truthfully, if Adobe and Microsoft hadn't insisted on Carbon[2], the Mac would have been much better off.

Apple had done an Intel translation internally and had the institutional knowledge already from the 68K to PowerPC transition.

1) [https://www.youtube.com/watch?v=a3MrpLyUOo8](https://www.youtube.com/watch?v=a3MrpLyUOo8) \- its pretty amazing some of the statements, guess the clone thing changed

2) not absent the Classic layer, just absent Carbon.

<comment><USER45> > GNU thing at NeXT. Can you elaborate on this?

<comment><USER46> There was a sort-of kerfluffle between the FSF and NeXT with regard to what was required for NeXT to be GPL-compliant. This is RMS' account:

"I say this based on discussions I had with our lawyer long ago. The issue first arose when NeXT proposed to distribute a modified GCC in two parts and let the user link them. Jobs asked me whether this was lawful. It seemed to me at the time that it was, following reasoning like what you are using; but since the result was very undesirable for free software, I said I would have to ask the lawyer.

What the lawyer said surprised me; he said that judges would consider such schemes to be "subterfuges" and would be very harsh toward them. He said a judge would ask whether it is "really" one program, rather than how it is labeled.

So I went back to Jobs and said we believed his plan was not allowed by the GPL.

The direct result of this is that we now have an Objective C front end. They had wanted to distribute the Objective C parser as a separate proprietary package to link with the GCC back end, but since I didn't agree this was allowed, they made it free."

(from [http://clisp.cvs.sourceforge.net/viewvc/clisp/clisp/doc/Why-...](http://clisp.cvs.sourceforge.net/viewvc/clisp/clisp/doc/Why- CLISP-is-under-GPL))

I'd be curious to hear more firsthand details from any parties involved. There's a widely held perception that this was a really divisive and drawn-out fight that left a lot of bad blood on both sides, but based on RMS' account, it wasn't. RMS' account just sounds like Jobs contacted him about it, said "is it OK if we ship it this way?", RMS checked with his lawyer and responded, "no, you need to ship it this other way to comply with the GPL", to which Jobs' replied, "OK, we'll do it that way then".

<comment><USER47> I'm not a first hand observer, but I was certainly around and following the issue at the time. My impression was that a lot of people _watching_ the issue got upset. I never saw anyone from NeXT or the FSF complain about anything. Just like today, there are people who think that Apple are evil because they don't embrace software freedom. Similarly there are people who think that the FSF are evil for not letting people do whatever they want. To be honest, the acceptance for software freedom as a legitimate idea is far more advanced today than it was back then, and you see how much vitriol is spewed about 'zealots' and whatnot.

To be fair, I don't think Apple was ever interested in software freedom. This is pretty obvious from their actions since that time (moving away from utilising software under the GPL). But I've never heard anyone other than developers complain about it. From a business perspective, it makes sense -- a license is a license. You don't want to pay the price, you don't get the license. I got the sense that Apple's management understood this principle completely.

From the FSF's perspective, they got an Objective-C front end for GCC and they were particularly happy about that. It was a kind of triumph because the GPL did its job. Objective-C programmers had a free platform to work with, which never would have happened if GCC had not existed and was not GPLed. One can argue that these days more and more companies understand the benefits of open source development and might contribute large pieces of code willingly, but that certainly wasn't the case in those times.

I would also be interested in first hand views, but from my perspective, it was always a non-issue.

</comment></comment></comment></comment></comment><comment><USER48> If only Scott Forstall had started a visionary company, that could be acquired revitalize Apple.

<comment><USER23> "Forstall is reportedly working as an advisor with Snapchat."

</comment></comment><comment><USER49> If only I had had money to buy Apple stock in 98 lol, be well retired now, instead of going to graduate school taking out a loan to buy tons of Apple stock would have been a far smarter move

</comment><comment><USER50> and this guy missed out [https://en.wikipedia.org/wiki/Jean- Louis_Gass%C3%A9e#1991.E2...](https://en.wikipedia.org/wiki/Jean- Louis_Gass%C3%A9e#1991.E2.80.932002:_Be_Incorporated)

</comment><comment><USER51> > 20 years ago, Apple bought NeXT

Some say 'Next bought Apple'

</comment><comment><USER52> Only wished they did not adopted Finder.

<comment><USER53> NeXT didn't have a Finder; the current Finder is a NeXT style file browser and nothing like the Finder on classic MacOS.

</comment></comment><comment><USER54> I like the narrative NeXT bought Apple for one Steve Jobs and got back 400 million in change

</comment><comment><USER55> I read that the NeXT, let's call it, "adventure", is the reason Apple went with a Linux distribution as basis for their new OS and thus, we're all using OSX now?

<comment><USER56> As far as I know, Apple has never used Linux for anything in any capacity. OSX's kernel is XNU, and it's a hybrid of BSD code and Mach.

<comment><USER55> So OSX has nothing to do with unix/linux?

<comment><USER57> macOS (and older OSX releases) are UNIX (see [http://www.opengroup.org/openbrand/register/brand3627.htm](http://www.opengroup.org/openbrand/register/brand3627.htm) for certifications). Linux is not UNIX (its not certified - not many are - <USER2> [http://www.opengroup.org/openbrand/register/index.html](http://www.opengroup.org/openbrand/register/index.html)) and could best be described as POSIX like.

<comment><USER55> Thanks for the explanation. I thought Unix and Linux had something to do with eachother, but looking at the downvotes, I was wrong :D

<comment><USER38> UNIX is an open standard with a certification program, and Linux certainly tries to follow the standard.

The only real reason that a Linux distribution hasn't been UNIX-certified is because RedHat and IBM found there was very little marketing value in calling it UNIX, that is, Linux is a stronger brand.

And I suspect the only reason MacOS is UNIX-certified is because they advertised it as "UNIX" and were sued by The Open Group, who owns the trademark. [1]

[1] [https://www.cnet.com/news/apple-in-court-dispute-over- unix/](https://www.cnet.com/news/apple-in-court-dispute-over-unix/)

<comment> tim-- K-UX is Linux. It is certified. It's based on Red Hat.</comment></comment></comment></comment></comment></comment></comment>


Voxel, a 3D pixel editor in HTML - <AUTHOR> http://apps.blois.us/Voxel

<comment><USER2> Summary of controls and interface for the confused:

Paint on the gray grid to toggle the existence of pixels. You put your mouse where the top face of the pixel goes. Change the color of the pixel to paint by selecting a color from the bottom-right.

Move the gray grid up or down to edit a different layer/level. Pixels above the grid are hidden. To move the grid, drag the slider at the left, click its arrow buttons, or use the mouse wheel.

You can rotate the camera by dragging anywhere in the canvas except for the gray grid.

<comment><USER3> It could do with some undo/redo functionality, ctrl+z doesn't seem to work

</comment></comment><comment><USER4> There's also Cubescape (<http://www.themaninblue.com/experiment/Cubescape/>) by Cam Adams.

</comment><comment><USER5> For some more advanced stuff there's <http://tinkercad.com/>

</comment><comment><USER6> Snarky remark, but:

<<Over Quota

This Google App Engine application is temporarily over its serving quota. Please try again later.>>

So much for the "infinite scalability".

<comment><USER7> operative word is 'quota'

The scalability is available, the dev has just decided not to pay for it.

</comment></comment><comment><AUTHOR> Some great examples: <http://apps.blois.us/Voxel#browse=true>

<comment><USER8> I particularly like "Wee"

</comment></comment><comment><USER9> Why does the perspective of the drawing grid appear to get wider as it gets further away?

edit, to answer my own question: it doesn't get wider, it just doesn't shrink into the distance either. It still feels odd not having perspective.

<comment><USER10> It's rendered using an isometric projection[1].

[1] <http://en.wikipedia.org/wiki/Isometric_projection>

</comment></comment><comment><USER11> Makes me want to play Minecraft.

</comment><comment><USER12> Early days, but it's 30% phallus at this point...

<comment><USER10> It struck me that somehow phalluses are sort of becoming the _Hello, World_ of casual drawing.

<comment><USER12> Ha! Like the 'teapot' primitive in 3D packages?

<comment><USER13> Teapot, meet teabag.

</comment></comment></comment></comment><comment><USER3> Is there a way to save to disk?

</comment><comment><USER14> what is so special about this that it has so many upvotes? do i miss something?

<comment><USER2> For me, it's the appeal of being able to make 3D models without having to download and learn a complicated 3D modeling program. I've tried Blender before and found it very hard; an easily-accessible and understandable modeling tool like this makes it a lot easier to try to have some creative fun. Yes, it's a lot less capable than a real 3D modeling program, but it has enough power to make some interesting things.</comment></comment>


Ask HN: What's the Most Interesting Article You Read This Week? - <AUTHOR> <comment><USER2> Today I came across Cosma Shalizi's review of _A New Kind of Science_ , and his page with 169 book reviews 1995-2018, I've read half a dozen so far, they're all great - he has a very attractive style. A wide range: science, politics, social science, history, philosophy, mathematics..

[http://bactra.org/reviews/](http://bactra.org/reviews/)

</comment><comment><USER3> The Secret History of Women in Coding

[https://www.nytimes.com/2019/02/13/magazine/women-coding- com...](https://www.nytimes.com/2019/02/13/magazine/women-coding-computer- programming.html)

Contains some great stories about the early days of programming.

<comment><USER4> This was interesting.

</comment></comment><comment><USER5> Atlantic City Is Really Going Down This time

[https://longreads.com/2019/02/11/atlantic-city-is-really- goi...](https://longreads.com/2019/02/11/atlantic-city-is-really-going-down- this-time/)

It has quite a few things I am currently really interested in. I've never been to Atlantic City but it always seemed like an extremely fascinating place with a lot of history. The pressure of the fading desire to gamble and climate change has serious impacts and this article was a great overview of the problems they are facing.

</comment><comment><USER6> I have revisited this RDR2 review/article [https://www.anaitgames.com/analisis/analisis-red-dead- redemp...](https://www.anaitgames.com/analisis/analisis-red-dead-redemption-2) \- it's in Spanish.

The author of the piece recently passed at the early age of 35 and he was such a good writer that I had to go and read this masterpiece once again.

If you can read Spanish please read the article. It's an incredibly good read.

Rest in peace, pinjed.

</comment><comment><USER7> Sometimes real life stories beat movie stories: [https://www.msn.com/en- in/news/world/the-tech-whiz-behind-vi...](https://www.msn.com/en- in/news/world/the-tech-whiz-behind-vine-and-hq-trivia-made-millions-in- his-20s-he-was-dead-by-34/ar-BBTMJYr?li=AAgfYGb)

</comment><comment><USER8> [https://logicmag.io/06-money-machines/](https://logicmag.io/06-money- machines/)

How algo trading works. It's a really well-rounded analysis into a usually jargon-filled, marketing-heavy, and difficult to understand world.</comment>


Study suggests that the stem cells "know" their own sexual identity - <AUTHOR> https://theconversation.com/can-organs-have-a-sexual-identity-55049 <comment><USER2> It reminds me a bit epigenetic inheritance:

[https://en.wikipedia.org/wiki/Transgenerational_epigenetic_i...](https://en.wikipedia.org/wiki/Transgenerational_epigenetic_inheritance)</comment>


Google, Intellectual Ventures case over patents ends in U.S. mistrial - <AUTHOR> http://www.reuters.com/article/2014/02/06/us-google-iv-mistrial-idUSBREA1500Y20140206 <comment><USER2> There's got to be a way to bring this system back to serve the purpose for which it was designed - encouraging innovation and not stifling it in courtrooms and endless litigation by corporations and moguls. Or maybe I'm just being overly optimistic here :(

</comment><comment><USER3> > There's got to be a way to bring this system back to serve the purpose for > which it was designed - encouraging innovation

Did it ever do that? I honestly don't know. Maybe it was a well intentioned bad idea from the beginning.</comment>


Flat Developer Google Chrome Console Theme - <AUTHOR> https://github.com/jbrooksuk/FlatDeveloperConsole <comment><USER2> Just looking at the screenshot compared to my Chrome inspector, what is the difference? I see some changes in the element tree, but nothing huge. Am I missing something obvious?

</comment><comment><USER3> Could you provide a screenshot? I don't have Chrome on my work computer, but I'm interested in seeing how it looks.

<comment><USER4> Hastily done comparison screenshot: [http://i.imgur.com/OKwf2cG.png](http://i.imgur.com/OKwf2cG.png)

<comment><USER5> I can't see anything other than some different font colors and a little more line height...

<comment><AUTHOR> The font family itself is also different, it first tries Source Code Pro.

As an extra, editing JavaScript inside the console is also highlighted to match.

</comment></comment></comment></comment><comment><USER6> I'm a big fan of Zero Dark Matrix: [https://github.com/mauricecruz/chrome- devtools-zerodarkmatri...](https://github.com/mauricecruz/chrome-devtools- zerodarkmatrix-theme)

</comment><comment><USER7> Anyone know where the custom.css stylesheet is located on a mac?

<comment><USER8> ~/Library/Application\ Support/Google/Chrome/Default/User\ StyleSheets/Custom.css

<comment><AUTHOR> Thanks, I'll add it to the README now.</comment></comment></comment>


ECMAScript modules in Node.js: the new plan - <AUTHOR> http://2ality.com/2018/12/nodejs-esm-phases.html <comment><USER2> Meanwhile, Deno (alternative server-side JS built from scratch by the creator of Node) keeps chugging along:

[https://github.com/denoland/deno](https://github.com/denoland/deno)

It will be interesting to see which happens first: developers migrate to Deno or Node finalizes its ES module implementation.

I think both groups are doing excellent work, but the Node team seems to be at a disadvantage having to continue support for some decisions made early on in Node:

[https://www.youtube.com/watch?v=M3BM9TB-8yA&vl=en](https://www.youtube.com/watch?v=M3BM9TB-8yA&vl=en)

<comment><USER3> > import { test } from > "[https://firstname.lastname@example.com/testing.ts";](https://firstname.lastname@example.com/testing.ts";)

This feels both very pragmatic and frightening at the same time.

<comment><USER4> I'm not an "expert" but that feels just as insane as the npm argument people make. I'd love to hear from someone more in the know as to why they aren't the same.

<comment><USER5> They really aren't if you think about it. Going straight to a URL for a version of a dependency is the same as pulling it from a registry, except it's decentralized from a single source (NPM) and removes the extra hops in between the package vendor and the package consumer.

On the flip side, that extra hop adds a ton of convenience in the form of name-resolution, security and governance. It's the age old double-edged sword of centralization.

<comment><USER6> Maybe if you turn that url into a hash, than just use the hash to check if the package has a local copy already, it wont be so bad. But you will need to add the package version in the URL so that you know you will always have the package you really want in your local cache.

</comment></comment></comment></comment></comment><comment><USER7> Let me state some things which I think are true:

1) A vast majority of developers hate '.mjs'.

2) In 5 years, most developers will have moved to import statements and stopped using CommonJS' require().

3) Importing from a directory using index.js is both common in popular projects, and a useful way to organize code like components.

4) We've already been waiting years for a standard solution and many of us are getting annoyed at the delays.

5) With transpilers the norm nowadays, it seems NodeJS could make a clean break from the past and simply provide tools to help convert older projects.

Am I assuming too much?

<comment><USER8> To be honest I don't mind `.mjs` - we renamed everything in our system to that about a year ago, but I do think it's important for it to be consistent with browser standards.

The index.js thing is nice, but I think consistency with browsers is more important and I'd be willing to lose it.

<comment><USER9> > I do think it's important for it to be consistent with browser standards.

There's no browser standard about .mjs. In fact the web doesn't really notice file extensions; it goes by media types and attributes. A browser knows that something is JavaScript because it is served with the application/javascript media type (or similar), and it knows it is a module because the <script> element has a type=module attribute.

A lot of the talk about "browser equivalence" is extremely loosely worded and leads people to think that .mjs is a browser thing, but it's not. It's a Node thing. What they want is for code to work the same way whether it's running on Node or running in a browser. The problem they face is that Node hasn't got the type attribute to decide whether something is a module or not, so they can't use the same mechanism the browser has.

The solution they have devised is to assume that .mjs is a JavaScript module and .js is not. The consequence is that if you want the same code to work in Node and on the web, you've got to change what happens _on the web_ to follow the _Node_ idea of naming things .mjs. Otherwise when you import a module named .js – which works in the browser – it will fail in Node. So this isn't about making Node match what happens in the browser, it's about making what happens in the browser match the Node approach, which is not a standard in any sense.

<comment><USER8> Yes that's my point. As a Node dev, I have no problem changing my extensions. However the browser environment should not be pushed to change and what works on the browser should largely work with Node.

</comment></comment></comment></comment><comment><USER10> I wonder why they kept the ugly .mjs extension. This is a hold-over from an earlier plan, and doesn't seem necessary in this iteration.

This new plan seem to be going down the path that `import` is for modules while `require` is for everything else. If that's true, then they shouldn't need a special file extension for modules - it should always be clear from the context which is which.

The only exceptions I can think of are executable scripts (which could use a command-line option) and packages in node_modules (which can use a special package.json field).

<comment><USER11> They say that it's required for ecsmascript modules that neither import nor export (for instance, modules that place things in the global namespace), but I would argue those are mostly shims for a pre-moudule era and they should just be `required()`. Or perhaps they could use some special comment at the top to let Node know it should be treated as a module even though it doesn't look like one.

Otherwise, just work down the `import` tree from index.js and anything that is imported is a escmascript module, everything that is required() isn't. Of course, this is just an armchair quarterback opinion, but I'm curious to know why that approach wouldn't work.

<comment><USER10> Exactly! You have to know whether something is a script or a module before you can parse it, but with this plan, that's always clear from the context.

This is exactly how browsers do it, by the way. If you `import` something, is a module, period. The `<script>` tag is the only place that supports both, so they use a `module="true"` flag to indicate which is which.

<comment><USER12> > This is exactly how browsers do it, by the way. If you `import` something, > is a module, period. The `<script>` tag is the only place that supports > both, so they use a `module="true"` flag to indicate which is which.

This is not entirely true. If you import something and it's served with a content type associated with JavaScript modules, then it's interpreted as a JS module. But if they are served with a wasm content-type, they may in the future interpreted as wasm modules. In node there's the additional content- type of "CommonJS file" which has to be handled somehow as well.

Non-module script tags aren't really relevant because node itself never supported scripts (at least not what the browser and the ECMA standard calls scripts).

</comment></comment></comment></comment><comment><USER13> I'm sure there are valid reasons but I disagree with the extension solution. That is not in any way meeting the stated goal of

> One of the goals of the Modules Team is "browser equivalence"

There are already tons of browser libraries not using the .mjs extension.

Not clear to me why just using 'import' makes it a module and 'require' not. I'm sure that's spelled out somewhere

<comment><USER14> >There are already tons of browser libraries not using the .mjs extension.

Browsers don't care what extension you serve something as, so we can't really directly match that in the default behaviour. What you _can_ do is use a resolve hook to tell node to interpret certain files as esm even when they don't have a `.mjs` extension.

>Not clear to me why just using 'import' makes it a module and 'require' not.

import doesn't "make something a module". if you try to require something that resolves as being esm (rn we check that with .mjs) it will throw, because esm resolution is async and require resolution is sync. You can't require esm but you can import anything.

<comment><USER13> Why does import have to work with cjs? It doesn't in the browser. Why does require have to work esm?

Why not just have a package up it's major semver and those packages that want to start using it need to import it? That seems no different than the browser. AFAIK you can't import a non-module and you can't non-import a module in the browser or am I wrong?

<comment><USER14> >Why does import have to work with cjs? It doesn't in the browser. Why does require have to work esm?

`import` doesn't _have_ to work with cjs, but we want to do so because there is so much code in the ecosystem that is cjs.

`require` won't and can't work with esm, because esm resolution is async and require resolution is sync.

<comment><USER15> Let this be solved in userland through compilers, like everyone already does today. The stubbornness from current node maintainers on this subject is astounding. Years of feedback, like you see in this thread, 'but-what-if' and 'you-dont-get-it' handwaved away.

</comment></comment></comment></comment></comment><comment><USER16> The Michael Jackson Script is an absolute joke and had arisen solely from NodeJS attempting to solve its own require legacy. It's not the business of any other party to do such a ridiculous thing.

.mjs is an aberration, a solution to a poor implementation of one web server, not a solution. NodeJS need to do the hard work of solving their own problem and stop attempting to manufacture "real world solutions" with .mjs.

<comment><USER14> If you feel you can come up with a better solution for module syntax ambiguity please feel free.

Over the last three years we (including hundreds of devs like you who come in guns blazing calling us all idiots) haven't been able to come up with something that works better.

<comment><USER16> Proposing or fixing a bug in a third party product should not affect a web standard. If you want my personal help to assist the NodeJS fix, yeah, I would be good there, but I can't fix the toxic bikeshed culture that you obviously enjoy. MJS is NodeJS solution. It is not a web solution.

<comment><USER16> You could support .es file types which would work just as well and is more succinct than .mjs, but AFAIK the group won't because of "branding" issues. Bull. Use .es. Standard semantics for ECMSScript which is the name of the language, no games or pretence.

</comment></comment></comment></comment><comment><USER17> Since I've worked on International Standardization before I sort of know how the sausage is made, but you always hope for a better sausage.

Anyway - browser equivalence? That, in a lot of things, especially where URLS is concerned, means HTTP equivalence.

A file extension having a specific meaning is not HTTP equivalence or browser equivalence, it is at best Windows OS equivalence where not having mime types understanding meant you had to use the file extensions to identify what 'type' of thing something was.

A hack solution that was maybe necessary (I don't know Windows internals enough to disagree) and that caused me a lot of problems in the years 1999-2009 approximately.

<comment><USER14> Browsers don't care what extension you serve something as, so it doesn't break the interop we want with browsers if you put your files as `.mjs`.

<comment><USER17> my point exactly, browsers care what mime type you use and the extension is meaningless. I thought I was pretty clear on this matter?

<comment><USER8> Both old "script"-style JS and the new module kind have the same MIME anyway

</comment></comment></comment></comment><comment><USER18> Instead of forcing this joke of a file extension, it would be far better to make a breaking change in a semver major release and do away with commonjs.

There is no usecase for having two module syntaxes at the same time. All the big projects already use babel or typescript. The community would catch up eventually.

<comment><USER16> I completely agree. As I pointed out below, following the path you suggested, if the filetype has to change to fix the require regression, they could use .es. Would it be surprising to use .es with ECMAScript? No.

<comment><USER18> Requiring users to adopt a new extension is a massive change and as an end- user I have nothing to gain from this - I'm already using babel and typescript along with a huge part of the community.

If this creates regressions like you said, let users deal with their code that deletes things from frozen objects. Allowing bad behavior to continue and stall the module evolution is questionable at best.

</comment></comment></comment><comment><USER19> I think it can be a bit difficult for users of compile-to-JS setups to understand why this is better. As of right now, one can just `import foo from './bar';` and the compiler just makes it work. This has become fairly tried and true. What might be confusing is that node's internals, and perhaps their design goals do not align with this paradigm. While I'm certain that they have reasons, it's going to be awfully hard to convince developers. (It already has been, look at the backlash on `.mjs`.) The solution? Continue to use TypeScript/Webpack/ESMloader forever. I personally like the semantics of importing the way it currently works. If it never works like that natively? Fine.

<comment><USER14> The issue is that transpilers didn't implement correct ESM (both ts and babel have opt in flags to enable more-correct-mode, but its still not 100%). they implemented the syntax but forgot about the actual semantics like dependency graph verification and such. Node is an actual implementation of js and so we must perform these tasks, even while transpilers don't.

<comment><USER20> Honest question: Does anybody actually care that it doesn't?

<comment><USER14> I don't think its as much a matter of people caring or not as it is that node is implementing ecma262 esm, not babel esm or typescript esm, etc.

<comment><USER19> What happens if people seem to prefer the babel-esm semantics? I'm not saying that babel's semantics ARE better, but what if developers prefer them?

<comment><USER14> then they can continue using them, and not use the real esm semantics? i don't think anything would change for them.

</comment></comment></comment></comment></comment></comment><comment><USER14> This is a pretty good breakdown but to the author: i would like to see a better explanation of defaults. Node will ship with the defaults needed to perform tasks logically and unambiguously. This however doesn't mean that a user's use case is locked away. ESM in node has hooks which allow people to override resolution behaviour, which means you could put esm in `.esm` files, or cjs in `.sadness` files, or have all files in a specific directory be esm, or read package.json and pull metadata out of it, etc.

<comment><USER21> Is this documented anywhere?

</comment></comment><comment><USER22> I'm not strongly opinionated or informed about this, so why does Node need file extensions when Other languages don't?

Is it because of non-JS imports? I know that when Ryan dahl announced Deno, he mentioned it as an _obviously_ good change, but, I'm not sure what the problems with extension-less imports are.

(Edit for context: at work, we either use Closure or put everything under a global root, and only import JS, so maybe I've been shielded from the state of the world.)

<comment><USER14> > why does Node need file extensions when Other languages don't?

Node allows you to require things that aren't commonjs javascript. (json, native extensions, etc).

> when Ryan dahl announced Deno, he mentioned [removing extensionless > resolution] as an obviously good change

I think a lot of people disagree with ryan dahl in this case (I certainly do). The ability to have a dependency expose an interface without knowing what type of thing that dependency is is very powerful, and i think it is one of the reasons people like require so much.

<comment><USER23> > The ability to have a dependency expose an interface without knowing what > type of thing that dependency is is very powerful

Is it? I honestly can't say I've actually used that feature -- although I can say I have gotten burned by it by accidentally importing the wrong thing.

</comment></comment></comment><comment><USER24> I appreciate the work going into this but the timeline is a bit disappointing.

</comment><comment><USER25> Even with new features, node chooses to do things differently. Take worker threads for instance. Node added worker support much later than the browser, and chose to mysteriously use an API that's significantly different.

I wish interop with the browser becomes more Central for upcoming features. Where the browser is lacking, node can supplement, but to supplant those APIs is just inconvenient

</comment><comment><USER26> Is there any reason we can't just have a `'use esm';` declaration at the top of a file instead of a janky filename extension?

It's just as arbitrary, but there's precedence with `'use strict';`, and instead of renaming all of my files I just prepend them appropriately.

<comment><USER27> The `esm` loader allows specifying a parse goal pragma as one of several ways to disambiguate source – [https://npmjs.com/esm](https://npmjs.com/esm).

Node will likely end up needing more than just an extension to disambiguate as well.

</comment></comment><comment><USER28> Did I read that correctly we are going to lose the ability to require paths and modules eg import {} from './services' or import {} from 'lodash'?

<comment><USER12> First: none of the exact rules are written yet. But current discussions seem to suggest "Yes, this will go away" for "./services" being resolved to anything but an absolute location ending in "/services". But importing so- called bare specifiers ("lodash") will almost definitely be supported.

<comment><USER14> > current discussions seem to suggest "Yes, this will go away" for > "./services" being resolved to anything but an absolute location ending in > "/services"

to be clear, this is still heavily in contention. node made a good choice to support requiring something without knowing exactly what type of thing it is, and a lot of people feel we shouldn't throw that away.

<comment><USER29> Can you give an actual use case for this? Because it seems insane. How can you use something without knowing what it is?

</comment></comment></comment></comment><comment><USER30> from [https://nodejs.org/api/esm.html](https://nodejs.org/api/esm.html)

> For now, only modules using the file: protocol can be loaded.

Is it the plan to allow modules to be loaded from any protocol? Because that seems dangerous, from a security viewpoint. I've been trying to find mention of anything that mentions SRI support, or something similar, but I haven't found it yet.

</comment><comment><USER31> No one will use this Interoperability hack in light of the fact that Rollup and Webpack perform this for you seamlessly:

        import {createRequireFromPath as createRequire} from 'module';
        import {fileURLToPath as fromPath} from 'url';
        const require = createRequire(fromPath(import.meta.url));
        const cjsModule = require('./cjs-module.js');

Bundlers will not likely be able to produce efficient static code for that bizarre interop code.

</comment><comment><USER32> can a script using es6 modules start with something besides a import statement ? then it would be easy to know if to use es5 or es6 module syntax. why was the es6 module system made to break the es5 module system ? why not just use es5 modules ? why is es5 modules so slow? are es6 modules faster ?

</comment><comment><USER33> Can anybody explain to me why ES didn't simply adopt the require syntax from Node.js?

<comment><USER34> Import statements must be asynchronous in the latency-controlled environments (mostly browsers). CJS is by definition synchronous and has different order semantics when treating execution of an asynchronous loader.

<comment><USER33> But it could simply be implemented using the same routine in browsers like `import`. I don't see why `require` can't be asynchronous. There's an implicit join after the last import. Maybe it would have been enough to restrict calls to `require` to the top of a file.

</comment></comment></comment><comment><USER35> babel/register: [https://babeljs.io/docs/en/babel- register](https://babeljs.io/docs/en/babel-register)

</comment><comment><USER36> Webpack with css, less, sass assets with React as a SSR library. What's the current solution now ?</comment>


Launch HN: Motion (YC W20) – defense against online distractions and addictions - <AUTHOR> Hi everyone,
It's Harry, Ethan, and Omid here from Motion (https://inmotion.app). We built a Chrome extension that uses real-time interventions to prevent people from unknowingly wasting time on online distractions.
A few months ago, I mentioned that I was spending too much time on Facebook. Omid recommended a browser extension to block certain sites. It worked well - my time wasted dropped to 15 minutes the next day. However, a few days later, I was setting up my company's Facebook page, and the extension blocked me at the 15-min mark, the time I set for myself. I needed to finish that page, but there was no way around the hard-block, so I had to uninstall the extension.
Later, I tried other similar extensions. Each was either so permissive that it wasn't useful for my purpose, or so strict that I had to uninstall it. We realized that existing solutions did not work because their approach is too prescriptive and simplistic. They didn't recognize that people also need to use Facebook, Youtube, etc. for legitimate purposes. The problem is really intricate. On one hand, Facebook is great for getting reminders on friends' birthdays or managing business pages; on the other hand, every minute spent on Facebook could potentially lead to a trap. These traps come in all forms - video autoplay, news articles with catchy titles, and sponsored content that looks just like your friends' posts. Instead of always being hindered from visiting these sites, I needed to have access to their useful parts, but be careful to not get distracted in the process.
I decided to build a simple tool for myself - a countdown timer each time I visit a distracting site. We all started using it and liked it, so we decided to hand out the extension to some friends. Surprisingly, despite many bugs, our user retention was infinitely higher than our previous ideas. In fact, we built 6 MVPs during our pivoting process - commission-free prediction market, recruiting platform for quant traders, intercity carpooling service, workplace motivation app, online travel agency, and crypto options market making (last one because both Ethan and I were options traders before our startup; Omid was a college student until this year. For backstory - Ethan and I were best friends in college, and Omid and I have been friends since high school) Since none of these ideas had worked and we were finally getting some users, we decided to work on this one. Also, with this one we were solving a problem that we ourselves had.
Here's how it works now: each time you visit a distracting site (e.g. Twitter), we show a screen where you can choose to either leave or proceed to the site with a visible countdown timer. On sites like Facebook and Youtube, you can choose to hide the newsfeed or video recommendations. Once time is up, we ask you whether you're done. When you visit less distracting sites such as Gmail, you get reminders on how long you've been on these sites, so you don't unknowingly spend too long on things like responding to email.
Before you start working on something, you can write down your task, and it will show up with a timer on every tab you visit until you clear the task, so you don't get sidetracked. Finally, every morning, we give you a report on how you spent your time the previous day, and allow you to mark the sites that are distracting.
We firmly believe in data privacy, and promise that we will never sell user data. We do not collect the URL or content of sites you visit. We had to decide between using Chrome's "all_urls" permission and the more narrow "activeTab" permission. If we only had activeTab, each time the user opens a new page they would have to manually activate our extension. That would be an unacceptable user experience in our opinion, so we settled on the broader permission.
The extension is free at the moment. We plan on releasing for other browsers in the upcoming weeks. We plan on monetizing either through a premium tier with productivity tools built for power users or charging a very low amount from every user.
Big tech companies have been attacking our attention with sophisticated technology, spending billions of dollars to optimize their engagement metrics. We may think we are in control, but often we are unknowingly being exploited by companies who profit handsomely off our attention—which, if you think about it, is the most valuable asset we have. If we could just simply turn off all these products, that would be an effective defense, but for many people that's not an option, so something more is required.
It's far from complete, but we believe we're on the road to building a more useful tool to help individuals defend their attention against these traps. This is a problem many in the HN community have thought a lot about. We'd really love your feedback and learn what you would like to see in a tool like this - what productivity problem do you have that a tool could help solve? How can tooling help to give us back control over our own attention? Thanks so much in advance!
Harry, Ethan, and Omid <comment><USER3> This is great stuff, Harry. Congratulations on the launch.

Since you're asking for it, a request that I have is if there was a mobile-OS wide implementation of it, that'd be great. I've tried launchers like [https://getsiempo.com](https://getsiempo.com) (defunct?) and [https://lessphone.app](https://lessphone.app) but walked away unimpressed due to a variety of reasons: The main one being having to change habits to adopt to the new UX, whilst solutions like blloc [0] look appealing from far-out, they need equal amount of buy-in. That said, I am all for zero-config solutions.

A personal hack, I want to share: I exclusively use distractive websites from the browser (no installing "fast", "always-on" apps), and I force clear cookies everytime tabs are closed.

That means, I'm forced to login to view any new comments, likes, messages, or notifications and that is enough of a detterent and an annoyance that I don't feel the urge to seek validation often by rechecking on number of upvotes, likes, or replies of the trails I leave on various social media websites like news.yc (which is amongst the cleanest social media websites out there, in that it doesn't employ any dark patterns to lure you in, but that karma count must keep going up, right? #growth-mindset).

Coming back to mobile, on Android, Google's digital well-being initiative [1] has help kick-start competing implementations. I particularly like OnePlus' version of it-- the Zen Mode [2]-- It requires no setup or configuration and simply learns to know what's causing distraction, shows you a pop-up warning about too much usage, and if enabled, it simply goes nuclear and denies access to the phone for 20m.

I'll keep an eye-out for Firefox and/or Brave versions of Motion. Any idea on timelines for those?

[0] [https://www.blloc.com](https://www.blloc.com)

[1] [https://wellbeing.google](https://wellbeing.google)

[2] [https://www.androidcentral.com/oneplus-explains-how-and- why-...](https://www.androidcentral.com/oneplus-explains-how-and-why-it- created-its-zen-mode-feature)

<comment><AUTHOR> Thank you so much for sharing these tips and suggestions on mobile. Mobile is definitely on our todo list, more so Android than iPhone. Like you mentioned, Android's digital well-being initiative helps better products emerge. Unfortunately, Apple still does not allow developer access to screen time functionatlities, and the only way to mimic that is through MDM, which not only is a bad workaround but also has been banned by Apple.

I find your personal hack on mobile to be very useful myself too - I found myself to be so much less stressed and more productive after uninstalling apps like Facebook and Reddit on my phone, and disabling notifications on nearly all other apps. When I need to use Facebook, I would go to my computer.

<comment><USER4> What about a DNS based approach on iOS? You don't need MDM, just a VPN extension. You could send push notifications when your DNS server detects a site to block and mimic the same UX you have with a browser extension.

<comment><AUTHOR> You are correct - that would work to send reminders (notifications). However, we wouldn't be able to prevent people from using their apps. This is definitely something we are considering.

<comment><USER4> You could effectively block the network connectivity for them though by mapping domains to 127.0.0.1. Why wouldn't that be just as good? nextdns.io does a really good job of running such a service.

<comment><USER3> > nextdns.io does a really good job of running such a service.

It is not trivial to build, run, and operate a nextdns-esque service. The founders, Olivier and Romain, are some of the world's best at what they do, imo.

That said, a client-side DNS re-write solution might be relatively cheaper to implement and might even be a tad-easier than deploying an global DNS resolver with per-user custom configurations and endpoints.

<comment><AUTHOR> Agreed; it's definitely not trivial. We will definitely tackle mobile very soon, and this is a potential solution. Thanks!

</comment></comment></comment></comment></comment></comment></comment><comment><USER5> I have this idea I like to think about from time to time.

"Know when to be Achilles and know when to be Odysseus."

When it comes to online distractions and addictions, I've found anything that any tool that doesn't offer precommitment and restrictions of editing/removing the intervention will be ineffective in the long run.

If Odysseus could have untied himself from the mast, he would have.

Apps like these seem to be designed for our best selves, when we need help for our worst selves. My best self would probably be successful using this app. But my worst self, probably will ignore the prompts over time until I get annoyed and uninstall the app

My app of choice has been Freedom, where you can set a schedule and prevent quitting the app. I have had problems where I needed to get work done on a website and couldn't so I understand the use case. A work pass feature is something I'll suggest to the Freedom team. But for me as a customer, having success in not over-consuming distracting/addicting sites/apps is immensely more important than the infrequent inconveniences from having to access sites for business/work purposes.

<comment><AUTHOR> Thank you letting us know your thoughts; you definitely raise some valid points on how much control we should give to our users. In our case, our philosophy is that our product should assist users in making the correct decisions, instead of forcing decisions upon our users.

One middleground we are exploring, though, is making it increasingly more difficult to bypass our interventions each time.

<comment><USER5> Will be sure to keep an eye on Motion and how the product evolves. Good luck with the product you all.

<comment><AUTHOR> Thanks!

</comment></comment></comment></comment><comment><USER6> From my experience, it's better in the long run to apply brute force restrictions on programs. It's too easy to modify and delete Stayfocusd though.

Idea: I think we need a cross-platform website/app restriction utility. At the beginning, you get to choose intervals where you can change your settings for free. Let's say the interval is 3 months, and your settings dictate that you can only spend 40 minutes on social media sites (with only 10 minutes during work hours, zero after 10 PM), and 50 minutes on news websites a day. You can violate a limit, but you'd have to donate money to a political party of your choice: the catch is that you'd have to donate the same amount to the opposing political party! The punishment amount increases the more you violate the terms of your 3-month agreement.

After the 3 months/year/whatever are up, you can change the restriction and punishment settings. Holiday exceptions can be pre-programmed, or selected from a default profile ("student" "professional with 3 weeks vacation" etc...). You can always make the settings more restrictive before the interval is over, but not more forgiving.

There would also be an agreed-upon penalty for deleting the program, so that you don't delete and redownload to avoid the restrictions.

<comment><AUTHOR> Thanks for the suggestion! We've actually experimented with a similar concept - hold people accountable to their goals through social accountability, where friends can "watch over" each other and win/lose points (or money, in your case). Definitely interested in this concept.

<comment><USER6> I like the idea of looping in friends, I just wouldn't make the dollar payouts to them. I can imagine people enjoying sending money to their friends, partly for ironic comedic value (lol look how helpless I am, haha now we have a funny story of how I can't control myself and you're a terrible watchdog - <USER2> I'll even screenshot and post my failure so that our other friends can ironically enjoy this). For similar reasons, I also wouldn't pay my future self with the money. I can imagine people appreciating that as a way of forced saving, and you don't want them to appreciate the monetary loss at all. In fact, you want them to hate it - hence part of the punishment being a donation to a group that they don't like. The great thing about that is that the cost of the punishment could far exceed the monetary value of it - if you really hate a political party, the perceived cost could be 5x the dollars donated. Good luck with your program, and shoot me an email if you're interested in discussing further. My HN email address is in my profile.

<comment><AUTHOR> That makes sense; I know people who've tried out this app called StickK where you donate to anti-charity if you don't follow habits. Definitely something on our minds.

<comment><USER6> Thanks for the share, Stickk looks interesting. Stayfocusd + Stickk, with cross-platform usage tracking, would be the holy grail. Another thing to note is that Stickk has a lot of user complaints, so there's a lot of room for competition if they don't iron out the kinks.

<comment><AUTHOR> That's a very interesting thought. Yes agreed - StickK has a lot of user complaints so we would need to execute much better. A lot of these complaints arise from the fact that StickK literally puts you in a binding contract to pay the money - which may be necessary to enforce their kind of product, but also gets a lot of users angry and confused.

<comment><USER6> I looked at some of the negative reviews, and they seem to have a point.

1\. The irreversible, binding contract element needs to be exceedingly clear and simple to understand as soon as someone opens the app for the first time ("you will not be able to contact us to reverse the contract, so choose your terms carefully"). Additionally, give users the reason why the contract is irreversible up front so that they understand the app's foundations. I would want the contract to be irreversible, that's a feature not a bug, but users should know that. Users who aren't comfortable with that should ideally be offered a weak alternative as long as that doesn't muddy the service. Otherwise, turn them away.

Even the button that users press to agree to a contract should be called the "No Way Out" button or something like that. However, great care should be taken to ensure that users who behave well don't get punished (e.g. agreeing to pay $X if you don't lose weight, and you lose weight but there's a bug with reporting that, or the app doesn't ping you enough to warn you to check in, or you don't understand the consequences of not checking in, or there wasn't enough granularity with the terms of checking in). Users who don't trust the app as an automatic executor of contractual punishments should be able to designate a third party arbitrator, like a friend or parent, but that shouldn't be the default option. Maybe the user's friends will be lenient, but let them find that out.

2\. They have both a "charity" and "anti-charity" option, which is fine. However, the structure of the "charity" option is problematic. It is not clear to users picking that option that their funds may go to a charity they actually dislike, making it more of an Anti-Charity. Additionally, for both the charity and anti-charity options, they should _let the user choose their level of granularity._ If a user wants to designate specific organizations, let them make that trade off. Maybe someone is willing to make a particular political party their anti-charity, but never in a million lifetimes the Coalition for Coal (made up). "Charity" and "Anti-Charity" are vague. There's a fine line between motivating your users and provoking unmitigated rage in this space. If that's hard with the "charity" and "anti-charity" categories, maybe they should be scrapped entirely.

3\. It seems like they have UI, usability, and bug issues.

Again, I think that the concept behind their app is great, and they have a lot of potential, but there's an opportunity for you to do everything they do but better.

<comment><AUTHOR> Thanks so much for this! I've saved this analysis and will keep it in mind as we decide to move toward this direction. Agreed with all three of your points; we can definitely have better execution on all these fronts.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> This looks well packaged, and I can see the argument that it may be easier to use than the competition.

But how do you plan to make money? I'm looking for a model that isn't "we sell data on our customers", which I see is prohibited based on the TOS. But what would be the road to profit and what safeguards are in place to prevent you from just selling to a less ethical company down the road?

<comment><USER8> Was my first thought, as well. However, making something previously un- monetizable with a much better UX can unlock new opportunities. Craigslist sublet board → Airbnb

<comment><AUTHOR> We fully agree with this! Thanks!

</comment></comment></comment><comment><USER9> as somebody with ADHD i use SelfControl and it's my savior. On the Android side i use a VPN that im connected to all the time that has a dual purpose, to block ads and to control what i do (i installed it on a super cheap VPS). And on my smartwatch i use pomodoro timer to keep me productive. I'ts hard and i fail a lot but it helps.

[https://github.com/SelfControlApp/selfcontrol](https://github.com/SelfControlApp/selfcontrol)

<comment><AUTHOR> Thanks for sharing that - I also know friends who use the VPN method on mobile. I myself used Forest as my pomodoro timer; one problem I had was often times I would forget to turn it on.

</comment></comment><comment><USER10> > We do not collect the URL or content of sites you visit.

I was very concerned about this, but this is all I needed to hear. Thank you. This addresses a real market need.

<comment><AUTHOR> Thanks; it's something we would want ourselves when we download an extension, so we built it into ours.

</comment></comment><comment><USER11> I really like developments in this space.

I too have struggled and continue to struggle with wasting time on the internet. A couple of things that have helped me recently:

Removing the facebook news feed.[1] I can still use it for messaging, checking on specific people etc but the wall of information and addiction is gone.

Removing all but the single video you are watching on facebook [2]. Again, you can get to useful videos or search for something specific but now you don't fall into the 'youtube hole' when the first video finishes.

I suspect this will be something that everyone has to be conscious of all the time, much like being careful that you don't eat too unhealthily. I don't think any one tool will be a magic bullet.

[1] [https://chrome.google.com/webstore/detail/news-feed- eradicat...](https://chrome.google.com/webstore/detail/news-feed-eradicator- for/fjcldmjmjhkklehbacihaiopjklihlgg?hl=en)

[2] [https://chrome.google.com/webstore/detail/df-tube- distractio...](https://chrome.google.com/webstore/detail/df-tube-distraction- free/mjdepdfccjgcndkmemponafgioodelna?hl=en)

<comment><AUTHOR> Thanks for sharing! Agreed that both of these solutions are helpful, and I've seen many friends using them. For me personally, I wanted a more all-in-one solution, so we actually built hiding things like the Facebook newsfeed and Youtube recommended videos into our extension.

</comment></comment><comment><USER12> Be careful — Motion is an active Apple trademark in software (it's a motion graphics package that works as a companion to Final Cut Pro).

<comment><AUTHOR> Thanks for the heads-up!

</comment></comment><comment><USER13> The problem isn't time spent on these sites, it's finding better quality ways to spend the time. That's the real challenge. Solution needs to be pull to something better not push away from something worse. Not that the push is necessarily bad but it's not the full answer.

<comment><USER14> Couldn't agree more. This was fairly revelatory for me and I've been able to find more productive ways to spend my time recently. I even (shameless plug) wrote about it in a blog post: [https://timwhite.digital/distractions](https://timwhite.digital/distractions)

<comment><AUTHOR> That's awesome! I have a question (we ourselves have been thinking very hard on this) - when you are about to start something distracting, and you catch yourself, how do you find and get yourself into a more productive alternative?

</comment></comment></comment><comment><USER15> I would just get annoyed with the prompts and uninstall. This approach doesn't, hasn't and won't work.

What will work is unfortunately a little more complex to build i.e. you need to change functionality on these sites forcibly e.g. disable autoplay on YT automatically, fetch and create a newsfeed on FB to replace the shit stock one etc etc.

You would then need to keep up with these assholes trying to block your extension at every turn.

Sadly, this is the only approach that will actually work short of serious legislation.

<comment><USER16> You should take a look at Baitblock ([https://baitblock.app](https://baitblock.app)). We're working on something called the "Intelligent Blocker" (not yet in production, almost complete) that understands how you get to distractions in the first place. Then it removes the distracting types of comments, posts, search results, recommendations, links etc from the internet while you're working on studying.

Its kind of complex but works perfectly in trials. We also have the YouTube recommendations hider feature in the app.

Give it a shot and LMK what you think.

<comment><USER15> Looks great. I'm on Firefox so will wait for a version there.

</comment></comment></comment><comment><USER17> I just tried it. Unfortunately it does not seem to work with my use case where I use youtube to play music in a background tab while working on other things. I want it to block me from actively watching videos but playback in the background is fine in my case.

<comment><USER18> Check out Leechblock delaying page feature. There is a checkbox for "Count time spent on these sites only when browser tab is active"

<comment><AUTHOR> Thanks for recommending that. We actually do one better - we not only count time when browser tab is active, but also stop counting time when we don't detect activity or video playing for longer than 5 minutes :)

</comment></comment></comment><comment><USER19> Hey guys, I have an idea/suggestion for you guys; you might already be doing this or it might just not be a worthwhile idea, but it sounds useful to me:

Your addon/extension should track the amount of time spent on each of these time-waster websites, and allow the use to render graphs showing how their usage over time has changes. Perhaps even allow them to set goals(e.g less than 30 mins a day max, and under 2.5 hrs per week max) and visually show how close they are to their goals via graphs and other visuals.

Not only would it show users how much your extension is helping them, it would also provide them motivation to use it more, not to mention giving you some nice looking visuals to use for marketing

<comment><AUTHOR> Definitely! Thanks for the idea. This is on our roadmap and we plan on implementing it next month.

</comment></comment><comment><USER20> Started using it about a week ago and it's super effective.

I used StayFocused before that but I think this is a bit more effective in emphasising the specific point in time in which I start being distracted.

<comment><AUTHOR> I'm glad to hear that; thank you. Please let us know how we can make it better.

</comment></comment><comment><USER21> looks great! I'll try it when its usable from firefox, I'm not touching chrome, sorry :)

<comment><AUTHOR> Firefox coming soon!

</comment></comment><comment><USER22> What about other browsers? Or other online distractions that aren't related to web browsers? For myself, extensions like this doesn't work at all, and for most addicted will not work as well.

Would like to see extensions that doesn't block but make reading Facebook or other services extremely annoying. For example: I go to 9-5 job, and when I open Facebook all posts are from PornHub. Without a way to turn this off, so no one will open site like that... :)

<comment><USER10> What I currently do is block on /etc/hosts. But like the OP says I don't actually want to perma block these sites, I do get real value out of them maybe 5 minutes a day. It just needs to not turn into 20 minutes. But you can use /etc/hosts perhaps if you really want a less easily turned off block.

<comment><AUTHOR> Definitely agree with your sentiment; I probably only need Twitter for 10 minutes on most days. Yes - we are working on making it harder to ignore our extension when a person's being distracted. The key is really to build a good classifier of when a person's being productive or not on a distracting site. We currently let the user decide that when we intervene.

</comment></comment></comment><comment><USER23> Excellent execution.

I did something similar myself: [https://github.com/genesisdotre/Bitcoin- Games-nLightning-Min...](https://github.com/genesisdotre/Bitcoin-Games- nLightning-Mind-Chrome-Extension)

(with lightning network, streaming satoshis per second)

Quick feedback: \- load instantly (don't wait for page to load) \- choose the whole day \- I'm from Europe, using 24 hours clock here

(I would like to use it around the clock by default)

</comment><comment><USER24> Looks promising, just installed.

Once it's on other browsers I'd love for it to be able to sync between them, so that I can see cumulative stats across all browsers.

<comment><AUTHOR> Thank you! That is certainly on the todo list.

</comment></comment><comment><USER25> _We firmly believe in data privacy, and promise that we will never sell user data._

Everybody says that until they get a buyout offer from Google. I like the problem you've chosen but you're asking me to tie your tool into everything I do online. That makes you an acquisition target. So: are you going to turn down a big exit to keep this promise?

<comment><AUTHOR> Thanks for voicing your concern. I don't believe we need an acquisition. As mentioned, we plan on monetizing either through a premium tier with productivity tools built for power users or charging a very low amount from every user. We are confident in our ability to generate revenue without selling user data.

<comment><USER26> In that case will you add to your data policy that user data is destroyed in the event of a transfer of ownership?

If your promise is genuine then there is no difference for you in doing so.

</comment></comment></comment><comment><USER27> I use this product and I love it. It's the small nudge I need to stay on task everyday. Recommend everyone gives this a try.

<comment><AUTHOR> Thanks; please continue giving us suggestions on how to improve.

</comment></comment><comment><USER28> I tried this out now, and it seems really useful, both at work and outside work.

Feature request: There are some sites I consider as generally unwanted distractions always, and some that I consider as unwanted distractions only when I'm at work. How about differentiating between work/home modes, or allowing for profiles, or something similar?

<comment><AUTHOR> Thank you!

That sounds very valid - when we built this, we had the working mentality, but unwanted distraction when relaxing would definitely be useful for ourselves.

</comment></comment><comment><USER29> This is a very useful tool, Harry. Appreciate the detailed writeup and thoughtful explanation.

Would love to see how you guys use the insights from the extension to potentially gamify productivity as well as to understand your thinking around how to minimize distractions on mobile.

<comment><AUTHOR> Thank you! Definitely.

</comment></comment><comment><USER30> I always find apps like this bizarre. How about practicing willpower? The shortest answer between A (wanting it) and B (having it), is to just do it. And when you fail, non-judgmentally self-analyze and try again.

<comment><AUTHOR> That's actually similar to what my other co-founder told me when I tried to make this! It turned out, however, that our own willpower can be supplemented by tools. For example, sometimes I don't realize I've been on Twitter for 30 minutes - and as soon as I'm made aware of that, I leave. I think often times, it's about awareness rather than being forced by a piece of software.

</comment></comment><comment><USER31> Thank you so much. It just installed it and I find the idea super cool. One suggestion, though: make it possible to enable 'hide news feed/recommend/...)' by default. Good luck!

<comment><AUTHOR> Thank you! Yes - we are planning on implementing something along the line of remembering the last time you hide newsfeed, video recs

</comment></comment><comment><USER32> Congrats on shipping! I've just installed and I'm curious on how do you plan to monetize this extension (since it's free and doesn't collect the URLs of the sites visited).

<comment><USER33> They had a line in the post that explained that:

 _The extension is free at the moment. We plan on releasing for other browsers in the upcoming weeks. We plan on monetizing either through a premium tier with productivity tools built for power users or charging a very low amount from every user._

<comment><USER32> Ouch, thanks! I missed that.

</comment></comment></comment><comment><USER34> Just installed and this looks great. Good job on thinking it out more than other extensions.

Question unrelated to app, but to your experience: Why did options market making not work out?

<comment><AUTHOR> Thank you.

A major reason is in crypto, people can already leverage 100x, and thus people who would normally use options for leverage no longer need it.

</comment></comment><comment><USER35> I will not use chrome but I'd love to try your extension. Could you add a way to get a reminder from your team when Firefox or safari support is available?

<comment><AUTHOR> We have an informal manual list of emails of people who have requested Firefox. Please email firstname.lastname@example.com and I'll add you to the list. Thanks!

</comment></comment><comment><USER36> This is good stuff, just tried it! looks very promising.

<comment><AUTHOR> Thanks! Love to hear what you think

</comment></comment><comment><USER37> Fantastic work, Harry! This is a great product!

<comment><AUTHOR> Thank you! Would love to learn your thoughts :)

</comment></comment><comment><USER38> I like the idea! Looks similar to focus mode from Google's digital well-being, which I use often.

<comment><AUTHOR> Thanks!

</comment></comment><comment><USER39> The fact this is VC funded is a red flag. There's no reason why such a simple tool needs VC-level funding, and as a consequence the VCs also won't be happy with the (relatively) low revenue from a paid product compared to a scummy product that stalks users.

"We won't sell your data" is just wishful thinking and we both know that. It's only a matter of time before this turns malicious and starts spying on users or wasting their time for the sake of "engagement" (the very thing it's designed to fight against).

<comment><AUTHOR> Thank you for raising this concern. I believe YC sees value in our work not because they see money in us selling data; but rather they realize how big a problem we are solving, and, if we solve it correctly, how much value and time we bring to each person. A paid product can certainly generate much, much higher revenue than a product that sells data - Grammarly and LastPass are perfect examples of this.

</comment></comment><comment><USER40> Congrats Omid and team! I've been using it everyday. Probably saves me an hour

<comment><USER41> Thank you! Glad it's been helpful!

</comment></comment><comment><USER42> Awesome! Just installed it, looking forward to seeing how it works.

<comment><AUTHOR> Thanks! Please let us know your thoughts :)

</comment></comment><comment><USER43> Hmm, are there any plans to solve this problem for mobile?

<comment><AUTHOR> Yes! It's on our roadmap. Android is easier than Apple due to developer API constraints, but we plan on tackling the mobile problem very soon (in the next 1-2 month).

<comment><USER43> Great to hear. Already enjoying the app. One concern a friend brought up is that he says he has security concerns about the extension in terms of tracking keypresses (triggered by dialogue box that said all data is read and can be changed when installing the extension). Thoughts?

</comment></comment></comment><comment><USER44> @qiyuxuan96 Hi there. I am developing a cross-browser extension development/deployment SaaS. Would you be interested in hearing more?

We make life easier with things like: \- versioning, \- packaging extensions for different extension galleries, \- collecting payments, \- gathering analytics (extension views, installations etc.).

Ping me at email@example.com if interested.

</comment><comment><USER33> I've been thinking on this for a few minutes, and I'm realizing I have no idea on what criteria YCombinator funds anymore. This seems like something the Pinboard Investment Co-Prosperity Cloud might have funded.

The extension looks cool (outside of it being proprietary) and it looks like you did a good job on it! I'm just trying to think of reasons as to why YC is trying to mimic Softbank. The only reason I can think of is that extensions occasionally get sold for thousands to malware vendors and the like, but that doesn't seem like something that would bring _that_ much of a return, and seems too user-hostile to be something YC would bank on.

<comment><USER45> YC has always funded startups where the initial idea seems small but the founders seem effective and it's possible to imagine a path from the small thing to a big thing. That's one of YC's favorite kinds of startup to invest in. The fact that they seem odd and not worth funding is an advantage!

Actually, if you read [http://www.paulgraham.com/startupideas.html](http://www.paulgraham.com/startupideas.html) and [http://www.paulgraham.com/altair.html](http://www.paulgraham.com/altair.html), this startup is the sort that pg was writing about. That's why I told these guys to include the bit about solving a problem they themselves had; it's a classic marker. See also [http://www.paulgraham.com/organic.html](http://www.paulgraham.com/organic.html): "Don't be discouraged if what you produce initially is something other people dismiss as a toy. In fact, that's a good sign."

It's a fun exercise to imagine a path from the small thing to a big thing. Can we do it in this case? I'd say so. Online distractions, addictions, and the exploitation of human attention by big-tech companies are a big deal. Reclaiming control over time and attention could be something that a lot of people care about.

<comment><USER33> I wasn't implying that YC had changed, just that _I_ can't tell what the reasoning is anymore. The second link is an interesting thing to link, because the reason I included the last line (along the lines of "I guess it could be sold to a malware vendor or something") was more or less because I was thinking on that; I took my time to think, and couldn't find many optimistic things.

My only other guess outside of the one listed is that it could be sold to Facebook or twitter after getting a large audience, because it aligns with historical acquisitions somewhat.

I'd be happy to be shown wrong in a year (I'd literally take anything over what I imagine is going to happen to it), but presently I'm mostly just confused.

Responding to the edits I only noticed after responding:

 _" Don't be discouraged if what you produce initially is something other people dismiss as a toy. In fact, that's a good sign."_

I wasn't trying to discourage the people making the extension! I was mostly seeing if I could get any spare guesses as to what YC's mindset was when thinking about this.

Regarding whether what it's combating is a big deal:

Certainly, but I'm not sure if the solution to all of those is...a new big tech company, to put questions of profitability aside. It seems partially like bait to be acquired by a social media company, or Nielsen (which is a literal malware company at this point, they pay users to MITM their connections; a way to get the same data without paying seems like something they'd love).

<comment><USER45> I'm no expert in YC's business, but I think the confusion might be coming from thinking about this too similarly to how later-stage investment works, where there are fewer investments to place and more information available, and therefore more up-front analysis. It's not feasible to do that in YC's case, where they fund hundreds of startups a year. Nor can such analysis apply anyhow—there's too much uncertainty at the earliest stage.

The way YC looks for signal is different: simple and rooted in a few fundamentals. Do the founders seem effective? are they talking to users? and so on. The funny thing is, even though the fundamentals are simple and have been laid out in pg essays for a decade or more, it's surprisingly hard to reason with them. The mind doesn't like to stop with so little. I think that's why YC funding something like this feels paradoxical. (In the present case, it wasn't what they applied with but something they came up with later; but that helps make the point.)

"Bait to get acquired" would be considered a negative, since that's not how a business like YC ends up with the few big successes that make or break it. It's more like this: is there some plausible random world in which this thing ends up becoming a major breakthrough? It doesn't have to be probable, just fairly imaginable. And the founders have to seem like the kind of people who might, with luck, pull it off.

(Sorry for editing the carpet from under you! What I just wrote here was in response to your pre-edited comment too, but hopefully is still relevant.)

<comment><USER33> (It's no problem! I edit after posting about as much as anyone, so I definitely understand it! I appreciate the depth of response; I just made sure to wait a bit before forming a response to this one; it's fun to watch the stages a comment goes through, sort of like watching thought in process but more refined. Thanks for putting so much thought into your responses!)

That last line in the second paragraph made it click for me, thank you! At first I was under the impression they were funded after the 6 MVPs, but it makes sense that they were funded before/during that! With that bit of context, "betting on the founders" in this case makes much more sense to me.</comment></comment></comment></comment></comment>