Why is Machine Learning the Most Popular Course at Stanford? - <AUTHOR> http://www.forbes.com/sites/anthonykosner/2013/12/29/why-is-machine-learning-cs-229-the-most-popular-course-at-stanford/ <comment><USER2> Humanities undergrads all sign up for Intro to Psych, because they want to understand, like, how people think 'n' stuff.

Then most discover it's 90% history and statistics, with lots of debate about what's actually true, and don't take it any further.

Machine Learning is the CS equivalent - broad appeal, but to take it any further it's mostly maths and stats, which turns a lot of people off.

<comment><USER3> No they don't. They sign up for Intro to Psych because it's a required course.

<comment><USER2> Not where I live - unless you're studying for a Psych degree of course. Other BA students could take it as an elective. It was by far the most popular first year course in the Humanities department.

</comment></comment></comment><comment><USER4> I don't know if it is a generalized feeling, but I sometimes tend to idolize my University years, where I was restlessly spending my time for pure pursuit of knowledge and truth (yeah, yeah :p). Really, those years were more about sweat and tears and curses about the bad teachers and the poorly worded manual and the absence of any documentation for the API provided to us (which was appropriate to face real life, I confess).

When I say I miss University, I miss the opportunity to choose classes at random and learn stuff I didn't know. I don't really miss the 8:30 classes and the long hours to produce lab assignments. I don't miss the effort, I miss the reward.

On a side note, maybe it is only their metrics about a class success and what "popular" is that are bad.

<comment><USER5> Maybe you should go get a PhD :) HN can be a bit anti-academia at times, but it's actually a pretty nice place to be.

<comment><USER6> It's only after you complete it that the troubles start :)

<comment><USER7> I was discussing this very issue with some friends of mine last night. The non-PhDs in the room could not believe what we were saying (core issues seems to be very limited opportunities in academia and research labs, a very strong job market for fresh graduates, and a general disdain for PhDs by startups).

</comment></comment></comment></comment><comment><USER8> Anyone else here also signs up for these courses, then never logs in?

<comment><USER9> I just finished the ML course.

<comment><USER10> yeah, me too

</comment></comment></comment><comment><USER10> The article is not saying why it is the most popular course. It only says that Ng is a personality and that ML is a hot topic these days. What is this different from other hot topics like trading, big data, or social networks analysis?

<comment><USER11> In other words, it's the most popular course because it was offered near the beginning of the MOOC craze.

<comment><USER12> Bingo. If I remember correctly, Udacity also started with the excellent AI course by Sebastian Thrun.

</comment></comment></comment><comment><USER13> Because it turns out Ng is doing a good job.

