skysight-inc/HackerNews huggingface dataset:
So he's comparing the minor faults made by people writing single-use scientific programs to the excesses of the worst of 'enterprise' style coding.

It's not really any wonder he comes to the conclusion he does. It's a shame he doesn't know what software engineering is though. Hint - it's not about making things as complex, abstract and verbose as possible.
I did something similar a while back with https://github.com/sntran/gists.io, but was too ambitious to include editor. That got me nowhere. Yours look very nice and simple.
That reminds me, I was trying to code something using Twisted Python the other day and regretted it for exactly that reasons. Abstraction layers and factories around factories around abstractions, oh my. What's more, despite those abstractions (or more realistically because of them) it wasn't easy to replace the underlying XMPP transport with a different one. I wound up having to replace a constructor and an undocumented internal method so I could substitute several of the layers with different implementations someone else had written, again in a way that was documented precisely nowhere.
> What changed to make this relevant now?

Python is increasingly losing ground to the new "it"-languages. To stay relevant, it needs cryptic syntax of dubious value so bloggers can write lengthy articles about useless applications for this new feature.
Nereus deep sea sub 'implodes' 10km-down
Hi all. Arel committer here. This is a very cool application, and I really enjoyed attending (and helping answer questions) at Cameron's RailsConf talk.

That being said, I've become increasingly convinced that constructing queries with Arel is a fun exercise, but ultimately not terribly worthwhile for those of us who are just writing applications.

There are three reasons I can think of that people write their queries with Arel:

1. Construction of queries with a large list of predicates taking advantage of Enumerable#inject and Arel's closure under composition without mucking about manipulating strings.

2. Unease about whether or not code is protected from SQL injections when written using more traditional methods.

3. Achieving database independence.

In the case of #1, there are some situations where this may make sense, as a convenience, however, there are ways to ensure data is properly quoted. Not least of these is using things like prepared statements or the pg gem's "exec_params" method. This means that the goals of #1 and #2 can be met in an arguably more readable way by composing strings and param substitution.

In any case, it's #3 that I regularly hear people advocate as the reason they write their queries in Arel. My problem with that is that database independence is a myth.

Oh, I don't mean that you can't write some subset of queries that will work on any database you like, nor that you can't abstract away some of the differences on the surface of things like limiting result sets, pagination strategies, and so on. In fact, this is where Arel shines and a big part of why it's being used by ActiveRecord in the first place.

But I don't believe it makes much sense for typical app developers to attempt to write their queries in Arel in the attempt to achieve database-independence because most of the things that Arel can do for you in that regard are already exposed at the ActiveRecord level, with possible exception of the case-insensitive matching via ILIKE in PostgreSQL.

I've come to believe that database-independence is something you will only achieve if you aren't doing anything interesting with your database, and you're trying to treat it as a dumb data store. This is what ActiveRecord would prefer you do -- you see this guidance in things like validations, callbacks, and the like. That doesn't mean it's the best of ideas.

Turns out that relational database management systems are really good at managing relational data, and to treat them as a dumb place to store your bits is to miss out on a lot of that power. Along with ORMs has come some degree of learned helplessness when it comes to the harnessing of that power.

So, before you write your next query in Arel, ask yourself whether or not you're really gaining anything by doing so. It's probable that the idea you're trying to express would be more clearly and concisely expressed by showing the SQL you're going to run.

Again, none of this is intended to take away from how cool this app is -- just don't go replacing every single query in your app with Arel equivalents, okay?
What was the biggest thing you did to grow big so fast?
He'd only have to sell 10,000 fullz at $30/each.
A View Of How We’ll Use Our Land In 2051
Even I keep hearing the same. I also noticed they they set 5 different cookies if you visit any facebook.com page, even if you are not logged in.

The amount of tracking google, facebook does is insane. And I hate the fact that none of my non-techy friends even understand it.
Apple Wants Beats For Paid Streaming Conversion Rate
I agree with the author to the extent that you should keep the target audience in mind when writing code. I disagree that it means not using best practices. If you spend 30 minutes to an hour explaining objects or other conventions to your academic colleagues you'll all be better off when reading and writing code. It also sounds like an issue of developers being overly clever in general. Clever does not mean elegant and in my experience cleverness usually backfires for the reasons listed in the article. Elegance makes everything look easy.
That's pretty cool. I like how it would seem to support literate programming at a lower level than just extensive comments (which always seem to go stale) or long variable names (which often hinder comprehension more than they help it).
Outside of CDDL being explicitly crafted to be incompatible with GPL, no action from FSF would have any impact on Linux licencing since Linus chose to use GPLv2 ONLY rather than 'GPLv2 or later' which is the usual case.

