skysight-inc/HackerNews huggingface dataset:
> intelligence can't be negative

Asserted without proof. To show this, you'd need to interpret intelligence as something that physically couldn't be negative. I feel safe in saying you haven't done that.

In particular, "intelligence (as measured by an IQ test)" can easily be negative, in the sense of yielding a negative IQ score. It would have to be an unrealistically long test, and you'd need way more people than exist in the world, but those problems apply to the tails of actual normal curves too.
Turn Your Phone into a Microscope Using This $5 Lens
Nice, we're actually posting a tutorial in a week or two about how we use d3 + react. I'll try to summarize though.

In the case that a library modifies the DOM, we try to keep React out of it's way. React works best when it has full control of the DOM. In these cases, React components are more of "wrappers" for the 3rd party libraries. Mostly by using the componentDidMount/componentWillUnmount to initialize/destroy the third party library, respectively. And props as a way of giving the parent a way of customizing the behavior of the third party library that the child wraps.
Scents of Smell Rooted in Math
>The introduction of the various storage abstraction layers like devfs and HAL, plus all the other monolithic subsystem daemons in the form of the *kits that emerged early on, foreshadowed what would come today, even if they were mostly manageable back then.

This seems strangely backwards -- a lot of the "let's make this into files" philosophy like devfs, /proc, et. al. borrows from Plan 9, which is arguably more Unix than Unix; systemd on the other hand...
So define 'average' as 0?
Particularly that it doesn't work. I always hear about people for whom It Just Works, but that hasn't been the case for me over the course of a couple handfuls of machines. For what it's worth, LP and his gang seem like people for whom "it mostly works" is satisfactory, and that's not something I'm comfortable with in something like an init system, to be frank, because what about when it doesn't? The answer there unfortunately seems to be WONTFIX or outright hostility.
I replaced it with glitch. It was actually something I started developing for the scala IDE a long time ago that had to integrate easily with scalac, so it had to handle the limited set of effects performed by it (they no longer use this in the scala plugin, but initial results were promising, and being very incremental dealt with scalac's performance problems).

I've refined the technique over the last 7 years, you can read about it in a conference paper:

http://research.microsoft.com/pubs/211297/onward14.pdf

You can think of Glitch as being like React with dependency tracing (no world diffing) and support for state (effects are logged, must be commutative to support replay, and are rolled back when no longer executed by a replay).
I've felt the same way when doing non-basic stuff with Angular (over a couple of projects). While a directive is usually more general than equivalent vanilla js/procedural code, this doesn't explain the 10x (In my experience it was probably closer to 5x code and time though).

I've been fortunate enough to use Durandal a fair amount since, and have found that it's probably 1.5x and 1.5x for a binding or custom element, which IMO is fair for the benefits that it brings.
It wasn't mentioned if the job was public or private sector. Many government jobs have good pensions.
I am really impressed by wolfram alpha's ability to parse my butchered syntax: https://www.wolframalpha.com/input/?i=probability+that+gauss...

Probability of finding someone with an IQ (as defined as normal distribution with mean 100 and std 15) less than 0 is 1.30839×10^-11
Pretty much this.

Many times I can't even compile a package from source after trying for for an hour, but the author happens to have a .deb file around and everything works smoothly.
One more for FreeBSD, and the hardware support issues are a lot less frustrating than for example what I remember of Linux in the early part of the last decade. I expect with the renewed interest in FreeBSD because of systemd, that we'll see things improve greatly overall (for example the million dollar donation to the FreeBSD Foundation).
Democracy 3 might have been a better choice to mimic politics.
A terrorist can't really build a fusion bomb, because you need a government to support the infrastructure. But the fear is not entirely unjustified because a government would be able to give the bomb to a terrorist who then uses it. Or perhaps a government employee might steal it (for bribes) and give to a terrorist. So I can imagine terrorist having a small fission bomb. But I cannot imagine an arrangement where a terrorist would acquire a fleet of B-29's that could be used to fire-bomb a city.
Keurig mea culpa: 'We were wrong'
as a layperson, i have a hunch that language first developed as a defense mechanism against predators, and continued (perhaps more rapidly) with the proliferation of hunting weapons and methods.

an article/thesis from last year claims to have decoded gibbon vocalizations for distinct predators, as well as what the predators were doing [1].

and a while back i remember reading a theory that consumption of animal-based protein increased the brain size of early humans.

barring a monolith [2] my guess is that crude hunting tools provided more brain food for less work which, in turn, led to the development of more sophisticated tools and hunting methods.

so if the presence of predators caused early humans to develop simple words and grammar, perhaps a better-fueled brain, as well as the desire to teach and learn better tool development/use and hunting methods, expanded and improved this early grammar into something that could be used to communicate (e.g.) abstractions.

as a layperson, this process would seem to involve more than the mutation of one gene (e.g. FOXP_{2}), it would seem to involve lots of stuff: chemicals related to fear, stress, changes in diet, group dynamics, and so forth.

[1] http://search.library.wisc.edu/catalog/ocn888412908

[2] https://www.youtube.com/watch?v=mM6OIlreneA
> Systemd itself is a monster running as PID 1, which is not very wise from a security perspective either.

No. Only a small part of systemd runs as PID 1. Systemd is not a monolith, it is a bunch of various utilities.

> However, I think the app-ification they are planning to deploy in Linux systems is extremely dangerous.

I agree. This sounds scary. However, it does not mean that distros will hurry to adopt this kind of system. I also get the impression that it is targeted more toward special use cases than intended to replace traditional package managers.

> Pulseaudio is slow and unreliable.

While anecdote is not data, I never had any issue with it.

> Dbus is quite inefficient.

They did not invent Dbus, and using the foremost userland IPC mechanism to communicate is not unreasonable (since, as mentioned above, systemd is a bunch of utilities, they do need some form of IPC). I don't think it has an impact in practice.
This is a, well, dick off account but behind it is really a genuine developer.

I recently converted my React code from scss to the embedded styles in JavaScript. Does each component have that many scss styles to justify using scss? I guess my project isn't such a large scale, but I'm just curious as to what benefit you get from scss.

Note that I didn't read the article. I rarely do, but I'll give this one a go because well, I'm commenting on the gosh darn thing so I may as well stop being a fucktard and read the damn thing!

EDIT: Well, you only mention scss once in the entire article. I guess I didn't learn much on why you use it vs. just using the embedded styles for components in React.
In Getting Work by Ella Frost, We Ate Our Own Dog Food
Thanks! We used your first suggestion because it's more informative.
Mods fix most of your complaints, but regardless, I completely agree with the gist of what you're saying.

As good as Skylines is, the game isn't quite Maxis caliber. SimCity (2013) had incredible UI and UX design. It's just a shame that it was marred by tiny city sizes, overemphasis on simplicity, and online services dependency.

That said, Colossal Order's budget probably wasn't Maxis-caliber either, so I'm hoping the revenue from Skylines will allow them to be more ambitious moving forward, and make something truly outstanding (as opposed to merely awesome).
What I want is to get (example) the latest nginx and postgresql as soon as they are released, that's why I install them from the developer's ppas both on debian and ubuntu. However I understand the merits of your conservative position (I read your other post too) but I feel that I'm missing too much in that way.

There are many desktop applications that I install from 3rd party ppas on ubuntu because they are too out of date in the distro or unavailable, and I think no developer uses the distribution version of languages (node, ruby, erlang, etc). There are package managers for them and you need them server side too. Then you get used to use the distribution ppa only for the core OS and stuff you don't care much about. I'm not sure that I want to dockerize the desktop, and how silly would that be for less or ls, but in a way 3rd party ppas and conservative distros paved the way for it.
One trick is focusing unit testing on code that has a lot of logic. And then also covering it with some functional tests. Integration tests are amazing but time consuming and can be less bang for your buck if you're pressed for time.

YMMV.

Also, what kind of software is this?
I admit to more than a small amount of schadenfreude over the graph of their stock price about halfway down the page.

It warms my heart to see a company that pulls aggressive anti-consumer DRM shenanigans get taken over the knee and spanked by the market.
Just upgrade the compromised package. Now think what happens if you have 20 different containers running 20 different userlands...

This is exactly the same as the virtualization scenario, where you might have hundreds of possibly vulnerable virtual-machines running under the same virtualization platform (which maybe Linux). Or lots of Docker containers, some of which may have vulnerable software.

App-containerization is usually seen as having security benefits, as it promotes isolation.

Yes, package management tools are great. Containers are also great.

I can imagine a future world in which package management tools understood containers, and could choose how to apply updates (or not!) to nested containers.
Show HN: Manage your app icons centrally and get notifications for new sizes
True, about tracking agitation during sleep.
> any referral work you get … will have a harder time with raised rates.

This does not seem to mesh with the posted article where they interviewed lots of successful people who started out charging on the low side and were able to aggressively increase over time.

I get what you're saying in this thread, that people tend to not charge enough. Sure, I'm right there with you. What bugs me is this meme that seems to suggest that there's something wrong with doing whatever you can (like charging less) to get your foot in the door. It's intimidating.
This looks surprisingly tempting. I agree with a lot of the ideas behind systemd, but at the rate it is growing, I'm going to type this in systemd-firefox in systemd-xmonad in six months. How stable is it in practice?
You mean bufio.ReadLine? As the documentation says, it's low-level, since you have to do the buffer allocation yourself. ReadBytes/ReadString are nicer interface-wise, but it allocates new buffers on every call.

I like Scanner because it provides a nice high-level interface, but still maintains an internal buffer, reducing GC pressure. Of course, it's not one size fits all.
>The speed (latency mostly, but also throughput) advantages of SSD mean that HDD are eventually going to disappear on the consumer side.

The last few years have been weird - hell, ram is literally more expensive, per gigabyte, than it was in 2012. PC software requirements seems to be standing still. A five-year-old PC is still perfectly usable.

This wasn't true at all for most of my life.

I mean, yes, if storage space requirements don't start growing, of course, you are right, because hard drives, while they are big, are slow.

But... hopefully, this is a temporary setback. Someone will figure out how to make use of the surplus transistors in desktop PCs.

I mean, it can't be that hard; from what I saw in the '90s and early aughts, Microsoft seemed to release a new version of word every few years, and it required a new PC, even though I personally couldn't see how it was better.

But... apparently that isn't happening anymore.

My point here is just that if the need for disk space grows as fast as hard drive and ssd size per dollar grow, SSD might never become completely dominant, assuming that hard drives maintain their space per dollar advantage.

Of course, if things keep going where they have been going for the last few years, where system requirements for desktops don't really increase over time, then of course you are right, there would be no reason to have spinning disk.

You can already see this, sort of, in mobile, where storage expectations are dramatically lower, but spinning disk never had a real toehold there. Do you remember those tiny spinning hard drives that were packaged in CF cards? oh man, so cool! and so fragile.
No. We published an article of doing raid in hdfs in june 2014:
https://code.facebook.com/posts/536638663113101/saving-capac...
Anyone else being asked for a user and password?
https://news.ycombinator.com/item?id=9058701
We use Google ads in our React apps, and it turns out to be a problem. I wonder if anyone has solved it in a satisfactory way.

Basically, with GPT you have named slots identified by their DOM element IDs. You can "refresh" a slot any time, which will populate the element if it's empty, or load a different ad.

So we do that when we're mounted. Unfortunately, if the page structure changes, React will re-render the component and blow away the contents -- anything GPT has put in the element is considered alien.

That's fine, we just refresh. The problem is knowing _when_ a render has finished and the ad element is empty. In my testing, React elements would often have a delay after which their changes have been applied to the DOM; so I use setInterval to check repeatedly for an empty element. It seems like a stupid solution, but I couldn't figure out a more solid way; there's no React callback for completed renders.
There is this project management triangle, where each point represent quality, deadline, resources.

The theori is that if you cut resources you have to cut either quality (scope) or deadline.

So to answer your question, I would focus on quality by making sure there is resources enough - to make and to test.
Pretty good; working from a co-working space here.
Just bought an apartment.
I was also having a major issue reading this article on mobile. Every app I tried to read it on was crashing repeatedly, with increasing frequency as I got to the bottom of the page.
I may be showing my gray ear hairs, but I remember the early days of Gentoo where ZOMG boot 3ms faster by optimizing! The init portion of systemd reminds me of those days.

Your mention of requirements for service execution is certainly an interesting avenue for me to think about.

Honestly for my day to day "spin up VM, do some experiments/coding, fine tune" it doesn't matter. For some other work I am doing dealing with longer term system maintenance/administration, I've been slow to adapt.

Thanks for the insights.
Yes, the idea is to be as general purpose as possible. That was one of the motivations for avoiding tape.
I'm also planning on switching my two Linux boxes to FreeBSD.
Uber may have submitted a $3B bid to buy Google Maps' rival
Announcing Visual Studio Code – Preview
This quote from the article talks about data verification. Although we all know that a backup isn't really a backup until you've tested restoring from it :-)

