Rails developers should learn React - <AUTHOR> https://medium.com/@hrishio/why-rails-developers-should-learn-react-5cd651eef6db <comment><USER3> I think I must have some sort of strange default wiring in my brain. I've developed code for over 30 years using many different languages, but when I tried to get into Rails about 10 years ago, I just couldn't get my head around it. Nothing seemed to click and go into place for me.

I ended up using Ruby, but via a Sinatra based framework called Padrino. It just seemed to make more sense to me.

The same thing more recently with React. I tried dabbling with it about a year ago, but it just felt like an ill fitting jacket. Couldn't get the hang of it. Now I've been playing a bit with Vue.js and seem so find that fit better for my old brain.

Oh, did I mention that I just turned 50. Perhaps it is a young person vs older person thing, or perhaps my synapses are just too wired in a certain way from decades of habit? I'd be interested to hear feedback from more _ahem_ mature developers out there to see if they experience anything similar.

<comment><USER4> Sounds like your sweet spot is more towards the library end of library/'light weight framework' vs the 'full blown framework' spectrum.

I don't believe it has anything to do with age.

<comment><USER5> Except Vue is a framework but React isn't.

<comment><USER6> It depends what you mean by "Vue". Vue itself is just the "View" part - <USER2> same as React.

While you can optionally use the official router and state management libraries, these are completely independent and unnecessary.

</comment></comment></comment></comment><comment><USER7> If there's one current technology that I wouldn't call _omakase_ , it would be React. I thought it would get better once redux reached a certain mindshare, but now there's a plethora of redux helpers, "best" practices etc. (Each of which seems to focus on a new and/or experimental JavaScript language feature)

Hey, I program Perl in my day job, but this is way too much Tim Toady even for me.