Beyond that, given how Linus himself thinks that 'Making Linux GPL'd was definitely the best thing I ever did. ' and him attributing it as being a huge part of why Linux became such a success, I'd say there would zero chance of a Linux license change even if it was all up to Linus, which of course it is not.
It's all good. We all learn here.
Speak for yourself. Some of us have had a reasonable amount of training in mathematics and various sciences as well as computer programming.

It's true that you don't always need this to be a programmer, but some of us have a decent grasp of some of this stuff.
Seattle, New York City. (Remote potentially okay, but we also offer relo. Visa transfers okay.)

FiftyThree - http://www.fiftythree.com/

Backend web engineers, devops engineers - http://www.fiftythree.com/jobs

==

FiftyThree makes tools for mobile creation.

Our first product was Paper for iPad, an app to let you capture your freeform ideas. It won both an Apple Design Award and App of the Year (2012).

Our second product was Pencil, an active stylus that works especially well with Paper. It too has received critical acclaim (e.g. "the best iPad stylus yet" —The Verge).

We're hard at work on our third major product, a sharing and collaboration service to bring your ideas together. And we'd love your help in shipping it.

We're looking for experienced back-end web engineers, both on the purely programming side and on the operations side. Our jobs page has all the details, but the highlights are:

- We run our app on Node.js (w/ CoffeeScript) deployed to Heroku.

- We run our non-app infrastructure (e.g. our Neo4j database) on AWS, e.g. EC2 and Route 53.

- We automate with Ansible and bash (moving over to Node.js).

Experience with most/all of these isn't expected, but at this stage, we are looking for existing experience somewhere. Show us what you've built.

It's not every day you find a startup that's building both software and hardware, that's making multiple things people love, that's making significant revenue from day one even as a consumer company, and that strongly values a maker culture at the same time.

If this sounds interesting to you, please do reach out. http://www.fiftythree.com/jobs ==> jobs@fiftythree.com

We look forward to hearing from you!
I recently watched his movie "manufacturing consent" and was surprisingly disappointed. It seemed kind of disjoint with no solid message and unfortunately it was boring to watch to boot.

I really think corporate control of media, and media bias, and how it affects our society is a really important topic that needs its own easy to digest documentary, like black fish, or an inconvenient truth. Something that will popularize the issue, and explain the problems to people who normally wouldn't be interested.
Spring Style in New York/ NJ
Photo shoot with emphocus
Well, it depends on idea. If the idea is good and will grow with the time I will ready to give one year.
What does a good father do?
For someone who considers GitHub an important part of their online presence, I don't see a link to the author's account anywhere.
But now your program is weakly typed. Using the same logic, maybe your id is just an integer, but having an "ID" type will prevent bugs in the future, just like "dressing up" the dictionary with a meaningful name and exposing only the minimum amount of methods necessary will avoid people being tempted to, say, add things they shouldn't in your dictionary, not to mention that strong typing has a documentary value.
Because such stories are usually knee-jerk reactions, badly argumented, badly researched, un-objective, and assume some opinions that not everyone agrees with are facts. Furthermore, pointing this out can inspire rage and insults from a part of the online population. Finally, they induce a flame-war with no clear victors and no apparent benefits for the victors. They don't really encourage discussion, just as most static-dynamic do not.
Except you can't hand pick a project to highlight. Github does the selection for you.

I like the idea of Github as a resume for showing people how you work, but I don't want to have to carefully curate all my public repositories because it is primarily a place for storage. Github really does need a way to pick and choose what appears on your main profile page.
Automated texts to your mom? There's an app for that
Ask HN: Client Side Caching Strategies?
I'm designing the interaction between our API and web client. The two strategies I've come up with are:

1. A dumb API, which exposes objects pulled from the DB and results of server side calculations. The client can cache the data itself, so that future requests can be built from the cached data instead of an API call. The downsides are that more initial requests might be required to grab different datasets and the client has construct the requested data into a meaningful structure that the view can consume. It also provides less opportunity to optimize individual API requests on the server, and perhaps there'd be some code duplication between the client and server. The cached data would be relatively unstructured (lists of requested objects, segregated by type).

API -> get all states
API -> get all farms
Client -> combine the two into a list of Apple Farms by State
Client -> combine the two into a list of # of Farms in each State

2. A smart API, which aims to answer questions asked by the client. The client can cache specific requests but could not use the request data to build other requests from the cache because data might be missing. However the server can optimize DB queries and provide structured data. The cached data would be request results indexed by the API request parameters.

API -> get all Apple Farms by State
API -> get # of Farms in each State