"""
To tackle this, we built a background “anti-entropy” process that detects data aberrations by periodically scanning all data on all the drives and reporting any detected corruptions. Given the inexpensive drives we would be using, we calculated that we should complete a full scan of all drives every 30 days or so to ensure we would be able to re-create any lost data successfully.

Once an error was found and reported, another process would take over to read enough data to reconstruct the missing pieces and write them to new drives elsewhere. This separates the detection and root-cause analysis of the failure from reconstructing and protecting the data at hand. As a result of doing repairs in this distributed fashion, we were able to reduce reconstruction from hours to minutes.
"""
Or they have the best way.

Someone has to have the best way.
While this is easier said than done make sure you are breaking down the tasks into smaller modules with classes and unit testable methods. This test driven development may slow you down a bit and but it will provide you the best ROI(time) when you start adding more code on top of the existing code as you can run the tests and make sure the code is doing what you think it is doing and new code hasn't broken any of the old tests! Good Luck.
Keep in mind that they're in vegas. There aren't a lot of similar companies there to transition to.
> Broadly speaking, the argument against the use of computers is a lament for the loss of the human element: intuition and understanding. Acknowledging something as true because the computer says so is not the same as knowing why it is true. One might reckon it’s analogous to relying on an Internet mash-up of reviews about the mysteries of Venice, rather than going there and splurging on the water taxi and experiencing the magic for oneself. But then again, the same conundrum arises in building upon previous results rather than working from scratch.
How to Jailbreak iOS 8.4
Seems to me you could wrap ad elements in container components that have:

