Fear and Loathing in Linux, or Who Needs /etc/motd (2010) - <AUTHOR> http://web.archive.org/web/20131205090841/http://deadmemes.net/2010/10/19/fear-and-loathing-in-debianubuntu-or-who-needs-etcmotd <comment><USER2> As a reluctant admin for a half dozen odd home and work systems, and having just dealt with a few clean reinstalls, the /etc/motd issue bit me too. It also reminded me a bit of the horror that grub configuration has become.

When I started years ago there was LILO. It had quirks and was a pain to configure. Then grub came along and it had some great new features -- edit the easy-to-understand config file, and changes would automatically take effect. Easy background images. Easy menu building in the config file. Grub understood enough of the filesystem to avoid the LILO cruft.

Now there seems to be about 5 layers of indirection, autodetection, probing, and shell scripting hacks to generate scripts that will eventually spit out a mess of obfuscated grub config files, and god forbid you touch any of this mess because any changes you make will be overwritten (a) next boot, (b) next time the scripts decide to update the config, (c) next system update, or (d) just whenever. All of this dynamic stuff to configure something that, for many systems, needs a config change about zero times per year.

<comment><USER3> I'm with you except that I _never_ understood grub, not even when it was new and innocent.

It's not even fair to say LILO was "a pain to configure". `lilo.conf` was pretty clear and straightforward.

It's just that boot-loading is arcane and dangerous. This makes it possible to make your LILO screw-ups really simple and obvious. Which is much better than the kind of screw-ups you can make with GRUB.

<comment><USER4> Well, apart from the most common screwup: changing something and then _not_ rerunning LILO.

</comment></comment></comment><comment><USER5> Debian 8 has gone back to a normal file in /etc/motd and has gotten rid of all the motd.tail shenanigans, though. :)

<comment><USER6> Yes. The description section of Debian's motd(5) manpage now reads:

           The  contents of /etc/motd are displayed by pam_motd(8) after a successful login
           but just before it executes the login shell.

           The abbreviation "motd" stands for "message of the day", and this file has  been
           traditionally  used for exactly that (it requires much less disk space than mail
           to all users).

           On Debian GNU/Linux, dynamic content configured at /etc/pam.d/login is also dis‐
           played by pam_exec.

Which seems pretty sane.

</comment></comment><comment><USER7> This seems to be a (2010) post.

> ….Did that really just take as long as I thought? This machine has a gigabit > connection to the Internet. I must be imagining something.

> ….Okay, I wasn't imagining something. It must have downloaded a TON of > source!

      root@tessier:/usr/src/ubuntu# du -sh
      19M	.

> …Oh. I guess not. But, hey, fuck git, or something.

Having a gigabit internet connection means you can download any content from any server in the world at 1Gb/s, right? _/ s_

The tone of the post makes it pretty hard to take that rant seriously.

<comment><USER8> Yeah. Honestly, of all things to be (ostensibly) this angry about...

<comment><USER9> One cut in a death by thousands perhaps?

This propensity for complexity is really irksome. The "generation lost in the Bazaar" headline couldn't be better timed.

</comment></comment></comment><comment><USER10> This is the same crap they pulled with networking. The first 30 mins after an Ubuntu install is now pulling out the automatic networking rubbish.

<comment><USER11> I think you'd really like Arch or Devuan. You seem to be progressing past Ubuntu.

<comment><USER12> Couldn't you also say that it might be worth trying to help the Ubuntu project get better by fixing some of these problems?

<comment><USER13> These aren't problems to that community, it's a difference in goals. Ease of use and simplicity are very often trade-offs.

I use Arch at home and Ubuntu servers and containers at work. Ubuntu auto- detects and auto-configures much more than Arch does but that last 10% can be a hell of fight with Ubuntu due to the added complexity.

<comment><USER14> I followed a similar path. I love Arch but in terms of reliability I don't trust that I'll have a workable system at an arbitrary time. Manjaro is a good compromise between Arch and Ubuntu goals I believe: it works with a well rounded desktop environment on top of Arch out of the box and there wasn't much to rip out off the fresh install. I've had several (non technical) friends report basically no issues on either install process or daily use. Not to go all fanboy on this thread but that distro restored my faith in using linux on a general use laptop.

<comment><USER15> As long as you don't update at random times, the "workability" should be very predictable. And breaks on updates have become extremely rare for me, although of course it depends on your packages and configuration.

<comment><USER14> Indeed. That and not installing packages on a whim!

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> Why do all these developers hate simplicity?

<comment><USER16> Because they have different needs ? Maybe they _do_ want to see how many processes are running, who's connected, and some simple status on the machine, contrary to OP ?

Their fault is not so much in complexifying motd, it's in removing the simple options for the majority of people who don't need the added configurability.

<comment><USER9> Complex problems sometimes require complex solutions. I get it. But this implementation, where all are suddenly thrust into the complex solution for something that the collective memory determines to be simple, is a net negative.

I have the same complaint about what has happened to Xorg.conf, or grub2. Yay, they are more flexible and dynamic. But they also run contrary to Unix philosophy of simplicity

</comment></comment></comment><comment><USER17> I remember when I ran into login issues after switching from debian and tracking it down to the motd clusterfuck. My solution was to use hosts file to block any attempts to communicate with canonical. Probably saved myself extra hassles with other "smart dynamic" solutions.

</comment><comment><USER18> It seems to me that the cited motd(5) manpage cleanly states that breaking the /etc/motd symlink is what you should do if you want to manage it's contents yourself.

<comment><USER19> Where does it say that?

<comment><USER18> It seems to be somehow cut off, but:

           On Debian GNU/Linux this file is a symbolic link pointing to  /var/run.
           The  contents of this file are regenerated upon every system boot based
           on the contents of /etc/motd.tail.

<comment><USER20> What it clearly states is that the symlink is expected to exist, with no assurance that something sane will happen if it doesn't.

</comment></comment></comment></comment><comment><USER21> If you care about this kind of stuff, you may want to consider running something other than Ubuntu. Debian, CentOS, FreeBSD, etc.

