At 31, I have just weeks to live. Here's what I want to pass on - <AUTHOR> https://www.theguardian.com/commentisfree/2020/sep/07/terminal-cancer-live-cancer-life-death <comment><USER2> My wife passed this year from cancer. Looking back we had no idea how close we were to the end, and in the last few weeks her beautiful mind was influenced by the disease. I'm sure someone on HN is going through this at least adjacently and my recommendation is to not wait to the end to have important conversations. For those that aren't going through this now, maybe for a little while live life like you are...it might inform your priorities and perspective.

My 17 year old daughter was already dealing with a life-altering chronic disease and losing her mom plus all of this pandemic bullshit has really made a mess. She broke down crying last night struggling over the idea of death and that everything seems to be pitted against her. It's hard to know exactly what to say in those moments, maybe some of these words from a person at the doorstep will help her.

For what it's worth we do have her seeing both a counselor and a psychiatrist but that only goes so far...at the end of the day it's you and your thoughts staring at the ceiling while you're trying to get to sleep for the 5am shift tomorrow.

<comment><USER3> > Looking back we had no idea how close we were to the end

This rings very true for me.

My dad died of brain cancer going on five years ago now.

He was diagnosed in 2014. They were clear the prognosis was not good. One or two years at best.

They removed the tumor as soon as they found it, and he returned basically to normal. There was a weird settling in of what it all meant and treatments that were meant to stall things a while.

But since the tumor was small, he was able to function and be basically his old self.

We had our first daughter in the fall of 2015. He was there to meet her. Everything felt like it was looking up.

Three weeks later, on my first day back to work, I got a call at 10:30. "The cancer is back." I took the day off.

At Christmas, he was definitely starting to act goofy and be more forgetful. We'd have to distract him so he didn't try to go plow the driveway or do things like that.

It became a question of "do we go up every weekend, or can we take this weekend off?"

And then at the beginning of February things started getting really bad and my mom moved him into a nursing home in town. That lasted for a little less than a week I think. Then it was clear this was the end.

So we came up in the middle of the week. Sat by his bedside for hours on end. Held his hand.

My dad had two things he'd always say about dying:

1\. When someone comes to die, they need someone to hold their hand.

2\. People need permission to die. Otherwise they will hang on way longer than they otherwise would.

So I held his hand for a couple days. And then on maybe the third evening, it became pretty clear he was deteriorating.

So I leaned over, kissed him on the head, told him that he'd done a great job raising me and my brother, and that it was okay and we'd be here till the end.

And then we watched him die. I think it was about 4am when he finally passed.

I never remember what day it was, but I do remember that Lent had just started and he died the morning of Transfiguration Sunday. Which the internet tells me was Feb 7, 2016.

There's a Deathcab for Cutie song, "Love is watching someone die." It's the truth. You have to love someone a lot to be there through that.

Anyway, to come back around, it all just went so much faster than you think it would. Especially towards the end.

It took a little over a month for "Dad's acting funny again" to turn into "Dad died last night".

<comment><USER4> > It took a little over a month for "Dad's acting funny again" to turn into > "Dad died last night".

I lost my mother from lung cancer so I can relate.

My dad on the other hand died without notice. I got a message on my phone one day when I was at work. It was a cop from my father's town. They didn't tell me why they were calling, but I knew something happened to my father because he was living on the edge. I took the day off and went home to call them back. He died a few days before at his home.

He was too young to die, but I think it was the best possible death, for him and for us. We didn't have a chance to "say good bye", but it doesn't really matter in the end.

The worst part of dying is anticipating death. I wish I could die accidentally.

<comment><USER2> I agree. I got a similar call that my dad was killed at work when I was in my early 20s. Due to the circumstances I'm not convinced it wasn't intentional on his part, and in some odd ways I get a bit of relief from that. It was devastating to me, but watching my wife and the mother of my children go through a tortuous 26 months of treatments, unrelenting pain, cycles of hope and despair, various indignities and ultimately passing in a confused state was orders of magnitude worse.

<comment><USER5> Similarly, the despair and agony is really what hit me most. Last autumn, my father began experiencing occasional cramps in one leg after a regular 75k bike ride. During the following month, the pain gradually spread throughout his body and increased in frequency, seemingly for no apparent reason, based on medical tests and scans. He slowly stopped eating as his body was being consumed day and night: he lost healthy weight at a rate of one pound per day. As muscle weakness spread and as he lost his faculty to walk, he grew steadily delirious with pain and lack of sleep. By the 1st of December, he was in hospital full time undergoing a barrage of tests to no avail; a diagnosis of ALS was given mid-month. During the following week, he spoke his last words. In the throes of his body collapsing, he would tear out IV and catheter. At the rate at which his situation was deteriorating, feeding tube and intubation coupled with restraints appeared cruel. He passed before the end of the year.

</comment></comment></comment></comment></comment><comment><USER6> The nicest bit for me was where he talked about growing old being a privilege and not to lament every grey hair and wrinkle. Puts it in perspective.

<comment><USER7> As I often say, "Growing old sucks, but it is better than the alternative."*

*I can't take credit. I got it from someone else, but I don't remember who.

<comment><USER8> Thing is, we don't quite know about the alternative. The undiscovered country from whose bourn no traveller returns and all that.

