HuddleChat Has Been Taken Down - <AUTHOR>

A visit to http://www.huddlechat.com/ grants the following message:
Hi, a couple of our colleagues wrote Huddle Chat in their spare time as a sample application for other developers to demonstrate the power and flexibility of Google App Engine. We've heard some complaints from the developer community about it and because of that we've decided to take it down. If you'd like to see more sample applications written on Google App Engine please check out our documentation and our App Gallery.
Thanks, The Google App Engine Team
Seems they did not want to deal with the criticism over the similiarities between it and campfire (http://www.readwriteweb.com/archives/huddlechat_campfire_rip.php) <comment><USER2> It's funny how I don't hear anyone saying, wow how cool, they listened and tried their best to respect 37signals. All this was was a few engineers trying to make something cool really quick just to show what you can do with AppEngine. Google, probably thought it was cool too and decided to showcase it.

This was really blown out of proportion. If anyone wants to perpetuate conspiracy theories you've got plenty of ammo with AppEngine. This HubbleChat thing is/was nothing. Cope.

<comment><USER3> IMHO Google lost a lot of credibility by taking it down. For me, it's like Janet Jackson apologizing on national TV for showing some boob.

In any event Google has proved the point - it is ridiculously simple to clone webapps like campfire.

</comment></comment><comment><USER4> 37signals are such stuck up, elitist, preppy twats... They should eat their own words and compete.

<http://tinyurl.com/65my4q>

This was just a demo app for a framework in a completely different language. I don't think it was a huge threat, I mean come on, they didn't invent online chatrooms. They just invented a doll house, my Mom can play with, that looks like a watered down IRC (for $$$).

The main reason they sell Campfire is for the integration with their other apps... something I doubt the Google App Engine Team managed to add to their clone.

<comment><USER5> I don't recall the 37signals people ever complaining. There are oodles of Basecamp competitors out there, and I honestly don't think they mind the competition/copycats.

They are really very humble about competition, in general.

<comment><USER6> Here's the complaining and their basically solid rationalization for it.

[http://www.37signals.com/svn/posts/575-but-theres-only-so- ma...](http://www.37signals.com/svn/posts/575-but-theres-only-so-many-ways-to- do-something-right)

Although I'd still come back and say there's only so many ways to do chat . . .

<comment><USER5> That's not complaining about competition, that's complaining about theft of design.

I really don't think they care if someone copies the functionality of one of their products, but I think they care when someone copies their words and design (CSS and images, in this case). Two completely different things.

<comment><USER7> I looked at the differences between the two and.. it's a layout and styling that I see everywhere.

</comment></comment></comment></comment></comment><comment><USER8> _"... Seems they did not want to deal with the criticism over the similiarities between it and campfire ..."_

Maybe.

If you look at the amount of press proclaiming you can _"re-create"_ a 37sigs app using googles new toolkit. Then you might say it's a clever _"social media hack"_ to make the dev community to take notice. There is an alternative to ROR and it scales. And we told you by example. We got our point across using code not blogs!

</comment><comment><USER9> "And we were always far ahead of them in features. Sometimes, in desperation, competitors would try to introduce features that we didn't have. But with Lisp our development cycle was so fast that we could sometimes duplicate a new feature within a day or two of a competitor announcing it in a press release. By the time journalists covering the press release got round to calling us, we would have the new feature too.

It must have seemed to our competitors that we had some kind of secret weapon--" -PG

It's up to 37Signals to find the new features; it is not up to competitors to stop competing.

</comment><comment><USER10> FFS, way to stifle competition, 37sig. I liked the look of HuddleChat way, way more than Campfire, and had started using it. So someone starts a brush-fire in teh blogosphere and we're all supposed to just give up and go away? I thought we'd gotten beyond all this "look and feel" BS years ago.

<comment><USER11> This whole thing reminds me of when FOX News started forcing everyone to wear American Flag pins. Way to go, 37signals

</comment></comment><comment><USER11> I don't know if a company can be considered a baby, but, if so, 37Signals can safely add another notch their belt of "Biggest [something]" awards.

</comment><comment><USER12> Bummer. I tried huddlechat today, and was impressed. I hadn't tried campfire before, for various reasons, but I think I might give it a shot now.

At this point it might be just as effective of a tech demo to release the source to huddlechat, although the chances of it happening are quite low.

<comment><USER3> Take a look at <http://www.mibbit.com> if you're interested in more of a feature-rich webchat.

</comment></comment><comment><USER13> Can't blame them really. It's not worth risking the wrath of the Internet crazies for the sake of doing a single cool tech demo. They made their point already, and they're not going to win an argument against a bunch of zealots.

</comment><comment><USER14> Well, it's nice of Google that they've taken this down. But I'm really annoyed by 37signals' reply. I mean I recently developed the similar app to learn a particular framework so if I go market this product do you guys really think I should be taking this down if I see DHH or JF complaining how I ripped their app off? I mean a 100% similar app will cetainly be a dissaopinting effort (for both them and I) but I can always improve on that(improved/diff UI, new features and etc). Moreover, I can point anyone to couple of BaseCamp and Campfire clones and HuddleChat was just an example for app_engine (not a stupidly easy thing to implement like Basecamp and not a technicaly very challenging project). Just the right balance for a good tutorial. I was looking forward to read how did they do it using app_engine ;(

</comment><comment><USER15> Such a small team (37signals) manages to generate lots of buzz, sometimes I'm not sure if it's signal or noise.

</comment><comment><USER16> Are they going to take down google docs next?

<comment><USER17> No, it's evil to steal from companies smaller than you, but admirable to steal from companies bigger than you.

<comment><USER17> Hmm, I'm surprised at the negative reaction to this comment. Anyone care to expand on why they voted it down?

</comment></comment></comment><comment><USER18> i think this spells out how a lot of people have great disdain for 37 signals and their perceived growing arrogance, more so than it is about Google Apps.

</comment><comment><USER19> i was able to use HuddleChat for a few minutes -- a very cool application. so sad that Google took it down :(

</comment><comment><USER20> I don't understand the particulars of this case, but in general:

There are 2 sets of hackers: those whose intellectual property has been stolen and those whose intellectual property will be stolen.

The former group thinks it's a big deal. The latter group doesn't (yet).

<comment><USER21> I would suggest there's a third set, who sits around on Slashdot and argues that "intellectual property" is a misnomer and therefore cannot be "stolen".

<comment><USER11> To steal something, you have to take something.

</comment></comment></comment><comment><USER22> 37signals ripped off IRC.

story at 11.

<comment><USER23> Naw, they just took over some channels during a netsplit...

</comment></comment><comment><USER7> I'm tempted to try and create something now, over this.

Infact, I even have my own, very special Campfire-inspired design, which is over at <http://www.basementcoder.com/ravings/12>

But then, maybe people might say mean things about ME too. :(

</comment><comment><USER24> Knock, knock... Pansygram.

</comment><comment><USER25> If this came from Microsoft then everyone would bitch but no one would think twice about it. Google tries to be at a class above everyone else down to their company motto of "Do no Evil". Whether it was a few guys working off the clock or using their 20% time at work it was still Google that released it.

Don't get me wrong, I do think Google has a right to release competing products and they have done so with Gmail and many other apps. However, it's a very crappy message to send would-be developers to "trust" them to do the right thing. Let's not lose perspective just because you may or may not like the 37 Signals guys, it was a pretty crappy message to chance sending.

<comment><USER26> I think that's nonsense, and think the exact opposite - if someone else other than Google had come out with this no-one would have given a damn and it would have received little to no press. It's only because Google is a big company - in itself this isn't news at all.

A browser-based chat client is a hardly spectacularly original idea, and 37signal's Campfire itself owes much to IRC, a protocol invented some 20 years ago and pretty much every IRC client has an extremely similar "look and feel" to Campfire anyway. I'm also very surprised no-one has created a free alternative to Campfire before - it seems like a painfully obvious thing to create and quite a small project.

And if it came from MS, I doubt anyone would have cared either - certainly no more than Google. Did anyone bitch when Microsoft largely recreated Java with .NET? Did anyone really care when Microsoft brought out Live.com strongly inspired by Google? Did anyone care when they brought out MSN Messenger, inspired by AIM and ICQ? What about taking on Flash (a JavaScript-based in- browser environment) with Silverlight (a JavaScript-based in-browser environment)? All those things are much more shameless than a JavaScript chat client.

<comment><USER25> I never stated it was an original idea but copying features plus innovating which was the course Google took with Gmail and their product releases was innovation. However, when you clone someones app feature-for-feature down to the nearly the exact design then that is a rip-off.

When Microsoft created .net both pro and anti-Microsoft supported complained rather largely to answer your question. This was during the aspx days that eventually was scrapped in order to support common languages across their platforms.

You seemed to have missed my point though, this isn't Google or Microsoft creating a competitive product and going to market with it. It's Google asking developers and startups to trust them with both your code and data but they'll do the right thing with it. I wouldn't have trusted Microsoft back in the 90's before they were depicted as the borg on Slashdot and I don't trust Google now based on their decision to copy an application from the same market they are trying to encourage to use Google App Engine. This isn't Microsoft vs. Google or Adobe but it was in bad taste and they obvious agreed since they took down the app.

<comment><USER27> You seem to be missing the point though that campfire is very far from original. To say google ripped them off is to imply the developed the basic chat interface themselves which is wrong.

Google developed a basic web chat, the likes of which have existed online for years before 37Signals was even a glint in DHHs eye. And almost all have shared a very similar look and feel because it makes sense.

<comment><USER25> I never said 37 Signal's idea was original or defended them on that point. I also stated that before. When you take the functionality and design from one specific site without adding innovation then that is a rip off. I think too many people are caught up on whether or not they like Ruby on Rails or 37 Signals vs. seeing what Google did and calling foul. Good for Google to own up and pull the site though.

<comment><USER27> Disclaimer: I use Rails daily, and have no hard feelings for DHH or 37Signals.

That out of the way, you are still saying that Google took the functionality and design from Campfire. Where as what I am saying is that Google took the functionality and design from almost every web chat program that came before it and there was a large number before Campfire itself existed.

To say they took it from campfire is to ignore all the existing implementations that existed before it. It is to rewrite history with the starting point for web chat on the launch date of Campfire.

I doubt Google pulled it because they thought they ripped off Campfire, my money would be on them pulling it because it wasn't important enough to risk bad PR over.</comment></comment></comment></comment></comment></comment>


I am an 18-year-old techie/student. I have leukemia and need your help - <AUTHOR> https://github.com/m3hr/swabbathon-swabbers <comment><USER2> Hi Mehr, I registered last year after someone very close to me was diagnosed and treated - now in remission. I added myself to your list, I hope it will help.

Here are a few things I learned after being closely involved with someone else's treatment. You may have heard all this already, sorry if I'm stating the obvious. But it never hurts to remember!

First: the treatments have gotten incredibly better in just a few years. The science and engineering in this field are progressing at a rate comparable to software. I also learned that age is an important factor: the younger you are, the better your body will react to chemo and transplant. And you live in the US, which has access to the best staff and equipment in the world.

Second: never forget that you can play a really important and active role in your care. Don't be passive! Do research on your own, don't hesitate to make doctors repeat themselves or explain in more detail, and approach the whole thing like teamwork: your doctors and nurses are one half of the team, and you are the other half. Yes, they know what they're doing. But nobody will be more invested in this than yourself. And remember that your state of mind has a true impact on your body.

I hope this helps... Good luck with the search and the treatment.

<comment><AUTHOR> Thank you!

For your first note: I have done some research and you're absolutely right! What's funny to me is that even if chemotherapy doesn't work, there are essentially plans B, C, D, etc. The new treatments are really really impressive and I'm young.

For your second: yes, I have become very active in this, especially when it comes to nutrition. The unfortunate part though is when there is so much conflicting information from studies, because the role of nutrition in cancer treatment has been only preliminarily studied. For example there is evidence that vitamin C interferes strongly with methotrexate, one of the most common chemotherapeutic drugs. Or a diet high in folic acid could cause similar trouble (when I'm already doing a leucovorin rescue). And then another study about how polyunsaturated fats can cause metastasis -- wait no they are effective against tumors in another study. Anyway my point is that I still agree with you and I ask a lot of questions and am (rather) vigilant, but unfortunately some things just aren't clear and my doctor told me to be a bit calmer about my diet. But how can I, when those nutrients can selectively feed or attack the tumors according to nih.gov! Ah!

<comment><USER2> First off, I would definitely listen to your doctor when they strongly discourage something. In our case for example, folic acid was also a no-no.

Here's a book that was very useful to us: "The Cancer-fighting kitchen" by Rebecca Katz and Mat Edelson.

One more piece of advice on nutrition (I'm just the messenger here). Listen to your body, at different parts of the treatment it will tell you different things, your tastes will change etc. Also, you can't go wrong drinking lots of water!

<comment><USER3> " Also, you can't go wrong drinking lots of water!"

Actually, you can.

Look up hyponatraemia, SIADH or water intoxication. And for an example of SIADH in a case of leukaemia: [http://www.ncbi.nlm.nih.gov/pubmed/19367383](http://www.ncbi.nlm.nih.gov/pubmed/19367383)

And there was the well known Wii case: [http://www.dailymail.co.uk/news/article-1224051/Wee-For- Wii-...](http://www.dailymail.co.uk/news/article-1224051/Wee-For-Wii-water- drinking-contest-death-Jennifer-Stranges-family-awarded-10m.html)

</comment></comment></comment></comment><comment><USER4> Hi Mehr,

I'm a leukemia survivor (AML) and was diagnosed when I was 21 and in undergrad, roughly 8 years ago. I started www.cheekswab.org in 2012 to educate people, especially ethnic minorities, about the exact complications facing minorities who need bone marrow transplants. I also wanted to fill a need that I saw around direct communication around what it's like to be a donor, what the statistics are, what the process is like, and interviews with real people who have gone through the donation process recapping their experiences. I haven't done much with Cheekswab in the last several years but my new years resolution for 2015 was to figure out a path forward with it.

I live and work in NYC as a software engineer and have a lot of experience running these sorts of drives, particularly on college campuses. Feel free to reach out to me if you'd like to talk, whether about leukemia or bone marrow drives: username at gmail.

<comment><AUTHOR> Holy shit this is amazing. And I'm so happy you have been event-free for so long! (To be honest, Wikipedia makes AML sound terrifying; I have ALL). I just looked over the site and the last post and accompanying blog made me feel better about jumping into this next round of treatment. Thanks so much. I'll definitely share this.

</comment></comment><comment><USER5> I joined the national marrow registry in 1995 while at Fort Benning doing Army stuff. Donated in 1997 to a girl with leukemia. They did the procedure where they drilled into my iliac (sp?) crust.

It hurt like hell for 12 hours and then I walked around Washington DC with a rucksack and gear to see our nation's capital. At the time it was a specialized process that Georgetown University was doing.

I matched again in 1998, but this time it was not a close enough match.

I cannot emphasize enough how seriously I would go back right now and do this all over again, even once a month if I had to. You're saving a life.

Statistically everyone has plenty of matches, but the problem is that your blood has to be in the registry so they can test and know. Join the registry, if not for the life you save then the wonderful happiness it will bring for helping a fellow human.

Mehrzad - friend - I do hope you find a match. I'll be thinking about you.

<comment><USER6> Tech advances mean that bone marrow aspirates are no longer necessary most of the time, they can take a regular blood donation from a vein and then extract the desired cells from that in the majority of cases today

<comment><USER5> I've heard this, and it's a great thing. Even the old type of donation is not too bad considering the upside of the potential outcome.

Thanks for adding it, people need to know this can be as simple as hooking up an I.V.

<comment><USER7> I had the wonderful opportunity to donate this way earlier this month. It was totally painless (modulo a couple of needle pricks) and just required some time hooked up to the machine (~6 hours) and a course of drugs beforehand to boost stem cell production for a few days.

For the benefit it can bring someone it is a total no-brainer decision, and I'd do it again without a second's hesitation if necessary.

</comment></comment></comment></comment><comment><USER8> If you are living in germany, [https://www.dkms.de/en/become-a- donor](https://www.dkms.de/en/become-a-donor) has you covered. They'll send you a home kit so you don't even need to leave your house to register.

</comment><comment><USER9> There are a number of people who are asking about countries besides the US. Because of Bone Marrow Donors Worldwide[0], it doesn't matter where in the world you are and where you register, as long as you register with an organization which shares their info with the BMDW.

OP, in case you haven't thought of this already: CISA is the Columbia Iranian Students Association. They may be able to help you reach out to other Iranian friends and family. Turath is the Arab students association; that may be worth a shot too. Great Neck is right nearby, and there is literally a 100% chance that someone at CISA is from Great Neck and will be able to get the word out to the Persian community there.

You're from LA so I'm going to guess you're either from Beverly Hills or are in touch with the community there, but if not, someone at CISA will definitely be as well.

[0] [https://www.bmdw.org/](https://www.bmdw.org/)

<comment><AUTHOR> Hi chimeracoder, first of all big fan of your work.

I did reach out to CISA and the co-presidents got in touch with me. And my dad has gotten the word out in the LA Iranian community. I don't know anyone from Great Neck though. And it always feels awkward asking someone that I'm not related to to put up flyers for me. A sense of shame when I need it least! Thanks for the heads up, I had forgotten about Great Neck.

</comment></comment><comment><USER10> Good luck with this project. I highly suggest using Google Forms...I don't think the Github/fork model is especially efficient for a signup list.

<comment><AUTHOR> I went with github for a "tech theme" because I was posting in the hackathon hackers facebook group. Now it's feeling a bit unwieldy but I'm not sure if I can stop it now hehe. I was hoping to do some analysis on it with a ruby script or something that could have gone along with the files. Now I'm not sure what to do.

<comment><USER11> probably not going to put it in github, but i registered with be the match on 11.02.2010. good luck.

<comment><USER12> igualmente, except 5 min ago. To OP: thanks for bringing awareness. Unless you're lying, in which case I still applaud the insight of how to reach a certain audience (this one), you lying sack :).

</comment></comment></comment></comment><comment><USER13> OP.

The US Iranian community is big, if you have flyers or if you could create a simple one pager, I will print and drop it at 5 or 6 Persian stores around the area I live in (Orange County). There are many Persians here, you never know.

Feedback for anyone running a Donor Match site.

You would think that someone who is willing to help save lives would spend 5 minutes registering, but not always.

I went to the site and they are asking me all sorts of questions (just 4), which are COMPLETELY legit, but all I want is to give some information to say I am willing. If I match someone you can email or call me for more information, educate me and such. I may still end up being a 50/50 Yes, but at least I have shown my willingness to help.

When you ask a question such as "Do you understand all the implications, etc..." what I am supposed to think? I am thinking let me go and research the implications because I am not aware of all of them, or even 2 of them.

<comment><USER14> 80% of the time they will collect stem cells from your blood.

<comment><USER13> You've given me more information than I have ever needed to know on the subject to readily sign up. Thank you!

</comment></comment></comment><comment><USER15> Hi Mehr

I'm sorry to hear about this, but glad to know you are determined to fight this back.

I'm also Iranian, right now living in Canada. I will register ASAP, hope it can help you or other similar patients.

My sister was diagnosed with Leukemia when she was 18 as well (she is living in Iran) around 7 years ago, but she was cured and she is been living a healthy life since then. Don't loose your hope, try to stay positive, you definitely know how important it is.

One more thing, I think it's amazing that you have started this thread to discuss this. You can start an effort to raise awareness on Leukemia and use your technology background to reach as many people as possible. Hopefully one day enough people will register in BMDW, so no one has to stay in waiting list any more.

</comment><comment><USER16> Stupid question but something that bothered me about bone-marrow...

Is it something that is limited in quantity and once it is gone it has left your body completely? (it won't regenerate to previous levels)

Perhaps any experts can shed light here and help break any misconceptions about this.

<comment><USER17> Donors will regenerate all the cells and recover completely. There are two types of donation, peripheral blood stem cell (PBSC) and bone marrow.

From the US donor site: median PBSC donor recovery time is 7 days, median bone marrow donor recovery time is 30 days.

[https://bethematch.org/Support-the-Cause/Donate-bone- marrow/...](https://bethematch.org/Support-the-Cause/Donate-bone- marrow/Donation-process/Donating-PBSC/)

[https://bethematch.org/Support-the-Cause/Donate-bone- marrow/...](https://bethematch.org/Support-the-Cause/Donate-bone- marrow/Donation-process/Donating-bone-marrow/)

</comment></comment><comment><USER18> Just sent a PR. I actually joined the registry a couple years back on a whim. Thought it would be a good way to help people, although I'll be nervous as hell if actually called up to donate :)

</comment><comment><USER19> Best of luck.

For maximum effect, I'd suggest making an analogue website to go along with the project because at present this initiative is limited to tech people.

</comment><comment><USER20> First of all, you should put contact info in your github profile, and in the "about" section of your HN profile (the email field is only visible to you). Many prefer to discuss health matters privately.

The issues you face as an ethnic minority are severe. More than 15 years ago, it was an expensive and error prone nightmare to attempt doing an international search across all (or relevant) country specific donor databases. Hopefully things have gotten better since then.

If memory serves, there was a national marrow donor database in Iran. Hopefully, you have friends or family who know Persian well enough to help you find it.

If you are unable to find a donor match, you might want to consider a cord blood transplant. In short, they use stem cells harvested from cord blood to rebuild your bone marrow after ablative chemo. It was a highly experimental treatment method more than a decade and a half ago, but it did have a number of successes, and the state of the art in treatment has most definitely improved since then. Yes, my knowledge of leukemia treatment research is badly outdated.

</comment><comment><USER21> Hey Mehrzad!

Just wanted to say good luck to you as your start your treatment course. I'm in healthcare IT now but I worked on a BMT/Stem Cell Transplant floor as a bedside care provider for nearly 2 years, and my partner is very well respected in that field (we met at work).

Anyway, PLEASE make sure you walk a lot on the floor and stay as active as you possibly can. Also, wash your hands before they touch your mouth every single time. Be a fanatic about hand sanitation.

For everyone else, especially minorities, please sign up to be a donor. It's a really easy process for you (if you match, you'll get a shot to promote cell generation, and then they'll extract the cells they need), and it literally means life for someone else.

If you need anything, reach out @iamkatemcg on twitter and I'll help however I can.

</comment><comment><USER22> I'm an Israeli with roots in Iraq. I would love to help, but don't know how... How do International donations work?

Also, don't know if its relevant, there are a lot of persian jews here in Israel, I'm sure many of them are suitable candidates.

<comment><USER23> You register with your regional or national donor group. They are all networked for the most part. I live in the US and three years ago I donated to someone in Italy.

</comment></comment><comment><USER24> I do have a friend who's family absolutely _swears_ by alkaline water. They heard that it had been observed to help cancer patients in Japan and the machine was a registered medical device in Japan. They bought one and converted everything to using alkaline water.

Indeed, my friend's wife's breast cancer was completely cured sans Radiation therapy. I'm not saying it is magic, or even believing that it will help you, only sharing an anecdote from two real people I know who it did work for.

It is likely worth considering as _an_ option.

<comment><USER25> The reason you're getting downvoted a lot is that HN is pretty hostile to snake oil and pseudoscience, and alkaline water is a poster child for both.

I'm happy to be corrected if I'm wrong, but I think that a registered medical device does not mean that it _works_ \- just that it's _not harmful_. There have not been any studies showing alkaline water is beneficial for anything other than possibly slowing bone loss.

I've read a lot of the marketing literature around water alkalizers, and whether or not they _actually_ do something beneficial, I can promise you that the marketing materials are full of intentionally deceptive claims (like "registered medical device"), and discredited theories, and just plain gibberish that depends on wowing the reader with a lot of science-sounding words.

If it's not snake oil, then it's a real shame it's sold using snake oil sales techniques.

<comment><USER24> _shrugs_ don't much care. I don't know if it does or does not work. I was just sharing I worked directly with a guy who's wife got breast cancer and that was the only thing she did to treat it as she refused chemo or radiation therapy. She is still in full remission and their whole family swears by the alkaline water.

I don't much care either way, take my anecdote as you will. A few downvotes aren't really going to hurt a 1500+ karma :)

<comment><USER26> There's nothing wrong with anecdotes on HN. Threads here are conversations, and anecdotes are what conversation is made of.

<comment><USER24> Thanks for keeping HN awesome.

</comment></comment></comment></comment></comment><comment><USER27> Hi Mehr,

I wish you the best of luck. I would donate gladly except healthy gay men can still not donate blood or marrow, despite there being no medical reasoning behind that. I'm sorry for your situation.

</comment><comment><USER28> Me and all the registered ones I know are registered because the national organisation set up a stand in the university mensa one day.

It only required filling out a form and a bit of blood, which took about 10 minutes and was a no-brainer for most of us. I wonder why it is not done more often like this, since it requires very low initiative from the people and will reach everyone who thought 'maybe I should' and then didn't (which are a lot of us).

</comment><comment><USER29> Joined the registry in 2012, but your post prompted me to make sure they had my latest address info. Good luck w/ everything! I hope you find your match!

</comment><comment><USER30> Question: I subscribed to a bone marrow registry a couple years ago, but now I relocated to another country. Should I register again? (both countries are in the EU)

I guess that if I'm compatible I will still be notified by the registry in the old country (or at least, my family will be notified)... and it'll only be a bit of an hassle to handle the donation, but it shouldn't be terribly urgent to resubscribe, am I right?

</comment><comment><USER31> I know this probably can't help you (Canadian, not Iranian), but what would you recommend for Canada? I found this on your links [https://www.blood.ca/en/stem- cells?utm_source=onematch&utm_m...](https://www.blood.ca/en/stem- cells?utm_source=onematch&utm_medium=redirect&utm_campaign=onematch), but they say stem cells and up to age 35.

<comment><USER32> It's suggested that the most optimal profile are people under 35, but I don't think people over that age are automatically disqualified. It's just that the majority profile they are looking for contains males who are under 35.

<comment><USER31> Thank You For Making the Decision to Register for OneMatch Joining the OneMatch Stem Cell and Marrow Network is simple. If you're between the ages of 17 and 35 and in good general health, you're eligible to sign up. You can start the registration process here.

</comment></comment></comment><comment><USER33> I have a stupid question: what do I actually need to _do_ to be registered? Like, am I going to be driving somewhere to have a needle stuck in one of my bones, or do they just draw blood, or do I just... give someone my name?

I'd totally do this if it was laid out in a super simple way, and wasn't going to cause me significant long term harm, pain, or risk thereof.

<comment><AUTHOR> The registration is a series of questions and inner cheek swabs!

<comment><USER34> In Australia it's a little different as they don't do a cheek swab. You register via a Red Cross blood service donor centre. It involves taking a small sample of blood - if you're donating blood at the same time then they just take it at the start of the donation (no additional needle required).

Good luck. I really hope a match is found for you.

</comment></comment></comment><comment><USER35> Not going to share my details on github, but I registered as a bone marrow donor here in Australia a few years back. Yet to hear anything of it, however if there's ever a match I will be very happy to potentially save someone's life. Am also a semi regular blood donor; every drop helps.

Seriously hope you find a match mehrzad!

</comment><comment><USER36> What percentage of patients in your situation are able to successfully find a match? I'm guessing it depends on how many registered donors share your ethnicity. Do you have access to any donor registries in the Middle East, where you are more likely to find a match?

<comment><AUTHOR> The site says that Caucasians have a 97% likelihood to find a match, not including stem cells from umbilical cords (which leads to a slower recovery time and thus a higher chance of infection but less likelihood of graft-vs- host disease). And while I am Caucasian, I'm not of European descent, which is what most of the registered members of BTM are. I sort of have contacts at the main hematology unit at a Tehran hospital and many cousins. Iran is part of the international group of registries in BMDW, but I'm not sure how easy it would be to get someone from Iran here. Humanitarian things like this should get someone a visa, if necessary, I'm hoping.

</comment></comment><comment><USER37> M3hr, I am Iranian too. I am signing up now. Who knows, maybe I can help. :) I wish you the best of luck.

Kamyar

</comment><comment><USER38> I'm registered in Germany (DKMS), do I have just to put the URL (of course with my other data) [http://www.dkms.de/](http://www.dkms.de/) in the REGISTERED.md file?

</comment><comment><USER39> I am Canadian but of Middle Eastern/Indian descent. How do I help you?

<comment><AUTHOR> I guess join the biggest Canadian registry that is part of BMDW! By the way, do you consider India to be part of the Middle East?

<comment><USER40> He could be half Indian.

</comment></comment></comment><comment><USER41> Does anyone know why someone with sleep apnea cannot be a bone marrow donor? I've tried to sign up in the past but I was rejected for that reason.

</comment><comment><USER42> Hey Mehr, I got joined the bethematch fund in high school about 5-6 years ago, do i need to update my screening, or anything like that?

<comment><USER43> You need to make sure your contact details are still valid so they can find you if you do get matched.

</comment></comment><comment><USER44> Great idea. Perhaps to avoid conflicts it would be better for everybody to have a separate file in predefined format?

<comment><AUTHOR> I had gotten some advice not to do that for aesthetic reasons, but now it seems necessary.

</comment></comment><comment><USER45> Hi Mehr, I'll be happy to sign up. I hope you find a match soon.

</comment><comment><USER46> PR submitted, I just got my confirmation e-mail a few weeks back :)

Good luck!

</comment><comment><USER47> Added my info - registered with GiftofLife back in 2011.

</comment><comment><USER48> Genderless no form factors as an option

</comment><comment><USER49> signing up, hopefully, I can help someone too.

</comment><comment><USER50> Good luck. You have my moral support. I hope you have your own personal support network as well.

I wish you the best of luck in your treatment.

Get healed and get back to the front!

</comment><comment><USER51> Cancer runs in my family; quite likely it will get me in the end as well.

My own experience with other life-threatening illnesses yields the insight that if you are to survive, it is your mind that will enable you to do so. If you cannot overcome the mental challenge, no amount of medicine will help you.

A close friend once rang up the US Olympic Bicycling coach to inquire as to how he might make the team:

       "Ride 120 miles every day for the next since months.  Call me again after that."

My friend could ride a lot farther than 120 miles in a day; he really was that good. Even so he did not even try because he was intimidated by the prospect of working so hard for so long.</comment>


1924 US Immigration Act – country based immigration quotas - <AUTHOR> http://fermatslibrary.com/s/immigration-act-of-1924 <comment><USER2> > The ultimate goal of the immigration act according to the U.S. Department of > State Office of the Historian was "to preserve the ideal of American > homogeneity" and preserve racial homogeneity.

Interestingly it not only restricted the immigration of Africans and banned the immigration of Arabs and Asians but also restricted immigration of Southern Europeans and Eastern Europeans (especially Italians and Eastern European Jews).</comment>


Join the world live.Try out a new real time news platform - <AUTHOR> http://www.prisvo.com <comment><AUTHOR> Please, give your feedback about what must be changed.</comment>


SpaceX Satellites Ruin Photographer's Shots of Comet Neowise - <AUTHOR> https://petapixel.com/2020/07/25/spacex-satellites-ruin-photographers-shots-of-comet-neowise/ <comment><USER2> Big discussion yesterday [https://news.ycombinator.com/item?id=23926699](https://news.ycombinator.com/item?id=23926699) , but this has a few more details about how he build the image. He got like 20 images It's not clear how many images he took. (They have 30 seconds of exposure time, you can take like 120 in an hour.)

Anyway, in a comment by vilhelm_s in the previous thread has a link to a site that explain that the usual software can select correct the parts of the images and create a nice image [https://skyandtelescope.org/astronomy- blogs/imaging-foundati...](https://skyandtelescope.org/astronomy- blogs/imaging-foundations-richard-wright/satellites-begone-how-to-remove- satellite-trails-from-your-astrophotography/)

<comment><AUTHOR> Ah good one, I missed that yesterday. Too busy...</comment></comment>


DesignerNews is where the design community meets - <AUTHOR> https://www.designernews.co/ <comment><AUTHOR> This may have already been posted (even maybe a couple of times) before, but I've just found out about it by chance and there may be others who will be glad to use it along with HN.</comment>


FBI Director says Encryption is Dangerous - <AUTHOR> https://www.cnet.com/news/fbi-director-christopher-wray-tells-cybersecurity-experts-to-partner-with-feds/ <comment><AUTHOR> You know, because privacy should have limits. (!)</comment>


Message to the Joint Force [pdf] - <AUTHOR> https://www.jcs.mil/Portals/36/Documents/CJCS%20Memo%20to%20the%20Joint%20Force%20(02JUN2020).pdf <comment><AUTHOR> It was heartening to read the handwritten addition: "We all committed our lives to the idea that this is America — we will stay true to that oath and the American People".</comment>


Getting Bin Laden: What happened that night in Abbottabad - <AUTHOR> http://www.newyorker.com/reporting/2011/08/08/110808fa_fact_schmidle?currentPage=all

<comment><USER2> "The owner of the house, who we reached for comment, had been residing in the UK, and was not aware of current events, and was distraught to discover the state of the home on his return. 'Between the crashed helicopter, burned animal stalls, and bullet marks everywhere, I can safely say I will not be utilizing AirBnB again - the place is completely trashed', Haddad told us"

</comment><comment><USER3> Points of interest to me:

\- distrust of Pakistan runs high

\- the article is almost coy about how OBL's safehouse was so close to a military academy and the contacts with another group tightly linked to ISI; this says to me the sources did not want to discuss anything more than was already public. (And do keep in mind that this sort of article is usually a tissue of deliberate leaks, so what is not said is almost as interesting as what is said. If one were particularly cynical, one might read this into the general downplaying of the downed chopper, the one major flaw of the operation.)

\- the Pakistani retaliation with the newspapers was very interesting indeed

\- the dumping-the-body-at-sea thing had precedent! I had not known that. The Saudi refusal to take the body was also interesting, but in line with the general public/private dichotomy of their behavior.

\- the bombing suggestion would have been... interesting. All things considered, the SEAL team does seem like a better idea.

<comment><USER4> I'm also impressed by the lack of trust in the Pakistanis.

By far my favorite MSM reporting on the raid is the WSJ article by Siobhan Gorman and Julian Barnes, "Spy, Military Ties Aided bin Laden Raid". Google for the title and you can read the full version from Google's cache.

If the article is to be believed, Barack Obama's role in the planning is quite impressive. He choose the riskiest of the options offered to him; the military consensus was leaning toward heavy bombing that would have guaranteed civilian casualties, but would minimize exposure to U.S. personnel. Apparently, Somalia still looms large in the memories of military leadership.

Obama took the bombing option off the table completely, and told them to do it the Hard Way -- sending commandos 128 miles into Pakistan's interior. But the best part is that Obama explicitly equipped the SEALs to blast their way out if the raid went bad and Pakistanis showed up shooting. That as opposed to throwing up their hands and surrendering, and then letting the diplomats try to arrange their release in the ensuing months (or maybe years; it took us months to get back one single CIA contractor arrested earlier this year). From the article:

"Mr. Obama directed Adm. McRaven to develop a stronger U.S. escape plan. The team would be equipped to fight its way out and would have two helicopters on stand-by in case of an emergency."

Now that, my friends, is risky. The ways in which this thing could have gone bad are almost too ugly to contemplate. How could Obama & co. possibly not have crapped their pants watching the raid live from the white house?

<comment><USER5> Just to take one of your points farther, I think the beefiness of the escape plan illustrates how little Obama values the Pakistani relationship. And how much he wanted OBL, and how much he trusted DEVGRU.

</comment></comment></comment><comment><USER6> Amid all this collective celebration, I would like to point out one excerpt (that nobody seems to have mentioned here) that leaves me disgusted:

"The C.I.A. intensified its intelligence-collection efforts, and, according to a recent report in the Guardian, a physician working for the agency conducted an immunization drive in Abbottabad, in the hope of acquiring DNA samples from bin Laden's children. (No one in the compound ultimately received any immunizations.)"

From a global health policy perspective, doctors and campaigners in third world countries already face huge uphill battles in education and decreasing fears about vaccinations. It probably isn't amiss to say that in helping fuel the FUD about vaccinations being a CIA plot, more people have been killed due to these fears than in acts of terrorism in the last decade.

[http://www.washingtonpost.com/opinions/the-fallout-from- the-...](http://www.washingtonpost.com/opinions/the-fallout-from-the-cias- vaccination-ploy-in-pakistan/2011/07/15/gIQASu12GI_story.html)

<comment><USER7> There's a huge difference between _vaccinations_ themselves being a CIA plot, and a _vaccination drive_ being a CIA plot. I have no problem with the latter.

<comment><USER8> Slightly more important (which isn't saying much) is the difference between the vaccination drive being a CIA plot and the CIA exploiting its existence.

</comment></comment></comment><comment><USER9> Great article and well written, the thing that struck me the most was the references to god, he was killed for "god and country", well Osama thought he was doing his gods work, whose god is right?

Religion is such a giant fail.

<comment><USER10> well, both sides claim to protect their own land and people from invasive other. I don't think there is any religion/ideology that discourage things like "defending property and people".

<comment><USER11> There is a strain of Christianity called Anabaptist that are pacifist, and do not believe in using violence or coersion.

<comment><USER12> ... And have the freedom to practice their religion because there _are_ people willing to defend their right to do so, on their behalf.

<comment><USER13> Not true. They practiced it when they were being slaughtered, too.

</comment></comment></comment></comment></comment><comment><USER14> really interesting article, but a few questions:

1) when did it suddenly become ok for the military to shoot unarmed combatants?

2) if "no one wanted detainees" why weren't the women with usama killed?

3) Is freezing no longer considered a form of surrender (seems especially relevant when no commands/orders were given to him?

4) why did "no one want detainees"?

<comment><USER15> When did it come "okay" for governments to send kill squads into another country?

<comment><USER16> When said country is harboring (whether intentionally or ignorantly) an international terrorist and mass-murderer.

<comment><USER17> We believe in rule of law (when convenient).

</comment></comment></comment></comment><comment><USER18> _"For God and country-Geronimo, Geronimo, Geronimo."_

 _"We should all go to Mass tonight," he said._

That definitely ruins it for me.

<comment><USER19> That's some awfully selective quoting. The Vice President made the comment about Mass as the troops were getting out of Pakistan safely. Regardless of whether you agree with the mission, seem's like a pretty reasonable thing to be thankful for. Religious ceremonies are one way that billions of people express such feelings of thanks.

<comment><USER10> this. And they are thankful for been chosen as the victor side. Understandable.

<comment><USER10> I don't understand. Honest question. Why am I modden down? I'm not an American nor am I a Christian. Is it just because I understand their point of view even though I don't agree? FWIW, I am a Muslim, born by a Protestant.

</comment></comment></comment></comment><comment><USER20> As a non-native English speaker, I wonder: what's the story behind using umlauts in the word "coöperating"? Never seen it before.

<comment><USER21> Technically it's a diaeresis, not an umlaut. It indicates the syllable break in the word "cooperate". It's not a common thing in written English, but the New Yorker has a certain writing style that calls for that sort of thing.

<comment><USER20> You're not joking, here's an extract from the Wikipedia entry [1]:

"Nowadays in English, the diaeresis is normally left out (cooperate), except by The New Yorker, or a hyphen is used (co-operate). It is, however, still common in loanwords such as naïve and Noël."

This made me smile. Thanks! :)

[1] <http://en.wikipedia.org/wiki/Hiatus_(linguistics)>

</comment></comment></comment><comment><USER22> I was a little surprised that they used wire-link fence in the simulated compound. Regardless of whether it caused the first helicopter to crash it seems to me a real wall would have made the training more effective.

I wouldn't be surprised to hear that defense contractors have already come up with quickly deployable simulated walls.

<comment><USER23> I think the article's a bit wrong on that part. DEVGRU, Special Operations outfits, and even conventional US forces have access to walls and don't use chain-link simulations.

<comment><USER24> Chain-link can be taken down and moved quicker than a standard wall.

This used to be an important factor when you didn't want 'stuff' to be seen by satellites, needed to setup and take things down quickly.

I don't know if it's still a factor today.

<comment><USER23> It's not. And modular walls are quicker than chain-link. Army SF commonly uses framed plywood walls with locking, thick metal drop hinges on each side, roughly how a ranch gate works.

They're modular so that they can be quickly re-arranged, not to hide from satellites.

</comment></comment></comment></comment><comment><USER25> print version -- [http://www.newyorker.com/reporting/2011/08/08/110808fa_fact_...](http://www.newyorker.com/reporting/2011/08/08/110808fa_fact_schmidle?printable=true&currentPage=all)

</comment><comment><USER26> I'm disappointed in the discussion here. Any comment that remotely alludes to any information that might contradict the US gov official story is being downvoted. Why are people resistant to entertain opposing viewpoints on this story? It seems unscientific (and bad journalistic practice) to rely only on one source.

<comment><USER17> Especially given the number of times the US military has lied to the public.

</comment></comment><comment><USER27> Great article.

I _had_ to comment on this bit, tho:

"ordered sandwich platters from Costco"

Nice to see the White house doesn't splurge willy-nilly :))

</comment><comment><USER28> "At one point, Biden, who had been fingering a rosary, turned to Mullen, the Joint Chiefs chairman. "We should all go to Mass tonight," he said."

Not to ask forgiveness for breaking a commandement, I would wager.

</comment><comment><USER29> We will never know what really happened, just what people want us to know.

<comment><USER29> I've been watching this post and the karma on it is up and down like mad. Peaking at 5, and a low of 1.

It's surprising how many people think that what they are told is the full picture.

Having worked for a couple of nefarious defence-related organisations over the years, I've observed that it's quite simply true that propaganda is just as easy to get into people's minds as facts.

<comment><USER26> I am surprised there aren't more comments like the parent comment. Are people really going to swallow this whole thing without any corroboration by another source? I guess I can understand that; it's easier to believe what you read. However, when people (in the comments here) raise objections or have opposing views than the picture being painted in this article, they are being harshly downvoted. I would have hoped for more skepticism on HN. :(

<comment><USER29> Spot on. I don't get the whole "we dumped the body in the sea" crap. That's not proof. My children tell better lies.

</comment></comment></comment></comment><comment><USER30> From the article: "They observed that residents of the compound burned their trash, instead of putting it out for collection, and concluded that the compound lacked a phone or an Internet connection."

How do you go from burning trash to lack of phone or internet?

<comment><USER31> They didn't. Note the use of 'and' not 'therefore'.

</comment></comment><comment><USER32> the US military invades Bin Laden's compound, calmly shoots him, searches the place, takes his body, disposes it at sea, whilst america's top brass follows... and the only recording of any of this is two DNA shots and a video taken from a drone 5km above it all - not even one photo of the face? He's not even recognisable to the soldiers sent in on the mission, so one has to lie down next to him as a human ruler (yep - about 4 inches bigger than your are, Joe!)

Bollocks. Pics or it didn't happen.

Also: this article is gloating, snuff pornography that betrays a total lack of journalistic instinct. When a journalist explicitly makes excuses for discrepancies in the story he is reporting, rather than examining them, you know that an article was not worth your time and attention.

<comment><USER4> > "Bollocks. Pics or it didn't happen."

The Obama administration doesn't care whether you or anybody else believes them. They are clearly not milking this for PR. They said it very simply: we killed him, we dumped his body in the ocean, no you may not see pictures. Go ahead and forget about the whole thing.

Edit: grammar

<comment><USER17> >The Obama administration doesn't care whether you or anybody else believes them.

True, they behaved like an unaccountable empire given that 1) Americans have paid a lot of money to exact revenge on Bin Laden and 2) the hit squad operation was illegal under international law.</comment></comment></comment>


Blade Runner: San Francisco - <AUTHOR> https://youtu.be/x_m9TUP_t_Y <comment><USER2> This is very cool, but a little scary. Does anyone know why this doesn't happen every time there are forest fires?

</comment><comment><USER3> They just need to fly over the Richmond refineries with gas flaring to reproduce the first scene in BR.</comment>


A zsh Workshop - <AUTHOR> http://www.acm.uiuc.edu/workshops/zsh/toc.html

<comment><USER2> If you guys start using zsh, I would recommend oh-my-zsh <https://github.com/robbyrussell/oh-my-zsh>.

There's also a Steve Losh blogpost about that's quite cool <http://stevelosh.com/blog/2010/02/my-extravagant-zsh-prompt/>

</comment><comment><USER3> I've really been considering learning zsh. The main reason I haven't bit the bullet is because bash is everywhere. I don't want to become as fluent in zsh as I am in bash, only to feel crippled when I inevitably have to work without zsh.

So, for those that frequently shift between zsh and bash (or ash, dash, etc.), what is the experience like?

<comment><USER4> Since both bash and zsh are 'sh' derived shells, it's not a huge context flip. It's analogous to flipping between your highly tuned (vim|emacs) config, vs logging into a new AWS image with the default version's config: You still know how to get around, but all the bells and whistles are turned off.

</comment></comment><comment><USER5> I used zsh from 1993 to 2009, then switched to bash in a fit of conformity, and now zsh becomes popular? Oof.

<comment><USER6> I tried zsh when it came out, but gave up (too rough then). Recently, I made the move and I am quite happy. This workshop will hopefully help me get deeper into it. (I used the oh-my-zsh linked above).

I love how you can type "vim " and press up-arrow, to get previous commands with vim. In bash, after typing "vim " i would have to erase the line, do "C-r" and then type vim again.

</comment></comment><comment><USER7> Looking through the feature list, is there anything that stands out as something bash cannot do, that is useful and not superfluous(like checking the mailbox?!)?

<http://www.acm.uiuc.edu/workshops/zsh/why.html>

<comment><USER8> Nope, none of the cool stuff, like extended globbing or name completion, that makes me use zsh rather than bash is on that list.

<comment><USER6> Have your tried <https://github.com/zsh-users/zsh-history-substring-search> ? Search history using substring of earlier command. Really good.

</comment></comment></comment><comment><USER8> When was this workshop from? Based on my limited experience with zsh, it feels pretty out of date.

<comment><USER9> <http://www.acm.uiuc.edu/workshops/>

1999, my senior year at UIUC. I remember sitting in this workshop, and I still use zsh today. Good times, great ACM student chapter.</comment></comment>


Only two remote holes in the default install, in more than 10 years - <AUTHOR> http://301.sickos.org/f1c1aa86

<comment><USER2> oh no, a lame xss bug in a 3rd party cgi script that runs on a solaris web server hosting a website that uses no cookies. surely this is big news!

</comment><comment><USER3> You have achieved the difficult task of making CVS less usable.

</comment><comment><USER4> This was posted on full-disclosure August 6th.

<http://seclists.org/fulldisclosure/2008/Aug/0074.html>

</comment><comment><USER5> I cant decide if that's classy or cheeky.

But regardless, I dont know if a bug in cvsweb counts as openbsd - does it?

<comment><USER6> Not when cvsweb is running on Solaris.

<comment><USER7> why run solaris at all when there is only 2 remote holes in the default install of openbsd?

<comment><USER6> Probably because when somebody donates tons of space and bandwidth to you, it's rude to argue with them over their choice of OS.

<http://openbsd.org/faq/faq8.html#wwwsolaris>

</comment></comment></comment></comment><comment><USER8> Is that a hole? Is that a default install?

<comment><AUTHOR> A security hole? Indeed. In the default install? No, but anyways, those are the security guys and I feel this was funny:-)

<comment><USER6> Not on OpenBSD at all. That's Solaris. (<http://openbsd.org/faq/faq8.html#wwwsolaris>)

</comment></comment></comment><comment><USER9> OH NOEZ! U G0TZ MY CVSWEB COOKEEZ!</comment>


How do travel sites "get" airline fares? - <AUTHOR>

How do travel booking sites (travelocity, expedia, itasoftware) get the database of airline fares?
Do they purchase a service from someone that provides them with a stream of fares and updates or do they go scrape screens?
I had assumed they purchased a feed from someplace but then I saw "The O'Hare Affair", a programming puzzle on ITA Software's web page and it seems like they scrape screens.
Ideas? <comment><USER2> I believe most of them use Amadeus

<http://www.amadeus.net> <http://en.wikipedia.org/wiki/Amadeus_CRS>

<comment><USER3> Also <http://en.wikipedia.org/wiki/Sabre_(computer_system)>

<comment><USER4> Also <http://en.wikipedia.org/wiki/Worldspan>

<comment><USER5> Also <http://en.wikipedia.org/wiki/Galileo_CRS> (nee Apollo)

</comment></comment></comment></comment><comment><USER6> Trust me, ITA isn't scraping screens to get their data.</comment>


Why modular Windows will suck for Microsoft and suck for you - <AUTHOR> http://arstechnica.com/articles/culture/modular-windows-will-suck.ars

<comment><USER2> The argument is predicated on an assumption, namely that "modularity" in desktop OSes will mean different commercial SKUs and Microsoft will continue splintering beyond the 4-5 different Vista models. Therefore, as people pick the SKU that is right for them the platform will disintegrate into a developer nightmare. My thoughts:

1) The splintering is already a mess. I don't know anybody who could name all of the differences between the current Vista versions, even Windows sysadmins where I work. I hope that MS sees this as the disaster it is and avoids it, although I have no data that says they do or don't.

2) Modularity in Windows 2008 represents a philosophical shift. In 2003 and before, Microsoft maintained that the advantage of a monolithic design was that it was all always there for the taking. If your .asp app needed to render a 3d model of data from Active Directory, cross referenced with an Excel spreadsheet, just suck in the COM/ActiveX objects and make it happen. Unfortunately while that is neat in concept, they took immeasurable shit from the community when core DLLs that supported stuff like that caused vanilla single task (like DHCP or print spool) servers to need rebooted monthly.

3) building on #2, even desktop OSes are becoming tremendously unwieldy. There's a valid case to be made for assuming that MS wants the ability to knife older components, partition the impact of security exploits in esoteric modules, and modernize the system. This is a lot harder than it has to be if you say it all comes in a single checkbox. Consider the Windows "Server" service exploit two weeks ago: <http://www.us- cert.gov/cas/alerts/SA08-297A.html> . No single PC household, virtually no multi-pc household, and perhaps a majority of commercial installations do not need this service running.

4) Painting modularity lines will allow developers to write more robust code on the platform. In the Linux world you can get a feel for the complexity or quality of a project if it's small but pulls in a lot of dependencies. A lot of cut and paste Windows coders will just google a solution and pull in whatever the first workable solution depends on. This is really easy but means that simple VBScripts and other utilities end up requiring tons of subsystems that they don't really need, taking more resources and offering more failure modes.

5) building on #4, because developers won't be able to assume people have everything installed, Microsoft will be encouraged to organize functionality in more convenient/logical ways. You frequently have to invoke ADO or WMI when using a VBScript to do simple system management tasks. While duplicating everything doesn't make any sense, it is logical to provide simple interfaces to simple tasks. This, well implemented, would mean that developers wouldn't have to learn SQL (as an unusual LDAP search syntax) in order to iterate through a user directory list.

summary: I think it's a great idea and might be their way out of the current mess of platform differentiation. They could still mess it up if they did it wrong, though.

</comment><comment><USER3> Eh. Why wouldn't they just make a minimal OS with all the necessary hooks and then sell some first-party software that runs in userspace like everyone else instead of bundling lots of crap in the OS ;P

<comment><USER4> Every application that is bundled with Windows runs in user space; they are not actually part of the operating system.

The reason Microsoft bundles that stuff with Windows is because they are trying to undercut their competitors. Why should Dell, HP, Lenovo, and Sony pay the PowerDVD guys for DVD playback software when they could just pay Microsoft for it instead? By bundling it with the operating system, Microsoft can compete on convenience instead of soley on price/features.

</comment></comment><comment><USER5> It has always annoyed me that not all versions come with hard drive encryption. A stolen/missing laptop will benefit from encryption no matter who the user is.</comment>


Doodle App in 3 hours with Firebase - <AUTHOR> http://joewlarson.com/blog/2012/04/19/firebase-introducing-fat-chalk/

<comment><USER2> Neat, but please don't call this 'OMGPOP's Draw Something'. This title is pure link bait. It's not even close to Draw Something, nor is it intended to be.

A more appropriate title would be 'Doodle app in 3 hours with Firebase'

Edit: Thanks

</comment><comment><USER3> Well, I'll be that guy and say I'm underwhelmed (no less by the link-bait headline).

 _and saving and sharing data without a line of backend code!_

That's nice and all. However, from a glance it seems like you saved yourself about 30 lines of code in <insert-favorite-web-framework>. With heroku or appengine that's about 15 minutes from first line to first deploy.

No need to lock yourself into a proprietary platform here, if you ask me...</comment>


Ask HN: What would you do to hack your iPod? - <AUTHOR>

Howdy HN!<p>What's the funniest/craziest/coolest hack for an iPod (any version) you've performed or heard of? <comment><USER2> I had a friend who put Rockbox on his hold iPod, then used a hex editor to change all the on screen text to random other stuff. Instead of saying "Now playing ..." it said "Now rocking ..."

<comment><AUTHOR> That's way cool!</comment></comment>


What iPads Will Do To Your Family - <AUTHOR> http://thelastpsychiatrist.com/2010/05/what_ipads_will_do_to_your_fam.html

<comment><USER2> His comparison to cookware is a bit off. A $150 All-Clad stainless steel pan will last a hundred years. That's like half a penny per day.

</comment><comment><USER3> <quote> My wife asserted her rightful place in the hierarchy later that evening, and took it upstairs to the bedroom to relax while watching TV. Tap, tap, tap. Occasionally, she showed me something interesting she found online. And smiling </quote>

Does anyone else find this degrading to women! Like if his wife suddenly discovered technology or the internet! Really !!! C'mon

Imagine if the story were told the other way around, the wife brings the iPad home.

Wife: I brought the new iPad home, I was reluctant for a while, after all, I already have an iPod touch, an iPhone and 3 laptops, one for the kids, one for me and the old laptop i left for my husby to surf the net every now and then.

Wife: But i decide, what the heck, one more gadget wont harm us. So I bought the iPad home. My husband and kids, gathered around me like mosquitos around a light bulb, or starving africans around a USAid shipment of food, my husby grabbed the iPad and started poking it, like an ape poking a new object he just discovered in the jungle or ... well you get the idea! I hope

When i see such stories, I think of apes

<comment><USER4> Eee. I think your idea of degrading isn't actually degrading! Respectfully, I believe you are misunderstanding the meaning of his words and possibly the idea of "degrading to woman."

When you reversed the story (I'm completely ignoring the wife's second comment), you used a nickname "husby," which is clearly meant to be derogatory because you used it in a context akin to talking to a young child. Husbands shouldn't be treated like young children on leashes, so it is negative. The actual husband's article, however, meant to convey a sense of glee and admiration which is innocent and childlike in form. A positive emotion rather than a negative one. You may say because it is such an unadulterated emotion (and she starts "Tap. Tap. Tap" -ing away), that it is animalistic, but still not degrading to woman.

I believe you are seeing what you want to see- rather than what is actually there. His wife didn't just discover the internet, she discovered a new method of browsing it which is enchanting. Honestly, if you switched the husband and wife aspect of the _article_ (not your recreation), it wouldn't seem degrading to men.

Respectfully, dbz</comment></comment>


From representation to reality: ancient Egyptian wax head cones from Amarna - <AUTHOR> https://www.cambridge.org/core/journals/antiquity/article/from-representation-to-reality-ancient-egyptian-wax-head-cones-from-amarna/4D5FA4C424606455FF935FFF07C1E5E2/core-reader <comment><AUTHOR> Here's an NYT article on the same (beware the puns!):

Head Cones in Ancient Egyptian Graves Cap Archaeological Debate

[https://www.nytimes.com/2019/12/11/science/head-cones- ancien...](https://www.nytimes.com/2019/12/11/science/head-cones-ancient- egypt.html?smid=nytcore-ios-share)</comment>


Heatmaps for node.js and the browser - <AUTHOR> http://substack.net/posts/7fce46/heatmaps-for-node-js-and-the-browser

<comment><USER2> No credit to Patrick Wied?

<comment><AUTHOR> There's a link to heatmap.js in the article.

<comment><USER2> ...I am clearly tired and cannot read properly. I looked for the credit and missed that. My bad.</comment></comment></comment>


Show HN: Pokémon-Emacs - <AUTHOR> https://github.com/gongo/pokemon-emacs <comment><USER2> It's unclear to me what this emacs script actually does. I wish there was more documentation for anything that someone asks you to install into your core development environment.

<comment><USER3> If you look at the code it just adds monster names to the modeline buffer.

<comment><USER2> The author should state that simple fact on the repo's front page.

</comment></comment></comment><comment><USER4> I'm amazed at how quickly Pokémon have taken over the world. The stories, the hype, the crazy projects, they're everywhere.

I wonder what it's like for the developers to work on a project and then see it succeed like that.

<comment><USER5> Pokemon was a big phenomenon in the late 90s. So the latest interest is really building on a solid foundation established 15 years ago. I'm sure each new game would have helped pull in new fans too.

</comment></comment><comment><USER6> See details (Japanese): [http://gongo.hatenablog.com/entry/2016/07/15/134507](http://gongo.hatenablog.com/entry/2016/07/15/134507)</comment>


Python 3 – String Manipulation and Formatting - <AUTHOR> https://witscad.com/course/complete-python/chapter/string-manipulation-and-formatting <comment><USER2>
      Returns the total number of characters in a string

      print(s.count(""))

That should be len(s). Note, for example:

      >>> "A".count("")
      2</comment>


Google Trends shows most language searches declining - <AUTHOR>

I'm always curious about what languages are gaining or losing popularity.  I queried google trends and got some surprising results.  Just about every language appears to be declining.  I'd be interested in hearing some possible explanations.<p>http://www.google.com/trends?q=ruby%2C+python%2C+.net%2C+perl%2C+lisp http://www.google.com/trends?q=java%2C+c%23%2C+c%2B%2B%2C+html%2C+javascript&ctab=0&geo=all&date=all&sort=0 <comment><USER2> its not necessarily that the languages are declining, its that google is becoming more mainstream. the amount of language searches could be increasing, just increasing at a slower rate than non-language searches.

"Google Trends analyzes a portion of Google web searches to compute how many searches have been done for the terms you enter, relative to the total number of searches done on Google over time. We then show you a graph with the results -- our search-volume graph -- plotted on a linear scale."

</comment><comment><USER3> AFAIK Google trends normalizes to total search volume. Therefore, it probably means that more and more people who use Google don't care about programming languages.

</comment><comment><AUTHOR> Thanks. That does explain it. Now for the better question: Is there an impartial source to quantitatively show what languages are gaining/losing popularity?

I found this: [http://www.amazon.com/gp/bestsellers/books/3952/ref=pd_ts_b_...](http://www.amazon.com/gp/bestsellers/books/3952/ref=pd_ts_b_nav)

and this older link: [http://radar.oreilly.com/archives/2006/08/programming- langua...](http://radar.oreilly.com/archives/2006/08/programming-language- trends.html)

<comment><USER4> Here's one I like:

[http://www.tiobe.com/index.php/content/paperinfo/tpci/index....](http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html)

The index checks three search engines for references to each of 100 programming languages and tracks the number of hits. So, it's a measure of buzz. Popularity could mean a lot of things, but buzz/hype is probably the easiest one to gauge.

</comment></comment><comment><USER5> Wow, they really like .net in India

<comment><USER6> I am not surprised. After all .net IS a very enterprise language, so youd expect to see it in every certification-cafe on every street-corner!</comment></comment>


Open Source Kids Learning software - <AUTHOR>

Hi,
is there any software I can use for kids who are between primary 1 to Primary 5. The learning goal is
1. To learn and practice tests in additions, subtraction, division, multiplication 2. Homework 3. tests for all users
etc... <comment><USER2> You may want to try out Edubuntu [1], which contains many open source educational applications. You can try it online, and download it if you like it. I recommend installing it in a VM. If you are already running Linux, you can simply install the packages that you want [2].

[1] <http://www.edubuntu.org/>

[2] <https://wiki.ubuntu.com/Edubuntu/AppGuide>

<comment><AUTHOR> Its lot of information ...let me try. Can it installed on ec2

</comment></comment><comment><USER3> I use khan academy with my kids for that...

<comment><AUTHOR> is it having simple to use and captures previous test etc..just education like what is addition..give me the exact link

<comment><USER2> Verbose links for you:

Khan Academy: <http://www.khanacademy.org/>

Arithmetic videos: <http://www.khanacademy.org/#arithmetic>

Easiest addition video: [http://www.khanacademy.org/math/arithmetic/addition- subtract...](http://www.khanacademy.org/math/arithmetic/addition- subtraction/v/basic-addition)

Exercises: <http://www.khanacademy.org/exercisedashboard>

Addition exercises: [http://www.khanacademy.org/math/arithmetic/addition- subtract...](http://www.khanacademy.org/math/arithmetic/addition- subtraction/e/addition_1)

<comment><AUTHOR> Thank you so much. I will show to my son</comment></comment></comment></comment>


Ask HN: Why is Groovy rising in popularity? - <AUTHOR> In October 2017, Groovy wasn't even in the TIOBE top 50. Last October, Groovy was at #28. It was #16 in March, and it is #11 now. What is driving its dramatic rise in the rankings?
As far as I can tell, Groovy is used mostly as a scripting DSL in Gradle (build management for Java projects) and Jenkins (CI/CD). Neither of these use cases is new. Moreover, since v5.0, released in November of last year, Gradle has started offering Kotlin as a DSL option. Other Groovy projects (Grails, etc.) are barely worth mentioning.
What's behind Groovy's recent rapid growth? <comment><USER2> First TIOBE is driven by search traffic which is driven really by activity not popularity. That means that even say, masses of people migrating away from Groovy to Kotlin would generate huge search hits which would cause it to rise in TIOBE. (Note: I'm NOT saying that is happening, just that TIOBE doesn't rule it out).

But I also don't really agree with your conclusion that because Gradle and Jenkins aren't new that they could not be responsible for a rise in popularity. I think those are both ever growing projects (especially given Android depends on Gradle). So you get a continuous stream of people encountering Groovy.

Finally, yeah, there aren't too many high profile Groovy projects, but it is very pervasive as an embedded scripting option, and there are some new projects (eg: Micronaut) where its a great option. It can be found in a lot of places you might not expect (for example, I found out that Samsung's Smart Things are all driven by Groovy DSLs). It's also very powerful for full application dev, which I use it for. I think people underestimate its usage because it so often lives under the radar inside Java or other JVM projects. It certainly isn't too popular on HN, but HN is a very specific ecosystem and intersects very poorly with the "enterprise" world where Groovy would have a lot of its use cases.</comment>


Fast Inverse Square Root - <AUTHOR> https://en.wikipedia.org/wiki/Fast_inverse_square_root

<comment><USER2> OK, one very last time. Here are a few previous submissions of this, some of which have comment:

[https://news.ycombinator.com/item?id=213056](https://news.ycombinator.com/item?id=213056) : Some comments

[https://news.ycombinator.com/item?id=419166](https://news.ycombinator.com/item?id=419166) : Some comments

[https://news.ycombinator.com/item?id=573912](https://news.ycombinator.com/item?id=573912)

[https://news.ycombinator.com/item?id=1599635](https://news.ycombinator.com/item?id=1599635)

[https://news.ycombinator.com/item?id=2332793](https://news.ycombinator.com/item?id=2332793) : Some comments

[https://news.ycombinator.com/item?id=3115168](https://news.ycombinator.com/item?id=3115168) : Some comments

[https://news.ycombinator.com/item?id=3259199](https://news.ycombinator.com/item?id=3259199)

[https://news.ycombinator.com/item?id=4526609](https://news.ycombinator.com/item?id=4526609) : Some comments

[https://news.ycombinator.com/item?id=4836589](https://news.ycombinator.com/item?id=4836589)

[https://news.ycombinator.com/item?id=6106627](https://news.ycombinator.com/item?id=6106627)

[https://news.ycombinator.com/item?id=7277215](https://news.ycombinator.com/item?id=7277215)

[https://news.ycombinator.com/item?id=7297582](https://news.ycombinator.com/item?id=7297582)

</comment><comment><USER3> For a second I was expecting this to be an April Fool's post about a "fast" way to calculate the inverse of the square root function, i.e. x*x :-)

</comment><comment><USER4> A lot of times, the code you are writing does distance comparisons to determine overlap or intersection. But if all you are doing is this, then you can use the square of the distance which is just x^2 + y^2 and you have no need for a square root. Some mathematicians call this "quadrance". Or just do all your work in this metric and reserve the square rooting for when it is absolutely necessary.</comment>


Before emojis: the utopian graphic language of Marie and Otto Neurath - <AUTHOR> https://www.theguardian.com/artanddesign/2019/aug/27/pictures-unite-graphic-design-vision-marie-otto-neurath <comment><AUTHOR> _While the narrative of human progress usually has hieroglyphics as way station to sophisticated written and verbal communication, Otto held on to the value of simple rule-based combinations of symbols and colours, particularly to graphically show complex data in easily graspable ways._

See also: _Isotype Revisited_ , proceedings of a 3-year research project at U Reading, [http://isotyperevisited.org/2012/08/introduction.html](http://isotyperevisited.org/2012/08/introduction.html)</comment>


Why You Should Share Your Ideas Online - <AUTHOR> https://stewfortier.com/why-you-should-share-your-ideas-online/ <comment><USER2> Every time I read articles like that, of course, it inspires me to create, it gives hope, and stuff like that.

It is possible. Just do simple things and write.

But then you reach lines about $4m in sales and you are like "c'mon that just not me, right? it can't be".

I guess most of the time people have these questions in their head: \- Who am I to write? I am no expert (afraid to express an opinion, share knowledge) \- Whom will I teach? There are tons of people who know more.

and all that stuff.

What I am trying to say depending on current environment the person is in – it can be very hard to overcome those feelings and just start writing.

People should know that when they start writing when they start doing what they have never done – they will at some point be at the place they never been, out of that bubble where they were with discouraging peers.

Maybe that's why people invented aliases?

<comment><AUTHOR> I think what was most interesting to me as I wrote this was that everybody started at nothing.

There was no guarantee of success for any of them -- it was the same empty page that all of us have to face.

And while it may not be likely that any one person will become mega- successful, there is only one way to find out.

</comment></comment><comment><USER3> _Yep +1 have sold $4m worth of PDFs /videos to developers since I started working on my first book in 2016. Developers are an amazing audience _

Interesting how much money devs want to spend on learning!

<comment><AUTHOR> Right? Daniel Vassallo's AWS book was another "whoa!" moment. Engineers: a) are generally paid well and b) love learning.

Seems like a wonderful market to sell educational content into</comment></comment>


Restarts in Common Lisp - <AUTHOR> https://sulami.github.io/posts/common-lisp-restarts/ <comment> phoe-krk Nitpick:

> While Common Lisp calls them "conditions", I will stick with "error" in this > post, because I don't think "condition" is very self-explanatory if you're > not familiar with the language already. Please forgive my inaccuracy.

This is misleading. It is possible to signal conditions that are not errors, and therefore do not require stack unwinding, like errors do. The condition facility allows one to execute arbitrary code with arbitrary arguments at the SIGNAL site.

`SIGNAL` walks the list of condition handlers and executes the type-matching ones in order of their binding. If a handler returns normally, then next ones are executed; if all matching handlers are exhausted, `SIGNAL` returns, and code execution continues.

        CL-USER> (handler-bind ((condition (lambda (c) (format t ";; Foo: ~A~%" c)))
                                (condition (lambda (c) (format t ";; Bar: ~A~%" c)))
                                (condition (lambda (c) (format t ";; Baz: ~A~%" c))))
                   (signal 'condition)
                   42)
        ;; Foo: Condition CONDITION was signalled.
        ;; Bar: Condition CONDITION was signalled.
        ;; Baz: Condition CONDITION was signalled.
        42

Of course, a handler can perform a non-local transfer of control elsewhere, e.g. by using `GO` or `THROW`. In such a case, control is transferred out of `SIGNAL`, so next handlers are - naturally - not invoked.

While I understand that this post is trying to appeal to language newcomers, simplifying the whole condition system to an "error try-catch" is a drastic misrepresentation of the condition system that will leave the newbies with the impression that that's all that is possible with that feature. Since it seems that the author is a Lisp newcomer as well (which I wholeheartedly admire! :), I'd advise him to use the original notation of "condition", instead for the one of "error".

<comment><USER3> Correct me if I'm wrong but can't all of the cases covered by conditions be handled in an OO language by providing an object that one can register conditions with and call signals upon? I'm trying to imagine library support for languages that don't support conditions directly.

<comment> phoe-krk You can implement a condition system in any programming language that has dynamically scoped variables. (That was how the original CL condition system was implemented on Lisp that did not have a condition system - only dynamic variables.)

You can implement dynamically scoped variables with a stack of environments, onto which you push entries atop when entering new dynamic scope and from which you pop entries when leaving a dynamic scope. (That is how the original dynamically scoped systems, including Emacs Lisp, were implemented.)

Example: [https://github.com/svetlyak40wt/python-cl- conditions](https://github.com/svetlyak40wt/python-cl-conditions)

</comment></comment></comment><comment><USER4> Aside from restarts, the core difference between the Common Lisp condition system and exceptions in most other languages is that the exception handler can run before the stack is unwound.

Having the call-stack available at the time the handler runs can be very useful; many modern dynamic languages will save some of that information in the exception object. It's still surprising to me that so very few languages have copied this feature (or even independently discovered it).

<comment><USER5> > the exception handler can run before the stack is unwound.

Old basic had an error handling model that is exceptionally elegant in some cases: "on error goto ...", with an an indication (errline, I think?) of where the exception happened, and then you could "resume next" to continue (perhaps after fixing the error condition, if the error handler is somewhere else) or directly restart at an earlier point if that makes sense.

It's simple, a little goto-ish, and has abuse potential - but if actually used, tended to end with robust code where the "usual path" was the simplified "that's what we usually do", and all the "in case something was unexpected" are listed independently. C code using goto for error handling (e.g. in the linux kernel) has similar properties.

try/catch, in all languages it exists, does not let you restart in the middle unless all the error handling code is in-line (which is comparatively disgusting IMO); lisp conditions do, and more - but they only exist in Lisp.

<comment><USER6> > only exist in Lisp.

Windows's SEH is essentially simplified CL condition system.

<comment><USER7> Not really, though it does share the property that it executes user code before unwinding the stack (the exception filters), and that the user code can choose to mark the exception as handled and allow the program to continue without unwinding the stack.

However, there is no Restart system, allowing the code that raises an exception to also declare how it can be handled. And there are no alternative exception handling strategies than searching the stack and unwinding in case a suitable handler is not found. Unwinding is not a property of Conditions in general CL, it is just one of the strategies that can be used when signalling a condition.

</comment></comment></comment></comment><comment><USER8> Many years ago I wrote about restarts in CL using the example of a CSV parser: [https://lisper.in/restarts](https://lisper.in/restarts)

Fun fact: the restarts based CSV parser was based on some real world work me and a colleague had done for an online travel portal. I wrote about it here: [https://www.reddit.com/r/lisp/comments/7k85sf/a_tutorial_on_...](https://www.reddit.com/r/lisp/comments/7k85sf/a_tutorial_on_conditions_and_restarts/drceozm/)

</comment><comment><USER9> I find that Practical Common Lisp has not aged well. Maybe it's the "practical" part with the specific examples the author used -that are now terribly dated- that is mainly responsible, but the end result is that I no longer recommend it.

My goto recommendation for newcomers is Norvig's PAIP which is full of insightful moments and unbelievably good code and for people with more experience "Let over Lambda" by Doug Hoyte, which is a mind-blowing book mainly because of the time-transcendent nature of the examples Doug chose.

<comment><AUTHOR> I'm planning to read PAIP over the upcoming weekend as a follow-up, I've already got it sitting here.

I know next to nothing about AI, beyond the basics of RNNs, so I'm hoping to learn a lot.

<comment><USER10> You may need more than a weekend!

<comment><USER11> [https://norvig.com/21-days.html](https://norvig.com/21-days.html)

</comment></comment></comment></comment><comment><USER12> In TXR Lisp, I unified condidtions and restarts into one thing: exceptions. By programmer convention only, restarts are exceptions derived from _restart_.

The documentation has dialect notes about this with a comparative example:

[https://www.nongnu.org/txr/txr- manpage.html#N-00F77525](https://www.nongnu.org/txr/txr- manpage.html#N-00F77525)

</comment><comment><USER13> Can somebody please also elaborate what is the difference between condition system in CL and "new thing" algebraic effect handlers? On the surface I see no difference, other that the latter is being a more formalized version of conditions? But we have same properties: 1. signal a condition to some handler(s), possibly with value. 2. reify the stack into a (delimited up to level with handler) continuation and let handler decide what to do with it: save, restart, resume with some value. Am I missing something?

<comment><USER6> The CL condition system is completely orthogonal to any concept of continuations or stack unwinding. Both condition handlers and restarts are plain functions and any kind of stack unwinding has to be implemented inside these functions (by means of TAGBODY/GO, BLOCK/RETURN-FROM or THROW/CATCH).

<comment><USER14> To add to that, as an example, here's how you could implement something similar in Clojure [1]. It just relies on dynamic scope to run the handler without unwinding the stack.

[1] [https://gist.github.com/msgodf/6f4e43c112b8e89eee3d](https://gist.github.com/msgodf/6f4e43c112b8e89eee3d)

</comment></comment></comment><comment><USER15> [https://imagine27.com/error-handling-or-the-emporors-old- clo...](https://imagine27.com/error-handling-or-the-emporors-old-clothes)

</comment><comment><USER16> A long time ago I wrote a conditions system for python: [https://code.google.com/archive/p/pyconditions/](https://code.google.com/archive/p/pyconditions/)

I wouldn't recommend using it, but it is an interesting error/control model, and I always wondered why it hasn't seen wider implementation - I presume because it is closer to the "dangerous" end of the power spectrum.

</comment><comment><USER17> Hey Sulami, this is off topic, but how did you get those nice sidebar footnotes? What theme are you using? Or how did you edit the css?

<comment><AUTHOR> This is the tufte-css, with some modifications.

Raw css is here: [https://github.com/edwardtufte/tufte- css](https://github.com/edwardtufte/tufte-css)

My additions on top (and all other source) here: [https://github.com/sulami/sulami.github.io/tree/develop/css](https://github.com/sulami/sulami.github.io/tree/develop/css)

</comment></comment><comment><USER18> The condition system in Common Lisp is really amazing piece of work. Error and exception handling is just subclass of larger set of possible uses called conditions.

</comment><comment><USER19> Interesting. This looks like an implementation of the abstract computer science notion of continuations ([https://en.wikipedia.org/wiki/Continuation);](https://en.wikipedia.org/wiki/Continuation\);) neat to see them used this way.

<comment> phoe-krk The Common Lisp condition system is actually just a dynamically-scoped hook system.

Handlers are the actual hooks; conditions are the object that may trigger some of the hooks when they are signaled. Restarts are an addition on top of the hooks that allows for easier non-local transfer of control; they provide little that handlers do not provide unless you count the Lisp debugger - <USER2> design, the _only_ way to leave the debugger is by using a restart.

In other words: no continuations here.

<comment><USER19> Interesting. I'm not sure I understand; what do the dynamically-scoped hooks lack that continuations would give you?

<comment><USER20> In Common Lisp, you can only transfer control up the stack. With continuations, you get multiple stacks that you can transfer control between.

</comment></comment></comment></comment><comment><USER21> With a quick DuckDuckGo-ing, I found this intro to be really understandable compared to most links I read:

[https://z0ltan.wordpress.com/2016/08/06/conditions-and- resta...](https://z0ltan.wordpress.com/2016/08/06/conditions-and-restarts-in- common-lisp/)

</comment><comment><USER22> R, continuing its theme of being a weird Lisp with C syntax and really bad function names, has a condition system: [https://adv-r.hadley.nz/conditions.html](https://adv-r.hadley.nz/conditions.html)

</comment><comment><USER23> Keep meaning to look at this, Clojure has some libraries for this I could use:

[https://github.com/clojureman/special#alternative- libraries](https://github.com/clojureman/special#alternative-libraries)

</comment><comment><USER12> The author doesn't seem to understand that not all exceptional situations are errors, which suggests he is a complete newbie to exception handling, which explains why he didn't propose the word "exception" instead of "condition".

<comment><USER9> Not all conditions signify exceptional situations. The author conflated error with condition but you're doing the opposite of conflating condition with exception.

The big plus of the Common Lisp condition system is that it gives you a programmable substrate that you can use to implement a wide variety of signaling and control flow systems. It does give you error and exception handling -on top of the condition system- but that shouldn't shoehorn your thinking into just these problem domains.

<comment><USER24> As an example of non-exceptional condition signaling:

[http://jacek.zlydach.pl/blog/2019-07-24-algebraic-effects- yo...](http://jacek.zlydach.pl/blog/2019-07-24-algebraic-effects-you-can- touch-this.html)

Progress can be signaled, and then dealt with if needed. In headless mode it won't be handled. In a console it could be a progress bar or statement. In a GUI, update a variable that changes the status display.

And it ends up as little more than a no-op if there are no handlers for it. Nothing exceptional about it, but creates a great deal of flexibility in managing a system.

<comment><USER12> There is also nothing conditional about reporting progress, except in the sense that the progress is an indication of state.

According to a Honeywell PL/I reference manual, "a condition is a state of the executing program".

The progress of some activity being 50% through is a state of the executing program.

(All the built-in PL/I conditions are exceptional situations though. This is really the same use of the word "condition" that we find in "condition status register", a machine word that tells us via flags that exceptional situations have happened like numeric overflow.)</comment></comment></comment></comment>