Linguistics and Programming Languages - <AUTHOR> http://250bpm.com/blog:95 <comment><USER2> "We have again the popularity of "Wouldn't it be nice if our machines were smart enough to allow programming in natural language?". Well, natural languages are most suitable for their original purposes, viz. to be ambiguous in, to tell jokes in and to make love in, but most unsuitable for any form of even mildly sophisticated precision. And if you don't believe that, either try to read a modern legal document and you will immediately see how the need for precision has created a most unnatural language, called "legalese", or try to read one of Euclid's original verbal proofs (preferably in Greek). That should cure you, and should make you realize that formalisms have not been introduced to make things difficult, but to make things possible. And if, after that, you still believe that we express ourselves most easily in our native tongues, you will be sentenced to the reading of five student essays."

E. W. Djikstra, EWD952 [1]

[1] [https://www.cs.utexas.edu/users/EWD/ewd09xx/EWD952.PDF](https://www.cs.utexas.edu/users/EWD/ewd09xx/EWD952.PDF)

<comment><USER3> I think Perl is interesting here.

When we're talking about computer code, we humans say things like "Read in a line of text. If it ends in a newline, remove it." But we can't program computers that way. The compiler says, in effect, "Read in a line of text from where? And put it where? If it ends in a newline? If _what_ ends in a newline?" And so on.

But Perl actually lets you program that way. Perl says, "Read in a line of text? You didn't say from where, so I'll assume the default place, which is the files that were named as arguments in the program invocation. You didn't say where to put it, so I'll put it in the default variable. If it ends in a newline? You didn't say if _what_ ends in a newline, so I'll assume that you're talking about the default variable, which happens to contain the line we just read in." And so on.

Effectively, you can use "it" in your conversation with Perl, and it will do reasonable things. This is one of the places that it shows that Perl was designed by a linguist.

<comment><USER4> By the way, an important problem in natural language processing, which is related to this at a high level, is anaphora resolution. When we use pronouns to refer to people and things we've mentioned before, there are often ambiguities about what the referent of a particular pronoun is, but native speakers almost never have to consciously think about this question. But in practice, resolving these references correctly may require sophisticated reasoning about our knowledge of the world in order to determine which interpretation is plausible.

An example adapted from the Winograd Schema Challenge is:

The file couldn't fit on the hard drive because it was too big.

The file couldn't fit on the hard drive because it was too small.

In the first sentence, "it" refers to the file; in the second sentence, "it" refers to the hard drive. Native speakers who know what files and hard drives or (or even who don't) should have no trouble understanding the references and might not even have noticed that there was any ambiguity (!), even though resolving the ambiguity requires bringing to bear specific knowledge about the world.

There is a whole family of AI language understanding problems based around this, such as

[https://en.wikipedia.org/wiki/Winograd_Schema_Challenge](https://en.wikipedia.org/wiki/Winograd_Schema_Challenge)

Looking over some examples shows just how challenging this can be, because of the way the sentences can require people to know arbitrary things about the world. ("The atom emitted a photon because it was entering a lower energy state.")

<comment><USER5> > even though resolving the ambiguity requires bringing to bear specific > knowledge about the world

Actually, in this example knowledge of the world (I'm interpreting this as referring to knowing the details of how "files" and "hard drives" relate to each other) is not necessary. The ambiguity disappears as soon as you know the meaning of "fit" \-- fitting requires a large thing to contain a small thing. Therefore if something is too large, it must be the contained object, and if something is too small, it must be the container, and those roles are marked directly within the syntax of the sentence.

You can easily see this experimentally by asking people about sentences with nonsense words:

1\. The glirp couldn't fit on the vell because it was too small.

2\. The glirp couldn't fit on the vell because it was too big.

Then again, I see you've already noted that speakers who don't know what files or hard drives are should have no trouble with these sentences. Is the lexical meaning of "fit" "knowledge about the world" to you?

<comment><USER6> When you say "glirp couldn't fit on the vell", do you mean to say that the glirp was placed onto the veil, or that the glirp placed the vell on the glirp itself?

The melon could not fit on the hat because it was too small.

The melon could not fit on the hat because it was too big.

[https://www.google.com/search?q=watermelon+hat](https://www.google.com/search?q=watermelon+hat)

<comment><USER5> The first. If the glirp was trying to wear the vell, I'd say "the glirp couldn't put on the vell" or something else idiomatic, like "the glirp couldn't get the vell on". I cannot use "fit on" in the sense you're going for.

You can investigate this yourself at [http://corpus.byu.edu/coca/](http://corpus.byu.edu/coca/) ; the first hundred results for "fit on" contain, by my eyeball estimate, more than 90 of the sense I describe, zero of the sense you insinuate, and a few spurious hits (such as "to spend as it sees fit on government services", "kept himself fit on a rowing machine", and my favorite, "I've worked with schools such as the Pratt Institute and FIT on developing eco-friendly vegan design programs").

There are six results, out of over 500 million words, for "fit it on", of which one matches your pattern. ("She passes it under the running tap and hikes her tank up to fit it [a strip of nylon] on around her rib cage")

</comment></comment></comment></comment></comment></comment><comment><USER7> Note that Martin Sústrik is a programmer, not a linguist. Larry Wall (creator of perl) _is_ a linguist _and_ a programmer, and has written on the topic[0]

[0]: [http://world.std.com/~swmcd/steven/perl/linguistics.html](http://world.std.com/~swmcd/steven/perl/linguistics.html)

<comment><USER8> Curiously I find myself disagreeing quite a bit with Larry.

> If a language is designed so that you can "learn as you go", then the > expectation is that everyone is learning, and that's okay.

It's okay if we never reach understanding or agreement on what Faulkner intended by a particular sentence (we can still grasp most of the whole). For a programming language this is explicitly not okay! This goes for ambiguity as well.

> Multiple ways to say the same thing

> This one is more of an anthropological feature. People not only learn as > they go, but come from different backgrounds, and will learn a different > subset of the language first.

This increases cognative load with no particular benefit.

<comment><USER7> For the former, I think Larry does not imply a post-modernist "death of the author" position: there is still an objectively correct interpretation of the code as the author intended, but it may be understood differently by people of different experience levels. For example, a map with reference to a sub can be though of as a loop that calls the sub.

With perl, the objective truth is opcodes, which are well-understood by a small group. Everyone else bases their understanding on heuristics and analogies, and the goal is to write your code to trigger the same heuristics/etc. in the reader.

For the latter, you are declaring your opinion as fact. Every language allows redundancy and variation of expression; if it truly provided no benefit, why have we not seen a popular language that only allowed a single expressive style?

<comment><USER8> > For the latter, you are declaring your opinion as fact. Every language > allows redundancy and variation of expression; if it truly provided no > benefit, why have we not seen a popular language that only allowed a single > expressive style?

It is indeed my opinion (as prefaced by 'I find myself disagreeing..') but the premise that a programming language _benefits_ from resembling or mimicking features of natural languages is also an _opinion_.

Also I should note that your phrasing of the question isn't quite correct ("if it truly provided no benefit"), something that provides no benefit is unlikely to be excluded from a language (e.g. double negatives "there ain't nothing here to see!") unless there is a clear benefit to doing so, and in fact there are times that there is.

Particularly I would draw your attention to for example more limited lexicon sets (such as those used by dispatchers, rescue workers, climbers, EMT professionals etc.). Those explicitly exclude variation of expression, since that leads to an increased risk of being misinterpretation in often critical situations. It is my inclination that while interpretation of code isn't time critical, reducing variance (e.g. a common coding style does this as well) reduces cognitive load (makes comprehension more efficient).

<comment><USER7> Short-order fry cooks, too. That's a different kettle of fish though.

What do you think regarding my position on heuristics/forming an idea in the mind of the reader?

</comment></comment></comment></comment></comment><comment><USER9> Learn Lojban today: [https://mw.lojban.org/papri/la_karda](https://mw.lojban.org/papri/la_karda)

Lojban is based on predicate and relational logic, and parses unambiguously for both humans and computers, meaning that we can get straight to semantics instead of faffing about with syntax.

<comment><USER10> > parses unambiguously for both humans and computers

I suspect this is only because there are so few speakers of Lojban. As soon as a language is in common use, it will be extended naturally by the users. I doubt any level of consistency can be enforced over time in that case. Popular slang and idioms generally make it into a language if they persist long enough. Good luck keeping unambiguous parsing in that case.

<comment><USER11> Just look at JavaScript

<comment><USER12> JavaScript cannot be ambiguous because there's a constant acid test: Does the machine find it ambiguous? If it does, it fails to parse. (If it parses, it wasn't ambiguous, but it still might mean something the programmer didn't intend.) That property will hold until we do something like embedding AI in the compiler.

Humans can deal with ambiguity. There are various reasons for humans to want to be ambiguous, and any natural language has to support that to be useful for day-to-day conversation. Loglan and Lojban might well escape that, if they're only ever used in contexts where ambiguity is not desired and will be repaired if it is found.

Think formal specifications, not love letters.

<comment><USER13> Isn't the automated insertion of semicolons to your detrimemt a result of ambiguity in the language, and the compiler forced to decide

<comment><USER14> The rules for automatic semicolon insertion are defined by the language spec.

</comment></comment></comment></comment></comment></comment><comment><USER15> English ≠ Computerish

but:

English = C || English = Pascal || English = SQL .......</comment>


My take on the Canadian Entrepreneur Visa: By an Immigrant & Founder - <AUTHOR> http://www.verelo.com/blog/2012/09/12/my-take-on-the-canadian-entrepreneur-visa/

<comment><USER2> Interesting take. Glad Canada has done this. Its about time we followed the US lead.</comment>


Positive Pressure DIY Mask - <AUTHOR> https://hackaday.com/2020/02/12/hacked-protective-gear-keeps-doctor-safe-in-the-hot-zone/ <comment><USER2> Could use a list of steps and parts, including common substitutions (aquarium air pump).

<comment><USER3> Wonder if an ejector pump, sucking ambient air and driven by air from a compressor (like auto compressor), would work adequately.</comment></comment>


My top 5 tips for modelling your data to scale - <AUTHOR> https://cloudant.com/blog/my-top-5-tips-for-modelling-your-data-to-scale/

<comment><USER2> I'm still very puzzled about these eventually consistent systems… Maybe I'm just getting old…

> Consider Immutable Data

˙ƃuoɹʍ ƃuᴉɥʇǝɯos ƃuᴉop ǝq ʇsnɯ no⅄

Perhaps locking isn't such a bad idea after all?

> De-Normalise Your Data

The more usual advise is to normalize it to the hilt:

[http://sqlblog.com/blogs/paul_nielsen/archive/2007/12/12/10-...](http://sqlblog.com/blogs/paul_nielsen/archive/2007/12/12/10-lessons- from-35k-tps.aspx)

<comment><USER3> Can you explain more on why normalizing is better? I get it for OLTP systems, but for data analysis performance it just seems like doing the denormalization can remove a step every time you want to pull the data.

<comment><USER2> That's a use-case where I agree with you 100%, especially when it's an expensive step: pre-aggregating (and occasionally indexing) a count or sum can be priceless for data analysis

OP, in contrast, basically advocates getting rid of joins and such to avoid network overhead. He's not wrong in his own context, i.e. a Document store with no locking. It just contrasts, to me, with the more conventional tip you hear in SQL land.

Note that OP mentions difficult problems arising around 1-tps due to the lack of locking. The reference I linked to was advice on how to deal with throughput that is four orders of magnitude higher in SQL Server. The gist of it is that, at higher transactions per second rates, disk IO and CPU tend to become blocking earlier than network access. Normalizing more helps in that context.</comment></comment></comment>


DuckDuckGo, Google Competitor, Says It's Getting Shut Out  - <AUTHOR> http://www.huffingtonpost.com/2012/11/22/duckduckgo-google_n_2174286.html

<comment><USER2> Duckduckgo lacks in search algorithms, I used them awhile back as my default search for about three months and got frustrated by the results and went back to google. Things that would not show in duckduckgo were #1 on google.</comment>


Beware the Mean - <AUTHOR> https://stephen.sh/posts/beware-the-mean <comment><USER2> Other, related points:

\- With heavy tails, the sample mean (i.e. the number you can see) is very likely to underestimate the population mean.

\- With heavy enough tails, higher moments like variance (and therefore standard deviation) do not exist at all -- they're infinite.

\- Critically: With heavy tails, the central limit theorem breaks down. Sums of heavy-tailed samples converge to a normal distribution so slowly it might not realistically ever happen with your finite data. Any computation you do that explicitly or implicitly relies on the CLT will give you junk results!

<comment><USER3> Can you elaborate on the part about sample vs population mean?

The way I see it; in these scenarios you aren't looking at the sample mean. There is no reason to sample your customer base to get an estimation of your average revenue. You can calculate from the entire population.

<comment><USER4> Your current customer base is just a sample of your total market, for example. Next year's (larger) customer base will be slightly closer to the whole set (so different) but still just a sample.

<comment><USER3> So the point is that the current customer base is a skewed sample of the theoretical customer population.

Therefore we shouldn't look at the current customer mean profit to predict what would happen to profits if we doubled the customer base.

<comment><USER2> Exactly. These summaries are often used for prediction, which means historic data is used as a sample of the same distribution as future data.

Even when comparing two different historical data sets you have to be careful: if you're doing anything that resembles hypothesis testing (i.e. trying to figure out if something you changed made a difference) you're not _really_ comparing two historical data sets -- you're trying to compare the underlying distributions from which the historical data sets were drawn, but hoping that the historical data are representative samples from those.

</comment></comment></comment></comment></comment><comment><USER5> If the author is seeing this thread; I couldn't find an RSS feed for your site. I don't know if they are difficult to setup, but if it's very little effort, I would appreciate seeing what you post next :)

As for the waryness about the mean. A lot of people much further behind than thinking of different distributions. Even something you assume is normal distributed needs a mean _and_ a variance! As for visualising, histograms are incredibly underrated tools. You can infer a lot of information by just looking at a distribution.

<comment><AUTHOR> Sorry, I do need to set this up. It's just a bunch of Markdown at the moment. Thanks for reading!

</comment></comment><comment><USER6> The mean is misleading. The median is misleading. The mode is misleading. Any reduction of a range of data to a single representative datum is misleading.

However, the fight back against providing something a bit more meaningful than a single value can sometimes be quite strong.

I try hard to provide software estimates as probability distributions, but when someone sees a line with a probability peak somewhere around two days (could be really simple), and then a wide hump somewhere around two weeks (if it's not simple, it will mean a significant rewrite), with a very low line between them and then a long, long tail off to several months, it is not well- received.

I can see their point; they're trying to plan things, and the whole system is set up to work with single numbers. If everyone provided probability graphs for their estimates, and we had a tool that could then combine them and deliver the net probability graph of the combined pieces, I expect they'd be a lot more amenable.

<comment><USER7> > The mean is misleading. The median is misleading. The mode is misleading. > Any reduction of a range of data to a single representative datum is > misleading.

For anyone who hasn't seen it before, Anscombe's Quartet is a nice visual of this (and actually goes a bit further, showing reduction in general can be misleading, not just to a single point).

[https://en.wikipedia.org/wiki/Anscombe%27s_quartet](https://en.wikipedia.org/wiki/Anscombe%27s_quartet)

<comment><USER8> I was just coming here to post that. A very neat (and surprising) thing! :)

</comment></comment></comment><comment><USER9> Nassim Taleb greatly expands on this point in _Antifragile_. For a freely available, techical argument, check out _Doing Statistics Under Fat Tails_ [1].

[1]: [https://www.fooledbyrandomness.com/FatTails.html](https://www.fooledbyrandomness.com/FatTails.html)

</comment><comment><USER10> This is a worthy posting, particularly as so much becomes iterative statistics in "A.I." clothing. The two old (slightly hackneyed) counter-examples which are popular in lectures about measures of the _central tendency_ are:

\- One is trying to get a sense of the common sort of income in a room and then Bill Gates wanders in. Suddenly the average income becomes an amount which _no one_ experiences.

\- What is the average number of testicles in the human population? That computed central tendency is quite rare.

<comment><USER2> The second one doesn't seem that bad to me. The number can still be used to answer common questions like, "Assuming it takes 10 seconds to tickle a testicle, how long do I have to tickle testicles if I want to tickle every testicle in my apartment complex."

Sure, you have to know what the mean means, but it's still a useful number. Your first example is more indicative of the problem, IMO.

</comment></comment><comment><USER11> I would quibble some here. When we look at revenue, I agree: ignore the mean. If there's a whole bunch of people not paying you anything, that's OK... Look at the 50th and 90th percentile.

But _profit_ , and similarly _costs_? Your mean customer better be profitable, or you won't be. How much the people on the left of the graph _cost_ you is _important_.

Part of this is definitional, too. Do you include that far left part of the graph where people are not really paying you as a "customer"?

<comment><USER12> A "mean" profitable customer would be misleading. You could see that 99% of your customers lose money for you, while 1% earn all the profit (aka fat tail)

The point is you should be careful about reducing huge swaths of data to one datum. It often hides the more interesting insights.

<comment><USER11> > A "mean" profitable customer would be misleading.

In no place did I suggest "mean profitable customer" as a metric. I sort of said the opposite.

At the same time, in a traditional industry we wouldn't consider people with an evaluation license or sample or who came in to wander and see our wares a "customer". They're a _lead_ and have a cost associated with them.

> The point is you should be careful about reducing huge swaths of data to one > datum. It often hides the more interesting insights.

Sure. At the same time, if you dance with 30 numbers looking for insight, pretty soon you're practicing qualitative, wishy-washy innumeracy. The discussion is about KPIs, which are all about "reducing huge swaths of data to one datum" but also absolutely essential to run a real business day to day.

Monitor more than one, and keep your eyes open for where they go wrong, and be ready to change what you do.

</comment></comment></comment><comment><USER13> The mean is not so bad for many purposes because it is an expectation value.

If you add up your revenue, subtract your expenses, and divide by the number of customers that gives you a real profit number. (Condition how you define revenue & expenses) If that number is negative or positive it is meaningful.

The median on the other hand has a different set of problems. If you are running a game like Fate Grand Order you'd better cultivate the guy who spends $70k because he has to "catch them all". The median player probably pays little or nothing, but the guy who sells ero comics at Comiket complains about what it costs to get (say) Saber Bride, but it is worth more to him than it is to the medium.

Mean and median are terrible numbers to use for latency; what drives you nuts with your computer being unresponsive is not the median latency, but the 99% latency.

<comment><USER2> > The mean is not so bad for many purposes because it is an expectation value.

Implicit assumptions:

1\. The sample mean is an accurate estimator of the expectation.

2\. The expectation is a useful number.

Both of these are false surprisingly often; an example is one you're mentioning: latencies.

</comment></comment><comment><USER14> I came across too many people who value mean soooooo much in the analysis. Well, some of them made mistake and the project died. Hypothesis: heavy reliance on mean increases the probability of failure in internet industry. This reminds of PG's essay _mean people fail_ : [http://www.paulgraham.com/mean.html](http://www.paulgraham.com/mean.html)

Pun intended :)

</comment><comment><USER15> The Iranian civilization can draw continuity to Susa, circa 3000BC, further than China. The Mesopotamian and Indian civilizations are older still but broke continuity.

<comment><USER16> I think you meant to reply to this post [https://news.ycombinator.com/item?id=22166846](https://news.ycombinator.com/item?id=22166846). :)</comment></comment>


The Great Productivity Puzzle - <AUTHOR> http://www.newyorker.com/news/john-cassidy/the-great-productivity-puzzle?intcid=mod-latest <comment><USER2> What frustrates me about articles like this (even professional ones -- this simplifies for a general audience) is that they only look at one side of the equation. Low inflation is the opposite side, and it's interesting.

Yes, GDP$ per unit hour has not gone up much, but the flip side is that the economic value of the output has gone _down_. If you look in terms of PPP, workers are doing better: fewer labor hours go into buying dinner.

The corollary is that fewer hours are required to produce PPP equivalent product (e.g. a car) so fewer workers are needed (since the $ are not going up at the same rate it looks like productivity is not). That's why the LFPR is sinking.

A victorian era "smokestack" model isn't useful when looking at this world. This is why automation really is likely to cut employment this time (in fact it already is) and that's the real economic problem to be worrying about. Which some are (e.g. the small UBI experiments under way) but it's still not mainstream.

<comment><USER3> Completely agree: automation is already changing the employment landscape. The number of people who tell me how the unemployed truck driver or factory worker can become a robot designer boggles my mind. It's a total break-down in the ability to see quantities vividly for what they are. I grew up in a field where orders of magnitude were the first class citizen and it's clear that order of magnitudes more people do mundane automate-able work than will be able to contribute on the design side of the next era's production systems.

To your point: the way to fix these problems is to make sure that everyone, irrespective of their ability to make money selling their labor, is able to consume a fair amount. Hence the need for a basic income for all: the higher the better. The quicker we break from the moralistic perspective that everyone should "work" in a world where not everyone can, the quicker we can create a world that is about "the pursuit if happiness" again.

<comment><USER2> Automation has always increased employment _in the long term_. And maybe it will this time as well: the truck drivers will not become robot designers but their kids could, instead of becoming truck drivers as well.

The fact is that we don't live in the long term so although truck driving and coal mining are shitty jobs (and absolutely _should_ be automated or eliminated) we have to take care of the current practitioners (both financially and finding a way for them to preserve their dignity) as their employment goes away.

Separately I don't think we'll need all that many robot designers either.

<comment><USER3> I could not disagree more. We are probably working the least hours as a total number of waking hours of the total population than we ever have as a species. Automation has always decreased the amount of work that needed to be done. Now admittedly "work needing to be done" is different from "employment" but I would argue that the less work that needs to be done, the less easy it is to create paying jobs to pay people to do those non-things. Yes many of the "workers" of the 1800s were domestic and not counted on wage payrolls... and we had a lot of them shift into the "work force" and begin getting wages in the 1900s. But that's not to say there is a net trend away from work _and_ pay rolls. If we don't wake up and see this problem the inequality situation will continue to get worse.

</comment></comment></comment></comment><comment><USER4> Something that's puzzled me for a while: why haven't we hit "peak office" yet? Why are there still so many people working in offices? By now, we should have many abandoned office blocks, much as we have abandoned factories in the Rust Belt. But that's not happening. We have all this office automation, but too many people in offices.

Are marketing cost and G&A (general and administrative) increasing as a fraction of cost of goods/services sold? Perhaps it's the overhead of capitalism. Advertising just moves demand around; where the savings rate is low, it can't create it. There are a surprising number of products, from movies to telephone service, where the marketing cost exceeds the cost of providing the product or service.

One problem with a winner-take-all economy is that the cost of competition goes up, because being slightly better at the margin becomes more expensive. It's like sports; the additional input required for 1% more performance is a lot more than 1%, once you're close to the record.

<comment><USER5> > We have all this office automation, but too many people in offices.

I can't speak to the general case, but to my experience with big corporations/enterprises.

Automation is rarely implemented, and when it is it's half-assed. And then a year or two later they try again, but the old system remains, and now your workers have to connect _two_ systems manually. And then a year or two later...

Not my domain, I'm busy enough, but in one area of my org there are a _ton_ of people whose job is, at its core, to manually synchronize about six databases. They also interface with customers, so that part can't or shouldn't go away. But they spend 80% of their time (estimate based on friends who worked there) doing that manual sync. Every time someone had the same thoughts as me but the power to do something tried to automate it, they ended up with an extra database that was only partially connected to the rest.

Too many stakeholders, not enough leadership.

<comment><USER6> Maybe it takes an upstart to displace an incumbent rather than the incumbent reinventing itself. So for example you have Amazon vs Wal*Mart, Tesla vs GM... Now, some incumbets do have enough time to reconfigure (as WalMart is trying).

On the other hand... maybe corporations are better corporate citizens than we give them credit for (i.e. not everyone is a "Chainsaw" Al Dunlap. who want to shed workers as quickly as possible. Maybe some actually want to keep people employed as long as they can.

<comment><USER7> Maybe people simply have different goals. For instance, it seems pretty obvious to me that no mass-layoffs (and thus a limit on productivity increases in that company) was a condition of the Obama administration's helping out of GM, and the same goes for the various Euro governments who did the same.

[https://en.wikipedia.org/wiki/General_Motors_Chapter_11_reor...](https://en.wikipedia.org/wiki/General_Motors_Chapter_11_reorganization#Bailouts)

</comment></comment></comment></comment><comment><USER8> A few rants (mixed in with a few half-baked ideas):

1) Economic progress from the industrial revolution is about quantity. We learned to make a lot more stuff. The industrial revolution is not quite done, but the impact is less and less every decade. We may never match that quantity growth of stuff because we don't even want more stuff, we only want better stuff. And we're getting better stuff and more variety.

2) Info. tech. IS being mismeasured and it's huge. We're not all imagining it. The economics of info tech are REALLY good except in the official GDP numbers. And arguing that it's not counted in economic measurements doesn't debunk the mismeasurement claim, it supports/explains it. What's more, info tech decimates a lot of industries - music, GPS, newspapers, travel agents, etc. And self-driving cars are probably going to decimate the auto industry and wipe out a lot of logistics related jobs. Everyone(A) will be better off but official GDP will fall.

3) Wages aren't growing largely because the economy needs more skilled and more managerial workers, but we don't seem to be producing a lot of them(B). It's an awesome time to be a skilled worker. Good and growing pay and billboard signs desperately seeking talent. There's no end to work that needs to be done with the right skills. Meanwhile, unskilled workers aren't so useful anymore. They were well off when anybody could sit in an assembly line and produce a lot of stuff. But now unskilled workers don't really produce, they mostly trade their time for other people's time (e.g. by cooking their food) and they do so from a weak negotiating position. I don't see any of this changing anytime soon.

(A) Everyone = the vast majority of people

(B) Anecdotal, I could be wrong

<comment><USER9> You're wrong about one thing... The low skill jobs didn't vanish. They moved to places where wages and regulation (safety, environmental, etc) are less.

The people who made Fisher Price toys in East Aurora, NY were made redundant by equally low/moderate skill workers in Mexico and later China. Your undershirt was made in North Carolina until the late 80s, and shifted to a variety of places until it hit the bottom -- Bangladesh.

The IBM people who assembled Power servers in Minnesota were replaced by Mexicans. The Dell folks in North Carolina and Texas were replaced by Mexicans, Taiwanese and Chinese.

What you characterize as low skill work and workers still exists and isn't being automated away to the extent that the average HN commenter would suggest.

I question the value to the consumer as well. The shoes on my feet are made in some mega-factory in Guangdong. They cost more than the shoes I bought a decade ago that were made in Maine, and are of similar quality. IMO there's a lot of middlemen or some sort of self dealing going on -- producing shoes in massive bulk should push prices down, not up.

<comment><USER10> Outsourcing is the last step before automation.

You have to follow your own rationale here trough.

What happens when mexicans become richer and also concerned about safety at workplace because now they can afford to worry about it?

This is why even china is outsourcing to even cheaper places, robotics or why when production sometimes comes back it's in fully automated factories.

<comment><USER9> > What happens when mexicans become richer and also concerned about safety at > workplace because now they can afford to worry about it?

They get canned and the work gets shipped out to China.

</comment></comment></comment></comment><comment><USER11> I thought about this for a moment and then remembered something important. The big driver of our economy today is to add a layer of customization and modularity to existing processes via IT: Now you can get ala carte information, or summon a cab from anywhere, plan and present social arrangements with a minimum of formal overhead, or manufacture goods in smaller runs than before. Physical processes like transportation increasingly fit into a packet switching analogy - not driven by a particular modality of capital and energy(bike, car, train, plane), but by protocols driving end-to- end connectivity, like shipping containers.

This is not a process that creates value in the same way that using energy more intensively, to spin wheels, lift objects, melt iron, or process chemicals, grows value. In past iterations, we've always had a link between energy intensity and industrial growth.

But now we have a huge demand for new designs that reconsider the same processes, using a similar amount or less energy than before. The amount of labor that can go into designing that stuff is similarly huge. But it's a superstar situation - a few people make big breakthroughs by chance. We are "less" productive on average, routine work doesn't reap the benefits, and capital allocation doesn't have the guarantee of power it used to, in a world where tiny software startups are constantly scanning for a new platform lock- in opportunity. The economy stumbles from one speculative bubble to the next, trying to resume a paradigm of the past. It's a very chaotic, disruption- heavy, what-have-you-done-for-me-lately future that we've built for ourselves, and it's made everyone a little more insecure even as it produces its share of new wonders.

</comment><comment><USER12> Productivity increases are going to the top earners, as wages stagnate for most of the population. [http://inequality.org/income- inequality/](http://inequality.org/income-inequality/)

This has many reasons behind it, including political factors such as the decline of unions and increase of free trade.

</comment><comment><USER13> I hear classic economic thinking is that productivity gains lead to higher wages. But could the causation be reversed? Cheap labor tends to disincentivize innovations that can lead to productivity gains.

Perhaps we're entering a period where there are simply too many people for too few jobs. This keeps unemployment high, wages flat, and removes the incentive for companies to invest in automation.

<comment><USER14> That argument has in fact been made for why, e.g., the Romans didn't exploit coal, which they had (from England) rather than human and muscle power.

Slaves were far too cheap.

A developing thought: the industrial revolution, writ large -- starting with the Medieval industrial revolution of increased use of wind and water power, was in many was a continuously ramping-up circumstance of living close to (but not immediately at) the thresholds of subsistence, having available opportunities for improvement, and having a gradually increasing degree of technical complexity in tapping into those opportunities, which developed as the challenges and opportunities increased.

If you're not testing your limits, you've got no incentive to improve.

If you've pursued some improvement, but are then contented with the results, you'll continue in a "fat and happy" existence. This has occurred in several places and times through human history.

If you're pushing at limits, and are aware of the concept of technological advance, but the resources aren't available, you'll tend to slide into decline. Arguably this happened to the UK following WWI. England had steamed into modernity on the basis of its coal reserves, but switching to oil, without (then-known) reserves, she stumbled and the United States picked up the slack.

(Why the Middle East didn't exploit its own oil reserves earlier is a tremendously interesting question -- whether for want of technology, industrial capacity, or other reasons. I'm planning on looking into this.)

Another possibility is that the technological leaps are simply too great. The Middle East question may have been a case of this, and the West (and world at large) may face that conundrum in switching to renewable or sustainable energy options.

</comment></comment><comment><USER15> The reason for this is deflation. Deflation in our economy is massive and far under-reported. Deflation is especially great in areas where productivity is rising.

The way economists measure productivity is by the monetary value of the thing produced. Thus, productivity gets tied in with inflation and deflation. Suppose you make widgets, and can make 10 of them per hour. Suppose you sell each of them for $10 bucks. Now suppose inflation hits and the price of the same widgets is all of a sudden $20 per hour. You still only make 10 widgets per hour. But all of a sudden you are twice as productive according to the way the government and economists measure productivity.

The opposite happens when deflation occurs. If your widgets all of a sudden start selling for $5 per hour instead of $10, you will be considered by the official economic analysis to be twice as lazy even if you work just as hard and make just as many widgets per hour.

And there you have your problem. Deflation is hitting everything, but it is hitting industries that benefit from productivity of new technology the hardest. Take a serer cpu made today that can perform 100 times as much work as a server cpu made about 10-15 years ago. Is intel considered a hundred times more productive when they make this cpu that does 100 times more work? Of course not. Their productivity is based on how much the cpu sells for and since per cpu prices have held stable to slightly decreasing over that time, intel's productivity for that particular cpu is deemed to have decreased as well.

Or take pictures. Twenty to thirty years ago there were probably over a hundred thousand people working in photo development shops making pictures for people. Now about a 100-200 programmers (estimated) among Google, Apple, Facebook and yahoo probably provide the vast majority of picture viewing services in America. Is that a great increase of productivity? It should be, because a hundred people are doing the same stuff a hundred thousand were doing twenty years ago. But officially it isn't because picture viewing is considered to be free, so no revenue is assigned to it.

So productivity growth is happening, but unfortunately it is accompanied by large drops in pricing, which make the official measure of productivity look bad.

Why are prices dropping? This has to do with something journalists do not like to talk about -- wage stagnation, income inequality, etc.

</comment><comment><USER16>
      . If Gordon is right, sagging productivity figures simply reflect
      . the fact that scientific progress doesn't have as much impact on
      . the economy as it once did. Rather than waiting for productivity
      . growth and wages to rebound of their own accord, Gordon supports
      . policies designed to expand the size and quality of the labor
      . force, such as raising the retirement age, letting more
      . immigrants into the country, and expanding access to higher
      . education.

Assuming for the moment that Gordon is right about the diagnosis, isn't this remedy exactly backwards? If productivity (per worker?) is down, than surely increasing the size of the labor pool is exactly the wrong medicine and will result productivity per worker to decrease further. Increasing the _quality_ of the labor force through higher education, etc, makes sense. But how can increasing the size of the pool lead to wage increases in the absence of other productivity gains?

<comment><USER17> 1) more people means more demand for stuff, means more incentive to produce stuff, more competition to sell them stuff and higher economic growth 2) if people want to come here, it's because they think they are not being as productive as they could be where they are now.

<comment><USER16> Regarding 1), more people means more demand for stuff only insofar as those people have money to buy stuff. In any event, you have the causal chain backwards:, increases in productivity allow for the support of a larger population; a larger population does not (by itself) lead to productivity increases. India has over a billion people, yet also much lower productivity than the US, so population alone can't be the whole story.

Regarding 2), I have no doubt that potential immigrants think they can be more productive in the US than elsewhere! But that doesn't imply that their participation in the US labor pool will boost productivity further still.

<comment><USER17> The goal is not to boost productivity but to boost GDP growth of which productivity growth is one component. A larger population, all other things being equal, leads to more GDP growth. All things are not equal when you compare India and US, so that comparison is not relevant. Compare US with current number of people vs US with 10 times fewer people. Which one is better ?

<comment><USER16> Assuming you mean GDP per-capita ... maybe? I suspect that GDP is highly correlated with productivity, anyway. Which way does the causality go?

Why should the US not have many fewer people and why couldn't that be better? There's nothing magical about 315 million people. A much smaller population would be better for ecosystems, global warming, etc. I'd demand the proviso that the population shouldn't be decimated overnight and that the age distribution can't be too skewed (too many youth or too many old). But barring that, I don't see why some lower population (even tenfold fewer) couldn't be "better".

<comment><USER17> I am talking about better not in some sort of philosophical sense, but in terms of GDP and GDP per capita

<comment><USER16> Even then you haven't proven your point: might not GDP per capita go up if the population goes down?

<comment><USER17> GDP per capita for those remaining indivuduals would only go up if those who disappeard were somehow destroying GDP per capita for those who remained. How is that possible in any reasonable state of the world ? As long as those who disappeared where on average non zero marginal product, then their disappearance would lower GDP per capita for the remaining ones

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER18> What sorts of constraints in our daily lives feel blindingly obvious, in terms of wishing for a solution? I mean beyond true life-transition concerns like finding new housing or new jobs.

In the past, I'm sure a clothes-washing machine must have felt pretty obvious even if people weren't sure what it was. It's always been a pain to do laundry and there had to have been a wish for some sort of contraption to make it drastically easier, even before knowing what that contraption would be.

When I think of real constraints in daily life, I can only think of things like - the effort of transition from waking to working, commuting, perhaps the convenience of having nutritious food that improves your health, and... what else?

What sorts of things do you think of when you say, "I wish I could just snap my fingers and..."

<comment><USER19> Eating, exercising, sleeping.

One day we'll look back on these activities as we look back on hand-washing clothing, drawing water from the town well, burning coal/wood for central heating, etc.

The question is: what will "we" be at that point.

</comment></comment><comment><USER20> One approach to understanding low productivity that I find interesting is covered in Jason Furman's very readable "Is This Time Different? The Opportunities and Challenges of Artificial Intelligence" report [1] -- he's one of Obama's lead economists.

In short, productivity growth may be lagging _because_ of AI etc; it's because people have to spend time retraining for jobs not obsoleted by new technologies. He briefly states his rejection of Gordon.

[1] [https://www.whitehouse.gov/sites/default/files/page/files/20...](https://www.whitehouse.gov/sites/default/files/page/files/20160707_cea_ai_furman.pdf)

</comment><comment><USER21> Yes, things like Google Search _must_ be increasing productivity. But at the same time the amount of time dedicated to infotech entertainment addiction is going through the roof. I wonder how much productivity the hours of Facebooking at work is costing us.

<comment><USER22> Forgetting for a while the non-linear costs of distraction in cognitively intensive jobs, I wonder if Facebooking at work is really costing us anything at all? I'm having a hard time imagining that office workers of 20+ years ago were that more job-focused than they're now.

But then again, the problem may be Internet in general - I can't imagine people being able to do so many non-work errands while in the office if it weren't for e-mail in particular.

<comment><USER23> I did data entry in an office with no internet connectivity (well it did, but they didn't allow browser usage, we connected to mainframes to do our work) before about 12 or 13 years ago.

When people wanted to zone out they read books, usually. Audiobooks were also common. I brought the entire series of Discworld novels in on pdf, and managed to read the entire series while I worked there. I also wrote a bunch of notes down on paper.

Hell, when I was working in warehouses away from computers entirely I'd still zone out during it and mentally work out some ideas for personal projects once I was done with work. Sometimes I actually miss that, since I seemed to have a lot more ideas then.

Point being, you don't need computers or internet for people to find ways not to be 100% productivity machines.

</comment></comment></comment><comment><USER24> Am I missing something or did the 'debunking' of theory #1 not hold any water?

> First, they said, mismeasurement has always been an issue in the > information-technology sector, and it was just as big an issue in the period > from 1995 to 2005, when productivity was growing rapidly.

If your hypothesis is that non-technological productivity growth has reached its peak but technological productivity growth is accelerating, then this is exactly what you'd expect. And you'd expect the mis-measurement issue to take you much further from the mark then you do now.

Saying that mismeasurement has always been an issue completely ignores the fact that how big of an issue it is relative to other factors may have changed.

> Second, the productivity slowdown hasn't been confined to sectors in which > output is tough to measure: it has been broadly based

This is just stating the contradiction of the original hypothesis. If mis- measurement is an issue, how do you know that it's broadly based?

> And, finally, many of the benefits that we've reaped from things like > smartphones and Google searches have been confined to non-market activities

While true, it's hard to imagine that things like access to Wikipedia, Stack overflow, instant global messaging, etc..Haven't significantly enhanced productivity for a variety of office workers as well. Not to mention automation technologies a la Amazon's Kiva robots and other factory automation tech.

</comment><comment><USER25> Productivity increases when you save people time. When a job used to take 2 hours and now it only takes 1, productivity has gone up.

I wonder if the reason productivity is going down is that the current cohort of 2010s technology companies may actually have the opposite aim: consuming people's attention and time.

Things like social networking, advertising supported businesses, mobile gaming, &c., aren't saving people time at all.

</comment><comment><USER26> I normally take a dim view of economics and this article is worse than usual. My complaint is the massless, frictionless world of economics does not take real world forces into account.

> technological advancement just ain't what it used to be.

We're about to see millions of human roles vaporize when automated driving hits home. This isn't like the dishwasher or desktop calculator. We've already seen self checkout stations. How long until whole stores are automated? Eg: [http://newatlas.com/go/5028](http://newatlas.com/go/5028)

> Many productivity-enhancing new technologies are capital goods—think back to > the moving truck.

Bullshit as well. Hardware is rapidly approaching free as services dominate. Plus most of our readers shift capex to opex by cloud hosting, for example. Furthermore, offshoring and free trade means you won't invest in equipment because you're not even making the widgets any more, in house.

> Look at what an ideal kitchen looked like in 1955

Mostly irrelevant when "instant gratification isn't fast enough". Our kids can't even be bothered to microwave something in 30 sec, so prepackaged convenience, dominates households.

Finally, what does corporate malfeasance (eg VW emissions, banking crisis, LIBOR fraud etc) do to productivity?

I think this is a more honest assessment: [http://www.businessinsider.com/alan-greenspans-mistake- has-l...](http://www.businessinsider.com/alan-greenspans-mistake-has-led-to- debt-and-stagnant-wages-2016-8?utm_source=feedburner&utm_medium=referral)

<comment><USER14> I think you're giving this article shorter shrift than it deserves. While I don't feel it (or Gordon) quite puts its finger on the _cause_ , it does a good job of quantifying the symptoms. Gordon does this at rather more length.

In particular, we're seeing challenges, from within the economic establishment, of the prevailing view of the past 60 years or so that economic growth is _normal_ and _perpetual_.

On your first point: Gordon illustrates this in exquisite detail, but the _impacts_ of technological innovation (vs. the rate of innovative change disrupting procedures, devices, companies, etc.) have fallen _tremendously_ over the past 150 years. Gordon looks at the period 1870 - 2015, divide roughly into three (almost) 50 year periods: 1870 - 1920, 1920 - 1970, and 1970 - present.

In the first 50 years, you saw virtually _all_ the innovations you will find around you today, in at least some form. Steam power, electrical generation (and light, heat, motion, sound recording & transmission), radio, elevators, cinema, sanitation and sewage (far more responsible for improved life expectency than all the rest of medicine), elevators, skyscrapers, and most of all, petroleum and its consequences: cars, trucks, power tools, plastics, and more.

It's almost easier to list what didn't develop: TV, penicillin, DNA, computers, lasers, nuclear power, gas turbines, and satellite launch capabilities.

What developed from 1920 - 1970 were the _applications and utilisations_ of those technologies.

Gordon notes that the home of 1920 was connected to five networks: water, gas, electricity, sewage, and phone. I'd add two more: the postal and package delivery networks, which whilst not fully end-to-end, provide the foundation of the Amazon of its age, Sears, Roebuck and Company.

The _fundamentally new_ technologies from 1970 to present have been far fewer, _almost entirely concentrated into communications, information and entertainment_ , and have had vastly smaller impacts on work, home life, health, and transport than the innovations of 1870-1920 and applications of 1920-1970. (Again: covered in detail by Gordon.)

On productivity-enhancement as capital goods: I'm finding your argument unpersuasive. Capital equipment, _the energy to drive it_ , and its organisation are key to productivity. Much now derives from _how pieces are organised_ \-- WalMart and Amazon are as much logistical companies as anything else. But yes, capital plays a huge role.

Of the kitchen, your third point: again, the contrast is the kitchen of 2015 vs. 1970 vs. 1920 vs. 1870.

In 1920 you may well have had a wood-burning stove (gas was being introduced), no refrigerator, in some homes no running water (Gordon highlights the total amount of _hauling_ that was required in the 1870 home: water, wood, and food in, various wastes out, little arriving on its own).

The change 1870 - 1920, 1920 - 1950, 1950 - 1970, and 1970 - 2015 of kitchen appointments has shown a tremendous fall in rate. That microwave your kids can't be bothered to use didn't exist in the 1970 kitchen, but that's about it.

VW's behavior may well be a consequence of firms pressurised to ever- increasing returns in light of declining rates of growth, or of declining absolute productivity.

<comment><USER27> Bravo. Too many people assume change is somehow the same over time.

</comment></comment></comment><comment><USER28> There is something radically wrong with how they measure productivity. I don't know what it is, but the details matter.

I remember the first verse of this song, back in the '90s when economists were wondering if information technology was a productivity _sink_. All of this new fun stuff was everywhere, but productivity measurements were going down. At the same time, just-in-time inventory management was acknowledged as the greatest innovation since sliced bread---and you can't do that without information technology. And the changes since then have only made IT more central and that has reduced the friction to do essentially everything else.

</comment><comment><USER29> Problem: how is productivity measured? The example given is pretty transparent, however, if a doctor sees 20 patients a day instead of 15, his productivity is up, but does he do a better job overall? Productivity can enhance up to some point; you can't indefinitely build more cars every day for instance.

Final stance: there is no such thing as infinite growth on a finite planet.

</comment><comment><USER30> I'll modify Gordon's hypothesis. New technology is no less productive than it used to be. The difference is that new technology requires fewer humans in the loop. That's why productivity is rising but wages are not.

</comment><comment><USER31> The theories presented in this article consider USA economy as adiabatic. They ignore the growth occurring in Russia and China, and how this has affected the growth in Europe and USA.

</comment><comment><USER14> This is yet another review of Robert Gordon's _The Rise and Fall of American Growth_. Incidentally, William Nordhaus also just published one.[1]

Of the good: Gordon's book is a tour-de-force of the past 150 years (nearly) of economic progress in the US, and documents impacts on everyday life meticulously and engagingly. I and numerous reviewers, several of whom I strongly suspected to disagree, find the case he makes for a hump-shaped growth curve -- that is an increasing accelleration from 1870 - 1950, followed by a slowing _accelleration_ , though continued growth, from 1950 to present -- compelling.

Gordon also makes a good case for several of the factors contributing to the exceptionally vibrant growth from 1920 - 1950, including especially the stimulus of World War II and the post-war recovery. But also the very fundamental nature of many of the innovations brought online at the time.

His treatments especially of transportation, communications, healthcare, and household life are spectacular. I recommend them highly.

There are some missing elements though.

Gordon never uses the phrase "Maslow's Hierarchy" \-- the pyramid of needs that humans must have met, starting with food, clothing, and housing, and extending through safety and security, social engagement, and self- fulfillment. He _does_ address many of these individually, and notes that early innovations tended strongly to address the base elements, and of the importance of security and predictability (a tremendously under-acknowledged failing of post-1970 economic experience) among individuals.

A possible defense of ongoing growth might be made by seeing the present period as one of a consolidation and development of technologies -- say, very large datacenters and broadband backplanes, as well as increasingly capable mobile devices and programming tools for developing them -- which may see some future breakout. Gordon seems in this, and several other areas, particularly incurious.

Gordon's life work is largely focused on GDP measurement, and he leans very heavily on this. His argument is that GDP underaccounts for true improvements in lifestyle, an argument with some merits, though others argue that it _overaccounts_ by failing to take into consideration diseconomies. It's curious that Gordon _doesn 't_ explore alternative quality-of-life measures suggested by many contemporary critics of economic orthodoxy.

More fundamentally, in not addressing them, Gordon raises some very profound questions over the fundamental basis of economics. What is wealth? What is value? How is value associated with cost and price? How should costs of renewable vs. nonrenewable resources be considered? Is energy a fundamentally different economic input? What is the relationship of energy to economic growth? What is technology? What is the mechanism, or mechanisms, by which technology does, and doesn't, promote increased productivity? What are the market-mediated impacts of improved productity, particularly as expressed through the Jevons Paradox, Giffen, and Veblen goods? How does one measure quality? How does one measure the total capacity or capability of an economy?

These aren't easy questions. They are, I'm finding as I research economic theory and its history, less ridiculous, and rather more explored, than I'd have thought. There are some exceptionally notable departures and paths taken in economic theory over time, often poorly addressed in the current curriculum.

As with some of the infrastructure issues above, Gordon's marked disinclination to pick up stones, particularly ones on which sacred cows seem perched, strikes me as a singular weakness of his book.

There are other authors, mostly neglected, who've explored this space. Eric D. Beinhocker's 2006 book _The Origin of Wealth_ , Nicholas Georgescu-Roegen's _Entropy and the Economic Process_ , W. Brian Arthur's work on the economy as an evolving complex system, and others. I see the questions and explorations as deeply related.

________________________________

Notes:

1\. [http://www.nybooks.com/articles/2016/08/18/why-economic- grow...](http://www.nybooks.com/articles/2016/08/18/why-economic-growth-will- fall/) Nordhaus is cited in Gordon for his work on economics of both computers and lighting, and addresses advances of lighting (and underaccounting of these in GDP) in his review. It's an interesting exploration of limitations of economic measurement.

<comment><USER32> > Is energy a fundamentally different economic input? What is the relationship > of energy to economic growth?

I am particularly interested in this. My intuition tells me that energy is special because it is the only thing that the laws of physics says cannot be recycled. And that, given enough energy, everything else can be.

<comment><USER33> Technically, it is entropy sinks that you mean, not energy. Energy is quite recyclable given a sufficient entropy sink.

<comment><USER14> Exergy is energy available for work.

Entropy is the degree of disorder in a system.

Emergy is source energy (which must be defined in a formal definition, e.g., typically solar emergy) which is bound up in a particular product or energy source.

</comment></comment></comment></comment><comment><USER34> It's social media.</comment>


Vim.js – JavaScript port of Vim - <AUTHOR> http://coolwanglu.github.io/vim.js/experimental/vim.html <comment><USER2> Nice, I had a crack at doing this a while back using emscripten, but couldn't get around that Vim's input handling is blocking.

Looks like coolwanglu has found a way around this by hacking some kind of async transformation into emscripten. I haven't looked at his code, but I suspect he specially handles known blocking libc calls. My guess is some how storing the set of stack frames when a blocking function is called so that the stack can be unwound to let the js engine continue.

Good stuff.

<comment><USER3> Hi, this could be what you need :) [https://github.com/kripken/emscripten/wiki/Asyncify](https://github.com/kripken/emscripten/wiki/Asyncify)

</comment></comment><comment><USER4> Wow, it's a full vim. I was expecting to find things it couldn't do, but I ran out of things to try. Great work.

It did take a little longer than vim to load, but I guess that's expected.

<comment><USER5> It did not work well in Chrome: 36.0.1985.49 beta C-f, C-b didn't even work.

I then gave it a shot in Firefox nightly and it seemed to work really well. This brings me joy.

I don't like to edit forms/documents on the web; it's a constant struggle against my muscle memory. Vim.js could be the start of something that could change that. Well done!

<comment><USER6> Chrome 36 beta came out _half a year ago_. It's unreasonable to expect web developers to support very old versions of a browser that silently auto- updates. Most popular frameworks and libraries, such as jQuery (see [https://jquery.com/browser-support/](https://jquery.com/browser-support/)), only officially support the latest stable Chrome and one version prior.

<comment><USER7> Right. So it eas pretty new in July, then?

[https://github.com/coolwanglu/vim.js/commits/master](https://github.com/coolwanglu/vim.js/commits/master)

</comment></comment></comment></comment><comment><USER8> This is very cool. Enjoyed playing around w/ it. Nice job.

But one thing (for whatever it's worth) what makes vim super useful (to me anyway) is the plugins and my vimrc with custom key bindings.

(edit) On second look, it appears you can modify vimrc. Very nice.

</comment><comment><USER9> Can someone please explain how this is different from CodeMirror vim mode? I am an emacs user and know only the basic vim commands and so, I cannot tell if there is something fundamentally different between the two implementations.

<comment><USER2> This is the vim C code compiled into Javascript. Not simply an implementation of vim behavour, but _the actual vim source code_ compiled and running in the browser.

</comment></comment><comment><USER10> This is great - my favourite part is that this works: `:!alert("Hello!")`

</comment><comment><USER11> [https://news.ycombinator.com/item?id=6899072](https://news.ycombinator.com/item?id=6899072)

</comment><comment><USER12> Very nice. It first struck me as just a curiousity but honestly I would consider using a browser plugin like this that let me edit web forms with something like this, picking up my local ~/.vimrc. That or for the various interactive code editing tools like ipython.

<comment><USER13> Vimperator for Firefox lets you edit forms with gvim.

<comment><USER14> And if you don't want the full power of Vimperator, you can get that feature with It's All Text! [https://addons.mozilla.org/en-us/firefox/addon/its-all- text/](https://addons.mozilla.org/en-us/firefox/addon/its-all-text/)

</comment></comment></comment><comment><USER15> ...er, don't wish to sound negative, this crashed on me. 8Gb RAM Ubuntu box with Chrome - normally a stable computer that doesn't do things like 'swap'. I might try it again on my ChromeOS box, but, right now, that is as far as I got.

<comment><USER16> Worked fine for me. Firefox, OSX.

</comment></comment><comment><USER17> Although expected, it is a little clunky/slow to use. Fun to play around with nonetheless, but I wonder whether an Emscripten port of Neovim would be a little sprightlier.

<comment><USER18> Why would a port of a more unstable Vim with hacky IPC-based plugin mechanism be "sprightlier"?

Dropping support for operating systems and reformatting the code doesn't make it run faster.

<comment><USER19> There is some focus on performance in Neovim (just ctrl-f for it here: [https://github.com/neovim/neovim/wiki/Progress](https://github.com/neovim/neovim/wiki/Progress)).

But more importantly, all IO is being ported to libuv, from the blocking calls that are currently being done. This obviously fits Javascript's IO model much better, as you don't have to fake an event loop in Javascript as this port is apparently doing - you just use the event loop the JS implementation provides. After that's done, I'd expect Neovim to work more smoothly as a JS port.

</comment></comment></comment><comment><USER20> This is really interesting. Perhaps this would allow for vim on ChromeOS without messing with the linux images (crouton) or the like.

<comment><USER21> Just a tip - if you'd like to use vim on ChromeOS - look into Caret. Its a nice code and text editor like Notepad++, and it has a vim-mode. Its been a while since I've used it, and I don't think it's very extensible, but its something.

<comment><USER22> You probably want to look into Zed instead. I found it to be the best editor I could run on an unmodified Chromebook.

<comment><USER23> Zed[1] is probably the best editor on Windows, OSX, and Linux too. I hate to go back to editors where I have to save, manage what tabs are open, and clutter the workspace with toolbars and buttons.

[1] [http://zedapp.org/](http://zedapp.org/)

</comment></comment></comment></comment><comment><USER24> How can I do the pageDown and pageUp in my Mac? I often use ctrl-B and ctrl-F in the terminal. But it doesn't work here

<comment><USER25> Fn + up/down arrows

</comment></comment><comment><USER26> This is awesome. I've tried other attempts in the past but none were as smooth as this was. Great work!

</comment><comment><USER27> I can't wait to integrate this into IPython Notebook...

<comment><USER27> On further thought that might not be such a good idea because of the nature of emscripten.

</comment></comment><comment><USER28> cool. am I the only one who gets weirdly blurry text though? win8.1 latest chrome

<comment><USER29> Chrome 39 on Windows 7, when scrolling the text gets blurry. On Chrome 41 Canary though things work well and fast.

</comment></comment><comment><USER30> Some way to save the file?

<comment><USER31> It's a crappy hack, but paste this into your JavaScript console:

        function exportFile(path) { var b = new Blob([FS.readFile(path).buffer], {'type': 'text/plain'}); var u = URL.createObjectURL(b); window.location.href = u; }

And then you can run this to export files:

        exportFile("/usr/local/share/vim/vimrc");

</comment></comment><comment><USER32> Brilliant work!!

</comment><comment><USER33> Sorry for the negative tone, but what's the achievement? Emscripten has been out for a while now...

<comment><USER34> A straightforward compile of vim using emscripten doesn't work, because the I/O just doesn't work right (blocking I/O, for one thing). Emscripten works "out of the box" mostly on computation-heavy rather than interaction-heavy code.

<comment><USER33> Thanks, that makes sense ! Don't know why this got down voted BTW, it was a legitimate question.

<comment><USER35> Didn't downvote you but since you seem to wonder about the downvotes I think they came because you jumped in in a negative way (and was wrong). I'd say that the downvotes were kind of justified here, - I want HN to be positive to creators unless they are wrong/evil.</comment></comment></comment></comment>


Show HN: Facebook + Moustaches = Facetache - <AUTHOR> http://www.facetache.com/

<comment><AUTHOR> I was procastinating to the max the other day and instead of doing any real work, I was furiously scrippling moustaches onto pictures in a magazine. Then I had brainwave that there has to be a better way! Alas, facetache was born! :-)

</comment><comment><USER2> Is anyone else getting sick of the whole moustache meme?

<comment><AUTHOR> not me! :-)

</comment></comment><comment><USER3> It's the next instagram! I predict another $10m valuation!

<comment><AUTHOR> I hope so! Living in a caravan in my parents backyard at the moment. :-)

</comment></comment><comment><USER4> Good fun! Though I agree the rotation feature is hard to use, it would be better implemented with a photoshop-like free-transform, dragging is much easier than clicking a moving target!

<comment><AUTHOR> In complete agreement. However, its technically lot more challenging because it needs to do more positional calculations. Other things that suck at the moment: Cant remove individual moustaches and retrieving/saving can be a bit slow. I wanted the whole thing to work in html5 with no server side stuff but IE didnt want to play ball. I figured out a way to do direct FB graph submissions through the browser but only some browsers work. I'll add that to next version....

</comment></comment><comment><USER5> Thought it was gonna be about js templates.

</comment><comment><USER6> It's a pain in the ass trying to rotate anything more than 2 degrees.

<comment><AUTHOR> Yeah, I know :-( I'll improve it on the next version.</comment></comment>


What Do You Think? Y Combinator vs. Grad School - <AUTHOR> http://www.readwriteweb.com/start/2010/02/where-is-entrepreneurship-real.php

<comment><USER2> As with the previous post, this seems to be missing the point that grad school isn't really about the same thing as YCombinator. Grad school is about advancing the state of scientific knowledge, which might result in useful products or services, but not necessarily, and often not in the short-term. Startups are about producing useful products or services, getting them to market, and monetizing them, which might result in scientific advances, but not necessarily, and often you actually hope not to need any (needing to solve an open scientific question in the critical path to getting a product out the door is a huge risk).

</comment><comment><USER3> I think if you are asking yourself and others this question then you aren't ready for either. My advice for anyone who is confused about this is to get a job in your field of study first, then after a time you will know what the answer is.

</comment><comment><USER4> You'll probably get a biased view on a Ycombinator forum, but I think in essence the decision is pretty easy:

If you like to go deep into problems, conducting basic science, and attempting to solve fundamentally difficult problems that may ultimately be intractable, and if deadlines stress you out and you feel like you don't get a chance to do anything "right" and if you have the ability to focus on the same thing for months or years at time, then grad school will probably suit you well.

On the other hand, if you more interested in getting tangible results fast, and getting other people interested in what your doing, and providing a product that regular people find valuable, and you're willing to change direction a lot and throw out good work for no other reason than that market isn't biting, then doing a startup will probably suit you well.

</comment><comment><AUTHOR> In reality you can do both. But perhaps a better question is, is the networking pool at a good B-school really worth the cost?

</comment><comment><USER5> If you successfully exit a startup, you will likely be wealthy: i.e., you will never be forced to take a job in order to eat. If you successfully finish grad school, you will probably be no closer to becoming wealthy than you are now. So if you're ultimate goal is to become wealthy, start now.

What keeps most people from becoming wealthy is not a lack of grad-school-type knowledge.

</comment><comment><USER6> I think about this questions sometimes for my future. Can anyone who has experienced both offer their thoughts?

<comment><USER7> I jumped over this fence a few times, having done a startup after college, then did consulting for years, then dove into grad school to find out what "research" was really all about. I'm still in grad school, but just really took a job working at an industry research lab.

There isn't a clear cut answer because so much depends on your personality and what you want to get out of life.

What I can definitively say: if you've been out of school for a few years, getting an MS in CS is totally worth it. I learned so much about the "new stuff" that I never got around to when I was working, and the bigger toolbox has already paid off for me.

Beyond that, I sort of agree with other posters, but I'm a little more cynical about the long-term vs short-term aims of academia. I'm finding that my startup sensibilities work well for guiding my efforts in a PhD, but this is because I've come believe that grad school is essentially a machine for conferring reputation from professors to students. Keep in mind that even when your advisor gives you a lot of latitude (and that'll take years), you're still not your own boss... and that can suck if you're older than the average student.

Of course, working in a research lab has similar issues. You don't completely get to set your direction, there's a big bureaucracy, and you have to work hard to get people to understand your work.

Out of everything I've done, being in a startup where we all shared The Dream was the best.

</comment></comment><comment><USER8> grad school is a 5+ year commitment. Launching a startup probably takes less time. Also, grad. school is not about entrepreneurship. Perhaps there are transferable skills, but research has different goals.

<comment><USER9> _Finishing_ a startup is probably also a 5+ year commitment. And _going_ to grad school itself takes less time than finishing grad school.

</comment></comment><comment><USER10> I object to the formulation of the question.</comment>


Breakthrough DNA Editor Borne of Bacteria - <AUTHOR> https://www.quantamagazine.org/20150206-crispr-dna-editor-bacteria <comment><USER2> TL;DR: Some bacteria use their DNA as a database of bad viruses for identification purposes. This way of editing DNA has been replicated artificially and it's called CRISPR. Awesome.

<comment><USER3> CRISPR is the type of DNA sequence.

</comment></comment><comment><USER4> Nature is full of interesting goodies. My favorite is the discovery taq polymerase from thermophile bacteria that lives on thermal vents at the bottom of the ocean.

[http://en.m.wikipedia.org/wiki/Polymerase_chain_reaction](http://en.m.wikipedia.org/wiki/Polymerase_chain_reaction)

Another form of code reuse!

I also wonder what amazing things we could find in rare/niche ecosystems giving that in such a short time we've seen things like this and rapamycin.

</comment><comment><USER5> Interestingly, someone else holds a patent for this.

[http://www.technologyreview.com/featuredstory/532796/who- own...](http://www.technologyreview.com/featuredstory/532796/who-owns-the- biggest-biotech-discovery-of-the-century/)

<comment><USER6> It's not yet clear who will ultimately own this IP, of Doudna, Zhang, Church (in the US, the European patents have other contenders). Last I heard, Doudna and Zhang were set to have dueling lab notebooks. I wouldn't underestimate Church's position either given his record of visionary patents (e.g. Nanopore sequencing). Disclaimer I work in the Church lab.

<comment><USER7> Maybe you can enlighten me, but how can any of this be patented in the first place?

<comment><USER3> Because the patent system is outdated. But the supreme court ruled that "synthetic" or "complementary" DNA is eligible for patent protection.

Basically, it's not the discovery of mechanisms, but the unnatural manipulation of them that is patentable.

But some of the rush to the patent office is because it places the onus on challengers; the actual patent takes years to clear, even without complications.

<comment><USER7> I agree that the patent system is broken. I'm wondering what exactly about the manipulation is patentable given that the manipulations could happen randomly in nature. I was hoping daughart could provide his arguments as someone who works in one of the labs.

<comment><USER8> I don't see why this is any different than the patenting of chemicals. Lots of chemicals exist in nature, but if you make something "new" why shouldn't that be protected?

</comment></comment></comment></comment></comment></comment><comment><USER9> This is going a bit off-topic, but the more I read about these new insights into the workings of single-celled life, the more I get the feeling that on the cellular level, we multicellular organisms are like nations. The more sophisticated ones, like us, being like an ethnically homogeneous and very xenophobic society in a totalitarian state with closed borders). Meanwhile, the single-celled ecologies out there function like some kind of anarchic jungle society were everyone is self-reliant.

It kind of makes me wonder what the future of human society holds.

<comment><USER10> We are not a "ethnically homogeneous" society, we are a "clone" society.

In an "ethnically homogeneous" society there are small differences, and it's a good idea for the genes of the small differences to try to get more offspring.

In a "clone" society, there are no differences (or they are extremely small), so it doesn't matter who has the offspring, because it's equivalent. So it's easy to get cooperation.

An interesting cases are the hymenopter (ants, bees, ...) because they have a different system to select sex. For a female is better to have a sister than have a daughter, so the better strategy is to help your mother, then it's a good idea to form a hive.

<comment><USER11> I'd say we're more alike to the Brave New World society - the cells might be created identical, but because of different environmental influences, they develop different functions.

<comment><USER12> And the cells are commanded to do their birth-given duty. Any cells that choose to act otherwise, or take part in any activity they were not given access to, including unlawfully reproduce, shall be sentenced to suicide. And if not committed in a timely manner, shall be killed.

</comment></comment></comment></comment><comment><USER13> > Barrangou and his colleagues found that the bacteria had stuffed DNA > fragments from the two viruses into their spacer

Sounds almost Lamarckian, doesn't it?

<comment><USER14> In a way, _all_ mutations in single-celled organisms that are inherited by daughter cells are acquired during the mother's life-time, so they'd all meet some definition of Lamarckism. CRISPR isn't that special in this regard.

Many evolutionary biologists also prefer not to call this Lamarckism – not because it would be entirely wrong, but because it is misleading to many lay people, who imagine that this would somehow be in conflict with Darwinian evolutionary theory of evolution by natural selection (it's a hobby of many creationists to search for press releases mentioning Lamarckism to crow "ha! Darwin is refuted again!"). This choice isn't a problem in practice because Lamarckism – unlike neo-Darwinism – doesn't offer explanatory models which are essential to understand and reason about these processes.

<comment><USER13> > Many evolutionary biologists also prefer not to call this Lamarckism

Maybe that's why I got downvoted for - as it turns out - writing the exact thing the scientist said.

It was just something that popped into my head.

<comment><USER14> Yeah, don't understand the downvotes. It's an interesting question, and the whole subject of Lamarckism is far from trivially obsolete. Richard Dawkins' _The Blind Watchmaker_ contains a coherent and convincing argument why Lamarckism is actually _wrong_ as an evolutionary explanation (in a nutshell, Lamarckism fundamentally cannot explain increase in complexity, as Darwinian evolution can, and it additionally doesn't explain _how_ adaptations of complex traits could possibly be acquired from scratch) – and this is a fundamental, epistemological objection which no amount of evidence could overturn. But few people refer to this reasoning when claiming that Lamarckism is "wrong".

</comment></comment></comment></comment><comment><USER15> What about this: sequence a tumour, find a distinguishing part of its genome. Make a virus that search and replaces that with self destructing genes. Inject into tumour.

<comment><USER8> A big challenge is that cancer cell genomes are not well conserved. A study was done a while back to look at 1000 breast cancer patients. Mutations were rampant with only a few percentage actually sharing common mutations.

<comment><USER16> Perhaps the point really isn't about having an effective cure for all cancer patients, but just this one.

One of these days, we can detect the cancer cell, and the specific mutation for that person. The detection would take a day or less, and then prime your immune system to recognize and attack it.

So therapies and cures and not like a flu shot, like a jigsaw puzzle, where the last piece for the cure is different for every person (or a few people).

</comment></comment></comment><comment><USER17> This is something that some people has suspected in the field for a long time. I had terrible discussions as we made some software in the field and met people there.

The pure Darwinism evolution dogma has extended a lot because it was an easy answer, like the world being created in 6 days. But it was incomplete in lots of ways.

For example, considering all DNA we did not understand as "junk" DNA was incredible arrogant, when it seems like it is in fact software or other kinds of data.

You have comments on me on hacker news talking about that like 5 years ago or something.

Great job what those researchers have done.

<comment><USER18> > considering all DNA we did not understand as "junk" DNA was incredible > arrogant

I never heard an actual biologist take that view, only popsci talking heads.

<comment><USER19> I seem to remember getting the impression that many "actual biologists" did refer to it and often think of it as "junk" DNA in the '80s. But that's just an impression since I never bought into the concept it was "junk" and to the extent I paid attention, it was to those trying to find why it was there and what it did.

<comment><USER8> I agree. Back in the '80s scientists claimed that a large proportion of DNA didn't encode for anything (introns) and therefore was "junk".

Now our understanding is that although DNA might not encode for anything, it still plays a role in DNA expression.</comment></comment></comment></comment>


Questionable AI photo editor FaceApp goes viral again on iOS - <AUTHOR> https://techcrunch.com/2019/07/16/ai-photo-editor-faceapp-goes-viral-again-on-ios-raises-questions-about-photo-library-access-and-clo/ <comment><USER2> >> You grant FaceApp a perpetual, irrevocable, nonexclusive, royalty-free, worldwide, fully-paid, transferable sub-licensable license to use, reproduce, modify, adapt, publish, translate, create derivative works from, distribute, publicly perform and display your User Content and any name, username or likeness provided in connection with your User Content in all media formats and channels now known or later developed, without compensation to you. When you post or otherwise share User Content on or through our Services, you understand that your User Content and any associated information (such as your [username], location or profile photo) will be visible to the public.

</comment><comment><USER3> "You may remember at one point it had an issue because it enabled what amounted to digital blackface "

Can someone explain to me how is this possibly an issue. Changing someone's skin colour in Photoshop or even lightroom is pretty easy and I don't see anyone saying those apps have an "issue".

<comment><USER4> From what I recall, it wasn't just changing hue - it changed features such as nose width and mouth shape to make a photo resemble a stereotypical ethnic face shape. I can understand who some people might find that offensive.

<comment><USER5> Surely based off of data rather than arbitrary stereotypes? It's not like East Asians are just stereotypically more likely to have straight black hair and narrower eyes than a Scandinavian, that's what a model would gather if trained in an entirely unbiased manner. Wider noses and larger lips are not offensive features, they're just features. An unbiased model would associate those as more common characteristics among black people in the same way that it would associate darker skin pigment...as a non offensive pattern.

</comment></comment></comment><comment><USER6> You pictures are sent to their servers for processing.

Is this the real business model of the app?</comment>


Show HN: My first Android app - NutriHawk - <AUTHOR> https://play.google.com/store/apps/details?id=com.alixander.nutrihawk

<comment><USER2> This is almost exactly an idea I've been kicking about for years. I'm very hopeful for where this will go. It looks great and seems very easy to use. Also love that it doesn't ask for any unnecessary permissions.

One suggestion that I could use right now... the ability to delete data / undo adding data. I added a bunch of stuff just to play with it and now it doesn't accurately reflect what I've eaten.

Also, how often should I update? Just every day? At the minute when I eat the food?

<comment><AUTHOR> Yeah I thought about a delete/undo, but I figured that the only time anyone would undo is if they're just playing around with it at first. It used to be that when you tapped a food to add it, it would automatically do it, but instead I made it with checkboxes and an "log items" button so mistakes don't occur like that.

It's really up to you how often you update. The whole idea isn't to count precise amounts, just input the healthy portions of your meals and over time, hopefully, you'll see patterns of what nutrition your diet is lacking!

<comment><USER2> I guess what I meant to ask was, is it going to increment the data every time I add a food or will it only increment once per day? So if I add apples at 9 AM and then again at 1 PM, is that different than just adding apples once?

Another suggestion: Tapping the "most needed" nutrient on the main screen should take you directly to the screen for that nutrient.

<comment><AUTHOR> Ah sorry, it will increment each time you add it.

That's a great suggestion, thank you!

</comment></comment></comment></comment><comment><USER3> So this is like CRON-O-Meter ([https://cronometer.com/](https://cronometer.com/))?

<comment><USER3> Sorry, just installed your app. It's simple unlike the overcomplicated CRON-O- Meter. Good job!</comment></comment>


.closest(Array) in jQuery 1.4 - <AUTHOR> http://ejohn.org/blog/closestarray-in-jquery-14/

<comment><USER2> Anyone describe in more detail what problem this is trying to solve? (Both versions).</comment>


Posterous (YC 08) unveils Post Editor 2.0 - <AUTHOR> http://blog.posterous.com/posterous-unveils-post-editor-20-upload-and-m

<comment><USER2> I'm starting to see a pattern in startup strategy...

Build a minimum viable product without accounts, management interfaces, rich text editors, etc. Market that product based on its _lack_ of such features ("It's so simple!"). Once you have traction, go build all those features. Market your new product based on _having_ those features ("It's so powerful!").

<comment><USER3> Which kind of makes sense, doesn't it? Why build the whole thing when you're not even sure that people will care.

</comment></comment><comment><USER4> Language nit: "Posterous is not a microblog. It's your place to post everything." I think defining oneself to an audience in terms of a negative -- 'we are not x, we are not y, we are z!' -- tends to leave a negative association. Just flip the sign, to something more like, "Posterous is way more than a microblog -- it's your place to post everything!"

Anyway, cool new features. Image crop, in addition to rotation, would probably satisfy 80% of what a casual user ever needs to do before posting. Rotation alone probably satisfies 50%. I'd be interested to hear the founders' thinking about which features they included vs. excluded in this release.

I'm using Posterous to share pictures of our new daughter with friends & family. It's great for family members to be able to share their pictures of her by email -- a few of my computer-naive relatives can't handle DropBox, but can handle sending a photo in an email attachment. I am nervous about giving my content to a startup that quite likely will get acquired & disappear, but I can archive the pages w/ Zotero, so that's something I guess.

</comment><comment><USER5> It's pretty good. It has solved part of my biggest problem, which was the images. Previously, I had to upload images to imgur and then link then, but now I can upload them directly.

See sample: <http://blog.cubeofm.com/private/HkgpEbuDGE>

I'll still be using imgur though, because they only allow uploading images from your computer and they have no resize option. I usually search of flickr, right click, get the url, add by url to imgur and let it resize to 500. With posterous, I'd have to download it, resize with photoshop, reupload it, which is more work.

It also does not allow me save drafts, so I'll have to keep these in my text files still.

All the same, posterous is good enough for my needs. The reason I use posterous is really ONLY because of this:

\- The pageview counter on the right

\- The backtype widget at the bottom

\- The fact that some people subscribe using posterous

\- I don't seem to get much spam there

If those things were not there, I would have changed to wordpress a long time ago. Yes, I know I could add some wordpress plug-ins, but I really can't be bothered, you know.

And if I had a wordpress blog with a pageview counter, it would look pretentious, because everyone would know I added it, but a posterous blog looks normal because it's part of the default.

That's why I use posterous - not because I love it, but because it's easy, it works, and it has some minor things I prefer over the other alternatives.

<comment><USER6> Thanks Max, been great to see you on Posterous.

For images, any uploads do get resized to a 500px version automatically. Also if you paste a raw URL to an image (must end with .jpg, .gif or .png), we download and resize to 500px if you just drop the URL to the image on its own line in the post. I use it all the time.

For drafts, private posts actually work quite well. Flip it live and hit autopost to push.

Thanks a ton for the feedback, much appreciated.

<comment><USER5> I absolutely did not know that thing with putting an image url in its own line. Now I do and you're right, it's great. Just saved me a ton of time.

</comment></comment></comment><comment><USER7> Yaaaay! I was using Gmail as a Posterous blog post editor (because attaching images and mp3's and then sending them to Posterous resulted in beautiful posts, something confusingly less possible with the web editor.). Anyway, I had no doubt they were cooking up something for the web editor... not because i had inside information, but just because they seem extremely thoughtful and in touch with how people actually work. (They prioritized email/mobile editing... fair enough. And probably smart, though less applicable to me.) Keep up the great work, Posterous folks!

</comment><comment><USER8> There is something about the rich text editor in the web interface that makes it uneditable on iphones/ipads. This is a shame because I wanted to write a long post on the train and format it the way I like. Yes, the straight HTML editor works, but coding on an iP* is tedious and horrible. You may also get a lot more mobile and "couch bloggers" if you can do rich text editing this way as well. My $0.02.

</comment><comment><USER9> Good work, a4agarwal & Co. I just used the new editor to post [http://siculars.posterous.com/my-i-also-think-apple-is- sauce...](http://siculars.posterous.com/my-i-also-think-apple-is-sauced-post). One suggestion I would make would be to update the "Post" button to read "Update Post" or something like that when you are updating a post.</comment>