Ask YC: Would you commute with strangers to save gas/time? - <AUTHOR>

We built ride4all.com to locate people with similar commutes as you. But we don't yet have a strong sense whether there would be a lot of people who would use it. Btw, it's hosted on Google App Engine. <comment><USER2> While I wouldn't use it personally, there's a practice in the Washington DC area (possibly others as well) known as slugging, which is essentially organized hitchhiking. You go to a specific place and wait for someone going your direction who wants to take advantage of the carpool lanes. From what I've heard from people who use it, it works remarkably well. My point is, yes, there is a market of people who will take rides with strangers.

<http://www.slug-lines.com/>

</comment><comment><USER3> Be careful you don't run afoul of taxi laws. Cars are only inefficient means of transport because they're usually 3/4 empty. The taxicab companies would like to keep them that way, and municipalities are depressingly complicit. (Google for "taxi medallion" to see what I mean.) If you start getting successful, expect to hear from their lawyers.

<comment><USER4> It sounds like the same arguments that protect torrent sites will protect this company. They aren't providing taxi service, they are just telling you about other people interested in sharing a ride. No different than any discussion forum or whatever.

</comment></comment><comment><USER5> I do this already in the Bay Area in California. There are several carpool pickup points in the East Bay (Oakland/Berkeley) that drop off in downtown San Francisco. I either pick up people here or hitch a ride every morning. The advantage is that you can use the carpool lane which saves 10-15min during rush-hour and a $4 toll.

<comment><USER6> Do you have to pay when you are hitching?

</comment></comment><comment><USER7> I would have used it. I used to ride with a van pool. Links:

<http://www.vanpool.com/> (sponsored by Enterprise rent-a-car)

<http://www.vanpoolusa.com/> (sponsored by VPSI Inc.)

This was in Southern California, where public transportation has been endangered or extinct for decades. The arrangement sucked, and my current commute sucks enough that I'd carpool again if the meetup time wasn't 5:45 a.m.

Edit: I poked at it a little, and noticed that it doesn't ask for a radius when saving a new commute (no matches). Is the matching algorithm fuzzy enough to figure out when I'm "close enough" to someone else's route? Does it match along the whole route, so I could pick someone up midway?

<comment><AUTHOR> Indeed, no need to specify the radius. It would not consider a match if you have to go too far out of your way to pick up someone else.

</comment></comment><comment><USER8> as much as i like the idea, i'd much rather find someone to ride with on my own, in person, from my own social circle. that removes the reliability and trust issues.

<comment><AUTHOR> We are planning to introduce a "group code" feature, which allows people within your known social circle to use and find rides among each other. Would that work?

We are currently shying away from another facebook app, but maybe that's the way to go for this.

<comment><USER8> for success, you're probably going to need social hooks, and facebook apps is a good way.

the code feature could work to solve the issue, yes. or you could just allow drivers to administer how public their rides are, only allowing people to join if they are directly given the link to their ride or whatever.

</comment></comment></comment><comment><USER9> I take the subway to work, so "Yes."

If you can have a system that's like mass transit, but competitive -- e.g. if there's a policy that could have positive or negative effects, the transit system doesn't have to try it all at once -- that would be a pleasant improvement.

<comment><USER10> We have a bus system that I love, so "Yes".

The company that runs them tries a sort of service like you've described, but I have anecdotal evidence that the trick is no one wants to drive. Part of it is that they will provide a vehicle and so they want a sole person to be responsible for it, which isn't applicable to y'all. The other thing is that a lot of people are like me: traffic makes me an angry person and I'd much rather play around on my laptop or read than drive.

I don't want to sound like a nay-sayer. I definitely think that there's a market for this. However, I'd expect some strong regional trending (which is to say poor adoption in some cities and awesome adoption in others).

</comment></comment><comment><USER11> No. I like having flexible hours.

<comment><AUTHOR> Indeed this would be a challenge. If you have no predictability with time or even dates of travel, then <http://www.ride4all.com> wouldn't be very useful for you.

Also, if you have a short commute, say 5 miles or less, then you probably wouldn't bother.

But if your commute is 10-15+ miles, and as gas price increases (say to $6/gallon), would you reconsider?

I live in SF bay area, and I flinch whenever seeing tons of people in single- occupant cars stuck in traffic, day in and day out.

<comment><USER11> I'm probably not your target demographic:

I'd rather miss rush hour, and I'm currently lucky enough to be in a position where gas prices don't matter much to me (~10mi commute, occasional telecommute, hybrid car, good income, low expenses).

</comment></comment></comment><comment><USER12> Cool idea. A couple of good points made in the comments: 1\. Flexible hours 2\. Privacy/Safety issues

The first point is common to all ride-share including mass-transit. I think you need to consider a mobile strategy that addresses a scenario like "I'm ready to go. Anyone going my way?" or "I'm headed out. Anyone need a ride?"

Privacy/Safety is implicit but important. You partly address that via gender specification but it needs to go further like "I'm a girl is only willing to share with other girls".

Anyway, a nice start. If you're serious then there is much work ahead.

</comment><comment><USER13> It doesn't respond to <http://ride4all.com> (or didn't... now it did... now it's just slow...)

Sadly, being in the US, I would plaster it with some kind of legal disclaimer about not taking responsibility for anything untoward happening. And maybe some plain English safety tips, as security is certainly in many people's minds.

<comment><AUTHOR> Regarding the response time, it's really out of our hands (and in Google AppEngine's hands really). Hopefully that will improve if indeed Google AE had issues at the time you clicked.

Regarding disclaimer, yeah, we thought about that. Indeed need to add that. Thanks David.

<comment><USER13> It responds fine on the www. address - it's the other one that seems slow to load. Weird.

</comment></comment></comment><comment><USER14> No. I suspect that for many people their car is a sanctuary where they can actually get some peace and quiet twice a day, listen to their own music, and generally get some "me" time. That said, there are still lots of people who would, so go for it!

</comment><comment> a-priori I've done it. I don't have a car, and I used to work at a place 40km away (i.e, outside comfortable cycling distance). Hence, I got rides with co- workers I otherwise had no contact with.

</comment><comment><USER15> I would use it. Nice implementation too. Maybe you could let people set start and end points using clicks on the Google map?

</comment><comment><USER16> Very cool idea. I would add an ebay like trust rating to account for punctuality, safe driving, etc.

</comment><comment><USER17> People have been known to do much worse things with strangers to save money for gas ;)

</comment><comment><USER18> No! I want my privacy.

</comment><comment><USER19> There is also facebook and college campus centric <http://zimride.com>

</comment><comment><USER20> i think its a fantastic idea, this saves a lot of time, money and energy ... this idea will be instantly super-hit amongst south asians (india, pakistan, bangladesh, srilanka and may be china as well) - you might be surprised to know that people from these countries are used to share rides with strangers, in fact it is a norm in some parts of these countries... there is absolutely no fear or privacy or any other kind of issue amongst people from these countries - in fact there is something like share-a-taxi program in many part of these countries. Following is what i would suggest:

1.target everyone but make a special effort to focus on south asians.

2\. make your web-tool extremely simple to use. use simple GUI with simple english so that a person who is not that familiar with the language or computer can also use it with ease.

3\. Also after getting initial success try to make features available in multiple language, this will increase your market by senior citizens (again south asians) who dont know english.

4\. Two parties should be able to connect instantly, here u may add some kind of web-to-cell (and cell-to-web) tools. so for example if i'm already out of my home/work but if i can still pick-up someone on the way then i should be able to know that via my cell phone.

5\. You will also come to know what routes are more popular in what part of the city, this should make you able to add few more features that saves user's time in getting a ride right away.

6\. This is most important feature: add a tool where 2 people speaking same language get connected right away - this will create a comfort zone and your service will be hit just by adding this feature .... TRUST ME ON THIS !!!

<comment><USER21> i agree with #6 - this is something like dating a person who speaks your language so that there is this comfort of sharing things while commuting - this also creates instant connection between 2 people, an ice-breaker.

<comment><USER20> absolutely, few features should be just copied from dating websites; like what language you prefer, or whats your regular route and what time of the day - bunch of people going for grocery at the same time and place can get connected to share ride almost on daily basis. there are many software professional from india (on H1B visa) whose wives get bored by staying at home doing nothing, this kind of service will connect wives to do things together.... a social connection in itself (wow!)</comment></comment></comment>


The noncentral fallacy – the worst argument in the world? (2012) - <AUTHOR> http://lesswrong.com/lw/e95/the_noncentral_fallacy_the_worst_argument_in_the/

<comment><USER2> Good article but there's something I want to point out:

> But in this case calling Martin Luther King a criminal is the noncentral. > The archetypal criminal is a mugger or bank robber. He is driven only by > greed, preys on the innocent, and weakens the fabric of society. Since we > don't like these things, calling someone a "criminal" naturally lowers our > opinion of them.

You can make valid arguments that Martin Luther King was bad because he was a criminal without connecting it to emotional reactions we get from criminals.

You can dislike criminals because you think they're nasty people, but you can also dislike them on the principle of them breaking the law, regardless of how nasty or clean they otherwise are. If you say that 'Criminals are bad necessarily because they break laws', and 'Martin Luther King was bad because he was a criminal', then you can connect them to get 'Martin Luther King was bad necessarily because he broke laws'. That can be seen as true without ever bringing in emotional reactions to criminals.

I can safely dismiss that as an imperfect example though, and still a reasonable example. The general thesis of the article makes sense.

You can apply the same reasoning to some of the other examples. In the Evolutionary Psychology part, a lot of the time EP is dismissed as being non- credible, not because it doesn't support one's argument or because people think it's inherently sexist. The author's example misrepresents what a lot of people mean when they disregard EP in an argument: they don't disagree with it because the logical conclusion is sexist, they disagree with it because it's being used in an unscientific and unreliable way. Again though, it could be used the way the author described, so for the sake of example I guess it makes sense.

<comment><AUTHOR> In general, yeah, it's good to apply the principle of charity to any argument. However, it's very hard to do when the argument is expressed using such emotionally loaded words as in the examples given.</comment></comment>


