Why Tabs are on Top in Firefox 4 - <AUTHOR> http://blog.mozilla.com/faaborg/2010/06/24/why-tabs-are-on-top-in-firefox-4/ <comment><USER2> Good on them for coming out and explaining their reasoning.

Personally I use the totally fabulous Tree Style Tab extension and have the tabs on the left. Given the prevalence of widescreen displays, it makes a lot more sense to have them on the side and use up the wider screen real estate, even if you are not using the Tree Style Tab functionality (which is essentially a collapsible hierarchical tab structure).

<comment><USER3> When I saw the title of the blog I misread and was so excited-- thinking they finally came to their senses and were building in something like Tree-Style Tabs. It makes me so much more productive and able to coordinate so many different tabs.

I have 47 tabs open in Firefox currently, with trees of different research. That may seem like a lot, but it's really quite natural to manage that many with that extension. With tabs at the top, when you start getting to 15 tabs , you can't read titles and it becomes so much messier. You close stuff down just to make the current tasks simpler.

That extension is the primary reason I don't use Chrome for anything but a few Google services. It's so much more natural to coordinate them in FF until some other browser catches on and adds support.

<comment><AUTHOR> Yes, the Firefox UX team is working on more radical solutions for dealing with lots of tabs, too.

One such experiment is <http://azarask.in/projects/tabcandy/> \- but be warned, this is a rough sketch. It's not clear what shape it will ultimately take, or when it will be ready for production. (That's why we haven't been publicizing it.) The current concept/demo isn't something we are planning to ship yet, but I wanted to point it out anyway because it's so relevant to your comment. Hopefully with this disclaimer Aza won't be too mad at me for linking to his work before it's ready. :)

<comment><USER3> A friend of mine who works at Mozilla showed me this some time ago. While I like to see the innovation and spirit (as always with Aza's work), Here I think they overshot and made the problem somewhat more complicated than it needs to be. I don't understand why it would be considered an improvement to have to go to a different screen to manage tabs. Scanning a chessboard of icons/pics versus a bullet list seems like a small step backwards. I tend to believe that simplicity wins over prettiness.

I'd love to find out if Aza has done user testing with the tree-style tab approach and what feedback he got back. There simply has to be a reason why Mozilla hasn't considered that approach.

My perfect browser would do this to bridge the two worlds:

* Start out with tabs across the top.

* As soon as the tab count increases to make titles less than five-six characters, offer a popup that says "For managing lots of tabs, we recommend using the tab tree sidebar" and points to the button.

* User presses the button and they get the behavior of the Tree Style Tab extension instead of tabs at top

or it asks the same question when you start rather than waiting, so power users can put tabs on the side if needed.

</comment></comment></comment></comment><comment><USER4> tl;dw summary:

0) this is the new default, but it's configurable 1) visually separates controls that affect the current tab (back, forward) from controls that affect the whole browser (close, minimize) 2) saves space and reduces clutter in tabs that don't need certain controls 3) FF is moving certain sidebars (like the bookmarks sidebar) inside of tabs, and tabs on top will look/feel more consistent with this 4) allows notification pop-ups to be attached directly to the address bar without covering up the tab area

downsides: 1) mouse distance increases

<comment><USER5> Another point I found important is the "App tabs" feature. They'll be letting you designate certain tabs as Apps, which will keep them permanently on the left of all the tabs, turn them into small icons (instead of normal sized tabs), and make them permanent (can't close or navigate away from them).

I love this, since I already do this with a lot of applications (I have Gmail, Google Calendar, Wave and Facebook always open).

<comment><USER6> Google Chrome already allows you to do this by right-clicking a tab and clicking "pin tab". It's kind of pointless in its current form, like a awkward hybrid of bookmarks and tabs.

I'd like to see some sort of notification system added to the icons of pinned tabs (like icon badges in Mac OS X) so you could see how many unread items you have in Gmail, Google Reader, etc.

No idea how you'd go about implementing such an idea though.

<comment><USER7> Chrome took the pin tab from opera.. (like everything else)

However the dev of chrome (not sure if its in stable yet) allows you to have these custom apps already. When you install them they also give the app extra permissions such as display tray notices and geo location. This way the app does not have to ask for them every time.

</comment></comment></comment></comment><comment><USER8> It's a nice video, with good mockups and sound reasoning. But alas, it's not exactly an innovation. So it kinda looks like an ex post facto justification why they're doing it like Chrome and Opera…

Let's see whether they keep their lead regarding extensions. There are some nice goodies for Firefox that I haven't yet seen in Chrome, Opera or Safari. Some of them even pertaining to tabs (forgot what that color-coded, collapsing mega-tab add-on is called). But the other browsers are catching up quickly, mostly because they make it easier to write extensions. For Chrome and Safari it's basically HTML5 and JavaScript, nobody's royally rogered by XUL.

A a slight tangent: For the last couple of months, I've been using Safari at home without tabs. Expose is great, and it forces me to single-task a bit more. I tend to factor out the "read that later" pages to Instapaper, Evernote and Delicious anyway. Jamie Zawinski ain't that wrong. (On dual screens or without Expose it doesn't work as well, which is why my Linux setup at work is Chrome.)

<comment><AUTHOR> In my opinion Chrome did Firefox a big favor here.

 _[Note: I work for Mozilla but I am not on the Firefox UX team and was not involved in this change; these are just my own thoughts.]_

If Mozilla 1.0 or even Firefox 1.0 had tabs above the address bar from the beginning, we wouldn't have this problem. But we've spent the last eight years training half a billion people (literally) to use tabs below the address bar. Now most of them have internalized that model and think of as natural, or (much more likely) don't think about it at all but are used to it anyways and will be annoyed if it changes.

 _(Remember the story about Stuart Feldman in the 1970s when someone asked him to fix annoyances with Makefile parsing? He said it was too late to change the syntax, because Make already had more than a dozen users!)_

Mozilla has been debating this for so long because there are good reasons not to change an existing product. Upgrading is more hassle for users when more has changed. Changes to the main UI are the worst.

But users are much more forgiving when adopting a new product like Chrome (not least because the change is less likely to be forced on them). And now that Chrome is so popular, we can point to it as strong evidence that tabs-on-top is a reasonable default that people will be happy to use.

Of course, Firefox still couldn't get away with it without the option to switch back to the old style...

</comment></comment><comment><USER9> The mouse distance issue doesn't really bother me. Something well over 90% of the time, I switch tabs using keyboard shortcuts (actually, most of what I do in the browser is now keyboard based, thanks to Vimperator <http://code.google.com/p/vimperator-labs/> ).

One thing I'm curious about for the mac is whether full titles on the very top will still be displayed if the tabs are on top. In Chrome, if I go to a page that has a long title (including this comment page), I have to hover over the tab to get the full title. Otherwise, it just shows up as "Hacker News | Why Tabs a...".

<comment><AUTHOR> Mouse targeting / Fitt's law is even improved with tabs-on-top in certain situations. Run Chrome or Firefox 4 maximized on Windows (or in a tiling window manager like XMonad on X11, with no border) and you can just run the mouse along the top of the screen to reach your tabs. They have "infinite" vertical target size, just like the Mac menubar.

<comment><USER10> In the mockups shown, the tab doesn't extend fully to the edge of the window, which unfortunately means you don't get the "infinite pixels" advantage. The same is true for Chrome on OSX and Windows.

<comment><AUTHOR> When you maximize Chrome on Windows, the tabs extend to the top of the screen. The plan is to do the same for Firefox 4.

</comment></comment></comment></comment><comment><USER11> Interestingly, bookmarks toolbar is completely missing from the discussion. Are they implying users should not use it anymore?

Right now my bookmarks in one line with buttons, address bar and search bar to reduce vertical space. With tabs on top it would definitely feel quite strange (I usually middle-click bookmarks to open them in new tabs, so action is not tab-local).

<comment><USER12> The primary action of that button is tab-local. It's the secondary (or even tertiary) that isn't tab-local.

</comment></comment><comment><USER13> Sweet. This is one thing I really missed from the Safari betas, and really like about Chrome.

Will watch the video some time, but the two "conceptual model" images hit my reasoning too. It seems to be how non-geeks think about browsing too, as many I've seen have trouble with the address bar + tabs in anything but Chrome.

</comment><comment><USER14> I like their reasoning, even though I don't personally like tabs on top, and I really appreciate an _explanation_. Yes, I'm pointing at you Ubuntu...

<comment><USER6> Ah yes, the "lets put window close button on the left" debacle. That old chestnut.

</comment></comment><comment><USER15> Did you notice the part where they go out of their way to tell you that tabs- on-top is a _preference_ that can be set by the user?

That right there is the reason that Firefox is headed downhill.

That's the reason Firefox takes 30 seconds to open where Chrome takes 3. Every time you fire it up, it pulls in extra bloat so that it can perform all these little user customizations that don't really matter (or that in this case have a "right way" that can be defended for a full seven minute video), but that are needed to keep 10,000 nerds from writing angry blog posts.

Google, on the other hand, made some decisions about what they wanted the browser to look like and do, and implemented them. Want something different? Get a different browser. Want to check your gmail in the next few seconds? Chrome can do that.

My advice to the FF team is to remove that little check box they're so proud of that lets you rearrange the way tabs work. Then strip out the 100k lines of code supporting it. Then ship a noticeably better browser.

<comment><USER16> Don't be ridiculous. The idea that you should force your users to adopt your (well intentioned, well thought-out) preferences with no options is a very recent idea, and its only adherents are coders and designers. While users don't necessarily like hunting for options, they don't like when they are taken away (ask the Pidgin people, for a well documented fork which happened because of this idea).

The suggestion that this causes the 30 second delay is crap. An empty firefox takes about 2 seconds to load for me; a new window takes seconds. My experience (and a cursory chat with firefox devs) is that it is really memory usage which slows firefox down, and I believe this is being helped in the new version.

100k lines is total exaggeration. I'd suggest that checking for the flag is one line, and implementing it the other way is less than 1000 lines (I would think less than 100, but I'll leave myself some breathing room). It's not like they can remove the whole about:config thing just because this one button is gone.

