skysight-inc/HackerNews huggingface dataset:
Thanks!

I agree with you that the gettext approach relies on the assumption that everyone speaks the same language. I would add that it also relies on the assumption that every programmer has good writing skills, which is not always the case. In my teams, some programmers are really good at writing code, but not so good at writing a correct English or French sentence. In such a situation, string IDs are better.
This is not 'Gaming' for benefit of better talent over good or bad. This is simply 'Transfer' and everyone who has an approved H1B knows that transfer is an option. So this is an advertorial which simply says you transfer your H1B to us and we will get you a contract somewhere, regardless of your talent.
That depends on the type of strings you are comparing. If you include the full Unicode set, you're going to run in to huge troubles in probably all languages simply due to the nature of the Unicode character set, rather than the specific language's handling of strings and Unicode code points.

But, personally, if you're teaching Python to a class, whether it's 2.x or 3.x. You should probably stick to using some variation of string.upper() == string.upper() to explain simple comparisons, due to simplicity.
Bitcoin Is Growing Up: An Infographic
> All a take-home project does is separate those who can build superior code from those who can build good code under ideal conditions.

It also separates those with no job who spent 20 hours on the project from those with jobs who put in the requested 4 hours.
The most interesting part of this article is how much of the Neanderthal genome is still present in the non African population. I would be really interested to see the same analysis applied to the Melanesian population who are 6% or so denosovian [1].