Show HN: Balls – Game I've made while I was learning Swift - <AUTHOR> http://gameofballs.co/

<comment><USER2> Looks great. The name got me thinking about App discovery however.

I search for 'Balls' and got many hits, most irrelevant and uninteresting.

Then I searched for the exact title of your app and got about 13k hits. None of the first 100 which was your app. I downloaded it through iTunes eventually.

That makes me wonder: how do you promote (iOS) app discovery? There are plenty of analytics startups for this, but is anyone trying to improve this process?

edit: Searched around for curated app websites / stores. There are some, but lack in depth and quality. I'm starting my own.

<comment><USER3> Interesting to see so many people having problems finding the app. What's wrong with clicking the 'App Store' button and downloading it from iTunes? You can configure your iPhone to then automatically download it.

Serious question. I'm sure you all have some good reasons to not use iTunes and wanting to download it from your phone. Curious to hear what those reasons are.

<comment><USER4> Why would I want iTunes on my computer? I installed it only after losing and finding my phone to restore the phone; and it is annoying. It always pops up music whenever I plug my phone into charge. It also did some nonsense Outlook integration.

I never buy media through iTunes, I always use Amazon; so iTunes provides little, if any value on an ongoing basis.

<comment><USER3> Ah yes, if you don't use iTunes for anything else it wouldn't make sense installing it just for this.

</comment></comment></comment></comment><comment><AUTHOR> I wrote a story about the process: [https://medium.com/@ivanpashenko/how-one- designer-was-learni...](https://medium.com/@ivanpashenko/how-one-designer-was- learning-swift-cc2d99658895)

<comment><USER5> This is totally unrelated but we have such similar handwriting that I could convince myself I wrote your sketches at the beginning.

Love the game! Great job.

<comment><AUTHOR> Haha, nice! :) Thanks!

</comment></comment></comment><comment><USER6> Stuff like this blows my mind - such simplicity and yet great elegance and feel. Although, as a programmer you are always surrounded by stuff which you feel is amazing and far beyond your capability but you still have an impression that you can still do the same, given you put an equivalent amount of work and passion.

However, designing something like this, seems like an innate ability of very creative people. I find myself far away, imagining something alike and putting it together.

</comment><comment><USER7> Technical question here, since it's not open source.

Do you use only UIKit components (like UIView with UIKitDynamics) or are you using SpriteKit/Coco2D?

I'm impressed with the quality of your app/game, I'll be even more impressed if you don't use any game related libraries.

<comment><AUTHOR> I used SpriteKit.

</comment></comment><comment><USER8> Well executed, original, emergent and possibly highly addictive!

I imagine you'd get the rotational equivalent of Tetris Syndrome after playing this for too long!

The gravity mechanism is cool and the number of colors appears to be about right.

Tweaks:

\- I reached a point where the circle was almost full and then I got a lucky cascade whereby most of the circle was cleared. Unfortunately this must have levelled-me-up as the difficulty (speed and frequency of ball entry) suddenly increased and it was game over pretty soon. Maybe you could implement a limit on the maximum rate of increase of difficulty, so that it eventually reaches the same level of hardness, but at a slower rate.

\- I had no inkling of what the 'special' balls did, I imagine they cause something of a cascade. Could you implement a 'slow-mo' effect when they explode, whereby the action is paused and it can become clear what the hell is going on. This would also give welcome breathing room as the action can be quite unrelenting.

\- add a cascading popping, bubble wrap effect (sound + appearance) to the balls for some additional addictiveness

<comment><AUTHOR> Nice feedback, thanks a lot!

Special balls are bombs. When you burst set of balls with a bomb it explode all balls of the same color on a stage. Slow-mo indeed could help with the explanation. I'll think about it.

</comment></comment><comment><USER9> Balls has an interesting game play that I haven't seen before. The physics work very well.

My only issue is that there is no option to remove the sound and haptic feedback. I know a lot of people think the sound is an important part of a game, but I probably won't play again until there is an option to turn that off.

<comment><AUTHOR> I will add turn off button in the next update. Thanks!

</comment></comment><comment><USER10> Very nice twist on the Bust a Move[0] gameplay. It reminds me of something that the creator of flappy bird said about how he looks to develop games that can be played with one hand while waiting. The name, though, is not very good. Given that "Balls" is a generic word that is hard to search for and it can also be interpreted as inappropriate.

