skysight-inc/HackerNews huggingface dataset:
>This was a terrible idea from the start. In the best case scenario, what is supposed to happen?

I see two scenarios here:

1. The usual cock-up of the API guys not being the privacy/security guys and managers being unable to find common ground between the two.

2. The pressure to make HTML5 be an "app killer" and making sure devs have everything they need to write HTML5 web apps that can compete with native apps. Security/privacy becomes a browser problem, and if the browser guys screw up (see 1.) then too bad.

Seems to me, a simple middle ground of reporting a less granular battery value would have made sense. Very Low, Low, Medium, High, Very High would probably take care of it. You can probably just shoe-horn this in right now by just assigning a number to each condition and never telling websites the real number (or randomizing it a bit).
Microsoft forks Unreal Engine 4 and ports it to Universal Windows Platform
Interesting Pokémon Go lawsuit: do we own the augmented reality around our home?
Agreed. I thought this was a Qt project.
Show HN: Minimal, modern embedded V8 for Python
There's certainly something to be gleamed here about programmers and their reluctance to context switch, and the desire for a one unified standard.

However, English isn't a programming language.
It does bring attention to the AACC. They also issued a pretty strong disclaimer (https://www.aacc.org/publications/cln/cln-stat/2016/july/5/t...):

> Holmes’ appearance does not reflect an endorsement of Theranos or its technology by AACC, and Theranos has not provided any financial contribution to AACC in exchange for the invitation to speak, nor has it provided any sponsorship monies or other forms of grants to AACC.

I remember having to do a lot of paperwork to speak at medical conferences because of CME credentialing. I wonder what happened in this specific case?
They clearly state, in short easy to read words, exactly what is going to be done with your data. They also offer at any time to destroy the remains of your existing sample and disassociate the data with your account.

They may be unethical, but I have seen zero evidence of it.
And by ethical do you mean you personally don't want your DNA used in this regard, or by ethical do you mean "helps those suffering ailments such as depression"?

Having a friend who committed suicide and also being someone who voluntarily let 23andme use my DNA for this sort of thing, I'm very excited to see it happen. This type of research will literally save someone's life some day. Just wish it had been my friend :(
So if you trained hard enough you could run the 100m as fast as Bolt?
> and does not expose the user to tracking.

Thanks for taking the time. :)
Clojure.news – HN like dedicated to Clojure
Call people ;P

Also, your PC does not look like the average PC. Think 3-6 years old and filled with spyware.
Except the FDA has already cleared one Zika assay, and from this tweet at the AACC keynote the Theranos test is 50x less sensitive. And Dennis Lo isn't just some random guy in the audience.

https://twitter.com/DrDanHolmes/status/760232173836185600

The science is the science. You can't really wage a press war around the facts.
What's a manse?

It takes this piece several paragraphs to get to the point. tl;dr people are using Snapchat to sell real estate.
Millennials, get ready to barf rainbows: As older people get onto Snapchat, they’re bringing their older ways and interests.

gg, Medium blogger. Years after the annoyance that Snapchat is filling up with users promoting a brand, it's different now because I'm also ignoring brands that I'm not in the demo for?
I guess the way I think of it... if I am visiting a site or web app, I am actively opting to expend the energy required to render the page. Obviously if the page is not visible, and not doing a background task like playing audio, then I expect its CPU consumption to be negligible. So, first and foremost, use the page visibility API.

If I'm low on battery and choose to open that webpage, and now the WebGL charts are static bitmaps, my first reaction is going to be WTF. Now I want a button synonymous with 'Show Desktop Site' -- I guess we could label it the 'Stop Fucking With Me' button.

All code should be aware of the CPU that it is consuming. More efficient code is not just better for battery, but also likely more responsive and better for multitasking. So the question becomes, not how do we reduce CPU and possibly even improve UX, but in what cases would we make the CPU requirement dynamic, and when/where might the trade-offs be made to ultimately improve the user experience.

So first is Page Visibility, as discussed. The very next area where I would consider making CPU usage dynamic is not a battery state, but rather it's an overall device performance adjustment. If someone visits with an iPhone 4 versus a 6s, they have dramatically different amounts of compute available. I would consider investing in dynamic CPU consumption based on a device performance flag a lot sooner than I would do it based on remaining charge, because I think it would improve the UX for a large percentage of users every time they used the site. It's also a static setting from the perspective of the device owner, so they are not seeing changing UX on their device potentially from one moment to the next.

> None of the above need to significantly increase development or testing costs.

I can only offer my opinion based on my experience, but trying to alter functionality to reduce CPU load based on dynamically changing battery metrics across a pool of devices which may behave inconsistently... this is really not simple to code and test and maintain over time. We have a hard enough time just trying to efficiently serve device-specific assets (like lower res images to mobile) and that's based on a static/fixed user-agent string, not a dynamic header, and sites get it wrong so often that user-agents added a special button to try to turn it off!
>I haven't unintentionlly seen a Google search ad in a decade

the ads are the particular search results you saw
I don't agree, the intent has to be taken into account: hackers working at Vupen for example don't work to make a better Google analytics, they work exclusively to circumvent existing protections to expose private data to random third parties whatever the human consequences are as long as they profit from it.
I think the solution would not be fine-grained permissions, but very coarse grained. There would be two HTML6 profiles: Document and Application.

Application can do everything a JS app can do now. Examples include Gmail, Dropbox etc.. The browser would clearly show that it is an application, and to access platform APIs it would have to be "activated" / "run" (just click OK). The browser might ask for additional permissions if it tries to do something egregious (access camera, or, what's not possible today, open sockets etc.).

Documents can only use very limited javascript (if at all) for presentation purposes (like DHTML of the 2000s, or Google AMP). A lot of stuff will not be possible, like advanced tracking, silly stuff like access to light sensor / vibration, etc.. Examples of this would be newspapers, blogs, etc..
There is a point. Subpixel positioning is important and it's hard to know how much memory will be taken up by the full set of characters. Because you can not know the advances(and hence the exact positions) before you render the characters, you can not render them ahead of time without quantizing the position and storing multiple bitmaps.

This quickly becomes a non-optimization.
Level 1 Systems/Network Engineer & Consultant | Promenet, Inc. | New York, NY ONSITE | Full-Time | http://www.promenet.com

We specialize in High Level IT Services for the Mid-Size Market (25-5000 users).
We seek to add valuable new full-time members to our Networking & Systems teams. Our employees constantly push themselves to improve their skills--every individual at Promenet works to grow for the company, but most importantly for themselves. We work with customers in all industries to provide them peace of mind by offering hands-on expertise. We're largely responsible for the integrity of each of our client's networks, and subsequently their business operations. Our employees pride themselves on playing such an important role.

Responsibilities:

- Support customer networks end users.

- Daily hands-on interaction with network and systems troubleshooting.

- Serve as an integral resource (or leader) in projects, adhering to committed deliverables, and regular communication of progress to management.

- Fulfill certification and training roadmap as set forth by senior staff and management.

- Shadow experienced personnel and acquire knowledge.

- Thoroughly document all activity and keep senior staff and management informed.

- Work outside of standard business hours as needed.

To see more about this job opening, and all current openings, visit http://www.promenet.com/promenetcareers

Apply by emailing a copy of your resume to itjobs (at) promenet (dot) com along with a brief description of your talents and ambitions. Give us an idea of what you want to achieve and what kind of company you want to be a part of. Simply submitting your resume is not enough: you must demonstrate your aptitude and your motivation.
Hiring Process: Phone Interview --> Series of 3 separate in-person interviews in our office (New York City)
Fentanyl, a stealth killer
I wouldn't be hopeful about that PR. Substack is awesome but he's really bad at replying to notifications because of the tons of modules he has.
> and considering how much text your machine is showing, the performance tricks could be extra useful

Well, an SVG-based drawing program has to re-render a lot of the same SVG every time the user makes a little change. Also, when animating an SVG scene, a lot of the shapes are redrawn continuously.
A fun game is to look in the background of the photos and speculate on how many miles away his nearest neighbor is. I'm not even sure how far the shed is from his house.
Haskell was the first language taught to us in my university course. Literally within the first week. Everybody was new to it. Our lecturer highly recommended Learn You A Haskell on the first day, and it's still one of the best docs/guides I've read in a while.
> Goimports doesn't help when the name is ambiguous.

You can fork it and set it to only remove unused imports. In fact I've done just that few days ago but for different reasons(i.e. I generate some small programs and I use goimports as a quick and dirty way to to clean-up the unused imports). Here is the line where you need to return https://github.com/golang/tools/blob/master/imports/fix.go#L...

> Because if they were there people would force you to use them? Or are you just unhappy that people could have a different debugging workflow than you?

Yeah, I don't want being forced to use a dozen of flags just to compile a hello world program. Nor I do what to see various warnings that nobody really care about. It should fail or succeed. I prefer basic/minimal API that I can build upon not a kitchen sink approach. I think that's what makes Go a great ecosystem compared with many others. Compare the current Go compiler with various C++ compilers and you understand what I mean.

To sum it up you may use separate tools to do various magic things (i.e. goimports), they do not need to obey the Go1 compatibility rules. The issue is not that big to warrant a compiler flag.
Introducing Instagram Stories
I have been using privoxy as a system wide proxy with this rule `forward-socks4a .onion localhost:9050 .` to do this. I didn't know this was possible, great.
I have seen both suggestions in this thread:
var _ = unusedImport

If you can't even agree among yourselves what is the right thing to do then I think that this is another sign that this go behaviour is not the proper solution.
I don't know if there's a consensus, but I doubt it.

One way to think about downvotes is to keep them symmetric with upvotes. When I first came to HN, I expected downvotes to be asymmetrically reserved for people being wildly factually incorrect, or wildly negative. But, maybe if you upvote something on a whim because you lightly agree with it, it should be equally acceptable to downvote something because you lightly disagree with it. I don't do that, but I don't have any compelling reasons not to, aside from I don't like getting downvoted, it still feels more serious than upvotes.

When do you upvote things? I upvote for a number of different reasons including but not limited to when someone says something funny, contributes something valuable or different than others, posts data or relevant links worth bookmarking, says something that I agree with, shows a high level of nerdery and/or expertise in a weird subject matter, has a great attitude or meaningfully positive spin on something, etc. And as long as it's tastefully done, I'll even upvote the occasional correction or sarcastic comment.

I also tend to upvote people who engage with me, and respond to things I've said. Lately, it has been especially important for me personally to upvote people who are being critical or disagreeing with me, even if they're pushing my buttons. If my goal is for the conversation I start to bubble upward, then upvoting the thread is better than downvoting.

So, I'm only one person and I don't even have a consensus myself about when to upvote. ;) I don't personally expect consensus on when to downvote, other than a general wish that people use it judiciously - and I have to say that by and large, that is what I see going on. It's uncommon that I see or experience unfair or unreasonable downvoting.

> You need a certain level of karma to even give downvotes, so maybe the assumption is that people at "that level" should already know to how to use them.

I can only speak from my own experience and say that my ideas about how to vote changed between when I first started here and when I finally earned the ability to downvote. Not having the ability to downvote for a while did help me learn how to say more things that contributed rather than get stuck in the eddies of Internet arguments. If I'd had the ability to downvote from day 1, I would have used it a lot. Since I didn't have it, by the time I got there, I now don't see the need to use it, and so I don't.
Hah, tell that to our current crop of presidential candidates!
I would opt for levels of concern in power usage: low concern (desktop or mobile that is charging), concern (mobile), high concern (mobile on low battery). Then we could streamline it more, because websites know when you are on mobile already and give single flag: low power.

It is is similar in any other case of low resources. There probably is not much of a difference for a website if user is low in power than if it is low in memory. There should be then just one flag/event really: low resources (catch-all for battery, memory, CPU time, storage etc.).
Cool. Well put. Thank you for putting that out there. It makes sense to me, given the conversations I've been a part of. And, likewise, this thread makes more sense in that context.
Web Battery Status API as a Privacy Risk
How to Get 5,689 Views on Medium
Yeah, I’ve read/reviewed most of them. I could give long opinions on each, but overall I would say that I wanted an easy way to get into the language by building instead of endlessly going over all of the intricacies of the language. There is a time for that, but I’d argue it’s after you get in, get the basics, and start playing.

I almost called this a “crash course in Haskell” but I didn’t like what “crash” connotes. I just really want to get people into the practicalities of what’s important as quickly as possible.
Y'know, I honestly don't care all that much if normal people can screw up: learning not to screw up should be part of the public school education all our taxes pay for. We trust normal people not to stab themselves in the eye, not to shoot themselves through the head, not to crash their cars into others: we should trust them not to do stupid stuff on their computing devices.

And when they do, we should hold them liable for any damage their actions have caused to others, just as we do with all those other tools. Yes, I think liability for allowing one's computer to become part of a botnet is a Good Idea™. Car crashes aren't accidents, and allowing one's computer to become infected isn't accidental either.
Here is a new one that I reported to scala-internals today: https://groups.google.com/forum/#!topic/scala-internals/w4HG...
He explained clearly that a browser is "consumer software". That is generic software.

If you're writing an application where your users care about what a popup says, then you should use them.
On the parallel Reddit discussion, someone mentioned that the gain is less when rendering CJK scripts, since there are so many different glyphs.
yes, they should be. and they are (Mail opens) - but my point is the link opens in a new window which is blank, then brings up the Mail
IBM Watson is helping underfunded Rio Olympics cyclists go for gold
Just ignore your whole dev/code folder from Spotlight. It's not a good way to get to it anyway.
Thanks. The article lost me after a few meandering paragraphs.
For what it's worth; Gimp, Ghostscript, and Android all use FreeType for text rendering. At best, they would require him to know how to use FreeType bitmaps correctly (i.e. gamma-correct blending, when to multiply colours in). Though he could easily go beyond that, it is very interesting stuff and I find it incredibly hard to stop myself from reading into FreeType.
Changed my life as well. I am starring at the 50+ volume collection of the Great Books and usually have one within an arm's length.
Gartner: Emerging Tech Trends Create Opportunities for DBMS Cost Optimization
I think you missed the point of his comment. It's not merely that users don't care. It's that most users don't even understand what a popup is saying. The average user doesn't know what a cookie or a plugin is.
I'm sure the ad companies (and therefore the online news networks) will have no problem with this.
How is France peace-loving exactly? It has numerous campaigns around the world (recently Syria, Mali just to name a few) and is the 2nd largest weapons manufacturer/exporter in the world.
Can you point me to an authoritative source that explains what exactly is guaranteed under what assumptions and what is done on a best effort basis only?
Rocket Job: Ruby's missing batch system
"It sounds like you're claiming that FreeType is slower because the parsing/accumulation implementations are slower."

This is one of those performance drains across many languages that we often don't see because our weak languages don't let us. Manifesting an array for a consumer that only wants to iterate on it once, in order, with no backtracking, is a common antipattern. Just as I'd look askance at any putative "next big language" that doesn't have any sort of closure support, I look askance at "next big languages" that don't have iterators.
>How do you explain what "this site wants to know the list of installed fonts/plugins" means to the person using the browser?

Do the fonts on the site look wrong? Click here to correct (warning: <a href='explanation'>showing correct fonts may have privacy implications</a>).
> only to be told to do it exactly the same way the old system did it.

Early in my career this pissed me off too. As I matured I learned that there were often valid reasons to do it the same way. E.g. External systems accessed the DB directly for reporting, special cases meant my proposed design would be fragile, etc.

To the younger folks here, when you encounter this realize constraints exist that you must workaround. If you feel strongly enough to push back then first seek out some senior resources to dig for a deeper understanding before going ahead and proposing an alternate.
No idea what the rules are in Australia, but if local options are pricey you can probably just import the equipment.
No I won't.

However there is an important point that philosophy doesn't matter when times are good. Its only when the tool is misused or there's a malfunction that the underlying philosophy even shows up.

It doesn't matter which system you use when you try to store Aug 1 2016 into a date column, but (at least in the old days) it was very interesting trying to store February 30th into the databases. Insert anyway with a warning? Round up, down, or stick in a null? Normalize it to being March 2nd ish? Insert fails completely with an error? This has varies with time and configuration but in a "general sweep of history" manner you can guess correctly most of the time what each DB does.

Also there's nothing wrong in any way with a critical system that drops into philosophical best effort mode during a crisis rather than paralytic halt mode. Well, there's nothing wrong with it as long as the system was engineered with that in mind and neither the dev nor ops people are surprised by that behavior. Sometimes that is the right thing to do.
Somebody here once recommended when doing any kind of text with exercises to open to a random chapter and attempt the first exercise. If you can't do it research through the index/book where the information to help you solve it is likely to be found and repeat for all exercises. I've been doing this ever since, finished my library of unread books I had collected over the years but never had the time to read.
I had these same thoughts, but I decided to just drop it. The Flow team doesn't seem nearly as interested in usability/adoption as the TypeScript team (perhaps an issue of resources/bandwidth). Even if I like Flow's philosophy better and the type system was better-designed until recently, the TypeScript community and ecosystem trump any benefits of Flow at this point.
Capsule Pharmacy | New York City, NY NYC | ONSITE INTERNS | fulltime

http://capsulecares.com

Capsule is a healthcare technology company on a mission to elevate and simplify the consumer pharmacy experience. We believe in improving health outcomes through innovative design, mobile technology, logistics, and predictive analytics.

We are seeking a Software Engineer with a generalist/fullstack orientation to join our development team in New York City.

At Capsule you will:
- Work at all levels of our stack. Key technologies: React, Swift, Django/Python, Postgres, Go, Node - Influence architecture, tooling, process, and culture at a small but growing engineering shop - Contribute daily to the product dialogue - Build things that meaningfully improve peoples’ wellbeing

You should have:
- Breadth in many different skill areas (Maybe you’ve written APIs and some front-ends and done some light devops and know a bit of Photoshop and have coded in a functional language … the more the merrier) - Depth in one area that you can really school us on (Perhaps you’ve written a pubsub framework as a sideproject?) - Experience writing code as part of a (preferably large) team

Bonus points if you have:
- Built db-backed RESTful APIs for commercial projects (Python/Django = awesome, but also relevant if it was in Java, Scala, Ruby, Go, etc.) - Working fluency in technologies like ES6/ES2015, CoffeeScript, TypeScript, Sass, Less - Knowledge of and/or interest in React - Experience setting up a web development environment & architecting a web app from scratch (e.g. first person on a web app team or led a web app team) - Good grasp of TDD & CI principles - Contributed to the development of a native mobile app - Facility with design tools like Sketch, Illustrator, or Photoshop - Led an engineering team

https://jobs.lever.co/capsulecares/934c1772-6d4c-444d-bc2f-5...
That article is a concession speech on why generics are useful. Every single "trick" in the article is titled with the name of the equivalent method in more powerful languages. I don't think its possible to look at that list of tricks or the amount of boiler plate to get simple methods like `sort` or `keys` and assert the language is "simple" and better off for it.
Any chance we can get a link?

Edit: Whoops, see below. And for the lazy: http://www.newrustacean.com/show_notes/interview/_2/index.ht... (credit to @wscott)