skysight-inc/HackerNews huggingface dataset:
A good compiler and coding style aren't always enough
Google broadens its self-driving car tests in Austin
I've used https://github.com/thuss/standalone-migrations with success before. It's the rails migration system as a standalone gem.
Show HN: Our Stack
How can it determine dead code for such a dynamic language like JavaScript?

Is it limited to obvious stuff like things after a "return;" statement that cannot run? Because I don't see how it could remove unused functions when you can invoke them in such indirect ways: myobj['f'+'oo']();
Show HN: Who's Hiring? – A job board for startups
I like the approach of using gs (simple gemsets) [1] and dep (simple dependencies) [2]. I've been using this approach of handling dependencies for a while now.

I've written a simple shell script as a replacement for gs (since I constantly forget if I was in a sub-shell or not). All it does is change $GEM_PATH and $GEM_HOME when $PWD changes (while staying in the same shell). If the current $PWD has a directory ".gs", `gem install` will install them there instead of globally. All I have to remember is to create a .gs directory when I start a new project.

It does not address all issues highlighted in the article, nor do I know how well this would work in a production environment with automated deployments. It's probably more of a work around than a solution. I vastly prefer it for personal projects, though. Hate solving gem conflicts with "bundle exec".

[1]: https://github.com/soveran/gs
[2]: https://github.com/cyx/dep
That's probably not a good thing to tell students. A belief in fixed abilities ("either I have this skill or I don't") causes students to try less and encourages people to believe that people that are superficially similar to them posses the same fixed abilities they do.
no 'ruby version manager', eg 'chruby, rvm, or rbenv' make any sense in the nix/guix world. the article would have done a disservice to itself to go into detail on each one, when the goal was really to show how to manage ruby projects in guix.
The curse of the H4. An issue near and dear to my heart. It has been 10+ years since my wife worked. While we moved to a country with friendlier/easier immigration, she is finding it impossible to work in the tech field due to the 'experience and work gap'. She is forced to look at other avenues but she enjoys/enjoyed coding and tech in general. I know how I would feel if someone told me I could no longer be involved in tech.

If anyone has any ideas on overcoming the 'gap' in tech or other fields, let me know!
Why would that be a bad thing? (honest question)
According to Darwin's theory, don't organisms evolve simply in order to adapt (by natural selection) to their environment?
Where did this belief in growing complexity come from?
(Could it be perhaps just a crude reflection of the progressivist ethos of Modernity?)
PARANOID release internal infosec guide
That's fair.

But even fans of them have to admit that they do attract a certain demographic. Namely people who want Apple-only products throughout their home, Macs, iPads, iPhones, Airports, Time Capsule, Apple TV, etc. I can count on my hands how many people I know who have an Airport, and they're all Apple fanatics.

Most people either seem to utilise whatever their ISP gives them (the vast majority), or buy whatever is popular on Amazon and has the features they want. Even then power users are a small subset of consumers.

Airports requiring an app isn't a good justification for why Google can do the same. I'd argue that Airports are in the wrong here, and that the market has shown that routers which provide a web interface do better.
And when market-makers lose an option for managing their risk (hitting bids in a related security), they'll naturally charge a wider spread to buy, further diminishing liquidity that would stabilize the market.
The Thing About Samsung Pay's MST Transactions
They explain it here: https://developers.google.com/closure/compiler/docs/limitati...
It sucks. I'm sorry you had to deal with all of that.

Also, adding insult to injury, your use of the word "mum" suggests that you may have been forced to play the 50hz PAL version of Sonic 2 instead of the 60hz NTSC version.
Code collaboration made easier with new, exciting features in Bitbucket
The URL point to losslessh264 a fork of OpenH264

> "we built a recompression layer that can get additional win ontop of CAVLC and other algorithms."
Exactly. It is exactly equivalent to saying that if a strict FP program compiles it is "bug free" but of course it has little to say about whether the code is 'correct'.
The title of this submission omits the best part; closure provides static type checking. That is more valuable to me than the dead code removal & minification.

I just discovered an amazing and nearly undocumented feature of the Closure Compiler: the --module flag.