And if you think that removing a checkbox that nobody uses will make a "noticeably better browser", then you are dreaming.

<comment><USER15> This comes up pretty often, and there's plenty of literature available that explains better than I can why adding choices actually makes users less happy. Here's one:

<http://www.joelonsoftware.com/items/2006/11/21.html>

As to the level of effort to get that feature in and maintained, there's plenty of literature out there too documenting the perils of the "you can add this in 5 minutes" feature. For this one, you'll need:

\- changes to the settings page

\- logic to store the setting

\- two parallel rendering paths for the window chrome

\- checks everywhere that tabs are touched and special case logic for things that work differently when tabs are in their old location

\- special case handling for all future features going forward (such as their new popups) to deal with two possible tab placements.

\- unit tests for all the above

\- bug fixing for all the above

\- maintenance for all the above

\- support for all the above

\- documentation for all the above

It's a lot of stuff, measured in man years of effort over the lifetime of a software project as big as Firefox. And they can eliminate it all with a simple executive decision.

Tabs are moving to the top of the browser. They've done the research themselves and come to that conclusion. By both moving and not moving them in their next release, they're only making things hard for themselves.

<comment><USER17>
      It's a lot of stuff, measured in man years of effort over
      the lifetime of a  software project as big as Firefox.
      And they can eliminate it all with a simple executive
      decision.

They can eliminate 100% of their codebase, 100% of their bugs, and 100% of their support issues with a "simple executive decision" as well. So what? If you're going to build and distribute any kind of tool, you have to strike the right balance between the issues of flexibility, performance, ease of use, etc. But saying "strip out choices as a wholesale maneuver" is not even striving for balance.

The only positive thing I can say about this mindset is that, since so much software is open source these days, at least forks can be created when products err too far on one side or the other of one of these lines. But is all that duplicated effort really benefiting the community?

</comment></comment></comment></comment><comment><USER18> Tabs on top is as retarded as moving the stop button to the right of the address bar: just travel more distance to do common tasks.

Bad UI design.

At least we will have the option to change it back, with the stop button we are fucked. And every day of my life I damn the "genius" who moved the stop button.

</comment><comment><USER19> ok when I click PLAY, it goes to the END of the video. I try to place the cursor in the middle, i click PLAY, it goes to the END. I repeated this a few time, then came back here to rage comment on this.

<comment><USER19> Ok, there was an actual youtube version, I listened the video and it was instructing (even if not really innovating).

</comment></comment><comment><USER20> I'm just happy tabs use the title space in Chrome on Win7. I never ever understood why all that space was wasted by title bars. (It still wastes a lot of space in OS X, though not as bad)

<comment><USER21> Unless you want to move the window, in which case trying to click on those 15 remaining pixels above the tab bar is very difficult (at least on OS X, not sure if it's different on Windows).

<comment><USER20> You can click anywhere on the 'dark grey' to move the bar, including to the right of any tabs or beneath the stoplights. Personally, I think those 15 pixels above the tabs need to go away, too.

</comment></comment></comment><comment><USER22> There are more downsides. Given their example of how new webapps will seamlessly integrate into the browser by having their own toolbars and such (the google maps part), it would be very easy to craft a picture-in-picture phishing attack.

<comment><USER23> they're aware of this problem, and they're supposedly addressing that with Firefox Account Manager (linking to aza's blogpost about it): [http://www.azarask.in/blog/post/a-new-type-of-phishing- attac...](http://www.azarask.in/blog/post/a-new-type-of-phishing-attack/)

Hell, I'm using a free version of AVG antivirus and it just detected bgattack.js as a threat!

</comment></comment><comment><USER24> As long as I can change it back they can hypothesize what's best for everyone else as much as they like.

I still use a plugin to make Firefox 3.6 look like 2.0

</comment><comment><USER25> I think he missed one other pro for having the tabs on top-

It makes it easy if the tabs are on top for a user using touch tablets.

</comment><comment><USER26> Because they copied Chrome...

</comment><comment><USER27> I don't use firefox (uses up too much memory for my liking), however, it's good to know that it's a preference that's easily changed.

Of course, the people who download FF4, don't know about the change, and don't know how to change the preference (I.E. most older folks) will complain about how their firefox has changed. On the other hand, most of these people who would react this way are using IE6, and not firefox.</comment>


Trump's Tax Cut Hasn't Done Anything for Workers - <AUTHOR> https://www.bloomberg.com/view/articles/2018-07-18/trump-s-tax-cut-hasn-t-done-anything-for-workers <comment><USER2> "Huge, immediate gains for wealthy shareholders combined with tepid increases in business investment and decreases in real wages don't paint a flattering picture of the tax cut's impact so far"

That's not a bug, it's a feature: that's basically what the plan was designed to do.

<comment><USER3> but not really how they we're sold.</comment></comment>


Social sciences suffer from severe publication bias - <AUTHOR> http://www.nature.com/news/social-sciences-suffer-from-severe-publication-bias-1.15787 <comment><USER2> It's an interesting point, but it's a tough one.

Real example: I'm a social scientist, and I have a hypothesis about a better method of analysing discourse (borne from theoretical musings, mostly). Once I spend the next 6 months testing that empirically, and it turns out to be nonsense or completely unfounded, I'm not sure how much value there is in putting it out there - a lot of social science hypotheses are (imo) quite ephemeral and move on quite quickly.

Part of that's a spillover from the fact that it's difficult to scale qualitative data gathering and analysis as an (often individual) researcher, and a frequent assumption that only quantitative data 'counts', but yeah. Maybe there should be a way to summarise null findings, to stop people replicating unsuccessful or unfounded work.

<comment><USER3> > Maybe there should be a way to summarise null findings, to stop people > replicating unsuccessful or unfounded work.

But repeating failed experiments has the same scientific value as repeating successful ones -- it solidifies the result, increase our certainly about it.

In real science, null results, and their replication, are extremely important. My favorite example is the Michelson-Morley experiment that expected to find differences in the speed of light due to the motion of the earth through the hypothetical ether.

The failure of this experiment, its publication, and efforts to replicate the result, also dutifully published, finally created a revolution in physics when Einstein explained why there was a null result, and coincidentally gave birth to the modern world.

<comment><USER2> 'Real science' \- thanks for that. ;-)

I think the issue I'm trying to get at - I suspect there _is_ less value in null proving a lot of social science hypotheses - the impacts are smaller than physical constants of the universe (or finding say, that the Higgs Boson didn't exist) - if I prove, because my empirical work says so, that discourse can be meaningfully (for a given value of meaningful...) analysed in a new way, that's great, and will advance some other work. But proving (even repeatedly) that it can't be won't really change anything, imo.

I guess though, the main issue is: I'm sure as hell not going to get published saying it, which ties back nicely to the point made in Nature, really.

<comment><USER3> > I suspect there is less value in null proving a lot of social science > hypotheses

Yes, but that applies equally to proving positive social science results. My point wasn't to compare social science to other sciences, it was only to point out the value of replicating null results in general -- that it stands equal to replicating positive results.

> if I prove, because my empirical work says so, that discourse can be > meaningfully (for a given value of meaningful...) analysed in a new way, > that's great, and will advance some other work. But proving (even > repeatedly) that it can't be won't really change anything, imo.

Both findings have equal weight, therefore both findings deserve equal attention from replicators. By contrast, ignoring null results is a disaster for whatever science they occur in -- it may mean that other people might spend a lot of time spinning their wheels studying things that have already been found wanting.

<comment><USER4> When you can identify a single null point to replicate, then sure. But there are lots of endeavors (what rate of positive feedback maximized reinforcing a behavior?) where there isn't a single null that defines a theory or disproves a reasonable conjecture. I'd guess in physics this might be possible, and math, but maybe nowhere else in science.

</comment></comment></comment></comment></comment><comment><USER5> Rigorous, well-concieved hypothesis-driven research with lots of controls, ought to be considered as valuable as studies that show positive findings. The sad fact is that they are not.

There is also a chicken-and-egg problem here with changing the culture. Sure, I could decide tomorrow that I will no longer battle for space in the high- impact journals that usually display this bias — in favour of more enlightened journals like PLoS ONE ... and I wouldn't suffer, I have a job... but what about my grad students and postdocs? The consequences for them would be real, because biases also still exist in the minds of professors, hiring committees, and even their peers. 10 papers in PLoS ONE just are not considered the same as 10 papers (or even 5 papers) in more "established" journals. There is thus a lot of implicit pressure to just abandon studies that show null results and pursue different ideas until you find an effect.

