skysight-inc/HackerNews huggingface dataset:
The criticism they start with is weird. They take this API call:

OrderDTO Customer::GetOrder(int customerID, int orderID)

And this HTTP call:

GET /customer/33245/order/8769

And ask:

> If we put the function name between the parameters themselves, then it leads to the question, what part of this URL is the endpoint?

But the thing that is between the parameters is "order" not the function name "GetOrder". If you look at an alternative form in which one might (more idiomatically, in some languages) see the API call, the relation to the HTTP call is more clear:

Customers[customer_id].Orders[order_id] # => Order

> REST URLs look ‘cleaner’, but are they easier to understand?

Yes.

They go on to say:

> A simpler API, similar to our original function call would have no mixing of parameters with the name, and clear definitions of the parameters being passed in.

With this example:

GET /customer/getOrder?customerID=33245&orderID=8769

How is that simpler? Sure, depending on how you've implement the backend, it may be a more direct reflection of the backend code, but there is a difference between "leaky abstraction" and "simpler". Also, why is the fact that the action is "getting" something reflected twice?

> Why not simplify by removing parameters from the URL altogether? Put them in the query string, or post body as JSON.

Sure, RPC-over-POST is an alternative (older than REST) style of Web API, and if that's what floats your boat, do it. OTOH, "removing information from the URL for aesthetic reasons" may not be the best reason to move a safe operation from GET, which is defined as safe, to POST, which is neither safe nor idempotent, particularly if you are using middleware that is aware of HTTP semantics -- you've just thrown away valuable information.

> Your API can encounter many application specific exceptions while processing a request, but why try to pigeon hole your error response into a limited number of error codes designed for retrieving hypertext?

Why not choose the best error code of those available in the protocol? In a traditional programming language, would you just throw the most generic possible exception? Because that's what the "just use 200 for success and 500 for failure" approach is equivalent to.

> Verb agnostic, HTTP verbs are really only needed to identify where parameters will go – for GET it’s in the query string, For POST, in the body.

If you are going to use HTTP, why fight against it by throwing out its defined semantics? Aside from reducing the value you get from existing HTTP-semantics-aware software, you are just forcing yourself to reinvent the wheel.

> REST is a style, not a standard.