shouldComponentUpdate() { return false; }

Which would prevent React from re-rendering them after initial mount... any reason why this doesn't work? I do this often when using d3 selections to keep React out of the way and catch incoming props in componentWillReceiveProps instead.
Would remote work be an option for you? It might be a good option if controlling your work environment is important for you.
Also, Toybox will replace Toolbox in Android M.
> Could you explain what you like better in apt?

It has been some years since I used Fedora (FC5 or FC6). I remember the default yum repositories were missing utilities I wanted and I was also installing stuff from RPM files more often than I would have liked.

Another reason for switching was Ubuntu seemed to have a bigger community and it was easier to get help (at the time, I was still pretty new). Plus it was so much easier to get started with Ubuntu's Live CDs.
Because that is the whole point.

If C is still present in the stack, the typical C exploits are possible, which were how many Oracle JVM exploits came to be, for example.

Reducing C presence to the same as Assembly, will just make everything safer in our systems.

Not that it will ever happen in UNIX systems, given how C came to life.
I'm not sure that implicitly calling your target customers lazy and/or inefficient is such a great introduction.
Ask HN: How do I solve problems/code outside of the book I used to learn python?
I learned python (2) via LPTHW about 2 months ago and have had some serious procrastination but now I'm aiming to get back into the swing of things. However, I now remember what triggered my procrastination: My inability to code outside of the book! It's as if I can't solve any programming problems.

