Ask HN: Any guidelines on what's cool or not cool to "Show HN"? - <AUTHOR> <comment><AUTHOR> Hi. I'm unsure about submitting my latest project to HN (old school idea in print format - not software or directly related to software). What's the etiquette here, please?

<comment><USER2> Here are the guidelines for Show HN posts: [https://news.ycombinator.com/showhn.html](https://news.ycombinator.com/showhn.html)

<comment><AUTHOR> Thank you - exactly what I was looking for.</comment></comment></comment>


UK Trade Leaks - <AUTHOR> https://graphika.com/reports/UK-trade-leaks/ <comment><USER2> Related: [https://www.reddit.com/r/redditsecurity/comments/e74nml/susp...](https://www.reddit.com/r/redditsecurity/comments/e74nml/suspected_campaign_from_russia_on_reddit/)

> _Earlier this year Facebook discovered a Russian campaign on its platform, > which was further analyzed by the Atlantic Council and dubbed "Secondary > Infektion." Suspect accounts on Reddit were recently reported to us, along > with indicators from law enforcement, and we were able to confirm that they > did indeed show a pattern of coordination. We were then able to use these > accounts to identify additional suspect accounts that were part of the > campaign on Reddit. This group provides us with important attribution for > the recent posting of the leaked UK documents, as well as insights into how > adversaries are adapting their tactics._

> _In late October, an account u /gregoratior posted the leaked documents and > later reposted by an additional account u/ostermaxnn. Additionally, we were > able to find a pocket of accounts participating in vote manipulation on the > original post. All of these accounts have the same shared pattern as the > original Secondary Infektion group detected, causing us to believe that this > was indeed tied to the original group._

</comment><comment><USER3> I'd be cautious about dubbing the Russians 'friends', but 'enemy of my enemy' is worryingly relevant. Why do we have to rely on hostile superpowers to learn what our own governments are doing? Secrecy doesn't give the UK any more leverage in the trade talks - the documents aren't kept secret from the US, but from UK citizens!

</comment><comment><USER4> Anyone have a link to the leaked documents?

<comment><USER5> Here's the Reddit post that links to them

[https://www.reddit.com/r/worldpolitics/comments/dkzlfc/offic...](https://www.reddit.com/r/worldpolitics/comments/dkzlfc/officialsensitive_great_britain_is_practically/)

</comment></comment><comment><USER6> The colonizers now begging to become a small colony.

This is one for the history books.

<comment><USER7> Could you please stop posting unsubstantive and/or flamebait comments to HN? We're trying for a bit better than internet default here.

[https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html)</comment></comment>


You See Sneakers, These Guys See Hundreds of Millions in Resale Profit (2014) - <AUTHOR> https://fivethirtyeight.com/features/you-see-sneakers-these-guys-see-hundreds-of-millions-in-resale-profit/ <comment><USER2> I used to work as a developer on a large sneaker site based in the UK (Crooked Tongues). Before then I had just thought of sneakers as something you wear. One of the guys I worked with was heavily into it and since we would get a (heavy) discount he'd suggest pairs to me I should buy purely as an investment. I think the best return I had was nearly quadrupling my money on a pair of Air Jordan 5s.

One of the last projects I worked on at the agency was a book of rare and collectables [1] - I think at one point we had the equivalent of half a million dollars sat behind my desk (the large yellow box in the middle is the Nike "Air Mag" Marty Mc Fly sneaker they mention in the article) [2]. After all this I understood a hell of a lot more that there's money in anything when enough people want it. Sounds obvious, but I didn't fully appreciate it until then. That and the power of marketing to create value out of thin air.

[1] [http://www.thamesandhudsonusa.com/books/sneakers-the- complet...](http://www.thamesandhudsonusa.com/books/sneakers-the-complete- limited-editions-guide-hardcover)

[2] [https://i.imgur.com/bO6nYts.png](https://i.imgur.com/bO6nYts.png)

<comment><USER3> > a large sneaker site based in the UK

You don't call them sneakers in the UK though do you? I thought you called them 'trainers'.

<comment><USER2> Within the office and industry, it was "sneakers" everywhere. [1]. All the guys in the office and anyone seriously collecting or lurking on the forums pretty much always said "sneakers". Anyone who _wasn 't_ into the scene though would say trainers.

I'm from Northern Ireland, so until I moved to the "mainland" I actually referred to them as "guddies". [2]

[1] [https://web.archive.org/web/20131031030318/http://www.crooke...](https://web.archive.org/web/20131031030318/http://www.crookedtongues.com:80/)

[2] [https://www.inyourpocket.com/belfast/How-till-spake-Norn- Iro...](https://www.inyourpocket.com/belfast/How-till-spake-Norn-Iron-A-guide- to-local-phrases_70619f?&page=1)

<comment><USER4> What about "creps"?

</comment></comment></comment></comment><comment><USER5> There are days, when I just dont understand.

I understand Nike's position and the resellers and the entrepreuners - they're all making good money off all this.

But, for the non-investers, those at the end of the chain, I can't even begin to imagine why someone would pay over 5000, or 1000$ or even over 60$ for a pair of shoes. Perhaps, i could understand if it was the top 1% of the income ladder. But, we're talking about middle class buyers right? The very same ones who struggle to pay rent and food, the 65% of the population we keep hearing about who has less than 400$ in savings? Is a pair of shoes more valuable than having a home to live in? I'm confused.

<comment><USER6> I think Wizards of the Coast for example don't quite understand the value of having such markets.

When products of your brand reach this kind of status, you shouldn't be greedy about it... just play ball.

They only have positive gains imo...

</comment></comment><comment><USER7> Are sneakers significantly different from beanie babies or Magic the Gathering cards?

<comment><USER8> Are Beanie Babies similar to Magic the Gathering cards?

Fashion sneakers, Beanie Babies, and MtG cards all have had prices inflated above the price for comparable goods (regular sneakers, teddy bears, and regular playing cards), you can say that. Fashion sneakers and MtG cards have had longer runs in popularity than Beanie Babies had and sneakers have more intrinsic value to people than either MtG cards or Beanie Babies do, but they're all different.

You can say that they are all fads, but owning shares of a company, learning a particular programming language, or picking a university to apply to are all subject to waves of popularity that can obscure their value for people as well.

The question seems disingenuous.

<comment><USER7> > _The question seems disingenuous._

I know. And I even thought about that before I commented, but I don't know how else to ask without three paragraphs of what would basically amount to "I'm not racist, but" clarifications.

It really does seem like a weird bubble, though. Sneakers do have intrinsic value - you can always walk in your collection, which is more than you can say for Beanie Babies or MtG cards - but it's still just a handful of companies producing something whose value stems from arbitrary production restrictions.

Why sneakers? Why not hats or socks?

But I guess it's just arbitrary, like wine, or collectible angel dolls, or that weird fancy cut glass stuff I see in malls whose name escapes me, or comics.

<comment><USER9> I think there is a whole scene of street fashion which is basically this, but applied to hats, hoodies, and other garments.

Folks like their beautiful (to them) objects and they like to share that with their friends.

I don't think there's any deep answer to the question of why sneakers. The high value may stem to some extent from limited production but it also arises because there's a willing market.

<comment><USER10> > I think there is a whole scene of street fashion which is basically this, > but applied to hats, hoodies, and other garments.

Indeed. /r/streetwear is a fun subreddit for pics. The extremes of that side of fashion (the tech wear stuff, goth ninja, etc) can get really expensive, really quickly.

</comment></comment></comment></comment></comment><comment><USER11> I use to run a super popular sneaker encyclopedia and collected shoes. Mostly lost interest in shoes and then the site slipped from popularity, but it was an interesting time. I had every Nike Dunk colorway name and Air Jordan memorised hah.

I still appreciate nice shoes just as people like art. Some of the sneaker designers like Tinker are truly artists.

</comment><comment><USER12> FWIW this article is 3 years old and much has changed in the shoe game.

<comment><USER13> would you care to elaborate?

<comment><USER14> A number of new players in consignment like GOAT, Stadium Goods for instance.

[https://www.goat.com](https://www.goat.com) [https://www.stadiumgoods.com](https://www.stadiumgoods.com)

</comment></comment></comment><comment><USER15> There is even a Numb3rs episode [http://www.imdb.com/title/tt1256331/](http://www.imdb.com/title/tt1256331/)

</comment><comment><USER16> Sounds like an altcoin

<comment><USER17> Yes, but one people actually can use.

<comment><USER18> A utility token?

</comment></comment></comment><comment><USER19> You See Sneakers, I See Tulips.

<comment><USER20> I think there is a difference here. With Tulips, all the buyers were people intending to sell at a higher price. Initially, yes people bought them for the product itself. But it came to point where all the buyers were just interested in reselling them. They were buying for price appreciation and not the product itself.

With sneakers it's different because the prices paid are by people interested in the product itself. In that sense this is more like comic books or baseball cards. And these things can keep their high prices indefinitely.</comment></comment>


The absurdity of LinkedIn - <AUTHOR> http://blog.42floors.com/absurdity-linkedin/

<comment><USER2> Blank page for me. 4 upvotes?

<comment><USER3> Me too. At first I thought it was some existential post about the absurdity of LinkedIn.

</comment></comment><comment><USER4> Here's a cached version:

[https://webcache.googleusercontent.com/search?q=cache:0gc- hc...](https://webcache.googleusercontent.com/search?q=cache:0gc- hcY8EFcJ:blog.42floors.com/absurdity-linkedin/)

<comment><USER5> Thank you. It wouldn't be too hard to just display this Vincent correctly, consistently.

</comment></comment><comment><USER6> Yes, I've noticed this as well. It's the same ridiculously simple workaround that you use on paywall sites if you've used up your 'free' views.

Is there even any point to linkedin these days?</comment>


Facebook Passes EBay in Value, Becoming No. 3 U.S. Web Company - <AUTHOR> http://www.businessweek.com/news/2010-11-15/facebook-passes-ebay-in-value-becoming-no-3-u-s-web-company.html <comment><USER2> You cannot meaningfully compare valuations of a public and non-public company.

eBay has to disclose honestly (under threat of tough securities laws) all its financial information and major decisions to analysts who look for weaknesses and holes. Anyone can dump all their ebay shares instantly if the company starts to stink too much.

Facebook shares are not subject to any outside scrutiny and those that do hold them are in a privileged club. If you are in that club, you will talk up your investment because your payday is coming soon (IPO). Even if the company stinks, you need to keep up the appearance that it smells like roses until you get your payday. Once Facebook opens up to the public market analysts then we can see how much it is worth, until then its all rubbish.

</comment><comment><USER3> Sorry but this is funny.

<comment><USER4> What part?

<comment><USER3> Why would they compare a proven company to a company that hasn't broke a profit yet?

<comment><USER5> Most reports have Facebook turning a profit in 2009, though since they aren't a public company it's hard to verify any of the financials.

<comment><USER3> If they did, I would expect a IPO around now then.

<comment><USER6> why?</comment></comment></comment></comment></comment></comment>


Ask HN: How to bill for an API? - <AUTHOR>

I almost done coding an API that target mainly developers (Take arbitrary S3 files and stream it immediately as zip file.), I wonder what will be the best way to bill the customers. I think I want to provide a free access until a certain volume. I am thinking of 3 main paths:
A: Monthly subscriptions, a credit allowance that refresh every month.
B: Package of credits, you buy a bunch of credits then you can use the API
C: Amazon style billing, you use the API then you are billed according to your actual consumption.
Any advices/experiences? <comment><USER2> How about Mashape [[https://www.mashape.com/](https://www.mashape.com/)] for easy start ?

You can test waters with consumption model and start in no time.

</comment><comment><USER3> If you're targeting developers using S3, then they'd be most comfortable with Amazon style billing I would thing. It's probably best to align with that thinking.

</comment><comment><USER4> I'd go with a mix of A and B. Package of credits that expire after some period of time.

C is more risky than all other options.

</comment><comment><USER5> With Amazon-style billing, you would not necessarily have to offer a free tier. That would be my recommendation.</comment>


Ask HN: What is your full stack? - <AUTHOR> What technologies do you use for your full-stack? <comment><USER2> AWS for everything: EC2 with VPC's, S3/CF, Load balancer, OpsWork, running on Ubuntu 14.04.

Then Ansible, Git, Nginx, Varnish, Redis, Angular and Bootstrap. And CloudFlare for DNS/CDN/optimization/DDoS protection.

</comment><comment><USER3> On the backend: Linux | Node.js | Bogart | Postgres/MySQL/Couch | Redis/Riak | Ansible

Frontend: Various JS libs | LESS | Bootstrap | Bower | Gulp

</comment><comment><USER4> Everything on Amazon automated with chef and OpsWork

Nginx, Elasticsearch, Unicorn, Ruby on Rails, Javascript, Redis, Postgres and HTML/CSS.

</comment><comment><USER5> Softlayer, Nginx, Elasticsearch, Django, Javascript/Jquery, Redis, Postgres and HTML/CSS.

</comment><comment><USER6> Google App Engine, Google Cloud SQL, Python, Django, Angular, Polymer, Twitter Bootstrap

</comment><comment><USER7> Heroku | Node | Hapi | Postgres/Redis/Neo4j | React.js | Bootstrap

<comment><USER8> Any particular micro-ORMs (or full blown ones) that you recommend for using with Node/Hapi and Postgres?

</comment></comment><comment><USER9> Java,Jersey,Tomcat,Titan,Cassandra,Backbone @ Digital Ocean

</comment><comment><USER10> Ubuntu Server, Web.py, SQLite/Postgres, JQUERY, Nginx

</comment><comment><USER11> AWS, Mongo, PHP, Fat-Free, jQuery, Bootstrap

</comment><comment><USER12> Digital Ocean, sometimes Linode

Linux kernel

Ubuntu for Servers

Probably quite a bit of glibc

Postgres

Redis

Ansible

Nginx

Sidekiq

Puma

Ruby

Rails

ERb

SCSS

JavaScript

React.js

Web browsers

CSS

HTML

<comment><USER13> Can you explain to the uninitiated, what does Redis do for you in this stack? I read the whole chapter on it in "Seven Databases" but it just didn't click for me what Redis is for. Pardon my ignorance.

<comment><USER14> redis is an in-memory(with persistence) data-structures server,

do you need a set,increment,get+put,cache(like memcache),hyperloglog,list,hashes,bitarray,sorted_list + custom_lua_functions that you want to access from multiple web-servers ?

<comment><USER13> I guess I don't, or if I do, I don't know it yet.

</comment></comment></comment></comment><comment><USER15> Meteor

<comment><USER16> The fact that the answer is only one word is exactly why I love Meteor for MVPs and prototypes

<comment><USER17> I've recently been playing around with Dart, and it's a one word answer by itself.

Also Dart has ruined JavaScript for me. I'm not sure if I can go back.</comment></comment></comment>


Personal responsibility in customer service - <AUTHOR>

Ask HN: I spent 1.5 hours on the phone with Dell today trying to get a downgrade from windows 8 to windows 7 for 4 comouters we bought for our call center today because windows 8 sucks. but that is not the problem. I talked to 4 different people in customer service and tech support all on one long phone call and they presented me with policy based responses that when i asked them if they would think them reasonable I got a unanimous answer that they would not but that was the policy. does this bother anyone else? how can it be done better? what about on a large scale? <comment><USER2> The better answer is to either make policies that are actually reasonable to more people or to invest in more training for the representatives having to pass on the information so that everyone involved understands. Unfortunately, that is not likely to happen. Most times, low-level employees do not understand why a policy is the policy: Even if they do, they aren't likely to be allowed to pass this information on to the customer. More training is not likely because most of the call centers, at least the ones I've worked at/know of have very high turnover rates (in the US). More training would mean more investment in employees that may not last more than 2-6 months for various reasons.

Policies that actually make sense rarely happen for larger companies, it seems.</comment>


Google Wing drones approved for US home deliveries - <AUTHOR> https://www.bbc.com/news/technology-48029396 <comment><USER2> I give them two weeks before someone intercepts one. Do they have a _non- implied_ bounty program for the project?</comment>


Effecftive Poster Design for Science Communication [pdf] - <AUTHOR> http://mkweb.bcgsc.ca/poster.design/poster.guidelines.pdf <comment><USER2> Some good, down-to-earth graphic design tips.</comment>


The Technology Behind Convore - <AUTHOR> http://www.eflorenzano.com/blog/post/technology-behind-convore/

<comment><USER2> _Finally, Python may not be the best language for this real-time endpoint. Eventlet is a fantastic Python library and it allowed us to build something extremely fast that has scaled to several thousand concurrent connections without breaking a sweat on launch day, but it has its limits. There is a large body of work out there on handling a large number of open connections, using Java's NIO framework, Erlang's mochiweb, or node.js._

I wrote justin.tv's chat backend, in Python, using the Twisted network libraries. It has scaled to peaks of more than half a million concurrent chat connections, on 8 fairly modest commodity servers. Python is more than capable here, with the right networking approach. Feel free to ask me anything about it.

<comment><USER3> I'd like to second this. Although Twisted's documentation and 5-year-old bugs will have you cursing the libraries name at times it really does perform well once you figure it all out.

We're using Python + Twisted for our XMPP servers at HipChat (<http://www.hipchat.com>) and neither have let us down. Hopefully we can reach 500k+ connections on such a small number of servers as well.

One specific note about Twisted/Python vs node.js: The combination of Python's yield and Twisted's defer.inlineCallbacks generator makes it really easy to write and maintain nonblocking code. In node I find it far too easy to get lost in a sea of callback functions. Here's what you get to do in Twisted: [http://enthusiasm.cozy.org/archives/2009/03/python- twisteds-...](http://enthusiasm.cozy.org/archives/2009/03/python-twisteds- inlinecallbacks)

<comment><USER4> With Node.js, you can use defers (promises), as well. As long as you feel that promises isn't too much mental overhead (obviously you don't), I would recommend using promises for any sizable Node.js application.

<https://github.com/kriskowal/q>

</comment></comment></comment><comment><USER5> Congrats on the launch! I've actually found myself using Convore more often than I thought I would. Particularly because I'm often in places that block irc.

Have you looked at distributed counting in Cassandra for your counting needs yet[0][1]? Great info on its development and use at Twitter. It seems like you too have lots of interesting things to count. Your initial choice of Postgres for everything was a bit interesting. Your problem seems like a perfect fit for a hybrid solution (which you are already implementing by way of redis) that I think more and more companies will come to embrace by hook or by crook.

Continued success!

[0]General nosql at Twitter and a fair bit on Cassandra: [http://www.infoq.com/presentations/NoSQL-at-Twitter-by- Ryan-...](http://www.infoq.com/presentations/NoSQL-at-Twitter-by-Ryan-King)

[1]Specifics on Rainbird, the counting system at twitter built on Cassandra: [http://www.slideshare.net/kevinweil/rainbird-realtime- analyt...](http://www.slideshare.net/kevinweil/rainbird-realtime-analytics-at- twitter-strata-2011)

[cross post from the blog]

<comment><USER6> Yeah, I've been following that work for quite a while, it's really impressive! I'm a big fan of Cassandra in general (in fact, I wrote an example application to help teach beginners about it: <https://github.com/ericflo/twissandra>).

The decision to go with PostgreSQL over Cassandra (or another distributed system like Riak or HBase) was simply because it gave us the most flexibility to change our product quickly while we operate at low scale. And if I'm honest with myself, we're operating at very low scale right now.

In the future as we scale up, Cassandra's distributed counters will be one of the first places we look.

<comment><USER7> Are you willing to say how many simultaneous users you are handling at this point? (I obviously totally understand if you aren't.)

<comment><USER6> Unfortunately I can't give out any exact numbers :(

<comment><USER7> I realize you may also not want to answer this, and that's also alright, but I figure I may as well ask, as I really am curious (and maybe someone else will answer from the perspective of their company): why not? Whenever anyone has asked me for a stat on Cydia, whether it be active devices over some time range, daily revenue, costs related to <insert-subproject-here>, or what have you, I tend to break out a quick SQL query and provide an exact answer (assuming the question is of something I an measure: not all are); is this stupid of me? I've noticed a ton of companies refuse to disclose numbers, and I've always assumed that the result will be that anyone listening will just assume "ok, so almost none then" unless you give them a good answer and back up how you calculated it, but does this actually "hurt the cause"? (I do not have the benefits of the years if startup experience that you have access to by being a part of Y Combinator, so I try to get advice whenever I can ;P.)

<comment><USER8> The top 20 public groups topped out at about 250 users last night, add on a bit for the other public groups and a little for private groups. Maybe 400 concurrent users max so far?

Just my guess, but I'd be surprised if it's orders of magnitude different.

</comment></comment></comment></comment></comment></comment><comment><USER9> Sort of a random query, but why are you using Celery with Redis? Last time I looked into it, the documentation basically said "you can, but you should really use AMQP".

<comment><USER6> Because we already had redis installed, and I like less moving parts rather than more. So far, it's worked out just fine.

<comment><USER10> Also, from 2.2 on Redis support is complete. It's not as reliable as AMQP (no message acknowledgements, and you can lose minutes of messages when not using append_only mode)

</comment></comment></comment><comment><USER11> Kind of surprising to not see node+socket.io in there, but it is nice to see some python projects (Celery/Eventlet) doing the same job. I'd be curious to see if they end up swapping that out if/when scaling becomes an issue.

<comment><USER12> Swapping to node.js doesn't solve any of their scalability problems. The problems they have to solve with scaling their current system will be identical to how they will have to scale stream servers written in node.

<comment><USER13> I only skimmed the article, but my understanding was that they're using long polling to connect the clients to the message queue. In that case, using node.js _and_ socket.io (as swanson suggested) could considerably reduce the number of concurrent connections since clients with WebSocket or Flash support wouldn't need to hold connections open waiting on publish events.

That approach isn't unique to node.js, of course, but the combination of node.js and socket.io _would_ be a valid way to improve scalability [0, Fig. 3] of most any app relying on long polling.

[0] <http://websocket.org/quantum.html>

</comment></comment></comment><comment><USER14> Thanks for the article Eric. I greatly appreciate your transparency and willingness to share. It is a great contribution to the community.

</comment><comment><USER15> So it's IRC on the web reinvented again? What's the advantage, why not just use an IRC client?

<comment><USER16> You can close your browser, go home, re-open your browser, and you've lost nothing. You can see that as a permanent "screen" irc.

Also, the fact that it's web based give them the opportunity to build the protocol as they want. For instance, they have the possibility to prettify snippet of codes, play video, show images (as they are already doing), etc.

It is also a bit different as each "channel" are "group" in convore where you can have multiple topics. So basically, for the django community, it's like if you had #django-performance, #django-host, #django-debug, and on and on. So, the second you join a group, you can start new topics.

So, basically, I know it is possible with IRC if you stretch it.. for instance, building your own irc client or hacking with mIRCscripts (Been there done that). Also, you of course can change the IRC protocol and host it yourself.. But then, convore just come with all that for free with a beautiful web-based interface.

Note also that I feel it's more serious as you need to login with your facebook/twitter which means less trolls.

The founder of convore really liked IRC.. so if you want, it is IRC+Twitter 2.0.

<comment><USER17> You don't need to log in with your Facebook/Twitter account; I was able to sign up just fine with an email address. It's just one of the authentication options they provide. (It also lets them import your contacts from those services, which is handy for people who are big into Facebook or Twitter.)

</comment></comment></comment><comment><USER18> Grah... I was very interested at first, because out of the corner of my eye, I thought this said "... Behind Corvette". Curse you, disappointment.</comment>


Excel pivot table data leak leads to £120k fine for London council - <AUTHOR> https://www.tripwire.com/state-of-security/featured/excel-pivot-table-data-leak-leads-120000-fine-london-council/ <comment><USER2> It still bothers me that we as an industry completely botched the "productivity application" formats as thoroughly as we did.

For just about every other domain, we have a clear distinction between formats meant for editing vs publishing — You publish mp3 or aac, not Logic Pro files. You publish jpegs or pngs, rather than Photoshop files, etc.

Yet, for some reason, MS Office formats meant for editing became ubiquitous for distribution too. This incident is just the latest bit of nonsense that comes from this mistake.

<comment><USER3> Is that a problem with the tech industry, or with businesses in general?

I would think that the only acceptable format for releasing information like this would be static - in this case, a PDF.

<comment><USER4> Even with PDF, there is a risk -- there have been some cases e.g. with the US government where sensitive info was thought to be redacted.

However, the people doing the "redaction" just added a black rectangle layer on top of the text, which was easily revertible.

E.g. [https://washingtontechnology.com/articles/2009/12/09/tsa- bre...](https://washingtontechnology.com/articles/2009/12/09/tsa-breach-pdf- redaction-refresher.aspx)

</comment></comment></comment><comment><USER5> First, it seems silly to fine a government since that's really just tax payer money. Secondly, are owners of properties not public record already in the UK? They are in the US (even if that company is just a shell that's hard to figure out the real owner of)

<comment><USER6> As well as other things people have mentioned, it's more complicated than that. The Land Registry doesn't cover the whole UK - just England and Wales - and only about 85% of property. It registers mostly transfers by sale, or long-term leases, but not eg inheritance. So family farms, large estates, etc are not in there. In Scotland the information is held by the Registers of Scotland, and in Northern Ireland it's Land and Property Services - neither of whom provide free access.

<comment><USER3> Interesting.

I metal detect as a hobby, and often need to determine ownership for places I want to ask permission to search.

In the US, everywhere I've ever checked has ownership information publicly available. Most counties and municipalities have a GIS site of some kind that lets you look up ownership on an interactive map; the most difficult case would be that you'd have to call the assessor's office and ask someone to look up the owner of a given parcel. I may be mistaken, but I believe even in that case they're required to make those data available in electronic form upon request.

As for privacy, the most common thing I've seen is that people will create an LLC or a trust that owns the property. In those cases the entity's name is tied to the record and the contact information is that of its registered agent. That's almost always a local attorney. Every time I've called them and asked I've been given the name and contact information of the person behind the entity, but at least in theory the attorney could serve as a proxy. Legal entities can make things complicated, but I don't know of any way to actually completely hide ownership if someone wanted to go through the trouble of tracing the chain of holding entities.

</comment></comment></comment><comment><USER7> A simple procedure to prevent the leakage of the data is to copy values only when you copy/paste anything in Excel. It's a special option you have to select, but when done properly it erases all of the hidden information that's used to calculate a value and replaces it with the displayed value in the cell.

[https://support.office.com/en-us/article/paste-values-not- fo...](https://support.office.com/en-us/article/paste-values-not- formulas-12687b4d-c79f-4137-b0cc-947c229c55b9)

<comment><USER8> > It's a special option you have to select, but when done properly […]

So not really reliable, I wouldn't trust ordinary office users to use it correctly. Exporting to CSV is safer, because you can open the file in a plain-text editor and see what you're actually going to share. CSV won't hide anything from you, unlike the proprietary Excel file format (I know it's XML- in-ZIP but who can be bothered inspecting the contents).

<comment><USER9> Why is it not reliable? The much famed "ordinary" user is often portrayed a bumbling incompetent user. For any heavy excel user, or rather any excel user thats ever used formulas, this is a common UI operation. Your CSV suggestion is good, but it can't carry the formatting and other extra info which is the reason people use excel to begin with!</comment></comment></comment>


How not to implement a 25MB background movie: faradayfuture.com - <AUTHOR> http://www.faradayfuture.com/ <comment><AUTHOR> Open your network inspector and notice how the 25MB .webm file downloads again after each iteration of the movie.

</comment><comment><USER2> OUCH! If they make it to the front page of HN (or anything else big, really) they're going to blow through bandwidth like crazy! A potentially expensive mistake!</comment>


Ask HN: Why is it so difficult to achieve a fitness habit? - <AUTHOR>

<comment><USER2> Chances are you're showing up to the gym without a clear intention of why you're there and what you're doing there. Do you have a plan to follow? Do you have goals you are working towards and a way to measure you're progress?

Don't fly blind. Make a plan, execute on that plan. Make short term goals you can achieve to get you towards a bigger achievement. Work towards something, make a plan that can get you there. It's not a habit its a journey to an achievement of some kind (running a mile under 6 minutes, benching 225, completing a race, losing a few inches on your gut).

</comment><comment><USER3> Habits are easier to form if the person somehow derives a sense of enjoyment from it, or if there isnt too large of an obstacle, or if it's subconscious. Even if you live next to a gym, going there means making the effort to change to gym clothes, break from your usual routine and take time off - time that you couldve used watching tv for example.

What would help is if the act of going to gym does not void you of your usual joys. For example, if you were to watch a tv show, watch it at the gym while you're working out. Like hanging out with friends? Bring one to the gym with you.

<comment><USER4> Good point. I found that changing what I was doing was a massive help. For instance, I don't enjoy running, so I started reading up on Stronglifts / Starting Strength and got into weight training. I log what I do on Fitocracy to track personal bests as I tend to get addicted to quantified life type stuff.

Replace weights with sports (especially group sports where you are accountable to others), cycling, running or whatever you enjoy.

</comment></comment><comment><USER5> For me the hardest part was just getting started. I had been putting off going to the gym for years. Every few years I'd sign up for a membership and then never end up going. I'd be too busy, too tired, you name it. Then 6 months ago I just walked into the gym and hired a personal trainer on the spot. I've been working out 3-4 times a week since. Now it feels weird if I miss a day. So far I've lost 35 pounds, 6 inches from my waist, and my bodyfat % is down from 26% to 21%. The hardest part was just walking into the gym that first day.

<comment><USER6> It sounds like part of it was also hiring a trainer. Many people seem to experience something like that: without a social component, like someone to encourage you, you don't bother. But a trainer, or a partner, or an opponent can easily keep you on track--even if they don't really "do" anything other than make you show up.

</comment></comment><comment><USER7> First, sorry for my bad english.

It's because working out is againts the human race, we will "crafted" in a time that se haven't nothing, in a misery age back then and we were built to livre, which means that tour body will work to keep you alive. You will never see a Lion for example running to loose his belly fat, animals just spend energy for 3 things: food, sex and running from a predator, basicaly.

So, to achieve this habit, you have to have a "military" willing, because your nature will always fight against you.

</comment><comment><USER8> Ever been like, "Damn, I'm going through this bag of chips really quickly", made a mental effort to eat a little slower, and still continue to eat at the same rate? If so, it's probably because you held the bag of chips in your hands.

Now, if you were sitting at a table or something, and perhaps put the bag of chips under the table, you'd have to make a little more effort to get the chips (reach under the table, extend arms and so on) and you'd most likely eat a little slower.

My theory is that habit-space is hyperbolic (close is close, far is v. far, etc.). So perhaps if you had a fitness habit that was easy to keep up wherever you spend most of your time, it would become easier.

Am I out of mistaken in presuming that you don't have a way to achieve your habit from within your household? Maybe that could be a way to start.

</comment><comment><AUTHOR> When we are deciding whether or not to exercise, we use a present-biased mentality. We don't see big short-term benefits (although there are), and definitely don't see short-term costs of not going. (It's easier to stay in the couch than going to the gym).

</comment><comment><USER9> My co-worker started taking me after work 3-4 days a week and after a couple months it became a habit. Feels weird when I don't go now. Before, I had no clue about a routine, but thanks to him I developed a good one.

Mon and Th I will do Chest and Shoulders Tue and Fri I will do Back and Legs

If I only go M-W-F, I'll hit everything each day (called Starting Strength) with Bench (flat and incline), Squats, and Deadlifts.. among a few other things depending on what parts I want to work on.

r/gainit on reddit was also a helpful place for me, as I am one of those people with a super fast metabolism and have a hard time gaining weight.

</comment><comment><USER10> It's difficult _for you_.

This means there are specific, identifiable factors in your life that make it harder for you to exercise. Maybe you live far from a gym, or you don't have time during the week, or you have back pain that prevents you from exercising.

My point is that you're not going to do any progress until you make concrete changes based on your own specific situation.

So I guess my answer would be that it's hard because most people think it's a matter of motivation and self-control, whereas small, practical changes to your environment (for example, buying a bike) are actually much more effective.

<comment><USER11> Can you give some more examples on productive environmental changes? In my personal experience, it really seems like what makes me stop working out after a few days or a month is simply lack of motivation.

<comment><USER6> Move so that your home and office are 20 minutes apart by walking. You will walk to and from work, guaranteed, because it's the most efficient of time in that scenario. Maybe even 30 minutes, but beyond that most people will fall back to driving or taking mass transit.

When you plan vacations, decide to only go to places where you will be active. Walk, swim, hike, surf, bike, whatever. Don't go on a cruise. Don't go somewhere just because it has good food and shopping. Go somewhere where exercise will be inevitable, part of the experience. If you do this four weeks a year, it makes a difference.

</comment></comment></comment><comment><USER12> Exercising is difficult because you're doing it for fitness, not enjoying the act of exercising itself.

Play a sport instead, that way you get exercise and the time passes much more quickly because it's fun.

</comment><comment><USER13> A fitness habit is unnatural. We are not designed to be motivated by exercise, but by goals, fun, necessity. So, to keep up a "workout" routine is something that takes serious discipline. It is the hard way.

When I was younger and had more time, I had a body you could put a muscle chart on (I did grappling sports). Yet, I'm terrible about actually going to a gym, and I eat whatever I want. I simply did what I had fun doing, was motivated by competing with others, and that was also intellectually interesting to me.

</comment><comment><USER14> For me its difficult to quit. If I don't do any moderate/intense physical activity for a day, I become unbelievably restless and all I can think about is going on that next run or hitting the gym.

Basically its just another habit you need to do consistently if you want to be able to stick with it long term.

</comment><comment><USER15> Because lacking such a habit is not a problem. People tend to focus on and solve problem because they are comfortable when spotting the cause of problem and then solving it.

</comment><comment><USER16> Because you lack discipline. You never learned to accept pain and effort now for a valuable gain in the future. You're chasing pleasure and trying to avoid pain. And you're simply living in the present, satisfying every random whim and craving.

Every good thing in your life comes at a price. You may not see it yet, but there are no freebies. If you want a fitness habit, you need to pay for it with time and effort. There are no magic solutions. You simply need to force yourself to suffer. Embrace the pain. If you're not feeling like you're dying, you're doing it wrong.

Go do 10 push-ups right now. Get up from your chair and do them. There is nothing really stopping you. Only the excuses you make for yourself.

<comment><USER17> Discipline is only a small part of the answer and IMO the wrong place to start with, especially for people who have never had good fitness habits. You can only begrudgingly force yourself to do difficult tasks for so long. That's why fitness gyms see big influxes during the new year and then traffic dies off a month later. It's not necessarily that people aren't disciplined, its that they're bored.

What's more important is finding activities that are naturally motivating and fun to do. These habits are far easier to build when they are more rewarding. Rock climbing, squash, swimming, martial arts. If its fun, then you WANT to go more often. You actually think about improving your skills. And then you naturally build discipline because the cost of missing out becomes more expensive to you.

<comment><USER16> I know you love talking out of your ass. But if you ever decide to push yourself for more than two months, you will understand that a fitness habit never feels forced. You will chase it in an active manner because you will love it.

Ask any fit or sporty individual you know. They don't do it because they have to. They do it because they want to.

The boredom you mentioned is natural. Everybody gets it at the exact same strength and at the exact same moments. The difference is that some people are disciplined enough to continue and burn through it. And only then you get to see the fun and enjoyment part.

Discipline is king. With anything else you're just lying to yourself. Nobody will create the perfect environment for you to be comfortable with physical effort. You're the one that has to do it.

<comment><USER17> Thanks for this reply, now I know not to waste any more time with you. You clearly know everything. Best of luck.

<comment><USER16> I'm afraid that you misunderstood. I was the one wasting time with you. You're clearly having a problem with maintaining a fitness habit. Don't blame me if don't like the reality. I'm just giving you the cold hard truth everybody else tries to sugarcoat.

<comment><USER17> Heh, you don't know me, and I don't have a fitness problem. I spent two months this year fighting and training muay thai in Bangkok. That includes waking up at 5:30am and running 6k before padwork/bagwork/sparring, and then training again in the afternoon. That's the lazy fighters regimen, pro fighters are required to run twice that. At home I train 4-5 days a week. My vacation is literally going to Thailand for fight camps.

You know how I know you're full of it? Its the bullshitter's law: the amount of knowledge a person has is inversely related to how well they claim to know a topic.

Since you already know everything about motivation and achievement, there's nothing for me to discuss here with you. Everyone is weak and stupid except for you.

<comment><USER16> And in all of that training discipline is a small part? Who is the bullshitter now?

<comment><USER17> _Discipline is only a small part of the answer and IMO the wrong place to start with, especially for people who have never had good fitness habits._

 _What 's more important is finding activities that are naturally motivating and fun to do. These habits are far easier to build when they are more rewarding._

 _And then you naturally build discipline because the cost of missing out becomes more expensive to you._</comment></comment></comment></comment></comment></comment></comment></comment>


Airports Are Losing Money as Ride-Hailing Services Grow - <AUTHOR> https://www.nytimes.com/2017/12/11/business/airports-ride-hailing-services.html?smid=fb-nytimes&smtyp=cur&_r=0 <comment><USER2> Funny how that works... "The International Air Transport Association (IATA) announced that it expects the global airline industry to make a net profit in 2017 of $29.8 billion" and yet somehow airports are losing money on how people get to/from the airport so we can give our little bit to this nearly 30 billion in profit (expected to be higher next year). Makes sense... let's find a way to keep all that money in the airlines and nickel and dime everyone else until people stop flying entirely and we can then bail out both the airlines and the airports. We live in amazing times.

<comment><USER3> Does this industry include the airport operators?

</comment></comment><comment><USER4> Can't come too soon. I have been fleeced by airports, especially in Australia, for years.

<comment><USER5> They're still going to get the money. Landing fees will go up.

<comment><USER6> That's cool with me. I'd rather have fees more closely associated with the thing I'm buying. I don't like being charged extra for taxis because landing fees are lower.</comment></comment></comment>


Show HN: Fast, human-friendly passphrase generator written in Rust - <AUTHOR> https://crates.io/crates/pgen <comment><AUTHOR> Main features:

* Fast

* Makes use of EFF wordlists which were designed to contain human-friendly words as opposed to the arcane and obscure and strange words found in e.g. /usr/share/dict/words.

* Single binary with wordlists compiled into it.

* It can tell you the password entropy if you'd like it to.

* You can use physical dice if you like. By default it will use the OS provided CSPRNG.

Installation:

1) Install Rust - [https://rustup.rs/](https://rustup.rs/)

2) cargo install pgen

<comment><USER2> Was a bit annoying to install with the rust toolchain from the Ubuntu/Elementary Freya repositories because the outdated compiler would fail on the bitflags package. With the toolchain installed through rustup it works well. Now I only need to become accustomed to these kinds of passwords.</comment></comment>


11" MacBook Air Disassembled - <AUTHOR> http://www.ifixit.com/Teardown/MacBook-Air-11-Inch-Model-A1370-Teardown/3745/1 <comment><USER2> Neat! It's obvious from the outside that they've put a helluva lot of thought into how to package this, but it's even more obvious from the inside.

I wonder what the next-generation Mac Mini will look like. Take out the batteries and the remaining components would be truly tiny. What I'd kinda like is to unplug my computer from its desktop keyboard and screen at the end of the day, take it home in my pocket, and plug it into my keyboard and screen at home.

<comment><USER3> This reminds me of an anecdote where Jobs was arguing with an engineer about the look of the original Mac's internals:

"I want it to be as beautiful as possible, even if it's inside the box. A great carpenter isn't going to use lousy wood for the back of a cabinet, even though nobody's going to see it."

<comment><USER4> The complete story for that anecdote can be found on folklore.org: [http://www.folklore.org/StoryView.py?story=PC_Board_Esthetic...](http://www.folklore.org/StoryView.py?story=PC_Board_Esthetics.txt)

</comment></comment></comment><comment><USER5> I was kind of hoping that the times when the power and sleep buttons are put directly on the keyboard are long gone for good, so now I was very, very surprised to see the power button right above the delete key, looking just like the eject.

<comment><USER6> The power button really is a hassle if you use the 12 South BookArc stand. You have to lift the laptop out of the stand, open it up, hit the power button, close the laptop before it fully starts...

Some kind of external power button would be really nice.

</comment></comment><comment><USER7> It's really a shame apple put in a 5-point Security Torx for the bottom casing. Just got a new toolkit a few weeks ago... but it doesn't have the security torx tip.

But overall really nice form factor. I love how neat and well fit everything looks.

<comment><USER8> Why? There's no user replaceable/upgradable parts. If you're going to the trouble of buying a part and replacing it touurself surely you can get the right screwdriver.

<comment><USER9> It's an anti-geek arms race that I have never liked. I worked at an authorized Nintendo shop almost 20 years ago. "Regular" Torx screwdrivers, the kind you can pick up for nothing today, were hard to come by back then. They cost something like $50 direct from Nintendo. Every new model required some special tool for no reason except to make it harder for Joe Blow to take things apart. I understand the many reasons for it, but it's still anti-geek, physical DRM.

<comment><USER2> Anti-geek? What could be more geeky than owning a five-point security torx screwdriver?

<comment><USER9> ...not having to buy them? Being a geek is not about _owning toys_. It's about being open, curious, and observant.

There are hundreds of these types of screwheads now. The regular Torx used to be a security screwhead. Now that everyone has a Torx they whip out a 5-pointed Torx, call that one the "security" version and start the stupid cycle over again. This excludes people from hacking and learning, eg children.

<comment><USER10> The regular torx was never intended as a security screw head. It was just designed for powered assembly in an environment where screw driver bits are consumables.

Matching the 3 screwdrivers in the kitchen's "everything drawer" was not part of the design specification.

<comment><USER11> Thank you jws for the sanity here. It's not "anti-geek", it's engineering and manufacturing (and, I may add, keeping 5-year old Timmy from opening his dad's new MacBook Air and frying the innards with the screwdriver they keep in the kitchen drawer).

Not to be too negative, but if you can't find a way to quickly get inside, maybe you shouldn't be there in the first place. A real tinkerer/geek knows how to make their own tools in no time.

<comment><USER9> I think you are confusing two kinds of exclusivity: that from real technical challenge which teaches you something (eg how to correctly disassemble a machine) and that from random speedbumps (eg an exotic screwhead).

Have you tried to make a Torx head? I suppose you could get the shape with some kind of mouldable plastic or epoxy, but that's probably not strong enough in practice. They are designed to be set with much higher torque than Philips, hence the name.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER12> If I was the engineering putting the MBA together, I would think that in the back of my mind as I decided that baked on SSDs were the way to go that this wouldn't catch on with everyone (manufacturers).

I mean, there's no way you deny that incredible space savings you get. But you're also locking in the main storage, something that people have been able to change in their laptops for (seeming) forever, something that I probably just did in my own MBP (cause those base Toshiba units are kinda funky) a few months ago.

<comment><USER13> I'm fairly certain that the SSD is basically a Mini PCI-E card. The overall dimensions are uncommon, but I believe there's no common standard for the size of Mini-PCIe SSDs in the first place.

In theory, the drive could be upgraded. Securing it to the chassis is a challenge left to the reader.

<comment><USER14> Might be interesting for this to turn into a new storage standard. It doesn't seem like they had to go through any particular shenanigans to cram the flash chips onto that form-factor. Then the non-upgradeable MBA main storage would become upgradeable.

</comment></comment></comment><comment><USER15> Any idea at all why Apple calls them "Flash drives" rather than SSD?

</comment><comment><USER16> Apple hater or Apple lover, I don't think anyone can disagree about their laptops and their Mac Mini being masterpieces of engineering. Really amazing compactness.

<comment><USER17> You can love Apple products and hate Apple policies.

<comment><USER18> Actually, you can't. People who "hate apple's policies" are people who hate apple for ideological reasons and are attempting to rationalize it.

If you understand apple's policies you'll realize that all of them are designed to produce the best user experience for consumers.

I've never seen apple do something malicious, like I have Dell and Microsoft, nor betray their customers, like I have seen Microsoft, Google and Facebook do.

These "policies" that people hate generally amount to nothing more than failing to march according to some rigid stallmanesque ideology.

<comment><USER19> "WozRocks", your bias is showing.

<comment><USER17> I thought it was a troll account created only 12 hours ago, to give "Apple fans" a bad name.

To be fair to "WozRocks" though, I, _personally_ , am kind of an Apple hater ;-) so his/her comments might not be without a context.

</comment></comment></comment></comment></comment><comment><USER20> The SSD looks like Asus eee pc 1000's mini PCI-e one.

They're available in 7in (for asus and toshibas) and 5in (for dell mini) and now what? 10in?</comment>


Racket v5.3 - <AUTHOR> http://blog.racket-lang.org/2012/08/racket-v53.html

<comment><USER2> I've started writing Clojure code for production at Chartboost, and I'm absolutely loving the language. However, its basis on the JVM is a major downer. I decided to go with it over other lisps due to the practicality of the massive standard library, plus some neat language features.

How does Racket compare?

\- Specifically, is the standard library + the stuff available through the PlaneT package manager enough to get by with? How's the community? IRC channel, documentations, etc.?

\- How does the language compare when it comes to Clojure's neat features? Atoms, keywords, native syntax for vectors or hashes…

Edit: I also forgot to ask: how's performance? It's a compiled language, right?

<comment><USER3> What about the JVM is such a downer?

<comment><USER4> Nothing really. I think it is just a preference thing. If I don't have to install Java then that is one less thing to install I guess.

<comment><USER5> Even though OSX Mountain Lion makes it simple to install Java (click yes on first use), it's one less OS that comes with it preinstalled.

Also, the slower startup time of the JVM affects clojure apps and makes simple command line scripts in clojure less attractive

<comment><USER6> This is not exactly true. The JVM startup time is not what makes Clojure slow to load; it's the startup of Clojure itself.

        ~$ time clj test.clj
        Hello world!

        real    0m1.337s
        user    0m1.309s
        sys     0m0.172s

        ~$ time java Test
        Hello world!
        real    0m0.142s
        user    0m0.116s
        sys     0m0.030s

You may want to look at the -XX:+TieredCompilation -Xbootclasspath flags. They reduced the clojure startup significantly for me.

</comment></comment></comment></comment></comment><comment><USER7> I really love Racket/Lisp. But I wish I had more of a use for it. Probably the most beautiful language I used during my undergraduate days.

<comment><USER8> Have you looked at Clojure?

</comment></comment><comment><USER9> JOOC, what big companies are using racket-lang? This is the first time I heard of it.

<comment><USER10> Not a big company, but Northeastern University's CS department uses it in their intro course to computer programming. The staff there is all about PL research and I believe they use it pretty extensively in that regard.

I spent a semester there and the staff are hardcore into it. I learnt a lot from Olin Shivers (<http://www.ccs.neu.edu/home/shivers/>) and he used Racket extensively.

<comment><USER11> That's largely due to the presence of Matthias Felleisen, who (AFAIK) spearheaded Racket.

</comment></comment></comment><comment><USER12> I'm confused: Is racket a fully-compliant scheme? If not, which scheme should I use? And, what is racket?

I could not quite find that information on the Wikipedia/website.

<comment><USER13> Scheme is so old that there is not one language but rather a family of dialects that are considered Schemes. The Scheme community has several times made a standard on the parts of the language(s) that various implementors can agree on. The standard is small though. All the major Scheme implementations come with _many_ language constructs and libraries not covered by the standard.

Racket started as a Scheme but changed name to Racket a few years ago to signal that the racket language is _much_ more than plain standard Scheme. One remarkable thing about Racket is the that the module system allows implementing other languages as modules with relative ease. Included in the Racket distribution is therefore an implementation of R6RS (and R5RS) the most recent standard (R7RS is coming soon).

Also included is implementation is a typed version of Racket, an implementation of a logic programming language and, yes your eyes are not deceiving you, Algol 60.

</comment></comment><comment><USER14> The futures visualizer sounds awesome! Do other languages have parallel- debugging tools like that?

<comment><USER15> GHC has ThreadScope.

</comment></comment><comment><USER16> How do you integrate Racket with emacs? Is it similar to Clojure?

<comment><USER13> Most(?) people use DrRacket.

For the Emacs fans: <http://docs.racket-lang.org/guide/Emacs.html?q=emacs>

I used to use Emacs, but switched to DrRacket several years ago. It is easy to underestimate DrRacket. Tools like Check Syntax which allows scope respecting renaming of identifiers are one of the benefits of using DrRacket.

I also enjoy being see graphical results directly in the REPL. For example plots. <http://docs.racket-lang.org/plot/intro.html?q=plot>

<comment><USER17> I always have mitigated feelings about these tools. On the one hand, those features are really appealing. On the other hand, leaving my regular editor prevents me from using its (sometimes heavily configured) text- and code- editing capabilities. Plus I can access all the code I've written for other projects from Emacs, regardless of the language.

<comment><USER16> That's my concern as well and the reason I went through a bit off an ordeal getting Clojure into emacs, as opposed to falling back on a Clojure editor.

</comment></comment></comment></comment><comment><USER4> I can see "submodules" being a handy feature.

</comment><comment><USER18> Good to see the json library is in there now. That being missing was a minor annoyance earlier.

</comment><comment><USER19> Does racket have real threading? Will it use multiple cores?

<comment><USER20> There are two features that take advantage of hardware parallelism: futures & places, which work at different granularities. You can find the guide entry on them here: [http://docs.racket- lang.org/guide/performance.html#(part._ef...](http://docs.racket- lang.org/guide/performance.html#\(part._effective-futures\))

There are also green threads for concurrency: <http://docs.racket- lang.org/reference/concurrency.html>

</comment></comment><comment><USER21> Does it work on ARM?

<comment><USER20> Yes, it does. The JIT compiler doesn't work on ARM, but otherwise it's fine. This blog post explains how one person got Racket on an Android phone w/ARM: <http://www.wedesoft.de/racket-on-android.html>

<comment><USER21> Thank you!</comment></comment></comment>


Notes on Haskell: What's Wrong with the For Loop - <AUTHOR> http://notes-on-haskell.blogspot.com/2007/02/whats-wrong-with-for-loop.html <comment><USER2> That word, closure. You keep using it, but I do not think it means what you think it means.

A closure is an runtime structure used to implement static scope of locally- defined first-class functions. Closures allow locally-defined functions to "remember" variable bindings in their enclosing scope.

Beside that you can implement this feature WITHOUT closures (e.g. source rewriting), none of the examples presented actually require static scope!!

It boggles my mind that programmers can have such strong opinions on language features _without actually knowing what they're called_.

<comment><USER3> Yes, this has been one of my pet peeves for a while too. Everybody: a closure, as the parent says, is an _implementation_ construct. It is not something you can find in your source code. The syntactic construct -- the thing you write in your code -- is called a _lambda expression_. Not a "lambda function", and not a "closure"!

Lambda expressions are to closures as `new' expressions are to instances: a lambda expression evaluates to a closure, and a `new' expression evaluates to an instance. Since any expression can be evaluated multiple times, in general the relationship is one-to-many: a lambda expression can be evaluated N times to produce N closures, just as a `new' expression can be evaluated N times to produce N instances.

(Instances and closures are closely related: an instance is a piece of state with several operations that can be invoked on it, while a closure is a piece of state with one operation that can be invoked on it.)

<comment><USER4> Your insistence on a specific meaning for the words ignores how words are actually used: overloaded based on context. If I call these things 'closures', you understand I'm talking about the 'lambda expressions' and not the implementation construct.

      class Foo
      end

There, a class object. Oh sorry, an object is an implementation construct; what you have there is an _expression_ that produces an object... <\- that is unhelpful semantic squabbling. It's highly inconvenient to use such indirect language. This is the view of a class object that I have most of the time and a 'lambda expression' is the view I have of a closure most of the time.

If I see the Eiffel tower, I say: look, the Eiffel tower. Not: look, an image of the Eiffel tower, with some details obscured by clouds and smoke and without considering any of the construction details and history that are an essential part of the Eiffel tower. For all practical purposes of communication, it's the Eiffel tower.

<comment><USER5> That's not a fair example. There are languages that have lambda expressions but not the lexical scope that requires closures, whereas there are no languages that have class definition expressions but not classes.

Given there is a meaningful distinction to be made, insistence on accurate terminology becomes a lot more reasonable.

</comment></comment></comment></comment><comment><USER6> "But it does highlight the key failing of for loops: they conflate three separate kinds of operations -- filtering, reduction and transformation."

There's actually four kinds of operations: filtering, reduction, transformation, and _good Lord man what the hell are you doing with the loop index? did it just go negative? It did! Why? And it still works‽_ , which is actually quite hard to simulate with functional programming. Fortunately.

<comment><USER7> I can top that mine went up to 17 and then jumped to 200 for no obvious reason(some sort of memory bug where memory in a different part of the program overlapped with the loop variable).

<comment><USER8> Did i still work? A bug isn't a fundamental kind of loop operation.

</comment></comment></comment><comment><USER9> Colour me stupid, but in the article it gives this code as having some horrible hard to find bug:

      String s = "";
      for (int i = 0; i < args.length; i++) {
        s += array[i];
      }

Now, as soon as I looked at that I immediately thought "well, they're not putting anything in between the params when they concatenate them", e.g. I would expect to see:

        s += array[i] + "\t";

(or a comma or newline instead of a tab)

My next thought was "what happens if there are no args?" E.g. args.length returns 0, and they try to access the first element in the list (due to heritage from c pointers we start counting at 0) which is the 'zeroth' one, which doesn't exist... it should throw an array out of bounds exception.

\-----

The reason I ask, is that based on the comments, the people reading the blog think the problem is in the operator overloading. Are they expecting this iteration through the args list to _sum_ the args, and then assign the sum to the string?

If so, then I don't see how the bug could remain undetected:

 _"it could take weeks to get a bug report, and weeks more to get a fix ready"_

Whereas in the unlikey event that I'm right, I _still_ don't see how it would be hard to fix?

What am I missing?

<comment><USER10> There is no check that array[i] actually exists. If array[] has 2 items but args[] has 5, you will overflow the array.

<comment><USER11> I've been trying to figure out what he was getting at, as well. The original article, by Elliotte, seems to have updated the code snippet to:

' String s = ""; for (int i = 0; i < args.length; i++) { s += args[i]; } '

I deduce from this that the error was in the copy/paste. The line that was supposed to be changed to 's+= args[i]' was accidentally left as 's+= array[i]'

As such, its a simple failure to replace all instances of 'array' in the pasted code, rather than anything to do with 'operator overloading', or even to do with checking if 'array[i]' was out of bounds - there is simply no variable 'array' supposed to be in that context.

I wish Turoff had been less obtuse about it, especially as the original Elliotte post seems to have been silently updated.

<comment><USER9> In the interest of being fair, it is (by internet standards) quite an old blog post, which was probably a bit of a toss off effort in the first place.

If 'the bug' is just a copy/paste problem of a variable that doesn't exist in that scope, then compilation will fail at that point, so again, I don't see how that could be the one that Turoff said would survive for weeks in the wild.

<comment><USER12> But, if the bug is a copy/paste of a variable that _does_ exist in that scope, he's exactly correct that it could survive for weeks and be very difficult to actually track down (because of the sort of blindness to details that happens when you read "idioms" like this by visual pattern matching rather than actually reading the code).

</comment></comment></comment></comment></comment><comment><USER13> I feel this post is more an argument for first class functions than closures. It is true that much of the usefulness of first class functions is lost without closures, so having useful first class function almost necessitates (though does not guarantee) closures. But in none of the examples is the key attribute of closing over free variables emphasized, which is the powerful and _dangerous_ part.

A simple example showing the usefulness of inner functions might have been more pertinent to the term closure IMO.

<comment><USER9> It is a pretty convincing argument for adding transformation (do this thing to every item in the list), and filtering (give me a sub list of everything that meets this condition)

It is a much weaker argument for adding summation, since you'd have to get into the down and dirty details of whatever operation your summation represents, e.g. is it associative? You can see how it get ugly fast in the discussion about the differences between foldl and foldr (presumably fold-left and fold-right respectively)

\----

Now, Java had filtering in one of the libraries, I remember using filtering with folder operations many moons ago, so it's not like you can't roll your own. Likewise with a "do this thing to everything in the list" operation.

For loops have a use, specifically when you want to do things in a particular order. Reading lines from a file for instance you might want the lines you're putting into your data structure to be in the same order as they are in the file (as a specific counter-example, I once wrote a 'unique line' app where it didn't care about the ordering, of course if I'd been on unix there would have been some command line tool to do it for me, but it was fun and fast to write and hand tuning the grep would have been a PITA)

BUT, there are a lot of tiems I've used for loops where the sequential nature of the loop is irrelevant, and here I could see someone making an argument that the for loop is clumsy and random (from the article they object because it uses too many tokens! The horror! :D )

I could also see someone making the counter-argument that what that actually means is that the for loop is _powerful_ (never mind that we have no objective standard for what that means. Perhaps 'powerful' in the sense of 'easy to blow your own foot off with' would fit here :D )

</comment></comment><comment><USER14> OK,

Let's imagine there are two kinds of language/program bugs.

1) A given expression does not mean what you think it means. 2) A given series of expression all mean what you think they mean but the combination of them isn't what you think it should be.

I would submit that bug type #2 is the main sort of bug that's going to bite you and bug type #1 is relatively benign (if occasionally infuriating). Especially, even in language with obscure syntax and hairy ambiguity, you can pepper your code with asserts and track down your problem reasonably quickly.

I have been assure that functional programming does help with bug #2. I would love some detailed blog post akin to this which says how.

This article seems to deal entirely with bug type #1. Show me how functional programming deals with bug type #2.

</comment><comment><USER15> Heh, all of these points could easily be applied to Python as well. All the concepts are there in addition to the for loop. It's nice how you can do a lot of _functional_ programming in Python with these simple tools (map, filter and reduce (Haskell's foldl).

I wonder why there aren't more people advocating the use of these functions in Python programs instead of for loops.

<comment><USER13> Java's younger cousin C# also has this with Select, Where and Aggregate. But sometimes the foreach and even the for loop actually makes more sense, in particular when dealing with very imperative algorithms or are not acting over a (full) sequence at all.

I'm usually only reading and not writing python but I think list comprehensions are more idiomatic. Based on some comments I've seen here I also kind of get the impression comprhensions are abused.

<comment><USER16> Well, if you don't want to work with the whole sequence, you can filter it. But yeah, in those cases and some others, the for loop may be more idiomatic and better performing.

<comment><USER13> Yes I'm talking about being able to stop early for one example. Or if the thing you are dealing with is not actually a sequence for another.

<comment><USER17> The former can probably be solved for lots of cases by TakeWhile(), which evaluates before consuming more elements and could be used to replace "abort the loop" patterns.

The latter is a different thing..

1: <http://msdn.microsoft.com/en-us/library/bb534804.aspx>

</comment></comment></comment></comment></comment><comment><USER18> You can execute loop in your head just by reading it line by line. Token by token. With other solutions you need to know other things to determine what goes inside and believe it is actually what you want it to be. Loops ar flat, explicit and versatile. I think that is the reason behind their popularity.

<comment><USER19> If you're familiar with foldr or its ilk you can execute them in your head token by token too, to the same extent you can in a for loop. In the case of a for loop you have to be familiar with the syntax and semantics of "for" in your language so you know that "for(i = 0; i<n; i++)" is different from "for(i = 0; i++; i < n)" and likewise you have to be familiar with the syntax and semantics of any functional construct you use.

<comment><USER18> To understand loop you just need to know in which order to execute its parts. And you see how it reduces, maps an filters your data. You don't need to keep stack in your head. To understand how functional constructs work you have to know a lot more because they are specialised and it's not that easy to track what they exactly do because of recursion. You have to know them and trust them. With loop all internal logic is linear and in plain sight.

<comment><USER19> Its certainly true that to understand a fold at the abstraction level that C uses you have to know more, but that isn't the same as you having to know it in order to program effectively. The point of abstraction is that you don't need to know the fine details of whats happening under the hood. You might talk about how, in a C program you can watch what happens to your loop variable as you execute, but really "variables" are just abstractions over what the machine is really doing. If you were to look at the assembly spit out by your compiler that loop variable might be in a register or on the stack or in some combination thereof, and if your compiler does loop unrolling it might have different values at the same time even in the assembly. And once you get into the reorder buffer or a modern CPU I guarantee you that what actually happens will bear very little resemblance to what you would naively think if you just looked at the C code.

So you can execute a loop C-token by C-token and you can execute a fold Haskel-token by Haskel-token, but both are abstractions high above whats happening at the machine level and I don't see why we should prefer one over the other.

</comment></comment></comment></comment><comment><USER20> The real reason: it's much work to prove loop invariants that use structural induction.</comment>


'What's Twitter?' asks China following Obama revelation - <AUTHOR> http://www.guardian.co.uk/media/pda/2009/nov/23/twitter-china-barack-obama <comment><USER2> It'd be nice if more international users were on Twitter. Twitter's publicness and trending topics really break certain clique's bubbles. All the urban hashtags and tween Twilight talk open me up to new worlds I just don't get on Facebook.

(This is ignoring the consequences of everyone using a preparatory service, of course)

</comment><comment><USER3> I can't immediately find any context for this, did he drop the name twitter unprompted, was it part of a broader discussion or was it a direct question?</comment>


Ask HN: Does equity motivate you? - <AUTHOR> Curious to know if having equity at your job (small or large) motivates you to do your best at work. <comment><USER2> Startup Stock Options – Why A Good Deal Has Gone Bad [https://steveblank.com/2019/04/10/startup-stock-options- why-...](https://steveblank.com/2019/04/10/startup-stock-options-why-a-good- deal-has-gone-bad/)

Lessons Learned

\- Venture Capital structures were set up for a world in which successful companies exited in 6-8 years and didn't raise too much capital

\- Venture capital growth funds are now giving startups the cash they would have received at an IPO

\-- "Growth Capital" moved the need for an IPO out another five years

\-- This allows VCs to capture the increase in market cap in the company

\--It may have removed the incentive for non-founders to want to work in a startup versus a large company

\--As stock options with four-year vesting are no longer a good deal

\- Investors and Founders have changed the model to their advantage, but no one has changed the model for early employees

\--VCs need to consider a new stock incentive model – RSA's for the first key hires and then RSU's – Restricted Stock Units for everyone else

\- Large companies now have an opportunity to attract some of the talent that previously went elsewhere

</comment><comment><USER3> By motivated, do you mean working for less than I was worth, or perhaps a time when I added more value than I was paid for?

When I couldn't accurately value my options in my total comp, I realized that was the point. The only time I have been motivated was when I was on or working with a great team. The very best were indie consultants who were all paid consultant dollars. The next was doing startup consulting to prove a concept.

Equity that isn't measured in a percentage of the company with transparency on prefs is at best, %99.9 of the time just a tax liability. It's negative compensation.

Ask yourself, is what you do so magical that someone would give up partial control of their company for you to perform it? If you are not a cofounder, not an investor, not the key customer rainmaker what do you do? More so, if they don't have the money to pay you, consider the long tail of clowns who do get funding , then why there isn't money or why aren't you worth it.

Most people take options because they are just happy to get the job and it makes spousal conversations easier. This latter reason I suspect is the most valuable one of all.

<comment><USER4> > percentage of the company with transparency on prefs

I had this at 1 of three startups job offers that offered options. Guess what? It was only at that one that equity paid out to anyone.

Having an "equity" package without this is insane. Why would you want to work for someone who trusts their core business to someone they think would fall for junk like that? It's not just "equity has unknown value", it's "equity has unknown value but I'm giving it a wholly fake measure of 100,000 Monopoly dollars because I think you are just that stupid."

I'm not going to join a team that is pulling the moral equivalent of a 419 or Windows Tech Support Telemarketing Scam on day 1 of our relationship.

These companies are actively selecting for morons. Not only are they immoral scum, but they aren't going to be very successful if their engineers are morons.

</comment></comment><comment><USER5> Short answer from someone in the startup space for over 12 years... no.

They are lottery tickets and I treat them as such. I was a c level at my last position and had a percentage ownership... no difference.

I treat salary and bonus as my only comp, equity is just a lottery ticket of x size.

<comment><USER6> This shook me. Obviously, I was on the opposite side of the opinion. I never had the experience working in a funded startup, I prepared my mind to join one (I already chose, a seed funded, likely to join in 2020) after the current company was acquired in January - Now, I'm confused. Of course, I understand the equity as a lottery ticket - I'm confident on the startup I chose will grow big, I'm interested to hear the negative side of your 12 year experience, especially the climax. Honestly, I'm in a opinion of cashing a 300K at the least after Series D or Acquisition, in 3-5 years.

<comment><USER7> > I understand the equity as a lottery ticket - I'm confident on the startup I > chose will grow big...

I know you already got a response, but I wanted to offer my experience.

Your immediate concern shouldn't be whether the company grows or not. Your immediate concern should be what happens to your options when your employment is terminated.

All jobs end in two ways: you are either terminated (fired, laid off, etc) or you terminate yourself.

What you need to understand is what happens.

\- Will you be able to afford exercising your options? Not a huge deal most of the time, especially for engineers. It might cost a few thousand. In extreme cases, you're on the wrong side of the golden handcuffs. Once you exercise, you are chained to that company's future unless a secondary market is available.

\- What's the window for doing so (typical is 90 days!)?

Further questions to ask before spending too much time:

\- What are the founders' beliefs about VC (Growth-only, money-hungry, what)? Every dollar that is invested post-hire potentially means your options are worth less.

\- What are the founders' beliefs about revenue? Do they want to make their product "free"? Do they have a business plan?

\- How open are they about finances? If they aren't, just don't. If they spin some BS about not being able to legally disclose company finances to employees, run.

Having $1MM worth of equity means nothing if you can't exercise them or if the founders' crash the company into a cliff being dumb.

</comment></comment></comment><comment><USER8> Equity is to techies what exposure is for artists: a way to con them into busting their humps for the promise of a big payoff that almost never materializes.

I got burned during the first dotcom boom and learned my lesson. Demand the biggest salary and benefits package I can get, and walk out if they offer equity in lieu of actually paying me.

</comment><comment><USER9> I recently discovered that the stock i was hand-wavingly promised never materialized. 10 months in to this job it's caused a cascade of reflection and 'why bother' moments.

So first, thanks for this question.

At prior jobs, I've hit points of "I dont want to be here, but i'll see it out because of x vesting point." Personal history has shown vesting to be a lottery ticket as has been said elsewhere. Its only paid out once and to the tune of about 4k total.

What i've landed on at this job is that I really dislike many aspects of this job; the domain, the location, the open office plan, and a lot of apples-to- apples comparisons when really theres a basket of varied fruits.

That said.

I get to do work here at my own pace and on my own terms. It's why I took a job at a smaller startup to begin with. Even as I struggle with the finer points (with some other insights in this thread), and moral points aside, I find that a lack of options means I'll at least see the year out here. I gave up a lot to prove myself in a slightly new area of the profession, and that experience is what I'm choosing to use as my "stock" instead.

</comment><comment><USER10> I'm not motivated by equity at all (and particularly not if that equity is in the form of stock options). When I'm working for a company, I'm already completely on-board anyway. If I weren't, I wouldn't be working there.

That's not to say I'd turn it down, I'm only saying that it's gravy, not meat.

</comment><comment><USER11> I always do my best regardless of compensation. Why would I be doing any less? Doing less harms me more than it harms the company I'm in and it makes it harder to get compensated more.

Equity is part of a range of other forms of compensation. It is a lottery ticket, yes, but statistically, lottery tickets have a value. A job that pays $20k with 1% equity in a million dollar company is better than a job that pays $25k, but worse than one that pays $50k (after taxes and all that). Plus there's other little things like potential to learn, comfort level of chairs, fun level of team.

If I get a better offer elsewhere, I will take that instead.

</comment><comment><USER12> No way. I work in a startup (~35 employees) on a small, mission-critical team (~6 members). Even so I consider my contribution to company success or failure to be negligible. It boggles my mind that someone at a giant company like FAANG would allow their options to influence their work habits, as if their role in any way impacts the share price. Perhaps if I was in a top leadership position, but for a line-worker, equity is just an investment that happens to be correlated to the performance of your employer (ie bad, because its not diversified).

<comment><USER11> To be fair, in giant companies, they are no longer lottery tickets, and often quite valuable.

</comment></comment><comment><USER13> Startup equity structures are financial vehicles aimed at transferring the wealth generated from the labor of the employees to the founders and investors.

</comment><comment><USER14> No. It is and should be treated like a lottery ticket.

Don't sacrifice salary for equity.

The real benefit of working in a startup is gaining experience/exposure to more responsibilities than you would in a big company.

</comment><comment><USER15> First time equity holder. I like where I work and what I do, but the equity just gives me FOMO when I think about moving on in the future

<comment><USER16> Missing out what?

</comment></comment><comment><USER17> I pay no attention to equity, since it usually ends up being worthless. Salary is all that matters.

</comment><comment><USER18> No

Its harder to leave a job that pays well, with good benefits and great work / life balance above all</comment>


I watched my patients die of poverty for 40 years. It's time for single-payer - <AUTHOR> https://www.washingtonpost.com/news/posteverything/wp/2017/09/12/i-watched-my-patients-die-of-poverty-for-40-years-its-time-for-single-payer/ <comment><USER2> The biggest problem is not the lack of single payer, it's the lack of price transparency. You have no idea how much any medical service will cost until you get the bill, so everyone is free to price gouge you.

An example of how bad the current system is:

When my wife was pregnant and needed an ultrasound, her regular doctor was busy one month and recommended we go to the doctor upstairs. Our regular doctor charged us $200 for the ultrasound, the one upstairs sent us a bill for $1000!

This 5x price difference was in the exact same building, just a different floor!

Hospitals benefit from keeping the prices obscure, to the detriment of the rest of the country

<comment><USER3> The problem is health care is nothing close to a free market.

In many parts of the country, it is illegal to open up a new hospital without a government license. Existing hospitals often lobby to prevent competing hospitals from opening up.

<comment><USER4> > The problem is health care is nothing close to a free market.

It's not a problem, it's a feature.

In free market health care, those who can't afford care, die.

We as a society have agreed that's not acceptable and hence the regulations, EMTALA being one

<comment><USER5> Grocery shopping and farming are very competitive and mostly free, yet we still have food stamps don't let people starve to death.

Why not have a system closer to food stamps but for healthcare? i.e. the government will cover costs for the poor up to some amount.

<comment><USER4> > Why not have a system closer to food stamps but for healthcare? i.e. the > government will cover costs for the poor up to some amount.

We have exactly that. It's called Medicare + Medicaid. The govt fixes the price for what doctors/hospitals can charge on these plans and that's why doctors/hospitals absolutely _hate_ Medicare + Medicaid.

For Native Indians, we also have the Indian Health Services.

For veterans, we have the VA.

That said, _you_ nor _I_ would really enjoy being on a Medicare + Medicaid system.

Having the govt. set rates, getting out of the way and leaving who and how that price gets paid provides the ultimate flexibility and value.

<comment><USER5> Food stamps are much simpler than Medicare. It's basically just cash and you pay market rates for whatever you buy.

It seems we are on the same page.

</comment></comment></comment></comment></comment></comment><comment><USER4> I see everyone getting excited about single-payer but it addresses the core issue of access via pricing as a mere sideffect that a single-payer happens to have serious leverage over pricing being, well, single-payer.

The core issue though is price of medical services.

When an ER visit to sew together 5 inches of a cut skin at 10AM can generate a claim for $40000, something is really broken.

The single-payer can outright refuse to pay $40000 for such a thing while you and I would have that debt hound us for the rest of our lives.

One solution that addresses the root issue is to clamp down on what is reasonable to charge to sew together 5 inches of a cut skin at 10AM.

That is called an all-payer rate set system.

It does not matter _who_ pays - what matters is _what_ price something is available at.

Doctor's regular, scheduled visit? $150.

You pay in cash? ? $150.

You pay in chickens with white feathers ? $150.

Your employer provides you with coverage and they cover the first $500 worth of expenses? $150.

Your'e an uber driver and that doctor would appreciate a ride back and forth for the next month? $150.

When the same doctor's visit can range in price from $10 - $1000 depending on what crap your employer signed you up for, we have a terrible access issue.

The U.S. has one of the best health care in the world, but also one of the higest financial distress including outright bankruptcy for medical bills.

Something's going to give soon as the system starts to come under strain due to SARS-COV2 and it's not likely to be pretty.

<comment><USER6> First step was making sure you can actually get quoted a price for that service. I might choose to go across town if it saved me $40K.

[https://www.npr.org/sections/health- shots/2019/06/24/7354323...](https://www.npr.org/sections/health- shots/2019/06/24/735432387/trump-administration-pushes-to-make-health-care- pricing-more-transparent)

<comment><USER4> > actually get quoted a price for that service. I might choose to go across > town if it saved me $40K

I have been working as a software consultant for decades now and always have a menu price ready.

Even with this menu pricing, my customers still need my help in figuring out what they need from the menu.

If my customers already knew what they needed to solve their problems, I have 0 value to add as a consultant - at that point, they just need to either hire staff/developers to execute on their requirements.

If I broke my hip today, how exactly would a menu of hip related items help me compare costs?

How would I even begin to know which items from the menu apply to my situation without having some idea what is involved in fixing a broken hip?

Do I need a MRI? XRay? Both? Which sections of the hip? We even have not started on diagnosis.

Price transparency is only useful when one knows exactly what is needed.

You pretty much have to be a doctor to shop prices unless you're doing an elective surgery where time is on your side and you can do some research as you wait and shop.

I'm not sure anyone's doing price comparison when their wife's on the delivery table and has just had some complications.

</comment></comment></comment><comment><USER7> I find the comments that 'Single Payer' isn't intended to address pricing problems sort of strange.

'Single Payer' means that providers have to negotiate the prices with _one_ payer, the state, instead of separately for each insurance company (or having a go at every uninsured patient, for every procedure).

Of course a seller of high value products will want to negotiate the price individually for every sale; the cost is smaller than consumer surplus would be in such cases, right? That's why we have car salesman.

Without respect to whether it's a good idea, isn't forbidding price discrimination the whole point of single payer, rather than a side effect?

<comment><USER8> And yet, even when the government is the payer, they have shown consistently that they are unwilling to enforce pricing control. For example, even though medicare billing rates for doctors where supposed to go down several times, in each case, threats of strikes by doctors with very public "look how evil the government is" posts by doctors have kept the rates inflated.

Cost control isn't linked to single payer. Nor is efficiency. If you don't believe that, look at Germany. Not single payer, but incredibly efficient, and great at COVID19.

On top of that, there are places where the government enables horrible behaviour and payments. For example, they negotiated a shitty deal on CPAP machines, and now everyone who does CPAP gets medicare rules, which is $300 a month lease for a machine that is sold commercially for $650. When I pushed back on my insurance company they said that this was medicare rules.

Good governance is good governance. We don't have it, and single payer won't fix it any more then Obamacare and health rationing fixed it.

<comment><USER7> I agree that the govt seems to suck at negotiating. What do you think we should do now?

> health rationing

What are you talking about?

</comment></comment></comment><comment><USER9> Setting all economics and politcs aside, the most gut wrenching part of this read for me was the image of a hospital whose patients never get organ transplants, but give organ transplants. That goes beyond one person getting treatment while another is denied. That's the denied person, in death, still giving. I dont know if single payer is the best system, or if a hybrid system or regulated private monopoly or some other weird approach is better. But this system that we have today isn't working.

</comment><comment><USER10> Broke my arm and needed surgery. We know that's pricey.

Before the surgery, I saw an ortho for 5 minutes. In what world are we living in where a 5 minute appointment should cost $475 and that excludes the few hundred billed by the radiologist.

+$475 Office or outpatient visit for a new patient (up to 45 minutes) \- $125.53 Insurance discount = $349.47 Covered amount Plan pays: $329.47 FOR A FIVE MINUTE CONSULT

We need 100x more medical schools in this country. Every single state school should be a medical school.

</comment><comment><USER11> US medical costs will only come down if the the middlemen (Medical Insurance Companies)are prevented from having an influence.

The medical insurance companies have deep pockets and lots of lobbyists.

Never going to happen.

I LOL a lot when I hear that the US can't afford to have single-payer healthcare, when lots of tiny countries _can, and do_ afford it.

</comment><comment><USER5> There are many problems with health care, and single payer is just sweeping them all under the rug.

Single payer won't magically make the number of doctors or hospitals or surgeries increase. It is not a panacea by any stretch, and we shouldn't pretend it is one.

</comment><comment><USER12> It's time for an NHS but since that demands taxation change (probably a hypothecated tax) it won't happen.

</comment><comment><USER13> I think the need for single payer is best stated in terms of _risk_. There are many things that can and should be paid for by the end user, because they are things that you buy when you have money and forego when you don't.

Health care is not one of those things. People get sick and poor _at the same time_. Especially if it's a serious illness. It just makes no sense to sell it that way.</comment>


SSHKeyDistribut0r: A tool to make SSH key distribution easier for sysop teams - <AUTHOR> https://github.com/Fachschaft07/SSHKeyDistribut0r <comment><USER2> Instead of doing something like this, it's often actually simpler and easier to manage if you use the built-in ssh certificate feature. Check out [https://www.digitalocean.com/community/tutorials/how-to- crea...](https://www.digitalocean.com/community/tutorials/how-to-create-an- ssh-ca-to-validate-hosts-and-clients-with-ubuntu) for an example of how to do that.

Now, no one has to remember to push the keys whenever something changes, _and_ you no longer get spurious host key messages.

<comment><AUTHOR> Sounds interesting, I will take a look. Thanks :)

</comment></comment><comment><USER3> If you are managing enough servers to justify automating the deployment SSH keys, you probably also have configuration management.

Why would you use this rather than your existing configuration management system? The latter reuses existing infrastructure and is naturally more concurrent and scalable.

I get this is a push mechanism and configuration management is generally pull- based, alternatively tools like Ansible exist which can perform the same task and then some.

<comment><AUTHOR> Since we are the sysop team of a students council with very fluctuating members, we have to keep our whole infrastructure as simple as possible. That means: Very simple virtual machines with very few software packages on it, very detailed documentation and so on. The problem is that students are joining our team partly with very little knowledge. Configuration management would mean another system to figure out for every member.

<comment><USER4> As opposed to every new member having to figure out this new project?

Documentation is your best bet. It would be better to teach students about things that are currently being used instead of making up your own solutions.

Though, there is a lot to gain from rolling your own solutions, so: ¯\\_(ツ)_/¯</comment></comment></comment>