skysight-inc/HackerNews huggingface dataset:
The hell do exoplanets have to do with anything in this thread? Half your "points" are just stream-of-consciousness Scientific American covers. Blah blah, exciting times, whatever. Irrelevant.

The other half, your societal analyses, are 50 years out of date. Climate change, space yearning, AI fear - you'll find it all in 60s and 70s sci fi.

None of which even remotely addresses the "planet of Eloi" assertion. You may as well have just pasted the lyrics to "We Didn't Start The Fire".
LLCs pass losses and gains through to their "members" (the equivalent of a C Corp's shareholders). While this can be tax advantageous to closely held firms, it creates significant complexity for professional investors. As a result, professional investors typically insist companies they invest in be C Corporations.

As for Delaware, there's the most legal precedent on corporate law in the state making its rules the most predictable. Uncertainty increases risk and, therefore, decreases investors' interest.

There are lots of things you should be innovative on when starting a company, corporate structure is almost never one of them. If you're starting a business and think you may raise money from professional investors, incorporate as a C Corp in Delaware.
I don't think job hopping is as big a deal in software as it is for other industries - a new job every 2 years seems typical for many, but less than a year wouldn't get looked down upon, especially if you cite a "toxic environment" as the reason you quit. 6 jobs in a year (that aren't contracts) would be a red flag, but one or two isn't really a problem IMO. Demand is too high.
To paraphrase in a marxist kind of way, I am pretty sure the delta between "to everybody according to their need, from everyone according to their ability" has never been greater. This may be kind of off topic, but while SV likes to talk about being a meritocracy, and corporate earnings and productivity for each engineer working here are staggering, the reality is that the tools SV is creating are not helping things enough. While FB and Google and Uber might be solving some interesting problems, I would tend to say that there are a lot of very talented people here whose talents could be better spent. While engineering is great, what about running for public office? It is clear those roles are not attracting the kind of people we actually want in them.

I see that as a symptom of how futile most public office has become. Maybe term-limits would help, maybe other things would. If we want to fix the problem though, I think the answer starts with the candidates, not just trying to re-engineer a system to persist in spite of all apparent efforts to subvert it. I guess we can all watch, though.

//kind of off topic, but I felt like this was the place to say it.
You know, in the 90s, Microsoft was considered to be a deeply unethical company. Would anyone now consider Microsoft on someone's resume to be a black mark?
From the point a spammer is identify until their interaction with the system becomes a burden to deal with, it's better to not let them know it's known they a spammer. Craigslist does this by "ghosting" postings that's flagged as spam; that is the spammer sees the posting as live, maybe even gets an automated reply to see how/if they respond, but the general public does not see the posting.
You can do some freelance or personal stuff too and then when you leave you only so your personal projects during your time at uber, if it is really better. Otherwise you can stay for a little longer and do a good harvest now that everybody is leaving.
The "consequences on some processors" simply means that a conforming java compiler/VM may need to insert memory barriers to enforce the memory model for constructors, resulting in a performance penalty. A conforming compiler or VM cannot generate code that would allow processor re-orderings to break the memory model.
Not really. Shouting your income bracket would be info in a form everyone is attuned to (dollar amounts), whereas I don't think most people cross reference zip code to avg income on the fly, even if they might roughly know it. Only people sensitive to it might, like real estate brokers and cops. Even if the odd professional criminal might think of this tactic, jacking rich people in the parking lots of hardware stores seems unlikely to be worth the risk.

All of which is to say, I think you're being paranoid and unwarrantedly suspicious of strangers just because you're in the "bad part of town".
The broken promise of Web Components
Show HN: Go-Alone, a simple to use, high performance, Go MAC signer package
... and the external contractor who you're pushing all that risk on will charge you appropriately.
"Godwin"-ing is comparing your opponents in an internet argument to Hitler/Nazis, not relying on their historical example as an existence proof for how terribly our cognitive gaps can be exploited.
Adobe's AI-driven approach could end the age of ‘green screen’ in movies and VR
I've job hopped quite a bit (7 times in 6 years). There's plenty of valid reasons to leave a job, most of my moves have been due to skill stagnation at a certain company. Also, increases in salary is ridiculous when switching. If you stay at a single job you run the risk of stagnating your salary as well.

If you can articulate to the company your reasoning behind switching jobs, and why you're genuinely interested in the company and the value you bring, I believe you'll be alright.

Has yet to bite me in the ass (Chicago) and the experience you gain between companies (small-large, workflows/methodologies, stacks, etc) is priceless.
Uber Navigation
I agree with you very strongly, but I want to reframe it a bit: the fact that there is no "true self" and "we are in control of who we are" is basically the modern condition, and the 'be yourself' mantra is one attempt at an answer to this.
Yes. Sales is easy to staff up but technology is very hard to build. Google is going in the right order and can easily hire the enterprise handlers it needs to close large contracts.
"Science only considers something to be "fact" or "true" when a large (and usually expensive) study has been conducted, the results have been peer reviewed, and the results are then published."

If it hasn't or can't be replicated by and independent entity it's not good science. Peer-reviewed is simply not a high enough bar to consider something fact.
> Assignment is not an expression. We've written 20K of production Kotlin code without this ever being a useful convention. Assignment being an expresssion is layover from the C family of languages. If you really want C's syntax and semantics, go write C.

Python doesn't treat assignment as an expression. E.g. I can't do:

if a = 1:
pass

or

def c():
return a = 1

or:

a = lambda c: c.x = 1

But I can still do:

a = b = c = 2

to set multiple variables at the same time.
The post describes that the client ensured only files with specific mimetypes could be uploaded. However, patching the client allowed files to be uploaded while that shouldn't have been allowed. Most likely they mean the whatsapp server now also checks the mimetype of uploaded files, rejecting those that aren't ok.
F# version that fits in a tweet:

let r,n=Random(),1e7
let d()=(r.NextDouble()-0.5)**2.0
[0.0..n]
|>Seq.sumBy(function _ when d()+d()<0.25->4.0/n|_->0.0)
|>printfn "%f"
Then maybe remove and replace the special characters?
Job hoping is nowhere near as bad a signal in tech as it is in other industries. I would even go so far to say that some job hoping is expected as long as you don't go overboard.

If you stayed at one job for less than a year, nobody will notice or care. If you stay for 6 months at three consecutive jobs, then you might get a question about that.
Couldn't find anything in the literature - they probably don't, or perhaps it's such an obvious requirement that it's not even mentioned. Given that driving culture and etiquette are very different in every country, I'd guess a system trained for US roads, traffic rules and social behaviors does not generalize as well for Russian or Chinese or any other country's roads.
Subtly anti-ag: one-sided articles in liberal news outlets about the dangers and social injustices associated with ag tech like GMOs, and books like The Omnivore's Dilemma. Purporting to be unbiased but might not be.

Blatantly pro-ag: research funded by agribusiness or the USDA. Clearly intended to benefit the industry.
Did Microsoft have a reputation for sexual harassment and toxic managers? I don't know much about Microsoft in the 90s.
Oh yeah, on this particular news story, it's definitely about Monsanto. Any sort of tampering with a regulatory body is a real black mark on them.

When I say "Monsanto is a red herring", I mean that 90% of the time when people vilify Monsanto, they don't actually care about Monsanto. They're playing a shell game, "Monsanto is evil, therefore we should ban all GMO food crops." Hell, they barely care about glyphosate - they just don't like Roundup-Ready crops, because they're GMO.

Realistically, Monsanto is a large (but not one of the largest) corporations, and some people who work there are trying to save the world, and some people who work there are trying to make all the money by any means necessary, and most of the people are somewhere in between, just working at a job. They've definitely done some things wrong, but they're no Uber.
No, unless you want too. I know a ton of non sv companies on the east coast starved for any talent.
Interesting. There are alternatives to consider, though.

If you want this feature set, YAML is a reasonable alternative.

If you just want to add support for comments, trailing commas, and a few other things, JSON 5 is an alternative: http://json5.org/

If you're processing lots of S-expressions (e.g., Lisp code or data), the readable Lisp notations (including sweet-expressions) might be of use: http://readable.sourceforge.net/
Scala's "lazy val" is using the double-checked locking pattern and I've never experienced problems with it (except for synchronizing on "this", but that's another issue).

In the example you're mentioning if "Thing" is built with finals or if it is synchronized, then it can't have problems.

And given that "Thing" in this sample is meant to be accessed by multiple threads, then if that access isn't synchronized, then the double-checked pattern is not going to be your only problem ;-)
This is only if you use the web client? The article almost goes out of its way to implicate mobile clients, but my understanding is they're not affected?
EDN does all this, and looses the commas too (winning!).
I find it easier to hang out under cars with a few syringes of infected blood and inject it into the ankles of passersby. Especially at malls.
I'm not sure how "tongue in cheek" this article was supposed to be, but most of his issues with the problem can be solved by buying into the language.

For:

Not sure what he's upset about, but there are many options in the standard library. I almost never use the language construct for it, and I'm very happy with it.

Nullable:

I never expected nullable to completely save me from all issues. It has the same function as the @Nullable and @NotNull annotations (and all the other variants). It gives you a simpler way to reason about nullability, and forces you to respond to it; you can't just ignore it.

Smart cast on mutable

I get that this sucks, but they can't show it to happen. Yes, the chances are small, but there could be concurrency issues. They have to account for that, and can't tell if your code is multi threaded or not.

Most of the time his issue can be solved with scoping, using ?.let or ?.apply

Java Nullability

What do you want from them? They have no ability whatsoever to control this. Either get annotations in the Java code if you can modify it (which is a good idea anyways), or wrap it and provide nullability information.

Assignment is not an expression

He got it. It's too protect against if(v=v). I know he makes a joke about automatic type casting, but if you're not assigning the result to anything, the logic in the if will still fail.

Elvis operator

I assume they removed Javas ternary operator to not get confused with the Elvis operator. ¯\_(ツ)_/¯ I kind of agree with him here unless I'm missing something

Automatic type casting

Frustrating, but safe

Type alias

I'm fine with it for simple cases, didn't want to parse his problem.

Generics

I hear his gripe, but at the end of the day Kotlin generics are Java generics. If there are some potential bugs in the compiler, report them and move on.

Structure syntax

I assume he means list and map literals. I agree it would be nice. Not sure why they didn't include it.
What did you struggle with in Scala? Anything you could write in Kotlin you can write in Scala with the same structure. Scala has some extra constructs that can save you a lot of code a lot of the time, but you don't have to use them if you don't want to. There are horribly incomprehensible libraries available in Scala and there aren't any for Kotlin yet, but I think that's just a function of the fact that Kotlin's so much less mature all-round, and again you don't have to use them.
> Assignment is not an expression. We've written 20K of production Kotlin code without this ever being a useful convention.

Out of curiosity, what is the idiomatic way of writing an input loop? The C/Java way would be something like

int bytesRead = 0;
while ((bytesRead = in.read(buf)) != -1) { // ...

> The ?: operator is great when chaining a bunch of operations all of which could return a null which we want to convert to a default. Here is an example: claimData?.claimTimeMinutes?.toLong() ?: 5L

I think the author is referring to the ternary operator, not the elvis operator.
>My brain requires time to focus inward to formulate complex thoughts, and interrupting any time I pause narrating doesn't give me that time to think.

So basically what you are saying is that you are some kind of snowflake that requires it's own room to concentrate and be productive and you can't even think while doodling on a whiteboard.

In my books that counts against you, that doesn't mean you are straight out, but it definitely makes you a liability to some degree.
I'm a member of a Gitter for a smart mirror project. It's been a fun way to connect with other fans of the project and the maintainers. Feels like a smart move.
When to push forward and when to try something else
In very basic terms it means that some level of sophisticated file type and content-type verification will be performed in a manner that is theoretically secure. For example, Whatsapp shouldn't have allowed HTML to be uploaded if it's disguised as an image thumbnail. That's pulling a page right out of 2002.

This is very easy to do 80% of the way, and difficult to do with the remaining 20%. The last mile of file validation is extremely fickle because it requires an understanding of what the uploading library is doing under the hood. You can minimize your risk by carefully choosing files to accept, understanding how they're parsed by your libraries and correctly disallowing everything else.

Practically speaking, you should at a minimum:

1. Whitelist acceptable file types,

2. Perform server-side, not client-side validation,

3. Validate the file types not only by extension, but by contents,

4. Disallow filenames from being set by user input, and ideally hash them before presenting them back,

5. Store the files on a separate host/CDN,

6. Only allow the uploader to retrieve files uploaded by the user, and not from local or remote resources. If you must allow local directories, maintain strict permissions, and do not allow loopback resources.

That's a great start. To go further, you should investigate which library to use carefully and consider how legitimate files you are choosing to whitelist can still be dangerous. For example, you can trigger an XSS with a valid SVG. You can attack system memory with fraudulent JPG sizes. You can trigger server-side request forgery by uploading 127.0.0.1, etc.
My read was references to JavaScript (largely a codeword for web development, even if it can now be used in a larger context), and repeated references to building a product (which in context seemed to imply working directly on shipping code).

The argument for designers learning web programming skills is more explictly made elsewhere, and I am picking up enough hints of the same here.

In the end "you will need to code to do your job" is just not as hot of a statement, because this is broadly true in any industry.
I vantaggi dell’olio alla menta piperita
Spoiler alert: Gust is not your lawyer, don't take legal advice from them.
First, I doubt that the WAP was passed through a sufficiently democratic process as we understand it now.

Second, I don't accept any non-democratic policy passed by any supposedly democratic system as democratic. No matter the majority it has been enacted by. For me, discrimination by race is by itself against the values necessary for sustained democracy, and as such, not subject to majority approval.
I've never heard of a company not hiring a qualified developer because their former employer is "unpopular". Job hopping from company to company based on popularity just seems like a bad career move.

It sounds like you're happy with the work environment, which is not something that should be taken for granted. Stay on board and continue to put in your best effort.
This is not true. It's very easy to convert from LLC to C corp but not vice versa. As a general rule it's easy to go from flow-thru entities to tax paying entities but not vice versa. This asymmetry of irreversibility, combined with the fact that most startup exits are asset, not stock, sales, makes the thesis of your post incorrect.
No, Microsoft has generally (I'm sure at the size they are they have had some issues) never had major problems like that.

Their reputation was more around 3E's (Embrace, Extend, Extinguish), they didn't play well with others (intentionally).
Anyone starting a business should consult an attorney and an accounting firm, discuss your business, discuss your short and long term goals (are you planning to run the business forever, with partners, or sell it as soon as possible?)

They will help you determine the best solution for incorporation.

There is no cookie-cutter answer to incorporation and anyone that pushes one is probably selling you something and most likely not an attorney or accountant.
This seems like a good match.

I've been helping some early coders in the FreeCodeCamp Gitter and have been impressed with the quality of the app for a company with little capital. They have done a lot with short resources.

It would be better in my opinion for small Slack communities to transition to Gitter since Slack has said they do not plan to support large scale free communities in the long term.

edit; typo
Can mods fix the link please, it's currently 404.
From the article, it just shows that emails had suggested academics edit and sign their name to documents written by Monsanto. It appears that everyone involved claims they never actually carried through with this.

Anyone else see evidence that they actually did it? It wouldn't surprise me if they did. I'm genuinely curious.
Looks like the Gitlab v. Github battle rages on.
Yes and probably still has them.
http://www.businessinsider.com/microsoft-is-filled-with-abus...

The key thing to remember is most people at uber and microsoft are decent people.
"Vegetarian cheese". That's cute.

Sure, baby cows aren't being (literally) gutted for the lining of their stomachs, but that's hardly the extent of the misery we inflict upon dairy animals.

EDIT: not directed at you. Just entertained at the semantic hoops people will set up and then jump through.
When I did it, I was told in short by legal that "at this point it is a red flag if you don't do it."

The original reasons may have been tax based or precedent based, but at this point it is also because that's the default that VC is used to
Honestly, I'm not sure that sexual harassment was a black mark on many companies in the 90's. The culture was different and (sadly) it just wasn't as big of a deal that it was happening. We've come a long way since then.
This could bring new meaning to the concept of the "man in the middle attack"
Passion, Determination, and Urgency
I wrote up some explanations for what popular JavaScript frameworks will give you
That would be amazing, I had an old geocities site that unfortunately hasn't been archived by any of the new geocities archive sites.
If your own work environment is a good one, then why would you leave? Don't worry so much about reputation.
Malbolge – The programming languge from Hell
Are Your Development Tools Making You More Efficient?
> RoundUp Ready has been off patent for MANY years

No, it hasn't . The 1st Gen RoundUp Ready soybean trait patent expired in 2015 (two is not "many"), and most commercial volume has moved to product using the still-under-patent RoundUp Ready 2 Yield trait (such as RoundUp Ready 2 Xtend seeds, which also have another herbicide resistance trait.)
Not even the people in their HR department or sr leadership team?
Nobody cares what SJWs think about companies when you're being interviewed.
Hey Denis,

Great to hear. I'll throw something together and send it your way.

Thanks!
"Next piece of wow: we will be open sourcing all of the Gitter"

The Gitlab folks really know how to do it. It is of course the rational approach to it, but still, that's a bold move.
I love text based content, too. Maybe this is a chance to return to using the terminal by default (I learned about the Bloomberg terminal recently; I guess people still use text-based interfaces a lot).

I like the idea of using a different tech stack, though it would have to be very simple to keep up with (and surpass) current levels of innovation. Hence, the terminal?

> my memory of the early net was that most 'regular' people kind of saw it as a toy
I think you're a few years ahead of me, then. I don't remember much of that time. But the difference might be (and I hope not) that the general web was a much more unique tool back then, and people knew about it from sheer novelty. I think the chicken/egg problem of users is harder to solve in this case. Not saying it can't be done, just saying it has to be solved intentionally and with effort.
Yes, you should, come join other ex-uber folks at Mixmax. Mixmax.com/careers
While I would agree that we are vastly understaffed, we just don't have the resources to pay people to fix everything. We hire lots of extremely talented developers, but like all software projects everything is a tradeoff. We could pay someone to maintain ALSA support, but that would mean other things would not get fixed. Linux users are already a small fraction of the Firefox userbase (despite most Firefox developers using Linux as their main development environment), so how do we justify spending the resources to maintain an alternate audio backend that's only used by a small fraction of our Linux users? It's not very compelling.
The flip side of that is my business partner is an amazing designer but he has no UX/software background and that can be an issue.

Stuff that we'd take for granted in terms of designing to expectations becomes a battle.

"This works better" vs "This won't surprise the user".

I like it though since it does break the box sometimes as well.
The reason is that many of their LPs (e.g. pension funds) are non profits, and they can't have taxable income flow up to them or their Unrelated Business Taxable Income will threaten their nonprofit status. VCs are flow-thru entities so any income hitting them from _their_ investments would hit their LPs. Therefore they can only invest in blocking entities.
Automattic has released their policies under a Creative Commons license: https://github.com/Automattic/legalmattic