skysight-inc/HackerNews huggingface dataset:
As someone who rarely does Android development (but does a little bit here and there) I agree that Android Studio can feel heavy when you're barely using any of the features. And the quantity and depth of menus you almost never use can seem Byzantine.

Conversely, it's also surprisingly easy to just install and run with, though it does take time to download all the components and the first Gradle build can take a while if your machine is older.

The first time I used it I was shocked at how painless it was to get going (I came into it expecting it to be an endless nightmare of configuration and headaches a la Eclipse).

I continue to use it occasionally and without trouble on a more than three year old Inspiron 3000 with only 4 GB of RAM and a cpumark score around 1700. (Of course I'm also not really using the emulator on that machine and just debugging on an actual device.)

I've also almost never used the visual layout editor (after seeing that is existed) just because the layout system reminded me of flexbox and CSS, so I felt comfortable just writing layouts. So maybe it's bad, but I've also never felt like I needed it.

Could it be better? Probably. Is it completely terrible? Not really.
Yea, it seems like if they found the other way, every sizable corporation, or really any sizable group, would host all their data in the Cayman Islandsor wherever, making them more or less immune from US subpoenas. Which would be bad for any attempt to hold them legally accountable (and, relevant to the HN crowd, bad for Tech workers in the US as storage providers move their facilities over-seas).
Exactly. The grandparent comment begs even more terrible questions about this whole enterprise of our species we call science than even the original article.
Fascinating stuff, thanks!
I like this flowchart [0] I got from r/personalfinance. That subreddit is a little different from my taste but this is useful. If you are a typical older Silicon Valley dev (sorry for presuming any part of that), you might not be eligible for a Roth (without some extra work), so be careful. If you didn't contribute to an IRA in 2016, you can still do so.

And like the others said, if you have an employer match, definitely max that part out.

[0] https://i.imgur.com/1rPEkGQ.png
What Happens When Robots Become Role Models
Bitcoin hits 3-year peak, nears record high on U.S. ETF approval
In the case under discussion the government has a warrant.
reminded me of this...

Latency Numbers Every Programmer Should Know

https://gist.github.com/jboner/2841832
Those solutions didn't exist 10 years ago, and it takes ~10 years to get a lot of these projects started.
I get a little choked up every time I watch this.
Let's say a Russian company opens up a chain of coffee shops in the US, has surveillance cameras for theft prevention, keeps various records on its customers etc.

Now the Russian government issues a warrant to demand data from the US subsidiary. Do you think that US jurisdiction should have no say in the matter?

If the Russians compelled their US subsidiary to hand over the data in violation of US law, how long do you think they'd be allowed to operate in the US?

The end result of this US overreach will be trade wars and the further rise of national enclaves of the Internet. I'd argue that that's not in anyone's long term interests, least alone the US's.
Hi HN — founder here, and really pleased to share FOSSA with you!

Over the past year, we’ve been incubating the product at some amazing companies like SolarCity and SmartThings (more announcing soon!) to scale it across cutting-edge engineering teams and get it ready for this moment.

Today, we’re also announcing a $2.2MM seed round led by Bain Capital Ventures with participation from humbling angels including the founders of Salesforce, Skype, YouTube, Cloudera, Tinder and others — read more about it here: https://medium.com/fossa/announcing-fossa-public-beta-fundin...

Excited to hear your feedback on what we’ve built. You may have used a free resource on OSS licensing that we created and maintain: http://tldrlegal.com. We see FOSSA as an attempt to tackle similar problems in a commercial scenario.
I would love to be able to work on my personal projects at work, but I feel I would be less productive because I would rather be working on those than my actual work. I would also be in the mindset of thinking of my personal projects more than real work. Another concern I would have then if my company have a stake in my projects and seeking royalties if anything came of them. I'm curious about this topic though if anyone has more details about it.
Recent versions of Chrome will show a warning if you try to browse to a site that uses a SHA-1 certificate. Mozilla is doing the same thing as of Firefox 51, but they're enabling this gradually to measure impact. Microsoft has an update ready to disable SHA-1 support in their browsers - I think it was delayed a few days ago due to some issues (not sure if they were related to disabling SHA-1).

You can use [1] to test how your browser behaves.

Technically, the sites cannot be said to be vulnerable because of their SHA-1 usage. Rather, continuing issuance of SHA-1 certificates by publicly-trusted CAs increases the risk that someone obtains a certificate that collides with a certificate for a different domain or for a certificate that could be used to sign other certificates for sites the attacker does not own. [2] does a good job of explaining this. The mitigation for this is to use a browser that disables (or warns about) SHA-1 certificates. Publicly-trusted CAs are also not supposed to continue issuing these certificates, but there have been quite a number of cases where they did so anyway - most notably WoSign.

Of course, a site might use SHA-1 for other things behind the scenes. There's really no way to detect that in general.

[1]: https://sha1-2017.badssl.com/

[2]: https://news.ycombinator.com/item?id=13715717
Chrome, Slack, Spotify and Atom, which each bundle their own Chrome. On my computer right now Chrome is using about 1.5 GB of RAM (on Darwin, much of it is compressed). Slack is using 0.75 GB of RAM, Spotify is using another 0.5.

We write very memory-hungry software to make up for our copious amount of RAM.
I don't believe it is, given there are many people who generally don't comment on forums at all. There's no reason to think commenters here are a representative sample.
Reminds me of the hendo Hoverboard startup, which from looking at some of their prototypes i think used the same principle: http://hendohover.com/
I skip past articles and their comments if I know that I will not understand them, e.g. details of a language which I do not know.

Sometimes I will look at articles which are about things I have never heard of just to find out what that is. Sometimes, the article does not sufficiently explain what it is, like when they only tell about the improvements over the previous release. In these cases I try to find what it is from comments.

If an article is tl;dr sometimes I look to the comments to see whether I can get the gist in brief.

For articles within my realm of interest I will usually read the entire article, then the comments.

I usually avoid making comments on articles I have not read unless the comments provide sufficient explanation for me to add my input.

I truly appreciate the intelligence and courtesy of the comments on HN and try to bring the same to it.
This isn't about Eclipse. It's about Android Studio which is based on IntelliJ.
Thanks. I think I will add it to my read list.
Are we talking about bulk requests? The case we seem to be discussing here involves "data associated with three Google accounts held by an individual who resided in the United States."
That's kind of implicit.

If X = Y, it's not an attack, it's the primary purpose of hashing
If they misrepresent their arguements there must be a motive.
Will performance improve across the board, or is the new architecture targeting common patterns believed to be slow, like heavy use of closures & promises, or getting functional calls like map into the same performance range as a for loop?
I think I read briefly somewhere that Microsoft already stores foreign emails in foreign data-centers in order to comply with foreign laws better since they target enterprise customers that have those types of absolute requirements. I guess Google might be having their foreign emails pass through US servers at some point?

I'm sure someone else has more detailed/informed answer.
If I have seen further, it is by standing on the shoulders of giants.

If I knew the giants I stood on, it is by the work of Fossa.
We've banned this account for arson.

This kind of trolling and the flamewar you started are not acceptable on HN, and we've warned you about it before. If you don't want to be banned, you're welcome to email hn@ycombinator.com and give us reason to believe that you'll use the site as intended in the future.

We detached this subthread from https://news.ycombinator.com/item?id=13712596 and marked it off-topic.
Soft sciences actually dont have a greater problem with replication. It is just more publicized, in part because those researchers are actually addressing the problem and making large scale replication attempts.
A characterization that the origin of the problem was Uber paying too much attention to diversity statistics.
Oh yeah, same problem here. The absolute worse is answering questions from border/customs officers. It always feels like I'm being deliberately vague or trying to hide something.
I think the more interesting story regarding disruption is the story about how dominant energy players will no longer be able to influence foreign affairs due to their net exporter status. If you are looking to de-hinge yourself from overbearing geopolitical influences, standalone energy production is incredibly appealing.
That means you're under active investigation and there's already a subpoena or warrant in place.

If you don't want somebody reading your steamy emails or social media postings in the future, you have options... don't create them, delete, or store on physical media in your home.
It hasn't.

You need to remember the fact that already Snowden's revelations have proven that the NSA and other government agencies all have specific budgets for astro turfing activities (manipulating the public opinion by massively participating in online discussions).

And a couple of days ago, there was a nice post on Reddit's front page summing up the situation on Reddit. Reddit is basically completely compromised by whoever has lots of money (government, big industries, etc). Any company can buy astro turfing services nowadays.

So no, you can't trust public online discussion anymore. Not on Reddit and not here. Unless for topics you are absolutely certain that no economic interest is part of the equation.
> I haven't seen anyone say that they prefer Android Studio over XCode or Visusl Studio.

I'll say it, I vastly prefer Android Studio over XCode. And I'm an Android Developer who uses Android Studio every single day.

I do like Visual Studio a lot as well, it has been a nice experience for all of the times I've used it. But I prefer to develop in the languages and environments supported by IntelliJ + Android Studio (Java, Android, Ruby) over Xamarin-based .NET work available in Visual Studio.
It means artists will start making money from the art they've put on DeviantArt instead of it just being a "repository".
You need enough leeway in the first commit though. As this is a collision attack, you need to be able to tweak both commits in order to get their hashes to collide.

The mangling in the first commit is probably going to look mighty-suspicious. You might be able to handle this if you get to mangle e.g. code comments. In any case, you need something similar like PDFs malleability where you can change one document without the change being noticeable.
Maybe not, but these studies get swept up into meta-studies, books, think tanks and special interest groups write policy papers based on that secondary layer, which then become position papers that inform policy makers about Big Decisions. There's a lot at stake when only scientists are aware of the fallacy.
LightUp-React
just <potato> is 19% toxic
if various TV shows to believe - emergency wouldn't come to some areas at all.
Thanks - very good to know. Puts things in relation for me (I'm not deeply invested in climate science)
New Features and Roadmap for the Anchore Open Source Project
It's not uncommon for us to buy rack machines with much more RAM than disk. The disk is almost uninteresting, except that we need a place for an OS to boot from, and some other legacy things.

I suspect I would be fine with much of our datacenter being diskless (and put disk -- ahem, I mean storage -- where it is needed). Local disk is a headache more often than not.
What does that look like in implementation? How do you ensure and measure its effectiveness? What rates of improvement should be acceptable?
There's a great segment in one of Richard Feynman's books where he talks about picking up tricks like this, and ends up beating an abacus salesman in a cube-root-finding race. I think it involved memorizing log tables.
How do you "make a lot of money" in this? Is there some publicly available market that anyone can trade in?
If anything, if we want to take computation more seriously, we should adopt a foundation that accounts for non-terminating computation natively. One defect of MLTT is that, when you add non-terminating computation to it, the mathematical structures you can describe in it get horribly deformed. So MLTT users tend to limit themselves to a world where computation can't be expressed unless you have established beforehand that it will halt. What a sorry state of affairs! (Of course, ZFC is even worse in this regard, at least in MLTT you have a more or less direct relationship between programming and proving.)

Fortunately, I think the solution already exists, although the details might yet have to be polished: take Paul Blain Levy's “call by push value” (which distinguishes between values and computations), and make the dependent type formers (sigma and pi) range over values and only values...
This sounds like a developer who is merely more proficient in XCode than Android Studio.

I find BOTH of them to be much more difficult than I feel like they should be. Many things in each are not intuitive.
Last Week Tonight did a great piece last season about the circular logic the NRA and its supporters employ to prevent a rational gun control discussion. They fight tooth and nail to stop governments from collecting data related to gun deaths than use the lack of good data as the reason why we cant have a gun control debate.
In addition, as any bitcoin miner knows, AMD GPUs are actually far more efficient at calculating hashes.
I always skim through comments first to decide if the article is even worth reading. YMMV.

I browse HN daily and if I see a post that I "think" I can contribute to or is of interest, I open the comments thread first. Then if it seems fit, I read the article unless of course it is an Ask HN which I already read. I upvote it as well.

In some cases, I know I cannot contribute to the post in a meaningful way but I want to see the discussion as it is interesting. In that case, I just upvote and shut up.
I'd be curious to learn more about what you know about this. Could we have a conversation? I'm a professor at WashU can you email me?

timrpeterson@wustl.edu
I write tests using chromedriver. Ends up being really simple to write, and if I want to debug something, it's just a chrome instance that I can use normally if I make the tests wait.

Only downside is you have to make it run with xvfb on the CI server, but that's pretty easy to set up in your config file usually.
Upvoted because FTC is awesome and we need to encourage more people to volunteer. (FLL coach and FTC judge here, at some point those will swap)
Statement from DeviantArt: http://spyed.deviantart.com/journal/DeviantArt-and-Wix-With-...
This is a point which is I think overplayed by HATEOAS fans and under-appreciated by HATEOAS haters; using URLs as IDs makes it easier to evolve the API in many cases, but it doesn't make it completely painless to do so.

If you have an object which links to `/users/1/`, and want to change that URL to `/cool_users/1/`, what's the migration path?

Without HATEOAS, you need to update all your clients' code to now generate the new base URL `/cool_users/`. This means you'll need to version your API, so that old clients can continue to access the old-style endpoints in the transition period. (Note that for a business where your customers are making an API integration, this means you're imposing work on your customers).

With HATEOAS, you just need to update the URLs that are returned in your other endpoints. (Generally there is one well-known entry-point into your API, e.g. you return {"user_list": "/users/", ...} with your login token, for example). Now, assuming your clients were using `api.user_list`, that they received, they will without further modification fetch the `/cool_users/` endpoint, without requiring an update.

The one gotcha is if clients are holding on to the IDs of your API objects between API calls; in that case, you will break any code which expects to find those previously-returned members. But note, the worst-case here is that you need to version your APIs, which was the best-case without HATEOAS. In many cases you can get away with such a change without any client-facing changes.
Thanks for providing a great platform John :)

By day I program so the last thing I want to do when writing down my thoughts and ideas is maintain all of the above that you listed!
The action points in the article:

1. Treat the women and people of color already working at your
company well, including paying them equitably and preparing them
for promotions.
2. Overhaul your interview process. Hire programmers that have
the skills the company needs.
3. Institute onboarding. Make sure that everyone has the
information they need to succeed at their jobs.

None of my employers have ever prepared anyone for promotions, regardless of sex or color. Companies would have to do this at all before questioning whether they do it equitably.

Most of the prospective employers I have approached regarding job openings have had a horrible interview process. And I would suggest hiring for aptitude rather than existing skills. Almost everyone focuses on "what have you already done?" rather than "what could you do if we hired you?" It's maddening. Companies can barely test for skill, and I have only seen one that even tried to assess aptitude.

That would be great if companies maintained persistent records of internal collaboration. Unfortunately, I have anecdotally observed a trend of decreasing job-specific training, and less robust internal technical documentation. Some companies don't even have a stepwise guide for doing a manual build of their main software product after getting the latest source.

In short, those are good suggestions, but they don't need to be specifically targeted by sexes and colors. Everyone would benefit if companies did this. So why don't they? It seems like a sane and decent company would become diverse without needing to make any specific effort to do so, whereas a dysfunctional company would see its problems manifest in many different symptoms, with monoculture being just one of them.
My engineering intuition is that from a practical standpoint, this isn't an issue for Git. It's much more likely that the network will go down or all the copies of the repository become deleted or a developer will use Git tooling maliciously than for an unintended collision to occur.

Could a malicious actor construct a collision and use it to subvert some code base? Sure. And it has probably already happened. Crytography is considered a munition in the US and there are US government agencies which have been devoted to cryptography continuously since the Second World War and there are similar agencies in other countries and every last one of them employs many highly motivated highly educated and highly skilled cryptographic experts and the latest money is not an object compute hardware to find exactly this type of vulnerability, create capabilities based on that discovery, and to deploy them into the wild for national and political and economic interests.

To put it a different way, by the time something like this hits Hacker News, the odds are that organizations with the capability and funding to do things like inventing computers have already figured it out. Just as there is a discontinuity between what Google and SpaceX can do that looks like the future and the average engineer with a laptop or a garage can do that looks like the future, there is a similar gap between the future that Space X and Google can build and what a government institution can build. Space X hauls payloads to an existing station in LEO and Google runs on an internet that existed before it did.

The horses are long gone before anyone realizes the barn door is open.
It's not a stone hill. It was completely smooth before the limestone casing was removed. Also I don't know how 524ft is _significantly_ taller than 481 feet.
> Gmail's search and spam-filtering are both very good

Google/Microsoft's spam filtering makes it impossible to send e-mail from a self-hosted solution.

http://penguindreams.org/blog/how-google-and-microsoft-made-...

Unless you're sending out thousands of e-mails per day and build your reputation with their magic-goo trust filter algorithm, you cannot run your own e-mail server and run with the big players. They have made self-hosted e-mail totally unreliable.

I think what you meant by "very good" is "piss fucking terrible."
> Now, desktops can have 32 GB of RAM, but everyone just uses it to run Chrome.

.... which will happily chew away your 32 GB of RAM if you let it run for enough time :)
Well, the burden of a policy has to be judged relative to what you're trying to accomplish. If the policy is ensuring that you achieve your ostensible goals, then that burden is justified.

Based on your description, it actually sounds like it's making you do things exactly the way science is supposed to work! You quickly identify issues of "real effect or experimenter error or undocumented protocol?" -- and you prevent any ambiguous case from "infecting" the literature.

Those are the same objectives modern science is currently failing at with it's "publish but never replicate" incentives.

> Lastly, you can tell a lot by being hands-on with a study; there's a lot you can miss if you aren't in the room with the study.

I wasn't saying that you can't be there in the lab and do that kind of experimentation, just that scientists shouldn't represent this kind of ad hoc work as the repeatable part that merits a scientific conclusion. The process should be: if you find something interesting that way, see if you can identify a repeatable, articulable procedure by which others can see the same thing, and publish that.
This exactly. This guide is more a "why go remote" than a "how to".
> My experience with it is that once a disk-backed machine (as opposed to SSD) has started swapping, it's essentially unusable until you manually force all anonymous pages to be paged in by turning off swap ("sudo swapoff -a" on Linux) or reboot.

That depends. If your workload exceeds the amount of available memory, you will start "thrashing" the disk and that can make a system un-responsive.

If you happen to launch a large application, or start working with a big file, unused pages will be evicted to disk to make room and, after some slowdown, the system should become perfectly usable again. YMMV

On OSX, I don't know a way, but I can't recall the last time I had to reboot due to RAM/swap issues, even when I was developing apps on a 4GB Macbook Air. I guess memory compression, which is enabled by default, helps here. Most OSX systems have very fast SSDs as well.
Can you do a blog post on this?