For example:

I'm looking to try and solve this on /r/DailyProgrammer: http://redd.it/341c03 but I just can not do it for the life of me. I can go through all of codecademy and LPTHW but I can't figure out something this simple!? Damn it. In my head this is how I would solve it:

First you need to grab user input and store it
Next you need to define what consonants are and create a list
If user input contains any of the letters defined in the list (regardless of case) place an 'o' after the specific letter and add the consonant
Return to above command and check for any other characters, once every character is checked return new output and exit.

---

But for some reason I just hit a blank wall and can't apply this to python, it's as if I learn the syntax but not problem solving, or its like I haven't really learned programming. Any advice at all would be appreciated as I really want to start being able to do interesting stuff!
> I personally love making soup, especially when it's cold out.

out... ?

outside?
Reminds me of a Ted Chiang short story, "Exhalation", about a being that cracks open and inspects its own functioning brain. http://www.lightspeedmagazine.com/fiction/exhalation/
The bell curve distribution is a model. That our metric doesn't include negative values does not contradict its effectiveness. Also someone downstream calculated the probability of seeing a negative value for a normal distribution with 100 mean and 15 sd, the probability is about 1 in 100 billion. And so we don't expect the bell curve model to break down until we reach a population size on the order of 100 billion.
I tested it by on a several megabyte text file (not that large) and I can see a huge improvement in speed when I use a reader vs. loading the whole thing into memory as I did at first.