</comment><comment><USER22> Previous discussion: [https://news.ycombinator.com/item?id=3325510](https://news.ycombinator.com/item?id=3325510)

</comment><comment><USER23> I agree with most of this very interesting rant. Stupid changes like this one makes many people lose a lot of time.

Stupid changes will always occur. They may even be fixed one day. For me, the big problem is that software changes should imply an update of the man pages.

When I introduce unix (shell) to someone, I always start with the command man (man man).

I dream of a system where all the commands and all the options are documented in man pages that are up to date.

</comment><comment><USER24> It is almost comical how the author went info full rage mode about a change without even pretending to try to comprehend why it was implemented.

Yeah, why would you want to generate the motd -- the message of the _DAY_ file -- dynamically, through a daily cron job? Ludicrous! That file is supposed to be static!

And that was literally just the opening statement. The rest of the article is also littered with misinterpretations and misrepresentations.

<comment><USER25> That's not what he criticises. His criticism is about all the bloat that's there as layers of unnecessary abstractions for what can be done with a simple script that's run regularly by cron as root (or rather as a separate motd user who can write to /etc/motd, for better security).

<comment><USER24> A simple script may be sufficient to address your needs, but please don't generalize that to everyone else.

Simple counter-example to your point: other Debian packages who wish to provide information in /etc/motd. The solution to go with drop-in directories (just like /etc/cron.d) has certain advantages over other patterns, but the author seems to be oblivious to all of this.

<comment><USER25> It should be obvious how to disable the mechanism for being able to use the normal, expected behaviour. The author is hostile in his way of writing, but the point stands. Furthermore, motd is a tool for sysadmin anouncements, not random news from random packages, so autogenerating is not all that useful.

<comment><USER24> > It should be obvious how to disable the mechanism for being able to use the > normal, expected behaviour.

The author posted the following as the conclusion of the article: remove the symlink, create your own motd.

      root@tessier:/etc# rm -rf motd && echo "DO I WORK NOW??" > /etc/motd

It doesn't get much simpler or intuitive than that.

> Furthermore, motd is a tool for sysadmin anouncements, not random news from > random packages, so autogenerating is not all that useful.

Nobody suggested it was for random news for random packages. Useful examples would be output from smartmontools, unattended-upgrades, systemd or any other sysadmin-relevant package which might perform periodic tasks in the background.

<comment><USER25> For your examples, local mail is more fit than anything. The user may want to look back to past notifications, archive, delete, read later etc. It's easy, just run "mail <user>", or:

      mail -s '<subject>' $(awk -F: '/^<group-name>/ {print $4;}' /etc/group  | tr , ' ')

Good use of motd: pointers to essential reading for new users, like a tutorial, some man pages, etc.; contact information, to sysadmins, product help desk etc. The user reads it to get clues on how to get going with the system, then runs 'touch $HOME/.hushlogin' to silence it.

Edit: Besides, the manual does not tell you that simply breaking the symlink will do the desired effect.

</comment></comment></comment></comment></comment></comment><comment><USER26>
        Please use:
        bzr get https://code.launchpad.net/~ubuntu-core-dev/pam/ubuntu
        to retrieve the latest (possibly unreleased) updates to the package.

So we ubuntu users are possibly running possibly unreleased code to manage authentication.

Isn't this like an ultra-serious issue ?

<comment><USER24> No, because that is not what is happening. The author is completely misconstruing that information fragment.

      apt-get source <package>

will get you the exact source of the package as _released_ = installed on your system (assuming only one version is present -- otherwise, it returns the newest, but this is configurable).

The message you are seeing is a hint to other developers that the development _HEAD_ is in Bazaar.

This is similar to the relation between GitHub releases, and the master branch.

</comment></comment><comment><USER27> It was the systemd of its day... Declare it "broken"; "fix" it; Make it super complex and ignore some of the basic tenets behind the success of Unix-like system ('everything is a file', 'avoid monolithic code', 'filters and i/o redirection', etc...)

</comment><comment><USER28> I think this might be a bikeshed discussion.

[http://bikeshed.com](http://bikeshed.com)

<comment><USER29> It's not just wanting the message to be different. It's that it is now very difficult to figure out how to even change the message.

<comment><USER30> Not really. `pam` is where you look.

<comment><USER31> Your kind of proving the point though. WTF does 'pam' have to do with the motd?

Thats a complexity that doesn't make any sense.

<comment><USER32> Welcome to "modern" Linux where PAM is everything.

PAM is why systemd has its own SU replacement, because their Logind PAM module was mangling environment variables when SU was used.

</comment></comment></comment></comment></comment><comment><USER33> Why not unset the execute bit on the motd shell scripts? I seem to recall that being the solution for disabling motd in Ubuntu (at least it was a few years ago when I did it.)

</comment><comment><USER34> Don't like it? Just drop the calls to pam_motd.so from /etc/pam.d/login. Done.

<comment><USER35> I feel obligated to point out that having to "just" do that is _kind of really insane_. Making the default provide effectively useless information (nobody's gonna scroll back to read that motd for an IP address and it sure doesn't replace running htop for system info), and then making actually fixing the original mistake difficult and annoying, is not a good look.

Also, as the sibling notes, this kills MOTDs _entirely_ , not because for some reason we need to bolt this whole contraption together and then not really document it at all. Ubuntu!

<comment><USER30> You use a lot of words. Insane? It is actually quite the opposite, pam is where the author should have started. Not knowing about pam and refusing to learn about it, as a server administrator: if I ever would call something insane..

<comment><USER31> Why does the motd need any interaction with pam? Those are two completely separate things

</comment></comment></comment></comment><comment><USER36> Ah... And we see one of the many roots of the cancer that metastacized into systemd. Because everybody expects all their live processes (screen included) to die when they log out, right?

<comment><USER37> What does this article have to do with systemd, let alone the very specific, recently-widely-discussed issue you're referencing to?

edit: Thanks for the downvotes! I love that anything can be used as a non- sequitur to start bagging on systemd these days. Apparently it's wrong to even ask someone how this article about motd relates to systemd. I'll try to remember that.

<comment><USER36> It's another example of invalidating an old convention for no good reason.

And the entirety of systemd is an overly complex mess that does a lot of this. It tries to replace cron. It tries to replace automounters. It tries to replace inetd. It will try to replace dbus, with the aid of the kernel. It replaces everything for no good reason, and that which it doesn't replace, it consumes.

Do one thing well, work together, and handle text streams? More like do everything meh, work alone, and handle binary formats known only to you.

<comment><USER38> So this article has nothing to with systemd.

<comment><USER36> ...Aside from the fact that the article is about the attitude amongst devs that manifested itself both as the motd-framework and as systemd, making this article thourougly linked to systemd, yes.

<comment><USER20> The problem is bad taste about how responsibility and customization should be divided between discrete components, and how the boundaries should be managed over time. systemd is merely another symptom.

<comment><USER36> Which is what I said in my original post.</comment></comment></comment></comment></comment></comment></comment>


The passive voice is a hoax $100 if you can find a journal that requires it. - <AUTHOR> http://allendowney.blogspot.com/2012/04/passive-voice-is-hoax.html

<comment><USER3> I don't think that was ever the requirement. I can't even imagine text written only in that form. There's a nearly complete lack of general understanding of what 'passive voice' means, and if you told someone to rewrite an essay to use only passive, I'm pretty sure the result would have non-passive sentences in them. (See <http://languagelog.ldc.upenn.edu/nll/?p=3876> for the failure of a recent attempt.)

I think the requirement was that people should not use the first person pronoun. Consider this 1968 commentary in JAMA, <http://jama.ama- assn.org/content/203/4/283.extract> : "When a psychiatric journal published an article in which the author used the first person singular throughout, the editors apologized in a footnote for this departure from "normal" journal practice."

Those who didn't ignore the requirement responded by using the passive voice, as in "the temperature was measured", or circumlocutions like "the authors measured the temperature". People saw a side-effect - passive voice - <USER2> thought that that was part of the 'impersonal' writing style of science.</comment>


Ask HN: sql reporting service ui replacement - <AUTHOR>

(english is not my native language but i'll do my best) for the first time in long i got a startup idea but i want to know if there is a market for this.
so as the title sugested i want to make a ui replacement for sql reporting service mainly because the native one cannot even run desent on ff or chrome. the idea is to create a site where you can put in your server url, username and pass and then you can browse all the reports from either my website or through an iframe on there own site.
i like to know your thoughts about this idea. <comment><USER2> Reporting Services is mostly used in corporate environments. It's included with SQL Server, which means to buy your product, you will have to have a significantly better product for people to consider purchasing it.

Here are some other concerns

\- Most Reporting services installations are on corporate intranets. Being able to access it through your website is a no-go

\- You've identified that they don't display in FF or Chrome very well. Companies using Reporting Services are most likely using IE on the desktop, so they don't care about FF or Chrome

Here are some of my own pain points from using it

\- It currently does not support multi-language reports, so it requires a separate report for each language (!)

\- Deployment is a bit of a headache

\- Each new release of Visual Studio is not compatible with old versions of reporting services projects - that's a development pain

Here is your competition

www.dundas.com

You notice their pricing is not on their website, I had a quote and it was over $20,000 for a 20 user runtime licence and 1 developer licence. Obviously it is a very mature and complete product.

I wish you every success. Have you got clients who are using Reporting Services and finding it a pain? Find out what their problems are and write something which fixes them.</comment>


Ask HN: Career advice for someone attending a coding bootcamp - <AUTHOR> I graduate in about a month. It's been intense, a ton of fun too.
I don't know how "good" I am. There seems to be a lot of people smarter than me. Completing assignments faster than me. Particularly with OOP. OTOH I am average or faster speed with other aspects.
I'm hoping this probably doesn't mean a lot, especially since we're all new coders. But this has really gotten to me. I've had a job before (non-tech) where I was deemed incompetent and let go, so I want to try to engineer a smooth transition to the working world as soon as possible.
The bootcamp teaches Rails and javascript. I'm wondering - would a job in drupal have an easier learning curve? How would it be different? Obviously I'd have to self learn but it seems like a solid career path too. <comment><USER3> Assorted thoughts, in no particular order:

1\. The speed at which you initially write your code doesn't matter that much. The time cost of a program plays out over months or, if you're lucky, years. Oftentimes, being thoughtful when writing a program at the beginning will lead to massive time savings later on.

2\. If you're honest about your skill level and work for a well-run company, you won't be considered incompetent again. You're going to have to do a lot of extracurricular work, though. You should be upfront with prospective employers that, while you may have gaps in your knowledge, you're happy to do homework.

3\. Drupal is pretty complicated. If you want to find a niche, you're better off with WordPress, which will be slightly simpler and provide better job opportunities.

4\. If you can't find a job coding, you may want to look into doing QA or project management. Having the boot camp under your belt might make you more attractive in one of those areas, and then you can work on your coding skills in your free time and hopefully transition to coding.

5\. People are going to hate me for saying this, but go learn Java (start with a Spring project). It's a pretty easy language to learn, and there are tons of Java jobs. PHP and Node are also good things to learn. Ruby (with or without Rails) is an absolutely tiny job market by comparison.

6\. If you have any interest in frontend stuff at all, go learn React. I'm not going to comment on whether it's a good library or not, but it's popular and fairly easy to learn, and it works in the browser as well as mobile devices.

</comment><comment><USER4> "Perhaps I could best describe my experience of doing mathematics in terms of entering a dark mansion. One goes into the first room, and it's dark, completely dark. One stumbles around bumping into the furniture, and gradually, you learn where each piece of furniture is, and finally, after six months or so, you find the light switch. You turn it on, and suddenly, it's all illuminated. You can see exactly where you were."

\- Andrew Wiles ([https://vimeo.com/18216532](https://vimeo.com/18216532))

If you're having problems with specific concepts, I recommend focusing on those through practice, and getting help as appropriate through the RoR mailing list, Stack Overflow, IRC, a local Ruby User and/or Meetup.com group, etc.

Almost any topic you can think of has been blogged about in RubyLand, and even ten-year-old posts (particularly about more general concepts like OOP) can be helpful and relevant.

Practice, practice: fire up irb or pry or write simple scripts and try different things. What happens if I do this, or change this to that? Call `.methods.sort` and see what behavior each object exposes.

Keep trying stuff, because that's essentially the job: messing around with computers all day.

Good luck.

</comment><comment><USER5> > I don't know how "good" I am. There seems to be a lot of people smarter than > me.

      Everybody is a Genius. But If You Judge a Fish by Its Ability to Climb a Tree, It Will Live Its Whole Life Believing that It is Stupid
      - <USER2>

In short, don't measure your skill by comparing it against others. You're an apple, that other guy's an orange. We're all different.

> Completing assignments faster than me.

They're either really ahead of you, or they just ask on StackOverflow faster (probably the latter, definitely the latter). Besides, if they were really good, why go to a bootcamp? That doesn't make sense. :P

While coding speed is good, in real life, it doesn't matter. There are other things that matter besides speed, like code quality, maintainability, architecture. In real work, management takes care of you in terms of time. You'll always be given a reasonable amount of time to finish things.

> I was deemed incompetent and let go

Past is past. Let go and move on. Past mistakes, present experience.

> The bootcamp teaches Rails and javascript. I'm wondering - would a job in > drupal have an easier learning curve? How would it be different?

I can say working with Drupal is pretty nice. Most of your time, you'll be site-building - configuring sites via an admin panel, looking for modules that satisfy some requirement, download themes, maybe tweak some CSS. The only time you get to write code is when you need to tweak something not built-in, or when you need to alter default behavior. For the most part, it's in PHP which shouldn't be that far from JS in terms of syntax and quirks. jQuery is built- in to Drupal, so as long as you know jQuery, you're safe.

If you have a Drupal job offer, by all means go for it. You'll have to grind gears at first, Drupal's documentation is terrible (I'll give it some slack, _terribly organized_ ) and the forums replies gap months (but hey, it's open source. everyone's a volunteer). But once you get the hang of it, you'll never leave it.

</comment><comment><USER6> By all means switch to drupal, if you think that will better reimburse you for attending the tech camp.</comment>


Show HN: Ruby on Rails Slack chat community - <AUTHOR> https://rubyonrails.typeform.com/to/g9CVKl

<comment><USER2> What is the advantage of using it over [https://gitter.im/rails/rails](https://gitter.im/rails/rails)?</comment>


I Miss the Old Blogosphere - <AUTHOR> http://gigaom.com/2014/04/27/sometimes-i-miss-the-old-blogosphere-weve-gained-a-lot-but-weve-also-lost-some-valuable-things/?curator=MediaREDEF

<comment><USER2> As kijin mentions in their comment, maintaining your blog was a labor of love - personally I miss the old internet - the early days, when it was a wild wild west, when my internet time was still divided with my BBS time. Everything grows up, and as things become more popular, they become more mainstream and open up to wider audiences. I know those old days are gone (and very fondly remembered) but I also know that what was my favorite past time has become a great career - one I can wake up to every morning, eager to do my job. There is a lot more noise out there now as all of this has become common, and there are millions of blogs - but there are still great ones out there, worth following and consuming - and hopefully the noise learns to not be uniform and figure out their own identities, and appeal properly to the consumers. I am thankful for how things have evolved, even when wistful.

</comment><comment><USER3> Is this a result of the success of the 'old blogosphere' and mirroring the challenges of monetization so many tech companies are challenged by.

1\. build an audience 2\. start monetising 3\. quit your job 4\. drive more audience and try to monetise

Quickly, you end up serving the monetisation and the soft money that goes to influential bloggers to say nice things. It's sad, but unfortunately not the first time an industry/content/company has lost it's core success and function as a result of the need to pay the bills.

How to overcome this and stay independent? That's the exciting challenge!

</comment><comment><USER4> > _there are still independent voices blogging on Medium and other sites ..._

Medium is just another proprietary platform that is trying to create a walled garden. Their garden is impeccably curated and looks fantastic on mobile, but it's a walled garden just the same.

Speaking of walled gardens, one thing that I find especially suffocating about today's "blogosphere" is the uncanny uniformity of design, typography, and overall structure that everyone seems to be adopting. Every Medium blog looks the same. Ditto for every svbtle blog, and pretty much every other blogging platform that has appeared in the last few years. Gone are the insane customizability of BlogSpot and Tumblr. Now as soon as a blog loads, I can tell "Yeah, it's just another svbtle blog. Gotta move my mouse away from that weird Kudos button!"

The new services fly banners like "we let you focus on your content" and "just write, don't worry about anything else", but what they really insinuate is the flawed assumption that your literal words are the only thing that you will ever want to communicate to your audience. Not the design. Not the typography. Not the way you organize your content. Not even your own personalized domain name. In exchange for a bit of convenience, they give you a uniform to wear. And just in case you don't like the uniform, they tell you that it is a symbol of honor and prestige (because only the best bloggers are invited to wear it, etc.)

In the past, I used to browse random blogs when I wanted inspiration for a new web design. Every blog was different. Sure, they often looked amateurish, but they were always packed with unique ideas about what a blog could look like and behave. People took care of their blogs the same way they took care of their gardens, the same way they customized their MySpace page to the limit, the same way that some of us even today spend several hours customizing the shell prompt. Maintaining your blog was a labor of love, and the efforts showed through the clunky tabless windows of IE 6.

When you sell your home and lease a condo, it's not just ownership that you're giving up. You're also giving up personalization. After all, every condo looks the same from the outside; and you're not really supposed to know what goes on inside, either. All these years we've been chanting the mantra, "Content comes first." By "content" we've usually meant words, and nothing but words. Everything else is at the service of words. But when taken to the extreme, even you yourself become a servant of your words. You become nothing but a bunch of words, as if all your readers were autistic.

<comment><USER5> I actually vastly prefer design which emphases text.

As contrasts: Blogspot's dynamic themes are utterly unusable for me. I can't read them, I can't navigate through them, and worst of all: I can't take a page and render it in Readability. As a result, I simply avoid those blogs.

Svtble and Medium are good (though the Kudos spot is a bug and I remove it via local CSS).

Otherwise, if every page on the Internet looked like a Readability rendering, I'd rejoice.

</comment></comment><comment><USER6> The clip art in this post is distracting and does not add to the overall text.</comment>


How to Correct 32,000 Incorrect CSV Files in Fewer Than 32,000 Steps - <AUTHOR> https://medium.com/p/a5f1ba25d951 <comment><USER2> How is this fewer than 32,000 steps? Doesn't the act of running this gem on every file to clean it count as a step?

<comment><USER3> The point is to have a single parsing rule, rather than individually assessing and parsing each of the 32,000 files.

Having worked with messy data myself in the past (a badly b0rken archive of about 125,000 Web archive posts), it's possible to fix issues in a reasonable amount of time (a few hours work) by using available tools (for me: the tidy HTML validator and a bunch of one-off sed/awk scripts), working on each class of error.

Since the corpus itself was generated programatically, there were (generally) a limited set of issues, each representing some bug or another in the original code to address.

The article here is referring to human-input records, which tend to be far more creative in how they deviate from spec or expectation, though in a more constrained space (CSV rather than longer HTML documents).</comment></comment>


Sandy Hook: 'Help us stop conspiracy theorists' - <AUTHOR> http://www.bbc.co.uk/news/blogs-trending-39194035 <comment><USER2> "Even in a country where mass shootings are _common_..."

Speaking of "conspiracy theorists"...</comment>


An enraging proposal to speed up queues: Serve the last person first - <AUTHOR> http://qz.com/496525/danish-researchers-have-an-enraging-proposal-to-speed-up-queues-serve-the-last-person-first/ <comment><USER2> This article doesn't consider the myriad issues likely to be caused by as many people arriving as late as possible - like the almost inevitable delays to event start times or how in practice you would measure who the last person to arrive was..

<comment><USER3> Yeah. If I saw a queue like this, I'd monitor it before joining just before the next person was taken.

</comment></comment><comment><USER4> I'm trying to imagine this in practice at the local chain grocery store. I think what would happen is crowds of people would lurk at the ends of the aisles facing the registers. In fact, lines would form in the aisles, through which you would have to pass in FIFO order, until you'd earned the front slot that allows you to monitor the formal register lines.

</comment><comment><USER5> Letting people join the queue without having to stand in line seems like a better solution to me. E.g. make them take a number or use their smartphone tolet them know when their turn is.</comment>


What Happened to Downtime? The Extinction of Deep Thinking & Sacred Space - <AUTHOR> http://the99percent.com/articles/6947/what-happened-to-downtime-the-extinction-of-deep-thinking-sacred-space

<comment><USER3> If you have that much trouble disconnecting sometimes, you need help.

I'm a loner by nature and I find it extremely easy to get alone time even without 'disconnecting'. My computers stay on, my phones stay on, everything stays on.

-I- am in control. I don't let devices or other people control me. I make the decisions on what to do and when.

<comment><USER4> You've made 452 comments here, a 3.86/day average for the 117 days since you've registered.

Somehow that doesn't strike me as a behavior pattern of someone fully in control of his web browsing habits.

<comment><USER5> I think I win, or lose, depending on your point of view. Most people consider me fairly well-adjusted and successful. (Quote my aunt, to my cousin: "See, you can like geeky things and still grow up to be a productive member of society.)

Nobody says boo about someone who watches 3.86 thirty minute episodes of TV a day, or who writes 3.86 pages of email a day, by the by.

</comment></comment></comment><comment><USER6> This is one of those "speak for yourself" articles. Meaning, it assumes that everybody has this problem. When they don't. And for those folks who do feel like they have this problem, well, they have a lot of options and control at their fingertips to fight against and probably make it go away, or at least reduce it. There have been times where I've felt overwhelmed or had a hunger for solitude and it's almost always possible to deal with it. There are knobs you can turn. Leave your cellphone at home. Stay away from Twitter or Facebook or web forums (like HN) for a day or a week. Check email only once a day rather than 20 times a day. Plan a weekend vacation, offline, someplace quiet. And so on.

<comment><USER4> You're criticizing a strawman. Nowhere in this article you'll find a claim that "everyone has this problem".

It just states pretty obvious facts about the combined effects of new streams of information (mail/rss feeds/twitter/facebook) and new means of accessing those streams (laptops, smartphones) which leads to a growing addiction to frequent checking those streams.

This is not a novel or controversial point. There've been many articles about this effect in the past and there will be many more in the future.

I can observe this addiction in myself, when I pull out my iPhone to check my Twitter during lunch with my coworkers. I can observe this addiction in my coworkers when I glance and their monitors when I pass by and see the browser opened on Facebook or Twitter. I can see that in people on the street, who walk looking at their iPhones or Droids. I can see that in people in cafes, drinking their lattes with a laptop lid open and browser set on YouTube. I can see that in people like myself, checking Hacker News several times a day.

There is a problem, it is widespread and there is no easy solution. That's all that article is saying.

</comment></comment><comment><USER7> I wish this was a problem. What is completely missing (at least in my life) is offline "downtime" and solitude. People in large openspace in the office, crowded tram, crowded shop, people everywhere in the park, people around my favourite walking trail, and of course, roommates, everywhere. There's no escape, no opt-out, no nothing. It actually drives me mad.

<comment><USER8> there is an abundance of empty space here in canada

<comment><USER9> I really think that more and more people will start leaving the cities as communication continues to improve. The reason people conglomerated was so they could be in constant contact and physical space is not limiting factor to that any more.

<comment><USER10> The more remote the area, the more expensive supplies will be. Land might be cheap, and communications networks may be available, but you'll have to pay the extra for shipping things like food in.

<comment><USER11> Well, you're kinda extreme in getting away from the city buzz if you have to move someplace that needs to _ship_ food supplies.

<comment><USER9> Even if you live in the boondocks today it is still only a 30 minute trip Wal- Mart. There just isn't any traffic.

</comment></comment></comment></comment></comment></comment><comment><USER12> Good advice. My favorite down times and introspection times are short meditation periods when I first get up and in the late afternoon. A key to good meditation is not worrying if you can't always clear your mind or random thoughts occur. I live in the mountains in Central Arizona, so short 20 minute walks by myself on the trails behind my house also form what I call walking meditation. I also find sitting outside for 5 minutes, again not thinking directly about work, helps me get a good perspective on whatever I am doing that day.

When I lived in San Diego I had a window office looking out over La Jolla Cove and I found a few times a day using 10 minutes with my door shut, looking at the ocean helped.

The subconscious mind is a powerful problem solver. I believe this is why it is common to wake up in the morning with an unsolved problem, worked out.

<comment><USER9> "The subconscious mind is a powerful problem solver. I believe this is why it is common to wake up in the morning with an unsolved problem, worked out."

Have you read anything about this? I do this all the time with my course work and I thought I was just strange. I can't tell you how many times I have banged my head against the wall with an assignment until I went to bed and then proceeded to get up an hour before it was due and finish it with no problem.

<comment><USER12> I can't recall reading anything specific about this. I was just relating personal experience. I assumed that this is a common occurrence for everyone.

</comment></comment></comment><comment><USER13> Take a long, hot shower and bring a beer in with you.

</comment><comment><USER9> I must be a counter example to the people with the problems this article describes. Maybe it is natural for a person about to graduate college with no idea what I am doing or where I am going but I can not stop thinking about my big problems. Moreover, my constant thought about myself is almost crippling and keeps me from actually doing anything. I do think that maybe this stems from the "self esteem" work this article talks about...

<comment><USER14> I was in this state a year ago and I found that external self-esteem boosters are pretty useless. The nagging self-doubt still lingers no matter what others say.

What I found helped was doing the task equivalent of <http://en.wikipedia.org/wiki/Debt-snowball_method> \- starting with a list of stuff I wanted to do/improve I did the easiest[1]/fastest things first. This builds confidence quickly and you can start working up to harder tasks - <USER2> also keeps you focused on nice short term goals, which reduces how much you worry about the big problems.

Not sure if this helps... good luck.

[1] I literally had things like "buy new shirt" in the list that were very easy, but we're constantly getting forgotten/put off because of the constant worry about the big problems.

<comment><USER9> Thanks a lot I will have to try this. I have started using todo lists and they have seemed to help. I do worry I might be slightly depressed. However, I think this problem is something different because I have not had any problems with meeting people and making new friends recently. Quite the contrary actually. Did you happen to smoke a lot of marijuana before this onset? I really think the intense reflection I do while high led to my conscious mind getting stuck somehow... I am just theorizing though.

<comment><USER14> I did not smoke marijuana, but I tend to fall into a state of intense reflection when I'm stressed and at some point I wasn't able to come back out even though the stress went away.

My biggest cause of stress is procrastination. When I put off things I need to do I stress myself out and then start down this path - maybe that's why the todo list thing helped.

</comment></comment></comment></comment><comment><USER15> My way of thinking about it is this: if I can't resist twitter and/or my email long enough to get something done, is it _really_ worth doing?</comment>


Atlassian founder says no-one wants to move to Australia as its too expensive - <AUTHOR> http://www.dailymail.co.uk/news/article-3494187/The-tech-billionaire-founder-Atlassian-says-no-one-wants-Australia-houses-transport-education-expensive.html <comment><USER2> With a USD$1.63bn net worth, Mr Mike Cannon-Brookes could afford to pay ten(10) Software Engineers 34% over the top market rate [0] at USD$100k/yr for 10 years and it would reduce his net worth to USD$1.62bn.

Is this how the wealthy pan handle?

[0] [http://www.payscale.com/research/AU/Job=Software_Engineer/Sa...](http://www.payscale.com/research/AU/Job=Software_Engineer/Salary/1bf78243/Sydney)

</comment><comment><USER3> But if you factor in the fact that we have the best beaches in the world, the cost of living becomes more reasonable. :P

</comment><comment><USER4> It's not that no-one wants to move to Australia, it's just they don't want to move to Sydney...

<comment><USER5> Actually the do want to Sydney - they just can't afford the rent on the salaries offered.

</comment></comment><comment><USER6> Can't they compensate by providing a better salary package?

<comment><USER4> They could but then they would have to pay more than current 'market' rate for senior engineers in Australia.

This makes importing talent much less attractive, as they may as well just hire local (so long as the talent exists in the local talent pool - which it does).</comment></comment>


Facebook to reinstate censored image of 'napalm girl' - <AUTHOR> http://www.independent.co.uk/life-style/gadgets-and-tech/news/facebook-to-reinstate-censored-image-of-napalm-girl-after-mark-zuckerberg-accused-of-abusing-power-a7235021.html <comment><USER2> Comments moved to [https://news.ycombinator.com/item?id=12466352](https://news.ycombinator.com/item?id=12466352).</comment>


Ask HN: Why are Google data centers so far away form the company's customers? - <AUTHOR> Most of google's data center are located in SE of USA. The customers are distributed worldwide[1].<p>[1] https://www.google.com/about/datacenters/inside/locations/index.html <comment><USER2> It all comes down to cost of power/water/labor and favorable tax incentives.

</comment><comment><USER3> I do not know for fact, but a couple of key things I can think of that make sense to me.

1\. The vast majority of the United States population (density wise) is on the East side of the Country, not the west. If you pull up any population density map you can see it, yes California is a big state but the density of the population overwhelmingly is on the East side of the Country.

2\. The cost of land and overall infrastructure as well as employment costs are far less in the South East than in the West or North East. Not to mention there are more favorable terms and less bureaucracy to build generally than say in California or New York.

Even if you look at the centers outside the South East you'll see they picked lower cost states, and what are likely states which will give better terms on taxes and land but still have the overall infrastructure to support them.

Just my 2 cents, but to me it seems like they are close to their customers based on population density.

*edit, added a sentence.

</comment><comment><USER4> I dont know about the other locations, but the one in Oregon is in the Dallas and no one wants to live there. Low cost of living, low power costs, good tax structure to name a few reasons Google is there...

[https://www.oregonlive.com/silicon- forest/2018/04/google_tou...](https://www.oregonlive.com/silicon- forest/2018/04/google_touts_18_billion_invest.html)</comment>


Facebook may have 'consistently mislead' lawmakers about Cambridge Analytica - <AUTHOR> https://techcrunch.com/2019/03/22/facebook-staff-raised-concerns-about-cambridge-analytica-in-september-2015-per-court-filing/ <comment><AUTHOR> "in the papers Facebook is seeking to keep secret... a Washington D.C.-based Facebook employee warned others in the company about Cambridge Analytica's data-scraping practices as early as September 2015.

Under questioning in Congress last April, Mark Zuckerberg was asked directly by congressman Mike Doyle when Facebook had first learned about Cambridge Analytica using Facebook data — and whether specifically it had learned about it as a result of the December 2015 Guardian article (which broke the story).

Zuckerberg responded with a "yes" to Doyle's question.

Facebook repeated the same line to the UK's Digital, Media and Sport (DCMA) committee last year, over a series of hearings with less senior staffers."</comment>


Why a Volcano Is Crucial to This Azorean Chef's Homestyle Stew - <AUTHOR> https://www.atlasobscura.com/articles/cooking-food-by-volcano <comment><USER2> I recently had this food, the cozido cooked in Furnas. It, like every other piece of meat I ate in the Azores, was cooked incredibly poorly (mammal or bird; I have no opinion on the fish). I do not understand how people can recommend it. Great baking and dairy, though.

The Azores are unquestionably beautiful, though, and it seemed a nice enough vacation spot. Though I think it compares poorly to Hawai'i (not counting the wasteland that is Waikiki Beach, and assuming that you're willing to enter the United States), so if Hawai'i is closer or cheaper for you, I'd just stick with that.

<comment><USER3> I guess it comes down to personal taste. I went there just last summer and the food was great in all the places that I ate. I'll have to say especially the fish, with the veal coming in at a close second. I even (unexpectedly) enjoyed the corn on the cob that was boiled in sacks in some of the smelliest sulfurous boiling water I ever got to smell. The end result was still good.

I come from a place where eating is a big cultural thing. It's probably the first thing people ask about when I go home. So I try everything, everywhere. I'd say the Azores are definitely high on my culinary top list. For example I found some of the cooking in different parts of the US atrocious (due to the ingredients used, not necessarily the cooking skills) but people there seemed to enjoy it a lot. So it must be a mix of familiarity, expectation, and plain old personal preference.

Can't compare it to Hawaii, haven't been there. But with the Azores being called "the Hawaii of Europe" and not the other way around, it's likely that Hawaii is more exciting as an overall destination.

</comment></comment><comment><USER4> Love the Azores. So beautiful. The food was super good too and very cheap. Worth a visit!</comment>


How would go about building an online store in 2020? - <AUTHOR> <comment><USER2> Shopify is nice to get started.

When you get big enough or have custom requirements you can develop your own solution.</comment>


new TLD: .BOT - <AUTHOR> http://nic.bot/ <comment><USER2> This is really going to help a lot of sites protect themselves - right now we just have the evil bit, but being able to block addresses with a ptr in .bot should eliminate drive-by defacement altogether.

<comment><USER3> You had me going, there.

<comment><USER4> The evil bit is a real thing.

[https://blog.benjojo.co.uk/post/evil-bit-RFC3514-real- world-...](https://blog.benjojo.co.uk/post/evil-bit-RFC3514-real-world-usage)

<comment><USER5> For definitions of "real" that include April Fools jokes.

<comment><USER6> Actually there are some systems in the wild that block evil bit traffic [https://blog.benjojo.co.uk/post/evil-bit-RFC3514-real- world-...](https://blog.benjojo.co.uk/post/evil-bit-RFC3514-real-world-usage)

</comment></comment></comment></comment></comment><comment><USER7> >All domains in the .BOT registry will remain the property of Amazon.

according to [http://icannwiki.com/.bot](http://icannwiki.com/.bot)

<comment><USER8> I still find private companies taking generic TLDs like this (that's probably a bad term, I'm trying to say I have a problem with .bot but not say, .aws) a pretty awful idea. What is the point? Why should Amazon get to buy a chunk of the DNS system like this?

<comment><USER9> Why not? It's just one extra level, why should it be sacred?

<comment><USER8> [http://sealedabstract.com/rants/google-our-patron-saint- of-t...](http://sealedabstract.com/rants/google-our-patron-saint-of-the- closed-web/)

that sums it up fairly well.

<comment><USER9> That doesn't actually answer my question, the assumption is still there, unexplained. So we don't get a generic .dev TLD for content targeted at software developers; so what? DNS has existed for thirty years without one, yet we've managed to show content for developers somehow, and we'll continue to do so. The new gTLD program has changed nothing of relevance for us. Does it really matter if Google paid a few hundred grand to get shorter domains?

The whole discussion just reminds me of children in the playground arguing over who gets to play with the red ball.

</comment></comment></comment></comment></comment><comment><USER10> It would be awesome if Amazon could force registrants to contractually agree to follow Asimov's 3 Laws of Robotics.

<comment><USER11> For certain definitions of 'awesome'; we'd be inviting murder and deception and all manner of crime via robot. I think the lesson from Asimov is that we can't bank on a simple set of laws to protect us from killer robots.

The zeroth law is most important, as well. If we try this route we'd have to be sure to implement that law first.

> A robot may not harm humanity; or through inaction allow humanity to come to > harm.

<comment><USER12> the problem being definining what "harming humanity" means.

<comment><USER13> Do botnets qualify as "robots" and does "harming humanity" include DDoS attacks?

</comment></comment></comment></comment><comment><USER14> Intrestingly enoungh nic.bot itself is registered not to Amazon proper but to Neustar Inc.

</comment><comment><USER15> How do I get one? What's the price on the tin?

<comment><USER16> This!

<comment><USER15> I figure that as this is an Amazon product it will most likely be available through their domain registration via Route 53.

After wading through the control panel, I finally found the domain registration section. But there is no .bot option as yet.

Judging by the pricing of other boutique TLDs, listed there, it will probably be a rip off. (Yup, all pure conjecture on my part.)

<comment><USER16> Do you have to sign up for Route 53 to get that section? It appears that I have to pay just to be a member. Or maybe I'm just finding the wrong thing.

<comment><USER15> I think you need an AWS account. Then login, go to dashboard->route 53. But there is no option for the .bot tld yet.

Perhaps keep an eye on this list: [http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/reg...](http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/registrar- tld-list.html#registrar-tld-list-generic)

Looking through that Gandi seem to be a strong associate, they are pre- reserving there.

</comment></comment></comment></comment></comment><comment><USER17> Surprisingly few "clever" possibilities: [http://rhymezone.com/r/rhyme.cgi?Word=*bot&typeofrhyme=perfe...](http://rhymezone.com/r/rhyme.cgi?Word=*bot&typeofrhyme=perfect&org1=syl&org2=sl&org3=y)

<comment><USER18> Thanks for the list, One of the samples is "sheep nasal bot", I'm going to go for that one!

I also got a laugh, wonder how many readers know who Sebastian Cabot is?

</comment></comment><comment><USER19> Seems Amazon got that TLD a while back: [http://techcrunch.com/2012/06/13/how- tech-giants-are-playing...](http://techcrunch.com/2012/06/13/how-tech-giants- are-playing-the-icann-domain-game/)

Why the long wait?

</comment><comment><USER20> I, for one, welcome our new larvæ/homosexual/jumping/boat/wineskin/bagpipe/blunt/impolite/bone/offering/bidding/occuring/stick/container/tail/phallic/fine/help/repair/compensation/improvement/toad/strike overlords.

(Okay, 'bot' will probably be used exclusively to mean _ro_ bot, but it has many other meanings: [https://en.wiktionary.org/wiki/bot](https://en.wiktionary.org/wiki/bot))

</comment><comment><USER21> A TLD for all your infected Windows machines \o/

<comment><USER13> So, who will be the first to offer bulletproof hosting on .bot domains?

</comment></comment><comment><USER22> Looking forward to medi.bot from Look Around You.

</comment><comment><USER23> I call dibs on sex.bot

<comment><USER15> You can have it after me.

</comment></comment><comment><USER24> GitHub better hurry up and get hu.bot

<comment><USER25> I wonder what's the price of ro.bot going to be.

EDIT: I should have read the rest of the comments before posting this.

</comment></comment><comment><USER26> Time from registration opening to ro.bot being taken: Mere milliseconds.

<comment><USER27> I thought the same, but [a-z]{2}.bot are all reserved: [http://whois.nic.bot/whoismtld/html/default/reservednames.ht...](http://whois.nic.bot/whoismtld/html/default/reservednames.html)

<comment><USER28> They state that those two character domains are reserved, but it looks like they're authorized by ICANN to release these domains (Since 04 August 2015): [https://www.icann.org/sites/default/files/tlds/bot/bot- auth-...](https://www.icann.org/sites/default/files/tlds/bot/bot-auth-ltr- ltr-04aug15-en.pdf)

</comment></comment></comment><comment><USER29> From wordsapi:

robot 4.14

abbot 3.1

bot 3

talbot 2.89

cabot 2.84

turbot 2.27

sabot 2.08

<comment><USER30> What do the numbers indicate? Frequency of use?

<comment><USER29> Yes, it's a 1 to 8 scale, where 8 is the most frequent.

</comment></comment></comment><comment><USER3> Chorus of whinging about DNSSec policies in following document in 3, 2, 1...

[http://nic.bot/pdf/BOT-DPSStatement.pdf](http://nic.bot/pdf/BOT- DPSStatement.pdf)

<comment><USER31> yeah that seems odd...</comment></comment>


Coding Interview Tips - <AUTHOR> http://www.interviewcake.com/article/tips-and-tricks <comment><USER2> I have observed a general frustration that good developers (who are in high demand) still need to do well in an interview setting. Frustrating as it may be, I think that embracing the reality is the best path forward.

A good developer would be smart to realize that this is a part of the project of finding a great new job, and would apply themselves fully to the subtask of preparing for and succeeding at an interview.

I think that, in the same way it is a necessary frustration to make sure the site performs well on IE8, a good developer recognizes the task as essential, and does what is necessary despite the perceived lack of significance.

Of course there is a limit to this lack of significance -- I am not advocating that people become professional interview-ees. But embracing the frustrations of a profession can give you a huge edge over those who don't.

If I were to be seeking employment right now, my first step would absolutely be to sign up for resources like this one, and dedicate a couple hours a day to honing my interview skills. It would be fun, and would develop a skill that opens a lot of doors.

<comment><USER3> _I have observed a general frustration that good developers (who are in high demand) still need to do well in an interview setting._

I'm not sure it's frustrating so much as it is humiliating. Programmers (especially good ones) have egos that are somewhere between healthy and oversized. Interviewers assume you know nothing and make you qualify yourself at each and every interview, as if you were a fresh college graduate who hadn't already made his bones[0] at a dozen other jobs[1].

 _A good developer would be smart to realize that this is a part of the project of finding a great new job, and would apply themselves fully to the subtask of preparing for and succeeding at an interview._

Sadly enough, I couldn't agree more. Complaining on the internet is not a sufficient strategy for changing the face of tech hiring, so if you want to work, you have to deal with things as they are. Then again, the best way to find new jobs is through aggressive networking, not being able to reverse a binary tree on a whiteboard. So a good developer should probably focus on that instead.

[0]: yes, that's a very entitled attitude. On the other hand, if we had gone into an apprenticed trade, like woodworking or plumbing, it's expected that you already know your job by the time you hang your own shingle. It's a sad day when _plumbers_ get more respect than programmers.

[1]: Just to nip this one in the bud: Yes, people lie on resumes. A short conversation about their work history where you ask for specifics should be enough to verify whether they actually did what they said they did. If they're good enough to bullshit their way through an interview, they're good enough to bullshit their way through a whiteboard programming session. If, for some bizarre reason you make a bad hire despite all the other filters you have set up, _fire them_ and chalk it up to a mistake. If you do it over and over and over, re-evaluate how you do interviews.

<comment><USER4> > If they're good enough to bullshit their way through an interview, they're > good enough to bullshit their way through a whiteboard programming session.

That's not been my experience. I've met a fair number of ace bullshitters who fell to pieces when it came time to write any code. I'm not talking missing a semi-colon here or there; I'm talking closer to "an observer who walked in afterwards might not be able to tell what problem I asked them to code."

</comment></comment></comment><comment><USER5> I consider myself to be a generalist and pretty personable, the latter of which I don't think many folks remember to demonstrate during interviews, so I wholeheartedly agree with the points about chitchatting & showcasing your collaboration abilities. However, on the topic of working through a coding problem, I find myself struggling not so much with the asks per se, but rather, I focus too much on the fact that I'm thrown out of my usual dev/coding environments and working through a problem in a Word doc or some other non-text editor platform and it becomes a bit of a mental block. Compound that with the fact that my style of coding includes referring to existing code of my own or looking things up in mediums such as Google and StackOverflow to jump start me, and it becomes more of a crutch that does not aid me in these sorts of situations.

<comment><USER6> You're exactly right. If you get some dork that wants you to code during an interview then walk out immediately.

That's not how the real world works.

That said, as a senior software engineer, you should be able to get on a whiteboard and brainstorm and defend some architectural designs.

Even then, it's so much more important that you're all on the "same page" and can collaborate on problem solving, rather than they hoping your freaking Richard Feynman and will solve cold fusion for them

<comment><USER7> I disagree completely. Every once in a while someone will slip through phone screens, etc. who does not have the foundational knowledge I want in someone who works for me. Asking them to write code to traverse a tree or implement strcpy in the language of their choice shows me if they lack the basic skills to continue taking up my time. Then we can work our way up the stack to debugging, design, architecture, and domain-specific knowledge.

</comment></comment></comment><comment><USER8> The last tip is the most important: practice.

The industry loves tree questions, which is stupid -- the vast majority of us will never and definitely should never implement a tree. Red black trees are notoriously fidgety to get right; just use the free, tested, implementations that someone has already beat on for you. But we love asking that shit in interviews. I actually got in an argument with a former engineering manager who loved tree questions; I demanded to see where in our 10m line codebase we implemented a tree. Nowhere. But if you wanted to work for him, you had to know how to implement trees on whiteboards.

So practice so you're refreshed on trees and all the other trick questions we ask and not mentally refreshing yourself in the interview, and practice specifically coding on a whiteboard. That will help you remember to leave space to add more code and to write small and...

the whole thing is fucking stupid, but sometimes life makes you jump through hoops.

Also, and I think I read this on here, that stupid question about detecting loops in lists (hare and turtle) was an open research problem for quite a while, and wasn't published until 1969. Knuth, naturally. So either everyone in computing before then was stupid, or it's not obvious, and definitely not so obvious that thinking of it in 10 minutes at a whiteboard is reasonable. So really this is just asking if you studied, rather than if you're good at algorithms.

edit: I thought I'd read on here that someone was awarded a phd for figuring out the list cycle detection, but maybe I'm wrong? I don't have my notes file handy. Either way, it's not an obvious algorithm until you've seen it, and then it looks trivial.

<comment><USER9> At the risk of focusing on your specific example, rather than your larger point which is a good one:

If you're talking about _balanced_ trees, I sort of agree with you. That's the kind of algorithm where it makes sense to write it once, test it thoroughly, stick it in a library and never worry about it again. But there are plenty of other uses for tree-like things. Think filesystems, or the HTML DOM, or JSON documents, or (generalizing a bit) dependency graphs, and so on...

I actually like tree problems. You can take something with practical significance (laying out a web page, or syncing two directories, or simplifying a boolean expression) and strip away the details of the situation to get to a core algorithm that depends only on the tree's structure. In my experience, the biggest factor in how well interviewees cope with kind of question is their ability to reason clearly about what their code is doing, instead of just pattern-matching from their previous experience.

<comment><USER8> Right, but for most tree problems, you don't need to write your own tree. People should know how to _use_ trees, and when one would use them (a map with ordered traversals.) For graph problems you will often have to write your own graph for the peculiarities of your problem, but the area I work in doesn't really have many graph problems.

</comment></comment></comment><comment><USER10> I look for test data. Up front. Particularly from developers with 3+ years of experience.

It demonstrates you understand the problem and are thinking about the cases that you will have to solve. It also acts as a good safety net for your implementation.

If you've got test data that will catch a bug, I won't count it against you in your implementation. However, if you've got a buggy implementation and you haven't provided test data for it, then it's broken.

<comment><USER11> I didn't do a lot of tests in my last work, but had a pretty good system. It was in house, so didn't matter so much if the odd bug slipped past.

I just changed job, and the system I have inherited doesn't seem to have much in the way of automated testing at all, but it works, and it runs. The logging is really thorough which helps a lot. The bugs I have encountered far wouldn't be caught by tests.

</comment></comment><comment><USER12> Hiring Manager: "Wow thanks for including a link to your github in your resume."

Me: "Yes I have to tell recruiters not to remove it. They think it's contact info."

Me: "As you can see I can implement search algos, web services, and even have some samples on how to insert your own frames into a web cam feed"

Manager: "Fantastic! Can we send you a coding quiz?" Me: Ugh. "Sure."

I get an email asking me to implement FizzBuzz.

Give me a break.

<comment><USER13> Blindly hitting candidates with a test is rude. There was definitely a trend a few years ago where bigger name companies wouldn't even look at resumes. They would just send a test out to every candidate who applied.

</comment></comment><comment><USER14> >Sometimes you'll get stuck. Relax. It doesn't mean you've failed.

Actually, in my experience you might as well walk out the door then and stop wasting everyones time. Has anyone ever experienced something different?

<comment><USER15> I don't know about entirely stuck, but I've definitely spent a long time in the weeds on questions, writing code on the whiteboard that was clearly sub- suboptimal. I've still gotten offers. It's all about managing the interview, communicating, asking for a hint or two. Not guaranteed, but definitely possible.

<comment><USER14> I just feel like I've been on a lot of unicorn hunt interviews recently (casually looking at interesting opportunities, currently pretty happily employed)

</comment></comment></comment><comment><USER16> "Understand what kind of problem it is" could be reworded to "Find out what the interviewer wants from you, and don't make unstated assumptions", and could be the subject of its own post.

The biggest problem in technical interviews is when the candidate doesn't know what the interviewer wants from them. Maybe they want unit tests, maybe a rough functional spec... maybe what they really want to see is how you'd explain your algorithm to a junior developer.

If, as a candidate, you think you've been given an egotistical interviewer that really just wants to see if you can read his mind, mentally reframe it as a test of your ability to not make unstated assumptions. I've had interviews when I've tried to clarify whether I need to do things a certain way or provide something like unit tests, and met with the response "I don't know - do _you_ think that's the kind of thing you should do?" If you get this as a candidate, the best solution is to talk a briefly about what you'd do in a real-world scenario (where you have context, tools, connectivity, time and teammates). If that doesn't reveal anything, explicitly state an assumption and why you're making it and move on.

If you give technical interviews, I implore you: when the candidate asks what you want from them, don't be coy or sneaky about it with the justification that figuring it out is part of the interview. _Tell the candidate what you want._ If what you want them to do is role-play a scenario where they extract requirements from you, tell them so. If you just want the damn FizzBuzz code so you can move on, tell them so.

<comment><USER17> > If you give technical interviews, I implore you: when the candidate asks > what you want from them, don't be coy or sneaky about it with the > justification that figuring it out is part of the interview. Tell the > candidate what you want.

Man, this is so true. I've had great conversations in interviews where it was stated up-front that the goal was to cooperatively dig into ambiguous specifications. This is (often) an actual part of working as an developer. Speaking with someone who's being deliberately vague about what they want is not, unless that's what you think of people "on the business side," in which case you've got a bizarre understanding of how this industry works that would be a big red-flag for me as a potential colleague.

</comment></comment><comment><USER18> How uniform are tech interview questions, in others' experience? I've had questions all over the place, often entirely unrelated to the position at hand. A while back, interviewing for a gig at Microsoft on a server related position, I was asked questions about triangle rasterization algorithms and z-buffers, by an entirely unrelated group. What is the point of these off the wall questions, and how or should one even prepare for these sorts of things?

<comment><USER19> As a junior CS student - I haven't heard about these before... Kind of scared - Should I know about these kind of advanced things before I get out of school? I'm not attending a particularly 'rigorous' university for CS

<comment><USER20> It seems rather ridiculous to ask graphics-programming questions of someone interviewing for a server side position. I don't think any kind of preparation would help you with that kind of questions.

<comment><USER18> I asked the recruiter I had been working with about it, and her response was along the lines of: 'We only hire engineers who are capable of tackling any problem faced by the company.' ...

<comment><USER19> So in other words they want that mystical 10x engineer

</comment></comment></comment></comment></comment><comment><USER6> Do senior software engineers actually have to write code in interviews these days?

I have no problem brainstorming on a whiteboard with their CTO or senior architect, but I would consider it silly to do puzzle programs or write java with some middle-manager lurking over me

<comment><USER11> Unfortunately so. A ten minute chat with the HR drones who are able to answer virtually nothing about the role followed by a three hour hacker rank challenge or something similar. I even wrote a small application an stuck it n Heroku as an example of my work.

I used to be good at those kind of tests 15 years ago. Now I am orders of magnitude more competent at designing implementing and deploying systems I have way more knowledge in all of those areas, but I get tested on that nonsense. I hardly ever write algorithms (occasionally), as I will look for an appropraite library first.

</comment></comment><comment><USER21> Some great advice in this article. In general I'm a huge fan of the content on Interview Cake. Lots of good problems to work through with increasingly valuable hints to step you through if you get stuck.

</comment><comment><USER22> My impression from interviews is that interviewers only care about Big O Notation and number puzzles. Nothing else matters. 30 seconds to come up with the optimum solution or else they tell you you're not a good fit. Hours of whiteboard coding goes fine and they say if you don't do the little puzzle then you don't know anything about algorithms. Thanks Facebook.

</comment><comment><USER23> Previous submission: [https://news.ycombinator.com/item?id=6559404](https://news.ycombinator.com/item?id=6559404)

</comment><comment><USER24> Practice is the key. Without practice, even communication isn't easy when you're being judged.

For core or senior engineering roles at big Internet companies, you're generally competing with candidates who have practiced for months. So unless you happen to have an astronomical IQ or you happen to get lucky, it pays to practice.

Parker is awesome and I love InterviewCake. If you want to come do more bootcamp-style intense practice, feel free to reach out to us: [http://InterviewKickstart.com](http://InterviewKickstart.com) :-)

</comment><comment><USER25> I like asking a refactoring / functional programming question in JavaScript like this one [http://glebbahmutov.com/blog/functional-js-interview- questio...](http://glebbahmutov.com/blog/functional-js-interview-question/) trying to make the candidate work through several small steps. At each step (step itself is pretty simple) I am looking for clarity and the candidate being able to explain the logic and the solution.</comment>


Show HN: KeyDB – A Multithreaded Fork of Redis - <AUTHOR> https://github.com/JohnSully/KeyDB <comment><USER2> I'd like to hear more on why you believe the Redis team is incorrect?

Some reasons against: [http://antirez.com/news/126](http://antirez.com/news/126)

<comment><AUTHOR> Three main reasons:

1) Modern NICs have multiple queues, and are best used with multiple threads.

2) A single core is not capable of saturating DRAM bandwidth.

3) Sharding is annoying, the more you can get out of one instance the better.

Those were the reasons we made the attempt. It certainly does make the code more complicated, but there's no feature in Redis that prevents it. The beauty of open source is you get a chance to try these things.

Cutting latency in half was a big benefit for us.

<comment><USER2> Interesting. My personal response to that list would be:

1) Binding a specific CPU->NIC like one often does for LB's such as HAProxy is likely more performant.

2) Multiple instances of Redis on a single box; one per physical CPU core

3) I can't argue that it's annoying, but generally with Redis you're going to want shards across physical machines anyway.

Not trying to attack, just curious. As you say, that's the beauty of OSS so props to you!

</comment></comment></comment><comment><USER3> Looks like a wonderful project. In general, the primary value to in-memory data stores is lower latency and higher throughput, so I'm excited to give KeyDB a try.

Are existing Redis clients compatible with KeyDB?

<comment><AUTHOR> Yes, its the exact same protocol. Compiling is also just as easy, except you need NASM.</comment></comment>


Intelligent Flight Control System - <AUTHOR> https://www.nasa.gov/centers/armstrong/news/FactSheets/FS-076-DFRC.html <comment><AUTHOR> Additional links:

1\. The Story of Self-Repairing Control Systems. [https://www.nasa.gov/centers/dryden/pdf/88798main_srfcs.pdf](https://www.nasa.gov/centers/dryden/pdf/88798main_srfcs.pdf)

2\. Flight Test Implementation of a Second Generation Intelligent Flight Control System. [https://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/200502...](https://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/20050238105.pdf)

3\. Flight Test Results from the NF-15B Intelligent Flight Control System (IFCS) Project with Adaptation to a Simulated Stabilator Failure. [https://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/201000...](https://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/20100025868.pdf)</comment>


Despite FAA Setbacks, Amazon Prime Air Makes Notable Hires - <AUTHOR> http://techcrunch.com/2014/08/20/despite-faa-setbacks-amazon-prime-air-makes-notable-engineering-nasa-and-aerospace-hires/?utm_content=buffer15eaa&utm_medium=social&utm_source=linkedin.com&utm_campaign=buffer <comment><USER2> The FAA thing didn't actually affect Amazon or their plans for Prime Air: [http://www.bizjournals.com/seattle/blog/techflash/2014/06/fa...](http://www.bizjournals.com/seattle/blog/techflash/2014/06/faa- s-ruling-doesn-t-affect-amazons-drone-delivery.html)

<comment><USER3> Strange how this author mentions the FAA about ten times without researching Amazon's official statement on the matter.

</comment></comment><comment><USER4> I think that the US may legislate it's self out of a really interesting industry, I would think it could be possible some smaller country with a good population density could become industry leaders here.

<comment><USER5> That sounds a lot like it will do very very well in Singapore especially if Singapore Post depots act as the hub for these drones. The entire country could be completely served by them.

Although there's no front lawn to speak of, so they will have to be able to slot things into mailboxes.

<comment><USER6> A tropical coastal city with high winds, heavy rainfall and multiple monsoon seasons doesn't seem ideal, despite the small area.

</comment></comment></comment><comment><USER7> I love the idea of Amazon Prime Air, but there's one concern I have. I know next to nothing about the FAA and airspace regulation, so I'd like to hear from someone who does.

The common argument to raised concerns of drones buzzing about is "well, we have cars and delivery trucks!" That doesn't quite sit well with me because we have designated specific areas to the use of automobiles. It's easy to stay off the road. We can consciously stay out of harm's way, even if it's an asshole driving recklessly.

How is this accomplished with drones? How is the airspace structured in a way where drones are in designated areas that either avoid or are avoided by humans? How do you prevent an asshole piloting a rogue drone from dropping a heavy item on someone in a balcony? One can make the argument that these concerns also apply to planes, but I'm assuming both the airspace and ownership of planes are heavily regulated and monitored. Will we need a similar system to manage drone use?

<comment><USER8> I'm wondering what the hell happens when the drone gets shot down...I know if there is 100$ of good AND a multirotor then these things will get shot from the sky. No matter if they have GPS or not.

<comment><USER9> You can avoid this and all the quasi-legal unregulated airspace drama by... wait for it... just being regulated and flying higher up in regulated airspace! Sure, meeting FAA regulation is hard, but it's necessary and I'd be very confident that's the right route for a service like this. If they fly high enough the only point it can be shot down is over Amazon's depots when they pick up goods, and over the house of the recipient when it drops them off. The former is well isolated, and the latter is unpredictable from the point of view of the hypothetical shooter.

</comment></comment></comment><comment><USER10> A much more likely delivery path will be something like Uber + Amazon.

<comment><USER11> Probably, though also probably a more depressing/less glamorous version of Uber + Amazon. Having people run around in cars is going to be horrifically non-economical, and at a commodity level delivering packages is going to be _far_ less profitable than driving people around.

More likely we'll see companies hire scores of underemployed former-members- of-the-middle class and put them on mopeds/bicycles (as density dictates). They are cheaper, and unlike machines scale up/down as seasonality requires. They are also highly flexible and capable of things like ringing doorbells, opening doors, climbing stairs, following notes on doors, and all the other details around delivery that "drones for everything!" acolytes tend to gloss over.

This is already the reality in places like New York - you can already get a huge array of things delivered within minutes by people zipping around on e-bikes.

<comment><USER12> You could get them to make multiple deliveries in one trip, maybe call them something like "postman".

<comment><USER11> Hehe, that's the big difference though right? We already have a really efficient, profitable delivery infrastructure. It just doesn't do near-real- time deliveries.

You can have fast deliveries, or you can have efficient/full-utilization of delivery workers. Even in a place as dense as New York City it's still very difficult to aggregate enough deliveries together that profitability for workers becomes substantial. Most are running around with 1-2 deliveries at a time.

</comment></comment></comment></comment><comment><USER13> If people want drone-based delivery, someone will make one that individuals can privately buy that will fly out to pick up packages. That's legal today. Any individual can do anything they want with a drone they own as long as it does not fly above 400 feet - it's the business owning it and using it for commercial purposes that makes it illegal under current rules.

<comment><USER6> An operator can't do anything they like, their UAS has further restrictions which would rule out automated parcel collection:

\- flown a sufficient distance from populated areas

\- should be kept within visual line of sight of the operator

Source: [https://www.faa.gov/uas/faq/](https://www.faa.gov/uas/faq/)

<comment><USER14> And, like many rules the FAA makes, there is debate over whether they have the legal authority or physical power to enforce them. That's why they took Trappy to NTSB court rather than arresting him. [http://www.forbes.com/sites/johngoglia/2014/04/12/faa- files-...](http://www.forbes.com/sites/johngoglia/2014/04/12/faa-files-appeal- brief-in-closely-watched-drone-pilot-case/)

</comment></comment></comment><comment><USER15> What if Amazon are building delivery AI not only for drones, but something else (cars?) Yeah, they say drones, but it's way too expensive project (people involved, locations, offices, etc ) to be for single purpose. Maybe they're just building something bigger.

</comment><comment><USER16> I would rather change that URL, the url_source points to linkedIn.com. Just saying.

</comment><comment><USER17> I'm sorry, but this is insane. No local government is going to allow these things to be buzzing around everywhere for no good reason.

People may like it for a about a week ("neato, I can get my package lickity- split!") and then will say screw this, those things are making a racket and driving me batty.

It's not like they can be used to deliver groceries. And they presumably have to return to the base after each delivery, because they can't carry that much. That's just crazy inefficient.

I could see small electric rolling vehicles that make automated deliveries. But noisy little helicopter drones? Not going to happen.

<comment><USER18> You're forecasting the future based on the state of technology at the present. That is unlikely to point you in the right direction.

<comment><USER19> On the contrary, it's quite possible for practical implementation details to hold back a field for hundreds of years. My favorite example is the hydrogen fuel cell. It was invented at a time when Abraham Lincoln was busy launching his first political career and still looked like this:

[http://en.wikipedia.org/wiki/Abraham_Lincoln#mediaviewer/Fil...](http://en.wikipedia.org/wiki/Abraham_Lincoln#mediaviewer/File:Abraham_Lincoln_by_Nicholas_Shepherd,_1846-crop.jpg)

yet 180 years later hydrogen fuel cells still aren't a competitive energy storage strategy. Less spectacular examples include flying cars and speech recognition / AI.</comment></comment></comment>


If you want to succeed in business, don't get an MBA. Study philosophy instead. - <AUTHOR> http://www.theatlantic.com/magazine/print/2006/06/the-management-myth/4883/

<comment><USER2> "the impression I formed of the M.B.A. experience was that it involved taking two years out of your life and going deeply into debt, all for the sake of learning how to keep a straight face while using phrases like "out-of-the-box thinking," "win-win situation," and "core competencies." "</comment>


Want a Better Pitch? Ask This Question - <AUTHOR> https://medium.com/firm-narrative/want-a-better-pitch-ask-this-question-daf91d2d21f6#.62qxw5pw4 <comment><USER2> I think I may try to do this myself. I'm working on software with a very broad potential application, and trying to make it approachable is an interesting pitch problem.

<comment><AUTHOR> Cool. I'd love to know how it works (or doesn't) for you.</comment></comment>


Fermented foods, neuroticism, and social anxiety: An interaction model - <AUTHOR> http://www.ncbi.nlm.nih.gov/pubmed/25998000 <comment><USER2> If you are curious about the foods:

> To determine participants׳ consumption of foods, they were first asked to > think of their food intake over the past 30 days (see Appendix). This was > followed by a list of 10 items consisting of the following: 1.fruits and > vegetables of all kinds, including fresh, canned, frozen, cooked, raw, and > juices; 2. yogurt, 3. kefir, or food or beverages that contain yogurt; 4. > soy milk, or foods or beverages that contain soy milk; 4. miso soup; 5. > sauerkraut; 6. dark chocolate; 7. juices that contain microalgae; 8. > pickles; 9. tempeh; and 10. kimchi. Participants were asked to indicate how > often they consume each of the foods using the following 7-point scale: 1 > (never); 2 (1–3 times in the past month); 3 (1–3 times per week); 4 (1–3 > times per day); 5 (3–5 times per day); 6 (5–7 times per day); and 7 (more > than 8 times per day). Scores were converted to monthly frequencies of 0, 2, > 8, 60, 120, 180, and 240, respectively.

And the Conclusion:

> This study provides the first connection between natural fermented food > consumption patterns and anxiety. Increased consumption of fermented foods > likely to contain probiotics was associated with fewer social anxiety > symptoms. This effect was qualified by an interaction with neuroticism; > those who were highly neurotic showed fewer symptoms of social anxiety with > greater consumption of fermented foods. Also of note, increased frequency of > exercise was associated with decreased social anxiety. Taken together with > the results of previous preclinical and clinical studies (Rao et al., 2009, > Silk et al., 2009, Messaoudi et al., 2011 and Tillisch et al., 2013), the > current results suggest that fermented foods likely to contain probiotics > may have a protective effect against social anxiety symptoms for those at > higher genetic risk, as indexed by trait neuroticism. While a follow-up > prospective cohort study or clinical trial is necessary to determine the > direction of causality, these results suggest a possible clinical benefit of > fermented foods, a low-risk intervention, on social anxiety.

<comment><USER3> Everything about this study says it is not worth taking seriously. Why? Because...

1) The size of the effect is not reported. Without any indication of what the dose-response curve is other than it has a positive slope (at what significance level?) we know nothing about the relevance of this result to clinical practice.

For example, it is true that if you pay very careful attention to the sidewalk you will _increase_ the amount of dropped money you find. It's not going to make anyone rich, though, any more than just any measurable effect is going to make one less anxious to a useful degree. There is zero indication of how big the effect is, other than it is measureable in a large population. The lack of indication of effect size suggests that it is really small.

2) Self-report via recollection is a lousy data collection technique. Was a food log app really too much trouble? So the raw data are incredibly noisy and may contain systematic errors that are related to the phenomenon under test.

3) They've subsetted the data by pulling out neuroticism, thereby dramatically reducing the significance of any result by an unknown amount (how many other characteristics did they investigate?)

This is the greatest sin. _Any_ time you see a paper that says, "The effect was particularly large in sub-population X" the first question to ask it, "How many sub-populations did you look at?" The next question to ask is, "What is your calculated probability that _any one of_ your sub-populations would have had such a large effect by chance?" These numbers should be reported in the abstract because people subset their data all the time and then analyze the subset that shows an effect as if it was the only one. This is either incompetence or dishonesty.

Statisical significance rolls off with astonishing speed as you subset the data, and if you don't have a formal discipline for subsetting as part of the experiment design that is fixed prior to analysis, any result on a subset is necessarily insignificant because you could have kept subsetting until you found a 'significant' result. If you don't have a formal discipline that says, "We will cut the data in these N ways and only these N ways" you are going fishing on an infinite ocean, where you will certainly catch the kind of fish you are looking for.

<comment><USER2> Oh yes, I agree.

More importantly, food is inherently cultural and varies on class and it might be that neuroticism/social anxiety does as well. I posted this because I thought it sounded like a week study with an overly strong conclusion.

<comment><USER4> >I posted this because I thought it sounded like a [weak] study

Let me see if I understand: you posted (the abstract of) a study you consider not worth taking seriously so that you could read criticisms of the study by people who know more than you; is that correct?

If not, then please explain more about your motivation for posting because I'm a little confused on that point.

<comment><USER5> batbomb did not post the paper.

</comment></comment></comment></comment></comment><comment><USER6> Given the effect probiotics have on one's gut flora, and the newly-discovered pathway from the gut to the brain via the lymphatic system, this seems to be in the realm of possibility.

[http://neurosciencenews.com/lymphatic-system-brain- neurobiol...](http://neurosciencenews.com/lymphatic-system-brain- neurobiology-2080/)

<comment><USER7> There's already a huge link between the gut and the brain called the vascular system.

<comment><USER6> Subject to the brain blood barrier, yes.

</comment></comment></comment><comment><USER8> This is a correlational, not causative study. It's possible there's some third factor that cause both an increase in eating fermented foods and a decrease in social anxiety. Amount of free time, for example, or belief in healthy eating, or vegetarianism, or income. They do try to control for confounding variables (fruit & vegetable consumption) but there's no way to control for everything.

Let's wait until someone conducts a double blind study before drawing too many conclusions from this.

<comment><USER9> One nice thing about this claim: it should be easily testable. In fact, someone could test it themselves; score yourself on a Big Five inventory, if you're >75% N, make some capsules with probiotics (I believe they come in powders so this is easy), take them blind, go to a party or other social interaction, and self-rate how stressed you are.

<comment><USER10> Instead of capsules can I make kimchi and eat it for a week? Something that calls for fish sauce and hot peppers is bound to have some social impact.

<comment><USER9> Unless you know a vegetarian, you may have trouble finding gel capsules sufficient for a decent dose of kimchi... (Also, now you have to refrigerate all your capsules.) Easier to just use some probiotic powder stable at room- temperature unless there's some compelling reason to expect them to be ineffective.

<comment><USER11> Vegetarian?

<comment><USER9> Er, brain fart. I meant 'veterinarian', so you can get horse pills...

</comment></comment></comment></comment></comment></comment><comment><USER12> Loosely, kimchi [1] consumption and exercise frequency are both (and independently) negatively correlated with social anxiety.

[1] As a stand-in for all fermented foods that contain or are likely to contain probiotics.

<comment><USER13> Are you pulling from a source for this? Care to link?

<comment><USER12> I'm TL;DR-ing _The Fine Article_.

Scroll up for the link.

</comment></comment></comment><comment><USER14> For those with subject-matter expertise in probiotics: Is buying probiotic supplements a waste of time and money, and, if not, what are the strains one should be looking to purchase? Is there any known association between particular strains and particular effects (such as weight loss, or the anxiolytic effect described here, etc)?

<comment><USER7> It's mostly a waste. Very difficult to eat enough bacteria to have them compete with your extant gut flora.

This paper is questionable for other reasons.

<comment><USER10> Huh? What about Botulism and the bad E. Coli?

<comment><USER15> Both Botulism and E. Coli make you sick due to potent toxins produced by the bacteria, not due to them taking over your gut flora. The bacteria doesn't even need to be alive to make you sick if it's already colonized your food.

<comment><USER7> Good thoughts! Botulism is caused by a toxin produced by Clostridium botulinum.

E. coli is a little more complicated: some E. coli spp. produce toxins, and other species are enteroinvasive and actually can outcompete the gut flora (confusingly enough, other species of E. coli are also in the normal gut flora).

The main reason that some species of E. coli can make it to your gut and cause disease are that they have a variety of pathogenic factors that definitely would not be found in bacteria in 'probiotic' foods.

(and I see who you are replying to just edited their response to add 'bad' E. coli)

</comment></comment></comment></comment></comment><comment><USER16> Also, margarine consumption causes divorce in Maine. More "true facts" at [http://tylervigen.com/spurious-correlations](http://tylervigen.com/spurious- correlations).

</comment><comment><USER17> I don't need an excuse to eat more kimchi, but hey, if it's helpful :-). Kidding aside, I love that more studies seem to keep coming out linking healthy diets with _mental_ and _psychological_ benefits.

<comment><USER18> This study doesn't do that, so much.

People who eat fermented foods have less anxiety, but we don't know if lower anxiety means people are more likely to eat fermented food or if eating fermented food reduces anxiety.

</comment></comment><comment><USER19> I've always felt in my gut that my gut has a mind of its own but that might just be my gut's 20/20 hindsight.

It's just fascinating and exciting how much we're learning about the role the gut plays in physical and mental health. The really great thing is that it seems pretty easy to control (with poop pills, or whatever) so a lot of people may benefit for very little cost.

</comment><comment><USER10> On a related note how do I find out what microbes are living in my sauerkraut, kimchi, kefir, or yogurt right now? There is no nutrition label.

<comment><USER20> Make your own! All 4 of those foods are surprisingly easy and cheap to ferment yourself. The best books on the subject are by Sandor Katz. There is lots of information online as well.

I drink homemade Kefir (with a bit of honey) every morning. Whether the effect is real or not, I feel better on the days I have it than the days I don't.

<comment><USER10> I chose Alex Lewin instead of Sandor Katz. Now I have this sauerkraut that smells pretty good, but I don't have the courage to eat it or the confidence that it isn't moldy. If I had chosen Katz would things be different?

</comment></comment></comment><comment><USER21> Eating fermented food always decreases my social anxiety. But I think the hops and/or distillation process kills off any bacteria that may have been in them, so i have doubts as to the causal mechanism.

<comment><USER22> I see you. :)</comment></comment>


MOOC: Calling Bull in the Age of Big Data (note Comments) - <AUTHOR> https://www.youtube.com/playlist?list=PLPnZfvKID1Sje5jWxt-4CSZD7bUI4gSPS <comment><AUTHOR> Course web page: [http://callingbull.org/](http://callingbull.org/)

</comment><comment><USER2> Not all the lectures are out but I'll definitely be checking out when they finish posting them.</comment>


Pure Python vs. Numpy vs. Tensorflow Performance - <AUTHOR> https://realpython.com/numpy-tensorflow-performance/ <comment><USER2> It would be nice to have that "raw" decent source in C++ to compare to, as well as Java. Although nothing is stopping me from doing the same ...</comment>