There is also huge pressure today (very explicit) to continuously generate "novel" ideas. If you want a competitive research grant now you have to generate a groundbreaking idea. If you want to publish in the top journals you have to generate groundbreaking ideas. Amazingly there are colleagues that have a success rate with grants and with high-impact publications so regular (EVERY SINGLE YEAR) ... that wow, how amazing it must be to be able to generate a brand new groundbreaking idea at such regular intervals!!! (sarcasm). And so there is yet another kind of bias present. (politics, the favoured few, the ivy-colorer-special-people, etc)

I could go on with other injustices but the bottom line is that [NEWSFLASH!] science is not objective, but like all aspects of life, is chocked full of biases, politics, special interests, and cow-towing to the bottom line (i.e. money).

<comment><USER3> > I could go on with other injustices but the bottom line is that [NEWSFLASH!] > science is not objective, but like all aspects of life, is chocked full of > biases, politics, special interests, and cow-towing to the bottom line (i.e. > money).

s/science/the contemporary practice of science/

Science hasn't changed -- it means the same thing. Its practice has changed to the degree that we may be justified in calling some of it pseudoscience.

<comment><USER5> yes absolutely thanks for clarifying what I meant

</comment></comment></comment><comment><USER6> Honestly I feel like this is an even bigger problem in the natural sciences. In my experience journals want strong and interesting positive results. They rarely want negative results unless it is debunking a previous result that seemed interesting and positive. I have worked on projects before, that while interesting and on a solid theoretical base as far as approximations go, were ultimately incorrect for what ever reason. I should be able to publish and report on this so no one else wastes their time on it or can find a glaring flaw in it and build upon it. While the initial idea may be a good one the implementation of that idea is not always a good one. It can be useful to other scientists to know these things.

</comment><comment><USER7> There is a deeper problem with research in Social sciences. It lacks theoretical underpinning. Studies and experiments are frequently based on 'pragmatic', ad-hock assumptions that are easy to confirm but irrelevant.

<comment><USER8> I'd say this is a biased view. In German speaking countries, social sciences rather suffers from theory flim-flam. Maybe in the US, you didn't have your Luhmann-moment yet.

<comment><USER3> The prior poster lamented the absence of validated theory in the social sciences. Your point is that many of the theories that do exist have no validity. I think those views dovetail.

<comment><USER7> Exactly.

<comment><USER8> Based on your original comment I had the impression our views rather diverge but maybe I got you wrong. Anyway, HN isn't really the place to discuss such matters.

</comment></comment></comment></comment></comment><comment><USER9> So far as this is concerned peer review may be part of the problem, not the solution.

