skysight-inc/HackerNews huggingface dataset:
It seems like it'd be nice to have two levels of granularity exposed in views of a source control system's history, basically corresponding to pull requests and commits. So you could drill-down to individual commits as needed, but would normally be able to work at the PR level.
Introducing Grüber: Revolutionary Ride-Sharing from GrubHub
Why do you need a CAS? Isn't an atomic write sufficient? Because we're just changing the function to use our code we don't really care what it was pointing to before, and we don't care if someone else changed the pointer before we did: it's just last write wins. In fact, the function pointer method will be able to have multiple threads try to hotpatch at once; idk about the OP code.

My guess is the OP's method can probably be extended to allow for more advanced hooking, like returning to the original function definition after running the new code or something. And, it means the caller doesn't have to know that the function is hot patchable, which I'm guessing is the most likely reason.
Awesome! Phabricator got me addicted to the clean history of squashing commits and the logical changes staying together in source control (as opposed to grouping in a PR).
With my luck, this would have been a story from my life! But as I always say, there are no "should have's" in life; there are "did do" and "didn't do". Life is too unpredictable to think "what if". It reminds me of the Matrix when Neo is in the Oracles kitchen and Neo knocks the vase over after the Oracle told him "Don't worry about the vase." Neo obviously confused says "How did you know I would break it?" and she finishes with "What really is going to bake your noodle is would you have still broken it had I not said anything?" No point in wasting energy on things that never happened.
Logistics Investors Launch Supply-Chain Technology Accelerator
If I can only to /16s at the largest, I would have to add on the order 65k ranges to accomplish it... not exactly desirable way to spend an afternoon. Even via API I don't think they'd be too happy with me.
IMO, simply flat out preventing for profit companies from talking with non customers is probably worth it. Sure, you might end up with some edge cases, but in the end customers pay for advertising and it's often zero or even negative sum.

The edge case is of course. Disease X now has a treatment!

But IMO, if it's important people are going to find out other ways.
Strange that everyone these days uses Git considering it's unusable.
That's OK, they've exposed themselves enough already -- over at that outsource drug testing lab.
I'm really tired of reading rants and opinions on Hacker News.
The changes are a natural progression towards a curated experience. You may not like it but I would argue it does not 'ruin' instagram; just makes it a more controlled experience (which many do prefer).
I am opted into their user studies group. I haven't seen a new invitation in a couple of years now. And the way they handle user studies, opt in via Google Form, they still see a particularly biased community: Hardcore Google users, most likely technical in nature.

If Google went to a senior citizens' home, and watched how some of their less technically inclined users used their products, I'm confident Google would fire everyone with the word "designer" in their title and start over.

But this is largely immaterial to this particular joke. The joke was funny. The choice to implement it for real was not.
> CM's privacy guard doesn't deny access to the contacts, it returns a valid address book listing... just an empty one instead of your real contacts. ... Which is just to say that that's not really a valid comparison.

Wot? It's totally a valid comparison.

The problem is transmission of contact information from your phone to a third party. Telling Signal that you have an empty contact list solves that problem, and it solves it far better than just throwing a permissions error or whatever when the software goes to request a contacts list.
They are not visible on the same page as the content unless you have news genius installed or have navigated to the news genius proxy for that page. You need to opt in to see the comments.

God forbid people can post organized opinions you disagree with...
Push for $15 Minimum Wage Heats Up
Use Go, Dump Node
I'm very glad that where she wrote "Multiply that 0.6 percent chance of getting any given job by the 10 or so appropriate positions in the entire world, and you have about that same 6 percent chance of “success.”" she was in the regime where p*n ~= 1-(1-p)^n and her conclusion was still correct.
It really depends on each individual's workflow. I tend to use lots of "in progress" commits (each time things are "green"), and as I go, I regularly squash the commits, so in the final pull request I typically have several commits (and if I wasn't squashing it would have been a dozen). If I do feature and a refactor, they are always separate commits, it's easier to review these and bisect if something turns out to go wrong.