(Insider joke, "it turns out" is one of Ng's favourite phrases...)

<comment><USER14> Concretely, you're saying Ng runs a good course. :)

<comment><USER15> I just finished the "Thank You" video yesterday and, while I appreciate your humor (he does say both phrases a lot), I also want to point out what makes him so effective. It's a given that you have to be able to communicate your subject matter, but he's got an obvious enthusiasm for machine learning. And it's contagious - I'm a long way from Linear Algebra and Partial Derivatives (early '80s) but his easy-going style combined with how he presents the material makes it easy to follow along.

Now I just need a project where machine-learning would be an appropriate way of processing data!

<comment><USER14> I also finished the last of the videos over the weekend. I thought the course was excellent -- just the right amount of detail to get you started, and yes, his enthusiasm for the material is contagious.

Ng's machine learning is the first class on Coursera I actually saw through to completion, and I'm a little sad now that it's over. It reminded me of all of the best classes I took in college, how excited I was about the material and the inevitable letdown when the class ended.

<comment><USER15> Strange ... I felt the same feeling of sadness and it was only amplified by the last video where he spends half the time _thanking us_ for taking the class.

How do I even express my gratitude?

This was my second Coursera class - I started with Martin Odersky's Introduction to Functional Programming in Scala (which I also highly recommend).

</comment></comment></comment></comment></comment><comment><USER16> Apart from Prof. Ng's style and enthusiasm one of the things that makes specifically his ML class work is that he focuses a lot more on how to think about ML problems rather than the details of solving them.

I took the course without any CS background, but with some background in optimization techniques. And what i really took away was to model problems, how to optimize models, how to figure out if they are working at all, and most importantly the need to have different cross validation and test sets.

The last one is something that can be used for any statistical algorithm but often missed by new engineers.

</comment><comment><USER17> Wasn't it one of the first course of this kind? (I'm talking about the first edition, since it was renewed recently) If so, that would explain a lot, as people were attracted to novelty.

<comment><USER18> Yes, it was one of the original three. The others were AI and Databases. I took the databases course, and wrote about the experience here: [http://henrikwarne.com/2011/12/18/introduction-to- databases-...](http://henrikwarne.com/2011/12/18/introduction-to-databases-on- line-learning-done-well/)

</comment></comment><comment><USER19> I would assume it's because ML is just in the public's mind right now, particularly with the advancement in technology that is occurring (sensationalized by Kurzweil & other futurists of course)... Also, debate always seems to pop up regarding the Turing test and whether it is an accurate assessment of intelligence - with technology like voice recognition & siri (& siri-like) software approaching (broaching) Turing's declarations & theory of AI, I can understand a general curiosity from the masses from a philosophical POV. It does seem that the Turing test could soon be passed by a computer, but what that means (if AI is realized, or if Searle really defeated the logic of Turing...IMO, he did not) is something people will want to understand.... if they get bogged down by stats & CS, it seems apt; but the sign up rates & drop rates would merely indicate a demand for the philosophy regarding ML, AI, & current state of CS...if the courses offered are limited & people want to learn, they are going to get attention...

</comment><comment><USER20> Statistician here. This Machine Learning is nothing but Statistics for me.

Also as a side note, if you are going to make something based on statistics you should consider to make it checked out by a statistician because it is such a big field that for example it takes 4 years to become a statistician.

</comment><comment><USER21> Pop culture has a part to play, HAL and The Terminator series of movies come to mind immediately.

</comment><comment><USER22> Data science in 2013 has the feel of what software engineering _should_ be, and possibly what it was before the MBAs got involved and attempted to commoditize development. It involves high autonomy and few non-technical people meddle in your work or hold strong opinions of how you "should" be doing the work. You generally get to pick your tools and set priorities.

The other major appeal of machine learning is that it touches all parts of computer science. You might have to go to a very low level (C, assembly, Cuda) for performance; but there's also tons of high-level work around expressing complexity elegantly-- hence the interest in using VHLLs like Python and Clojure for machine learning. Most professional software engineers are just munching tickets, but if you're in data science, you get to learn about databases, compilers, AI, information retrieval, and statistics at a more- than-superficial level.

When you have machine learning cred, you have a much better chance of being able to be an actual computer scientist instead of a cog in some dysfunctional CodeFactory.

<comment><USER23> Any tips for a software engineer looking to make a switch to data science?

<comment><USER22> 1\. Learn some ML. Either use Andrew Ng's course or Hastie's book or Bishop's. If you complete Hastie or Bishop you will be ahead (in theoretical knowledge) of 99% of professional data scientists.

2\. Do some data science/machine learning work at your current job. It's not an either/or between SWE and DS. Software engineering is a huge part of real- world data science.

3A. Ask for a huge raise you won't get. When declined, say you'll take a regular cost-of-living raise if it comes with the title "machine learning engineer" (which, IMO, is more impressive than "data scientist").

-OR-

3B. Change jobs. After (1) and (2) you're more than qualified for a data scientist role.

<comment><USER23> Thanks. Anything special to do when looking for jobs? What keywords do you look for?

<comment><USER22> It's best to do all of this when you're employed and have been at a job for at least 2 years.

Focus on quality rather than quantity. Be selective. You can send out hundreds of CVs in a night, but you have a finite amount of emotional energy.

Network, but the most useful thing you'll get out of connections is information, not good-ole-boy introductions. Go to as many Meetups related to your interests as you can. (Most cities have data science meetups, Scala and Clojure and Python meetups, et al).

Limit yourself to one coding test per week. They're not hard or time-consuming but they're emotionally draining.

Get a good night's sleep before the interview. If you're unemployed, resist temptations to drink or keep an unusual schedule. You need to be "on" at 9:00 am.

Keywords in job specs don't mean a whole lot. A great HR team doesn't mean a great company, and vice versa. People on HN say, "I wouldn't want to work for a company that wrote job specs like that". Well, in reality, there are a lot of good companies out there with crummy HR. So don't get too obsessed over keywords because most of what's in a job-specs ("looking for candidate with a track record") is non-information.

<comment><USER23> Thanks again! By the way, I wish I could find breakfast or lunch meetups. The last thing I want to do after work is head out to the city, deal with parking, etc.

</comment></comment></comment></comment></comment></comment><comment><USER24> Because it's the future of programming...

<comment><USER25> At some point along the development you intuit, the question will be whether telling a machine what to do can be still considered as programming.

</comment></comment><comment><USER26> machine learning is the key to future</comment>


After FCC Abandons Net Neutrality, States Take Up the Fight - <AUTHOR> https://www.wired.com/story/after-fcc-abandons-net-neutrality-states-take-up-the-fight/ <comment><USER2> one of the manny reasons i love states rights.</comment>


Preliminary assessment of the International Spreading Risk of Coronavirus [pdf] - <AUTHOR> https://www.mobs-lab.org/uploads/6/7/8/7/6787877/wuhan_novel_coronavirus_jan26.pdf <comment><USER2> This is the paper summary: [https://www.mobs- lab.org/2019ncov.html](https://www.mobs-lab.org/2019ncov.html)

And this is the Google Data Studio Visualization Dashboard:

[https://datastudio.google.com/reporting/3ffd36c3-0272-4510-a...](https://datastudio.google.com/reporting/3ffd36c3-0272-4510-a140-39e288a9f15c)

And data is provided by official source from DXY.cn, [http://3g.dxy.cn/newh5/view/pneumonia](http://3g.dxy.cn/newh5/view/pneumonia)

</comment><comment><USER2> The least expensive and safest approach of preventing a spreading of 2019 nCorv outbreak globally is still isolation, isolation and isolation.

If the human contact is absolutely unavoidable, then you follow the guide in the link.

</comment><comment><USER3> This estimate is broadly consistent with that published last week by a Imai et. al. [1] That previous work looked at foreign cases up to 18th January, and concluded the number of contagious cases in Wuhan as of that date is likely in the range of 1000 to 9700.

This paper gives estimates of Wuhan-area cases ranging from 7600 to 43600 for January 26.

A doubling time of 6 days was estimated for the pre-lockdown phase of the Wuhan epidemic. [2] That gives a factor of 2.5 increase in cases between Jan. 18 and 26.

Unfortunately the newer estimated case numbers are somewhat higher than 2.5 times as many; probably the older number were too low.

Note the estimated rate of increase is much LOWER than one would naively get from looking at the officially confirmed case numbers. Confirmed cases have been more than doubling every two days. This growth rate of confirmed cases is really the rate of increase of China's capability of carrying out confirmation labwork.

There exported case research shows there is still a huge backlog of unconfirmed cases to be identified in the Wuhan area.

[1] See "Report 2" at [https://www.imperial.ac.uk/mrc-global-infectious- disease-ana...](https://www.imperial.ac.uk/mrc-global-infectious-disease- analysis/news--wuhan-coronavirus/)

[2] [https://news.rthk.hk/rthk/en/component/k2/1505090-20200127.h...](https://news.rthk.hk/rthk/en/component/k2/1505090-20200127.htm)

<comment><USER4> 2.5 indeed looks too low now.

The median estimate of the size of the outbreak by Imai et al as of Jan 18 is 4,000; the new median estimate by Chinazzi et al as of Jan 26 is 21,300 (assuming a catchment population of 20M, their middle case). If both median estimates happen to be spot-on, the size of the outbreak would have grown by a factor of 5.3 between those two dates.

<comment><USER3> I don't think you've got the right conclusion. The earlier estimate of the total cases was too low.

Probably the newer estimate of total cases is ALSO biased too low. The reason for underestimate is they are assuming international surveillance found all exported cases. The paper describes this shortcoming:

 _The estimates contained in this report have been constantly growing with respect to older versions compiled with the data available at previous dates. This is because the number of detected cases at International locations and a travel history from Wuhan city has nearly tripled in the last week. It is worth stressing that this is not implying that the epidemic is growing at the same rate. The estimated size of the outbreak refers to all cases occurred in the area since the beginning of the outbreak, and notification and detection delays may play an important role that, at the moment, do not allow the evaluation of the epidemic growth rate._

<comment><USER4> Thank you. Yes, you're right. It seems more likely that earlier estimates were low.

</comment></comment></comment></comment><comment><USER5> This is interesting. China can't cover up the true scale of the outbreak because the rate of infection overseas quickly gives the game away if they are publishing very low estimates of domestic infection.

<comment><AUTHOR> It's pretty hard to cover up the dimension of an outbreak after it gets outside your borders. There are many things you can use to infer what the real dimension is likely to be.

That being said, it's also entirely likely that even the Chinese known exactly how many cases there are:

1\. Cases aren't detected unless you feel sick enough to go to the doctor

2\. Even if you go to the doctor, the symptoms have to be strong enough for the doctor to order the specific test. This is a bigger factor in the early days. After the alert is given they likely start testing everyone, at least until the outbreak is large enough that it becomes moot

3\. The big question (that I haven't seen answered yet) if how long the assymptomatic incubation period is. In other words how long can you spread it before realizing you're sick.

In the end, the factor that will determine how large of a global outbreak were actually dealing with is now transmissible it is from person to person. From what I've seen all foreign (outside China) cases have been traced back to China, meaning that person to person transmission isn't a large factor yet. If/when it does become a factor that's when the real containment "game" starts...

<comment><USER6> Some other unanswered questions:

\- recovery time? E.g. How long for the virus to run its course for those that recover.

\- total number of recovered people

\- why no babies / kids appear to show up on fatality statistics at least?

\- how useful are those surgical masks for preventing getting sick / infecting others?

\- what kind of masks actually provide protection against virus?

<comment><USER7> > \- how useful are those surgical masks for preventing getting sick / > infecting others?

After SARS the CDC published updated guidance on masks in relation to Influenza in general. TL;DR is use regular paper masks for general population, hospital staff, and patients. N95 masks for staff doing intake and direct treatment. This addresses the primary problem with N95 masks: hospitals running out.

The "N95" rating means it filters 95% of particles 3 microns or larger. Research showed only Influenza particles 4 microns or larger carried enough RNA to replicate successfully.

<comment><USER5> Any chance of sources for this? I could put a few minds at ease with this info

<comment><USER7> Here is a bit of an overview: [https://www.cdc.gov/h1n1flu/masks.htm](https://www.cdc.gov/h1n1flu/masks.htm)

You can also read _Respiratory Protection for Healthcare Workers in the Workplace Against Novel H1N1 Influenza A: A Letter Report_ published by National Academies Press for all the details.

</comment></comment></comment></comment></comment></comment><comment><USER8> I was a bit frustrated when I couldn't easily find an online guide to prevent the spread of coronavirus.. so I went ahead and compiled all the info I read and made this Coronavirus Prevention Guide [http://stopcorona.org/](http://stopcorona.org/)

Hopefully it gets seen by enough people who will put the tips into practice and slow down the spread of the virus.

<comment><USER9> There is no information on the often-called "symptoms". What are the symptoms one should be aware of, one should check for?

<comment><USER8> Symptoms and severity vary between individuals but most common is fever and coughing. Very similar to cold and flu symptoms.

To learn more please try googling this topic and look for reputable resources such as webmd or similar.

<comment><USER9> Thanks.

You made a guide homepage in the post I answerded to, which repeatedly mentions "if you have these symptoms". But the symptoms are not mentioned in the guide.

I think for a proper guide you should absolutely list the symptoms of corona virus at the introduction.

I searched in search engines. As far as I could find the corona virus symptoms are similar to pneumonia. The main symptoms are fever, cough and pain in the lungs.

This is not similar to flu symptoms which do not necessarily spread to the lungs.

</comment></comment></comment></comment><comment><USER10> I'm amazed Phnom Penh isn't on that list.

there are a lot more cases which aren't on the official figures.

<comment><USER11> What information do you have about that?

</comment></comment><comment><USER12> I think it's frankly disgusting that the international community did not learn from SARS. As has been said before, to stop the spread of a virus, you need containment and isolation. All trafic to and from China should have been stopped at the first mention of a new corona virus emerging there until the point where it could be determined either to be contained properly, or it it's lethality and infection rate were considered low enough to not be a potential international risk.

Furthermore, I think China should get some very severe sanctions from the international community for covering up the existence and how wide-spread the virus was.

<comment><USER13> China is a massive country with a billion people in it. You can't just shut it down.

<comment><USER12> Why not? Don't allow ships coming from China to enter the harbour, don't allow planes coming from China, either directly or indirectly, to land at your airports, and for most countries outside of the China region of Asia that would already create a quite effective containment.</comment></comment></comment>


Julian Assange in Limbo - <AUTHOR> https://www.lrb.co.uk/the-paper/v42/n12/patrick-cockburn/julian-assange-in-limbo <comment><USER2> > After long research, his team of 120 counterintelligence officers hadn't > been able to find a single person, among the thousands of American agents > and secret sources in Afghanistan and Iraq, who could be shown to have died > because of the disclosures.

Sounds like the NSA who couldn't point to a single instance of stopping any type of terrorist attack/operation despite collecting anything they could get their hands on.

<comment><USER3> "Sounds like the NSA who couldn't point to a single instance of stopping any type of terrorist attack/operation despite collecting anything they could get their hands on."

This is kind of a misrepresentation of the situation.

Manning leaked mostly diplomatic cables, the contents of which he was unaware of, thereby harming his whistleblower credentials.

The contents were not what we would regard as 'intelligence information' \- more aptly described as 'the e-mails of the US diplomatic foreign corps', some of which contained sensitive information'.

That gigabyte of private information was released and there wasn't a single scandal of it shows how tight the operation was, moreover any reading of the cables demonstrates how well the US diplomatic corps were actually doing their jobs.

Far from releasing damning information about Americans, the cables released inside information about _Arab_ leaders and their systematic corruption.

To unearth that amount of private information, to have it combed over by thousands of journalists trying to find a juicy bit, and to come up with very little ... is frankly something Americans can be proud of.

It's ridiculously ironic that Manning, in his attempt to discredit America, ended up doing what US diplomats were unable to do within the constraints of their jobs, which is to speak truth to power about the corruption in the Middle East - which ignited the Arab Spring.

The real world is sausage making and grinding, any skeptical, decontextualized look under any rocks will always yield something to talk about - so in the end, it's really the details and context that really do matter.

The cables did truly pose a serious threat to the security and integrity of individuals in various ways, and obviously it compromised many programs. That there doesn't seem to be any deadly outcomes is wonderful, but it doesn't abnegate Manning from the inappropriate actions he took particularly on the cable leak.

What's far more interesting about this case, is the fact that the press used to be in love with Assange, and now they hate him. I wonder what caused them to turn. Obviously, his close ties to Russia are problematic, but it's hard to see exactly what it is. It's possible that he's just not contemporarily a social advocate in their view: we're now full-on into intersectional issues, matters of state etc. are 'old news' it would seem.

<comment><AUTHOR> > That gigabyte of private information was released and there wasn't a single > scandal of it shows how tight the operation was, moreover any reading of the > cables demonstrates how well the US diplomatic corps were actually doing > their jobs.

No, it just shows how subservient to U.S. foreign policy the American press is (they did _not_ undertake any widespread publishing of embarrassing details from the cables), and how uninterested and easily misled the American public is about our government's actions overseas.

> What's far more interesting about this case, is the fact that the press used > to be in love with Assange, and now they hate him.

The American press was never _that_ in love with Assange -- the smear jobs and carping about his character started very soon after the Manning leaks, as Cockburn points out. The nail in the coffin was publishing the DNC emails, which despite containing a great deal of newsworthy details and indications of corruption, became a convenient scapegoat for Clinton's loss in the 2016 election and are now viewed almost exclusively in that light. (I think some legitimate criticisms can be lodged against Assange for electioneering in his timing of the leaks, but Clinton _did_ joke about assassinating him and did all she could to put him in prison, so ....)

<comment><USER3> "No, it just shows how subservient to U.S. foreign policy the American press is "

This is demonstrably false.

Forst - the press loves a scandal, it's what they live on. They were happy to talk about Snowden, Assange etc. for quite a long time.

You're literally saying the press is acting against their own best interest and purpose which is upside down.

Second - we don't need the press to find wrongdoing. It's all there for you to see. Where is the scandal?

The cable releases prove that the American diplomatic corpos is doing a good job by any measure.

<comment><USER4> > You're literally saying the press is acting against their own best interest > and purpose which is upside down.

Are you suggesting that them acting a certain way shows that acting that way is in their best interest (because they wouldn't act that way otherwise)? Are you sure they know what cause of action is in their best interest? Are you sure they consider "their best interest" to be the same you consider it to be?

Is the 24/7 news cycle hype in the best interest of "the media"? Was the war- drumming with barely any skepticism about the Iraq war(s) in their best interest?

> Second - we don't need the press to find wrongdoing. It's all there for you > to see. Where is the scandal?

What? The public at large gets their information from the press. If the press does not report, it does not happen for large parts of the public. That's why taking control of the press is usually the first thing during any coup and for any authoritarian state.

</comment></comment></comment></comment></comment><comment><USER5> I forget.

Anyone know why we're treating Julian Assange like the worst criminal that ever existed?

" Those two shootings were a thousand times repeated, though the reports were rare in admitting that the victims were civilians. More usually, the dead were automatically identified as 'terrorists' caught in the act, regardless of evidence to the contrary. "

Here's an argument against Leetcode. There are real patterns in our work. That quote is a real pattern in law enforcement. Test for the patterns, not how slick someone is in a contrived scenario.

We seem to be stuck in deja vu world. The same problems over and over, everywhere, with an unwillingness to fix or acknowledge it.

Not many body cams existed for those deaths, huh?

Sad, I'll erase it from my mind and move on for this evening, as usual.

Don't stick the guy that showed it to us in jail. Don't be the emperor that killed the messenger.

Goals, I guess.

<comment><USER6> Because he revealed evidence of one of the worst crimes committed by humanity in the last 100 years?

4 million innocent people murdered in illegal wars is a lot of blood on the hands of the American people. And, we all know how much they hate to be embarrassed by such things ..

<comment><USER7> >4 million innocent people murdered in illegal wars

This phrase has always bugged me. How do you carry out a 100% legal war? War is by its very nature an uprooting of the normal system where we resolve conflicts in a peaceful and organized fashion.

<comment><USER8> I am sympathetic to the point that you are making and hate to go all legal- positivist, but an illegal war is a war that isn't legal under international law. Defending your country from an invasion is like the gold standard of legality. It sits in contradistinction to, e.g., wars of aggression, which are what they sound like. To be a legal war where you're not defending against an invasion, it's necessary to have either a UNSC resolution supporting the war or a compelling self-defense/preemptive justification.

For the 2003 invasion of Iraq, people argue that it was illegal because there was no UNSC resolution. The U.S. and U.K. argued that it was authorized under the UNSC resolution that blessed the first U.s. invasion of Iraq. I think that sounds like nonsense, and particularly when you factor in that the actual pretenses for the 2003 invasion were false and probably fabricated by the aggressing parties—it seems like not a stretch to call it an illegal war.

Obviously the 2003 Iraq Invasion doesn't itself get you to OP's 4 million body count, but I hope this is a helpful start.

<comment><USER5> Without getting too much into international law, which is mostly laughed at, evidently, sometimes I think it's just better to see some video:

[https://youtu.be/1Z3f_p_7OeE](https://youtu.be/1Z3f_p_7OeE)

It was very illegal to put it quite frankly.

<comment><USER8> 100%. Not that this means anything but I'm a JD and my JD girlfriend specializes in international law and we agree it's basically a joke. But hell yeah it was illegal.

</comment></comment></comment></comment></comment></comment><comment><USER9> Check out Chomsky's support for Assange [0]. Sadly there's too much going on to bring enough attention to this case.

The sad irony is that none of this thread's discussion or anything else would make any difference. This article is written in "London Review of Books", not even a single news agency is interested in this currently.

[0] [https://youtu.be/gxLa6jtF01g](https://youtu.be/gxLa6jtF01g)

</comment><comment><USER10> It should be no surprise that these people might retire from military and join local state police and enjoy killing similarly less fortunate American citizens

> helicopter pilots exchange banter about the slaughter in the street below: > 'Ha, ha, I hit them,' one says. 'Oh yeah, look at those dead bastards,' the > other says. They have mistaken the camera held by one of the journalists for > a rocket-propelled grenade launcher, unlikely though it was that armed > insurgents would stand in the open in Baghdad with a US helicopter hovering > overhead. They shoot again at the wounded as one of them, probably the > Reuters assistant Saeed Chmagh, crawls towards a van that has stopped to > rescue them. When the pilots are told over the radio that they have killed a > number of Iraqi civilians and wounded two children, one of them says: 'Well, > it's their fault for bringing their kids into the battle.'

<comment><USER11> And these are the scumbags we're supposed to honor, thank, and in the future remember fondly? Memorial and veterans' days should only apply to soldiers who fought in wars against their will (drafted) or had a basis in reality. Last one was WWII. The scumbags who fought in later wars should question their life decisions. Some of them regret it already. Good.

<comment><USER12> Wasn't there a draft for the Vietnam war? And probably also Korea? One of the issues I can remember there is that less-well-off people couldn't buy themselves out of the draft. This affected minorities especially.

<comment><USER13> Vietnam yes, Korea yes, laughably easy to dodge in both cases for poor and rich alike.

</comment></comment></comment></comment><comment><USER14> While I don't really like JA, tend not to trust him, and disagree with a lot of his choices, it is unquestionable that he suffered a lot of injustice; while the public turned on him and continues to fall for simplified coverage of all matters involving him. The latest example, I believe, was the report on his life at the embassy and how he received the email archive in 2016.

[1] is the popular CNN version, while a week earlier El Pais reported [2] very differently on the very same material. And that still doesn't address CNN's suspicious depiction and emphasis of the evil hackers (German CCC members) who visited JA.

That reminds me, since the ECHR or CJEU—I don't remember which one—ruled that you can't sentence a person to prison forever, wouldn't it be inhumane to extradite someone when the potential degree of penalty is over 150 years?

[1]: [https://edition.cnn.com/2019/07/15/politics/assange- embassy-...](https://edition.cnn.com/2019/07/15/politics/assange-embassy- exclusive-documents/index.html)

[2]: [https://english.elpais.com/elpais/2019/07/09/inenglish/15626...](https://english.elpais.com/elpais/2019/07/09/inenglish/1562663427_224669.html)

[3]: [https://www.emptywheel.net/2019/07/15/on-cnns-wikileaks- excl...](https://www.emptywheel.net/2019/07/15/on-cnns-wikileaks-exclusive- remember-the-other-document-dumps/)

[4]: [https://shadowproof.com/2019/07/15/cnn-twists-ecuador- embass...](https://shadowproof.com/2019/07/15/cnn-twists-ecuador-embassy- surveillance-records-attack-assange/)

<comment><USER15> I 'turned on him' because as I learned more about him I trusted his motives less.

If I thought his motives were pure, I would give him more slack but I think he has nefarious motives based on his indiscriminate releases. 150 years sounds right for a spy at his stature without a state sponsor, good thing we aren't at war or there may be an argument to kill him.

<comment><USER16> If anything his "indiscriminate releases" shows that his motive was pure, compared with releasing only what you like.

</comment></comment></comment><comment><USER17> > But today Ellsberg is celebrated as the patron saint of whistleblowers while > Assange is locked in a cell in London's Belmarsh maximum security prison for > 23 and a half hours a day.

Ellsberg was charged with a bunch of crimes too, which would have resulted in 100+ years of jail time. He's considered a good person _now_ because he defended himself and won. It should also be noted that he very much supports Wikileaks.

It should also be noted a big difference in the cases is that Ellsberg leaked documents he already had legal access to, and was therefore a whistleblower. Assange leaked documents that he had to illegally acquire first (either with help or without, but either way he was in possession of stolen goods). You can't get whistleblower protection for leaking information you didn't have legal access to.

I totally understand why Assange is fighting extradition -- it's highly unlikely he would be treated fairly or get a fair trial. But I doubt he'll ever be broadly considered a hero until he defends himself in court.

<comment><USER18> Broadly? I thinks that's a very American centric perspective. About the last system of justice I'd like to find myself at the mercy of outside those in totalitarian countries is the American one. It has earned itself an awful reputation, in Europe, at least. It's such a shame that countries like the UK appear to be behaving like client states of America.

<comment><USER19> I think this is a ridiculous perspective, especially when virtually every European countries is on the inquisitorial system. (See _The Trial_.)

It is my opinion that the US is probably one of the best countries when it comes to the rights of a defendant ― well, before a guilty verdict.

I ask that you actually take a look at some of the kinds of people who run the federal courts in the United States. See something like [https://www.youtube.com/watch?v=IXv7anhiIBY](https://www.youtube.com/watch?v=IXv7anhiIBY). These are serious _legitimate_ people who are working in and trying to improve a highly developed yet highly imperfect legal system (and country).

<comment><USER20> > It is my opinion that the US is probably one of the best countries when it > comes to the rights of a defendant ― well, before a guilty verdict.

Perhaps in the ~5% of the cases that actually go to trial.

</comment></comment></comment></comment><comment><USER21> > After long research, his team of 120 counterintelligence officers hadn't > been able to find a single person, among the thousands of American agents > and secret sources in Afghanistan and Iraq, who could be shown to have died > because of the disclosures.

When the Taliban killed someone for doing something that offends them, such as providing education for girls, did they generally leave a message explaining how that particular person came to their attention?

<comment><USER22> Presumably counterintelligence officers put more effort into their research than "ask the Taliban why they did it."

</comment></comment><comment><USER23> If Americans allow assange to be hounded without end, it's extremely dangerous for journalists everywhere in the future. This is a matter of the state being allowed to commit crimes in secret and whether journalists are allowed to report on it without fear of lifelong torture

Edit: Manning was tortured by being denied sleep for years, and trump openly advocates for it. Right now he's in solitary confinement which is also a form of torture

<comment><USER24> _If Americans allow assange to be hounded without end, it's extremely dangerous for journalists everywhere in the future._

I'll take that one further: it's extremely dangerous for _anyone_ in the future.

This whole saga has been another example of what happens when the people in power don't get their way: they will abuse existing systems until they do. Or at the very least, until they've made enough of an example of somebody so the next person won't be tempted to do the same.

</comment></comment><comment><USER25> [https://archive.is/haMuY](https://archive.is/haMuY)

</comment><comment><USER26> Please don't just carelessly comment about WAR as something minor and justifiable. With all the power, wealth, and facilities, it took us only a few months of pandemic pressure, a few weeks with fear of tear gas, and violence on streets. So many hearts broke, so many men cried, system often failed to control, many felt hopeless, and so many got depressed because of uncertainty.

And yet we carelessly talk about WAR as if everything about it is small and normal that nobody should be held accountable and we should do all of it and non of it is our problem. We do all that talking without really knowing anything about it. Media just made it so easy for people to do that and that's how we don't put any effort to stop wars.

</comment><comment><USER15> Julian took an action that has consequences. The US is (in)famous for its 'soft power'. While the US wont outright kill him they will leverage their soft power to neutralize his ability to harm future operations.

He played the espionage game without an explicit state sponsor, jail time was the best outcome he could hope for. Sadly because he doesn't have a state sponsor the likelihood of an exchange is.... low.

<comment> jorge-d I have a hard time understanding how playing the "espionage game" in a country were you don't even live can even be procecuted. US law is not supposed to apply abroad. But yeah that's where that "Soft Power" card comes into play I guess.

<comment><USER27> > US law is not supposed to apply abroad

That's what the "Imperialism" monkier that a lot of "enemies of the USA" coin means. The Megaupload guy, a guy from Australia, Hew Raymond Griffiths (copyright infrignment... really?) and Gary McKinnon (admin/admin Windows machines).

On this day an age, the majority of countries will bow to the USA and give anything the country asks for. Few countries are really independent and would dare to stand up even for their own citizens. It is sad, but countries like Russia and China doing "what is right" to balance that sort of power is a scary situation where we have arrived.

</comment></comment></comment><comment><USER28> He has been in limbo for so many years.... I wish that I knew what to do to get this resolved.

</comment><comment><USER29> Article doesn't even cover recent findings of extensive spying during his stay in the embassy, it's close to a white washing.

Meanwhile HN intelligencia will bury this off the front page and vote brigading will allow critical voices to raise u To the top and flag those critical. Discussion here is impossible.

Autodead comments, like I said, impossible to have a fair open discussion here.

<comment><USER30> If you didn't routinely break the site guidelines you'd find it easy enough to participate.

Note that this thread is on the front page.

<comment><USER31> Seems common here that many interesting discussions are also controversial and therefore result in a lot of downvotes. It's a pain to read downvoted comments because of the low contrast despite them sometimes being insightful yet unpopular. I also catch myself automatically taking a harsher stance towards grayed out messages before even reading them. I wouldn't be surprised if many downvotes come in _after_ the initial graying out of a comment, a sort of dogpile based more on herd effects than the content itself. In all, the current voting system doesn't work well when it comes to controversy. Maybe that's somewhat appropriate for this community since most tech news isn't all that controversial. But it's unfortunate that it's so damn hard to read unpopular comments on this site. And impossible to reply to them. Are the mods open to changing the grayed-out punishment for downvoted comments to something else?

<comment><USER30> If you click on a grayed-out comment's timestamp, it should take you to the comment's own page and the text there should be readable.

There's no approach here that doesn't suck. The fading of downvoted comments has downsides, but I think not doing it would have more downsides. It's really important for there to be visual signals of when the community doesn't support something, because in the absence of such signals, people will routinely jump to the conclusion "Hacker News agrees with this". That's not only a non sequitur, it's a category error, but that makes no difference.

<comment><USER32> Could this not be achieved in some other way that doesn't hurt the readability? Or at least a choice to turn it off or down in settings.

Squinting your eyes, highlighting the text or going to a separate page really breaks the flow of reading.

<comment><USER33> I actually like this feature. If I want to read a downvoted comment, I just highlight its text with a mouse.

<comment><USER32> That's easy to do on a desktop, but can be cumbersome on mobile. I guess the problem is biggest on mobile, because of this and issues with glare etectera from sunlight, or low screen intensity at night.

</comment></comment></comment></comment></comment></comment></comment><comment><USER34> I totally misread this as "Julian Assange in a Lambo". Dyslexia for the win :)

</comment><comment><USER35> This seems like a good overview of the situation to me; I had previously heard Assange mentioned but never really knew what happened. Thanks.

<comment><USER36> Isn't Assange charged with helping somebody commit computer crime? Is that what journalists do?</comment></comment>


Arthur Schopenhauer on the Dangers of Clickbait - <AUTHOR> https://www.farnamstreetblog.com/2017/01/schopenhauer-dangers-clickbate/ <comment><AUTHOR> if anyone is interested in diving deeper into his work this is a great place to start: [https://en.wikipedia.org/wiki/Parerga_and_Paralipomena](https://en.wikipedia.org/wiki/Parerga_and_Paralipomena) ... I read him to better understand the viewpoints of other (for me hard to understand) Philosophers such as Hegel & Kant.

</comment><comment><USER2> But then there is Samuel Johnson: No man but a blockhead ever wrote but for money.

</comment><comment><USER3> A title with the schema "x on the y of Clickbait" is itself clickbait :)

<comment><USER4> True because clickbait is only part of the subject: generating content just for money. A non-clickbaity title would have been:

Arthur Schopenhauer on the Dangers of Writing for Money</comment></comment>


Show HN: GPS + Calendar + Traffic = always on time - <AUTHOR> http://www.NeedToBounce.com

<comment><USER2> Couple of quick thoughts after installing:

1) It appears to be continuously getting GPS data. That will kill my battery. Dead battery = I'm late anyway I may need to uninstall until this is fixed.

2) I don't need to be reminded of everything on every calendar I have access to. Have it so I can select which calendar I need to bounce for.

3) Along the same lines of 2, allow me to ignore specific events. I subscribe to a couple general holiday calendars and I don't need to be told when to leave for "Memorial Day" or whatever.

Otherwise, great concept. I look forward to keeping up with your progress.

<comment><USER3> With regards to issue #1. The drain of numerous applications using the GPS hardware on the phone and thus killing battery life makes me wish Google Latitude had an API that devs could use to request my GPS co-ordinates. If you can login via Facebook why can't you do location via Latitude ?

<comment><USER4> <http://code.google.com/apis/latitude/>

I haven't looked at it super closely, but could the interested parties let me know what's missing? I'll forward your feedback to the right people.

<comment><USER3> I don't know how I missed this. Everything I was thinking seems to be included. The only potential feature that it lacks is access to information on users other than myself, such as would be available through the web interface. I can see numerous reasons, however, as to why Google would not expose this information through an API.

</comment></comment></comment></comment><comment><USER5> My thoughts on your website (not the app, jonschwartz already covered that)

1) Nothing in <title></title> (or favicon) [Looks like you have since added a title!]

2) I chuckled once I realized your app Bounce, used Unbounce as its landing page tool.

2a) That being said, I'd switch off Unbounce as quickly as possible. Unbounce free gives you only a 200 unique visitor limit, so the minute you might want to start using the A/B testing and other data (when you have a lot of traffic), you get kicked off.

3) You need a video to show this off -- before I download an app I want to know what it looks like, how it works, things like that. I know the android market link shows off a few pictures, but I think you should also have them on your website as well.

<comment><AUTHOR> Thanks a ton for the <title /> issue. Fixed. Video forthcoming!

Re unbounce, yeah we'll build our own site shortly.

Thanks again!

</comment></comment><comment><USER6> Great concept. I would love to see a video demonstration on the landing page. How easy is it to use? How much data entry does it take? How does it determine where my calendar events are geographically? What if I put "Building 51, Room 4115"? Can it learn where that is?

As I said, it's a great concept. I just need a little more before I take the plunge.

<comment><AUTHOR> Good call. We'll start working on a video shortly.

We use some rudimentary location lookup APIs now, but hope to improve them going forward. We should have place lookups soon (e.g. starbucks, etc.) but places that don't show up on Google maps searches probably won't work.

Thanks for the feedback.

</comment></comment><comment><USER7> Thought of this one a while ago. Some of my thoughts:

\- How will you know where I am? It would be expensive to run my phone's GPS continuously to figure this out.

\- My car might not be immediately available. The time it takes to get to the car will have little or nothing to do with my GPS distance from it.

\- Parking can take a significant amount of time.

\- Traffic estimates are often wrong, sometimes greatly underestimating travel time. Being late is much worse than being early, but this is appointment dependent.

Looking forward to more details!

<comment><AUTHOR> Thanks for sharing. Our take:

\- We try to only run GPS when your next calendar event is coming up.

\- Right now we have an application-wide setting that says, "Add X minutes to my travel time." We're hoping people will use that to accommodate the fact that they have to walk to their car, find parking, etc. Eventually we'll make this configurable for each event.

\- Yeah, traffic estimates aren't 100% accurate, but they're better than crossing your fingers and hopping in the car. :)

<comment><USER7> _We try to only run GPS when your next calendar event is coming up._

That could be a problem. Perhaps you want to run it near the last appointment? This is a complicated problem.

 _Right now we have an application-wide setting that says, "Add X minutes to my travel time." We're hoping people will use that to accommodate the fact that they have to walk to their car, find parking, etc. Eventually we'll make this configurable for each event._

Some things are better done earlier than later. In "new development" cities, this is okay, but in more complicated locations it will be a serious per- appointment issue. In a time when people say the first mover advantage is an illusion, getting ahead of the UX game could mean everything.

 _Yeah, traffic estimates aren't 100% accurate, but they're better than crossing your fingers and hopping in the car._

Just remember to err on the side of early. ;-)

</comment></comment></comment><comment><USER8> Great idea. Here's what I've observed:

1) Way over-estimated the "time to bounce" for an event. It happened to be just over an hour from occurring and when I changed the start time to "manually" account for rough travel time, a more reasonable Bounce time was suggested.

2) Throws "unrecognizable event location" for a typical address (which Google Calendar takes no issue with): Location Name, Street Address, City, ST ZIP

(Wanted to see if back-to-back events made recommendation based on being at the preceding event location, but... see previous error)

<comment><AUTHOR> Thanks for the feedback!

Can I get the address that was giving Bounce trouble? We'll take a look.

</comment></comment><comment><USER9> Pretty cool. I made something like this for Windows Phone a while back that would let your routes to & from work, and your estimated departure times. It would then run traffic data on a server before your departure time, and let you know how long your commute would be. It would then track the times historically and let you know the best times to leave.

[http://www.windowsphones7app.com/windowsmobileapps/4/2011-03...](http://www.windowsphones7app.com/windowsmobileapps/4/2011-03/110.html)

</comment><comment><USER10> You should have a privacy policy if you're going to collect emails, even if its for something as simple as a waiting list.

It would make people who signup feel secure about giving you their emails and as we all know people who have explicitly signed up are probably gonna have a better chance of being your potential customers.

<comment><AUTHOR> Good call, thanks for the suggestion. I'll see if I can come up basic privacy agreement. Thanks.

<comment><USER10> Just a couple of resources I bookmarked while making our privacy policy. Some good, some not so much, but feel free to use if it helps -

>>> <http://www.iubenda.com/en>

<http://www.privacychoice.org/>

<http://ownterms.pbworks.com/w/page/6985495/FrontPage>

<http://www.docracy.com/>

<http://lexpubli.ca/>

<http://contractual.ly/>

<http://privacy-policy-generator.legalriver.com/>

<http://www.freeprivacypolicy.com/>

</comment></comment></comment><comment><USER11> Damn, I've been working on nearly the same thing for a little while now.

Nicely done!

</comment><comment><USER12> We built this same APP at Startup Weekend Boston two weeks ago, but didn't release it because we still wanted to finalize some features. Nice to know we have copycats.

Also: The data provided by Bing's API was minimal, this app won't be accurate. There is also the issue of how do you know where I am leaving from in the future?

<comment><AUTHOR> Rest assured, this was rolling around in our heads longer than two weeks ago, and we had no idea a SW team had tried to build something like this.

Not that, that would have changed anything anyway... :)

<comment><USER13> I've been _thinking_ about this for at least a year. Good ideas tend to be invented simultaneously... good luck with Bounce, looks awesome (apart from the battery draining GPS usage)

<comment><USER14> I actually patented this about 6 years ago. Now I just got to dig up the patent...

</comment></comment></comment></comment><comment><USER15> Another +1 for the concept. Get it up on the apple store as soon as possible.

</comment><comment><USER16> Concept seems awesome! Hopefully iPhone or web version to come soon.</comment>


Ask HN: Employee retention software - <AUTHOR>

Employee retention seems to be as large a problem as employee hiring. However, there are so many tools and softwares dedicated to application tracking and onboarding. However, very few to employee retention. Why is that?<p>Is it because it is a hard problem to solve through software and much more cultural/programatic or is it because it is not a problem really. And employers don't give a crap about 95% of employees and can focus on retaining the 5% without any tool. <comment><AUTHOR> Software can encourage dialog, and engagement between employee and employer and work as an early warning system for employer to determine "at risk" employees and also make the employee more connected with the employer. Now I know few software companies exist that work on employee engagement - tinyhr.com, halogen software, officevibe etc. However, still the plethora of software dedicated to recruiting far outnumbers the ones dedicated to retention. So was wondering if this signifies where HR dedicates their effort - recruiting vs retention.

</comment><comment><USER2> What kind of specific problems that would make an employee leave that could be solved with a software.</comment>


No, 'The Handmaid's Tale' Is Not 'Unexpectedly Timely' - <AUTHOR> https://www.bloomberg.com/view/articles/2017-04-25/no-the-handmaid-s-tale-is-not-unexpectedly-timely <comment><USER2> This is a pretty stupid McArdle column.

McArdle has decided, on behalf of the entirety of pop culture, than when critics refer to the message behind THT as "timely", they mean "THT is a warning about impending theocracy in North America". In fact, in sampling 3 reviews from the front page of Google that used the word "timely", all of them made the far more obvious connection: between THT and concerns about misogyny and sexism, a huge feature of the 2016 election.

Further, McArdle's attempt to knock back the idea that the overall story of THT is something out of 1992† is incoherent and actually pretty fatuous.

Consider: McArdle goes out of her way to observe that Orwell --- to her the only realistic dystopian fiction writer --- cribbed details from communist dictatorships in the USSR and China. That 1984 doesn't talk about (what she perceives to be) a credible future for the United States is excusable, because she can't write a takedown of George Orwell.

Now consider: Islamic State didn't exist in 1985, and in fact few people in the west appreciated the toll Islamic theocracy took on women in the middle east. But substitute Wahhabism for fundamentalist neo-Puritan Christianity, and a whole lot of THT seems uncannily predictive, right down to the public execution of gay people and members of other Islamic religions. Remember, Winston Smith's story took place in London, not Moscow.

If McArdle was just criticizing a TV show, I wouldn't care. But, by subtext, she's attempting to diminish the potency of the book (the book, by the way, is even more biting than the show, which strips away a lot of the systemic racism of the book's Gilead). McArdle isn't always full of it; sometimes she writes some interesting things. This isn't one of those times.

† _Note to McArdle: Suzanne Vega is still recording albums; she didn 't stop existing when you stopped listening._

<comment><USER3> _Islamic State didn 't exist in 1985, and in fact few people in the west appreciated the toll Islamic theocracy took on women in the middle east._

That doesn't sound quite right. The Iranian revolution was recent and a direct influence on Atwood's writing.

<comment><USER2> Oh, that's a good point! Good thing Bloomberg doesn't publish my comments as columns. :)

My comment could have been about 60% shorter if I just observed that, like Orwell's commentary about how the repressive undercurrents of Soviet Communism could portend things about authoritarianism in the west, The Handmaid's Tale is a pretty obvious device suggesting that the Iranian Revolution "can happen here".

Which, of course, is an observation banal apparently high school kids get assigned essays on it. Go me, for not noticing.

<comment><USER3> Having now re-read her thing and your comment, I'm even less sure what you think is so stupid about it. She seems to be saying she thinks the 'it can happen here' interpretations are facile, that books you read as an impressionable teenager appear less revealing later in life and that she no longer listens to Suzanne Vega. These seem like fairly straightforward (banal, if you want!) observations.

<comment><USER2> I am having trouble today saying anything clearly or concisely. Sorry.

My two points are simple:

1\. The claimed timeliness of THT refers not to the prospect of American theocracy but to the currency of discussions about misogyny.

2\. The dystopia imagined by THT is no less rooted in reality than 1984; in fact, THT's dystopia is more relevant today than Orwell's was or is.

That's all.

<comment><USER4> _2\. The dystopia imagined by THT is no less rooted in reality than 1984; in fact, THT 's dystopia is more relevant today than Orwell's was or is._

Given the increasingly secular nature of the US, and given that we literally have televisions (see recent revelations about IoT fuckups/overreaches) watching us and people editing mainstream history...

...yeah, sorry dude, one of these is more relevant than the other.

If you want to generalize THT to be general misogyny, maybe, but if you do _that_ then you need to treat 1984 with the same generality.

EDIT: Okay HN, clearly we are living on the precipice of a collapse of western civilization into militant theocracies. Clearly this co-opting of economics and politics by religious whackos is somehow more likely than a ubiquitous surveillance state kept in perpetual war to benefit a small elite .

Obviously, this is the more realistic dystopia, and my internalized bigotry is somehow preventing me from seeing the truth.

Or, you know, you're _wrong_.

<comment><USER2> I don't really follow any of this. THT is indisputably about misogyny (and racism, and authoritarianism). You don't have to take my word about that. And, of course, 1984 is drawn from Soviet communism, but not "about" communism.

</comment></comment></comment></comment></comment></comment></comment><comment><USER4> Concluding paragraph sums it up nicely:

 _> There is nothing wrong with enjoying implausibilities on a screen or page. But there is something very wrong with hysterically declaring that those things are reality. That risks confusion so we will not notice the real dystopia rising -- or the rest of the world will be too tired of our cries to hear any warnings we shout._

<comment><USER5> When entertainment is taken for reality, it has jumped the narrow gap from escapism to propaganda.

</comment></comment><comment><USER6> I agree with the conclusion, but this authors "I'm so smart and mature and over it" opening made me roll my eyes.

</comment><comment><USER7> The Hulu series is well written. The colors are amazing.

I think it's perfectly valid to see some parallels in current society with the dystopian society in The Handmaid's Tale. The US has a vice president who doesn't allow himself to have dinner with a woman he's not married to. The President and his team make statements to the media every day that would have been hard to predict in the most outlandish dystopian novels.

It's just a TV show.

I am sad that Elizabeth Moss is a Scientologist!

</comment><comment><USER8> Part I

> After completing a rereading, I am interested to see the show.

Isn't it possible the show is different from the book? With updates that resemble the last 5 years? How can this author purport to not find resemeblances when they haven't even watched the show, only re-read the book. I thank her for the comparison with the book, but I don't think it's what all those people calling Handmaid's Tale are referring to.

Not that I don't wish the writer was correct- it's just that it's highly likely people are comparing the show with today's society and not the book.

Having read the book, some of the most vivid scenes to me were the hermetic, sterile sex and hyperpatriarchy. Perhaps those are the _elements_ modern people are comparing to modern day? Again, even though I dislike Atwood's material (I agree with McArdle here, it's a way too concentrated and cherry- picked collage of dystopian elements) and don't believe the patriarchy is as deeply embedded as my facebook friends, I can absolutely see why people would say elements from the story relate to today.

McArdle however seems to be comparing the totality of the story to today and saying, "no, not 100% of it is true."

Part II (all sources from Wikipedia)

On the historical elements, McArdle writes: > a careful student of history would note that a decade after the Reichstag fire, most of German society still looked pretty much like it had in 1925.

So is she saying Germany of 1943 resembled Germany of 1925? She writes: > they didn't gut-renovate the economy, wipe out all religions that competed with the state, and completely reorganize society in the space of a few years;

      27 February 1933: Reichstag Fire
      9–10 November 1938: Kristallnacht
      May 1940  Auschwitz I was first constructed to hold Polish political prisoners, who began to arrive in May 1940
       From early 1942 until late 1944, transport trains delivered Jews to the camp's gas chambers from all over German-occupied Europe

I find it hard to swallow that Germany of 1925 resembles Germany of 1943, when the persecution of Jews, blacks, homosexuals and gypsies was in full swing. Yes and there was a World War going on. Yes, not _all_ religions were wiped out, but how could Germany of 1943 possibly resemble 1925? Is she focusing on the idea that the "culture" was similar and people still got married and had kids? Amdist the war, the Final Solution and even a major eugenics program including sterilization and euthansia, life was normal?

I find McArdle playing a contrarian, even hipster role here, denying resemblances between the story and modern reality. Not that I am pushing hard for the resemblances, but with my superficial research and recall of history and the story, I'm finding major problems with this review.

<comment><USER4> _> Amdist the war, the Final Solution and even a major eugenics program including sterilization and euthansia, life was normal?_

Why is this hard to believe? That's part of the horror of it, right? These folks were withdrawn from society and dealt with out of the sight of the majority of citizens.

</comment></comment><comment><USER4> _> And, of course, 1984 is drawn from Soviet communism, but not "about" communism._

I wouldn't say that 1984 is actually drawn _from_ Soviet communism any more than it reflected the overall trend of the times towards ever-more-centralized government...a trend visible in both Britain and the United States at the time.

It was more a complaint about nationalism and centralization ( [http://www.thedailybeast.com/articles/2013/08/12/george- orwe...](http://www.thedailybeast.com/articles/2013/08/12/george-orwell-s- letter-on-why-he-wrote-1984) ) and police states than a comment on the Soviet system.

~

Also, if you "don't really follow any of this", I think you're being facetious or willfully dense. Let's try again. You claimed:

 _> in fact, THT's dystopia is more relevant today than Orwell's was or is._

I claim that you are incorrect in this, to a borderline hysterical degree. You say that the THT is more relevant, when 1984 actually features a lot of things that have come to pass and will continue to pass.

Compared to the future sketched in THT, we do not have Old Testament class hierarchies and uniforms. We do not have women being completely unpersoned by the .gov for not bearing children. We do not have the Constitution any more likely being suspended in any meaningful way than we did 16 years ago. We do not keep an underclass of women for breeding purposes. We do not ban women from reading or writing or playing Scrabble. We do not prevent women from voting. We do not prevent women from owning property. We have not rounded up African-Americans for forced relocation. We have not purged Catholics, Jews, or Muslims. We do not execute homosexuals. We do not enslave women.

Now, looking over at things that have actually come to pass from 1984, we have: Secret government torture rooms (Guantanamo Bay, and your own city's black sites). Televisions with two-way cameras (Samsung smart TVs, in this case) surveilling owners. Effect two-minutes-hate of America's enemies over on Fox News (or the Left's or Right's enemies if you read Twitter) every day. History being changed and edited electronically (Wikipedia edit wars and other operations). An ever-expanding lower class, Orwell's proles or what people who don't live in affluent neighborhoods might call _the poor_ , kept asleep with booze and drugs and sexual imagery and vice. A permanent state of military conflict justifying the state security apparatus of every major player.

It's pretty obvious that 1984 is the more relevant dystopia today, tptacek. Would you prefer to elaborate on why you think that this is not the case?

(there are other, more appropriate future sketches than either of those two novels, but they aren't being discussed here)

<comment><USER9> Would you please not post ideological blather here? This is not substantive discussion.

We detached this comment from [https://news.ycombinator.com/item?id=14231623](https://news.ycombinator.com/item?id=14231623) and marked it off-topic.

<comment><USER10> For my own education, Im not sure I understand why tptaceks comment was not considered ideological blather and this one was.</comment></comment></comment>


Maintaining digital certificate security - <AUTHOR> http://googleonlinesecurity.blogspot.com/2014/07/maintaining-digital-certificate-security.html <comment><USER2> Software vendors shouldn't list CAs as trusted when they prove they can't be trusted - but removing a CA from the trust store breaks things for innocent websites who just chose a crappy CA.

Every CA should be required to publish a signed, public list of every certificate they have issued that is currently valid; and no certificate should be considered valid if it isn't on a CA's public list of certificates.

That way, when a CA fucks up like this, vendors could remove their certificates from the root stores, but could grandfather in all their previous certificates so the CA's customers have a few months to get a certificate from a decent CA. We could even use the list to contact all the CA's customers and advise them of the upgrade deadline.

If this CA isn't removed from the root store, it sends a message to other CAs: You can issue bad certificates with impunity, and there will be no negative consequences.

<comment><USER3> A compromise that wouldn't hurt innocent websites would be to remove the CA's ability to issue new certificates.

CAs knew that the stakes were high when they signed up to be a CA, so I think it'd be fair to remove them permanently. Eventually, only the truly paranoid would be left. It may cost a bit more to run a fully secure CA, and that would be reflected in the cost of a certificate from those that remain, but that'd be a price that everyone should be willing to pay.

<comment><USER4> > It may cost a bit more to run a fully secure CA, and that would be reflected > in the cost of a certificate from those that remain, but that'd be a price > that everyone should be willing to pay.

I don't know, this could really discourage the adoption of HTTPS. We need to be making it easier for sites to adopt it.

Ideally we could lessen our dependence on CAs. Sure, a "fully secure/expensive" CA would validate a certificate's authenticity with high confidence, but we'd be excluding tons of hobby projects and small shops who wouldn't want that expense.

<comment><USER5> What good does widespread HTTPS use do if you can not trust it?

I'm all for reducing our dependence on CAs, and, reducing the number of CAs we trust for signing a site, like putting the keys in DNSSEC. But until we do that, we must not trust bad apples.

<comment><USER6> It's _always_ better than plaintext HTTP. Nothing is worse than plaintext.

TLSv1.2 with good ciphersuites using ECDHE with a named curve like secp256r1 [murky origins I know, but we know of nothing else wrong with it, though Curve25519 is superior in my opinion], and an AEAD like AES-128-GCM or CHACHA20-POLY1305, properly implemented with no TLS compression at least comprehensively prevents Eve from spying on the contents of your connection in most cases, even if you're using self-signed certificates with no pinning and are entirely unprotected from Mallory.

A browser shouldn't call it secure or the endpoint trusted, but it _should_ transparently replace all uses of unencrypted HTTP worldwide, including internal ones. That should not be discouraged, and will hopefully be actioned with HTTP/2 - that was the plan, anyway.

Even if the encryption is crap (Export ciphers... RC4?) I guess it does take _some_ more work for Eve, which knocks out a few of the lower-capability adversaries.

<comment><USER7> Couldn't Mallory just replace the certificate with her own one? The browser would just pop up the same warning. The warning should show some form of a public key fingerprint at least before clicking through "I understand the risk".

</comment></comment></comment></comment></comment></comment><comment><USER8> Moxie Marlinspike gave a talk at DEFCON 19 about how broken the CA model is and suggested an alternative.

The talk - [https://www.youtube.com/watch?v=pDmj_xe7EIQ](https://www.youtube.com/watch?v=pDmj_xe7EIQ) The alternative - [http://convergence.io/](http://convergence.io/)

<comment><USER9> Had notary up and running, but was not able to force browser into using one. Unfortunately there is not enough attention from community to this project.

</comment></comment><comment><USER10> Once again, demonstration that the CA model is broken. Why does it make sense for any CA to be able to issue certificates for any domain?

<comment><USER11> What would the solution be?

<comment><USER12> DANE TLSA is probably the best current option.

<comment><USER6> On that note, it's worth taking a look at [https://tools.ietf.org/html/draft- nygren-service-bindings-00](https://tools.ietf.org/html/draft-nygren-service- bindings-00) \- the "B" record, which is in a _very_ early speculative draft. One shot among several at gluing this stuff together.

</comment></comment></comment></comment><comment><USER13> _This event also highlights, again, that our Certificate Transparency project is critical for protecting the security of certificates in the future._

No! Certificate Transparency still relays on central authorities. We need to get rid of CAs. TACK + Convergence is the correct solution.

<comment><USER14> I agree decentralization is desirable but haven't studied all of the proposals in depth. Over at [http://www.certificate- transparency.org/comparison](http://www.certificate- transparency.org/comparison) Google claims:

...that their CT approach is superior to TACK because (T1) Servers can instantly roll out a new key if the previous one is lost (T2) Global (ie. whole internet sees evil server instead of good server) and targeted attack detection is superior (T3) There are no trusted third parties (T4) Newly issued keys on totally new sites can also be validated (to a greater extent) (T5) No server modification (ie. to deliver pinning headers) is required.

... that their CT approach is superior to Convergence because (C1) It is not known to introduce side-channel attacks due to changes in the SSL connection negotiation phase (C2) Servers can instantly roll out a new key if the previous one is lost (C3) Global attacks (ie. whole internet sees evil server instead of good server) are negated (C4) There are no trusted third parties (C5) Newly issued keys on totally new sites can also be validated (C6) No server modification (ie. to deliver pinning headers) is required.

Can anyone refute these claims?

<comment><USER13> Alexandra C. Grant wrote a paper comparing different methods of improving the current CA system: [http://www.cs.dartmouth.edu/reports/TR2012-716.pdf](http://www.cs.dartmouth.edu/reports/TR2012-716.pdf)

But unfortunately she does not take TACK/pinning + Convergence in consideration.

<comment><USER15> I wrote an article discussing many CA alternatives which also includes Convergence, here:

[https://medium.com/bitcoin-security- functionality/b64cf5912a...](https://medium.com/bitcoin-security- functionality/b64cf5912aa7)

Convergence IMHO does not work. The UI is poor and fundamentally it's just the CA model with very short lived constantly renewed certificates. There's no particular reason to believe it'd work better than the existing PKI for ordinary users.

<comment><USER9> > it's just the CA model with very short lived constantly renewed certificates

Very strange conclusion. Convergence have following properties CA model does not have:

* trust is optional (you don't have to trust Iranian CAs) * trust is revocable (you can safely remove trust from any notary) * trust is distributed (you trust only if all notaries are acting as one; as opposing to "you trust anything any of CAs will say")

Notaries are not signing anything, they are not CAs. Also, there is nothing like "short lived constantly renewed certificates" in this model. Hosts are using self-signed certs (or CA signed - does not matter). Notaries are functioning in "attacker will not MiTM whole Internet" model and only help you detecting if something went wrong.

If anything, convergence is a combination of TOFU and WoT models. Although an attempt to describe a security model by such comparisons does not help much.

</comment></comment></comment></comment></comment><comment><USER16> The CCA is so aware of its own vulnerability, it refrains from the use of SSL on its own page [http://cca.gov.in/cca/index.php](http://cca.gov.in/cca/index.php) \- no https here :)

<comment><USER17> Indian govt websites have a pathetic sense of security. One prominent consumer facing website with logins and company data has a certificate issued to "Mohan Babu" (equivalent to John Doe) and expired 5 years back! I guess that's somewhat better than the other Indian govt websites that have no SSL at all!

</comment></comment><comment><USER18> > At this time, India CCA is still investigating this incident. This event > also highlights, again, that our Certificate Transparency project is > critical for protecting the security of certificates in the future.

What is there to investigate? If they had a proper system in place this should not require 'investigation'.

While I embrace the global infrastructure, it's a bit weird to give authority rights within a country that has a pretty broken legal system (re: Avnish Bajaj, etc).

<comment><USER15> Presumably if they got hacked, they want to know how they got hacked. Perhaps there's a new zero day on the loose. It always makes sense to investigate these things.

</comment></comment><comment><USER19> It's because of incidents like _this_ why I call our PKI a scam and a racket. The fact that this is even a thing that can ever happen points to massive, systemic problems in the trust model.

<comment><USER20> > a scam and a racket

Can you elaborate? I've heard a lot of people say it's broken or badly designed, but not that it's malicious or intentionally broken.

<comment><USER5> Well, it's broken and there are people getting lots of money due to the fact that it's broken.

Almost certainly the creation of the standard was not malicious, and almost certainly it currently gets support of people acting with malice. But I don't have anybody to point a finger at, even the most logical suspects aren't overtly trying to keep it broken.

</comment></comment></comment><comment><USER21> Maybe we need a browser add on that warns us when a shady/incompetent CA has signed the certificate of the current site we are on? As it sits today there is no repercussion for these terrible CAs that screw up like this.

<comment><USER22> If you don't trust the CA, you could just remove it from the root store of your OS or browser.

<comment><USER21> True, but that is a manual process that most users don't know how to carry out. We need to make it easy for the masses to "punish" the terrible CAs. If you can put pressure on the bad CAs, they will at least try to get better.

<comment><USER22> Understanding SSL is already really hard. What is a user supposed to do with a warning about a valid cert from a questionable CA? The site is _probably_ fine so you're mostly just teaching them to ignore SSL warning messages.

<comment><USER21> The idea is to cause at least a small percentage of users to distrust the cert/CA. This would cause the sites who buy CAs to avoid going with the shady CAs because of the user complaints they got after browser warnings were shown.

</comment></comment></comment></comment></comment><comment><USER23> The CA system is broken, so is BGP with routes being essentially hijacked by the word of mouth protocol. Wonder what the fixes or a reboot of the internet would look like.

<comment><USER24> Like this: [https://github.com/cjdelisle/cjdns/blob/master/doc/Whitepape...](https://github.com/cjdelisle/cjdns/blob/master/doc/Whitepaper.md#what)

</comment></comment><comment><USER25> It's a scary thought that this probably has been going on mostly undetected for over a decade before Chrome added cert pinning.

</comment><comment><USER26> I wonder if having your registrar be the only one able to issue you a cert for your domain would solve this. That way the user can verify that the cert was not only signed by a trusted CA but by a trusted CA for this specific domain.

<comment><USER27> The registrars would love this ;)

DANE and DNSSEC feel to me like the only currently proposed replacement for the CA system that has a chance of succeeding, not necessarily because of technical superiority, but because of practicality and simply being "good enough".

<comment><USER5> It's technically superior.

Instead of trusting 600 CAs, with DNAE you only trust the TLD, second level if existent, and registrar. It's an incredibly smaller attack surface. You can also register in a second TLD, inserting redundancy into any system that knows your address beforehand.

</comment></comment></comment><comment><USER6> I wonder if we can map _every_ intermediate?

Obviously Certificate Transparency (or any public audit log to some extent, really) helps a _bunch_ with this sort of thing.

</comment><comment><USER28> So when does the CA death penalty occur?

<comment><USER9> Never. Once CA, forever CA. Can't remove particular CA on local level (too hard for users), can't remove particular CA globally - because all those legitimate certs signed by that CA.

<comment><USER29> DigiNotar went bankrupt and had their cert removed from browsers after they tried to cover up a hack: [http://en.wikipedia.org/wiki/DigiNotar](http://en.wikipedia.org/wiki/DigiNotar)

</comment></comment></comment><comment><USER30> I wonder what those other domains were and why Google didn't pin them. Is it costly to pin a domain?

</comment><comment><USER31> The Cathedral isn't finished and it's crumbling already.

Back to the Bazaar!

</comment><comment><USER32> > The India CCA certificates are included in the Microsoft Root Store and thus > are trusted by the vast majority of programs running on Windows, including > Internet Explorer and Chrome.

Jesus Christ, the CA system is so broken.</comment>


Convert React JavaScript Code to TypeScript with Proper Typing - <AUTHOR> https://github.com/lyft/react-javascript-to-typescript-transform <comment><USER2> I recently started a new project. I started with kotlin and react. I was working on creating typings for redux, router, etc. Encountered a lot of issues.

Moved to typescript, things were great till I went to add redux and router. There were typing issues being worked out in the recent development branch. A few weeks back.

I love typescript. The IDE experience via visual studio is great. But I was burning a lot of time working on type libraries/definitions.

I switched to flow. I miss visual studio code and some of the typescript features. But adding typing to a react project, especially with redux and immutable is great. The typing ecosystem of flow and typescript is truly impressive. With support for union types, strong structures. Really good inference. I'm just waiting for better pattern matching with active expressions. Please steal that from F#.

This is also interesting for kotlin. [https://github.com/Kotlin/ts2kt](https://github.com/Kotlin/ts2kt)

<comment><USER3> I've been a heavy user of Flow for - two years now? I also occasionally use TypeScript. I don't contribute to the code _(in the Flow case, I don 't speak OCaml, I contributed a bit to the type library and the online docs; in the case of TS, I don't use it enough)_, but I write a bug report each time I find an issue.

I've been looking at the issues list very often, mostly out of curiosity to see what the problems are that people have (both Flow and TS) and to see which project is better at solving problems.

TypeScript seems to win hands down. Their ratio of closed tickets to open tickets is far better than that of Flow:

\- TypeScript: 2,515 open, 12,716 closed -- [https://github.com/Microsoft/TypeScript/issues](https://github.com/Microsoft/TypeScript/issues)

\- Flow: 1,830 open, 2,467 closed -- [https://github.com/facebook/flow/issues](https://github.com/facebook/flow/issues)

I have to assume they mostly close issues after solving them - it is not unheard of that issues are closed merely because they've been lying around for a few months without any updates (definitely happens for Flow).

I prefer the approach of Flow, but I think the actual developers are not present at all on Github, most answers come from other users. There are very few actual solutions to issues that are raised. The list of issues grows ever larger. Flow _does_ make progress, and it's not even bad. Every 10-15 days we get a new release and I'd say the progress is quite okay. What went really well the last 12 months was IDE integration for Flow in the case of Jetbrains Webstorm (for TS the situation always looked good), as of now, latest Webstorm version, it's actually usable. I still get too many Flow server crashes though, which may be due to my platform (Windows 10), not sure. However, it's now automatically restarted most of the time.

A TypeScript anecdote: I filed an issue that a "Member" closed as "works as intended" after a few comments back and forth (but it was clear right away that this would be the end). I filed it again - this time Anders Hejlsberg himself responded and acknowledged the issue (it _was_ kind of fundamental and not just something unimportant), and it got fixed. So here too you need a bit of luck to get through to someone who actually understands the subject well enough (including knowing when they don't understand it, if that first guy had just stopped handling my issue it would have been fine). But that's the price of using a popular large project, so this is not a complaint - just an anecdote, okay?

What I do get for myself after following the two type systems for well over two years is that there are LOTS of restrictions. Just read some of the issues in both Github repos, it's really interesting.

I find the whole situation very unsatisfying. It is clear - when you actually use it heavily for a big project for a longer period - that a type system on top of Javascript is very difficult to maintain. LOTS of unsolved cases and issues. You definitely have to adapt and use only the subset of Javascript and the type system that works. I validate an object manually and I still have to do an "any" cast in Flow because Flow does not recognize that my `if` statement secures the type. Or I have to insert such `if` statements even though from the context it is perfectly clear what I get there. For example, any inner functions, e.g. when using map, filter, reduce, loses the type if you use a variable from the outer scope. Or you have to use a lot of additional `const` for object properties even though you don't change the object - but the type checker is not intelligent enough to recognize that. You definitely write different code - and while that may seem okay there are plenty of cases where it really is objectively unnecessary, but you have to do it to satisfy the type system.

On the bright side, once you get your code all "type system ready" you really _do_ find bugs - even if it's just a few. Also good is that I now get much better autocompletion suggestions in the IDE. There's a reason why I (as project head) still insist on us using Flow even though I say "WTF?" often enough. It _does_ cost a significant amount of time though - a _very_ significant amount. I've been willing to do it because of the kind of project, which is going to be a very low-level building block for later larger projects, so it is worth spending a lot more resources on getting it right compared to a project that's on a top layer, on which nothing else depends.

Still, overall I have very mixed feelings and I see the type checkers (both TS or Flow, or any other that could be written) on top of a language that doesn't have types as a kludge that does not look like a long-term solution. There is too much friction between the language and the type system.

<comment><USER4> The question is why don't they collaborate and unify the efforts?

It seems it should only not happen for a handful of reasons.

For example, if there were real intractable philosophical differences, if someone risks losing strategic advantage, or if competing is driving better results than collaboration could.

Yet it's not obvious to me how any of these are true.

For many projects unification wouldn't make sense by a mile even for reasons not listed here.

I don't even see how the existing skill sets are tragically different, say like the the skill sets are so different for Linux/Windows admins who could never master the other's job in a week.

In this case maybe there are reasons for separate projects but are they really super compelling?

Imagine the (potential) upsides of having more resources, less confusion, and more comprehensive tooling support.

To me they are both useful projects but I don't see any fundamental advantage of one over the other that would make me lose sleep if everyone rallied behind a single effort.

<comment><USER5> The JS type system world has benefited a lot from NOT having a monopoly. When Flow started gaining some traction, the whole "handle nulls properly" thing was a huge. During that time, the TS issue tracker was filled with comments on how it didn't really make sense. I don't think TS would have ever gotten strict null if Flow didn't "compete" with it.

Them being separate allows the projects to try stuff the other group disagrees with and prove they are right. I very much like that.

Beyond that, the 2 projects really are VERY different. Again, with strict null and all the pain, it's causing on the TS side. It's not easy to just bring in features of one and merge them to the other. The entire architecture is different (eg: the flow inference). Then there's the pitty shit: I don't know if they're involved with TS, but some very visible Facebook people just can't handle the fact that the entire world doesn't revolve around Unix, as nice as it would be if it did.

Some stuff is sparking some collaboration. Babel getting support for TypeScript syntax for example.

<comment><USER6> Strict null in TS was before flow public release.

<comment><USER7> That is not true at all!

Flow was announced November 18, 2014: [https://code.facebook.com/posts/1505962329687926/flow-a- new-...](https://code.facebook.com/posts/1505962329687926/flow-a-new-static- type-checker-for-javascript/)

Typescript got --strictNullChecks with Version 2 which was announced July 11, 2016: [https://blogs.msdn.microsoft.com/typescript/2016/07/11/annou...](https://blogs.msdn.microsoft.com/typescript/2016/07/11/announcing- typescript-2-0-beta/)

Even if I'm being charitable and look for the date when the PR ([https://github.com/Microsoft/TypeScript/pull/7140](https://github.com/Microsoft/TypeScript/pull/7140)) was merged, we'd only get April 2016.

</comment></comment></comment></comment></comment></comment><comment><USER8> Author here, ask me any questions you might have. We used this internally to convert a few repos. It's not perfect but gives you a head start for converting to TS.

I also wrote about our experience with TypeScript at Lyft if you're interested:

[https://eng.lyft.com/typescript-at- lyft-64f0702346ea](https://eng.lyft.com/typescript-at-lyft-64f0702346ea)

<comment><USER9> Not specific to your project, but I suspect you'll know the answer: If React code contains sufficient information to infer type, why is a separate type system needed? (Or why can't the same inference by made at compile time, rather than scattering the code with type definitions and external type files?)

<comment><USER10> Because propTypes are leaking into runtime. ASFAIK Flow originally wanted to use propTypes but decided to use compile time only type annotations

</comment></comment></comment><comment><USER11> Same for Flow: [https://github.com/billyvg/codemod-proptypes-to- flow](https://github.com/billyvg/codemod-proptypes-to-flow)

</comment><comment><USER12> Please work. Please work. Please work. This couldn't come at a better time. I've got "convert site to TS" looming on my to-do list for a large web app. Anything that saves me some interface props/state typing tedium would be great.

<comment><USER13> I plan to move a small react project to TS so it will be easier to work with complex objects coming from API endpoints. Having used TS quite a bit with "vanilla" JS and seen the advantages of using strong typing (eg. easier refactoring), it's strange for me to see that the majority of React developers prefer to stick with ES6 instead of TS

<comment><USER11> Most JS developers have no or few experience with strongly typed languages. I think it's a thing you need to try by yourself to see the benefits. I was kind of an anti-TS some years ago ("it's too verbose, it's not JavaScript"), but since I used Flow for 1 year I now see the obvious benefits (my favorite being to have autocompletion for almost anything, and not having to wait the runtime to see that `user.fisrtname` is undefined).

Also, probably some React developers would like to use TS/Flow and their manager says 'nope'.

<comment><USER14> I'm a heavy TS user, but the compilation step is a PITA compared to working with bare JavaScript. Sometimes I forget to build and I wonder why my program hasn't changed.

I wish browsers would suck in TS directly. It doesn't require much translation to get the corresponding JS files, just ignoring some types and that's it.

<comment> 52-6F-62 Against watch scripts for any reason?

It's pretty simple to get TS building via webpack for react, and tsc itself has a watch mode. The only PITA there is if you save any breaking changes, the build will obviously fail until you've completed and saved any the working changes, but at least you can't forget.

<comment><USER14> I seem to forget to save sometimes also (granted, that would mess me up with javascript also), I'm just so used to straight C# in Visual studio!

Typescript also isn't a very fast compiler, it doesn't seem to be incremental or retained at all, so when you build your project, it take a few seconds when your project has grown beyond a certain size. Sometimes I build and then hit run too early (before the build is actually finished).

<comment> 52-6F-62 Ah yeah. I guess Webpack's boost would be lost if your project ends up at all complex as well.

Are you doing all of your TS dev in Visual Studio as well?

<comment><USER13> I'm using webpack on a ~60 TS files project now. It takes a few seconds to bootstrap, but then, in watch mode, it only compiles the files that are changed and it's really fast.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER15> I really want to commit to TypeScript for React/Redux apps but I'm gun shy. I don't want to commit to all the added effort TypeScript brings because I'm not sure if apps of my size warrant it. I'm afraid that I will end up with an over-engineered solution for my various apps of 10-100 components.

<comment><USER12> It's such a no brainer after you use it for a while, and the time savings after the fact far make up for the initial learning curve.

Just do a small project to muck around with first. Maybe something small that nobody has thought of, like a to-do list?

<comment><USER16> > and the time savings after the fact

Could you elaborate how? I used to heavily use typed languages, but after moving to JS 5 years ago, I don't miss types.

<comment><USER11> \- Get autocompletion for everything: object properties (eg. user.[firstname, lastname, etc]), type-specific methods (eg. thisIsAStringButYourEditorCantKnow.[list of string methods provided by your editor since you told him it's a string]), etc

\- Detect bugs and errors early, removes some kind of bugs (eg. typo errors: user.fisrtname, your editor will tell you fisrtname is not a property of user)

\- Help to refactor (eg. 'Rename Symbol' in VSC can't work on everything if your code isn't typed, eg. (X => X.someProperty), someProperty isn't renamable automatically since your editor doesn't know what's X)

\- Reduce extra error handling (eg. if (a === undefined || b === undefined || a is not a number || b is not a number) throw new Error(...))

\- Reduce extra unit tests (eg. expect(add(5, undefined)).toThrowAnError(); expect(add(5, 'foo')).toThrowAnError();)

\- etc...

</comment></comment></comment></comment><comment><USER17> Take a look at some of the code samples in this post where the author is trying to make Redux work better with types in TypeScript. In my opinion, you get to the point where the code looks a mess and looks difficult to maintain. There is no way a beginner is going to figure this all out.

[https://medium.com/@danschuman/redux-guards-for- typescript-1...](https://medium.com/@danschuman/redux-guards-for- typescript-1b2dc2ed4790)

<comment><USER18> That article describes all the steps he took to get there, and he simply didin't make it clear what of that was included in the end result (its just a generic action creator and type guard)

</comment></comment><comment><USER19> Has anyone considered building with TS--from the ground up--a React-like library? It seems like TS could help deal with lots of data and validation errors in a more concise and predictable way.

<comment><USER20> React is already typesafe.

For Redux I wrote Babydux [0], which is a simplified Redux with the goal of being 100% typesafe. It's the only Redux I've seen with that level of safety.

[0] [https://github.com/bcherny/babydux](https://github.com/bcherny/babydux)

<comment><AUTHOR> "Redux for babies" sounds like an insult.

It reminds me of this Nathan For You episode:

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

</comment></comment></comment><comment><USER21> So proptypes can be inspected at runtime. Does anyone have any success with tools that can turn Typescript types into runtime walkable datastructures or do code- generation / execute macros based on them as part of the build process?

I use typescript quite a bit and am starting to hit some patterns that could be abstracted nicely if metaprogramming tools were in the shed.

<comment> joe-stanton You might be interested in this: [https://github.com/gcanti/io- ts](https://github.com/gcanti/io-ts) and many related projects by Giulio.

<comment> joe-stanton Beforehand I built something very similar to what you described for Flow ([https://hackernoon.com/runtime-introspection-of-flow- types-d...](https://hackernoon.com/runtime-introspection-of-flow-types- ddb7e5b042a5)).

Many others superseded this implementation, the above being one example.

</comment></comment></comment><comment><USER22> I just flipped over my React app to typescript + react, and as a word of warning, support for some React libs is sketchy. For example, typings for redux Thunks are wonky/problematic and required a few hacks to fix. Very cool stuff just buyer beware :) You will probably have to work around more than a few issues if you use anything more than vanilla React.

<comment><AUTHOR> Nothing that a little `var unsafe = original as any;` couldn't solve!

<comment><USER23> To be a bit more explanatory: You can cast to the "any" type by adding `as any` to any variable, and it will then work just like Javascript. Typescript will know not to infer types from it or complain about it, and for that variable (which could be a simple variable or an entire library) will work just as it would in regular javascript. I typically use this when testing out a new library that doesn't have Typescript types so I can get a feel for it (and if I like it, I"ll progressively add types to it; its a very nice process imo).

</comment></comment></comment><comment><USER24> Looks really nice! I have an existing codebase that I might try this on.

One feedback: Wouldn't

        interface MyComponentState {
          foo: number;
          bar: string;
          baz: number;
        }

Be a little more idiomatic than

        type MyComponentState = {
          foo: number;
          bar: string;
          baz: number;
        }

    ?

</comment><comment><USER25> Why is lyft in the title?

<comment> forgot-my-pw It's their repo.</comment></comment>


A Partnership Between Cloudflare and JD Cloud & AI - <AUTHOR> https://blog.cloudflare.com/cloudflare-partners-with-jd-cloud/ <comment><USER2> What is the difference between this and CF's ongoing/previous relationship with Baidu? Whats the difference between this and the current Cloudflare china presence?</comment>