One of the most inconvenient parts of using closure is having to compile each page separately. That's what the Closure docs say to do: https://developers.google.com/closure/compiler/docs/api-tuto...

That means if you have 10 pages, you have 10 compile passes, even if 95% of your code is shared. But, it turns out you can run a compile pass and output multiple compiled .js files simultaneously! This has cut my build times by 10x.

So, anyone with long build times due to multiple separate builds, poke around and find out how to use --module!
Good for You – Selena Gomez (AJ Cobler Cover)
You have to restrict your code to a certain style (and there are warnings for whenever you're defeating the DCE, I believe). You'll particularly see this when you're accessing properties via array-index-like lookup (your myObj['f'+'oo']) example) instead of e.g. myObj.foo under advanced compilation, where the property name will have been munged and doesn't exist.

Like anything else, there are tradeoffs, and Closure asks that you restrict yourself to a more predictable set of patterns in return for the benefits it offers.
Wal-Mart Cuts Workers’ Hours After Pay Raise Boosts Costs
92% of startups fail. For most, it's not going to turn out pretty.

Apparently your friends are incredibly good at choosing startups; they should be VCs.
Don't say that. Do I want to have to loose my opportunity to free up memory with a daily bounce? Do I want to have to support this stuff for even more hours? No!!!
This kind of indirection is specifically not supported even with simple optimizations: https://developers.google.com/closure/compiler/docs/limitati...
R: Why it’s the next programming language you should learn
This should be obvious? Complexity isn't an adaptation if it does not prove enough of an advantage to justify the increased maintenance and construction costs.
Sorry this is a bit off topic, but - What made you move away from the Unifi LR?

I'm actually going to be upgrading my networking equipment soon and was considering doing an edge router x and a unifi LR - I've deployed a few LR's professionally and found them very stable with far reaching quality signal.

Was there an issue you ran into with the AP, or did you just want something more that it couldnt do?
This is the AP I got (there's others available for around the same price, but the deal with the two antennas was too good to pass up:

http://www.ebay.com/itm/261985177103

Here's the power injector you need to be able to run both radio modules at the same time:

http://www.ebay.com/itm/252032508098

You'll want the c1250-k9w7-tar.152-2.JA1.tar IOS load to run it on "autonomous" mode (not needing a central controller) and have Chrome/Firefox compatibility for the Web UI if you use it.
>They have Windows, OSX, and Linux apps.

That's sort of a crucial distinction. You have to run the application, but pretty much everybody has something that can run it. That's very different than requiring an application that only runs on mobile devices, and even then only some mobile devices.

I'm actually not seeing a Linux version of the Airport utility anywhere, although apparently the Windows version pretty well with WINE.
Mozilla's mobile misstep puts the Web at risk
In ClojureScript there is a attempted going to make Closure Compiler Modules work with other modules:

https://github.com/clojure/clojurescript/wiki/Google-Summer-...
And you had full 3rd level knowledge of all issues in all regions? Or key people in key regions who got woke up a lot? They should run these things for an hour a day 4 days a week. It's just a game, we don't need this.
>They have Windows, OSX, and Linux apps.

That's sort of a crucial distinction. You have to run the application, but pretty much everybody has something that can run it. That's very different than requiring an application that only runs on mobile devices, and even then only some mobile devices.

I'm actually not seeing a Linux version of the Airport utility anywhere, although apparently it works pretty well with WINE.
The -LR won't do 5Ghz, it's 2.4Ghz g/n-only.
He was being sarcastic. Nobody (including me) knows who invented the capacitive touchscreen. Everyone knows who Steve Jobs is.
Worried about malware on your router? Here's how to keep it safe
I think it's likely that long-term, the approach FB took with Flow (or more general Abstract Interpretation methods) should be able to handle more cases with less effort on the developer's side (albeit with increased computational costs).

The modules/"code motion" is a bit strange at first glance, but definitely a huge boon for building debuggers/admin interfaces/etc. that you don't want included in your main application. David Nolen wrote about this earlier this year when support started landing in ClojureScript http://swannodette.github.io/2015/04/07/in-stillness-movemen...

Edit: wrt Flow, specifically referring to FB's approach to retrofitting type-checking into a largely dynamic language. Thanks to swannodette for pointing out the ambiguity.
The idea that data can fundamentally change based on how it's viewed, legally, is absurd. I hope this trend passes quickly.
You tell the compiler a file that it's not allowed to dead-strip. From there, it then computes the transitive closure of the rest of your code that is referenced from the "entry point", and removes everything else. It is, of course, possible to reference things in indirect ways that the compiler can't see, so they provide some mechanisms to force inclusion if necessary.
Lessons After College
Flattr tried to do something like that, but they're not big enough to break chicken-egg problem.

Google already owns a lion share thanks to adsense and doubleclick. If I understand correctly this lets you pay to disable Google's ads, so it's pretty neat: I've heard many people say they'd rather pay than be the product, so now they can, on millions of sites already (apart from that "Contributor is not yet available in your country." :)
SmartHalo – Turn your bike into a smart bike by CycleLabs – Kickstarter
Show HN: Cache – Collect links, text, images, video and audio from the web
URLs

Examples

[0]: https://i.imgur.com/sb8dHcY.png

[1]: http://imgur.com/a/jeJB6

Paper: http://arxiv.org/abs/1508.06576

Related discussion on the paper: https://news.ycombinator.com/item?id=10141516
Boffins laugh at Play Store bonehead security with instant app checker
at least 2 forces come to mind -
1. Humans want to believe they are special in some way
2. Theory of evolution is under "selective pressure" to explain complexity since the watchmaker analogy
You have to follow a set of rules - your example would not be allowed.

One of the nice things about ClojureScript is that the compiler will output compatible code, so you don't even really have to think about it (except when doing JS interop). If you write valid ClojureScript, it Just Works.
One more rule added to my filter. Thanks.
There should be a law that says if you do this you must give the workers more flexibility in work hours/shifts.

Like letting people pick days they will work. So that they have a better chance to supplement income with other jobs without bending over backwards working crazy times of the night so as not to conflict with their other job.
What's the difference between plain genius and creative genius?
Server-Side Rendering with React and React-Router
function add(a,b) { return a+b }
console.log(add(1,2))

Compiles to

console.log(3)

I'm not sure about your example, but I think it would work. (Apparently not)
In fact it is not that far off, and accurate for uprights;

2,000 grand pianos / yr, 500 upright pianos / yr.

Credit to: https://news.ycombinator.com/item?id=10147054
QA Automation for Everyone
"... using little more than geometry to communicate the ideals of Bolshevism to a nation that was largely illiterate ..."

Possibly getting cynical in old age but sincerely doubt that the target audience were the peasants. They addressed that channel [1] with a slightly heavier (graphic) hand.

[1]: https://upload.wikimedia.org/wikipedia/en/a/aa/Tov_lenin_och...
The bootloader for Sparc systems @ Sun is still OpenBoot, written in Forth: https://en.wikipedia.org/wiki/Open_Firmware

I worked on it a bit, though it doesn't change much beyond bug fixes these days.

Peripheral vendors still routinely provide FCode drivers in the server space.
Dignity in a Diverse, Decentered, and Digital Age
BIG NEWS
Look at jQuery as an example[0]. gzip only saves you 4-5% over minification alone, but combining both techniques you save a further 20%. If you're not doing both you're leaving a lot on the table.

It's the same story compressing other material. 7-zip has filters to preprocess x86 and IA64 machine code to make it more amenable to LZMA, and such filters can get you a further 10-15%.

[0] https://mathiasbynens.be/demo/jquery-size
Definitely. That's the world of market microstructure. You could certainly change the rules but there might be other unintended consequences. For example, removing circuit breakers could make people less confident in the market since a fat finger order or error could mean Game Over instead of a manageable but significant loss.
just one nitpick on your comment - minifiers do not replace property names, only variable names in JS
JSON with a schema seems broadly equivalent to SOAP.

I can believe that early implementations were buggy, but working with WS-* these days is actually very nice - nicer than JSON webservices, IMO.
As others have stated, there are several options.

Here's a general breakdown:

-hardware-
cardboard,
Oculus Rift Development Kit (DK2),
GearVR (ionly compatible with Galaxy S6 or Note 4),
mobile VR viewers (durovis, wearlity, DIY 3D printed headset, etc.)

-software-
Unity,
Unreal Engine,
ThreeJS + WebVR

The most lightweight route is probably getting your hands on a google cardboard and using Unity to get your hands dirty. For basic things you can just use Unity's visual interface. The challenge is really just learning to navigate Unity, not so much understanding graphics. It's mainly C# or UnityScript, which is essentially Unity's javascript mutant child.

For me, one of the best ways to get assimilated with VR was actually using the webVR API (http://webvr.info/). It's a JS based way to interface with the Oculus Rift or Cardboard. Using Three.JS to set up scenes and then using the webVR API to render stereo, get sensor data, etc. was a fast way for me to learn VR development.

Since you've mentioned you're adept with graphics and programming then maybe it's worth exploring Unreal as it's a bit more advanced, but can produce some awesome results.

Happy to answer any other questions!
This is not a problem for Debian.
Comparing four PE giants
It is worth saying, that with those Aironet APs, if it doesn't expressly say it comes with the antennas and power supply, assume that it doesn't. Cisco actually sells them that way, and you're meant to mix and match which antenna configuration you need (but only certain ones are supported).

They're a good buy, but aren't designed for consumers at all (or to be deployed as small business/home APs).
What Do We Mean by Rationality
A neural algorithm mimicking artistic style
Apple Watch: Last Week I Walked 68 Miles
Seems to me that T-Mobile should not be able to tell me how I use my device. The device-to-device connect (hotspot) occurs on my hardware and doesn't involve them. The data usage is all mobile usage after that, since it's coming thru my phone.

Now, T-Mobile may object to certain kinds of traffic (torrents, etc.) but that opens up a whole different can of worms. If the high-volume data consumers are actually causing a problem for other users, then T-Mobile probably should consider expanding their bandwidth with new equipment.

Trying to squirm away from the term "unlimited" because of a few inconvenient users with inconvenient bits, however, is just weaselly as hell and avoiding the real issue.
Tbh, that could apply to any other number.
I'm not sure I agree entirely with this. Historically, pianos haven't been widely owned, and performances haven't been widely attended. Although I would guess ownership is probably more evenly distributed now than ever before (especially considering high quality digital pianos).

Piano (orchestra in general) does seem to infiltrate common culture fairly pervasively (at least american) through movies. Maybe it could even be argued that it's more culturally prevalent, but just less prominent.
How your brain tricks you into seeing crabs on Mars, or Jesus on toast
Wait - so TMO monitors your data usage and throttles you down when you exceed your cap on a phone, but doesn't do this for hotspots and trusts the hotspot to police the data cap?
Have a look at the advanced compilation option: https://developers.google.com/closure/compiler/docs/api-tuto...

Basically when enabled it will rewrite normal property access, e.g: `myObj.foo` to something like `a.b` but wont shorten string literal access, e.g `myObj['foo']` just becomes `a.foo` which you would use for any API's you want to export.

For a real-world example I use string literals for declaring jquip's public API:

p['removeAttr'] = function(name){
return this['each'](function(){
if (this.nodeType == 1) this.removeAttribute(name);
});
};

Which closure advanced rewrites to:

q.removeAttr=function(a){return this.each(function(){this.removeAttribute(a)})};

Original: https://github.com/mythz/jquip/blob/master/dist/jquip.all.js

Compiled: https://github.com/mythz/jquip/blob/master/dist/jquip.all.cl...
Paper: http://arxiv.org/abs/1508.06576

Related discussion on the paper: https://news.ycombinator.com/item?id=10141516

Additional example: http://imgur.com/a/jeJB6
How to Run a Node.js Express App in Amazon’s AWS API Gateway
We are currently completely rewriting the entire frontend of SMC using React.js, Flux, and RethinkDB ...

... I'm living on credit cards

Are you sure a full rewrite of the front-end is a priority at this point?

I've been there. When your business is going down, it's easy to believe that a technically beautiful v2.0 is going to save the day. It didn't do anything for my business though, and in retrospect I should have spent the year on something else.
Self-driving cars and bicycle track stands
Minifying alone is "kind of" important, and the benefits are hard to measure precisely with the combination of gzip, http/2, and the plethora of other network optimizations. However, the more sophisticated JavaScript compilers, like Google's Closure Compiler (https://developers.google.com/closure/compiler/) also do a lot of other compiler optimizations, like inlining functions, eliminating dead code, etc.

When you are working on a large engineering team with lots of JavaScript volume written by a lot of different people, the dead code elimination alone is worth it; it means you can use one function from a library with millions of lines and your compiled JavaScript will only contain that individual function rather than many megabytes of unused code.
I see, thanks. Good old "independent" BBC state tv. Great for wildlife documentaries but not a trusted source of news.
This is the reason that I always take a very sceptical view on mobile contracts that offer "unlimited" data.

I wonder if they'll be allowed to continue calling it "unlimited" here in the UK after this revelation.
How+To+(Successfully)+Source+Your+First+2+Sales+Reps
>mobile game market is _hard_ unless you're flight control/angry birds/candy crush.

Is there any angle to get around this, for even modest sales? Most people here seem to be saying that they barely cover cost, if that. Very discouraging :-( There has to be something that small guys can do that big guys can't.
Google Search starts connecting you directly to plumbers, locksmiths
Same for nginx, using the gzip_static module: http://nginx.org/en/docs/http/ngx_http_gzip_static_module.ht...
That's not what a market order does. It buy/sells at an unknowable future price.
That sounds surprising as a post-doc will be paid significantly less than a staff member (which an H1-B implies.)
Can someone clarify this for me (still haven't finished my coffee yet): If T-Mobile is offering "Unlimited Mobile Hotspot" data as a part of their plans then how exactly is this stealing?
What things compute?
No, I think the phone sends a certain bit to their servers when you're tethering, to say "this data is from tethering", and they only allow a certain cap for that. These "omg hackers" found a way to prevent that bit from being sent, forcing the carrier to make good on their promise of "unlimited data", which the carrier doesn't want to do.
I really prefer git + Liquibase. I personally like the database abstraction and the refactorings.
Yard mowing.
I remember people talking about micropayments for articles when the dot-com bust happened in 2000. It didn't happen, because people aren't going to keep making purchases when browsing the news or their favorite blog or what have you.

Sure, we have some more infrastructure in place now than we had 15 years ago, but we're still not going to put up with (for example) Google Pay or Apple Pay confirmation dialogs every time we click on a link to a news article. And don't think they can just bury the confirmations: app stores have gotten into huge trouble in the past for not providing enough security surrounding IAPs, and we had enough stories of children unknowingly running up their parents' credit cards with IAPs that the FTC had to get involved. We're not going to see anything that lets you unknowingly run up a credit card while browsing the web.

Social media has probably done more to make paywalls more difficult than anything that existed in 2000, too. If you post an article to social media, your friends are going to complain when they click a link and find out they have to pay to read the article. Thus, people don't submit hard-paywalled links to social media so as not to piss off their friends, and hard-paywalled sites find their mindshare and thus their relevance evaporating in favor of sites that don't do this. To get around this, paywalled publishers like the New York Times poke holes in their paywalls for Facebook referrers, because they'd rather lose a bit of paywall revenue then get shut out of social media and see their mindshare drop like a rock. So many people nowadays get their news from links posted to social media that the NYT must be taking a huge hit from their Facebook exceptions. It's a catch-22: they directly lose money by poking holes in their paywalls for Facebook, but they'll also indirectly lose money through loss of relevance if they tell everyone who wants to share their articles on Facebook to pound sand.

Honestly, the best case scenarios are:

- Patreon-style crowdfunding models, where enthusiasts pay content creators before the content is created, and then it's available to everyone with no strings attached.

- Content is offered as a loss leader in order to get people onto the website in order to buy the real moneymaking product. What the real product is, that's up to marketing departments to decide, but it's not the content, and it's not the ad space.
KCon Is a Famous Hacker Con Powered by Knownsec Team