I can see now how much of a difference it can make on a really large file, like in the gigabyte range.

BTW, I deleted my earlier comment because the problem I had wasn't anything to do with bufio. I had just made an obvious mistake elsewhere in my code, which I've fixed now.
"Netherlands have a one year gap for kids to cool off and find what motivates them."

What? No we don't.
I hate writing SQL blind, but more like this... note that you fetch only the identifiers with the inner query, and use them in the outer query to retrieve the documents.

SELECT d.id
,d.meta->>'title' as title
,d.meta
FROM (
-- Only select the identifier column
SELECT id
FROM data_rows
,plainto_tsquery('search query') AS q
WHERE tsv @@ q
ORDER BY ts_rank_cd(tsv, q) DESC
LIMIT 5
) AS ids
-- Join back onto the data_rows, this fetches the documents
INNER JOIN data_rows d ON d.id = ids.id;

You'll want to go through the explain plan, but treat identifier retrieval as a step by itself. Things like ts_headline (not shown), or meta->>'title' (shown) should only be performed for the few rows you actually are retrieving and you should make the data you pass around be as small as possible at all points.

Note that you don't need to call plainto_tsquery twice, you can use the one you've already declared.

And I notice you are returning the JSON document whole, have you checked whether it's faster to extract the title here or later in whatever your programming language is?

The giveaway clue in your post btw is this: "We experimented with returning the document text with results and found that if we returned the full text of documents, it added about 350ms to the query time which seems to be network overhead rather than a slower query.".

As soon as you notice a linear slowdown, when you're only returning 5 rows whatever happens... then internally you must be doing something in the query that relates to all rows.

PostgreSQL fulltext scales nicely, I use it on a platform driving over 300 web sites with 10s of millions of comments. I originally used it thinking it will buy me time before I have to add a dedicated search engine, and it helps now as I store permissions knowledge in the database too... but truth is, it's just not been an issue yet. I'm not needing to consider anything else as it's performing great. The slowest part of my query isn't fulltext search, it's my permissions stuff (because I've gone down the rabbit hole of users, groups, roles, etc and this is calculated for all content), but still the 95th percentile for searches is typically under 10ms.