Whether REST is a style or a standard is irrelevant when your post is advocating abandoning it completely in favor of RPC-over-HTTP with deliberate disregard for HTTP's defined semantics.
I had no idea there were so many repressed SVN-loving developers out there.
Really? https://github.com/wting/hackernews
Hacker News is a website (so even with their code being open-sourced, I cannot verify what exactly they're running anyway), not software I'm running (JS aside).

The firmware on the routers between me and the server are proprietary, and there is nothing I can do about that.

I can choose not to run proprietary software without having to not use the web.
Can you give more details on how distributions are tied to founder salary? If salary is above X distributions to indie.vc need to be Y.
I think there is a more likely, albeight sadder explanation. Steve was simply able to read the faces of the team and correctly guess that they didn't comply. As a compliance professional he was very sensitive to that and immediately reacted.
Show HN: MySiteVitals – Your Website or App's Analytics Delivered Each Morning
And if you never do, even after fifteen years working dozens of different project? Including a few projects that have run for most of those fifteen years?

I agree that git is weak for binaries, but the only binaries I need to keep in it are a few images and installer - nothing that has many versions, nothing that causes me problems. Similarly, a lot of open source software is mostly made up of code, not blobs.

As for distributed work, even when I'm the only developer on a project, it helps not to have to worry about a central server, especially if I'm on-site. It's also hugely faster than SVN ever was.
Show HN: Faster Image Loading on Android is now a one-liner
There are different kinds of randomness. The exponential distribution of the waiting time is a nice, mathematically pleasing result. Although not a very nice one to the commuter.
I have, and at least at my work, it's terrible. Sometimes it gets to the point where my submit requests time out several tries in a row. Yes, I'm sure it's because the people maintaining the server aren't doing it properly, but that's sort of the point. With git, you don't have to worry about it.
Scammed on HomeAway
Anyone can work without internet. You just don't commit. If you really need to commit without internet, you're probably an edge case. It's a bonus, but not something I'd choose a VCS system for. My central repo is where the build server is looking, so if I'm not connected, I'm not deploying no matter which VCS I have. The repo is most definitely centralized.
Passive Scan Finds 400k Security Camera DVRs with Hardcoded Credentials
Few issues with the article.

1. A quick Google search would help the author learn that Ayn Rand was an objectevist, not a libertarian.
http://en.wikipedia.org/wiki/Libertarianism_and_Objectivism

2. The author builds up straw men and uses unnecessary flourish. Example:
> The government won’t fix the roads, so these desperate entrepreneurs fill in potholes with shovels of dirt or debris. They then stand next to the filled-in pothole soliciting tips from grateful motorists. That is the wet dream of libertarian private sector innovation.

I imagine that most libertarians would prefer private roads that are privately maintained. Kind of like Starbucks doesn't rely on panhandlers to clean up after their stores, private roads would be maintained by the owner.

3. The author provides no concept of what it means to be a "libertarian" country and expects the reader just to accept that on face value. Is tax revenue low as percentage of GDP? What percentage of industries are private? Are there many business regulations? All good questions the author could have gone into instead of a childish rant on how poor this country is.

4. Ridiculous statements like: "Part of the reason this discredited, libertarian bullshit still carries any weight for Americans is because so few of us travel. Only 30 percent of Americans have passports, and if Americans do go places, it’s not often to Honduras."

There are poor countries that come from all political philosophies.
How Samsung's Galaxy S6 stacks up against Apple's iPhone 6 line
How the url is formatted is irrelevant for REST.
> I feel bad for the wasted cold cuts.

I've recently started hunting to get my meat, and I seem to be really sensitive to this kind of terminology lately.

You feel bad for the wasted animal that was killed.
Because they're intermediary steps of a process, regenerating them takes an hour and I don't feel like setting up everybody's environment to build them. Most people don't need the capability, but they need the result.

Why are you asking?
Thank you, to Reddit and the Reddit community
Companies would create a separate Vulkan driver that would live alongside the OpenGL ES driver; the article mentions some of the advantages in terms of performance and stability.
Content Marketing vs. Social Media Marketing: What's the Difference?
> // BTW: I don't believe anyone telling me they can read camels more efficiently.

Maybe it's time to accept that other people have different opinions to you, and maybe, just maybe have a preference for camel-casing.
This is a well executed tutorial.
Bug: slide 32/53 reads

> [...] and click "resize flexbox".

The actual link reads "resize box", not "flexbox"
---
I've been thoroughly enjoying working flexbox into frontend design. It really is what we've been missing. Slap autoprefixer into the flow and you have little to worry about if only targeting modern browsers.

The single-class oriented css toolkit Basscss.com has a flex-object module [1] that I've been getting miles out of lately. While it doesn't provide single classes for all flexible options, it's a good start and it's easy to add your own styles into the mix. Plus the documentation site itself is a great example of using flex. The Basscss author sort of operationalized Philip Walton's solved by flexbox stuff.

[1] http://www.basscss.com/docs/layout/#flex-object
Google Apps Toolbox
It does, and the previous version actually did support Occulus. They released a free plugin for it (the free version of Unity) a few months ago.
I like the idea of smart watches, but I don't see why there would be a demand for them. Specifically, I can't think of a single "killer app" that would make a smart watch better than the phone that everyone is currently carrying around.

Can someone enlighten me? Whats going to be the killer app for smart watches?
Very often a variable name needs to provide more context.

I have found it very useful to use under_scores as a form of punctuation within camelCase to visually connect related variables.

Like this:

spectrumPlot_x
spectrumPlot_y
spectrumPlot_drawHarmonics
qa_signalDone
qa_setLoadedFlag
requestTimeout_minValue
requestTimeout_maxValue

... and so forth.

(Note that the opposite doesn't work: camelCase as a punctuation within under_scores.)
Quote: "It only took Roy a minute to discretely nudge the pile ..."

A small, barely detectable but finite nudge? Or did the author mean to say "discreetly"?
Nasdaq Parties Likes It’s 2000, but More Sedately
> I think "use whatever style you want" is a fair ethos for personal projects but the truth is it never works for teams.

Citation needed; my experience is just the opposite (it works much better than trying to specify some kind of organization-wide standard).
Here's an idea:

1. Let people enter their measurements.

2. Ask people to upload a photo of their face. Slap it as texture onto the head.

3. Do an animation: This is you, if you lose X pounds of weight / gain Y pounds of muscle.

Let people save this and use for motivation.

There's something intriguing SEEING yourself transform in front of you. "This is how you could look like" and it's tangible.

Maybe I should make an app for that :D
Well REST allows for resources to be accessed as they are: resources. Using POST/GET query parameters implies that the server should do some actual processing on these to deliver the requested resource. With REST, you can have the resource be a static file on the server, no processing required.
We use flexbox and support IE10 with it at my company. In practice, Safari 7 has been far more of a pain with it than IE10.
Did you even read the article? That's not what the author is saying at all.
Interactive heatmaps
Show HN: Sysdig introduces deep visibility into containers
The mind is extremely limited in this context.
> Not in portable computers. I can get a TB, but that's it. I have build artifacts that clock in at about 300 - 500 MB and I'd version control them if possible. I can't, because that would fill my disk within a couple of month, so I have to push them to a server and somehow link them.

git-annex is a pretty good solution for this: https://git-annex.branchable.com/

> That's a strawman. The article does not argue that there's no use-case that's solved by git or and DVCS. It's just that not every use-case is solved by git. I'd even go out and argue that most use-cases are solved just as good by a solid centralized system with less complexity involved.

I'm not convinced that it is a strawman– I'm not an uber-developer, but I've had to do it reasonably often. A common case is that the originator loses interest, and you still need to do maintenance on it. I'd rather my go-to choice of a version control system support that notion rather than learn a different tool to deal with this case.

> I see a developer wedge his git repo with a pull + rebase about once a month. And then somebody needs to walk over and explain. DVCS fundamentally introduce complexity that is not always needed. And I doubt that the fundamental complexity can be abstracted away.

Sure, there is an additional level of abstraction, but to argue that it's insurmountable seems rather pessimistic. Most technologies that we take for granted now required multiple decades to get to a consumer-friendly state. This is perhaps a philosophical difference that only time will answer.
Python 3 support – Stream Framework
> details of precisely what happened doesn't necessarily offer a great deal of value.

Maybe the do, maybe they don't. I'd rather find the plane and figure this out than assume.
Developer here. Love to discuss performance and mobile. Building a network library from the ground up for mobile.
What's the with hamburger menu icon and a hidden sidebar navigation? It doesn't make any sense on a 1600px wide display.
This article's case against libertarianism is rather flimsy. But I loved this bit:

"In America, libertarian ideas are attractive to mostly young, white men with high ideals and no life experience that live off of the previous generation’s investments and sacrifice. I know this because as a young, white idiot, I subscribed to this system of discredited ideas: Selfishness is good, government is bad. Take what you want, when you want and however you can. Poor people deserve what they get, and the smartest, hardworking people always win."
People get pretty religious about what should (or not) be checked in to version control.
This is a nice analysis, but the data in the article actually disproves it, at least to the degree show in the last plot (quite reliably in my opinion). The distribution of the waiting time is exponential, is a Poisson process, which means that buses do not influence each other.
There have been significant benefits to having a driver / runtime layer between the application and the GPU. It has enabled a competitive ecosystem of GPU vendors and I don't think we would have seen as rapid a pace of innovation and performance improvements if we had had a de facto low level hardware interface proprietary to a particular vendor.

This is not to criticize Vulkan, the trend to lower level APIs like Vulkan, DirectX 12 and Metal is a good one but I don't think the goal should be to eliminate the driver entirely or get rid of any hardware abstraction layer on non console platforms.
Yup, I like really thinly sliced meat, but I don't want to be a jerk, so if after asking once for thinner I see you've done nothing I'll just ask for half as much and come back later. I might also say something prissy like "that'll have to do" or "I guess", so we both know I know but I'm not gonna call you out on it.
Show HN: Meerkat (App) – live streaming at a fingerclick
There's not much hard information on how Apple deals with graphics drivers, but from what I gather they use a unified in-house OpenGL frontend for the hardware-independent layer, then defer to a modified version of the vendors driver for the low-level stuff.

Their frontend only implements up to GL 4.1, so even if the vendors were to release drivers independently there would be no way for an app to access the newer functionality through the OS X frameworks.
I think I made too many assumption, so the point I wanted to make got lost.

Basically, Campus wants to build what normally is the end result of gentrification, I'm not critical of that at all, I just wanted to point out that there has to be more to a city than the availability of jobs - there have been previous modelled cities specifically for that purpose (e.g. Eisenhüttenstadt) which turned out rather boring.

As for Berlin, it's isolated position during the cold war/much abandoned property after reunification led to rents being quite low, which attracted creative types - who probably couldn't afford to live at Campus. The vast availability unclaimed spaces after the wall came down enabled them to try all different kind of things, there was a niche for everyone. To pull that of you need a certain density - Leipzig just barely does that, but many other East German cities are rotting away and experiencing an exodus because there is not the critical mass of people. But I also think the Hobrecht-Plan plays into it by providing dense and flexible city spaces - areas where those structures are preserved are the most popular today.

To get back to the original point, the target audience of Campus will rather move to a place they find desirable and find/create jobs there than to move to a place that has no other appeal than a job.
The Bill Splitting App we've all been waiting for
I can speak of the one I'm developing.

We're using the Pebble to track seizures through the accelerometer (neutun.com).

With these new bands, and the amazing battery life, we could have multiple device and signal support, allowing us to branch out to other types of seizures and conditions.
...That guy is just an asshole. Not funny at all. He should just have declined instead of screwing around and wasting everybody's time.
the translation is a pretty common expression in the US also, with the same reference to dogs.
Looks nicely done. Congrats.
The oldest open PR on GitHub (using search filters)
See: inotify in Linux
This is pretty close to how their deduplication used to work, and isn't too different than how rsync works.

Of course, this gave rise to the ability to transfer files (even non-public files) quickly between Dropbox accounts provided knowledge of the hashes of its chunks, and Dropbox has since changed their deduplication. See https://github.com/driverdan/dropship
Is there some reason we can't just do away with both and consider spaces in languages?
Because it auto filters out companies, recruiters, and HR staff who like fluff and politics, and retains the ones who are more direct and in-your-face. So if you're a person who is very good in a rigid social structure and placating folk's egos and whatnot, using buzzwords signals you're more than willing to buy into company hype and that therefore makes you more employable. To many larger / older corporations who have plenty of momentum and make money just fine, it's more important for new hires maintain (and strengthen) company structure than for new hires to get a lot done.

On the other hand, if you're a just-ship-it no-nonsense individual who likes to focus more on doing things than maintaining relationships, than by all means build that weird personal site that's nothing like a normal resume and that showcases all your relevant skills instead of using buzzwords. Companies with large and rigid internal social structures will probably avoid you, while volatile newer companies will seek you out.
London buses are cashless. Either you use an Oyster or contactless payment card, or buy a ticket or pass in advance.
Hi HN!

Founder here. We just announced Paperspace today and I'd be happy to answer any questions (technical or otherwise).
unfortunately, ethnicity can often be deduced from the name..
I can't label a "killer app", but smart watches have opportunities a smartphone doesn't. The most obvious is the opportunity for biometrics, as they rest on your skin.
So the earth has not cleared its orbital neighborhood, and is a dwarf planet.
https://github.com/search?utf8=%E2%9C%93&q=type%3Apr+state%3...

The actual search I did.
Samsung hit its mark with its Galaxy S6 announcement at the World Mobile Congress in Barcelona this week.The S6 looks like an iPhone 6 alternative that all but the most ardent Apple fanboy would have to consider when it's time for the next upgrade.
Actually he does point folks towards the work being done with Mercurial to embrace the centralized + offline commits model. Facebook's apparently been building some good stuff around that.
Previous discussion: https://news.ycombinator.com/item?id=9126977
Another solution would be to have the lead bus skip pickup at a stop (or two).

You'd need clear and solid signage to assuage people waiting though. Something like "Behind schedule, dropoff only. Next bus arrives in 2 minutes".
Why would anybody writing a new VCS use Github to host it? Wouldn't it make more sense to use the new VCS itself. You know, eat your own dogfood?
Understanding Variance, Co-Variance, and Correlation
Likewise, acknowledge that many other people have use cases where git works very well for them. That might have more to do with its popularity than a mad love for DVCS.
Where are you running it? AWS?
Read their TOS and compare it to Google Drive's TOS.

The insane rights the Google TOS grants to Google are why it costs ~ 1/2 as much.

It is also an indicator that Dropbox is less shady. They don't grant themselves rights to do anything with your data outside of the normal things you need them to do to offer the dropbox service for your use.

Unlike Google, which could for instance, use your personal photos of your kid eating ice cream to try to sell you ice cream via road side LED billboards.
I've noticed that in the "two come along at once" scenario, the second bus often leapfrogs the first, skipping a stop while the first bus picks up passengers. I've no intuitive idea whether this would smooth out the flow more than waiting behind the first bus though.
"The Dropbox application uses a filesystem monitor to detect when changes are made by monitoring filesystem write events. This is, by necessity, a system-wide process. So DLP alerting that Dropbox is “acccessing” a new file shouldn’t be surprising."

I think this SHOULD be surprising to any competent software engineers. That isn't how the file system watcher works.
Ah, I _knew_ I saw this exact site posted just a few days ago, but searching HN showed nothing recent. The fact that it was flag-killed explains why it didn't show up in the search.
> Sure, go, do. Just don't pretend that there are no teams and no other people that have different use cases.

Sure, there are. I've worked on them. I've had networking not work, servers fail, diffs take forever because of an overloaded server. Honestly, at this point, I can't conceive of working in a centralized VCS anymore, so unless you make a salient point about what can be done with one that can't be done with a DVCS it's all opinion vs opinion.
> With git, you don't have to worry about it.

Wait until you see a badly managed git server that serves a central repository. You'll quickly change your mind if pushes start failing randomly.
Interesting read!

My wife practices ayurveda so we eat a lot of Indian food.

In terms of the flavor profiles they mention in the article, ayurveda has a concept of the 6 tastes: sweet, sour, salty, pungent, astringent and bitter. A well-balanced meal should include all the tastes.

I am not sure how much ayurveda has influenced "Indian" style cooking, but I assume quite a bit. Maybe someone else can weigh in on it.

And yes it does require quite a number of ingredients.

Example, the breakfast I just made included:

Poha (flattened rice), mushrooms, coconut flakes, onions, green beans, almonds, potatoes, apples, cilantro, mustard seeds, hing, turmeric powder, cumin powder, salt, lime, chilis, coconut oil

Took about 20 mins to prepare.
This is amazing news! Really glad render textures are now available.
This is amazing! I have been waiting a long time for something like this.

I can't even begin to imagine the uses that this will have.