Some people might do similar things but they might not assure each commit is green, and they never squash anything (so you end up with non-meaningful commits).

As @3JPLW said, I see when it can be useful for opensource maintainers to have the option to squash someone's commits, when the change is small, but there are many commits (due to a review ping-pong etc)
Python 8 will be the next major Python version
Even Head of HR at my current company referenced his consulting practice at our recent Town hall meeting. Found that interesting. The rules for us: don't build in the same space.
Not only maintainers - anyone tracing back through the history to find out what broke their use case.
I use this workflow:

1. branch off master
2. work, commit, push, test (on CI server)
3. decide it's time to ship
4. rebase -i, push, test (again)
5. git checkout master && git merge --no-ff feature_branch

(make the merge commit message a summary of the feature)

master ends up being a list of feature branch commits, bookended by the merge commit which introduced the feature. Getting the squash commit diff is as easy as 'git diff feature_branch_merge^..feature_branch_merge'.
I'm waiting for the code review tool that takes a massive squashed PR and cuts it up into a series of clean, atomic commits that can be reviewed individually.
Duck typing is the way to... go? If you did that on purpose, nicely done.
You might also enjoy the Rail Accident Investigation Branch's reports. They are written in a similar style.

https://www.gov.uk/raib-reports
I think his point was that IRC, too, allows instant communication, and self-hosting would allow parent to enforce necessary security policies. Not that it is or isn't worth the effort.
WW3 SAS BANNED FROM WIPING OUT US BACKED ISIS,LOTS OF UNSEEN NEWS
> noisebridge - it's a very good place but the last two times I was there it was quite dirty. it also had homeless people...

Have you been there since this happened? https://noisebridge.net/wiki/Reboot The character of the place has changed dramatically for the better.

Anyway, happy to help.
Show HN: Graph Database written in Python using wiredtiger with Gremlin querying
Sometimes yes, sometimes no. Merge commits are nasty imo and I'm glad we can now forbid them outright, but a full squash isn't always the solution either.

Take a look at this PR for example:

https://github.com/HearthSim/python-unitypack/pull/4

