Ask HN: Which Markdown editor do you use? - <AUTHOR>

I'm mainly looking for Mac app suggestions, as there seem to be quite a few around (Mou, Write, Byword, Ulysses, etc.), but other OS/online suggestions could be interesting too. <comment><USER2> Atom: [https://github.com/atom/markdown- preview](https://github.com/atom/markdown-preview) [https://github.com/atom/language-gfm](https://github.com/atom/language-gfm)

and

Gitbook editor: [https://github.com/GitbookIO/editor](https://github.com/GitbookIO/editor)

</comment><comment><USER3> Previously Marked ([http://marked2app.com](http://marked2app.com)), sometimes Vim, more often iA Writer because it blends markdown syntax with rudimentary formatting, and is well suited to editing text. ([http://ia.net/blog/ia- writer-for-mac/](http://ia.net/blog/ia-writer-for-mac/))

</comment><comment><USER4> I use sublime text 3 with following 2 plugins \- Markdown Preview, for previewing in browser \- Markdown Editing, great editing environment

I don't prefer online editors as don't like to see the live preview while I'm typing. But here's a good one __dillinger __

<comment> eaten-by-grues I can second the Sublime Text recommendation and add MarkdownPad ([http://markdownpad.com/](http://markdownpad.com/)) for Windows.

<comment><USER5> I tried using Sublime text 3 for markdown but there was no significant syntax highlighting.

</comment></comment></comment><comment><USER6> Sublime Text 2/3\. Great for code and markdown. I used to use Brackets because of the live preview for web development, but the simplicity and design (I use the "spacegrey" theme) makes it a pleasure to use. It has an unlimited trial or you pay $60, I believe.

</comment><comment><USER7> I use LightPaper and like it a lot. The features I like most are side by side preview and editor window and export to PDF and HTML. Previously I was using Mou but gave up after stability issues.

<comment><USER8> I can also vouch for LightPaper. The live preview is useful to check whether I messed up with my Markdown formatting somewhere.

[http://clockworkengine.com/lightpaper- mac/](http://clockworkengine.com/lightpaper-mac/)

</comment></comment><comment><USER9> If I need something like live previews of my work as I am writing it, I just use light-table with the appropriate plugins.

Otherwise, any old text editor works for me.

</comment><comment><USER10> Use <whatever> for editing and Marked for live preview:

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

</comment><comment><USER11> I've used FoldingText:

[http://www.foldingtext.com](http://www.foldingtext.com)

</comment><comment><USER12> I like Mou

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

</comment><comment><USER13> Sublime Text with the Markdown Extended plugin, or Vim, whichever is closer at hand.

</comment><comment><USER14> Isn't the entire point of Markdown that you don't need a special editor for it?

<comment><USER15> Yes, but that doesn't mean some editors aren't more interesting or functional than others.

</comment></comment><comment><USER16> if I want a live preview then I use [http://stackedit.io](http://stackedit.io). Most of the times I just use ST+Markdown plugins already mentioned here.

</comment><comment><USER17> Haroopad is rather good on OSX. Give it a try.

</comment><comment><USER18> Vim.

<comment><USER19> Exactly. Markdown, for me, is text, which you can read in the raw, and transform if you like.

<comment><USER20> Agreed. Here I treat nearly all text as text and edit in vim. That's why I like how simple and readable Markdown is.

Having a different editor for different text documents seems redundant to me. However I'll admit my two exceptions are using Xamarin for C# and ADT for Android apps.

</comment></comment></comment><comment><USER21> Macdown is ok</comment>


Vue 3.0 Discards Class-Based API for Reusable Composable Function-Based Approach - <AUTHOR> https://www.infoq.com/news/2019/07/vue3-function-based-api-rfc/ <comment><AUTHOR> Vue 2.0 seems to have overwhelmingly positive experience amongst its users. To the extent that there are many fans of the framework. So the current framework must be doing something right.

I personally don't use Vue. Only Angular and some React. But a lot of times in the frontend frameworks change seems to be just for the sake of change. Will be interesting to know what the current Vue users think of this change.</comment>


The recession may be lifting - <AUTHOR> http://www.economist.com/world/unitedstates/displayStory.cfm?story_id=13411349&source=hptextfeature

<comment><USER2> I think we'll be hearing a lot of this now, and it's my feeling that it's a sucker's rally. Every single one of those who correctly called the financial crisis are quite clear: it's not over by a long shot. The fundamentals have to return, and to do that we have to pay off debt and start having savings again, which means not spending (i.e. liquidity trap), which means that we'll go through a period of undervaluation, both in terms of assets and labor, before the smoke clears.

There's no happy six month reversal here; just a dead cat bounce. And those who are selling you that it's the end of the depression are those who sold you the whole Ponzi mess in the first place. Shame on them.

<comment><USER3> I'm afraid you're correct. I wish people would just pick up and read a history book. The Great Depression didn't start overnight. People have this misconception that things just got really sh*tty one day after the stock market crashed. Reality proved to be different. Things got a little better, then a little more worse. Rinsed and repeated until the Dow Jones lost 90% of its peak value. Couple this with a severe drought, the U.S. calling in its WWI loans from Europe, and a couple of other protectionist decisions, and you had yourself a depression.

Wishful thinking got us into this mess. And right now, we may as well view the stock market like a slot machine. It'll pay out a little, drag people in, and then take a lot of their money.

The other problem is that when lots of people start focussing on aggressively paying off their debt in bad times, it actually ends up temporarily hurting the economy. This is precisely what happened before the Great Depression. Why? Because they stop spending the money, and instead give money to big banks which do nothing but hoard it because the banks have lost paper money on the stock market. As the banks look to replenish their stock piles they largely refuse to loan the money out again. In a way, it's like chemo therapy in that the treatment for people's financial ailments might actually be the thing that kills them. But eventually the huge swaths of cash that the banks build up from debt repayments will come back into the market and there'll be a surge in investment activity, but that won't happen until the banks themselves are comfortable on their own feet, which is far from the case right now.

<comment><USER3> Oh, and here's the source for my pessimism. I've been following this website for a while now. The guy that runs it is a computer hacker to boot! I'm a big fan of his analytical skills and refusal to make predictions, just provide the numbers.

<http://dshort.com/>

</comment></comment></comment><comment><USER4> "Keith Kelley, a Las Vegas estate agent, has an investor interested in offering about $80,000 for a foreclosed, four-unit apartment building which, fully let, could bring in over $25,000 a year in gross rent."

Wow, when reading stuff like, I sometimes wonder if I'm not wasting time putting all my efforts into web apps, etc. Find a few deals like this, hire someone to maintain them, profit.

Of course, I'd probably hate every second of it, but still.

<comment><USER5> Perhaps you are :-)

A friend of mine likes to tell the story of him discussing a technology idea with a business-owner friend of his. The reaction of the businesss guy was "you know, I see all these tech guys building these grand online empires that never make them a dime. Meanwhile, Town Hall has a contract out for $100,000/year to vacuum the floors and scrub toilets and no one is bidding on it!" Just something to think about :-)

<comment><USER6> How can one find these contracts?

<comment><USER7> Most governments (city, county, state, and even national) are required to post all requests for proposals (RFPs) publicly and consider all proposals they receive. As with any business or political process, it helps if you know people.

<http://lmgtfy.com/?q=city+RFPs%7Cstate+RFPs%7Cfederal+RFPs>

</comment></comment></comment></comment><comment> patrickg-zill Dead cat bounce, in my opinion. How many jobs have been lost each month for the past 3 months? About the same number each time.

<comment><USER8> Unemployment is a lagging indicator.

<comment><USER9> People always say that, but it applies only in an ordinary, garden-variety recession. In the great depression, payrolls started dropping around May of 1930, roughly 8 months after the financial contagion began (where are we now? 7 months after the financial contagion began). Then they _kept dropping_ for about 2 years. Each time someone was laid off, they spent less, which meant some other business took in less revenue, which meant they had to lay off people, who in turn spent less...

It's too soon to tell, but I'd bet this recession is a lot more like the Great Depression than the 91 or 01 recessions, or even the 80-82 and 73-75 recessions. 91 and 01 were fueled by the bursting of economic bubbles in specific sectors of the economy (S&L and tech, respectively). 73-75 was an exogenous supply-side shock (oil crisis), and 80-82 was because of monetary policy (Volcker lifting rates to squeeze out inflation). Both 29-32 and 08-?? came about because the consumer is _tapped out_ \- they've taken on more debt than they can possibly service, so there needs to be a period of deflation while those debts are unwound and prices readjust.

<comment><USER8> As you said, it's too soon to tell. I think a lot of consumers (me included) aren't tapped out - they've been furiously saving money since September or October, and are feeling the urge to spend. Admittedly I live in a government town so we're somewhat sheltered but the lineups I see in stores (which have cut back on staff) are getting pretty long and annoying.

</comment></comment></comment></comment><comment><USER10> Another link just submitted to HN says that the recession will last for a long time. Somebody is wrong. My bet is that the recession will last longer than indicated by this Economist article, based on other trends that The Economist (a good magazine, which I like a lot and subscribe to) has missed in the last few years.

</comment><comment><USER11> The stocks are also rising. AAPL went from low 80s in march to 115 today. Those who were waiting for the right time to buy may have missed the boat.

I always thought the DOW hitting 6000 was the lowest it would get without causing world collapse.

<comment><USER12> The problem with trying to pick the bottom of a slide is that you never know until you're many months if not years out of it. It could just be a bear bounce. I certainly wouldn't start proclaiming that people have missed the boat on the value.

Either way, the bottom line is that there's historic value out there today and it just depends on your level of optimism whether America and the civilized world in general (and their economies) will be around for another 100 years.

So unless you're glenn beck, there's cause of optimism.

<comment><USER13> If you're looking for a long term investment, then I don't think anyone's missed the boat. In the long run, buying in a few months late won't affect you much right now. IMO Apple is pretty much guaranteed to double in value when the economy returns to normal, so if I had a spare $20,000 I wouldn't mind putting it into the company, if they pulled off another iPod effect on their stock then all the better.</comment></comment></comment>


Twitter Addresses Troll Problem. Again - <AUTHOR> http://www.nytimes.com/2016/11/16/technology/daily-report-twitter-addresses-troll-problem-again.html?ref=technology <comment><USER2> This looks more like a purge of right wing accounts.

[https://youtu.be/qiADHzBOqZ0](https://youtu.be/qiADHzBOqZ0)

This is obviously a huge mistake.</comment>


Infectious Texts: Modeling Text Reuse in Nineteenth-Century Newspapers [pdf] - <AUTHOR> http://viraltexts.org/infect-bighum-2013.pdf

<comment><USER2> One distinctive thing here is the need for the matching to be robust under OCR errors. From skimming the paper, it sounds like the main thing you did to address it was use shorter n-gram sequences. Is that correct? What are the _dis_ advantages of using shorter sequences—more false matches? Could one use fuzzy matching where characters that OCR often confuses get normalized into a single bucket before computing the n-gram? Is there any way to know, or at least to estimate, how many legit matches failed because of OCR errors?

<comment><AUTHOR> Yes, short n-grams or skip n-grams were the primary method to improve recall, and yes, the problem is that you'll have to examine more candidates--i.e., run slower.

Taking advantage of some (high precision) many-to-one hashes is a nice idea, which has the advantage of reducing the index size. Some people might be familiar with Soundex ([http://en.wikipedia.org/wiki/Soundex](http://en.wikipedia.org/wiki/Soundex)), a hashing scheme for English homophones designed in 1918 to be computable by hand. While Soundex in particular would probably lead to too many collisions, it would be fun to think about learning a better hash from data.

One thing we're working on now is unsupervised learning of error correction models (in the form of probabilistic finite-state transducers) to be able to augment the index with some number of multiple hypotheses.

Further afield, an interesting open problem is the development of locality sensitive hashing (LSH) schemes for edit distance. Some work has gotten as far as Hamming distance and cyclic shifts of the bits: [http://www.mit.edu/~andoni/papers/cyclicShifts.pdf](http://www.mit.edu/~andoni/papers/cyclicShifts.pdf)

In the paper, our evaluation uses the "pooling" of the results of several different runs. This is similar to how recall is evaluated for information retrieval over large collections. For a given query to a web search engine, you don't want to read the whole web to figure out what your recall is. Instead, you can take the union of the results from several different search engines and parameter settings thereof and evaluate the "pseudo-recall" of any one system with respect to that set (cf. Boggle). In our case, if we include some runs that take a long time but have higher recall, we can estimate performance on the more realistic parameter settings.

In addition, we're also working on getting clean transcripts of a sample of newspapers so we can produce some more direct estimates, as well as train better error models.

</comment></comment><comment><AUTHOR> Author (David Smith) here. My coauthor, Ryan Cordell, and I will be around for any computer science/literary studies tag-team questions you have.

You can read a little more about the project at: [http://viraltexts.org/](http://viraltexts.org/)

Also, our lab at Northeastern University in Boston will soon be posting an ad for a research programmer to help us take this analysis further and to build visualization and retrieval systems for large, noisy historical collections.</comment>


Expense Calculator - <AUTHOR> http://c2.com/doc/expense/ <comment><USER2> This is genius. A markdown for spreadsheets.

I wonder whether it would be possible to extend this concept to get more powerful features, inspired by spreadsheets (and programming languages maybe). Sometimes you need more than a sum or an average, but writing out the formulas in full, repeatedly, seems like a lot of cognitive overhead.

I see in this thread that Emacs org-mode has something like it, but I'm not convinced that stuff like

        #+TBLFM: @2$4=vmean($2..$3)

matches the humane, readable, Markdown-esque approach that I'd want to use.

</comment><comment><USER3> This is very clever. Of course, coming from Ward it's hard to expect anything less :)

Again, I'd like to plug [http://www.ledger-cli.org](http://www.ledger- cli.org). It's similar in spirit, with a reporting program reading a lightly formatted text file.

</comment><comment><USER4> Reminds me of Soulver. [https://itunes.apple.com/us/app/soulver/id413965349?mt=12](https://itunes.apple.com/us/app/soulver/id413965349?mt=12)

<comment><USER5> Calca, too. The awk script should do if you want something simpler, but I'd recommend either Soulver or Calca for their extra features.

</comment></comment><comment><USER6> Clever solution - technically. For trips with my friends we use a "money-pot" system where everyone pays a fixed amount into a pot before the trip and everything we do or buy together is paid out of this pot. After the trip the calculation is much easier - refund = (remaining amount / persons) ;-)

</comment><comment><USER7> You can do those kinds of quick reports in text files conveniently in emacs org-mode nowadays:

[http://orgmode.org/org.html#The-spreadsheet](http://orgmode.org/org.html#The- spreadsheet)

<comment><USER8> I didn't know about this one. Nice!!!

</comment></comment><comment><USER9> [http://www.splitwise.com](http://www.splitwise.com) circa 1981?

</comment><comment><USER10> I'm very impressed. That is the shortest version of expense calculation I've ever seen.

I have written a python script back in 2007 for calculating two trips expenses: [https://github.com/bernardeli/trip_money_organizer](https://github.com/bernardeli/trip_money_organizer)

I'm not a Python developer myself, however I was pretty happy with the result. I know it works fine, and have used few times with no issues.

<comment><USER11> I found the code itself to be beautiful, as well.

</comment></comment><comment><USER12> Clever pre-excel solution. In a way, ahead of its time, similar to MarkDown.

<comment><USER13> Post-visicalc though :).

<comment><USER14> Awk came after visicalc? Really? Wow.

</comment></comment></comment><comment><USER15> If anyone doesn't realize Ward is the same guy who created the Wiki.

</comment><comment><USER16> The program needn't be a shell script invoking awk--you can use a "shebang" line to make the entire thing an awk file. This will help if you use an editor which understands awk syntax (for highlighting etc.). Of course in 1981 you probably didn't have such luxuries, but today we can just remove the "exec awk", the outer quotes and $1, and put this as the first line:

        #!/usr/bin/awk -f

</comment><comment><USER17> These days you should use Splitwise: [https://www.splitwise.com/](https://www.splitwise.com/)

(Not affiliated, just a happy user. And there's a nice network effect if more people use it, so more people should use it.)</comment>


ProtoTurtle - Clojure Protocols painted by a turtle - <AUTHOR> http://www.bestinclass.dk/index.php/2010/04/prototurtle-the-tale-of-the-bleeding-turtle/

<comment><USER2> Ahh Logo, my first true love. That Swastika -> Star of David animation was also really clever.

(Please don't invoke Godwin's Law against me!)</comment>


Is 'culture fit' merely a code word for unethical discrimination? - <AUTHOR> I have been researching hiring in the tech industry and this is the glaring elephant in the room. In the very least, the widespread acceptance of this abstract category opens up a convenient laundering term for abuse. And in reality, it's glaringly exactly that.
The general HR rhetoric seems to only highlight the problem. If 'culture fit' is merely a matter of good/bad attitude, why are we referring to it as "culture?" These are very clearly separate items. The way they are being treated as interchangeable is beyond suspicious to me. "Culture fit" is used in broad contexts while any query is answered with concerns amounting to attitude differences. In a time when "identity" also suffices for "culture", how can this possibly be reconciled?
I argue it can't be and this is another shameful chapter in the tech world's going list of  hypocrisies. Prove me wrong. <comment><USER3> As a manager who does a lot of interviews and has run teams with a lot of different working dynamics, culture fit is something I used to describe a collection of social skills and dynamics at play in my team, with the company as a whole, and with our clients. There are a large number of ways people can interact well, and there are a number of specific things an employee might do to make these dynamics strained. If, in the course of an interview, I can identify a large number of these, then I have effectively identified someone who will take up a large portion of my time in coaching & mentoring to smooth out those habits, or who will take up my time in dealing with inter-office conflict. If that's the case, I will turn that person down based on a culture fit and choose another candidate that can present both the technical skills required as well as the soft-skills that allow us all to work more effectively.

This is my interpretation of those terms and how I use it personally. My basis for behavioral traits is based on personal experience as well in working at a large number of companies in various roles, industries, and positions. I don't believe that it is at all discrimination because I'm using my best judgement for who can work most effectively with my team. That's just smart business.

<comment><USER4> What types of concrete traits/habits do you look for in a candidate? Do you have any examples of traits/habits that wouldn't fit in the with your team, company and clients?

<comment><USER5> To follow up from GPs point I'm in a similar situation and have been doing a lot of interviews recently. We are a fast growing startup, with under 20 people, and tight deadlines (from investors).

A lot of the candidates we've interviewed just don't have the experience working in that sort of environment. We don't have time to write code perfectly at the moment with pairing, full test coverage, fully TDD, etc. Yes people can learn this, but if you come across as someone who will just spend all day conplaining about that I don't want you on the team.

Another thing is simple skills like turning up on time. We recently had a couple of on-site interviews (after phone calls) where the candidates turned up more than 30 minutes late, with no good excuse.

<comment><AUTHOR> Do you consider tardiness or skill level 'culture fit'? I don't.

</comment></comment></comment></comment><comment><USER6> It certainly can be. At its core, the term basically means oen of three things:

1\. We don't like you and we don't know why

Or

2\. We don't like you and don't want to tell you why because the reason is against their law/might lead to a lawsuit.

Or finally:

3\. We don't like you but want to sugar coat it a bit because we don't want to make you extremely annoyed/upset.

In some cases, that can really be a codeword for discrimination, since telling someone they're not hired because of their race/gender/age/nationality/whatever is against the law. But in other cases, it can often just be that the company has one way of working/prefers one environment and the candidate has another. If someone just doesn't get along with the people already at the company, well that's not necessarily discrimination if they don't get hired by that company.

So yeah, it depends really.

<comment><USER7> I think most people would rather be told they're a jerk than be told they're incompetent.

<comment> V-eHGsd_ In my experience, jerks don't like being told that they're jerks.

YMMV

<comment><USER8> Yeah... but they _really_ don't like being told they're incompetent.

<comment><USER9> "Culture fit" doesn't mean incompetent though.

<comment><USER7> It could be, if you wanna let the person down in the least offensive way. There's no easy way to tell someone they didn't get the job.

</comment></comment></comment></comment></comment></comment><comment><USER10> "Cultural fit" means something like "shares our values". That's something like:

conservative compliance vs. going right to the edge of the law

meticulous design and testing vs. move fast and break things

command-and-control vs. self-organization

IM vs. voice calls

9-5 vs. flexible hours blurring work and non-work time

likes the same kind of music as me vs. doesn't

Some of those seem okay to me to consider, and others don't. I don't see a bright line. I'd tend to agree that "cultural fit" with no further explanation tends to mean something bad.

<comment><USER11> I especially like that most of the things on your list are not ones where there is a "right answer" for all organizations. Some organizations _should_ move fast and break things, others must not. Having worked at Fortune 500 companies running factories with many toxic chemicals that need to be tightly controlled, and travel magazines, and university accounting IT, and startups, and consultancies making websites for restaurant chains, I can tell you from personal experience that the "right answer" for many of these things is different. Most people can work well in some of them, and not in others.

</comment></comment><comment><USER12> Culture fit certainly isn't just good/bad attitude. It's whether the way people do their jobs is compatible with the other people. Some companies release early and often, while some test thoroughly before releasing. Some have long meetings, some have short standups. Some start work early, some work late into the evening. Any of those styles can work as long as people agree. Considering culture fit means trying to hire people that share the same style so they can work together effectively.

Culture fit is also a way of excluding jerks. You encounter some abrasive, abusive, or misogynistic personalities in tech. People usually don't want to say "this candidate is a jerk", so they use "bad culture fit" as a euphemism. Once the answer is no-hire, the details don't matter anyway.

Building a team that works well together is extremely difficult. Unless you've actually hired dozens of people and seen them either work well as a team or kill productivity with interpersonal conflicts, better not to sit in judgement of people who have.

</comment><comment><USER11> "Prove" is a high bar. But for example, I once worked in a factory where everyone was cautious with what they said and how they said it (in a way which your question is not, btw), so as not to hurt others' feelings. Another factory, in the very same building, had a culture of saying everything as bluntly as possible, often with profanity involved.

Same industry, same demographic mix, same company even. Very different cultures (which, interestingly enough, both worked well). Then, they merged the two factories into one organization, and you saw that "culture fit" was not at all an abstraction; the first year was very rough for all concerned, and a lot of people quit.

Also, in this case, because it was a bunch of engineers with a similar demographic mix, not a code word for racism or any other unethical practice. It was culture; I can think of no better word for it.

</comment><comment><USER13> No disagreement here.

"Culture fit" is a lazy term that, at best, means easy compatibility of work style. Normally, though, it means "like me", and from there it's a pretty short road to unethical forms of discrimination.

I would argue that most companies really want/need "culture add" and "values fit". The stated values of the company tend to at least be aspirational and exclusive of things you don't want at your company. But the culture is an emergent aspect of the people who happen to be there, what they're into (good or bad), and how they prefer to interact. If you only want people who fit into that box, you may be numerically growing, but you're stagnant in perspective.

</comment><comment><USER14> >Prove me wrong.

I can't, I agree with you.

Company "culture" is whatever management decides it is. Unlike real, organic cultures, company cultures are engineered and dictated from the top, and employees don't alter it (as members of organic cultures do) but are merely expected to conform to it. Amazonians didn't create Amazon's culture, collectively, it is literally the cult of Jeff Bezos, and is "peculiar" by mandate.

So "culture fit" is just a meaningless box into which to throw the personal prejudices of whomever is hiring you (or choosing not to hire you) and to provide them with sufficient plausible deniability, because they can't just _say_ they don't hire anyone over 30, or that they would rather not have women or certain ethnicities around, because it makes them uncomfortable.

<comment><USER15> As a side note related to Amazon's culture...of the people I've worked with that had previously worked for Amazon, the only ones I (or most anyone, for that matter) enjoyed working with were the ones who hated working for Amazon.

So anecdotally, it seems like culture fit for Amazon is largely about what you're willing to put up with. There might be a component of that at a lot of places, but clearly different companies do have very distinct "cultural" differences. Basecamp is certainly no Amazon. The diversity of different criteria among businesses makes me feel like it's not a particularly unethical practice (obviously it _can_ be, but I don't think it is typically), and overall cultural fit would probably make you happier at whatever job you do end up at.

</comment></comment><comment><USER16> I used to think 'culture fit' as a reason not to hire someone was nonsense, however, I left an employer not long ago after they refused to deal with someone toxic that was hurting the team attitude. It led to some massive attrition and made me realize there's certainly something to idea of 'culture fit', but I don't know how it can be assessed so easily over an interview process. This employee actually started off quite well and seemed like a fit at the time but eventually it became clear they lacked the growth mindset we needed. So culture matters, yes, and attitudes affect team balance but I'm not sure that this is the same as a post-interview 'culture fit' rejection. In fact, it may actually be a matter of hiring at the right level of seniority to get the job done. That's not a culture thing so much as knowing what you really need in an employee. You could easily hire someone who just wasn't what you needed then blame 'culture fit' which seems like a bit of a cop out.

<comment><USER17> I totally agree here, that 'culture fit' in team work is a real thing. Usually a thing that you discover some month later, after the person feels they can be "themselves" and don't need to pretend being nice. If the whole team finds a person toxic, this is very real case of 'culture unfit' and it should be dealt with.

However, I also once faced with a case, when manager didn't want to hire an engineer, because she thought he wasn't 'culture fit', although he was a great engineer. Technical members of hiring committee managed to convince her otherwise and then this person became in a sense the heart of the team, everybody liking him more than anybody else.

So, in my opinion 'culture fit' should always come from within the team a person works in and it should be a collective opinion, not an opinion of a single manager.

</comment></comment><comment><USER18> I'm a recruiter and have heard this more times than I can remember as the reason given for why a candidate is not suitable.

I think it is simply a convenient, sufficiently vague, unarguable reason to say no.

It's important to understand that people feel very uncomfortable rejecting another person, and in recruiting, companies really prefer not to give any reason at all - this is because they don't want the candidate to come back arguing with the reasons given for the rejection.

So "not a cultural fit" is just an easy way to say no thanks, whilst giving a "reason" that can't be argued with.

It's not discriminatory.

<comment><USER19> "Culture fit" is just too vague and only provides cover for discrimination. Internal discussions/documents should give the detailed reasons (is a jerk, not on time, not a rule follower, etc). If the people/company are uncomfortable with sharing that outside the company, you don't need to say anything more than we didn't choose you. The internal documents are your protection in the case of a law suit.

</comment></comment><comment><USER20> It's definitely a mixed bag across the industry and even across individuals at the same company.

To some people culture fit might mean "I'd hang out with this person on Sundays." This of course is problematic and can let in all kinds of biases leading to discrimination.

Ideally culture fit is about whether a person can fit in to the processes in place. Do they value testing? Are they comfortable with the level of ambiguity that will be found in their assignments? Etc.

I'm in favor of the latter, but it needs to be evaluated based on direct questioning to limit the impact of biases i.e. "Would you be comfortable being required to have 100% test coverage on the code you write?" I've certainly seen folks come out of an interview confident that someone wouldn't be comfortable with ambiguity just because they said that at their current job they are given detailed specs to implement.

<comment><USER21> Given the way "culture fit" is commonly misunderstood, we probably need a better term for the latter -- which I agree is important. "Process fit" or something?

<comment><USER20> That terminology is so much better. I might start floating that around the office.

</comment></comment></comment><comment><USER22> I'm in a fast-growing small startup. In my experience, there's no such thing as "culture fit" in a 10-person company, because every single hire is going to change that culture.

To me, it doesn't matter if the candidate "fits in" with today's culture, it only matters if I will still want to work at the company after the new person is part of its culture.

If only you could actually predict this from interviews!

As is, all you can do is try to put the candidate in job-like scenarios and evaluate specific "culture" attributes like "is open to criticism" or "listens to collaborators" or "codes with a concern for future readers" or "has a positive attitude toward code reviews". It's still much easier to disqualify than to endorse on those criteria. Hiring is hard.

<comment><USER23> Not only in a startup. I don't remember where I read it but it was "Every time you add a single person to the team, it's not the same team anymore" and I think it sums it up perfectly. Probably also true for people leaving, but maybe a bit less

</comment></comment><comment><USER24> I have definitely seen a co-worker at my current job use "culture fit" as a way to discriminate.

I personally believe it is a way to discriminate. If you interview someone and you can't give specifics as to why you don't like them other than culture fit, it's something you are scared to say out loud.

</comment><comment><USER25> You might have read in HN, in many threads, comments from people saying "I would NEVER work in a company that would do such things like X, Y, Z". The other day, the comments were about a company tracking the activity of every employee. Another day was about a company whose business model was invasive ads. Another thread was about a company forbidding work-from-home and expecting everyone to checkin at 8 am sharp. Another was about companies forbidding engineers to work on opensource on their spare time. The list goes on. These are all examples of "culture" in my mind. As one might say "I'll never work there, ever" \- there are plenty of people that would and they do indeed. The difference is the "I would fit there". If I know that the company "requires" to work long hours, or doesn't want work from home, or expects you to be on call at any given time, or expect people to be brutally honest with each other - as interviewer, I would be mindful of someone who will not fit these criterias. And many of these criterias are not good or bad - see the being brutally honest vs we are respectful of everyone feeling: it's just that the "wrong fit" would be run over by the organization within weeks and would likely result in the employee to be dismissed. Everyone would lose.

</comment><comment><USER26> If you're serious about this and this isn't some "change my mind" meme, I'd recommend reading the culture documents of larger companies like Amazon. It's an attempt at standardizing how soft skills are evaluated and hired for. Basically, all interviews are an attempt to discern three things:

1\. Can they do the job 2\. Will they like the job 3\. Will I like working with this person

The third is really where "culture fit" comes in. When you have multiple candidates that qualify for a role, how do you choose between them? You will naturally pick the person you hit it off with the most, which will more than likely be someone like yourself. It is definitely unconscious bias, but I'm not convinced it's unethical discrimination. This is the basis of all hiring ever...not just tech.

People are going to prefer who they choose to prefer. You're not going to build a better team or get better hires by consciously picking people you or the team doesn't want to work with...at least in collaborative fields. To call that unethical is disingenuous.

The way to minimize the influence of "culture fit" is doing more upfront thinking in the "can they do the job" category so you aren't just choosing between two people who both know javascript. Usually the only soft skill I see on a job description is "effective communicator," which is fluff. Think seriously about what it means to contribute to a team, how they contribute, and how you want teams to reach consensus and work together.

</comment><comment><USER27> I'd say yes. I'm an older engineer. I recently went for an all day onsite interview. Everyone on the team were fresh out of college in their early 20s. We all went out to lunch and everyone talked entirely about video games throughout about which I have no knowledge really. Afterward they told me I was technically solid but not a team fit.

Older engineers (50+) like me are supposed to have retired aleady.

</comment><comment><USER28> Yeah, it's mostly thinly veiled discrimination and/or "won't put up with a wildly toxic culture".

</comment><comment><USER29> I've seen it both ways, I was on a hiring committee that interviewed a candidate who was techinically a great hire, but he had a bad personality and kept correcting one of the other interviewers. We didnt hire him because of a culture fit.

I was on another committee one time where the candidate was muslim and had to pray during the four hour onsite technical interview. My boss said we couldn't hire him because he wouldn't be a good culture fit.

One of those teams I stayed on for 2 good years. The other I wish I had quit earlier.

</comment><comment><USER30> Anecdotal data point: I'm working at a small startup right now, a bit over a dozen people, which is looking at hiring some web developers. It's been an interesting process. We have rejected a good chunk of applicants for culture fit. (And a few for attitude. And very many for not reading the damn job description.)

Here's why:

Most of us, to a T, are furry trash.

We want to hire someone who seems genuinely excited about the job, and kind of excited about us by extension, so we are making a good chunk of our decision based on culture fit.

Some of our interviews have fit right in. They seem ease. Planning some cosplay or other. Others have reacted quite a bit cooler to the atmosphere. (We're immersed pretty deeply in this weird pocket of the permissive California culture, which I figure must be pretty intense to walk into for a job interview if you're not used to it.)

The ethical bit: Both the primary groups we're hiring from, furry and nerdy, are predominately very white and very male. We seem to have a sort of multiplier effect going where both groups have some diversity but just through probability we don't see any applicants who are not the traditional white male programmer. We'd happily welcome anyone who did not match the visual template, who wasn't weirded out by us, but no one really has yet. I'm guessing we're running up against some sort of systemic discrimination, despite the fact that no one involved in the interaction is intentionally discriminating.

Take that all for what you will, I guess.

\--Anonymouse

</comment><comment><USER15> I've worked at several companies and I've never really seen culture fit used in the way that you're describing. In the case of smaller companies and startups, it's generally just boiled down to "Can this person work directly with stakeholders to provide value for the company, and will they take initiative and ownership over their work?"

<comment><USER31> If you can answer that from a round of interviews, throw away whatever your business is and pivot to that: you'll print money. More likely, it's a hunch based on signals and cues.

<comment><USER15> It's a lot easier to be confident about a "no" to those questions than a "yes". Of course it's subjective and there are probably false negatives, but it's really the best you can do imo

</comment></comment></comment><comment><USER32> Culture means something specific: Shared beliefs and behaviors within a social group, but hiring managers or entrepreneurs use "culture" to make up something vague about not liking the candidate. When in fact, saying a candidate is not a culture fit, it should mean the candidate "does not share our social group's beliefs and behaviors"

</comment><comment><USER33> When I was just beginning to interview, I was taught the "can do, will do, will fit" criteria: does the candidate have the aptitude for the job, are they willing to apply those skills, and can they do so in the context of the current team.

Fast forward a couple years, and I saw "will fit" used sometimes as a blunt instrument for like to hire like. I actually edited "will fit" when I was training others how to effectively interview, as seen in [https://t.co/bias](https://t.co/bias) . Like tends to hire like, and people will tend to bias favorably towards other people with common backgrounds, customs, and cultural norms. There has to be an active effort made through an org to both be cognizant of this bias before it can be overcome. I haven't seen many companies that we're successful in that effort, unfortunately.

</comment><comment><USER34> I think so. I work in the government sector, and the culture fit is never more abused than here. Everything is highly political and no matter the office, political ideology, race, gender, etc. if you don't fit the political culture, you're out.

</comment><comment><USER35> Disappointing to see this flagged/removed with no explanation.

<comment><USER27> too real perhaps

</comment></comment><comment><USER36> It can be, although I think the root cause is simply the 6-round sudden-death interviews. Social conformity is a major factor there no matter how you slice it.

</comment><comment><USER37> I have a suspicion that I got passed over about six months ago for a job as a case of "culture fit" discrimination. It also could have been age, or possibly handicap, I'm not sure. But the strongest takeaway was because of the following:

The first person I met was the company recruiter who handed me a neatly printed brochure about the company culture, which detailed about some of the organizations the employees were involved in and how the company contributed toward their volunteering, etc., all very important. It talked about how they gathered after work and generally socialized outside the company. I was surprised that the emphasis was so big that they burned a lot of money having an expensive brochure professionally printed (which I didn't say).

I read over it, was OK with the idea in general, but kinda didn't get it - <USER2> volunteer for my church and otherwise, my time is my own. I haven't worked for a company that made that big of a deal out of it and I said so. I asked if she had anything that talked about the technologies they worked with, stack, tools, etc., since there was nothing on the website. I had a good half-hour to wait for the next interviewer, since they had gone into a meeting.

She promptly gave me a lecture about how I shouldn't dismiss the culture just because I don't agree with it and I tried to explain that I just wasn't familiar with such a strong emphasis.

Generally, I feel like I'm pretty flexible - I'll go along with the crowd for a lot of things and if it's too much, I'll gracefully bow out, citing either other commitments or needs. I am occasionally cynical about such things, but I won't say a word unless I know the person I am speaking to well.

Nothing stands out about the rest of the interview other than it was a good opportunity and I felt like I did pretty well, except on the company culture bit.

I can't help but feel they didn't want someone who didn't wholly buy into what they were doing in their off time.

\--

I did have an interview with another entity where the interviewers (there were three) all talked about how passionate (actual word used) about the social causes (all of which I thought were fine and was generally OK with, even though I didn't have much in-depth knowledge of). I refrained from stating that I was passionate (not exactly the right word) about being a good programmer and solving technical issues, but it really is the main thing I worry about.

They gave me 24 hours to think it over and see if I was interested. I passed on that one.

\--

I may be old-school, or just old, but to me the thing about work is that you get The Work done. If The Work is social causes, volunteering, beer-thirty on Friday, whatever, you do The Work first. I'm doing the job to solve technical problems, get paid and learn new things.

Not joining a cult.

My two cents. I'll go get my safety helmet now.

</comment><comment><USER38> I previously worked for a company that spent $5-10k psychometrically testing each potential hire in 1 on 1 sessions with a psychologist after they had passed an initial interview. The tests were a mix of general IQ (to ensure people actually had suitable mathematic and literary skills needed the role) but also quite a bit of personality testing. The company founders recognised the huge detrimental impact certain personality types could inflict on an organisation. So they spent considerable money and effort to try to detect and reject candidates that were likely to be passive aggressive, too dominating, inflexible etc. They actively favoured candidates that were able to demonstrate aptitude and personality traits aligned with being a team player, even if the candidate was less experienced for role (ie find quality people first, train them if necessary).

This was the best place I have ever worked. Problems (and successes) were shared. Internal conflict was very rare. If one person was overloaded, the team would work out who might be light on work at the moment and could assist. Work hours were very flexible - outputs not inputs were what mattered. We had a lot of autonomy and were encouraged to be creative and take some risks in developing new tools and services.

The employees were from a diverse range of ethnic and religious backgrounds. The male/female ratio was probably around 60/40 for a company of mostly engineers. Age of employee was mixed but favoured younger engineers. The company was a consultancy so it was a place people would work at to gain diverse experience then move on to specialist positions elsewhere. It was rare for older engineers to be looking to gain diversity of experience.

Given the personality types - this meant we had lots of really interesting discussions about different countries and cultures and life experiences. So "culture fit" at this company did not mean "the same as me" other that with respect to: will work hard, is intelligent enough, will be a team player.

Sadly, after a few years of awesome work life, some of the owners wanted to cash out and the company was acquired by a multi-national. The culture of the original company was quickly destroyed. No autonomy, ridiculous levels of authorisation (4-5 just to purchase $500 of IT equipment for example), competition from internal groups stealing clients, very few team players, inputs favoured over outputs (lots of "make work" going on). The transition experience really rammed home how real the Peter Principle is and the drawbacks of tall hierarchical management structures.

"Culture fit" to me means rejecting people that won't work within the organisational structure you are trying to build. Note that it doesn't mean non-team players should always be rejected. If you have a team of individuals that largely work in isolation and prefer to reduce communication to a minimum, hiring a team-oriented person could be detrimental.

As for "culture fit" being used as a cover for discrimination, I'm sure it happens. If someone is discriminating then they will want to cover their arse somehow and "culture fit" is vague enough that it can easily be used for that purpose.

Perhaps "personality fit" would be a better term for what I describe above? Though I have never heard it being used and I suspect a lot of-people in tech like to think that merit matters more and could find "personality fit" to be offensive.

</comment><comment><USER39> Yes, that, but also just not liking someone. I feel that the sexism and racism in our industry are important parts of a larger pattern, which is simply that if someone doesn't express ideas the same way you do, or look/act how you think a "nerd" or "hacker" should, then they're not one. Women and non-white people are likely to get caught in that, but so might a white man who just doesn't talk in a way that codes as "nerdy". God forbid if they could be considered a "bro", the nerd's mortal enemy.

And so you say they're not a good fit, and that's that. It can't be proven incorrect because culture fit is a nebulous idea to begin with. It's a catch- all for whatever you don't like, basically.

</comment><comment><USER40> It can be. Some companies (famous example:google) use "culture fit" and "share our values" to discriminate based on political views or other criteria which if they were to be specific about it,then they would break multiple employment laws.

But some have that for a good reason. I applied at a tech company recently whose product I am a fan of. Did well on the phone and in person technical interview. But after that, they kept asking how I like to work and how I felt about open office spaces(told them I can deal with it so long as I can put headphones on while doing technical work that needs concentration and that I felt some tasks are best dealt as a team while some should be developed and matured before involving others). Needless to say, I haven't heard back from them. But my point is that even I felt a bit of a cultural incompatibility( I was willing to make it work but they saw it as unworkable I guess).

Frankly, I don't see how a 50 year old person (not myself,I'm in my 20s) can be culturally compatible with people young enough to be his/her grand child. Or how a coder from asia can have the same work culture as west cost americans.

There is this view that the culture and values made all these tech unicorns what they are. Maybe that's true but I keep wondering whether or not the same group of smart people but culturally diverse could have acheived the same goal so long as they all agree to use rationality,communicate openly(in an inclusive way) and agree on what the goal and their role in the organization is.

I like to think silicon valley startups to be more or less as culturally exclusive as 80s era IBM,bell labs or Xerox. Which is why I keep doubting the culture narrative. Smart people make smart companies and smart enough people should be smart enough to make cultural diversity work (my humble opinion).

<comment><USER41> "I don't see how a 50 year old person (not myself,I'm in my 20s) can be culturally compatible with people young enough to be his/her grand child."

30 years is generally _one_ generation, not two.

And "culturally compatible" enough to _work together_ is way different from being culturally compatible enough to date, or whatever.

<comment><USER40> When did I mention dating? I was clearly talking about work culture. 30 years from now you will most likely find that the trendy work culture of the present would be a dated old way of doing things. Change is inevitable. My whole point was to promote cultural diversity, so that if someone shows up in a black suite and ties and prefers a cubicle over an open office space then the people who entered the work force wearing sandals and shorts to work should be accomodating as he should accomodate their views -- so long as none of this gets in the way.

Aegism in silicon valley is a chronic problem, are you saying it doesn't exist or are you claiming "culture fit" isn't used to push out older workers at some companies?</comment></comment></comment>


A Data Crusader, a Defendant and Now, a Cause - <AUTHOR> http://www.nytimes.com/2013/01/14/technology/aaron-swartz-a-data-crusader-and-now-a-cause.html?hp&pagewanted=all

<comment><USER2> I'm genuinely perplexed by the ongoing coverage of this story and many of the comments here.

First, the discussion of the legal situation lacks any perspective. Only people who spend all their time focused on technology policy would interpret Aaron's death as a call for technology-crime reform. Compared to the rest of the western world, the US has longer sentences for crimes across the board. Every day, people get sentenced to many years in prison (and it's disingenuous of Lessig to suggest Swartz would have gotten anything close to decades in prison for these charges) for nonviolent drug offenses, get life imprisonments for mere possession of child pornography often downloaded without plausibly motivating any child abuse, and so on. Even violent crimes in the US lead to sentences that in Europe seem inhumane to most people. I don't mean to sound insensitive to the recently departed here, but Aaron was a very lucky person who had significantly more opportunity to comply with the law than many. Civil disobedience can be great, but regardless of whether it is or not in any particular case, it usually comes with penalties. It's very hard to see Swartz as a victim of the United States Attorney's Office nearly as much as whole swaths of poor people and African American communities, for example, are victimized by laws and by simple situation. Again, perspective is important. What's happening here seems very much like an insular group of people like us, some of whom (like Lessig) happen to be connected with some journalists, understandably upset about the death of a friend and lashing out. But that is irresponsible, and I don't just mean politically; it is very likely also unfair to the family, who are probably not in a great position at the moment to assess how public they'd prefer their son's death to be (even if they know they are angry at the people who prosecuted him).

Second, and related, the message of Lessig and of many others seems to be "don't turn the death of my friend into a discussion of mental illness; turn it into a discussion of my pet causes." But it obviously has a profound connection to mental illness and also to the social and psychological pressures that people who seek "fame" in the technology community seem routinely to experience. That is a far better subject for critique, in response to this kind of heartbreaking tragedy, than US sentencing policy writ large (a topic about which few programmers have significant experience). There's a whole online subculture that feeds off people's insecurities and need for attention, their desire to feel "influential" or "famous" in a tiny but vocal community of like-minded people. I am virtually certain that that subculture hurt Aaron as much as any prosecutorial discretion did here. It is worth reminding everyone that a vanishingly small number of criminal defendants in the US commit suicide, despite whatever injustice they feel about their charges and despite any accusations of prosecutorial overreach.

Third, there is a significant overemphasis in the press of the "debate" among a relatively small but vocal community of people like, frankly, us. The NY Times confidently reported today that Swartz's death triggered a widespread debate, when the political debate really is just among people who were already activists, most of whom knew Aaron personally. Just because someone is friends with journalists and people like Lessig does not imply that that person's tragic death is the subject, much less the proper subject, for a public debate, unless of course what we're really talking about is a self-styled internet "high society" that wants to turn one of its own into a martyr. But that would be manipulative and shortsighted, and it is hard to see how it could possibly be a praiseworthy method for achieving social change. Lessig's immediate, political response to Aaron's death took him down a significant notch in my view.

Fourth, but less important, as with many deaths and many suicides in particular, there is very little realism in the discussion of the recently dead. As most people do, Aaron touched many. That should be praised and discussed, but the rest should not be inflated. It would be insensitive to point out particular inaccuracies in the coverage of him, but a big part of me does think that truth is more important than whitewashing memory. Remembering people for what they were is a far better honor than remembering grandiose caricatures of them.

The response I urge for those who knew him personally is private grief and personal reflection, though perhaps that is suited to a different age in which the goal of motivated people is not to attract as much personal attention on the internet as possible. And yes, sentencing in the US should eventually be totally reformed, but technology crimes are hardly the most important or most pressing piece of that puzzle. It's easy for us to forget that just because it interests us.

<comment><USER3> _The NY Times confidently reported today that Swartz's death triggered a widespread debate, when the political debate really is just among..._

I live in far away India. I know friends (not from a software background) who have read about it and were wondering why the US justice system would try to harm one of its brightest young minds over copying some scientific journals. Trust me, the charges are unthinkable in pretty much the entire rest of the world.

He belonged to the whole world really.

<comment><USER4> Yup, same here in the UK. Although, we don't have the best track record in this regard either.

</comment></comment></comment><comment><USER5> It's nice to see the mainstream media taking less of a conservative 'anti- hacker, pro-government' stance on that tragedy. Hopefully this is just the beginning.

<comment><USER6> I'm glad too to see that it's getting widespread coverage. Most people I talk to aren't aware of what happened. I think it has been really positive how much support we have all been showing for his family and friends. It's sad that the rally of support had to follow such a tragic event.

<comment><USER7> My wife is a surgery PA and today one of the scrub techs asked her if she heard about the internet hacker suicide. She said her husband (I) was very disturbed by the news and that based on what she read, the prosecutors pushed the kid too far for something that is barely a crime. The scrub didn't know about the open case, just that it was some hacker who was depressed.

</comment></comment></comment><comment><USER8> t's quite easy to calculate the likely sentence. The Federal Sentencing Guidelines provide for a base level of 6, plus an 18 step increase for fraud between $2,500,000 and $7,000,000. The sentencing range at this level assuming no criminal history is 57-71 months. Expect supervised release (no computers) for three years. The fine would be up to the sentencing judge within statutory limits. The government estimated the value of the JStor documents at $5 million. Even if the government's estimate was exaggerated, the documents were worth something--and this figure would drive the sentence to be imposed. The judge could also depart upward based on aggravating factors such as PACER and a lack of remorse. Swartz faced with no good choices. When he did not take the offered plea, they superseded and racheted up the counts. The number of counts doesn't really matter for Guidelines purposes but there is always the risk that the sentencing judge could impose the sentences for each count consecutively.

</comment><comment><USER9> Somewhat related: [http://www.dailymail.co.uk/news/article-1212910/How- Britain-...](http://www.dailymail.co.uk/news/article-1212910/How-Britain- drove-greatest-genius-Alan-Turing-suicide--just-gay.html)

</comment><comment><USER10> This is a fantastic article. It brings about some important points regarding how free information should be and how much leeway prosecutors should have when deciding what charges to bring.</comment>


Ask YC: Is Google trying to own everything or simply have access to them? - <AUTHOR>

Last week was OpenSocial and today their mobile platform Android.  To some extend both these platforms have the same approach, they are both open, Google is giving easy ways for developers to come up with new applications and the possiblity of the developers reaching a lot more users in a much easier and faster way, and Google is constanly looking to add new partners (major ones) that would also support these platforms.  One thing that I find interesting here, is the comparison between the new ways of creating platforms and possibly setting new standards.  In the 90's everything seemed to be closed and platforms were mostly used to set standards and create lock-in situations and exclude the competition (Microsoft was the pro here).  Now it seems like the opposite, not only everything is open with Google, they are in fact working hard to get others partnering with them, instead of trying to compete with them and trying to exclude them.  I don't personally believe that Google is doing this merely because its better for the end users or developers.  The web has changed many things and creating such lock-ins are not possible anymore.  So Google will not have any other choices but to open up and share.  But the question for me is whether this is another way to approach the situation and by these new movements, Google will in fact be able to set the standards and create a new kind of lock-in (I say new since its not excluded to Google now and others have access).  One thing that is more clear is that by offering the platforms Google is making the information at least accessible for themselves.  Without doing so there will be walled gardens all over the place and everything would be excluded to those networks.  And by knowing Google's mission their access to all those data is vital to their survival and their leadership in the market.  So maybe the main question is whether Google is doing these so they can insure their access to all these data, or they actually have other plans behind the scene and will be able to own a lot more than simply having access to the data(in which case other companies will also have the same access to some extend). <comment><AUTHOR> In the news: \- Google has launched two major platforms within the past week \- Last week Google introduced OpenSocial for the web and yesterday their mobile platform Android

\- Both platforms have the same approach: both open, easier for developers to make applications, developers will be able to reach a lot more potential users much easier and faster, Google is constantly looking to add new partners (major ones) that would also support these platforms.

From Before: \- In the 90's everything seemed to be closed and platforms were mostly used to set _standards_ and create _lock-in_ situations and exclude the competition (Microsoft was the pro here). --> the exact opposite of what Google is doing now!

\- The web has changed many things and creating such lock-ins are not possible anymore, at least not the same way as before

We Know: \- Google's mission and business model requires them to have access to all the information on the web

\- Facebook and other sites have proved that they can accumulate vital information and have them within their walled gardens, and exclude Google from accessing them

\- Google knows they can't _own_ all the information themselves or have exclusive access to them

\- But they also know their strengths, if information is available to everyone they believe they are better in getting that information, so other companies will not be scaring Google by also having access to those info

Question: \- with the new platforms and the new approach, is Google simply making sure they'll continue to have access to all the information out there, OR are they in fact doing more behind the scenes that would allow them to take advantage of their platforms and set standards the way companies did in the 90's, will they be able to create lock-in situations again?

</comment><comment><USER2> Google's platforms seem to be designed to be free. You are free to do whatever you want on them, but the overall use of them will drive up the usage of their core products. This increased usage of the core products will continue to drive the growth in an organic way.

I don't know that there is any lock-in, Google docs allow you to freely export your files. This new Android looks to provide a browser that you aren't forced to use Google with.

I really liked the Android announcement. Getting into the cell phone market directly would be a huge risk for Google, they do not have the expertise in the hardware and manufacturing business they would require. So they made the best move I have seen in a while, they decided to make the massive partnerships and develop a platform that they could leverage many phone maker's business.

<comment><AUTHOR> I agree but is Google doing this because they are scared they will lose their position by losing access to all the data out there?

And will they have advantages in terms of advertising on these platforms?

</comment></comment><comment><USER3> You should organize your writing visually.

I don't want to read it cause it is all on paragraph.

<comment><AUTHOR> look at my comment underneath I made it point form for you...hope that helps</comment></comment>


In Liberia, US Soldiers Race Ebola - <AUTHOR> http://online.wsj.com/articles/in-liberia-u-s-soldiers-race-ebola-1413501880

<comment><USER2>
      The U.S. has flown in 7,800 cubic yards of gravel, along with 30
      large tents, 4,400 cots, more than 12,000 yards of barrier fencing
      and more than 2,200 rolls of plastic sheeting for the construction
      effort, according to government figures.

Wait, what? 1 cubic yard of gravel weights over a ton, right? It would take more than 30 trips with an _An-225 Mriya_ to move that much gravel through the sky. Methinks WSJ fact checkers missed something here...

 _According to government figures_ indeed...

<comment><USER3> A ton seemed crazy heavy to me, but it turns out a cubic yard of gravel is commonly estimated at 1 _.5_ tons.

[https://www.google.com/search?q=how%20much%20does%20a%20cubi...](https://www.google.com/search?q=how%20much%20does%20a%20cubic%20yard%20of%20gravel%20weigh)

</comment></comment><comment><AUTHOR> Some readers have trouble accessing WSJ articles. If it won't load, search for the article title on google and it should load OK from there. I looked for a similarly-up-to-date report in another publication but coverage has been poor.</comment>


Restaurants in India Getting Zinged by Delivery App Zomato - <AUTHOR> https://www.nytimes.com/2019/08/29/technology/india-restaurants-logout-delivery-zomato.html <comment><USER2> The fact missing out here which no one noticed is the prices.

The prices of food items on Zomato are always higher than that served at the restaurant.

The restaurant owners are always changing the prices and still complain that Zomato is cheating them by offering discounts.

Also they forgot the fact that without zomato it would have so difficult for them to discover and serve. Basically they want the entire business of zomato without any cost.

</comment><comment><USER3> I used Zomato's Gold membership for a year. It was so affordable to get started knowing that we will be getting a ton of value back while dining & drinking with friends only around Connaught Place in Delhi. I visited Delhi 3 times during the course of that 1 year period of membership and each time I really enjoyed the entire experience from value point of view while still being able to enjoy a lot of high-end places.

</comment><comment><USER4> My experience with delivery app is nothing but fantastic.

Customers should band up and boycott the restaurants who want to end delivery app business and whoever is part of this movement. To each his own.

Thing is, customer was never king in India unlike many other countries where you can sue and get compensated.</comment>


GNU Terry Pratchett - <AUTHOR> http://www.gnuterrypratchett.com/ <comment><USER2> Somebody (I think it was ESR) called this pointless, wasteful, and stupid. It would be, were it for the benefit of the dead.

But it's not. It's very much for the benefit of the living. It's a way of remembering a man who was so very important to us, but for me, it goes beyond that.

Somewhere out there, there's a kid who's examining some net traffic. Maybe out of curiosity, maybe to debug some kind of problem. And he'll see an undocumented header, repeated across protocols.

Legends don't come from nowhere: Pratchett fans, of all people, should know this.

And a man whose name the network whispers to itself is a pretty good legend, don't you think?

<comment><USER3> "Pointless, wasteful, and stupid" strikes me as a rather uncharitable way of characterizing [http://esr.ibiblio.org/?p=6703](http://esr.ibiblio.org/?p=6703) .

<comment><USER4> I'd argue that it's outright misrepresentation.

</comment></comment></comment><comment><USER5> As a long time Pratchett fan, I inserted this in my Web Server headers when it first became a thing after he died. I mostly forget it's there until I'm debugging something and look at a response header and go... 'oh yeah'

It's mostly pointless, but us Pratchett fans are a loyal bunch.

<comment><USER6> It's pointless until we're able to reverse entropy on a massive scale. Then everything throughout history that made it long enough to be recorded will have mattered.

"There is only one god, and its name is entropy. And there is only one thing we say entropy:

 _Not today._ "

</comment></comment><comment><USER7> I've had the Chrome extension for this running in my browser for a while now.

The most interesting discovery I've found is that virginamerica.com is sending the "X-Clacks-Overhead: GNU Terry Pratchett" meta tag on all of their pages.

<comment><USER8> It'd be interesting to know how many (of us) have snuck such a tag into a product ;)

<comment><USER9> I know I have :)

</comment></comment></comment><comment><USER10> Shodan finds about 8,000 servers with the X-Clacks-Overhead HTTP header: [https://www.shodan.io/search?query=X-Clacks- Overhead](https://www.shodan.io/search?query=X-Clacks-Overhead)

Edit: I ran a query on HTTP Archive (which scans the top 1M sites) using Google BigQuery and got these results: [https://docs.google.com/spreadsheets/d/1TYWRQWlWPuIWIj3dCHAk...](https://docs.google.com/spreadsheets/d/1TYWRQWlWPuIWIj3dCHAktGvBCs7UtX8xtY5LcS3i6TQ/edit?usp=sharing)

</comment><comment><USER11> I wonder how people feel about adding other names to the Clacks header? It feels a tad lonely for his name to be the only one passed around in this manner. It seems quite like a virtual graveyard, but with only one gravestone. As much as I respect Pratchett, many others are already commemorating his name, and I would feel compelled to add another. If people put their own loved ones into the Clacks header, perhaps this idea could grow, and become a more permanent part of the internet.

<comment><USER12> What do you recommend as the format? Comma-delimited? My personal website has been serving this since he died, but I'd like to also add Iain M. Banks, as someone else here suggested.

<comment><USER13> Yeah, the interents needs a Banks memorial meme. Maybe not a clacks overhead though, it wouldn't make terrible sense.

I'm trying to think of something fitting from the books- perhaps there's something civs leave behind when they sublime? Something reminding those crazy conversations between ships in Excession that could be added to IRC channels?

<comment><USER14> "I Sublime, I Sublime, I Sublime"

NB I have tried it, didn't appear to work :-(

</comment></comment></comment></comment><comment><USER15> I once accidently did this on a university computer system. Something was misconfigured with sendmail routing; when I telneted to an unexpected computer in the lab and sent an email from there it started bouncing in an infinite loop between that and another department server. About two days later the system operator noticed when log files filled the drive. My email had been making trips up and down the building a few hundred times a second. I guess I missed the N tag though!

<comment><USER16> I wonder if it's possible to craft a mail to be infinite-bounced like this. There have to be servers that are appropriately (mis-)configured of course. But that would let you have a lot more than just one name, and a lot more information about each person. An epitaph of sorts.

<comment><USER2> The trick is to make it so the mail isn't replicated as it's infinite bounced, so we don't get infinite copies (don't clog the tubes!). It's something I've been struggling with in a piece of software I've been writing, actually. My solution is to simply not allow for loops: There is only one canonical path between any two server (netsplits, yay!)

</comment></comment></comment><comment><USER17> I would rather not add any additional identifying information to my browser, but I am definitely configuring Thunderbird to do this. It's harmless, quirky, geeky, and it might someday make some kindred spirit smile.

I wonder if this header shows up in the statistics of the big email providers.

</comment><comment><USER18> A proper implementation of this would require a packet with an infinite TTL and no destination. I tried to figure out a way to do that, but did not succeed.

<comment><USER2> Because of the way email works, if you got it working, but screwed up (which is what would probably happen), you'd end up with a recreation of The Great Worm (Well, to be more accurate, you'd actually get a recreation of Bedlam- DL3: [https://blogs.technet.microsoft.com/exchange/2004/04/08/me-t...](https://blogs.technet.microsoft.com/exchange/2004/04/08/me- too/). But it would have the same effect). Do you want to see what happens when millions of poorly configured email servers round the net scream out in agony?

<comment><USER19> Absolutely.

<comment><USER20> > Some humans would do anything to see if it was possible to do it. If you put > a large switch in some cave somewhere, with a sign on it saying 'End-of-the- > World Switch. PLEASE DO NOT TOUCH', the paint wouldn't even have time to > dry. - Terry Pratchett

</comment></comment></comment></comment><comment><USER21>
      $ HEAD debian.org | tail -n2
      X-Clacks-Overhead: GNU Terry Pratchett

<comment><USER22>
        $ curl -sLI debian.org | grep 'X-Clacks-Overhead'
        X-Clacks-Overhead: GNU Terry Pratchett

</comment></comment><comment><USER23> What a wonderful idea. I have just updated out frontend server config to include the header.

On thing though: According to RFC6648, we should not be using the X- prefix any more for custom headers ([https://tools.ietf.org/html/rfc6648](https://tools.ietf.org/html/rfc6648)), but I guess it's too late to change this now.

<comment><USER24> It says:

> 1\. Deprecates the "X-" convention for newly defined parameters in > application protocols, including new parameters for established protocols. > This change applies even where the "X-" convention was only implicit, and > not explicitly provided, such as was done for email in [RFC822].

It says for application protocols. I would argue in this case that it's not any part of an application protocol as the header is never used for anything.

<comment><USER2> >1\. Deprecates the "X-" convention for _newly_ defined parameters in application protocols, including new parameters for established protocols.

This has already been defined, so we're in the clear, I think.

<comment><USER23> RFC6648 is from 2012 though, but Sir Terry Pratchett died in 2015, which is when this initiative started. As such it's violating RFC6648 because it continues to use the X- prefix.

<comment><USER2> Crap. Oh well. We're violating an RFC. What's the IETF going to do about it?

Nothing.

</comment></comment></comment></comment></comment><comment><USER25> Just installed this on our company website. fastbill.com is now paying its tribute.

Lots of Pratchett Fans in our company, if we would have known about this earlier, we would have done it earlier.

<comment><USER20> Apropo of nothing but you have a bug on your landing page

        <!-- End Google Tag Manager —> isn't closing the comment.

<comment><USER25> Good Catch, thanks!

</comment></comment></comment><comment><USER26> Wouldn't a better tribute to Terry be to use this for other people that might actually be forgotten?

</comment><comment><USER27> I'm building a directory at [http://clacks.jonathanmh.com](http://clacks.jonathanmh.com) btw

</comment><comment><USER13> Cheers to the op, prompted me to finally pull the old thumb out and go and do it :)</comment>


Virtual dealers make buying used cars painless - <AUTHOR> http://www.mercurynews.com/business/ci_29338380/virtual-dealers-make-used-car-buying-painless <comment><USER2> Most interesting point for me: 80% of Americans wouldn't consider buying without a test drive - then Beepi added an inspection from a certified mechanic and a 10 day return policy. Suddenly test drives were no longer relevant.</comment>


Getting Started with APL (2017) - <AUTHOR> https://www.sacrideo.us/getting-started-with-apl/ <comment><USER2> The Gnu APL interpreter is free, installs easily and the author is not only very responsive on the bug-apl mailing list but very knowledgeable about APL. Recommend you check out this interpreter.

<comment><USER3> Dyalog APL is also free (as in beer) and easy to install now that distribution has been streamlined. While I am biased, I consider Dyalog APL to be the premier APL interpreter and getting it is a matter of a few clicks on Dyalog's download page:

[https://www.dyalog.com/download-zone.htm](https://www.dyalog.com/download- zone.htm)

<comment><USER4> Nars2000 is also free as in beer and opensource, and is easy enough to install, and is nowhere near as comprehensive as Dyalog but interesting in its own ways (ball arithmetic, combinatorial functions, pi/prime number functions, simpler GUI)

<comment><USER3> NARS2000 is always doing some interesting stuff. Morten has said before that if he had to recommend an open-source APL, it would be NARS2000.

</comment></comment></comment></comment><comment><USER5> A big hurdle for me is that there's no APL interpreter available in my Linux distribution's (Gentoo's) package manager. So I can't easily install it as I can most other languages, using my distro's package manager. That means I'm going to have to search out how to get an APL interpreter -- something not even mentioned on in the _Getting Started_ article linked to in this HN post, nor on the _Getting Started_ article on dyalog.tv that the former article links to. That alone is just way too much trouble already.

Then there's the issue of typing in all the weird APL symbols. I've reconfigured my keyboard to type special symbols a long time ago, but I don't even remember how to do that now so it'd be nice if there was some straightforward documentation on how to do that for APL on a typical Linux system -- or, better yet, some easy plug-and-play way to do that. That would eliminate yet another major hurdle.

<comment><USER6> Just try kdb+/q instead. It's really the only APL derived language that is used in industry. It's blazing fast and if you get good at it, you can make more money than maybe any other programming language. It's a very nice environment and the language (q), comes with a great time series database (kdb+). It's proprietary, but the 32-bit version is free to use, I believe.

<comment><USER7> I don't have lots of money and my company passed on it as too proprietary, else I'd be all over it.

<comment><USER8> Did you actually see a quote from Kx before making that decision?

I've first-hand seen the cost/proprietary argument thrown into the face of KDB, to then see companies proceed down a path of other technologies, with a 10x spend in hardware and dev effort.

KDB is insanely tuned.

<comment><USER7> There are other costs. It is hard enough to find people in my industry with domain knowledge, ability to dig into problems, and SQL skills. Finding enough people to use an array language would be difficult as others in my industry have found. I'd personally be super pumped, but I'm an outlier here. Also, there are costs to getting kicked into something like this instead of something like tsdb or influx.

</comment></comment></comment></comment></comment><comment><USER7> Unfortunately I don't think Aaron has made any progress on coming up with an APL beginners book yet. I'd certainly be excited to buy a copy though. The only book I've read is the free one on Dyalog's website which is good, but doesn't really help me think in terms of arrays for everything.

<comment><USER3> Actually, there is movement in this general direction. My Thesis is now out and available publicly in its final version and should be indexed in the databases shortly entitled "A data parallel compiler hosted on the GPU." This provides a bit of an introduction to some aspects of APL, and includes a background on some of the ideas I've talked about before. Additionally, it is a "handbook" of sorts for doing tree transformations in APL, which is, to my knowledge, the first of its kind.

As for the beginner's book, I've come to the general feeling right now that a online video course will be a better fit for APL beginners than a textbook. This is an active project of mine that I anticipate completing some time within the year 2020.

You may also want to see my presentations on design patterns for APL and the upcoming videos at FnConf 2019 this year. I am not sure if the APL Training Wheels session was recorded, unfortunately, but the content from that work will be going into the video course.

<comment><USER9> > As for the beginner's book, I've come to the general feeling right now that > a online video course will be a better fit for APL beginners than a > textbook.

Other than generating emotional responses, I don't find video better than text at anything, and most especially not technical education.

<comment><USER3> Thanks for the thoughts. While I am sympathetic to your position (and I don't necessarily disagree), I'm not sure that the education problem with APL is strictly technical in nature. Nor am I convinced that what needs to be learned in order to use APL is strictly technical in nature.

Part of this is a question of what the stamina level is for the current computing student. With a lot of technical documentation that people are learning, they're essentially consuming either thorough reference materials or walkthrough/how-to materials.

We can characterize both of these materials as efficiently transferring a certain sort of information about how to do things by virtue of a very wide base of shared prior knowledge. This is what allows reference materials and walkthroughs to work.

But this shared base of knowledge does not exist for most people learning about APL. Target audiences include non-computing students who are just learning computing, programmers who want to learn APL, and technical professionals who have little or limited prior computer science knowledge (but perhaps cursory programming knowledge) who need to learn APL to accomplish the work they want to do in their domain. In the cases of the technical professional and the uneducated student, reference materials and most tutorial books are wholly inadequate.

For the programmer, these tutorials and references work because most of the time you are adding to your existing knowledge as a programmer and have already trained numerous soft skills that enable you to navigate the sea of potential directions to integrate the new knowledge.

I worked on my thesis to try to make it as accessible to the general programming community as possible to teach a set of algorithmic concepts that most programmers already have a vague notion about (but almost never use), namely, SIMD/data parallel programming, using an extremely simple and easy to explain syntax and vocabulary (APL). My thesis is already pretty detailed and illustrative, with worked examples for every single programming statement in the entire compiler going over examples and prose detailing everything that is going on, a sufficient background introduction not only to the syntax and semantics of APL, but also the design and stylistic questions, reference material, and the architectural education necessary to understand the structure of the compiler as a whole.

Even with all of this, presented to experts in the C.S. fields of PL and parallel computation, who have seen this material multiple times over, there was a general feeling that my thesis could have benefited from even more exposition.

My thesis is around 70,000+ words and around 250+ double-spaced pages. For 17 lines of APL code. People wanted more. Had I added the additional exposition desired, I imagine the thesis easily could have been 80 - 100k words.

A typical short novel is around the same size, and those often take about 8 - 12 hours to read through aloud. If you give me around that amount of time in classroom time, I could easily have almost any programmer fully understanding my compiler within that time, and probably with more thoroughness than if someone were to take the same amount of time to read the thesis.

There is something about the higher bandwidth and richness of full video content that contributes better to the transmission of data in some ways, particularly to the understanding of certain ideas and concepts.

I began to think about what it would take to put together an introduction to APL as a textbook. These have been done before and are out there, and they would generally work, but I'm not convinced anyone would read them.

You can teach APL the language to a sufficient level in a very short document (maybe a few pages) and in maybe 2 hours of classroom time. It's relatively trivial to teach the language, as it's very, very easy to understand the semantics and syntax. There's even a walkthrough of APL at [http://tutorial.dyalog.com](http://tutorial.dyalog.com) already.

The challenge comes in its application, and that's where the real value of a good education rests. But that part of the education is a lot harder to teach in text, because there is an element of style, aesthetic, and practice that goes into it. It's something that you gain by seeing, watching, and doing. You have to bring your mind into the space and struggle, go in and out of exploration mode and absorption mode.

How do you teach the exploratory process of APL? The design aesthetic? The set of idiomatic patterns? How do you get people to intern those concepts into their practice so that they are productive?

You could write a textbook to do this, no doubt. But thinking about it, I think such a textbook would be very large. It would be not very "exciting" emotionally. It would have very little of the emotional hooks that help a person stay engaged in things. And moreover, it would be extremely intimidating.

How many people effectively learn without any teacher in a totally "new" field from a textbook that is devoid of any human feedback? You can do it. I've done it before. But it's infinitely improved by the introduction of someone who can help to inject energy and dynamism into the space.

I just don't think people will want to pick up a 400 page "introductory" book and then have the motivation to stick with it when there are so many other shiny things in this world today. The truth is that the world is filled with distracted people who are very bad about putting the time into learning things. I want APL education to be engaging, accessible, and satisfying, to say nothing of effective. For most people today, a textbook is unlikely to be that.

Another big challenge with the "experienced programmer" target audience is that they are used to reference and tutorial materials. Very few programmers actually sit down and _read_ such materials. They skim them to find what they think they want to know, and then plug that into their existing framework. That's great for efficiently extracting new information that is similar enough to their old practices to work. If something breaks, they can just go back and do a little extra skimming to clarify. That doesn't work really well when what you need to learn is fundamentally conflicting with or altering how you think about problems.

Getting good with APL at the beginning, before you've learned to intern it, is about undoing or unwinding previous habits and thought patterns that worked for you in past programming experiences, but that won't work for you in APL. After you have interned the new methods, then you can switch back and forth at your leisure, but until then, learning APL is as much about unlearning as it is about adding new knowledge. For programmers who are used to just skimming what they read to get what they want to know without actually listening to what the author is saying (and that _is_ how most programmers read that I've met), this makes textbooks a recipe for disaster. Either the information has to be presented in such a dense way that most people will not be able to figure it out, or it has to be presented in such a measured, hand-holding way that most people will just ignore it, get bored with it, or skim it and still have the issues.

It does little good to have a full, thorough textbook introducing everything if no one reads it, though they think they've read it, and then they complain about how hard APL is to learn because they couldn't just take what they thought they wanted to know and leave the rest.

 _If_ you could get a programmer who was motivated, eager, and willing to read from cover to cover, stopping at each point where a hard question is asked, do the problems, quizzes, challenges, and exercises, in order, linearly, from start to finish, and actually pay attention to what was said when, and then take the points in the book that indicate one should think about this or that, I would agree with you that a textbook could have some potential benefits over the video format; but, I don't think that this is reality, based on my experience.

Your typical APL workshop for technical professionals is 4 days about about 24 hours of work with probably around 12 of those hours being expository. After that, people are quite solidly grounded in APL. But a lot of people have gone through that same amount of time on their own with plenty of the same resources available to them in terms of problems, documentation, and the like, and they haven't been as successful. Guided, in-person education is hard to beat, and video is the closest thing online.

I haven't given up on the hope of a great APL book, and I could be convinced by someone that I should do a book first, but at the moment, I feel that video courses are more likely to be more effective for more people and present a larger ROI in terms of the difficulty in producing and creating them compared to a book of similar effectiveness for the same range of people. If anyone has an alternative, please do speak up, I'm all ears.

<comment><USER7> An interesting perspective. I personally didn't enjoy lectures in college when it came to technical classes (engineering, math, physics) as I had trouble keeping up. Videos help solve that though as you can go at your own pace...pause and rewind. I'm sure it will be a lot faster and reach more people faster with videos. There are so few in the APL/J world. The few ones that exist are very popular though.

<comment><USER3> Rest assured that I haven't given up on the textbook / tutorial approach just yet, but I might have to "invent" my own publication technology to get the "book" that I want.

<comment><USER7> Would it be hard to just create a Dyalog-APL notebook (I recall Dyalog added support for that recently) and export as PDF?

I find Jupyter notebooks in Python and Wolfram's Mathematica to be nearly perfect for explaining complicated content where you can easily format text, images, and inline code snippets.

<comment><USER10> I have started something along these lines.

github.com/rikedyp/learnapl

It is currently very rough around the eges and also in the middle. Work will continue in the new year.

There is also now a set of introductory problem sets that have been used in a couple of schools on problems.tryapl.org

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER11> AFAIK APL itself is easy and beautiful but bending you mind to interpret complex logic in its model can be tricky.

<comment><USER3> It's really no more difficult than learning recursion, pointers, memory allocation, type theory, functional programming, iterative programming, OOP, or any other of the myriad techniques that we use for computing. As I mention in my talk on APL design patterns, it's largely a matter of what we have been trained to understand, and there is some evidence to suggest that APL is actually arranged in a manner more natural for the human faculty than most computing languages:

[https://www.youtube.com/watch?v=v7Mt0GYHU9A&feature=youtu.be](https://www.youtube.com/watch?v=v7Mt0GYHU9A&feature=youtu.be)

<comment><USER11> > It's really no more difficult than learning recursion, pointers, memory > allocation, type theory, functional programming, iterative programming, OOP, > or any other of the myriad techniques

You don't really need anything of this to solve a problem with Python and Pandas.

I always feel like I wish I'd solve it with APL (because it's beautiful) but end-up just getting the thing done this way :-]

Thank you for the lecture, perhaps it is going to inspire me to actually learn to solve real problems with APL.

<comment><USER3> Except that you do. Python is a form of OOP/Iterative programming, involves memory allocation, pointers, references, and the like. Pandas requires the skilled application of a general purpose language coupled with a domain- specific vocabulary for your problem space.

I maintain that APL isn't fundamentally more difficult. If there is something that you have as an example that you think is just too "hard" to do in APL that is very "easy" in Python and Pandas, please do let me know via email (email@example.com) as I would love to make sure APL has a good answer to such things (I want to make APL accessible).

Since you are talking about statistics and data analysis type things, you may find TamStat of interest:

[http://www.tamstat.com/](http://www.tamstat.com/)

Additionally, don't forget that Dyalog APL also has a full Chart/Graphics system (two, actually), and a large suite of idiomatic expressions for computing many classic analysis problems. There's a number of other integrations that people seem to be unaware of often enough.

I very seriously would like to receive from you one example of something you have done that you find too difficult in APL, because if it really is, then we can do better and I'd like to make sure that we do.

<comment><USER7> Just seeing this. I'm not the original poster that you replied to, but their point is somewhat valid as is yours.

Python certainly requires one to learn iterative programming which is definitely not a walk in the park. I learned it over a decade ago, but vividly recall how non-intuitive it was at the time (global versus local scope had me scratching my head once upon a time). Then there is lists, tuples, dictionaries, pass by reference, iterators, file I/O...just soo much to learn.

One interesting thing is that I used OO methods in Python for ages before understanding how to write and use classes. To me, a = list.sort() was just a weird way to read a = sort(list). You can almost write Python entirely in an imperative manner and for short scripts I almost always do.

Learning all the OO aspects of Java/C# and all the fundamentals of FP (monads, currying... etc) is much harder for me than APL which is basically just learn what these symbols do and the very straightforward way to combine them and you're done. The only harder part of APL is somehow learning to replace imperative programming with array operations. Sure it is easy to do some things like sum up an array (+/ array), but that is also easy in Python (list.sum()). The idioms as APL people call them are not at all obvious to me, nor is the path of enlightenment outside of stop talking and go write some APL haha.</comment></comment></comment></comment></comment>