A Survival Guide to a PhD - <AUTHOR> http://karpathy.github.io/2016/09/07/phd/ <comment><USER3> Well, I went from academia (after finishing my PhD) to industry, to get more Freedom, Ownership, Personal growth, Status and Expertise.

Here is a blog post on my transition from theoretical physics to data science (and how it made my life much better): [http://p.migdal.pl/2015/12/14/sci-to- data-sci.html](http://p.migdal.pl/2015/12/14/sci-to-data-sci.html)

I understand that Andriej Karpathy (my favourite author/lecturer in Deep Learning, by a large margin) had a wonderful PhD, in a fast-growing field, with a golden fall-back option. But most PhD students I know (including my former self) do things in disciplines no-one else cares about and are tied to their institute/advisor/place with little to no opportunity to change things when they go awry (cf. it's super easy to change a company). A non-trivial fraction of my friends suffered from depression or had a serious mental breakdown (again, including myself).

In this light, while it contain a large number of helpful tips and valuable pieces of advise, why is it called "survival guide"?

<comment><USER4> It seems that a larger-than-I-expected fraction of the response to my post concentrates on a very small part of it, especially the part where I enumerate some considerations for thinking about whether a PhD might be a good fit for you.

By far the largest fraction of the post is concerned with tips/tricks for effectively navigating the PhD experience once you commit to going through it. I jokingly refer to it as a "survival guide" because (as I mention in the _disclaimer_ paragraph) the experience is by no means a walk in the park.

<comment><USER5> Also do you mind modifying the title to say a Survival Guide to a C.S. PhD?

Absolutely everything the GP says is spot on, the C.S. PhD is really atypical amongst all the Ph.D. disciplines. E.g. the resource constraints that exist in many disciplines don't even exist in C.S. - it is almost completely the product of thought/ideas and ever cheapening computing power. I would suggest sending out your article to Ph.D. students in different disciplines, look at all the feedback, and then incorporate them if you are so inclined. The article might look quite different.

Edit: after reading the comment from pgbovine, I felt I made an unnecessary personal comment, which I omitted. I rewrote the sentence to keep the main point.

<comment><USER6> My unsolicited advice: Don't change a word.

At most, link to this HN thread so that readers can see different perspectives, but you wrote the article you wanted to write, not the one that anonymous online critics wanted you to write. If others want to write a response saying why you're misguided, by all means go ahead.

</comment></comment></comment></comment><comment><USER7> I had a very different personal experience, but Karpathy did a wonderful PhD and I did a very marginal one (at a good school, which in many ways makes it worse). From the perspective of the "anchor" rather than the valedictorian, I'd say that he's right on almost all points as to what you should look to do if you decide to be a PhD. However, I do take exception at the rather false dichotomy between industry and academia that he creates.

A _good_ PhD leads to many of the nice things he describes: freedom and ownership and personal growth and all that stuff. An average PhD (or worse) leads to pretty much the opposite. Most of the superstars I know went on to do pretty much whatever they are interested in at top schools. The non-superstars (and the real lumps, like me) can easily wind up in a death spiral - <USER2> your mediocre publishing record and mediocre PhD afford entry only into 3rd- tier institutions, where you will work with worse and worse people, more or less guaranteeing steadily declining quality of work. A mediocre result more or less guarantees that you will be a low-status drone in academia, trying to wedge world-class work in with a bunch of other activities (teaching, being a glorified research assistant, and other 'service').

No-one sets out to do a bad PhD, but people need to understand that the average outcome isn't nearly as glowing as Karpathy outlines. Similarly, the outcome of going to industry also has a huge range. I found myself immediately - I mean on Day 1 - doing more pure Computer Science going to work for a startup than I had any reasonable hope of doing as a semi-failed academic, and have had a steadily improving experience subsequently (some of this stems from a rather delayed growing-up on my part, so it's not entirely a judgement on industry vs academia).

<comment><USER8> I think it's more of a continuum than you suppose in your comment. It's not a binary of "great" vs "average" PhD. There's plenty in between and many types of averages. Karpathy had it good, as did Might, Guo, and other purveyors of wisdom on PhD. But that doesn't invalidate their arguments and observations.

<comment> Ar-Curunir I wouldn't say Guo had it good, I mean his book is called the PhD grind; that's not a particularly happy sounding title.

<comment><USER6> best comment today :) thanks. i managed to recover, though, thankfully. should write a new epilogue sometime, but haven't gotten around to it.

<comment><USER9> Well now I feel a bit embarrassed about the sibling comment I made... since the man himself has appeared I just wanted to reiterate that I enjoyed reading your memoir, as did several students in the lab I worked in. We even went and tried out IncPy for a bit, which was fun :)

</comment></comment></comment></comment></comment><comment><USER10> "I'll assume that the second option you are considering is joining a medium- large company (which is likely most common). Ask yourself if you find the following properties appealing: ..."

Why is every conversation about PHDs always cast in the light of as-opposed- to-working-for-the-man? I don't see discussions ever bring up the plethora of other life courses one can take. It is though the author sees a very clear binary: PHD or go work on fixing bugs in Gmail (or some other such cog-in-a- machine project).

Where is the discussion of starting a business? Of making your own company? Breaking free of the political shackles of academia and blazing your own path to glory?

I am all for PHDs, and all for people pursuing, and pushing, the boundaries of human knowledge. I would just like to see that discussion live on its own, without comparison, if that is possible.

<comment><USER11> "Properties you find appealing..."

      * Freedom
      * Ownership
      * Personal freedom
      ...

<Later...>

      * Getting into a PhD program: references, references, references
      * Student adviser relationship
      * Pre-vs-post tenure
      * Impressing an adviser
      * (Topic) Plays to your adviser's interests and strengths

Much of your freedom goes to learning to play politics and manage up to a level employees never have to. Reading this, I'm so thankful I didn't enter academia. I still pursue my academic interests on my own.

Edit: A few people insist on casting a float into a bool. Every job has politics, ranging from 0.01% (anonymous author of 1-man SaaS) to 99% (politician). It's not very informative to note that both are non-zero.

<comment><USER12> From my super-limited experience in academia, I found politics is more important at top schools and much less important when you get to ~40-80 ranked US schools for PhD programs.

<comment><USER6> Having spent time at schools of various "ranks" (whatever that means), "politics" (whatever that means ... that's super vague) is everywhere. It's what you make of it. Whenever you have people, money, and status mixing, there is politics. That's not exclusive to academia. Every company I've worked at also had those dynamics. Want to eliminate politics? Be independently wealthy and work alone :) Otherwise everyone needs to learn to work with and transcend the system in their own unique way.

<comment><USER3> Well, with freelancing (in data science) I managed to avoid politics (and bureaucracy) completely (no, I am not independently wealthy).

</comment></comment></comment></comment></comment><comment><USER13> All valid advice, but god is some of it depressing. Papers can be evaluated by flipping through and looking for pretty graphs and equations. Incremental, replication, or comparison work is discouraged. Never include the dead ends or what didn't work. Get into only the elite colleges and betwork at conferences as much as possible - it's not what you know but who you know. Hype up and make your paper as sexy and short as possible. Tell a story. Good teaching, blogging, and sharing software probably hurts you.

<comment><USER14> > Good teaching, blogging, and sharing software probably hurts you.

Karpathy is pretty famous for his blogging and open software. His code and blog post about recurrent neural networks practically got him a language model named after him.

He also recommend you to release code in this article, so I'm not really sure what you are getting at.

<comment><USER13> > Karpathy is pretty famous for his blogging and open software.

