Of the Liberty of Thought and Discussion (1869) - <AUTHOR> http://www.bartleby.com/130/2.html <comment><USER3> "If all mankind minus one, were of one opinion, and only one person were of the contrary opinion, mankind would be no more justified in silencing that one person, than he, if he had the power, would be justified in silencing mankind."

<comment><USER4> Is the intent of this comment to suggest that people are being silenced for contentious opinions and that is bad?

Or that it is a slippery slope to that condition?

<comment><USER5> That numbers is not a justification for silencing dissent.

<comment><USER6> This is the key point. UNPOPULARITY isn't a good reason for an opinion to be silenced. That' a very different stance from saying that HARM isn't a good reason for an opinion to be silenced.

<comment><USER4> Well, I submit that by this very statement: the natural social effects we define as "unpopular" cannot then be used to suggest "silencing".

As many people have pointed out, it's actually vanishingly rare for people to get punished for unpopular opinions. In general you only get there if you are sincerely promoting genocide (e.g., Spencer), suggesting that not all humans are fit for freedom. (e.g., Moldbug), or that existing cohorts of people who very clearly were offered fair standards of grading are inferior (as Damore did even though he can't seem to come to terms with the real implications of what he wrote).

And these are "opinions" many people have and never get any sort of actual punishment or damage to themselves so long as they don't bring it into professional or policy environments where we have agreed it leads to discriminatory practices.

It's interesting how the rhetoric about "liberal feels" is so strong online when it's only said "feels" that make most people feel oppressed anyways.

</comment></comment></comment></comment></comment><comment><USER7>
      He who knows only his own side of the case, knows little
      of that. His reasons may be good, and no one may have been
      able to refute them. But if he is equally unable to refute
      the reasons on the opposite side; if he does not so much as
      know what they are, he has no ground for preferring either
      opinion. The rational position for him would be suspension
      of judgment, and unless he contents himself with that,
      he is either led by authority, or adopts, like the generality
      of the world, the side to which he feels most inclination.

I think this is highly relevant considering the times we live in (identity politics, nationalism, feminism, polarization of opinions and beliefs).

<comment><USER8> Please edit your comment to correctly show as a quote and not as plaintext/monospaced

</comment></comment><comment><USER9> _There is the greatest difference between presuming an opinion to be true, because, with every opportunity for contesting it, it has not been refuted, and assuming its truth for the purpose of not permitting its refutation. Complete liberty of contradicting and disproving our opinion, is the very condition which justifies us in assuming its truth for purposes of action; and on no other terms can a being with human faculties have any rational assurance of being right._

This is a pretty solid argument for freedom of speech in the sense in which it is generally protected: as something that contributes to public dialogue in politics, the sciences and the arts.

Many things seem to be this but aren't. Hate speech is not an opinion in this sense: it is not something presented as an argument or topic for discussion. You are either with the haters, or you are against them. Whether something is political speech or not depends very much on how it is offered to the public. The same idea — memory safety is a recent, innocuous example from this forum — can be a rallying cry for some and a point of discussion for others.

<comment><USER7> > Hate speech is not an opinion in this sense: it is not something presented > as an argument or topic for discussion.

According to J.S. Mill, free speech should only be constrained to the extent that it violates what he calls the _harm principle_ :

"The only purpose for which power can be rightfully exercised over any member of a civilized community, against his will, is to prevent harm to others."

He makes a distinction between causing harm and causing offense. Revulsion, disgust, psychologically upsetting speech, discriminatory speech, insults and so forth fall under the latter category. Free speech which merely causes offense should not be prohibited according to Mill however controversial or contrary to social norms such speech is.

But how strong the definition of the "harm principle" should be is subject to debate.

Contrast for instance, screaming "Fire!!" in a theater - which might cause injury and death from a crowd stampede - with "All <insert_ethnic_group> are inherently inferior to <insert_other_ethnic_group>".

The difference between causing harm and offense is that harm is universally injurious, whereas as what causes offense is only experienced subjectively.

Although I find blatant _hate speech_ detestable, there is a worrying trend where a majority of people consider hate speech to mean "anything that _we_ disagree with". In our times, it is difficult to speak frankly or be a contrarian without being demonized. And this is precisely what J.S. Mill calls "tyranny of the majority" and consequentially what leads to loss of individuality in society.

<comment><USER10> It is not difficult to discern whether a candidate for hate speech violates Mill's _harm principle_. Speech of the form

        "All <insert_ethnic_group> are inherently inferior to <insert_other_ethnic_group>"

does not exist in a vacuum without any corresponding systemic / institutional problem. I think you're saying speech like that merely causes offense, and not harm, which gives me the general impression that you are arguing in bad faith.

<comment><USER11> > I think you're saying speech like that merely causes offense, and not harm, > which gives me the general impression that you are arguing in bad faith.

It seems you understand the correct answer in accordance with Mill, but then willfully choose to ignore that answer since it differs with your personal value system.

To be very direct, hate speech does not violate the _harm principle_ in the same immediacy or capacity as does yelling FIRE! in a crowded theater.

<comment><USER12> Well, no, it certainly might, in some circumstances. Just as yelling "FIRE!" in some circumstances might - e.g. yelling something virulently racist while standing between two ethnic groups heatedly confronting each other in the street.

<comment><USER11> That is an invalid comparison. There is a world of difference between panic and anger.

<comment><USER12> Well, evidently I don't think it's invalid. Just asserting that doesn't achieve much. I haven't given this a great deal of thought, but it seems the specific emotions are so far irrelevant; what is relevant is whether an action causes harm, or may be predicted to do so/usually does so.

<comment><USER11> > Well, evidently I don't think it's invalid.

Fortunately, courts in the US do not have trouble discerning this difference.

<comment><USER12> Maybe if you made your points on here without seeming offensively snarky in your every sentence, you might have more success. "Don't be snarky."

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER13> Is there any good argument against this JSM piece? I've heard folks say that he was just one philosopher and other philosophers thought differently, but I've yet to hear an argument against this that I've found compelling.

<comment><USER12> Well, this 'piece' is one chapter of _On Liberty_ (1859). There's a David Stove essay _The Columbus Argument_ [0] (1987) - as always, funny, pungent and well-reasoned - reprinted in his book _On Enlightenment_ , which is full of other taking-the-unfashionable-side-of-the-argument essays. Stove there calls (Virginia Woolf's uncle) J.F. Stephen's _Liberty, Equality, Fraternity_ [1] (1873) the 'best reply' to Mill.

