skysight-inc/HackerNews huggingface dataset:
I think what qualifies a web application is the introduction of state and enabling the manipulation of data. Static sites, or dynamic websites without the state problem to the end user, are naturally better off without a client-side app approach (though ajax is still beneficial and structuring your approach to ajax can make client app frameworks/libraries tempting)

However, when you start giving the user powers to manipulate data and make the manipulation of data a core function of a website, it becomes a web application.

Photoshop is an extreme example of a web app really, and perhaps the most basic web app would be something like a CMS or a forum. Hence why social networks and email clients are created as apps now: they involve repeated display and manipulation of elements which are liable to change.

Initial attempts to improve the user experience of such tools as online chat and mail were made by using Ajax and this has culminated in asynchronous Ajax and virtual DOM models in order to achieve a real-time effect without sacrificing accessibility and performance.

We went from reloading entire pages to reloading bits of pages to never loading those bits but rather constructing them on the front-end drawing data from APIs.

Now with React and similar libs, we are looking at a hybrid approach: exposing data via API but (ideally) constructing and emitting HTML on the server before pushing the app to the client where a virtual abstraction of the DOM is established, but where data can still only be manipulated in one direction. This means that there is no state issue, because while routing and other interactions are achieved client-side, their composition is determined on the server.

It's almost a dialectic cycle of thesis, antithesis and synthesis.
Yes, For instance, Java.
TBH, I prefer Hg regardless. I only use git when forced to to interact with a project on GitHub. As for replacement, I don't think anyone wants that. Two widely used open source DVCSes is a great thing.
Rocket internet doesn't do 0 to 1 it only does 1 to N