Yes, he's famous for that, but that didn't earn him his PhD nor would it have gotten him tenure. As he remarks about his teaching of his course, him doing a good job actively worked against him because... it's not writing a sexy new paper or networking.

> He also recommend you to release code in this article, so I'm not really > sure what you are getting at.

Releasing code isn't the same thing as creating polished end-user applicable stuff on the level of char-rnn. In ML, you're increasingly expected to at least chuck over the wall a barebones implementation to demonstrate it works at all, but there is no expectation that it will be generalized, well-written, or polished, or maintained, and typically they are not. (Most ML releases I've looked at are kind of horrifying from a software engineering perspective. Just thinking about improved-gan makes me shudder.)

<comment><USER14> Most of the "Release your code" section is about how you should put your code in public _because_ in makes you do the extra effort to write a better implementation.

> but that didn't earn him his PhD nor would it have gotten him tenure.

He doesn't have tenure. He works at a private organisation. We don't know how he landed it, but I think his internet famous helped.

In the "Don't play the game" section, which is where I think you got the "don't teach"-thing, he writes:

> but I did them anyway, I would do it the same way again, and here I am > encouraging others to as well.

How you read this as anything but an encouragement to teach, write software and blogging is a mystery to me.

</comment></comment></comment></comment><comment><USER15> I feel one disclaimer that karpathy modestly left out is that he is perhaps one of the most successful PhD students in his field. This likely impacts his view of a PhD program. I personally survived a PhD myself (also in CS, also in ML, also in Computer Vision!), and I've passed through without so many warm, fuzzy feelings.

<comment><USER16> Could you maybe go over some experiences of your PhD that are orthogonal to those of Karpathy? I'm really interested and I'm sure there are others who are as well.

</comment></comment><comment><USER17> With my own disclaimer [0], a few comments:

> Personal freedom. As a PhD student you're your own boss. Want to sleep in > today? Sure.

This is largely true, but only if you're on good terms with your advisor and they're happy with your progress. God, I miss being able to sleep in until 2pm.

> Personal growth. ... you'll become a master of managing your own psychology

Yes, it's definitely a roller coaster. I know what happens to your body after a month when your only calorie source is peanut butter and white bread. Depression, random trips to Canada, and more.

> Picking the school. ... your dream school should 1) be a top school

No, at least, in mine and other's experience, you should go to the best school where you're still capable of being in the top ~1% of your graduating class. You'll feel like you're the best and that's almost all that matters (Malcolm Gladwell's talk [1]).

> So you've entered a PhD program and found an adviser. Now what do you work > on?

You will not be interested in the same exact topic for ~5 years straight, so keep that mind. Try to keep it broad.

> Giving talks

Do this / practice this as often as possible. It's how you'll get hired (or not). I've had to sit through some embarrassingly bad ones, where the candidate then has to survive the next 7-hours of interviewing where everyone knows they're not getting hired. (In my experience the talk is first thing in the morning.)

[0] He gave the fields of "Computer Science / Machine Learning / Computer Vision research" as a disclaimer, my disclaimer is that I only know about experiences in molecular biology / chemistry / materials science / synthetic biology / microbiology. [1] [https://www.youtube.com/watch?v=3UEwbRWFZVc](https://www.youtube.com/watch?v=3UEwbRWFZVc)

<comment><USER18> > > Picking the school. ... your dream school should 1) be a top school

> No, at least, in mine and other's experience, you should go to the best > school where you're still capable of being in the top ~1% of your graduating > class. You'll feel like you're the best and that's almost all that matters > (Malcolm Gladwell's talk [1]).

Isn't that a bit short-sighted? What happens after you want to progress to the next environment?

Is it realistic to be in the top 1% anywhere? Isn't that like being the best graduate ever from a small program, or the best in a decade at a larger one? You're not competing with a large population anymore, you're competing with someone who has passed dozens of filter steps in their lifetime and have gotten just as far as you have.

<comment><USER17> > What happens after you want to progress to the next environment?

It does sound odd, or just wrong. But from Gladwell's example [0], and others, top students in their class, regardless of the school, perform better than expected following graduation. From my experience, that's at least partially due to the increased attention (and better training) that top students receive. The lower ranked students are more-or-less ignored and pushed out.

> Is it realistic to be in the top 1% anywhere?

No. But you may have a higher chance of being a top student at a cheap in- school school than at Harvard.