We have a lot of base data that makes sense to request en-mass and cache locally (Strategy 1). We also have some more specific data based on the results of user interaction, which would benefit most from the optimized queries that Strategy 2 provides. In both cases we'd store the cache using local storage so it can persist across page loads. A combination of the two is possible, but is more work and increases complexity.

I'd love some comments on each strategy, and any articles or personal experience about client side caching of API data.
The Deferred Anti Pattern
Oh, I'd really like to know where they got that number from first.

If it includes the salaries of the officers involved, by allocating the man-hours consumed by each response, then that number needs to be lowered.

I'll accept the fact that vehicles consume gallons per mile in gas, and that private residences have to repair busted down doors and damaged sheetrock, and maybe if some other expendables were used, if say some shots were fired and it cost 50 cents in bullets, but the officers would have been on the clock anyway (overtime or no), and the taxes are already budgeted for salaries.

Did the counties get sued by the swatted? If that's the source of the number, maybe he owes a large percentage of that, but then again, maybe the lawsuit has a point and how swat teams respond to prank calls should be changed?
I've always wondered how we figure we'd communicate with aliens someday, or decode a future SETI message, if we can't even decode the language of a dolphins.
random()%NUM is usually wrong even if NUM < MAX_RAND.

random() is often a linear congruential generator (LCG: http://en.wikipedia.org/wiki/Linear_congruential_generator) for speed and simplicity purposes. LCGs are a multiply, an add and a modulus (the modulus is usually implicit from the machine word size). That means their low bits are highly predictable and not random at all.

X(n+1) = (a * X(n) + c) mod m

Assume m is a power of 2 since it's usually implemented via machine word wrap-around. If c is relatively prime with m (in order to fill the whole range of m), then it will be odd. a-1 is normally a multiple of 4 since m is a power of two, so a is odd too.

So if X(n) is odd, X(n+1) will be even (o * o+o => o+o => e), and X(n+2) will be odd (o * e+o => e+o => o), and so on, with zero randomness.

So if you're trying to simulate coin flips and use %2, you will get a 1,0,1,0... sequence.
E-mail between secure servers is perfectly secure (and end-to-end encryption only adds content encryption but keeps the amount of metadata generated the same). The problem is that Google’s email servers are not secure; nor are those of any other email provider. Strictly speaking, not even hosting your own dedicated server somewhere will protect you from these issues.
Remember to Not Remember Me
Wanted: A Bug Spit Robot
Hi, one of the authors here. First, though I worked on the paper, I am not employed by CGD, so these comments are my own.

The main reason for using the non-headless Firefox WebDriver was that we wanted the script to access the site just like a human user. This made it easy to explain to non-technical people exactly how we had gotten the data. We didn't want to do anything that could be seen as circumventing the interface that the World Bank had created for that purpose.

Up to a point, performance was not a concern. In fact, as slow as Selenium is, we still artificially limited the speed of the script by waiting three seconds between each set of queries. However, when it came to selecting options, it could take Selenium tens of seconds, so that was done with js.
If it's that easy to get a swat team beating down some innocent persons door then I see bigger problems than a teenager making prank calls.

Anonymous phone calls should not lead to people potentially being killed.
Glass, A New Digital Site, To Obsess On TV And Video
jist.in: An (almost) server-less gist reading and presenting tool
Assuming this is OP's project, can you explain what the JVM bug is?
These are the only kind of computer games that entertain me for some reason(except card games). First person shooter games bore the heck out of me and I don't play them.

There is one in particular called "Cossacks" that is hands down the best game ever IMHOP. I have been playing it for over 12 years and keep an XP machine (last windows machine in the house for a long time now) specifically to play Cossacks. I play it regularly too... at least a couple of hours a week usually.

And I really really wish someone would do a project like this with Cossacks. It is so much richer and more complex than the Command and Conquer series (although those were good as well... not complaining and this is a neat project). I think it actually takes years to get the nuances of Cossacks down. Best game EVER!

(I realize this is not normal. I don't know if I should seek counseling or if I'm just a game monogamist.)
Lacks compositional abilities as specified, which is unfortunate. If two libraries want to use this at the same time for two different purposes, there's no standard given for it.

I guess I have to admit that my feeling is that in our rich existing language ecosystem, features that seem designed to help turn Python into something it isn't just waste time and steps Python that much closer to Enterprise-class complexity. Maybe what Python really needs most right now is just a straight-up language freeze. It's done, it is what it is, what it is is pretty darned good for a lot of use cases, and that last bit can't be highlighted enough. It isn't going to be a static language wonder, it isn't going to have generalized C-class performance, it isn't going to become a great hugely-concurrent multithreading language, and you know what? That's OK. It's better to be a good Python than to be a bad not-quite-anything.
Is there any good reason for not allowing this? It doesn't make sense to bar publishers from sharing their CPCs.
Thanks for all the feedback. Sweet. Tried to answer some Q I have been getting from various directions here: http://danielwertheim.se/2014/05/12/reply-to-c-using-implici...

Thanks,

//Dan
Their Campaign Video: https://www.youtube.com/watch?v=VblazNXcHFg

As I understand it, there are two reasons as to why they've turned to crowdfunding. One, large funding bodies are more concerned with the vaccine's clinical trials right now, and will worry about scale up of vaccine production when the time comes. Two, with respect to reason one (and the ignorance of the aforementioned funding bodies), Sanaria wants to do all it can to keep vaccine production costs down and vaccine supply high so that the eventual price/dose in a developing context is as low as possible, hence the development of a dissection robot.

The CEO has also mentioned on various interviews/IAmA that the price/dose for the US Military and avg. Western traveler will be significantly more expensive in order to help keep the price down for underserved populations. (http://www.reddit.com/r/IAmA/comments/1k164k/iama_stephen_l_...)
Gmail overhaul with focus on email
You can say the same for Algol or Cobol.

But then the stupidity of the statement would be immediately apparent.
There really isn't much to be concluded about startup people so much as the effects of link bait in general.

I appreciate the humour, don't get me wrong, but I'm just not sure this is 'proof' of anything [EDIT:] about startup people specifically.

That said, if I see an article titled "How our unscientific link bait experiment helped us raise $xxM" next week I'm not sure if I will laugh or cry.
Plenty Of Fish is one of those things where they caught lighting in a bottle and kept it there for a decade. It would be easy enough to get a site to millions of pageviews and let it die on the vine. It would also be easy to hire too many people and feature creep yourself into irrelevance.

It takes a great combination of luck and skill to take the early success and sustain it.
>especially when they're of the type ..

Or when they're of the type "look at me, i'm so different". No you're not. :)
https://github.com/brandonweiss
Nature Video Backgrounds – Video Backgrounds
"Sure. There's the issue of SQL injections, but libraries have gotten good enough for these not to happen any more"

Yes. And in this case, the "library" is Arel...
No commercial aircraft operate at such altitudes. No, seriously: you run out of air for air-breathing engines above FL600 (the SR-71 flew at FL800 very fast indeed partly because it needed to go like a bat out of hell to keep enough airflow through its engines: and because it was able to go that fast due to there not being much air up there to produce drag), and the turbofans used on commercial airliners rapidly run out of wheeze above FL400.

The only civil aircraft that ever flew above FL500 were Concorde and the Tu-144, neither of which are in service. But they didn't fly at supersonic speed and high altitude in crowded airspace -- simply because getting an SST up to altitude and speed takes several minutes, a couple of hundred miles, and a prodigious amount of fuel. To say nothing of the sonic boom issue, which basically limited supercruise to over-ocean flight.

While there's been a lot of hot air about supersonic bizjets over the past two decades, so far nothing's escaped from the CAD package much less gone into flight testing.

So what you're asking for is for an FAA system to be retrofitted to handle exotic military requirements, future space shuttles, and a class of commercial aircraft that would not operate in that flight regime within a couple of hundred miles of any airport.
Typo: you have "MediaFilter" where you meant "MetaFilter".
Its sad that most of the time the parents are to blame.
are victims under the same restrictions as the press? What if they are the same as in this case?
That isn't really true, and a lot of adults learn this if they got into trouble as kids. The juvenile system has a bent towards privacy, but that is all it is -- a bent.

You can either have your juvenile record "sealed" or "expunged" but neither is automatic.

Asking for your records to be sealed is possible a number of years after the conviction dependent on location. In most places it is 3 years of no offenses except minor traffic violations and you can request getting juvenile records sealed.

Asking for expungement is much more restricted and not even available in most locations. In the rare places expungement is possible it is a long and involved process.

Now, here is what sucks more -- getting your records sealed may seem like the obvious choice -- you don't want that shoplifting thing following you around. But, if someone pulls your record and sees "sealed" they are likely going to think you did something FAR worse than shoplifting.

Additionally, sealed records don't mean "from everyone forever" -- those suckers can pop up in adult trials if they fit a pattern, if they should apply to sentencing or just if the judge thinks they should.

Don't fuck up too much when you are kid, it will haunt you.
GitHub is my resume because all FOSS development happens exclusively on GitHub, right? My "resume" is going to be missing a lot of things.
The Mystery of Go, the Ancient Game That Computers Still Can’t Win
The HTTP referer hearder was a very valuable tool for webmasters to correct broken links or prevent abuse years before ad targeting became a thing.