1. https://en.m.wikipedia.org/wiki/Denisovan
Less than 24 hours on Udemy as an instructor and I’m close to leaving
Justworks Is Hiring for a DevOps/Site Reliability Engineer
I think any animal would be startled if they started eating and a new object was covertly placed behind them... including humans. Cats aren't afraid of cucumbers, they're afraid of strange things in strange places.
Although the per country limits hit India and Chinese born beneficiaries in employment based preference categories the worst, there is also a waiting list for Filipinos in employment based third and other workers. In the family based categories, Mexicans and Filipinos generally have the longest waits, with Mexican family first preference (i.e. unmarried children of US citizens) in December 1994 and Filipino fourth preference (i.e. siblings of US citizens) in June 1992 vs. 2008 and 2003 for those categories generally.
Basic man-page style documentation for your own scripts comes practically free with powershell. Powershell uses named parameters (though technically you're not forced to do so) with command-line tab-completion. Powershell uses a standardized verb+noun syntax design which makes it slightly easier to figure out what commands are what. Powershell uses an object pipeline instead of plain text.

This is the spirit of unix taken to the next generation. It's an incredibly useful CLI environment and pipeline which makes it easy to combine small tools to achieve powerful functionality while also facilitating making scripts by making them easier to use and easier to write.

For example, let's say I wanted to find every process using more than 100m of ram. With powershell that's just:

get-process | where WorkingSet -gt 100e6

Because powershell is object based you gain a lot more potency in the command pipeline. For example, let's say I wanted to kill all processes that matched a certain filter. That's as easy as piping the output of get-process through some filters then into stop-process. Let's say instead I wanted to wait until all instances of firefox are closed, that's just this:

get-process | where path -like '*\firefox.exe' | %{ $_.WaitForExit() }

Powershell is far from perfect and it has a few very annoying gotchas here and there, but so does bash, python, and any other language for that matter. Powershell is a very powerful language that has benefited from a lot of rethinking of some of the traditions in command line interfaces that exist solely because that's how it used to work back in the day despite the reasons for those choices no longer pertaining in the here and now (teletype terminals, slow connections, slow everything, etc.).
Great post. Thanks for sharing the profiling info.
Glyphs.co – TypeKit for SVGs
In case it helps (I'm a moderator at HN), every user who is here in the spirit of intellectual curiosity belongs on HN. That includes our Muslim users as much as all others. We have a large, international community, so tolerance of differences is critical.

It's ok to explore the specifics of a current situation if one does so civilly and substantively. But when someone attacks Islam per se, that is a religious flamewar and we tell them it is not allowed: https://hn.algolia.com/?sort=byDate&prefix&page=0&dateRange=.... The goal is to avoid flamewars, in which vitriol is exceeded only by tedium—the same thing we seek to avoid everywhere.

Since Rumi is no less Islamic than ISIS, the discussions this excludes are not serious. HN can do without puerile generalization, and amateurs with a copy of the Quran and an idée fixe can conduct their exegesis elsewhere.
I'm creating general intelligence in Java multicore.
The title of this article seems a bit misleading. It was "glorious" - except that it broke many of the most popular sites on the web. Also, the discussion of "open source" javascript seems a bit confused. For anyone who cares, they can always look at the Javascript that's running in their browsers.
A contest for making friendly online bots
Right, but 66k is market rate according to the government for an SF based Level 1 Computer Programmer...
I've used Linux for many years, but I've always defended Vista. The other complaint about Vista was excessive resource use. I tell people that When XP came out, Intel released the Pentium 4. When Vista came out, Intel released the Core 2 Duo.

I'm conflating processor date with date-you-could-buy-a-computer-with-that-chip, but still: Pentium 4 is a world away from Core. Windows Vista does a lot more than XP.

The complaints went away because people gradually bought computers with Core architectures.
Best Web Design Courses
You have been able to write C# for a while now.
Also someone who's leaving because he couldn't be productive in the environment isn't likely to receive much praise from their ex-employer.
Best interview I have had was an interview, then it was followed up by a paid "side-project". I got paid to do some work for them and everybody was happy. Eventually, I figured out there where some politics/business practices that I didn't care for and I politely declined the position. It just wasn't a fit, not the end of the world, nobodies feelings where hurt. (it also helps having a job, when looking for one.)

The thought of 3 month probation period is just silly, the author clear doesn't understand the concept of risk.

I know when I walk into an interview and someone asks me the difference between php 5.6 and 5.7, that's when I walk out. (true story)
Yes, but you must:

•set a clear and reasonable standard of performance

•communicate the expected level of performance

•measure the employee’s performance

•take appropriate action to address any concerns

•allow a reasonable time for improvement.

from: http://www.hrreporter.com/blog/canadian-hr-law/archive/2013/...

Which is why pretty much every single employment contract in Canada includes a probationary period.
We share a lot more than 20% of our DNA with Neanderthal's ~99%. So, it's not clear exactly what they mean by this article.
That bill does not increase the number of employment-based immigrant visas/greencards -- it just eliminates the 7% per-country limit. In my opinion, it's a poor piece of legislation. The I-Square Act does a much better job at improving the terrible skilled immigration system: https://www.govtrack.us/congress/bills/114/s153

The best bill so far that Congress has introduced in the last ten years was S. 744 (113th Congress), which passed the Senate, but was blocked by then House Speaker Boehner (despite majority support in the House) under pressure from some racist and xenophobic far-right republicans: https://www.govtrack.us/congress/bills/113/s744
Not at all, it forces you to unify to storing character data as Unicode code-points. Eventually if you go down far enough, you're reading the raw bytes you speak of from some sort of external system/file/DB. It's at that point that you define your encoding, and never worry about it every again. Except for when you touch those external systems/files again, again with full knowledge about what encoding is required.

Either way, if you're not dealing with differently encoded character data in Python 2.x as noted above, you're causing yourself some unnecessary headaches.
BitDrones: Interactive Microbots Show Future of VR Is Physical
“Programs must be written for people to read, and only incidentally for machines to execute.” [0]

[0] https://mitpress.mit.edu/sicp/full-text/sicp/book/node3.html
What is SageMath's Strategy
Thank you for pointing this out. I am at work! Luckily I always check comments before clicking on the articles (seriously, this isn't a joke). :)
In the long having a triple based API does not mean you need to have a single triple table based storage.

In the SPARQL world that is actually quite interesting as different systems have very different data layouts while maintaining the same basic query language.

Comparing to the top post. I think triple systems are much more scalable than Neo4J even if not as popular. There are a few triple systems with a trillion node benchmarks. Even more with a 100 billion plus. Neo4J has at most ~34 billion relationships, and no more than 274 billion triples. Those are hard limits per current Neo4J documentation. But I have not heard of any Neo4j systems in production at that scale.
While I know of at least one SPARQL system that is running with 4 trillion edges (http://allegrograph.blogspot.ch/2015/11/allegrograph-news-no...).
I'm currently taking Andrew Ng's Coursera course and I'd agree it's quite accessible. In fact, if you have a solid understanding of calculus and linear algebra, you might find it a bit slow at times.
"When nuclear bombs are illegal, only the criminals will have nuclear bombs."

I think your grand unifying theory needs more nuance.
Yes, I was thinking about the same thing...

And I feel even a commercial airline could make a similar device a standard configuration...that might make flying more expensive, but perhaps we could be able to reduce the cost somehow when manufacturing in massive scale...
Whole H1B system is essentially modern form of slavery. I've seen people becoming multi-millionaires exploiting this slavery system. Companies in India have amassed massive revenues exploiting the same. The way it works is you put advertise in newspaper for minimum expected wage for tech worker. Then you buy a genius 3rd world tech worker and sell him/her to clients for approximately twice that rate. Then you put significant chunk of income which was supposed to be all theirs in to your pocket. Even if you managed to sell only 10 tech workers you will be minting close to million dollars a year for absolutely doing nothing but the initial paper work. Companies like TCS, Wipro etc typically have 100s thousands of such workers for sell. The reason this is slavery is because your ability to negotiate your wages is extremely limited. Sure, you can transfer your H1B but companies which accommodates such transfer is few and far between because of cost and legal people they have to keep on their staff. Most startups are immediately out of question for employment, for example. Further, if your H1B is coupled with green card application then it puts further friction in changing jobs.

So in effect, H1B is just glorified tech slavery. The way to fix this system would be to allow H1B workers to apply anywhere they want without effecting other processes such as green cards. This would immediately not only stop slave labor but also bring wage parity to market.
I work in a company which provides service/access to a certain kind of data, and I always roll my eyes when executives trot out the "We're a technology company" line.

No, if we were a technology company, we'd actually care about reinvesting in things like build-systems, rather than ignoring the technology until they want quick hacks to help salesmen make quota in the last month of the year.
A Parka and a Fashionista
> "Here are some of the things I feel as though would be the most impactful and meaningful upsides to birthing AI:

- We would finally be able to travel through time and space
- We would be able to cure all diseases"

And that's where I stopped reading.
Concentrating the delays and therefore the abuse to two countries created the IT outsourcing monsters you have now(search for TCS, Wipro, Infosys, Cognizant...) . Distributing the delays would therefore create smaller companies with a more diverse workforce and therefore would level out the H1B wage gap. Think of disrupting the status quo..
Habits can be changed, but your circadian rhythm has a natural state which is different for everyone, and it's an eternal struggle if those two things are at odds with each other.
Exactly. This is the same as gun control. If a technology exists, you cannot tell people to not use it; otherwise, all you've done is put law-abiding citizens at a competitive disadvantage while arming the bad guys. To argue otherwise is absolute ignorance.
Whoever made this website has never heard of "Never break the back button" rule. They literally rewrite my history with every click.
There are workplaces that can tolerate people coming in at noon. Took me years to find one, but they do exist. Keep looking :-)
> And everyone is still skeptical about it,

They are not skeptical. Nobody thinks "yeah if I just wait long enough, Python 3 will go away and 2.8 will come out".

They just don't see an incentive to update. Simple as that. It is basic economics of time and money.

Python 2 wasn't terrible and Python 3 isn't dramatically better. Unicode and other stuff in Python 3 is nice. Is it nice enough to start digging into stable, working, money making code just to say "Yay, Python 3"? I think the development community has spoken by how it was handled. It's gonna happen but it will happen at a very slow pace.

Imagine this alternative scenario -- "Python 3 brings 3x speed improvement + removed GIL". Ok, I bet you, there would have been a much faster adoption because now there is a greater incentive to justify it. People would think "Yeah, I'll destabilize my code a bit but I gain performance, I can do that".

Someone in a sibling comment suggested "They should have just stopped updating security patches for 2.7, that would have forced them to use 3.0". That's ok if Python holds a monopoly on development languages. But it doesn't. As soon as that happens developers will not just look at updating to Python 3, they'll start looking at other ecosystems: Go, Elixir, Java, Clojure, Scala, NodeJS etc.
I don't mean to imply it's dead, but I think it's safe to say it's resting? I haven't heard of new development being done in it in a while, and its time in the spotlight certainly seems to be over.
Machine learning is fundamentally mathematical, so you can't expect to completely avoid it without remembering or learning at least a little bit of the maths. Trying to avoid it all won't do you any favors, it will just mean you can't understand what is going on.

On the other hand, the math you absolutely need to follow along is pretty straightforward, so you can hopefully find tutorials that emphasize the applications and graphic examples of what is going on.
Course marketing as a growth channel
Right! There is one across-the-board solution that occurs to me, let's say, the US has an overall cap of 40,000 for employment based preference category, 2800 each are max caps for Indians and Chinese. Because of the 7% quota, I would expect at least some, let's say, M of the 40,000 are left unclaimed. So why can't they take M unfulfilled slots and redistribute that to clear the China/India backlog?

You can think of the same for EB3, and family petitions too. This would be more equitable than 7% quotas.

Edit: I did back of the envelope calculations based on this data: http://www.uscis.gov/tools/reports-studies/immigration-forms... For the last year, there are about 120k applications approved, while 140k is the limit. At the end of the year, the remaining 20k can be split up among people in the queue. This can be made even fairer if you aggregate it over two years, and then tie the number of immigrants to the inflation rate. I estimate it would shave off at least 3-5 years from the current wait times for EB petitions. It can even be tied to the percentage of the country's population that got an H1B. There are some more trends here: https://www.fas.org/sgp/crs/homesec/R42048.pdf
Related, there's a Twitter account that posts weird excerpts from changelogs and patch notes, mostly from games: https://twitter.com/thestrangelog

"Reduced maximum amount of feathers you can get from hitting dead birds with rocks"
"Fixed a bug where robots would spawn underneath the piano."
"Rodent men have no skin"
As far as i know, most of the outsourcing companies have a contract with the employee that will make the employee pay a huge fine if he quits them after moving to the US. I'm not sure about the legality of this, but a lot of companies enforce this somehow.

(source: i'm indian and i have a lot of friends who moved here on a H1B through the 'outsourcing' companies).
How about this: we assume terrorists can fucking talk covertly whenever they like (since there are myriads of channels and codes that they can use) and that mass surveillance is not the way to catch them plotting their next act.

And from then on, ONLY use surveillance on specific targets under investigation.

And while at it, maybe even have a limit on the number of targets each agency can investigate, so they chose them wisely.
Or, just use iterators.
Mass Surveillance Isn't the Answer to Fighting Terrorism
Your point illustrates rather than negates mine, which is that Mohammed was a military leader, rather than a peacemaker. After the Battle of the Trench his army, under his command, killed many hundreds of Jews, who had surrendered. Here is the next section of the Wikipedia page:

>Then they surrendered, and the Apostle confined them in Medina in the quarter of d. al-Harith, a woman of B. al-Najjar. Then the Apostle went out to the market of Medina (which is still its market today) and dug trenches in it. Then he sent for them and struck off their heads in those trenches as they were brought out to him in batches. Among them was the enemy of Allah Huyayy b. Akhtab and Ka`b b. Asad their chief. There were 600 or 700 in all, though some put the figure as high as 800 or 900. As they were being taken out in batches to the Apostle they asked Ka`b what he thought would be done with them. He replied, 'Will you never understand? Don't you see that the summoner never stops and those who are taken away do not return? By Allah it is death!' This went on until the Apostle made an end of them. Huyayy was brought out wearing a flowered robe in which he had made holes about the size of the finger-tips in every part so that it should not be taken from him as spoil, with his hands bound to his neck by a rope. When he saw the Apostle he said, 'By God, I do not blame myself for opposing you, but he who forsakes God will be forsaken.' Then he went to the men and said, 'God's command is right. A book and a decree, and massacre have been written against the Sons of Israel.' Then he sat down and his head was struck off.

This actually says that Mohammed himself beheaded the Jews, but even if he didn't, he allowed it to happen. Thus, ISIS follow this same pattern.
For those who want better Python highlighting in VSCode, we've just published MagicPython: https://marketplace.visualstudio.com/items/magicstack.MagicP...
I hope we don't depend on the unavailability of nuclear bombs to the bad guys on them being "illegal".
You can backtest it against languages that appear frequently in programming forums or Silicon Valley meetups and then take a look at their popularity & use by big companies 5 years later.

I've done this anecdotally (i.e. not with a huge quantitative sample size, but looking at specific "hot" tech companies and the tech stacks they end up using) and it seems to work, but is subject to certain gotchas. Data points:

EBay (1995) - Perl, rewritten in C++ in 1997, rewritten in Java in 2002. Google (1998) - C++. Del.icio.us (2003) - Perl. GMail (2002) - Perl, rewritten in Java circa 2002. LiveJournal (2002) - Perl. Flickr (2004) - PHP. Facebook (2004) - PHP. YouTube (2005) - Python. Reddit (2005) - Lisp, rewritten in Python in 2006. AirBnB (2006) - Ruby on Rails. GitHub (2007) - Ruby on Rails. Dropbox (2007) - Python. Hacker News (2007) - Arc, YC internal tools (c. 2012) are written in Ruby on Rails. Twitter (2007) - Ruby on Rails, rewritten 2010 in Java/Scala. Uber (2010) - Node.js, supposedly this was a rewrite.

There are two big caveats:

Sometimes a big competitor comes along right when a language is undergoing a massive rewrite - for example, it looked like Perl would own the Internet around 2003, but just a couple years later we got Rails and Django and Perl stagnated with Perl 6, and so Perl jobs are nowhere near as hot as they would otherwise be. Similarly, Python was poised to take over much of the non-web server space in 2008, but in 2009 Node.js came out just as Python was losing steam in the Python 3 transition. Python still remains pretty hot (it's been helped by its use in data science), but it may've lost the startup server market to Node.

The other big anomaly is that there was a lot of attention around Haskell and Erlang from 2005 - 2008, and yet these are still niche languages. Erlang had one big success with Whatsapp and some smaller ones with Facebook chat and CouchDB, but didn't really become mainstream. My hypothesis there is that because both of these were old languages that were rediscovered, they were built with some assumptions (eg. strings are lists, or funky POSIX interfaces) that didn't fit modern startup development, and so they couldn't gain critical mass. But then, both Python and Ruby were old languages that were rediscovered; perhaps it was the sudden resurgence of Linux (which both Python and Ruby were steeped in) along with the web that carried them forwards.
Exploring the Last Democratic Presidential Debate with Machine Learning
The best backdoor to encryption has always been social. Talk the right way to the right people... and it doesn't matter what type of security you have.

Isn't that the entire purpose of agencies like the CIA?

It just bothers me when privacy is treated as a negative thing, for the greater good or not. Encryption is a tool to create privacy. The ability to create privacy should be a point of pride as not everyone has that luxury. It should be a human right.

This is the primary reason why I feel things like CISA/CISPA/etc take society in the wrong direction. It doesn't matter if the intentions are good or bad when everyone loses.
I imagine very few of them are profitable, but a number of them could turn profitable if they chose to slow growth. Just like Amazon is still doing, most of these companies are going to be funneling all the cash they get back into the company to accelerate growth. The question is how many are operating with negative margins that will never be positive (selling a dollar for 90 cents). We’ll probably find out over the next couple years as more Unicorns die.