<comment><USER9> Act 3 Scene 1 of Hamlet, by William Shakespeare: [https://www.sparknotes.c](https://www.sparknotes.c)

</comment></comment></comment></comment><comment><USER10> "But everybody dies, and there will always be places and experiences missing from anyone's life – the world has too much beauty and adventure for one person to see."

Damn gut punch...

<comment><USER11> I remember precisely when I had this particular epiphany. I was 12 years old, in love with books, and thanks to my parents who had signed a form, I had just gotten my first library card for the real (read: non-kiddie) section of the public library. Awed by the sheer number of tall bookshelves, intoxicated by the library smell and my newfound source of knowledge, I asked the librarian how many books they had, she said more than 100,000. I was duly impressed. But then I started thinking, and did some arithmetic on a piece of scrap paper.

And I realized that even if I read one book a day for the rest of my life, I would only be able to read a fraction of all the books on the shelves. Right there in the same room with me was provably unattainable knowledge. I could decide to read any book, but I could not read all of them. If I decided to read this book, then that other book would remain forever unread. Years before I would be able to put the words on it, I had stumbled upon a kind of incompleteness theorem, and I started to understand how small one's life actually is. This thought never left me.

<comment><USER12> I felt like this but towards reading all of wikipedia.

</comment></comment></comment><comment><USER13> "Meditating on death" and "premeditation of future ills" is a big theme in Stoicism (and the broader 'Hellenistic Philosophy'). Seneca's letters have many different exhortations on "preparing for death". Some choice quotes:

• "Many people grasp and hold on to life, like those caught by a flash flood who grasp at weeds and brambles. Most are tossed about between the fear of death and the torments of life: they do not want to live but do not know how to die. Cast off your solicitude for life, then, and in doing so make life enjoyable for yourself. No good thing benefits us while we have it unless we are mentally prepared for the loss of it." — Seneca

• "Epicurus says 'It is a fine thing to learn death thoroughly.' Perhaps you think it is a waste of time to learn something you will need to use only once. But that is the very reason we ought to rehearse: if we cannot test whether we know it, we should be learning it always." — Seneca riffing on Epicurus (not to be confused with _Epictetus_ , a Stoic; he even has a discourse titled "Against Epicurus")

• "As the water clock does not empty out its last drop only but also whatever dripped through it before, so our last hour of existence is not the only time we die but just the only time we finish dying. Death is not one event; the death that takes us is our last." — Seneca

• "Years are not given out by quota. There's no way to know the point where death lies waiting for you, you must wait for death at every point." — Seneca

• "Let death be before your eyes every day, and you will never have a base thought or an excessive desire." — Marcus Aurelius

• "The torment we feel comes about through our own agency, because we become alarmed when we believe that death is close at hand. But isn't it close to everyone, ready in place and every moment?" — Seneca

• "Think about arranging the present as best as you can, with serene mind. All else is carried away as by a river." — Horace

                     •••

Sources for quotations: Seneca's _' Letters on Ethics'_ (full set of letters, excellently translated by Graver and Long); the others are from _' What is Ancient Philosophy?'_ by Pierre Hadot.

</comment><comment><USER14> "Mostly it is loss which teaches us about the worth of things."

\-- Arthur Schopenhauer

<comment><USER15> So if I never loose my money it is worthless! Ha!

Sorry, no. It is our attachment to things that determine their worth.

<comment><USER16> Technically money that is never spent (lost) is kind of worthless tho

<comment><USER17> When people get philosophical about this, they are generally trying to avoid materialism and thus not thinking in the terms I am about to use, but I wonder how investment fits in with that attitude.

From one perspective your money can sit idle in a brokerage account, from another it is put to use by someone else.

You could take out capital gains and dividends, and spend them, leaving your starting balance the same. That starting balance could continue making you money.

In other words there are ways to imagine money never spent, sitting in an account, that isn't worthless.

</comment></comment></comment></comment><comment><USER18> Having just turned 31 this hits home. I appreciate the positivity he could find in the twilight of his days. I can't help but feel I may lack the courage to face death the same way. His focus on gratitude really does seem to match what I understand to be the best way to find joy in the often bleak life we find ourselves in. There is almost always someone or something to appreciate in our lives.

</comment><comment><USER19> My great fear is not dying but leaving the people behind who depend on me.

I mean as the only earning member of my family the scariest post part about dying is what will happen to family.

I don't have a big life insurance and not a lot of savings. So it gives me chills that my wife and daughter will have to fend for themselves or live a lesser life should I cease to exist suddenly one day.

<comment><USER20> Get some term life insurance. It is usually very inexpensive.

</comment></comment><comment><USER21> rawls' social utility theory stated that by maximizing the welfare of the worst-off person, you improve all of society; at the time i learned it it seemed like a strange idea.

but then i thought: every moment in your life can be valued according to how much life you have ahead of it. the present moment is the most valuable; and the very last moment, the least -- you have nothing ahead of it. i thought: if you live your life such that the last moment, which is the least valuable in that sense, is as good as possible -- perhaps that would improve the totality of the rest of your life.

this has all been covered by the buddhist concepts on this thread but i thought it was interesting that we can come to this same idea somewhat independently. (maybe rawls was inspired by buddhism? i don't know.)

<comment><USER22> That "live today as though it's your last" was too dark for me. Fatalistic or something. To get out of my rut, I needed something forward facing, optimistic.

I eventually settled on "live every day as if it's your first." More of "new mind" mentality. I needed something that emphasized awe, joy, wonder, discovery. Vs the addict's group therapy cliche "today is the first day of the rest of your life."

FWIW, my first brush with death was 34 years ago. Having done the bereavement cycle a few too many times kinda moots the exercise. Needs to be done. But it's just a stepping stone.

</comment></comment><comment><USER23> Lots of things matter but nothing matters without relationships.

<comment><USER24> I think you're right - according to category theory, only relationships of the objects matter, not the objects themselves.

<comment><USER25> I wonder if you're joking or not.

<comment><USER26> It's actually somewhat profound and fitting if you read it without cynicism.

<comment><USER25> It's not the idea itself which seems to me absurd, it's the process - let's take something from abstract mathematical field and apply it on a vaguely "topologically" similar subjective experience and think that "it's proven by math".

<comment><USER27> Topological similarities can be meaningful. Shape and structure are like form and function.

<comment><USER25> Topological similarities can be meaningful as in they often provide great source of inspiration.

However, it's just an inspiration and it must be proven in its newly applied field - proof in context of category theory is not valid in the context of inter-personal relations.

</comment></comment></comment></comment></comment></comment></comment><comment><USER28> "All that is mine, beloved and pleasing, will become otherwise and will become separated from me"— Siddhartha Gautama.

As a Buddhist we do "contemplation of death" meditation on a regular basis. It involves imagining our last few hours on our deathbed. It is a wonderful exercise to help put things in context. It makes you behave differently towards people you meet, even strangers.

<comment><USER15> I have spent hours mediating in graveyards.

Also helpful is the mediation on the 32 parts of the body to help you loosen your attachment.

[https://www.imsb.org/contemplating-the-32-parts-of-the- body/](https://www.imsb.org/contemplating-the-32-parts-of-the-body/)

<comment><USER29> I meditate regularly, but I think this type of exercise is misguided and betrays the body-denying/denigrating bias that can be often found in religious traditions world-wide. It encourages an ignorant attitude towards the body: instead of contemplating the miracles of the muscular system, see it as amorphous flesh. Amplify the spurious association of the skeleton with the malnourished body it resembles, instead of marveling at the ingenious way it serves it's (many) purposes, and so on.

<comment><USER30> You are not your body nor your mind. That is a core tenant of most Buddhist philosophy.

<comment> david-gpu Not everybody is a Buddhist. Convincing somebody who has different beliefs involves more than restating one's beliefs.

<comment><USER30> You can test it out for yourself.

You don't need to identify as a Buddhist to come to the conclusion that you are not your body.

<comment><USER31> That's like saying you are not your car; while you're driving the distinction is less important than keeping between the lines and watching for pedestrians.

<comment><USER15> I am a Daoist like everyone else is a Gravitist. You all believe gravity because you feel it work and it was explained and named to you. You feel Daoism and Buddhism work as well but no one has explained to to you.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER32> I'm the same age and not at all at peace with my mortality - the dominant feeling being envy of those who get to live after my death.

If I wrote a book with ghosts, zombies or other undead I would give the antagonists this as their reasons for hating the living.

Anyway that point about vulnerability is spot on. When I hug my SO I often reflexively blurt something among the lines of "softness is important", but what I really mean by that is vulnerability is important - this is something I had to learn from her and it's what helped me improve myself as a person.

<comment><USER33> I think: lose enough ego and entitlement, and you can not only find peace with death but even see it as a truly "happy ending" given the wondrous experiences of the uncountable people that will come after you (and what a petty, selfish distinction whose experiences those are is).

But that's not easy. It seems to take years of thinking about death almost daily and thinking about space and time[0] and history and stuff. And maybe psychedelics, although I never tried those yet.

0: [https://youtu.be/5TbUxGZtwGI](https://youtu.be/5TbUxGZtwGI)

</comment></comment><comment><USER34> I recently came across a quote that was en eye opener.

"Its better to be grateful than to be regretful."

<comment><USER35> It's also better to be RATEful than regretful.

Rate that stuff on Yelp so other people don't have to have regret.

</comment></comment><comment><USER36> Imagine that there's some form of brain time anomaly when you die, where your last moment stretches and you live on in a dream, with the dreams during your life being the test runs.

<comment><USER37> There's theories about DMT related to this.

</comment></comment><comment><USER38> Has anyone else read "Tripping Over the Truth: The Metabolic Theory of Cancer"?

[https://www.goodreads.com/book/show/23496164](https://www.goodreads.com/book/show/23496164)

</comment><comment><USER39> It's not over, till its over.

</comment><comment><USER40> "First, the importance of gratitude" \- so true

</comment><comment><USER41> Nobody ever dies from their perspective.

</comment><comment><USER42> I wish more people would learn about cryonics. It's either 0 or something above zero probability.

<comment><USER43> I have not seen a reason to think cryonics will work at all.

Even if we actually do find a way to restore frozen near-death people to life, you'd better write a heck of a pitch as to why future humans should spend resources on reviving and healing you.

Never mind all the resources being spent on keeping you properly frozen all that time.

That's all assuming the company running your freezer doesn't just go belly-up after ninety years, leaving you to thaw and rot after all that expense was dumped into keeping your now-corpse uselessly preserved for decades.

Cryonics actually plays the role so many atheists believe religion plays for the religious - comfort in the face of The End that is inevitably coming to you.

It is false hope, a tool to help you deceive yourself into thinking you can defeat death.

<comment><USER42> the argument is this: certain death vs a miniscule one in a quadrillion chance or lower. It will always tilt the other way no matter what the current scientific status quo is saying because it's possible in theory and it has happened to living organisms before just not humans. Whether it's good for environment, your siblings pocket etc is not part of the core argument.

<comment><USER44> I think even if you ignore the environment, and cost, the argument for cryonics is not very good.

Let's say someone is successfully revived, there's still heart attacks, cancer, crime (and not just "lowly" criminals, crime also happens within families for inheritance, for example), accidents (car, or just slipping in the shower), earthquakes, ... The list is pretty much endless.

Death is unavoidable, IMHO it's best to learn to cope with it, and focus efforts on reducing what most people would consider the worst deaths (infants, long and painful diseases, wars and torture, etc).

That said, as long as not many people try this (the environmental cost would be high), if many people think about this possibility and that helps them cope with their mortality, and that of their loved ones, good for them.

<comment><USER45> Yes, if only for the legal status of property/inheritance: if you are to be revided, who owns your wealth? Do you children inherit? And/when you are revived, what resources do you have? Is your family/descendants in charge of you, or you of them?

<comment><USER46> Cryogenic preservation is treated like mummification, you're just declared dead. At which point your assets are likely to just get spent.

If you want to be safe, set up a trust that pays to you preferably and if not then to any descendants you have. That's unlikely to work if you're somehow revived in several hundred years, but it's better than hopping random people will hand you money voluntarily.

<comment><USER47> You can't have a trust with no trustee. Is your trustee really afraid of getting sued by a corpse with no heirs?

</comment></comment></comment></comment></comment></comment></comment><comment><USER48> For those who would like to read, but stuck behind paywall: [https://beta.trimread.com/articles/36666](https://beta.trimread.com/articles/36666)

</comment><comment><USER47> Rainn Wilson's Soul Pancake has a long playlist of videos featuring dying people.

[https://www.youtube.com/playlist?list=PLzvRx_johoA8ITQgxBpeJ...](https://www.youtube.com/playlist?list=PLzvRx_johoA8ITQgxBpeJTaDUhhIB7bfX)</comment>


Ask HN: Was Bitcoin Discussed on HN Before It Took Off in Popularity? - <AUTHOR> Considering the perpetual discussion on HN around new tech and opportunities, was the opportunity around Bitcoin being widely discussed?  This is during the time before it reached mainstream popularity. <comment><USER2> When do you consider that time?

The HN Algolia search by date range goes back 10 years.

10 years ago [https://news.ycombinator.com/item?id=1532670](https://news.ycombinator.com/item?id=1532670)</comment>


Flops – Space for your JavaScript snippets, tryouts, codes... - <AUTHOR> https://flops.space/ <comment><USER2> Took me a while to find the light grey 'create a flop' button. Then I created a flop. Then what?</comment>


EPA Notifies Fiat Chrysler of Clean Air Act Violations - <AUTHOR> https://www.epa.gov/newsreleases/epa-notifies-fiat-chrysler-clean-air-act-violations <comment><USER2> Note: they mean exceeding in the bad direction, not the good direction. At first I thought this was some kind of spoof article, or Chrysler marketing effort. It should probably read "exceeding limits" not "exceeding standards".

EDIT: actually the press release doesn't even say that really. It says Fiat Chrysler installed software that could impact emissions testing but didn't tell the EPA about it, which is considered a violation of the Clean Air Act. It doesn't say the software cheats on tests.

<comment><USER3> For automotive scandals like e.g this one and Dieselgate it's always surprising how much outrage people muster.

If an automaker sells N cars exceeding some emissions limit by 100%, people get out the pitchforks.

But if that same automaker sells 2N conforming cars, it's widely heralded as a Good Thing.

However, to a first approximation, the environmental impact is equivalent in each case (or arguably worse in the latter case, because of increased energy and materials consumption).

<comment><USER4> But... but! If you sell N cars exceeding the limit, someone else will sell the other N cars of the 2N in your "2N conforming cars" in the other possibility, and they'd emit, too! Or does selling N cars exceeding the limit somehow eliminates the demand for the other N?

I mean you can say that the limit is too low, but I don't understand this N/2N argument at all.

Also, I dunno about pitchforks, but if I park illegally, I'll get a ticket, even though maybe the parking restrictions are wrong in some important sense, and I'd sorta like it if law applied to corporations. If that's a pitchfork then it's a pitchfork to fine me for how I park my car.

</comment></comment></comment><comment><USER5> I have a feeling this is just the first in a long line of violations that are going to surface due to the VW scandal.

<comment><USER3> If you've ever been near a major automaker's test engineering lab, you quickly realize that ~all of them are doing shady things to hit their numbers.

This is a result of the cold hard engineering fact that our current level of technology is insufficient to hit the numbers without raising costs significantly. But once one automaker starts to fudge the numbers at a given price point, all the others must do the same thing or they fall behind. Being honest might add hundreds or thousands of dollars to the dealer cost of a family sedan, which is an absolute dealbreaker when your rivals are getting the same benefit by just lying.

There's a spectrum from shady-but-nearly-defensible to absolute lies, and different manufacturers fall on the spectrum at different points.

One that comes to mind is Mitsubishi [0], but there have been others. And as you suggest, there will be plenty more in the future.

[0] [http://money.cnn.com/2016/04/26/news/companies/mitsubishi- ch...](http://money.cnn.com/2016/04/26/news/companies/mitsubishi-cheating- fuel-tests-25-years/)

<comment><USER6> "This is a result of the cold hard engineering fact that our current level of technology is insufficient to hit the numbers without raising costs significantly. But once one automaker starts to fudge the numbers at a given price point, all the others must do the same thing or they fall behind."

I'm going to have to remember to bring this up as an example whenever people claim private industry can police/regulate themselves. It's perfect.

<comment><USER7> there'd be no incentive to lie if the EPA wasn't forcing these "standards" on them.

Now, there's no reason to innovate because someone spends big bucks to actually do what everyone else is lying about.

This isn't damming of private industry - it's damming of the regulation.

(Er, to me. Obviously you might come to a different conclusion. Just wanted to throw in how this article can be read both ways.)

<comment><USER8> If standards weren't forced on them we'd be living in smog-choked cities. Markets can't efficiently deal with tragedy-of-the-commons situations because the air belongs to everyone and there is no way to do price discovery. Even a manufacturer could advertise based on being eco-friendly the effects would be minuscule thus consumers would have little reason to prioritize such features.

You're essentially claiming we should abolish all regulations period because some people will cheat. The actual solution is to heavily punish cheaters. We don't have to guess and argue about this; go visit China then come back here and regale us about how horrible the EPA is and how we should eliminate pollution regulations.

The technology may not exist yet but government standards can be a forcing function that makes manufacturers invest in creating it and bringing the cost down.

In fact government has had a huge hand in many forms of innovation; the trans- continental railroad was only made possible by government backing. The internet could not have been created by private companies from scratch, but government investment made bootstrapping possible.

<comment><USER7> I feel like there are more differences between China and the USA than just the EPA, and that's not at all what I was arguing.

What did you read my argument as? Can you restate my argument? Either I spoke unclearly, or you read poorly. So, let me figure this out.

<comment><USER9> >Now, there's no reason to innovate because someone spends big bucks to actually do what everyone else is lying about.

This statement just doesn't make sense. If we punish actors who cheat the incentive is to innovate towards meeting the goal. If there's no mandate, and no punishment then there's no reason to innovate in a direction that protects the commons. There's simply no market mechanism for protecting the commons that works in practice.

</comment></comment></comment></comment></comment></comment></comment><comment><USER10> The Notice of Violation (NOV) [0] is worth checking out if you're interested in the nitty gritty details of regulatory enforcement. It's quite readable and paints a clear picture that EPA believes FCA violated the Clean Air Act. Specifically that they have software/code (AECDs) which were "neither described nor justified". Also interesting that they already set up a short URL for this particular issue. [1]

[0] [https://www.epa.gov/sites/production/files/2017-01/documents...](https://www.epa.gov/sites/production/files/2017-01/documents/fca- caa-nov-2017-01-12.pdf)

[1] [https://www.epa.gov/fca](https://www.epa.gov/fca)

</comment><comment><USER11> Volkswagen, a German company, admitted wrongdoing, is paying $4.3bn in fines and will see its executives, domestic and overseas, jailed by the U.S. government [1]. Curious if Fiat Chrysler will see those checkboxes--admission of wrongdoing, material fines and jailed executives--filled.

[1] [http://abcnews.go.com/US/volkswagen-pleads-guilty- pays-43-bi...](http://abcnews.go.com/US/volkswagen-pleads-guilty- pays-43-billion-fines-settle/story?id=44715043)

<comment><USER12> I personally don't think that jail for simply emitting NOx above limits is worth it

<comment><USER13> An estimated 60 people have died because of these excess emissions.

What penalty would you consider appropriate for someone breaking the law, resulting in 60 deaths?

Should it matter what law was broken, or how those deaths were caused?

<comment><USER12> 60 people was just an estimate from statistics, and NOx emissions are not a new problem either.

<comment><USER13> NOx emissions are not a new problem, and our ability to estimate its effects are pretty good. The exact number is an estimate, but the real number is very unlikely to be off by more than a factor of 2.

If you randomly shoot 30 people, what is the appropriate penalty? What if you were shooting blindfolded and couldn't see when or who you killed? What if you were being paid money to take shots?

That is an exact analogy to what Volkswagon did when it sold cars that exceeded regulatory limits.

<comment><USER12> I mean in the sense that the emissions before the EPA was created was far worse.

<comment><USER14> And murders were worse 10 years ago too.

How on earth is that related to giving someone a pass for a murder now?

<comment><USER15> The law does give a pass for murder now. Just half the number it gave until a few years ago. So it's really hard to argue that a company in this situation is morally responsible for the murder of some number of people. As that would be equivalent to saying that the government has decided how many people you can murder, perfectly legally, every year. So unless you accept this, it's not murder.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER16> We tested their engine back in 2013, it had an offset and a timer for the coolant temperature. So if you waited long enough between the test cycles the timer would run out and the actual coolant would be relayed to the ECU which would then run a different calibration. Its a joke but diesels unless they have major after-treatment systems just cant run that clean - as they become hotter (read: more efficient) they produce more NOx.

</comment><comment><USER17> Actual title: "EPA Notifies Fiat Chrysler of Clean Air Act Violations"

</comment><comment><USER18> When the EPA fines a company (e.g., $4.3Bn for VW), where exactly does that money go?

<comment><USER19> [http://www.sfgate.com/business/networth/article/When- governm...](http://www.sfgate.com/business/networth/article/When-government- fines-companies-who-gets-cash-3189724.php)

</comment></comment><comment><USER20> I've been expecting revelations like this. If the other manufacturers were legit in these measures I would have expected them to e.g. run full page ads poking fun at VW to curry favour. They've been curiously silent.

</comment><comment><USER21> The most interesting thing about the arrest of a senior VW manager and this is that, evidently, software isn't too hard to investigate. It's probably not easy, but if a white-enough-box test of the ECU shows it cheats by detecting a dynamometer using a simple expedient that has no practical use on the road, then you have evidence that will stand up in court.

</comment><comment><USER22> Why don't they just do emissions tests by attaching a probe to exhaust and taking the car on a normal drive. Harder to fake results when you're not performing them in the same lab conditions.

<comment><USER23> It makes it impossible to compare between models or even between model years.

Since a key use of the information of for a consumer to compare between two cars to decide which they should purchase based on emissions and fuel economy, a repeatable test is a key requirement.

<comment><USER24> Then put the car on rollers for a fixed speed/acceleration/time profile

<comment><USER25> That's exactly what they do now. Volkswagen and Chrysler (and probably everyone else) have ECU firmware that watches for those profiles and adjusts the engine tuning for emissions differently compared to normal operation.

They need profiles that are more difficult to identify and more of them to solve this technically. Or the EPA and other regulatory agencies can bring down the hammer when they catch cheating like this.

<comment><USER23> Or else they rewrite the legislation to say "You can't ever exceed X on emissions". Then they do two tests, one for the legislation, which is a random drive over a period of time from a randomly sampled vehicle, and a second which is the dyno test for consumer information.

</comment></comment></comment></comment></comment><comment><USER26> Oh, oh, let me guess: it's the fault of a single rogue engineer, and does not in any way implicate company upper management.

<comment><USER27> I am assuming your comment is referencing Volkswagen's emissions controversy? It doesn't really fit considering six executives have been charged [1] over the incident.

[1]: [https://www.nytimes.com/2017/01/11/business/volkswagen- diese...](https://www.nytimes.com/2017/01/11/business/volkswagen-diesel-vw- settlement-charges-criminal.html)

<comment><USER19> I suspect the parent comment is referring to the way VW attempted to deflect blame from management / executives to claiming initially that it was rogue engineers. (rather than referring to who has or hasn't been charged by the government)

</comment></comment></comment><comment><USER28> You think they would've done something after the Volkswagon disaster... this is either extreme ignorance (we don't really know what our code does) or malicious intent (let's hope we don't get caught like them).

<comment><USER5> The release doesn't actually state that they violated emissions standards. It just says that they failed to notify the EPA of the presence of software that can alter the vehicle's emissions profile.

Do trucks and SUVs in the US even have emissions standards? I know they're exempt from emissions tests in many states which is part of the reason for their popularity.

<comment><USER29> That's not why they're popular. They're popular because the average American thinks bigger is better and they also want a bigger car for when they have an accident, they can kill the other person instead of themselves.

<comment><USER30> Though I see a slight grayish tint to your comment indicating some down votes, you're spot on. Does anyone _really_ think someone's automotive buying decision goes something like, "yeah, it's hard to park and the mileage sucks, but at least I don't have to take 30 minutes out of my day once every few years to go get emissions tested. That'll make the rough ride and the hundreds of extra dollars in fuel expenses worth it."? No, no one has ever thought that when buying a car.

<comment><USER31> Big cars were always popular in the US. Until the mid 1970s when fuel economy standards and an oil crisis or two changed the market. The oil crisis passed, but the economy standards did not.

Trucks weren't held to the same standards as cars, so manufacturers started making more carlike trucks to meet consumer demand for larger vehicles. The improved visibility and image of toughness and independence also helps drive truck and SUV sales.

<comment><USER32> The visibility is modified, not improved. Far away objects are more visible and very nearby objects (like curbs or children) are less visible.

Bad drivers driving huge cars through dense places are scary...

<comment><USER31> Consumers with this preference perceive that their visibility is better. Don't confuse them with facts.

I think it's mostly related to the percentage of other vehicles that they can see over.

</comment></comment></comment></comment></comment></comment></comment><comment><USER33> If you buy a vehicle, is it unreasonable to receive the source code so you can later fix it if necessary?

</comment><comment><USER34> Donald Trump was celebrating just a few days ago that Chrysler was going to open a new plant in Michigan instead of in Mexico[1][2]. Could this be a political move by the EPA?

[1] [https://twitter.com/realDonaldTrump/status/81846086267555840...](https://twitter.com/realDonaldTrump/status/818460862675558400)

[2] [https://twitter.com/realDonaldTrump/status/81846146776682496...](https://twitter.com/realDonaldTrump/status/818461467766824961)

<comment><USER35> It _could_ be, but it almost certainly is not.

<comment><USER36> Yeah, I mean I don't think he's complained about the EPA busting emissions violators, has he? He at least seemed to be pushing a "clean air and water" thing, which something like this should certainly fall under, even if you don't want to police carbon emissions aggressively as some would like to.

I think problems like this deserve investigation effort and aren't particularly political - probably an easy play to your average citizen.

</comment></comment></comment><comment><USER37> This is all happening because at some point the car companies had this choice to make:

1) Deprecate/shutdown gas-only car factories, build hybrid factories with an upgrade roadmap to plugin-hybrid and eventually EV. Then make all models and all trim levels (from base to premium) hybrid as a starting point

2) Continue using gas-only car factories to get more ROI and profit, use shady tactics that either secretly violate EPA regulations or at best comply with the letter of the law, but not the spirit of the law. Make a few hybrid factories to profit from the eco-friendly market.

Look at the new car market today, it's clear which option the car companies picked.

<comment><USER38> This is a curious statement given that both this and the VW violations pertain to _diesel_ -powered vehicles, not gasoline ones (hybrid or not).</comment></comment>


Why does the X-51 do a roll and then roll back at rocket separation? - <AUTHOR> http://www.youtube.com/watch?v=0QX1sncLMZs&feature=youtu.be

<comment><USER2> I would agree with andrewcooke, but it might also be a bit back heavy. If the rocket doesn't roll over, maybe it detaches in a more dangerous way (falling forward and down into the rocket as opposed to back and away). Who knows.... I don't think there will be documentation online that answers a discrete question like this. Good question though!

</comment><comment><USER3> my _guess_ is that when it's rocket powered it's shielding the (blocked?) intakes of the scram jet. when it ejects the rocket booster and switches to the scramjet it changes attitude (and the "waverider" details at wikipedia are quite interesting - <http://en.wikipedia.org/wiki/Waverider>)</comment>


Google Just Gave Millions of Users a Reason to Quit Chrome - <AUTHOR> https://www.forbes.com/sites/gordonkelly/2020/02/20/google-chrome-80-upgrade-deep-linking-update-chrome-browser/#49c8a09156fa <comment><USER2> This looks like something I don't see a use for and could hurt me in some obscure way. Cost/benefit causes an exception: 2/0 = error. Cost=privacy,attackvector. I don't see the benefit.

What benefit is there to this I'd use at _least once a week_?

Am I understanding this simply adds the ability to link to a particular word using a url? Given how motivated people are now about gathering and selling URL history I can only see a cost but little benefit.</comment>


Agent Maps – OS Library for Simulations Atop Maps - <AUTHOR> https://github.com/noncomputable/AgentMaps <comment><USER2> Flagged. This breaks the Show HN rules: OP is not the creator of this.

I know the author; they shared it privately with friends and weren't ready to post this publicly yet.

<comment><USER3> We took Show HN out of the title. It was an honest mistake.

Since you know the author, maybe tell them to post it when ready and send us an email when it's up? We might be able to put it in the second-chance queue (described at [https://news.ycombinator.com/item?id=11662380](https://news.ycombinator.com/item?id=11662380) and links back from there)

</comment></comment><comment><USER4> Odd to post something you haven't made as "Show HN".</comment>


Ask HN:I want to build desktop application but dont know which direction to go - <AUTHOR>

Hello HN
let me first say , i dont like web apps i never did
i really want to build good old fashion desktop application. what do you think is there a place for this kind of application this days? <comment><USER2> Just a note: from Mac user perspective cross-platform often means second-rate.

Portable toolkits just copy superficial look of Cocoa controls, but don't mimic "feel" part correctly. Not all mouse interactions and keyboard shortcuts work "right".

And even if your toolkit uses real Cocoa controls, there's still problem of window layout and UI design patterns, which aren't portable to Mac OS X (e.g. non-destructive preferences don't have OK/Apply buttons, drag'n'drop is expected almost everywhere, OK/Cancel are in reverse order than on Windows, etc.)

e.g. do you know OS X has separate clipboard for search fields? Cmd+E/Cmd+G. I like it and use it, but it doesn't work in "fake" Mac apps.

If you want to make _good_ portable app that supports Mac well, then separate UI from the rest of the application and on Mac add Cocoa GUI (you don't need ObjC, you can use PyObjC or MacRuby).

<comment><USER3> The OP didn't say he wanted to make a cross-platform app or a portable one.

<comment><USER4> He also didn't specify which platform he was targeting. A lot of the points pornel mention apply equally to GUI toolkits running on Windows or Linux. You sacrifice some control in order to get cross-platform compatibility (as you have to do with certain CSS / Javascript elements). Java is probably the worst of all worlds in terms of the look and feel of its de-facto standard GUI library.

<comment><AUTHOR> well cross platform is a dream , but i do know its so hard when you working with desktop app. my toolkit is Qt. i guess first i will go with windows.

</comment></comment></comment></comment><comment><USER5> As someone with a fair amount of Tcl and Tk experience, I think the web is the way to go. It's simply faster and cheaper to develop and deploy with. Fix a bug? All you have to do is upload a new version to the server.

Here's patio11 on desktop vs web: [http://www.kalzumeus.com/2009/09/05/desktop-aps-versus- web-a...](http://www.kalzumeus.com/2009/09/05/desktop-aps-versus-web-apps/)

That said, Tcl and Tk are a fun, fast way to hack up little applications if you need something local.

<comment><USER6> Or you could do something like the Notch, the developer of Minecraft did. The MineCraft desktop app checks with the server to update itself every time it loads. This is very common for multiplayer games. Giving your desktop app the ability to store data on the server is also a great idea.

I really like the idea of desktop/web hybrid apps like Dropbox. You can get the best of both platforms.

</comment></comment><comment><USER7> Most definitely. Eg I'm not happy to rely on having a constant internet connection for editing photos or doing some writing while on holiday, and even with a connection in both these cases the desktop options are much better.

I recommend learning the QT framework. It's cross-platform, unlike .NET, has very well designed libraries, and bindings for a bunch of languages if you don't want to write in C++.

It's nice if a desktop program syncs to an online service though (eg Picasa).

<comment><USER8> +1 for QT. I picked it up for the first time a few weeks ago and built a basic spotify clone[1] in one week for fun. Very nice API and as close to native look as I have ever seen from a XP framework.

I think there is a place for native applications, as long as you've got a niche that needs filling. The web isn't the answer to everything.

[1] - [http://www.executionunit.com/blog/2010/metalify_spotify_clon...](http://www.executionunit.com/blog/2010/metalify_spotify_clone.html)

<comment><AUTHOR> I did something similar , You-tube player for private use i hate the you-tube personal channel , and all its music editing features very useful to me...using Qt.

</comment></comment></comment><comment><USER9> I definitely recommend learning C++ and Qt. At first, I was quite afraid of learning C++, it's supposed to be a difficult language, without all the niceties of python, javascript, php and the like.

But actually Qt really adds a great abstraction layer that makes coding in C++ as enjoyable as Java, for example. Easy string manipulation, easy iterators, the signal/slot stuff is awesome, and the community is _great_.

Yes, HTML5 is here, but there is still a lot of stuff that you can't do with HTML/CSS/javascript. So my advice is: go for it. You won't regret.

</comment><comment><USER10> Unfortunately the answer is "it depends":

\- What kind of application do you want to build?

\- What OS platforms will the users have?

\- What experience do you have or is there a platform you particularly want to learn?

If you can narrow it down to one platform then most of these have pretty decent tools - if you want to support multiple platforms then things get interesting.

</comment><comment><USER11> What operating system do you want to develop for? I've found desktop application development quite enjoyable on OSX when using things like InterfaceBuilder and Objective-C, and those skills can be transferable for iPhone development too!

<comment><AUTHOR> i guess windows maybe mac latter

</comment></comment><comment><USER12> You can Visual Studio Express for Windows for free now days. XCode for Mac is free, as is the GNOME environment for Gnome/Linux systems. I would suggest you look for tutorials surrounding those environments.

</comment><comment><USER13> There are many toolkits to use. It depends on the type of app you're writing and who's going to use it and what platform its for.

Is it mainly for Windows users? Might want to go with .NET. There are free versions of Visual Studio available for this purpose.

Is it for Linux systems? GTK with C/Python or Qt with C++/Python maybe a better option. All the libraries and compilers are free. Mono (an open source .NET implementation) also works well on Linux.

If its for the Mac then Objective-C + Cocoa is the de facto method. The IDE, Xcode is a free download from Apple. You can also get python bindings for Objective-C.

If it has to run on many platforms then you might want to think of a cross- platform toolkit.

If the program has a very simple UI, then you can probably get away with using wxWidgets or QT with Python.

If UI is more involved, then you will probably want to write the front-end for each in it's own native framework.

</comment><comment><USER14> I've been using wpf and xaml for making nice quick applications for windows. I need a dsl for the xaml or a ruby wrapper for the API - Which I'm currently investigating. Too bad mono doesn't support wpf.

I've been looking at shoes by _why with some interest but think a dsl/swing (jvm) comboo would be the quickest and easiest cross platform option.

</comment><comment><USER15> .NET and C# make developing Windows desktop apps ridiculously easy. There is a .NET API for just about everything and you can get started for free with Visual Studio Express.

As a bonus Visual Studio has awesome auto-completion features and is a great WYSIWYG GUI editor.

MS really ought to pay me =p

<comment><USER16> What if he wants to run his app on Unix and Mac?

Qt via Python or Ruby bindings might be the best way to go.

<comment><USER17> Qt via Mono on Unix/Mac and WPF on Windows. As long he uses MVP or some other pattern to decouple the presentation layer from the business layer. Sure it will be harder to maintain 3 apps, but having apps that follow the platforms guidelines is worth it.

<comment><USER18> I think doing more than one UI upfront is an optimistic mistake.

Pick a primary platform and optimise it. Maybe do a less-than-awesome port, if you're eager. If, down the road, your experience with the primary platform leads you to believe there is a large market for the taking, then you can weigh up improved sales versus development effort for a truly excellent implementation on another platform.

Regarding Qt on the Mac: I've done it before. It would be my less-than-awesome port. If you're not using Cocoa on the Mac, making a UI on par with a "native" app is a sisyphean task: you're fighting uphill and you never quite get there.

</comment></comment></comment></comment><comment><USER19> What do you guys think of java as a language for desktop applications? I have a web app that I already use java for, and it could use a tiny desktop app to leverage it. I say tiny because all it will do is receive web requests which inform the user that they should visit the main web app.

<comment><USER16> Java is excellent for cross-platform desktop GUI. Eclipse's SWT looks perfect, but careful not to get dragged into their elaborate "Rich Client Platform" crap. If you can manage to use _just_ SWT, you will win.

Having said that, Swing, the offical GUI toolkit can be themed to look quite native. And Java Webstart is an absolute win: one-click deployment on every platform.

<comment><USER20> Eclipse RCP can be challenging, and, quite frankly, overwhelming when you first start using it, but after a while, you begin to see the benefits that you get from developing your application on the RCP instead of doing it as a raw SWT app. That being said, there are situations where the RCP's provided solution to a problem you're having may be overly complex, and you're better off rolling your own solution.

</comment></comment></comment><comment><USER21> IMHO there are a lot of opportunities in the desktop market. Most competent developers moved to Web apps and Linux long ago and left the Windows desktops lacking in many areas.

If your looking to low level system stuff or prioritize app speed have a look at Visual C++. Even Google used if for Chrome.

The most advanced UI framework I've seen is WPF. It has GPU acceleration; compatible, but separate tools for developers and designers; lots of 3rd party controls; can run in browsers through Silverlight.

Both these unfortunately come from Microsoft. You can get the dev tools for free or at low cost through programs like BizSpark.

<comment><USER22> > If your looking to low level system stuff or prioritize app speed have a > look at Visual C++. Even Google used if for Chrome.

As an experienced C++ developer I recommend you avoid C++ at all costs, even if you are an experienced C++ developer. A blend of C and another high-level language is a better choice.

<comment><AUTHOR> Im using at my day job Qt with Visual studio express 2008 and its a great combination for developing. im doing small tools. its very fast with Qt

</comment></comment></comment><comment><USER23> Personally, since I come from a web dev background, I would probably look into Adobe Air or some of the frameworks that allow you to wrap up web applications into desktop apps (don't recall any names atm, but I think Mozilla has one?).

<comment><USER24> You might be thinking about Mozilla Prism (<http://prism.mozillalabs.com/>)

</comment></comment><comment><USER25> There's still a place for desktop applications. It depends upon what you're building and whether that's a fit for the medium.

For example, I've built game creation tools. These are better suited for the desktop because of the complex interactions and user data involved.

There are plenty of startups that have built their software partially or wholly on the desktop such as Dropbox and Unity3D. For small developers, building desktop clients to popular web services like Twitter is another relevant path to take.

<comment><AUTHOR> Hi this is exactly what i was thinking and your application looks great! i once was thinking about the same idea . even using the Scratch method for conditions and loops wish you best lock ! what framework/tools do you use?

<comment><USER25> Thanks! The application is actually written in Java and uses Swing.

Not the sexiest thing to use, but Swing is very customizable, and I wanted to ensure that it was cross-platform from the get go. In addition to that, we also have an ActionScript-based player/engine and invoke the Flex SDK to compile auto-generated AS3 source into a SWF.

The app also communicates with a server-side webapp to provide the resource sharing, so we've got a little bit of everything in our technology stack. ;)

<comment><AUTHOR> hey , i just want to say the gui of your application is looking great and it is fast! how did you do that ?

</comment></comment></comment></comment><comment><USER26> Depends a bit on what you mean with "a place". There's certainly a market, at least when you write a Windows application. I guess most people don't care much where their application runs, at long as it help them to do their work (or have fun, depending on the app) and the app does not cause any trouble. The latter is the reason why traditional desktop apps are slowly disappearing, being replaced by web apps or at least controlled environments such as iOS's app store.

<comment><USER27> _The latter is the reason why traditional desktop apps are slowly disappearing_

Is it? I thought the main reasons were: no install, cross-platform, data available everywhere.

<comment><USER26> Installing and data availablity are a huge part of what I meant with 'trouble'.

</comment></comment></comment><comment><USER28> No, there is not. Unless of course, the application has a very good reason to be a desktop app.

Downloading and installing adds extra friction to your distribution, which you can live without for most of the cases.

</comment><comment><USER29> Looks like no o e mentioned Adobe Air. Quite easy to pick up and allows you to go cross platform with much less hassle than java, for instance (the runtime is smaller/easier to autoinstall, etc)

</comment><comment><USER30> If you're sympathetic to claims that you should build for the web, you might want to try Pyjamas. It advertises being able to simultaneously target both the browser and the desktop.

</comment><comment><USER31> I suggest trying wxwidgets or FLTK. And yes, desktop is not dead, far from it.

<comment><AUTHOR> i really like the FLTK framework , but its looks not so pretty as a gui</comment></comment>


Hello World execution time - <AUTHOR> http://lists.nongnu.org/archive/html/chicken-users/2011-03/msg00070.html

<comment><USER2> Interesting but correlates with the number of files and libraries the interpreter must read or parse. Anything that's quite self-contained is fast; anything that needs to look up and read lots of files is slow.

All I can say is that Java startup time is abysmal. Still, and after fifteen years. Java was dead slow in the 90's and it's dead slow these days when compared to anything else. I love Clojure but Java startup time rules it out for anything else but long-running processes or, when coding, using repl via swank.

<comment><USER3> For Java long start time is because it initializes big amount of RAM at the start, but thanks to this creating objects latter is fast. Additionally measuring of start of program is meaningless, what this say to us? Nothing. OK, maybe something, something like "write programs/scripts which execution is less than seconds in languages like ....". But for most of programs it doesn't matter. What the difference if program starts 3.1-3.2 seconds and 0.05 second? If execution time is longer than minute human will not see difference.

<comment><USER4> I can understand people decrying results of .05 seconds apart or so, but 3 second start ups? That would be _infuriating_. That kind of UX would take me back quite a few decades...

<comment><USER5> Garwk. I've helped write whole operating systems that boot in less time. [Atari ST. Check. Newton OS. Check. Other stuff I can't talk about: tens of milliseconds, mostly waiting for external crap like USB to initialize and settle down.]

</comment></comment></comment></comment><comment><USER6> In a reply, he adds Haskell (compiled with ghc)

[http://lists.nongnu.org/archive/html/chicken- users/2011-03/m...](http://lists.nongnu.org/archive/html/chicken- users/2011-03/msg00090.html)

</comment><comment><USER7> The Python interpreter does an implicit "import site" on initialization.

You can disable it using the -S option if/when you care about startup time.

Here are some numbers on my MacBook Pro:

$ ./run.sh bash hello.sh

median 0.002

$ ./run.sh python hello.py

median 0.016

$ ./run.sh python -S hello.py

median 0.008

</comment><comment><USER4> Unless I'm mistaken, the "Bash" benchmark is actually just measuring the amount of time it takes a C program to read an argument and print, instead of just a C program printing.

Assuming the bash program was: `echo "hello, world!"`

Edit: I likely am mistaken. Chances are this was done using the builtin 'echo', not '/bin/echo'. The builtin is always faster (though putting them in a file (as is the only fair way to do it) slows them both down of course).

</comment><comment><USER8> I guess java is so slow because you have the initial over-head of starting the jvm. I'm guessing that subsequent prints of "Hello world" would be somewhat faster.

This article is basically trolling java, and it seems a number of people have taken the bait. Different languages have different strengths and weaknesses. You'll choose the one most appropriate to the task required. If that's printing "Hello World" to the console then fine, but I doubt many people would think "java" when presented with this requirement.

</comment><comment><USER9> The solution to java's slow startup time is gcj. Once compiled with gcc's java compiler, a java hello world will have C like startup times.

        echo 'class Hello {public static void main(String[] args) {System.out.println("hello, world");}}' > Hello.java
        gcj --main=Hello -o Hello Hello.java
        time ./Hello

        echo 'main() { printf("hello world\n");}' | gcc -x c -o hello -
        time ./hello

<comment><USER10> Uh, if you think gcj is going to beat sun's javac/java, you're mistaken.

Again, with the rapid unexplained downvotes... seriously, did you see the article about speeding up Eclipse? The suggestion was to make sure you're not using gcj and others commented that they agree'd. It's well known the gcj is just flat slow compared to Oracle's/OpenJDK.

lol, whatever guys, pile on, I must be missing the joke!

<comment><USER9> The OP was talking about program startup time and measuring that by comparing hello world programs. When I run the above hello world program compiled with gjc is 25% slower that the C program. Compare that with the OP's measured version being 300 times slower than the C version when compiled with Oracle's JDK.

Eclipse is not representative of a typical command line program. Write "ls" with the OpenJDK and tell me you don't pull you hair out waiting for it to start up when using it.

</comment></comment></comment><comment><USER11> With disk caches primed, the main culprit may be the dynamic linker. Some of those environments (Java, Perl, Python, PHP that others mention in this thread) always load substantial number of dynamic libraries before doing anything useful. That doesn't come free. Numberous symbols have to be resolved, some static data initialized. There's non-trivial VirtualMemory to set up for such libraries, too.

For some more info: <http://harmful.cat-v.org/software/dynamic-linking/>

EDIT: a micro-benchmark between static and dynamic C program:

      gcc  -- static a.c
      time (for i in `seq 1024`; do  ./a.out > /dev/null; done; )

      real    0m0.958s
      ####
      gcc a.c # that's dynamic linking
      time (for i in `seq 1024`; do  ./a.out > /dev/null; done; )

      real    0m1.292s

...and that's just libc alone! Those times were quite stable across several runs, so it's not some random one-time fluctuation.

The code:

      #include <stdio.h>

      int main(void) {
            puts("hello world!");
            return 0;
      }

<comment><USER12> [http://shootout.alioth.debian.org/gp4/program.php?test=hello...](http://shootout.alioth.debian.org/gp4/program.php?test=hello&lang=gcc&id=3)

<comment><USER11> [nitpick mode]

What a misleading example. That's not GNU hello world, that's Linux hello world. The difference: it does not use GNU libc nor any other parts of GNU project -- except for the `unistd.h' -- but instead interfaces with the kernel directly.

Another matter is that it's not a C program, as it doesn't have int main(...) :P

[/nitpick mode]

<comment><USER12> >>does not use GNU libc nor any other parts of GNU project<<

On the contrary:

\- The program is compiled with GCC

\- "GCC development is a part of the GNU Project..."

<comment><USER11> That you used GCC is irrelevant; other compilers would give pretty much the same result. GCC is not required by the program by any means. Nothing of GCC is part of the program itself due to the -nostartfiles flag. The program doesn't use GCC, you (the software developer) do :-)

For sake of example, consider Linux (the kernel); usually compiled with GCC -- but ICC works as well -- and distributed under GPL, yet is not part of GNU project.

Moreover, the program in question can be ran directly on bare Linux, with no GNU stuff present anywhere, if passed via `init=PATH_TO_THE_PROGRAM' boot param. Of course the kernel would panic right after the syscall(__NR_exit, 0)... so I'm bailing out of nitpick mode right now ;-)

<comment><USER12> >> The program doesn't use GCC... <<

Before your kernel panic out of nitpick mode, shouldn't you at least have compiled and run that hello world program with ICC? ;-)

</comment></comment></comment></comment></comment></comment><comment><USER13> Ignorance and stupidity is running amok. This kind of trivial benchmark is not only incredibly dumb but is ACTIVELY HARMFUL to the programming community. Consider the conclusion drawn by author a few posts down in the thread

"Astonishing indeed. The whole thing confirmed my hunch that Bash, Chicken, and C provide a complete toolset to tackle 99.9% of programming needs."

No no no! Try running anything non-trival in bash or python and compare that to the java. Obviously if all you ever want to do with programming is write little boring scripts then you shouldn't be using a language like java in the first place. For anything mildly interesting and performance intensive Java is pretty much a no brainer only behind c/c++ amongst the major languages. For a site with REAL benchmarks which actually mean anything unlike the language fanboyism in this posted article checkout [http://shootout.alioth.debian.org/u64q/which-programming- lan...](http://shootout.alioth.debian.org/u64q/which-programming-languages- are-fastest.php)

<comment><USER14> There is no need for hysteria; it depends on your use case. In the Unix shell, since every basic operation spawns a process, and performing such operations only takes a few milliseconds, startup time is extremely important. If it were written in Java, it would probably not be architected this way, but the startup time of C makes it acceptable to do so; it is an issue if commands written in languages like Perl and Python feel slower than the rest of the system.

<comment><USER12> >>In the Unix shell, since every basic operation spawns a process...<<

That does not seem to be the use case that's being examined.

The use case that's being examined is - "writing shell scripts / cron jobs / random commandline utilities".

<comment><USER14> "Random commandline utilities" sounds like exactly that; shell scripts use a lot of Unix commands, I don't know why cron jobs are mentioned.

</comment></comment></comment></comment><comment><USER15> Just tried LuaJIT on a MacBook:

         4 ms: C, gcc (median real time)
         4 ms: bash
         5 ms: LuaJIT 2.0.0-beta4
        73 ms: Python2.6.1

So Bash still wins! I wonder if it gets any special advantage from getting invoked from itself.

</comment><comment><USER16> To my great astonishment, Ruby's performance was much closer to bash than Python in my own test: 0.572sec for 101 runs in Ruby, versus 4.276sec with Python and 0.318sec with bash. I now feel slightly less bad for all those shell scripts I've written in Ruby instead of bash.

<comment><USER16> Adding the -S option to python (to skip 'import site') as seen in another post here brings python's time down to 1.229sec.

</comment></comment><comment><USER17> Is this level of micro-benchmarking actually useful for the given use-case?

When "writing shell scripts / cron jobs / random commandline utilities" I believe my priorities are

1) Does it work? 2) How easy is this to write? 3) How easy is this to read?

In that order.

<comment><USER18> It depends how often I run the commands. Subversion -> darcs, git, etc. was like a breath of fresh air. I know that was going out to the network but still latency can be a killer.

</comment></comment><comment><USER19> Someone want to do a test for Scala? Why can't I have it all?

</comment><comment><USER20> when will people stop comparing languages based on their runtime speeds?

<comment><USER21> I'm not really sure if I understand your question. People have runtime speed demands for their applications and when they start a project they get to choose a language. Runtime speed is one of several pertinent pieces of information that is relevant when choosing which language to use.

Not that this benchmark is actually indicating anything about which language to use in any of those circumstances (Java has a bad startup but pretty good during runtime, and startup time on these orders is generally irrelevant for any nontrivial application), but that isn't to say that language benchmarks in general are irrelevant.

<comment><USER20> from as little coding experience i have i can say that I have seen blazingly fast V1.0 of applications which doomed to sluggish responses because of poor maintenance. So, i really don't buy the speed thing. I'll always design with a note that "There will be no awesome-coders to maintain this". A well- maintained version of Java app will beat a struggling C app anyday. So, i differ. And, ofcourse if you know what you are doing, these graphs do make sense and its worth an effort to dig out the flipping bits on registers.

<comment><USER4> _"A well-maintained version of Java app will beat a struggling C app anyday."_

And a poorly maintained C program will outperform an equally poorly maintained Java program...

The things that make programs dramatically slower is poor algorithmic complexity (and often a poor understanding of the architecture, be it the JVM or the metal). That's not what we're talking about here though, this discussion is pretty explicitly about start-up times. We're talking constant- time issues.

<comment><USER22> And luckily the crappy java programmers will never even get a C program of any complexity to start up.

</comment></comment></comment></comment></comment><comment><USER23> that has got to be the most useful language benchmark of all times... for those that don't go past the "Hello World" step that is.

</comment><comment><USER24> What about PHP? Will it have same results as C?

<comment><USER25> Somewhere around perl or python likely.

<comment><USER4> On my machine perl is .008, python is .036, and PHP is .044.

So it looks like PHP is a good deal slower than python, and certainly perl. 22 times slower than C..</comment></comment></comment>


Why my mother's maiden name is nonsense - <AUTHOR> http://www.technicalchops.com/blog/why-my-mothers-maiden-name-is-nonsense-and-yours-should-be-too/ <comment><USER2> For sites that let you make up both the question and the answer, Bruce Schneier has suggested having some fun with it [1] to make your conversations with support more amusing. Examples:

Q: The Penis shoots Seeds, and makes new Life to poison the Earth with a plague of men.

A: Go forth, and kill. Zardoz has spoken.

Q: What the hell is your fucking problem, sir?

A: This is completely inappropriate and I'd like to speak to your supervisor.

Q: I've been embezzling hundreds of thousands of dollars from my employer, and I don't care who knows it.

A: It's a good thing they're recording this call, because I'm going to have to report you.

While you don't have as much flexibility when you do not get to write the question, I'm sure there are still plenty of amusing answers you could pick.

[1] [https://www.schneier.com/blog/archives/2010/04/fun_with_secr...](https://www.schneier.com/blog/archives/2010/04/fun_with_secret.html)

<comment><USER3> This is all well and good until you call your bank, and taking a look in your password database you discover that your first pet's name is Adolf Hitler.

The conversation that follows becomes somewhat awkward..

<comment><USER2> Adolf Hitler can certainly be an interesting answer to certain questions. He got me out of being on a jury once (although I wasn't _trying_ to get out).

I was called to jury duty in Pasadena, California.

One of the panels I was on was for a drug case. The prosecutor was a 30-ish white woman. The defense attorney was a 40-50 or so white man who had a ponytail and beard, and gave off an ex-hippy vibe. The defendant was a black man probably in his early to mid 20's.

One of the questions the prosecutor asked the panel members was something like, "If aliens from space landed on Earth, and asked you to explain our drug problem to them, what would you tell them?".

A major component of my answer was something along the lines of most of the problem is self-inflicted due to stupid laws that make drugs like alcohol and tobacco legal, but make drugs like marijuana illegal even though it is at worst as bad as alcohol. Furthermore, I said I'd tell the aliens that because we outright lie to children about this, not really distinguishing between marijuana and other drugs that can be used safely and responsibly and drugs that actually are very very harmful and dangerous like heroin, when those children discover that we lied about marijuana they are naturally going to assume we lied about heroin too.

I pretty much accused her and people like her of being part of the problem (and remember, this is in open court). She tried to debate with me for a while and then moved on.

(I did say, when asked if I could vote to convict if the evidence proved beyond a reasonable doubt that the defendant violated the law, that I could even if the law was as stupid as the one being charged here).

I was sure I'd be her #1 target for her first peremptory challenge.

Oh, I, like the defense attorney, had a long ponytail and a beard, and looked like an ex-hippy. Actually, not so ex...I was also wearing a rather loud tie dyed t-shirt. I basically looked like someone who was probably missing his afternoon joint by being stuck in court.

Then the defense attorney asked his questions. One of his was if you could have dinner that evening with anyone you wanted, from the present or past, living or now dead, who would you pick? (The purpose of a question like this, which does not seem to have anything to do with the case at hand, is to try to get to know more about the prospective juror. There are many possible arguments that a lawyer might raise at trail, but he does not have time for all of them. He's got to pick the ones that work best with the particular jury he has, and to do that he has to know something about their personalities).

The half dozen people he asked before me said things like their deceased mother, or Richard Feynman, or Magic Johnson, and other normal answers like that. Then he got to me.

"Adolf Hitler".

The potential jurors who were waiting in the spectator area to replace panel members who were dismissed, and had largely been nodding off in the hot Pasadena summer heat, snapped to attention. There were a few gasps.

The attorney asked why. I explained that almost everyone breaks the law now and then, on purpose. I myself, I said, had purposefully exceeded the speed limit that morning in order to get to court at the appointed time. We all have a couple lines we do not cross, though. One is where the punishment if we get caught is too big, and the other is where we think the crime is too evil for us to commit. I'll speed occasionally because I'm willing to accept a ticket every few years, and I don't feel I'm being evil. Some people are willing to accept bigger punishment or are sure they won't get caught, and some people have a higher bar for evil.

Hitlers lines were so far out they were off the map. He killed millions. And he apparently either did not fear punishment or was confident that he would not get caught. And he almost succeeded.

Even stranger, he convinced a hell of a lot of Germans who had seemed to be normal, decent people to go along with him! How? Did he have supernatural charisma? Did he have some kind of compelling logical argument that could convince people that what he was doing was sane and rational?

Someone so clearly evil, yet so massively persuasive, would certainly be a very very interesting dinner companion for an evening.

After the questioning was done, the lawyers got to make their peremptory challenges. To my surprise, the prosecutor was not throwing me off the panel. As they alternated, first the prosector then the defense attorney using their challenges, it got down to the final challenge, which belonged to the defense attorney.

He used it to get rid of me.

I suspect that the Hitler answer had something to do with it. (Although it could be that since I had a math degree from Caltech and was working as a software engineer, he might have thought that I would not be swayed by emotional arguments and would just relentlessly apply the law--even though I had said the law was stupid--to the facts and convict).

<comment><USER4> > stupid laws that make drugs like alcohol and tobacco legal, but make drugs > like marijuana illegal

> I explained that almost everyone breaks the law now and then, on purpose.

Forget the Hitler thing, which doesn't really affect your judgement. I'm surprised the prosecution didn't dismiss you for statements like these. While you did say you'd convict based on the law, you're clearly sympathetic to people being tried for bullshit - which the prosecution obviously doesn't want.

Either way, no jury for you. :)

<comment><USER5> Do not forget that what is bad for defense attorney is good for prosecutor.

<comment><USER4> Not sure how this would be bad for the defense and good for the prosecution?

Defense attorneys would appreciate jury members refusing to convict their clients for ridiculous laws. I imagine every defense out there would absolutely love to have the possibility of jury nullification laid out on the table.

</comment></comment></comment></comment></comment></comment><comment><USER6> Here's what I do: random long strings as answers for each question, and save them with the credentials in KeePass. That way I keep track of each one, and they can't be used against me.

<comment><USER7> May you never have to call someone to give them your mother's maiden name to unlock your account.

<comment><USER8> That works out pretty well with a "just tell me when you've heard enough" j q r p z v ! ? / b ... They usually say enough about 8-10 chars in and it really isn't that difficult to read off 8-10 chars.

</comment></comment></comment><comment><USER9> I blogged about this last year; the sad reality is that the security of these "security questions" are _more_ important than that of your password since they can be used to reset both your password for this site and everywhere else (as well as gain access to your bank, obtain credit cards in your ID, and more).

We need to obscure these in the database. You can't risk losing your ID entirely just because some random site didn't bother securing these details and fixated solely on "best practices" for password storage in the DB.

[https://neosmart.net/blog/2015/never-store-answers-to- securi...](https://neosmart.net/blog/2015/never-store-answers-to-security- questions-in-plain-text/)

</comment><comment><USER10> This question is also misogynist. My mother does not have a "maiden name" she has a "last name", which has always been the same. It's not the 1950s, women don't have to subjugate themselves to their husbands name anymore.

Oh, and gay people exist. Get with the times.

<comment><USER11> And many countries have never had the the culture of changing family names on marriage.

<comment><USER12> No. But in those countries, one's mother still had a family name at birth that is different from one's own (in almost all cases), whether she changed it at marriage or not.

<comment><USER11> And therefore one's mother's last name is even more public than a "maiden name".

</comment></comment></comment></comment><comment><USER13> Other security questions are often even worse. "What high school did you attend?", for example, is something many friends and acquaintances will know and most others can trivially obtain via LinkedIn or Facebook. "Where were you born?" and "What is the first school you attended?" can be reasonably reliably guessed from the high school as well.

<comment><USER14> This is why you lie.

"Where were you born?" "In the fires of Mount Doom."

"What high school did you attend?" "Methamphetamine High"

<comment><USER15> This is a good idea, if you remember to always tell the same lie. Being required to remember which website I told which lie to can only lead to trouble.

<comment><USER16> Just stick the question and it's answer in the notes section of your password manager.

Some password managers will generate a pronounceable string for you too, saves coming up with anything witty...

<comment><USER17> > Just stick the question and it's answer in the notes section of your > password manager.

Since security questions are typically used for things like password recovery, you probably shouldn't manage them with the same tool you use to manage passwords. After all, if you need them, it is likely to indicate a critical failure of your access to (or your data held in) that tool.

<comment><USER16> Gotta stop somewhere.

</comment></comment></comment></comment></comment></comment><comment><USER18> It's helpful to know that on most services the maiden name can be thought of as a second password. Only on some credit-related services does the answer actually matter, it seems.

And then there are those of us who have hyphenated surnames, where the maiden name is there for all to see. I wish my name weren't hyphenated, but I'm stuck with it. It's always silly when someone asks for maiden name: I've already given it to you...

Hyphenated names are also longer, making it a perpetual challenge to fit my name on forms. On standardized tests I was always penalized a minute or more as I spent time scratching in all of the letters of my name. Then there are the fields where the hyphen is not allowed, so I have to enter something that is not my legal name, or even worse are the services that accept the hypthenated name but then transparently change it for storage on the backend. This can make verification fun since there's no telling whether the hyphen was removed, replaced with a space, or some other character entirely. Better hope that you don't have a limited number of attempts to access something. It doesn't fit on credit cards either, making the name field of web payment forms a best guess (I usually put my full name regardless of what is actually on my card).

Future parents out there: consider expressing your family pride or sense of nonconformity in a different way. Hyphenated names are a nice gesture, but they're totally impractical in a world where data entry matters. I'm only thankful that I don't also have a unicode character in my name...

<comment><USER19> What I've always wondered is what happens when two people with hyphenated names marry.

<comment><USER20> They both take the surname which made from the full concatenation of each original surname with all punctuation stripped, but with a single trailing space for an unknown reason.

Any offspring have a surname composed entirely of hyphens.

</comment></comment></comment><comment><USER21> > I've decided to leave the website link out in the interest of discouraging > abuse of the tool.

I appreciate the sentiment, but I suspect this would be a more powerful demo if people actually found their own mother's maiden name. Anyone wanting to abuse it could find it trivially anyway (Google for "type your details below so we can start tracing your family", and you only get a single result).

I do wonder how complete the site's records are. I can find most of my family, but it doesn't seem to think I exist.

Edit: seems to be a weird search issue - given name + family name + year of birth returns multiple people who aren't me (with different given names / years of birth), but given name + middle name + family name + year of birth finds my details. Personally not too worried about it, as I use a random name in place of my mother's maiden name for banks etc., and have recommended to family that they do the same.

</comment><comment><USER19> One of the most frustrating things is that many banks and other financial services seem to have the most antiquated security practices (nothing above twenty characters and no special charcters, for instance). It should be the other way around and yet here we are.

That said, I've mostly seen these used as an in-addition question when you want to do something like reset your password. Who's out there using these security questions as the primary mode of authentication?

<comment><USER22> They value stability highly. So they often go with mainframes and software that was written in decades past. When the software was written, that stuff was often pretty good.

<comment><USER19> Sure; I don't want my bank getting too creative either, but that surely has to be balanced with security.

</comment></comment></comment><comment><USER23> > _Inevitably, I quite consistently can't remember the word for each service – > a fact that surprised this particular rep, "How do you forget your Mother's > maiden name?"._

The rep is _looking_ at the string that you gave them as your maiden's name (so that he or she can compare that with whatever you utter), and what's on the screen is obviously not anyone's maiden's name, being "nonsense", and all.

These jobs don't always go to the brightest bulbs in the chandelier, do they.

Gee, how on God's green Earth could anyone forget that your mother's maiden name is Z3xYFrd9.

It's rude too, implying that the customer is incredibly forgetful; in a customer service role, we should refrain from making such a comment even if the string does look like a viable maiden name.

Even some harmless, utterly non-sarcastic comment about anything could be taken the wrong way or take a surprising direction.

"Nice tattoo, where did you get that done?"

"It's a birthmark, which made me the target of bullying throughout elementary school."

Oops!

</comment><comment><USER24> Talking about password recovery: Google has an interesting attitude. I recently lost password to a dev account on gmail I created few weeks earlier so had to reset password.

I went through a process in which they asked questions "when more or less was account created", "when did you last log in successfully", "what last password do you remember", "what google services did you use with this account" etc. which, mixed with some other data they possess (I believe), like IP addresses, made me successfully recover the account without any "maiden name" questions.

<comment><USER10> All of those seem fine, except for "what last password do you remember", which is horrifying.

<comment><USER25> Why? I suspect that just means that they keep the various versions of your hashed password. Some regulatory requirements mandate that passwords not be re-used for a period of time; that would be enforced the same way.

<comment><USER26> You're thinking of the wrong attack vector/issue with this.

Imagine your account was compromised. You reclaim your account. The previous cracker _recovers your account from you_ because they knew your previous password and went through the recovery process.

The above happens more often than you might think.

</comment></comment></comment></comment><comment><USER27> This really is a retelling of the advice 'Your passwords should not be something that could be guessed by knowing just a little bit about you.'

</comment><comment><USER28> This isn't news, I've done this for decades. I have a fake family that I use for Mom, pet's name, fathers birthplace, etc. But unlike the OP, I only have one fake family to track.

It's not hard to do, just pretend you are an undercover KBG agent. Alternate plan is to just rotate family by one, so Dad moves to Mom, Mom moves to older sibling, etc and the pet rolls to the top (Dad).

</comment><comment><USER29> I had a related issue with this kind of security measures:

I can't remember them after... is your favorite book "ABC" or "A B C"? first car Nissan Fairlady or 350Z?

So what I do is that you take the question, put it on an email with the key, put the key into a password generator [0] that creates the answer with a Master key just you know.

[0] Password generator pro, FOSS, grab it on FDroid

<comment><USER30> I generate random answers that fit the question (i.e. best friend: Steven Austin, 1st Car: Hummer H3) and store them in Last Pass (or Keepass). Can use password generator too.

</comment></comment><comment><USER26> Worse is that these answers are stored often in plaintext because they aren't the users "password". I'd argue having them _at all_ puts one at greater risk of being hacked.

What I'll never understand is why I can answer these questions with 64-128 characters (typically) but my password is limited to 16-32 characters.

</comment><comment><USER31> I'm not sure which is worse, that so many sites require "security" questions (emphasize on quotation marks) or that the questions are frequently paired with asinine password restrictions that prevent the construction of a strong- enough password in the first place.

</comment><comment><USER14> It's particularly dangerous for people who actually use their mother's maiden names.

Some people were born to unknown fathers, and some people deliberately changed their names to their mothers' maiden names later in life.

</comment><comment><USER32> The site in question is: [http://www.genesreunited.co.uk/discover/index?stage=1](http://www.genesreunited.co.uk/discover/index?stage=1)

</comment><comment><USER33> I thought this to be really interesting. I found this article making good points and it is incredible that the maiden name is more important that the password itself. Seems backwards in my opinion.

</comment><comment><USER34> Just use a diceware password for both those question and answers, like you do for your actual passwords.

</comment><comment><USER35> Personally, I wouldn't give up the name Mrs. Nonsense.</comment>


Comcast About to Screw Customer's Charging for Bandwidth - <AUTHOR> http://imgur.com/SUWB2mw This means that any customers that use Dropbox, Google Drive, or other backup services will need to most likely stop using those.  They are also going to charge for video streaming and download, EXCEPT from their Xfinity on-demand service.  There goes Netflix and Hulu.
Most people that work from from home average well above 300GB/mo.
Ridiculous! <comment><USER2> They were already doing this. Maybe in just some places I guess? Previously their cap was 250GB and they would call or threaten disconnect if you hit that multiple months. Then they switched to the block plan where you could go over and just get the extra charge instead of the threats. Then for a good while (up to now, last I checked) they completely put the cap on hold, I'm guessing to test how customers were impacted?? But now perhaps they're either rolling out the block plan everywhere, or just reinstating it and giving proper notice before they turn it back on. So this isn't really new, but short of providing an unlimited plan, this is a good alternative in my opinion.</comment>


Dash Hacking: Bare-Metal STM32 Programming - <AUTHOR> https://learn.adafruit.com/dash-hacking-bare-metal-stm32-programming <comment><USER2> The title should reference the Dash really, since that is the interesting bit here; not the STM32 stuff.

Anyway, if anyone is going to attempt this I would recommend:

1\. Don't install a VM to do this as weirdly recommended in the artcle. Using GCC Arm Embedded on Windows is not difficult. There are pre-built binaries on Launchpad which work fine.

2\. If possible, use the mBed API instead of any manufacturer-supplied SDKs. It's a great API and supports many STM32 chips already (though apparently not this specific one so some porting may be necessary).

3\. Good luck getting that broadcom wifi chip to work.

<comment><USER3> I think doing it in a VM for this type of tutorial is not a bad decision.

We're at a point where you can't assume everyone uses Windows, and writing up how to do this on every operating system would be a PITA I imagine.

As a GNU/Linux user I'm appreciative of this format because I can just ignorant the vagrant stuff and get down to brass tacks.

</comment></comment><comment><USER3> This is great. I just thinking about messing with a STM32 chip for a project, so this guide looks good. And actually Amazon's little button thing looks awesome.

Hopefully they don't freak out and try to lock it down in the future :( Since Microsoft got pwned when they tried to mess with the Adafruit crew you'd think they wouldn't, but I've learned that one should never underestimate the power of human stupidity.

<comment><USER4> If you just want to get into development, ST's "Discovery" development boards are really cheap -- like, $10 to $15. Highly recommended.

<comment><USER5> It also runs Linux

[https://github.com/AdrianHuang/stm32f429-linux- builder](https://github.com/AdrianHuang/stm32f429-linux-builder)

<comment><USER3> Awesome, and thank you both :)

</comment></comment></comment></comment><comment><USER6> Dumb question: why don't manufacturers disable the JTAG interface after all the flashing and testing are done?

Don't get me wrong, I really appreciate them leaving these devices easily reprogrammable for us hackers, but there's really not much benefit in it for them.

<comment><USER7> Our company leaves them enabled 1) because it's not really worth the effort to disable and 2) it's super handy if you get a product returned to re-flash it if it's somehow been bricked!

<comment><USER8> We use NXP MCUs that have a few different code protection modes. The mode we use in release code disables JTAG and Flash access, but allows erasing the entire Flash. This makes it hard(er?) to read and modify our code, while still allowing us to easily wipe a returned device and re-program it using a suitable firmware image.

Selecting which mode to use is a simple matter of setting a specific value at a specific position in the Flash image, very handy.

<comment><USER4> The STM32F2 MCU that Amazon used supports similar features; see section 2.6.3 of:

[http://www.st.com/web/en/resource/technical/document/program...](http://www.st.com/web/en/resource/technical/document/programming_manual/CD00233952.pdf)

In brief, though, the MCU can be put into "level 1" read protection which limits the capabilities of a JTAG debugger, or "level 2", which fully protects the device by disabling JTAG entirely. Given that Adafruit were able to reprogram the device, Amazon must not have used level 2 protection.

</comment></comment></comment></comment><comment><USER9> the amazon thing is not cheap. for 15 you get a Dev board with lots of handy usb and serial ports. for 5 you get Chinese board with wifi that also have stm32 chips

</comment><comment><USER10> This seems like a great alternative to programming an ESP8266.

<comment><USER11> Yeah if details of configuring the WICED SDK can be sorted out then it would be a nice little wifi & internet connected board. You have to register an account to download it but if you're curious the WICED SDK is here: [http://community.broadcom.com/community/wiced- wifi](http://community.broadcom.com/community/wiced-wifi)</comment></comment>


US driving Swedish Data Retention - <AUTHOR> http://www.piratpartiet.se/cables-us-driving-swedish-data-retention

<comment><USER2> It really should come as no surprise that international diplomacy is glorified horse trade, we get some, you get some.

But what's extremely worrying in these cables is that there's no apparent upside for Sweden. Why is the government of Sweden caving in and pushing legislation requested by the US? What's in it for us?

<comment><USER3> Because Swedish diplomacy has been about being a neutral-looking lackey for the most threatening powers for a long time. That includes letting the Nazis use our railroads...

<comment><USER4> Oh... we did so much more than just let the Nazis use our railroads. War- profiteering is the word not used by Swedish media and politicians because it's such a dirty word.

</comment></comment></comment><comment><USER5> Hold your horses.

The cable does not in any way indicate that the US actively did anything. Remember folks, cables are internal communications between embassies and their governments.

What the cable does say is it _pleads_ for Sweden not to be put on the 2009 Special 301 Watch List - this list is prepared by the USTR, see <http://en.wikipedia.org/wiki/Special_301_Report>

So what does it really say then? It simply says that the Swedish government (called GOS (means "cuddle" in Swedish) in the paper) have actually taken actions against Internet piracy.

So in essence, this cable really only says that Sweden should not be treated differently from say Norway in world-trade contexts such as WTO or NAFTA.

RICK FALKVINGE IS THE LEADER OF THE PIRATE PARTY. HE IS BIASED.

<comment><USER2> Paragraph 2 of the cable starts with this:

"This cable reviews the progress Sweden has made on the Special 301 Initiative Action plan which we presented to the GOS at the conclusion of the Special 301 review 2008 (Ref B)."

Basically, the government of Sweden did almost everything the US government told it to do, to avoid being put on the scary-sounding watch-list.

</comment></comment><comment><USER6> Mirror: [http://www.piratpartiet.se/cables-us-driving-swedish-data- re...](http://www.piratpartiet.se/cables-us-driving-swedish-data-retention)

</comment><comment><USER7> I'd like to see a real translation of this article before I draw any conclusions.

Google translate is decent (and getting better) but I'm not sure I trust it yet for international diplomatic translations.</comment>


External addresses can longer send mail through Google SMTP servers - <AUTHOR> http://googlesystem.blogspot.com/2014/08/external-addresses-no-longer-use-gmail.html

<comment><USER2> So bizarre that they'd drop this without an announcement.

</comment><comment><USER3> Existing setups are okay, I think - it's only for new email accounts.

In general it seems like a huge change - gmail was a useful email client</comment>


Force: Machine Predicted Lithology - <AUTHOR> https://xeek.ai/challenges/force-well-logs/overview <comment><AUTHOR> Create a machine learning model that has the highest accuracy in prediction lithology from a suite of wireline logs. A training dataset with hand interpreted and QC'ed wellbore lithology is available.$0K in prizes</comment>