[0][http://www.neo-geo.com/reviews/neo-reviews/bust-a- move/bust-...](http://www.neo-geo.com/reviews/neo-reviews/bust-a-move/bust-a- move1.html)

</comment><comment><USER11> Also see [https://medium.com/@ivanpashenko/how-one-designer-was- learni...](https://medium.com/@ivanpashenko/how-one-designer-was-learning- swift-cc2d99658895)

How hard was it to learn Swift without much programming experience? I've had more than a little trouble figuring it out, mainly due to the cryptic error codes, but also because I just want to write Objective-C or use NSString or type @{} when I should be using String and [:] and all that.

</comment><comment><USER12> Very nice, congratulations on releasing it.

Is it open source?

<comment><USER13> Please say yes OP

<comment><USER14> Seconded! Would love a chance to peak behind the curtains on this one.

</comment></comment></comment><comment><USER15> Wow, great game! I can image this being a hit on the app store. Sometimes the rotation feels a little awkward, but with a bit more polish this could be a huge hit.

I also think, that it's getting too hard too fast. You should tweak the "difficulty curve" a little bit :)

BUT, it's _really_ hard to find. I had to search for your company to have a chance. (German App Store) Renaming it could be a wise decision.

<comment><AUTHOR> Thanks!

When the rotation feels awkward?

I see the issue with a search in the App Store, but I have no clue why this is happening. It shows the name in search suggestions, but when I'm clicking on it, there is no my app in the results. Any idea why?

<comment><USER16> Also check for blacklisted keywords : [http://blog.worddata.com/app-store- optimization/discover-app...](http://blog.worddata.com/app-store- optimization/discover-app-blacklisted-keywords/).

Worddata has lots of great articles about ASO. There are tools out there that show you if your chosen keywords are highly competitive and should be replaced with less popular keywords so you have a chance at showing in search results.

</comment></comment></comment><comment><USER17> Would you recommend any course/site/tutorials/resources etc. for learning Swift?

P.S. Nice game!

<comment><USER18> [http://www.LearnSwift.tips](http://www.LearnSwift.tips)

Disclosure: My site

</comment></comment><comment><USER19> Looks neat but please don't forget about colorblind people. Adding additional distinguishing features like textures, patterns, borders, etc will make the colors easier to distiguish for all users.

tinyurl.com/colorassign

</comment><comment><USER20> I'm seeing half the phone at the top of the page in Firefox 33.0.1 :/

<comment><AUTHOR> Fixed! Thanks!

</comment></comment><comment><USER21> That's very nice! I am in the process of learning it as well. When the balls "disappear", do you simply set them as alpha = 0 or actually remove them from the view?

</comment><comment><USER22> Really interested in the resources used to learn Swift?

<comment><USER23> I've collected a bunch of Swift resources on my site that might be useful if you're trying to learn.

[http://www.h4labs.com/dev/ios/swift.html](http://www.h4labs.com/dev/ios/swift.html)

I think this is probably the best place to start.

[http://www.raywenderlich.com](http://www.raywenderlich.com)

<comment><USER24> Thanks a lot for this sources

</comment></comment></comment><comment><USER25> Nice visual demonstration on the website. I'm going to guess gameofballs.com was already registered, and that it is not an iOS game...

</comment><comment><USER26> Pretty fun, any chance of open sourcing it? Might be a good way for early Swift devs to get a foray into game development.

</comment><comment><USER27> Very nice - had the same issues finding the app but it's the second result under 'Filedrop Ltd'.

</comment><comment><USER28> You should definitely price it at 0,99

<comment><AUTHOR> I think I will do it at some point :)

<comment><USER29> If you want to, you should do it yesterday. Download rates are not the same as when you release, and you need to capitalise on that.

</comment></comment></comment><comment><USER30> Any specific reason why it's iOS 8+ only? I wanted to try the performance on older devices

<comment><USER31> Because of Swift I suppose.

<comment><USER30> You can deploy Swift apps to iOS7 and Mavericks [1]

[1]: [http://stackoverflow.com/q/24001778](http://stackoverflow.com/q/24001778)

</comment></comment></comment><comment><USER32> Are there any ads? It is unusual for a game to be on the App Store without monetization.

</comment><comment><USER33> Really great presentation.</comment>


Ask For Forgiveness Programming - Or How We'll Program 1000 Cores - <AUTHOR> http://highscalability.com/blog/2012/3/6/ask-for-forgiveness-programming-or-how-well-program-1000-cor.html

<comment><USER2> I'm still confused about the "repair" part of "race-and-repair". Could somebody explain whether/how this is different from eventual consistency in the limited case of a database?

Considering that you would (I guess) need to spend just as many cycles calculating the correct answer anyway, doesn't this make race-and-repair pointless for computations where correctness _is_ required?

And yes, I realize that a large part of the (cultural) problem is an overly high tendency to think correctness is required. So what kind of computations don't require correctness?

The analogy to biological models is interesting, and bringing up cellular automatons (really agent-based models) gave me some ideas, but I'm still unsure where else something like race-and-repair would be useful.</comment>


Syringe injectable electronics (2015) - <AUTHOR> https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4591029/ <comment><AUTHOR> Hot damn, this got a lot of points, but no discussion.

The basic TL;DR is that they figured out a thing that works really, really well as a neural implant material (a mesh). They spent a lot of time figuring out the ideal details for this mesh, and a bunch more time looking at how it interacted with the brain.

Here's some TL;DR from the bulk of the paper:

Normal implants have the issue that the don't move the same way as brain tissue, so anything that jostles the brain causes the implant to carve paths through the brain. Since this is a mesh, it moves _with_ the brain.

Injecting a "normal" mesh, you just get a sort of tube of stuff where you injected it. Because of the shape of this mesh, it tries to uncoil; but does so slowly enough that it doesn't damage the brain tissue. One of the major points of the study is the specifics of this mesh (which is basically just an angle).

Because it's a mesh, neurons actually really like growing on it, so they form a bunch of handy connections to it.

One fun thing you can then do is grow brain tissue in the petri dish with the mesh, and you'll get something with real nice connections.

As an aside, this is actually the first paper that I went: "Fuck it, I'm going to read Science"; that it was actually so unexpectedly accessible has started a trend of actually reading the science behind things. I recommend it!

</comment><comment><USER2> Looks like this is the technology behind Elon Musk's recent Neuralink [0] venture (investment?)

[0] [http://www.theverge.com/2017/3/27/15077864/elon-musk- neurali...](http://www.theverge.com/2017/3/27/15077864/elon-musk-neuralink- brain-computer-interface-ai-cyborgs)

</comment><comment><USER3> I can imagine a hearing aid installed by injecting the electrodes right into the nerves, and then passing the audio signal electronically.

I wonder if this is going to help e.g. paralyzed patients to re-wire (some of) their muscles. Will likely help to wire up prosthetic limbs.

<comment><AUTHOR> Yes and no?

(Disclosure: I are software dev and do not know medical anything but can read good, so I just do a lot of that)

Neural implants ALREADY re-wire muscles; more, they can actually stimulate nerve regrowth (you trying to use those paths actually help them recover; Kill Bill style). I don't see this improving that effect, except that it's a better form of implant (less downsides)...

...however, I wouldn't be surprised if it was better _enough_ than existing implants that you can do something new; namely, make artificial nerves to replace damaged ones... and I wouldn't be further surprised if the effects of the mesh act as a scaffold to promote cell regrowth, like the 3D printed organs.

<comment><USER4> LTP is a wonderful thing. Your brain grew that network before and now it is fading away. The only thing stopping you from replicating it is the missing medium and if we provide that before you lose the network, it may be able to.

<comment><USER5> It's been a while since my various neuroscience lectures/courses, but as far as I remember LTP only refers to the process of strengthening existing synaptic connections, not the forming of new ones. The process of forming new connections is called synaptogenesis.

That's just nit-picking about terms though, it is clear enough what you mean - except that growing the exact same network still doesn't give you the exact same synaptic strengths of each connection. And I don't know what you mean by replicating the existing network - do you mean a technique to recreate the exact same neural network? But even if you manage to do that, where are the boundaries, how do you know which connections matter and where do you stop? I probably don't understand your plan though.

</comment></comment></comment></comment><comment><USER6> How much damage to surrounding brain cells would (could) occur from injecting this into someone's brain?

<comment> T-A Enough that it is not considered a viable approach for general purpose BCIs in adult subjects. You can get away with injecting one to study or affect a small localized region, but that's about it [source: chat with a Lieber lab collaborator].

Unless of course you get Cultured and put it in place at the embryonic stage, so the brain grows into it.

<comment><USER7> 'cultured' as in 'cell culture' or as 'embraced by the Culture' (where the 'neural lace' comes from)?

have an upvote.

/dontexplainthejoke

</comment></comment></comment><comment><USER8> This article is from 2015 - could we get a date tag on the title?

</comment><comment><USER9> Oh wow. This could be extremely useful for the medical field. Where can I get a watch injected into my wrist?

<comment><USER10> Shenzhen

</comment></comment><comment><USER11> What's stopping a malevolent AI from controlling humans who are connected via neural lace?

<comment><USER12> Forget AI, for me this is evoking visions of government-mind-control creepiness.

<comment><USER13> This is the more likely scenario.</comment></comment></comment>


About the game geometry dash - <AUTHOR>

Several months ago I discover this game, I was very intrigued about its color and design, I google about it, and I find out the developer took 4 months to develop the first version of the game (and I was thinking about at least 10 months of developing)
Suddenly, the game is in the top paid apps, and according to the web "thinkgaming" it's earning around 10k per day...
this game is a real gold mine, and it doesn't look super complex with high graphics (although it does have cool colors and movements)... So my question is: developing a game like this is something only an advanced developer could do? Because it's physics are quite simple in my opinion, the cool thing is the difficult of the different levels and of course, it's colors. So, coding a game like this, do you think it's hard work? Obviously this game is not as simple as flappy bird for example, but still it looks simple, what do you think?
Thanks <comment><AUTHOR> Someone?</comment>


Distributed Systems with ZeroMQ - <AUTHOR> http://java.dzone.com/articles/distributed-systems-zeromq <comment><USER2> To make a distinction that the article does not (but should), ZeroMQ is a network transport abstraction layer. It is _not_ useful for many distributed systems despite the title for the same reason. For non-trivial distributed systems, behaviors that are correct for network transport use cases that are built into ZeroMQ are pathological for distributed system use cases.

In the specific case of ZeroMQ, there is a deep underlying assumption that logical queues are fundamentally independent things. As a corollary, scheduling what work is done on which queues is of no consequence as long as the contract of the individual queues is upheld.

For any non-trivial distributed system, the above assumption is not true. Correct and scalable scheduling of operations is a function of the current status of all logical queues visible to a process. The processing priority of one queue is dependent on the current status of all other queues, which can change from operation to operation. Distributed systems are cooperatively scheduled and much of the self-balancing behavior of good distributed system designs come from this adaptive scheduling behavior. Unfortunately, systems like ZeroMQ intentionally hide and encapsulate all of the properties of the network transport that would be used to inform the scheduling of operations over a set of logical queues. And if you assume logical queues are fundamentally independent from a scheduling perspective then that is a good design.

ZeroMQ is a good for moving bits over a network but it is often not a correct choice for distributed systems.

<comment><USER3> > For non-trivial distributed systems, behaviors that are correct for network > transport use cases that are built into ZeroMQ are pathological for > distributed system use cases.

I'm not sure what you mean. Please provide one or more concrete examples.

> ZeroMQ is a good for moving bits over a network but it is often not a > correct choice for distributed systems.

It seems to me that distributed systems are _defined_ by moving bits over a network.

You're right that there is some confusion regarding what ZeroMQ actually us. This is in no small part due to it's unfortunate name: ZeroMQ isn't a queue. It is implemented with queues, but that's because it sends and receives discrete messages instead of bytes, like it's underlying protocols. The underlying transport protocols use "buffers" to store bytes on their way from your application to their destination. When you have a buffer of _messages_ , that's called a queue!

ZeroMQ is a network protocol for messaging. If you need custom scheduling, load balancing, etc, you can send and receive control messages on a secondary channel. The ZeroMQ Guide [1] is extremely enlightening in this regard. It's worth reading even if you never use ZeroMQ because all of the underlying principals apply to any network transport.

[1] <http://zguide.zeromq.org/page:all>

<comment><USER2> You are not understanding the nature of the problem. I have not only used ZMQ extensively in distributed systems but have modified the internals for some purposes. The problem is intrinsic to its design.

Robust, high-throughput distributed systems are built around the concept of Nash equilibria. To ensure that, there is an optimal ordering to the set of possible message operations over those queues. It gives them a priority and you attempt to schedule operations in approximately optimal order. The ordering is not fixed; every message operation on a queue may have side effects that alters the total ordering of message operations for any process associated with that queue. Consequently, the schedule of operations over the entire set of message queues must be adaptively and dynamically imposed in order to approximate a good Nash behavior.

In real software, this is usually just a simple state machine that adaptively prioritizes operations based on the aggregate state of those messages and queues. Also, we usually approximate ideal scheduling for performance reasons (and good approximations are usually good enough). Priority modifying side effects propagate throughout the distributed system; local modifications in priority provide stabilizing negative feedback to the global behavior. (See also: greedy routing optimization problems etc. This is a pretty complex area of mathematics.)

Consequently, there are some popular design choices for network server systems that tend to work poorly for distributed systems, either because they prevent the creation of an effective operation scheduler or because they hinder the propagation of negative feedback that prevents pathological interactions.

Giving every socket its own OS thread or similar is right out. That lets the operating system decide when operations are scheduled and the operating system has no concept of prioritization in the sense that is important for distributed systems. Trying to use thread interlocks to impose an order leads to pathological context-switching storms. High-performance schedulers are cooperative. (You can design a schedule with multiple threads that executes with minimal interlocks, but it is not trivial.)

Unlimited buffering and hard-limited buffering are also poor abstractions because they obscure the state of a queue. Robust schedulers often prioritize queues based in part on how it reduces total buffering. For some good designs, you can prove the existence of a reasonable upper bound on the total buffers required for a node or queue with no hard limits on any particular buffer. It is an elegant side effect of scheduling interactions in a distributed system but requires a scheduler that is aware of many aspects of buffer state.

In principle, it should be possible to design a message queue abstraction designed for the requirements of distributed systems. It would not be as simple as ZMQ though. ZMQ is not designed to support that use case, so in cases where I am building a non-trivial distributed system protocol, we build on top of epoll directly. It is not a knock against ZMQ, it was designed for other purposes.

<comment><USER3> Very few distributed systems have the communication volume and patterns necessary to justify explicit scheduling policy beyond round-robin and fair- queuing. In fact, many distributed systems get by just fine on HTTP using round-robin load balancing and even without keep alive!

I've worked with some pretty big systems that use a model that look an awful lot like 0mq and perform splendidly. I've also worked on several smaller systems (games) that needed to use UDP and all kinds of custom semantics for reliability to accomplish their task. I'd imagine that if such a thing happens when you scale down, what you're saying is possible when you scale up.

To anyone reading this thread: If you don't understand all the complexities of jandrewrogers' response, just assume YAGNI. In that case, if your problem lends itself to a stream oriented protocol, then ZeroMQ is a great choice. You can deal with the other complexities if the need arises.

<comment><USER2> All the systems you are talking about are so loosely coupled that most people do not classify them as "distributed systems", certainly not in the computer science sense. The complexity is not in the number of machines but in the interactions and coupling of individual nodes required by basic operation of the cluster.

Lots of things work very well with ZMQ, just not distributed systems. If your application scales efficiently on ZMQ then it is a giant pile of computers and not a "distributed system". I've seen systems that scale to thousands of nodes and also seen systems that won't scale past a few machines on ZMQ. System architects should be able to distinguish the two cases without standing up a cluster to see if it fails. All it requires is one part of your system to not fit the ZMQ case for things to start falling apart. That this is an expected result is not exotic computer science.

<comment><USER3> > If your application scales efficiently on ZMQ then it is a giant pile of > computers and not a "distributed system".

At this point, I'm invoking Poe's law.

</comment></comment></comment></comment></comment></comment><comment><USER4> If you like this, you should check out ZeroRPC, it handles a lot of the boilerplate code you would need to write by hand.

Links: \- <http://zerorpc.dotcloud.com> \- <https://github.com/dotcloud/zerorpc-python>

</comment><comment><USER5> We are currently using ZeroMQ in our distributed task framework in Python, SCOOP (<http://scoop.googlecode.com>).

ZeroMQ was chosen as the communication library because it simply works and isn't bloated. No need to implement the state-machines for common patterns in our sockets, ZMQ does it and fast. It doesn't replace a standard socket, though, it only add a layer of functionalities over it.

While using it, we found some minor negative point such as delays needed by the socket upon shutdown, which require sleeps between unit tests, or the random port connector that is not random... But overall, ZMQ is a tool that saved us much developing time and should not be overlooked by distribution systems.

</comment><comment><USER6> Required reading for anyone learning Python</comment>


Fujitsu announce FX10 supercomputer capable of 23.2 petaflops - <AUTHOR> http://www.geek.com/articles/chips/fujitsu-announce-fx10-supercomputer-capable-of-23-2-petaflops-2011117/ <comment><USER2> This looks like just another computer with a lot of cores. What are the physically-based arguments against large advances in speed of _serial_ processors besides the cliched "Moore's Law isn't working anymore" semantic stopsign?

<http://matt.might.net/papers/might2009manycorefad-talk.html>

<comment><USER3> Supercomputers have been massively parallel for decades. They run customized operating systems, have very expensive interconnects(networks) and entire teams of programmers work to make applications that are able to use their full capacity.

These are machines that use millions of dollars of electricity a year. They aren't really comparable to a laptop with 6 cores.</comment></comment>


Less Processed Meat, More Plant-Based Foods May Boost Longevity - <AUTHOR> https://www.npr.org/sections/thesalt/2019/06/12/732061499/the-swap-less-processed-meat-more-plant-based-foods-may-boost-longevity <comment><USER3> To be honest, I don't get the mania for processed meat substitutes when there's excellent vegetarian/vegan fare from cuisines that have been doing it for millennia. As an Indian brought up in a vegetarian family, I had no inkling or desire to eat meat until I came to the US for grad school.

One day I had this niggling doubt that I continued to be a vegetarian for cultural rather than ethical reasons. I tested that hypothesis by eating a hamburger. It was literally the worst thing I had ever tasted. I had to try hard not to throw up and offend my hosts.

Then I tasted bacon, hot dogs pastrami sandwiches and fried chicken and I understood why people like meat. That continued for a few more months.

About six months after the hamburger episode, I had another epiphany that I don't like eating animals since I don't like animals being eaten. I turned vegan. All's well that ends well.

<comment><USER4> _To be honest, I don 't get the mania for processed meat substitutes when there's excellent vegetarian/vegan fare from cuisines that have been doing it for millennia._

There's a term for vegans who don't actually eat whole foods: "french fry vegan". It's as derisive as it sounds. If you're eating processed meat substitutes all the time as a vegetarian, IMO you aren't doing it right. I'm sure plenty of other people would agree.

And yet, vegetarians do eat those things sometimes. It's cultural. In the West (not just in the USA, in much of Europe as well), a lot of traditional foods are either meat-based or contain meat. My friends and I want to go out for a burger and a milkshake, because that's fun for us; I want a damn burger. A grilled mushroom on a roll is equally delicious, but it just isn't the same.

<comment><USER5> > _If you 're eating processed meat substitutes all the time as a vegetarian, > IMO you aren't doing it right. I'm sure plenty of other people would agree._

I couldn't disagree more. The vast majority of vegans are vegan primarily for religious reasons or because of animal welfare and/or environmental concerns (see, e.g., [0]). Heavily processed plant-based foods clearly address the religious and animal welfare considerations, and I suspect they're far more environmentally friendly than animal products despite the energy used to process and ship them.

Avoiding heavily processed foods is a good idea in general. But it's orthogonal to veganism. And eating heavily processed foods doesn't invalidate the benefits of veganism - aside from the health benefits, which are the primary concern for only a slim minority of vegans.

[0] [https://vomadlife.com/blogs/news/why-people-go- vegan-2019-gl...](https://vomadlife.com/blogs/news/why-people-go- vegan-2019-global-survey-results) \- I assume this understates the share who cite religious reasons because of the bias toward English-speaking countries.

</comment></comment></comment><comment><USER6> it will boost the longevity of our biosphere, based on a 5 year Oxford Uni study - <USER2> [https://www.theguardian.com/environment/2018/may/31/avoiding...](https://www.theguardian.com/environment/2018/may/31/avoiding- meat-and-dairy-is-single-biggest-way-to-reduce-your-impact-on-earth)

And also have a look at research by PCRM (group of doctors and medical pros): [https://www.pcrm.org/term/processed- meat](https://www.pcrm.org/term/processed-meat)

</comment><comment><USER7> With more and more people switching to vegetarian and vegan fake meats, I'd be interested in understanding what is the wisdom on highly processed vegetable- based foods.

<comment><USER8> Processing foods is what likely helped Homo to get enough energy to evolve big brains. So, processing foods isn't all that bad, and it may even be hard-wired in many of us.

But, Humans tend to take things too far, and inventing new ways of processing is really fun! So, most food today is over-processed. It's acceptable to grind, dice, tear, smash, smush, squeeze, ferment, spice, salt, and cook veggies, lightly. Any more than that is risky territory.

<comment><USER9> I think that is slight miss-use of term processed food. Process food (at least to me) is anything that has been artificially adjusted by factory processing, like injecting meat with some solutions in order to 'make' more meat.

I would hardly qualified lets say smoked bacon as processed food in that sense. But all of those microwave ready meals et al. large content of it is cheap filler masqueraded as actual product.

<comment><USER10> It is not a mis-use. Bacon is absolutely a processed meat.

"Microwave ready meals" are typically just pre-cooked meals prepared for reheating - they're probably not the best meals in terms of ingredient quality or cooking methods, and low-quality ones might have some plant starches as filler, but most of them are pretty straightforward.

<comment><USER11> Anything prepared for the microwave like that is high in sodium. We're talking over a days worth of sodium all at once. Very far from healthy.

Actually, most meat nowadays is injected with huge amounts of sodium. It's like we're all eating log term storage foods-even that raw meats.

<comment><USER10> Of course there exist low-quality or over-salted meals.

But I just took a look in my freezer at two bog-standard ready meals I have there just in case - macaroni and cheese, and a beef lasagne. They're each about 1.5g of salt, and there's nothing notable about the ingredients.

<comment><USER11> Anything more than like 700-900 mg/day is less than ideal. 1.5g leaves you no budget for the rest of the day. (Though some sources say you just need to be below 2.5g. Still, that's not much higher than 1.5g when we're talking an entire rest of the day to eat.)

<comment><USER10> What does "less than ideal" mean?

NHS guidelines in the UK are <6g of salt (2400mg sodium) per day. US guidelines are 2300mg. Salt and sodium are not the same; 1.5g of salt is about 600mg sodium, or about 1/4 of the recommended daily limit. That seems entirely reasonable for a main meal.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER12> I think the longevity of dietary advice is pretty low. Remember when eggs were the enemy, when fat was the enemy, when carbs were the enemy? Meat had to have it's turn sometime.

<comment><USER13> Perhaps we can judge the statements on the evidence behind them?

The reason that processed meat (that is meats which are smoked, salted, etc.) is recommended to not be eaten is because it has been shown to be carcinogenic.

The egg thing is based on the idea (I actually don't know enough to know if this is correct or not) that dietary cholesterol intake affects blood cholesterol levels, and eggs have a bit of dietary cholesterol in them.

I get that we're not very educated within this area but perhaps we should stay quiet then? What's the point in writing comments on HN about things we know very little about?

<comment><USER14> All these results (re 'shown to be carcinogenic') are based on surveys as opposed to experiments. In other words, unlike randomized, double-blind studies, they cannot be said to demonstrate causation, but at best may point to interesting hypotheses.

As for eggs and cholesterol, about 80% + of cholesterol is produced in the liver, and increasing dietary cholesterol by HUGE amounts at best changes blood cholesterol by 2-4%

Sorry I can't dig up the study right now, but perhaps searching pubmed may find it.

</comment></comment></comment><comment><USER15> Regarding processed meat, what part of the processing makes the meat unhealthy? Or is it something related to how processed meat is often consumed vs unprocessed meat?

<comment><USER16> It's all the additional steps and products added. A lot of processed meat are juste a slime of bones, skin, organs, ligaments whatever was left on the carcass of the animal. On top of that it comes from low quality (cheap) animals in the first place which doesn't help.

It's like eating a fruit vs drinking a juice, or eating raw veggies vs a broth. The original material is the same but it doesn't mean it holds the same benefits.

[https://www.youtube.com/watch?v=9il0DVhT86E](https://www.youtube.com/watch?v=9il0DVhT86E)

[https://www.youtube.com/watch?v=2NzUm7UEEIY](https://www.youtube.com/watch?v=2NzUm7UEEIY)

<comment><USER13> I don't believe that this matters. Why would it? Offal has great nutritional value. The inuit did perfectly well on an all-meat diet. The issue is more likely curing with nitrites and smoking.

>It's like eating a fruit vs drinking a juice

Another thing that doesn't matter. What exactly do you think magically happens when you put an orange into a blender and mix with a bit of water that would make it lose its nutritional value?

<comment><USER16> > I don't believe that this matters

You're free to believe what you want. A slime of chicken skin, fat and ligaments isn't digested the same way as a chunk of chicken breast. The nutritional values are just a small part of a big equation.

> Another thing that doesn't matter. What exactly do you think magically > happens

Many things happen and none of them are magical. The glycemic index of a raw fruit isn't the same as a juice from the same fruit for example, you don't get the fibers, &c.

> The inuit did perfectly well on an all-meat diet.

That's another side of my point, they evolved on that diet, most people didn't. Do you think the lifestyle of the average first worlder has anything to do with inuit lifestyle?

<comment><USER13> >Many things happen and none of them are magical. The glycemic index of a raw fruit isn't the same as a juice from the same fruit for example, you don't get the fibers, &c.

Only if you buy a juice concentrate. Making your own juice is equivalent to chewing an orange.

>You're free to believe what you want. A slime of chicken skin, fat and ligaments isn't digested the same way as a chunk of chicken breast. The nutritional values are just a small part of a big equation.

Of course not, I'm not arguing for that. What I am arguing for is that there's nothing inherently unhealthy about eating any of those things, and that offal is actually very nutritious.

>That's another side of my point, they evolved on that diet, most people didn't. Do you think the lifestyle of the average first worlder has anything to do with inuit lifestyle?

If an American adopted the diet of an inuit in such a way that their caloric needs are satisfied then I doubt it would matter. It is definitely possible that the inuit have evolved in some ways to accomodate for their diet, do you have any sources for that?

</comment></comment></comment></comment></comment><comment><USER10> It's a bit cliché now, but Michael Pollan's dietary advice ([https://www.nytimes.com/2007/01/28/magazine/28nutritionism.t...](https://www.nytimes.com/2007/01/28/magazine/28nutritionism.t.html)) does seem to be reasonable: "Eat food. Not too much. Mostly plants."

</comment><comment><USER17> I am now cynical about all dietary advice. In Western countries the sort of people who eat bacon and burgers tend to have very different lifestyles from those who eat sushi. They are more likely to smoke and less likely to exercise. They are also likely to be less well educated and more likely to be poor and work at unhealthy jobs. Are all these factors taken account of in this study? For example, as I understand it, black people in America eat a lot of white meat (chicken which is supposed to be healthier than red meat) and yet their health tends to be poorer than average.

</comment><comment><USER18> I wonder how true this is. I have been trying to switch to a more carnivore diet - more red meat eg steak - for rumored benefits of lowering inflammation and boosting immune system. This is stating the reverse.

<comment><USER19> Animal protein is highly inflammatory. This is about the worst thing you can do if you are concerned about inflammation. Load up on fresh vegetables and fruits instead.

<comment><USER20> >Animal protein is highly inflammatory

What is the basis for this belief?

>Load up on fresh vegetables and fruits instead.

Many fresh vegetables are inflammatory. Plants evolved chemicals to hinder herbation. Roots/tubers and fruit are generally fine, but leaves/stems/flowers are generally full of inflammatory anti-nutrients and should be cooked.

<comment><USER19> Not true.

[https://www.health.harvard.edu/staying-healthy/foods-that- fi...](https://www.health.harvard.edu/staying-healthy/foods-that-fight- inflammation)

<comment><USER21> That's just a blog post on Harvard.edu domain. Has no cred on its own. Not backed up by scientific references.

Please post sources.

Thank you.

<comment><USER22> >just a blog post on Harvard.edu

Which is more authoritative than a comment on HN. I believe it's on you to find a more authoritative source that contradicts the above.

<comment><USER20> Blog posts and HN posts have an equal lack of authority. Authority does not matter though, facts do. You can look up the levels of oxalates, phytates, PUFAs, etc from whatever source you like and confirm reality. You don't need an "authority" to tell you what to think.

<comment><USER22> >Blog posts and HN posts have an equal lack of authority.

I agree that ultimately facts are what matter, but I disagree on this point. In the real world where it's not possible to author or reference a peer- reviewed research study for every statement or decision you'd like to make, this authority has value.

TThe administrators of Harvard Medical School, a well respected university, were willing to publish this content on a domain they controlled. This implies that some trusted expert at this trusted institution authored, reviewed, and published this content. This means that they don't believe that this content is so inaccurate as to expose the institution to a reputation loss, as opposed to say www.fake-health-expert.example.com. In fact, this may have _more authority_ than a peer-reviewed study that doesn't properly disclose its funding by e.g. the dairy or sugar industry.

This skin in the game of reputational risk is orders of magnitude different than your or my reputational risk by posting a comment to HN.

<comment><USER20> >This implies that some trusted expert at this trusted institution authored, reviewed, and published this content.

No it does not. It is a blog post. Tons of people have blogs on that domain. There is absolutely no standard of authority or correctness involved. You are falsely inferring that there are trusted experts involved. There is no factual basis for that belief.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER23> I said the same thing in a previous HN discussion and my comment was down voted into oblivion. Many Asian cultures had this thing figured out thousands of years ago. Less or no meat. Many famous martial arts schools (Indian, Chinese and Japanese) are totally vegetarian. So, the argument that meat is needed for extreme physical activity goes out of the window. Almost all Asian monks (Buddhist, Jain or Hindu) are vegetarians. So, the argument that meat is needed for better mental\intellectual health also goes out the window.

</comment><comment><USER24> Are there any clues in the scientific literature what part of 'processed' is causing lower longevity?

Ideas:

* 'Worse' cuts of meat (near bone, nerves, etc)

* Grinding/processing system introduces contamination.

* Processing mixes meats from many animals which spreads infections more.

* Smaller pieces of meat degrade with bacteria faster.

* Processed meat tends to be served with less healthy meals otherwise (more salt, fat).

</comment><comment><USER25> We just have to make sure we are not swapping super processed meats with super processed plant-based foods. Avoiding processed foods is what makes up for most of this difference.

</comment><comment><USER26> What is it that makes "processed" meat especially bad? Would the same thing also apply to processed vegetables?

</comment><comment><USER27> One study isn't scientific fact.

</comment><comment><USER28> I do not care, despite the constant barrages from the ethical vegetarians and the climate-alarmist vegetarians, and the Beyond Meat investors.

First off, steak and bacon and pork taste delicious, and life on rabbit food is not, in my opinion, worth living.

Second of all, the only way that I can maintain anything close to what the literature says should be a healthy weight is when I slash grains out of my diet and eat low carb, high fat, supplemented by green vegetables. Any vegetarian diet's benefits pale in comparison to the threat of diabetes and general wear and tear from carrying extra weight around.

</comment><comment><USER29> Before anyone goes vegan, check-out the numerous ex-vegan videos on youtube. Even with supplementation veganism isn't sustainable for most people past 3 years, 10 if you're lucky, very few get to 15. Just keep in mind that without vitamin B12 supplements-->certain death.

This is not a human diet, and humans are not herbivores. Herbivores have complex stomachs or eat their own poop (eg, gorrillas and rabbits).

After the health flush of the first few months, veganism is a downward spiral to pasty skin, mood-swings, depression, dark circles, fatigue, skinny-but-fat, Joint paint, constant hunger/lack-of-satisfaction, excessive volume of eating. Vegans eat like you wouldn't believe. And a great deal of wildlife dies due to agricultural farming.

And despite what people say, anthropologically we are not omnivores but carnivores. Radio-isotope analysis has us eating a diet close to a wolf by preference over the last million years. Unlike a pig, a genuine omnivore, we do not have a proper cecum.

But sure, a few humans are better adapted to a plant-based diet than others, and our distant genetics was herbivore which means these genes can re-express, but for most people veganism becomes a nightmare and explains why the level has historically been at 0.3%.</comment>


The PC BiOS will be killed off by 2020 as Intel plans move to pure UEFI - <AUTHOR> https://arstechnica.com/gadgets/2017/11/intel-to-kill-off-the-last-vestiges-of-the-ancient-pc-bios-by-2020/ <comment><USER2> kind of unsettling if you look at current state of uefi, and other low level side projects like ME etc. which are plagued by bugs.</comment>


Why an MRI costs $1,080 in America and $280 in France - <AUTHOR> http://www.washingtonpost.com/blogs/wonkblog/wp/2013/03/15/why-an-mri-costs-1080-in-america-and-280-in-france/

<comment><USER2> As a French citizen who's enjoyed the goodness that is subsidized health care, it needs to be stressed that all this has a cost for the country.

The vision that taxpayers support a system where everyone is granted access to next-to-free / affordable health care has a natural cost in certain areas.

Sure it's great when you're both poor and sick cause you get to be treated like everyone else, you get the day care for your kids, you get the MRI's, the cancer treatment, you're being taken care of at the ER etc.

But at the same time, everyone has to realize that this has a cost in terms of taxes. Taxes for companies, home buyers, CEOs, businesses, cigarettes and alcohol, gas, etc.

It's the old chasm between putting the emphasis on the individual or on the nation/country as a whole. America has traditionally favoured private/capital- oriented solutions so far for most of its services (postal services, health care, public transportation, part of its schools, water, electricity, Internet infrastructure, etc.) and was thus able to keep the burden of taxes lower for individuals.

If it were to move to a system where everyone pitches in for cheap state- driven services, the money would have to come from somewhere and it would be sure to somehow stifle economic growth in certain areas (see the economic situation of France or other countries where the involvement of the state is still strong).

TL;DR: The idea of cheap MRI is nice on paper (and I believe it to be awesome in practice), but there's no magic wand to make that happen, the money has to come from somewhere and it requires that a whole country accepts paying more to the state to get more at the other end, a paradigm shift that will be tough to swallow for the USA given its economic culture.

<comment><USER3> Health care taxes on cigarettes... morbidly hilarious.

<comment><USER4> Do people think health care taxes on cigarettes is a bad idea? As a smoker who pays extremely high taxes on cigarettes here in the UK I have no problem with them.

<comment><USER2> The problem with taxes on cigarettes (as I see it) is that most of the time it's not proportional to one's income. A tax that is not progressive is inherently unfair IMHO, as it places a heavier burden on the less fortunate. EDIT: Someone mentioned that cigarettes are a life choice but I personally believe that to be more of a nice theory than a fact. In reality smoking is huge among people with lower income, due to lack of education about the risks, cultural factors, advertising, etc. (see [http://www.gallup.com/poll/105550/among-americans-smoking- de...](http://www.gallup.com/poll/105550/among-americans-smoking-decreases- income-increases.aspx)). As a result, a higher burden is put on people who tend to smoke more on average, which are apparently the very same people who don't have too much money to begin with. Still their mistake to be spending the little money they have on a drug, but it's one of those "easier said than done" things in my opinion.

<comment><USER5> Smoking is a choice that makes someone more likely to have health problems later. Under nationalized health care, taxing cigarettes is just aligning incentives.

</comment></comment></comment></comment></comment><comment><USER6> This article didn't seem all that great. It just claims "the prices are higher" without any substantive recommendations on how that problem can be solved.

Nonetheless, it does make one interesting point:

 _This is a good deal for residents of other countries, as our high spending makes medical innovations more profitable. "We end up with the benefits of your investment," Sackville says. "You're subsidizing the rest of the world by doing the front-end research."_

In other words, the low prices for health care found in other countries is, in part, subsidised by the American consumer. As a result, it would stand to reason that if price controls were implemented in the U.S., it could result in less medical innovation or rising prices elsewhere in the world.

<comment><USER7> > _This article didn't seem all that great. It just claims "the prices are > higher"_

They buried the reason: "It's very much something people make money out of. There isn't too much embarrassment about that compared to Europe and elsewhere."

Profiting off of the sick and injured has _zero_ shame in the US. In fact, if you can drive the patient to bankruptcy, then you have maximized the take.

For some reason, there is no outrage. Previous generations would have used the word "profiteering", but the word seems unfashionable to apply in modern times to medicine or the military.

<comment><USER8> Health care companies seek a profit because innovation takes capital investment, and the only way to build capital is to make a profit. The article admits to the value of this when it talks about how U.S. consumers subsidize innovations that have global benefits (like MRI machines).

I totally disagree with the idea that health care companies actively seek to drive patients to bankruptcy. Can you provide any proof of this other than your own opinion?

<comment><USER7> One example: One of Elizabeth Warren's crusades before the banking crisis exposed that 46% of all bankruptcies circa 2007 were medically induced.

<http://www.pnhp.org/new_bankruptcy_study/Bankruptcy-2009.pdf>

It isn't exactly news that the industry maximizes profits.

The mere fact that you chose to write "Health care companies seek a profit because innovation takes capital investment, and the only way to build capital is to make a profit" is indicative of the problem. It's almost as if you can't imagine any other means of solving the problem.

I don't think you're alone either. In quantitative medical rankings, the US is 33rd in life expectancy and 34th in infant mortality (behind Cuba!) yet is #1 in per-capita spending.

[http://en.wikipedia.org/wiki/List_of_countries_by_life_expec...](http://en.wikipedia.org/wiki/List_of_countries_by_life_expectancy)

[http://en.wikipedia.org/wiki/List_of_countries_by_infant_mor...](http://en.wikipedia.org/wiki/List_of_countries_by_infant_mortality_rate)

<comment><USER9> _46% of all bankruptcies circa 2007 were medically induced._

There were obvious problems with Warren's methodology. If I live in a system with excellent government healthcare, and I end up paralyzed, my family might still go through bankruptcy because they've lost their primary income.

The number is more like 1/4 than 1/2. 26% of bankruptcies have medical debts exceeding $1000. Obviously that includes someone owing $4000 to a dentist as well as someone owing $450,000 to an oncologist, so the real number is some portion of 26%.

<comment><USER7> > _The number is more like 1/4 than 1/2._

Great. So the number of people that have been profitteered into bankruptcy is only 1/2 of what I mentioned.

It doesn't change the basic fact: Profiting handsomely from the sick and dying used to be considered unethical. Now, it is "just business".

</comment></comment></comment></comment></comment></comment><comment><USER10> > Health care is an unusual product in that it is difficult, and sometimes > impossible, for the customer to say "no."

But there are other products that we absolutely need to stay alive that don't suffer the runaway prices we see in healthcare.

The best example is food. You can't say no to buying food.

So why don't food sellers have us over a barrel? Because consumers see prices and force the many providers to bid competitively against each other.

My point is that inelastic demand is not the fundamental cause of high costs in healthcare. It has much more to do with the many layers of abstraction we place between patient and provider that prevent price signals from passing through.

<comment><USER11> One doesn't generally have a sudden and unexpected need for a very particular type of food that only relatively few specialists know how to produce.

<comment><USER7> Exactly. As an example: One does not comparison shop for an ambulance service after a car accident, nor a surgeon after arriving at the hospital.

And those charges for blood transfusions: Anyone up for a startup to find the lowest bidder?

</comment></comment></comment><comment><USER12> First, it is good to look at this on an international perspective, but an entirely separate article can be done on why an MRI costs $1,080 for a patient with insurance and the same treatment would be arbitrarily more for an uninsured patient usually about 4x as expensive. This issue has gone to court in California (2006-2008) resulting in over $1 billion dollars returned to uninsured patients because Courts found hospitals were illegally "price gouging" uninsured. However, price gouging uninsured is a practice that continues around the US, for example in September I received 17 stitches from a FL hospital and the bill was over $12,000 because I am uninsured. I recorded the entire event on my phone including asking how much the stitches would cost and the staff telling me the bill would be $2,000 if I were insured. I challenge the bill since I was quoted $2,000 for the treatment and my bill was $12,000 and when I produced the video of the staff acknowledging different price structures for insured and uninsured the hospital immediately agreed to cover my entire bill.

Second, I can not believe the Washington Post would publish an article titled "Why an MRI costs $1,080 in America and $280 in France", "America" really? I try to never comment on a spelling or grammatical error, but honestly we are talking the Washington Post who should know to use "US" not "America".

</comment><comment><USER13> Is that why the US has four times as many MRI machines per person?

[http://www.oecd- ilibrary.org/sites/health_glance-2011-en/04/...](http://www.oecd- ilibrary.org/sites/health_glance-2011-en/04/02/index.html?contentType=/ns/StatisticalPublication,/ns/Chapter&containerItemId=/content/serial/19991312&itemId=/content/chapter/health_glance-2011-30-en&mimeType=text/html)

And has no queues for MRI scans, where France has a 32-day mean waiting period?

[http://mjperry.blogspot.com/2007/09/canadian-medicine-is- sic...](http://mjperry.blogspot.com/2007/09/canadian-medicine-is-sick.html)

[http://sante.lefigaro.fr/actualite/2011/05/10/10863-irm- dela...](http://sante.lefigaro.fr/actualite/2011/05/10/10863-irm-delais- dattente-stagnent-32-jours-france)

<comment><USER14> MRI exams, 2009 :

\- US 91.2 per 1000 inhabitants

\- France 55.2 per 1000 inhabitants

Better usage ratio => lower price

<comment><USER15> And to make an equally relevant point: more MRIs doesn't necessarily equate to better health outcomes. It depends on who is getting them, and how likely they are to actually be sick.

Lots of rich people getting marginally useful MRIs in the USA may be an inferior system to everyone having access to MRIs but fewer being done in total.

</comment></comment></comment><comment><USER16> Also see Time's extensively researched "Why Medical Bills are Killing Us" <http://healthland.time.com/why-medical-bills-are-killing-us/>

the tl;dr of it: hospitals are charging the uninsured exhorbitant markups over Medicaid (which they bitch about, but they actually do well enough that they _advertise_ to Medicaid patients) because _they can_. Without pricing information (which they hide as much as possible), every emergency is a miniature monopoly. "Non-profit" hospital administrators have every incentive to expand the facilities/prestige of their institution, so they act like the most rapacious "for-profit" corporations imaginable.

</comment><comment><USER17> before clicking on this post to read it and even still after reading it I think the true reason for this can be summed up in a single word "Litigation"

As someone who has been in court rooms and seen the amount of litigation that businesses deal with in America I would find it hard to believe it does not play a significant role in the higher prices than places where Class Action Lawsuits and Ambulance chasing attorneys aren't the norm

<comment><USER18> Wrong guild: <http://www.press.uchicago.edu/Misc/Chicago/036480.html>, [http://prescriptions.blogs.nytimes.com/2009/08/31/would- tort...](http://prescriptions.blogs.nytimes.com/2009/08/31/would-tort-reform- lower-health-care-costs/), <http://dartmed.dartmouth.edu/fall05/html/disc_myth.php>, [http://www.forbes.com/sites/rickungar/2010/09/07/the-true- co...](http://www.forbes.com/sites/rickungar/2010/09/07/the-true-cost-of- medical-malpractice-it-may-surprise-you/), [http://online.wsj.com/article/SB1000142412788732409640457835...](http://online.wsj.com/article/SB10001424127887324096404578356544137516914.html)

</comment></comment><comment><USER19> I went to the ER here in Dallas a couple of weeks ago because of some chest pains I was having.

The good news - it's just some stomach acid. ER doctor prescribed Prilosec OTC and sent me away.

The bad news - $4,500 in medical bills for 3 hours spent in the ER. Most of that was spent watching TV waiting for the results of blood tests & x-rays to be announced.

<comment><USER20> Sprained my ankle very badly on January 1. Had an x-ray (nothing broken, yay). Got some crazy painkillers and some Diclofenac gel. Waited for about 15 minutes. Never saw a bill and didn't pay a dime.

And by that I mean besides the roughly 300 EUR that's taken out of my pay check every month now that I'm gainfully employed. People less fortunate get it for free, of course.

</comment></comment><comment><USER21> An MRI doesn't have a cost in America. The cost depends on, obviously, your perspective. Are you a patient? If so, are you insured? Are you a hospital? Medicare? What state are you in?

Are we talking cost or are we talking reimbursement?

</comment><comment><USER22> My thesis: Health care costs are higher in the US largely because the US has more per capita wealth than other counties. Look at per capita spending: <http://www.oecd.org/norway/BriefingNoteNORWAY2012.pdf>

The biggest spenders are the US, Norway, Switzerland and Luxembourg--the same counties with the highest per capita GDP. Health care is simply something a person will spare no expense on: everybody eventually enters a period of chronic poor health as they age in affluent Western societes, but would pay anything to remedy it.

</comment><comment><USER23> The giant "insurance scam" that the US medical industry is... By the way, it costs something around $83 in India. Of course we can't compare directly just by converting the currency, but it's also true that a lot of American insurance companies these days pay patients to go and get themselves treated in the best hospitals of India as that (including the trip costs) would still be cheaper than getting themselves treated here.

</comment><comment><USER24> +1 for price controls in medicine

<comment><USER25> I like the idea of transparent pricing that some surgery centers are implementing. One example is the Surgery Center of Oklahoma which simply displays the prices of their procedures on their website.

This way, people can make informed decisions about their health and purchase procedures at rates far below what is charged through insurance.

"Transparent, direct, package pricing means the patient knows exactly what the cost of the service will be upfront. Fees for the surgeon, anesthesiologist and facility are all included in one low price. There are no hidden costs, charges or surprises."

<http://www.surgerycenterok.com/pricing.php>

<comment><USER12> I too like the transparent pricing, CVS Minute Clinics are a great example, if they offer a service it is listed on their price chart.

In FL medical facilities that post prices of their 50 most common treatments are given a discount on their license fee. I think that is great, but you have to laugh at how pro-business states get businesses to do anything pro- consumer.

Separately, under the FL Patient Bill of Rights, even if a medical facility does not post their pricing, if requested by the patient the provider must provide a reasonable estimated charges of such service.

</comment></comment></comment><comment><USER26> Because in the US there are vastly more MRI machines and they are newer.

France has 1/3 the number of CT machines per capita and 1/5th the number of MRI machines per capita compared to the US. And the US has the highest number of MRI scans per capita per year in the developed world (4 times more than French citizens).

Stats: [http://www.oecd- ilibrary.org/sites/health_glance-2009-en/04/...](http://www.oecd- ilibrary.org/sites/health_glance-2009-en/04/03/index.html?contentType=%2Fns%2F+Chapter%2C%2Fns%2FStatisticalPublication&itemId=%2Fcontent%2Fserial%2F19991312)

<comment><USER27> A doctor I was talking to recently told me that they do way too many scans in America because of liability concerns that don't exist in other countries.

If there is a tiny chance that a condition might actually be something more serious than the obvious diagnosis they will send you in for a scan to be sure even though the doctor "knows" that it's not.

<comment><USER28> Wait a minute... Are you saying that because French doctors can't be sued for making a mistake they don't order MRIs?

What? you're not saying that? Then why would American doctors order more MRIs? Perhaps to detect those tiny chance conditions, that might actually be more serious? So you're saying that sometimes the MRIs reveal something important about the patient's health? And you're wanting to blame US doctors to find that out? How does the doctor "know" that it's not? Should they not "make sure" instead of just "know"?

I think I prefer the US system in that regard.

<comment><USER9> Your uncalled-for sarcasm is burying several important points.

First, when doctors in the US are sued they need to show they met the "standard of care." If every other doctor in your community is doing MRIs, you have to do them to, _even if they provide no health benefit to the patient_. Even if you think that MRIs are leading to _worse_ patient outcomes, that's not the standard you are being judged by.

Second, being sued is a very expensive proposition, even if you did nothing wrong, and doctors are very risk averse of going to court even if they are perfectly confident they did nothing wrong and can prove it.

 _How does the doctor "know" that it's not? Should they not "make sure" instead of just "know"?_

While they can have benefits, all medicare procedures have costs as well as side-effects. In fact, some procedures can _decrease patient outcomes_ , meaning even if they were absolutely free you wouldn't do them. They still get done, because whenever anyone talks about effectiveness research, someone else has a fit. (If Democrats suggest it, Republicans talk about the government getting between you and your doctor. If Republicans suggest it, Democrats talk about how they are putting profits over patient health.)

We can't have the grown-up conversations about what procedures are and aren't worth spending money on, because someone insists that all doctors should "make sure."

<comment><USER28> I lived in France, and I have relatives, including my sister, who lives in France now (and is a recipient of the French medical establishment's services). I worked for a US HMO for 5 years. I also worked for a US medical malpractice insurance company for 1 year. The points you make are valid, and I agree the system is messed up. Alas, I recognize that all massive systems are messed up and cost a lot more than they should, because large systems introduce inefficiencies. It is possible that the US system is less cost- effective than systems in Europe because of the size of the US population versus that of other European countries. Japan seems to be a hybrid system, and has a population of 125 million or so, but I don't know much about it despite the fact that my wife is Japanese.

In the other large-population countries such as China, India, Indonesia, I don't know that things are any better.

(As an aside, I don't think sarcasm is ever "called-for".)

</comment></comment></comment></comment></comment><comment><USER29> medicare for everybody!

</comment><comment><USER30> Do they include the amount the government kicks in to pay for that MRI in France?

</comment><comment><USER31> I don't see how this is related to Hacker News.

<comment><USER32> We talk a lot about disrupting businesses here; there's a reasonable number of folks in the audience who want to do this to health care. Likely no deeper than that, but understanding the entrenched solutions in a market can be valuable if that's your plan.</comment></comment>


I made a macro keypad with 3D-printed switches - <AUTHOR> https://incoherency.co.uk/blog/stories/3pct-keyboard.html <comment><USER2> You mentioned the contours on top of the keycap being an issue. A good fix for that is tilting the keycap forward 45 degrees in your slicer. This does require supports but the top finish looks so much better. The tilt technique combined with your filament should look very good.

<comment><USER3> I caught the same issue, from a slightly different angle. Using key caps with that much protrusion surface will render them unsanitary in a relatively short time due to dead skin deposits, which will cure and fill the ridges. It's not great from a health point of view. From what I remember when I was doing 3D printing, an acetone cloud bath could help to achieve a more glossy, thus more sanitary finish.

Incidentally glossy finish on porcelain-ware for plates, bath tubes, toilet bowls and sinks are specifically for this reason — gloss is achieved when the surface is flat to a defect rate smaller than the wavelength of visible light, which also gives bacteria and organic matter very little to hold on to.

<comment><USER4> Usually acetone doesn't work so well on the PLA the author is printing the keycaps in. There are other sprays or things you can apply to PLA for a good effect though - I'm betting any of the things used to make PLA food-safe would work here.

</comment></comment></comment><comment><USER5> Those contacts will oxidise almost instantly. From running morse keys for years, you need gold or phosphor bronze.

<comment><AUTHOR> Thanks, I will keep an eye on this. Do you reckon gold plating would suffice or is it likely to get worn away?

<comment><USER6> Might give more flexibility to move to optical sensing and avoid the contact issue entirely.

<comment><AUTHOR> It would. I think a common option is to use magnets and hall effect sensors. If you use an analogue hall sensor, you can even make an "analogue" switch that can have a different effect if you push it just a little bit compared to pressing it the whole way down.

Neither of these satisfy me, because in my eyes if you're using an off-the- shelf sensor of some kind, you're not really making a switch, you're just putting a little mechanism around another type of switch. Making the contacts out of cheaply-available material is important to me, although it's hard to really articulate why.

I'm trying to do this from as close to "first principles" as possible.

<comment><USER7> We need to stop at some point though. Do we need to make our own wires? That's surprisingly difficult to achieve.

<comment><USER8> Considering it's a personal project, one can choose where to stop. Sounds like they've chosen to draw the line at making their own switch mechanism.

</comment></comment></comment></comment></comment></comment><comment><USER9> I've been undertaking a similar project, using an ESP32 currently for testing, also have an Arduino Micro Pro to test yet, during lockdown/furlough. I'm hoping to customise and sell them on Etsy, I've sold code + 3D prints before, but I'm just taking time to get the PCB right before I get my first ever board printed. Aiming for hot-swappable switches and some LED magic.

</comment><comment><USER10> It's a good project.

If you print a lot, here's my project using which you can create tons of cheap filament:

[https://medium.com/endless-filament/make-your-filament-at- ho...](https://medium.com/endless-filament/make-your-filament-at-home-for- cheap-6c908bb09922)

If anyone can contribute diameter control algorithm, please let me know!

<comment><USER11> Is it the control algorithm you're after, or an output diameter measurement technique? You don't mention how you're measuring the width at the extruder die or after the freeze bath.

<comment><USER10> Hello! I've dual axis laser micrometer which has a sampling rate of 100 of times per second.

I can use microcontroller to read the measurements and want to dynamically change the puller roller speed. (It's a geared down stepper motor)

Pinch roller (puller) is very simple, it uses steel rollers which have sandpaper pasted (with epoxy) on it for gripping fimament - it can pull with force of 10kg before it slips.

I want to achieve tolerance range of +/-0.02mm in diameter

<comment><USER11> Where is that micrometer mounted? The problem you're going to have (which I'm sure you're aware of) is that if it's after the freeze bath, you're miles away from where the thickness is actually determined. If the speed of the rollers makes the filament go through the bath at 1m/s (say) and the bath is 2m long, you can't react to any deviation in the temperature of the plastic as it leaves the nozzle (for instance) any sooner than 2 seconds later, and any drift has had that long to cause a problem. That way lies an oscillating system, unless you're quite careful.

The way you've posed the system, my gut feeling is that your problems are going to come down to reaction time. Once a problem manifests in the system, how quickly can you a) detect it; b) react; and c) have that reaction take effect?

There are three things I'd look at. The first is to make sure the entire path of the plastic until it has set is tightly temperature-controlled. You can't have breezes varying the temperature of the plastic before it enters the bath, so you want a PID-controlled warming tube to control its descent into the bath. Similarly you need to control the temperature, depth, and turbidity of the bath so that the length of time the plastic is less-than-fully-solid is tightly controlled. If you do that, you've got a chance that you've controlled the physics of the filament well enough that quick deviations will be damped out, and slow drifts get picked up by the micrometer.

The second is mounting the micrometer as close to where the filament enters the bath as you can get it. That's the point that's as close as you can get to where the plastic's frozen and the thickness is determined, so there's as little lag as possible between where you're measuring and where you're having an effect. That will let the system react to much faster deviations than it would be able to otherwise.

Third, I'd make that bath as short as possible. The length of filament hanging in the bath will act like a spring, so when the rollers speed up to try to thin the filament out, that acceleration will be blunted as the filament lifts up into a shallower catenary. You can compensate for this in the control system, but it's better not to have to. In fact, if you could get rid of the need for a bath by instead rolling the filament immediately onto a chilled metal roller close to the extruder die, that might open up other possibilities, but that ends up baking stresses into the filament which you might not want to deal with.

</comment></comment></comment></comment><comment><USER12> > The switch fits in a 14mm square hole (apart from the protruding wires), > which is the same size as a Cherry MX switch, but the total height from the > bottom of the switch to the top of the keycap is almost twice as large, > about 45 mm vs 25 mm [...] This directly translates to increased keyboard > height, so it would be good to cut this down as much as possible. I should > be able to lose 2 mm from the wire support at the bottom of the switch, and > another 1 or 2 mm in the height of the leaf spring attachment, but there's > no way it's going to be as thin as the Cherry MX.

It's a nice concept but the design of the switch doesn't intend this project to replace your keyboard.

A nice design nevertheless :)

<comment><AUTHOR> It's easy, just cut a hole in your desk to accommodate your over-sized keyboard!

</comment></comment><comment><USER13> Don't get me wrong, I'm heavily into the custom keyboard scene. PCB design, lots of tiny soldering, 'crazy' ergonomic layouts with only 36 keys and lots of layers and other tricks.

Still. Why would you want to print your own switch mechanism?

<comment><USER14> There is a yak, and it is furry.

<comment><USER15> For the uninitiated: [https://en.wiktionary.org/wiki/yak_shaving](https://en.wiktionary.org/wiki/yak_shaving)

1\. Any apparently useless activity which, by allowing you to overcome intermediate difficulties, allows you to solve a larger problem.

 _I was doing a bit of yak shaving this morning, and it looks like it might have paid off._

2\. A less useful activity done consciously or subconsciously to procrastinate about a larger but more useful task.

 _I looked at a reference manual for my car just to answer one question, but I spent the whole afternoon with my nose buried in it, just yak shaving, and got no work done on the car itself._

</comment></comment></comment><comment><USER16> Neat project - next time make one with only ctrl, alt, and del.

</comment><comment><USER17> Inspiring! This would be an awesome punch-and-roll macropad for voice actors... well, this particular voice actor anyway. I currently use a 10 key pad with tape covering all but the three keys I want to press.

</comment><comment><USER18> One possible improvement would be to include space for mounting a diode. Many mechanical switches can house a diode to simplify PCB layout for NKRO keyboards</comment>


The iPhone XR - <AUTHOR> https://daringfireball.net/2018/10/the_iphone_xr <comment><USER2> No 3D-Touch realy makes this a non-starter. Really sad how Apple can't decide on a unified UX paradigm.</comment>


How many x86 instructions are there? - <AUTHOR> https://fgiesen.wordpress.com/2016/08/25/how-many-x86-instructions-are-there/ <comment><USER2> I've written assemblers for about 30 different ISAs (ISAE?)---most of them custom. An ISA (almost always) forms a DAG, where a node is a legal string of {01X} that is producible from the ISA; the 'X' meaning "0 or 1". An encoding is a daughter of another encoding if it has a 0 or 1 whenever the parent has a 0 or 1.

A "projection" is the imposition of a tree-like structure on the DAG, followed by a cut of the tree to make it practicalable in size. Aliasing mnemonics in the tree can cause confusion for the user---or aid in understanding.

These articles are noting that there are many ways to project the x86 ISA.

<comment><USER3> do you mind going into why you have written so many assemblers?

<comment><USER2> My grad work was in system programming language design; I used to toy around with VM design, so that meant I was (poorly) designing a lot of ISAs and then writing a lot of assemblers for them. My professional work is unrelated to my grad work, but has still let me expand on that interest. Sorry I'm so vague. Think more along the lines of "python byte code assembler", or somesuch thing.

<comment><USER4> Do you happen to blog? Would absolutely love to read about best practices, curious situations and so on.

</comment></comment></comment></comment><comment><USER5> I intend to read the 3-volume edition of Intel's developer manual from start to finish, but haven't decided when to do it, before or after TAOCP.

</comment><comment><USER6> Neat, I'd come across Pin[1] recently doing some IDA Pro stuff... XED[2] looks equally interesting.

[1]: [https://software.intel.com/en-us/articles/pin-a-dynamic- bina...](https://software.intel.com/en-us/articles/pin-a-dynamic-binary- instrumentation-tool)

[2]: [https://software.intel.com/en-us/articles/xed-x86-encoder- de...](https://software.intel.com/en-us/articles/xed-x86-encoder-decoder- software-library)

</comment><comment><USER7> One question this left me: are we leaving performance off the table by using compilers that are only using a "standard" subset of the possible instructions out there?

<comment><USER8> Define "we". I think there is definitely some applications doing this.

Last I checked, using default GCC settings you can drastically change the performance of the resulting app by passing different flags. This obviously depends a lot on the app, but I recall a simple raytracing program I wrote in C++ in University being sped up quite a bit when I passed it flags to optimize for Pentium4+, because it leveraged certain SSE instructions.

MSVC++ with optimizations turned on actually bundles multiple copies of the binary in the resulting .exe file, and is able to pick the optimal one (based on the ISA extensions your CPU supported) at runtime. I'm sure you can do something comparable with binaries produced by GCC and CLang.

Now.. do I think this improperly optimized binaries are a problem plaguing us? No. Because the large native applications that would really benefit (such as Chrome/V8) have already dealt with this. The smaller apps (think a small GTK app like gedit) won't see a noticeable performance benefit. And most newer, consumer applications (Spotify, Slack, Skype) are written in something like Node anyways.

</comment></comment><comment><USER9> This article makes me kind of wonder wether there are processors that understand two or more unrelated instruction encoding sets.

<comment><USER10> What do you consider as "unrelated"? For example modern ARMv8 cores understand 3 instruction sets: AArch32, Thumb2 and AArch64. AArch32 and Thumb may be related, but AArch64 is more different (no conditional execution, more registers etc. for example). Though you would perhaps still consider them as related.

EDIT: Similarly, modern x86-64 cores support at least three instruction sets: x86-16 (real mode), x86-32 (protected mode) and x86-64 (long mode). These are related, but at least I claim that x86-16 and x86-64 are _very_ different in practise.

A perhaps better example is Jazelle on older ARM cores, which supported exectuting most of Java VM's instruction set directly on the processor.

Or another example: The instruction set of many processors is separated into several parts that work and encode quite differently. For example the x87 instructions are stack-based instead of register-based. Or I have heard that AltiVec instructions encode and work quite differently from normal PowerPC instructions. The only reason why these are not considered as different instruction sets is that they lie in the same opcode space. If you consider instruction sets that "just lie in the same opcode space, but are otherwise mostly unrelated" as unrelated, then there are some instruction sets that evolved as hybrids of different instruction sets for controlling different functional units.

Or another example is many SoCs contain additional coprocessors and ARM's instruction set contains instruction for controlling them. These coprocessors execute different instruction set. But perhaps you would consider this not as "one processor" but rather several communicating processors on one chip.

TLDR: Define what you mean with "[one] processor" and with "unrelated" in terms of encoding of instructions.

<comment><USER9> Your examples are all instruction sets that were developed with the idea in mind that they run together with the other instruction sets. What I meant with unrelated is instruction sets that have been developed independently and were not meant to run on the same cpu from the beginning. For instance a cpu that supports both the Risc-V and the Power architecture.

<comment><USER11> There was the V20/V30. It was a drop-in replacement for the 8088 that could also execute 8080 (or Z80---it's been awhile since I used one) code (it was also faster at executing 8088 code, which is why a lot of people used it). While the 8088 is descended from the 8080, it's not binary compatible (completely different opcodes) and probably fits your criteria.

<comment><USER10> It was the Intel 8080 not the Z80 for which the V20/V30 had an emulation mode (just looked it up).

To do some nitpicking on this great example: The Intel 8086/8088 was designed to be assembly source compatible (up to search & replace) to the Intel 8080 (source: [https://en.wikipedia.org/w/index.php?title=Intel_8086&oldid=...](https://en.wikipedia.org/w/index.php?title=Intel_8086&oldid=735318399#The_first_x86_design)). People like legulere would thus clearly nitpick that the criterion "instruction sets that have been developed independently" is not satisfied here.

</comment></comment></comment></comment></comment><comment><USER12> Sorry, if I may sound off-topic, but it seems that XED-downloads aren't working at all.

</comment><comment><USER13> > ISAs (ISAE?)

-ae only if the word is a) not an abbreviation, b) Latin, and c) a-declension.

<comment><USER14> Pretty sure GP was joking. But anyway, my favorite word to throw out there in fun little pedantic conversations like this = octopus, which ends up ! actually being octopi like most people think, but rather octopodes due to it being from Greek & ! Latin.

<comment><USER13> Grammar is always fun, even more so when you start mixing several languages.

<comment><USER15> Especially in the same word! _cough_ television _cough_

<comment><USER16> hexadecimal, was originally and correctly sexadecimal, but when it got wider use somehow was turned into hexadecimal instead of the also correct hexagecimal.

</comment></comment></comment></comment></comment><comment><USER17> tldr; What is the answer? Curious.

<comment><USER18> The post begins:

> It's surprisingly hard to give a good answer (the question was raised in > this article). It depends on how you count, and the details are interesting > (to me anyway).

</comment></comment><comment><USER19> It supports up to 4,294,967,296 instructions.

<comment><USER20> Where did you get that number from? Instructions are not limited to 31 bits in length</comment></comment>


How do you reverse engineer cool? - <AUTHOR>

<comment><USER2> Like reverse engineering anything else, it boils down to observation.

        Find cool people.
        Observe cool people.
        Discover patterns.

Then, it's simply a matter of implementing those patterns.

You'll discover in the case of "cool" people, depending on the type of cool the patterns will be vastly different.

In one such instance, conformity is an underlying pattern. In others, its individuality. IE, school cool versus industry cool.

</comment><comment><USER3> Only with the utmost studied concern for spontaneous authenticity.

<comment><AUTHOR> Interesting. Hints about how can/should be studied?

</comment></comment><comment><USER4> You let cool reverse engineer you.</comment>