(didn't get it, read "Zero to One" Peter Thiel)
The measure of everything in a startup is growth. The message to QA should be the same as for everyone else: We are growing! Trust that your employee will do a good job figuring out when something bad happens from a technology standpoint.

If the employee is unhappy, it is more likely to be for cultural reasons than anything. Management by walking around can develop rapport. Asking "what can I do to help you?" is a good place to start.

If you're looking for metrics, ask an expert: e.g. ask the employee what the employee tracks.

Good luck.
https://news.ycombinator.com/item?id=10963257 (144 points, 1 day ago, 118 comments)
I'll do that as soon as you stop censoring people that disagree with your and PG's agenda.

In the mean time I'll continue to evade browser fingerprinting and post from new IP addresses. You can't keep this place as your personal echo chamber as much as you would like to.
It depends on your perspective. If you're building an application that passes disjointed components around, then yes, you can combine the three (js,html,css) into a self reliant container. If you're building a website that is basically a series of pages, that is part of a book per say, then it doesn't quite make sense. I would say 10 years ago it was not common to think of the web as a platform. Over the last 5 years using the dom as platform and js as the source code has become much more predominant.

Whether the scope of your business can be used by this architecture would determine whether it would come up in your day to day.
The article links to this, but it's worth highlighting that the agency (the Consumer Finance Protection Bureau) that created this analysis has a Github repo for their work:

https://github.com/cfpb/proxy-methodology

They have also published their methodology here: http://files.consumerfinance.gov/f/201409_cfpb_report_proxy-...
I have to admit I find the author's insistence on defining a component as a function to be a big red herring. Instead, it feels like the presence of JSX outside of the component's render() method is the (potential) code smell.

It doesn't help that several popular React & React Native tutorials out there, for understandable simplicity, opt to use "renderSubThing" methods. In the examples and in my own code so far, I mostly find those sub-render methods to be a proxy for "I don't want to break stride to make a new component, so I'll jam this stuff in a method and refactor later." That's great, so long as the refactor actually happens.

(Hm, that'd be a great candidate for a vim refactoring plugin...)
Linky – minimal webapp for storing own link list
How Interfaces Drive the Rise and Fall of Technology Companies
Dude, I saw them in 2009 at their first reunion show. I've been tipped off for a while now.
It does indeed go against years of advice, but only if you look at it from too far out:

(Note: I've minimal Angular experience so I won't comment on that. I've spent the last year on React)

The real problem is mixing business logic and presentation, not mixing HTML and JS. React is purely presentation & presentational logic (or should be, you can of course implement it poorly)

For Presentation, the HTML and JS are always coupled, whether you have them in separate files or not. So in that sense, all React is doing is admitting a truth.

While embracing the coupling of that mix, React is ALSO pulling out a lot of logic: React encourages one source of truth (the state is in one spot, and drives the markup, but you never consult the markup to determine the state). An error that is commonly seen in, for example, jQuery apps, is that some state is hanging around in application variables, while other times it's in the current markup state, and the app will consult the markup to see what's happening. That's not a built in jQuery problem, it's just a common problem of implementation.

I'm not sold entirely on the React boat, but it does seem to directly address problems that I've encountered in other systems, and I expect whatever comes next will build from React principles rather than reject them.
See the problem with this explanation is again, it doesn't explain the reasons why this is bad. I'm not saying the reasons don't exist - on the contrary I agree they're very much real. However I don't think "view logic, domain/business logic and database boilerplate code are intermixed in a single file" qualifies as a straightforward, logical explanation. It simply doesn't answer the "why" question at all.

Let me try and cover some of the reasons why. I'm sure you know about these reasons (and can probably list more), my goal is just to present an example of what I consider to be a straightforward logical explanation:

If domain/business logic is mixed with view logic, then it would not be possible to reuse the same logic in a different view. These changes happen more often than anticipated: for example, a PHP project that has the view logic separated from the domain/business logic can more easily get an API (a HTML is one view, a JSON API would be just another view)

Additionally separating database code from business logic lets you switch databases more easily or to give you multiple ways to access the data. For example, data may be directly fetched from an SQL database initially, then its determined that this is too slow and results need to be cached in Redis. If there is no separate code for the data access layer, you would need to locate every database query and make sure it queries the cache first.

So this is what qualifies as a straightforward, logical explanation for me: lets assume the opposite statement was true, then we demonstrate how this leads to a bad situation and why its bad (more bugs, more work, and so on).

Another would be doing a case study: we did X (mixed business logic and templates in this way), then when we wanted to do Y (present a different view V) we had to not only write new code (for the new view) but deal with this problem (uncouple the existing logic from the existing view). If we originally did otherwise (wrote the logic separately) this would've been the same or similar amount of work (demonstrate this) yet later we would not have to do the hairy decoupling (which took Z amount of time and caused N bugs)

I think the whole industry would do much better if we focused more on actual specific examples and case studies of problems and drawbacks of different approaches rather than giving vague descriptions of the current state and claiming its "bad". Its just not helpful at all. There is so much reinventing the wheel in our profession simply because we are not communicating knowledge effectively. Frankly, most of it reminds me of religious dogma.
You can do better than that by taking advantage of character shapes, though. Minimal example:

()

and:

)(

have the same brightness values, but we see them pretty differently.

Ideally you would use edge detection, maybe some object detection, and then be willing to compromise a little on brightness in order to make important edges nice. I don't know if there's software out there that does this, though.
>Citation needed.

>By September 2004, the NSA had developed a technique that was dubbed “The Find” by special operations officers. The technique, the Post reports, was used in Iraq and “enabled the agency to find cellphones even when they were turned off.”

http://www.slate.com/blogs/future_tense/2013/07/22/nsa_can_r...
30. Τ.Ε. Πρόβλημα 2ο – Μαθηματικά – ΣΤ' Δημοτικού
Great quote.

I usually use wikiquote to verify attribution, but this one is not mentioned there. Is there any proof, or is this simply the most popular attribution? Sadly, most are simply popular, which has led me to be suspicious.
You can: https://klarismo.com/ (YC S15)
I consider the CPython switch from Mercurial to git the final declaration of victory.

I still have to understand how CPython could miss the symbolic meaning of this decision.
What I Learned from Analyzing 1,700 Blog Posts
As part of getting my driver's license you have to spend half a day at a class on driving risks, you get to spend some time driving in really slippery conditions, getting the feel for ABS and traction control.

They also showed some actual wrecks so you could see what happens and how they break, and they really stressed that even though it might be tempting to buy a cheap, old, used car, DO NOT buy something built before the year 2000, stay on this side of the millennium, older cars are dangerous!
Ask HN: When did Amazon start delivering packages itself?
I order on AZ (German website) almost everyday, usually ships with DHL or UPS. Since last week I only receive packages from „Amazon Logistics“. They have their own tracking codes, cards when you are not at home, etc. Has AZ been doing this all along or is this a new thing? Very few information on this when you Google except one mention on their „carriers“ page.
I think ASCII art is still somewhat popular on 2ch.

http://aa.en.utf8art.com/new
I love how he named that presentation after a snarky Tweet from when React was announced: https://twitter.com/cowboy/status/339858717451362304
> Even HTTP Digest didn't require the password to be stored in plain text

As I understand it, it would still be required to store something that, if leaked, would allow anyone to create valid authentication responses? "HA1" effectively becomes the password, in that leaking it is as bad as leaking the password.
SublimeRSS: A simple RSS reader for Sublime Text 3
If you do it right, you can get a nice crack sound. I've found that I can usually get at one from a freshly washed item of clothing (and towels) and it only cracks once per fresh wash. I don't understand the mechanism that causes it but find it satisfying for some reason.
Search engine for Internet-connected devices
Kiwi IRC will start revealing your IP address on unconfigured networks
Thank the federal government.
> Completely remove Facebook desktop notifications
> Close all your social accounts and extra windows

Are we talking about work productivity here?
Well of course you don't browse SMN!
You might want to pick up the Chilton's or Haynes manual for your vehicle and start from there. Most of these manuals will have a section describing how you perform basic maintenance on the vehicle.

It's how I learned.
> The language was released in 2014. The error messages are being actively worked on. They were vastly improved with 2.0.

Well, "Segmentation Fault" hasn't really improved, and it's reasonably common when type inference in closures breaks down.
If password X is hashed to Y, and you store Y that seems ok.

But if you directly check if the client transmits Y then Y is just the new password.

At a minimum you should be hashing whatever the client sends and comparing that with the hashed password.

PS: Not that most developers should do this by hand.
I had completely forgotten (or never knew) that voting was a part of REI membership, and I've been a member nearly 15 years.

Regarding their commercial success though, I think is attributable to several factors, including:

- They have tended to their brand really well. Their brand means the same thing (and more) to me as it did 20 years ago.

- As I have grown up, had a family, they have continued to provide things I want/need: I used to buy a lot of ski and camping gear there when I was younger, and now, it's one of the first places I look for kids' outer-wear and sports gear for all seasons. They are now far more than an outdoorman's outfitter (EDIT: but they haven't gotten so broad as to dilute the original reason I liked them).

- They have attached their brand to cultural symbols of the upper middle class, like ski vacations, environmentalism, etc. Therefore their clientele are people of reliable means, similar to Costco's customer demographics. In fact, In the Bay Area, I can think of 3 REI locations that are quite close to a Costco, FWIW. EDIT: Also, these cultural symbols are things I am very likely to teach my children - my very young kids already know that when we want gear, we go to REI.
That is far more easily explained by contamination, which, as you mention, is actually how they explain it in papers.
Author here (matt) -- would be interested in hearing if other companies have had issues with attacks on their live chat or support services.

I found this article about Amazon really interesting:
https://medium.com/@espringe/amazon-s-customer-service-backd...
> This is certainly dramatic, but it is important to realize that the majority of automobile safety improvements came before 1960

Uhh what? Incorrect.

In 1960, 20.147 per 100K population died, in 2013 10.345 per 100k population died. Approximately a 50% decline (9.802 actual) between the two periods.

In 1937, 29.357 per 100K population died, in 1960 20.147 per 100K population died. Approximately a 32% decline (9.21 actual) between the two periods.

So both as a % and in literal terms the delta between 1960 and today is greater than the difference between the worst year (1937) and 1960.

> We've become increasingly safety obsessed and jammed more and more expensive and heavy safety technology into vehicles as the returns have diminished dramatically.

But yet vehicles are lighter and cheaper today than they were in 1960 (adjusting for inflation). So even if this safety technology is increasing both price and weight (and I agree that it does), we're still in a very good place.

While reduction in deaths has slowed in the last ten years, we're just on the brink of moving into automated safety systems (e.g. auto-breaking) that will likely move things forward yet again.
Are there myths of a land where the North Sea is now?
What's stopping this becoming a new business model for SeaLand? Registering corporations as international entities undercutting the most favorable combinations of incentives from all current countries?
This is how military utility uniforms are sized: Small, Medium, Large and Short, Regular, Tall. I'm surprised that idea hasn't spread into mainstream sizing.
But by the author's own admission, aren't people keeping the tab open so that they can come back to it later?

And is someone who consumes your content in 3 minutes more relevant/valuable than someone who is inactive on the page for 1 hour, but still spends 3 or 4 minutes of active time?
> I think the whole ethos behind a high-tech startup is that you do something well by implementing a novel (in the sense of adoption rate) process or technology.

That might be the ethos, but it isn't the reality. Most startups aren't first movers, and most of the ones who succeed aren't either.

Throwing in "in the sense of adoption rate" is kind of silly though, no? Every mom & pop shop has its own unique process that hasn't been widely adopted.

I swear, those Zappos shoes are just like the ones you get on other web sites.
The city/town runs a series of adult education classes, usually 10-12 weeks. There's a huge range of subjects (cooking, dancing, languages, painting, smithing) and while we're often too busy to do more, it's absolutely worth it.
For anyone outside of the U.S., by American, he means U.S. since the rest of America(the continent) isn't subject to this.
And Ralph Nader.
Learning Tools for OneNote: One of the Most Disruptive Ed-Tech. Yet
Depends on the company and what their product/service is. You might need varying levels of knowledge. I'd say you totally could self-teach it for most roles.
Thank the IIHS and other groups.
Way better medical care has to be part of that, too. Same with gunshot wounds -- in a lot of places, something which was 90% very negative patient outcome 30 years ago is 50+% survivable now, due to faster EMS, understanding of golden hour, and great trauma intervention.
> I thought of the guy known for dropping Band-Aids on women’s desks when the trading floor was cold because he didn’t “want to be distracted,”

...I don't understand. Can anyone explain?
It took me a lot of random clicking to even get to stage one. Then after some more random clicking and some blocks moving around I got to stage 2.

You really need to consult a graphic designer for the UI.

Also, explain more. As an adult I was ready to give up by stage 2, how are kids going to figure this out.

I hope you find this feedback helpful.
To add a personal perspective, when I got my first car in 1970, there were about 50,000 deaths per year for 200 million people. We were driving 75 - 80 on the interstates in the midwest on bias-ply tires with drum brakes and solid rear axles. Despite more than a 50% increase in population, total fatalities are under 35K/year, and trending down. By 2013 (the last year in wikipedia), the fatality rate was 2.5X lower than 45 years earlier.
https://news.ycombinator.com/item?id=10963568 (1353 points, 23 hours ago, 332 comments)
> "Brick and mortar" companies deal with this stuff. Why should the tech industry be exempt?

"Brick and mortar" companies decide where to lay their bricks. You put a website on the internet and it's on the whole internet. In practice you can't even restrict who can access it, as Netflix can attest.

Suppose I don't agree with the laws in X country, or they conflict with the law in the country I'm physically in. Is it really going to satisfy anybody if I put "may not access this service from X country" in the terms of service somewhere, implement some fig leaf of a system to prevent access from there that everyone and their mother can bypass in five seconds (or the bypass ends up built into web browsers), and then millions of people from that country access it anyway?

How does that help anybody vs. just letting the service operate under the laws of the country where it physically exists and letting the users decide if they want to patronize a service that operates under that jurisdiction's laws? (Unless the goal is to increase the adoption of Tor and other anti-censorship software?)
Show HN: View Moto (motorcycle videos) My first site built with Telescope app
I can't say about how the site is maintained (i.e. who makes the various decisions about each language) but it's updated quite regularly. I have changedetection.com monitoring the site and changes happen all the time. Here's the recent change list: https://www.changedetection.com/log/presidentbeef/fll/index_...

Edit. Also, "This site exists to promote languages which are in development or have not yet reached a wider audience." I'd agree that none of the listed languages have reached a wide audience in (terms of usage anyway) regardless of the other criteria. But it's all relative and I do really like the site.
This has also increased pedestrian accidents. With the increased width of the frame pedestrians are obscured when making left hand turns.

'Why Left Turns Are So Deadly' http://www.wnyc.org/story/left-turns/

> "When we compare the data, we find that drivers could see more outside their vehicles in the 1980s than they can now," Dr. Matthew Reed, a research professor with the University of Michigan's Transportation Research Institute, said.
Just being nitpicky, but halved from what to what? If we've spent hundreds of millions of dollars on more air bags and other crash engineering but only halved the number deaths from 50 to 25, it's probably not worth it...
If you have a basic understanding of tools and fasteners, and even a $100 toolkit from Home Depot, start by changing the brake pads on your car. Youtube or Google search for a video and/or writeup of changing the brakes on your particular installation. Many common cars have a user-generated video of the procedure.

I know that sounds insanely risky, but if you don't end up with parts left over, and everything seems like it went together correctly, the chances of screwing something up are very remote, and the chances of screwing it up in a way that won't be obvious in the first mile of driving are even more remote.

Anyone in the Cambridge, MA area who has a very flexible schedule and wants me to put an eyeball on them while they do their brakes, I'm willing (but scheduling is often a bear).

I would suggest this even before taking a class at the community college. I think you're going to be taking the class with peers who have spent at least 50 hours with a wrench in their hand growing up. You are going to learn more (or at least I would learn more) if you have some of the basics and have experience with the basic hand tools.
It's a dude being fucking creepy. You don't want to know more than that.
How to save Twitter (2015)
I lost my reply because the site went down! I'll give a brief one here.

> integers

Or a matrix. Or with some dimension but not others. A total ranking is implausible and lossy, but partial rankings for some traits is tractable: you just have to be careful. If motivated by a decision the use of probability becomes more clear, since you can declare what kinds of errors you can handle and what you can't, relative to the information that you specifically want from an event.

> positive information

This is a problem with statistics, not Bayes. Null hypothesis testing with its p-values and t-tests can only reject a known distribution, not telling you the real distribution without testing for all of them. At that point it can be as prone to GIGO as Bayesian methods are.

There are some statisticians who dissolve the whole Bayes vs Not debate by focusing on the optimisation of loss functions. Although it lacks the philosophical pyrotechnics of subjective probability, in practice it's probably the most reasonable approach: do what works.
> Chess is an inelegant ruleset.

En passant and castling may seem inelegant to you, but to me they make it more interesting. Also, Chess is an Olympic sport, you can find people almost anywhere ready to play with you, and it has a rich history. The board and pieces are a chance for art that I've not seen in Go. I'd rather play a game that is interesting, but basic, that models the complexity of life and its political and caste dynamics, and that's fun to play on any level. It also enlightens us to the fact that humans cannot beat computers at strategy when computers are given sufficient time and resources (because we can't).