George Floyd Updates: Former Minneapolis Officer Is Charged with Murder - <AUTHOR> https://www.nytimes.com/2020/05/29/us/george-floyd-minneapolis-protests.html <comment><USER2> There's also a video from a new angle of the arrest (of George Floyd). TRIGGER WARNING, this video is graphic and difficult to watch: [https://www.nbcnews.com/video/george-floyd-arrest-video- show...](https://www.nbcnews.com/video/george-floyd-arrest-video-shows- another-angle-with-multiple-officers-84081221791)

The formal complaint to the court and charges can be found at: [PDF] [https://assets.documentcloud.org/documents/6933246/Derek- Cha...](https://assets.documentcloud.org/documents/6933246/Derek-Chauvin- Complaint.pdf)</comment>


Time to Apply to Inc 500/5000 - <AUTHOR> http://www.inc.com/inc5000apply/ Anyone from HN going to apply? I know most startups are to young but a few might qualify. <comment><USER2> One stupid requirement from the application: your company must have been generating revenue since 2005. What happens to startups that actually are growing like crazy today but were not around in 2005?

I can understand some need for past performance, otherwise Inc. can't compute a growth rate, but still...

<comment><USER3> It makes sense to have some minimum starting point -- e.g., the $200,000 revenue in 2005 which is required here -- because it's easy to get astronomical growth rates if you're starting from low enough.

That said, I think this would have been better accomplished by saying "if your revenue in 2005 was less than $200k, we will treat your company as if its 2005 revenue was $200k" -- don't allow companies to measure high growth rates simply because they're starting very low, but don't exclude them either.

</comment></comment><comment><AUTHOR> Anyone from HN going to apply? I know that most are early stage but there might be a few more established companies running around here.

<comment><USER4> "# Have been founded and generating revenue by the first week of 2005, and therefore able to show four full calendar years of revenue"

Not many HN companies can actually apply for it.</comment></comment>


How to Design for the Modern Web - <AUTHOR> https://medium.com/commitlog/how-to-design-for-the-modern-web-52eaa926bae2 <comment><USER2> Medium is doing a great job on the web design front already! Reading on my laptop, there was a fixed header taking up about 10-15% of my screen height (in fullscreen), a fixed social networking sidebar on the left and a lovely dialog box attached to the bottom of the screen letting me know I can subscribe to Medium for $5/month. Best part about that bottom bar is that just in case I haven't subscribed when I closed it out, it is more than happy to show up after a few minutes when I've switched back to the tab, as it did while I was composing this commentary.

Really helps the readability of the website, which I especially appreciate on a website devoted entirely to reading. Really makes me wonder why Firefox even bothers with a Reader mode when we have high quality web design like this!

Let's never go back to hosting our own writing on our own websites. Medium has made that obsolete.

<comment><USER3> Medium is not doing any type of good job. Going on the website, i'm immediately flooded with a layout of pictures and headlines designed to gain my attention. Clicking on an article, I get two notifications that pop-up regarding their privacy policy and then their premium service. Their entire schtick is designed to distract you and keep you on their site for as long as possible, as part of a scheme to monetize as much out of every visitor. For a much better design, check out something like instapaper or it's competitors.

<comment><USER4> I know people say that sarcasm is hard to pick up in text form, but I didn't think it was _that_ tough.

<comment><USER5> Read the comments to the article on medium.

<comment><USER6> Fortunately, the comments are only accessible to members of that particular blog. Open commentary is so 2015.

</comment></comment></comment></comment></comment><comment><USER7> This is a bit glib, I know, but my method of not needing to show an annoying cookies box on my personal website was to... Not use cookies.

Or analytics.

Or third party fonts.

Or even JavaScript—I just haven't needed it yet. It's just a content site; why bother?

I bought some fonts I could host myself. Bought a base CSS / HTML template for so cheap I kinda felt bad about it. Did some edits to the template. I also had a blind person to review the site with their screen reader and we pleased when they came back saying it was one of the best they'd ever, uh, heard?

I host my own images too. It's all first party and it honestly feels great to focus on the content rather than stress about random numbers on an analytics dashboard. I have no idea how many reads the stuff has, but people are translating[0] articles for free and requesting RSS feeds. (Which I also quickly coded up. Did I mention I rolled my own static site compiler too? Ruby is really great at this kind of thing.)

The only thing I don't like right now is that I don't have an easy way to write first drafts and have them edited unless I want to shuffle the data from something like Google Docs. In an ideal world I'd pay my editor to learn the markdown inspired template language I created[1] and how to run a pull request in GitHub.

[0] Never did I expect someone to offer to translate something for me for free; let alone into languages as obscure as Uzbek.

[1] Markdown is great, but if you want to make content that's more HTML-y with ease I find it gets out of the way too quickly. I want to be able to open a <blockquote> and not have to put a bunch of paragraph tags in there.

<comment><USER8> I'm with you, I don't cookie up any of my websites and have no intention of doing so. (Right now, my sites are super-primitive; my main one I've had for 22 years or so, but I'll be doing more).

But I do need to say that third-party fonts are not the problem here, or shouldn't be. Neither Google Fonts[1] nor Typekit[2] sets cookies. I don't know off the top of my hand if any of the other services do, but if so I would agree it's a good reason not to use them.

Disclosure: I helped launch Google Fonts and was involved in the decisions to make it privacy-friendly.

[1] [https://developers.google.com/fonts/faq#what_does_using_the_...](https://developers.google.com/fonts/faq#what_does_using_the_google_fonts_api_mean_for_the_privacy_of_my_users)

[2] [https://www.adobe.com/privacy/policies/typekit.html](https://www.adobe.com/privacy/policies/typekit.html)

<comment><USER7> I'm certainly not going to rail against third party fonts. The web is a mess and this is just a small part of the mess and certainly not the worst offender.

That being said, however, it's certainly _possible_ to fingerprint traffic if you serve fonts as a third party; even if you don't use cookies. Most third party font suppliers use JS, and even if they didn't, let's not pretend that cookies is the only thing we have to worry about. One of the issues I have with the web is that I want _technical guarantees_ when the answer is often "just trust us" even if we shouldn't need to.

Take fonts, for example. There is zero reason that fonts need to be served third party. All we should need to do is to specify a URL-based UUID for a font in our HTML and provide a cryptographic signature from the font owner that authorizes its use at this URL. Complex licensing is completely pushed to a different layer. The only tricky part is keeping ownership keys secure.

No judgements—I get that people are lazy and use the tools they have, so JS wins.

But for me, and my lowly personal website, we shall use secure headers. We shall host our fonts and images ourselves; and as the monks of yesteryear, our austereness advances an end unto itself.

<comment><USER9> > There is zero reason that fonts need to be served third party.

I use the service Icomoon[0] in production. It's been immensely helpful for generating a custom icon font. Our designers upload icons they create, and Icomoon bundles them all in one font file. Easier than multiple SVGs and only one HTTP request. I wouldn't want to manage that myself — so there's one reason for fonts to be served third party.

[0] [https://icomoon.io](https://icomoon.io)

<comment><USER7> Right but you shouldn't need to. In my proposed solution the browser could just make a separate, non-third party request for the font to icomoon.io and on load, if browser needs that font and doesn't already have it. It should get it from your OS provisioner (Google / Mozilla / Apple / Microsoft) directly and if they don't have it (or Icomoons public key) they could request it from Icomoon on your behalf. Or, if Icomoon is up to shady tactics, refuse the request.

<comment><USER10> You said there's zero reason for fonts to be served by a third party.

And then you're saying that part of your proposed solution is for the user (party 1) to download the font not from your site (party 2) but from Icomoon (party 3, i.e. literally a third party).

Did I miss something?

<comment><USER7> The point is that copying or hosting the font shouldn't be what is copyrightable. It should be _use_. Most commonly used fonts should be pre- installed. Only for the very weird situations should the browser resort to downloading the font and, in my opinion, should do it in a way that is not trackable.

The way we currently download third-party fonts exposes the content that we're viewing to the font hoster. That's really stupid. If we need to download from a third party it shouldn't be in the same browser context. I.e., the party shouldn't be able to execute arbitrary JS or see the document Origin.

</comment></comment></comment></comment></comment></comment></comment><comment><USER11> How glorious that to read this I had to duck under a 'download the medium app' popup and hop over a 'sign up to premium' popup. Always good to see dogfooding.

<comment><USER12> You might find this useful[0], basically removes clutter. Found on some recent topic.

[0] [http://outline.com/3JqpTH](http://outline.com/3JqpTH)

<comment><USER13> With JS disabled, this page comes up blank.

</comment></comment></comment><comment><USER14> There's a lot to be said for sites like this: [http://lite.cnn.io/en](http://lite.cnn.io/en)

It's fast, non intrusive and just gives you the information you want without the annoyances.

It also works far better for disabled people. I know some partially sighted people and some websites are a no-go now as screen readers can't cope

<comment><USER15> I too find this useful on an old Blackberry phone, along with NPR[0]. Unfortunately, I've found that the CNN site no longer seems to get updated daily.

[0] [https://text.npr.org/](https://text.npr.org/)

<comment><USER16> Brilliantly, the NPR text site is what you get if you reject their GDRP popup, so one would hope they continue to update it.

</comment></comment></comment><comment><USER17> One tip that is not covered: If the user already has the app installed, right on top show some message like, "you can only read 2 more exclusive articles this month", which expands to some marketing speak and option to pay $50. This will make the user immediately run for their wallet and subscribe. I just noticed that Medium has this down.

</comment><comment><USER18> This is a really good assessment for why I don't use the internet as much as I use to or at least the websites I frequent have become ones that aren't bloated and unusable.

</comment><comment> kyle-rb I feel like blocking European users should return a 451 error, "Unavailable for legal reasons"

<comment><USER19> Not sure what lead certain sites to take that path, but the real issue IMHO wasn't really a legal one but rather that the site owner was indeed a teapot.

</comment></comment><comment><USER20> Wait: block all visitors from Europe instead of making changes to your site?

Nobody had an issue with that? I can't believe this hasn't been commented on.

<comment><USER21> The linked post is definitely satire.

<comment><USER20> So embarrassed that I didn't pick up on that the first time. I assumed they were kidding sometimes but not the whole thing.

<comment><USER19> Poe's law in action, not sure what this says about Medium content in general.

</comment></comment></comment></comment><comment><USER22> Linkedin.com is one of the worst offenders here, I avoid using that site because of it.

</comment><comment><USER23> Oh man, I just found a new one on the Seattle times mobile [0]. They have a sign up for their newsletter pop up on the bottom of the screen and clicking the x to close it flashes the sign up button and does not close it. You can just keep pressing the close button and all it does is flash the sign up button.

[0]: [https://www.seattletimes.com/seattle-news/homeless/is- seattl...](https://www.seattletimes.com/seattle-news/homeless/is-seattles- homeless-crisis-the-worst-in-the-country/)

<comment><USER24> I could close it properly.

</comment></comment><comment><USER25> Do people not realize that this is satire?

<comment><USER19> With 150 000 reads so far, I hope most do.

</comment></comment><comment><USER26> How tongue-in-cheek. Love it.

</comment><comment><USER27> it's basically a 1:1 a description of reddit

<comment><USER28> Didn't realise Europeans couldn't use reddit

<comment><USER19> Mostly news sites did that from my experience, I just found it ironic with how Americans stereotypically shout freedom of speech at every opportunity and then news outlets turn around with "Oh you're European, can't read our news".

Reddit's mobile website truly hates itself tho.

</comment></comment></comment><comment><USER29> > _Let 's never go back to hosting our own writing on our own websites. Medium > has made that obsolete_

nope! hosting your own site on your hardware puts you in control of your site, i wouldnt hand my house keys over to a housing co-op you shouldnt let someone talk us into doing that to the web.

</comment><comment><USER30> Is this a joke?

I quote: "A neat little trick is to make the link to close the modal small and put it very close to the link that lets the user install the application. This will make users much more happy as it's so easy to install the application and not accidentally close the dialogue!"

Go away with your concept of the "modern web". I must be post modern as I do not install random apps. What a stupid horrible negative pattern!

<comment><USER19> > Is this a joke?

The post, yes it's a joke but reality is just as sad, Reddit, Medium, Facebook, Linkedin etc all do this kind of crap.</comment></comment>


Best programming books of March 2016 - <AUTHOR> http://codepancake.com/best-programming-books-march-2016/ <comment><USER2> This list is strange. The criteria is not very clear. The list seems to follow some method that is more than just subjective (it seems to be updated frequently and positions of individual books are tracked) but the results leave a lot to be desired, in my opinion.

More specifically, some of the books are obvious classics not published in 2016, some are unproven, specific newcomers (who's this list for?) and "Windows 10 companion: the complete guide for doing anything with Windows 10" is not a programming book (it just looks like a cheap ebook for Windows users).</comment>


Want to reduce the carbon footprint of your food? Focus on choice vs local - <AUTHOR> https://ourworldindata.org/food-choice-vs-eating-local <comment><USER2> I believe many people are really wanting improve their environmental impact and thus unfortunately carbon footprint is not a good enough proxy.

Water use and water pollution are just two factors that are probably more significant, and have a broader, faster impact on biodiversity.

For example: Growing 1 almond (a low emission nut) uses about a gallon of water.

Dairy cattle have a terrible impact on waterways with run-off and animal wallowing.

</comment><comment><USER3> The first chart is eye opening. Moving from beef to pork is a much bigger win than "eat locally".

</comment><comment><USER4> It seems only logical that (a) growing plants to eat them is more efficient than (b) bringing an animal into existence, feeding the animal with said plants and then eating the animal.

So (b) is more polluting and more cruel than (a). It might be time to wonder if it is worth it.</comment>


High availability load balancing with HAProxy and CARP on FreeBSD - <AUTHOR> http://www.techbar.me/2013/01/high-availability-load-balancing-with-haproxy-on-freebsd/

<comment><USER2> A number of years ago, I set up a similar configuration with two OpenBSD boxes (which support PF and CARP out of the box) running Apache + mod_proxy_balancer for really granular load balancing and routing. It was a super-flexible and cheap way to route traffic to a mid-sized app server cluster, and generally worked really well.

We did have some network issues after the new topology went live that we unexpectedly tracked down to the LB pair, for one simple reason: CARP generates a lot of multicast traffic. Depending on how your hosts and network are configured, this can easily get routed out into a fairly large portion of your local network, and use a lot of bandwidth/router capacity with no benefit.

So, if you're setting up a CARP pair/cluster of your own, pay close attention to your multicast setup. Ideally, put the CARP multicast traffic on a dedicated subnet and watch your router and switch stats to make sure you aren't flooding the rest of your network with multicast spam.

<comment><USER3> Also if you're setting up in a virtual environment keep in mind that it requires promiscuous mode enabled.

This stopped the show for me once when setting up two OpenBSD load balancers in a shared virtual environment. I was told that to enable promiscuous mode on a single port group they would also have to enable it on the physical ESX host adapter for each ESX host since the pair was separated on different physical hosts.

If that is true then I would never enable it. However networking isn't my strong side so I can't verify this.

</comment></comment><comment><USER4> Carp/ucarp are pretty fun. Additionally keepalived in linux implements vrrp and some additional nice features such as scripting what to do on failover of resources.

An addendum to this guide might be to add in connection tracking across the master/slave nodes. In *BSD this is implemented with pfsync. In linux it would be iptables connection tracking.

More on pfsync: <http://www.openbsd.org/faq/pf/carp.html#pfsyncop> Linux conntrackd: <http://conntrack-tools.netfilter.org/>

Edit: Oh, and everyone always forgets about using LVS for load-balancing and failover. There's endless documentation on the web about that, and it's not a proxy service like haproxy (which is both good and bad).

<comment><AUTHOR> You are right, connection tracking is must have in production environments, I will try both pfsync and iptables. Thanks

<comment><USER4> Well pfsync is only for freebsd pf. If you use linux instead then you'll be using iptables + conntrackd.

They're both powerful systems with a different way of thinking about the idea of packet filtering and mangling!

<comment><USER5> (pf is actually taken from openbsd and ported to freebsd every few release cycles, so pf/pfsync/carp is an openbsd-ism made available to others by the generosity of using the BSD license.)

<comment> X-Istence The PF that is currently in 9.1 is a few releases behind from OpenBSD and most likely will stick that way because of major changes. In FreeBSD the PF is now fully multi-core aware and thus granularly locked providing a lot of extra performance, this does mean that importing the latest changes from OBSD into FBSD is going to be more difficult!

<comment><USER4> Interesting, didn't know that! How do the multi-core abilities of PF compare to how Linux handles iptables (interrupt handling, which multi-core depends on your kernel supporting it)?

<comment> X-Istence I don't know. I don't use iptables. The last time I deployed Linux was for an Android Continuous Integration server since the SDK won't run on the BSD's.

</comment></comment></comment></comment></comment></comment></comment><comment><USER6> Is this load balancing or just a redundant online backup? The way I read this was that all traffic goes to one server until it fails and then it flows to the backup. If this is the case and you got a huge influx of traffic it seems like it would crash server 1 and then 2. Or am I misunderstanding it?

<comment><USER7> You're slightly misunderstanding things.

The article describes two things:

1\. Having a virtual IP which can move around between two physical hosts, such that it is "always available". (It will clearly go away if both hosts crash).

2\. Using HAProxy to route incoming requests, from the single virtual IP, to _both_ back-end webservers.

This means in the expected & typical scenario where both hosts are online both webservers will handle half the load. When one host fails the other will handle all traffic.

<comment><AUTHOR> Ok, if both load balancers go away it will crash. When master or backup is up, both webservers in background can take all load (100%), because just one loadbalancer will work in one time.

</comment></comment></comment><comment><USER8> Does anyone know how CARP on FreeBSD compares to keepalived on Linux?

<comment><USER7> CARP compares well to UCARP on Linux, as I recently documented here:

* [http://www.debian-administration.org/article/678/Virtual_IP_...](http://www.debian-administration.org/article/678/Virtual_IP_addresses_with_ucarp_for_high-availability)

<comment><AUTHOR> Thanks, I didn't know about UCARP</comment></comment></comment>


All The Developer's Books You Ever Wanted - <AUTHOR> http://jeez.eu/2009/10/20/all-the-developers-books-you-ever-wanted/ <comment><USER2> This is a cool resource, but it's unfortunate that all of the "C/C++" titles are actually just C++. Here are a few C titles that are also available online:

<http://publications.gbdirect.co.uk/c_book/> <http://www.oualline.com/style/> <http://www.nrbook.com/a/bookcpdf.php>

<comment><AUTHOR> Added the resources and credits to you! :)

<comment><USER2> Thanks!</comment></comment></comment>


When Filming in New York, the City Is Always the Star - <AUTHOR> https://www.nytimes.com/2019/09/26/arts/when-filming-in-new-york-the-city-is-always-the-star.html <comment><USER2> Funny thing NYC has several stunt doubles like Montreal and Toronto.

<comment><USER3> This made me rewatch _Vancouver Never Plays Itself_ [1] from Every Frame a Painting. It didn't have as many examples of Vancouver playing New York as I remembered, but it's still an interesting demonstration of how a city is made to appear not to be itself on screen.

1: [https://youtube.com/watch?v=ojm74VGsZBU](https://youtube.com/watch?v=ojm74VGsZBU)

</comment></comment><comment><USER4> For a similar contemplation on Los Angeles, see the 2003 film "LA Plays Itself."

</comment><comment><USER5> Funny thing is that the stand in NYPD cars are immaculate, shiny, and unworn by use. Very much unlike the real cars.

<comment><USER6> Yup, 'clean' nyc always seemed off. The grit is what sells it.

<comment><USER7> This is one reason Mr Robot is so appealing to me - it feels so real as a New Yorker

</comment></comment></comment><comment><USER8> It's true and it can be distracting. It's actually the main issue I had with The Adjustment Bureau which ended up feeling like a two hour marketing piece for the city. I'm really curious as to whether promotion of NYC is a prerequisite for receiving film subsidies.

</comment><comment><USER9> When I visited New York City for the first time in my life two things struck me as odd:

On thing was the number of camera teams in the streets. I mean not movie production teams necessarily but press primarily. This was after 9/11 and before that I always wondered how it could be that there where multiple cameras pointed at the twin towers in exactly the right moment. After I spent some time in NYC this wasn't weird at all anymore.

The other thing was that strange feeling of familiarity of many streets and places. I blame watching too much Kojak as a kid...

<comment><USER10> > When I visited New York City for the first time in my life [some] things > struck me as odd: On thing was the number of camera teams in the street. I > mean not movie production teams necessarily but press primarily.

I grew up in NYC and I can say that filming (professional or not) has increased dramatically. When I was younger, I would routinely see camera crews down the street and get excited about who was there or what they were filming. Now, it happens with such regularity that you just grumble and try to find a way down the side-walk to avoid it.

</comment></comment><comment><USER11> I <heart> NYC.

L0 VE</comment>


Transgender Today – Karen Topham - <AUTHOR> http://www.nytimes.com/interactive/projects/storywall/transgender-today/stories/karen-topham <comment><USER2> >I knew in an instant that any hope my 12-year-old mind had of the transition it had longed for since it could comprehend the difference between the sexes was hopeless, and that I would never be able to talk to my mother about the most important thing in my universe.

First of all, this was when the person was 12 (the 60's), not today. Secondly the LGBTQ community speaks of being tolerant of all cultures, you have to take into account that the authors mother was probably raised that way from birth and that perhaps given sometime her mind could be changed.

I'm not really sure what this particular article has to do with anything related to what's discussed on this message board. To me it seems like outside of the LGBTQ community its self, the technology sector is the most accepting of their culture. It's extremely rare that I ever see people who actually don't like/accept LGBTQ in any community.

The technology sector is _clearly not_ anti-LGBTQ or anti-women or anti-black. So why then do words like "racist" and "misogynist" get thrown around constantly? To me it seems like there is a small group of people attempting to control the narrative of conversations and arguments by making up arbitrary rules about how your culture is wrong (and therefore racist) and should assimilate to their culture, which requires extreme devotion to their rules (which actually don't exist).

<comment><USER3> I've been working in technology for almost 30 years. I've seen racists, misogynists, homophobes, transphobes; bigots of every shape, size, and color. To think of any community as wholly privileged and safe from ignorance is arrogance. Even people within the LGBTQ community have hateful or degrading points of view. You are not separate from this, we're all part of this, and right now your using your voice to say there's no problem. Your experiences are not the experiences of others.

</comment></comment><comment><USER4> what does this have to do with Hacking News?

<comment><USER5> I guess it is something someone might find interesting, or worth of reading. HN is not only about hacking. If you are not interested (I am not, for example), simply pass.</comment></comment>


How do I avoid hiring assholes at my company? - <AUTHOR> http://michaelrwolfe.com/2013/10/20/how-do-i-avoid-hiring-a-holes-at-my-company/ <comment><USER2> Following that advice will create a bland company of mediocre people. But hey, no a-holes! </sarcasm> :-)

To me the evidence to how misguided this advice is, is that the author first assumes people _are_ assholes (so it's a quality of the person), but in the last section they assume that it is useful to give "stern feedback" so people can correct their behavior... so people _behave_ as assholes and are free to change if they choose.

Which brings me to the other point. What if these people _were_ the most important contributors in the past jobs? What if theirs skills _are_ more important than the rest? Should they describe themselves as simply "part of a team"? That would be completely hypocritical.

Equally, all the markers they give are completely unqualified by ifs and caveats, and as such are very misguided.

Here's how you don't hire an asshole. imo:

* You use your own empathy to understand if you can work with this person, if they fit culturally

* You look for lack of empathy in the candidate because that's the sure sign of a person that will break your culture eventually

(I would not hire someone with a similar blog post)

<comment><USER3> I don't mean this glibly, but just in case you aren't playing devil's advocate: you sound like an asshole, and I would not hire someone who made a comment like this one. ($0.02 and all.)

<comment><USER4> Oh god, really? Is that what we have now- people on HN telling each other "you're an asshole i won't hire you" "no you're an asshole I won't hire you"?

Come on guys.

</comment></comment></comment><comment><USER5> Isn't this just a vulgar, shallow rephrasing of solid, old-fashioned management principles that have been around forever?

Everyone knows that there are difficult personalities out there. You have to look at what every candidate brings to the table: skills, experience, creativity, communication, etc. It's usually a mixed bag.

Some people are brilliantly creative but very difficult to get along with in an office environment, and others are extremely smooth and diplomatic but unproductive. I've run into both kinds, though most people tend to be somewhere in between.

For a start-up situation, it seems to me you want to hire more from networking than from cold-call applications. When a new hire is 25% of the work force, he or she is going to have a huge impact on the culture and productivity of the team and it's very helpful to have met and interacted with them already.

When a new hire is 1/1000 of the work force, they're going to have less of an impact unless they're C-level, so you can afford to cold-hire based on established procedures.

I don't see much value in statements like "A-holes usually are not very introspective". It seems this person has a very specific image of what an undesirable team member would be like, probably based on his own brief experience in the working world.

After a couple of decades of working experience, I find it hard to generalize what an "a-hole" would be. It's all over the spectrum, from good hard working team players to borderline or sociopathic personalities whom you feel like strangling.

I guess the bottom line is, leave your ego at the door while interviewing, try to see the value in each person, figure out what they bring to the table, and maybe get them in for a day or two to interact with the team and see if the chemistry is OK.

<comment><USER6> I agree with you. OP may "introspect" on the fact that like attracts like.

</comment></comment><comment><USER7> Based on this, I'm an a-hole. I did 90% of the IT work for this last client because I was 90% of the IT department. I literally begged upper management for help at one point. I kept pushing to give this part time contractor in Russia more work because he did great work, but his management stopped responding to emails because, as it turns out, they were tired of getting stiffed on payment.

Eventually I wised up and quit, but in an interview, how do you explain such a situation where you did most of the work for 4 years without looking like a braggart or an idiot? Things have changed so much in the past 5 years and I'm afraid I'm obsolete already because this client was clueless and ignored every suggestion on how to use the latest tech or do things the right way.

The best way to detect the a-holes is to try to gauge their integrity from the start. We did hire someone at the beginning to build the front end while I built the back, but after 6 months of constant yammering about marketing related issues and constant "I'm almost dones", the kid bailed and said he couldn't do any more because his full time job was too busy. He then handed me a pile of half finished ^$&^^&!!. Then I figured out he had been giving access to the codebase to some Russian he'd hired to do his work for him...

So if someone is sort of arrogant... you have to expect that of 20-something young men overly enamored of their intelligence. But if they at least care primarily about the project, and not themselves, then they have a work ethic and that's what you want for your team. A-holes, liars, fools - none of them have a work ethic.

<comment><USER8> Even if your previous employer was utter shit, there's almost no way to talk badly about them without sounding like an asshole. In that situation, your best bet is to spin it in a positive light. Leave in the fact that you did 90% of the work but refrain from talking about how bad management was. Talking bad about the previous management does not help you in any way. Even if you left the job because of it, you're better off saying you left "to learn new technologies or whatever, rather than saying it was bad management. Saying it was bad management leaves the possibility open that _you_ could have been the problem. So rather than take a risk on you, an employer may choose to go with someone who says they worked well with everyone at their previous company.

<comment><USER7> Yeah, I know. Even though there were 3 people in the company, including me, and I managed myself... It was a brute force lesson in office politics, it seems. At least I've graduated from the Clueless level now.

This code of omerta in the business world allows the unscrupulous to thrive. The person who introduced me to the CEO finally told me some stories about when they had been a co-worker with them, that if I'd been told from the outset, I'd never have gone to work for the CEO or at least would have had a lawyer on speed dial. But my friend had the same "don't speak bad about people" theory.. Interviews require following a different script. But the Internet has different rules... See my forthcoming blog.

Gossip does play an important role in communities; it is a back channel for info that social niceties or conventions prevent from being disseminated. But it is an unreliable channel too, hence the connotations about "gossip". Bottom line, I did not do the due diligence I should have, and ignored the warning signs I was picking up about how unethical the people I was working for were. So I see my responsibility clearly. I only offer up my story for others to use as observational learning.

<comment><USER8> Sorry for the late response. To clarify, I meant that you shouldn't talk bad about your employer at an interview. If you're starting a blog, you may want to consider writing it under a pseudonym--at least if you do plan to ever try to get employed by another person or company. Employers almost always Google prospective employees these days and online criticism of an employer would probably be ten times worse than speaking bad about that previous employer at an interview. I know people in this situation and it's not good.

And yes, I agree, finding out about previous employers is great. Check out Glassdoor.com. It's not perfect, but it's pretty good for what it is.

</comment></comment></comment></comment><comment><USER9> Yeah, this ain't so good.

First, "asshole" and "people who don't collaborate well" are not the same. "Assholes" are people who piss other people off. "People who don't collaborate well" can be any number of things. Mostly shy folks, in my experience.

Second, pissing people off isn't that bad of a trait -- as long as you are a friendly person and mean well. People will forgive a plethora of communication faults if you put their interests first and genuinely care about them. So what you're really wanting to avoid is "selfish assholes"

Finally, there's a tremendous danger in avoiding conflict in companies. Healthy conflict is a good thing, and over time we tend to want to hire people that mostly agree with us and are always on our side. This is a terrible thing to have, because it limits your creative potential. Give me a mixed team of radically different personality types and political leanings, all willing to push and be gruff with each other, yet all in good sport. We call this "passionate opinions, lightly held"

So no, the goal here isn't just to identify douchebags and keep them from the room. The goal is to maximize the mental diversity while maintaining civility and a family-like atmosphere. Much tougher.

<comment><USER10> I agree with you.

"Don't collaborate well" was poor writing on my part - I'm talking about a specific type of poor collaboration, including undermining and attacking co- workers. I clarified in the post. There are other kinds of poor collaboration skills that have nothing to do with assholeness.

Pissing people off and conflict are fine in the course of honest and healthy debate to get to the right answers. Good companies encourage that.

Assholes actively undermine healthy conflict by 1) cutting off debate so that their ideas win, and 2) resorting to personal attacks. This leads to an "unsafe" environment where people don't want to speak up.

Unfortunately the boss is often the asshole, which creates an environment where people just keep their mouths shut since speaking up is not worth the trouble.

</comment></comment><comment><USER11> > Ask about the skills they admire and the skills they wish they had more of. > A–holes usually are not very introspective

I hate when amateurs try to psychoanalyze other people, or put any sort of faith in their theories. Reading people is hard.

</comment><comment><USER12> _Most people who work in tech end up working with some of the same people over and over again, and they bring each other into their companies._

Oh GOD that's a huge red flag for me. Because that clique will always have priority over your needs and career track. Not all of those people are brought with because they were super-competent and worked in complete psychic harmony with their peers. Sometimes people just need a parachute out of whatever company they were struggling in.

<comment><USER10> Nepotisms and cliques are not good, and I'm not defending them - you should never recommend someone into a company unless you think they kick ass, and if you are a founder you should work very hard to keep the number of people who have worked together to a minority, otherwise the new folks will feel like outsiders.

But it certainly is the case that the kind of people you want to hire are the kind where anyone who has worked with that person would say, "I'd love to work with them again."

</comment></comment><comment><USER13> There are really just two parts of this that work reliably and they are sufficient on their own:

* Listen carefully for badmouthing of previous jobs and co-workers. With a–holes, you will hear a lot of answers that amount to "everyone was stupid but me," "no one wanted to hear the truth," etc.

* And, if you do happen to hire an a–hole, act immediately.

It can be that simple: trust your instincts when hiring, and ask people to leave if they turn out not to be a good fit. Keeping them on board is a waste of their time too.

<comment><USER14> "Trusting your instincts" is a double edge sword.

I don't consider myself to have an extensive experience with a broad range of people. So trusting my instincts would not have been a good measuring stick whether I am interviewing an a-hole or a team-player.

</comment></comment><comment><USER15> Okay, this is stupid. I currently work on a team where I do all the development. We have another developer that really shouldn't be a developer, by because of unions and such, we can't get rid of him. I try to work with him as much as possible, but in two years, he hasn't produced any code that could possibly go into production. But he has a great attitude, and can at the very least be the cover off I need for vacation.

So, maybe I am an asshole, but I find it hard to use the term "we developed this", or "we wrote this" when he's effectively written none of the code. So in order to conform to the criteria set out here, I would be lying, and I also wouldn't be a passionate developer who cares about my contribution. So sure, you don't get assholes. But I'd rather have an asshole than an liar.

</comment><comment><USER16> Would it be so vulgar and inappropriate to spell out "asshole" in the title? I find this "a-hole" masquerade just silly.

<comment><USER17> Some consider it profanity. It doesn't bother me reading a post with a few s' or f' words. I myself tend when the point I'm making calls for it to write a few.

However, some really go over the top and it becomes irritating to read either both ways whether it's spelled out or masqueraded. So I guess it's a personal preference.

</comment></comment><comment><USER11> > "everyone was stupid but me," "no one wanted to hear the truth," etc.

I feel bad now. Even though I would never talk like this I can't help but feel this way sometimes at my current job. I feel like I am genuinely asked to do retarded shit sometimes, and no one else seems to mind.

<comment><USER18> That doesn't mean you are an asshole. I could be the smartest (I don't think calling people stupid is a good way of putting it) person in the company/department and you could be in a position that requires you to do pointless stuff that your skill level is much higher than.

I would suggest that if you feel this way for more than a couple of months then perhaps you should look at finding another place to work. Being smart doesn't make you an asshole. Just don't bad mouth your previous colleagues.

If someone I interview is to say that they "grew beyond the technical capabilities of the role and the company was unable to support further growth of my skill set due to the direction the business was going" then I am cool with that. It happens. Hell it SHOULD happen. You should out grow your old position if you want to move up. It is all in the way you not only say it but how you BELIEVE it too. If you just say something like the sentence I wrote above but really believe that you are some "rock star" and everyone else is an idiot then I am probably gonna pick up on it even if you phrase it in a nicer way.

<comment><USER11> Wow, I like this a lot thanks. Something to add to my "file"

</comment></comment></comment><comment><USER19> I'd be more concerned working for an organization where "a-hole" is the norm. Either say asshole, or use a different term altogether. Similarly, n-word and f-bomb.

<comment><USER20> [http://www.youtube.com/watch?v=BnKLxDlFS5c](http://www.youtube.com/watch?v=BnKLxDlFS5c)

</comment></comment><comment><USER21> Real assholes, those who are truly dangerous for coworkers would pass interview and get accepted by the author at any time. Such people are smart enough to not badmouth their former employers or coworkers.

Closing note is most important: act immediately and give feedback. Employers usually don't do that, because it would hurt their image of successful interviewer.

</comment><comment><USER22> "a–hole"s aren't always bad - there are indeed roles where bold, opinionated leaders work better

Jobs was an a–hole.

<comment><USER17> Everyone's an asshole to someone at some point about some thing. It's simply a matter of perception and unmet expectations.

You expect something from someone for which ever your reason might be and what ever their relationship to you could be. That expectation is unmet and you'll most likely think of them as assholes.

</comment></comment><comment><USER23> it seems he has forgotten the first rule.

don't be a fucking asshole boss in the first place.

</comment><comment><USER24> Well, to start with, go look in a mirror and fire the first person you see.

What is an asshole any way? Difficult to get on with? Racist? Right wing nut job? Religious myth believer? Loner? What?

All I know is that some of the best skilled and most productive people I have worked with have between called some thing similar by others. Well, screw them. If they have time to be slagging off skilled and productive workers for not coming up to their social standards, they sure as hell aren't being of any use to me.

I think all you can do is test the skill set and take some decent amount of time to try to get to know the candidate. Then simply go with your guts. Plus, be prepared to fire the person if it turns out you are wrong. I trial period is always a good safety net, for both.

BTW, how do you avoid working for an asshole? Much harder.

</comment><comment><USER25> A-hole adds diversity to a team :-)

Often one is a-hole because he insist on basic principles, such as unit tests.

</comment><comment><USER10> Hey guys, author here. I just re-read this post (it was originally from a Quora thread a couple of years back) and realized that it is not my best. I didn't take the time to discuss my definition of "asshole" nor took the time to do the topic justice since it requires more than a few bullet points ("The No Asshole Rule" devoted an entire book to the topic)! I will make some mods to flesh it out.

I have also discovered that the downside of writing about assholes in the workplace is that criticisms of the piece usually end with the commenter calling you an asshole.

</comment><comment><USER26> I think I would prefer to work with "assholes"-only if they could get the job done, because a lot of these non-"assholes" are only good at bullshitting their way out of responsibility.

I would prefer to have a person say to my face that he thinks I'm an idiot than to have one being nice to me and stab me in the back.

How social a person is one thing, how good a person is is totally different.

Relevant video: [http://www.youtube.com/watch?v=elrnAl6ygeM](http://www.youtube.com/watch?v=elrnAl6ygeM)

</comment><comment><USER27> Simple. Take them out to dinner and see how they treat the servers

</comment><comment><USER28> I am one of those assholes.

</comment><comment><USER29> Redundant information. I already knew I was an asshole.

#winning

</comment><comment><USER30> Hiring primer:

1\. Hire based on ability, experience, and if the candidate has a good attitude and approach. 2\. Hire based on company and team fit - this does not mean six of the exact same profile (i.e 3.25 years J2SE developer from a tech background), but instead look to build a well-rounded team with a variety of backgrounds and approaches to tackling the project. But they should all be able to sing the same song, even if in different keys, it is no good where each sings a good but unique and competing song. 3\. Do not discriminate, especially in a so-called "positive" way. It is just bad policy. 4\. If you say your company will provide training, make sure you do. 5\. Avoid bell-curve based staff evaluation schemes. 6\. No point number six, the first five should be enough!

</comment><comment><USER31> I have never gotten any useful information from references ever. A lot of them are afraid to say anything substantial and just confirm "yes, so and so worked for us", at best you get a vague "they did their job well". I stopped checking references completely because it was entirely a waste of time.

<comment><USER24> I think employment references are weird anyway.

What an employer is doing is asking for something written by some one they have likely never met, and taking that as some how equally or more valid than the person sitting in front of them in interview. Prospective employers have no idea what context a reference is written in, they cant even judge tone of voice or body language. They cant ask questions or anything. Its completely blind faith. The candidate can be questioned, tested and generally judged.</comment></comment>


Ask HN: Alternatives to Loggly and Papertrial? - <AUTHOR> <comment><AUTHOR> I am the questioner of this post. More specifically, what client-side javascript log management would you recommend for React or Angular?

Alternatives to Loggr?

</comment><comment><USER2> Logentries.com, logz.io, logdna.com

<comment><AUTHOR> Thank you for mentioning these. Have you come across any blogs or articles that compare these service providers? I am interested to know how people make their decision who to go with.

</comment></comment><comment><USER3> What kind of alternatives? What do you expect from them?

<comment><AUTHOR> Log analysis. REST call to these log management services. Error alert. What else more should I consider when assessing a log management service provider? Do you have a list/approach to how you would assess log management service provider?</comment></comment>


The War Inside 7-Eleven - <AUTHOR> https://www.bloomberg.com/news/features/2018-11-09/7-eleven-is-at-war-with-its-own-franchisees-over-ice-raids <comment><USER2> Every ICE/DHS action mentioned in this article occurred during the Obama administration. Why did Bloomberg wait until almost 2 years after to publish this?</comment>


Austin chamber, tech guru team up to create startup center - <AUTHOR> http://www.statesman.com/business/technology/2383351.html <comment><USER2> I just got a tour of the space...and I think it's going to be a great thing for Austin startups. The startup scene here has been fragmented over the past few years, with little pockets across the city in smaller coworking places, creative spaces like 501 Studios, and smaller offices in downtown buildings like the Omni. I think this space will really bring people together and gel the Austin community in a way that hasn't happened before.

It occupies the entire 16th floor of the Omni, which is right in the heart of downtown. It's also just a few blocks from the Austin Convention Center where they host SXSW. Right now there are 60 dedicated desks and room for another 100 people for general coworking—and they have plans to expand to about 250 people total when they're fully up to speed.

I'm going to start there on Monday. If anyone has questions or is interested in seeing the space, feel free to get in touch.

</comment><comment><USER3> "The No. 1 challenge for tech startups in Austin and around the country is hiring critical engineering talent," Baer said. "We are going to bring the best talent here for all these events we will be having."

That seems like something of a leap of faith, especially if "these events" are the same ones mentioned earlier in the article, i.e., they're geared toward "entrepreneurs". Why would an engineer be interested in that sort of content unless he or she were trying to launch their own company? And if they're trying to launch their own business, of course, they're not likely to be looking for a job. Sounds like another echo chamber where business people congratulate each other on Austin's awesome tech community while avoiding doing anything, you know, technical.

<comment><USER2> What classes or groups would you want to see in this space?

I'm guessing many of the existing tech oriented groups (Austin on Rails, Austin.rb, et al) will start meeting there. Many of these groups already met at the OtherInbox offices on the 8th floor. OIB is moving up to this new space—so it's natural that those groups will move up as well.

There are also several (albeit more business-focused) groups like Refresh Austin and Lean Startup Circle that have held meetings at Buffalo Billiards. That space is not really conducive to meetings of any sort (it's loud, dirty, and has few outlets) so I'm guessing those groups will move two blocks to the new space as well.

<comment><USER3> I don't really have an interest in what kind of events happen in the space. It appears to be a venue for business people so, as an engineer, what goes on there doesn't really affect me. Neither of the groups I run is likely to be able to afford to rent the conference room. I do, however, hope Refresh doesn't end up there - in spite of its flaws, I like Buffalo Billiards for meetups.

</comment></comment></comment><comment><USER4> It sounds like something I would be interested in checking out. Regrettably though it'll be less often than I would rather, simply because it's downtown. I'm not sure I understand why, and why virtually all the tech meetups meet downtown either. Almost all the programmers live in the north because that's where our day jobs are...

</comment><comment><USER5> Sounds awesome! I'll have to drop by and take a look at it.

</comment><comment><USER6> Nice, Austin is a great city.

</comment><comment><USER7> How much is parking?

<comment><USER2> You are on your own for parking...but there are lots near the Omni available for rent starting around $50 / mo. I believe most of the people working there now rent spaces in the St David's lot a couple blocks away. I personally live downtown and so I'll walk or ride my bike there.</comment></comment>


LiteBSD is variant of 4.4BSD operating system for microcontrollers - <AUTHOR> https://github.com/sergev/LiteBSD/wiki <comment><USER2> There are many reasons why you don't want a general purpose OS for a microcontroller:

\- Embedded systems are _very_ price sensitive. if you're making it general purpose, you're wasting money.

\- Embedded systems generally have some form of real-time requirements. General Purpose OSes are not suitable here.

\- Time-Efficiency; don't waste cycles.

\- Space-efficiency; don't waste memory.

\- power-efficiency; be asleep as much as possible.

Simple schedulers such as FreeRTOS/RTX/ChibiOS/etc/etc/etc are much more suitable, but better just to implement a nice simple super-loop. Primitive but efficient.

</comment><comment><USER3> Not really for "microcontrollers" in general, more for top end chips.

I often wonder if there is a nice super portable OS for your more "average" microcontroller, something in the ballpark of 16bit, 32k program space, and 2k of RAM. Also an alternative to C for something in that ballpark would be fantastic.

<comment><USER4> FreeRTOS?

<comment><USER5> This doesn't provide any hardware abstraction, you rely on vendor libraries for portability.

</comment></comment></comment><comment><USER6> There's also retrobsd - [http://retrobsd.org/wiki/doku.php](http://retrobsd.org/wiki/doku.php)</comment>


WEF 2009: Mark Zuckerberg thinks difficult times require a tie - <AUTHOR> http://blogs.telegraph.co.uk/william_lewis/blog/2009/01/29/wef_2009_mark_zuckerberg_thinks_difficult_times_require_a_tie

<comment><USER2> Software written while wearing a tie has bugs.

That's my story and I am sticking to it.

We needn't focus on the small inconvenience that software written while not wearing a tie also has bugs. Obviously, even the threat of having to wear a tie causes software bugs. I shudder to think what the threat of having to wear a suit AND tie could do to the quality of software we produce.

<comment><USER3> [http://www.wisdomandwonder.com/wordpress/wp- content/uploads/...](http://www.wisdomandwonder.com/wordpress/wp- content/uploads/2008/05/doing-it-wrong.jpg)

[http://farm1.static.flickr.com/127/321750484_ae443d5483_o.jp...](http://farm1.static.flickr.com/127/321750484_ae443d5483_o.jpg)

</comment></comment><comment><USER4> I can't help but think that _the suit_ isn't far behind.

<http://www.paulgraham.com/submarine.html>

</comment><comment><USER5> I grew up in Houston, TX which has always been an ultra-conservative city, full suit and tie in the middle of a Texas summer.

I've never been one for clothing fads which is why I stick to button downs, sport coats, jeans, and nice leather shoes. During a recession it's more cost efficient: my leather shoes polish up a lot nicer than tennis shoes and last much longer. I have button-downs from 2001 that still look great. I also save a lot of time by receiving a lot better customer service when I'm eating out, shopping, or running errands. People respect a well dressed man, there's nothing superficial about it.

I'm not saying you can't wear a shirt when you're coding, but the moment you're representing your company and it's people — you should look (and therefore feel) very proud. Toss on a sport coat over the designer tee, it won't kill you to look nice. And not to mention, when you congregate a bunch of designer-tshirt-wearing coders in a room, are you really expressing individuality anymore? :)

<comment><USER6> The beard and long hair sort of screw the deal from the get-go, I think.

You can pry them from my cold, dead... uh... head.

</comment></comment><comment><USER7> Hahah, I bet those ties are around 6-10 years old!

I should know, I went to his highschool (Exeter) which requires ties as its dress code. Its not like you wear ties at Harvard, is it?

</comment><comment><USER8> PR spam at it's finest

</comment><comment><USER9> Ties that don't suck, on Etsy <http://www.etsy.com/shop.php?user_id=58778>

<comment><USER10> Those are cool - how long before this one (<http://www.etsy.com/view_listing.php?listing_id=20275154> ) ends up on Schneier's Friday blog?

</comment></comment><comment><USER11> Zuckerberg is the only person out right now rocking the tie + Northface fleece look. Not sure it's going to catch on...

</comment><comment><USER12> Maybe he's wearing the old school tie to get more VC cash.

</comment><comment><USER13> Just when I was getting comfortable... Never thought I'd say it, but I think I agree with Mark.</comment>


All your Bayes are belong to us: fun Bayes's Theorem problems. - <AUTHOR> http://allendowney.blogspot.com/2011/10/all-your-bayes-are-belong-to-us.html

<comment><USER2> This will help flesh out some of the concepts from the last units in the Stanford AI Class. I really learned I had a deficiency in Statistics after those videos.

</comment><comment><USER3> The only thing missing from your post is this! [http://upload.wikimedia.org/wikipedia/commons/thumb/1/18/Bay...](http://upload.wikimedia.org/wikipedia/commons/thumb/1/18/Bayes%27_Theorem_MMB_01.jpg/800px- Bayes%27_Theorem_MMB_01.jpg)

I must admit, it's been a couple of years since I've glanced at Bayes' theorem but this was an interesting refresher.

<comment><AUTHOR> Fixed. Thanks!

</comment></comment><comment><USER4> I totally messed up on the Elvis one, I got .16 since I forgot that more than half of all twins are the same sex!

</comment><comment><USER5> Tell me about it, Khan Academy helped a bit there but it's nice seeing this kind of stuff. Sometimes seeing it written out in text makes things click.

Thanks Allen Downey for the post.

Side note: I can't wait to see how the homework went. Machine Learning is pretty interesting so far.</comment>


Startup University - an online university for entrepreneurs - <AUTHOR> http://www.startup-u.com

<comment><USER2> just curious: who's behind this?</comment>


Webhooks: The Devil in the Details - <AUTHOR> https://techblog.commercetools.com/webhooks-the-devil-in-the-details-ca7f7982c24f <comment> vertex-four So part of the issue here is that many message queue systems have rather terrible authentication, certain cloud-hosted systems aside - it often seems to be that authentication allows you to post any message you like and listen on any queue you like. A message queue designed for external entities to access would require far more rigorous security mechanisms.

I'd also suggest that it would want some form of federation - so instead of external entities pushing directly into your message queue, they'd push to theirs, and your message queue would pull from theirs and push to your consumers. That way, you don't lose messages from your provider when your connection to them fails.

<comment><USER2> RabbitMQ has more granular permissions:

      https://www.rabbitmq.com/access-control.html

I am starting to use it at my work but I'm pretty sure I wouldn't open it up to the public, ACLs or not.

</comment></comment><comment><USER3> It is not as easy to get some thing running with a message queue as it is with webhooks. The API documentation would be complicated and large, also special libraries would be needed.

</comment><comment><USER4> Or a more simple solution... Have a webhook receiver send the messages to Kafka. Then you don't have to change to a more complex delivery protocol.

<comment><USER5> Isn't Kafka a "Message Queue" exactly as recommended in the article?</comment></comment>


Some Adam shipments to February 14th due to touchscreens damaged - <AUTHOR> http://www.engadget.com/2011/01/31/notion-ink-delays-some-adam-shipments-to-february-14th-due-to-to/ <comment><USER2> Interesting product, but I question the ethics of the company: <http://youthoughtwewouldntnotice.com/blog3/?p=7497>

There have been complaints about the Adam's quality before ( [http://www.notionaddicts.com/forums/showthread.php/1280-Adam...](http://www.notionaddicts.com/forums/showthread.php/1280-Adam- has-arrived!/page7,but) ), and it seems like Notion Ink is cutting corners everywhere they can.

Edit to include: [http://www.engadget.com/2011/01/24/notion-ink-adams- arrive-t...](http://www.engadget.com/2011/01/24/notion-ink-adams-arrive-to- eager-unboxers-first-ota-brings-new/) \- over-the-air update prevents Adam from booting.</comment>


Days of the year when Americans are most drunk, visualized - <AUTHOR> http://www.washingtonpost.com/blogs/wonkblog/wp/2014/12/20/the-days-of-the-year-when-americans-are-most-drunk-visualized/

<comment><USER2> People drinking more in the winter should surprise no one. Bad weather displaces other pastimes, and people simultaneously feel more depressed because of the lack of sunlight.

<comment><USER3> And a few drinks will keep you warm, or give you the illusion thereof.

</comment></comment><comment><USER4> The main chart in this article is horribly designed.

Quick: try to find July 4th on the chart. The extra whitespace between each month invites you to scan down the left for July and then go over to the fourth cell, which is incorrect.

The chart starts on Sunday, Nov 3, and since each month is given either 4 or 5 full weeks on the chart, the only easy way to find a particular date on the chart is to start counting day-by-day from Nov 3.

<comment><USER5> It's week-based. Which make sense, since saturday and sunday have such a strong correlation with drinking. Seems fine to me.

<comment><USER4> Most wall calendars are also week based and they make it much easier to find a particular date (even if they didn't number every cell).

They could have left blank cells at the beginning/end of each month or add an indicator between cells to signify the month boundary.

</comment></comment></comment><comment><USER6> I found the color palette used in the visualization to be unnecessarily confusing. Dark to light blue, then light to dark earth tones, with the key roughly even with the bottom of the column.</comment>


Show HN: A/Bingo for PHP - <AUTHOR> http://github.com/waverz/cog/blob/master/cog-guestbook/engine/cog_splittest.php

<comment><USER2> Thanks -- PHP developers need better alternatives for A/B testing than Google Website Optimizer. Your code is about the minimum viable A/B testing library for a developer: you can use it to start getting your feet wet with A/B testing done the right way.

I think if you start using it in production you will quickly understand that some of the implementation choices you've made are going to cause you pain, but that is less important than doing A/B testing. You can always rewrite the internals later. (I've done it a few times.)

<comment><AUTHOR> Thanks.

Would you mind pointing out implementation choices, that will come back biting us down the road? :)

<comment><USER2> Your mileage may vary, and I don't guarantee I'm reading your code right, but:

1) You will find it useful to be able to coerce A/B test values, particularly in testing and sometimes (for CS purposes) on the live site.

2) I do not see a convenient method of having Ms. Smith get the same website at home and at her workplace. That may or may not be a problem for you.

3) You may find "control" and "experiment" to be limiting once you start doing this frequently -- they aren't nearly as self-documenting six months down the line when you're staring at your web page wondering "What possessed me to make this button teal?!"

4) I'm pretty sure you have a race condition for creation of new tests. (This has bitten A/Bingo a few times.)

<comment><USER3> I do not see a convenient method of having Ms. Smith get the same website at home and at her workplace. That may or may not be a problem for you.

How did get this to work with A/Bingo? Did you "just" write the A/B tests such that they are tied together with the user database?

<comment><USER2> A/Bingo has a notion of "identity" (a string which is unique among users of an application). If you don't have one, you get one assigned randomly. Your identity gets associated with your account as early as possible, and if you sign in on another computer, I overwrite that computer's identity with yours. (Merging would be cleaner, but this works in practice for my site.)

The way A/Bingo picks alternatives guarantees that someone with a particular identity will always see the same alternative for a particular test. See the source code for details.

Since identity management is abstracted by the A/B testing framework, you can make it as simple or complex as you want, and it hooks into user management with on the order of ~5 lines of code.

<comment><USER3> Nice, thanks.

</comment></comment></comment></comment></comment></comment><comment><AUTHOR> Cog is a little webdev framework of mine, a work-in-progress steal from spending couple of years in different companies.

Since A/B testing is considered pretty fundamental to most of my clients, I thought I'd share with the dear community of HN one possible implementation of it. You can see A/B testing in action on the sample page:

[http://github.com/waverz/cog/blob/master/cog- guestbook/pages...](http://github.com/waverz/cog/blob/master/cog- guestbook/pages/guestbook.html)

When used together with scriptor, an A/Btest is about 1 line in the design file (db rows, and counters are automagically set up on first page visiting). Stand-alone you might want to integrate it with a templating engine of your own :)

Code is PD, and review is more, than welcome.

<comment><USER4> > review is more, than welcome.

You opened the door, so here is my feedback:

\- You never have to explicitly define any of the super globals as global... you can delete any line that says "global $_SESSION;", for example

\- The database interactions look like they are heavily dependent on global state. It is also a tightly coupled dependency

\- Use __construct for constructors instead of the class name: <http://www.php.net/manual/en/language.oop5.decon.php>

\- Foreach is better than a for loop for iterating over arrays

\- Single character variable names only make code more confusing. You write code once, you read it a dozen times.

I challenge you to rewrite this with only using classes (no global functions) and to write unit tests for your code. Remember, if you have to jump through hoops to test your code, you need to rethink what you're doing.

</comment></comment><comment><USER5> As an alternative, I wrote a port of Vanity for PHP that we use for A/B testing. It uses redis to store data

<http://github.com/aliasaria/PHP-redis-A-B-Testing>

<comment><USER6> This is an honest question: is REDIS the best option for storing A/B tests or is just a matter of taste? MongoDB or even MySql could work?

<comment><USER2> I try to keep most of the A/Bingo work in a cache store (Redis, by choice) because sites with traffic two orders of magnitude or so higher than mine would blow up if they used MySQL for it. At something like Facebook game scales I think it would be smart to take A/Bingo and rip the database out entirely.

Writes hurt. A/B testing requires, minimally, O(tests * participants) writes. (And more reads, but the disk will be on fire from writes first.)

However, despite the cost, A/B testing benefits minimally from ACID. If you lose 2% of writes, oh well, it comes out in the wash anyhow. Thus the huge hardware/maintenance budget you'd need for web scale A/B testing on an ACID architecture makes little sense.</comment></comment></comment>


No: Body: Wants: To: Write: – YAML - <AUTHOR> https://noyaml.com <comment><USER2>
        No:
    	Body:
    		Wants:
    			To:
    				Write:
    					- YAML

vs.

        <No>
            <Body>
                <Wants>
                    <To>
                         <Write>
                             <item>YAML</item>
                         </Write>
                    </To>
                </Wants>
            </Body>
        </No>

vs.

        {
           "no" : {
              "body" : {
                  "wants" : {
                     "to" : {
                        "write" : [ "YAML" ]
                      }
                   }
               }
           }
        }

Which would you rather write?

<comment><USER3> It's a bit of a strawman, since none of your examples actually resemble valid config files and you're forcing them all to have the same indentation, when significant whitespace only matters in YAML.

<comment><USER4> That, not too mention how often do you actually write data files by hand? Maybe a small sample file for testing, but beyond that all data is going to be read in from files or come from an API.

JSON is not bad to write by hand. Simple XML isn't too bad either, but I still prefer JSON.

<comment><USER5> JSON doesn't have comments. If I want to know why a config has a particular value, I can write a comment to explain it in YAML or xml, just like I would do in code. Lack of comments is the primary reason I would not use json for anything that needs to be written or read by humans.

</comment></comment></comment></comment><comment><USER6> I want to write YAML because I don't want my configuration to look significantly different in go, java, ruby, or any other language my organization may use in the future.

Xml is fine. Json is fine. Yaml is fine. Yes, they have warts. That's fine too.

<comment><USER7> For most things lately I've been using TOML because it gets me that, and it's a relatively simple (to a human) standard. Combined with there being parsers and emitters in just about every language now, it's a great option. You get sections in the config that map easily to native data structures in the languages, good string handling, can create a few more advanced things like arrays (really useful for adding multiple ports or listening addresses, etc.).

I do still use YAML on the rare occasion where i just don't like how the TOML ends up looking[1]. My plan with that example is to eventually make a more simplist DSL that can handle the usecase, but my first attempts didn't produce anything I liked.

[1] [https://github.com/perlbot/App- EvalServerAdvanced/blob/maste...](https://github.com/perlbot/App- EvalServerAdvanced/blob/master/skel-sandbox/etc/seccomp.yaml)

</comment></comment><comment><USER8> I like YAML. It's ok if you don't. It's ok that I do. Want to use TOML? Awesome. Want to use JSON? Go for it. I prefer YAML, it works for me and I'll keep using it until something better comes along that I like.

Preference is preference. Stop acting like it's not. This page might have been "Nobody wants to use VI" or "Nobody wants to use Emacs" or "Nobody wants to use [insert thing I hate here]"

<comment><AUTHOR> With Emacs vs VI we have a choice.

Kubernetes...devops tooling...CloudFormation?

You better <3 YAML.

<comment><USER8> So lobby those projects to add more support. Heck, make a PR to add the serialization language of your choice. Start coding. If they don't want patches for "[insert data serialization formation here]", maintain your own fork.

FWIW CloudFormation _added_ YAML, which was a vast improvement to usability IMO over where they started. Want CloudFormation to support something else? Lobby through your AWS account rep for what you want supported.

<comment><AUTHOR> I agree with what you are saying but the boat has sailed. Just like decisions with the SMTP protocol in the early years where folks can fake the FROM field thus causing the issues we experience every day the same is true with devops and yaml. Forever:Drowning:In-YAML.

</comment></comment></comment></comment><comment><USER9> Requires Javascript to even start showing the text. That "live" editor trick is neat, but pretty unnecessary to transmit the message, if you ask me. Also there are some good-old links that are not even clickable. Weird choice of tool for the job.

<comment><AUTHOR> Just as YAML provides no validation document, intellisense or type safety this website is designed to be a hindrance. It's part of the message to make the experience more real. I do accept PRs tho so mash the octocat.

<comment><USER10> Challenge.

</comment></comment></comment><comment><USER11> > We replaced 1,000 lines of YAML with 10 structs ...

I looked, but target URL didn't spell it out, and I lack sufficient domain knowledge to dive into the repo to find it -- but I'm curious as to how big, and indeed how complex, those 10 structs are.

It seems disingenuous to swap units mid-sentence when comparing size or complexity.

My gut feel is the set of people who could understand thoughtfully designed YAML should be larger than the set of people who could understand thoughtfully designed structs (+ wrappers?).

<comment><AUTHOR> This quote was taken from a kubernetes retrospective at [https://about.sourcegraph.com/go/valuable-lessons-in-over- en...](https://about.sourcegraph.com/go/valuable-lessons-in-over-engineering- the-core-of-kubernetes-kops/#what-did-they-remove-exactly/)

Scroll to the bottom:

In a nutshell, they got rid of a custom programming language they had inadvertently created via YAML and text/template. Their YAML models were effectively written in a Turing-complete language composed of YAML and text/template directives. They had been heavily abusing the FuncMap type in text/template.

<comment><USER11> Thanks, and yes, I did read through that page. Lots of coloured text that tantalisingly looked like links but weren't, and a lot of broken images/slides.

I got to [https://github.com/kubernetes/kops](https://github.com/kubernetes/kops) ... and that's where I got out of my depth.

It _sounds_ like it wasn't a problem with YAML per se, but their misappropriation of text/template and wrangling YAML to be something other than a configuration tool. It feels similar to if I were to complain about the shortcomings & complexity of the jinja2 constructs I make within my YAML.

<comment><AUTHOR> Ah yes but please revisit this problem space from the perspective of a consumer of YAML. Ops folks are drowning in it. The industry can and should do better.

</comment></comment></comment></comment><comment><USER12> YAML is not 100 percent awesome, but it's machine consumable, not too hard to edit by hand, and preferable (in my opinion) to a plethora of application specific DSLs with different requirements for curly braces, semicolons and assignment operators.

</comment><comment><USER13> I always struggle to write YAML. I still don't know how the '-' things work and what level of indentation to use for its children.

<comment><USER14> My go-to tool to see what yaml will look like. [http://nodeca.github.io/js- yaml/](http://nodeca.github.io/js-yaml/)

</comment></comment><comment><USER15> One of the lovely bits I ran into recently is whether a given YAML parser interprets a value as a string or not (for example) is entirely up to the parser, and there's nothing you can really do about it in the syntax. Quoting is a useful hint, but the parser doesn't have to take action as a result. !!str is another useful hint, but str is kind of up to the parser. My favorite related bug that shows the kind of shenanigans that simply using YAML results in: [https://github.com/kubernetes/helm/issues/1707](https://github.com/kubernetes/helm/issues/1707)

</comment><comment><USER16> Did I read correctly that YAML is a superset of JSON?

> This means that, in theory at least, a YAML parser can understand JSON

Does anyone have experience with this? It seems counter-intuitive at first, but Google agrees, and I don't know enough about parsers to say it's wrong. Can you really feed pretty much any JSON file into a YAML parser and get back a valid and correct, properly formed data structure?

<comment><USER17> The explicit goal of yaml 1.2 was to fix up any incompatibilities with json.

[http://yaml.org/spec/1.2/spec.html](http://yaml.org/spec/1.2/spec.html)

</comment></comment><comment> Avi-D-coder This site is unusable on mobile. I can't even follow the links.

<comment><USER18> The links don't work on desktop, either. It isn't a mobile thing.

<comment><AUTHOR> The links are:

[https://tinyurl.com/lessons-in-over-engineering](https://tinyurl.com/lessons- in-over-engineering) and [https://twitter.com/ellism/status/1008728148131733504](https://twitter.com/ellism/status/1008728148131733504)

I accept accessibility PRs. Mash the octocat.

</comment></comment></comment><comment><USER19> Earlier Related Post: [https://news.ycombinator.com/item?id=17358103](https://news.ycombinator.com/item?id=17358103)

</comment><comment><USER20> YAML's like democracy: it's the worst option aside from all the others.

That said, I'm partial to s-expressions and TOML nowadays.

</comment><comment><USER21> I love YAML and I don't care what anyone else thinks. For simple config files, I use INI (could use TOML, I suppose). For anything beyond that, I use YAML. It's easy to read, parse, write, and maintain. I just use the subset that's relatively straightforward (no & ! --- sigil vomit).

</comment><comment><USER22> Here's someone who _really_ has been hurt by YAML. I've never used it but it's good to know to steer clear in case I encounter it as an option.

</comment><comment><USER23> There is literally no way to click those links on an Android phone. They're not clickable and I can't even highlight them to copy and paste.

</comment><comment><USER24> I've never liked YAML. It's one of the things that turned me off from Swagger. It's incredibly ugly and overly complex.

</comment><comment><USER25> use it almost every day. it's an ugly little notation with super-limited utility, but when JS gets its act together, we can finally abandon it forever.

</comment><comment><USER26> This website is a little too dope for me.

</comment><comment><USER27> Or: Read: It:

</comment><comment><USER28> What a stupid argument that is not worth the time.

</comment><comment><USER29> What is this, bag-on-YAML day at HN?

I am really beginning to hate programmer-centric tooling. It has turned all of us into these miserable, cretinous engineering snobs. It seems impossible for anyone to contemplate why people would choose to work differently than them. Zero empathy. Fucking pathetic.

Make software hard again, I say. Treat the compiler like you would treat your dominatrix. Life would be so much better that way!

<comment><USER30> At least the other link was a clear, well-written, well-reasoned article. I have no idea what this one is.

<comment><USER31> I'm with you on this one. I enjoyed reading the arp242 article, but this one's like a bad meme - an incomprehensible mish-mash of links and emojis.

<comment><USER32> Not to mention fatal JS errors on mobile.</comment></comment></comment></comment>


Former Mozilla CEO raises $35M in under 30 seconds for his browser startup Brave - <AUTHOR> https://techcrunch.com/2017/06/01/brave-ico-35-million-30-seconds-brendan-eich/ <comment><USER2> I think it is not because of he is a Former Mozilla CEO, but he is the creator of JavaScript.</comment>


500 Yard No-Look Rifle Shot With Android Using TrackingPoint Shotview - <AUTHOR> https://www.youtube.com/watch?v=OKldy2YNAHk

<comment><USER2> I'm not usually a big fan of this sort of stuff (firearms marketing), but this is hella cool tech

</comment><comment><USER3> I don't see me ever wanting to buy Google Glass, but this is really cool.</comment>


Putting a Price on Professors - <AUTHOR> http://online.wsj.com/article/SB10001424052748703735804575536322093520994.html?mod=WSJ_LifeStyle_Lifestyle_6

<comment><USER2> So, the English department ended up in the black because it taught so many students? Presumably, all undergrads are required to take a couple semesters of English. How fair is it that the University forces the purchase of the English department's product but doesn't force the consumption of other subjects like aerospace engineering (presuming, of course, that no aerospace engineering requirement exists for most undergraduate degrees)?</comment>


Best Practices for Time Travelers (2003) - <AUTHOR> http://idlewords.com/2003/09/best_practices_for_time_travelers.htm <comment><USER2> A few links are broken in that article. Here's an archive which contains the pictures referenced: [http://web.archive.org/web/20070202095050/http://www.anomali...](http://web.archive.org/web/20070202095050/http://www.anomalies.net/time_travel/john.html)

<comment><USER3> I assume the war destroyed all the decent smartphones then, along with the vaping devices. Those photos look worse than ones taken on my Moto G.

<comment><USER4> The civil war in Titor's time line started in 2004, well before the first iPhone. I'd imagine the war altered his timeline enough that modern smart phones with nice cameras were not invented.

<comment><USER5> Ha ha, hilarious. But the Nikon DSC 995 existed in 2001 and took vastly better digital photographs than that. Not only did the technology exist but I was using one in India around that time.

I suppose the one thing hoaxes can't really compensate for is the fact that technology moves so fast.

</comment></comment></comment></comment><comment><USER6> If you really want to be believed, just show up to Stephen Hawking's time traveler party he held in 2009[0].

[0]: [http://www.telegraph.co.uk/news/picturegalleries/howabouttha...](http://www.telegraph.co.uk/news/picturegalleries/howaboutthat/10488058/Professor- Hawking-fan-tries-to-prove-time-travel-by-creating-invitations-for-party- thats-already-happened.html)

</comment><comment><USER7> More about John Titor: [https://en.m.wikipedia.org/wiki/John_Titor](https://en.m.wikipedia.org/wiki/John_Titor)

</comment><comment><USER8> OK, I must point to

[http://emilkirkegaard.dk/en/wp- content/uploads/Robert-A.-Hei...](http://emilkirkegaard.dk/en/wp- content/uploads/Robert-A.-Heinlein-All-You-Zombies.pdf)

<comment><USER9> Predestination, starring Ethan Hawke, is a great adaptation of Heinlein's story too.

<comment><USER10> It was a great movie. Slow for about the first half doing a lot of character development, then moving quick into all kinds of territory, and then mindbending finish. I didn't know it was adapted from Heinlein. Darnit. Scratch it off my list of "original" movies to put it on "risky but good."

Also, worth mentioning that the actor playing "John" had one of best presentations I've ever seen. Smart that they picked at "tomboy" for it as that fit most of the movie really well. Also, showed John's more straightforward acting took more talent than one would figure at first.

EDIT: "All You Zombies." Extra obvious now. Wish I read it sooner. :)

</comment></comment></comment><comment><USER11> Hahaha this is great! What I love about the John Titor story is how you kind of want to believe in it against your better judgement. The desire to be in on something larger than life, I suppose.

</comment><comment><USER12> There is no such thing as time, or time travel. There are only positions of particles. To go back in time by 1 minute, all particles in the universe have to be moved/changed back to their previous position. This is not time travel, but universe manipulation except for one subject. If there were parallel universes with every possible outcome and you traveled to one, this would also not be time travel, but a moving to a place that looks like another place where particles were at a certain position. Time is just a way to label snapshots of particle positions in the universe.

<comment><USER13> Your position is inconsistent: the arrangement of particles changing is time, so your explanation of there not being time... asserts that time happens!

Putting the universe back as it was except for you _is_ time travel. You've traveled your state to a different time (previous state) of the universe.

Your semantic game sounds very clever, but is actually just inconsistent and borderline ignorant of what people mean by those terms.

<comment><USER14> I think what he means is that time exists in the way that distance or speed exists. It's not a physical force like gravity or magnetism that acts upon the universe, it's just a method for us to understand and quantify what happens around us.

Traveling back in time subsequently doesn't make sense because the "past" is simply what we call previous configurations of matter.

You can't go back to those configurations (read: "go back in time") because they don't exist anymore.

Now, I'm not a physicist so I have no idea if he's correct, but semantically it makes sense and it's something I've wondered about for a while.

<comment><USER13> > Traveling back in time subsequently doesn't make sense because the "past" is > simply what we call previous configurations of matter.

So? If my future goes from the world as it is now to the world as it was in 2000, in what sense am I _not_ in 2000?

I mean, you guys seem to be under the impression that there's a single universal clock I cant reset... There's not. In whatever sense it _ever_ was 2000, rewinding all the clocks would make it 2000 _again_. There's no clock besides those local ones, so if you reset them all, you're in the past (in whatever sense there was ever a past).

I just find it particularly silly to have said there's no time when you keep commenting on time happening.

(Also, does traveling a foot to the left not make sense because there's no distance, just past states Ive been in? Cause _you_ said time was like distance, and you're right: both exist or neither exist in exactly the same sense.)

<comment><USER14> Unlike distance, time is unidirectional. Yes, if you could roll back all matter, energy and every other force in the universe you could "go back in time" but the point is that time is a concept and not a force of nature.

It seems like you're being obtuse about the distinction.

<comment><USER13> Your position is just semantic games: traveling to a past state of the universe and living there is time travel -- you translated your state in to a past configuration of the universe. You're just sitting there whining how what both scientists and lay people would accept as time travel (living in the past) isnt Real Time Travel, because it's not some fictionalized Platonic ideal you've constructed and insist is the One True Meaning.

Amature science people are the worst: a little knowledge keeps you from seeing the picture.

<comment><USER14> Your patronizing tone aside I see what you mean. Yes, that would be "time travel". Again, it just seems like you're being antagonistic here and now putting words in my mouth in a vain attempt to prove your own superiority.

The only claim I was making was to clarify what OP meant about time not being a phenomena like gravity and to passively ask if there was any evidence of time as a physical (rather than purely conceptual) force.

Sorry if my amateur curiosity offended your professional (?) understanding of such things.

<comment><USER13> Im mostly replying to say that you're correct I was needlessly antagonistic, and that Im sorry for that.

To try and answer your point a bit more directly: time isn't a force, just like distance isn't a force. A force is something that induces action. If you experience a force, you're induced to act. (Some debate about if gravity is a genuine force, but that's getting messy.)

Time is what a clock does, and distance is what a ruler does. On the one hand, both time and distance are mathematical fiction to parameterize aspects of the universal state. On the other hand, Im 2m tall and my clock is making a periodic tick noise. So, time and distance really are aspects of phenomena, rather than phenomena in their own right, and as such are fiction. However, the aspects of phenomena they refer to have so far turned out to be pretty useful and appear in most phenomena we've encountered, and we think this is because both emerge from aspects of the fundamental phenomenon interacting with itself to create the other phenomena. (This is why we're trying to unify QM and GR, and why the approach is based on entanglement and information cascades.)

My point was that there's no fundamental difference between time and distance, they're either both there or both not there in exactly the same sense, we can travel through both in the same sense (if not same freedom), but only very rarely do people get insistent that distance doesnt exist, and usually only when making a highly technical point. Never have I had someone not understand what I mean by moving a foot to the left, even if they ultimately don't believe that distance exists. This comment was like that: insisting we talk in the highly technical language of distance not existing, but refusing to make the standard and well understood lift of "move a foot to the left" to that language. There's a very straightforward notion of travel, even if we're talking about around a parameter space. It's that partial use of technical machinery that frustrated me -- if you're going to have a technical discussion, don't play obtuse and refuse to make reasonable translations if other people's statements. My comment about people who know a little was mostly just venting frustration that people who are new to the highly technical aspects often can't (and don't even realize they should) make those lifts, then end up stridently talking about how the unlifted claim makes no senae in their freshly learned framework. To be fair, I was worse about that than most, and should learn to be extra patient.

My snarky comment was snarky, but had a point: time is one of the open questions in modern physics, and unless you really want to get in to the heavy stuff, less is more. About the best view to have in your head is "there's no time but what your (and everyone else's) pocket watch says". Your watch needn't agree with mine, though. (And indeed, your head is a slightly different age than your feet, from all the standing, sitting, etc in a gravity well.)

To summarize, Id say that time and distance are meta-phenomena: they're consistently behaved, widespread features of phenomena we discover, but we have good reason to expect that it's an emergent feature of a deeper phenomenon.

Again, sorry for my earlier replies, and I hope I havent put you off asking questions!

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER15> Should add (2003) to the title

<comment><USER16> Were you disappointed that this wasn't bleeding edge advice for time travelers?

<comment> david-given "What do we want?"

"Time travel!"

"When do we want it?"

"That's irrelevant!"

</comment></comment></comment><comment><USER17> I thought John Titor was an innovative bit of science fiction writing. Did we ever work out who was behind him?

<comment><USER18> There was some speculation

[http://www.telegraph.co.uk/news/science/11945420/Who-was- Joh...](http://www.telegraph.co.uk/news/science/11945420/Who-was-John-Titor- the-time-traveller-who-came-from-2036-to-warn-us-of-a-nuclear-war.html)

</comment></comment><comment><USER19> [http://www.bibliotecapleyades.net/ciencia/time_travel/johnti...](http://www.bibliotecapleyades.net/ciencia/time_travel/johntitor03.htm)

Interesting fiction. I'm not physicist, but anything pumping out enough gravity to bend a laser beam 45* over a couple feet (see pic in link) should also collapse that car into a sphere. I also laugh at seeing that while the laser seems bent, all the other light passing through the same area seems unperturbed.

</comment><comment><USER20> William Gibson's book "The Peripheral" is a fantastic take on this (and many other things).

</comment><comment><USER21> El Psy Kongroo.

<comment><USER22> that anime is the only reason i know about John Titor

<comment><USER23> For anyone else wondering, this is a reference to a password used in an anime called "Steins:Gate". No idea how it relates to John Titor.

<comment><USER24> Steins;Gate[1] contains references to John Titor[2]. I actually thought they had made him up until I looked on Wikipedia and discovered he was a real ("real") conspiracy theory.

An English version of the game is now up on Steam. Highly recommended. [http://store.steampowered.com/app/412830/](http://store.steampowered.com/app/412830/)

[1]: Edit: the game. Not sure about the anime.

[2]: Edit: In the game at least this is more in depth than just a password. Saying more would require spoilers.

<comment><USER23> Thoroughly offtopic, would you recommend Steins Gate? I haven't watched any anime for a while but enjoyed Ergo Proxy and Eden of the East.

<comment><USER25> The visual novel is really fantastic, though fairly slow-moving if you're not used to the medium. (Visual novels in general tend to be very detailed and very slow-paced. Some, like Higurashi, use this to great effect, but it can also annoy people not used to them.)

If you're not sure about reading it, the anime is also really good. It's obviously much less detailed than the visual novel (compressing ~40 hours of visual novel into TV format is hard) and omits some sizable plot points, but it's still great. The first half is fairly slow set up before it hits like a truck.

<comment><USER24> What would you recommend to try next for someone who liked Steins;Gate (the visual novel)?

<comment><USER25> For visual novels? Probably Root Double, Ever17, and Umineko. All have really great character development like Steins;Gate and are pretty thoughtful. Root Double has well-done sci-fi elements as well.

<comment><USER26> I haven't read the visual novel for either one but i've enjoyed the anime immensely. So I would recommend you give Haruhi Suzumiya [0] a shot.

[0] [https://en.wikipedia.org/wiki/Haruhi_Suzumiya](https://en.wikipedia.org/wiki/Haruhi_Suzumiya)

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER27> Does anybody know if the forum archives with John Titor's posts are still floating around somewhere? I remember reading some of his stuff a few years after he disappeared and it made for quite an entertaining read. This guy had his story figures out to the very bone. Everything down to the sci-fi tech. He had every nook and cranny covered.

</comment><comment><USER28> I stopped reading when he said that the clocks would tip over at 2^32 seconds after 1970 (136 years), but it is really 2^31 since it uses a signed 32-bit int (68 years).

<comment><USER29> Fixed. You can finish reading.

<comment><USER30> Only 4.155×10⁸ seconds late :)

</comment></comment></comment><comment><USER31> the earth spins around the sun. the sun spins around the milky way. so if one where to time travel wouldn't they just pop into a space where we are now but where the earth hasn't reached yet?

<comment><USER32> Relativity tells us that there is no preferred reference frame. Earth is just as "special" as the center of the galaxy.

</comment></comment><comment><USER33> This would be a really good title for a book on HPC best practices...</comment>


Ask HN : Open source hardware rising up What do you think? - <AUTHOR>

Just written this article http://harkopen.com/open-source-hardware, there are a lot of very interesting projects lately in this direction, you can see some in here http://harkopen.com/projects<p>What do you think? Can be open source hardware viable same as the big brother software? <comment><USER2> IMHO, prototying a product with OpenSource hardware isn't the scene right now.

Opensource hardware currently attracts hobbyists on mass.

I haven't seen any real market-ready product done with something like Beagleboard or Arduino.

<comment><AUTHOR> What about <http://www.buglabs.net> or <http://www.adafruit.com> they are really turning open source hardware to profit and the community keeps growing ..

</comment></comment><comment><USER3> Open source hardware can't become mainstream like OSS. The hardware isn't (remotely) competitive with proprietary hardware and it's too hard to scratch your own itch.

</comment><comment><AUTHOR> maybe it's time .. same was saying for software a few years before but that didn't stop it ..</comment>