Years You Have Left to Live, Probably - <AUTHOR> http://flowingdata.com/2015/09/23/years-you-have-left-to-live-probably/ <comment><USER4> The nature of the curve, with virtually no chance of death until about 65, with a strong dropoff after, should give rise to a fair bit of reflection.

I'm the same as the author, a 34 year old male. For me, chances are pretty concentrated on me living a good few decades more. Which is ok, I can plan for that. I'll need a house to live in for the next 30 years, changing careers could be done, etc. I'm pretty unlikely to die in the next couple of decades, so hopefully I'll see my kids go to college. Chances of dying earlier are so low I can basically ignore them.

It also makes me sad about my high school classmate who passed away at 29. Set the marker to 18 and you have to wait quite a while before one of the simulations ends at 29 or earlier.

For someone older, there's an interesting issue. Say I put in my father's age, 71. There's a 1/3 chance of not making it to 81. But then there's also a 20% chance of making it past 91. What do you do about that? You can't spend all your money now. But you can't not spend it, either. Should you wait until next year to see your old friends? The likelihood is flattened out, which makes it quite hard to decide things.

<comment><USER5> > There's a 1/3 chance of not making it to 81. But then there's also a 20% > chance of making it past 91. What do you do about that? You can't spend all > your money now. But you can't not spend it, either.

Pensions and annuities, unlike private retirement savings in stocks and bonds, spread this risk out among many people. Your father could get about $650 per month guaranteed for life for every $100,000 he puts in an annuity today.

<comment><USER4> That insures you against the long tail of living too long, yes. But if you knew you had exactly 5 years with 99% probability, you wouldn't do that, right?

Also plenty of things are not purely financial. How will you know if this is the last opportunity to see an old friend? As a 34 year old there are plenty of friends I put off catching up with because it will happen someday. As a 71 year old?