Lots of back & forth. All the commits are related, and the PR is there to land all of those commits at once. I could land some of them right now (as they're safe to land), but keeping them in the PR keeps everything related in the same place (and none of them are required until that last commit lands).

A PR mirrors a "patchset" on mailing lists. You don't always want to squash all of it.

What you do want to avoid is a situation like this:

https://github.com/jleclanche/django-push-notifications/pull...

Where the original author creates their original commit and doesn't know how to --amend + push --force to the PR, and you end up with a ton of commits which you don't want to land all at once.
Most definitely - 'Additionally, DeepSpark, during its code scanning, is capable of generating code for new components of Spark'
Ads are malware to the mind.

I don't want to eat fast-food, but they will use shiny pictures, bright colors, reverse psychology, "everyone else eat burgers" tactics, etc. to make me want it.

They are little squares of manipulation.
There probably closer to that than you might think. How many deaths are from food advertising? Side effects from Drugs? etc etc.
Arrested
Thanks for the interesting, non-inflammatory comment. You raise a good point.

The fact that they proxy the content on their servers definitely puts them in a more vulnerable position than if this were, for example, a strictly client-side chrome extension that fetched annotation metadata and re-rendered the page accordingly.

In the purely client-side case, the full article would not pass through their servers, only bits and pieces of it. It would be easier to argue fair-use if you're only storing parts of the articles, and comments/highlights, on a remote server, instead of proxying the entire content.

(What if the article is behind a paywall, for example? Then genius.it effectively becomes a circumvention proxy.)
Article published on: APRIL 5 2013. At the end we find: "Correction, April 5, 2014: This essay originally misspelled William Pannapacker's last name."

So it took exactly a year to find that spelling mistake. That's kind of funny, in a sad way.
It would be cool if people took this as a lesson to not close dialogs without reading them.

That's, of course, not what's going to happen.
Well, that's why I was asking, I wanted to understand. And now I do.
In addition to the rest of the comments, HipChat doesn't handle file uploads nearly as well, the message formatting is a joke, message history randomly gets erased, simple things like posting a YouTube link in Slack will embed the actual video, you can edit message in Slack (HipChat has that silly "s/word/replace" feature). I use both on a daily basis and Slack is just better in every way.
Well its apt that Mark Zuckerberg gets the blame then.

There really should be a weekly game. Top score to the person with the most items added to the list -

If Mark Zuckerberg was running Wikipedia:

1. Everybody in the world would need an account to access it.

2. The most liked parts of a topic, lets say Linear Algebra, would appear before everything else on the topic.

3. A "free basics" version of Wikipedia would be made available to those who can't afford cake.

4. <please continue>

Next week we play, if Mark Zuckerberg was running Linux.
The problem is, are we developers or source code librarians?

My git workflow is pull, commit, push. I don't rebase or branch or anything else because it completely distracts me from what I'm doing as a developer. YMMV.
Accounting drop-out and self-taught full-stack developer with 4+ years of experience. Passionate about UX.

Location: Toronto / Vancouver

Remote: No

Willing to Relocate: Within Canada

Technologies:
- Front-End: AngularJS, BootStrap, React, jQueryUI, CSS3
- Back-End: NodeJS, WordPress (20+ plugins made), PHP (Laravel), SQlite, MySQL
- Cloud: DO, Apache, Nginx

Resume:
- https://www.dropbox.com/s/rknpusc7v9affih/Resume-X.pdf?dl=0

Personal Projects:
- http://formcraft-wp.com/
- https://formcrafts.com/

Email: nish at ncrafts dot net

I am a builder of stuff, and a survivor. From grey-hat SEO, to making table-layout sites in Dreamweaver, to trying to emulate double-binding with jQuery before Angular was around, and selling 10k licenses of my personal project in 2+ years - I have done everything, and learnt my lessons.
We are also switching to Slack from Hipchat due to bad downtime and messed up apps. Too bad, because it use to be decent...
My PhD is in probability.

When I was applying for academic jobs upon finishing my PhD, I said to one of my professors "every time I apply for a job, I feel like I have probability epsilon of getting it".

His response: "apply for one over epsilon jobs".

I told him I wasn't willing to accept such a large probability of not getting a job...
Much medical lab practice includes running known test samples through the process regularly to check the test.

One of my favorite answers to "what was your most memorable bug" starts with this process. We only discovered a major bug we had shipped years prior because a lab's twice-daily Quality Control check failed and they called us to report the problem. That kicked off a shitstorm...
I suppose if your use case is "hermit".
Yes, I'm guilty in DRY violation and I mentioned it in the post - I still manually translate Verilog to Python when go from simulation/debugging to hardware testing/debugging. And we are looking to use a more productive way to do this - write the simulation code (that replaces the CPU activity of the real hardware) in the programming language (Python) rather than switching to System Verilog that is somewhat in between the hardware description language and a software programming one. That is in our future plans, not there yet.

Other than that - DRY is always in our agenda, and there is only one place that holds the parameters/ preprocessor macros that define the hardware and its software interface. Python code reads Verilog files and extracts all the parameter names and values (names/types are automatically added to the Python source to allow checking). That Python code allows to run tests on the target system, do some calibration and save results in the same Verilog parameters format (same as here https://github.com/Elphel/x393/blob/master/includes/x393_cur... , just no header). Same program uses Verilog data to export C files, it uses hand-crafted code to allow flexibility - it is not always possible to fit everything in the same format, but here the focus is again on the DRY - new code to do what is different, and use common code that processes multiple data items as much as possible. And when it is not - provide checks to catch differences when you do have to repeat yourself.

Only part of the Python code is a "translation" of the Verilog tests (and this we plan to eliminate in the future), the rest is just a continuation of the project, and when writing (not just running) that code I'm re-using data exported from the Verilog (and re-exported when there are changes that influence data). Same with C - code continues the project, re-using Verilog+Python data.
Yes, the pranks tend to be lame and boring, it's especially depressing when you think probably people spent months working on these things.
Science advances one funeral at a time.

-Max Planck

Academia is brutal, and grad school literally gets medieval on your __. In some fields though, (Biosciences in particular) if you want to be anywhere near R&D it's hard to be taken seriously and have a real career without one.

Source: I got a PhD, it wasn't especially pleasant, I don't regret it, but I'd definitely do it very differently if I got to go back in time.
I haven't seen many people arguing that News Genius shouldn't be permitted to exist (except perhaps on copyright/derived work grounds, which given their implementation is quite arguable), just that it's not a good idea as implemented. And, of course, people are well within their rights to use javascript/etc to prevent the embedding that News Genius does, or to e.g. block referrals from reddit or HN.
Quip does slash commands, but I don't know if they support custom integrations. (Shows how little I know about the platform really... I just like the concept of structured docs + unstructured chat being hyperlinked together.)
Small, cheap gravity gadget to peer underground
Ignore my earlier comment, we pushed out some fixes. There is a working F# template in the experimental category. However please note that the performance is not great right now, you'll pay a startup cost of invoke fsi.exe per function invocation. It will get better!
It must be painful to be such a bitter person.
I have never bought them from Canada Post, but I have bought them countless other times in Canada and never showed ID for any of them.

However, in order to make certain purchases online, it's often been the case that you need to "Register" the card with the provider, and supply details that would match billing information for the selling party. I can't see any reason why you couldn't fudge that, although shipping information for real goods would leak information.
The use of propaganda is well established within the PRC (https://en.wikipedia.org/wiki/Propaganda_in_the_People's_Rep...).

I'm more interested in the idea that "rumors" are a problem that needs to be tackled and the best way to do so is to ban them and only trust what is coming from the government. Isn't this type of system ripe for abuse? Let's say a rumor was that a certain government official embezzled $100M Yuan, but it was true. Perhaps that would be very embarrassing for the central party and thus they issue a statement saying that is not the case. Isn't it the public that is hurt in this situation?
> Like you said, we are willing to pay, but for about $7 per user we aren't getting much more than the free plan...

In comparison to a free plan sure but in what real business is $7/user/mo too expensive for anything? That's less than an hour's minimum wage[1].

[1]: Technically it's quite a bit less as min wage in the U.S. is $7.25 and that doesn't include corporate payroll tax or medicare/social-security matching
that is the whole reason he walked away from the company. Jobs refused to fill out all the paperwork to form a corporation. They were running the company as a partnership which left all the members liable for everything the business did. It was not just the bank loans that were the worry. It was the contracts they were signing, if they failed to deliver the owners could personally have been sued for breach of contract
This is a huge issue for me both with GitHub and Atlassian Stash.

On both you even cannot see when the branch was started, and you can merge fine as long as there were no merge issues.
Then you run gitk and it looks like a spaghetti-horror, with trivial branches being started 200 commits ago.

I don't necessarily need a "rebase&merge" button but at least info about the shared ancestor with master.
Arbor Networks | https://www.arbornetworks.com/ | Delft, Netherlands | ONSITE

Arbor does DDoS and Advanced Threat Protection.

We've got two job openings however the Arbor Delft team is small so these job descriptions describe where your main focus will be, but you will be expected to pick up tasks "from the other side" now and then. Experience with Linux and the command line is preferred.

Also, the main language in the office is Dutch and you will be expected to learn it if you do not already know it. Initially you can get by with English.

1. Software Developer – UI/Javascript Applications

- http://arbornetworks.jobs/delft-nld/software-developer-uijav...

The main focus is the frontend. UX experience very welcome although you will be mainly implementing (at least initially) instead of designing. Experience with one or more of the following technologies: Rails & Ruby, AngularJS, React, JavaScript.

2. Software Developer - Backend and middleware C/C++ and Python

- http://arbornetworks.jobs/delft-nld/software-developer-backe...

The main focus of your job will be the everything except the frontend. Experience with one or more of the following technologies: C/C++, Python. Experience with one or more of the following will make you more interesting to us: INTERCAL, Ruby, Scala, shell scripts.

If you're interested contact gertjan.schoenmaker@arbor.net or apply through the above-mentioned links.
Okay here is some background: http://m.youtube.com/watch?v=qOP2V_np2c0

Show me the data you've seen. The 1970s were the height of wages and unionization, and then globalization (thanks to technology) led to outsourcing. Early physical automation was ok because people all started to sit in front of computers. But now, the mental tasks are being automated away, and that leads to jobs coming back... to robots.

Also read this: http://www.vanityfair.com/news/2012/01/stiglitz-depression-2...

Automation is also what led to the Great Depression as we lost primary sector jobs and it took a decade to migrate to the cities and build up the secondary sector, factories, workforce.
FYI, this is the only active archive.org entry that is valid for this url.

Curiously it looks like they switched(redirected) to en.people.cn from english.people.com.cn just days after this article was originally released. Not sure if this is an issue with archive.org and 301 redirects or if this actually occurred on this date.

Interesting either way.

I could not find instances of any of the other pages correctly archived, sorry m8.

I case anyone is interested and doesn't want to transcribe from a screenshot, this was the original url of the article:
http://english.people.com.cn/90777/8035568.html
Does "git log --merges" get us there?
This seems pretty cool! I've been looking for something like this. I really enjoy the open source courses on github, because I can do them at my own pace and figure things out.
Tulip | https://tulip.co/careers.html | Boston, MA | Full time, interns | Onsite

Do you want to help realize the next industrial revolution?

Tulip is transforming manufacturing processes by bringing the latest technological advances from the lab to the shop floor. We have multiple Fortune 500 customers and are already enabling production lines building the things you interact with everyday.

Whereas most factories are still using state of the art technology from the mid 19th century, we come from the future to bring them a rich, realtime web app, modern tablets, IoT systems, in-depth analytics, and more. Our products are already (measurably!) helping our customers, so we're rapidly expanding our number of customers and size of deployments.

We’re looking for people to join our core team who are excited about working anywhere our software stack: Meteor-based web development, IoT/embedded software, computer vision, data science, technical operations / DevOps, web-based UI design, and anything else we need to make the best product possible. E-mail us at jobs@tulip.co.
> Unless it's moved since 2014...

Noisebridge is still at 2169 Mission St.

> ...it seemed to me that all it needed was a match to go up in flames.

The space has been inspected by both the fire marshal and professional electricians and is not a fire hazard and is (after some work during the Great Noisebridge Reboot back in mid 2014) up to code. :) Appearances can be (and often are) deceiving.

If you're in the neighborhood, maybe pop on by during open visiting hours to see if the changes alleviate some of your concerns.
Wow, I actually prefer the look to the S, never did like the black nose.
But they aren't asking people which one they prefer. Some GM or product manager somewhere has goals to "increase engagement" which is probably naively defined as scrolling or clicking more. They need those metrics to go up to sell more ads.

People's opinion that Instagram is 'ruined' is completely valid. Just because the 'average' experience ticked up doesn't mean that you're making it better for everyone. This is a classic case of managing to the average. The desires of the people who are most passionate about Instagram are being ignored in lieu of hitting quarterly numbers.

This is why it's important to deeply understand your users qualitatively as well as quantitatively. You can't A/B test your way to a great product.