[0] [https://ideas.repec.org/p/van/wpaper/vuecon- sub-13-00009.htm...](https://ideas.repec.org/p/van/wpaper/vuecon- sub-13-00009.html)

</comment></comment></comment><comment><USER19> These reasons for getting a PhD seem extremely one-sided and, frankly, inaccurate.

> Exclusivity. There are very few people who make it to the top PhD programs.

Top companies are even more exclusive than PhD programs in terms of acceptance rate.

> you're strictly more hirable as a PhD graduate or even as a PhD dropout and > many companies might be willing to put you in a more interesting position or > with a higher starting salary

This is 100% false. Many many people have found a PhD to be a handicap when it comes to getting a job, particularly in software engineering. A large number of employers have anti-PhD biases which will work against you.

> Ownership. The research you produce will be yours as an individual. Your > accomplishments will have your name attached to them.

My experience with academic research is just the opposite. I think it's patently ridiculous that professors get "authorship" credit on papers even when they had a minimal, at best, role in it. Meanwhile in companies you can have a tangible impact and see real results/credit from it (bonuses, promotions). Not to mention that many universities have draconian IP policies.

<comment><USER20> >> you're strictly more hirable as a PhD graduate or even as a PhD dropout and many companies might be willing to put you in a more interesting position or with a higher starting salary

> This is 100% false. Many many people have found a PhD to be a handicap when > it comes to getting a job, particularly in software engineering. A large > number of employers have anti-PhD biases which will work against you.

I was wondering if you could comment on this? Personal experience? I may be naive for not believing this in the first place; why would there be disdain expressed towards PhD applicants at a company? Is it a business perspective ("PhDs are too expensive"), technical ("they are too specialized, cannot practically implement solutions we expect of a new hire"), social ("I don't understand academia and couldn't achieve that high"), or something else?

<comment><USER19> > I was wondering if you could comment on this? Personal experience?

I do not have a PhD. My experience is based on personal experience with hiring people, speaking to friends and other hiring managers, and anecdotes from HN.

In general, the reasons are (for better or worse):

1\. PhDs aren't very good programmers or don't follow software engineering best practices.

2\. PhDs want to do "research" and will get bored with the basic software production required for 90% of industry jobs.

3\. PhDs expect to be paid/respected at a higher level of seniority, even though skill-wise they'e often barely above a recent BA graduate.

I don't know how valid all of these are, but in general I would personally always choose someone with 5 years of industry work experience over someone with a PhD for a software job.

<comment> Ar-Curunir If you hire PhDs for software engineering jobs, then obviously there's a mismatch of skillsets.

<comment><USER5> I agree. If you are not having even a single problem in your company which makes you wish you had an expert (not that all PhDs are experts) in a specific domain (all the more if that domain is specialized in a way that you do not normally encounter in a typical software engineer job), it will be an unhappy marriage for both employer and employee.

</comment></comment></comment></comment></comment><comment><USER21> A PhD is super fun and super hard. But it is key to be realistic about the outcomes. It is a life changing experience, but definitely have a plan for the end of it. There are so few academic tenure jobs and so it pays to do a bit of research on what you want at the end off it beyond just academic life. If you can do that the experiences are amazing, learning to think and work at the higher level and learning to compromise and work through others work is utterly refreshing. It is definitely a space to let yourself really explore thinking and researching.

<comment><USER22> > A PhD is super fun

Experiences differ. A lot. Personally, I had an awful time during my PhD, and between the penury and the toil and the bleak prospects afterward, I'd say you're definitely in the minority on this one.

I wouldn't recommend a PhD to anyone who isn't dead set on a job that requires one.

<comment><USER23> > Personally, I had an awful time during my PhD, and between the penury and > the toil and the bleak prospects afterward, I'd say you're definitely in the > minority on this one.

Do you have any evidence for the minority claim beyond the personal anecdote? Also, this is field dependent, so a mention of the field could be helpful.

<comment><USER22> My claim is based on my own experience as a CS PhD student and my conversations with other graduate students within the department and outside it during my studies. Christ, there was so much bitching. And it consisted of the kind of grim complaints I never heard during undergrad days or later on the job.

That said, CS PhDs are pretty lucky. The worst case fallback position of a job as a software developer isn't bad. It gets much worse for less commercial disciplines. God help the poor blighter with a PhD in Medieval Literature who doesn't snag an academic post.

<comment><USER24> Yes... the two languages requirement is A LOT easier in technical field than in the humanities. Try being fluent or functionally fluent for an exam in two human, spoken, academic languages vs learning a couple of programming languages. At least that was the experience I had. Learning enough French and German to read and write in French and German at the PhD level was absolutely soul destroying whereas now that I have had several normal business jobs and been asked to learn various programming languages as part of the work was basically... easy by comparison. A few jobs in software development are rapidly becoming the "webmaster" of our time.

</comment></comment></comment></comment></comment><comment><USER25> I just finished my PhD in CS. Took me about 7 years, damn it feels good to be done.

Mine experience was completely driven by my choice of advisor. He did not push me and therefore I had complete freedom. I was glad to have the funding through him, but did not get much direction. I did almost everything.

And while it took me 7 years to complete, I don't look back on the experience as only "getting my Phd". I learned so much about myself; I traveled around the world; I received my private pilots license; I learned about cars; I played a lot of golf; I had a great time. There were some shitty times where I had to push through, but I have no regrets. Most of my friends are buying houses and having kids, so I'm a little behind on my career/savings. But hey, I have three degrees in a pretty good field and my career is full steam ahead.

</comment><comment><USER26> How Academia resembles a Drug Gang

[http://blogs.lse.ac.uk/impactofsocialsciences/2013/12/11/how...](http://blogs.lse.ac.uk/impactofsocialsciences/2013/12/11/how- academia-resembles-a-drug-gang/)

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

</comment><comment><USER27> >Over time you'll develop a vocabulary of good words and bad words to use when writing papers. Speaking about machine learning or computer vision papers specifically as concrete examples, in your papers you never "study" or "investigate" (there are boring, passive, bad words); instead you "develop" or even better you "propose". And you don't present a "system" or, shudder, a "pipeline"; instead, you develop a "model". You don't learn "features", you learn "representations". And god forbid, you never "combine", "modify" or "expand". These are incremental, gross terms that will certainly get your paper rejected :).

This seems unfair. Many otherwise good students don't get taught this coded language. I understand that heuristic or incremental developments might not be accepted at top conferences, but the work should be judged on what it does rather than the inexact word choice of a student. It feels a bit cliquey.

<comment><USER28> > Many otherwise good students don't get taught this coded language.

Almost no one is taught this coded language. You absorb it by reading tons and tons of papers, then more papers. Karpathy is unusual and fun to make it explicit like this. He's a canny person.

</comment></comment><comment><USER29> I got my phd in the humanities. After following academic and grad school subreddits for the last years I could almost be convinced that grad school in the sciences is a pyramid scheme.

So much of the crap that I see people complaining about in the sciences simply doesn't occur in the humanities. Some of it I wish would (co-authorship would be a good way for those of us in the humanities to learn how to write an article for publication) but I am glad I didn't have to deal with a lot of the lab and advisor drama that I have seen (or arguing if someone should be fifth author or sixth...).

Of course I was making slightly more than half my peers in the sciences at the same university were making and they have a lot more career prospects than I do so maybe it is worth it....

<comment><USER30> 18 papers now (bioinformatics & molecular biology) and I have never seen a single authorship dispute. If you are a middle author, complaining about position is biting the hand that feeds you. Most people know better than that. Also, it doesn't even matter as there are only 3 real positions on papers: first, last, and everything else.

Coauthorship IME has always been extremely amiable. Often, when I am a middle author, I almost feel that I'm being done a favor by being put as a coauthor when I didn't do that much work (but I did make a material contribution). Conversely, as a first or senior author, it costs you nothing to add coauthors and gains you goodwill. It's win-win. It's very easy to get coauthorships if you keep your eyes open.

In my experience, if you want to succeed as a Ph.D. in the sciences you have to find a niche that puts you in the position of being useful to other people rather than in competition with them. If you don't, you will fail. If you do, it is almost comically easy to be at least moderately successful.

</comment></comment><comment><USER31> As a PhD survivor, I liken it to a pyramid scheme these days. There aren't enough tenure track positions to have viable careers for all, so do not go into a doctorate program without considering your non-academia route to happiness and fulfillment.

My experience of getting the PhD was pretty positive (finished after three and half years, good university, good subject, great supervisor) but I still see so much truth in these essays: [http://100rsns.blogspot.co.uk/](http://100rsns.blogspot.co.uk/)

Or to be more succinct, [https://en.wikipedia.org/wiki/Sayre%27s_law](https://en.wikipedia.org/wiki/Sayre%27s_law)

</comment><comment><USER32> Does anyone have advice on applying to a PhD from industry & without significant research experience (but a BS + MS degree from Stanford)?

<comment><USER33> I walked this path. Think about where you want to be when you're done. Are you married? Do you have kids? Do you want to do those things? If you want to be an academic, you have at least a decade of grueling work ahead. That's 4 years to do the Ph.D., and another 6 to get tenure, which is like doing three more dissertations worth of research while trying to manage a small group of young, inexperienced engineers. And that's if everything goes well. Precious little time for a spouse and kids. Ignore this ridiculous talk about learning to golf and taking vacations abroad. Nobody I know did that.

Personally, I finished the PhD in May and moved on to a really fantastic job in my field. I have time and money that I wouldn't have as an academic.

I'd like to clear up a few misconceptions I had about the academic lifestyle going in. This is about the professor job, not grad school.

1\. Being a professor is not about teaching. I went into grad school thinking I could make a difference. Address the rampant gaps in my colleagues' education. It turns out that professors generally abhor teaching, and that departments actually use teaching assignments to punish underperforming faculty. Performance means papers and even more importantly grant money. Teaching doesn't enter into it.

2\. Professors do not have any free time. Even tenured ones. That appealing academic calendar is a mirage. If you are a professor, you're a professor every waking minute. You spend your vacations at conferences, your summers trying to get ahead on research. You read papers before breakfast and after dinner. Or you burn out after getting tenure, get a heavy teaching load as punishment for your lack of productivity, and turn into the kind of professor everybody has an anecdote about. The one with nutjob politics who never turns up for office hours, or the one who lectures while hung over or still drunk.

Sorry to rant, grad school is no picnic and I wish I'd gone into it with my eyes wider open. I'm happy with the end result, personal growth, seeing things on a higher level, being "doctor" so-and-so, having an awesome job, but it's not at all an easy way out if you're tired of what you're doing now.

<comment><USER34> Less than half of CS PhDs have aspirations to become a professor. Most are dead set on industry -- usually machine learning or cutting-edge technology projects at companies.

<comment><USER33> Fair point, that's not my field. Just be warned if you _are_ interested in an academic career: you won't fix, or even make a dent in, the competence gap in industry by becoming a professor.

</comment></comment></comment></comment><comment><USER35> "It's not the consequence that makes a problem important, it is that you have a reasonable attack." \- That was the most non-obvious and profound thing I noticed when I saw and read Hamming about this.

It practically is a litmus test on answering what you should do, not necessarily in research, but in life.

For those interested, Hamming course on "You and your research" is on Youtube and has a _ton_ of _practical_ advice to future engineers.

</comment><comment><USER36> > Status. Regardless of whether it should be or not, working towards and > eventually getting a PhD degree is culturally revered and recognized as an > impressive achievement. You also get to be a Doctor; that's awesome.

Ha, sarcasm, very funny. Seriously though, outside of academia, if you're at an actual cocktail party or something with normal people, don't ever say that you have a PhD. It's like admitting that you're into some really weird shit. If anyone else mentions it about you, quickly change the subject to something less cringeworthy, like herpes.

And for the love of God, never _ever_ call yourself a "doctor." WTF is wrong with you? No.

If you're still a graduate student ("working towards"), this is all moot, because they shouldn't have let you into the party.

</comment><comment><USER37> > You'll sit exhausted and alone in the lab on a beautiful, sunny Saturday > scrolling through Facebook pictures of your friends having fun on exotic > trips, paid for by their 5-10x larger salaries.

You get around USD 70k per year in Switzerland for a Computer Science PhD in Switzerland (at ETHZ or EPFL). You could get up to five times this amount working in the industry, but usually not much more than that, especially when you have just graduated. It is definitely worth it to take the salary into account when you choose which universities to apply to for a PhD.

<comment><USER38> I think the larger point is that you won't have _time_ to take those vacations. That being said, a fresh grad that can make it into a top PhD can probably pull 200k+ in Silicon Valley.

</comment></comment><comment><USER39> many people seem to discount this thread because "Karpathy is one of the most successful PhD students in his field"

perhaps instead of discounting his experience... it would be better to take his advice

</comment><comment><USER40> "If you're unsure you should lean slightly negative by default" ha. that's a good heuristic!

</comment><comment><USER41> > You'll struggle with the realization that months of your work were spent on > a paper with a few citations while your friends do exciting startups with > TechCrunch articles or push products to millions of people.

Love Andrej but really, this isn't a common experience.

</comment><comment><USER42> > I can't find the quote anymore but I heard Sam Altman of YC say that there > are no shortcuts or cheats when it comes to building a startup.

Yeah, I've heard someone - Euclid may be? - said something similar about the road to science... :)

</comment><comment><USER43> Does anyone have a link to his phd thesis btw?

<comment><USER4> I happen to :) [http://cs.stanford.edu/people/karpathy/main.pdf](http://cs.stanford.edu/people/karpathy/main.pdf)

<comment><USER43> What sw did you use to draw those pictures btw?

<comment><USER4> Google Drawings (or Slides) is good, and Pages/Keynote is very nice too.

</comment></comment></comment></comment><comment><USER44> 1\. Never give up. 2\. Get to work.</comment>


Show HN: HNSearch PopDots (Potential HNSearch API Contest Submission) - <AUTHOR> http://jflatow.github.com/popdots/ui.html

<comment><AUTHOR> A simple graph showing the popularity (as determined by the HN community via points) of whatever 'topic' you search for. This is nothing fancy, all on the client side (so it's hosted statically on github).

I didn't want to spend too much time on it, but feedback is more than welcome (there's still some time before the submission deadline :)

</comment><comment><USER2> Very cool! I'd like to hire you to program an iPhone app I have been speccing out the last few weeks. \-- JA

</comment><comment><USER3> Seems cool but I don't think the UI is working in Chrome/Firefox. The graph shows up below the results.

<comment><AUTHOR> Hmm, works for me, but I wonder if my MacBook has wider than average screen. What resolution are you using?

<comment><USER3> 13" MBP at 1280x800</comment></comment></comment>


Viral Marketing Successfully Modeled By Network Theorists - <AUTHOR> http://www.technologyreview.com/view/519786/viral-marketing-successfully-modeled-by-network-theorists/

<comment><AUTHOR> Full paper [pdf]: [http://arxiv.org/pdf/1309.6369v1.pdf](http://arxiv.org/pdf/1309.6369v1.pdf)</comment>


Almost 40% of Americans Eat Fast Food on Any Given Day, Report Says - <AUTHOR> http://time.com/5412796/fast-food-americans/ <comment><AUTHOR> Wow, at first I read the headlines and thought it said 40% every year, which I thought was a little low but believable.</comment>


VMware CPU Microcode Update Driver (for Windows) - <AUTHOR> https://labs.vmware.com/flings/vmware-cpu-microcode-update-driver <comment><AUTHOR> For folks on Windows looking for Meltdown/Spectre protection but whose motherboard manufacturers are no longer pushing updates, this appears to be an option. I posted this in the other thread[1] but thought it warranted some more exposure.

Here are links to the latest microcodes I could find for Intel[2] and AMD[3]. As additional fixes come out, it is trivial to copy the updated microcode file over and reboot.

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

[2] [https://downloadcenter.intel.com/download/27337/Linux- Proces...](https://downloadcenter.intel.com/download/27337/Linux-Processor- Microcode-Data-File?product=873)

[3] [https://git.kernel.org/pub/scm/linux/kernel/git/firmware/lin...](https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux- firmware.git/plain/amd-ucode)

YMMV, no warranty express or implied, etc.</comment>


Apply HN: paralleltext.io – Learn languages by reading - <AUTHOR> http://paralleltext.io enables a simple way of learning languages by reading and listening human translated books in parallel.
Problem: Learning languages is a difficult process that requires hard work no matter if you choose the academic way or to use existing apps. It also requires continuity, a key factor which is hard to achieve with the available methods.
Solution: We want to change that by combining the learning experience with the pleasure of reading and listening to a book. A large number of book translations is available, but we think they're being underutilized for this purpose.
Progress: We built a tool that matches human translated paragraphs from ebooks in all European languages and a novel interface to read them. Now we are focusing on adding more books and more engaging features.
Market: Language learning and publishing
Team: We are two developers, both with product management experience living in Berlin.
Feedback: we got amazing feedback so far (https://www.reddit.com/r/InternetIsBeautiful/comments/3x2tux/paralleltextio_improve_your_knowledge_of_foreign/) <comment><USER2> I'm hugely in favor of graded sentence level translations especially for adult language learners. It is a more natural form of spaced repetition and requires much less will power to stick with it. Finding decent suitable corpora is the difficult part but very amenable to crowd sourcing efforts.

Also see this link for why reading is a really good way to acquire language: [http://llt.msu.edu/vol12num1/mcquillan/default.html](http://llt.msu.edu/vol12num1/mcquillan/default.html)

<comment><AUTHOR> Sorry, what do you mean by "graded sentence level translations?"

Also, this article is really supportive of our project, thanks!

<comment><USER2> Sentence level translations, rather than word or paragraph level, graded by difficulty as beginner/intermediate/advanced.

You can look up more about that research from here: [https://en.m.wikipedia.org/wiki/Extensive_reading](https://en.m.wikipedia.org/wiki/Extensive_reading)

<comment><AUTHOR> Ah, ok, now I understand. The problem might be that we aren't using machine translated texts, but human translated. So when matching translations, often sentences don't have a 1-to-1 matching. Translators often change sentence structure to better suite the new language (there are even instances of translators adding new characters in the book).

In any case, it's a very interesting problem

</comment></comment></comment></comment><comment><USER3> I think it would be great if there were a way to mouse-over a word and get a popup with the word's translation and information like part of speech, conjugations, declensions, etc.

<comment><AUTHOR> Yes, we're working on it now. We have to both make it seamlessly integrated in the interface (a popup might be too intrusive), and unfortunately the state of open source dictionaries is not ideal (which we plan to change also).

Cheers!

</comment></comment><comment><USER4> The books you're offering up have a ridiculously difficult readability. How do you plan to change that?

What languages will you target first and why?

I'm quadralingual as well and blog about language stuff once a year or so. Holler at me if you want poignant feedback. I've been published on lifehacker and other sites for my language learning tips.

<comment><AUTHOR> Hey, thanks for the feedback!

We've been so far working with books that already had some translation metadata which we could use, but just recently we got a tool working which does it automatically. It's still a work in progress, but we managed to put a new book out, Siddartha by Herman Hesse in English-German combination.

We're gonna concentrate on English-German combination first, since we're in Berlin now, and can calibrate the matching tool ourselves, but adding new books in new languages should more or less become trivial soon.

We have a lot of features in the works, one of them being providing and recommending books with different levels of difficulty.

Any help or feedback would be very welcome, you can always reach us at email@example.com

<comment><USER4> I highly recommend using popular short stories.

Books are far too long.

Short stories give the user a sense of success. Even just covering news articles would be pretty solid. :)

Current events provide a lot of context.

<comment><AUTHOR> Thanks!

We might look into short stories also. News articles might be interesting also, but sourcing multilingual new articles might be a problem. In any case, we have a lot of work in front of us :)

</comment></comment></comment></comment><comment><USER5> This is a cool idea, and something I would consider using. Two questions:

\- How are you sourcing your translations, and what is your technology solution for matching them up?

\- Do you have plans to make a native app for tablets that can store the books locally, or are you going to move ahead with improving your web tool for now?

<comment><AUTHOR> Thanks, we think it's cool too!

The new books we're adding come from Project Gutenberg. We parse the ebooks, and using our tool and a combination of open source technologies ([http://mokk.bme.hu/en/resources/hunalign/](http://mokk.bme.hu/en/resources/hunalign/) for instance) we do the matching and then manually review the result, if necessary.

We started building an app, but then realised that the interface would basically be the same, and a lot can be accomplished with modern web technologies. We plan to leverage local storage and to make it feel as native as possible for now, since we have fairly limited resources and a lot of work in front of us.

</comment></comment><comment><USER6> I really like the idea!

It would be nice to have features like the one in ReadLang where I can click on multiple words and get them translated. I like the part where I can listen the sentences.

Are you going to apply this to any article on the web? What will be the business model of your service?

Good luck!!

(P.S: In Norway, we have a similar site that translate the news. Here it is an example and hope it can be useful to you: [http://www.klartale.no/kultur/kunne-aldri-v%C3%A6rt- forfatte...](http://www.klartale.no/kultur/kunne-aldri-v%C3%A6rt- forfatter-1.709691))

<comment><AUTHOR> Thanks!

The thing is, these aren't automatically translated books, we're matching real book translations, so at least our approach isn't applicable to articles online.

We have a lot of features planned, from word lookup, to hooking them up to real audiobooks, and a lot more.

Our motto is "Provide maximum good" so we don't want premium-only features, and all the books in the public domain would always be free, but as our business model, we'd like to offer recent, in copyright books in this format for sale.

</comment></comment><comment><USER7> This is a good idea. What makes it a startup and not just an app? What would you reinvest the revenue in?

BTW, the only book posted for English to Swedish has a pretty literary translation and long sentences, so it's hard to learn anything from it.

<comment><AUTHOR> Thanks!

Well our business model would be recent, in-copyright books in this format. For instance, reading Harry Potter in this interface is something we could imagine being useful. Other than that, we think this tool might be useful in the education system, we can provide a lot of added value there.

Some language combinations are unfortunately underrepresented, but we've just built a tool that matches translations automatically, so that should change soon. Currently we are focusing on English-German combination since that's what we can check manually while we work out the kinks in the tool, and then we will spread out to other languages.

</comment></comment><comment><USER8> This is so great.

I wish there was a way to translate individual words rather than entire paragraphs.

<comment><AUTHOR> Thanks!

We're working on adding individual word lookup right now, we should be rolling it out soon.</comment></comment>


Show HN: PleasantFish (Reverse of Glassdoor) - <AUTHOR> https://www.pleasantfish.com <comment><AUTHOR> Glassdoor allows you to see reviews of a particular company by its employees anonymously. PleasantFish allows you to see reviews of potential candidates(employees) for the jobs by their coworkers anonymously. It is a job recruitment platform that allows employers to get detailed insights about their potential candidates.</comment>


Google Axes Drive and Photos Integration - <AUTHOR> I got an email earlier today stating:
> Over the next few weeks, we are making some changes to help simplify how Google Photos and Google Drive work together. We are making these changes based on the feedback we've heard that the connection between these services is hard to understand.
> •  Your photos and videos will no longer automatically sync between Google Photos and Google Drive.
> •  You will still be able to upload to both services using the Backup and Sync app on your computer.
> •  We're also adding a new "Upload from Drive" feature that lets you copy photos and videos to Google Photos.
> •  Your existing photos and videos are still in Google Photos and Google Drive.
This is very sad for me as this was how I backed up my and my wife's photos on my Linux machine, as I'm not aware of any tools that interface with the Photos API. I wish there were more cross-platform tools for basic things like photo sync and backup.
It's also frustrating that they're removing perfectly good functionality for nothing but a chinchy reason of it being "hard to understand". It wasn't and they could provide a better UI around it to make it easier to understand. <comment><USER2> There's [https://github.com/mholt/timeliner](https://github.com/mholt/timeliner) that will use the API, but realize a bunch of tags (including GPS lat/lon and captured time) will be stripped, and videos will be very low resolution.

If you want your metadata tags intact-ish, Google Takeout seems to be the only way now, but they still downsample and muck with metadata.

I'm now using syncthing (open source) and Resilio Sync (closed source) on my freeNAS and Ubuntu server to pull original photos and videos from our smartphones onto spinning rust, and then use PhotoStructure (disclaimer, I'm the author) to browse and share them.

<comment><AUTHOR> Thanks! I'll see if syncthing is available for iOS and will look at photostructure! Thanks!</comment></comment>


Neural Networks seem to follow a puzzlingly simple strategy to classify images - <AUTHOR> https://medium.com/bethgelab/neural-networks-seem-to-follow-a-puzzlingly-simple-strategy-to-classify-images-f4229317261f <comment><AUTHOR> Despite the click-baity title, the article makes a really interesting case for CNN classifiers acting essentially as bag-of-feature models.

backing paper: [https://openreview.net/pdf?id=SkfMWhAqYQ](https://openreview.net/pdf?id=SkfMWhAqYQ)</comment>


An Apology and an Update - <AUTHOR> https://slackhq.com/an-apology-and-an-update <comment><USER2> I'm a big fan and critic of apologies. This one is pretty good.

They admit the mistake was theirs and they take responsibility for it. They say sorry. They explain what they're going to do to fix the situation. They say they're going to learn from this and not have similar mistakes in the future. Pretty solid.

The only thing that is missing, in my view, is personalization. Tell me who you are, speaking for the organization. This humanizes the apology, and also gives a face to who it is saying they're going to improve. Ideally the CEO.

Still, I give it 8/10.

<comment><USER3> >We did not block any user based on their nationality or ethnicity.

Okay, so how did you block them?

>As is standard in the enterprise software industry, Slack uses location information principally derived from IP addresses to implement these required blocks.

So, you blocked users based on their nationality.

>We do not collect, use, or possess any information about the nationality or ethnicity of our users.

you clearly possess enough information about the nationality of your users to block them based on it, which was your intent. You backpedaled when people who were _not_ the target nationality began to complain.

<comment><USER4> No, they blocked users based on location. I'm currently located in California, and this has nothing to do with my nationality.

<comment><USER5> Expats comprise less than 1% of the global population, and I doubt the number of international tourists at any given time pushes that percentage much higher. Use a VPN I guess, or better yet ditch Slack.

<comment><USER6> Nonsense. Much of Silicon Valley consists of foreigners, yet they didn't block those users — a significant part of their user base ; thus the theory of ethnic or nationality blocking makes zero logical sense.

</comment></comment></comment></comment></comment><comment><USER7> This is yet another good reason to prefer decentralized networks. When Slack or Facebook or whomever agrees to block someone there is no resolution other than appealing to a company with a closed decision making process, something I don't think any of us really want.

<comment><USER8> Yep. Going to go ahead and throw Matrix/Riot out there as a great alternative.

<comment><USER9> I pretty much gave up on Matrix after the following exchange: [https://news.ycombinator.com/item?id=8697151](https://news.ycombinator.com/item?id=8697151)

Perhaps I am overreacting, but that sort of attitude on matters core to basic privacy in the post-Snowden era seems both problematic and incurable.

<comment><USER10> Yup, you're overreacting, especially given I wrote that >4y ago when we hadn't even started implementing E2E encryption. Nowadays it's almost complete and as others have said we _will_ be turning it on by default for private comms in the coming month(s). (There is little point in E2E for a conversation which is public and being indexed by Google etc). Some deployments already have E2E on by default in fact (eg the french government deployment).

</comment></comment></comment></comment><comment><USER11> > We will soon begin blocking access to our service from IP addresses > associated with an embargoed country. Users who travel to a sanctioned > country may not be able to access Slack while they remain in that country.

Is Slack legally required to do this? As long as they aren't knowingly accepting payment from these countries, shouldn't they be in the clear?

How are other tech companies dealing with this? Does Google block access from embargoed countries? Does Windows refuse to work?

<comment><USER12> > Is Slack legally required to do this?

Yes, absolutely. Breaking sanctions is not just illegal, it's a _criminal offense_. There have been sanctions against Iran since roughly when Trump withdrew the US from the Joint Comprehensive Plan of Action [1] in May of this year.

The CFO of Huawei was arrested in Canada per a request by the US because of their dealings with Iran [2].

[1]: [https://en.wikipedia.org/wiki/Joint_Comprehensive_Plan_of_Ac...](https://en.wikipedia.org/wiki/Joint_Comprehensive_Plan_of_Action)

[2]: [https://www.bloomberg.com/news/articles/2018-12-05/huawei- cf...](https://www.bloomberg.com/news/articles/2018-12-05/huawei-cfo-arrested- in-canada-as-u-s-seeks-her-extradition)

<comment><USER13> The CFO was arrested in relation to Iran but not because of it. She was arrested because she lied to banks and sold American made technology to Iran.

Slack is actually not required to do this as IM applications are exempt from sanctions.

<comment><USER14> The wording of the exemption applies only to personal communications and requires the service to be available at no cost to the user. There are plausible readings that Slack goes well beyond the exemption.

Still, even though the sanctions rules may apply, I'm glad Slack is reversing their overbroad application of these rules.

</comment></comment></comment></comment><comment><USER15> It's still profoundly disturbing to my eyes.

Technically their underlying problem is relying on IP ranges, wich is flawed and raises false positives all the time.

They seem to recognize they shouldn't be doing irreversible and critical action with only that info, yet will still use it to drop traffic.

To me their message is "sorry we screwed with your accounts, going forward we'll only screw with your messages". Am I supposed to be that reassured ?

<comment><USER16> I've never seen the whois info for an IP address resolve to the wrong country though. The owner is registered with the regional IP something (RIR if I'm not mistaken - like ARIN, RIPE, etc.) so that should be quite reliable.

Posting this I'm sure someone will take the challenge and can find an example where it wasn't assigned to the right country, but is it more than one in a billion IP addresses?

GeoIP databases on the other hand, the city and often even the province/department/state are very unreliable.

<comment><USER17> Consider HideMyAss server fun-tv.prcdn.net (22.214.171.124). They claim that it's in Tuvalu.

However, [https://www.iplocation.net/](https://www.iplocation.net/) reports some results indicating that it's in the UK, and some indicating that it's in Tuvalu.

According to Hurricane Electric's BGP Toolkit, the origin AS for 188.8.131.52/23 is AS198605, with "Country of Origin: Czech Republic".[0]

But results from many ping probes (ping.pe, asm.ca.com and maplatency.com) indicate that the server is in Miami, FL, US.[1]

That's a lot different from Tuvalu, the UK or the Czech Republic.

0) [https://bgp.he.net/AS198605](https://bgp.he.net/AS198605)

1) [https://www.ivpn.net/blog/wp-content/img/HMA-fun- tv.prcdn_.n...](https://www.ivpn.net/blog/wp-content/img/HMA-fun- tv.prcdn_.net-18.104.22.168-All-Probes-Tweak-Server.png)

</comment></comment></comment><comment><USER18> What changed recently that hadn't been the case for past years that made them add these new measures? A true, earnest apology would at least touch on the justifications for the changes more than just "become legal". But I understand that, sadly, that kind of transparency is a bit much to ask of any company these days. Still curious though if it was just an internal decision or spurred via government/legal threat/request.

<comment><USER19> Three or four years ago I helped investigate application usage from embargoed countries as part of an acquisition. The acquirer was performing due diligence, and this was a liability they needed to assess.

So, to answer your question, I doubt anything serious changed outside of Slack. Inside, however, maybe they got a new legal team that flagged this as a liability, or they're getting serious about compliance, or they're preparing for an IPO[1], or whatever...

[1] [https://www.cnbc.com/2018/12/07/slack-has-hired-goldman- sach...](https://www.cnbc.com/2018/12/07/slack-has-hired-goldman-sachs- for-2019-ipo.html)

</comment></comment><comment><USER20> A proper apology. These seem to have gone out of style.

<comment><USER21> Indeed. Compare and contrast with "sorry again for something new this week" Facebook. "We let everyone and their uncle access all your private data, my B dog." "Oh no, guess we helped cause a genocide, oopsie doodle."

</comment></comment><comment><USER22> My theory: Slack did this rough shot to get a deal signed with a major new client and to support the due dil.

Also note that all the major cloud providers in the US do not do business with embargoed countries. They all block IP from Iran, et al. to compute within the US, but allow it to compute within other geos, this extends to tech support, sales, etc.

I'm honestly surprised that Slack users within Iran could access the service running in US to begin with. In all likelihood they could only access edge servers located in other geos in APAC or the EU.

Look closely at everything Slack says in this message and others. "Enterprise Software" is tossed around a lot. They want to be the communications platform for the enterprise and have to meet these standards to compete with other offerings that exist today.

</comment><comment><USER23> > Users who travel to a sanctioned country may not be able to access Slack > while they remain in that country. However, we will not deactivate their > account and they will be able to access Slack when they return to countries > or regions for which no blocking is required.

So why ban _any_ account? Why not just drop connections from IP addresses in embargoed countries?

<comment><USER24> That's what they said they're going to do.

<comment><USER23> It remains unclear. From the blog post, it sounds like they banned a number of accounts, and now are manually unbanning some of them.

<comment><USER24> The line you quoted is specifically clarifying what they will be doing moving forward, which is blocking connections from sanctioned countries. Their post as a whole is their apology for the prior method, which did deactivate accounts.

<comment><USER23> Right, and their blog post also says that after de-activating accounts, they have restored access to _some_ of them. So what about all the accounts they banned but have not unbanned? What if one of those accounts has only ever connected from an embargoed country, but travels in the future to a non- embargoed country? Will it be able to use Slack?

(Put another way, it seems like they're saying some accounts remain de- activated. So which is it? Accounts are de-activated or IP addresses are blocked?)

<comment><USER24> That's a hedge in case they missed somebody. If they said "we unbanned all the accounts" but via a search error they'd missed one, and that person commented "no, liars, I'm still banned", it would be a whole new round of controversy. So instead they say that they got most of them and if they missed you, ping their support team and they'll fix it.

</comment></comment></comment></comment></comment></comment><comment><USER25> While "banning by ip" will work for discouraging most users, a VPN service or a Proxy service (Socks, ssh, etc) would make it irrelevant if someone wants to use a service like slack, facebook or google...It just inconveniences those who do want to use it bad enough. To me, it's a "band-aid of compliance" to whatever agency has requested them to do a ban on certain countries IPs.

<comment><USER26> IANAL, but the legal standard is often "enough effort to show you tried, but it doesn't have to be perfect."

Which is usually taken as, "enough to inconvenience unintended targets, even if intended targets can easily avoid the punishment."

</comment></comment><comment><USER27> This disturbs me.

So Slack is a communications platform.

If we have an embargo against a country, we have to shut off any services we offer to that country? Including communications platforms.

Doesn't seem like that will help improve things in that country, or help the people in that country communicate.

I'm all for not sending a dictatorship steel or guns, but why would we cut off communications platforms? That seems batshit.

<comment><USER28> Maybe KJU, Khamenei, and Raul Castro has a secret slack group for plotting USA's downfall. You never know! /s

I'm betting that Slack only had to do this to comply with some dumb laws regarding sanctions because I am unable to see why anyone from these countries using civilian, commercial, non-sensitive services such as Slack would have any impact on sanction enforcement.

<comment><USER27> Nah, they're on WhatsApp.

</comment></comment></comment><comment><USER29> I wonder why Slack so cares about blocking poor Crimeans from its service and at the same time Visa and MasterCard are accepted freely in any town of Crimea. Why these payment schemes are allowed to work there despite the embargo?

<comment><USER30> Why do you think so? Visa and MasterCard are banned in Crimea. Visa and MasterCard can't track its holder location.

<comment><USER29> Banned or not, there are ATMs and POSes across whole Crimea, accepting Visa and MasterCard. There was a brief period in 2014 when the schemes withdrew from the peninsula, but they get back pretty soon in 2015.

</comment></comment></comment><comment><USER31> Sanctions and embargos are getting out of hand. Blanket, rather than targeted individual sanctions/actions, truly only harm the people of a country that have little to no say in what their government or country does.

As seen here, sanctions turn companies that provide services into poor customer service scenarios through forced compliance for what reason ultimately? All that does is make it harder to track since we now live in a surveillance society. What a waste of time and energy. We are living in an age of the abuse of economic sanctions, that ultimately harm the wrong people and make companies/products look bad.

<comment><USER32> >Truly they only harm the people of a country that have little to no say in what their government or country does.

That's the whole point. It's not an unintended side effect. You're targeting an entire country's economy to pressure the government regardless of whether or not it's elected.

Disclaimer: This is not an endorsement of embargoes.

<comment><USER33> It takes a special kind of naivete to think that a country worth placing this sort of embargo on is a country where "pressuring the government" would lead to any tangible results.

That or a special kind of callousness, because most often the only way the citizenry can effect change is through violent revolt after reaching the boiling point of poverty and/or oppression.

<comment><USER32> Damaging an economy pressures a government whether or not there is any kind of pressure from the citizenry. Governments need economies to run, especially ones depending on the military to "keep peace".

It takes a special kind of naïveté to think governments run in a vacuum independent of the economy.

<comment><USER33> It's cute you think a failing economy is any pressure to the sort of government I'm talking about.

Sincerely, a citizen of a country whose government literally actively bankrupts it.

</comment></comment></comment></comment></comment><comment><USER34> What does Slack propose to do about access through a VPN so your real IP is hidden?

Of course in the long term this is just incentive for countries to support balkanisation of the Internet.

<comment><USER35> They just do whatever the bare minimum is to comply with export laws.

</comment></comment><comment><USER36> I understand the necessity of embargoes, but I'm a little torn on this one, given the ubiquity of Slack, IP crackdown mistakes aside.

Hypothetical: If you build a product meant for use in other countries than (also as well as) the one it's been built in, should you be allowed embargo its use based on the (possibly arbitrary) politics of a single one of those countries?

I suppose the makers can do as they please/are required to in their home country.

However, it opens another costly-to-startups hypothetical: If the politics of our home country swing to the (insert x-axis direction) and we decide (insert country Y) are baddies, do we have the resources to comply with an enforced embargo?

</comment><comment><USER37> Reports from the affected are a bit imprecise and often heated. Do we know whether Slack here banned based on IPs from the past and if so, do we know how long they keep that data?

</comment><comment><USER38> I'm curious whether IP blocking is actually enough to comply with the _spirit_ of a trade embargo.

Surely, the point of "not trading with Iran" is to avoid, through one's economic activity, enriching the _citizens_ or _corporations_ of Iran; and has nothing to do with preventing access to people who just happen to currently be within the geographic boundaries of Iran. (So: email blocking by detection of Iranian-ISP mail host = sensible; Iranian IP blocking = not-so-much.)

Unless, I suppose, you expect that a tourist accessing your service through an Iranian ISP, will be enriching the Iranian ISP to exactly the degree that you are serving them, and therefore, you are legally required to not serve the tourist, lest _they_ enrich the ISP thereby. ( _That_ would be a hard point to prove.)

But actually, even if it was just the letter of the sanctions that you had to obey, I would expect that "not trading with Iran" would be a lot _harder_ than it sounds—it would require, for example, that you do not trade with an Iranian citizen who is currently geographically located in, say, Mexico. How would you know? Your random IM webapp would need a KYC process (submission of ID documents, etc.) to be "sanction-compliant", wouldn't it?

<comment><USER39> Its actually pretty funny. US and others says that Russia forcibly occupy Crimea. But now all people of Crimea is under embargo, not Russia. It like if its not enough, lets beat them harder.

<comment><USER30> Nobody forced people of "Crime" to go to vote for occupation. Formally, no one asked Russians if they want this occupation.

</comment></comment></comment><comment><USER40> "Mistakes were made" is a good apology, but with no personalization, no reparations for the people impacted, and no reflection on the process and context that allowed those mistakes to happen, it still leaves Slack in a lower place in my mind compared to where it was before this incident.

It may sound like there's no way to win for them, but well, mistakes have consequences. Time will heal the wounds.

<comment><USER41> Missing the _why_ the mistakes were made. What assumptions they made didn't hold up etc. Since they don't dare to even touch that subject incompetence is about the most charitable I can think of.

</comment></comment><comment><USER42> Does an IPv6 world prevent IP-based location sniffing?

It seems odd to me that IPs can still be used to (semi-)reliably determine a client's geographical location.

With the immensely larger address space that comes with IPv6, does that give the Internet a chance to completely sever the link between geography and IP address? Or do we still have issues with aggregating routes in a space- efficient way?

<comment><USER43> IPv6 address space is less fragmented than IPv4 (that's part of the point), so inferring location from IPv6 address is if anything easier.

Addresses _should_ correspond to network topology in order to be useful for, you know, routing. And network topology tends to correspond to physical location for practical engineering reasons. Of course there's no reason someone _couldn 't_ run a cable halfway around the world to use IP space in one country from a different one (or use a VPN, is what people do in practice), but realistically what would they gain from that?

<comment><USER42> Thanks. I had some fuzzy idea backwards in my mind: that part of the reason IP blocks are correlated to location had to do with address space constraints.

But that's wrong. Having a massive address space makes it trivial to keep routable blocks contiguous no matter how many IPs they contain.

</comment></comment></comment><comment><USER17> As apologies go, this is a decent one.

But they still say:

> We would also like to notify our users that as we continue to update our > systems over the next several weeks, we will soon begin blocking access to > our service from IP addresses associated with an embargoed country.

I'm no expert, but I did spend a couple months checking alleged locations of VPN servers. I compared: 1) location alleged by the VPN provider; 2) location from various geolocation databases; and 3) ping results from several hundred servers (from various providers).

Bottom line, locations alleged by VPN providers and locations from geolocation databases were generally in agreement. But for some VPN providers, such as HideMyAss, ping results demonstrated that those locations were very often implausible. Because they implied signal transmission faster than the speed of light.

So anyway, basing life-altering decisions on IP-based geolocation is an _extremely_ stupid (or at least, unjust) thing to do.

</comment><comment><USER44> Iran is a terrorist state and anyone providing aid to them can be tried under the PATRIOT act: [https://en.wikipedia.org/wiki/Providing_material_support_for...](https://en.wikipedia.org/wiki/Providing_material_support_for_terrorism)

</comment><comment><USER45> I want to see a post-incident analysis, like GitHub published: [https://blog.github.com/2018-10-30-oct21-post-incident- analy...](https://blog.github.com/2018-10-30-oct21-post-incident-analysis/)

</comment><comment><USER46> Why should anyone even bother using "Slack" when there is internet relay chat?

</comment><comment><USER47> I'm definitely living under a rock. Why is Slack being impacted by a trade embargo?

<comment><USER48> Because that's how embargoes work? They impact not only goods, but also services. The US has one on Iran. And as Slack is a US company (or rather, a company which has an interest of maintaining operations in the US, regardless of where it is based), it complies, thereby blocking service to any entities (e.g. people) in Iran.

<comment><USER49> Exactly. Embargos function by taking away the rights away of American businesses and people. Trade embargoes make it illegal for US entities and people to trade with certain groups of people.

</comment></comment></comment><comment><USER50> Bad apologies make things worse, but good apologies don't make things better.

Actions speak louder than words. Blocking people accounts was a management level decision that they are only regretting due to this coming to the public's attention.

</comment><comment><USER51> What countries are embargoed for chat?

I work in banking, and when we discuss certain kinds of remote access, it's notable that there is no "OFAC" list. There are shit tons of lists for different things. I wonder which list Slack uses.

</comment><comment><USER52> Can someone provide backstory on this? I missed it because I blinked. :-)

<comment><USER53> _Slack 'bans users' who have visited US sanctioned countries_

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

</comment></comment><comment><USER54> What would the penalty for non-compliance here be?

<comment><USER55> Fines if it's not a criminal violation, or potential prison time if it is. Since it's a corp, and the group think here is that corps are shields from jail time for the employees, then probably no jail time.

There's also the negative PR that comes with being labeled as "aiding and abetting the enemy".

</comment></comment><comment><USER56> Slack missed an excellent opportunity here: to be first US company to suspend services momentarily due to egregious and broken* sanctions imposed by the US on other countries.

* Broken in that they are levied against random individual citizens of sanctioned countries instead of groups trading with or state entities otherwise interacting with the US.

</comment><comment><USER57> Internet should not be censored.

</comment><comment><USER58> Offering a free service is not "trading" by definition

</comment><comment><USER59> Faith in Slack mostly restored.

<comment><USER60> Nope sorry. Slack is a walled garden. And relying on a walled garden means handing over your control, freedom and privacy which eventually gonna lead to similar kind of exploitation/abuse.

As another HN commenter @SamWhited put it, "Using a proprietary protocol that doesn't allow any form of federation is an unacceptable way to build a global community". We need to develop and use FLOSS protocols/tools as much as possible.

<comment><USER61> These are good points, but wow are the walls Slack has built beautiful. The webhooks make so many things better.

Is there a service you recommend?

<comment><USER62> Webhooks are great, but slack's notification semantics are infuriating.

</comment></comment></comment></comment><comment><USER63> Slack also banned people who are just nationality of iran and they dont live in iran.

</comment><comment><USER64> How did they not block based on nationality when they literally blocked a nation?

<comment><USER65> For context, one of the original reports of this was from (I believe) an Iranian-American with US Citizenship living in the US:

[https://twitter.com/aaomidi/status/1075621119028314112](https://twitter.com/aaomidi/status/1075621119028314112)

You might read that and infer that Slack is somehow tracking the national origin, ethnicity, or race of all of its users, which would be much fishier behavior than IP-based blocking. They're explicitly saying that they don't do that and that they don't have that information.

<comment><USER66> _They 're explicitly saying that they don't do that and that they don't have that information._

But they _did_ do it, so what does that mean...

<comment><USER6> Did they? Or did they ban people associated with specific IPs?

<comment><USER67> Are the sanctions against doing business with Iran nationals or anyone with an Iran IP address? I would imagine the sanctions are in place to prevent trade with Iranian nationals.

</comment></comment></comment></comment></comment><comment><USER68> > In fact, we also apologize to the people whose accounts we intended to > disable in order to comply with these regulations

Misguided politics of the Trump 'administration'. This stuff is highly unpopular outside the US.

For me a reason to avoid US services which actually enforce these politics. Slack can do whatever they want, but these actions make sure that I never want to be a customer of theirs and I would never recommend to use their services.</comment>


Example pitch deck - <AUTHOR>

I was wondering if you guys know about any available quality pitch decks.
I found myself the ones of  AirBnB, Mint, and Profitably.
See here the links just in case you don't have them 1. profitably http://www.slideshare.net/profitably/sample-pitch-deck
2. AirBnB http://www.businessinsider.com/airbnb-a-13-billion-dollar-startups-first-ever-pitch-deck-2011-9#-1 3. Mint http://www.slideshare.net/hnshah/mintcom-prelaunch-pitch-deck
I hope you guys more useful links.
Tnx. Reza <comment><USER2> Check these out:

<https://bitly.com/bundles/royrod/2>

[http://www.quora.com/Whats-the-best-actual-VC-pitch-deck- or-...](http://www.quora.com/Whats-the-best-actual-VC-pitch-deck-or-video- that-I-can-see-online?srid=tY9)

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

[http://www.slideshare.net/dmc500hats/zapmealscom-closing- the...](http://www.slideshare.net/dmc500hats/zapmealscom-closing-the-gap- between-your-mouse-your-tummy-for-supernova-2007)

</comment><comment><USER3> This: <http://investors.dressrush.com>

<comment><USER4> <http://about.crowdsend.com></comment></comment>