</comment></comment></comment><comment><USER6> I made this 'mori clock' awhile back (used to have it at a url): [https://s3.amazonaws.com/mori- app.com/index.html](https://s3.amazonaws.com/mori-app.com/index.html)

It shows your life in blocks of weeks, up till your 80.

Edit: I bought the domain back :) [http://moriclock.com/](http://moriclock.com/) (might still be propagating)

<comment><USER7> This somehow cheered me up. It showed it to me that the blocks of weeks that I felt great make up a huge chunk of life -- thank you!

<comment><USER8> I wish you many more continued blocks of happiness mate!

</comment></comment></comment><comment><USER9> A bit OT, but when I was programming actuarial software, with access to the mortality tables, I was interested to learn that most people need to get to the age of 105 or so before the chance of them making their next birthday is less than 50/50.

</comment><comment><USER10> Nice UX, but the probability is probably wrong.

I am in my 40s, so I'll give the current life expectancy stats about a 50% chance of being valid by the time I reach the age to die.

But somebody who is 10 today, will likely have a life expectancy much longer than the 80 yeas. The entire curve will be pushed out. So for that person, I'd guess the probability of this being correct is closer to 10%.

<comment><USER11>
        > But somebody who is 10 today, will likely have a life
        > expectancy much longer than the 80 years

Turns out there's a _highly_ developed and mature prediction market for this called life insurance, and they disagree with your assessment.

<comment><USER12> An industry that will be destroyed or bailed out when there is a large upward discontinuity in life expectancy trends thanks to advances in medicine. There is a very big change going on in medical research at the moment, shifting from not trying to treat aging as a medical condition to actually treating aging and its causes. The difference in outcomes will be night and day; some relevant technologies are transferring out of the lab and into startups even now. E.g. Gensight in France, Pentraxin Therapeutics Ltd in the UK, Oison Biotech and Human Rejuvenation Technologies in the US.

Anyway, pensions and life insurance will most likely be bailed out when the crash comes, and the expectation of this socialization of losses might explain some of what is observed there in the sense that they are not responding aggressively to the actuarial community's ever more strident warnings on the uncertainty of their projections. Also people are not particularly rational in their expectations about aging - see this for example, a survey of the actuaries who are the same time as warning that life expectancy predictions are increasingly uncertain due to medical advances in the works, still base their future expectations on what happened to their grandparents:

[https://www.dovepress.com/longevity-expectations-in-the- pens...](https://www.dovepress.com/longevity-expectations-in-the-pension-fund- insurance-and-employee-bene-peer-reviewed-fulltext-article-PRBM)

<comment><USER13> I don't think that will destroy the life insurance industry. In fact, I think it will help them.

If I buy a life insurance policy for a 15 year old today, I pay them $X in order to receive $Y when the insured dies. If the insured lives for 70 years, the insurance company has 70 years to invest $X, in order to have $Y available when the insured dies.

But if the insured lives 80 years, then the insurance company has 10 more years to invest $X. They gain from that situation, rather than lose.

<comment><USER14> The main problem if I understand correctly is with pensions. They have 10 more years to invest your money, but they also have to pay you for 10 more years... so the longer you live, the less they profit. Live long enough, and they will lose money. And if enough people live longer than expected, the insurance company could go bankrupt.

<comment><USER15> The issue with pensions is already being dealt with. Either by their absence from many employers (US, not sure about the rest of the developed world), or by delaying the age at which you can receive it or reducing the rate at which you earn into it.

Social Security is an example of this, [http://www.ssa.gov/planners/retire/agereduction.html](http://www.ssa.gov/planners/retire/agereduction.html). This, of course, requires an act of Congress to change. But businesses aren't so limited, new employees can be brought in on a new pension system while grandfathering in the old ones, with few (if any) legal holdups.

</comment></comment></comment></comment></comment></comment><comment><USER16> Last autumn I was involved in working on a similar web app [1] for WorldBank which consumed its data sources.

I think it should be more accurate as they at WorldBank collect the data from multiple sources and process it in a scientifically precise manner. You can enter country you live in, which can make a dramatic difference.

[1] [http://population.io](http://population.io)

<comment><USER17> Hearing I'm older than 46% of the worlds population is pretty interesting. I'm only 27.

<comment><USER16> If you have a look at [https://en.wikipedia.org/wiki/List_of_countries_by_median_ag...](https://en.wikipedia.org/wiki/List_of_countries_by_median_age), you will see that the total world age median is 29.7.

</comment></comment></comment><comment><USER18> What's really depressing about this is setting the calculator to fast and to the age of my youngest kid and watching the rare odd ball fall at ages younger than me. It is rare, but it does fall. Probability, you heartless bitch.

</comment><comment><USER19> I remember reading somewhere on the internet about a person who had a decorative bowl in their house. This bowl was full of marbles. Once a week, they would take a marble out of the bowl and throw it away. Each marble was a week of their life. When they started this practice, they calculated their life expectancy and bought enough marbles for each week they were statistically expected to live. The idea is to give you the constant reminder that our time is limited, always running out, and shouldn't be wasted. The older you get, the less time you have, and the fewer marbles that are left in that bowl. If you are a typical HN reader, you likely have less than 3,000 marbles left.

<comment><USER20> Chris Crawford perhaps! [http://kotaku.com/30-years-later-one-mans-still- trying-to-fi...](http://kotaku.com/30-years-later-one-mans-still-trying-to- fix-video-gam-1490377821)

</comment></comment><comment><USER21> I believe that we will see significant advances in lifespan-increasing research over the next hundred years, barring any major disasters affecting humanity. Old models and expectations for calculating death can no longer be relied upon.

Most of the people alive today will probably (unfortunately or fortunately, depending on your world view) be among the last generations to die from what we currently consider natural causes.

<comment><USER22> This notion seems to be as old as humanity. It's built on some inner hope that mortality can be outsmarted and escaped.

Back in the real world, we can't even agree as a society what level of healthcare should be afforded to all members vs. what level you have to earn.

The greatest advancements in life extension in recent years have only added more years of horribly low quality life. I don't want to die, but I am going to. Why should I invest my resources to spend years suffering?

<comment><USER23> Generally speaking, we are actually reducing the amount of time people spend suffering, while at the same time extending peoples lives. From the 2013 NBER working paper "Evidence for Significant Compression of Morbidity In the Elderly U.S. Population":

"For a typical person aged 65, life expectancy increased by 0.7 years between 1992 and 2005. Disability-free life expectancy increased by 1.6 years; disabled life expectancy fell by 0.9 years.

"The reduction in disabled life expectancy and increase in disability-free life expectancy is true for both genders and for non-whites as well as whites. Hence, morbidity is being compressed into the period just before death."

And, given that part of the low quality of life at end of life comes from two thirds of people not thinking through and documenting their wishes for care, one can improve one's personal odds by creating and advanced health care directive. And of course, many of the things that we dislike about old age result from chronic conditions that can be addressed through good nutrition and exercise.

So, good news, end of life isn't as bad as you fear!

<comment><USER24> Still, my 90-year-old friend Betty used to say "Old age is not for the timid"

</comment></comment></comment></comment><comment><USER25> I like this way of visualizing probability as a series of random variates of the distribution in a timed sequence. After watching for a while, your mind can get an intuitive notion of the probability without having to parse numbers and functions.

<comment><USER26> It's actually a nice example of places where technology plays a real role, especially as we accumulate a lot of these little tools. This would be a handy little widget to have in a high school textbook.

</comment></comment><comment><USER27> The thing about this tool is it answers the following question: given your gender and your age (and no other data about you), based on CDC data of mortality in the US, how many more years do you have left to live?

In reality, you'd likely better be able to predict your remaining years if you have more details about yourself (you should, unless you're Benjamin Kyle). Are you a long-term heavy smoker, overweight like most Americans, or do you work in a dangerous job like construction? You're more likely to live less. On the other hand, do you have a safe job, stay physically fit, and avoid alcohol and drugs? You're more likely to live more.

</comment><comment><USER28> > And I should probably look into life insurance.

Why? What exactly is it that you think "life insurance" does? If there were a product that would reduce the variance in remaining life length, that might be interesting, but that's not what "life insurance" is. All it does is pay someone else some amount of money when you die, after you pay them some (usually increasing) amount each year while you're alive (with countless weird financial variants for those who really like being taken to the cleaners). The ev of every such policy is negative, as it is for all types of insurance. You are almost certainly better off taking the money you would have spent on premiums and investing it conservatively; that's all the insurer is going to do with it anyway, and that way you don't have to give them a cut or worry about them going out of business before you die.

As always, the primary exception to this rule is adverse selection: if you know something about yourself that makes you much more likely to die soon, isn't reflected in actuarial tables, and won't be found by a medical exam (if required), then it may be to your designated beneficiary's advantage to buy insurance. But a healthy 34-year-old is so unlikely to die any time soon that they'll almost always be better off if you just stick money into some tax- deferred account and designate a beneficiary. Which is probably what you ought to be doing anyway, just in case you do happen to live a long time.

<comment><USER29> The EV of all insurance policy is negative when measured in absolute dollars. But the EV can be positive if the value of dollars to you doesn't scale linearly.

For example, if you have to spend $10,000 on medical bills, that might be 1 unit of disutility. But if you have to spend $100,000 on medical bills, that might be 30 units of disutility, not 10, because you just don't have that kind of money and you will go bankrupt and your quality of life will go way down. With this reasoning, health insurance might have a positive EV for utility, even though it has a premium that gives you a negative EV for money.

This reasoning is less likely to apply to life insurance, because people are less likely to care about what happens after they die. But for people whose beneficiaries would suffer a lot from losing their income – perhaps they would be evicted – life insurance can be worth it.

</comment></comment><comment><USER30> If I've understood this correctly, the one main flaw this has is that the probability to live to your next birthday is dependent not just on your current age, but also the current year. In other words, if you're 30 right now, the probability you'd need to look up is "the probability to live to my next birthday at age 30 during year 2015". When you're 40, you'll want to look up "the probability to live to my next birthday at age 40 during the year 2025", which could very well be different from "the probability to live to my next birthday at age 40 during the year 2015".

Obviously, though, we don't know how this value will change in future years, so this isn't really a fault of the chart so much as it is an unavoidable limitation. Some sort of model could be introduced for predicting healthcare advances, but I doubt anyone can do so reliably enough to produce a net increase in accuracy here.

<comment><USER31> During the early 1940s, if you were a young Russian male adult, the chance of living until 1946 was 2 in 3. Pretty strange time period. Each time you walked down the street, you could say "live, live, die, live, die, live, die, live, live" and be statistically correct.

It's true that a war isn't necessarily relevant

</comment></comment><comment><USER32> I would have appreciated to have the distribution curve calculated, in addition to having to wait for the animation to converge.

</comment><comment><USER33> I'm turning 49 on Saturday. The number of balls I see dropping just past 50 is a little worrying.

<comment><USER26> Did you set age to 49? If you've made it this far (well done, BTW) you're chances of still ticking for log enough to worry about your 60s are pretty god, >90%.

Still, the possibility of not making it another 10 years is quite a bit higher than I am personally comfortable with, at pretty much any age. If someone has an idea for an immortality startup, I would definitely be willing to pay the $29 subscription. I would even seriously consider the $79 pro tier.

<comment><USER12> Sign up with Alcor with payment via life insuance. Or donate to the SENS Research Foundation, which is spinning off and seed funding relevant biotech startups these days.

</comment></comment></comment><comment><USER34> I think about my own death daily, as a reminder to not take for granted this incredible opportunity of being alive in the universe. But I am still unnerved by this graph! I'm 33, and I'm old enough to know that time passes very very quickly. If I want to die well it is better to start preparing myself now; it may take a long time to get square with the truth that absolutely everything dies. 10 years from now or 1000 years from now, what difference does it make if I can't accept that I will cease to be in this form at some point?

Any hearsay over some technology that might exist to expand our lifetimes completely misses the point. There will never be an absolute end to death. Even the Sun will eventually explode, and even beyond that the universe itself will probably die in heat death. Where will we be then? At what point do we think that we will have "lived enough"? Why do we assume that if we only live longer that we'll somehow be more cool with being dead some day? Is there anything in our experience that suggests we're more OK with death the older you get?

Why talk about tomorrow - we can eat right now!

</comment><comment><USER35> If I have no known health problems, how does that change the distribution? Are there richer datasets that include that type of breakdown?

From a different angle, if 15% of males my age will die in the next 30 years, how many of those are foreseeable due to current circumstances vs accidents that could happen to anyone?

</comment><comment><USER36> A nice visualization!

I was investigating this topic for some time and it turns out that the mortality curve is interesting: grows exponentially in time. In some sense, we start "aging" at the age of 6-8 y.o. (the safest age in Western countries). Plus, there is a bump of mortality in around 20, much more pronounced for males (accidents).

See e.g. [https://plot.ly/~PiotrMigdal/11/mortality-rate-by-age-and- ge...](https://plot.ly/~PiotrMigdal/11/mortality-rate-by-age-and-gender- poland-2013-data-from-statgovpl/) And more info on the exponential growth: [https://en.wikipedia.org/wiki/Gompertz%E2%80%93Makeham_law_o...](https://en.wikipedia.org/wiki/Gompertz%E2%80%93Makeham_law_of_mortality)

</comment><comment><USER37> Running the simulation on fast, it's like those little marbles run out of gas after a certain limit and fall off. In my case the limit is somewhere in the 80s. After they hit that invisible barrier, very few continue to fly.

By comparison, there's a continuous trickle of marbles falling off randomly early.

So what I take from the simulation is that there are two main components: the random stuff that can take you out at any time, and then there's a more-or- less fixed amount of "gas" you have - when that one is gone, it's gone.

</comment><comment><USER38> I have a counter that greets me on a new Chrome window that tells me how much time I've been alive to the hundred-billionth of a second. [https://chrome.google.com/webstore/detail/motivation/ofdgfpc...](https://chrome.google.com/webstore/detail/motivation/ofdgfpchbidcgncgfpdlpclnpaemakoj?hl=en)

People find it depressing, but it tells me not to waste my (limited) time.

</comment><comment><USER39> Could someone explain to me the necessity of the animation? A graph showing the probability distribution for each year would have been much better IMHO.

<comment><USER40> I think it is to reinforce the feeling of individual lives. You watch the ball scoot along to 38 years old and suddenly drop, and you recognize that sometimes it just gets cut short. When presented with just the probability distribution, it's easy to ignore the wings and focus on the mode.

</comment></comment><comment><USER41> Great visualization! I think the balls dropping metaphor is a brilliant one (and just heart-breaking).

From a command-line perspective, though, there's xkcd's actuary.py - [http://blog.xkcd.com/2012/07/12/a-morbid-python- script/](http://blog.xkcd.com/2012/07/12/a-morbid-python-script/) \- which has some nice options.

</comment><comment><USER42> I'm 24, and I recently bought $2 million of life insurance for $80 a month that's good for the next 10 years. I figure that's a pretty good deal. If I die young, I want my wife to not have to worry about money.

<comment><USER43> I don't think that's a good fit for a person in your situation. It's so unlikely that you'll die in that period. I don't know about if you have kids, a house, or your work situations, but I would consider lowering the the payout and investing the rest in a retirement account. If you dropped it down to $500,000, your wife would still be fine for years after you died. If that freed up $40 that you could invest every month, it would result in over $50,000 that you would have at retirement.

<comment><USER42> I want her to be set for life though in case of a freak accident - $500k will run out eventually.

<comment><USER44> Yea, but a freak accident is unlikely to occur before 34. It is likely the decade after would be more concerning where she might have to support kids, etc. in addition to herself.

</comment></comment></comment></comment><comment><USER45> I use curves like this as an anti-procrastination method.

"Hey, you have only 200 more months to live. Don't waste a month doing something stupid."

</comment><comment><USER46> This assumes no advances in medicine though...correct?

</comment><comment><USER47> US only, what else ;-) I live in Germany and drink better beer and enjoy better food :-)

</comment><comment><USER12> Note that life expectancy is a statistical construct, an expected outcome if you lived through the period of technological development from a lifetime ago to now.

But you won't. You will be living through the period of technological development from now until an undefined future date, and we are in the early years of a great and sweeping revolution in the capabilities of biotechnology and medicine.

\</comment><comment>

The cautious majority believes that human life span will continue to increase, but only incrementally, much as it has done for the past few decades - <USER2> life expectancy at birth and life expectancy after 60, due to the continued introduction of new medical technologies. (Which proceeds far more slowly than it could, thanks to the heavy hand of the state). One faction of epidemiologists even argues for the possibility of a dip in overall life expectancy as present trends in obesity take their toll - to their eyes the consequences of being overweight look set to outweigh modest gains due to advances in medicine.

To my mind, arguing for incrementalism in any trend relating to medicine at the present time is choosing to go against the tide. The biotechnologies that underpin advances in medicine are going through a period of massive, revolutionary change. While it is true that organizations such as the FDA do pretty much everything short of shooting scientists to slow down and increase the cost of turning research into therapies, the rapid pace of progress in the life sciences will win through.

Allow me to put forward a historical analogy: standing in 2012 and arguing a case for gentle future changes in life expectancy over the next few decades, based on the past few decades, is something like standing in 1885 or so and arguing that speed and convenience of passenger travel will steadily and gently increase in the decades ahead. The gentleman prognosticator of the mid-1880s could look back at steady progress in the operating speed of railways and similar improvement in steamships throughout the 19th century. He would be aware of the prototyping of various forms of engine that promised to allow carriages to reliably proceed at the pace of trains, and the first frail airships that could manage a fair pace in flight - though by no means the equal of speed by rail.

Like our present era, however, the end of the 19th century was a time of very rapid progress and invention in comparison to the past. In such ages trends are broken and exceeded. Thus within twenty years of the first crudely powered and fragile airships, heavier than air flight launched in earnest: a revolutionary change in travel brought on by the blossoming of a completely new branch of applied technology. By the late 1920s, the aircraft of the first airlines consistently flew four to five times as fast as the operating speed of trains in 1880, and new lines of travel could be set up for a fraction of the cost of a railway. Little in the way of incrementalism there: instead a great and sweeping improvement accomplished across a few decades and through the introduction of a completely new approach to the problem.

This is one of many historical examples of discontinuities in gentle trends brought about by fundamentally new technologies. Returning to the medicine of the present day, there are any number of lines of work we could point to as analogous to the embryonic component technologies of an aircraft in 1885. They are still in the lab, or only being trialed, or still under development - <USER3> they exist in great numbers. There are the SENS technologies; a range of advanced applications of immunotherapy; targeting methodologies to safely destroy specific cell types; organ engineering; and others. Just because we can't see the exact shape of the emerging technologies that will be constructed atop these foundations doesn't make them any less likely to be created: great changes are coming down the line in medicine. The future is not one of steady and incremental progress.

</comment><comment><USER33> Because somebody has to:

[https://xkcd.com/1577/](https://xkcd.com/1577/)

</comment><comment><USER48> Oh man, I've got to find love quickly!</comment>


Torque 3D to be Released on Github under the MIT license - <AUTHOR> http://garagegames.com/community/blogs/view/21876 <comment><USER2> This is great.

For those who haven't followed for 11 years, Garage Games started off selling the Torque engine for $100 - full stop, no tiered licensing schemes, making them at the time _the_ cheapest game engine on the market.

The engine itself came from that venerable and dated Tribes 2, which was a commercial flop, and when the studio went under the tech rights when to GG. I'm not sure if GG was a third-party or more of an ex-employee spinoff.

In any case, I've been doing amateur game dev since around that time, and Torque has always struck me as a highly troubled product. They were offering $100 licenses to a 100% C++ codebase, which attracted all kinds of dreamers who really had no realistic hope of hacking on a C++ engine. I imagine their support load was immense.

I'm surprised they've survived this long - at $100 a pop you wouldn't expect the cash flow to be great. But kudos to them for open sourcing this.

<comment><USER3> Tribes 2 was not a commercial flop, it did extremely well for a 2001 game.

The studio (Dynamix) did not "go under", they were closed by Sierra/Vivendi for "restructuring", which was a shock considering the success of Tribes 2. In fact, the next game (Tribes: Vengeance) was green-lighted due to in large part the success of Tribes 2.

GarageGames was partly made up of some ex-Dynamix employees.

<comment><USER4> And that's all too frequently how successful studios are rewarded in the post-2000s mega-conglomo AAA game industry: shuttered up and their "resources" (programmers, designers, etc.) distributed to polish turds on the parent company's other big projects.

</comment></comment></comment><comment><USER5> I remember that it used to be a choice between Unity and Torque 3D if you wanted a solid 3D engine + integrated toolset. My guess ( I've been out of the loop in making games for a while ) is that this is related to pressure from the success of Unity. In which case I say good luck, the more open source engines out there the more code for people to learn from.

</comment><comment><USER6> Torque is awesome. It was really quite unnerving when GarageGames was shutting down for a short time before I believe they were purchased by a different company.

Torque2D and the iOS version are both fantastic for quickly and easily building 2d games. However, with cocos2d and cocos2d-x, Torque2D has quickly lost it's appeal outside of the fantastic scene builder.

</comment><comment><USER7> In todays market with Unity3D, UDK, CryEngine all offering free versions this doesnt really stand a chance. But its free and for hackers who want to dive deep into C++ Game Engine code its a cool thing to hack with!

<comment><USER8> Well, i wish there would by something like that for Linux. Some of them can compile the games for Linux, but the tools are Win-only.

<comment><USER9> Torque did build and run (In-game editor an all) on Linux back in the day, although support was always iffy (not sure if that's pre-Torque3D or not) - maybe open-sourcing will bring out some Linux hackers to shore that back up.

</comment></comment></comment><comment><USER10> This seems to be a good example of how _not_ to do a product announcement. No release date, no "email me when it's ready" form, just wait and hope that you'll become aware when it's out. Frustrating.

I'd like to hope that this will become an open source alternative to Unity, but I'm skeptical. It's from an era where every game engine inexplicably felt the need to create its own mediocre scripting language rather than using a real language. Replace TorqueScript with C# or Python or Lua, and then it starts to get interesting.

<comment><USER11>
      It's from an era where every game engine inexplicably felt the need to create its own mediocre scripting language rather than using a real language.

I'm not sure that you're placing it correctly in its historical context. There really weren't (as far as I recall) really suitable implementations of scripting languages for games at the time and there were certainly poorer amenities for people wanting to use them.

Would you consider UnrealScript one of these toy languages (it is) or QuakeC, or the goofy approach of Out Of This World? A problem needed solving, and these devs found something that worked well for their purposes.

<comment><USER12> This is the first time I've heard anything about Out Of This World's scripting - can you provide any more info on it?

I always just assumed it was hardcoded.

<comment><USER13> 'Out of this World' had its own virtual machine! Source review below:

<http://fabiensanglard.net/anotherWorld_code_review/index.php>

<comment><USER14> All of his code reviews are excellent. Highly recommend the Quake ones.

</comment></comment></comment></comment></comment><comment><USER15> Torque pretty much started my development career, so this is great news to me. Its suffered a bit over the years, especially after InstantAction folded. Even so there is a sizeable group of indies who use it. I myself have been involved with in quite a few Torque projects, and even contributed to the core engine in the early years.

It's not perfect, but AFAIK its the only MIT licensed engine which is feature- complete out of the box. I think opening the code is a great step forward and provided GarageGames handle it right we could see some great improvements in the engine from contributors.

</comment><comment><USER16> Getting a database error. But thankfully Google's got it cached:

[http://webcache.googleusercontent.com/search?q=cache:idAZix5...](http://webcache.googleusercontent.com/search?q=cache:idAZix5Pyg8J:garagegames.com/community/blogs/view/21876+http://garagegames.com/community/blogs/view/21876&cd=1&hl=en&ct=clnk&gl=us)

</comment><comment><USER17> OGRE](http://www.ogre3d.org/>OGRE) 3D a MIT licensed game engine that has been around since 2001. I think some of the games in the OGRE gallery are far superior to most Torque engine games.

<comment><USER18> Strictly speaking Ogre is just a 3d engine. But yes, would be nice to hear how people see this comparing against ogre + pile of open source libs + custom game logic core.

</comment></comment><comment><USER19> To launch something on github, doesn't github to be working?

</comment><comment><USER20> One thing I've always wondered about these game engines that are marketed towards Indie developers is that I don't tend to see many very successful games developed using them.

For example the list of Unity3d games here: <http://unity3d.com/gallery/made- with-unity/game-list>

There's only a handful there that I've heard of.

Most of the Indie games that have been hugely successful (braid, super meat boy, minecraft etc) all seem to use a minimal but fairly custom engine rather than a monolithic solution.

I wonder if this is partly because these engines are usually designed to offer features that are as close to stuff available in AAA games as possible meaning that they are better for producing "me too" type games rather than something unique. Whenever you start using large amounts of someone elses code inside your product you are always going to take on some limitations in terms of what that code was designed to do and which edge cases were thought out in advance.

One example of this might be in Braid where you have the ability to rewind time. I'm assuming that the game does this by keeping a list of all the previous states of the scene graph in memory and having flags set on objects which do not rewind when everything else does. In this case it is important for the programmer to try and keep the memory footprint of the scene as small as possible so that a large number of states can be kept in a machine with low memory.

If you were trying to develop this using a monolithic engine that was built under the assumption that time flows forwards and old states can be thrown away it might be such a hassle to implement this that you either throw the idea out or curtail it to the point where it affects how good the game is.

Edit: Further to this I often get the same dilemma when choosing things like web frameworks. A lot of these provide built in functionality for stuff like authentication and internationalisation. However I often find that the built in solutions to these things don't quite meet the requirements for what I'm trying to build. So the solution tends to be to not use the built in functionality and implement these things myself but then I run up against other parts of the built in functionality or third party plugins which assume that I'm using the "out of the box" solution.

This is where Java with it's Factories and Interfaces, or functional languages which allow me to pass implementation around can be very useful. On the other hand I'm not always sure it merits the extra complexity so I prefer to use loosely coupled libraries. If that means that I sometimes have to write boilerplate that converts between object types etc then so be it.

<comment><USER21> I know for a fact Unity powers some of the largest mobile releases out there, so that list is probably incomplete. I've also seen it be the default choice for 3D mobile development at at least two more top studios I've been talking to.

<comment><USER22> That list is definitely incomplete.

Kerbal Space Program is Unity-based and has been fairly successful, but appears nowhere on that page, for example.

<comment><USER20> I guess the key phrase there is "fairly successful". I'm struggling to think of a game that has been an outright hit that has been built on top of unity.

<comment><USER22> Depends on how you define successful. Unity games tend to be built by smaller teams and therefore don't need to sell millions of copies to be a financial success like big studio games do.

<comment><USER20> I mean Indie games specifically. The most successful indie games I can think of (e.g minecraft / braid) didn't use any particular monolithic engine.

What I'm wondering is whether this is simply a co-incidence or whether it's that the most successful Indie titles are ones that take big risks in terms of introducing wildly different gameplay and perhaps using a monolithic engine like Unity makes building such a game more difficult because the engine itself will be inherently opinionated.

In other words, if you make a decision on which technology to use before you have a complete game design are you in fact reducing your risk/reward without necessarily realising it?

<comment><USER23> It depends on how you formulate your risk model.

The industry titans can afford to develop "any" amount of custom tech, subject to schedule constraints, since the art and marketing budgets tend to vastly outweigh the engineering now. But in the last decade, they've tended to shy away from really ambitious tech projects, favoring incremental improvements to a general world-simulation model that applies across all the typical AAA genres. In their risk assessments, they've decided what kind of product and technology is being made early on, so that the bigger expenses aren't in danger. As well, sticking with the same toolset allows it to be further refined.

Indies, on the other hand, have a lot to gain by taking on ambitious technology and de-emphasizing the costly assets - and usually, the technology itself isn't risky, so much as it is just an "unknown engineering challenge" - something that could be a few days or a few months. Something like Braid or Minecraft can be achieved by experimenting and chipping away at the concept over a few iterations. Minecraft's earliest versions didn't have a lot the "big features" that are in the game now.

But it's also incredibly scary to take on those projects all alone, so the majority of indies aren't even going to consider it. Indies are looking for "easy" too, even if it's bad for them from a business standpoint.

I do think that engines like Unity have a lot of value and can even be extended to include some new technology. (I started working on something that builds on Unity's physics system recently - and it shows some promise to be a unique product) But the people who are taking on the unknowns just tend, statistically speaking, to be the people confident enough to write everything themselves too.</comment></comment></comment></comment></comment></comment></comment>


Device spots cancer in a single blood drop - <AUTHOR> https://www.futurity.org/cancer-blood-lab-on-a-chip-1992392/ <comment><USER2> False positive/false negative rate? Is this fully vetted or simply a POC? Theranos' reception makes me, perhaps unjustifiably, cautious regarding medical device claims that seem very positive.</comment>


Will Apple Acquire Peloton? - <AUTHOR> https://insider.fitt.co/issue-no-92-will-apple-acquire-peloton/ <comment><AUTHOR> With $193B in the coffers and a market cap approaching $2T, Apple could easily acquire Peloton. But they probably won't. Here's why.</comment>


Pixar's tightknit culture is its edge - <AUTHOR> http://www.37signals.com/svn/posts/1127-pixars-tightknit-culture-is-its-edge <comment><USER2> Good find, but as usual 37Signals don't know what they're talking about when it comes to "creatives."

Disney has had Disney University for many years (<http://thedisneyblog.com/2006/01/30/pixar_universit/>). And the results are clear: the most creative thing Disney has done in years is buy Pixar.

Pixar was _damn_ creative well before they ever started the University. They didn't start mundane and become brilliant. They started off brilliant thanks to brilliant people at the top (and middle and bottom too).

</comment><comment> patrickg-zill The thing that struck me, and also had me saying "of course" while watching the credits for Wall-E was the animation showing a timeline as it were, of different painting styles from cave wall art through to Van Gogh, pointillism, etc. It is clear that Pixar has people who have a longer perspective and deeper understanding when it comes to art.

</comment><comment><USER3> Fantastic to hear about these kinds of things. I wish more companies would "get" the idea that happy employees work better, and therefore making them happy is an investment, not a cost.

Then again, if they did that, maybe I wouldn't be so damn determined to make it independently!</comment>


X86-64 Speculative Execution Harness - <AUTHOR> https://gist.github.com/dougallj/f9ffd7e37db35ee953729491cfb71392 <comment><AUTHOR> Sourced from [https://twitter.com/ewindisch/status/948622521498251265?s=09](https://twitter.com/ewindisch/status/948622521498251265?s=09)

</comment><comment><USER2> I don't understand this code. Can you explain?

does this mean a branch can be incorrectly bypassed?

<comment><USER3> Search for Spectre, quite popular today.</comment></comment>


I Cannot Remain Silent - <AUTHOR> https://www.theatlantic.com/ideas/archive/2020/06/american-cities-are-not-battlespaces/612553/ <comment><USER2> it ought to go without saying, but just to make this explicitly clear: the author is Admiral Mike Mullen (ret), whose last position before he retired was as the seventeenth chairman of the Joint Chiefs of Staff.

He was a servicemember from 1968 to 2011, served under 9 administrations, and was appointed chair of the joint chiefs by GWB in 2007 and retained through Obama's first term.

</comment><comment><USER3> Lafayette square is such a sacred place. Right in front of the white house. It's always full of protestors, regardless of the administration.

If we can't let people peacefully protest here, then we've really lost legitimacy as a liberal democracy.

<comment><USER4> We have not been a democracy or a representative republic for a long time, at a bare minimum we would need a new amendment to overturn citizens united and move to publicly financed elections to get back to that. You can claim you're represented in this current system, I understand that need, but it's not really accurate.

<comment><USER5> My vote counts and is counted. That makes it a representative republic. Citizens United and publicly financed elections do not affect whether or not my vote counts or is counted. Of course they affect what messages me and my fellow citizens see, and they are important. But your claims would only make sense in a world where money guaranteed votes rather than merely influenced voters.

<comment><USER4> Your local representative is spending 90% of their day talking to lobbyists who pay to talk to them and doing fundraising calls with rich people.

People press the button on a machine in lots of countries, that doesn't necessarily make them a republic. The practical reality of the situation is they are spending every day NOT representing people as much as possible. This isn't an abstract thought experiment in political science definitions, this is the actual reality we are living under.

<comment><USER6> It sounds like the public need to wake up to the reality that politics are driven by money, and instead of using a voting system, we should just crowdfund sponsor our candidates and lock them into contracts.

The longer we keep our head in the sand instead of facing reality, the more delusional we get.

If we, as the public, are unwilling to actually pay our candidates the way that lobbyists are, and if we are unwilling to change the laws that allow lobbyists to continue influencing politicians in this manner, then we effectively have no representation.

</comment></comment></comment></comment></comment><comment><USER7> Genuinely curious why this story was flagged while an active discussion is taking place in the comments, which are very similar to discussions in other related stories on HN not getting flagged.

<comment><USER8> I agree. I get the wish to keep HN from being an (overly) political place, and I might agree with flagging this if it was a post on some random person's blog (even if that person is well known in tech). But this is not that. This a statement from a long serving and respected former chairman of the Joint Chiefs, someone who is _eminently_ qualified to comment. Furthermore, it is a post that speaks not to any of the details, but to the larger picture of what is going on in the United States right now.

If there was a single post about the current situation that I would nominate to be allowed here, this is undoubtedly it.

</comment></comment><comment><USER9> Why was this flagged?

</comment><comment><USER10> > This is not the time for stunts. This is the time for leadership.

Trump's comments about "dominate the battle space" really pierced my heart.

Seeing the president openly violate the first amendment right: "the right of the people peaceably to assemble, and to petition the government for a redress of grievances" made me very sad.

"that government of the people, by the people, for the people, shall not perish from the earth." \- I don't think we have a government for the people.

</comment><comment><USER11> "Our fellow citizens are not the enemy, and must never become so." Yes actually, in a riot, your fellow citizens are your enemy, and their own.

<comment><USER12> This was not a riot but a peaceful protest that was covered by multiple camera angles (including the POV or a camera that got punched by a cop/fed/whatever while they brutalized journalists). Civilian riots in the next town over do not justify police riots to enable a tyrant to walk across the street to take pictures of an upside-down bible in front of a church while that same church's pastors were tear-gassed.</comment></comment>


Hacker News Dataset Update October 2016 - <AUTHOR> http://aaron-hoffman.blogspot.com/2016/10/hacker-news-dataset-october-2016.html <comment><USER2> > Caution: That command took just over 30 hours to complete on my macbook. (it > also killed Finder a couple times and I had to disable spotlight on the > folder I was saving all the .json files to)

I had a similar job I needed to do a few months ago and used AWS lambda to massively parallelize the work.

I was able to bring down what I estimated would take my laptop 30 days down to about an hour by sharding to a ton of small instances.

Might be worth a look if you plan on updating this with any regularity.

<comment><USER3> How much did it end up costing you?

<comment><USER2> It looks like I barely went over the free tier. My lambda bill in September (when I did all this processing) was 4 cents.

</comment></comment></comment><comment><AUTHOR> I noticed the Hacker News dataset that was published to big query was now a year out of date.

I have created an updated copy and made it available for download.

(This is the last 10MM entries, I can add the rest if people are interested.)

<comment><USER4> Thanks for doing this Aaron! Something to consider for the future: if you use grab-site ([https://github.com/ludios/grab- site](https://github.com/ludios/grab-site)), which is a close cousin of ArchiveTeam's ArchiveBot, it'll retrieve all of the content from HackerNews (making the requisite http request and receiving the response for each URL, all of which is stored in WARC/CDX files), and store it in WARC/CDX files which can be uploaded to the Internet Archive. Those can then be integrated into the Wayback Machine by an IA admin at a later date. Something to keep in mind!

<comment><AUTHOR> Thanks - was not aware of grab-site, I'll check it out!

</comment></comment></comment><comment><USER5> Since the Hacker News API ([https://github.com/HackerNews/API](https://github.com/HackerNews/API)) used in this scraping is being brought up again, I'll ask a burning question: _is development of the API dead?_

From the commit notes in that repo, the only changes from the initial release _in 2014_ are "minor README updates."

<comment><USER6> Is that different from the Algolia API? I would assume there is no reason to suppport two APIs.

[https://hn.algolia.com/api](https://hn.algolia.com/api)

I've been using it for a project (collecting video lectures for [https://www.findlectures.com](https://www.findlectures.com)) and it seems to work pretty well and seems to keep up to date.

<comment><USER5> It was intended to replace the Algolia API (mentioned around discussion on the original announcement thread: [https://news.ycombinator.com/item?id=8422599](https://news.ycombinator.com/item?id=8422599))

See my comment in another thread on why this did not work.

<comment><USER6> Awesome, thanks!</comment></comment></comment></comment>


Kubernetes Is in Hospice - <AUTHOR> https://www.linkedin.com/pulse/kubernetes-hospice-ian-eyberg <comment><USER2> Yes, Kubernetes is a surefire way to shoot yourself in the foot. To be able to use it effectively, you essentially need a dedicated team that knows the ins and outs of a rather complex API as well as deep networking, Linux and distributed system knowledge.

However this article takes a bunch of pot shots at Kubernetes that I don't necessarily think are correct. First off, not everyone needs Kubernetes [0].

Second, migrating a company with as much software as Google off of Borg is not a trivial process. They even failed before by trying to create its supposed successor, Omega.

Third, the argument about "open-sourceable" is a strawman argument that doesn't make sense.

As for the attack on container security, I don't understand the argument that was necessarily made there but at this point I'm not sure it deserved a rebuttal because all software is inherently insecure.

> You are absolutely deluded, if not stupid, if you think that a worldwide > collection of software engineers who can't write operating systems or > applications without security holes, can then turn around and suddenly write > virtualization layers without security holes.

\- Theo De Raadt (NetBSD founder)

At the end of the day, yes Kubernetes is complicated but it is not for a company running 25 VPS servers. It's for companies to replace legacy, expensive datacenter virtualization they have paid a lot of money in licensing fees for.

[0] [https://blog.jessfraz.com/post/you-might-not- need-k8s/](https://blog.jessfraz.com/post/you-might-not-need-k8s/)

<comment><USER3> actually kubernetes also works for the small scale. if you have more than 1 server you either need one of the following or combine it:

\- automation \- configuration management \- scheduling \- load balancing \- provisioning

you can than either built it yourself, probably with the help of ansible/puppet,... or you can just use kubespray+k8s or any other "managed" k8s thingy.

of course if you try to manage more than 1 server you at least need some understanding of networking (but probably not that deep than you think), understanding of namepsaces or virtualisation (unless you think it's a good idea to run 1000 tools on one host without at least limit their cpu/memory/io usage) and you probably need knowledge of linux and also at least a little bit of knowing how distributed leader election might work. But no matter what, if you run more than one system you need to have somebody that is capable of that.

<comment><USER4> I like k8s but this is way too optimistic.

I regularly run long-standing 20+ instance clusters using boto, pip, and a few hundred lines of python scripts. People have been doing some version of this for ~15 years.

K8s adds a lot of conceptual overhead on top of "just write a sysadmin script". It is absolutely not necessary to have an orchestration system as soon as you're past one instance.

<comment><USER3> It depends, of Course on aws stuff is a little Bit easier, especially zero downtime deployments. But thats not the case in on premise Environments

</comment></comment></comment></comment><comment><USER5> Twitter screenshots? _" Container celebrities"_? What the hell is this?

It sounds like a bunch of people who based their technology decisions on social media buzz instead of well-defined requirements are now running into operational problems and looking for the next trend to chase.

</comment><comment><USER6> CEO of a company that makes a competitive technology uses hyperbole to express why he thinks kubernetes is bad.

...And since when is LinkedIn a blogging platform??

</comment><comment><USER7> For me, it's primarily a relatively simple way to utilize a few servers to scale test/qc deployments for applications. We're developing applications that get deployed with different configurations for differing clients. Getting that variety deployed in one-off configurations has been painful to say the least, and testing has been difficult.

Currently setting up a pilot for one smaller app to get deployed for each configuration profile to a small cluster. This will allow for better test targeting for integration tests as well as QA and Demo environments.

If it works, we may adapt the tooling for client deployments and application maintenance.

It's not a matter of being the best tool, it seems to be a good enough tool with enough weight behind it. It's not deployed publicly and we aren't sharing hosts with untrusted third parties.

</comment><comment><USER8> So, Kubernetes has bugs. The author has pointed that out. But is the fundamental architecture or concepts of Kubernetes wrong? I am not convinced by this article. All technology has bugs. I've been putting simple dockerized NodeJS servers in Kubernetes and it works great for me. That isn't the most complex use case of course, but for folks with simpler use cases (e.g., startups), I find it to be a great fit.

</comment><comment> brew-hacker To be honest... This article sounds like someone who has lost a bet on Kubernetes and is trying to just flame the technology. If the technology is truly doomed then I would accept that. Unfortunately, I would have to disagree on all accounts... Kubernetes allows folks to actually not have to worry about developing their own scheduler and abstractions that would be necessary anyways to incorporate distributed systems in their own environments. Now if there were problems around security or bugs in Kubernetes proper -- I would absolutely advise you to be the engineer that you are and contribute back! Instead of trolling Kubernetes I would recommend solving the problems that others can actually benefit from.

</comment><comment><USER9> > Google's "containers" are most definitely not "docker containers".

erm what now?

<comment><USER10> They're using the same underlying kernel features like namespaces and cgroups, but the docker spec is a very particular choice for how to specify a container, and Google was doing containerization long before docker existed, so they are undoubtedly not using the exact same formulation of containers in borg

<comment><USER9> When you use GKE the containers are CoreOS by default, hence my confusion

</comment></comment></comment><comment><USER11> you rarely need to build your own container and that's the only reason you might need kubernetes.

otherwise all the cloud platforms offer simpke robust reliable auto- containerization for you. aws elastic beanstalk is one example. openshuft will even do ut for you using kubernetes under the covers. pivotal cloud foundry has their own non-kubernetes non-docker approach and it works great.</comment>


Updating a 50 terabyte PostgreSQL database - <AUTHOR> https://medium.com/adyen/updating-a-50-terabyte-postgresql-database-f64384b799e7 <comment><USER2> Hi, I wrote the post and am happy to answer a few questions.

<comment><USER3> Did you try fuzzing the process to see how stable it really is? I.e. did you try flipping a bit in your 54TB and see when you catch it?

<comment><USER2> No, we didn't have any reasons to doubt the copy process of the storage hardware. We've been using the same process to make daily snapshots/clones without a problem for over a year.</comment></comment></comment>


Strawberry picking robot - <AUTHOR> http://www.adafruit.com/blog/2010/12/01/strawberry-picking-robot/ <comment><USER2> Blogspam. The original article appears to be: <http://www.diginfo.tv/2010/11/30/10-0251-f-en.php></comment>


Missing Person, Luke Arduini: Yahoo Programmer. Please help find him. - <AUTHOR> http://findluk.com/

<comment><USER2> Shame there's no way to sticky posts during emergencies.</comment>


Don't build an app, build a business - alex-warren http://alexwarren.co.uk/2013/07/11/dont-build-an-app-build-a-business/ <comment><AUTHOR> Okay I'm making it a point to no longer click on titles that are simply commands. It's kind of getting ridiculous now.

</comment><comment><USER2> The article (and it's associated links) simply keep restating the fact that app sales, like most things in and out of this category are a power law distribution. If you want to get into the top of the curve, you need exponentially greater quality / marketing.

Was there ever a time, even in the early days of the store, when making a shitty app would automatically bring in primary income?

<comment><USER3> Yes, in the early days, apps like fart soundboards and flashlights were making people significant chunks of money.

As the competition has increased, you either find dozens of clones of the low quality apps, or one or two competitors that have taken most of the market.

</comment></comment><comment><USER4> The core concept of this article is solid - build something useful. That's how I'm getting triple digit year on year growth & traction with my app, [http://www.getcampusmaps.com](http://www.getcampusmaps.com) . Students find the app easier to use than going to the visitors center and getting a paper map, and so it provides real value to them.

I disagree that the app store gold rush is completely over however - I entered a crowded space with established competitors (including each school's own app, Google Maps, Apple Maps, GuideBook, Blackboard, and many more, and am still able to carve out a solid niche for myself.

The trick is in not only providing value with the app, but having a scalable marketing strategy. Treat it like any other product you want to sell, don't ride the Appstore-luck wave.

<comment><USER5> Your app appears free though? Growth and traction of free apps and growth and traction of paid apps aren't really comparable unless you have a plan to convert. Care to share?

<comment><USER4> Point well taken.

I've been hesitant on monetizing because of that very same growth I'm seeing. In about 6 weeks I expect to peak in the top 10 US Navigation app for about 3 days (new school year).

I've been debating ads + freemium "ads free mode", but I feel that at this point I'm getting more value out of establishing a user base. My real issue is that I don't have a GOOD scalable monetization option in mind.

Negotiating local deals takes way too long with too much turnover. I'd be interested in offering school apparel deals though. That seems scalable with the right vendor.

e: I am currently split testing one campus @ 99 cents in a separate app to test how that's received.

<comment><USER6> Integrate with facebook, map dorm rooms to students. Give to girls for free, and charge the men. Works for pubs.

<comment><USER7> Congratulations. That might be the creepiest suggestion I've ever heard on HN.

<comment><USER8> Just to add to this. This isn't creepy because its illegal or provides something that was impossible before---actually dorm address information at my uni was available online to students. It comes off as creepy because of the way it is setup: charging men for access to women.

It basically circumvents all of our accepted social protocol without any rationale beyond personal profit.

</comment></comment></comment></comment></comment></comment><comment><USER9> DNR

Don't build a business, create something good.</comment>


Hasbro offers free merchandise to blogger, sends lawyers instead. - <AUTHOR> http://www.crikey.com.au/2012/04/24/nerf-guns-at-10-paces-hasbro-faces-boycott-after-siccing-lawyers-onto-fan-site/?wpmp_tp=1

<comment><USER2> PR managers rulebook:

1) Don't let your legal department harass your fans. Your lawyers decided what they _can_ do legally. _You_ decide what they _should_ do in service of your business goals.

2..n) All of the other rules are just rule 1 again, but with recursive and geometrically increasing internet mocking added on each time you break it again.

<comment><USER3> > your legal department

It wasn't Hasbro's legal but an outside firm. Legal firms make money by taking actions (eg writing letters) and billing hours of "work" they have done. It is in their interest to do as much of these as possible.

I have also been threatened in the same way by lawyers working for LG. Instead of just asking me where I got the "confidential" information I posted (it was posted to usenet and some websites) they came down on me and delivered stuff to my employer claiming that me and "my accomplices at a carrier" had stolen it.

I pointed out to the lawyer that he was an unpleasant person, I would have told him or anyone else who asked where the information come from (but not provide training on how to use google) and that shooting first and then asking questions was a stupid way of operating. I was threatened with lawsuits etc, so I told him to go ahead and also to make sure that LG knew he was being an idiot on their behalf. More blustering and threats.

Then I get a call from LG with the lawyer on the line where the LG person was actually pretty decent and it was obvious they had no idea what the lawyer was doing. I told them that if they apologised then I'd happily tell them exactly what I would have told them if they had just asked nicely in the first place and delete the information (which of course could still be readily found all over using Google).

So they said they would and I kept up my end of the deal. They then proceeded to not actually apologise.

(I ran an extremely popular site for a particular LG cell phone helping many fans. The "confidential" information was what the changes were in each firmware update. It was rather boring stuff but there were fairly frequent updates so naturally people wanted to know what the changes were each time.)

TLDR: So I have learned my lesson. Lawyers are worthless scum and you should never believe a word they say. You cannot expect them to behave within the bounds of human decency. And they get to bill someone for every hour they act like pricks.

<comment><USER2> I learned that myself when I was contacted by a trademark attorney about a potential violation of a trademark of a company that we were friends and partners with. I called the company directly, got the CEO on the line and asked WTF. He didn't even remember the law firm. They had used it to file a trademark years earlier.

The law firm filed with ICANN and took a domain name that we had that I had freely offered to our partners whenever they were ready to use it. I tried to transfer the domain to the partner but the lawyer had already taken it, and held it hostage for the payment of the legal bill! They still have it.

You have to be very clear with lawyers where their work ends or they'll make- work you to get a few more hours and make you look like an ass in the process.

</comment></comment></comment><comment><USER4> Reading the communication makes me feel sad for the poor guy. He believes he is talking to people which feel responsible for their actions or the corporation they work for. He scrambles to produce a complete picture and tries to argue that the company is losing money through the process. All his mails will just drown in a corporate maze of diffused responsibility and mis- communication. It's really just a huge real-life reenactment of Brazil.

<comment><USER2> Large companies should have a dedicated department that has the sole purpose of not making the company look like an ass. Any action like this would have to be cleared by the "department of not making us look like asses" before it can be undertaken.

Someone, somewhere in the company has got to have the ability to say, "wait, no, that would make us look like giant asses."

Also any employee who began to feel that what he/she was doing was becoming slightly more posterior than anterior could defer to the Dept of NMULLA.

<comment><USER5> That department is called PR. The problem is that they can be rendered dysfunctional by the same forces as can any department.

<comment><USER2> The problem with this is that most of the time PR is "the guys that make the ads and spin the bad news to the press". A kind of side-entity that has narrow scope.

They are not in the critical path when asshattery flows out of legal, through management, and spills into the public space.

<comment><USER5> I agree completely. In this case the force that has rendered them dysfunctional is called "being sidelined by senior management".

</comment></comment></comment></comment></comment><comment><USER6> Simpsons already did it ...

      Wiggum: I mailed these bogus prize certificates to every scofflaw in
              Springfield. When they show up for their free motor boats we arrest
              them and beat them to the full extent of the law.
       Eddie: So the hook is baited.
         Lou: Nice metaphore Eddie!
      Wiggum: Yeah, good work, Eddie!

<http://www.snpp.com/episodes/5F05>

<comment><USER7> Not really an appropriate comment for HN. This isn't reddit.

<comment><USER8> I disagree on the first point. I do love a good Simpson's reference.

<comment><USER9> And I love my cats, but I hope you'll agree that cat photos are not germane. I have many interests outside the scope of this site, and I'm sure you do too. That doesn't mean we should try and drag this site toward the lowest common denominator. Different sites _should_ be different. More homogeneity is not what the Internet needs.

</comment></comment></comment></comment><comment><USER10> This could go down as a lesson in the first chapter of bad internet P.R. 101.

I can't understand how Hasbro or their legal firm could get it so wrong. If their legal firm is to blame for this, they should be fired on the spot.

<comment><USER11> > I can't understand how Hasbro or their legal firm could get it so wrong.

I take it you haven't experienced the innards of a huge company before.

This is the classic stink of a broken management onion. Maybe I'm jaded but I don't find this kind of corporate bullshit surprising anymore.

</comment></comment><comment><USER12> Reminds me of what Valve did to Axel Gembe.

[http://www.eurogamer.net/articles/2011-02-21-the-boy-who- sto...](http://www.eurogamer.net/articles/2011-02-21-the-boy-who-stole-half- life-2-article)

Basically, Gembe hacked in to Valve's servers and obtained Half Life 2's source code. Roughly half a year later, after Valve had given up on the case, Gembe admitted to it later in an e-mail to Valve. After quizzing him on the attack vectors used, Valve conducted a phone interview, then wanted an in- person interview, stating they wanted to offer him a job. The latter would be in Seattle, where they actually planned to arrest him.

</comment><comment><USER13> 30 seconds in I got a big "give me your email address" popup blocking the story...makes it difficult to read.

<comment><AUTHOR> I barely notice those anymore. Something pops up, I hit ESC and it's gone.

I don't know who they're targeting with those things though. Do they really think that a lot of people will come to a site for the first time, then decide to hand over their email/sign up/whatever after a grand total of five seconds on the page?

Have there been any studies done on this?

<comment><USER14> Yes, their A/B testing likely shows it's effective over not showing a popup for harvesting email addresses.

<comment><USER15> I'd be surprised if they actually A/B tested it. Either way, the popup probably did increase the number of email address they got. However, this came at what cost to the bounce rate?

</comment></comment></comment></comment><comment><USER16> So glad the internet gives people a fighting chance at stopping this kind of bullying.

</comment><comment><USER17> > Aloysius T. Dudefella

Is this a reference that we're supposed to be familiar with, or is it for an Australian audience, or for Nerf fans?

<comment><USER18> A 2 second Google search reveals that he is indeed Australian, and seems to participate in Nerf related "tag" games. So a little of both, would be the answer.

<comment><USER19> That is an excellent name regardless. I thought it was made up until I tried searching for it.

</comment></comment></comment><comment><USER20> You think that's bad? Willie Wonka sent Slugworth after those Golden Ticket winners...</comment>


Building scientific experiments with F# by Anton Tcholakov [video] - <AUTHOR> https://skillsmatter.com/skillscasts/7733-building-scientific-experiments-with-f-sharp <comment><AUTHOR> you can get around the login wall with [http://bugmenot.com/](http://bugmenot.com/)</comment>


Executable code snippets in Bing - <AUTHOR> http://techcrunch.com/2016/04/07/microsoft-and-hackerrank-bring-executable-code-snippets-to-bings-search-results-pages/ <comment><USER2> This uses Monaco, the code editor behind Visual Studio Code ([https://code.visualstudio.com](https://code.visualstudio.com)) and Typescript Playground ([https://www.typescriptlang.org/play](https://www.typescriptlang.org/play)). I've spent time with ACE, CodeMirror, and Visual Studio Code, and Monaco puts everything else to shame. Hopefully soon they will provide better documentation of how to use Monaco in your own projects, there's an issue for it: [https://github.com/Microsoft/vscode/issues/446](https://github.com/Microsoft/vscode/issues/446)

<comment><USER3> Could you elaborate a little? In what way(s) is Monaco superior?

In my view, CodeMirror is pretty decent, and it seems to me that not much can be improved upon it. But I haven't had the chance to compare it to anything else.

</comment></comment><comment><USER4> Early adopters are HN readers, this is very smart from Bing - maybe we will see the same soon in DuckDuckGo?

Why is it smart? Every major internet service is driven by it's early adopters. Every major service is built and designed by people like us, hacker news readers, techies, early adopters. But of course, not all services, especially those who want to be massive are targeted to early adopters anymore - they wrongly target the masses. To attract people to use your service, you have to have the early adopters first, they have to attract us first and _then_ target the masses. Thus, we are seeing Bing take a page from DuckDuckGo in tailoring some parts of its service towards techies. It's a clever move.

<comment><USER5> I've seen this mentioned in things like The Lean Startup, but never as the focus. Do you know any books/studies/similar about targeting early adopters?

</comment></comment><comment><USER6> _" HackerRank co-founder Vivek Ravisankar tells me the project currently features over 80 code snippets that focus on the most commonly searched terms. Microsoft is positioning this as both a productivity and learning tool."_

Good startup idea could be found in this audience. Solve the coding problems through searching for code. Just do it better than bing. [0]

[0] _" The way to win here is to build the search engine all the hackers use. A search engine whose users consisted of the top 10,000 hackers and no one else would be in a very powerful position despite its small size, just as Google was when it was that search engine."_ ~ [http://paulgraham.com/ambitious.html](http://paulgraham.com/ambitious.html)

</comment><comment><USER7> No code returned. :(

[https://www.bing.com/search?q=solution+to+halting+problem](https://www.bing.com/search?q=solution+to+halting+problem)

<comment><USER8> its because you didn't search for a specific language.

</comment></comment><comment> squeaky-clean Pretty cool when it appears. You can edit it, and the examples are written in a way that the output helps explain the flow (like showing the pivot and array state in each pass of a quicksort). I'm surprised it doesn't support Javascript though, since it's now so popular.

It also doesn't seem to support anything advanced or synonyms for terms. I can search for "Reverse array python" but not "Reverse list python" (technically a list is the proper name, and array is a different construct in Python), and anything more advanced than sorting algorithms or simple features don't appear. I tried a few pathfinding algorithms, fibonacci sequence, prime numbers.... And I tried several variations of search terms. "Pathfinding in Pyhton" / "Graph Search in Python" / "Djikstra's algorithm in Python", nothing. I don't think it will be very useful because of this.

<comment><USER9> I worked on this project. We're building up the list of samples of additional programs/queries, so the number of queries you should see the editor for will expand in the coming days.

<comment><USER10> Any plans to add Javascript as a language?

<comment><USER9> Yes, it will be enabled as part of the next update.

</comment></comment></comment></comment><comment><USER11> DuckDuckGo implemented something similar a few weeks ago:

[http://duckduckhack.com/](http://duckduckhack.com/)

This is probably Microsoft's response.

<comment><USER12> Well, I doubt they could throw something this slick together in a copule of weeks! Also, that DuckDuckHack looks to be something very different. I couldn't find anywhere that allows you to sandbox code on it. Seems to need to upload to a github repo first? What actually does it intend to be?

<comment><USER13> DuckDuckHack is the public contribution part of DuckDuckGo. Most of our Instant Answers are created by developers submitting code to repos on GitHub which we then review and publish. Many of these are programming-related but a bit different to what Bing has announced.

</comment></comment></comment><comment><USER14> Running this is amusing:

      import os
      print '\n'.join(os.listdir('/'))

Personally, I'm partial to running IPython under Sandstorm for this kind of thing. (Also, if I were to _host_ it, I'd be very nervous about any technique not involving equal or greater paranoia.)

<comment><USER9> A little more about the OS environment this is running in: [https://www.hackerrank.com/environment](https://www.hackerrank.com/environment)

<comment> nv-vn Ibterwsting. Is there a specific reason that Erlang's given so much more time and memory than Elixir?

</comment></comment></comment><comment><USER15> Wow. Finally an actually decent bing feature. I hope this spurs google to improve their support for non alphanumeric characters.

</comment><comment><USER16> Doesn't work here. None of the given examples triggered the feature.

<comment><USER17> So, yes. It is only enabled for the US market at the moment.

However, it's quite easy to see the result if you add `&market=en-US` to the end of the query.

Example: [https://www.bing.com/search?q=quicksort+java&market=en- US](https://www.bing.com/search?q=quicksort+java&market=en-US)

[Disclaimer: Dev at HackerRank. Not affiliated with this product, though]

<comment><USER18> Can't find anything for "leftpad" :(

<comment><USER17> Damn! That's a nice idea :D Forwarding it to the relevant team.

</comment></comment></comment></comment><comment><USER19> I think it's weird to see Bing introducing new features first.

<comment><USER20> It's one of the first times in a long time that Bing has partnered with another company. HackerRank for the win!

</comment></comment><comment><USER21> Microsoft is really aiming for the dev market lately.

</comment><comment><USER22> Google used to have code search but killed it.

<comment><USER23> They also killed being able to search for symbols. That still bugs me.

<comment><USER24> And they ruined Maps. It's like Google doesn't want to be in the search business any more. No growth potential to deliver "maximum shareholder value" and bonuses for the MBAs.

<comment><USER25> I've been saying that Google Maps has gotten worse for a while now, and many people just say that other maps have gotten better instead. But I don't think that's true. I really do think that Google Maps has gotten substantially worse.

For one, it's super slow. I've switched to Bing Maps when I need to get an address quick on the desktop, because it's much faster. Google Maps has tons of lag when I'm sliding around the map on every browser and every major OS.

Secondly, the "natural language" features of searching has taken a major step back. I used to be able to say "[my town] mcdonalds to [neighboring town] chase bank" and as long as the map view was over my town, it knew what I meant. I just tried it now, map hovering over my town and McDonald's clearly shown on the screen, and it asks me which McDonald's I want, all of them from a city with the same name but in another state. It's like it doesn't know where it is, anymore. You have to get super specific in writing your search because it won't just assume you're talking about the McDonald's displayed on the screen anymore.

To be fair, I stopped using a lot of Google services when I used to have a Windows Phone and Google decided that anyone using a Windows Phone was inherently inferior and weren't allowed to use their services[1][2] but even now when I try to switch back, everything seems worse. Apple Maps is a better mobile experience, Bing Maps is a better desktop experience, and Outlook handles multiple email accounts much better than Gmail does. Bing search is just as good as Google in my experience, but they pay me to use it (Bing Rewards).

I'm honestly not sure what happened. Google used to be cool.

[1] [http://mashable.com/2013/01/05/google-maps-windows- phone/#qY...](http://mashable.com/2013/01/05/google-maps-windows- phone/#qY0X8y7SJuqG)

[2] [http://betanews.com/2013/08/15/google-once-again-blocks- yout...](http://betanews.com/2013/08/15/google-once-again-blocks-youtube-app- for-windows-phone/)

<comment><USER26> google is doing the opposite of "don't be evil", they are not likable any more

</comment></comment></comment></comment></comment><comment><USER27> I can see this being abused for phone screen technical interviews :) but I do search for code snippets when I'm learning something new so this is great.

<comment><USER28> theres already stack overflow for that.

</comment></comment><comment><USER29> Not only you get the result code, but you can edit the code and run it. Nice!!!

</comment><comment><USER30> The sandboxing is interesting ... Each process is running in a directory on the same server.

Also there's some files that are visible that probably shouldn't be, including one named "codechecker-android-release-key.keystore"...

For the curious, try running the code block. You can uncomment/commment things out to see different results as there's a cap on the amount of stdout printed.

        import java.net.URLClassLoader;
        import java.io.*;
        import java.net.*;

        class  Solution
        {
        	private static void printFile(String path) throws Exception {
        		System.out.println("File: " + path);
        		InputStream in = new FileInputStream(path);
        		byte buf[] = new byte[1024];
        		int len;
        		while( (len = in.read(buf)) > 0 ) {
        			System.out.write(buf, 0, len);
        		}
        		System.out.flush();
        	}

        	final protected static char[] hexArray = "0123456789ABCDEF".toCharArray();
        	private static String bytesToHex(byte[] bytes) {
        	    char[] hexChars = new char[bytes.length * 2];
        	    for ( int j = 0; j < bytes.length; j++ ) {
        	        int v = bytes[j] & 0xFF;
        	        hexChars[j * 2] = hexArray[v >>> 4];
        	        hexChars[j * 2 + 1] = hexArray[v & 0x0F];
        	    }
        	    return new String(hexChars);
        	}

            private static void printFileHex(String path) throws Exception {
        		System.out.println("File: " + path);
        		InputStream in = new FileInputStream(path);
        		ByteArrayOutputStream out = new ByteArrayOutputStream();
        		byte buf[] = new byte[1024];
        		int len;
        		while( (len = in.read(buf)) > 0 ) {
        			out.write(buf, 0, len);
        		}
        		byte bytes[] = out.toByteArray();
        		System.out.println(bytesToHex(bytes));
        		System.out.flush();
        	}

        	public static void main (String[] args) throws Exception
        	{
        		Class<?> clazz = Class.forName("java.lang.ClassLoader");
        		URLClassLoader cl =
        		  (URLClassLoader) Thread.currentThread().getContextClassLoader();
        	    System.out.println("Classpath:");
        		for(java.net.URL url : cl.getURLs()) {
        			System.out.println("" + url);
        		}
        		File local = new File("");
        		System.out.println("Local path: " + local.getAbsolutePath());

        		System.out.println("Files:");
        		File root = new File("/");
        		String list[] = root.list();
        		System.out.println("# root files: " + list.length);

        		//printFile("/etc/passwd");
        		printFileHex("/etc/codechecker-android-release-key.keystore");

        		System.out.println("# root files: " + list.length);
        		for(String base : new String[]{ "/etc", "/bin", "/sbin", "/usr"}) {
        		  for(String name : new File(base).list()) {
        		     System.out.println(base + "/" + name);
        		  }
        		}
        	}
        }

<comment><USER9> You can read more about the environment here: [https://www.hackerrank.com/environment](https://www.hackerrank.com/environment)

We have a cluster of codechecker servers of the above type, which share the load of incoming queries. On each, sandboxing is via a chroot-based system. Programs get a fixed amount of memory/time.

Re: the codechecker keyfile - we're looking into this, as I'm not an android expert - but quick searching tells me this is used to sign apks. Our codechecker supports android builds, so that's probably what this is used for. This key is not used to sign anything official (like throwaway id_rsa you create when needed). Again, I'm not the expert on this and I'll add a confirmation here shortly.

That said, if anyone finds something a vulnerability/way out of the sandbox, please shoot me a mail (anil @ hackerrank) if you'd like to do a private disclosure.

<comment><USER31> You might harden policy files for Java process to prevent usage of Runtime. Not sure about any attack vectors, but I can execute linux commands. Also interesting that you allowed threads.

import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; class Solution {

        public static void main(String[] args) throws IOException, InterruptedException {
            final Runtime rt = Runtime.getRuntime();
            final Process pr = rt.exec("uname -a");
            new Thread(new Runnable() {
                public void run() {
                    BufferedReader input = new BufferedReader(new InputStreamReader(pr.getInputStream()));
                    String line = null;

                    try {
                        while ((line = input.readLine()) != null)
                            System.out.println(line);
                    } catch (IOException e) {
                        e.printStackTrace();
                    }
                }
            }).start();

            pr.waitFor();
        }

    }

<comment><USER9> * Running commands is fine -- infact bash is a programming language we support. As long as you cannot get out of the sandbox.

* Threads are allowed by the environment.

</comment></comment></comment></comment><comment><USER32> Given that so many vertical features can be integrated in a search engine, this seems very odd choice.

</comment><comment><USER33> This is amazing. You should do similar engagement with Google search also!

</comment><comment><USER34> Oh man, that is REALLY cool. I may actually have to use Bing now.

</comment><comment><USER35> Cool to see it in Bing. Hope Google follows suit soon.

</comment><comment><USER36> Not to be flippant, but.. I assumed most coders use Google / DuckDuckGo. I seem to remember reading that even coming from Microsoft offices, engineers prefer Google to Bing. Does that make this simply a PR move?

<comment><USER37> You're right - Bing shouldn't bother improving it's product for potential new users because people prefer to use other products which don't have these features...

<comment><USER38> And certainly nobody would ever change search engines.</comment></comment></comment>


Married co-founders are a startup's secret weapon - <AUTHOR> https://techcrunch.com/2020/02/14/married-co-founders-are-a-startups-secret-weapon/ <comment><USER2> Meh. It's frustrating to see this presented as generalized advice.

In my experience, startups, when you're truly dedicated, don't leave much time for other things in your life.

If you have a partner who's willing to join you in that experience, or to support you (often at the expense of their own emotional needs), that's cool, but every couple's experience will be unique.

</comment><comment><USER3> A recent post here had a good example of this dynamic[1].

[1] [https://blogs.scientificamerican.com/voices/betty-shannon- un...](https://blogs.scientificamerican.com/voices/betty-shannon-unsung- mathematical-genius/)

</comment><comment><USER4> The secret behind WeWork's success?

</comment><comment><USER5> My outside perception of marriage in US is that there is little stigma against divorce, it's almost expected in certain situations (such as one partner is unfaithful). If I was an investor I would not invest in such a startup.

</comment><comment><USER6> The only time I ever saw this it was a dumpster fire. Don't mix family, friends and business. Sure you can get lucky but if you don't get lucky, which you most likely won't, you are screwed.

<comment><USER7> Yeah when you come to resent your cofounder because they aren't pulling their weight... it's rough.</comment></comment>