skysight-inc/HackerNews huggingface dataset:
I'll _usually_ leave it open if it looks interesting to me, passes tests, and I know I'll get back to it in my next round of reviews (every quarter or half year, I spend an evening or two of my dedicated OSS time reviewing each project's open issues and PRs to clean things up).

I try to at least indicate if it's close to ready for merge or if it will need a bit more work, and don't often immediately close a PR.
Canada (where I'm from) was much more capable at dealing with the crisis because we had a small more cohesive system

By my reading (http://www.nber.org/digest/dec11/w17312.html), Canada hasn't had the US crises infect them due to centralization.
Still possible. There is no "safe subset" of C++. There is a safer subset, which is usually safe. One usually ends up using lots of std::shared_ptr anyway.
That's funny, down feels more natural to me coming from a (amateur) guitarist's perspective.
Sounds good - gavanw@gmail.com
SpinalHDL: An alternative hardware description language [video]
Philosophy is a soft science, so I'm gonna guess "not on your life."
The unfortunate thing about what you are saying is that a CS bar exam, or certificate, wouldn't "prove" that you have any worthwhile skills.

CS degrees are math degrees. They don't address the needs of the millions of Web Dev jobs out there.

I am not a computer scientist. I am a web developer and proud.

And any web developer accreditation program needs to address the needs of web development and NOT address the needs of computer science.
Fair enough, it's a common enough refrain that I wanted to point out specifically that there's lots of benefits to it outside of memory safety.
It depends. How long did it take the AI to come to the same conclusion we have? Speed of learning is very important.
No, the computer can't. The computer was itself trained/programmed by humans.
Ken Shirriff Takes Us Inside the IC, for Fun
For context, the author said this as a side-note to his distainful comments about being expected to use a "mouse". He goes on to say "It's very frustrating to miss the mark with the mouse's selector and destroy what has taken a good bit of time and effort to achieve, or to continually run the mouse headlong into the keyboard and risk ruining the keyboard or the mouse module itself."

(I'm currently using a mouse which has been operating in close proximity to a keyboard for some years now, so I can attest that at least his latter complaint hasn't weathered the test of time.)
If you think about how many people, 300 years ago, were involved in farming.. it was a lot. How many today? In 1st world countries, very few. Farming has massive automation.
That's what I'm thinking. Don't even bother to factory train the AI. Just let it learn what the machine sounds like new. After a few weeks of training data, any deviation is suspicious.
So THX-1138 basically.
Singapore unveils plan in push to become smart nation
Singapore tech should have much to expect in 2017
That is what my iPhone 6s Plus does too.
The way biological neurons self-organize into a neural network could correctly be described as swarm behavior. In fact there is quite a bit of research into this and it's amazing how during development you can move a neuron from one part of the brain into another area, and it will self-correct and take up the proper role in the new region. There are complex emergent properties here, which your Bose-Einstein condensate lacks. Which is also why it has not practical use beyond theoretical research.

I subscribe to the cellular automaton interpretation of quantum mechanics, that our most fundamental laws work like the game of life. A basic part of their program is to increase entropy. This results in homogenous and lack of complexity. These is where your counter point falls apart. Your Bose-Einstein condensate is less complex. Unless we could change the laws of our universe, we have no way to program its behavior and is therefore not useful. So if you must, I will quality my original assertion that it will be a programmable swarm-like behavior. Although whether it be from computer code or DNA, this is a characteristic than any traditional swarm behavior possesses.
If you work for Microsoft (I do) that doesn't sound right. There are times when I get 2FA but not often on my work machine. Microsoft employees get a smart card and if your machine has a TPM chip you can create a virtual smart card accessed with a pin or biometric factor like fingerprint or Windows Hello.
Officer Steven Blakeney Terrorized the St. Louis Area. Why Did No One Stop Him?
What I don't get about the recent hype is that jobs have been vanishing for thousands of years. The oft repeated statistic is that over 90% of the US population were farmers 100 years ago. Is 90% of the population out of work?

As machines take over low level jobs (as they have for thousands of years) humans will continue to migrate into positions where their skills are still needed. Quality of living will continue to rise as a result.

The only real danger is singularity, and it's a danger to all of us, not just the people at the bottom. If an AI was truly better at every job why would the people at the top even be in charge?

Machination will continue to benefit society and humankind until an increasingly worrying singularity results in everyone being out of work, and likely, the extinction of our species
That's kind of the opposite of what I meant. I say one shouldn't leave fishing to just people with a license, you understand everybody should get a license. The point is that politicians, in a democracy, if anything, should enact what consensus there is of politically active and informed citizenry, so to speak. Not sell their own ideas or even corruption to people who are rather disinterested in many vital areas. If people, every one of them, felt the buck stops with them, and saw absolutely no way to hand over their making up their mind about what the world is like and what should be done, then even just that would create so much pressure on political parties and corporations as to positively mold them. As it is, it's more the other way around, with all the lameness that entails.
Well, that's certainly an interesting topic of its own, but I don't see how it applies to the context of this discussion.
If you have a Mac, I recommend cheetah 3D.
You can thank the ADA for that.

Novamin is a bioglass that is fortified in Sensodyne, which coats the enamel (a fluoride rival, but better), and was sold to GSK. After that, it suddenly disappeared from shelves in the US.

You can still buy it online (it ships mainly from Europe), but not in the stores.

It's all one big racket.
What could possibly go wrong with (insert x86 instruction here)?
Agreed on this, but this is ignoring the much more subtle effect of unwinding: it introduces optimization barriers around every function that "might" throw.

As a basic example:

x = 1
something_that_can_fail()
x = 2

With unwinding, the `x = 1` write must be preserved if whoever catches can observe it (and if that's unclear, it must be preserved conservatively).

The C++ STL riddled with complex machinery to try to work around this sort of thing because everything can throw. Copies, moves, you name it! Not even reallocating an array can be done with realloc unless non-throwingness can be proven.

If you try to make throwing "opt in" like Java, then you end up with nasty "throwingness polymorphism" problems and end up with constructs like Swift's "rethrows". By contrast, error propagation through normal values naturally composes because it's really easy to write code that generically handles return values.
I ask about Pandoc in every Markdown thread, but only because I'm interested in the success of Markdown.

That said... why not Pandoc? Just too heavyweight for a browser?
You're not alone. The more experience I get, the more I feel that specifics in a language are a commodity, but what you do with that language is what matters.

Those abstractions, identifying problems, talking with peers, deciding the next step, etc. The language is not the problem, you will learn it.

With time I got to know more core concepts but I don't know the syntax of whatever language the interviewer's company is using. It is nice to find people interviewing you who care more about what you're trying to say than the syntax.
I read it as rhetorical, not literal. As in, where are the threats? Who is going to make the weak decisions and can we avoid giving them the opportunity to do so?
Changing how? And why?
as a maintainer, I don't like turning down all this work you've done for free

I empathise with that perspective, and I appreciate any work that an open-source maintainer does to contribute to a project, so thank you.

I must confess, I often submit patches without prior warning or discussion.
They almost always come out of client work: I've been asked to deliver a requirement, so I do what I have to do to deliver that.

When I have to modify upstream code, I know that my use-case might not be appropriate for everyone (so I try to explain that in my comments). But even if I think it's a patch that isn't going to be accepted, I generally post it anyway: partly for the few people who might share my use-case, but also for me, in my next project, where I may run into the same problem again.

Sometimes my PRs are nothing more than a note-to-self. A lot of the time that's been dictated by client policy: projects where I could only modify third-party code if there was a published upstream patch for the changes. So if I have to modify upstream code, I have to record a patch/PR upstream, to comply with client policy. But I do understand that the answer to the PR may well be "no".
Why not? Do humans have an unlimited capacity for absorbing creativity?

I suggest we don't have, and are already a decent way into our collective capacity for it. Casually supported by the last fifty years of music - how much more creative can it get, that is also significantly different from what's been done before, and also widely liked, and also that you can listen to within a lifetime?

If people were an unlimited creativity-sink, I'd expect radios to only play new songs, and not the same old same old popular ones. I'd expect TV stations to have hardly any re-runs, films on disk to be basically unsellable, and people not to have music collections, and nobody to wear the same clothes twice without personally altering/dying/cutting/mixing them up.

Especially in worlds where you need thousands of hours of practice at a thing to be able to compete with others, creativity comes out of your available time to consume other people's creativity, while you also need to be spending more time 'being creative' to keep your creative skill up with the Jones's. And to try and compete against DeepMind.
I am honestly shocked by the "today" in "today you can take..." I grew up in India. In the 1990s a very common career path for people who didn't major in CS/EE/math/etc. was to attend non-university training in computers and programming. There were these institutes in every neighborhood and I recall at least half a dozen national-chains who'd advertise regularly in the newspapers, etc. There's at least one publicly traded company, NIIT that has been doing this for 30 years now https://en.wikipedia.org/wiki/NIIT

I don't know if it was substantially different in the US.
I'm using Linux Mint with KDE. (Probably not the best tested distro out there, so maybe I reap what I sow.)

At one time, ibus worked pretty well, and I was content. After one upgrade, ibus stopped working, and I couldn't make it work again. Tried skim (which I had used several years ago, but abandoned when it also stopped working for some reason): it managed to lock up X windows. Finally found uim, which almost worked the same, so I was content again.

And then about a month ago I had to upgrade again (long story short: Linux magically forgot that I had a second monitor and refused to acknowledge it), and then uim stopped working in some KDE applications, including Konsole. Spent several hours trying different things. (Even tried to compile uim from source, but apparently figuring out dependencies for graphic libraries is not my strong area.) Finally just settled down for uim again. Who needs to type Korean into terminal anyway?

Well, at least now I don't have to restart gvim every time after reboot, so that's the plus.

See, "Why don't you report bugs" is missing the problem. For example, I had gvim running on a KDE system that somehow forgets the input method whenever I reboot the system, but when I restart gvim, it finds the input method without problem. I don't even know which application I should report this bug against.

And of course I'm using distro packages that may be years old (the last release of uim was in 2013), so for all I know, the problem I have is already fixed in the most upstream version.

I'm sure Windows have other problems that Linux solves quite well. I'm not arguing Linux is worse in every respect. I'm just pointing out there are a horde of problems that should have been solved for once and all fifteen years ago: there should be a metapackage, or ideally a single button that says "If you want to enable Korean/Japanese/Hindi input, press HERE," and that should be the end of story.

But these problems are never properly solved, because the "bazaar" nature of Linux development means whatever solution worked today is not guaranteed to work two years later. Each solution is made of five packages developed by different teams, and maintainers drop out all the time either because they're bored or they have other life obligations. And then some other people start a new sexy project that more or less subsumes previous iterations (but in a brand new codebase), and the cycle continues.

Conway's law[1] says "organizations which design systems are constrained to produce designs which are copies of the communication structures of these organizations." It doesn't just apply to MS or Google: it also applies to Linux. I don't know if it can be improved, but that's the way Linux is now.

[1] https://en.wikipedia.org/wiki/Conway's_law
There's this:

> In addition, Raman scattering measurements, obtained using multivariate curve resolution (Raman-MCR) have been used to explore the hydrophobic hydration of linear alcohols from methanol to heptanol [25]. The authors conclude that below 60°C the hydration shells have a hydrophobic-enhanced water structure with a greater tetrahedral order and fewer weak hydrogen bonds than the surrounding bulk water. This configuration disappears above 60°C and is replaced by a structure with weaker bonds. These findings support the existence of two different hydration shells in liquid water with a crossover temperature of ≈60°C.

So it seems that proteins have evolved to stabilize the "ice-like" structure in hydration shells, and in turn depend on those hydration shells to stabilize their 3D structure. Above 50-60°C, that doesn't work. But there are some Archaea that do quite well at 100°C. Their proteins presumably do a better job of stabilizing the "ice-like" structure in hydration shells.
I think we're overestimating AI. The hype has been around in tech circles now for years, but now it's breached it's walls and is spilling out into mainstream discussions in economics and politics, and it's getting even more detached from reality.

And yet, I don't know of an instance where all this newfangled machine learning has been disruptive. The expert systems that will supposedly displace accountants and paralegals don't exist. Dextrous robots can barely screw the lid on a bottle, and only under controlled conditions. Autonomous vehicles reliable enough to be applied commercially don't exist. None of it exists. There's no garauntee it will.

The AI race is most definitely on, but nobody knows where the finish line is. And there's a long history of inventors grossly misunderguesstimating the location of finish lines, particularly in the field of AI, where every time we find a new piece of the puzzle we think 'This is it. This is the holy grail!'

Machines are better at pattern recognition, that's the big breakthrough, but there's so much more to taking humans out of the loop than just that.
Yea it works on anything, almost like loading a jquery library
How does that help? Are you just using the presence of the fork in your account as a sort of bookmark?
> Remember, they said "out of the blue" which means "without prior contact to discuss doing so."

If I do contact the maintainer before I do any change, that means I'm making a commitment to do that change, which is not something I want to do.

> If you're just looking to pump and dump, I'd rather not involve you in the process, only to have to do work to fix/rm code down the road.

I think you should always assume with any PR, that it's a pump and dump, unless you have a history with whoever raised the PR.

> It's your time to waste.

I don't think it's a waste, it's an issue that I'm facing (or a feature that I want), so writing the code is for my own need, I'm sharing it back in case other people want it.
The post in the comments was the one I was referring to. Says verbatim don't make pr's without a ping first. Says nothing of major changes.

You forget maintainers aren't computers. While your logic is correct, social norms for humans are different.

You have voices describing a human view and interest in a certain way. Whether you agree is irrelevant; the project maintainer has no obligation to listen.

It's not all about you and the workflow that makes most sense from your office chair.
There are other encodings than UTF-8 though. Which is kind of my point. If you have your file system set to UTF-16 (doesn't NTFS do this?) then 0x07 will be present.
A pre-release copy of Programming Rust, by Jason Orendorff and Jim Blandy.
It is how UTF-16 (NTFS) does though.
I've talked to most of the researchers studying this particular method.

We won't be seeing anything in practice for another 50 years by what some of them claim.
it's a big field, but so is electrical/mechanical/structural/civil engineering.

I think they'res enough basic skills in common with different flavors of development that there could be a common set of core skills and concentrations or special accreditation for the unusual stuff
Daniel Kahneman, Talks at Google
And while we're communicating, you're also completely ignoring the time axis. Global warming and other neat things on the horizon, anyone? We can't even be arsed to take that seriously. We have super awesome equality because progress wasn't exponential for millenia, no, capitalism came up with that, and when civilians get murdered more or less nilly-willy, and we wreck our long-term prospects for material comfort and social cowardice you just keep having polite conversation about the table cloth and think that's civilized. You can talk about how the masses do or think this or that, but you can't deal with any sort of discussion with bite it seems. When people are having dinner and someone suddenly kills their wife, or "just" the maid or some random stranger, you can continue eating, and I can call it out.
Here's a joke about TCP.

Here's a joke about TCP.

Here's a joke about TCP.

Here's a joke about TCP.

Here's a joke about TCP.

> ACK
I don't know if it was merged, but according to the thread Vlad was working on a patch that would switch to a cryptographically secure hash function when it detected an attempt to create a hash dos attack.
Why does everything need to serve a purpose? I can believe the author wrote this just "Because I Can", which is a perfectly good reason to me. Most stuff I work on in my free time, I do just for me. If I think anybody else might be interested in it, not necessarily because it's useful but just because it's interesting, then I share it.

Edit to add: Not suggesting that you think it needs to serve a purpose, this just felt like the most appropriate thread to add my comment to.
Requiring permission to do work is the enemy of progress and engineering dignity. It creates a presumption of incompetence and an atmosphere of low trust that punishes people who want to push the envelope of what's possible.

Google's design document culture is bad. Google has succeeded in spite of it.

In my experience, having worked at many large tech companies, design documents obfuscate, not enlighten. They become increasingly out-of-date as the code evolves, creating anti-documentation that makes it take longer to understand code. Yes, yes, people should update design documents as the code evolves. Everyone knows that in practice, nobody updates old design documents.

Design documents make it too easy for other developers to shoot down ideas. Sometimes the worth of code isn't apparent until it's made. It's far too easy for someone to comment "this will never work" on a proposed change. It's much harder for someone to deny benchmarks attached to a proposed change. It's too easy for reviewers to knock out functionality.

Design documents turn every feature into a half-assed, lowest-common-denominator risk-minimized barely-adequate shell of itself.

The real reason everyone at Google writes design documents is that promotion committees demand documents as "evidence of complexity". No design document, no impact. No impact, no promotion.

Code is just code. Bad changes can be backed out. It's much better to move fast and iterate quickly than to create an illusion of care and add friction to every aspect of the development process. Up-front design of software just does not work. If it did, waterfall project planning would be successful.

These questions you highlight --- Why are you making this change? What impact will it have? --- can be asked during review of actual code. There is no need to build a speedbump, not if you trust your people.

Developers should be able to choose to create design documents and solicit feedback. Most changes don't need this process. You should trust developers to know what changes require a more extensive discussion and which ones don't.

A culture that requires permissions and signoffs before work can begin is a culture that leaves products stagnant for years.
Not a source, but a corollary of the parent's claim that might be easier to look up: doxycycline, an MMP inhibitor, is used (under the trade name "Periostat") as a prophylactic after dental root planing to prevent damage to the enamel.
You'd be shocked at the things home routers do. There's a reason most people don't try to implement NAT traversal and use common middleware.

Since UDP isn't as common of a protocol I can certainly see some routers treating it a second class traffic when it comes to packet shaping.
Thank you. That is very useful.

Jessica Kerr posted on Twitter, "GOTO was evil because we asked, "How did I get to this point of execution?" Mutability leaves us with, "How did I get to this state?" which feels relevant to this discussion.
also if it's helpful, there's a technical write up here: https://medium.com/@zachlieberman/land-lines-e1f88c745847#.k...

and overview video:
https://www.youtube.com/watch?v=w6-LK9BOVTA
I too was wondering how TCP and UDP can affect one another on the same interface and the explanation I read is that at the lowest level both UDP and TCP segment data into packets and place them onto the same network adapter's queue which can affect they way they are transmitted under congestion depending on the device/drivers.
The author does not participate in any of the discussion there. Furthermore when you posted the link it only had 4 or 5 comments that added nothing to the discussion.

The best example is this one:

Https://news.ycombinator.com/item?id=13196875

It's the same exact link with no comments. What's the point?
Thanks. I will watch this.
> What prevents the powerful from going straight to the source of production and value?

Nothing. Certainly not this crowd. Which is why I expect the long term future to hold something akin to a Blitzkrieg that will actually be over in a flash. After the delete function has been prepared and perfected, the delete button gets pushed. Not by the naive fools who built it, mind you. Those will a.) hardly know what they're working on and b.) be gone first.