skysight-inc/HackerNews huggingface dataset:
I am a rubyist for over a decade now, and while I don't have a problem with the monkeypatching per se, I don't think anyone should be holding up ActiveSupport's time zone support as a paragon of good API design. Yes, on the surface it looks pretty nice, but because of the weird mix of different classes and extensions you get a frankenstein API that is a very leaky abstraction. I could dig up a raft of examples, but just off the top of my head... Date.today respects the global setting of Time.zone, but Date.yesterday always gives you the UTC date. The inconsistencies and permutations of Date, DateTime, Time, and TimeWithZone, combined with machine clock, Time.zone global, and UTC lead to so much confusion that the only way to ensure correctness is to declare a subset of the API which you always use, and reject everything else just so your team gets used to reasoning about it.

Sorry for the rant, but I've spent many years as the only California developer for a time based in the UK, suffering the tyranny of developers who spend half their year blissfully living in UTC and unknowingly foisting off their dirty time zone bugs on me.
There's also vimium: https://chrome.google.com/webstore/detail/vimium/dbepggeogba...
so a lot more complexity to just change the volume inside the chamber in another way?
"YC ^Ad^ Stacks"

maybe, still interesting though.
Do you plan to support middlewares?
I agree but they have a guaranteed job if they retrain. These are relatively smart and educated people. Retraining shouldn't be the end of the world.

In my profession (banking), staff levels have been going pretty much consistently down since the financial crisis, as banks shrink or retreat from certain activities. But these are mostly bright, educated, business savvy people, who end up doing something else. For many it is a blessing in disguise, an opportunity (albeit in a brutal way) to move away from a shrinking industry to become their own boss or to work on the next big thing.
Want to ace social media marketing?
Struggling with generating leads through social media? Budget issues? Barely any knowledge of social media tools? Worry not, we are there to help you. Check out our website - http://www.solomofy.com/ and for queries drop a mail at info@solomofy.com
> It seems to me that insider knowledge of the party is valuable on its own.