[0] [https://www.commentarymagazine.com/articles/the-columbus- arg...](https://www.commentarymagazine.com/articles/the-columbus-argument/)

[1] [https://archive.org/details/libertyequality00stepgoog](https://archive.org/details/libertyequality00stepgoog)

<comment><USER10> Thanks, it was a very interesting journey reading over some of this.

Stephen faults Mill's logic in talking about a turning point for pre-civil societies. "Until then, there is nothing for them but implicit obedience to an Akbar or a Charlemagne if they are so fortunate as to find one." But Stephen makes it pretty clear that he disagrees with every word of Mill's _Subjection of Women_. Page 217 where he articulates his belief that wives should defer to husbands in _all_ family questions, like a lieutenant to the captain of the ship...

Stephen was writing 3 years after ratification of the 15th Amendment, and 47 years before ratification of the 19th Amendment. From 2017, it might not be clear what David Stove writing for Commentary in 1987 thought of as an unfashionable side of an argument, but... Stephen makes it pretty clear that his core disagreement with Mill, is about equality for women. (And what that meant in 1873.)

<comment><USER12> Welcome. :-) Another thing.. "3 years after ratification of the 15th Amendment" .. I guess you mean something in the US? I'm not in the USA, Mill wasnt in the US, no-one in the parents of this mentioned the US - <USER2> assume..well, not sure what you're assuming, but the talking as if this conversation, topic, site and its users exist entirely in the US seems rather ..strange. It's not just you. Someone else on this very page did the same thing with me today, but in a very snarky way. Maybe this chapter was posted because of something happening in the US, so people in the US are just thinking of their own scene; I don't know.

<comment><USER10> You're right, my apologies. I frequently forget that I am not always writing from middle America to San Francisco on this website. I'll try to keep my blinders in check.

This chapter was almost certainly posted in the context of Sam Altman's recent blog post[0], which itself echoes an essay Paul Graham wrote a decade or so ago.[1] But there's a more immediate connection between Sam Altman's essay and the essay James Damore circulated at Google.

I was very interested in reading Stephen's "contemporary conservative" reaction to Mill, and wanted to place it within the timeline of human culture that I could understand: just a few years after the abolition of slavery and recognition of voting rights for black men in the United States, but a couple of generations before voting rights for women.

So, Altman is writing about unpopular opinions a few months after Damore is fired from Google for circulating a set of opinions, emphasizing that men and women are fundamentally different. A century and a half ago, J.F. Stephen's most substantial disagreement with J.S. Mill's treatise on liberty is... Mill's advocacy to fundamentally alter society to treat men and women equally in the name of justice.

Despite what Professor Stove said in 1987, Mill's opinion was the unpopular one in 1873.

[0] [http://blog.samaltman.com/e-pur-si- muove](http://blog.samaltman.com/e-pur-si-muove)

[1] [http://www.paulgraham.com/say.html](http://www.paulgraham.com/say.html)

<comment><USER12> Oh thank you!, I'm glad I complained. :-) "I am not always writing from middle America to San Francisco on this website" hehe - though maybe usually, it's understandable.

Yeah, I know that PG essay well - I'm a huge fan of his essays (especially the non-startup/programming ones).

Ohh of course - someone else tried to explain for the (U.S.) users why 1869 was so different from 1859 - I must remember tech people mostly live in the 21st C hehe. I seem to have more favourite writers from the 19th C than any other century, and have spent a lot of time living there and getting to know it (e.g. Hazlitt, Emerson, Ruskin, Nietzsche, Wilde, Stevenson, W James, Kierkegaard, Thoreau)

I'll have to read Stephen's book again, I read it about 25 years ago. Also, Mill worshipped his wife. I mean _really_ worshipped her. Some of the things he said about her were pretty over-the-top, even for someone madly in love. From memory, didn't they co-write _On Liberty_? Maybe he got all his 'advanced' ideas from her. His _Autobiography_ is fascinating.

Also, speaking of treatment of women, I can't read about 'experiments in living' without recalling the horrific chapter on Shelley in Paul Johnson's _Intellectuals_.

</comment></comment></comment></comment></comment></comment><comment><USER10> The most interesting historical tidbit I learned from reading this essay, is that when you are playing _devil 's advocate_, you are implying the person you are arguing with has been nominated for sainthood.

<comment><USER14> The devils advocate is literally a Catholic position occupied by a person arguing against conferring sainthood.

The interesting bit is that historically the strength of sainthood has been tied to the conviction of the advocate for the devil, not the quality of the advocate for the saint.

<comment><USER15> Interesting. TIL

</comment></comment></comment><comment><USER12> (1859) - _On Liberty_ (of which this is a chapter) was published 1859, not 1869.

<comment><USER15> Which, if any readers not from the US are wondering makes a very big difference because of the events of those 10yr.

</comment></comment><comment><USER16> Shameless plug: anyone interested in reading _On Liberty_ on their ereader should check out our free edition at Standard Ebooks: [https://standardebooks.org/ebooks/john-stuart-mill/on- libert...](https://standardebooks.org/ebooks/john-stuart-mill/on-liberty)

It's an excellent read, and is the foundation of a lot of quotes on philosophy of government that Americans will be familiar with, but perhaps unsure of the source. A really foundational book.

<comment><USER17> Thanks, I came to the comments looking for something like this. Much appreciated.

</comment></comment><comment><USER18> Diversity of thought will always trump any other type of diversity.</comment>


Ask HN: How to do secure messaging? PGP? - <AUTHOR>

Hello, how do I go about creating a <comment><AUTHOR> My comment was incomplete. Am wondering what is the best way to do secure messaging for a new system. I think PGP would be good. But will the encrypted private and public key both be stored in the database? Then using the user's password decrypt the private key. Does that sound good or is there a better way to do it?</comment>


Fundamentals of non blocking I/O on Linux/BSD - <AUTHOR> https://medium.com/@copyconstruct/nonblocking-i-o-99948ad7c957 <comment><USER2>
      > the file entry data structure maintains a file offset for
      > every process

File table entries aren't per-process. That's dangerously misleading. Without getting lost in the weeds, just remember that new file table entries are usually created for every open() or socket() call, in addition to a new descriptor table entry. Contrast that with dup() or fork(), which create new descriptor table entries that point to shared file table entries.

Why would this matter? Because as the article suggests (albeit ambiguously), a fork() has semantics similar to dup() in that the new process gets a cloned descriptor table. _but_ with pointers to _shared_ file table entries. Why this matters, and why the article is misleading, is because when two processes perform reads through a shared file table entry for a regular file, the order of reads will matter as between the two processes because of the shared cursor; the sequence of data each process reads could differ based on random scheduling latencies.

File position cursors really only matter for regular files, not pipes or sockets. But another thing to keep in mind is the distinction between descriptor flags and file entry flags[1]. O_CLOEXEC is a descriptor flag, which means it's not inherited when you dup() a descriptor (it is inherited across a fork, but that's because you're getting a clone of the entry which is thereafter distinct). However, flags like O_NONBLOCK are file entry flags, which means if process A forks process B and process B does fcntl(fd4, F_SETFL, O_NONBLOCK), all of a sudden fd4 will behave in a non-blocking manner in process A. Likewise, if you do dup2(fd4, fd5) then fcntl(fd5, F_SETFL, O_NONBLOCK), all of a sudden fd4 is non-blocking.

One interesting distinction between BSD and Linux is that on BSD opening /dev/fd/N is identical to calling dup(); even though you're using open() you get a shared file table entry. However, Linux symlinks /dev/fd to /proc/self/fd and you get regular open() semantics with an unshared file table entry.

On Linux, at least, you can create a new file table entry for an existing pipe through /proc/self/fd. But AFAIK you can't open sockets through /proc/self/fd. I've never really run into the need to do this, though. But it's good to keep all of this in mind for regular files because shared cursors could easily cause headaches, perhaps even security issues.

FWIW, Unix descriptor passing has dup() semantics.

[1] Technically the term is file status flags, but when discussing this I prefer file entry flags (or file table entry flags) to highlight the relationship to descriptor flags.

<comment><USER3> I'm the author of that post. The goal wasn't to mislead - like I mentioned, I'm learning these things myself and definitely could've gotten several things wrong.

I meant _file offsets_ are per process, not that every process gets its own table entry.

> when two processes perform reads through a shared file table entry for a > regular file, the order of reads will matter as between the two processes > because of the shared cursor; the sequence of data each process reads could > differ based on random scheduling latencies.

Not sure I follow. won't the two processes still have their own descriptors which point to the same file entry but maintain their own offsets? I think what I understood from your comment is that descriptors are _shared_ by the parent and child with share by reference semantics? So both the parent and the child _are using the same descriptor_ which in turn has an offset in the file table entry.

<comment><USER2> But file offsets _aren't_ per process. File offsets (aka I/O position cursors) are kept in the file table entry data structure, and those are shared for descriptors that have been dup'd or fork'd. If the cursor wasn't shared then this program

      #include <stdio.h>
      #include <stdlib.h>

      #include <err.h>
      #include <unistd.h>

      int
      main(void) {
      	FILE *fh = tmpfile();
      	if (!fh)
      		err(1, "tmpfile");
      	int fd = fileno(fh);
      	if (fd == -1)
      		errx(1, "fileno: no descriptor");
      	const char digits[] = "0123456789";
      	if (sizeof digits != write(fd, digits, sizeof digits))
      		err(1, "write");
      	if (-1 == lseek(fd, 0, SEEK_SET))
      		err(1, "lseek");
      	if (-1 == fork())
      		err(1, "fork");
      	char ch;
      	switch (read(fd, &ch, 1)) {
      	case -1:
      		err(1, "read");
      	case 0:
      		errx(1, "read: EOF");
      	}
      	printf("%ld: %c\n", (long)getpid(), ch);
      	return 0;
      }

would print '0' twice. However, it actually prints '0' then '1'.

Descriptor tables are per process, but the only thing a descriptor table entry stores is a flags field (basically, O_CLOEXEC/FD_CLOEXEC, plus maybe some esoteric platform specific flags), and a pointer to a file table entry data structure. Most state, like the O_NONBLOCK flag and file offsets, are kept in the [often shared] file table entry. The file table and its entries are completely independent from any particular process; in fact, traditionally there's only one global file table, just like there's only one process table.

These errors can usually be avoided if one always cite to a primary source (e.g. POSIX standard, vendor source code) for every assertion and/or validates the assertion with actual code. Maybe it's my legal training, but whenever I make an assertion, especially a technical assertion, I make it a habit of following those two rules, even when posting comments. And quite often I end up learning something new in the process.</comment></comment></comment>


This is how startups should be made. - <AUTHOR> http://scottvdp.com/2011/03/17/this-is-how-startups-should-be-made/ <comment><USER2> Ah, you learned your first lesson of web typography: line spacing should not be 1.0.

But you have not yet learned the second lesson: line spacing should not be 2.0, and certainly should not be even larger.

Keep it in [1.2, 1.5] for body text, and you will die a happy man.

<comment><USER3> Adjusted. Better?

</comment></comment><comment><USER4> <http://www.israd.com/21oe4> <\- I must confess, I have a weakness for your landing page. Very evocative of Bill Watterson's later dinosaur illustrations (if slightly bloodier).

<comment><AUTHOR> i love those illustrations

ex: [http://bulk.destructoid.com/ul/user/9/9346-103247-111195jpg-...](http://bulk.destructoid.com/ul/user/9/9346-103247-111195jpg-468x.jpg)

</comment></comment><comment><USER5> I'm going to apologize in advance for you guys being the straw that broke that camels back, but in general it's absurd that projects are requesting emails based solely on hype. I'm not going to give away my email address to a place called "IsRad" that offers 0 explanation as to what they're offering. I could "try hard" and guess what you're offering, but that is the least compelling reason for me to get on board and offer up my email. I mean are people seriously drinking the startup kool-aid and reinforcing we're headed for a bubble by giving away our emails? I sincerely believe you're good enough guys that I won't be spammed, but it has come to the point where people are offering up private information so that they can be early adopters for ANYTHING, regardless of the value it brings to themselves, the end users. Really?? Perhaps I'm a angered pragmatist, but I would love for you to tell me what I'm buying into before I give away my email.

<comment><USER3> You are 100% correct. I honestly think the problem is the speed at which we are throwing this together right now. This is an exercise for us in rapid implementation. The team that put this together is the same team that launched chicago2011.org, an app that took 72 hours from conception to development to implementation. I consider this a massive accomplishment, especially considering we were working with government. Coming off of that success, we were pumped to push out potentially a real startup under similar time pressure. You are now seeing some of the sloppiness that exists at the edges of a project like that, and I too shared your sentiment when usehipster went back into stealth/hype mode. Using launchrock certainly doesn't help that since it is works really well as a vague hype machine.

I promise you that I will put more detail up to the public within 48 hours, and I would love to personally speak with you to explain exactly what we're doing. You can email me at email@example.com if want, I would love to hear more of your feedback.

</comment></comment><comment><USER6> By hipsters for hipsters?</comment>


India Has 150M Drivers and Only 8k Want Electric Cars - <AUTHOR> https://www.bloomberg.com/news/articles/2019-10-06/india-has-150-million-drivers-and-only-8-000-want-electric-cars <comment><USER2> >>The Kona sells for about $35,000 while the average Indian earns about $2,000 a year -- and the best-selling gas guzzler costs $4,000. Yet Kona's sticker price only kicks off the conversation about why EVs aren't gaining traction in India

Never seen such a wholesome point ;)</comment>


The Conquest of Ubiquity (1928) - <AUTHOR> https://mtyka.github.io/make/2015/09/12/the-conquest-of-ubiquity.html <comment><USER2> This was almost scary to read. There is such a stark contrast between what I would call naïve (not necessarily bad) science fiction, focusing on the particulars of a technology, or setting contemporary stories in scifi settings, and _this_ little piece, explaining not Spotify, but the implications of Spotify, to the audience of 1928.

This and "the machine stops" are among the most incredible things I have ever read, and I wonder what other gems might be written today about a future we should see but we don't because we are so caught up in our pasts.

<comment><USER3> > This was almost scary to read.

I second that. He even predicts touch interfaces and modern-day connected and environment-aware smart devices.

</comment></comment><comment> king-rat > Days can be gloomy; there are men and women who are very much alone, and > many whom age or infirmity confines to their own company with which they are > only too familiar. These men and women, reduced to boredom and gloom, can > now fill their sad and useless hours with beauty or passion.

I wonder if he imagined that the very same technology he predicted would comfort us in our loneliness would also come to contribute to our increased alienation from one another.

<comment><USER4> I dont think that the alienation is actually true. What's different is that society has become more meta, people don't depend that much on their local social environment anymore, but they're still embedded in some kind of community. If you don't get sucked into some racist shithole then it's very likely that there's even more diversity than in your local community.

</comment></comment><comment><USER5> Focused primarily on broadcast music, this is a brilliant insight into a commodification-of-craft introduced by technology that mirrors what did indeed occur, and that the writer had imagined could be transformative in a dialectical materialist sense.</comment>


Ask HN: Is Rails more popular than Django? If so, why? - <AUTHOR> I'm learning Django now, but before that I was interested in Rails. I've noticed -- just from meetups, I guess -- that the Rails community seems a lot more diverse -- i.e. there are a lot more women and minorities learning and using it. Do you think this is because a large percentage of coding bootcamps and online tutorials like Codeschool and Treehouse focus on Rails? Or is Rails simply easier to pick up than Django? Or are there simply more/better Rails tutorials out there? <comment><USER2> Don't go down this road of "which should I learn?". Just stick with Django, and maybe, when you are competent in Django, look at Rails. If you cut your Django progress short and switch to learning Rails, you'll soon be looking at Javascript frameworks. Or Scala. Or Go.

Just stick with Django, for now. Not because it's better or worse, but because you're already on that path.

</comment><comment><USER3> Rails is bigger than Django,

But Python is bigger than Ruby...

Django isn't the only web framework in the python world. Flask and the others (both big monoliths like Django and miniatures similar to Flask) are abundant in the python world.

Although there are also quite a few Ruby web frameworks, Rails is (by far) the biggest and most adopted.

People will tell you learn what you find easy to use. I will tell you:

Learn Ruby and Rails if you want a startup job (this depends on where you want to work and what your local market is using. So if you live in a country who is still big on PHP, then learn that).

Learn the fundamentals of Ruby or Python (whichever makes you happiest and has the most ease-of-use). A good programmer should be able to switch between languages with minimal effort (and some commitment).

Learn Python if you want broader application of programming (like a data science job or a job in tech finance).

I've avoided saying "learn X framework" because they're all somewhat similar under the hood (most of the big frameworks follow the MVC pattern of application design/structure).

</comment><comment><USER4> Apart from that, a bulk of people are learning Ruby and hence rails most of the time as the support and gems are pretty vast.

Also, Python is more defined in terms of how you structure the code, while Ruby has more ways to express the same thing, and more tolerant of errors in some sense. With that also comes the problem of harder to troubleshoot errors.

</comment><comment><USER5> 1) Rails is more popular than Django. Rails was the first MVC web framework, and it has been embraced by the startup community for it's ease of prototyping applications. Because of this and the high-profile successes of major companies using Rails (such as Twitter) more people interested in learning to code are guided towards Rails as the first framework to learn. 2)I also suspect that the Rails community is more design-oriented than most other communities and so have pulled some designers, and front-end devs into the community

</comment><comment><USER6> IMHO, there are amazing tutorials for rails available. Both free and paid tutorials. If you have the basic of ruby, you can pick up rails pretty easily.</comment>


Driveby Spam Infects PCs When E-Mail Is Opened [FUD?] - <AUTHOR> http://eleven-security.com/press-release/items/warning-driveby-spam-infects-pcs-when-e-mail-is-opened.html

<comment><AUTHOR> This smells like FUD to me. No details given. Web mail clients, or just installed clients? Can't imagine Gmail and the like executes JavaScript in emails...</comment>


Writing a JPEG Decoder in Rust – Part 2: Implementation I - <AUTHOR> https://mht.technology/post/jpeg-rust-2/# <comment><USER2> If you scan through the source (on github), the most notable thing is the lack of the "unsafe" keyword. I've seen too many people basically transliterate from C to Rust, along with all the unsafe operations. This one is pretty much unoptimized, but still seems to be performant enough, and doesn't do anything "unsafe".

That's not to say you could just throw this into the back-end of a public- facing website. It's still going to panic (abort) if someone unexpected happens, and it's still going to chew indeterminate amounts of CPU, memory or storage unless sandboxed (maybe even just ulimit). And there's still the danger one of the Rust standard library functions has a flaw in it. But this is the kind of starting point you wouldn't get with the plain C equivalent.

<comment><USER3> Given the history of vulnerabilities in tools like ImageMagick, that panic might still be a better position than an exploitable memory bug.

<comment><USER4> If you run it in a spawned thread, the thread will actually just unwind and disappear if it panics (by default).

But to detect panics, you can use `afl.rs` to fuzz a parser: [https://github.com/frewsxcv/afl.rs#user-content-trophy- case](https://github.com/frewsxcv/afl.rs#user-content-trophy-case)

</comment></comment></comment><comment><USER5> I don't know rust, but what happens if you get a 0xff as the last byte here, wouldn't i+1 go out of array bounds?

       while i < vec.len() {
                encoded_data.push(vec[i]);
                if vec[i] == 0xff && vec[i + 1] == 0x00 {
                    // Skip the 0x00 part here.

<comment><USER6> Since Rust people are reading this.

I find myself wanting to walk an iterator pairwise regularly for stuff like this and I'm using:

        for (cur, next) in (& vec).iter().zip(vec.iter().skip(1)) {
            encoded_data.push(cur);
            if cur == 0xff && next == 0x00 {
                // ...
            }
        }

Is there a better way to write this? What I'd really like is the equivalent to Clojure's partition[1]. I know that the stdlib has windows `(partition n (dec n) seq)` and chunks `(partition n n seq)` implemented on slices but I usually want this on iterators for the lookahead-like behavior shown here.

[1] [https://clojuredocs.org/clojure.core/partition](https://clojuredocs.org/clojure.core/partition)

<comment><USER7> I'm not 100% sure, but [https://crates.io/crates/itertools](https://crates.io/crates/itertools) might have what you're looking for.

<comment><USER8> I think [http://bluss.github.io/rust- itertools/doc/itertools/struct.Z...](http://bluss.github.io/rust- itertools/doc/itertools/struct.Zip.html) would fit their use case?

</comment></comment></comment></comment><comment><USER9> this is a really elegant way to take parallel arrays and put them into a table:

      let codes: Vec<HuffmanCode> = data_table.iter()
                .zip(code_lengths.iter())
                .zip(code_table.iter())
                .map(|((&value, &length), &code)| {
                    HuffmanCode {
                        length: length,
                        code: code,
                        value: value,
                    }
                })
                .collect();

Nice!

<comment><USER10> It seems like a lot of work? In scala this would just be:

        val codes = (data_table, code_lengths, code_table).zipped map HuffmanCode

<comment><USER11> Rust is not Scala

<comment><USER10> It's not, but they're both ML-family languages. I had hoped that Rust would be able to offer a similar level of elegance to Scala.

<comment><USER12> Looking at the example, I can't find a thing in there that is not required (except the obvious `:Vec<_>` type that is not required). We need `.iter` to tell that iterator is imutable (there is mutable version), we need `.collect` to actually run the iteration. I also don't think objects should have default constructor functions.

It may be possible to implement `.zipped` on tuples though.

<comment><USER7>
      > (except the obvious `:Vec<_>` type that is not required)

It is required, otherwise, `collect()` doesn't know what type of collection to collect into.

      > It may be possible to implement `.zipped` on tuples though.

This is impossible without varargs, no?

<comment><USER13> > This is impossible without varargs, no?

Nah, you'd just implement it as an impl over and over on tuples of reasonable size (up to 16 or so).

It wouldn't be elegant, but it'd work in practice.

<comment><USER7> Oh right, I see now.

<comment><USER14> This technique is used a lot by specs: [https://github.com/slide- rs/specs/blob/master/src/join.rs#L5...](https://github.com/slide- rs/specs/blob/master/src/join.rs#L50)

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER15> I feel like i'm missing something.

In the "Why" section he claims that Rust is a performant language with a low- level feel.

In this part, he claims that decoding a tiny JPG image took 2 seconds with his code.

How is that "performant" by any definition?

<comment><USER16> Somebody on reddit found the bottleneck: [https://www.reddit.com/r/rust/comments/4yinbt/writing_a_jpeg...](https://www.reddit.com/r/rust/comments/4yinbt/writing_a_jpeg_decoder_in_rust_part_2/d6obz7r?context=2)

After fixing it, it apparently runs in 100 ms.

<comment><USER17> It's worth mentioning, those numbers are for my test program which only read a single file, using my and his implementations. In addition, the file read was 20MB. lena.jpeg is 90K.

</comment></comment></comment><comment><USER18> Rust code looks very similar to ES6 or Typescript. The great CS language convergence has begun!

<comment><USER19> Yes: now we all forget how to correctly manage memory. Rust: where resources are unlimited and aborting when you run out of them is okay

<comment> vertex-four The vast majority of programs that you run on a day to day basis will abort when they run out of memory. On a default Linux system, there's not even any way to prevent that - you need to faff with the config to make it actually return errors when allocating memory.

<comment><USER20> That's all irrelevant for a language which is supposed to be a systems programming language, however that term is defined.

<comment> vertex-four I don't think it is - less, bash, gcc, systemd, most interpreters, and Firefox will all pretty much just crash if malloc() fails - they're varying levels of things you'd want a "systems language" for. Unless you're trying to define systems language to mean one used for kernel or bare-metal embedded development (both cases where even in C, you skip the standard library and write your own memory allocation functions etc), there's really very few cases where you (a) are allowed to allocate memory and (b) need to fail gracefully somehow if you can't.

<comment><USER20> I'm not saying that aborting on OOM never makes sense. I'm saying there are many situations where you shouldn't abort on OOM, and those situations overlap considerably with the situations in which a systems language is ideal[1]. So a systems language that doesn't allow for robust and fine-grained OOM handing isn't much of a systems language.

Example: Basically any highly concurrent network daemon that multiplexes many clients on the same thread. In that case, you want much more control over where to put your recovery point. Even if the process doesn't abort, if the recovery point is beyond the scope of the kernel thread (i.e. a controller thread, which was the recommended solution before catch_unwind), that can be really inconvenient, and also requires a lot of unnecessary passing of mutable state between threads, which is usually something you try to avoid.

[1] Lua has robust support for OOM recovery, which is noteworthy because there can be situations where you both want to handle OOM but where a scripting language is more preferable. Example: An image manipulation program with scriptable filters, where you don't want an operation that can't complete to take down your process or thread.

<comment> vertex-four On the other hand... who actually disables over-committing on their Linux servers or the machines they run image editors on so that you could actually handle out-of-memory errors? I've never come across anyone who's changed the setting unless told to by a specific piece of software (almost always database software).

<comment><USER20> I do. Not only do I disable overcommit, I disable swap.

Most software is riddled with buffer overflows and other exploits, and yet it's rare that you come across an intruder while he's installing his rootkit. That doesn't mean it's not happening, just that people are ignorant about it; and that things can appear normal even with rootkits installed.

Like buffer bloat, people can be experiencing a problem without even realizing it's a problem. When software crashes under load they just think that it's _normal_ to crash under load.

Or when it crawls to a snails pace under load because it's swapping like mad, they think that's normal, even though QoS would have been much better if the software failed the requests it couldn't serve rather than slowing everybody down until they _all_ timeout, sometimes even preventing administrators from diagnosing and fixing the problem.

OOM provides back pressure. Back pressure is much more reliable and responsive than, e.g., relying on magic constants for what kind of load you _think_ can be handled.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER21> Original thread: [https://news.ycombinator.com/item?id=12319557](https://news.ycombinator.com/item?id=12319557)

<comment><USER17> Oh well - not getting karma on HN isn't the worst thing that could've happend :)

</comment></comment><comment><USER22> [0] an old decoding speeds survey of existing JPEG decoders(2010).

[0] - [http://www.briancbecker.com/blog/2010/analysis-of-jpeg- decod...](http://www.briancbecker.com/blog/2010/analysis-of-jpeg-decoding- speeds/)</comment>


Would You Pay Someone to Do Your Online Dating? - <AUTHOR> http://observer.com/2016/02/would-you-pay-someone-to-date-for-you/ <comment><USER2> Not long ago, I took an Uber ride from a driver who's main job is as an online dating consultant. It apparently is a fairly lucrative niche.

<comment><USER3> He has a "lucrative" business but drives for Uber (even with current rates)? That's an odd choice of hobby.

<comment><USER2> A lot of the Uber drivers in this area tend to be semi-retired older guys that seem to do it as much to get out of the house a little bit as any other reason.</comment></comment></comment>


The Legal Gray Zone of Marijuana at Airports - <AUTHOR> https://www.wsj.com/articles/the-baffling-legal-gray-zone-of-marijuana-at-the-airport-11567589405?mod=rsswn <comment><USER3> I wish they would just go ahead and legalize recreational use nationwide.

As someone who binge drank _a lot_ from ~16yo to 22yo, I can't imagine what kind of lunacy causes someone to think alcohol is safer or more acceptable than marijuana use. Maybe the people behind propaganda didn't like how marijuana can make people less social and more eccentric, but since drinking alcohol is seen as a way of socializing and camaraderie, it's acceptable?

The older I get the less I like alcohol. _Hangovers_ suck. I was (un)lucky enough to have a bad lifetime case of acid reflux/GERD which is exacerbated by alcohol, so between that and not liking the hangovers, I generally can't imagine being an alcoholic. But alcohol ruins a lot of lives. I don't know how many lives marijuana ruins, except maybe out of laziness or lack of motivation.

<comment><USER4> > I was (un)lucky enough to have a bad lifetime case of acid reflux/GERD

Have you seen your physician about this and/or do you have it under control?

If not - try this. I am not a doctor, so this is just friendly advice, but it worked for me. Where it came from is my wife had a friend who had basically the same issue, and she was a hypochodriac to boot - her doctor basically recommended the same thing, though. So - when my GERD became bad, my wife had me try this - and so far, it has worked great. No more waking up in the middle of the night choking and thinking you're having a heart attack, or at worst unable to breath because you aspirated acid into your throat and/or lungs...

When you wake up - before you eat, take one each of:

20mg Esomeprazole (1 tablet) - acid controller 20mg Famotidine (1 tablet) - acid controller 150mg Ranitidine (1 tablet) - ulcer preventative

Do the same in the evening, before you eat dinner. Also, eat dinner earlier (5-6pm - I was in the habit of eating closer to bedtime, which made things worse).

You're also supposed to avoid drinking alcohol with these - I've never had a problem having an occasional beer or alcoholic beverage long after I took them, but ymmv (and I know you said you don't drink anymore - but I'm relating this in case others want to try it out). If in doubt, don't drink anything alcoholic.

These amounts may seem large, but they are (supposedly) no where near the limits of what a doctor can prescribe (it's like ibuprofen - OTC is 200mg tablets, but prescription levels are upwards of 2400mg max per day, depending on your weight - and you also have to have blood work done at that level, too). I currently take two of each pill, mainly because I prefer my diet as-is (I'm a stubborn fella).

If that still seems like too much - then just do the same regimen of the first two pills, twice a day. That's what I did for a few years, then my symptoms started to return. My wife suggested adding the third, I did - and things got better.

But you might find yourself needing a higher dose after a few years, which is why I take two of each. As I note below, I started with the first two, then doubled up, then added the third. That's been working for me.

Note that this won't make things perfect. You can change your diet to help, of course, the frequency you eat, your portions, etc - all of that helps too. Also, drink a lot of water vs other liquids - that's a big help overall. But I can tell you that it should help you to sleep better at night, and make you feel better overall.

Finally - if you notice anything weird while on this regimen, then see your doctor. Really, all you need to do is check the whites of your eyes - <USER2> things start tinging yellow, then your liver and kidneys are being stressed hard, and you'll want to back off and drink a ton of water of course (and maybe see your doctor too). If you're in decent health otherwise with no major issues, your body can take a lot before you keel over (I mean, seriously - look at how much drug abusers put their bodies thru - the body is actually insanely resilient).

Now - I'm probably going to be chastised for being facile about this advice and such - so again, this is only offered knowing what it's like having extreme GERD and not wanting others to be in the same pain. So again - if you are at all unsure about this advice, talk to your doctor about it if you aren't already under the care of a physician.

But the truth is, they're going to tell you the same thing:

1\. Eat less, exercise more

2\. Stay away from spicy and fatty foods

3\. Stop smoking

4\. No caffeine

5\. Lose weight

6\. Take one or more pills I've already mentioned

That's the absolute truth - other than #6, it's like their mantra or something. I'm not saying it's bad advice - I'm just saying it should be "common sense" advice. It's also, imho, advice that takes some of the fun out of livin' \- so take it all in moderation, too. None of us are getting out of this alive. Might as well have some fun before the end.

<comment><USER5> With respect to your daily medications, did your physician sign-off on this for _that_ duration (a few years)? From what I've heard these medications were not supposed to be taken for longer than a few weeks at a time.

I'm asking out of curiosity and as a near-chronic sufferer of reflux. It seems that anything other than room temperature water gives me indigestion.

<comment><USER3> My doctors have told me it's fine to take the PPI as long as you need; I'm not sure about the others.

There is evidence of negative effects but I guess it's a choice between heartburn symptoms or risk of those..

</comment></comment></comment></comment><comment><USER6> A person I know routinely flies with ~1 lbs of marijuana in his checked luggage as well as edibles and vape products, all just for personal use. He flies internationally to and from the States and no one ever says anything to him. Even flying into other countries where there's no rec marijuana. It's insane.

<comment><USER7> 1 lbs for personal use?? How long is this person traveling for, because even an everyday smoker would have a hard time using a whole pound of weed in addition to vapes and edibles on a trip. That's 454 grams of weed, they would need to be getting high like 24/7.

<comment><USER8> I know some serious smokers who will burn an ounce in three days. I don't know how or why they'd want to smoke that much weed but they do. And I smoke every day, though not heavily. Just a few bowls after work.

<comment><USER9> Even at that rate it would take 48 days to consume a pound.

</comment></comment></comment></comment><comment><USER10> Slightly Offtopic:

There was a section on a British news program this morning (Today on Radio 4) that said that UK subjects that invest in US Cannabis companies (even ones that are legal in their states) could be prosecuted in the UK under the Proceeds of Crime act. This applies even if the companies were held in a fund.

I think there are lots of grey areas when it comes to legal Marijuana.

</comment><comment><USER11> My friend who runs a bomb sniffing dog for the TSA ("We don't find a lot of bombs, no") says that it's _always_ illegal to bring pot on a flight.

Even if the flight is between two cities where pot is 100% legal, it can always be diverted, and you might end up landing in Kansas City.

<comment> cbm-vic-20 If a flight from Los Angeles to San Francisco (both in legal California, over one hundred miles from any land that is not California) is diverted to Kansas City, we've got bigger problems than someone carrying a few joints in their luggage.

<comment><USER12> The aircraft could end up landing at one of several Air Force bases along the way, where it definitely is illegal. But I cannot imagine the legal process whereby someone is actually charged for possession because their flight had an emergency landing still within the state of California. The court would have to be a military court, and I don't know the process by which a civilian would end up tried in a court that has jurisdiction over an AF base. The court matters because the DA and prosecutor decide who to charge.

<comment><USER13> I don't believe civilians can be sent to a court martial in general (although I could certainly be wrong). The few times I was aware that a civilian got in trouble on post, the local police come pick up the civilian (if they need to be held) and it's tried in a civilian court.

<comment><USER14> _Hamdi v. Rumsfeld (2004)_ was technically a US citizen being tried by a military tribunal: [https://supreme.justia.com/cases/federal/us/542/507/](https://supreme.justia.com/cases/federal/us/542/507/)

</comment></comment></comment></comment></comment><comment><USER3> _But casinos prohibit all forms of marijuana, including vaping and edibles._

What do casinos have against edibles?

Do they also ban e-cig vaping?

This seems like an odd rule for places where people regularly do cocaine.

<comment><USER15> It says it right afterwards because they have federal gambling licenses, they don't want federally illegal substances.

> regularly do cocaine.

Illegally doing drugs is different and has been done in Vegas for just about forever, but they don't want federally illegal substances out in the open. I'm sure they would confiscate your coke if they found it too.

<comment><USER16> >because they have federal gambling licenses, they don't want federally illegal substances.

I wonder if that is true for Native American casinos

</comment></comment></comment><comment><USER17> I just put the vape oil cartridges in my luggage and check it. I think that is the safest.

<comment><USER18> That still sounds like a pretty big risk. If you're just away for a few days, maybe it's easier to not take any. They can and do search checked bags, and you may have gotten lucky.

<comment><USER19> I've taken oil carts through in my carry on bag a handful of times and have only been asked about them once. I replied that they were e-cigarette cartridges and that was deemed fine. Visually, a THC and nicotine cart are indistinguishable.

</comment></comment></comment><comment><USER20> It's not exactly a gray zone everywhere. I was at LAS last week, and there are green trash bins at all the entrances so that people can dispose of their pot before they enter the airport.

<comment><USER21> Sounds like a goldmine!

</comment></comment><comment><USER22> National Parks and National Forests are another place you cannot possess even if that park/forest is in a state where it is legal. Park rangers are federal police and the land falls under federal jurisdiction.

<comment><USER23> True. And most rec. states (at least CO) still ban the use of cannabis in their state parks but anyone in Boulder can tell you that there one of the few 'public' places you can easily consume cannabis even if it's technically 'more' illegal (federal vs local regulation).

</comment></comment><comment><USER24> While the article is interesting, I don't see anything "baffling" about it. All the rules seem internally consistent to me.

<comment><USER25> Ok, we've debaffled the title above.

</comment></comment><comment><USER26> The truth is that there is no gray zone. Marijuana, until otherwise classified by the FDA, is illegal.

Many states have decriminalized it, meaning that they have effectively nullified the federal regulations-- though not technically the legislation, as none [that I'm aware of] exists.

Like immigration, the federal government chooses to enforce (under Trump) or ignore (under Obama) sections of federal legislation and regulation as they see fit.

I'd personally feel much more comfortable if everyone was subject to the same laws, as selective enforcement can quickly lead to corruption where one group is punished, while the other is ignored.

<comment><USER27> The omnibus bill has effectively legallized medical marijuana in states where it is legal at the federal level, by prohibiting interference with state medical marijuana laws including a complete prohibition on prosecution. This is federal legislation.

<comment><USER28> That's all well and good but can be changed on a whim at any time. There's a pretty big difference between "legal" and "illegal, but we won't bother to enforce it". The latter is regularly abused.

<comment><USER27> It can be changed when the omnibus spending bill is renewed, by congress. Not really at any time.

<comment><USER28> Which is on a regular schedule, and subject to all manner of political gamesmanship on what is and isn't included in it. It's not as reliable as an actual distinct law, in other words, and can't be treated as such.</comment></comment></comment></comment></comment>


Interview with former CIA, NSA chief Michael Hayden - <AUTHOR> http://www.afr.com/p/national/transcript_interview_with_former_KnS7JDIrw73GWlljxA7vdK

<comment><USER2> >"The issue is at what point does Islamic fundamentalism flip-over and become a genuine national security threat?"

He has said almost this same statement in a previous interview, and it is very troubling to me, and very indicative of why these programs should not exist.</comment>


Show HN: Search Engine That Pays Your Student Loans for FREE. Over 1000 Users - <AUTHOR> http://browseu.com <comment><USER2> Isn't this similar to late '90s browser add-ons that used to pay you to have their ads always displayed?

<comment><AUTHOR> I'm not quite sure what you're referring to. I might have been too young during that time. Just by the short description it sounds fairly different. Bing and Google also display ads during your searches. Whether you notice them or not. They keep 100% of the profit from those ads. We haven't changed anything besides the business model. The only reason companies like Google make as much money as they do is because so many people use their search engine and continue to generate those ads. These companies make their money from the actions of their users. Without those users there is no money. This is why BrowseU gives back to its users in the form of student loans. They're the reason money is generated from the ads and they should be compensated for that.

<comment><USER2> > The only reason companies like Google make as much money as they do is > because so many people use their search engine and continue to generate > those ads

I'm not very into this advertising mumbo jumbo, but you might be wrong here, since Google have AdWords/AdSense on couple more sites than the search pages. :)

Long story short, there were these companies that either had a browser add-on or a stand alone app that filled 10-30% of your screen with ads, for which you were paid by hour.

Some networks were so successful they even give free PCs :)

\- [https://en.wikipedia.org/wiki/Pay_to_surf](https://en.wikipedia.org/wiki/Pay_to_surf) \- [http://edition.cnn.com/2003/TECH/ptech/12/17/free.pc.reut/](http://edition.cnn.com/2003/TECH/ptech/12/17/free.pc.reut/) \- [http://www.angelfire.com/pe/home4u/cl204.html](http://www.angelfire.com/pe/home4u/cl204.html)</comment></comment></comment>


Jive Software acquires Meetings.io (YC W11) - <AUTHOR> http://blog.meetings.io/post/35076012414/jive-software-acquires-meetings-io

<comment><USER2> More info here: [http://techcrunch.com/2012/11/05/jive-software-acquires- meet...](http://techcrunch.com/2012/11/05/jive-software-acquires-meetings-io- and-producteev-to-enhance-social-platform-with-real-time-messaging-and-task- management/)

Congrats guys!

</comment><comment><USER3> Awesome! Congratulations Denis & Arend!

<comment><AUTHOR> Thanks guys!

<comment><USER4> Very much looking forward to working with you guys!

</comment></comment></comment><comment><USER5> Jive also picked up Producteev [http://blog.producteev.com/producteev-is-now- part-of-jive-so...](http://blog.producteev.com/producteev-is-now-part-of-jive- software-and-w)

</comment><comment><USER6> It's a little weird that it's written from the perspective of the meetings.io folks who are joining Jive, and then signed by someone from Jive. :)

<comment><USER7> It's not, that's just press information.

</comment></comment><comment><USER8> Meetings.io is fantastic; congratulations on the acquisition! Maybe I can convince my coworkers to start using it as well, now.

</comment><comment><USER9> I remember meeting one of the founders at a party back in March, I think it was a week before they launched. Well done guys!

</comment><comment><USER10> congrats guys! I did a ton of work with Jive on their collaboration platform and while they were lacking on the real-time side of things, they were otherwise awesome to work with and it seems they are plugging holes with these great acquisitions.

</comment><comment><USER11> I really hope this doesn't mean meetings.io is going away, I've really enjoyed using it.

<comment><AUTHOR> Don't worry guys, Meetings.io is not going away and will keep running as per usual.

</comment></comment><comment><USER12> Congrats to the meetings.io team. I'm a big fan of the product.

</comment><comment><USER13> Congrats to everyone at both companies!

</comment><comment><USER14> Congratulations, Raaaaaaaandy!

<comment><USER14> with eight "a"s

</comment></comment><comment><USER15> Congratulations Dennis! Beer?

</comment><comment><USER16> Congrats guys!!

</comment><comment><USER17> Congrats guys!

</comment><comment><USER18> Wow, congrats!

</comment><comment><USER19> congrats guys!</comment>


Moving Beyond Basecamp: Managing Company Growing Pains - <AUTHOR> http://go.DanielOdio.com/basecamp

<comment><USER2> I like how you approach your problems with Basecamp as usability issues and not as feature-set limitations. I think Basecamp is at a sweet-spot with features, but has a lot of room for improvement in how users interface with it. The application really hasn't changed much since it was launched. With the mountains of data on how its used, I would think 37signals would refine the app to be the most usable interface in the world.

</comment><comment><USER3> My (rejected) YC project literally addressed every single concern voiced in this article.

If you can relate to the struggles of managing and working in multi-resource, multi-project environments, sign up for the beta of FlowRocket at: <http://signup.flowrocket.com>.

</comment><comment><USER4> I'd recommend checking out <https://www.greplin.com> to help search basecamp. I've encountered some of the same issues with their search you have and Greplin makes things much better!

(full disclosure: I work at Greplin ;-)).

<comment><USER2> I always misunderstood Greplin to be solely a social network search tool. It looks like it is much more than that.

Greplin is the YC startup that programmed it in days, right before demo day, correct?

<comment><USER4> Yep, one of our co-founders (Daniel) hacked together the first demo of multi- service search ~2 days before Demo Day when his earlier idea fell through.

The team/product have grown quite a bit since then though ;-)

To be honest, I'm not really sure where we got the reputation for being a 'social search' tool. We want to help you search your data, wherever it is.

We support a lot of applications, including ones that aren't traditionally considered social, like Dropbox, Basecamp, Salesforce, GMail, Evernote, or Highrise. (We also do support more traditionally 'social' apps like Facebook, Twitter, Yammer, or LinkedIn though, since a lot of people's information is in these types of services).

<comment><USER2> I think that reputation came from a TechCrunch article. Honestly, I thought the idea was a "solution in search of a problem" at first, but now that I see you're really focusing on the real apps (gmail, dropbox, chat, etc.) I "get it." There's been plenty of times I've tried searching for something, but I couldn't remember the medium.

One feature you guys really need to do quick (shouldn't take long) is paper- medium search. I'll write notes on post-its, or give some info on a sheet of paper to someone. I should be able to search all this in real-time too, as I write it.</comment></comment></comment></comment>


I'm an Unemployed Waitress. Don't Dine Out at All - <AUTHOR> https://www.noraeberman.com/post/i-m-an-unemployed-waitress-don-t-dine-out-at-all <comment><USER2> I fail to understand this article. It seems to wobble between "don't eat out, you'll propagate infection to others," which, yes, social distance good, disease transmission bad.

But most of the article seems to suggest something like: "when you eat out, you put us, your service staff, at risk." Uhm... quit?

Normally I'd say something like, "most people can't afford to just quit," but no one can afford to pay you to stay home, either, so what exactly is the author proposing?

<comment><USER3> Aren't you disqualified for unemployment benefits if you quit instead of being fired?

<comment><USER4> "fired" means being terminated for cause, such as you stole something. "laid off" is the term used for no longer being employed for other reasons, like the company can't afford to keep your position around.

<comment><USER5> > "fired" means being terminated for cause, such as you stole something."

Ugh. All 50 states have At-will employment:

"At-will employment is a term used in U.S. labor law for contractual relationships in which an employee can be dismissed by an employer for any reason (that is, without having to establish "just cause" for termination), and without warning,[1] as long as the reason is not illegal (e.g. firing because of the employee's race, religion or sexuality)." [1]

Being 'fired' has a negative stigma, despite the fact you can be terminated for _any_ reason, including 'employee just didn't fit in'. Many companies are also very savvy about the process. Have a "negative" performance review, with a warning, then some time later be fired. Thus documenting a "cause" other than your ugly sweater.

What's interesting is when employers mistakenly believe they can disqualify you for unemployment because they fired you. This is not the case.

[1]: [https://en.wikipedia.org/wiki/At- will_employment](https://en.wikipedia.org/wiki/At-will_employment)

<comment><USER4> Thanks for the legal clarification, but that's not what the point is. Many people, especially those new to the workforce, seem to like to use the word "fired" to mean "lost my job" because they've heard it in TV shows or whatever, and they don't realize that it has very negative connotations (only that it sounds forceful).

I see a lot of people saying things like "my company ran out of money and they fired me", which does not accurately describe what happened. If you went into a job interview and told them you were "fired" when you were really "laid off", that could dramatically impact whether or not you get the job, so it is important to know what language people use, regardless of the legal definitions.

<comment><USER5> "...they don't realize that ['fired'] has very negative connotations"

?! Really?

"important to know what language people use"

Thats exactly what I'm saying. There are three terms recognized by your state department of labor: Quit, Fired, Laid Off.

You can be "fired" both in legal terminology, and in common language use, for no fault of your own, but the word has a negative connotation.

What am I saying? It sucks! It's a failure of language. Socially 'fired' has a negative 'connotation' (which is commonly applied at a personal level), and in both real-world practice and in legal terms 'fired' has the 'denotation' of 'termination' where termination can be all of these things (at a relationship level), and the employee is not necessarily 'at fault'.

The meaning of 'fired' is so unpredictable I can't imagine anyone using it as you say, because they don't know how someone is going to take it.

However, your next employer can call your previous employer to verify employment and there is no federal law preventing the old employer from describing your termination as 'fired'. That sucks.

</comment></comment></comment></comment></comment></comment><comment><USER6> Before I was in software I spent many years in the restaurant industry and I can't imagine how tough it must be for those employees.

The article mentions that her boss told her not to come to work if she feels sick. In the industry, I never received anything but pushback for banging out, even when I was deathly ill. The opposite can be true with managers issuing repercussions for calling in sick.

</comment><comment><USER7> In NYC you can't even dine indoors. Is there really a big risk of eating maskless at a table, outdoors, separated by plexiglass (or 6 feet apart), in a city where the COVID infection rate is so low? Or serving those customers?

<comment><USER8> The reality of NYC dining is more like this.

[https://ny.eater.com/2020/7/21/21302310/outdoor-dining- reser...](https://ny.eater.com/2020/7/21/21302310/outdoor-dining-reservations- top-nyc-restaurants)

[https://www.6sqft.com/best-outdoor-dining-restaurants- nyc/](https://www.6sqft.com/best-outdoor-dining-restaurants-nyc/)

The tables are next to each other; in many cases, with just enough room for one person to squeeze through. Plexiglass between each table is a rare luxury.

</comment></comment><comment><USER9> When did we forget how to cook for ourselves? I am perplexed by the large number of articles-- including this one-- the seem to assume that the options are eat-in or take-out.

<comment><USER10> It seems disturbingly common among the college-to-30 demographic. Among my coworkers at a FAANG company, many of whom had gone straight from parents' home to college dorm to a corporate campus with multiple cafes serving more- than-decent food, the switch to WFH caused no small amount of angst. Many others in tech and finance become "foodies" addicted to meals better than they can cook themselves, and since they also have the means to afford it they make it a habit. Still others, families with two working parents under constant time pressure, succumb to the appeal of five minutes managing takeout vs. twenty for even the simplest kind of meal. (That includes cleaning; one of my pet peeves is people who discount the time/effort involved in cooking because they _always_ dump everything but over-the-flame time on other household members.)

Some of the reasons are good and some are bad. While I also view this development with some dismay, I'm hesitant to criticize people who are merely making different tradeoffs in a different time/context than I am.

<comment><USER9> Indeed, a tradeoff could easily make sense for someone.

That a person's chosen tradeoff might not change in a time of widescale pandemic and massive unemployment surprises me. And that a lot of articles take it granted that people will continue to eat out perplexes me.

We ate out a fair bit before covid19 cases took off but haven't once since March... wasn't even something that we considered at any point.

TBH food at home has been more enjoyable than what we were getting out, the time suck in cleanup is real-- but it isn't like we're going anywhere. :)

<comment><USER11> I too am surprised at people who continue to eat take out. I don't trust restaurant workers to stay home when not sick and take precautions with the food to make sure it's not contaminated. It's hard enough dealing with food delivery every few weeks. Most people won't change unless they are forced to. I hope indoor restaurants and bars are shut down again soon. Completely unnecessary services. Everything that can be should be curbside service.</comment></comment></comment></comment>


In Silicon Valley, the Big Venture Funds Keep Getting Bigger - <AUTHOR> https://www.wsj.com/articles/in-silicon-valley-the-big-venture-funds-keep-getting-bigger-1501002000 <comment><USER2> A) Paywall

B) Pewdiepie

C) That headline makes me think the article was written by a moron. "Investment funds continue investing, compound interest is a thing, what's a profit?"</comment>


Stay organized with minimal context switching – Marquee for VS Code - <AUTHOR> https://marquee.activecove.com/blog/1 <comment><USER2> This is not constructive, but that emoji usage remind me of this [0] fake error message, back when whimsy was more in vogue

[https://i.kym- cdn.com/photos/images/original/001/350/668/6e1...](https://i.kym- cdn.com/photos/images/original/001/350/668/6e1.jpg)</comment>


Dr Heimlich saves choking woman with manoeuvre he invented - <AUTHOR> http://www.bbc.com/news/world-us-canada-36400365 <comment><USER2> I like to think the greatest moment of my life was when I performed the heimlich on a colleague on an airplane. It took three tries but it worked. In retrospect I was surprised how calm I was. I remember thinking on the third try, "if this doesn't work, I'm yelling for a flight attendant."

What's even crazier is I was sitting in the window seat, she in the middle seat. I'm surprised it worked in such cramped circumstances.

And something amusing: the guy in the aisle seat slept through the whole thing.

</comment><comment><USER3> Heimlich means well, but the popularity of his maneuver is due more to his relentless promotional skills, and not to sound research. If someone is choking, it's best to slap them hard on the back a few times.

[http://www.metroactive.com/papers/metro/01.05.05/heimlich-05...](http://www.metroactive.com/papers/metro/01.05.05/heimlich-0501.html)

<comment><USER4> Last time I did my first aide certificate here in Australia (late 90s), if the back slapping is unsuccessful, the preferred technique was to lay them down on their side, place your hands under their armpit, flat over their ribs and try short, sharp compressions, squeezing the lungs.

Because the Heimlich technique is so well known, I remember the instructor citing the above as superior because it was less likely to break ribs or do other internal damage.

Caveat: This is in the case of complete obstruction and/or unconsciousness. If it is a partial obstruction, and you can keep the person calm enough to breathe enough, call an ambulance. All first aide is about keeping the person alive long enough for the professionals to take over, not being a hero that solves the problem yourself.

Looked up St John's and it looks like the technique has changed since then: [1] This actually sounds harder for effective compressions though, and requires more strength.

[1] [http://www.stjohnambulance.com.au/docs/posters/ehs_choking_a...](http://www.stjohnambulance.com.au/docs/posters/ehs_choking_a3.pdf)

<comment><USER5> I'm a doctor in Australia. The current recommendation is 5 blows to the back between the scapulae followed by 5 pushes on the sternum. Alternate until they either can breathe again or pass out.

Heimlich doesn't feature, but I can't say I wouldn't try it if nothing else was working.

<comment><USER4> > Alternate until they either can breathe again or pass out.

What do you do once they pass out?

Yes, I agree doing the Heimlich would be better than doing nothing. Just that other there seems to be other techniques that are better than Heimlich. I'll defer to your judgement though.

</comment></comment></comment></comment><comment><USER6> Looks like it's the second time he's used the maneuver: [http://www.bbc.com/news/world-us- canada-36400365](http://www.bbc.com/news/world-us-canada-36400365)

<comment><USER7> Well that surely trumps the local source. We'll change the URL from [http://www.cincinnati.com/story/news/2016/05/26/henry- heimli...](http://www.cincinnati.com/story/news/2016/05/26/henry-heimlich- finally-uses-famed-maneuver/85003350/).

It would be amusing if there were a long history of 'first times'.

</comment></comment><comment><USER8> He's also kinda a crackpot: [http://knowledgenuts.com/2014/09/22/the-strange- story-of-hen...](http://knowledgenuts.com/2014/09/22/the-strange-story-of- henry-heimlich/)

<comment><USER9> I'd go a bit further than 'crackpot' in describing someone who literally gave Malaria to people with AIDS on purpose.

<comment><USER10> It's actually not quite as crazy as it sounds. Malaria was used successfully to treat Neurosyphilis.

</comment></comment></comment><comment><USER11> Just in case, here is a video explaining it again [1]. I had to look it up myself.

[1] [https://m.youtube.com/watch?v=7CgtIgSyAiU](https://m.youtube.com/watch?v=7CgtIgSyAiU)

</comment><comment><USER12> Personal experience that validates your life's work near the end of your life. Sir, if self actualization were a competition you would win.

<comment><USER13> No.

That would be him using technique on himself.

<comment><USER14> He still has a chance...

</comment></comment></comment><comment><USER15> For all of his ups and downs on a personal level, the guy has probably indirectly (and now directly) saved a ton of lives.

<comment><USER16> No. There is no evidence to support the technique at all, and it is no longer recommended in most parts of the world.

<comment><USER17> Well, I'm an anaesthetist, and have heard this argument.

I personally did a heimlich maneuvere on a hospital inpatient who was blue and choking on a big bit of bread, and the bread came out and he turned pink again.

So from my samples size of N=1, it works 100% of the time. I would like to know the high quality randomized controlled trials which show that it doesn't?

<comment><USER16> Just like Lisa's rock. Nothing works 100% of the time, and obviously they do not use "high quality randomized controlled trials" since killing people is not ethical. Current recommendations are to begin with back blows.

</comment></comment></comment></comment><comment><USER18> I can imagine his family and friends were tired of him leaping forward to take advantage of the technique at every opportunity...

\- YOU'RE CHOKING??? -- No, coughing...

\- YOU'RE CHOKING??? -- NO, Heimlich, I'm holding my breath... I have the hiccups....

\- YOU'RE CHOKING??? -- FUCKING HEIMLICH! I'M TRYING TO TAKE A DUMP!!

</comment><comment><USER16> It isn't a "life-saving technique", it is bunk:

"There was never any science here. Heimlich overpowered science all along the way with his slick tactics and intimidation, and everyone, including us at the AHA, caved in."

<comment><USER19> It isn't though, if you read past the first paragraph in the wikipedia history of the technique.

"The European Resuscitation Council and the Mayo Clinic recommend alternating between five back slaps and five abdominal thrusts in cases of severe airway obstructions.[1][2]"

I hardly think they'd still recommend the maneuver still if it was "bunk".

<comment><USER16> >I hardly think they'd still recommend the maneuver still if it was "bunk".

The mayo clinic doesn't recommend it any more. And your logic there makes no sense. At what point does "still" matter? It used to be recommended by more people. It has been falling out of favor as more and more organizations stop recommending it as there is no evidence to support it. The fact that a few haven't updated their guidelines yet doesn't make it supported by evidence.</comment></comment></comment>


Ask HN: Which PC's BIOS is most resistant to rootkits? - <AUTHOR> Hi,
It's become clear that both my HP PC's have rootkits installed to their BIOS. I hear my upstairs neighbors reading off my screen regardless of what OS I install. I filed a Police report, & a claim w/ my Renter's insurance, but it doesn't look like anything positive will happen- the PD hasn't got back to me in a week, & the claims adjuster said there's not much that can be done since I don't have ID Theft coverage.
I'm hoping the insurance claim will at least provide enough to get a new PC that's not infected. Naturally, I'm thinking about what PC I can get that'll be most resistant to re-infection.
Thus, I ask here- as my attackers watch my screen. <comment><USER2> 1\. Reading of the screen can be done in ways other than root kits, e.g. TEMPEST[0], or a good enough strategically placed webcam, or a telescope pointing at a window on a nearby building that functions as a mirror.

2\. BIOS rootkits are definitely possible, and quite scary. However, I have so far not found any reliable documentation about them being found "in the wild" \- does anyone else have any? (Yes, I am aware of the Snowden disclosures; Yes, I've seen stuff like Thunderstrike in action; But these things, if/when used, are extremely targeted. Is there a dependable writeup of a non-targeted BIOS rootkit found in the wild?)

3\. If you don't know how you got infected, what makes you think a new PC will solve the problem? PCs are programmable devices. No programmable device is safe. There have been reports of malware hiding in GPU firmware, USB controllers, SD cards and HDD / SSD controllers. The PC itself is just a small part of the overall equation.

4\. Have you had a psychological or physiological crisis recently? Have you done some known or unknown chemicals recently? uptake of cigarettes? Do you have a history of schizophrenia in your family? It might be a good idea to consult with a healthcare professional and tell them about what you are experiencing.

[0] [https://en.wikipedia.org/wiki/Tempest_%28codename%29](https://en.wikipedia.org/wiki/Tempest_%28codename%29)

</comment><comment><USER3> That situation sounds so weird :O I'm sure everyone would love more details?

Libreboot I assume is the least likely to be compromised? I don't know much about it, I just trust Stallman to be the go-to person on such issues. [https://stallman.org/stallman-computing.html](https://stallman.org/stallman- computing.html)

Edit: Sorry, you asked about specific PCs. It seems as far as libreboot goes you can only get one of the 10 supported laptops/boards.

</comment><comment><USER4> I second the request for more details. How do you know it's your upstairs neighbors? Have you asked them? How do you know that they're reading off of your screen? If it is them, could they just be reading your screen through an hole in your ceiling? What OS'es have you tried? Is there a possible other explanation, such as screen reading software (e.g.jaws)?</comment>