</comment><comment><USER10> Fulltext: [https://pdf.yt/d/ZTzcsTMzDeUPKhiq](https://pdf.yt/d/ZTzcsTMzDeUPKhiq) / [https://dl.dropboxusercontent.com/u/243666993/2014-franco.pd...](https://dl.dropboxusercontent.com/u/243666993/2014-franco.pdf) / [http://sci-hub.org/downloads/ce4a/franco2014.pdf](http://sci- hub.org/downloads/ce4a/franco2014.pdf)

</comment><comment><USER11> This suggests to me that there might be a follow-on problem with fabricated results.

Given the "publish or perish" thing in academia, and devaluation of negative results, it seems there's a strong incentive to obtain positive results. And this is likely to increase the incidence of researchers being pressured into tweaking data to obtain affirmative results.

</comment><comment><USER12> I like that it says "studies show" that null results are rarely published. In fact, from my friends who are in the social scientists, that's just how the journals operate.

Sure, null results are meaningless for complex hypotheses, but when testing a very narrow variable with a well-designed experiment, a null result is actually a very important result.

<comment><USER3> > Sure, null results are meaningless for complex hypotheses ...

If that's true, if a hypothesis is vague enough to resist meaningful testing, then a positive result would be equally meaningless. But I see we are in agreement.

</comment></comment><comment><USER10> Gelman comments: [http://andrewgelman.com/2014/08/28/publication-bias- social-s...](http://andrewgelman.com/2014/08/28/publication-bias-social- sciences-unlocking-file-drawer2/)

</comment><comment><USER13> Anyone want to join me in starting a Null Results Journal? Honor hard work with meh outcomes.

<comment><USER3> > Anyone want to join me in starting a Null Results Journal?

Nice thought, but there's already the JIR, the Journal of Irreproducibe Results:

[http://www.jir.com/](http://www.jir.com/)

<comment><USER14> There are many journals of irreproducibe results.

<comment><USER3> Very true, and more as time passes, such that the JIR isn't so funny any more.</comment></comment></comment></comment>


Starbucks to Close All U.S. Stores for Racial-Bias Education - <AUTHOR> https://news.starbucks.com/press-releases/starbucks-to-close-stores-nationwide-for-racial-bias-education-may-29 <comment><USER2> Can someone explain to me what Starbucks did wrong here? As far as I've read, there were a pair of men loitering in the store for an extended period of time. They did not purchase anything so this is the very definition of loitering. The store was very busy and someone from Starbucks asked them to leave. They refused. At that point, the same person from Starbucks called the cops because they refused to leave.

The cops came, and eventually arrested them after they refused to comply with instructions. They were taken to the police station, but Starbucks did not intend to press charges so they were let go.

What am I missing here? What is the correct play for dealing with a non- customer that refuses to leave your store?

<comment><USER3> When you're Starbucks, have marketed yourself for years as a "third place" where people can hang out, and have a policy to not kick out people who aren't causing trouble, and you call the cops on the two black men, but not on the white people also sitting in the same store without purchasing anything, you've done something wrong. Other customers were speaking up, pointing out white customers sitting there without purchases, as the cops were leading the two black men out of the store in handcuffs.

<comment><USER2> I can buy that, but then I can't understand why they refused to leave.

There is an unwritten contract between any cafe and the public: purchasing any item - even the tiniest coffee - and you also get the option of staying at the cafe for a period of time. Refusing to leave, or to purchase something, violates that contract.

<comment><USER4> > _I can 't understand why they refused to leave_

Because they were being asked to leave on a discriminatory basis.

> _Refusing to leave, or to purchase something, violates that contract_

Attempting to enforce a contract with racial bias is illegal and, ultimately, unenforceable.

</comment></comment></comment></comment><comment><USER5> Unfortunately this isn't a Starbucks problem. This isn't something that can be trained for. It is the culmination of 400 years of hardcore racism pounded into the consciousness of western civilization that equates blackness with criminality, and holds us in social bondage. What you're seeing here is just a normal part of every day life for blacks in the US.

The Rastas have a word for this: Babylon. While it exists, no black person can ever be free.

<comment><USER6> How do you feel about Starbucks denying access to homeless people in the same way? There is a commonality in the way humans discriminate and I feel like its a disservice to leave other marginalized groups out of this conversation.

</comment></comment><comment><USER7> For context on why: [https://www.aljazeera.com/news/2018/04/black-men- arrested-wa...](https://www.aljazeera.com/news/2018/04/black-men-arrested- waiting-starbucks-180416050337967.html)

</comment><comment><USER8> All I have to say about this topic is: it's always interesting to see how Starbucks manages to put itself in the news about once or twice a year, because of some controversy... and they never end up being the bad guy!

</comment><comment><USER9> I find it highly unlikely that if this same scenario occurred with two middle- aged white men dressed in chinos and dress shirts, we get the same ending with cops being called and an arrest.

</comment><comment><USER6> Are there any ways to tell if a corporation actually gives a damn or is just pretending for PR or other selfish purposes?

<comment><USER10> I have kneejerk reactions sometimes to actions like this, thinking "oh they're just doing this for the PR", but I've recently start to consider what would it take for me not to have this reaction -- and I realized that I would likely have that just-for-pr reaction to any action they took, and I'm likely entirely too cynical.

Closing 8,000+ stores for an afternoon feels like a sizable response, and I am going to suspend my cynicism for this and recognize that they do give a damn (even if it is influenced by PR).

<comment><USER11> I doubt it will be for a whole afternoon. My bet is on a "webinar" mode: 1-2hrs closure, with with something like: 20min intro; 20min talking head video; 20min "any questions?" They'll make new employees watch it and they'll post it on the corporate website ("make available").

</comment></comment></comment><comment><USER12> Does anyone else think the guys looked like homeless people and that contributed to calling the police. Why weren't the guys at fault. They should have just left the store. That wha a reasonable person would have done. I've seen baristas ask white people to leave before and they've all done that.

<comment><USER13> Really, because the guy in the brown jacket had a incredibly coiffed beard? Is that what made you think they were homeless?

Your sophistry is all about equating asking a homeless smelly white dude with two perfectly respectable men waiting a couple minutes for their third to arrive.

When you go out with someone to eat, do you order as soon as you arrive and begin to eat even if the other person hasn't shown up yet?

<comment><USER12> I wasn't there in person so I can't tell whether they smelled or not and I'm not a guy so I'm not an expert on beards and can't tell whether it's clean or not.

In any case they should have left when they were asked to and just waited outside like a normal person. I've seen baristas ask white people to leave and all of them did without any issues. Why wouldn't those guys leave? Why did they cause problems?

Isn't it unusual for guys to go out and about wearing sweatpants. I haven't seen guys other than the homeless do that if they're not at the gym.

<comment><USER7> > Isn't it unusual for guys to go out and about wearing sweatpants

No.

</comment></comment></comment></comment><comment><USER14> Some context for the incident here:

[https://www.reddit.com/r/news/comments/8cysu4/starbucks_will...](https://www.reddit.com/r/news/comments/8cysu4/starbucks_will_close_8000_us_stores_may_29_for/dxixmyn/)

The guys had ~20 minutes to leave before the cops showed up, and still refused after the cops asked several times. Per the police commissioner:

> On 3 different occasions, officers asked the males politely to leave the > location because they were being asked to leave by employees because they > were trespassing. Instead, the males continued to refuse as they had told > the employees previously, and they told the officers that they were not > leaving. When the call was initially made the Starbucks employees had told > the males that they were going to call the police and they said go ahead and > call the police we don't care. So the police get there and they are > confronted with the same type of attitude. They repeatedly told that they > were not leaving. In fact, there's some alleged rhetoric about 'you don't > know what you're doing, you're only a $45,000 a year employee' or something > to that regard.

</comment><comment><USER15> Foul-Mouthed Zen Master says: This is one of those problems (and there are many) that the manager could've avoided by just not giving a shit. Racism for example is nothing but giving a shit about something that doesn't deserve to have a shit given.

Why even get involved with anything happening on the other side of the counter? Take the money, dispense the coffee, collect your paycheck, and read the community-college catalog so you can get the hell out of there someday!

If someone is genuinely "in the way", people will repeatedly jostle past them annoyingly until they get the hint. It's a self-correcting system.

If someone is such a foul presence that they're driving away customers, that's Starbuck's problem, and not really a big one for them either. You as the manager, meanwhile, have _less_ to do because of it, not more; use that time to read the community-college catalog.

If someone is actively threatening or harassing someone else, yelling at the top of his lungs, or committing some other actual literal crime, THEN you call the cops.

</comment><comment><USER16> 1\. They typed "ceo" instead of CEO or C.E.O.

2\. Are all retail locations of all businesses now expected to let anyone use the restroom for free? I do not know the specifics of this story other than "black person tries to use the bathroom, isn't allowed, doesn't leave, gets peacefully removed from premises". If a store doesn't let people use the restroom for free, isn't that their prerogative?

<comment><USER10> I'm confused by your 2nd point -- I think you have this confused with a different story? Two black men were arrested while waiting for a friend in a Starbucks, use of restrooms had nothing to do with this.

<comment><USER16> [https://www.nytimes.com/2018/04/17/business/starbucks- arrest...](https://www.nytimes.com/2018/04/17/business/starbucks-arrests- racial-bias.html)

I believe you are incorrect.

Two men wanted to use a SBUX restroom without purchasing anything. I guess they had to ask for a key or something? Otherwise how would sales intervene? Anyway, they were told they weren't paying customers so they couldn't. They then squatted and cops were called.

I really don't know the details, and it's easy to assume either or both parties were asinine. Maybe they really were doing nothing wrong, or maybe they were disturbing customers. No news I've read characterizes the incident. In any case, even if an employee handled it poorly, it sounds like an overreaction.

<comment><USER8> None of us know the details, but each of us has filled the void with "what most likely happened" based upon our own personal worldview, so we can argue about it on social media which conveniently spreads the story so more people can see how virtuous SBUX is for taking such dramatic corrective action (all SBUX locations closed on the same day, interrupting routine customer behavior to make a point about how virtuous they're being here).

Does anyone else kinda just hate all capital-B Brands now, as they increasingly pull this crap? Or is everyone else falling for it, actually having their opinions about these Brands influenced by the grand public gestures they make, spending tons of money on PR people to spin said gestures in the most positive way possible?

Is there really a secret anti-black undercurrent in the management staff in any reasonable number of SBUX locations, such that this grand gesture of corrective action actually has any demonstrable effect on anything at all, aside from making people think more positively about SBUX as a brand?</comment></comment></comment></comment>


My name is Lloyd, Mong Lloyd. - <AUTHOR> http://teespring.com/rafaqueque

<comment><USER2> Posted because it's offensive?</comment>


Hand-curated newsletter for blog writers and content promotion - <AUTHOR> http://newsletter.gratify.io/?ref=hackernews <comment><AUTHOR> Content Weekly's my side project and I'm happy to answer any questions you might have about it. I'd also love to get any feedback the community has for me.

As a founder in the mid-west I've seen how content marketing affects our side projects and day jobs and have spent years combing through all kinds of resources to try new tricks and tools that help actually get our content noticed. There's so secret ingredient to make content marketing effective, but I love figuring out what works and want to share that knowledge with others.

If you're interested in the techincal side of how I made the website, I built the website with Node.js, Bootstrap, Mailchimp, and Goodbits.io.

<comment><USER2> This is a great idea! Marketing/promoting projects is the biggest challenge for me.

<comment><AUTHOR> Thanks John, I definitely agree, especially if you don't have a huge network already built up to help you.

</comment></comment></comment><comment><USER3> this is awesome! I've been in marketing for too many years but always need more tips on content promotion. It's so hard to actually get your content seen...</comment>


NoSQL 101 – Part One - <AUTHOR> http://www.dataversity.net/archives/6548

<comment><USER2> I am sure it's a great presentation, but I always have trouble believing these when the photo of the presenter has him wearing a suit. I want to see presentations by developers and developers do not wear suits. Those are for sales people.

<comment><AUTHOR> I should have added this in the reply instead of as a new comment: I hear you - though Dan is an educator vs a sales guy. Super smart guy with a masters in electrical engineering and computer science plus an MBA. If you want a pure dev guy speaking in jeans though, check out: Selecting the Right NoSQL Tool for the Job <http://www.dataversity.net/archives/6774>.

</comment></comment><comment><AUTHOR> I hear you - though Dan is an educator vs a sales guy. Super smart guy with a masters in electrical engineering and computer science plus an MBA. If you want a pure dev guy speaking in jeans though, check out: Selecting the Right NoSQL Tool for the Job <http://www.dataversity.net/archives/6774>.

<comment><USER3> Thanks! I have always wanted to be known as an "Educator". My family is full of teachers!

\- Dan

<comment><USER4> The presentation has been incredibly helpful for me in understanding the reasoning behind NoSQL. Thanks for doing it!</comment></comment></comment>


Why it's hard to answer "when to raise a series A" - <AUTHOR> https://blog.ycombinator.com/when-to-raise-a-series-a/ <comment><USER2> When to try to raise a series A round? When you BOTH need the money to ramp up your work AND you are ready to take on investors who want at least a tenfold return on their investment.

Generally your series A investors will, between them, hold a majority of shares in your company. If you have enough leverage to retain a majority share for the founders and employees, you're probably already funding at least part of your work from revenue. In that case you may not desperately need the investment.

Before you raise a series A round, be sure you understand the meaning of "Participating Preferred Shares."

Don't celebrate getting a series A round by using some of it to buy fine wine (unless you're in the wine business). You wouldn't celebrate getting a payday loan either.

<comment><USER3> I'm confused about what you're saying here. Usually a series A takes 15-25% of the company. Are you saying that for acquisitions for less than the valuation investors are the first to get paid? Because founders usually maintain control these days for at least the first equity round.

And the beat time to raise an A round is when you don't need the money but you can grow faster I'd you have it.

</comment></comment><comment><USER4> "The longer a company has been in business – or the less good a founder is at telling a story – the more concrete and certain the metrics of that business need to be. Part of the challenge companies that have raised too much seed money face is that the requirements they face for an A are significantly higher than for those who raise less. They generally wait longer for their As, so investors expect to see associated progress."

The tension that investors look at between time to executve and how much progress has been made is really interesting. Is the the time horizon (and thus expectation) very different for different industries? Is it relative to existing incumbents and competitors?

<comment><USER5> Ironically, the longer a company has been in business with slow growth, the less attractive it is to a VC doing early stage investment.

One would think that such a company can turn around and more easily become successful than a company which has only an MVP that generates no money, but that's not how VCs see it. They want to see "traction", and even better, a company amassing users like wildfire.

Twitter had no revenues for years but was raising at a $100M+ pre-money valuation because of user growth alone.

If Twitter had added a business model and generated revenue but didn't have the hockey stick 5 years in, then VCs would actually be more averse to invest in it.

<comment><USER6> I would think the key if you've been in business for a while and have lackluster growth would be to sell investors on why the new direction you're going in has so much more potential than what you've done so far. Even if it's not a pivot, it might be better if it sounds like one. That way, instead of extrapolating from your current numbers (bad for you), investors can give you more of a clean slate.

Already having a userbase, revenue, a team, etc. in place is a massive advantage, because these things are so hard to accomplish. If you tell the right story, you should look infinitely better than an early stage company that pivots due to lack of traction (and the latter get funded all the time).

</comment></comment></comment><comment><USER7> If you're raising 1M+ in the midwest, it's straight forward. Get a meeting with a VC associate in the region (Chicago: HP VC, Origin, OCA) and they will tell you exactly what they're looking for in a Series A.

I've never had any success with getting institutional money at the seed stage, but if you do get it, it's even easier to bypass some of the troublesome checklist items you get in the A round.

<comment><AUTHOR> All VCs are willing to give you a checklist of what they're looking for. I've never seen a VC actually willing to fund solely based on a checklist of objective metrics. This doesn't change based on region.

</comment></comment><comment><USER8> I work at a profitable product startup that has managed to avoid raising series A. As long as we can maintain the level of growth (which is honestly close to breakneck with integration work for each customer site) I think it's feasible to avoid raising/diluting while continue to grow but it's not the easiest experience I've had. Lots of blood sweat and tears, particularly from one of the founders.

I know some people might think the payout could be better raising series A and hiring to support growth as is the more common road. The founders are going a different route and so far it's going well. We can hire when we need to so not to worried there. I don't know if this is a weird case?

<comment><USER9> If you're profitable but desire the growth, could you take on debt instead?

</comment></comment><comment><USER10> I think this more answers the question "when _can_ you raise an A" than "when _should_ you raise an A".

Series A and later are really helpful in growing quickly. You should raise a series A when it will give you a lot of growth per dilution -- that is, when you have a clear plan for how the money will help you grow quickly, and some evidence that your plan will actually work.

<comment><USER11> The article says explicitly that the answer to when you should is when you can.

<comment><USER10> That was overly simplifying and I don't believe for a second Aaron literally believes you should raise any money you can simply because it's available. The downsides of raising money you don't need are something tons of founders, YC partners, and VCs have all discussed before.

</comment></comment></comment><comment><USER12> Hmm. I honestly prefer Manu's blog post and phrasing from 2012: [http://www.k9ventures.com/blog/2012/05/31/hope-and- numbers/](http://www.k9ventures.com/blog/2012/05/31/hope-and-numbers/)

</comment><comment><USER13> I think the other article referenced ( [https://blog.ycombinator.com/process- and-leverage-in-fundrai...](https://blog.ycombinator.com/process-and-leverage- in-fundraising/) ) provides better guidance, specifically :

> Because most venture returns are driven by a tiny number of companies, > investors know that they need to invest in those companies in order to make > money.

The trick, then, is convincing investors that your company will be one of those outliers.

The missing part in this article about "when", imho, is that _when_ might have a lot to do with the timing of a startup's outlier story and how well it matches with a particular VC's fund size.

</comment><comment><USER14> I found a series A to be very ambiguous. Some people thought of it as a big late-stage seed and others had more series B type expectations.

IMHO the series thing is outdated. Just call it R0, R1, R2, R# where # is round number and be done with it... or move to a continuous fine-grained fund raising model.

</comment><comment><USER15> > This sounds good, but we've seen As happen for Saas companies with ARR > between $200k and $9m with plenty of companies failing all along that range.

Is that intended to say failing or falling?

<comment><AUTHOR> "Failing" was intentional. Both words would be true, but in this case I'm pointing out that the metrics do not guarantee the round.

<comment><USER16> How did a $9m ARR company fail to receive a Series A? Disagreement over terms?

<comment><USER17> Plenty of potential reasons. Stagnant growth, really poor executive team that got lucky, serving a dying industry, tapped out growth potential, poor unit economics, etc.

<comment><USER18> Financial or legal liabilities. Of the few rounds I got to see anything like transparency, I saw one get hung up because they had allowed an uncertified investor in during the seed. I think that guy might have been the only investor to get their money back because they had to buy him out and the money ran out before they closed the round.

(Some VCs are perfectly happy to let you run low on funds to get better terms).

</comment></comment></comment></comment></comment><comment><USER19> akharris --

Any pointers on the most polite but firm way to defer speaking with investors when you're not ready to raise?

We just raised Seed, and get 5-10 inbounds per week asking about Series A. I usually write something like:

"Thanks for the note. We recently closed our seed round and are not looking to raise at the moment. But we will definitely reach out when that changes."

Hopefully that's not too curt/dismissive? Thanks in advance for any tips.

<comment><AUTHOR> That's a great response. If the investor is someone you do want to get to know, it doesn't hurt to set some time 3-6 months into the future for a short chat.

</comment></comment><comment><USER20> TLDR

"...this doesn't provide the sort of certainty I know founders want in answering the question of when to raise. However, I think that knowing that there is no clean answer is important because it provides a framework for thinking through the relative advantages you have when thinking about a raise."

<comment><USER21> In my experience, finding a framework when you're searching for a solution is not a consolation prize. When the consolation prize is the only prize, it feels like the first place trophy -- and it is, at that time. The solution doesn't actually exist yet, but now you have the tool to find it.

About a year ago, I had this inescapable feeling that I was spending my time poorly (not daily productivity but on a larger scale), and it was causing me a lot of anxiety. Then I read How Will You Measure Your Life? by Clayton Christensen. I walked away with a framework for finding out what I want to be productive towards, even though that thing -- whatever it is -- was no more clear to me. My anxiety disappeared, which is what I wanted all along!

</comment></comment><comment><USER22> Is there such thing as waiting too long to raise?

<comment><AUTHOR> There is - it's possible to miss your window. This usually takes the form of a company that has figured out how to start scaling revenue, does not take advantage of the leverage, and then plateaus as a function of not having the capital necessary to expand.

For the better half of these businesses, this ends up being ok. They settle into a slower growth model that produces a great cashflowing business. However there are others who are unable to get to profitability on remaining funds and die as a result of not having enough capital.

</comment></comment><comment><USER23> Tldr, series A is a balance between traction or more young, charismatic ivy league graduates. The less you have of one the more you need of the other.

I'm always amazed how much it takes for people to say pretty simple things.

<comment><USER24> If I could downvote your comment I would because this is not an accurate synthesis of the article.

"more young, charismatic ivy league graduates" is not at all what the author describes. The author's thesis is that raising a Series A has requirements ranging between a Seed round which is based on, "the quality of the founders and the raw story that they can tell about their company and the future that company will create" and a Series B which is based on "[the] need to have accomplished a significant set of things that prove their ability to accomplish that future".

<comment><USER25> I know a (small) number of YC companies and they all have a "young, charismatic ivy league graduate" on board. I imagine there's some sort of subconscious bias at play here that equates those properties with "quality of the founders".

Be that as it may, if you're one of those people you can use it to your advantage and get away with less traction.

<comment><USER24> Young, charismatic ivy league grads are one specific instance of "the quality of founders ". Another, equally fitting one is, "A successful serial entrepreneur with an exit or two under their belt". Another, albeit seemingly outdated one is, "a former Googler". There are many ways a founder can be of high quality that are not ivy league grads.

<comment><USER26> Being a YC founder, I am not an Ivy league grad but a PhD drop-out who happens to have the combination of domain expertise, technical understanding, and charm.

Your poor conclusion of "ivy league grad" is ridiculous. If anything YC looks for doers not those that have.

<comment><USER27> If you would have said you were a high school dropout and poor communicator this would have made a point but PhD + charm is phenotypically similar to an attractive ivy grad so you're kind of proving the point.

<comment><USER26> "phenotypically similar"

Please be aware this is your bias, your POV. You can't use it to prove your own point.

PhD is nothing similar to your connotation of Ivy League grad. The former requires years of sacrifice, ruined relationship, and missed experiences to master an esoteric part of science. The latter has the connotation of privilege.

</comment></comment></comment></comment></comment></comment></comment><comment><USER28> TIL: Tautological - an argument which repeats an assertion using different phrasing

<comment><USER29> I remember learning this in high-school as part of propositional logic, and it was essentially described "the opposite of a contradiction":

[https://en.wikipedia.org/wiki/Tautology_(logic)](https://en.wikipedia.org/wiki/Tautology_\(logic\))

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

Is the teaching of propositional logic common in the US?

<comment><USER30> I did not learn propositional logic until I was in college.

<comment><USER29> To be fair, the school I went to was very particular, as it ran by the same university that ran the college I went to. In a way, a lot of the subjects we took early on were preparing us for college.

</comment></comment></comment></comment><comment><USER31> Read the headline and immediately thought there was a company named "When" raising a series A.

<comment><USER32> I took it as a poker reference. "When to raise..."

</comment></comment><comment><USER33> Terribly confusing article name.</comment>


Understanding Flowcharts (flowchart/humor) - <AUTHOR> http://www.whattofix.com/blog/archives/2011/02/understanding-f.php

<comment><USER2> This Google search: <http://www.google.co.uk/#q=do+you+understand+flowcharts>

Top result: <http://xkcd.com/518/>

Hard to believe it's not original from XKCD.

</comment><comment><AUTHOR> If anybody knows where this came from, I'd happily attribute it. I don't know if it appeared in a magazine or was home-grown. (When was FreeBSD a big deal?)</comment>


The Perfect Number: Federal corporate income tax rate - <AUTHOR> http://theperfectnumber.pedal.tech/ <comment><USER2> Not only it is a bit annoying way to present the data, it tries to hide bs interpretations in it.

For instance, when Trump said that when he is going to reduce the taxes, jobs would come roaring back in. To prove how this wouldn't happen, pedal.tech tries to study the amount of growth, companies who currently pay less than 20% tax, showed. But that's a ridiculous way to see the merit of that argument.

Imagine if a teacher said, "I am going to reduce the amount of time people currently spend in doing homework from 3 hours to 2 hours. This will result in more well-round development of students as they will have more time to do other things.

Now of course not all students spend 3 hours doing homework, some spend more than 3 hrs, some 2 hrs, some no time at all. So according to pedal.tech, we need to look at any student who is spending only 2 hours and see what rounded development they are having, but that does not tell you what the students who spend 3 hours would do in their extra time, or what the students who only spend 2 hours would do (since now they are able to finish their homework).

</comment><comment><USER3> This is kind of an annoying way of presenting an argument. I'd rather be able to read and look at the animations at my own pace.

That aside, to the main point, I don't think it is really an argument against lowing nominal rates, but rather an argument against lowing effective rates. Classically tax reform is involves broadening the base (eliminating exemptions, deductions, credits, etc) while lowering the nominal rate. That may not be what the Republicans are planning on doing, but won't really know until the details are hammered out.

<comment><USER4> I gave up bothering to try to follow it.

Maybe that was their goal? To present the data in such a way to make people go somewhere else?

<comment><USER5> That and the Cheeto quotes.

</comment></comment></comment><comment><USER6> I like the part that shows how similar companies end up with different tax rates.

Otherwise, I am not sure that federal corporate income tax isn't high, if you consider that any dividends paid to actual persons pay income tax again. I can agree paying 35% of my profits in either way, but not twice.

</comment><comment><USER7> I gave up on that page very early. Its horrible.

That being said, I have a tax theory. Forgetting about the political power required to do such a thing. Would it be possible to do away with all the taxes and replace them with a very low sales tax that gets applied to everything. e.g. Farmer buys a cow, pay 1% sales tax Milk wholesaler buys the milk to process, pay 1% sales tax Shop buys the milk to sell, pay 1% sales tax Shop buys labour to work in the shop (staff), pay 1% sales tax I buy milk to consume, pay 1% sales tax

More examples. Trade BitCoin, pay 1% sales tax Sell a house, pay 1% sales tax Trade shares, pay 1% sales tax

I accept some of this will be hard to police without the incentive for smaller businesses to claim the tax back.

I believe the key to making this work, is having no possible way to get exemptions. Doesn't matter if you don't make a profit, you still pay, doesn't matter if you are a organisation looking to on-sell or a consumer, every transaction pays and no way to offset this.

Finding the magic % would be difficult, but is the key part. Would this be possible? Where could I go on the inter webs to ask if such a scenario would even be possible

<comment><USER3> That would really strongly encourage vertical integration.

Consider a company that owns oil wells, pipelines, refineries, and gas stations. It never pays sales tax on its petroleum products. Only the final consumer does on the gasoline he buys.

A competitor network made up of independent parts has an oil drilling independent pay sales tax after it sells crude to a trading firm, the pipeline owner pays sales tax on the money it gets from the driller for the use of its pipeline, the trading firm pays sales tax when it sells the crude to a refiner, the refiner pays sales tax when it sells the oil to an independently owned gas station, and finally the end consumer pays the same sales tax as the integrated firm when it sells to the end user.

Countries that raise significant revenue from sales taxes generally use a VAT (value added tax) to avoid this problem.

<comment><USER8> ...and it's worth noting that the VAT is very susceptible to judgement calls and therefore lobbying by special interests and weird edge cases where canned tomatoes get one tax rate and fresh ones another.</comment></comment></comment>


Show HN: Guess a Date's Format - <AUTHOR> https://github.com/apoorv-mishra/moment-guess <comment><AUTHOR> A simple CLI utility for guessing a date's format, try `npx moment-guess --date 'Fri, January 30th 2020, 10:00 AM'` in your terminal.

</comment><comment><USER2> Woahh I was just looking for it!!</comment>


An Introduction to the Resource Description Framework (1998) - <AUTHOR> https://www.dlib.org/dlib/may98/miller/05miller.html <comment><USER2> TL; DR

I think Jena, a free and open source RDF framework, has been around for the last 20 years, and still releases pretty often. If you are considering using a graph database for your next project, you should give it a try! Here are some notes on how to get into RDF [1].

\--

RDF is really at its core such a simple concept! What's built on top can go pretty deep though. RDF is a technology to describe graphs, with tools on top that allow querying, traversing, validating, and inferring information.

The way RDF describes graphs is with the use of a "triple". This triple has the form:

Subject -> Property -> Object

A sample triple could be: Tarantino Directed Kill-Bill.

The power of the model comes from the fact the elements of the triple use unique IDs by mean of URIs, so a more realistic triple could be:

<[http://imdb.com/tt0266697>](http://imdb.com/tt0266697>) <[http://movies.com/job/director>](http://movies.com/job/director>) "Kill Bill Vol. 1"@en.

In this example, the object is a literal instead of a entity with its own URI: the English title of a movie. As long as someone else uses the same subject URI, I may automatically discover new things about my own data by merging someone else triples into mine. There's also an extension that allows naming the graph where the triple lives: the triple becomes a "quad". The name of the graph should be an URI: <[https://me.com/my-movies>](https://me.com/my- movies>).

Through the years there's been more stuff built on top of the model: various serialization formats (most of them plain text based), a query language (SPARQL, similarities with Datalog), frameworks for "semantic inference" (OWL), schemata and constraints, asking the graph to be a certain shape (SPIN, SHEX, SHACL), an easy way to make statements about the triples, like "this triple was created on this date by this person" (RDF*), and I'm sure a lot more stuff I'm forgetting or I don't know about :-).

1: [https://www.reddit.com/r/semanticweb/comments/fxtaxe/books_o...](https://www.reddit.com/r/semanticweb/comments/fxtaxe/books_on_the_semantic_web/fppxi1l/)

<comment><USER3> At my last company, the system that eventually became our Knowledge Graph started out as RDF. It seemed like a great fit, but we didn't really have much luck. There was an unnecessarily complicated process for schema definition and the SPARQL engine we chose (on top of PostgreSQL) wasn't ready for a production load (e.g. was not performant).

I really liked the concept and we borrowed the "triple" approach in our next iterations, but we really didn't get any benefit from using RDF.

Quite possible it was our fault.

<comment><USER4> What did you end up moving to?

</comment></comment></comment><comment><USER5> Most websites in the world implement RDF in the form of schema.org - a nearly pure implementation of RDF (pure meaning no non-standard variants).

Wikidata is an RDF instance.

The largest chemical database in the world is based on RDF (PubChem).

There are hundred, thousands of other RDF instances.

</comment><comment><USER4> As someone still using RDF in research / work, always nice to see it pop up on HN. Even if it is nothing particularly substantial.

<comment><USER6> Can you share something more substantial with us? How are you using RDF? Can you share some other RDF resources? Do you have an uncommon take on RDF?

<comment><USER4> I wouldn't say I have an uncommon take on RDF. I feel it gets more focus (maybe too much) in semantic web related academia and research than it does on the general web. And the substantial thing wasn't meant to be that harsh of a critique, but like another comment mentioned, sometimes these 'introduction / wiki articles about __' are a bit of a tease, and I wish someone were posting something more novel.

As for what I'm doing, it's a project that is taking various siloed fan- created data on the web and collecting, aggregating, and transforming it into RDF for the purpose of being queried by researchers. I think RDF and RDF- adjacent things (e.g. knowledge organization, ontology application) are useful here, but the actual querying / data analysis requiring an RDF transformation is maybe questionable.

</comment></comment></comment><comment><USER7> Why do people post wikipedia links with absolutely no context or comment?

<comment><USER8> I often find Wikipedia-only links handy to introduce me to topics that I never even knew existed—that is, where, in some sense, "this topic exists" is interesting in itself.

One particularly memorable one was [https://en.wikipedia.org/wiki/199_398_500_A](https://en.wikipedia.org/wiki/199_398_500_A) (though I can no longer find the HN link to it); it's then easy enough for me to Google around for more context if I care to do so.

<comment><AUTHOR> [https://news.ycombinator.com/item?id=23011467](https://news.ycombinator.com/item?id=23011467)</comment></comment></comment>


The Internet is our social network. | Friendica - <AUTHOR> http://project.friendika.com/ <comment><USER2> That all looks great, but the level of thinking required when staring at the Public Portals page is quite offputting. I will persist, but having to think is going to put 95%[1] of people off.

[1] Statistic may be fictitious

Edit: Why is Friendika sometimes spelt with a K and sometimes with a C?</comment>


Department of Homeland Security moves to rescind International Entrepreneur Rule - mark-ruwt https://techcrunch.com/2018/05/28/department-of-homeland-security-moves-to-finally-rescind-the-international-entrepreneur-rule/ <comment><AUTHOR> This International Entrepreneur Rule is the so-called "startup visa" that was introduced in 2016. It was practically tailormade for founders of YC companies.

Founders would qualify for a period of several years simply based on investment raised and amount of ownership in the company. Traditional visas are more oriented towards big corporations' needs and are not so easy to bend to fit startups (or so I hear -- I'm no sort of lawyer).

Sad to see it killed off, even though the writing was on the wall ever since November 2016.

</comment><comment><USER2> US government 101: immigration laws are _passed_ by Congress Immigration laws should be _implemented_ by the executive (the president and federal agencies) using federal _policies_

This rule was an attempt to make a new law just by implementing a policy, so the new administration can easily rescind it. Whereas say, Obamacare was a law, so can only be overturned by another successful vote in Congress, which is a lot harder.

I support the idea of this policy to encourage skilled immigration, but it should actually be passed by Congress.

<comment><USER3> It's also particularly weird that Obama enacted it 2 days before he left office. Presumably it didn't take 8 years for him to decide it was a good idea, maybe he was holding out hope on passing it through Congress the real way, but he wasn't shy about setting policy via EO before, i.e. DACA. The only real motivation I can see for doing something 2 days before you leave office that's easily undone by the next guy is that it forces the next guy to actually undo it, which might make him look bad.

<comment><AUTHOR> The rule was announced in August 2016 with an initial comment period and no apparent rush. They were probably expecting that a Clinton administration would implement it at their own pace during 2017.

After the election the rule was seemingly fast-tracked, perhaps in the hope that the Trump administration would have bigger fish to fry.

</comment></comment></comment><comment><USER4> I love the startup eco-system of the US, and as someone fluent in English, and entrepreneurial, I would love to emigrate to the US with my startup -- but goddamit is it getting harder every single day.

</comment><comment><USER5> The main thing that strikes me is that the assumption if we do not allow these so called "entrepreneurs" in then we would have lost out on the "half" of >$1B companies founded by them. Sometimes opportunities are ripe and if one entrepreneur doesnt pick it, another will. That entrepreneur could be current legal resident of the US, rather than a foreign one.

I personally prefer more open borders, but the fallacy in the article also bothers me.

<comment><USER3> Another thing the article doesn't mention at all: if it is true that by not letting these entrepreneurs in we're missing out on half of >$1B companies then we should expect some of the countries these entrepreneurs are leaving to be the sites of these companies instead. I suspect we'll see a mix of both, some companies will be founded by a different founder with a different visa status, some will be founded by the same founder, but in a different place. Neither of these is necessarily a bad thing, granted the US might be missing out on some good founders, and thus some good jobs and some tax revenue. So from a purely "America First" we're missing out... but our government does many ostensibly benevolent things to help other countries, many of them, it's very dubious whether or not they actually help. But not brain draining everyone's entrepreneurs might actually be some effective benevolence. It's ironic that it comes from an administration whose slogan is "America First."

<comment><USER6> I've thought this as well.

Pro-immigration policies are essentially _stealing_ the best and brightest from all corners of the world and moving them here.

Why? In many cases they would be dramatically more effective in their country of origin. Take IIT in India, which is India's version of Harvard. Over 50% of those students go abroad a year after graduating. How can that be good for India?

<comment><USER7> Maybe it's not good for India, but most likely it's good for those graduates. I doubt any of them is kidnapped, most certainly they emmigrate on their own volition. Pursuit of happiness is a thing ...

</comment></comment></comment></comment><comment><USER8> the article seems to assume that there is no possible alternative for fostering entrepreneurialism and new company formation in the US, that once this source of entrepreneurs is taken away from the overall pool, there can be no other way to augment it

</comment><comment><USER9> Absolutely no idea why Stephen Miller and others in the Trump Whitehouse are preoccupied with stifling all forms of immigration into the United States.

If your main argument is that immigration is bringing crime (it isn't) and flooding the market with low skill labor (which... is consistent with our history) I don't see how you can go after a niche like this, which is both low volume and high skill and actually creates middle-class jobs for Americans.

Is there a sentiment that native-born entrepreneurs are losing out on VC cash due to immigration?

<comment><USER10> They're racists in the most literal sense.

[https://www.washingtonpost.com/politics/how-bannon- flattered...](https://www.washingtonpost.com/politics/how-bannon-flattered- and-coaxed-trump-on-policies-key-to-the-alt- right/2016/11/15/53c66362-ab69-11e6-a31b-4b6397e625d0_story.html?utm_term=.718f0968b170) "When two-thirds or three-quarters of the CEOs in Silicon Valley are from South Asia or from Asia, I think . . . " Bannon said, not finishing the sentence. "A country is more than an economy. We're a civic society."

<comment><USER11> That quote pretty much sums it up. Under Obama democrats abandoned their stance on individual freedom and instead turned to extreme leftism. Conservatives as a response abandoned their fiscal and economic conservatism and instead turned to identity politics of old white people. American society is deeply divided at the moment and Indians and Chinese immigrants and the collateral damage.

<comment><AUTHOR> _> Under Obama democrats abandoned their stance on individual freedom and instead turned to extreme leftism_

If the United States in 2016 represented extreme leftism, what do you call e.g. Mao's China in 1968?

<comment><USER12> Given the attitudes of the current GOP, George W. Bush would not have even made the ticket and Reagan would be considered a Hollywood elite leftist.

Fortunately this cancer is so exceptionally aggressive that it will kill the host very quickly.

<comment><USER13> I agree with your first sentence and think your second sentence is incredibly optimistic. There are extremely few GOP candidates running in 2018 midterms who have explicitly run away from Trump - the incumbents that were outspoken against Trump decided not to run again or cannot run again.

<comment><USER12> When the oldest two generations die off, the center-left will become the right, and the left will become the moderate-left.

</comment></comment></comment></comment></comment></comment></comment><comment><USER11> As an Indian person on H1B I welcome this move. This was a loophole for rich and corrupt in India used to buy their way into American citizenship. Around 500K Indians are waiting for decades to get their green card. It would be much better to flush the queue and offer them green-cards so they could start their business in USA.

<comment><USER14> You're probably thinking of the EB-5 greencard which is completely different from this.

[1] EB-5: [https://www.uscis.gov/working-united-states/permanent- worker...](https://www.uscis.gov/working-united-states/permanent- workers/employment-based-immigration-fifth-preference-eb-5/about-eb-5-visa- classification)

</comment></comment><comment><USER15> Rich entrepreneurs hire fancy immigration attorneys and go to the front of the line well before 5 years. Impact to well funded entrepreneurs will be minimal and those it does effect will take up residence in Toronto/Vancoover/MexicoCity.</comment>


Against Productivity - <AUTHOR> https://medium.com/message/against-productivity-b19f56b67da6

<comment><USER2> This essay has a lot of good points but seems to be unwilling to bring up the elephants in the room:

Do we need to be productive? If not, should we aim to be productive? What should we do with those who are unable, or choose not to be productive? (Ignoring, of course, the issue of how we quantify productivity...)

Are we not socially useful merely by existing? Is a smile between me and a stranger worthless, merely because it's not 'productive'?</comment>


Amiga Engineer Dave Needle has died - <AUTHOR> http://www.amiga.org/forums/showthread.php?t=70521 <comment><USER2> Comments moved to [https://news.ycombinator.com/item?id=11144665](https://news.ycombinator.com/item?id=11144665).</comment>


Samsung will go 64 bit - what about Android? - <AUTHOR> http://www.theguardian.com/technology/2013/sep/12/samsung-apple-64-bit-smartphone

<comment><USER2> _...experts puzzle over benefit of 64-bit functions_

Let's try to enumerate whatever we can think of:

The most commonly mentioned one is addressing 4GB of memory and larger, which doesn't apply to the 5S. (It's my understanding that it only contains 2GB). So that one is rightfully dismissed. Well, other than that you get more benefit from ASLR (Address Space Layout Randomization) with a 64bit virtual address space. Still not a headline-feature, though.

It's also commonly mentioned that AArch64 defines twice as many general purpose registers, each twice as large. AArch64 also defines twice as many FP registers – again, each twice as large – available to the SIMD unit. The camera in the 5S does a lot of image processing in order to try to take the best one-button picture possible, and there is probably a lot of opportunity for SIMD code behind that. So that might be a big win that is directly tied to user experience.

Also mentioned, but less frequently, is the kind of optimizations a programming language runtime implementor can do when 64bits are available. For example: _Apple has apparently taken advantage of the 64-bit runtime in Lion by optimizing the Objective C runtime itself to use some of these extra bits for, shall we say, clever purposes. Bavarious describes an optimization through which Apple is able to replace previously full-fledged opaque objects such as NSNumber with an object-placeholder that exists entirely as the 64-bit "object address" itself. This means that, for a wide range of "simple" objects, no additional memory allocation is required, and no retain /release memory management is required for the "object."_

[http://www.red-sweater.com/blog/1947/bit-hacking](http://www.red- sweater.com/blog/1947/bit-hacking)

(I assume a future version of Dalvik could take advantage of similar tricks.)

AArch64 also adds cryptography instructions for AES and SHA-1/SHA-256. This is probably the least impressive performance benefit I've seen mentioned.

Am I missing anything?</comment>


Ask HN: Where are the 'good' conversations happening about Covid-19? - <AUTHOR> Where online are there productive & intelligent conversations happening about 2019 Novel Coronavirus (COVID-19)?
I have found myself digging through HN comments for some of the smarter commentary on the topic. Is this my best bet right now?
I'm having a hard time talking in-depth among my network of friends/family/colleagues since there are so many potentially polarizing topics, misinformation. I'm looking for places where people are talking about fact/knowledge/data-driven opinions and conclusions on all of this...
There's obviously so many questions, and unknowns, but can we collect links to places where good conversations about 'all of this' are happening so we can all dive in and learn and start forming some evidence-based opinions? <comment><USER2> I'm looking daily at [https://www.reddit.com/r/COVID19/](https://www.reddit.com/r/COVID19/) \- it's well moderated and current papers and preprints are discussed. There are also often detailled comments explaining why a certain paper might be wrong or interesting. My take-away from reading there for a while is that it's complicated and reading publications and pre-prints is is an art that should not be taken lightly.

</comment><comment><USER3> There is a lot of discussion concerning COVID-19 over at LessWrong that might fit your bill: [https://www.lesswrong.com/tag/coronavirus](https://www.lesswrong.com/tag/coronavirus)

<comment><AUTHOR> Cool site! new to me. Gonna check it out. Thanks

</comment></comment><comment><USER4> I'm liking the live casts from Bret and Heath over at:

[https://www.youtube.com/channel/UCi5N_uAqApEUIlg32QzkPlg](https://www.youtube.com/channel/UCi5N_uAqApEUIlg32QzkPlg)

</comment><comment><USER5> This Week in Virology: [https://www.microbe.tv/twiv/](https://www.microbe.tv/twiv/)

</comment><comment><USER6> My experience over the last couple of days is: not here on HN.

The amount of misinformation and/or blatant disregard for human lives I've seen on this site is staggering. Maybe it comes from most people here not being at-risk, but I am still very disappointed.

</comment><comment><USER7> /r/covid19 and on twitter</comment>


A green threading library with true concurrency for Python - <AUTHOR> https://github.com/mmirman/conpig <comment><USER2> I don't really get what advantage this gives me beyond using gevent. There's still no parallelism. The readme describes it as "A solution to concurrency," but I already get that using gevent. Is it just to improve communication between green threads?

<comment><USER3> It appears to add some amount of Python-bytecode level preemption to gevent, which allows you to hopefully avoid some of the pathological cases of cooperative scheduling. Said pathological cases are only a matter of scale... if your program becomes large enough, you _will_ hit them, eventually.

That said, with no offense intended to mirman, I'd really hesitate before using this for anything serious enough to reach that scale in the first place. Gevent, frankly, visibly pushes Python to the limits (and occasionally a bit beyond), trying to also tack on some preemption on an environment not fundamentally expecting it would scare me another notch.

<comment><USER4> what are the pathological cases one runs into with gevent?

<comment><USER3> With a cooperative scheduler, you _will_ , sooner or later, experience some form of starvation. The most obvious is the process that just infinitely loops, but less obvious situations will end up popping up too; calls that you thought were handled by the event loop but turn out to be blocking and add up when you start calling them at scale, strange behavior when you have a set of processes that turn out to yield far less often than you thought and the system starts behaving with much higher latency than it should if you get too many of them, and all kinds of such manifestations. There's also the inability to create things that watch other things; if something does go spinning off into infinity, nothing else gets to run to kill it.

You can hack around many of them, but you eventually hit a wall, and the effort of the hack increases rapidly.

Note I didn't really use gevent in this reply, this is just about cooperative scheduling. There's a reason why we've all but completely abandoned it at the OS level for things we'd call "computers" (as opposed to "embedded systems" or "microcontrollers", etc). I tend to consider cooperative scheduling an enormous red flag in any system that uses it... and yes, that completely and fully includes the currently-popular runtimes that use it.

<comment><USER5> It sounds like this sort of problem comes from using a cooperative scheduler to implement concurrency of arbitrary routines rather than control flow. I haven't been in a situation in which it would even be possible for something to yield less often than I expect, because I expect it to run until it yields. Similarly I don't often find that subroutines return too infrequently because I expect them to run until they return.

This library is probably nice for the places I would otherwise use threads.

<comment><USER3> You _will_ eventually, at scale, be wrong about that. To have full and correct knowledge of exactly how long your code takes to run sufficient to do this sort of scheduling correctly, by hand, in advance of running it, is basically equivalent to claiming that you never need to profile code because you already know exactly how long it takes. And it is well known and established to my satisfaction that even absolute, total experts in a field will still often be surprised about what actually comes out of a profiler, even in code strictly in their domains. You may well be right _most_ of the time... but that is all you can hope for.

<comment><USER5> If it takes more than 16.67ms to run a frame's worth of update-and-draw, then it does, and replacing "wake up every in-game entity that asked to wake up this frame" with "let a preemptive scheduler manage ~10,000 threads that want to wake up, do almost nothing, and then sleep for k frames, while some master thread waits on a latch until they're all done" seems unlikely to make it any faster. If the logic my server must perform to handle a request is expensive, then it is, and replacing an event loop with a single-threaded preemptive scheduler will not increase throughput.

I'm not sure why it is difficult to do this sort of thing correctly. The scheduler does next to nothing in the "server with connections managed in coroutines" case and probably makes matters worse in the "storing game state in execution states" case. It could have a positive impact in the server application if one routine is secretly going to crash or run forever, in the sense that the other routines will continue running while the problematic feature is fenced off or fixed.

</comment></comment></comment></comment></comment></comment></comment><comment><USER6> Since this is a very new project, it is a good time to suggest that you abide by PEP8 (e.g., no 'waitAll') since this would be widely appreciated, and is not easy to fix later on.

<comment><USER7> waitAll gone. Before I put it in any package managers it will get style guided. This is currently on version -1.0.0.

<comment><USER8> > version -1.0.0.

Version negative one? I don't think I've ever seen that before. Usually, the very earliest versions of software are numbered like 0.0.1 or something like that.

<comment><USER7> \- here actually negates the ordering of the numbers in the list. -1.0.0 === 0.0.1.

<comment><USER8> > \- here actually negates the ordering of the numbers in the list. -1.0.0 === > 0.0.1.

Well, I've certainly never seen that before.

<comment><USER9> It should be written 0.0.1[::-1]

</comment></comment></comment></comment></comment></comment><comment><USER10> > Conpig threads still can only run on one core of a processor.

The disillusionment caused by having so many options for non-parallel "concurrency" in Python is, I believe, feeding the high defection rate from Python to Go.

<comment><USER7> The lack of options for parallel (and non-parallel) concurrency is, along with other things, feeding the high defection rate to many other languages.

<comment><USER6> We've had processes, threads and greenlets for a while now... if anything the problem isn't that there are no options, but too many options that require understanding to choose and apply.

Many of the people complaining about this issue don't have a demonstrated problem and could try any simple approach first (if the point is not just to slam Python in favor of something else, from the beginning).

<comment><USER11> This type of response is why I gave up on Python entirely. Not to pile on you pekk, it isn't your fault, but it is a tone... defensive apologist... "first of all there is no problem, and if there was a problem... it is that Python is too awesome"

As someone who has had to ship stuff using multiprocess & gevent to actually meet real world scaling needs -- and integrating them with C code and communicating to a C++ application via ZMQ (inprocess by sharing the object) ... the sad fact is once we started to tackle really hard problems in Python that aren't pre-solved via a nice library all those early advantages fell away and we craved the blessed simplicity of C++ (note: sarcasm, C++ isn't simple, but it was far simpler than the Frankenstein's monster we built).

</comment></comment></comment></comment><comment><USER12> The resounding question in my mind is why this, when there is Stackless Python? What's better about this greenthreading impl? [http://www.stackless.com/](http://www.stackless.com/)

<comment><USER7> This is a library that can be used to supplement any implementation.

If I'd had the option to switch us to stackless easily, and I could guarantee it was as fast, worked with all the libraries, and was as stable, I probably wouldn't have written this. I imagine that there are a lot of people in the same boat, where switching interpreters isn't really an option.

</comment></comment><comment><USER13> > Conpig threads still can only run on one core of a processor.

This isn't true concurrency. Scaling to 20 million requests per second over 40 cores on a single machine is true concurrency.

<comment><USER14> Single-core concurrency is concurrency is concurrency (you have different computations occurring concurrently, even if they are not executing at the same time). What it's not is parallelism.

<comment><USER15> Concurrent means at the same time. You can't have things happening concurrently but not at the same time.

<comment><USER16> This may help explain the difference: [http://blog.golang.org/concurrency-is- not-parallelism](http://blog.golang.org/concurrency-is-not-parallelism)

<comment><USER15> Should I have thrown a literally in there? Literally Concurrent means at the same time. Parallel literally means non intersecting. I understand some dumbass has\is trying to co opt the language it doesn't mean I have to like it.

If one of them should mean one thing and the other the other why not have the one that literally means at the same time for the term that means at the same time. And have the one that means non intersecting mean threads of execution that are beside each other but not touching without lots of pain and suffering. Sorry, rant bit off.

<comment><USER14> > I understand some dumbass has\is trying to co opt the language it doesn't > mean I have to like it.

That's called a lingo or a jargon (in this case, programmer lingo), and it involves making up words or having a different definition for a given word in the correct context.

</comment></comment></comment></comment></comment></comment><comment><USER17> Where's the library? I see about 50 lines of code that don't go far beyond a hello world of Gevent and some strangely written nose tests.</comment>


Ask HN: Good book to learn about data structures, algorithms, Big O notation? - <AUTHOR> Hey HNers, any good book or material to learn about data structures, algorithms, big O notation, trade offs and etc?<p>I haven't used much of that since university but I've learned all of it in some point in the past, however I would like to get back into shape on these subjects <comment><USER2> 1\. CLRS (Cormen, Leisersen, Rivest, Stein) and KT (Kleinberg-Tardos) are the two main textbooks used in most alg courses.

2\. You can see my course slides/videos here: [https://www.cs.virginia.edu/~shelat/16s-4102/](https://www.cs.virginia.edu/~shelat/16s-4102/)

3\. And Jeff Erickson's notes are fantastic! [http://jeffe.cs.illinois.edu/teaching/algorithms/](http://jeffe.cs.illinois.edu/teaching/algorithms/)

</comment><comment><USER3> Algorithms [1] by Robert Sedgewick is particularly well written.

Also, this one [2] is quite good and concise. I believe better suited for someone who is not unfamiliar with classic algorithms (like you).

[1] [http://algs4.cs.princeton.edu/home/](http://algs4.cs.princeton.edu/home/)

[2] [http://www.amazon.com/Algorithms-Sanjoy- Dasgupta/dp/00735234...](http://www.amazon.com/Algorithms-Sanjoy- Dasgupta/dp/0073523402)

</comment><comment><USER4> Cormen.</comment>


Are car manufacturers about to receive a devastating blow from a new invention? - <AUTHOR> http://www3.telus.net/gaye_s/Are%20Car%20Manufacturers%20about%20to%20receive%20a%20devastating%20blow%20from%20a%20new%20invention.pdf

<comment><USER2> It's a big PDF, and a terrible article that doesn't describe an "invention". No PDF warning, and it's not a scribd either (it's not wrapped in a reader to prevent a massive download).</comment>