(And if "more money" were the only reason for technology adoption, there's probably more to be made in Enterprise Java development, at least on average)

<comment><USER8> Will you explain what you mean a bit more, please? I don't understand your analogies.

<comment><USER9> Omakase is in reference to [http://david.heinemeierhansson.com/2012/rails-is- omakase.htm...](http://david.heinemeierhansson.com/2012/rails-is-omakase.html)

<comment><USER7> And Tim Today is how "TMTOWTDI", i.e. "There's More Than One Way To Do It" is pronounced in certain circles.

</comment></comment></comment></comment><comment><USER10> I think this could be right but does one person can really handle both the backend and the frontend projects when the frontend becomes a first class project from day 1 instead of a kind of afterthought? In other words: a single developer can start a Rails+jQuery sugar web site in N days. Where he would be with Rails(API)+React after those N days?

Another question. I checked those rails+react gems. The pro is that they put everything inside the Rails project. The cons is exactly the same. Even in the case the same person is doing both jobs, shouldn't we acknowledge that they are two separate projects and work on them separately?

<comment><AUTHOR> Re: the gems, you're right. There are multiple approaches. Putting everything in Rails is the easiest to get started, but you can gradually separate React from Rails if your app needs it. I wrote about it here - [https://learnetto.com/blog/3-ways-to-use-react-with-ruby- on-...](https://learnetto.com/blog/3-ways-to-use-react-with-ruby-on-rails-5)

</comment></comment><comment><USER11> > Learning to use React will make you more money and a better developer.

Nice zeugma!

<comment><USER12> Thank you for teaching me what this is called. I always found it awkward.

<comment><USER11> No problem! And now, I shall take my coat and my leave.

</comment></comment></comment><comment><USER13> A lot of people say, learning React makes you a better developer. I think, what they actually mean, is functional programming.

<comment><USER14> Having glanced at react, angular(2), riot.js and vue - and being somewhat familiar with procedural, message passing, class/inheritance OO, functional and logic/declarative (SQL/Prolog) paradigms - I can't help but think that many of the developers that praise react do so because react introduced them to (a rather convoluted form of) functional programming, leveraging templates (the php paradigm) as a form of gateway (in the teaching/approachability sense) approach?

Because so far I just can't see react as the _best_ / _simplest_ approach to dragging REST[1] apps into the world of GUI COD(Code on Demand)[1] apps. Vue seems to strike a much more elegant balance, for example.

Especially in terms of life-cycle - I can't say I'd look forward to maintaining most complicated js stacks for say five years - with a horde of (rapidly evolving) dependecies, and often a plethora of build tools/steps that in general all do some rather simple, but incompatible source-to-source translation (templates to html, some js dialect to another, scss to css).

Vue certainly doesn't fix all of that - but it seems a bit more consistent and simple IMNHO.

But maybe it's just me. It'd be interesting to hear if anyone's actually made the jump from "react in anger" to "vue in anger" \- or vice-versa?

[1] [http://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm](http://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm)

<comment><USER13> React is simple while it's extremely complex at the same time; the library's concept is actually not that complicated and the API is relatively small. A lot of developers struggle when it comes to architecting, though. I know many "enterprise developers" that favor Angular (and Angular 2) because of the "out-of-the-box" character and the magic that happens under the hood.

Even with years of front-end experience I see these engineers fail at creating a reliable, documented and structured architecture. I guess, that's because they don't have time, budget or are no longer used to fiddle around and explore third-party projects (which is actually sad).

That is, getting started with Angular (or Vue, I expect) is easier and you will get something together faster. I expect the reason why React is so popular to be the mix you describe - although "templating" is a bit off, because JSX isn't templating in the PHP or JSF way.

From my personal point of view I can say, that I never regret the decision to switch to React (from Angular/Backbone.js). Especially the simple structuring (basically a component tree) is incredible simple compared to what you had in Angular 1. I am leading two projects with six digit LOC in the front-end and it is a pleasure to see how quickly new member can contribute, how clear the architecture is. Because there's no magic at all.

But that's all very personal, opinions differ greatly and I even know one developer who loves Angular 2. But he also has to work with Hibernate in the backend and compared to that everything is great - just kidding ;)

\---

Edit: I have read Fielding's paper for my B. Sc. thesis a couple of times and it's a great piece work. Should be a mandatory lecture for a lot of fields.

</comment></comment></comment><comment><USER15> Rails developers, ie web developers having appetite for nice, industrialization ready technologies, may prefer Ember...

</comment><comment><USER16> Honest question, is it really here to stay? What's different between React today and Backbone 4 years ago or Angular 2 years ago?

Does it solve all the problems of the predecessors?

People are already starting to talk about Vue like it's the new messiah.

<comment><USER17> I believe it is, the problem with both Backbone and Angular is that they treat UI development like it is still assembling a page and then sending it down to the client. They encourage monolithic controllers that are not discreetly tied to the UI. This was a natural outgrowth of web developers being comfortable with that model in transitioning over from the server side. The problem is, it sucked on the server side and it sucks on the client side.

In my opinion Vue does not solve the problem that react does as it does not black box the component and define you inputs and outputs. You can still write monolithic code-bases with it. It has a stronger component model than Angular did with directives but that component model can be circumvented. Worse yet two way binding is the crack of web dev. It gets you hooked on it's "easy" but as your code-base explodes you loose all trace-ability of when and how stuff changes and in my opinion, that is where the nastiest bugs surface.

If you actually get into the internals of react, you soon realize it looks a lot like windows UI programming in the old days. It is a return to principals that work when composing UI's from components. It's not a new concept, there have been many frameworks that tried it over the years (Dojo comes to mind) but react was the first one to hit critical mass and the first one to come along while most of the other tool-chain was available or fairly easy to build. The tool-chain makes it complex to get started but once you have a project going, it is far easier to maintain, and maintenance is where you really pay for your total cost of ownership.

Now all this comes with the caveats of project size, I personally work on large scale replacement of traditional application with web based applications and I think react (and it's tool-chain) is an excellent technology to manage a large code base that business apps require. However if all you are building is an informational website with a newsletter sign up form, it's just not the right technology.

<comment><USER14> It's not quite the (positive) impression _I_ get from react - but then I can't claim to be familiar with the internals.

I do think one of the reason _I_ struggle with react is because I still believe the Web is good for REST and Web pages/hypertext - and native is to be preffered for "applications". Conversely I think react is a pretty poor fit for "Web".

It still strikes me as crazy complicated compared to say Java SWING driven by a dynamic language like python (jython).

Might explain why I struggle to embrace it. I mean if you're worse than Smalltalk or Pascal/Delphi - the stack has to be backwards crap for GUI programming, right?

<comment><USER17> _the stack has to be backwards crap for GUI programming, right?_

Right, please dont take my praise for react as an endorment that the state of the industry is where we need to be. Rather I see it was a step forward.

For a little background I have been in the business since Tim Lee published his first page of what would become the WWW. I would venture to say the first webpage I wrote was in the first 100 and if not, certainly within the first 1000 pages developed. Before that I was a typical desktop developer (though I was young, so that career was short lived). Anyways, the reson I bring up my background is to make the following observation and that is, from the implementation of the common gateway specification I always felt like the web took a wrong turn. Not that we should not have an internet enabled application spec but rather we tacked it on to a distributed document specification. That being said, we tried and tried to build the "web" for applications but none of them won. Meanwhile, hackers continued to deliver applications via web pages, through ingenious hacks to the HTTP spec, CGI, and Javascript everything else floundered with the exception of Flash and that was killed by Apple (as well as it's abuse on web pages) and lack of open spec until to late.

So that brings us to where we are, the worst possible app UI technology won by attrition. The people building that technology spent a generation building entire UI's and then dumping them down to the client. When we finally broke ourselves free of the dumb client model, that style of development persisted as it was pervasive. Many attempts have been made to free web devs from that mindset with some pretty good frameworks (good in web measurement) but the build everything in one big controller mentality has been pervasive. React has been one of the first frameworks to free web developers minds of that model yet there continues to be efforts to go back Vue is one of those efforts. The reality is it takes more thought to think about a UI as reactive components that react to change as it's easier (in the beginning) to write procedural code in a monolithic controller and if a framework allows it that is where developers will default back to. Which in my opinion is a step in the wrong direction. I have seen web developers almost get several times and it seems we always regress back to controller based thinking the first to set it back was Backbone and the second was Angular.

React is certainly not the state of the art in UI programming, but it is the state of the art in web UI programming and knowing where we came from I am happy for that.

<comment><USER14> My impression is that vue is one of the first sane approaches to actual simple gui components for the web that works (delivering on the promise made by Web components).

Do you really feel the mess of multiple files react seem to dictate is much better? (Honest question, I haven't really used either in anger).

From what I can gather more radical approaches like elm and clojure script - seem promising, but are ultimately (for now) let down by the frameworks doing "too much" \- in effect working against the rich vms browsers have become.

I'd like to hear/see more of why you feel vue leads to (demands?) giant controllers as opposed to facilitate real re-usable components?

</comment></comment></comment></comment></comment><comment><USER18> <X> developers should learn <Y>

X - What you know

Y - Technology _du jour_

<comment><USER19> It absolutely baffles me that people still like to call React a "Technology du jour". It's ubiquitous today. It's _THE_ go-to front-end web development UI framework.

<comment><USER20> In your bubble that might be true.

In my bubble everyone is still using mostly ad-hoc jquery consisting half of snippets copy-pasted from stackoverflow.

<comment><USER21> What bubble is that may I ask?

<comment><USER22> I share a bubble with eterm, in a Fortune 100 enterprise. I have heard React mentioned once by a particularly engaged front-end developer, but everything I know of in production is JQuery, a couple Angular 1 apps, and a whole lot of horrible older stuff.

</comment></comment></comment></comment></comment><comment><USER23> I'd like to know where he's getting his figures about Rails from. As someone who left a Rails job (no React) fairly recently and has now switched to a React-centric role, while I was job-hunting there didn't seem to be a great demand for developers who knew React _and_ Rails. It's almost like they're suggesting that people from a Django background will be worse off, which I disagree with. Regardless, I do agree that Full-Stack Rails developers should learn React.

<comment><AUTHOR> I linked to one HN whoishiring thread in the article - [https://news.ycombinator.com/item?id=12846216](https://news.ycombinator.com/item?id=12846216) \- but if you look at some others, you will notice that a lot of companies are using both Rails and React. I've seen the same on other job boards. My own last consulting gig was at a company which was gradually porting its Rails view layer to React.

</comment></comment><comment><USER24> Serious question: what's the advantage of using Rails for the backend/APIs over Node or various Python frameworks?

I want to pick up a new backend stack and deciding between Rails and Go.

<comment><USER25> can you go pure backend? [https://robots.thoughtbot.com/how-we-replaced-react- with-pho...](https://robots.thoughtbot.com/how-we-replaced-react-with-phoenix)

</comment></comment><comment><USER26> I think the technology discussed and preferred at HN is often skewed towards heavily promoted SV based tech, large unicorn backed tech or a technology stack that currently pays well. And often is not reflective of the actual quality of the technology.

I don't think this is how how it should be in a tech focussed community. Things should be judged on merit not value added to resume or potenial for well paying jobs.

</comment><comment><USER27> Wordpress and jQuery have way more job postings.

But still React does not require extensive training, it has quite simple API and no quirky concepts, and you can start using it right away without "learning".

<comment><USER28> I am not so sure I agree. React is anything but easy when getting started. It takes work and an agreement to learn a certain amount of "modern" JS+Web tooling. If you come in with strong engineering and dev background, but not a lot of knowledge about modern web libs and frameworks it can be more than a small chore. I do agree, once you are into it, its design philosophy has a lot of appeal.

</comment></comment><comment><USER29> React developers should learn Rails too.. it'd make everyone's life easier.

</comment><comment><USER30> TL;DR It will make you more money. There are many ways to integrate React with Rails. To get started do the React tutorial and buy my book.

</comment><comment><USER31> I noped out of React the moment they made that clear they expect me to pass HTML as the JavaScript method attribute without quotes ;-)</comment>


Ask HN: What advice would you give to an early career software engineer? - <AUTHOR> <comment><USER2> Learn a best course for your career growth [https://www.slajobs.com/data- science-training-in-chennai/](https://www.slajobs.com/data-science-training- in-chennai/)

</comment><comment><USER3> Learn to Read The Fucking Code (RTFC). While it sounds obvious many developers often never really learn to read code outside their favorite approach, api, and framework.

</comment><comment><USER4> Learn to deliver value not code. Code is expensive to maintain and deliver. You should create as little as possible to get to your end goal.

Keep all your code as human readable as possible. If there are business rules related to your code make sure the comments explain the business rules.

Learn SQL, it's an amazingly powerful tool. Becoming very good at creating complex queries is very valuable.

Keep it simple, complex solution are only good when a simple one wouldn't fit.

</comment><comment><USER5> Leave now before you lose your sanity. Humour aside, there are a variety of things that you can do. The other comments given in response are a useful guide for you.

If you still want to be in the field then learn and keep learning about as many different areas as you can. When you get involved in a project, try to get a good handle on the problem domain subject matter, especially from those who are the problem domain subject matter experts.

Expand your study into areas unrelated to software engineering - it is irrelevant whether these be technical or non-technical areas. What this will allow you to build in yourself is an appreciation of a broad range of areas that make you a more competent human. Look at everything from gardening to astrophysics, medical research to woodworking, religion to science philosophy, raising animals to raising finance. There are so many different subjects that can help you.

When you broaden your appreciation of many subjects, you will enhance your ability to understand people and their problems and what they actually need for them to move forward.

Expand your appreciation of the very many different "technologies" that have been developed in the past for electronic computer systems. Study diverse areas in computer engineering, everything from languages, compilers, operating systems, networking, database technologies, computer graphics, hardware, etc., etc., etc. You don't have to be an expert in any or all of these areas. However, having a basic knowledge and appreciation will allow you to look at different ways to provide solutions to the vast array of problems that will come your way as you develop as a software engineer.

Keep in mind that software engineering is more an art than a science.

Finally, be prepared to change to a completely different career when the time comes and if you keep an open mind, you will know when that time comes.

</comment><comment><USER6> This is a well-paying job, so it's tempting to adapt your spending to the amount you're making. However, if you do so, you will have to do this job forever (well, until you retire). It's smarter to be very wary about lifestyle inflation and just save a lot of money. The freedom of having decades' worth of living expenses in your savings account is amazing.</comment>


Golang – encoding/csv: Reading is slow - <AUTHOR> https://github.com/golang/go/issues/16791 <comment><USER2> It seems pretty common for languages to start out with a relatively unoptimized CSV parser (if they have one at all) and then get a faster one contributed by the community once there's enough interest. Ruby had that happen with FasterCSV.

The Java comparison here seems inapt, because it doesn't do as much as the other two. It's just a naive "split on commas" implementation that wouldn't handle quoted cells. Really, if Go's CSV reader is only 200% slower than that and 50% slower than Python's optimized C implementation, that's pretty good already.

<comment><USER3> ignore this, I somehow missed that the poster specifically mentioned Python 3, which does have an encoding-aware CSV module.

~~It's also unclear which version of Python is being used, the Python 2 csv module is byte-based and encoding-unaware which can lead to unexpected behaviours.~~

Go's CSV package apparently only does UTF-8, and suggestions for speeding it up in the tracker is to just remove that and work on raw bytes (FFS)

<comment><USER4> > suggestions for speeding it up in the tracker is to just remove that and > work on raw bytes (FFS)

This is valid, because UTF-8 was designed to make this valid. The UTF-8 encoding of a comma, 0x2C (also the ASCII encoding of a comma), does not appear as a part of any other UTF-8 encodings. Same with the UTF-8 encoding of the double quote, 0x22. So scanning for 0x22 and 0x2C bytes, without stopping to decode other UTF-8 sequences along the way, will produce the correct result for a valid UTF-8 input string. Then you fully decode UTF-8 for the individual fields when needed (and if you're doing a string-compare for some target value that's already UTF-8, you never need to decode UTF-8 for that field at all).

<comment><USER5> That's cool about utf8 - what downsides are there to not treating utf-8 as raw bytes?

<comment><USER4> The big things are related to string length not matching byte count. strlen() is O(n) because you have to see how many sequences are actually in the string. More than that, splitting/slicing/indexing a string based on byte offsets doesn't work. For a 100-byte ASCII string, you're guaranteed that you can split it into two 50-byte strings and things will still work: you can output them separately, you can get the total length by adding strlen() on each half, you can find a character by doing strchr() on each half, etc. For a 100-byte valid UTF-8 string, splitting it into two 50-byte strings will possibly get you an invalid string, because a character could be split in half. So strlen() (even a UTF-8-correct strlen()) and strchr() don't compose. Outputting a string in two halves works properly as long as the receiver buffers its input, and is willing to wait to reconstruct a partial character.

A related problem is that in older UNIX terminals, pressing backspace would delete one _byte_ , not one _character_. Newer UNIX kernels have code in the terminal implementation to decode UTF-8 enough to backspace an entire character.

<comment><USER6> To clarify, Letting the length of a UTF-8 string in Go is O(1); it's computed and stored on the string header at creation.

<comment><USER7> To clarify even more: that length is the number of _bytes_ (or UTF-8 code units) in the string. It doesn't corresponding to the number of characters (which one may either consider to be Unicode codepoints, or more technically correct, Unicode grapheme clusters).

If you want to count the number of codepoints in a string (called "rune" in Go), then you need to do so explicitly: [https://golang.org/pkg/unicode/utf8/#RuneCountInString](https://golang.org/pkg/unicode/utf8/#RuneCountInString)

<comment><USER6> Touché

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER8> Python's csv module uses an internal module _csv which is written in C. So I'm not sure it's all that surprising that a Go implementation is a bit slower.

<comment><USER9> How about Java? It is quite funny Java version is much faster than Python version even when Python version does use C ? Something fishy going on.

<comment><USER10> The Java code is defective. It's not checking for double quotes. The CSV format allows for commas inside column values by surrounding with double quotes, and then you can also put double quotes within such values by escaping them as double double quotes. Fix those defects and the Java code will be a little slower.

With modern JVMs, Java can occasionally actually be faster than native compiled languages due to dynamic optimization at runtime.

<comment><USER11> A few minutes ago (and after your comment) one of the commenters of that issue tested against Apache Commons CSV and found that Java was 1.9x faster than Go, rather than the original 3x: [https://github.com/golang/go/issues/16791#issuecomment-24456...](https://github.com/golang/go/issues/16791#issuecomment-244562984)

<comment><USER12> actually the java one is still amazing since it's a cold jvm. when it would be a big file I would think that java is far ahead of both. with an aggressive jit. maybe pypy is faster than all 3 :D

</comment></comment></comment></comment></comment><comment><USER13> The Java code is _not_ a CSV parser.

I added the results of using Apache Commons CSV to the GitHub thread.

After using that, Python was actually by far the fastest. Hooray for performance sensitive code in C :)

<comment><USER13> FYI, I later went back and ran PyPy, which implements csv in pure Python. Even including start-up time, it was nearly at CPython speed.

</comment></comment><comment><USER14> On a related note, also the Go stdlib regex package is pretty naive and imperformant compared to a full blown and modern backtracking PCRE implementation (at 1/10 the LOC and complexity) - same thing goes for the reflection based JSON package (which is still kinda "fast enough").

The focus wasn't so much on performance but on initial completeness, good interface, versatility, clarity and simplicity - with faster or more specialized implementations left to the community.

There might be different opinions about that, but I personally like the approach of having a solid and ordered programming pocket knife - that also doesn't replace a Katana for cutting.

<comment><USER15> The standard regexp package, unlike PCRE, is actually a proper regular expression parser/matcher. Anything doing backtracking is at risk of exponential blowup and isn't safe.

[https://swtch.com/~rsc/regexp/regexp1.html](https://swtch.com/~rsc/regexp/regexp1.html)

<comment><USER14> which is exactly what I meant with less specialized but safe :)

<comment><USER16> It is also often much faster than pcre.

</comment></comment></comment></comment><comment><USER17> I wrote my own in Go that is blazing fast using bytes. I know the data is ascii so I was able to use that to my advantage.

<comment><USER18> I did the same [0]. It runs almost as fast as the Java implementation.

I'd be interested to see how yours works if you are willing to share it.

Edit: Plus one that is ~2x faster than Java by avoiding allocations [1].

[0] [https://gist.github.com/jmikkola/6ac96ad6d6f66e772c33ec41ed2...](https://gist.github.com/jmikkola/6ac96ad6d6f66e772c33ec41ed27f057)

[1] [https://gist.github.com/jmikkola/7ded8392226b7659c881f5540be...](https://gist.github.com/jmikkola/7ded8392226b7659c881f5540be539f5)

<comment><USER19> Note that internally Java represents strings as utf-16

<comment><USER20> Depends. The API for strings in java is mostly UTF16 but the latest JVM will magically use UTF8 as its internal representation.

<comment><USER21> Only the Oracle one, it doesn't apply to other vendors.

</comment></comment></comment></comment></comment><comment><USER22> Effectively one is comparing library performance here and not language performance. Granted, that line can get very blurry indeed, but in this case this says very little about golang the language and far more about a current implementation of one of the golang libraries.

<comment><USER16> It is kind of both; go doesn't allow some approaches in native go code that can make it slower than other languages. (I love go, but that is my experience.)

In this case the choice to use utf-8 everywhere, including in the csv delimiters, is making it slower.

<comment><USER6> This isn't what makes CSV parsing slow, there's nothing about Go that requires you to deal in UTF8.

</comment></comment></comment><comment><USER23> This may be a bit off topic but I've found sqlite to be quite a powerful csv parser. Once posted you can manipulate the data in lots of ways. When you're working with reports that need to get back into some sort of table format, it's very intuitive and easy for SQL people.

</comment><comment><USER24> Related to this, was a Reddit thread from a few days ago in /r/golang about improving a csv/reader. See: [https://www.reddit.com/r/golang/comments/50ncer/implementing...](https://www.reddit.com/r/golang/comments/50ncer/implementing_a_streaming_csv_reader_reduced/)

</comment><comment><USER25> Better than node.js

        import * as csv from 'csv-parse';
        import * as fs from 'fs';

        type Line = [string,string,string,string,string,string];

        const parser = new csv.Parser({});

        parser.on('data', (line: Line) => {
        if (line[0] === '42') {
                console.dir(line);
            }
        });

        fs.createReadStream('mock_data.csv').pipe(parser);

        $ /usr/bin/time node parse_csv.js
        43.61user 0.85system 0:45.61elapsed 97%CPU (0avgtext+0avgdata 60076maxresident)k

        $ node --version
        v6.4.0

Edit: Using fast-csv

        24.28user 0.20system 0:24.58elapsed 99%CPU (0avgtext+0avgdata 91780maxresident)k

<comment><USER3> csv-parse is hardly the only CSV parser for node, and it is by far the slowest: [https://github.com/phihag/csv- speedtest](https://github.com/phihag/csv-speedtest) (csv2json depends on csv- parse, so it's unsurprising that it's even slower)

<comment><USER25> I chose the most popular one on npm because Go and Python are using stdlib.

<comment><USER26> But you still wrote "faster than node.js" and not "faster that most popular npm module" (which aren't always of a great quality or performance-oriented).

<comment><USER25> Yup[1]. Sorry!

[1] [https://meta.wikimedia.org/wiki/Cunningham%27s_Law](https://meta.wikimedia.org/wiki/Cunningham%27s_Law)

</comment></comment></comment></comment></comment><comment><USER27> As someone notes on the bug, if you were rolling your own, there are some other things you could do--return a [][]byte that's a pointer to its internal buffer, only usable until the next row is read.

Making a version of encoding/csv that retains most of its features (custom delimiters, handling backslashes and quoting and \r) but streams like that would be a fun open source project for someone who likes Making Things Go Fast.

<comment><USER28> I did this a couple of months ago and got a >5x speedup. It's at the expense of dropping quoting though, so no commas or newlines can be in the input data.

[https://github.com/pwaller/usv](https://github.com/pwaller/usv)

</comment></comment><comment><USER29> Any CSV reader should be limited only be disk access right? I wrapped together a C++ program solving this problem and got 0.124 seconds. But that does not do quotations etc.

<comment><USER30> Good point. But assume if you run a series of tests on the same file, it's in RAM. (discard the time of the first run or two, assume data source - network, DB, file - makes access time moot)

</comment></comment><comment><USER7> On the CSV Game benchmark, the Go csv reader is around 10x slower than the fastest: [https://bitbucket.org/ewanhiggs/csv- game](https://bitbucket.org/ewanhiggs/csv-game)

</comment><comment><USER30> So, where's the Perl (+ CPAN...) version for comparison?

I guess "Nobody cares about your dead religion" :-)

Still, it would probably be faster, at the expense of being unreadable.</comment>


Show HN: Categorizing Hacker News with Machine Learning - <AUTHOR> http://hntopics.s3-website.eu-central-1.amazonaws.com/best <comment><USER2> nice! would be nice if you can share the source code :)</comment>


Quines and Multi-Quines (2005) - <AUTHOR> http://www.madore.org/~david/computers/quine.html <comment><USER2> The ultimate: [https://github.com/mame/quine- relay](https://github.com/mame/quine-relay)

<comment><USER3> mame wrote this quine for Bath Ruby conference, earlier this year:

[https://www.youtube.com/watch?v=oHh78U1AgEM](https://www.youtube.com/watch?v=oHh78U1AgEM)</comment></comment>


Apollo moon mission coder awarded Presidential Medal of Freedom - <AUTHOR> http://www.bbc.co.uk/news/world-us-canada-38076123 <comment><USER2> Previous discussion: [https://news.ycombinator.com/item?id=12991524](https://news.ycombinator.com/item?id=12991524)

</comment><comment><USER3> Coder, developer, writer? Why the aversion to the term software engineer, her title? (Criticising poster and the article)

<comment><AUTHOR> Good point. I just took the phrase I tweeted (as #coder is less cumbersome than #softwareengineer).</comment></comment>


The Internet is incomplete, says its co-designer, Vinton Cerf - <AUTHOR> http://www.computerworld.com/action/article.do?command=viewArticleBasic&articleId=9134246

<comment><USER2> I thought Vint Cerf was a german Wind Surfer.

</comment><comment><USER3> What does the other co-designer, Al Gore, think?</comment>


A VC: Fragmentation - <AUTHOR> http://www.avc.com/a_vc/2010/11/fragmentation.html <comment><USER3> What a load of crap. Represented there are 3 render engines, across however many browsers. Libraries like jquery and compass are making cross browser development easier by the day. Different screen resolutions don't matter - <USER2> consider only mobile and desktop, and target minimum resolutions per each. CSS3 is making it even easier to handle different screen sizes without much effort.

I can set my user agent to anything I want, but that doesn't increase fragmentation. As someone who has been developing web apps for over a decade, it's getting easier by the day. Browser features are converging. It's not the wild west where each browser is trying to starve out competitors with proprietary mutually exclusive features.

A large number of user agents does not mean growing fragmentation in browser targets.

<comment><USER4> I agree with cheald on this. Fragmentation is only a problem if it actually leads to additional difficulty of development for those platforms. And the irony of the current situation is that the "fragmentation" we're seeing now is likely responsible for the fact that web development is "easier by the day."

The worst situation, which we had back in the late 90s, was increasing domination by one player intent on subverting standards to push its own platform. Then innovative platforms get pushed aside for expediency's sake. Wrenching the web back from Microsoft resulted in many years of difficulty, but now we're in a situation where everyone, even Microsoft, must adhere to standards or be left behind. The very best outcome for web users will be for the market to stay as "fragmented" as possible, so everyone will be forced to stick with standards, and nobody ever gains a large share that can be used as a lever to distort the market.

</comment></comment><comment><USER5> I'd like to argue that fragmentation, in fact, is a positive move forwards, for web development. Ideally, the market becomes fragmented enough, such that developers are no longer targeting platforms, render engines, or screen sizes, but are instead, forced to (through lack of resources to QA on all the disparate environments) throw up their hands and simply develop for common standards.

This transition will, ideally, have a feedback effect in that any browser that wishes to see market uptake, will need to closely mirror the appropriate standards, instead of trying to get too far ahead of them.

The net effect should be an _easier_ world in which to write web applications - as you can now be reasonably certain that your web application will run properly on all platforms.

</comment><comment><USER6> I see diversity in the chart not fragmentation. It's a good thing that users are able to consume and interact with avc.com using the browser/os of their choice. I think Jeffery Zeldman and other web standards wonks would look at that chart and be proud.

</comment><comment><USER7> Given his previous throwdown for Android, and because he doesn't come to a point about the challenges facing web developers, I interpret it as a swipe against the existence of fragmentation as a developer challenge on Android.

I sympathize with feeling like one has to prove a negative (rhetorically, it's a bit like being a Mac user in the 90s and always hearing "there's no software for it!"), but this is a thin argument either way. As Android's growth ramps up, it'll be lucky to have as small a set of differentiated targets as there are major browsers, or as deep a bench of strategies to cope with them.</comment>


Show HN: A cross-platform c/c++ build utility based on Lua - <AUTHOR> https://github.com/xmake-io/xmake <comment><AUTHOR> xmake is a lightweight cross-platform build utility based on Lua. It uses xmake.lua to maintain project builds. Compared with makefile/CMakeLists.txt, the configuration syntax is more concise and intuitive. It is very friendly to novices and can quickly get started in a short time. Let users focus more on actual project development.

It can compile the project directly like Make/Ninja, or generate project files like CMake/Meson, and it also has a built-in package management system to help users solve the integrated use of C/C++ dependent libraries.

</comment><comment><USER2> Interesting, what is the difference between it and other build tools, such as cmake, meson?

<comment><AUTHOR> you can see [https://tboox.org/2019/05/29/xmake-vs- cmake/](https://tboox.org/2019/05/29/xmake-vs-cmake/)</comment></comment>


Tesla will fire every contractor not vouched for by an employee - <AUTHOR> https://electrek.co/2018/05/06/tesla-brutal-review-contractors-firing-vouching-employee/ <comment><USER2> Does anyone know if Musk's language & tone is always like this internally? One has to appreciate the bluntness and the lack of Corp speak. OTOH it sounds pretty stalinistic. I wonder how sustainable that is..</comment>


Heroku Down... Again - <AUTHOR> http://heroku.com

<comment><USER2> If you mean the web page at heroku.com, I'd assume that was only momentary while they gave it a facelift. It's up fine for me and so have my heroku apps which i've been using all day.

status.heroku.com also seems clean.

I think you just caught them in a web push.</comment>


Calculate the Size of a Folder/Directory using .NET 4.0 - <AUTHOR> http://www.devcurry.com/2010/07/calculate-size-of-folderdirectory-using.html

<comment><USER2> Why is this here again? Some kind of advanced "Directory Enumerator" tech that we haven't heard of?

      du -h | grep -v '/' | gawk '{print $1}'

<comment><USER3> Mh, I always use _du -sh_ , are there any reasons (compatibility?) to grep the output instead?

<comment><USER2> with gawk in the pipline, you can stream the results over fiber to a load- balanced cluster of WEDU (Windows Enterprise Disk Usage) appliances.</comment></comment></comment>


Robert Scoble calls G+'s "ghost town" reputation "unfair ... simply wrong" - <AUTHOR> https://plus.google.com/111091089527727420853/posts/bK2ZHJaSnh4 <comment><USER3> Robert Scoble makes his money by having lots of followers, so obviously follower counts matter to him, but they have absolutely no bearing on whether or not a site is a "ghost town" or not. I can follow Robert Scoble on G+ and NEVER interact with any of his content, so can 1,500,000 others (which is what has happened) and somehow that _isn't_ a ghost town?

If you want real hard evidence that G+ is a ghost town (in that nobody uses it):

Robert Scoble posted a video yesterday: [https://plus.google.com/111091089527727420853/posts/ToU5ESJY...](https://plus.google.com/111091089527727420853/posts/ToU5ESJYuub) and that video got 778 views (<https://www.youtube.com/watch?v=rcLhi1VUbmc>).

Out of 1,500,000 "followers" on Google+ less than 1,000 take notice of his posts. That's even worse than Twitter.

<comment><USER4> I think you're putting too much value on that one data point in order to prove the "ghost town" theory. Scoble actually gets crazy amounts of interaction with his posts. Just look at how many comments each of his posts get, not to mention that every dicussion is on point and "right there". And it's not just quantifiable interaction like comments. For example, I generally don't comment on posts from people I don't know but on an averge day even I will skim through whatever latest thing Scoble has written...because he's Scoble you know? His is a kind of self-fueling notoriety. I think it's definitely arguable whether G+ is a ghost town or not, but Scoble is probably the last example you should use to argue the pro-ghost-town side.

<comment><USER3> Photo gallery from the Golden Gate National Cemetery, +295 and 57 comments.

Photo gallery from his son's graduation, +135 and 31 comments.

Video (that I posted above), +107 with 17 comments.

Video of "Engagio", +40 with 8 comments.

He has 1,500,000 followers and his best post gets ~300 +1's and ~60 comments, the average post gets ~100 +1s and ~30 comments. The only reason the post about G+ not being a ghost town is popular is because it was spread around the internet (eg: HN) and it's flame bait...

> on an averge day even I will skim through whatever latest thing Scoble has > written

And will you actually pay attention to it? Consume the content? If you're not watching the videos he posts or reading his writing you're not engaged. Less than 1,000 people out of 1,500,000 people clicked on his video, they didn't even need to watch it for a view to count, just _click_ on it. How can you claim for one second that he has an engaged audience when less than 0.05% of his audience click his video. I have better engagement than that on Twitter and Facebook and I'm some no-name internet guy.

If the engagement levels for posts are less than 1% I don't think it can be considered active at all. Follower counts are meaningless, I think the majority of "Social Media" sites get it wrong: someone that followed me 4 years ago probably isn't still (actively) following me today, but if follower counts only reflected actively engaged users people like Scoble would cry because it doesn't validate their whole "I'm super popular hire me" shtick.

I've said it before, Scoble is a part of the Mashable type of Social Media, people subscribe that don't really _care_ about what he says they just follow/subscribe because of what he represents: Social Media. They feel that to be relevant in Social Media they have to follow Scoble, just like they have to read Mashable. They don't care about them or engage with their content, they just subscribe so they can say they do. Mashable has 2.6m Twitter followers, tweets an article and gets 6 comments. Worthless.

<comment><USER5> I tend to agree that someone like Scoble does not form the best basis to cast judgement on how engaged G+ is (even though he proves that G+ is not a ghost town). Apart from his other talents and selling points, he has also benefited from his being an early adopter of the platform. As such I'd say a large number of his followers don't hang on to every word or comment he may make.

On the other hand look at the stats of true tech luminaries like Linus Torvalds: thousands of likes, hundreds of reshares and comments per post. Torvalds is the kind of guy - with nothing technologically left to prove - that the G+ community enjoys following very closely. There is no way your G+ stream can be a ghost town if you follow people like Torvalds and far lesser luminaries (but greatly accomplished folks) on G+.

</comment></comment></comment></comment><comment><USER6> G+ feels more like going to some sort of gathering where everybody is off in groups talking quietly amongst themselves. It's not empty; it's just not very interesting if you don't know anybody there.

For example, the developers and researchers of compilers for functional programming languages are there and active, but scrolling through the posts, I've noticed that all of us (myself included) tend only to make the posts visible to other compiler developers.

Trying to think about why that is, I can only assume it's because of the background knowledge problem. If I want to talk about random things I'm doing in our compiler to this group, I can just type up a thousand words. If I wanted to do it publicly and have it understandable, I'd have to make a Matt Might-style blog post, and the only way I would do that is if, like him, I was already preparing the contents for undergraduate consumption. Or maybe if it was content I had prepared for a paper that was too introductory and had to be cut due to page restrictions.

<comment><USER7> True story. I have about 300 people in my circles mostly engineers and the interaction is great. I'm talking about people involved in FOSS (system programmers, embedded developers, devops mostly).

I have no idea who R. Scoble is and just by peaking at his profile I have to say that I have no interest in following him. This is probably why most people that use Twitter don't fit in the G+ space. As far as I'm concerned most technical Twitter users are Web developers, the SEO (crap) crowd, designers, social media whores, guys posting about hipster bands. Not to generalize but that's how I see it and the reason Twitter is a ghost town for me, Facebook is useless and G+ is awesome. To each his own.

<comment><USER8> There's plenty of technical people active on Twitter, but they don't tweet to start a conversation, because Twiiter was never actually menat for that. It's a one-to-many broadcast channel, there are producers and there are consumers. G+ on the other hand is more of an equal playing field, it's being positioned as an interaction platform, so it's better fit for discussions and what not.

</comment></comment></comment><comment><USER9> I don't use G+ for anything other than spamming links to my blog. Interestingly enough I have almost 2k "followers" despite never engaging with anyone beyond the comments on my blogs.

Twitter, on the other hand, I spend my whole days there. It doesn't get as many clickthroughs to my blog, but it's magnificent for chatting with people and keeping in touch with interesting people I would like to get to know (rather than those I already know).

As for FB ... there is still nothing better for organizing group events between scatterbrained friends.

<comment><USER10> _> Interestingly enough I have almost 2k "followers" despite never engaging with anyone beyond the comments on my blogs._

Are you part of the HN circle, by any chance?

<comment><USER9> Uhm ... I might be, how do I check?

<comment><USER10> Looks like you're in part 2: <https://plus.google.com/106419647632534512037/posts>

The circles were generated from a list at <http://hngp.axxim.net/>, but that seems to be offline now.

</comment></comment></comment></comment><comment><USER11> Pretty much every "G+ is a ghost town" thread I've read includes the caveat "unless you're Robert Scoble". Hilariously applicable at this moment.

<comment><USER12> Or a photographer, apparently their community is huge there:

[https://plus.google.com/u/0/109572812341174932454/posts/5D2y...](https://plus.google.com/u/0/109572812341174932454/posts/5D2ymHLVkXE)

<comment><USER13> Yeah, G+ had a really great, vibrant photography community. People like Trey Ratcliff have really done an amazing job getting people engaged there.

</comment></comment></comment><comment><USER14> Off-topic: I don't use G+ (or Facebook, for that matter), but I've always wondered what's with its disgusting, un-humanish urls. It's Scobble's (I presume): <https://plus.google.com/111091089527727420853>

What the hell is that? If you wanted to share you G+ profile (say, to a friend in a bar) would you have to spell this god-knows-how-much-long id, or is there a better way (like, plus.google.com/robert_scoble) that I'm not aware of (of course, without using url shorteners)?

<comment><USER15> It is odd to neglect readable URLs, especially considering they actually had that before on profiles.google.com.

<comment><USER16> I thought the story was that they were readable User IDs until fairly late in the dev process, when they realized they were giving away what people's gmail accounts were.

</comment></comment></comment><comment> k-mcgrady I like G+ but it is a ghost town. If you follow enough people you will get good content but interaction is terrible. In the first few weeks I built up over 1500 'followers'. If I posed a question I would get responses. Now, nothing. If I ask a question I may get, at most, one response a few days later. Compare this with twitter where I have under 300 followers and get several responses instantly.

I also find that to regularly get new content on G+ I have to follow lots more people than I do on Twitter. People seem to post a lot less frequently on G+ (a lot of people only post a few times a week). This is a problem for me because unlike Scoble I don't want to manage circles with tens of thousands of people. Eventually that will get unmanageable and unlike Scoble management of my social media accounts isn't part of my job.

<comment><USER17> I find I get much, much better engagement if I spend time in someone else's comments.

As for circle management, I've never had an issue with that. I follow 2k people and I just wait for someone to get annoying before I uncircle them. If they're never annoying, don't post, or whatever, then I don't notice and it's no skin off my back. I just circle people with interesting streams and just watch it come in. I haven't adjusted my circles since August or so when I made one to share to.

</comment></comment><comment><USER18> Social bloggers as Scoble are generally useless but this time he raised an interesting point:

Twitter _is_ the ghost town not G+ and he brought some impressive figures proving that.

I don't know if he's right, I reduced time in all networks but Twitter is slightly before G+:

\- FB 1-5 times/day

\- Instagram 1-5 times/week

\- LinkedIn 1-2 times/week

\- Twitter once per week (at max)

\- G+ never

\- Path never

I think his large number of followers on G+ is a result of his very early engagement on G+ spamming the network around the clock. Moreover, the Twitter audience is not a perfect match for Scoble—his posts have a special style, verbose and opinionated and obviously don't appeal to the typical Twitter user (tech and Internet savvy who are often better informed than Scoble himself).

<comment><USER19> I use Twitter in a very different way than Facebook though, and for very different reasons. I follow a small group of smart, funny or creative people that tweet really interesting stuff, but personally I tweet only a few times a month. Am I alone in that I don't use Twitter as a social networking tool, and more of a broadcasting-listening tool?

To anyone looking at my twitter, it might seem extremely quiet and ghost- townish, but I am using Twitter much more than Facebook and getting more from it, albeit passively.

<comment><AUTHOR> Twitter is, for me, very much a "right now" tool. I used to read up on missed posts, but now I just follow too many people. So I look at the recent history of a couple of lists, then look at even less of my main stream for interesting conversations/links.

FB/G+ feel far more involved, even if I'm doing the same thing. I chalk this up to the conversations being longer, and more in depth/nuanced.

</comment></comment></comment><comment><USER20> My G+ account really is a ghost town. I would close it if I could figure out how to without killing my gmail etc.

My twitter account /looks/ like a ghost town, in that I never do anything on it myself. But I'm using it to follow a bunch of feeds I'm interested in; I check it regularly. I'm not sure how an outside observer could tell the difference between the two, other than by counting logins - but for me, twitter is useful, and G+ is dead.

<comment> k-mcgrady You can close your Google Plus account in settings. I did it a few months ago. I later reactivated it and it restored my account with all my followers (it had removed all my old posts and profile information though). In settings it will warn you exactly what Google services will be affected by closing your G+ account.

</comment></comment><comment><USER21> G+ has far less updates that facebook on my account, and that's a feature !

People there don't post they have been wasted yesterday or they ate a mayonnaise sandwich. They share relevant news. I don't check facebook much anymore...

</comment><comment><AUTHOR> I've long sworn off Facebook, and have always been rather active on Twitter. I just hope G+ gets a good, functional mobile layout. I'm not sure how I feel about the current one yet.

Everyone I know is on Facebook, and nearly everyone is on Twitter (with more joining just this week.) I have a large group of friends from a web community that all joined G+ at the same time, so, it's a completely valid social network for me, without having to do any work of reorganizing friends from high school who add me.

Basically, for me it's a second chance at adding people on a social network, and this time, with easier tools, I'm getting it right.

<comment><USER22> Did you see the new iOS and Android versions that launched last week?

<comment><AUTHOR> I did, thanks! That's the one I'm not sure if I like. The previous one mundane, but functional. The new one trades in the conversational flow for ease of interaction (+1-ing, sharing, more options from the stream.) It's an interesting take, and I'm curious how I'll like it, but I haven't decided yet.

</comment></comment></comment><comment><USER23> for everyone that says g+ is a ghost town, you must not be finding people to follow. The entire point is circles. I'm on g+ everyday, and even has become my bookmark and evernote replacement, ill post to myself.

<comment><USER5> This is often the problem. Unless you are some kind of star in your own right, the odds are that almost nobody beyond random followers are going to include you in their circles. That basically leaves you with the option of circling others in order to have anything meaningful in your stream. Here again you are more or less guaranteed (in current conditions) that next to none of your friends/family is going to be on G+. So you are left with the option of circling strangers only, which is not what you would normally do on a social network.

The great thing about G+ is that in this large group of strangers there is a huge number of tech (and other) luminaries who are actively engaging on the network. Circle them and you basically get a stream of comments, thoughts, links and pictures that are really worth following. I've only circled about a 100 or so of these "strangers" and I've just loving the interaction. Sure, nobody (or very few) +1 anything I have to say, but that doesn't bother me as I'm far more interested in what they have to say. No way you can call it a ghost town when you engage in G+ this way.

On the other hand, if you circle nobody then it does become a ghost town. But it would hardly be fair to call it one.

<comment><USER24> I wonder if that's part of the point. On other social networks you're connecting with friends and family. On G+ you're circling strangers whose thoughts you're interested in. I think I'd prefer to mine the latter if my goal was to make better search results for you.

<comment><USER25> The problem is that G+ seems to only get the people who are technology driven. Even then it's a fraction of that community.

The 'average Joe' doesn't have any use for this. They can follow their friends on Facebook or follow their favorite celebrities on Twitter.

</comment></comment></comment></comment><comment><USER26> Personal take: G+'s circle system has significant downsides as far as following people goes, because you can build a significant audience on G+ … and have no idea where it's coming from. I have 16k followers, most gained in the past few months, but I haven't updated regularly since January. There's no way to track this, either. That to me suggests weaknesses in the circle system.

So, when I read Scoble's comments about having more followers on G+ than anywhere else, I believe it … and I also believe more than half of them aren't regularly using G+, either.

</comment><comment><USER27> G+ is more about building an interest graph than FB, don't use it as a vanity/foodiate platform and it won't be a ghosttown. I'm mostly on it for link following and I'm getting super high quality science and tech links in my feed. the ghost-town characterization is way off base.

<comment><USER28> Completely agree, only problem is that your interest feed relies on the people you subscribe to keep their posts related to the interest you associated them with.

But if the scientists in your NASA circle want to post vacation pictures, you can't filter that out. You can try and get yourself included into their "Space News Only" circle, which would solve the problem, but badgering people who don't know you to do something for you, even little like this, isn't an optimal solution.

</comment></comment><comment><USER29> For me FB is the proverbial ghost town - because I am no longer interested in the contents of activity feed I get on FB :-p . I am sure my opinions don't matter much, after all, I don't have thousands of friends on either of the two services.

But for whatever its worth, I've started to really like G+ since I've started to follow Linus Torvalds and Stephen Kinsella on G+. I like the drag-drop UI that "Circles" tab/widget implements and I love the posts that Linus shares with the public. I don't know if Linus has/uses FB too, but I don't care.

I think that if Google runs G+ long enough and has cool & intelligent people using/developing it, G+ will not do too bad.

</comment><comment><USER30> The people that I see on Google+ use it in a very different way than the average user uses Facebook. It's much closer aligned to Twitter than Facebook.

The average Facebook user uses it as a tool to keep in touch with family and friends. Google+ is a ghost town for most new users, a few of my non techie friends joined Google+ when it first launched and haven't been back since because their friends are still using Facebook. Scoble and most Google+ users are outliers. The majority of users want a social network to share with their friends and they are not interested in following a bunch of random people.

</comment><comment><USER31> hi, just as a note: i can never view Roberts S. posts - because they are not public, but shared with his circles - and I'm not one of them (i don't want to, i even once - longlongtimeago - wrote a r.s. filter greasemonkey script <http://www.facesaerch.com/widget/rs-filter.user.js>). so would be cool - <USER2> it's really newsworthy - to post a pasteboard copy. thx.

<comment><USER32> That doesn't make any sense. All of his posts that people see are posted to public.

Posting to your circles is the lists that you have created, he's not curating lists of >1million people. There isn't any way to limit the visibility of a post just to people who are following you on google+

<comment><USER31> you are right. an anonymous browser tab could access the post. my g+ logged in browser tab couldn't. means: r.s. blocked me. i'm fine with it. i remember i once posted a lengthly comment (with lots of numbers, figures using an advanced statistic methodology called arithmetic) on one of his posts.

so much for googles open web approach: "public" != publicly available if you are logged in to google+

<comment><USER22> [http://googleplus.wonderhowto.com/blog/new-google-12-tips- ma...](http://googleplus.wonderhowto.com/blog/new-google-12-tips-master- basics-get-you-addicted-0128716/)

Item 2 there claims blockers can view public posts, which seems the intended behavior.

<comment><USER31> then robert must be a superuser && superblocker (or it's a bug, i doubt it, but also i do not care)

</comment></comment></comment></comment></comment><comment><USER33> Scoble has 1.5 million followers on G+? I submit that followers on G+ are EASY.

I've been using Livejournal since 2002 and have about 350 followers. I think maybe a hundred of them are still commenting on my posts intermittently. (Yeah, I still use LJ.)

I got on G+ when it came out. I have 232 followers. I think maybe three of them reply to my posts. Sometimes. (Not that I post to G+ a lot but still.)

That's a hell of a lot of followers in about eight months versus like 5-6 years of LJ being a pretty active place. It's not the 1.5mil Scoble has but it's a hell of a lot for someone who never posts, but seems to see a new follower every day.

I would also compare and contrast the age and follower count of my Twitter account, but I'm pretty sure a large percentage of my nearly 600 followers there are spambots or marketroids, and I don't feel like guesstimating how many actual humans are following my tweets.

</comment><comment><USER34> I think some of the issues around this come down to the way we conceive of these networks (well, and semantics.) They're all called Social Networks, but that should phrase be construed very broadly. If people are using Facebook to keep in touch with a small circle, Twitter to a broad audience, and G+ as an RSS reader with pictures and a +1 button, then they aren't the same thing at all. Feet, bikes, and cars are all kinds of transportation, but they're thought of differently. We don't talk about the failures of feet because people don't walk enough. It's how and why these things are being used that defines what they are.

Perhaps if Google embraced (and re-branded) itself as a content network/social content network/RSS reader with glowing bells things would be understood (and talked about) differently.

</comment><comment><USER35> As someone else mentioned, I find the signal to noise ratio to be much higher on G+ than facebook or twitter. I mainly use these tools for two purposes, keeping in touch with friends and following interesting people and topics.

Facebook wins for the former as most of my friends still aren't on G+ or twitter, however, most of the activity is uninteresting checkins and the like.

With twitter, I have followed people I am interested in for topical content, but I mostly see personal tweets and find myself quickly scrolling through them for an occasional interesting link. Also, the interaction is next to zero except for retweets. I don't think the medium lends itself to much more than light banter.

In contrast, on plus, the topical content is more informative often with interesting comments.

</comment><comment><USER36> I use G+ more frequently than FB and I enjoy better signal/noise ratio in my G+ streams. I suppose both FB and G+ miss interest-based approach which makes them still more noisy than they should be.

</comment><comment><USER37> Would you rather have 200k followers who see everything you say (twitter) or 1.5M followers who never login and check out what is going on? Simple choice for me.

This is also the natural evolution of social networks - when they start the social media guys are the most followed because they are the most active, then they are eclipsed by true celebrities. Scoble added 30k followers on twitter in 3 months - Howard Stern added 150k in the same time frame, Rihanna added 5M followers.

</comment><comment><USER38> Have they made it easier to follow say someones tech updates only. I remember early on there was the issue that circles didn't work when you were circling someone but they weren't circling you, so you would get their public updates, but that lost the ability to segregate to what people are interested in.

</comment><comment><USER39> I have no doubt his feed, or whatever Google calls it, is very active. Problem is mine is not. Last time I checked the newest update was almost 3 months old. Which experience is more common? Mine or his? He's stoking social media nearly 24x7 and is a fairly high profile tech something or another.

</comment><comment><USER40> It's a _really big_ ghost town.

</comment><comment><USER41> My G+ feed isn't very active, but the signal to noise ratio is higher. That's fine by me.

</comment><comment><USER42> I'm not really acquainted/read about Robert, but it seems like he is defending his earlier positive take on Google+.

I, like most others take an opposite stance on the matter that G+ indeed is a ghost town.

Bashed Google+ a couple of days after it was launched : <http://on.fb.me/LtMkTN>

</comment><comment><USER43> Of course, nobody _heard_ his comments because he posted them on G+.

</comment><comment><USER44> Can't read his post, safari crashes on iPad :)

</comment><comment><USER45> Why are people listening to Scoble? Why do we see him posted here only when he says that G+ is not desert?

(of course it's not desert for him: his follower count is the closest approximation to G+'s total user count)

</comment><comment><USER46> It's the result of PR attacks and sadly they seem to be working.

Some of those writing are just parroting PR pitches and some just seem to depend on their limited experience with he service.

Also considering that the number of active users is but a fraction of the overall number of those who signed up (yet still a considerable amount) it's not fair to divide active minutes between all registered users. It might be a "ghost town" in comparison to Facebook but so is every other social service the tech blogs seem to be paddling, it's just that + is a bigger target for PR attacks.

<comment><USER47> Besides PR campaigns, I wonder if another source of hostility to Google+ is a normal human reaction to the fact that social networking, as we currently know it, is a natural monopoly.

A lot of people are in the situation where they're going to have to be on Facebook no matter what (hello lock-in), and they'd really rather not have to be on Google+ at the same time. It'd be all the annoying parts of social networking doubled, plus the hassle of maintaining two copies of a lot of information, with no significant advantages.

I think a lot of people who disparage Google+ would have no major objection if it could quickly take over from Facebook and become the new monopoly. However, by this point it seems unlikely, barring a major event.

A world where social networking services could interoperate, sort of like how we have numerous telephone companies but one global namespace of phone numbers, would be interesting.

</comment></comment><comment><USER48> How much google paid him to write that ? :P</comment>