Everything we know Google is working on for the new year - <AUTHOR> http://arstechnica.com/gadgets/2014/12/google-tracker-2015-everything-google-is-working-on-for-the-new-year/ <comment><USER2> I'm especially excited for their Google X projects[1] - Google Glass 2, Google X Display, and self-driving cars.

If reports[2] are true that the self-driving car will start testing next month, I predict 2015 may be the year that autonomous vehicles go big. The true goals of Lyft and Uber will finally be accomplished. I hope there won't be much red tape getting these cars into action (although there probably will be).

[1] [http://arstechnica.com/gadgets/2014/12/google- tracker-2015-e...](http://arstechnica.com/gadgets/2014/12/google- tracker-2015-everything-google-is-working-on-for-the-new-year/6/#h1)

[2] [http://www.wired.com/2014/12/google-self-driving-car- prototy...](http://www.wired.com/2014/12/google-self-driving-car-prototype-2/)

<comment><USER3> _I predict 2015 may be the year that autonomous vehicles go big._

I'd be interested to hear what you define "go big" as.

It's going to be years before driverless cars are seen at all regularly outside the areas Google (and others) are testing them in, and at least a decade before they are common enough to start having a real impact on the road. The economics of car buying alone will show you that: eg, how many 5 year-old cars do you see on the road? And it'll be at least 5 years before you can buy a driverless car, right?.

 _I hope there won 't be much red tape getting these cars into action_

Really?!?!?!

I had to pass a driving test to be allowed to drive. I hope something similar happens for driverless car implementations. While I'd trust a Google-coded car, I'm not at all sure I'd trust one coded by _< insert a company with less experience at building high-reliability machine-learning software>_.

<comment><USER4> Self driving cars just have to be _safer_ than Humans -- probably not that difficult.

The annoying part will be entering our destination in to Google Maps Car Interface, and having the car tell us:

 _" Because we searched for Chairs the other day, we'll be making a quick stop at our Sponsor: Furniture Warehouse to see their fantastic selection, with free delivery... After all your appointment isn't for another 45 mins and traffic is clear... (you may override this action at a cost of ${LostAdRevenue}"_

<comment><USER5> > Self driving cars just have to be safer than Humans -- probably not that > difficult.

Sadly, this probably is not true.

TERRORISTS are the reason we go through ridiculous security theatre at airports - costig many millions of dollars - when the drive to the airport is very much more risky that flying.

People are not rational about risk. They will drive a car because they thinkthey are safe drivers. Giving up control is tricky.

<comment><USER6> Are terrorists driving old fashioned manual control cars into your child's school?! More at 11

</comment></comment></comment></comment></comment><comment> bra-ket they missed Google Genomics: [https://cloud.google.com/genomics/](https://cloud.google.com/genomics/)

</comment><comment><USER7> I've always thought that the Google Ideas projects page was a bit frightening since many of projects are closely tied to defense.

[https://www.google.com/ideas/projects/](https://www.google.com/ideas/projects/)

<comment><USER8> It doesn't seem to be mentioned directly on the Google Ideas site, but it seems to be Jared Cohen's own project [1], which could explain the defense- themed sub-projects. Interestingly, their last public blog post was in late January [2], and there hasn't seemed to be much public press on what they're doing in a few years.

[1] [http://www.cfr.org/experts/cybersecurity-iran-technology- and...](http://www.cfr.org/experts/cybersecurity-iran-technology-and-foreign- policy/jared-cohen/b16451) [2] [https://plus.google.com/+GoogleIdeas/posts](https://plus.google.com/+GoogleIdeas/posts)

<comment><USER9> Julian Assange has some interesting things to say about Jared Cohen:

 _Later that year the two co-wrote a policy piece for the Council on Foreign Relations' journal Foreign Affairs, praising the reformative potential of Silicon Valley technologies as an instrument of US foreign policy. Describing what they called "coalitions of the connected," Schmidt and Cohen claimed that_

 _Democratic states that have built coalitions of their militaries have the capacity to do the same with their connection technologies. . . . They offer a new way to exercise the duty to protect citizens around the world._

 _In the same piece they argued that "this technology is overwhelmingly provided by the private sector." Shortly afterwards, Tunisia. then Egypt, and then the rest of the Middle East, erupted in revolution._

Of course, you have to take Assange's word with a pinch of salt, but he does a good job of explaining how Cohen links the State Department to Google senior management. So much for "Don't be evil."

[https://wikileaks.org/google-is-not-what-it- seems/](https://wikileaks.org/google-is-not-what-it-seems/)

</comment></comment></comment><comment><USER10> I've got a crazy guess here: I bet they're working on more ways to show ads.

<comment><USER11> It is not about the ads any more. Information is far much more important and they do a fine job at taking over every information stream they can get to. In the long run this will play a huge role.

<comment><USER12> Yes, taking over information streams and injecting ads. Ads are where all Google's money comes from to pay for the rest of it all.

<comment><USER11> After a certain point I don't think money matters even for Google. :)

<comment><USER13> I feel Randall Munroe summed it up the best: [http://xkcd.com/792/](http://xkcd.com/792/) :).

</comment></comment></comment></comment></comment><comment><USER14> Ara will be a crappy phone. But it will be potentially important to making Android, and perhaps the underlying Linux portable across a a range of instruction sets and SoC architectures, and, of course, a wide range of peripherals.

</comment><comment><USER15> If Google wants to offer "Whatsapp competition" in 2015, it should have 2 things, that Hangouts doesn't right now:

1) fast (instant) performance

2) end-to-end encryption (I wouldn't mind if they used the same Axolotl protocol as TextSecure and Whatsapp)

If it doesn't have any of those, I won't be using it.

<comment><USER16> And one thing Whatsapp _does_ have right now:

Support _every_ platform. Not just Android 4 and iOS. You need to go right down to Android 2.3, Windows Phone, Symbian, Blackberry, Nintendo DS, PSP, etc. Even IE6.

<comment><USER17> The precursor to hangouts (talk) had the best kind of cross platform support: it was an open standard (xmpp) so you didn't need the official Google app to use it.

The major im apps are all built on xmpp base anyway so what's missing is support for any extensions they create and open access for third party clients using standard xmpp protocols

</comment></comment></comment><comment><USER18> I see no biotech projects. Kind of strange, because it is a hot field, possibly the next big thing.

<comment><USER19> There's a whole section on biotech:

[http://arstechnica.com/gadgets/2014/12/google- tracker-2015-e...](http://arstechnica.com/gadgets/2014/12/google- tracker-2015-everything-google-is-working-on-for-the-new-year/5/)

Most interesting to me is Calico:

[http://www.calicolabs.com/](http://www.calicolabs.com/)</comment></comment>


Google faces $15 million lawsuit for releasing blogger information in model row - <AUTHOR> http://www.telegraph.co.uk/technology/google/6081473/Google-faces-15-million-lawsuit-for-releasing-blogger-information-in-model-row.html <comment><USER2> Can a company actually be sued for following a court order? Is US culture _that_ sue happy?

They refused to give up any information until a court ruled that they must, at which point they complied as expected. Does the lawyer in question really intend to make it the company's responsibility to determine which court orders are unconstitutional and which are not?

Is that really the precedent he/she want's to set? My oh my.

<comment><USER3> You can actually be sued for _anything_. Whether or not you can win is another matter, and it's difficult to recover legal costs for a frivolous lawsuit. The lawyer is probably just hoping for a settlement.

<comment><USER2> Is there not some office that at least validates the merits of the suit though? Otherwise, the legal system can pretty much be used as a tool for extortion no?

(I'm Canadian here, so excuse my ignorance)

<comment><USER4> No.

The closest you'll get is that very few lawyers will take your case if it completely sucks. And it can get thrown out pretty much off the bat from the the judge

Criminal cases do have grand juries which weigh the merits of a case before going to trial.

<comment><USER2> So theoretically, an organization with large enough pockets could literally destroy a competing organization with lawsuits designed only to ensure the victim expends large amounts of cash on legal fees, correct?

I'm wondering if this method of "business" has ever been attempted?

<comment><USER5> When the Golden Gate Bridge was being built, the ferry companies (who would be put out of business by the bridge) tried to sue the bridge to death with something like 2000 trivial lawsuits. While each of these was easily defeated, the only thing that stopped the ferry companies was that the local populace boycotted the ferries until they stopped the lawsuits.

So yes, it's been done before, is probably being done now, and will happen again. You can counter-sue trivial lawsuits to make the plaintiff go away (and stop filing suits against you), but it takes some work and laying out some money to lawyers.

<comment><USER2> Thanks for the background. This whole thing strikes me as a horrible loophole in the legal system. I'd imagine the same is true in most western countries.

<comment><USER6> Sadly it is the same in most western countries, however if you sue me because I wore a pink hat (frivolous lawsuit) I have the right to counter-sue you (which would be a non-frivolous lawsuit). Yours would be thrown-out and cost you money and probably a lot to get a lawyer to take it on, mine however would likely be taken on on a no-win-no-fee basis by basically any lawyer because it would be so easy to win. So your suit would cost you money, and mine would likely cost me nothing or make me money.

So yes the loophole is there, but the loophole itself is kind of self destructive for anyone dumb enough to try it.

<comment><USER2> Yet the example you gave would have been successful had it not been for outraged civilians mounting a boycott.

How many issues are being exploited that don't warrant such public outrage? My guess is more than a few.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> Do people really have an expectation of a right to privacy when posting things to the biggest and most public of forums known to man?

Bizarre.

<comment><USER8> Google allows you to mark some parts of your profile private, so that sounds like an expectation of privacy to me.</comment></comment>


The state of the Scala website and documentation - <AUTHOR> https://groups.google.com/forum/#!topic/scala-internals/r2GnzCFc3TY <comment><USER3> This pull request showed me just how much the Scala community values good documentation: [https://github.com/playframework/playframework/pull/6545](https://github.com/playframework/playframework/pull/6545) – tldr: not much.

I work a lot with Django, and the documentation is amazing. It's up to date, cross-referenced, everything is linked to everything else, code is executable, etc.

Here, rather than a 2 line fix to make the code in the examples executable and explain how some data is being used, the maintainers opt to keep the code examples non-executable, and obfuscate the code, expanding explanations in text to make up for it.

Documentation is important. If someone doesn't understand it, the project should make a sincere attempt to understand why, take on feedback, instead of shutting down discussion and dismissing someones lack of understanding.

<comment><USER4> > This pull request showed me just how much the Scala community values good > documentation: > [https://github.com/playframework/playframework/pull/6545](https://github.com/playframework/playframework/pull/6545) > – tldr: not much.

Erm... But the change was shitty. How would _that_ make good documentation? The phrase just before said "Here's example JSON", and the JSON got changed to Scala code. How is that indication of appreciation or not of good documentation?

<comment><USER5> Not to mention the same doc page already showed how to convert JSON into a Scala value earlier.

</comment></comment></comment><comment><USER6> Scala was my first serious use of a JVM language and I kept hitting little rough patches that people were assumed to understand from a prior Java background. One example: a month or so into my use I started getting a puzzling failure when sbt was trying to download a dependency. Everybody already knows about Java's security certificate handling, Ivy, and Maven, right? I didn't. I kept on Googling the wrong terms because I was searching for Scala and sbt. The problem turned out (IIRC) to be a dependency download attempt that started from a URL whose certificate was trusted and then got 302 redirected to a mirror whose certificate was not yet trusted by Java. The error messages that actually showed up in my console were not at all helpful and I ended up using tcpflow and a Java-savvy colleague to figure out what was actually happening. Would it be so hard for (e.g.) sbt to provide an interactive security prompt for if you want to trust a remote source's security cert, rather than expecting you to figure out the error message and solve it the Java way with plain Java tools? (Maybe it would be hard. Maybe that's why it doesn't do that. I don't know because I _didn 't use Java before Scala_.)

I don't have concrete examples to hand for the other rough spots but I recall hitting other areas of knowledge that are explained via Java instead of standing on their own. "The Scala Bar is like Java's Foo, but with these improvements..." I never learned the Java Foo and I don't really want to have to acquire a working Java developer's knowledge to use Scala. I'm using Scala and not Java. If you're writing docs for Scala and the reader needs to know something important about either Java-the-ecosystem or Java-the-language, please inline that knowledge.

<comment><USER7> I wouldn't recommend SBT, especially for beginners (Maven is much better documented), but no, it can't give you a prompt because programs don't have access to modify the keystore by design. The JVM is one of the few platforms that actually has a decent go at security, which sometimes means usability suffers.

<comment><USER8> To use scala effectively, you must use SBT. Almost every scala library and framework is built using it. There are tons of productivity enhancing tools wrapped in plug-ins for it. It is java, scala and scalajs aware, and incrementally compiles large projects if you use it. The documentation for it is good from version 0.12 on. You can learn 90% of what you need to do scala builds in SBT in 4 hours by reading the documentation and the walk-through tutorial. Eventually you may need to write your own tasks, but 90% of those tasks are covered by the existing plug-ins available, and you can easily modify or create a new task by writing some simple scala function on your first day using the tool without having to publish a plug-in to some repo for it to work.

I absolutely would reccommend SBT for beginner scala users. It's a must to use and understand it, as much a part of understanding scala as understanding for comprehensions, case classes, and if/else expressions.

<comment><USER9> Using SBT with Scala is certainly encouraged, but you can use other build tools. At work we're successfully using gradle without too many problems. The only things that are slightly weird are the not-so-perfect plugins for gradle, but that is understandable considering they are mostly community driven (sometimes only a one person even).

<comment><USER10> > the not-so-perfect plugins for gradle

Could be because Gradle up to version 2.x provided only Groovy for writing plugins and build scripts. Gradle 3.0 was released a few months ago, and provides both Kotlin and Groovy for plugins and builds, and even prefers Kotlin for writing plugins. Perhaps the "not-so-perfect" situation will change as plugin providers switch over.

I recently looked into Groovy's apparent popularity at #17 on the TIOBE ranking and found Baidu was giving a result 12 times too high and Yahoo a result 20 times too high, both of which would skew the ranking. Groovy's real ranking is somewhere below that of #50 ranked Clojure. These results are being used to promote Groovy as successful to the Apache Software Foundation directorship. I can understand Gradleware wanting to switch to a language with a seemingly more honest approach to promotion.

</comment></comment></comment></comment></comment><comment><AUTHOR>
      We are basically filtering our audience down to people who can
      either invest plenty of time (to wade through the
      documentation/ask for help on the mailing lists and gitter),
      money (to pay for training or attend conferences) or both.

      ..

      I think it wouldn't be charitable to think that the state of
      documentation is a result of the involved parties' massive
      conflict of interest, as Lightbend (has partners that sell
      training), EPFL and ScalaCenter (receive money from commercial
      Coursera courses) all profit from the current situation
      financially.

This hits the nail on the head.

<comment><USER11> Linus said once that if the only benefit of using C for Linux was excluding C++ programmers, that was enough of a benefit.

Sounds really negative, but to be honest, sometimes if the only benefit of Scala is excluding people that are not comfortable with advanced programming, for a project that requires it, then great. You saved your recruiters the job of looking over a lot of resumes that you didn't want anyways.

Scala is not incredibly hard. I am not gifted and I managed to learn it to an extent in which I could solve practical problems.

That being said, I think learning Scala comes out more naturally when you have some exposure to Java. Since many Scala constructs are really shorthands for longer Java code.

I have to accept though that some people go really hardcore on the functional side (like the typelevel/scalaz folks) and that can be really intimidating.

<comment><USER12> > _I think learning Scala comes out more naturally when you have some exposure > to Java._

My experience at the office is different. I come from Java, but I've seen people who literally _never_ programmed in Java or any other Java-like language succeed with Scala (and then they get horrified when they find out what Java looks like). They have none of the bad habits that come from years of writing Java code. It's enlightening, really. A few years ago this experiment wasn't possible -- _of course_ everyone doing Scala was a Java expat. Not anymore, though!

I couldn't disagree more with you about excluding people. Excluding newcomers is always bad, but also, don't people "comfortable with advanced programming" deserve good documentation? Of course they can and will succeed in the absence of it, but only after wasting valuable time.

Linus' statement is controversial and shouldn't be quoted as gospel. In any case, he argued against C++ programmers because he thinks they -- and their chosen language -- _suck_ , not because of advanced programming or whatever (note: not my opinion!).

<comment><USER11> (That's why I started saying "I think", to emphasize it's an opinion rather than a fact.)

My personal experience has been that it is easier to explain people Scala when you can explain it in Java construct terms... But I can see how someone coming from, let's say, Swift, can have an easier time writing idiomatic Scala.

I am against excluding people for the sake of excluding people but you need to consider that communities have some core values, and the core values behind the Scala community are different to that of, let's say, PHP. You know what I mean.

<comment><USER12> I fully agree about the community values, but how is having no good documentation helpful for building said community?

Also, it'd be VERY disappointing if the reason for this lack of documentation was the explanation from the root comment in this thread.

<comment><USER13> As the Scala team lead at Lightbend, I'm truly saddened to see posts like this. It couldn't be farther from our intentions and interests! We absolutely want outstanding Scala documentation, and would never stand in the way of improving them in any way.

My whole team has worked extremely hard this year to bring you the best 2.12 compiler we can. We also spend as much time as possible helping out with polishing documentation, but we feel a coordinated push for better documentation belongs under the umbrella of the Scala Center (whose mission is to "Independently guide and support the Scala community" and to "Provide deep, and quality, educational materials for Scala"). We'll be thrilled to collaborate, but we (as veteran Scala users) are not the best placed to write getting started guides.

EDIT: It was brought to my attention that my comment about the Scala Center could be misinterpreted. I meant to say I would support a proposal to the Scala Center advisory board about improving Scala's documentation, with a focus on the getting started experience.

<comment><USER14> Let me give you a 'fer instance' (this may be the only one that exists, but it's one that had me WTFing until I found the correct documentation to read via stack overflow)

Calling grouped on a Seq.

I've been playing around with some API requests, and needed to batch a long Seq to make reasonable sized GET requests.

So I called grouped on a Seq, then to sanity check I called .length on the grouping.

Then suddenly I had an empty iterator.

Maybe I should have known better, yeah, but the documentation I was reading [http://www.scala-lang.org/docu/files/collections- api/collect...](http://www.scala-lang.org/docu/files/collections- api/collections_4.html) doesn't mention this fact about iterators. Again, maybe I'm the only person in the world who didn't realise the problem with calling .length on what I thought of as a regular old batched set.

It wasn't until I hit on the right google combination that I found [http://www.scala- lang.org/api/current/#scala.collection.Iter...](http://www.scala- lang.org/api/current/#scala.collection.Iterator) from a stack overflow reference, and the lightbulb finally went on.

<comment><USER13> Thanks for the example. We agree that this is a tricky part in the collections. For Scala 2.13, our headline feature will be simplifying/refining the collections API. One of the areas we'd like to improve is to make the transitions from eager to lazy more clear. Also, we'd like to keep immutable (more) separate from mutable collections. Once we switch gears from 2.12.0 to 2.13 milestones, we'll be sure to provide a convenient way to share gotchas like this, so we can see how to prevent them.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER15> I think the author hit upon some pretty good points. Several years ago when I started poking around Scala I really had to push myself to work with it and especially with respect to simple thigns like do I download SBT or Scala. One of the more personally frustrating things I found as a newbie is that the bulk of the documentation seemed to be written as a reference. Compounding that was the un-googlable nature of some of the operators like ":<" which really made things more difficult than I felt that they needed to be.

Regardless, although it was not what I would describe as a pleasant experience, after working with Scala for a few months I definitely found languages like Haskell a lot easier to comprehend. So, I obviously managed to internalize something. :-D

<comment><USER16> > Compounding that was the un-googlable nature of some of the operators like > ":<"

Ah! _souvenirs_

"\- [..] Oh, but you have to use the _epaulette_ function!

\- The what?

\- The epaulette! (>>>) it's like the zigouigoui, but you don't have to lift anything. Just flatMap that shit and you're good."

<comment><USER17> My biggest technical complaint about Scalaz. You can't effectively communicate concepts that involve nameless symbolic constructs, and slang as a replacement is inherently exclusionary.

<comment><USER18> This reminds me of that short time I've been working with scala... I honestly think Scala is Perl on the JVM. I mean, the write-only unreadable-code part of Perl, but on the JVM.

<comment><USER12> Can you provide examples? There's a lot to criticize in Scala, but I can't find many examples of symbol soup, especially in user-written code. There is _some_ , sure (most languages suffer from this to a degree), but so many you consider the language write-only? I just don't see it.

Keep in mind Scalaz is not Scala.

</comment></comment></comment></comment></comment><comment><USER19> Interesting discussion. Thanks for posting.

As I've gotten to learn many different languages (PHP, Ruby, Go, Java, Python, etc) over the last 10 years, it has been really interesting to see how different languages and communities can vary so wildly in their quality of documentation.

As it relates to programming languages, Go's "Tour of Go" ([https://tour.golang.org/welcome/1](https://tour.golang.org/welcome/1)) is an excellent introduction to the language. I wish every language had an intro guide as good.

In terms of frameworks, I absolutely love the Ruby on Rails guides. They strike the right balance between staying high level enough for me to build a mental model of how the framework is working under the hood, while getting deep enough to be useful to solve individual problems I have.

Overall, I think the Ruby community has done a great job of documenting their libraries and frameworks. Whether it's Rails or Sinatra, or it's a library like Devise, Ruby OSS projects seem to tend towards thorough documentation.

On the flip side, Spring's documentation (and most Java library documentation) is absolutely atrocious. Spring in particular only seems to give you 2 flavors of documentation: a 10-minute tutorial, or a 1000-page deep dive in all of the corners of the framework. And Java libraries in general seem to have miserable, out-of-date, incomplete documentation.

<comment><USER20> Since this is all about docs, having gone from Java/Scala to Rust, I cannot emphasize enough how much better Rust is at this. With `cargo doc` I get a local set of static files for the exact version of the libraries I'm using. Why can't everything be this easy?

<comment><USER21> It is that easy with Java/Scala... if... you are using an IDE.

Eclipse through the maven plugin (m2e) will auto download the source code and will show doc as you code (along with drilling into the code. Intellij does something comparable as well. Racer can do this as well (and I admit far nicer in that it is editor agnostic).

The problem is the tools for Java/Scala are all over the place so developers have different experience with the language that probably have very little to do with the language itself (syntax and libraries) but rather the tools.

I would agree Rust is not the norm and IMO perhaps even the gold standard of what modern language organization and tooling should be.

Java/Scala should probably have better builtin tools (or atleast mutually agreed on tools like auto formatting, editor agnostic completion /refactoring (ala racer), package management (Java is actually decent on this as maven is the standard), etc).

</comment></comment></comment><comment><USER16> I write Scala code professionally, and the language documentation is the worst I've encountered. Luckily, I've leveled-up to the point where I don't need it anymore and can just lookup prototypes and comments directly in the source code when I need it (thing almost everyone is doing after a certain time, btw). I understand the frustration of beginners, and I've even began to host talks/presentations, inside my company, for a few coworkers. I hope to get them past, at least, past the few interesting concepts and the shitload of symbols/operators/random-combinations-of-chars-on-my-keyboard that you encounter on a day-to-day basis.

<comment><USER22> This is not an excuse for poor documentation, but I've found that not relying on documentation in general vastly improves my productivity. It requires being comfortable digging into the innards of the libraries and frameworks I use, which helps me understand performance characteristics, extension points, understand stack traces, understand failures when they happen, find bugs, learn language idioms, etc.

</comment></comment><comment><USER23> The website of Scala.js is devoid of some of the problems mentioned. It has an in-browser playground, a getting started guide that uses sbt and follows development conventions, and a useful list of libraries. Maybe Scala can learn a bit from Scala.js?

EDIT: small grammar error

</comment><comment><USER24> It could be the case that Scala language and docs are really done from perspective of maintainers. When I look at commits this year on github [1], there are about half dozen people making significant contribution and most of them seems to be associated with Lightbend. Other popular languages e.g Java/Rust/Swift/Go have very vibrant commit activity from lots of contributors

[https://github.com/scala/scala/graphs/contributors?from=2016...](https://github.com/scala/scala/graphs/contributors?from=2016-01-03&to=2016-10-15&type=c)

</comment><comment><USER25> I am completely unsurprised. I've been pretty negative on Scala in the past, and this is one of those reasons. The community does not feel inclusive and, my perception is that as a beginner you're simply expected to deal with the lack of documentation, the odd behavior of the tools, etc. And that (frankly) makes me fairly uninterested in contributing back to it.

I wonder if it's because many people who stay with Scala are more interested in the many advanced language features it offers, as opposed to building libraries to be used by day-to-day practitioners (who have very different metrics for deciding if a library is worthwhile or not).

<comment><USER26> I'm not sure what you mean by building libraries to be used 'day-to-day'. If you mean that the Scala community is in general more interested in building libraries/tools used by professionals than hobbyists I'd agree, but I can't think of any popular libraries that aren't used day to day by all of the developers on our very very large scala team.

<comment><USER25> Out of curiosity, which libraries does your team use?

<comment><USER26> Scalaz, Scalaz-Stream and http4s constantly. Doobie, Spray, Shapeless, Monocle, and others less often but still definitely more than rarely.

</comment></comment></comment></comment><comment><USER27> Scala's poor documentation stems from a much more fundamental problem - <USER2> absence of a Clojars/Rubygems/PyPI for Scala libraries. It's in the process of being fixed now, I believe, but why did it take so long? The Clojure community has a much lower profile in industry than Scala yet right from the beginning they really valued their community and produced an excellent repository for Clojure libraries and an easy-to-use build tool - Leiningen. The Scala community, by contrast, comes across to outsiders as just not that interested in community. Maybe it's the Java legacy.

</comment><comment><USER28> Personally this is interesting to see after I just recently tried to learn a little Scala to see if I could realize the promise of a fluid front-end to to back-end experience between Scala and Scala.js. I eventually gave up in defeat because the documentation and tools just didn't make for a smooth enough jumpstart for me. Maybe people coming from Java just already have enough prerequisite knowledge to get past that but for me I just wasn't progressing very fast. I had a much easier time progressing in Elixir/Phoenix and Elm recently and to a lesser extent F#. Just my two cents...

<comment><USER29> Elixir shines by how easy it makes it to write good documentation.

The Markdown-renderd docstrings for modules and functions can be converted into nice websites[1] or are available in the command line[2].

[1] [http://elixir-lang.org/docs/stable/elixir/Enum.html#map/2](http://elixir- lang.org/docs/stable/elixir/Enum.html#map/2)

[2] [https://i.imgur.com/RhS283f.png](https://i.imgur.com/RhS283f.png)

</comment></comment><comment><USER30> Excellent. I can now point to this for a good objective reason to not use Scala.

Actually, I'm really sad. I used Scala back in 2005 (Edit: Corrected from 2001?) (God, I'm old) for it's Actors model to do peer-to-peer networking protocols. It was SOOOOOO much better than C/C++ and I could deploy stuff _without installation_ across multiple architectures.

I'm especially sad because it seems like Scala always needed just a little more sustained effort on the community front to move into the big time and it never really got it.

<comment><USER31> Scala came out in early 2004, Scala 2.0 in 2006 and I'm not sure about actors but probably not before 2007.

In 2001 Martin's lab was probably working on Pizza / Java generics :)

<comment><USER30> You are quite correct, I just looked at one of the domains I registered for that and the date was 2005.

As for actors, I was _definitely_ using alpha level stuff. So, your dates jibe with that.

Apparently I'm getting old enough that my memory is getting faulty. :)

Now, if I could only figure out how to do strikethrough for edits...

</comment></comment></comment><comment><USER6> I remembered another thing that Java users already know but surprised me in Scala in a bad way: null. I read a lot about Scala's type system in the week between I was hired to write Scala and when I actually started writing code. Most of it was about how great Scala's type system was and how much safety it provided; the company even called itself Typesafe then. I read many paeans to the virtues of Scala's type system that would turn runtime errors into compile time errors, but they didn't highlight that it can't prevent that most common and annoying of Java runtime errors, the NullPointerException. Due to a lack of prominent mentions in the Scala docs and tutorials I read, I thought that Scala authors either didn't have to think about Java's Billion Dollar Mistake or that the compiler would guide them to safety before the code could blow up at runtime.

Maybe manually dealing with nulls is supposed to just be assumed by anyone using the JVM... But I'd used Jython a little in the past and I didn't have to explicitly deal with null-checking then. Jython converts null to None. In the absence of prominent warnings to the contrary I had thought that Scala would provide at least as much automatic safety as Python-on-JVM does.

<comment><USER32> The correct way to handle this in Scala is to wrap the possibly-null reference (which I assume you're getting as a return value from some Java library) in Option(), not manually checking for null.

<comment><USER6> By "manually checking" I mean that I have to use my own brainpower to notice places where null can leak in to code I'm writing; the compiler doesn't actually enforce the type safety I thought I had. I do use Option to handle sometimes-nulls after I notice them.

EDIT: since Jython doesn't allow raw nulls to leak in from Java libraries, and Kotlin prevents accidental use of nullable values at compile time, it naively _seems like_ Scala could prevent accidental null introduction despite living on the JVM. Or as a distant second-best, prominently warn about the perils of null whenever introducing its type system to beginners.

<comment><USER33> Aren't Jython `None` values essentially `null`s? But, Kotlin, Swift, and others are starting to get it right. Scala will follow suit--the plan is for 'Dotty', the next major version of the Scala compiler, to represent nullable types explicitly as `A | Null` (`A` or `Null`). Without that explicit type there will be no way for a type to hold `null`.

Until that happens, in Scala we continue to work through in the presence of potential nulls by wrapping stuff that comes from Java APIs in `Option`s and never explicitly returning `null` from any Scala APIs.

</comment></comment></comment></comment><comment><USER34> I really wanted to pursue Scala. It looked promising: runs on the JVM, is far saner than Java, has features that keep the "Java 1.4 was the last real Java" crowd away, has a mixed-paradigm OO/FP approach, lots of features... things like all the FUD over compile times and performance didn't really bother me (if I cared about resource usage/performance, I wouldn't use the JVM, duh).

I found two classes of problems.

The first was the lack of practical guides. How do I access a database? Should I use a Java lib for that? What about a rudimentary CRUD app? What if i need something Java-EE-ish, like a message queue/IPC? I kept finding myself in scenarios where I had to reach out to Java, which I was deliberately trying to migrate away from.

Second, there's the fact that Scala has full OO along with the ML-style FP, which makes it hard to figure out if I was doing things the "right" way. Do i use traits and composition and case classes? Should methods go on classes? What's up with the Object pattern? Do I store state on classes or should I prefer case class/record types? When is it a judgment call... and if it is a judgment call... how do I make it without much experience in the language or having any experienced Scala users to guide me?

I'm not averse to spending $100 on books and working through them. I tried that with Scala, but somewhere around page 200 of Programming Scala, gave up.

Then there's the scare factor, there are so many "we're switching from Scala to Java 8" or "we already use Grails" that it was looking like it was turning into a dead end professionally very quickly, especially outside of DC/NY/SF/Chicago. One job I was looking at told me they were moving _all_ their Scala work into Java because of client pressure.

The bigger irony being that I started using OCaml instead, a language where the documentation is usually just an interface file and type signatures.

</comment><comment><USER11> Scala documentation is a bit hard to understand, some articles do not have a good balance in their level of detail... e.g: documentation for Futures and Promises. I use text-to-speech to read it since it can be a bit dense.

Scala.js is great, but it is different (numeric primitives, threads, to start with).

</comment><comment><USER35> I dove deep into Scala a short while back and I can concur with those that thought the documentation was sub-par almost all around, from Scala-Lang site itself, to big things like Play Framework to across small userland libraries. The saddest thing was that I wanted to improve those docs, but I didn't know how. When I finally got to the point through tedious trial and error, I couldn't even remember where to start. It doesn't help that there's 10 ways in Scala to do everything, but no way to find out which is the best one, or the worst, or one that even just works with your current version. Surely this the tone of this post is quite whiny, but it really did make Scala hard as hell to approach.

</comment><comment><USER36> I find this incredibly sad. Plenty great products/languages have died because of poor documentation, poor respect for beginners.

Yet... here the Scala community is... repeating the past and justifying with the same reasons.

I personally only spend time learning a new language when:

1\. I can get employed because I know it. (example: python)

2\. It is easy to pick up and learn. (example: arduino )

3\. It solves a problem I must solve ( perl/bash scripting )

Scala doesn't meet any of the above criteria.

<comment><USER37> If you can program Java you can program Scala. You can't write _good_ Scala code, but that (hopefully) comes with time. Scala solves the same problems Java does, just better. And there are lots of jobs for Scala. Not as many as there are for Java or Python, but maybe as many as for Ruby? I'm not sure exactly.

<comment><USER30> > If you can program Java you can program Scala.

Clojure would probably be my choice nowadays rather than Scala.

Clojure has a great community and is a good counter example to the Lisper's whining that the syntax is what keeps people away.

If I truly needed Actor stuff for performance, I'm probably going leave the JVM and reach for Erlang anyway.

<comment><USER12> Clojure is great, but the more natural progression is from Java to Scala, not to Clojure, if only because you can program in Scala as if it were Java++. You won't write the best Scala, but it will work and you can look at it as "Java with weird syntax".

Going from Java to Clojure requires a major mental shift :)

<comment><USER30> > Clojure is great, but the more natural progression is from Java to Scala, > not to Clojure, if only because you can program in Scala as if it were > Java++.

The problem is that I can program _Java_ as Java++.

Java 1.8 still has its warts, but are they worth the shift to Scala? Maybe? But it would really have to be a compelling reason.

For example, people _still_ often don't know about java.util.concurrent. 99% of their concurrency problems could be solved simply by grabbing the correct data structure out of there.

If they can't be bother to know something as easy as that, what real hope do I have of them really using Scala well?

<comment><USER12> > _Java 1.8 still has its warts, but are they worth the shift to Scala?_

Oh, yes. Few who've had to deal with both a Java 8 and a Scala codebase are going to tell you otherwise. Java 8 is like Scala through blurred glass.

Another thing is that Java 8 is Java++ only _now_ , after many of us have already adopted Scala. In other words, "too little, too late" :)

Regardless, are we discussing whether it's good idea to adopt Scala coming from Java (I think it is!) or whether the transition from Java to Scala is easy? I thought it was the latter, and if so, it's unarguably easier than the transition from Java to Clojure. Scala "looks like" Java in a way Clojure doesn't.

<comment><USER30> > Regardless, are we discussing whether it's good idea to adopt Scala coming > from Java (I think it is!) or whether the transition from Java to Scala is > easy? I thought it was the latter, and if so, it's unarguably easier than > the transition from Java to Clojure. Scala "looks like" Java in a way > Clojure doesn't.

A bit of both. How's that for a hedge? :)

Admittedly, I'm coming back into Java with 1.8+ and don't have a legacy codebase to deal with. So, my calculation as to whether Scala is worth the cost is quite skewed from someone who has been doing it since Java 1.4.

Is it easier to transition from Java to Scala than to Clojure? Maybe. But the people who can make the Scala transition also seem to be the same people who can make the Clojure transition.

And, I think _that 's_ the core problem for Scala. The features that make Scala compelling aren't a nice, slow, logical evolution from Java.

</comment></comment></comment></comment></comment></comment></comment><comment><USER38> How about the speed of the compiler? Last I used Scala, that was the deal breaker for me.

</comment><comment><USER39> That's interesting. Just a few days ago with great regret I decided to drop the (free) Scala course on Coursera after almost finishing week #3 (of 5 I think). I'm actually already pretty familiar at least with the essentials of functional programming but would like to go even deeper.

However, I found the step too steep between the easy to understand lectures and the exercises, and the latter not as useful as they could be. It felt like I was suddenly dropped off and left to my own devices with no guidance. "Now implement this!" Uhm... what? Sure, that's easy, I've been implementing much more complicated things for decades. The problem is I have no idea how to approach it "the right way" as far as Scala is concerned, that's why I'm taking the course!

Looking at the forum - extremely sparsely populated even after over 4 months - showed that I could also expect no guidance from there. That meant that even when I finished a task I was unable to find out if what I had done was the right (functional) way. For one and most importantly, there is hardly anyone to respond, but also since the only exercises are the homework assignments you can't just post your code, that's an "honor code violation". There also is no "solution", i.e. you can't see how the course author(s) would have implemented it.

Another example, people in the forum complained about extreme differences in performance for very minor differences in the way you wrote something, and you had to find all of this out completely for yourself, again no guidance at all.

Another point is that I found the problems too academic. Sure, I can walk a list of head.tail or a tree of left.element.right tuples. But overall the problems were all from what I did a long time ago at university and it felt very, very far from what I deal with now - and I don't just do CRUD or other boring stuff and actually _do_ have interesting algorithms to implement. The course feels like being made for university students - in a negative way.

Overall I found the course more frustration than it was worth. I could have solved the programming challenges easily enough in a way I already knew, but what's the point? I wanted to learn the _new_ (Scala) way, but felt all alone in trying to do that.

The course was like a good violin player demonstrating a piece and then giving me some sheet music and shoving me out the door "come back when you can play that". It's hard to complain about "free", but if course forum participation is a guide, both total numbers as well as the steep drop-off after week 1 and 2, it isn't very successful.

The course: [https://www.coursera.org/learn/progfun1](https://www.coursera.org/learn/progfun1)

Note: Enrolling in the courses individually is possible for free, going through the "specialization" page at [https://www.coursera.org/specializations/scala](https://www.coursera.org/specializations/scala) only shows the for-pay option.

<comment><USER12> I actually liked the progfun1 course, which I took a few years ago. It's one of the cleanest courses I've taken on Coursera. It's true that it's slightly "academic", but that's what many introductions to functional programming often feel like.

However, the follow-up courses, Reactive Programming (retired) and Functional Program Design, are a total let down. They are a rip-off, especially if you paid for them: a complete mess, no relation between lectures and assignments, no introduction of new concepts in relation to a greater context, the slides are not proof-read, constant mentions to non-existent slides and lectures, repeat material from previous courses (a side-effect of the courses being mash-ups of previous material), and example code that doesn't type-check or compile. It's not any single mistake, but the aggregation of them all, and the feeling that the authors just don't care enough. Thankfully I didn't pay for this.

In my opinion, the gold standard for Coursera is Dan Grossman's excellent Programming Languages, which I fully recommend.

<comment><USER40> I share the exact same story. Progfun is a really smooth introdu tion to FP in my opinion, no crazy syntax and only the core concepts. For any deeper concepts and if you don't understand what FP really means you should check out a purely functional language.

<comment><USER39> Just to clarify my opinion on progfun: The lectures are good.

The coding tasks _could_ have been okay - if there was _any_ guidance. I don't even get to see any sample solutions. So even if I make it work, I don't know if that is a good way to do it, the "functional", the "Scala way". And the performance issue I mentioned, it was a major one, the difference between the code even being usable for more than a thousand elements in the list or getting a stack overflow, and the difference was extremely minor, in one case the order in which you called "union" on sets. All of that had to be found out by the _students_ , and even after they found out nobody really had a good idea or explanation for _why_ it was so.

Also, there only was one (small!) opportunity to actually practice what you just learned per week - and that came without any feedback apart from "works/doesn't". Since the course was about a particular programming _style_ that really wasn't enough.

</comment></comment></comment></comment><comment><USER41> A production is only as good as it's training and docs.

I would go a step further: 'Training and Docs ARE the Product'.

Having bad docs is like selling a car without wheels -> It's not a car :), rather, not a thing that 'solves the problem of getting people from point A to point B'.

My experience with Scala has generally led me to concur with the overall assessment that Scala information and communication is pretty weak.

Hope they can improve it, it's a pretty cool language.</comment>


Web Developer San Diego - <AUTHOR>

We are two person startup in San Diego. We are currently working on product to build a new UI metaphor for a very common application. We are building on top of an existing open source project and have done quite a bit of work on it. We are looking for someone who is well versed in UI programming, especially on the web.<p>If you are interested in working on it and are comfortable with Javascript, Objective-J and Java please send me an email. You would be the first employee and I assure you won't be disappointed when you hear about what we are doing. We need someone who can work in San Diego full time. Working remote is not an option. <comment><USER2> This is one of the right way to approach for a Non VC Funded Company.

</comment><comment><USER3> I grew up in San Diego, and I'm a great UI programmer...but I'm working full time on my own startup.

Good luck finding someone!

</comment><comment><USER4> <http://news.ycombinator.com/jobs>

<comment><USER5> It is no coincidence that the only postings are for YC-funded companies.

<comment><AUTHOR> We are not YC funded.

</comment></comment></comment><comment><USER6> Good luck guys, the world needs more UI metaphors.

</comment><comment><USER7> hmm</comment>


The lightbulb that's been burning for almost 110 years - <AUTHOR> http://www.npr.org/blogs/thetwo-way/2011/06/10/137106412/brilliant-news-light-bulb-thats-been-burning-since-1901-is-still-on

<comment><USER2> >"Since then, with the exception of a brief period in 1903, a week or so in 1937 and some power outages between then and 1976, the light has been on."

Honestly, if they had said this bulb had managed to be on all of that time, I might see making a big deal out of it. But 110 years minus an entire week and several outages is like giving someone an award for perfect attendance who only called in sick 12 times.

<comment><USER3> I don't think the award is for perfect attendance. I think the award is for showing up for work for one hundred and ten freakin years.

</comment></comment><comment><USER4> The bulb itself isn't the only ancient thing; take a look at its website <http://www.centennialbulb.org/>

Animated GIFs, counters... it's like I'm back in 1996 all over again.

<comment><USER5> For your safety, don't look at the code...

<comment><USER6> _Visit A1javascripts.com for more neat scripts_

Sorry, but I couldn't resist.

</comment></comment></comment><comment><USER7> Hey this is like 10 minutes from me! Not sure that it belongs on HN though...

</comment><comment><USER8> Something tells me someone has turned this off and back on when noone was watching

<comment><USER9> This would just decrease life time even further (compared to letting it run all the time).</comment></comment>


Ask HN: Any startups looking to hire a contract engineer? - <AUTHOR>

I live in Silicon Valley. I am trying to start my own company but need some work to pay the bills. Any startup looking to hire an engineer on a contract?
My primary languages are Python and PHP. Can do MySQL or NoSQL databases. Good experience in scaling. I'd be great at a startup having some scaling issues or just starting out and need to build core features. I can do front-end work but only bug fixes and things like that. I wouldn't trust myself to be a full-time front-end dev. I've worked at 2 startups that have been acquired in the last year and another startup that is really hot right now.
If you are interested or want more information on me email me at firstname.lastname@example.com (it forwards to my real email) and I'll be happy to send you my resume/LinkedIn. <comment><USER2> HN has got dedicated hiring threads each month. You can also use this handy tool: <http://hnhiring.me/>

^^ Credit to whoever built this!</comment>


Michael Robertson (mp3.com) discusses Entrepreneurship and the Music Industry. - <AUTHOR> http://namesake.com/conversation/brian/like-welcome-mp3michael-namesake-community

<comment><USER2> He's telling the story of how he got MP3.com. Love it.

"Back in those days all the files were on ftp servers not web servers. Well I saw people searching for "mp3" cause it appeared on the bottom of the top 100 list that we would print out. My biz instinct said "if people are searching for it there must be opportunity."

</comment><comment><USER3> This is a very interesting item as I believe the 4 out of the 5 user accounts that have commented on this (in the last 3 hours) are part of a voting ring.

Fascinating to see it.

</comment><comment><USER4> MP3.com for $1,500 in 1997 from a guy who's initials were M.P and had no idea what an MP3 was! Classic.

</comment><comment><USER5> This guy is a freaking genius.

</comment><comment><USER6> Freaking amazing speaker

</comment><comment><USER7> telling the story of acquiring mp3.com ... sweet.</comment>


Can Russia pull off a Silicon Valley? - <AUTHOR> http://www.time.com/time/world/article/0,8599,1967590,00.html

<comment><USER2> it is very difficult to compete with USA in the area of computer technologies. America has a long tradition in the area. It is like competing with Japanese or Germans in car-making.

<comment><AUTHOR> Agreed. Infrastructure is one of those things that the article kind of glazes over, but still thought it was interesting. Given Russia's socio-political nature, however, it just might work.

The main problem with SV these days is that it's not a cost-effective place for startups any more:

Average monthly rent (2006): $2,162 (two bedroom, two bath) __

Average monthly rent (2005): $2,111 (two bedroom, two bath) __

Average monthly rent (2006): $1,754 (one bedroom, one bath) __Average monthly rent (2005): $1,613 (one bedroom, one bath) __Median monthly rent in 1990: $825 Median monthly rent in 1960: $162

Source: <http://www.paloaltoonline.com/com_info/by_the_numbers.php>

Doubling in 15 years? Rent is one of those things that essentially amounts to a sunk cost, in the long-term. I think Silicon Valley has seen its glory days, and the greedy insanity of the property managers/landlords/etc. will ultimately do the place in.

<comment><USER2> Yeah, that is true. Nonetheless, USA still have plenty high-tech spots, and many of them are rather cheap (Boulder?). BTW rent in Russia is also expensive.</comment></comment></comment>


Node-unshortener can unshort any url - <AUTHOR> http://swizec.com/blog/node-unshortener-can-unshort-any-url/swizec/1763

<comment><USER2> Why not just follow redirects instead? All proper URL-shortening services would work no matter of API. And just add support for those that does it via IFRAME. much more convenient.

</comment><comment><USER3> I've thought for some time that url shortening and expanding should be an RFC, done in the browser, the same across browsers.

</comment><comment><USER4> Not now it got Hacker News-bombed it can't.

</comment><comment><AUTHOR> While my blog is being bombed, you can check out the github link here --> <https://github.com/Swizec/node-unshortener>

edit: back up now.</comment>


IE8 falls below 25% market share, Firefox 15 passes 10% mark, Chrome loses users - <AUTHOR> http://thenextweb.com/apps/2012/10/01/internet-explorer-8-falls-25-market-share-firefox-15-passes-10-mark-chrome-loses-users <comment><USER2> The wikipedia article on browser share does a good job of illustrating the fact that nobody really has any idea what's going on:

[http://en.wikipedia.org/wiki/Usage_share_of_web_browsers#Sum...](http://en.wikipedia.org/wiki/Usage_share_of_web_browsers#Summary_table)

At least we can conclude Chrome is probably somewhere between 19% and 35%.

<comment><USER3> Everybody knows what's going on. All you need to do to see the most relevant and accurate browser stats is to open up your own analytics panel.

global browser stats are virtually useless. the only stats that matter are the stats that correspond to your audience. depending on location, interest, age, market, or any myriad other factors, your chrome usage could vary by a lot more than 19-35%.

<comment><USER4> Yes, most definitely this. For instance small niche site I run mostly dealing with females 30-60 years of age, Chrome has 17%, Safari 18%, Firefox 22% and IE 36%.

</comment></comment></comment><comment><USER5> I can see why Chrome is loosing users. They're really close to loosing me now too. The rapid updates have had some strange quality control issues and being one version behind on Flash can be a pain.

<comment><USER6> I stopped using Chrome because I was never super excited about depending on Google for yet another crucial service, and Firefox seems to have gotten better lately (perhaps the competition has invigorated them).

I know that probably sounds paranoid, but at the end of the day, I would just rather rely on a nonprofit organization or OSS project for anything important, rather than a for-profit company... _as long as_ the quality is comparable.

<comment><USER7> If you use Chromium then you'll be using an open-source browser. Chrome gets the bulk of its source code from Chromium, but there are some parts they can't include in the open-source distribution due to licensing restrictions.

However, that's a compromise, and it would be much nicer if it were open- source from the start.

<comment><USER8> I don't think there's a need to discuss it as some kind of frightening black box that nobody's too sure about, either. As far as is known, I believe Chrome - Chromium == Branding, MP3 codecs, Pepperflash, Foxit PDF reading libs. With flash, they have some kind of special arrangement with Adobe; with the other three, it seems like it amounts to licensing bullshit that's keeping their hands tied.

There used to be that RLZ usage tracking thingy, but IIRC it got taken out. I'm sure there's other stuff like auto-update and usage statistics-gathering components added to the Chrome build as well.

If I missed anything, please do point it out.

By the way, my goal isn't to warm people up to the proprietary Chrome build. My point is more to make people feel less like they're missing out by ditching it for the freer Chromium.

It definitely has to be acknowledged that from a security perspective, it must be assumed that Chrome contains back doors and "innocently neglected" security vulnerabilities for big brother in all his various incarnations.

So use Chromium, damnit!

<comment><USER9> >It definitely has to be acknowledged that from a security perspective, it must be assumed that Chrome contains back doors and "innocently neglected" security vulnerabilities for big brother in all his various incarnations.

What?

<comment><USER6> I'm guessing they mean closed-source software should be presumed compromised.

<comment><USER9> Then that's tinfoil hattery and doesn't really seem like it adds to the discussion.

</comment></comment></comment></comment></comment></comment></comment><comment><USER10> Oh not Net Marketshare stats again...At least they are not adding iOS Safari market share anymore and then saying how Safari market share grew 200% in one month or something. Their stats are still misleading as hell, though. There's no way Chrome still has only 18% market share, which is even lower than Firefox.

</comment><comment><USER11> I'd like to know how much the IE numbers would fall if they excluded China. Unfortunately, I'd need to pay money to get that data from their source.

[http://www.netmarketshare.com/browser-market- share.aspx?qpri...](http://www.netmarketshare.com/browser-market- share.aspx?qprid=0&qpcustomd=0&qpaf=-001%09101%09CN%0D)

<comment><USER12> Yep, China is a huge driver for IE6. Microsoft has the data you want: <http://www.ie6countdown.com/>

</comment></comment><comment><USER13> I thought it might be interesting to include our numbers, since they surprised me. We (<https://circleci.com>) make tools for web developers, so this is very much for early-adopters:

Chrome: 58%

Safari: 21%

Firefox: 9%

Android: 7.5%

Everyone else, including IE: < 0.5%

</comment><comment><USER14> here's what we're seeing past 2 weeks (ecommerce site in the DIY/contractor home improvement sector):

ie9 - 23.7%

ff - 17.0%

ch - 15.0%

ie8 - 14.8%

ipad - 10.6%

sf - 8.5%

ie7 - 6.4%

ie6 - 2.4%

and - 0.8%

op - 0.5%

iphone - 0.2%

ie10 - 0.1%

*iphone and android phone stats are way off because we redirect to a dedicated mobile site for small screen sizes.

</comment><comment><USER15> Am I the only one horribly confused by the math in these charts?

E.G. the second chart has FF at 20.08% and then has a breakout where they show FF15 at ~11%, FF14 at ~3.2%, FF13 at ~0.7%, and FF12 at ~1% Those add up to ~16% by my math... That leaves around 4% missing, I'm assuming in an "other" category, but I feel like leaving off "other" when it's your second largest grouping is bad presentation.

Anyone else have a less confused way of reading these graphs?

<comment><USER12> There are other, older Firefox versions that add up to the remainder. The same goes for the other browsers.

</comment></comment><comment><USER16> According to StatCounter, over the last three months, the standings are Chrome (33.87%), IE (32.53%), Firefox (22.99%), Safari (7.4%), Opera (1.66%), and the rest (1.55%).

[http://gs.statcounter.com/#browser-ww- monthly-201207-201209-...](http://gs.statcounter.com/#browser-ww- monthly-201207-201209-bar)

<comment><USER17> Note that StatCounter counts page views, while most other reports count unique visitors. Both are useful, but they can't be compared directly. The StatCounter numbers reflect which browsers have users that do more (or less) browsing than others.

</comment></comment><comment><USER18> There is a huge difference between losing users and losing market share, particularly in an industry characterized by steady overall growth.

Is there any evidence that Chrome has actually lost users, or has it simply not added as many as some competing browsers?

</comment><comment><USER19> These stats and graphs are at least a bit misleading.

For the Firefox cross section they show

10.91 + 3.20 + 0.72 + 0.99 = 20.08 ?? It is in fact 15.82

Which explains my first question: Where is Firefox 3.6? I cannot believe ie6 is still "so big" and Firefox 3.6 has vanished. Which it hasn't. It clearly has ~ 4.26% or a bit less.

Kinda misleading info graphic

<comment><USER17> While it's a different data set, StatCounter's numbers show Firefox 3.6 accounting for 0.86% of page views last month: [http://gs.statcounter.com/#browser_version_partially_combine...](http://gs.statcounter.com/#browser_version_partially_combined- ww-monthly-201209-201209-bar)

<https://en.wikipedia.org/wiki/Template:Firefox_usage_share> has a further breakdown of the Firefox numbers from StatCounter for September.

</comment></comment><comment><USER20> Am I missing something? Safari is the big winner according the article with a gain of 0.16%, but IE6 gained 0.3%. Am I reading this wrong? Surely IE6 would be the big winner in this (flawed, as reading above comments suggests) study.

</comment><comment><USER21> Analytics for a site I run (mainly dealing with web-dev) has Chrome usage growing at a steady rate. For the past 6 months, Chrome has gained about 1% market share a month (out of ~160,000 visits a month).

</comment><comment><USER22> These pie charts are bad. You shouldn't have the same browser switch colors as you go through the charts. IE starts as purple then is blue; Firefox makes it from blue to purple to red.</comment>


Ask HN: Why patents like this are being granted? - <AUTHOR> I was just browsing granted patents related to web tech and was shocked by how many broad ideas are being patented. Here is an example: http://patents.justia.com/patent/9336747 Why is that happening and who are the people who grant these broad patents? <comment><USER2> There is a blog about stupid patents: [https://www.eff.org/issues/stupid- patent-month](https://www.eff.org/issues/stupid-patent-month)

</comment><comment><USER3> pre the Alice decision and post-Alice are different things.</comment>


OOP in JavaScript - <AUTHOR> http://joii.harold.info/

<comment><USER2> Looks like this is meant to be used in tandem with PHP.</comment>


10 Most (and Least) Stressful Jobs for 2014  - <AUTHOR> http://blogs.wsj.com/atwork/2014/01/07/10-most-and-least-stressful-jobs-2014/ <comment><USER2> Total non-sense.

E.g. FireFighting - It has a lower Workers Comp rating than most construction jobs. In California they often make $100,000 or more and spend most of the time training, cleaning or resting. Most calls are not for fires, but for assistance. There's very little chance of loosing your job and in the unlikely situation where you're hurt or injured, there's a well-funded plan to take care of you.

Compare that with an "Event Coordinator" who's under constant deadlines, paid ~$27K/yr, workes 12-14 hour days and lives in constant fear of loosing their job if everything isn't perfect. No health care and no retirement.

</comment><comment><USER3> Has anyone read the methodology?

[http://www.careercast.com/jobs-rated/jobs- rated-2013-methodo...](http://www.careercast.com/jobs-rated/jobs- rated-2013-methodology)

Looks like they made up some list of things they think should be stressful, gave them arbitrary point values, and scored each occupation.

The authors of the study are CareerCast.com. Not exactly an authority.

No doubt, being a soldier or a firefighter has got to be stressful. But this "study" won't prove it.

<comment><USER4> Since "stress" is rather subjective, I don't know what study would ever prove it.

<comment><USER5> One could correlate stress with things like depression, suicide, anxiety disorders, divorce, addiction, etc, but that would be a very difficult study to perform.

</comment></comment></comment><comment><USER6> Drill-press operator? Come on, who's JUST a drill press operator?

<comment><USER7> What does a drill press operator do?

<comment><USER8> A drill press is a big drill mounted on a stand with a crank mounted on the side. When you turn the crank the drill presses down. A drill press operator would literally take something, place it under the drill, turn the crank to drill a hole in it, then remove the item.

I could see a big shop having enough work to support a full time drill operator but it is rather like saying you are a hammer operator or a screw driver operator. It isn't complicated enough to need a specialist.

<comment><USER9> "It isn't complicated enough to need a specialist."

Have you ever tried to center a hole to micron precision? Do you know which drill speed vs feed rate to use for the metal you are drilling? Do you know which drill bit to use? Do you know how to sharpen drill bits correctly? Do you know how to secure work to the table? Do you know how to use a sine bar and gauge blocks to mount your work piece at a precise angle? Do you know how to inspect the surface of the work piece to make sure it doesn't have burrs, specs of dirt etc that could throw the work tolerances out? etc etc

It's not he most in depth job, but it's far from unspecialised.

</comment></comment></comment></comment><comment><USER10> Of course military personnel will be at the top

</comment><comment><USER11> Stereotypes and prejudices.</comment>


Ask HN: Sources for making a product video. - <AUTHOR>

Developing a web application for a social enterprise and want to create a product video. Here are some comps we like: Blurts (http://blurts.com/), GetPunchd (http://getpunchd.com/) and Lissn (http://lissn.com/). Any ideas on where to find the right talent to create a one minute video with similar attributes? Thank you! <comment><USER2> Niket here with Punchd.

I'd recommend asking around to see if you have a friend with a DSLR camera that shoots video. With a little bit of practice you can easily get the shots you need to put together a nice video. I think people think it's scarier than it is, and I assure you I am an amateur, at best.

Key idea is to keep the video simple and fluffy as when you start to get specific and detailed it all becomes complicated. Getting the message across should be done in around 30 seconds to capture and fire up a potential audience.

If you have a Mac with iMovie you can easily dump those video files and start messing with it.

Ping me if you'd like any specific information or to bounce off ideas (my favorite thing to do).

<comment><AUTHOR> Hi Niket! I appreciate the offer I will certainly take you up on that when we start rolling with concept. Great app BTW

</comment></comment><comment><USER3> Any video geek with moderate VoiceOver / Final Cut / After Effects / Motion skills will have the know-how to pull this off. That can't be hard to find.

Although Blurts is a completely different approach than the other two examples you posted. Same rules apply, just add a camera.

<http://adamlisagor.com> has been doing some really interesting promotional videos for apps and web services.

But this all really does boil down to how much you want to spend, as far as talent goes. You can find a savvy college kid or hire someone who does this sort of work full-time. Or make something a little less sub-par and do it in house.

</comment><comment><USER4> Hey Rhodee, Reed here from Punchd. We shot that video on a Canon EOS Rebel which gave it the great depth of field. My good friend Mike is a photographer, so he set up the shots. Chris did the voice over (he's got a nice tone!), and Niket edited it together and messed with the colors in After Effects.

All in all the shooting took about 20 minutes and the editing an hour or so. Fun little project with a couple friends :)

<comment><AUTHOR> Blown away, the video is really crisp-I show it to people often. Thanks for the advice Reed!

</comment></comment><comment><USER5> If you're trying to keep costs low you can attempt to split up the job and do parts using <http://fiverr.com> . You wont get amazing animations for $5, but you can actually get decent voiceover work. I've had a video made which was solid, and for $5 you basically choose the "voice" that you want, give them a script (and copy of your animation), and you're set.

<comment><AUTHOR> Thanks, I will check that out. I definitely have the script and the animation I will look to partner with someone. I can't say this enough, but thank you to everyone its nice to be part of a community of folks struggling with the same ambitions and challenges.

</comment></comment><comment><USER6> Completely offtopic, thank you for referring me to GetPunchd. That's a great idea if I've ever heard of one.</comment>


What are currently the top startups in InfoSec in Europe/ Israel? - dolev-yao

As per the title. <comment><AUTHOR> Behaviosec in Sweden is a pretty good one. They now have an office in the US though.</comment>


Analog to Digital Converter & Digital to Analog Converter - Overview - <AUTHOR> http://dev.emcelettronica.com/analog-to-digital-converter-digital-to-analog-converter-overview <comment><AUTHOR> The real world, where we live day by day, is the realm of analogue signals. Read this overview about ADC (Analog to Digital Converter) and DAC (Digital to Analog Converter)</comment>


Show HN: EC2 price API - <AUTHOR> http://www.ec2-price.info/ <comment><USER2> Doesn't seem to be working for me in Chrome on Android. I submit the form, the page goes blank, and nothing else happens. Also, a suggestion, the fields rendering in a random order will be very confusing to someone if they are going to be using this multiple times in a row to compare pricing of different EC2 specs. I was very confused when region was at the very bottom the first time I tried to submit the form, then at the very top the second time.

<comment><USER3> Same

<comment><AUTHOR> Blank? Doesn't it show just the price? (single number at the top left corner, probably)

</comment></comment></comment><comment><USER4> no love for spot instance?

<comment><AUTHOR> v2 maybe? :-)</comment></comment>


Elon Musk's Ideas About Transportation are Boring - <AUTHOR> https://pedestrianobservations.com/2017/12/15/elon-musks-ideas-about-transportation-are-boring/ <comment><USER2> Elon Musk seems like a rich guy from the California suburbs interested in decarbonizing his lifestyle— a reasonably noble goal, but the California suburbs have a ton of issues totally unrelated to their ecological footprint— not least of which is that their car-dependent transportation system can't scale beyond a certain level of density without massive congestion. And preventing them from scaling beyond that density instead results in a profoundly broken housing market because everyone who wants to live in California is required to bid up a profoundly expensive patch of land.

A modest improvement in road throughput from automation is nothing but a short-term solution, and might well make congestion worse because of the reduced time/attention cost of driving— potentially much worse, since people many more people could move into RVs occupying the only free land in coastal California, its roads.

Elon Musk does not look like a smart guy when he rejects what clever outsiders who have been paying attention to these issues for years have to say and by calling them idiots— after all, he supposedly got into rocketry by devouring textbooks, not by getting angry during his commute.

This graphic makes the point about why cars can never be a solution for mass urban mobility better than pretty much anything else: [https://i.imgur.com/sCvRIEd.gif](https://i.imgur.com/sCvRIEd.gif)

<comment><USER3> Maybe it's just me but that picture makes the exact opposite point from what you're saying. It clearly points out that the difference between cars and other forms of transportation is linear. Public transportation doesn't scale this especially well, as anybody using public transport knows, but this article is a nice summary [1].

We all know what would happen to bus stops, stations, and generally to public places if people on buses actually had anywhere near the density "made possible" by public transport. It just won't work.

While for instance, adding roads in the sky (ie. very long bridges) scales exponentially, for obvious reasons. As does just flying (flying, incidentally, is a lot more efficient than people think). People don't want this, for obvious reasons, but there comes a point in cities where we have no choice. Frankly, cities like depicted in "the fifth element" and "star wars" are the future. Probably more rails, less floating, but the general idea is where we'll be going.

Doesn't even really matter if they have public or private transport. Given how fast public transport upgrades (even when absolutely required by the numbers of people they just refuse to upgrade for decades. Yes. Decades) and how comfortable it is, and add of course the fact that they just don't support the use cases cars enable (some of which, like an elderly or disabled person doing groceries, are absolute requirements) and you get to the point : private transport is far preferable to public transport.

[1] [http://www.uwgb.edu/DutchS/PSEUDOSC/MassTransit.HTM](http://www.uwgb.edu/DutchS/PSEUDOSC/MassTransit.HTM)

<comment><USER4> > Public transportation doesn't scale this especially well, as anybody using > public transport knows, but this article is a nice summary

Then how do cities like Singapore, with a population density of nearly 8k people per square km, have far less traffic than pretty much any major US city? They make public transportation work, and if you've ever been there, you'd know it works really well.

Just because western countries haven't figured it out yet doesn't mean that it can't work at all. Public transportation in the US _sucks_ because the US, as a whole, wants it to suck.

<comment><USER5> Well, there are a couple of reasons they can make it work:

-Tax cars really highly.

-Have car quotas

-Suppress dissent and in practice a one party system

-Build out public transit

-Pop Density.

-No land for sprawl available.

<comment><USER6> You don't need to run a one-party police state in order to have a functioning public transit system or limit urban car use, and it's entirely possible to have a one-party police state while also having car-dependent suburban sprawl.

<comment><USER5> Granted. I'm just pointing out those were the reasons it was "easy" to pull off in SG.

</comment></comment></comment></comment></comment></comment><comment><USER7> "b) promises reducing tunneling costs by a factor of 10, a feat that he himself has no chance to achieve, and c) is unaware that the cost reduction he promises, relative to American construction costs, has already been achieved in a number of countries."

So Musk, a person who owns and is the CTO of a company that can now land reusable rockets that were only dreamed about in science fiction a decade ago, won't be able to drop tunneling costs in the US by a factor of ten, when the author admits this is already done in other countries.

Not sure this is worth reading past that part.

<comment><USER8> He's specifically calling out the goal of reducing tunneling costs by accelerating the TBM. The other projects that have reduced costs have done so through boring old sound construction management practices (the article pointing out the labor and stations are actually the expensive parts of these projects, not the tunnel by itself).

Also, if you read the rest of the article he literally predicts your response of appealing to the authoritative win of SpaceX as a completely invalid counter argument (and he'd be right, appeals to authority is on the list of logical fallacies, last I checked ;) ).

<comment><USER7> One can't prove a negative. The Boring company has a plan and a goal. Saying it can't be done is not useful or productive. There has not been much change in tunneling tech in the last 20 years and Musk seems to think it is possible to get some great improvements. He has done it in two other very different fields with SpaceX and Tesla. Creating a new technology is not about the logic of debates but doing things and failing over and over again, in a productive way, to get to success.

Musk can access great people and large amounts of capital, thinks things out from first principles, doesn't believe in "safety first", and thinks tunnels could be of great value. Traffic (on car and trains) is killing our cities and nothing is being done about it. No new transportation infrastructure built in the Bay Area since 1980 except a few small BART extensions. We could put anything in these tunnels. Not sure why people are so worried that he is going to get some people together and try.

<comment><USER9> Theorem. There are no even prime numbers greater than 2.

Proof. Assume n > 2, 2 divides n and n is prime. Therefore, 2 is a prime factor of n. But since every prime number only has one prime factor, itself, then n = 2. But n = 2 contradicts n > 2\. Therefore, no prime numbers greater than 2 exist. QED.

\- or -

Claim. There is no beer in the fridge. Argument. I opened the fridge, there was no beer in the fridge.

\- or -

p is a proposition. ~p is its negation. Take q = ~p. Proving p is the same as proving ~q.

Seems to me you can most certainly prove "negatives".

<comment><USER10> > One can't prove a negative.

Fine. One can't _necessarily_ prove a negative. Only if you can prove the negation of the assertion can you "prove the negative".

Now apply that logic to: <Musk> I can reduce the cost of boring by an order of magnitude.

Can you prove that he can't? The gp was (over)simply stating that just because no other digging project has done what Musk claims to be able to do doesn't necessarily mean that Musk can't do it.

</comment></comment></comment></comment></comment><comment><USER11> Underground freeways? Wow. I didn't realize that was the target of The Boring Company. I thought it was a start at making Hyperloop a thing. That would have (to me) made more sense than underground freeways.

This is a scathing review, but I can't really find anything inaccurate in it. Perhaps I didn't try hard enough, but the thought of riding hundreds of miles underground doesn't make me enthusiastic about looking for ways to make it more real. I've seen what happens when Lithium batteries catch on fire, and I wouldn't want to be stuck in a tunnel when that happened.

<comment><USER12> No I think it's generally right. The boring company seems like a really silly idea. It's an extension of a broken transportation system.

Cities scale with busses and trains. For some reason, the boring company wants to scale a city with cars. You build this big expensive tunnel to get 1/10th or even 1/50th the throughput that you could get with a train system.

Maybe that's not the California way though.

<comment><USER7> With automated driving systems you can put the vehicles really close together with high speed and get throughput equal to train systems with single passenger cars. These same tunnels can also have vehicles in them with higher density seating (call them buses, if you like). If you put these vehicles close together you get a train. With this system you can have both cars, buses and trains running all in the same tunnel. Charge each by how much space they take up and vary the price so there is never a backup to get on. Seems like a transportation dream come true. Everybody gets the system they want to use.

<comment><USER13> That's not solving the issue: single-passenger cars are just extremely inefficient passenger density. Technology might allow you to pack them to 2× or 3× density, but the space efficiency of a single railcar is closer to 100× that of a single-passenger car.

<comment><USER7> How close can you put trains together? For BART it is 24 trains max per hour in the tube and with a new switching and control system they claim they will get up to 30[1]. They go about 60mph. So two minutes between trains. Think about how much space that is: 2 miles between trains. Trains have to carry 100x more people otherwise they would not work at all. Imagine a freeway where cars had to be two miles apart at max density and only going 60mph. You would never see another car while you were driving.

The plan would to be able to pack cars at 100x the density of trains.

[1] [https://www.bart.gov/news/articles/2016/news20160502-0](https://www.bart.gov/news/articles/2016/news20160502-0)

<comment><USER13> If your signalling and switches are good enough, you can get to about ~30s headways. You can't really go faster than that because station dwell times will screw you. Scheduling this theoretical maximum is a daft idea, though, because any mishaps, and you have no spare time for recovery. Metro systems in practice usually end up being scheduled around 90-150s headway, so about 24-45tph.

There's one catch for trains though: most trains aren't dispatching single cars. Rather, trains on busy systems are generally 8 or 10 cars that move as a consist. If you factor that in to your example, you don't have 120s between cars, but rather 12s. That might sound like a lot, but you should have 3s between cars for safe driving anyways, and train cars carry well over 4× the number of people in individual cars. Even if every road car were full Jitney vans.

</comment></comment></comment></comment></comment></comment><comment><AUTHOR> Background info to the 'flame war' between Musk and Jared Walker (humantransit.org), which was the catalyst for this post, can be found here - [http://humantransit.org/2017/12/elon-musk- responds.html](http://humantransit.org/2017/12/elon-musk-responds.html)

</comment><comment><USER14> Why is boring the way to go? Here in L.A., we keep on widening the freeways and traffic is just as bad. Boring is just another channel that will get clogged once it's built. Mass transportation is a better way to go. Also,policies that make it desirable for people to work close to where they live will help.

</comment><comment><USER15> This is an opinionated blog, not necessarily wrong. But a bad idea implemented is sometimes better than a good one not implemented at all. And if you think I am a biased fan of Elon Musk, well you would be right.

<comment><USER16> The problem is money. Implementing the bad idea means there won't be money for the good idea. The bad idea also gains inertia, so it tends to stay around and worsen for decades (e.g. current auto-centric infrastructure).

<comment><USER17> Exactly! I'm Indian, and am tired of listening to the argument that India shouldn't build bullet trains, as hyperloops will obviously be real in 5 years. People think that hsr which will cost 80 billion dollars will be replaced by a maglev in pnuematic tubes for only 6 billion.

</comment></comment></comment><comment><USER18> Tunnel costs aside, I hadn't known that Musk's idea was to dig this for car use. I honestly feel that money would be put to better use just making a subway.

</comment><comment><USER19> I am on the same page with everyone here about the problems with car-centered infrastructure, but I think perhaps we haven't fully internalized the extent to which driverless, electric, shared vehicles will change this equation. It's an entirely new paradigm - and even more so if cheap tunneling can be achieved. While Musk's initial ideas about how to reduce the cost may be wrong, at least he's trying to! His initial ideas about electric cars and rockets weren't completely right either, because he was not an expert in those areas. He hired the most talented people in those fields and learned and changed over a period of years until he found what worked. It's a good algorithm, and it helps to be wealthy so that you can survive the failures and dead-ends without running out of money.

There are two arguments in the article: that Musk is going about solving the problem in the wrong way, and that he is solving the wrong problem altogether by trying to put cars in tunnels. The author may well be right about the first, but I think he/she is wrong about the second.

Let's think about everything that changes in a fully driverless, electric, shared, and tunnel-augmented vehicle ecosystem.

No more greenhouse gas emissions directly from vehicles (and none at all once the grid is fully renewable).

No more need to dedicate huge amounts of valuable land in our cities and suburbs to parking (cars can drive themselves to outlying areas to park or, better yet, can be shared).

Dramatically higher throughput because the human mistakes that cause congestion can be avoided (I recommend CGP Grey's video on the causes of traffic: [https://youtu.be/iHzzSao6ypE](https://youtu.be/iHzzSao6ypE) ). Driverless cars could drive faster and closer together, especially if they can communicate with one another.

Even more dramatic reduction in deaths and injuries as human error is removed from the equation.

Far fewer cars are needed in a shared-vehicle ecosystem. Most privately-owned cars are idle nearly all of the time, but they still take up space. Sharing vehicles allows us to reduce the amount of infrastructure needed for cars.

The average size of vehicles in the fleet can also be reduced. Right now people drive unnecessarily large vehicles because they might need the space a few times per year (annual family skiing trip, etc). These vehicles use up more energy and take up more space. In a shared-vehicle ecosystem, most of the vehicles can be something like a Smart ForTwo, with a smaller number of large vehicles that can be used by whoever actually needs them at any moment.

A shared-vehicle ecosystem could also include something like a cross between a scaled-up UberPOOL and a scaled-down bus: a Sprinter van (or equivalent) could pick up and drop off a dozen or so commuters who live in area A and work in area B. This improves the density of the system.

With affordable tunneling, freeways can go underground instead of destroying communities on the surface. This is one of the greatest evils of our car- centric infrastructure today, but with affordable tunneling we can abolish it.

Train-based mass transit will always be desirable for high-traffic corridors because it can be made far more dense. And despite this article's attempts to paint him otherwise, Musk agrees with this - he is in talks to build a Hyperloop between Washington and Baltimore, as well as a lower-speed mass transit "loop" in Chicago.

However, trains will never be all that we need for transit, because they just can't go everywhere. You will almost always need last-mile transportation at the endpoints, and there will always be routes that are not efficiently served by the train network. That's where cars (or whatever we call the things they evolve into) come in.

A driverless, electric, shared, and tunnel-augmented vehicle ecosystem is probably the perfect mass transit system.

<comment><USER13> > No more need to dedicate huge amounts of valuable land in our cities and > suburbs to parking (cars can drive themselves to outlying areas to park or, > better yet, can be shared).

Let's solve our congestion problems by doubling the amount of traffic on the roads! Sharing vehicles is a red herring; the peak traffic is caused by what's effectively a unidirectional, time-compressed mode of transit--once the car drops someone off at work, there's not enough trips nearby that it can do.

> Driverless cars could drive faster and closer together, especially if they > can communicate with one another.

Yeah, except for all those unpredictable pedestrians walking on the street in busy cities. You could drive faster and closer together only if a) every car were so wired, and no one drove manually and b) it's a limited-access highway with little conflicting movement. It might help I-70 in Kansas; it's not helping any street in NYC.

> A driverless, electric, shared, and tunnel-augmented vehicle ecosystem is > probably the perfect mass transit system.

No, it ain't. The way you get mass transit is you start packing people into tighter spaces. A single-occupant car, no matter how many times it's reused, no matter how tightly you pack them, is just way too much extra space. The twin Hudson river NEC tubes carry more capacity than the GWB, Lincon Tunnel, Holland Tunnel, Brooklyn-Battery Tunnel, and Brooklyn Bridge combined.

</comment></comment><comment><USER20> This article claims (1) that Elon Musk has no chance to achieve a 10x reduction in tunneling costs, and (2) that this reduction has already been achieved in other countries. This seems like a contradiction. If all his company does is catch up to the international state of the art, that will be a huge improvement for the US. And if he pretends that the 10x reduction in price is due to technological advancement rather than reducing profit margin and egregious waste, that will help city governments and competitors save face.

<comment><USER21> There is an extra claim that clarifies the contradiction: Elon Musk is trying to achieve that 10x reduction reducing the tunnel diameter. The author argues this won't work. What I understood is that, if the company indeed was trying to catch up with the international state of the art, they could actually achieve their goal, but the problem is that Mr.Musk is not only ignoring it, but calling them idiots.

So, I do not see any contradiction. But that is just how I interpret the article, I do not have a personal opinion in this issue.

<comment><USER20> Prediction: The Boring Company's first tunneling machine will be small- diameter, and each subsequent one will be larger, similar to the scale-up from Falcon 1 to Falcon 9 to Falcon Heavy, simply because that's the right way to do the R&D. But it would be very bad salesmanship to say "the first TBM is really small because that was easier for us", so instead he talks about the benefits of being smaller.

</comment></comment></comment><comment><USER22> The author has a bunch of numbers and stats written down which supports his claims but none of us would even bother to check up. Now the thing is do I trust what his guy says that Musk can't actually do it or do I trust a man that has already built a working reusable rocket to space and made a few electrical vehicles? If Elon says he's an idiot, i wouldn't bet against that</comment>


Tim Ferriss: Dealing with Haters - <AUTHOR> http://mashable.com/2010/04/29/deal-with-haters-tim-ferriss/

<comment><AUTHOR> The mashable post has a title of "Tim Ferriss: 7 Great Principles for Dealing with Haters" and I used the same title for the HN post.

It appears like someone else changed the title of my post to "Dealing with haters".

I understand why the title was changed and that pg once wrote that he doesn't like any column that starts with "n ways to ...", .....

but I have a general question - who has the authority to change titles of posts made on HN ?

</comment><comment><USER2> So, is Step #1 "Call all critics 'haters'"?

I'm thinking it's just bait in the title.</comment>


Distribute messages effectively in serverless applications - <AUTHOR> https://medium.com/epsagon/the-right-way-to-distribute-messages-effectively-in-serverless-applications-f427e4229e67 In-depth performance analysis of message distribution in serverless and Lambda applications.<p>"The right way to distribute messages effectively in serverless applications" https://medium.com/epsagon/the-right-way-to-distribute-messages-effectively-in-serverless-applications-f427e4229e67 <comment><USER2> The title is misleading. It should be followed with "...on AWS". It would have gotten less interest that way, and justifiably so.

I would have preferred either an analytic treatment of the subject, or an emphasis on open and free solutions, not what amounts to an advertisement for AWS services and vendor lock-in.

<comment><AUTHOR> Thanks for your the comment. The big majority of serverless users nowadays are on AWS. It might change in the future (probably not), but today the most relevant information regarding latency between serverless functions is due to Lambda and AWS services. I am not working in AWS, and my company serves both AWS customers and other cloud vendor customers.</comment></comment>


A month with the new iPad - <AUTHOR> http://www.bgr.com/2012/04/17/a-month-with-the-new-ipad/

<comment><USER2> "Despite conspiracy theories that run rampant on enthusiast forums and in the comments sections of news sites, this is not because of some elaborate scheme among the media and technology blogs to give Apple positive coverage."

Is that why only Apple computers appear in movies ?</comment>


Miller v5.0.0: Autodetected line-endings, in-place mode, user-defined functions - <AUTHOR> https://github.com/johnkerl/miller/releases/tag/v5.0.0 <comment><USER2> I had no idea what this was and the release notes don't make it obvious, so from the main github page:

> Miller is like awk, sed, cut, join, and sort for name-indexed data such as > CSV, TSV, and tabular JSON

[http://johnkerl.org/miller/doc](http://johnkerl.org/miller/doc)

[https://github.com/johnkerl/miller](https://github.com/johnkerl/miller)

</comment><comment><USER3> This is great - Now I just need to somehow remember this program when I next have a need for it...

<comment><USER4> Same. If they had called it something stupid like greptar, awkerator, or CHUCK NORRIS'S CSVIVIFIER I might actually be able to recall the name.

<comment><AUTHOR> [http://johnkerl.org/miller- releases/miller-5.0.0/doc/etymolo...](http://johnkerl.org/miller- releases/miller-5.0.0/doc/etymology.html), if that helps ;)

</comment></comment></comment><comment><USER5> Wow - looks brilliant. I'll have to try it. I've always wanted awk with a native understanding of csv, tsv, json, etc.

Does it have a binary for Windows?

<comment><USER5> /home/skanga/mlr.linux.x86_64: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by /home/skanga/mlr.linux.x86_64)

It would be useful to allow downloads of a binary that is compiled without any dependencies.

<comment><USER5> Also found a problem in the doc at [http://johnkerl.org/miller/doc/build.html](http://johnkerl.org/miller/doc/build.html)

The downloaded zip file does not contain a ./configure

$ ./configure bash: ./configure: No such file or directory

I needed to manually run "autoreconf -fiv" before I could run the ./configure command.

<comment><AUTHOR> Sorry, that is intentional but could be more clear:

[http://johnkerl.org/miller/doc/build.html#From_git_clone_usi...](http://johnkerl.org/miller/doc/build.html#From_git_clone_using_autoconfig)

<comment><AUTHOR> docs updated at [http://johnkerl.org/miller- releases/miller-5.0.0/doc/build.h...](http://johnkerl.org/miller- releases/miller-5.0.0/doc/build.html)

and, [https://github.com/johnkerl/miller/issues/131](https://github.com/johnkerl/miller/issues/131)

</comment></comment></comment></comment></comment><comment><USER6> How does this compare with similar tools like jq? I see CSV is a data input option.

<comment><AUTHOR> More here [http://johnkerl.org/miller- releases/miller-5.0.0/doc/why.htm...](http://johnkerl.org/miller- releases/miller-5.0.0/doc/why.html) but TL;DR is Miller handles several different file formats; jq is for JSON.

</comment></comment><comment><USER7> Well, TIL that there's an awesome new tool I need immediately :)

</comment><comment><AUTHOR> regarding binaries -- at [https://github.com/johnkerl/miller/releases/tag/v5.0.0](https://github.com/johnkerl/miller/releases/tag/v5.0.0) there are now macosx, linux i686 static, and linux x86_64 static binaries</comment>