skysight-inc/HackerNews huggingface dataset:
Python is a fun vessel for that kind of things, it's sensitive to function lookups, when profiling you really see the timings drop with local rebinding.
You mean to tell me that in the 90s technically illiterate people were encrypting their files without even realizing it?

Bullshit.

Much has changed since then, whether you want to admit it or not.
Having a warrant for a desk drawer doesn't put every person on the planet at risk for possible access of intimate personal life details.
When you say "technical standpoint", do you mean the graphics? 'Cuz I think the accessibility provided by browser-based MMOs is the best feature: no download, no install, available anywhere there's a browser. AFAIK there wasn't something like that available in 1996 and is the key technical differentiator that makes me so excited about the web as a games platform.

I think if we're talking about the web as a serious games platform we have to widen the scope of the discussion from graphics/sounds and include both the network effects of online players and the true multimedia approach the games can have, especially when paired with social media.

Here are some features web games can use because they run on the web platform that the authors don't have to write themselves:

* Speech recognition
* Peer-to-peer communication
* WebVR
* getUserMedia

I agree, though, that not enough web games do any of this. The ones I've played keep trying to ape the old platform without using all the benefits of the new one.
I've become a heavy user of a number of clang extensions,

__attribute__((cleanup))
__attribute__((overloadable))

… are now indispensable to me.

Cleanup I use for both object lifetime management (when it fits that model), and lock management. Typically a "get access" type of function will take the lock and return the pointer to the object. Then when that pointer goes out of scope the lock can be freed.

overloadable is perfect for keeping names under control. Consider if you have a bunch of structs for encoding various bit arrays. Maybe 32, 64, and 1024 bit long. Each has functions for working on it, so you either prefix all the functions with bit32_, bit1024_ or you pick a letter suffix, e.g. bitset(), bitsetl(), bitseth() (huge?), and try to make the programmer remember them all. With overloadable functions I get to use the same simple name for the operation and which implementation you use underneath is irrelevant.

I think I'd like to go one step further and sugar up the syntax so…

variable.func(a,b) <----> func( variable,a,b)

… but Mr. Stroustrup might call me names. But darn it, sometimes you want to think of your objects in different ways. I'd be using lisp if I wanted everything the same. (Actually, I suppose Kernel, and laughing at the lisp users who think they have uniformity.) It doesn't have to be ".", go ahead an create an "=>" notation if that helps with the ambiguity of structure reference. (No dynamic dispatch here. Just leverage overloadable.)

And here is the big one: Thread Safety Analysis. This has the potential to eliminate huge swathes of runtime problems in multithreaded code and even calling convention problems in single threaded code.

In a nutshell, you can annotate your program to make statements about objects. You can say an operation ACQUIRE's an object (takes a lock), and that another operation RELEASEs an object. Then you can declare that other options REQUIRE that the object be in the ACQUIREd state. There is more, such as declaring that a the execution is currently in a state and then restricting its ability to perform operations based on that.

The current implementation is probably bit rotting in gcc, and the clang version seems to be missing some important bits to making it useful. The C++ end of it apparently works for Google with their Android coding conventions, but the C end of it doesn't quite do it for me. I think with perhaps letting a function declare that its return value is ACQUIRE()d I might be able to put it to use. (And fixing the bit where it doesn't play well with __attribute__((cleanup)) ).

But the working group has a '2' in the name. We have 4 years.

And one more huge one: PLEASE add a paragraph to the spec that says:

"undefined" is NOT license for some language lawyer compiler writer to kill your dog, burn your garden, erase your disk and return 42 from the main program.