That kind of information loses most of its value when it is made public. Hence, when an entity with such information releases it, it is usually a safe bet that their goal is to influence public opinion about the party or, if there is information about criminal acts in the information, get someone indicted.
No, you're the one with incorrect history. The uucp email scheme with all the exclamation points actually appeared the better part of a decade after ARPANET email with the simple, direct addressing and delivery was in wide use. Perhaps you are confused because UNIX came late to the nascent Internet, while the various 36-bit DEC machines and OSes were there from the very beginning. Many thousands of students and academics were sending email to foo@bar.edu for dozens of values of bar before anybody ever saw !ucbvax! in an address.
CVE-2016-569 Linux flaw leaves 1.4B Android devices vulnerable to hack
Reading some of these comments has reminded me just how much I no longer have to really think about in full-stack engineering, because it's been so successfully abstracted away. It's like reading an abridged version of the history of technology growth.
I say bring back nicotine sulfate.
Yes. Libraries should provide algorithms and data structures, and parameterize a threading interface if necessary (though I think it's usually not necessary).

Applications can then instantiate their own threads and pass them to the library (i.e. dependency injection.)

So if you have 10 different concurrent libraries in an application, then you don't end up with 10 different threading paradigms or 10 different thread pools. This is a matter of application architecture -- libraries shouldn't bake in a specific policy.
It's difficult for me to put a finger on it, and that's exactly why I stoop to using words that signify subjective feelings like "cliche" or worse yet, "passe".

The long story would be that it doesn't actually teach you how to grok things (like Barb Oakley's "A Mind for Numbers" https://www.amazon.com/Mind-Numbers-Science-Flunked-Algebra/... and the related Coursera "Learning how to learn").

If I am taught metacognitive skills, I can pick up new ways of thinking, and heck, even create them.

On the other hand, if I rabbits are just pulled out of hats in front of my eyes, with said rabbits being sexually appealing with some buzzwords, then it all comes off like this: "hey fellow kids[I highly recommend https://www.reddit.com/r/FellowKids/top/?sort=top&t=all], check out this cutting edge new algorithm called Eratosthenes' Sieve, presented by Big Data specialist Google; also, did I already say big data? Maybe I should say deep learning too then! Oh yeah, all the buzzwords! Over 9000 of them!", my eyes glaze over...

I know this is going to be great for those one or two random kids in my class who seem to get it "right away" (i.e. have seen it before), while I am probably just going to feel dumb: "Hey mister, how can I too pull out rabbits from hats?", and their only answer for me will be "Well, it's easy! Let me pull out another rabbit from a hat, and you'll totally get it!". A few tries later, they'll just be disappointed with me and then we'll all realize that I am not the next Tony Stark, and I definitely won't be getting a job at Google.

EDIT: thinking about it a bit further (especially by considering why I got a "hey fellow kids!" vibe from it), I now come to realize that I had warning bells ringing in my head that this is basically a way for Google to raise brand awareness amongst youth, which is especially off-putting because of how easy it is to see-through, since no effort is made to hide it:

"Our videos illustrate real-world examples of the application of computational thinking in Google’s products and services..."
And cVim: https://github.com/1995eaton/chromium-vim

Now how do they compare?
Regarding parent poms, you can do something similar in gradle with the top-level build.gradle file.

Check out this project for an example of how that works: https://github.com/JakeWharton/butterknife
I think a large chunk of that 14k employees being laid off would be on H1B visas. Can't imagine that many local employees all at Cisco.
I'm watching a movie so I haven't looked too deeply at this, but your regexes aren't safe from ReDoS according to substack's safe-regex [1]. It might be worth finding a non-regex-based way to parse regular expressions in case of some weird routes that could cause exponential-time parsing.

[1] https://github.com/substack/safe-regex
Powerful NSA hacking tools (‘keys to the kingdom’) apparently revealed online
Weren't some of the Brazilian Olympic Village reused from the London Olympics? This was going to be a big deal four years ago.
What libraries need to do GC? That is a language issue and not a library issue.

When you are embedding a language like Go in a C program, its runtime becomes a library. But that's the example the proves the rule: there are (or were) well-known problems with that. Libraries shouldn't be doing GC.
Having worked on projects with fairly complex builds I have got the impression that most build systems are optimised for trivial scenarios and get very hacky when things get real. In the end we always end up with build.sh scripts that assemble several tools and perform tasks such as copying files etc. We often end up with CMake build that calls scripts and creates more build files to make the whole thing work. So, my question would be: why not have a build system for Java which is just a Java library and then the whole build process would be written in Java (or Scala)? Real™ languages are infinitely more expressive than build system DSLs and I find it that the default use case (just some dependencies, maybe build a doc) is actually quite rare. /rant
Present at the Creation
> They seem like the kind of company destroying people that are the death knell of every software giant.

Conjecture: you have never worked for a medium or large software company.
Yes indeed, I've arrived. Thanks for announcing ;)
Cheaper than Little Snitch[0], which has been the firewall of choice for privacy-conscious Mac OS X users for over a decade. I wonder how it compares. It's a shame that neither is open source. Also, I always wondered why there was nothing like this on Linux—I write firewall rules on my servers, but I just want to use my Linux desktop. sigh

[0] https://www.obdev.at/products/littlesnitch/index.html
Is spewing out information like a water main a heavy, dense stream of information or a just a stream of verbiage (could cut out 90%)?
I realise theres a proclivity to be anal here but there's a lot of companies incorporated in the US every day and generally one of the first thing every business does is open a bank account. I'm not saying what you said isn't true, but I sincerely doubt it's representative. Borrowing, I agree is a different matter.
I don't know if it's just my shoddy memory, or maybe it's hard to tell from the pictures, but those look a lot "cheaper" than the classic Super Soakers I remember.
Cisco has offices all over the world, I doubt hey are particularly interested in H1B visas.
Instead of time-analysis consider it to be space analysis and the analogy holds up pretty well.
Could you explain further, please? I plan on changing it a bit internally but not on growing it past its purpose as I like it to do only one thing (and hopefully do it well)
If you think that the value of species and biodiversity can only be measured in cash returns, then I'm really not sure what else to say to you.
Deutsche Post to start sale of electric vehicles in 2017
http://www.streetscooter.eu/
How is this different from page.js?
I LOVE the scroll with j & k, it's smoothest scrolling experience I've ever seen!
Welcome to the disconnect between business and life. Most businesses are operated with profit as its only real goal. Everything else is just marketing talk. Companies are run by specialists in business - i.e. people whose occupation is turning money into more money in whatever way, regardless of the money source (hopefully within the bounds of law). Product quality is only one of the many factors in making money, and is worked on only as long as it boost sales. The moment the company can sell a crappier product for the same price, they'll do so.

A lot of resentment between developers[0] and managers comes from not understanding that. Management does not care about your engineering concerns as long as they don't meaningfully impact sales[1]. Hell, even if they do, they can often paper over technical problems with marketing cheaper than it would take you to fix it. If they got a confidential memo that the whole country is going to have a sudden diarrhea epidemic, they'd happily sell the product, fire your team and buy a toilet paper factory instead.

--

[0] - those who haven't already been brainwashed into thinking in business terms first, i.e. into professionals.

[1] - sometimes it doesn't matter even if it impact sales, as long as it does so on a longer term than manager's expected involvement with this particular project.
Assessment does not have to happen real-time. The intent is to reflect on interactions at a later point to determine if one is actively listening.

In fact easily coming up with follow up
questions that already come to one's mind
while listening is a strong indicator for
an engaging conversation.

I completely agree that formulating follow-up questions are a key indicator of active listening. The key point with the metric I presented is when that formulation transpires.

If it is while another is speaking, then the listener is not engaged in listening due to considering their own response instead. IMHO, it's natural to make a "mental note" regarding a thought/topic while another is speaking and then present a considered response/question subsequently.
your thinking is not as far from sending then to prison as you might like think it is...
> I have looked at Android code.

You just have to look at the API. From little details (wifiInfo.getSSID() returning either the quoted SSID, an unquoted string of hex characters the SSID consists of, the special string "<unknown ssid>" or "0x") to the overall architecture (needlessly convoluted lifecycle, 2D rendering architecture from 2000s, the whole intra-app Intent bullshit that causes people to find alternative ways of communicating between Activities within the same app ...)
I guess you don't understand the value behind the trillions of dollars of R&D spent over the past 50 years by tech companies like Xerox, Intel, Microsoft, IBM, AT&T, Google, etc
Reflecting on Dystopian San Francisco Again
The path is preferred to the Regex, and I hope that no developer is using user input to create a route here. As specified in substack's safe-regex:

> WARNING: This module merely seems to work given all the catastrophic regular expressions I could find scouring the internet, but I don't have enough of a background in automata to be absolutely sure that this module will catch all exponential-time cases.

I also don't have it and I think the case for this error is so contrieved that it doesn't make sense to add a check in pagex. So adding a couple of warnings, one for not trusting user input and another for this specific error, should be fine.
That's what I currently do. It's really just a minor annoyance, but it is an extra layer of friction for any newcomers to the language (and a pretty bad first impression)
correct me if I'm wrong but that seems like a poor comparison.
Evans died in 2002, at age 83. If he retired around age 65, that would have been around 1967, so if he was referring to the state of the field when he was a professor that would have been in nearly 50 years ago.

"Life on a Little Known Planet" was first published in 1968, which fits in with that. The latest edition was revised and updated in 1993, which was still quite a while ago.

I don't recall for sure, but I believe the passage that mentioned only two parasitic wasp experts in the US was talking about the time when his graduate student was interested in specializing in that area, which could have been any time before he retired.

(I can't check because unfortunately I have it as an audio book. Great for listening in the car, but terrible for searching to find and reread a particular passage!)
Ah, okay. I don't have a credit card, I thought you were reffering to paper bank statements not credit card bills. :P
Meet the California couple who uses more water than every home in LA combined
It's kind of strange that massive layoffs like these result in a stock uptick. At least for me it's a sign that the company is probably unhealthy and that its value is going to go down in the future.
Extreme Single Responsibility Principle
آفر تور مشهد ویژه ۳۱ مرداد ۹۵ –  تور مشهد تابستان
Which kind of describes a lot of discussions on the Internet - people pattern-matching what they see/hear to cached thoughts in their brains, and replying to those cached thoughts instead of to what was actually said.
http://www.cringely.com/2015/06/03/autodesks-john-walker-exp...
China launches quantum-enabled satellite Micius
Unit Economics I Hate You
I currently source a number of castings in bainite for ground engaging agricultural parts and it is what I would call semi-weldable - you wouldn't rely on a structural mig weld but I've had success with both tig welding and silver solder for attaching other parts with non-structural joins.

The big win for me is the parts can be air quenched - the slower cooling eliminates one of the biggest rejection flaws, straightness
It was initially a Regex-only project so it was quite different. Then I added path-to-regex and forgot to check if there was some library out there similar so now they are quite similar.

However I can see a couple of important differences:

1. The parameters are passed to the callback in pagex which makes it cleaner:

pagex('/users/:id/:frag?', function(id, frag = 'profile'){ ... });

While with page.js you have to retrieve them manually:

pagex('users/:id/:frag?', function(ctx){ var id = ctx[0], frag = ctx[1] });

2. You can negate the url. For instance, if you want something to run in all pages except in the users page:

pagex('/users', true, function(){ ... });

3. [undocumented, not-official] There is a before and after catch-all which can be useful for debugging, analytics or similar
Binary Tree Element
I tend to agree.

Obviously automatic normalisation is the correct thing to do when doing arithmetic that crosses DST-rollover boundaries (this is what the Python stdlib gets wrong), but I don't think it should be done (by default) upon creation with a location-based TZ specification:

pendulum.create(2016, 10, 30, 2, 30, 00, 0, 'Europe/Paris') is ambiguous, and pendulum.create(2016, 3, 27, 2, 30, 00, 0, 'Europe/Paris') is non-existent. pytz raises AmbiguousTimeError or NonExistentTimeError respectively in cases where you try to construct local times like that and specifiy is_dst=None: http://pytz.sourceforge.net/#problems-with-localtime

With pendulum I don't see a possibility to enforce a "strict mode" that turns of those automatic assumptions.
There was a 13/14 year old in my maths class at Imperial College London. I can't find a reference, but there's a current student that age: [1]

The boy was American, and I understood no American university had been willing to enroll someone so young, so the family had moved to London.

[1] http://www.antonmurray.com/the-worlds-youngest-investment-ba...
You're not crazy

http://www.isoaker.com/Info/2013/01/20130107-when-and-how-di...

This is incredible... I can't find a single decent air pressure water gun on Amazon.
The Week Democracy Died
I think page.js supports middleware if you're looking for something to emulate. Basically chainring callbacks.
Then short the stock. Long-term put options. What could go wrong?
Show HN: GPU-Accelerated Digit Recognition with WebGL
Where is the linux mem gone?
#/bin/bash
for PROC in `ls /proc/|grep "^[0-9]"`
do
if [ -f /proc/$PROC/statm ]; then
TEP=`cat /proc/$PROC/statm | awk '{print ($2)}'`
RSS=`expr $RSS + $TEP`
fi
done
RSS=`expr $RSS \* 4`
PageTable=`grep PageTables /proc/meminfo | awk '{print $2}'`
SlabInfo=`cat /proc/slabinfo |awk 'BEGIN{sum=0;}{sum=sum+$3*$4;}END{print sum/1024/1024}'`

echo $RSS"KB", $PageTable"KB", $SlabInfo"MB"
printf "rss+pagetable+slabinfo=%sMB\n" `echo $RSS/1024 + $PageTable/1024 + $SlabInfo|bc`
free -m

I use the shell sum my mem is shows

rss+pagetable+slabinfo=19422.716MB

and use
free -m
total used free shared buff/cache available
Mem: 64150 60728 1955 61 1465 2866
Swap: 16383 3490 12893

It shows mem used 60728m
where is the other mem gone? somebody konws ? thanks
Taiwan bid for the Debian conference in 2018
"[...] other subtle body language signals. It is estimated that 80% of what we communicate comes from these signals."

Sounded strange to me, so here's some background:
https://www.psychologytoday.com/blog/beyond-words/201109/is-...
When it's a critical topic, you should still paraphrase things that are unambiguous. Because the penalty is too high for critical things when you're wrong, even if the risk seems tiny. In critical situations, assuming that something is unambiguous is especially dangerous.
> Fridays a lot of people work from home.

A lot of my coworkers work from home on Fridays too. Which means a three-day weekend / nothing to show for their time on Monday.
I always find this really interesting. I am a Gmail user and I think I have only clicked on an ad once or twice in the life time of my usage of Gmail, since launch.

In my naive thought, Google would care the conversion rate, how many users are clicking the ads. But in reality, maybe they don't, because advertisers don't want to miss that millions of audiences. But how effective is ads on Gmail.

Instead of displaying ads, why not send me digest? They know my location, they know my search history thus far, they can recommend things to me without actually reading my email. My inbox is like my physical mailbox. I get ads every week. Send that over in a digest.

Disclaimer: I am not a big anti-ad person. I hold privacy to a high regard but as long as privacy is respected in some form of opt-in and opt-out format, and data retention is low enough, I am okay.
fork() is not per se "dangerous" in such context. You just have to be careful enough and only use asynchronous-signal-safe fonctions, as you would do in a signal handler (see https://www.securecoding.cert.org/confluence/display/c/SIG30...)

Typically calls such as malloc(), printf() etc. are strictly forbidden in the child after a fork().
Video-based healthcare startup KRY secures €6.1M from Index Ventures and Creandum
>Something tells me that manually fabricating it on a small lathe/mill like Lonnie Johnson did would be much faster for prototyping than 3D printing, even today ... but I could be wrong.

I think you are correct, and this is true for many designs. Widepsread love for 3D printing doesn't change that. When all you have is a hammer etc.
Only reference I could find in https://visionmedia.github.io/page.js/ was:

page(callback)

This is equivalent to page('*', callback) for generic "middleware".

Which is... pointless? If you are going to call a function everywhere in front-end why don't you use an IIFE for scope or just nothing at all? Unless you wanted to put it on the <head> and make it load when the page is ready.
It took 18 years to understand pesticide link to decline in bees!
its pretty interesting that ARM was able to gain so much foothold from the UK while historically there were so many competing cpu architectures in the market.
May be Brazil can do the same
It's not 14,000 engineers who are getting laid off. It is across all functions.
TV Overlord- Python-based command line tool to download and manage TV shows
Pixel Ping
They can, but it is significantly complicated and expensive than for a non H1B
That's pretty much the state of banking in the US, already.
The article misses something important. It presents 'being a good listener' as a way of tricking the other person into giving up information. OTOH a REALLY good listener is genuinely interested in what the other person has to say. It's not a mind-game or a piece of oneupmanship: you have to actually give shit because this is a human being talking, not just an 'FTE'.
Yap. Erlang 19 (latest version) switched to using a smaller spawner executable and spawns all OS processes from there by forking. So it forks something restricted and small not the whole VM.

Here are the details of how it works:

https://github.com/erlang/otp/blob/a5256e5221aff30f6d2cc7fab...

They also claim a 3-5x speedup for launching external commands because of it. So there is a nice performance boost as well.

So basically can add 4th strategy -- fork once a small program at the start, then fork from there from then on.
The fork-exec code in my program currently does some things that are supposedly unsafe, but I can't figure what to use instead of initgroups() which is not async-signal-safe. I want to run the child as a different user for which I do initgroups+setgid+setuid between fork and exec. The only solution I see is to run getgrouplist() before the fork then in the child use setgroups() instead of initgroups(), but both of these functions are non-standard.

EDIT: Never mind, seems like initgroups() is also nonstandard but generally available on Unix-like systems.
World Economic Forum: The future of financial infrastructure
Not personal experience, but a ex coworker of mine is in the core team of a programming language and one of the top contributors there plus doing a lot of review work. He would get offers from all the relevant companies on a regular base just based on his Github activity.
You mean like Scalingo http://scalingo.com ? ;-)

Disclaimer: I'm a co-founder
My experience over the last few years has been datetime > dateutil > pytz > arrow > back to dateutil. Maybe I'll try Pendulum next. ;)