Go 1.8 Release Notes - <AUTHOR> https://beta.golang.org/doc/go1.8 <comment> grey-area OK, so now this is out, how about we discuss what is actually in this release!

The sort pkg now has a convenience for sorting slices, which will be a nice shortcut instead of having to define a special slice type just to sort on a given criteria, you can just pass a sorting function instead.

HTTP/2 Push is now in the server, which is fun, but like context might take a while for people to start using in earnest. Likewise graceful shutdown. Is anyone experimenting with this yet?

Plugins are here, but on Linux only for now - this will be interesting long term for things like server software which wants to let other compile plugins for it and distribute them separately, presently that has to be compiled in to the main binary.

Performance: GC times are now down to 10-100 microseconds, and defer and cgo are also faster. Compilation time improving but still not close to 1.4.

GOPATH is optional now, but you still do need a path where all go code is kept, perhaps eventually this requirement will go away - GOPATH/pkg is just a cache, GOPATH/bin is just an install location, and GOPATH/src could really be anywhere, so I'm not sure if long term a special go directory is required at all if vendoring takes off, then import paths could be project-local.

There's a slide deck here with a rundown of all the changes from Dave Cheney:

[https://talks.godoc.org/github.com/davecheney/go-1.8-release...](https://talks.godoc.org/github.com/davecheney/go-1.8-release- party/presentation.slide#1)

Finally, as someone using Go for work and play, thanks to the Go team and everyone who contributed to this release. I really appreciate the incremental but significant changes in every release, and the stability of the core language.

<comment><USER2> > The sort pkg now has a convenience for sorting slices, which will be a nice > shortcut instead of having to define a special slice type just to sort on a > given criteria, you can just pass a sorting function instead.

So you can do this now:

      sort.Slice(people, func(i, j int) bool { return people[i].Name < people[j].Name })

But what I think most people want is.

      sort.Slice(people, func(p Person) string { return p.Name })

Since that lends to things like this:

      //Sort first by age and then by name
      sort.Slice(people, func(p Person) (int, string) { return p.Age, p.Name })

<comment> grey-area They have sort.SliceStable for this I think, it's not much more verbose and is arguably clearer and more flexible as you can define exactly how the keys are compared (for example perhaps you want to downcase names before compare).

Compare the old way to do a multi-key sort:

[https://play.golang.org/p/NJTVoeQkMt](https://play.golang.org/p/NJTVoeQkMt)

With the new way:

[https://play.golang.org/p/6ReQxHT1lR](https://play.golang.org/p/6ReQxHT1lR)

it's a lot simpler and clearer and doesn't require a special slice type (as it did before), but lets you sort on multiple keys if you need to. Presumably sort.SliceStable is a bit slower and that's why they have a separate sort.Slice.

Note though that the old way using slice types does let you do something neater at the point of use at the cost of more setup:

        OrderedBy(language, increasingLines, user).Sort(changes)

which in some ways is more similar to what you desired?

Seeing this sort of hack added does make me think containers are the one big weak point in Go at present, they are a bit ugly, and special cases abound (append,delete,range,sort) - maybe in Go2 they could have something neater, more generic and more extensible. My hopes for Go 2 as a really uninformed language noob are a tidy up of the stdlib, variants and more elegant ways to manipulate containers (I won't say generics!), I would love to see things like magic comments and struct tags disappear too but that'll never happen. I'm pretty happy with the language otherwise, and would actually like to see Go get smaller and simpler over time.

<comment><USER2> ah, SliceStable does make it a little easier at least. I'd say you could just wrap that in a function, but you can't easily do that.

Sorting is probably the one area where I really miss generics in go.. because comparing and sorting IS such a generic thing to do. In my head I think, "Oh, so I just want to do

      hosts.sort(key=operator.attrgetter("os", "version", "address"))

and then proceed to write the 20 lines of code that lets me do that :-(

<comment> grey-area Just thought of one more way to do this which is neater - define functions on a simpler slice type:

[https://play.golang.org/p/0YcxA-Ufs-](https://play.golang.org/p/0YcxA-Ufs-)

So your sorting becomes quite neat:

        sort.SliceStable(changes,changes.byLines)
        sort.SliceStable(changes,changes.byUser)

I think I might use it this way (haven't actually used this in a real app yet).

<comment><USER3> Perhaps something combining all of the things you've made use of? [https://play.golang.org/p/8RDqjjZDB8](https://play.golang.org/p/8RDqjjZDB8)

</comment></comment></comment></comment></comment></comment><comment><USER4> I'm wondering if "The Go Programming Language 1e" (Donovan / Kernighan) is still relevant enough to be used as a first book for self teaching.

[https://www.amazon.com/Programming-Language-Addison- Wesley-P...](https://www.amazon.com/Programming-Language-Addison-Wesley- Professional-Computing/dp/0134190440)

<comment><USER5> I personally learned Go about 3.5 years ago myself by following tutorials on tour.golang.org, reading the Effective Go document and other blog posts here and there. Then I bought the book last year just out of curiosity. Honestly I find that the experience you gain by reading/writing Go code and consuming online content is more beneficial than the book. The book has some good parts, but I don't think it's as practical as online resources.

<comment><USER6> > Honestly I find that the experience you gain by reading/writing Go code and > consuming online content is more beneficial than the book.

This applies to almost all languages and technologies!

<comment><USER7> Yes, but sometimes it is much easier to get moving with a good textbook.

With Go, a few online tutorials and the documentation that comes with Go itself, were all I needed to get going. I am not sure if that was an explicit design goal, but I found the language very easy to learn.

<comment><USER5> I believe it was an explicit design goal. They wanted new employees joining from straight out of college to be effective within Google's codebase as soon as possible. Therefore the learning curve is pretty low if you already know another mainstream programming language.

</comment></comment></comment></comment></comment><comment><USER8> I reckon h2 push ([https://beta.golang.org/doc/go1.8#h2push](https://beta.golang.org/doc/go1.8#h2push)) support will be big for web servers like caddy and traefik.

Caddy already has a few interesting ideas on how to use this: [https://github.com/mholt/caddy/pull/1215#issuecomment-256360...](https://github.com/mholt/caddy/pull/1215#issuecomment-256360674)

</comment><comment><USER9> What is new in Go 1.8: [http://www.slideshare.net/huazhihao1/what-is-new-in- go-18-72...](http://www.slideshare.net/huazhihao1/what-is-new-in- go-18-72210978)

<comment><USER10> Best text version I found: [https://github.com/golang/go/blob/master/doc/go1.8.html](https://github.com/golang/go/blob/master/doc/go1.8.html)

<comment> ainar-g You mean [https://tip.golang.org/doc/go1.8](https://tip.golang.org/doc/go1.8)?

</comment></comment></comment><comment> old-gregg 1.7 release was great for finally addressing the issue of ever-growing size of produced binaries. [1] Moreover, some additional improvements were promised in 1.8 which I was looking forward to.

But after upgrading to 1.8 I am now observing 3-4% binary increase vs 1.7, so the trend is again reversed back to fatter binaries. :(

[1] [https://blog.golang.org/go1.7-binary- size](https://blog.golang.org/go1.7-binary-size)

<comment><USER11> You can use upx[1] to compress the binaries. I usually can shrink my binaries by 75%.

Read more on this[2] blog post.

1: [https://upx.github.io/](https://upx.github.io/)

2: [https://blog.filippo.io/shrink-your-go-binaries-with-this- on...](https://blog.filippo.io/shrink-your-go-binaries-with-this-one-weird- trick/)

</comment></comment><comment><USER12> I see stop-the-world garbage collection pause times have been reduced to microseconds which is great. But for many applications the pause times for single threads still matter. Any numbers for that?

</comment><comment><USER13> Official release blog post [https://blog.golang.org/go1.8](https://blog.golang.org/go1.8).

</comment><comment><USER14> I'm seeing significant performance increases in my app (small RNA aligner). Haven't profiled yet, so not sure where the gains are coming from, but happy all the same.

</comment><comment><USER15> > The DefaultTransport.Dialer now enables DualStack ("Happy Eyeballs"[1]) > support, allowing the use of IPv4 as a backup if it looks like IPv6 might be > failing

[1] [https://tools.ietf.org/html/rfc6555](https://tools.ietf.org/html/rfc6555)

</comment><comment><USER16> [http://www.slideshare.net/huazhihao1/what-is-new-in- go-18-72...](http://www.slideshare.net/huazhihao1/what-is-new-in- go-18-72210978)

so go is becoming more and more better for lower GC tasks

</comment><comment> dyu- Looking at the c ffi improvements posted, I thought I'd check if there were improvements.

Time in ms to call a c function 2 billion times (lesser is better).

95536 - go 1.1.2

130105 - go 1.8.0

It is a rather crude example:

// plusone is the ffi

int x = 0;

while (x < 2000000000) x = plusone(x);

Here's the source [https://github.com/dyu/ffi- overhead](https://github.com/dyu/ffi-overhead)

With other programming languages:

c:

4778

nim:

4746

rust:

5331

java7:

17922

java8:

17992

go:

130105

(edited for formatting)

<comment><USER17> Small stacks used for goroutines don't play well with calling C functions which assume huge stacks. That's price you pay for having nice scalability story. There might be other issues, which come from the fact that Go has elaborated runtime.

<comment> dyu- Yea it was a toy example. Still the overhead is steep for applications that call c ffi often.

The workaround is usually to batch your computations on the c-side (micro-rpc) and minimize the calls (like cockroachdb is doing)

</comment></comment></comment><comment><USER18> Folks, can someone enlighten me on how new Argument Liveness [https://golang.org/doc/go1.8#liveness](https://golang.org/doc/go1.8#liveness) works ?

I mean, so now if you are in the middle of a long function, you cannot be sure anymore if parameters passed to that function are not GC'd? Or compiler does some hinting on "ooh, this param is not used after that point in function, lets mark it as `ready for GC`?

</comment><comment><USER19> A little not so related question, what is/are the most used stack for web applications in Go? How common if at all would be a Go backend & React for instance frontend stack?

<comment><USER20> I can't tell about "how common", but a react web client with a go backend API is exactly what I do on my main product, currently.

It still has a few problems I haven't managed to solve, though (but not related directly to go). For example, given the visible routing is handled by react-router, I haven't find a way yet to issue proper 404 status (I have a catchall route that renders web client page, then client router displays a "not found" page, but it will be a 200 status). Not that a big deal, because the web client is an application behind auth, and not some public facing pages.

<comment><USER21> Another great 3rd party router is Chi. [https://github.com/pressly/chi](https://github.com/pressly/chi)

My company uses httprouter, but if Chi had been available when we started, we'd have used that instead. It follows Go's standard library API (httprouter diverges a little bit with its params) and adds support for Go's Context (which httprouter currently lacks).

<comment><USER22> I've been using gorilla's mux, precisely because it follows the stdlib API, will certainly have a look at Chi, thanks for the link.

</comment></comment></comment></comment><comment><USER23> Why is the latest stable version on their website still 1.7.5? Where can I download 1.8 installation for linux (not source code)?

I've just removed my previous version and then I realize there's no 1.8 on their website.

<comment><USER22> What linux distro are you on? Most people on Linux tend to use their package managers to get updates, or is your distro too far behind on Go?

<comment><USER23> I'm using xubuntu, how do I manage go through package manager?

<comment><USER24> I use godeb: [https://github.com/niemeyer/godeb](https://github.com/niemeyer/godeb)

It packages the go release into .deb files, which you then can manage using standard Debian tools.

Note that since it scrapes the release page for what releases are available, it won't be able to download 1.8 until it, you know, has actually been released, and sometimes the release page changes format upon a new release and it may take a bit for godeb to be updated.

<comment><USER23> I've just installed 1.8 through godeb, thank you!

</comment></comment></comment></comment></comment><comment><USER25> I am just leaving the release party in Hamburg, Germany and looking forward to simpler sorting and all the other improvements. Awesome stuff and awesome people!

</comment><comment> enahs-sf random question here, but what are people using in the way of ORM/sql access with go? Just database/sql or are there any other good packages worth checking out. I don't expect a full-blown activerecord style ORM, but something that takes a bit of the pain out of mapping structs to records.

<comment><USER26> I've been looking forward to 1.8 to solve this problem. I wrote a small tool using the new `ColumnType` info that takes my SQL queries and generates code to query the database and unmarshal rows into an array of structs.

<comment><USER27> I would love to see that tool

</comment></comment></comment><comment><USER28> Final release notes: [https://golang.org/doc/go1.8](https://golang.org/doc/go1.8)

</comment><comment><USER29> What is the best place to start if I want to learn Go? Any books? Tutorials?

<comment><USER30> Take the tour on their site. Check out gobyexample after that. Then read effective go.

</comment></comment><comment><USER31> Does anyone know the roadmap for Go 1.9?

<comment> grey-area There's some stuff at the end of these slides

[https://talks.godoc.org/github.com/davecheney/go-1.8-release...](https://talks.godoc.org/github.com/davecheney/go-1.8-release- party/presentation.slide#1)

</comment></comment><comment><USER32> Yay Mips32!

</comment><comment><USER33> Linking to the Github release seems more like a grab for fake Internet points than a useful post.

A useful post would be waiting for golang.org to be updated and linking to the official release notes.

Edit: Thanks to whoever updated the link to point to something useful at least. Still would have preferred this came down until the release was actually posted.

<comment><AUTHOR> An unfair, groundless projection on your part. Thanks for spreading a little more negativity today :-)

From the HN guidelines: _Please don 't submit comments complaining that a submission is inappropriate for the site._

<comment><USER33> I'm as excited as the next gopher about Go 1.8's release, but for all practical purposes it hasn't been released yet. It's actually an incredibly frustrating submission for those of us excited to get the official binaries.

</comment></comment></comment><comment><USER34> Draft release notes: [https://beta.golang.org/doc/go1.8](https://beta.golang.org/doc/go1.8)

<comment><USER35> Thanks, we've updated the link from [https://github.com/golang/go/releases](https://github.com/golang/go/releases).

</comment></comment><comment><USER36> Not really, since there's a risk of new people deciding to use it whenever it comes up. It would be silly to say "alright, we get it, cigarettes are bad for you, can we stop harping on this please?"

<comment><USER37> Please don't do programming language flamewars on HN.

We detached this subthread from [https://news.ycombinator.com/item?id=13662583](https://news.ycombinator.com/item?id=13662583) and marked it off-topic.

<comment><USER36> I was responding to "it's kind of useless to be beating the language up upon every release". My comment applies to literally any programming language release or other product release notification; it makes sense for people to discuss the pros and cons of a product every time it comes up, because A) things change and B) it might be the first time that someone has come across the product.

If minor version release notes are on-topic enough to get posted every single time, I'm not really sure how an attached discussion of the product in question (possibly involving criticism) isn't.

</comment></comment></comment><comment><USER38> Hurray, Finally</comment>


Ruby MRI Source Code Idioms #1: Accessing Data Via Macros - <AUTHOR> http://patshaughnessy.net/2013/1/23/ruby-mri-source-code-idioms-1-accessing-data-via-macros

<comment><USER2> MRI is the first language interpreter that I got deeply familiar with and it's a pleasure to read. It was really nice to be able to find the answer to questions like "how does Ruby decide when to trigger a thread switch" by spending just a few minutes going to the source.

<comment><USER3> Absolutely - it is a pleasure to read. Someday I'd like to learn how another language is implemented, maybe JavaScript or something like Haskell, but I'm afraid the language source code will be much more difficult to understand than Ruby's is.

<comment><USER4> You can maybe start with a Scheme parser, it's quite simple.

<comment><USER3> Interesting idea - thanks for the suggestion!

<comment><USER5> SICP - chapter 4.

[http://mitpress.mit.edu/sicp/full-text/book/book- Z-H-25.html...](http://mitpress.mit.edu/sicp/full-text/book/book- Z-H-25.html#%_chap_4)

One of the best chapters in any book I've ever read. So mindblowing.

Or if you prefer the video form, here:

[http://ocw.mit.edu/courses/electrical-engineering-and- comput...](http://ocw.mit.edu/courses/electrical-engineering-and-computer- science/6-001-structure-and-interpretation-of-computer-programs- spring-2005/video-lectures/7a-metacircular-evaluator-part-1/)

[http://ocw.mit.edu/courses/electrical-engineering-and- comput...](http://ocw.mit.edu/courses/electrical-engineering-and-computer- science/6-001-structure-and-interpretation-of-computer-programs- spring-2005/video-lectures/7b-metacircular-evaluator-part-2/)

<comment><USER3> Yup, (re)reading SICP is definitely on my list!

</comment></comment></comment></comment></comment></comment><comment><USER6> Very interesting indeed, sir. I've personally also found a lot of joy in diving down into C implementations (in my case, the JNI, although Ruby is my language of choice).

You've certainly inspired me to take a closer look at the MRI, as well as macros in general. Thanks!

</comment><comment><USER7> Cool work, again, Pat. Makes me wish I was back in school and could justify spending more time on looking at the internals and finding that satisfaction in knowing how things truly work under the hood.

<comment><USER3> Thanks! Yea for some reason learning how things work is often more satisfying to me than building stuff... I guess I'm more of a scientist than an engineer?</comment></comment>


Why tax the merely well-off as if they were wealthy? - <AUTHOR> http://www.nytimes.com/2009/04/12/magazine/12wwln-lede-t.html?ref=magazine

<comment><USER2> Because you get more money if you hit the well-off as hard as you hit the wealthy. Bill Gates takes income when he wants it.

Also, I note that the referenced article doesn't mention the tax shelters that were available "then" that went away with Reagan.

There is one exception though - large estates. Almost none of Bill Gates wealth will be subject to the estate taxes. Same with Warren Buffet. Remember that the next time you hear that they think that the estate tax is a good idea.

</comment><comment><USER3> "The federal government simply isn't raising enough money to pay for its obligations, Medicare being the biggest."

... and this was BEFORE TARP, TALF, AIG, GM & Chrysler....

</comment><comment><USER4> If I had written the article, the title would be "Why do we tax the wealthy as if they were well-off?".</comment>


Ask HN: High school job advice - <AUTHOR>

I am a senior in high school and I am looking for some advice.
As a high school student who cannot work full-time, it is near to impossible for me to find a part-time job related to computer programming or web development (locally). Since that's the only real thing I get a drive to work on, I don't know that I would want to work doing anything else. I know that the kind of work I want to do is more of a preference than an actual requirement, so I'm stuck on what to do.
Would you suggest I just find a job, regardless of what it is (money's money, right?), or should I use that time instead to hack away on personal programming projects, with the possibility of financial gain in the future.
Thanks. <comment><USER2> If you're looking to go into a programming career immediately, I would focus on building a portfolio of work, but if you are planning to go to college (where you'd be studying programming full time), I would get a non-programming job. Even what seems like mindless labor can improve your work ethic and discipline, and teach you how to work with other people (and all the fun challenges that brings). Gets you out of your home/school environment. Sometimes you'll connect with others who may be able to help you down the road. Plus you will likely still work on development since that's a big interest of yours.

I'm a full-time developer, but I remember fondly a lot of washing dishes, busing tables, mopping floors, mowing lawns, and delivering pizzas....

</comment><comment><USER3> have u thought about elance or something like that?

what language do you know? maybe i (or someone else here) will hire you.

<comment><AUTHOR> I have been programming in PHP for a good number of years. Included in that are HTML, CSS, and JavaScript skills. I have also done work in Java, C#, and C (which I just started a year or so ago, but I am really enjoying it right now). I also like playing around and designing in Inkscape.</comment></comment>


Offer HN: Advice from PhD on NLP, machine learning, and data monetization - <AUTHOR> Do you have questions about machine learning, natural language processing, or data monetization in general?
In particular, I'll field questions on:
* recommender systems
* profit optimization in ecommerce sites
* autotagging
* creative ways that NLP + ML can add value to your product and give you a competitive advantage
* whatever else you like.
If you have a specific technical question about ML or NLP, please post it on the MetaOptimize Q+A site (http://metaoptimize.com/qa/) and post a link here as a comment. I'll give you the detailed answer over there, since the Q+A there is designed to be archival and is more searchable. Other sorts of questions (like "How do I turn this data into money?") can go in this thread directly. If it seems like a longer discussion, email me at joseph at metaoptimize dot com and we can talk about setting up a Skype chat.
p.s. I'm also hiring people for remote project work, if you are kick-ass at ML or NLP, or you simply can ship correct code really fast. Email me at joseph at metaoptimize dot com.
Who am I?
My name is Joseph Turian, and I head MetaOptimize LLC. I consult on NLP, ML, and data monetization. I also run the MetaOptimize Q&A site (http://metaoptimize.com/qa/), where ML and NLP experts share their knowledge. I recently demo'ed autotagging of hacker news to make it automagically browsable (http://metaoptimize.com/projects/autotag/hackernews/).
* I am a data expert, holding a Ph.D. in natural language processing and machine learning. I have a decade of experience in these topics. I specialize in large data sets.
* I'm business-minded, so I focus on business goals and the most direct path of execution to achieve these goals.
* I am also a technology generalist who has been hacking since age 10 and has programmed competitively at a world-class level. <comment><USER3> Wow, this is exactly what I have been searching for for months!

I've got a pretty basic grasp on machine learning and collaborative filtering, so I understand some things, but I'm very confused on others, such as:

1)List-wise vs Pair-wise approaches to machine learning. Can you explain in simple terms what is the main differences between them, and in what cases it would be better to use one over the other? I've read a few sources about the differences but it goes over my head a lot of times.

2)When you don't have many users using your site, from my (basic) knowledge, you can't really use KNN algorithms to help with recommendations, because you only have a few people to compare your (lets just say movie preferences) to. What is the best way, then, to get the best recommendations both when your userbase is large and small?

Those are just a few off the top of my head, but I'll be sure to add more later on.

<comment><AUTHOR> 1) Pair-wise approaches, if I understand what you mean, are those in which you are look at pairs of examples. You want to avoid naive implementations, in which you train on a quadratic number of instances (all-pairs). It really depends upon the specific problem how you get around this. For example, if you have a model that operates over pairs, doing example selection in an intelligent way. For example, use all positive pairs, but sample only one negative pair per positive pair.

2) You are talking about the cold start problem. Basically, the problem is how do you deliver good recommendations to new users as quickly as possible. I am actually currently talking to a big company about this problem.

Google has talked about how they do this for Google News, especially because they have high item churn (news is not news in a day). [http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.80....](http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.80.4329&rep=rep1&type=pdf) Essentially, they do clustering of users and news items.

Another approach is to give the user a hunch-like quiz when they join. Basically, you use a decision tree to cluster the users, getting as much information from them with as few questions as possible.

Another approach that requires almost NO user interaction is to use some ambient information about the user. Maybe you have a cookie for the user and other sites will share the user's behavior with you. Maybe you ask them to log in through facebook or twitter, and then can look at their profile and activity history to build a user profile. So getting creative about possible sources of ambient information is another approach.

<comment><USER3> I need some clarification on #1:

Could you provide easy examples where you would use a pair-wise approach, and a list-wise approach? Like, let's say I wanted to build a recommendation system for college football pick-ems (Ie, will Iowa beat Michigan State? Etc.). Which method would be preferred, and why?

Another question:

Let's say (again) that I want to build a recommendation engine for college football picks. How do I know how much (more) data will help for training purposes? IE, will only Win/loss records suffice [probably not], or should I add in the opponent they beat (or were beaten by) as well? What about whether the game was away/at home? What about factoring in the individual players on each team, and their stats? What about the temperature that day? How you do end up knowing when you can stop looking at smaller and smaller variables with your training data, and have something that gives the best results?

<comment><USER4> You can do greedy feature selection: make a stable train and development and test (and maybe another truer test set, for use later) sets and define an appropriate quality measure. Then implement the simplest thing you can think of, train on the training data, calibrate the results on the development set (tuning hyperparameters, etc) and look at the performance on test data. That's your baseline. Now think up of a nice new feature you'd like to add, implement it, and see if you can get the error on the development set to go down. If it goes down a lot (you can decide an appropriate threshold, maybe depending on the computational and human cost of using those features), keep it. Otherwise throw it away. Now repeat this process for every set of features you can think of, documenting the combinations you've tried as you go to see where is the best effort/performance tradeoff. Then test your best model on the test set to see if the performance has really improved.

If your model is linear, you will probably see diminishing returns as you implement more, different features. It also helps to look at model errors to see which features are pulling things the wrong way, and then you can add other features to compensate.

(feature engineering + linear models feels a lot like writing an old-school AI heuristic program, except you have a computer program give a numeric weight the rules you're writing, so you're free to write a lot (millions) of rules and still get a manageable model)

</comment></comment></comment></comment><comment><USER5> This is a very general question.

I looked through the feature lists of many e-commerce analytics packages. It struck me that while they offer impressive-looking graphs and gather huge amounts of data, the "analytics" part seems to be very simple. They mostly present you the data that has been measured.

I am in a situation where I will want to provide e-commerce analytics as part of a more complete solution. But I would like to approach this from a different angle: provide _digested_ data, with insight into patterns that could lead to increased profits for online stores.

What do you think could be extracted from e-commerce data that would be of value to online stores? I'm looking for information that is difficult to extract (e.g. requires a tech advantage), but can be extracted automatically or with minimum human curation.

An example of an interesting direction: e-commerce analytics companies offer "customer segmentation" views. But they are all just simple data views: you can segment based on location, time of visit, etc. I think doing a factor analysis on customer buying patterns would be much more interesting and would provide real value to the store by automatically extracting "customer types" from data. One could then market directly to these customer groups.

So, to rephrase, I'm looking for ideas/pointers on what kinds of analyses would be difficult to create, but very useful for e-commerce.

<comment><USER6> I'm agreed that most so-called analytics has little value. Your customer segmentation idea is a good one. You could also approach this as a classification problem, where you attempt to classify customers as purchasers or non-purchasers for each product or product group. Another idea is to look at high and low value pathways through a site. If you can identify pathways that don't lead to purchases that might suggest where design effort should be spent.

</comment></comment><comment><USER7> I might also answer some questions here. I'm a post-doc in NLP, but more from the linguistics side of things --- less business focussed, and less of a hacker.

(Hi Joseph --- we met briefly at ACL. I was one of James Curran's students. My name's Matthew Honnibal.)

</comment><comment><USER8> Any good materials to read? I work in a text-analytics startup, so I do have a basic understanding about NLP and related fields.

<comment><USER9> Also, any good materials for those of us who have no background in NLP besides basic computer science theory?

<comment><AUTHOR> _Good materials for those of us who have no background in NLP besides basic computer science theory?_

My main proposal is to post a "How do I build X" question on MetaOptimize. (I don't know any place on the web where experienced NLP people chat, besides MetaOptimize, but I would be interested to hear other options.) NLP isn't really very hard once you know what you're doing, it's just that as an inexperienced person you will spend a lot of time going down dead ends and blind alleys, and there are a lot of pitfalls to avoid. So getting the advice of experienced people, right from the beginning, is the best way to do this.

See also:

* What are the best resources to use when starting machine learning for an experienced programmer? <http://metaoptimize.com/qa/questions/334/>

* How do I get started understanding statistics & data analysis? <http://metaoptimize.com/qa/questions/154/>

* New to data mining - where to start? <http://metaoptimize.com/qa/questions/362/>

</comment></comment></comment><comment> tomh- I posted two questions.

[http://metaoptimize.com/qa/questions/3084/what-components- do...](http://metaoptimize.com/qa/questions/3084/what-components-do-you-need- to-build-something-like-google-news)

[http://metaoptimize.com/qa/questions/3085/which- techniques-i...](http://metaoptimize.com/qa/questions/3085/which-techniques- in-named-entity-recognition-offer-the-best-results)

thanks!

(ps please don't upvote me, I like my 1337 karma)

<comment><AUTHOR> I just posted answers for both your questions.

<comment> tomh- Thanks! Have some reading to do :)

</comment></comment></comment><comment><USER10> Here is my question: [http://metaoptimize.com/qa/questions/3086/what-is-the- best-w...](http://metaoptimize.com/qa/questions/3086/what-is-the-best-way-to- break-into-an-nlp-career)

For MSc in Computer Science I wrote my dissertation on sentiment analysis using NLTK for my NLP needs. Although my work was nothing earth shattering, I really enjoyed it and have continued it as a side project investigating different techniques and algorithms. I'm now considering ways that I can turn this interest into my full time career (I'm a .Net developer currently). I don't particularly wish to send out a lot of unsolicited resumes and so was wondering if anyone had some advice on who best to approach? Are there any recruiters and the like that specialize in NLP?

Thanks

Adam p.s. I am an US permanent resident and an Australian Citizen, the website that has my details and some example work is www.emptyorfull.com

<comment><USER11> Write an open source library.

I still get contacted about a ML library I haven't touched for 5 years.

</comment></comment><comment><USER12> What are some of the unique business models around data monitization? The most obvious are pay walls and generating content to drive advertising. Any thoughts on how successful paid access to data is, like with imdb pro?

<comment><AUTHOR> I don't think people really want to pay for data.

I also think that people don't like having ML or NLP tools through a SaaS API, because you want a tool that you manage on your own hardware.

I believe that we'll see something I call the "machine learning business model". Essentially, you release your code under open source, and you give away a basic model, but then you charge for a premium model. The model is essentially like compiled code. No one knows how you trained it up, or why it works. So you get people using your tools by open-sourcing them, and then you upsell them on increased accuracy.

</comment></comment><comment><USER13> Clickables:

\+ <http://metaoptimize.com/qa/>

\+ <http://metaoptimize.com/projects/autotag/hackernews/>

</comment><comment><USER14> I am a first semester grad student seeking an M.S. in computer science. I am interested in NLP and hoping to choose it or a subfield of it as my research topic. Do you have any advice? For instance, is there background knowledge that I should be learning that would be helpful? What about good books or important papers? Other tips for CS/NLP grad students?

I know this is a rather general question, but any advice that you might have would be useful to me and students in similar situations. Thank you!

<comment><USER15> Hopefully the OP will be able to answer your question, but I thought I might offer my 2 cents:

I'm currently working on an MSc in IT. My actual project does not involve NLP directly, but all the 'related research' does (ie. all previous systems which achieve the same goal as mine)so I had to read up on it. This was a struggle... YMMV. I find a few good resources along the way though - <USER2> reading this first <http://www.staff.ncl.ac.uk/hermann.moisl/ell236/manual1.htm> then on iTunesU/YouTube you'll find a good course on computational linguistics from MIT, watch the first half dozen lectures at least (don't worry if you don't fully understand them all). A lot of the theory can be traced back to Chomsky's work on grammars, so I suggest reading some of his papers (his style is quite clear). I found I needed to do all this just so I could properly follow the recent papers on NLP (specifically NL interfaces to DBs) that I must review. I really had to start from the beginning, light wikipedia'ing wasn't cutting it. I'm currently reading The Oxford Handbook of Computational Linguistics to consolidate my knowledge, it's pretty good.

So anyway... tough subject, try not to get bogged down. If all the reading's too dry, then 'Godel Escher Bach' is a fun alternative that touches on similar theory.

If I were to choose a pure NLP project myself, I'd maybe do something like 'How NLP can add value to existing systems/software.' ie. look for imaginative practical applications, rather than theorizing yet another parser with some new trick/quirk

</comment></comment><comment><USER16> Can I get to you by email? I have a question on data monetization.

</comment><comment><USER17> Ending my 2nd year of a CS degree and I have enough technical knowledge to begin coding up websites and services like many of the other people here on HN. I was wondering whether or not it would be better to run ads on these sites, or to just try and generate large/high quality datasets and then sell those. How does someone like me monetize their data?

<comment><AUTHOR> This question is far too open-ended to answer.

I would avoid a ad or data-selling business upfront. I would focus on a simple transactional business (i.e. they give you money and you give them a product or a service for a month), and learning about your market and why they care about what you're offering.

<comment><USER18> Are you able to provide examples of it? i.e. stock exchange sell data feed, etc.

</comment></comment></comment><comment><USER19> One question that definitely has plagued me for a while is that of evaluation schemes of recommender systems... On multiple occasions I have designed recommender systems that give a fairly good user experience, but I just have not been able to quantify these results... any pointers on that will be really appreciated.

<comment><USER20> xlvector has a blog on recsys that talks about a good but overlooked feature of those systems from a user point of view: the ability to have the user make fortunate discoveries while looking for something seemingly unrelated:

\+ <http://xlvector.net/blog/?tag=serendipity>

I have no easy answer on how to quantify that myself but I guess the papers quoted by xlvector must be a good place to start.

</comment></comment><comment><USER21> Looking at things from a legal standpoint, how do you go about creating your database? What are you must conservative about when using APIs for data mining?

How do you approach social websites without APIs about scraping their data?

What criteria do you use to determine whether an algorithm you are developing qualifies for legal copyright protection?

</comment><comment><USER22> Do any of the principles of ML be applied to KPI / balanced scorecard applications? I have done some work with calculating simple linear regression but would like to move towards decision tree learning. Is this a good idea? or is there something more applicable? BTW, I'am a noob at this! Thanks in advance.

</comment><comment><USER23> I'm working on a shopping startup and need to get a basic recommender system built in the next few weeks. So far, I've implemented SlopeOne to determine the order of results every time a user searches. Is there any way to cache/memoize this repeated computation? Also, is SlopeOne the best way to go for this?

<comment><USER24> have you tried DirectedEdge?

</comment></comment><comment><USER25> What's the best way to normalize product names? Specifically, I would like to be able to take a recipe and get all the ingredients in that recipe. The ingredients are going to be written by humans so I need the ability to understand that ingredient and map it to something normalized that I know how to deal with.

Thanks

</comment><comment><USER26> I've built a little morphology parser in my spare time, and I'd love your thoughts.

[http://metaoptimize.com/qa/questions/3103/morphology- parsing...](http://metaoptimize.com/qa/questions/3103/morphology-parsing-with- an-esperanto-focus)

</comment><comment><USER27> My question about improving NER results, or finding a better library for tagging: [http://metaoptimize.com/qa/questions/3092/improving-ner- resu...](http://metaoptimize.com/qa/questions/3092/improving-ner-results)

Thanks!

<comment><USER7> If you're considering implementing a tagger, then I think this is a good paper to read for approaches that will improve your results in a developer time efficient way:

<http://l2r.cs.uiuc.edu/~danr/Papers/RatinovRo09.pdf>

<comment><USER20> Thanks for posting this: I read this paper some time ago but completely forgot the name of the authors.

It is indeed a good "tricks of the trade" paper. I real enjoy such papers.

<comment><USER7> Yeah, it's nice when a paper boils down a task into the best bang-for-buck approach you should take.

A recent such paper I'm excited about is this one on coreference resolution from EMNLP 2010: <http://www.aclweb.org/anthology/D/D10/D10-1048.pdf> , by the Stanford group. It's a rule-based coreference resolution system you could implement in a couple of days that gets state-of-the-art results. Best of all it looks like you could get it to run about as fast as the parser that's backing it. I'm planning to write a version for the C&C parser.

</comment></comment></comment></comment><comment><USER28> My requirement is that I need to build a phrase extraction system. We have a corpus of text and we need to find the most relevant phrases from that corpus. Is there a simple algorithm/library I can use? Thanks in advance.

</comment><comment><USER29> What is the single best result you have had applying your techniques. I don't care about who it was, but would love to know details about how much of an impact this type of work has in the real world.

</comment><comment><USER30> Heh data monetization sounds good.. what about skill monetization? I'm getting a MS in computer science but am unsure what to do with it..

I'm particularly frustrated with brainless Java / .net development jobs.

<comment><USER20> Learn hadoop / lucene / pig / hive / clojure / python / ruby and put your code on github and if you can digest all of these you will get plenty of interesting job offers.

<comment><USER31> What are ways for someone without access to a Hadoop cluster (and doesn't want to continually pay for, say, Amazon's Elastic Map Reduce) to learn Hadoop/Pig/Hive? I'm a stats/data analysis guy, so I've been wanting to get into big data for a while, but I'm not sure how to progress beyond reading a bunch of tutorials (which I have).

</comment></comment></comment><comment><USER32> My question here:

[http://metaoptimize.com/qa/questions/3096/how-to-choose-a- su...](http://metaoptimize.com/qa/questions/3096/how-to-choose-a-supervised- learning-method)

</comment><comment><USER33> What are the biggest challenges you meet in terms of missing software infrastructure to support your NLP/ML work? Things you wish someone would implement?

<comment><USER20> Something that is really missing in my opinion is a good opensource OpenCL [1] runtime for regular x86 CPUs using both muticore optims (a la openmp) and vector instructions (SSE). Bonus points if your OpenCL runtime can also leverage the nouveau and/or the open source ATI drivers.

Having such a runtime available as a standard lib packaged in all linux distribs would make it interesting for lowlevel vector math libs such blas / lapack / atlas and convex optimization solvers to have an implementation based on OpenCL kernels that would work (almost) as fast as the currently manually optimized C + simd intrinsics code but could also 10 to 100 as fast whenever a GPU is available on the machine without having to re-compile anything.

Some advanced and very promising machine learning algorithms (e.g. algorithms of the deep learning family) can really benefit from the computing power of vector processors such as the GPUs.

Right now everybody who wants to be able to gain the perf boost of GPUs uses CUDA but: \- it's only useful on NVidia GPU machines (e.g. not on Amazon EC2 machines for instance) \- it's not opensource hence has to be manually installed on every single machine you want to use it (no apt-get install from the official repos). This which makes it a heavy dependency for your pet machine learning library: be prepared to support CUDA installation problems on your project mailing list.

[1] <http://en.wikipedia.org/wiki/OpenCL>

<comment><USER33> If you like Python, Theano may be useful to you (haven't actually tried it):

<http://deeplearning.net/software/theano/>

 _Theano is a Python library that allows you to define, optimize, and evaluate mathematical expressions involving multi-dimensional arrays efficiently. Theano features:

\- tight integration with numpy

\- transparent use of a GPU

\- symbolic differentiation

\- speed and stability optimizations

\- dynamic C code generation

\- extensive unit-testing and self-verification_

<comment><USER20> Yes I know and use theano for some deep learning experiments. This is really a great tool. But theano will probably never be considered a default dependency for common machine learning libs as long as there is no good OpenCL runtime opensource and pre-packaged in major posix distros (linux and bsd, osx already has opencl by default but not opensource hence cannot be reused in linux AFAIK).

</comment></comment></comment></comment><comment><USER16> Ok I guess my last question wasn't well-worded, so a better question:

What do you recommend reading to learn about data monetization basics?

</comment><comment><USER34> What in your opinion is the best and most extendable open source toolkit or library for machine learning?

NLTK? Weka? Other?

<comment><AUTHOR> It really depends upon the task. For each task (e.g. POS tagging), I maintain a list of current open source implementations. When I attack a problem that involves this task, I weight the tradeoff between how easy the tool is to use with how accurate the tool is. Most of the time, I favor ease-of-use. If I need high-accuracy, I start hand-rolling my tools and keeping them around for later.

p.s. I don't actually use NLTK or Weka that often.

</comment></comment><comment><USER35> What kind of data and applications are best suited for monetization using data mining? Now? In 5 years?

</comment><comment><USER36> thanks for doing this! my question: [http://metaoptimize.com/qa/questions/3089/how-far-can-you- ge...](http://metaoptimize.com/qa/questions/3089/how-far-can-you-get-in-nlpml- without-a-graduate-degree)

</comment><comment><USER37> Do you know of any ML / NLP libraries in erlang?

thx.

</comment><comment><USER38> How can the present state-of-the-art in NLP ML be more than a toy having limited scope if the most interesting, and truly useful real-world applications require impossible amounts of hardware resources, along with algorithmic running times that will take until the heat death of the Universe?

Mainly I'm talking about the topics in and related to the famous paper _What Computers Can't Do._ <http://en.wikipedia.org/wiki/What_Computers_Cant_Do>

Before I get nitpicked for generalizing NLP/ML to all out "Hard AI", I would like to note that _almost all_ of the most trivial language processing tasks we _meatsacks_ perform a billion times per day in our daily lives involve the _semantic interpretation of abstract representations_. It would be trivial to sit down and begin enumerating specific types of word and association problems that a child could perform, but which no supercomputer with a 1,000 engineers toiling it on could solve in the general sense.

By no means am I saying that everyone in the field should not full court press ahead on the state of the art, as we'll never get there unless we try. I am asking about the extent that real-world NLP/ML use is constrained enough so as to be nearly worthless hokum buzzwords. (i.e. analytics, recommendation engines for pre-conditioned, overtrained and context-free representations, behavioral profiling for ads, statistical models of dynamical systems, etc.)

I hope this doesn't come off as being negative, as I'm really more interested in the question of Hard AI and how it relates to computational linguistics problems we can solve today or in the near future without some kind of unforeseen "singularity" level break through in AI. Or is the general state still as bad as when Minksy demolished perceptrons, causing the "nuclear winter decade" in AI?

I don't have a PhD, just a pure math undergrad with a high motivation to have kept going at it, and this topic itself is so obscure & difficult that it's not often one has the chance to ask someone who knows, so I am very interested in the perspective of present day researchers.</comment>


Invidious: an alternative front-end to YouTube - <AUTHOR> https://github.com/omarroth/invidious <comment><USER2> What's your plan on possible user account terminations, if Google decides to act on their Terms Of Service?

> _YouTube may terminate your access, or your Google account's access to all > or part of the Service if YouTube reasonably believes that its provision of > the Service to you is no longer commercially viable._

[https://www.youtube.com/static?gl=GB&template=terms](https://www.youtube.com/static?gl=GB&template=terms)

<comment><USER3> They have clarified that this means they can terminate their services, not your accounts. However with recent balls ups it was easy to read it differently

<comment><USER4> This is not true. They can and will suspend your accounts for blocking ads or not being "Economically viable".

One reason I removed youtube vanced and reinstalled official youtube app.

<comment><USER5> Hmm. The reason doesn't look immediately obvious to me. What does your switching from Vanced to the official yt app have to do with someone's account getting suspended? Care to expand on it?

<comment><USER6> By using the official app then you get the ads, and won't be singled out as unprofitable by google. Hopefull as a result hopefully you won't be banned.

</comment></comment></comment></comment></comment><comment><USER7> I've been consuming my YouTube videos via RSS and youtube-dl these days. I have a little python script that collects the video urls from the feed, downloads them, and then NewsBlur notifies me of the new videos.

NewsBlur has become the way I find new academic papers (arXiv/journal RSS feeds), consume the news, webcomics, and YouTube videos.

<comment><USER8> Youtube-dl is an incredible tool, and supports far more than YouTube. I was pleased as punch yesterday to discover that Shoshana Zuboff's talk (shared to HN) on a video site I'd never previously heard of was supported.

There are other related tools.

VLC, both the desktop client (Linux, MacOS, Windows), and to a somewhat lesser extent, the Android client, can also stream video, most certainly from YouTube. Given the superiority of playback controls and for Picture-in-a- picture / pop-up view, this is my preferred option for Android _when I want video_ , generally.

mps-youtube is an absolutely amazeballs console-based YouTube client. It offers search (text, title, channel), playlists, preferred search context (music or all), playback (audio only, video, resolution), and local client(s).

My preferred mode is to curate a playlist off of various searches, and to play that back, either through mps-youtube, or another player capable of using a local file. A disadvantage of mps-youtube is an application-based API cap which doesn't seem to apply to other options.

mpv is a console multimedia player, successor to mplayer, which can integrate with youtube-dl via the '\--ytdl' switch. This means you can stream _any_ youtube-dl supported streaming service or target, from raw MP3s or Oggs, to YouTube, Vimeo, and numerous other online media platforms.

I've been making (slightly) increased use of RSS, but have yet to wire that into my media player(s).

All of the console options work in Android under Termux, a Linux-like console userland that's one of the very few things on Android which Does Not Manifestly Suck.

<comment><USER9> > _" mpv is a console multimedia player, successor to mplayer, which can > integrate with youtube-dl via the '\--ytdl' switch."_

No switch is needed anymore, mpv has built in support for youtube-dl now through the ytdl.lua extension which automatically uses youtube-dl when necessary. Simply run `mpv [URL]`

<comment><USER8> TIL, thanks!

</comment></comment></comment></comment><comment><USER10> 'Log in with Google' asks me for my google account and password. Wat. No.

You should never, ever be asking people for this information, even if you're transparently passing it upstream. This is a tier-one no-no.

<comment><USER11> I agree. Unfortunately OAuth is impractical for this project, as it requires registering your application with Google.

Instead I've done my best to make clear how it works[0][1] and what is stored[2].

As mentioned in a sibling comment Google does not have a good track record with similar projects. AFAIK the only project that provides similar functionality is youtube-dl[3], which works the same way.

Important to note is that this functionality is optional; you do not need to log in with Google to store subscriptions or preferences. The main benefit currently is that it will automatically sync subscriptions with YouTube, otherwise I would recommend creating a new account on Invidious and then importing subscriptions from YouTube.

0\. [https://www.reddit.com/r/SideProject/comments/8wvazc/invidou...](https://www.reddit.com/r/SideProject/comments/8wvazc/invidous_alternative_frontend_to_youtube/e1zygk2/)

1\. [https://github.com/omarroth/invidious/blob/8af87f1/src/invid...](https://github.com/omarroth/invidious/blob/8af87f1/src/invidious.cr#L1434-L1706)

2\. [https://invidio.us/privacy](https://invidio.us/privacy)

3\. [https://github.com/ytdl-org/youtube- dl/blob/76e510b/youtube_...](https://github.com/ytdl-org/youtube- dl/blob/76e510b/youtube_dl/extractor/youtube.py#L85-L250)

<comment><USER10> There's no way for me to verify that what you're running is the same as what you have in GitHub. And for anyone else running it. You should disable this feature.

<comment><USER12> Why should he? It's your choice to use it or not. If you feel uncomfortable, go and selfhost it. Or don't use it at all. But there is no reasoning to prohibit it for everyone.

<comment><USER13> Altruistically, it trains users that it is ok, which it isn't.

Selfishly, the author really does not want to be storing or even handling these kinds of credentials. It makes them a very juicy target for all kinds of bad actors. Imagine finding yourself in the middle of some kind of account hijacking nightmare that you have unwittingly enabled, having to deal with people who trusted you and have lost access to their account or have lost money because people accessed data in their account that allows for id theft.

Basically people should treat passwords (even other people's passwords) as radioactive material and not attempt to handle them unless they really know what they're doing.

<comment><USER14> You didn't read [https://invidio.us/privacy](https://invidio.us/privacy)

<comment><USER13> The privacy policy of not storing passwords is nice but what about when they get hacked and the site starts uploading passwords to some attacker's website?

</comment></comment></comment></comment></comment></comment></comment><comment><USER15> This looks neat! Without all the Google/Alphabet spying.

I've noticed that this project is written in Crystal, is Crystal production ready?

I've looked into it months ago and it seems that there are a lot of breaking changes on every release and this scares me from using it.

<comment><USER11> Breaking changes have been fairly minor and I haven't found them to be an issue for the project. It's also possible to anticipate most changes early (compile with `crystal --warnings all`).

I'm not sure I would recommend it for something on the scale of Apple or Microsoft, but for a personal project like this I've found it a very enjoyable experience.

</comment></comment><comment><USER16> If you included fairtrending.com into the trending page, that'd be a 100% reason to use this.

Unfortunately they took their page down since they didn't find it financially sensible (and after emailing them he doesn't want to open source it)

If you could implement real trending based on views/hours or some logical way that'd be amazing (understandably, this is open-source, so if I find the time I'd love to help too).

</comment><comment><USER17> If you are using Firefox, there's a great add-on called Invidition that you can install. It redirects Youtube to Invidious and Twitter to Nitter.

[https://addons.mozilla.org/en- US/android/addon/invidition/](https://addons.mozilla.org/en- US/android/addon/invidition/)

<comment><USER18> I have used that add-on for a while, but half the time the video's stop playing after a while.

Instead I now have a youtube container and have set firefox to open all youtube urls in that container. That way all cookies and session are contained.

What you can also do is delete all cookies and site data when you close your browser and then add some sites to a whitelist (github, HN, etc) in order to prevent having to login all the time. In combination with a good password manager that shouldn't be a big problem anyway.

</comment></comment><comment><USER19> How many alternative YT front-ends are out there? I remember [https://toogl.es/](https://toogl.es/)

<comment><USER20> Newpipe (app for android): [https://newpipe.schabi.org/](https://newpipe.schabi.org/)

mps-youtube (terminal-only): [https://github.com/mps-youtube/mps- youtube](https://github.com/mps-youtube/mps-youtube)

youtube-viewer: [https://github.com/trizen/youtube- viewer](https://github.com/trizen/youtube-viewer)

FreeTube (which uses the invidious API): [https://github.com/FreeTubeApp/FreeTube](https://github.com/FreeTubeApp/FreeTube)

youtube-local (my project): [https://github.com/user234683/youtube- local](https://github.com/user234683/youtube-local)

smtube: [https://www.smtube.org/](https://www.smtube.org/)

Minitube: [https://flavio.tordini.org/minitube](https://flavio.tordini.org/minitube), [https://github.com/flaviotordini/minitube](https://github.com/flaviotordini/minitube)

</comment></comment><comment><USER21> Fun fact:

This app is written in Crystal, with SSR Crystal + HTML templates.

It's source code is pretty interesting. One of the most popular Crystal apps I know of. (Huge fan of both Invidious and Crystal)

[https://github.com/omarroth/invidious](https://github.com/omarroth/invidious)

</comment><comment><USER22> How will this website not be killed by Google lawyers at any moment?

<comment><USER11> Essentially because it replicates the way a browser works, similar to youtube- dl. I would very much recommend taking a look through [0] for some more info, but one of the main goals of the project is to avoid use of any Google APIs. This also includes login, as mentioned in an earlier comment[1].

0\. [https://github.com/omarroth/invidious/issues/130](https://github.com/omarroth/invidious/issues/130)

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

</comment></comment><comment><USER23> I was very confused at first. I didnt log into anything, yet [https://invidio.us/](https://invidio.us/) has plenty of creators from my YT subscriptions :o How the heck? Do the owner curate whats on the front page? I can only counts a couple video channels I have no interest in whatsoever (pie, h3, vox), or did Google finally started curating? No low value garbage on first page, something YT is usually struggling with. Still Peterson in related/recommendations tho.

<comment><USER11> The main algorithm is described here[0]. It's the most recent videos from the 40 most subscribed channels on the instance.

YouTube's recommendations are still used. They'll appear the same as if you viewed YouTube with a clean browser session, although you can disable them in your preferences if you'd like (under "Show related videos").

0\. [https://github.com/omarroth/invidious/issues/217#issuecommen...](https://github.com/omarroth/invidious/issues/217#issuecomment-436503761)

</comment></comment><comment><USER24> Woah, this is amazing! When you click on a video, it just stays in one place and loads. It doesn't jump around the page resizing itself while you attempt to hit the play button.

</comment><comment><USER25> Tried to log in with my Google account, got a message saying that it was temporarly disabled.

</comment><comment><USER3> I tried writing a front end for youtube gaming to be able to list live streams of your subscriptions. Turns out the API doesn't expose this what I would assume to be a much needed bit of information. Discovery of live streams is hugely lacking compared to Twitch. Turns out that the API in general hasn't been really updated for half a decade, and the calls there appear to be focused on helping a channel owner rather than viewers

I gave up.

</comment><comment><USER26> Is it possible to display my "Subscriptions" screen from YT? That's the only thing I use to decide what's to watch next.

<comment><USER26> Also, what is registering for? Does it only save my preferences?

<comment><USER27> I believe registering also provides a non-google way of tracking subscriptions :)

</comment></comment></comment><comment><USER28> While an interesting project, at first glance I don't really see what this front-end brings to YouTube compared to the original front-end. Speed, maybe? But this comes at the cost the UX.

I would much rather see something like this implemented: [https://uxdesign.cc/my-attempt-at-redesigning-youtube- for-a-...](https://uxdesign.cc/my-attempt-at-redesigning-youtube-for-a-more- intuitive-and-modern-experience-dbd7707c135c)

<comment><USER29> "play audio in background on mobile" is quite a big feature.

<comment><USER30> cant find it hm :?

<comment><USER29> First bullet point of the original Invidious linked page README:

> Audio-only mode (and no need to keep window open on mobile)

</comment></comment></comment></comment><comment><USER31> This is very cool.

Especially:

kgg2m7yk5aybusll.onion

axqzx4s6s54s32yentfqojs3x5i7faxza6xo3ehd4bzzsg2ii4fv2iid.onion

</comment><comment><USER32> How does the audiomode work? I tried playing a video and the backround and it doesn't seem to continue streaming. Is it because i'm on IOS?

<comment><USER32> Actually I'll take that back. Halfway though. Some videos go in streaming mode while others dont. Also some videos support pinch to fullscreen on IOS while others don't. Youtube is weird

</comment></comment><comment><USER33> maximum resolution in Invidious is 720p even 1080p is supported when goes to youtube. Are there some technical limitations?

<comment><USER11> You can watch 1080p if you set "dash" as your default quality in preferences, or by adding `&quality=dash` to the end of a video URL. The reason it isn't enabled by default is that it requires proxying streams, which is more bandwidth intensive[0].

0\. [https://github.com/omarroth/invidious/issues/34](https://github.com/omarroth/invidious/issues/34)

<comment><USER23> You shouldnt need to proxy anything, there are in browser js muxers that can splice separate video/audio streams into one, or find jsvideo player capable of playing it directly.

<comment><USER11> I would recommend reading the issue I linked for why it's necessary. JS needs special access to resources that can't be provided without proxying.

You can see this yourself in a DASH player[0] and testing with e.g. [https://invidio.us/api/manifest/dash/id/CvFH_6DNRCY](https://invidio.us/api/manifest/dash/id/CvFH_6DNRCY). It will fail with

> Access to XMLHttpRequest at '[https://r5---sn- > ab5l6nzy.googlevideo.com/videoplayback'](https://r5---sn- > ab5l6nzy.googlevideo.com/videoplayback') from origin > '[http://reference.dashif.org'](http://reference.dashif.org') has been > blocked by CORS policy: Response to preflight request doesn't pass access > control check: No 'Access-Control-Allow-Origin' header is present on the > requested resource.

0\. [http://reference.dashif.org/dash.js/nightly/samples/dash- if-...](http://reference.dashif.org/dash.js/nightly/samples/dash-if-reference- player/index.html)

<comment><USER23> The most likely reason for the error is badly decoded signature. YT uses &sig as a "crypto" access token (lasting couple of hours last time I checked). I have zero trouble playing dash videos in standalone mplayer (after manually extracting two video audio sources and decoding proper signatures).

<comment><USER11> Only browsers have this restriction.

The issue I linked above doesn't appear to explain this. I would instead recommend reading this[0] comment.

0\. [https://github.com/omarroth/invidious/issues/177#issuecommen...](https://github.com/omarroth/invidious/issues/177#issuecomment-423843512)

<comment><USER23> Ok, so CORS prevents from manual muxing/proper DASH player playback. How about two separate video audio tags with javascript synchronized playback/seeking?

</comment></comment></comment></comment></comment></comment></comment><comment><USER34> Very useful - no ads and I can run it in background audio only on my iPhone just using the webapp.

<comment><USER34> It does not ask for a login.

Here is a full Pink Floyd album for your streaming pleasure.

[https://invidio.us/watch?v=k_MP8URO-Xc](https://invidio.us/watch?v=k_MP8URO- Xc)

Works perfectly in a private safari window on my iPhone.

Great work!

</comment></comment><comment> veysel-im Kemal framework used. Interesting.

</comment><comment><USER35> Looks great, except the search seems very limited.

<comment><USER11> Would you mind clarifying what you mean? If you're looking for search filters you can use them using operators[0][1], similar to Google or DDG.

0\. [https://github.com/omarroth/invidious/wiki/Search- operators](https://github.com/omarroth/invidious/wiki/Search-operators)

1\. [https://invidio.us/search?q=type%3Aplaylist+sort%3Adate+musi...](https://invidio.us/search?q=type%3Aplaylist+sort%3Adate+music)

</comment></comment><comment><USER36> This is going to come in handy in avoiding Youtube's terrible recommendations engine.

</comment><comment><USER37> Is there an ingest for my YT data?

</comment><comment><USER38> it's fantastic. it's clean, it uses all my screen estate really well, I love it.

</comment><comment><USER39> Not available yet on Android?

<comment><USER40> I use YouTube Vanced on Android. It's essentially a modded YouTube that you can install alongside the real one without issues (it doesn't replace the standard app).

[https://forum.xda-developers.com/android/apps-games/app- yout...](https://forum.xda-developers.com/android/apps-games/app-youtube- vanced-edition-t3758757)

[https://www.xda-developers.com/youtube-vanced-apk/](https://www.xda- developers.com/youtube-vanced-apk/)

Aside from a few additional options and interface tweaks, the main reason I use it is for playback with the screen off.

</comment></comment><comment><USER41> We seem to be going from pirated movies and music to pirated youtube. Not really sure how I feel about that.

<comment><USER42> Does it hurt artists really? I imagine a lot of YouTube users use ad blockers anyways, so a lot of artists have switched to in-video paid promotions.

<comment><USER43> Absolutely.

Source: I watch YouTube.

In all seriousness you hear creators talking about collapsing revenues due to adblockers all the time.

Bigger ones survive with tools like Patreon but if you're new with only a small fan base? (<10k) It's not viable anymore. The good thing about YT was always being able to take that passion full time.

Artists will always create content, but they will always need to eat too.

<comment><USER12> > Artists will always create content, but they will always need to eat too.

So do devs, which is quite often neglected when talking about open source. It often goes along the "well, then do it in your spare time"-line.

Maybe there is a huge gap between expectations and what we, as people, can actually do. There are a few who can make a living off of their channel, but you shouldn't start a youtube channel today, expecting to make some "big money".

The more traditional way would be to start small, gain more and more visibility over time, and at some point companies might be interested in "in- video" promotions, like LTT does.

<comment><USER44> > "well, then do it in your spare time"

Or, get paid to do FLOSS. (paid, not donations)

</comment></comment></comment></comment></comment><comment><USER45> So this allows free bypass of features that YouTube wants you to pay for via Premium subscription.

Why is this acceptable for YouTube? Can we start building and publishing plugins that bypass paid subscriptions for other SaaS services here too?

This is especially strange for music - music artists (in my experience) usually want you to pay for playing their music without video via subscription or by buying an album. This allows complete bypass of that - it's essentially Napster again.

<comment><USER43> Piracy is a service problem.

And so is adblocking.

<comment><USER46> "Piracy is a service problem." is an excuse thieves use.

<comment><USER47> Copyright infringement is not stealing. It's as much stealing as it's sharing.

<comment><USER46> And jumping turnstiles is just borrowing a ride.</comment></comment></comment></comment></comment>


Wordpress Exploit - <AUTHOR> https://rest.secapps.com/f/EMJN <comment><USER2> What is this supposed to do?

<comment><AUTHOR> It is a pre-configured fiddle which exploits a vulnerability in Wordpress. The readme contains some instructions how it works but it is plug and play.</comment></comment>


Ask HN: Good Codes to Start With - <AUTHOR> Hey I'm about to start coding, and I was wondering if y'all had any recommendations for any good coding books, apps, or free websites. <comment><USER2> You'll get better answers if you mention which language you're going to learn :)

Good luck!

<comment><AUTHOR> Okay thanks!

</comment></comment><comment><AUTHOR> Okay so honestly I'm so new to this I don't even know what to learn first, so I'm open to suggestions!

<comment><USER2> My advice would be to figure out what platform attracts you. Programming is a bit too broad nowadays. For instance, some people like the size and the environment of mobile apps. They have an iPhone/iPad, or an Android phone, and would like to learn how that works. So they learn Swift (for iPhone) or Kotlin or Java (both Android).

Others are attracted to the web, so they become web developers. You'll need to learn HTML and CSS, and later Python or PHP.

Then there are people who have a deep appreciation for desktop apps, so if they have a Windows machine, they learn C#. And if they have an Apple computer of some sorts, they learn Swift.

If you're leaning towards electronics as well as software, then you'll probably want to buy a Raspberry Pi, and learn how to code in C.

Personally, I'd pick my poison, go to Reddit and join the appropriate subreddit. They are a bit more welcoming to newbies.</comment></comment>


Ask HN: iPhone 6 EOL: How risky to stay on unsupported iOS (12.x)? - <AUTHOR> Apple has officially ended support for iPhone 6 and below (iOS 12.x and prior).<p>How risky from a security standpoint is it to continue to use an iPhone 6?  Will Apple continue to release security patches if exploits are found or do I need to shell out for a new phone to remain secure? <comment><USER2> You can have a read here: [https://support.apple.com/en- ca/HT201222](https://support.apple.com/en-ca/HT201222)

Basically apple does not release security updates after a major version unless it's a really extreme case.

I was in the same position and need to support several iOS apps and upgrade them to iOS13. I don't like buying new technology so I purchased a refurbished iPhone 8 with a new battery and screen.

<comment><AUTHOR> refurb iPhone 8 might be a good choice. i just saw a rumor of an iPhone SE 2 coming 1/2020 for $399 which could work.

an additional 200+ million insecure iPhone 6 devices in the world seems like a pretty bad thing :-(.</comment></comment>


Immune System, Unleashed by Cancer Therapies, Can Attack Organs - <AUTHOR> http://www.nytimes.com/2016/12/03/health/immunotherapy-cancer.html?_r=0 <comment><USER2> It's interesting that a single person dying in a gene therapy trial killed gene therapy as a field, but we're happily giving 1/3 of immunotherapy cancer treatment immune disorders. Kind of makes you wonder how that happened.</comment>


Snowden stashed "doomsday" cache as insurance policy against harm - <AUTHOR> http://arstechnica.com/tech-policy/2013/11/reuters-snowden-stashed-doomsday-cache-as-insurance-policy-against-harm/

<comment><USER2> You don't need a server to make something decryptable by 3 people.

Just distribute to each person 1/3 of the key. If you want to allow any 3 of n-people to decrypt the archives, produce one archive for each combination of possible passwords among the n-people. To make things simple assign each person a letter and name the archives with 3-letter names indicating whose password is necessary and what order to enter the passwords.

</comment><comment><USER3> Doesn't this make the issue of this information being used against politicians and other public officials by ANYONE immediately oblivious?

My question, is that why should we collect this much intelligence, if it's simply just going to be a disadvantage to our democracy? Surely this has already happened, only with a competing government making the demands opposed to a whistleblower using the information as a shield?

<comment><USER4> The problem is not just collected intelligence, as a passive action, but more active actions, like planting backdoors ready to accept (maybe destructive) commands in foreing critical networks.

I would be very worried if that new information is so destructive that compared with all that was released till today is still like a doomsday weapon, and thats why it was not released yet. Even if Snowden didn't got that information, that they consider that information that they keep secret is so destructive by itself is just a reminder that so far we seen just the tip of the iceberg, and if you are outraged by what you know that they are doing, you will be far more then realize how deep the rabbit hole goes.</comment></comment>


Animatic by Inkboard – Animation for everyone. animatic.io - <AUTHOR> Animatic makes it easy to draw animated GIFs and videos (iOS).  Available on the App Store for free download.  Once you've made an animation, you can share it on your favorite chat/ social app, or save it for yourself to edit later. <comment><USER2> clickable link please?</comment>


50% of expert chess tournament games end in a draw - <AUTHOR> http://www.randalolson.com/2014/05/24/chess-tournament-matches-and-elo-ratings/

<comment><USER2> the value of (ability to use) white's first move advantage increases with player's skill level. so, in every single expert game, black has an incentive to aim for a draw.

<comment><USER3> Is this actually true? If someone said "the ability to use the black pieces to compensate for white's clear first-move advantage increases with skill level, so white's advantage is greater when the players' skill level is lower", I wouldn't find it any more or less convincing than your justification. Is there data we can look at?</comment></comment>


Results of YCNews online bookmarking survey - <AUTHOR> http://selfdebugging.com/2007/07/05/online-bookmarking-survey-results/ <comment><USER2> Thanks for posting this. When feedback is solicited its always nice to see a result summary. Often it just disappears into a void.</comment>


Grail S-1 - <AUTHOR> https://www.sec.gov/Archives/edgar/data/1699031/000162827920000227/grails-1.htm <comment><USER2> I had not heard of them, but their mission statement in the S-1 is simple enough:

>> Our mission is to detect cancer early, when it can be cured.

<comment><AUTHOR> You definitely have heard of some of their investors :)</comment></comment>


Ask YC: Best way to get an internship in SV, for internationals - <AUTHOR>

Hello YC/HN:
I'm trying to find an internship with a startup (one I believe in)/tech company in SV but I need sponsorship since I'm from Canada. I got an employee to refer me to Apple, but I would like some contingency plans. Any suggestions other then just firing off resumes to startups (which I've done).
Notes: I'm a business person not a lovable code monkey <comment><USER2> Aussie here, looking to move to Cali at the end of 2009. Is there any particular events or avenues/agencies which assist internationals in finding jobs, especially in our sectors?

Any advice or tips?

<comment><USER3> You could try contacting Advance (www.advance.org).

I did it the hard way and just came on over. It's not bad as it allows you to network directly with people.

Contacting companies directly helps. Are you at uni, or at work? If at uni, usually there will be career fairs and the like which attract international companies. Google, Sun and IBM definitely came by looking for people specifically for their SV offices.

<comment><USER2> I'm a full-time Uni student but work as a Digital Media Coordinator for certain digital television channels. Are these fairs in Aus, or Cali?

<comment><USER3> In Australia, at most major universities. I went to University of Queensland and had plenty of opportunities.

</comment></comment></comment></comment><comment><USER4> How about a code monkey? Sorry for hijacking your thread.

<comment><USER5> This may be helpful if you have a degree:

<http://en.wikipedia.org/wiki/TN_status>

<comment><USER6> As the article alludes to, it's tricky to find a category of "professional" that you can fit into. I just can't see them allowing an intern in anything to be classified as a "professional." (Former TN holder here).

</comment></comment></comment><comment><USER7> Email startups you like and ask?</comment>


Dorian Nakamoto Is Suing Newsweek - <AUTHOR> http://techcrunch.com/2014/10/13/dorian-nakamoto-is-suing-newsweek/ <comment><USER2> Good! I look forward to seeing the lack of method applied by Newsweek shown in court documents. It was a phenomenally irresponsible thing for them to publish, and I hope they pay for it.

edit: a friend pointed out that I should probably say that I write for nbc news so I'm kind of trashing the competition. This is really just my personal distaste speaking, though.

<comment><USER3> props for the edited disclosure.

</comment></comment><comment><USER4> The reporter's attitude even after it was demonstrated how sloppy her work was (if she didn't know) really put a nail in the coffin of having any sympathy for her

</comment><comment><USER5> As someone who has been fighting in court for a number of years against an author and publisher who widely distributed blatantly false material, with plenty of hard evidence to support my claims, I think this will be a really hard lawsuit to win. Newsweek will argue First Amendment all day long. Defamation law varies by state and California's standard involves "special damage," which might be hard to prove for someone without steady employment. (See [http://www.dmlp.org/legal-guide/california-defamation- law.](http://www.dmlp.org/legal-guide/california-defamation-law.)) There might be some kind of emotional distress claim, which would make sense, but it's not going to be easy to put a number on.

You might expect to see a settlement given Newsweek's backtracking.

[I'm not a lawyer. This isn't even close to being legal advice.]

<comment><USER6> I don't think this will go to court and given the exposure of this screw-up, Newsweek will have no choice but to give him a nice fat settlement.

</comment></comment><comment><USER7> It seems a lot of people forgot about the piece, or at least that's what Newsweek is hoping.

Whether or not Dorian Nakamoto won the lawsuit or not, Newsweek's credibility goes down at least a notch.

<comment><USER8> I thought Newsweek shut down and sold their name a whole back. So Newswrek isn't really Newsweek.

</comment></comment><comment><USER9> I hope something good for Dorian Nakamoto comes out of this whole nonsense because he's obviously a guy whose seen better times. Everyone at Newsweek needs to quit and go find a real job because their entire existence only made sense before Digg and Reddit came into existence. There's no journalism there, it's just the thing you flip through for the most attention-grabbing bits.

<comment><USER10> Easy on the grave dancing, buddy. Didn't Reddit's citizen journalists accuse the wrong people for the Boston Marathon bombing?

[http://www.usatoday.com/story/news/2013/04/25/boston- bombing...](http://www.usatoday.com/story/news/2013/04/25/boston-bombing- social-media-student-brown-university-reddit/2112309/)

Surely, this a is sin greater than whatever Newsweek may have committed.

<comment><USER11> Yes, out of a few million users, a few committed bad acts. Who the Hell could possibly have seen that coming?

<comment><USER10> The point is not that there are a few bad apples out there, but that Reddit (and other crowd sourced media) have limited ability to police/prevent such actors and their actions. I posit that the editors of Newsweek and other assorted old media have more control over their reporters both before and after the story is published.

</comment></comment></comment></comment><comment><USER12> Yup, fair enough.

Looks like Newsweek fucked up.

</comment><comment><USER13> Reporters are allowed to make mistakes in reporting, and accusing someone of inventing a famous and well-liked technology is not defamatory.

This will get killed on First Amendment grounds pretty quickly.

<comment><USER14> Of course they're allowed to make mistakes but gross negligence needs to be held accountable for.

</comment></comment><comment><USER15> What if Satoshi Nakamoto donate to Dorian Nakamoto with bitcoin? That will be amazing ... ...

</comment><comment><USER16> Dorian should sell his bitcoins to fund the lawsuit.

</comment><comment><USER17> This is silly. If all the publicity really "hurt" him he wouldn't be spurring up all this publicity. He's just ganking fools for all they got.

</comment><comment><USER18> It's worth noting that Newsweek is owned by the same folks who got hit with a $2.3MM fine by the EPA for knowingly violating asbestos removal rules. [http://blog.wouldbetheologian.com/2014/04/thats-gotta- hurt.h...](http://blog.wouldbetheologian.com/2014/04/thats-gotta-hurt.html)

<comment><USER19> Is it worth noting? That just sounds like a smear that's unrelated to the posted story to me.</comment></comment>


TaskRabbit Confirms Layoffs As It Realigns To Focus On Mobile And Enterprise  - <AUTHOR> http://techcrunch.com/2013/07/08/taskrabbit-confirms-layoffs-as-it-realigns-to-focus-on-mobile-and-enterprise/ <comment><USER2> Taskrabbit is a great idea and very useful. Here are a few things they could improve:

1) Take a page from Exec and do flat-rate pricing in different verticals (e.g. $25/hour for Exec Errands). Doing a price auction every time is too time consuming, but that's the UI default at the moment.

2) The refocus on mobile/realtime (like Exec) is also good.

3) Figure out a way to incentivize people to do more transactions through the site. Once you meet a good service provider, right now there's an incentive to do all future interactions outside the site.

4) Re: enterprise refocus: do some sales calls with all the admin assistants of VC funds and funded startups in the Valley. Set up a bulk enterprise account for $Xk per month and have them go crazy assembling Ikea furniture.

Taskrabbit is a great concept and really should succeed with some tweaking.

</comment><comment><USER3> I think collaborative consumption companies changing their business to focus on a specific niche or vertical is quite common. Getable (fka Rentcycle) did it. Zaarly did it.

I'm head of sales at balancedpayments.com, a payments company that works with online marketplaces, so I interact with dozens of marketplace founders in a given week, and in my opinion the true P2P/collaborative consumption movement is a few years away.

[1]

<comment><USER4> The problem of Taskrabbit is that they could not be associated with one clear repeatable need that people had, which lead to a sub par experience for almost all use cases.

Most marketplaces in this space are pretty "directed" by the Company (Postmates: deliver food, Instacart: delivery grocery, Lyft: deliver people with car, HomeJoy: deliver cleaning ladies).

Lyft is a good example of a P2P system that worked when everybody before them failed because Zimride "directed" the marketplace when all previous tentative where about "grab people on your way to work".

<comment><USER5> Great point. As co-founder of Scripted, I whole-heartedly agree.

I think Leah is great -- I've never met her but have heard and read good things. However it's hard to be one size fits all anymore. Craigslist and oDesk may be the last two marketplace leaders without single focus.

<comment><USER4> Indeed, especially in the era of mobile which tend to focus on remote control solutions to problems. I like Scripted a lot - funny that you work with Paul B. also ;-)

</comment></comment></comment></comment><comment><USER6> Maybe the new people can make an iPhone app that doesn't crash every time I try to use it, and lets me message people who bid on tasks?

The web version works fine, but the mobile version has serious issues.

I'm almost certain that whatever they're doing, this is an example of where a v2.0 rewrite makes sense.

</comment><comment><USER7> I think it is pretty tough to see how this works on a such a low-margin service - in order to reach scale, they need to do a massive education of the ordinary consumer. Huge costs. Looks to me like they raised their money on that vision, but have found that $30m actually doesn't get you that far.

So it looks to me like they're shifting to the B2B side - which is smart but also difficult given the competition in that space. oDesk has been shifting their model away from the 10% commission on small account model to a more enterprise sale - I expect TaskRabbit to move that way as well.

<comment><USER8> As an oDesk intern… is it really a shift so much as an expansion? It seems like we still do plenty of work on "small" accounts.

<comment><USER7> Good point - it is likely an expansion - I would ask this: what is management saying is the focus for this year? Enterprise or small accounts? My guess would they would say "Small accounts are still important and our core, but the enterprise is where our next stage of growth will come from." The reality is that small accounts don't provide the same kind of reoccurring revenue that VCs and Wall Street likes to see. And to grow beyond a certain point, you have to have a massive number of small accounts and acquisition to make up for the churn. Large enterprises, by contrast, are a longer sales cycle but more predictable revenue and generally, in my experience, lower churn.

</comment></comment></comment><comment><USER9> Hope they are able to grow their consumer service. I've found it tremendously useful. I used it when I proposed to my girlfriend, to hire talent. I also used it to pick up something very important from Jfk airport that I had left on my flight. If you use if for the right reasons, it's a magnificent tool.

</comment><comment><USER10> I think their move to business is really smart. The times I've used it was to get data for small MVP projects (eg to get happy hour menus from several SF restaurants) and it was awesome for that.

I never like their consumer model—but if they could become the "LinkedIn for temp workers", I think it could be a hit.

</comment><comment><USER11> The problem with taskrabbit is there is no global liquidity in the marketplace, so you need to boil the ocean building local micromarkets. Too much can go wrong with local jobs so you need deep touch in checking IDs, background checks and so forth. It's the opposite of Freelancer.com (my company).

</comment><comment><USER12> Remember when TaskRabbit launched followed by a hundred clones?

<comment><USER13> I actually have a hard time thinking of clones in this space (not counting general freelance sites like odesk and fiverr)...who was TaskRabbit's biggest competitor (not counting Zaarly, which also pivoted)

<comment><USER14> www.taskisland.com [http://taskpandas.com/](http://taskpandas.com/) [https://sortedlocal.com/](https://sortedlocal.com/) etc... there are lots

<comment><USER15> Those 3 wouldn't even be considered competitors. All have an Alexa higher than 1 million, so they are barely known. Depending on how long they've been around, one might say they've failed.

<comment><USER16> Hi, I'm one of the Founders of Sorted ([https://sortedlocal.com](https://sortedlocal.com))

Firstly, Alexa data isn't fresh, I'm pretty sure it's up to 3 months old...3 months ago we weren't live.

The UK isn't as receptive to task marketplaces as the US, hence why nobody is really killing it over here, but times are changing and traction is starting to come through.

We started out as a clone to the original Zaarly, but realised that the data was screaming at us to do something different.

Sorted is now a profile driven marketplace, our Sorters (task do-ers) create profiles and Customers simply search what they want, so a cleaner near postcode x. They browse profiles and request the Sorter, payments still run through the platform.

It opens up a lot more marketing opportunities by leveraging the Sorter base, and the model is being pretty well received in the UK.

We launched and MVP about 2 months ago learnt from the data, iterated and launched another version about 2 weeks ago, we've gone from 800 users on the Zaarly model to 15,000 on the search model, and we're optimising the funnel as we speak.

I assure you, we have not failed, we're a very young business and it's a steep learning curve, but the UK is a tough nut to crack.

</comment></comment></comment></comment></comment><comment><USER17> I make good money on TaskRabbit. I hope it doesn;t move too far away for a "Regular guy" like me to make use of it...

<comment><USER18> what kind of stuff do you normally do? what is "good money" in terms of USD?

<comment><USER17> I do mostly engineering, and by that I mean I may do anything from backing up someones data to assembling Ikea furniture at an office in Midtown. I bring in sometimes $600 extra a month for meeting cool people and doing shit I generally like doing anyway.

EDIT: I'm learning Rails right now and doing Tasks to bring money in while I learn... It would be so rad to work for them as a Rails dev one day. Circle of life, man.

<comment><USER19> > engineering, and by that I mean I may do anything from backing up someones > data to assembling Ikea furniture

I thought I'd heard pretty much every creative interpretation of the word "engineering" possible but have to admit - you got me with the IKEA furniture assembly.</comment></comment></comment></comment>


The 25 States Most Likely to Go Bankrupt - <AUTHOR> http://www.comcast.net/slideshow/news-statesmostlikelytogobankrupt/

<comment><USER2> I hate "not in my backyard" stuff that assumes the rest of the world will be just fine if a few places run into trouble.

If even a handful of entire states go bankrupt, the people outside of those areas will not be immune to the effects. The same is true for a lot of other things that happen in the world. This isn't something to be watched from the sidelines, it's something that should receive real support. The story should be, "here's how you can help these struggling areas".

(Oh, and thank you Comcast for insulting my WebKit-based browser and suggesting I "upgrade" to something you "support". Time to join 2011 and stop displaying these browser-sniffing pages.)

</comment><comment><AUTHOR> To avoid the slide-show:

1\. Rhode Island

2\. Connecticut

3\. Massachusetts

4\. Illinois

5\. Hawaii

6\. New Jersey

7\. New Hampshire

8\. Indiana

9\. Louisiana

10\. Oklahoma

11\. Montana

12\. West Virginia

13\. South Carolina

14\. Maine

15\. Kansas

16\. Vermont

17\. Mississippi

18\. Alaska

19\. Maryland

20\. Kentucky

21\. Missouri

22\. New Mexico

23\. New York

24\. South Dakota

25\. California</comment>