Undefined should mean "we understand different architectures and compilers might prefer to do this differently, implement something SANE and warn the user that they are on squishy ground".
Elements of Clojure
Recording of aerospace executive's speech leads to his resignation the next day
My New Book on Market Opportunity
Wireshark syntax is also fiddly. It's just more familiar for some folks. The first several years of my experience troubleshooting network problems happened when Wireshark didn't exist, but tcpdump did. I still have better recollection and comprehension of tcpdump syntax than Wireshark. I have to read the docs to use either these days (since I don't work at that layer of the network much anymore), but I have to read longer to make Wireshark do what I want.

Sometimes "ease of use" is really just "what I'm used to". (Not saying Wireshark isn't more expressive or more powerful...it probably is. But, I usually have a very basic use case, and tcpdump can do it with a couple of flags and an address or port.)
I agree that we need to move faster.

(Given my struggles as of late with trying to get 5-year-old OpenGL functionality working on the Mac, though, I wouldn't necessarily paint Apple as the gold standard here. At least in my experience, Apple is probably the worst of all the major native vendors when it comes to things graphics-intensive apps care about.)
Pop culture quotes written in first-order logic – can you figure them out?
I won't comment much on most of those points (they're not my style), but as for the last point you made about long identifiers and namespacing, I used to agree that that was a problem, but now I've changed my position.

If you choose a long prefix to disambiguate your library functions, then it gets annoying, but you don't have to use long prefixes. "sdl" and "ao" and "X" and "gtk" are great examples of short vendor prefixes for identifiers. In Go, since you brought it up, you have to reference identifiers from foreign packages with a prefix anyway. Go does let you change the prefix if it would otherwise conflict with your code, but because of syntactical concerns, it's more likely to conflict in the first place.

Which brings me to the interesting thing about C's lack of namespacing: it means that global identifiers look the same everywhere. This enables you to safely use grep and sed on global identifiers. It's not 100% foolproof because you can shadow a global with a local, and the identifier could appear in a string or comment, but if you're disciplined with the naming conventions of your globals, it should be very unlikely that a local accidentally shadows a global, and if a global identifier's name appears in a string, or especially in a comment, it's probably actually refering to that identifier.

This means that a language design decision turns simple refactoring features from a somewhat complex tool that needs compiler integration into "just use sed".
Here is a super interesting article about a troll - http://priceonomics.com/the-hoaxster-who-revealed-sad-truths...
I believe the algorithmic ordering is intended to optimize other variables such as "time on site," because if you stay longer they can show you more ads. It seems like the conspiracy stuff would be much harder to actually do, like manipulating the content to influence you to click on more ads.
12,000 links is probably too much.
I'm not convinced by this argument. It's perfectly possible to stick to a well defined subset of C++ if you're scared by certain features. Just write a coding standards document and enforce it.

Operator overloading is very important for generating the fastest code possible, too. It would be hard to get the benefits of a library like Eigen which can automatically use SSE to optimize maths expressions in C.
It might have been an equipment buyback. I.e., some large piece(s) of hardware that BD wanted to keep going forward, but that was procured with funding from a DoD contract.

(Incidentally, looking at the detail for year 2014, the total giveback was $5M. It was balanced by $1.5M of receipts in another category.)
Not only that, but an hour after your post, someone (burma-shave) had updated the LFE formula for v1.0 of LFE:
* https://github.com/Homebrew/homebrew/blob/f95c192d43d9a56bda...
Django is agnostic about its actual connection to the webserver. It provides a basic wsgi adapter (wsgi is the Python spec for delivering HTTP requests to an app and sending responses back to the client), which can be plugged into any wsgi container. When HTTP requests arrive at the wsgi container, it forwards them on to Django's entry point, which runs the normal routes/views/middleware/etc.

When I first got into Django in 2007 the preferred container was flup, using an scgi connection to the webserver. Nowadays, it seems like uwsgi over HTTP is preferred. CGI was an option for deployment since inception, but I don't know anyone that actually ran their Django apps over CGI, since it's many times slower than using uwsgi.

Django Channels extends wsgi into asgi (ASynchronous Gateway Interface), which provides both send() and receive_many() callables to the application server. In other words, Django can now send messages, unsolicited, back to the webserver, which presumably has a websocket connection back to the browser.
> Also consider, for example, how Elon is bootstrapping electric cars and private rockets.

That's a great example. And I agree with you in part. Look how far Elon and Co have come in under 15 years with both Tesla and SpaceX. Bootstrapped? Indeed. But they also had to prime the pump with demand (SpaceX with gov contracts, Tesla with wealthy purchasers)
I have heard a candidate for a software engineer position talk with straight face about his current workplace's "devops team" and handing off software to them. So maybe it's getting that way.
Yeah, you have to be careful which conclusions you reach from these trend plots. By the author's arguments, I could argue that maybe people just won't be interested in software at all anymore in a few years:
https://www.google.com/trends/explore#q=software%20as%20a%20...

A lot of these concepts are just too general to search for. That doesn't mean they're less popular, it just means their conceptual boundaries are too big for a single phrase.
By Durham I mean Pickering, Ajax, Whitby, Brooklin, and Oshawa.

GO trains are every 10 minutes during rush hours and every 30 minutes at all other times. Trains start at 4/5 am and go until 1am.

Markham does not have that level of connectivity. There are only a couple trains that run in the morning and then a couple in the evening. It is serviced by buses at other times.

Real estate prices wise, for what you pay for a town home in Markham, you can get a full detached home in Pickering...and it's only like 15 minutes away from Markham.
For better or worse this sets you up for a lot of pain over life. If it's all about putting up with BS to make money, go work for an investment bank, hedge fund or High Frequency Trading firm. :-)
You did read the part about the differences right. Did you carry that desk drawer with you everywhere? Did it record your location?

The point is about what the law should be to be useful. Not about what the law says, or can be taken to say.

The FBI plays it as if the law binds the people, but the law is the people's, and binds the FBI. We don't have to care what they like. It isn't a two-way street, or a conversation. They're employees. So's Obama.
Document and lose the 8 hours/week. Its not your 8 hours.
Batteries have changed a whole lot since the 90's, though. Lithium-ion has a much higher energy density than lead-acid or nickel-cadmium. And without these improvements, many modern robots (roombas, quadcopter drones, etc) would simply not be possible.
Right now there is a gap between cost of human labor and cost of automation. When automation becomes cheaper than human labor, it will make more economical sense to switch to automation. Even if you stick with only automation getting cheaper, the gap is still closing. But with the cost of human labor also increasing, the gap is just closing even faster. It is not reasonable to think we can slow the decreasing cost of automation as that is just the nature of technology at scale. But we have absolute control over the cost of human labor. Every time we vote for a minimum wage increase we are choosing to increase the cost of human labor. If this is the choice we make then we can't really complain about the effect it has.
We have it in South Africa too. The official, political term for it is "load shedding".
Welp time to stop using Instagram. Patiently awaiting a competitor.
Ok, right, that makes sense. That's probably doable - making iOS being able to run auto-update when locked. Once for example. Update still needs to be signed of course.

It would probably make all crooks use long passwords for keychain, but who knows, maybe it would help in some cases.
Django generally relies on the WSGI standard to separate the 'server' from the (Django) 'application' - this allows Django to run on a number of different server implementations.

https://en.wikipedia.org/wiki/Web_Server_Gateway_Interface
A large company, like any large organization, is not a single thing. It's made up of individual parts, and parts within parts; all of them have different motivations. Frequently the most important competitors for some parts are other parts.

Think of it more like a feudal society. At the best of times, the headman at the top has the loyalty of most of the upper levels, and each of those has the loyalty of most of whoever is beneath them. But each of them has their own desires and plans: what they think will make the organization better or make their position in it better. At worse times, you have the War of the Roses or Game of Thrones sort of stuff.

The problem with bringing in outside organizations, like buying Boston Dynamics, is that they have their own, mostly fixed feudal structures, and integrating them is difficult. (Consider, at the very least, someone is going to go from the king of their own personal world to having to ask before they head to the executive washroom.)

A single person with a vision can have a great effect, because they only have to inspire (or convince) a small group of people around them to go along and that small group will bring along their own people. On the other hand, if the person with vision leaves the organization, whatever they were holding together falls apart pretty quickly.

(My favorite example is the Westinghouse(!)-CBS-Viacom thing.)
since this has devolved into everyone's favorite tech-related parody accounts, i'll throw https://twitter.com/iamdevloper and https://twitter.com/NeckbeardHacker into the mix.
Discussed a couple days ago: https://news.ycombinator.com/item?id=11293705.
Google Releases BumpTop as Open-source
I have a class with the guy who was in charge of infosec (or the closest thing they had to 'in charge') for US military in the Middle East from about 2004-2006. When he got there he implemented a policy forbidding use of flash drives, and in doing so made everyone furious. For his entire time there he was pissing off users, but maybe the capacity for accepting unexplained 'No's is greater in the military, so the policy held. Then as soon as he left, they got rid of his rule, and a year later Russia landed their worm on tons of DoD boxes, classified and otherwise, with some flash drives in a parking lot; as the largest ever of DoD networks, it led to the start of CyberCom. Talk about failing to get any buy-in...
Heavy Recruitment of Chinese Students Sows Discord on U.S. Campuses
Hmm, it might make sense, but, correct me if I'm wrong, there's almost no room for more expensive freelancers on UpWork. At least I don't see where they (we) would fit.
It'd be pretty easy to make a safe lined with thermite that had more tamper-proof mechanisms than pick/drill-proof mechanisms.

Sure, you could drill it but you wouldn't get anything useful.
At least with Argentina there's reason to be optimistic. From what I've read, the newly-elected Macri administration seems to be taking concrete steps toward reversing Fernandez's economic mismanagement.
Agreed. Infrastructure development doesn't really play well given US politics today. The right distrusts any non-military government spending, while the left is more interested in entitlements and social programs.
You're right. I spoke too soon.

I was thinking of _decoys_, which are typically cheap, light and inexpensive and provide, in the most optimistic of circumstances for the target, a multitude of other indistinguishable "targets."
Dropbox as “Stack Fallacy”
Google is clearly interested in working with the DoD:

http://www.defensenews.com/story/defense/innovation/2016/03/...
Here is a good interview with WSGI/Django devs talking about the rationale and starting work on the Django Channels project.

http://pythonpodcast.com/wsgi-2.html
It's on our roadmap. Can you submit a support ticket and I can fill you in over email
Could this be helped by first world countries donating solar and wind generation equipment, and peace corps training programs to train and supervise the installation in country?

EDIT: thanks for the replies everyone. sadness.
The Secretary of State has a full-featured security detail [1]. While on foreign missions, this includes a motorcade with armored vehicles (flown in by DSS beforehand), surveillance teams, and security augmentees from U.S. Embassies nearby [2].

[1] https://en.wikipedia.org/wiki/Diplomatic_Security_Service

[2] Personal experience (sorry)
Because now Instagram can charge brands to reach their followers.

Facebook pioneered this business model and it has worked very well for them financially. Even if you have millions of followers to your Facebook page, you can only reach a small percentage of them without paying Facebook.
It increases the kind of engagement that results in ad clicks. There's no way to make an advert or sponsored celebrity 'post' travel through time, but you can make it 'better'.

This may not be the kind of experience you want, but after all you aren't the customer here. You may not even be the product - you may just be a side cost of getting ads in front of the lowest common denominator consumer.
Positions Available: JavaScript Ninja, Python Rockstar, Systems Guru
Whoops, yeah it's been a while since I worried about stuff like this in javascript. I guess what I remembered doing was keeping track of cursor position in a global, updated on every mousemove to simulate immediate mode in a requestAnimationFrame callback.

But as you say, that retains all the disadvantages of event latency.

requestAnimationFrame is designed for immediate mode rendering, so it should probably pass its callback some information about input states or offer some other way of getting that.
A year ago the statement "Most high tech companies are founded by founded by First/2nd gen immigrants" was going around the various tech circles. In the thread at https://news.ycombinator.com/item?id=9085970 I dug into the numbers and found that that is what we would expect from population statistics. That is, immigrants and non-immigrants are equally likely to start high tech companies.

This new analysis - and yes, I read the report - does not attempt to assess if the numbers are more or less than expected. If a company has 10 founders and only one is an immigrant then that counts as one of the companies founded by an immigrant.

Let's say that all 87 companies had 10 founders (which is obviously false, but I'm making a point about the limitation in the analysis), and of the 44 companies with an immigrant founder, all of them had only 1 immigrant founder. Then of the 870 founders, only 44 are immigrants, or 5%.

Immigrants make up about 13% of the US population. If only 5% of the founders are immigrants then that means immigrants are significantly less likely to start $1B valued companies than non-immigrants.

I'm going to go one step further. The report DID NOT include the overall number of founders, which makes it impossible to determine the significance of the findings. By classifying a company with a single immigrant founder as being founded by an immigrant, it almost certainly overemphasizes the impact of immigrant founders. I believe this was done deliberately, in order to influence matters regarding the H1B visa. I do not believe this to be an honest analysis.

FWIW, the author, Stuart Anderson, was former policy director of the Alexis de Tocqueville Institution, former director at the Cato Institute (http://www.sourcewatch.org/index.php?title=National_Foundati... ). Both are "part of the stable of conservative think tanks" http://www.sourcewatch.org/index.php/Alexis_de_Tocqueville_I... .
If effectively used, this seems like a fantastic use for this data. I think everyone's sat at a light and gone "damn, why don't they do X to make this more efficient?". The reason why might just be that they don't know about that particular problem :-)
This is a really great perspective.

You're totally right, SaaS companies have far more motivation to maximize performance and operations to reduce the cost of keeping their services running.

OSS often doesn't have the need or the expertise to do this.

But I do see some of this shifting...

Some OSS projects are now built by folks that have lots of performance expertise and goals.

There's also more funding or sponsorship for OSS development which will help.

For example Redis is ridiculously cheap and easy to run on your own.

antirez is a world class engineer with high standards and he has sponsorship to work towards his goals full time.

AWS offers it as a service through ElasticCache which removes what challenges remain about configuration, replication or failover.

So I wouldn't build, integrate or bet on a SaaS "cache" platform/company any more. It's been commoditized.

I see signs of the same thing happening to more parts of the stack. ELK isn't the most performant log analysis platform, but it's close to Splunk in my experience, with the added benefit of the possibility of anyone, Elastic or the community, contributing performance improvements.

Yes there is lots of wishful thinking here...
This most likely. You get to count the money for a contract when it gets booked and awarded, even if you don't start work on it immediately or actually receive any money. If you book a contract (and count the money) in one fiscal year and it gets reduced or canceled in a subsequent one the reduction counts as a "loss" even if no money has actually changed hands yet.
Later on, when Carter gives a lecture on wormhole physics at an Air Force cadet academy, the teenage protagonist of that episode reacts in the same way, and Carter gives an "I thought that way once, but then I saw enough compelling evidence to change my mind about what's possible" speech.
Hackers Target Steam with a Special Made Steam Stealer Malware
Why the delay then? Did HBO(Time Warner) approach Google(Alphabet) or vice versa?
Sometimes the "no" exists for a reason. Users don't understand this, and want the path of least resistance. Which is why policies exist for terminating such users from organizations.

But heh, infosec shouldn't exist and everyone should be able to BYOD, amirite? "Frictionless" or something like that?
What is this "How the sausage is made" you are talking about ? Is a video you can share ?
While I agree that there is a conspiracy element to it, research has been done into this area before by Facebook. Whether or not it's in use is a whole different can of worms.