Ask YC: Ask.com -- Why don't we use it? - <AUTHOR>

I recently rediscovered Ask.com and wondered to myself what I found unappealing about it all. After all, as nice as it looks and as functional as it is, I was still loathe to adopt it.
But then I realized why: I use Gmail. I don't like having to go to a different site to use my mail. I also use iGoogle and read my news. I can't get out of using it all.
So that leads me back to the question, why don't YOU use it? Same reason?
Why doesn't ask.com start providing email services and personalized accounts? <comment><USER2> I tried Ask.com when they redesigned the whole site. Their search is not very good, but i know lot of people using them.

I recently started using Yahoo as my default search, results are way better than Google. Try it out for yourself.

</comment><comment><USER3> Why do you use it? Do you get better results than with Google? "Why not" is not a reason.

</comment><comment><USER4> I don't use ask.com because they index less pages more slowly and not as well.</comment>


Ask HN: Retraining into data science? - <AUTHOR> How can someone with statistics and science knowledge retrain into data science?  A close friend of mine has an MSc degree in plant ecology but found she enjoyed working with statistics, and has heard there are more jobs available in data science than biology. <comment><USER2> Let me preface this with my background: mathematician, software engineer, and statistical programmer. Doing this way before the data science hype.

Regarding your friend, it's possible, but - right now - data science is more closely related to implementation than interpretation of results.

Maybe your friend is looking for something more similar to a Quantitative Analysis position?

It would probably be easier to extend stats and science knowledge into a statistical analysis domain, rather than practical programming, neural networks, database algebras, computational complexity, etc.

Good luck though!

<comment><AUTHOR> I myself am a computer scientist with only a fuzzy knowledge of the precise meaning of "data science". "Quantitative Analysis" is probably more the right idea.

</comment></comment><comment><USER3> Coursera offers a data science specialization:

[https://www.coursera.org/specialization/jhudatascience/1?utm...](https://www.coursera.org/specialization/jhudatascience/1?utm_medium=listingPage)

It's cheap [if you want the certificate, free if you don't] and provided through John's Hopkins.

</comment><comment><USER4> You might find my comment on a related thread useful: [https://news.ycombinator.com/item?id=8444705](https://news.ycombinator.com/item?id=8444705)</comment>


Finnovation SF – October 14 - <AUTHOR> https://www.finnovation.events <comment><AUTHOR> Finnovation SF is a conference Sila is organizing on Oct 14 in SF. We are delivering on our promise of "From Founders to Founders" with an amazing group of speakers :

\- Adam Erlebacher | CEO, Fabric

\- Nadim Homsany | President, EarnUp

\- Laura Spiekerman | CRO, Alloy

\- Alan Lewis | CIO, DiversyFund

\- Matt Harris | CEO, Bloom Credit

\- Brian Hamilton | COO, SafeCorp

\- Tory Reiss | Cofounder, TrustToken

\- Cameron Morris | CTO, Fabrica

\- Emily Cangie | Business Development, Create33

\- Antoinette O'Gorman | CCO, PolySign

\- Matthew Van Buskirk | CEO, Hummingbird Financial

\- Adam Shapiro

\- Sankaet Pathak | CEO, SynapseFi

\- Jim Brusstar | President, Treasury Prime

\- Hank Word | CTO, Evolve Bank and Trust

\- Randy Fernando | Co-founder Vault

\- Shamir Karkal | CEO, Sila

\- George Kurtyka | COO, Joust

\- Edrizio de la Cruz | CEO, Arcus

\- Ohad Samet | CEO, TrueAccord

\- Sarah Adams | Startup Growth, Plaid

\- Asya Bradley | VP of Partnerships, Socure

\- Emily Kramer | Head of Marketing, Carta

</comment><comment><USER2> This event is going to be ridiculously good. The speakers are super impressive. Can't wait to meet all of these heavy-hitters in person.</comment>


Moving Haskell processes between nodes - <AUTHOR> https://www.fpcomplete.com/user/agocorona/moving-haskell-processes-between-nodes-transient-effects-iv

<comment><USER2> I'm the author. Thanks for publishing it here

<comment><USER3> It's interesting to consider!

And it seems like this got a lot of points, but no one knows what to say constructively about it.

Perhaps moving from a magic situation of a context moving between the server and the client (which is an awesome thought for a pipe dream) to an actual example with GHCJS or so might spawn a larger reaction or movement.

<comment><USER2> Yes, I will add more examples as soon as I can. It is in an early stage, but I plan to update the article with more examples.</comment></comment></comment>


Norway to build world's first floating underwater traffic tunnels - <AUTHOR> http://inhabitat.com/norway-to-build-worlds-first-floating-underwater-traffic-tunnels/ <comment><USER2> >floating

OK

>underwater

Wait, what??? [Reads article]... OK, that is nuts. Personally I get claustrophobic enough driving through the Allegheny Mountain Tunnel...</comment>


If you have a file called todo.txt on your computer, you're in the right place - <AUTHOR> http://todotxt.com/ <comment><USER2> I've started to feel that todo apps have one major problem: they don't do the work for you. And this is why we're so obsessed with todo apps - we don't really want to do the work, we just want to play around with how we prioritize and organize the work.

In most cases, if we just got a lot of stuff done, we'd have no need for an app, because the list of stuff to do would be rather short.

<comment><USER3> > In most cases, if we just got a lot of stuff done, we'd have no need for an > app, because the list of stuff to do would be rather short.

I find quite the opposite: The more things I do, and the more productive I am, the more rapidly things get added to my todo list. It's when I'm less productive that my todo lists stay short.

It's an interesting phenomenon that (at least my) todo lists are effective sticks for the carrot in that the size of the todo list scales with productive output.

<comment><USER4> There's a famous quote along these lines: "If you want something done, ask a busy person to do it."

</comment></comment></comment><comment><USER5> I started using org-mode for text-based notes/todos recently, even though I wasn't an Emacs user.[1] Org-mode has its own website, and more well- documented features than most programs I use! ( <http://orgmode.org/> , manual <http://orgmode.org/manual/> )

[1] It's an Emacs mode. I'm using it happily without knowing much Emacs.

<comment><USER6> Agree, Org documentation is very good, and easy for newbies to start as well. Certain features like Org-agenda, export into multiple formats and its ease of note-taking are very good features

</comment></comment><comment><USER7> I hope more software comes out that use Dropbox for storage. I want an Instagram for Dropbox, a music locker with a player for Dropbox, a Skitch for Dropbox, an Xmarks bookmark sync for Dropbox.

One Password, Hackpad, O'Reilly Media, and now this todo.txt are all doing the right thing and may they be successful for a thousand years. There is no reason I should have to pay Evernote, Apple, Amazon or Google any cloud storage money when I already use Dropbox, and there's no reason why I should have to deal with ads on "free" services either.

<comment><USER8> I work on Platform at Dropbox and I agree :) We want great developers to build all of these things and I want to help them. Anyone out there please reach out!

<comment><USER9> The few apps I've granted access to my Dropbox always get (or take) full access to all my files, which is disconcerting. Is it possible for apps to be granted access to only the certain directories or limited areas of my Dropbox?

<comment><USER10> This is one of the reasons I stopped using Todo.txt like a year or so ago.

It needed access to EVERYthing. I understand the developers will not be accessing other files but I just can't let anyone access my personal photos, my school work, my statements, etc. There is a reason I have a password on my computer and letting a program access everything in the folder I love the most just isn't acceptable.

There has to be a way to grant access to a certain file and I will gladly start using these Dropbox apps.

<comment><USER11> > but I just can't let anyone access my personal photos, my school work, my > statements, etc.

They shouldn't be on Dropbox in the first place. What you put on Dropbox is essentially public - be it for their admins or for law enforcement agencies who don't need a warrant to access your dropbox.

</comment></comment></comment></comment></comment><comment><USER12> I think Workflowy has an amazing approach to this problem (hierarchical, collapsable tree) and I simply wish they added date functionality.

Right now, I can't use it for TODO, and use it only for brainstorming. For TODO, I now use getflow.com

<comment><USER13> I like the idea of Workflowy, but it really needs offline support. I can't even realistically evaluate it without that. Last I heard they were working on it.

<comment><USER14> Yeah, we're working on it. Testing it on our phones now, seems to be working pretty well.

<comment><USER15> That, raw data access and I'm all for it!

</comment></comment></comment></comment><comment><USER16> Same general thrust of Taskpaper, which is another to-do list based on a standard text file format.

\- <http://www.hogbaysoftware.com/products/taskpaper>

\- <http://www.youtube.com/watch?v=N5B3mTuC2Xg>

It's what I use for my todo list. This one seems a bit more geeky (cli friendly)

<comment><USER17> Surely this is geekier than Todo.txt: <https://github.com/davidoc/taskpaper.vim>

(I prefer it, in any case)

</comment></comment><comment><USER18> The idea behind todo.txt is pretty neat, but in its basic form it's missing a few features. Luckily it's easily extendable.

I hacked up (and I do mean hacked up) two python scripts that add two bits of functionality that are essential for me:

\- Timed tasks: add a date to a task and when that date rolls around, the task gets assigned top priority.

\- Repeating tasks: add a human readable marker to a task that indicates it needs to be repeated every X days and every X days a copy of that task is assigned top priority. Another copy of the task is set to pop up in the set X number of days.

For me, these make the rather simple todo.txt the perfect todo list / note keeping setup. Unfortunately the todo.txt Android app doesn't work with my extensions so I have no use for it (I just look through the txt file in the Dropbox app if I need to see it on the go).

</comment><comment><USER19> I'm loving how the trend now seems to have apps using Dropbox to store my data. Hopefully the next step will be to use a standard self-hosting API (that does not seem to exist yet) for those who are happy to pay for software but want to keep our own data.

<comment><USER20> > will be to use a standard self-hosting API

What about rsync? It's an open protocol that can be used to synchronize data across multiple devices.

<comment><USER21> It doesn't do two-way sync. Nothing syncs as well as Dropbox does, right now. Maybe AeroFS is close to it, though.

<comment><USER22> Dropbox does not sync well. I always end up with tons of files like _"Person As copy of file x at date y"_. It only works if you are "working" alone with a folder and if you only use one device at a time.

The problem is that this is the only way to handle sync safely unless you want to manually merge as in a SCM. This is why every attempt at syncing since the dawn of IT has always sucked.

<comment><USER21> That means that Dropbox syncs as well as it's possible for a program to sync, though, doesn't it?

</comment></comment></comment></comment></comment><comment><USER23> Laughed when I saw this post. Since I had just been looking at my TODO file for next steps on a project.

I like being able to include a TODO file in a project, commit it to git and then sync across platforms/machines etc. Low tech, free task management.

<comment><USER13> Hard to get and update from your phone, though. That's where I usually want to get my todo list together.

<comment><USER24> you can commit code from your phone but not change the TODO list?

<comment><USER13> Well, my point was that I can't commit from my phone. At least I don't know how, but it may be easier than I think.

</comment></comment></comment></comment><comment><USER25> Well, the last time I tried todo.txt-touch (for android), synchronization didn't really work and I lost information after a few days of trial. Development also seems to have rather stalled. There are only very few commits (other than cosmetic changes) to the git repo while the app feels rather unfinished. So, I don't think, todo.txt changes much in its present form.

</comment><comment><USER26> I just have a notebook on Evernote called bucket lists. I have notes like: _Movies [movies I want to watch]_ Music [...] _Books [...]_ Shopping list [things to buy online or in-store]

I think the system works well enough for me. After all, the best organizational system is the one that keeps YOU organized - not one that satisfies others.

</comment><comment><USER27> I've just had a look at the CLI functionality. About a year ago I've been looking for something similar and couldn't find anything light enough which just let me add TODOs on the command line. I ended up writing my own in about a hundred lines of Python which implemented the most important functionality. It had no way to filter or anything (that's what grep is for though) but it worked well. By now I have abandoned todo-lists completely after realizing that merely organizing my work won't get the job done. The best way to deal with work is to actually get it done, rather than procrastinate by just thinking about it.

</comment><comment><USER28> The #1 problem I have with most to-do list applications is that they don't support (or have bad support for) subtasks. Unfortunately, it doesn't seem like this is a main feature of todo.txt either....

<comment><USER29> Google Tasks supports sub-tasks. I use "Tasks" on android for phone sync (weird that android has no native task app to sync with google tasks -- atleast I've not found one)

</comment></comment><comment><USER30> Personally, I started using Steve Losh's t for my tasks recently, and I love it.

<http://stevelosh.com/projects/t/>

If I ever want/need to, I can always access/modify my tasks file via Dropbox on any machine or phone. But I don't. Fact is, if I'm ever actually doing work, I'm usually on my Chromebook and have access to the terminal. Moreover, that's when I'm actually completing tasks, or adding new ones.

It's honestly a great, simple, no-bullshit system. You should give it a shot.

</comment><comment><USER31> I've been using Todo.txt for about 8 months now.

I don't think it's a question of what makes it better that another product but what makes it right for you.

I like the CLI properties of it and the ability to extend it with new features in any language you want.

Entry of new tasks and completion of done ones is really fast. The Android app isn't as beautiful as it could be but it does the job. My hard requirement was that my tool be available on Mac/Linux/Android. Having a Dropbox backed service made that a bit easier.

</comment><comment><USER32> I would like to yet see a todo list software that sits on the neck on the user to complete the task he himself has entered. I need an outliner with following abilities: Expected result with a deadline Actions to complete the expected result Next review date/time

The software should pop up in the middle of anything to shout out the action after the review time has expired.

That completes all the to do list software has to offer.

</comment><comment><USER33> The iPhone equivalent of Todo.txt for me is the Notes app. Ironically the reason Todo.txt behavior exists is because all the other Todo apps _try_ to be Todo apps, including this one.

Sometimes I just want a blank sheet with no Todo magic. That is why I use Notepad and the Notes app.

</comment><comment><USER34> Site is Text [and image and Video] heavy. Download link is down, and it should have much more prominence within the page. I would take down video and produce a minimal page, more in line with a minimal CLI todolist. Bit it looks nice, may really try it out.

</comment><comment><USER35> I have a TODO.yaml. At my previous job I used to serve it over HTTP to the LAN for my co-workers to see. I don't think many of them used it but I was hoping that we could all do that and then I could have a structured view of what people were working on.

</comment><comment><USER32> Todo lists are a great utility for people like me who are obsessed with exploring ideas and forget rudimentary tasks like paying bills

</comment><comment><USER36> Nice. I'm wrapping a text-based todo/note taker now. I think there's still a lot of people who use these.

</comment><comment><USER37> I have a todo.txt on my google drive.

</comment><comment><USER38> How is it different from Org mode?

<comment><USER39> Well it's way less advanced and less standardized than org-mode but apparently it uses DropBox to automagically sync with your shiny smartphone/tablet.

Pretty sure there are solutions out there to add this functionality to org- mode that said ; )

</comment></comment><comment><USER40>
      joey@j-comp:~$ locate todo.txt
      /usr/share/vim/vim73/doc/todo.txt

Does that count?

</comment><comment><USER41> Mine's called ShitToDo.rtf

</comment><comment><USER42> Site is down.

</comment><comment><USER43> $ cat ~todo.txt

Things to do:

fill out this list

everything else

$

</comment><comment><USER44> The problem was solved by Google Docs years ago. It already gives me access from any browser and all my devices via Drive. Just import your todo.txt as a Docs document and your done. Full change/revision log. Completely free form - zero imposition of a format or task flow beyond what you impose on yourself, which may be nothing more than dumping down your thoughts and reviewing them occasionally. IMO its the only viable solution and i wouldn't consider using anything else.

<comment><USER45> Agreed. Does todotxt.com handle the fact that I might have the document open on 3 or 4 computers and a tablet or 2 and a phone and handle the potential for conflicts etc...?

</comment></comment><comment><USER46> Site is a bit text heavy. How's it better than wunderlist?</comment>


Putty 0.61, 4 Years in the Making - <AUTHOR> http://www.chiark.greenend.org.uk/~sgtatham/putty/

<comment><USER2> The full release announcement:

[http://lists.tartarus.org/pipermail/putty- announce/2011/0000...](http://lists.tartarus.org/pipermail/putty- announce/2011/000016.html)</comment>


Recalled SUV Destroyed $45M in Cars,Burned a Ship,Sparked Lawsuit - <AUTHOR> https://jalopnik.com/how-one-suv-fire-destroye <comment><USER2> Your link doesn't work, this is the full one: [https://jalopnik.com/how-one- suv-fire-destroyed-45-million-i...](https://jalopnik.com/how-one-suv-fire- destroyed-45-million-in-cars-damaged-1826086012)

</comment><comment><AUTHOR> (May 2018)

Full title: "How One Recalled SUV Destroyed $45 Million In Cars, Burned A Massive Ship, And Sparked A Legal Battle Between Ford And BMW"</comment>


Ask HN: Frontend vs Backend learning - <AUTHOR>

I might be getting the two confused but recently I was offered an opportunity to take either Python or Javascript training program and I'm deciding on which is better for me at the moment to get into web development. I always hear Frontend is much harder than Backend?.
As far as I see it Python is Backend and Javascript deals with Frontend stuff related to HTML and CSS.
If given this opportunity to study the either Python or Javascript I'm curious what do the wonderful HN community choose and why based on your answer.
IMO I like both and wouldn't mind learning either one at the program but I have to choose one so help me decide thanks. <comment><USER2> Looking at some of your earlier submissions here, it seems like you already have an interest in Python -- why not go with that? It's a powerful language.</comment>


Ask HN: 5-digit alphanumeric or 12-digit integer simpler and more secure? - <AUTHOR>

<comment><USER2> This is for some password authentication?

I never understand why people restric password length. Why not 12-char alphanumeric? Or 32-char alphanumeric? Most people will use 10-char passwords (or shorter), but those concerned with security could use better.

BTW - I'v got idea how to ensure people will use unique secure passwords on your site. It's a little harsh, but still.

For each new user in registration form calculate 4-letters hash (from user number, timestamp, whatever), and require user to include this hash in his password (and that the password is at least X characters long). User that has favorite password "swordfish" will just use "swordfishX13h" probably, but it's still better than "swordfish".

<comment><USER3> I think the question is not password related as the key may be used as a UID for a "semi restricted" link.

</comment></comment><comment><USER4> Even with 5 x 62 case sensitive alphanumeric digits, 12 integers is roughly 1000 times more secure

</comment><comment><USER5> Compare possible brute force combinations: (26+10)^5 vs. 10^12

<comment><USER3> That would be 10e12 vs 60.466.176. Pretty easy from the security pov.

Also if an alphanumeric string should be entered / remembered by humans make sure to strip I, l, etc.

</comment></comment><comment><AUTHOR> 12-digit integer e.g. 907653849272

</comment><comment><AUTHOR> 5-digit alphanumeric e.g. HEL2N</comment>


Only 15% of the Basecamp operations budget is spent on Ruby - <AUTHOR> https://m.signalvnoise.com/only-15-of-the-basecamp-operations-budget-is-spent-on-ruby/ <comment><USER2> On the Amazon Premium:

"There's a lot of spend in that bucket. The biggest line item is the million dollars per year we spend storing 4.5 petabyte worth of files. We used to store these files ourselves, across three physical data centers for redundancy and availability, but the final math and operational hassle didn't pan out. So now we're just on S3 with a multi-region redundancy setup."

"I do appreciate the youthful incredulity of thinking you can save us a million dollars a year by pointing to a hard-drive rack . It's good to question the fundamentals! And we've done just that. Spreadsheets up the wazoo. We don't spend a million dollars with glee. But you can try to cut corners on redundancy and availability, and then you can see how much leniency your customers will show you when you lose their files and have to explain yourself. I'm the one who has to say sorry! So I have to be able to look at our setup and believe we did everything possible to keep our customer's data safe, and then some. This is that."</comment>


Go: Ten years and climbing - <AUTHOR> https://commandcenter.blogspot.com/2017/09/go-ten-years-and-climbing.html <comment><USER2> Having dealt with enough spaghetti code over the years (just a few of industry experience, and some more years of academia), I understand what Go's strengths are. It's an opinionated language that stops users from being too clever or writing code that's too complex.

That said, I've always hated the trends that have brought Golang into popularity. The engineers I've felt who could benefit from Golang the most could also benefit by getting a better handle on their fundamentals and taking a moment to design their codebase more. As a simple language to wire pieces together, Golang is fine, but it really doesn't give you the tools (imo) to be productive for anything more complex than simple apps. It's a great alternative to JS (again imo), but not something I'd like to write.

We shouldn't need to treat the developer like a toddler to get them to write safe code. I'm a much bigger proponent of languages such as Rust or Haskell which give the developer the _tools_ to ensure their own data integrity, but I guess that says something about me as a developer and why I don't like Golang.

<comment> why-el > As a simple language to wire pieces together, Golang is fine, but it really > doesn't give you the tools (imo) to be productive for anything more complex > than simple apps. It's a great alternative to JS (again imo), but not > something I'd like to write.

How do you address its popularity in the field of cloud computing then (which I presume you would agree is pretty complex)? This was mentioned in ample detail by Rob in the article. Is Kubernetes not a "productive" system by your definition?

<comment><USER3> The language that appeals to the masses with low barrier to entry in a niche always wins the popularity contest in that domain. I attribute it to herd mentality; assuming skill has a standard distribution, the average developer herd gets a massive head start.

You can see the idiot friendly language eclipse in popularity in other domains too even though "better" alternatives exist:

\- elegant general purpose: python over ruby

\- web: php over python/rails

\- SQL databases: MySQL over Postgres

\- NoSQL: MongoDB over CouchDB/Postgres

Go's just the first mass appeal language in the concurrency performance domain and it just opened the door to a lot of developers who before wouldn't dare play in the space.

<comment><USER4> PHP has some unique design considerations that make it better suited for web. PHP's main significant weaknesses for that domain would be the lack of a strong type system, lack of strong event based server ecosystem (what reactphp does, nodejs, golang, etc.), and it's slower than Java. It has multiple popular long supported rails alternatives. Python and Ruby have nothing over PHP for web development. PHP has the absolute best first class support for isolated http request handling, live updating only challenged by erlang, standard library designed entirely around webdev, great tooling for building c extensions, widespread cpanel hosting, and composer (pip is garbage compared to composer).

So while you might like ruby/python because it's prettier or because PHP 4 was awful, the idea that one of them is a better web language is totally laughable. If you asked me to define a language better than PHP for web applications, I would have you a long list not even considering python and ruby.

</comment></comment></comment></comment><comment><USER5> One of Larry Wall's slogans for Perl is _" Easy things should be easy, and hard things should be possible."_ In its own way, that's what has made Go the kind of success that Perl once was.

Perl was the glue language of the web and Go is the production language of the cloud.

I'm actually a bit scared to imagine a world in which Go was not created, given how much success I've personally had with it.

Thanks to the entire Go team.

<comment><USER6> This is a bad comparison.

Core philosophy of Perl is to empower programmers with more than one way to do it.

Core philosophy of Go is your coworkers are too stupid to be allowed to have nice things.

<comment> aaron-lebo Seems like the core philosophy of Go is the end result of Python's "there's one way to do it".

The "Go's design and users are dumb" meme needs to die. It's not even a constructive criticism. It's dishonest, insulting, and it's too bad grown adults and professionals can't see beyond it.

<comment><USER7> That meme isn't going to die because one of the creators of Go himself said it was created for dumb users (sorry, Googlers "who can't handle a brilliant language"). There wasn't any constructive criticism coming out of the Go team towards these other languages, rather, they were simply "too complex" in a general sense.

The creators have also strongly resisted adding features others consider basic for a decade now, with a variety of nonsensical justifications.

It's a stretch to even claim Go was designed at all. From the very blog post this thread is about, we find this statement:

 _Russ discovered—that 's the right word—that the generality of Go's methods meant that a function could have methods, leading to the http.HandlerFunc idea, which was an unexpected result for all of us._

Go is not exactly a complicated language to begin with, yet the designers "discovered" things about it whilst building it.

Go gets a lot of criticism because it's an empirically very poor language and its designers routinely say absurd things that invite ridicule, like "Go is the language of the cloud" or "We have invented a GC for the next 20 years" or "Go was designed for interns and students who can't handle brilliant languages".

</comment></comment></comment></comment><comment><USER8> I took a seminar class in Go in my final year of school, in the spring of 2010. I was hooked pretty early. It was a very chaotic time to be writing Go; the language would change from week to week, so if we did a pull from the Go repo, there was no guarantee last week's assignment would still compile! At the time, the canonical way to compile code was by makefile:

      include $(GOROOT)/src/Make.$(GOARCH)

      TARG=bin/command
      GOFILES=main.go

      include $(GOROOT)/src/Make.cmd

The thing I miss most is the netchan. I understand the reasons they got rid of it ([https://groups.google.com/forum/#!topic/golang- nuts/Er3Tetnt...](https://groups.google.com/forum/#!topic/golang- nuts/Er3TetntSmg)) but when it worked, it was fantastic.

<comment><USER9> Did you find any alternative implementation of netchan that you like?

<comment><USER10> Not OP but here's a recent discussion with some pointers: [https://news.ycombinator.com/item?id=14878244](https://news.ycombinator.com/item?id=14878244)

</comment></comment></comment><comment><USER11> I've been writing Go professionally, full-time, for the past five years.

I'm a polyglot, so before Go, I loved exploring every new language I could get my hands on[0]. I still do, for fun, but Go is the one language that has kept me hooked all this time. It's not for any single feature, or for the community (though that's a great part of it). It's because it's the only language which I feel gets out of the way for me and lets me write powerful, robust, and maintainable software quickly without having to think or struggle against the tools.

For me, Go is like trying to do surgery wearing latex surgical gloves, instead of wearing thick woolen mittens.

[0] Seriously: if you can name it, and there's a working Linux x86_64 compiler/interpreter for it, I've probably tried it.

<comment><USER12> Out of curiosity, what is your take on clojure then ?

<comment><USER11> > Out of curiosity, what is your take on clojure then ?

I have a lot of respect for Clojure, though I don't have much of a use case for it.

At the time I tried it, I was annoyed its semantics for '() and nil - they're sort of a hybrid between how Common Lisp does it and how Java does it. Which makes sense - the Common Lisp approach would be a nightmare to implement on top of the JVM while maintaining interoperability, but as someone whose primary language before that _was_ Lisp, it was a bit weird to try and get used to.

I love functional programming - before Go, Lisp did pay a number of my bills, after all! - but to me it feels more like art than work. It's fun to figure out the most elegant, Lisp-like way to approach a problem. It's fun to convert an arbitrary task into a language-recognition problem and then write the compiler to recognize that language as the implementation to the solution. I get the same feeling from it that I do when I finish a drawing and stand back to look at it. I don't want to touch it, lest I smudge it - I just want to sit back and appreciate the finished result.

But it's a completely different kind of satisfaction that I get from writing Go - there, the fun is in how quickly I can solve a problem, and how confident I am in the reliability, robustness, and long-term maintainability of my initial effort. That's where Go really shines for me, and it's not like the joy of having created an beautiful work of art. It's more like the satisfaction of having built a solid American Colonial house for yourself to live in.

I like them both, but for my professional work, I'll choose Go every time.

<comment><USER13> So would you say this is more about your mindset when programming in LISPs? I like to use Clojure for my side projects and don't seem to feel the same way about my programs as you do. Even as a long time primarily imperative/OO programmer (but who has tried pretty much every language out there, too), Clojure actually feels like one of the most pragmatic languages I've used.

<comment><USER12> It's the same with me. I didn't have any lisp experience before learning Clojure. I see it as very pragmatic language, the kind that lets you get shit done, it doesn't get in your way. But that said, I can understand why parent compares lisp to art. I would say functional design is art, because you need to put in a lot of effort to learn it.

</comment></comment></comment></comment></comment><comment><USER14> > Russ discovered—that's the right word—that the generality of Go's methods > meant that a function could have methods, leading to the http.HandlerFunc > idea...more general ideas too, like the the io.Reader and io.Writer > interfaces, which informed the structure of all the I/O libraries.

Big testament to great interfaces being hugely impactful. For me, the IO and HTTP interfaces are a big part of why Go is so nice to use; the libraries (including std) that emerged around those interfaces and their subsequent interoperability makes everything so coherent.

Congrats to the Go team and their amazing work!

</comment><comment><USER15> I appreciate the ruthless design choices behind Go. Crafting a language so there are as few ways as possible, and preferably one, to solve a problem must be beautiful at a large scale organization. In my experience java codebases in big companies are nightmare factories because of the freedom you get from more similar languages. The Go dream of having a single decent solution to a problem instead of 20 that range from bizarre to really clever sounds like heaven.

I wish I had more time to take a serious stab at learning it.

<comment><USER16> >because of the freedom you get from more similar languages.

Is this lack of freedom a good thing?

<comment><USER17> The size of the language and the (more or less) one-way-to-do-things style mean that reading someone else's go—say, from a library you're depending on—is really easy. The chance you'll run into language features you aren't familiar with (which can happen even to long-time writers of some larger languages) or one of several competing and possibly now-deprecated 3rd party bolted-on features making up for painful deficiencies in the base language (ahem, JavaScript) or some nutty flow-obscuring "helpful" nonsense is low.

</comment></comment></comment><comment><USER18> My introduction to Go was pretty recent about 2 years ago and we went all in. We had an internal tool that started out as a test MVP written in python. Demand was growing fast so a year later it was an absolute mess of tech debt. We knew a significant refactoring was needed and figured the best thing to do was to just redesign and build from scratch. One of the guys had played with Go in his spare time so convinced all of us to just try it. Best decision ever, at least for this use case where we needed speed and stablilty. Go's native concurrency features were an absolute joy. It's really opinionated too so it ended up very convenient to use as a team with different coding styles. Thank you Go team!

<comment><USER19> I sometimes feel crummy to force my preferences on other developers I bring on board. For example, most of my work is PHP, so all of our repo's use spaces, and braces on newlines. When a new dev comes on board, they must follow that format. Funny thing is with GO, I don't mind in the slightest that go fmt . is tabs and braces on the same line. What is so much more important to me is consistency. Go has done a stellar job at providing consistency. As I read when I was getting started, no one loves gofmt's formatting, but everyone loves gofmt.

<comment><USER20> I have mixed feelings about the language itself, and some of its tooling (GOPATH just makes no sense to me whatsoever, and I've not spent enough time hacking Go projects to understand why it wouldn't be better to just have something like Cargo to handle dependencies), but I firmly believe that go fmt might be the biggest contribution to the language tooling world I've seen for a long time.

We've had autoformatters before, but they were always customisable things, sparsely used. Go shipping a formatter with the core distribution? Go projects routinely adopting it as a requirement for contributors? One standard format defined from the start?

Knockdown stuff. All those pointless arguments about coding style, gone. All that worrying about how to lay things out, gone. Just run go fmt and move on.

I have now become entirely reliant on rustfmt when I'm writing Rust, and I love it. I just write a total horrible mess, press save and it magically becomes neat and lovely.

I wish I had something that powerful operating in my C# environment at work.

Admittedly, at the moment I also wish my C# environment at work wasn't laden with iron-clad layout rules that the tooling isn't capable of fixing for me. All private members must be after the public ones, but static private ones need to be before the instance ones, and all properties go first regardless of accessibility (although remember the private properties have to go after the public properties). And usings must go inside the namespace definition, in alphabetical order except System.whatever, which all come first (in alphabetical order). And you can't split a function argument across multiple lines unless it's a lambda. Microsoft's C# style guide? What's that and why would we care and no it's not prescriptive enough anyway.

It's enough to make your head spin. Good thing I'm only there for six more days.

Give every language a formatter, as standard, and let's just be done with it.

</comment></comment></comment><comment><USER21> I love Go for the concurrency and awesome cross platform support, but my biggest complaint about Go is still the forced GOPATH.

I know this is super nitpicky, but I like to keep work and personal code completely separate and changing GOPATHs is very frustrating.

With the introduction of `vendor` and software like glide and dep tool, you no longer have to store your sources in `$GOPATH/src`.

Since dep/glide are also required for sane dependency version management, there seems to be no benefit of using `src` over `vendor`.

Without `src`, is there any reason `GOPATH` is still required?

<comment><USER22> Completely separate = dont allow dependencies between or one is base and second auguments and depends on base or dont allow changes to one of them?

How would your ideal system look like? What is your use case?

Sidenote if it helps there is a default gopath location if its not defined: [https://golang.org/doc/go1.8#gopath](https://golang.org/doc/go1.8#gopath)

<comment><USER21> My ideal system is: clone a repo, run `go restore` to fetch dependencies and then `go build` to spit out a binary or `go run` to quickly start the main function.

Nothing from outside the repo can effect that build. Likewise anything inside the repo can't effect the outside.

Compartmentalizing each project makes builds more reproducible and more obvious. If anyone else clones the same repo and runs the same commands, they should get the same result.

<comment><USER8> We actually do this at work; our repository is a full GOPATH layout with subdirectories for src/, test/, doc/, etc. We vendor our dependencies. To build, we have scripts at the top-level that compile all of our components (we ship a whole suite of tools in a single repo), run go vet, run tests, etc. The user never needs to set GOPATH. It's not a perfect system, but we've been using it for 3+ years without too much trouble.

</comment></comment></comment></comment><comment><USER23> I wrote my first fibonacci sequence test program in Go about four years ago. Now I am full-time admin of a large real-time cryptocurrency charting website that pushes 30MM+ messages to clients per minute, written entirely in Go.

I've learned a ton about programming from Go and I'm not sure I would have managed to build the system at all with another language. Go gets a lot of flak for its simplicity, but what it does it does very well. The concurrency model, networking packages, tooling, and simple deployment make it a joy to work with and I owe a lot to the Golang team. Happy birthday!

</comment><comment><USER24> I've been using Go on the side since mid-late 2013, so not nearly as long as some here, but I was heavily impressed by both Goroutines and channels as ideas, and by the net/http library.

The general portability and simplicity of the language has made it nice for side-project work.

I've since used go to write a blog engine, several APIs for school projects, and have been working on a scripting language (pisc.junglecoder.com).

</comment><comment><USER25> I love Golang, but I'll just comment on that:

> It's worth stating that the language is called Go; "golang" comes from the > web site address (go.com was already a Disney web site) but is not the > proper name of the language.)

You already have a hugely popular game called Go (WeiQi/Baiduk). It just adds confusion to queries to call the language Go instead of Golang. Even the #go channel on freenode has a disclaimer that it's not about the language. It's like calling your language football.

<comment><USER26> To be fair many simple names are overloaded. Amazon, Rust, C, Python, ... even football. It's normal.

<comment><USER8> Don't forget Java, Pascal, Ada, Lisp, Algol, Basic, Ruby, Awk...

By this metric, the best programming languages are Perl and Fortran.

</comment></comment></comment><comment><USER27> > Today, Go is the language of the cloud [...]

Is that true? First time I hear of a dominance of Go in the cloud. (And what does it mean anyway -- any distributed app that runs on the cloud, or cloud infrastructure... such as?)

<comment><USER28> > Is that true? First time I hear of a dominance of Go in the cloud. (And what > does it mean anyway -- any distributed app that runs on the cloud, or cloud > infrastructure... such as?)

It isn't. It's like saying Ruby dominates the VM space because Vagrant uses Ruby. Sure there are a lot of orchestration tools written in Go, but look at the actual apps running in the cloud, how many efficient RDBMS written in Go widely deployed? worker queues? full text search engines? ETL solutions? streaming servers? or just actual apps users interact directly with?

It's the "Go is a system language" all over again. It's at best misleading.

<comment><USER29> But you could argue ruby dominates the DSL space, which is effectively what Vagrant is. A DSL around creating VMs. Same for chef and puppet , but more so.

</comment></comment></comment><comment><USER30> Not a Go programmer myself but I am very grateful for Go. Some of the best software I use everyday uses Go - rclone, gitlab, gogs, gosu, docker to name a few.

<comment><USER28> > gitlab

is written in Ruby.

<comment><USER30> Gitlab's reverse proxy is written in go - [https://gitlab.com/gitlab- org/gitlab-workhorse](https://gitlab.com/gitlab-org/gitlab-workhorse)

<comment><USER28> And Gitlab server, the actual app, is written in Ruby.

</comment></comment></comment></comment><comment><USER31> I evaluated Go a few months ago for a web project, but it seemed as if there was a lot of manual work involved in mapping objects in and out of a MySQL database and in and out of JSON (basically, 50% of my day-to-day back end work). It just seemed too arduous.

The second thing that bothered me was that an edge-case bug in one of my HTTP handlers paniced the app. If that had happened in production while under load, many users would have gotten an error due to a bug in one user's request.

So, serious questions:

\- What is the best way to map objects to/from JSON? \- What is the best way to map objects to/from a database? \- What is the best way to prevent a request from crashing the server and killing a bunch of unrelated requests?

<comment><USER32> Here's an example I wrote up for to/from json: [https://gist.github.com/anonymous/8487446a2fd908910c66a2aafb...](https://gist.github.com/anonymous/8487446a2fd908910c66a2aafbe7b1ef)

Admittedly, mapping objects to/from database entries is a bit more complicated. There are several ORMs out there or you can role your own.

<comment><USER31> Yeah. The repeating the field, only camelCased, in JSON annotations feels needlessly painful to me. Subjective, I know, but that kind of painfulness seems pervasive in my (brief) dabbling with Go, and is one of the main reasons I moved on.

<comment><USER32> The json annotation is optional, but very powerful since it allows you to set the mapped name of the field to any name you like, allowing you to map json fields with snake_case, CamelCase, kebab-case, etc.

</comment></comment></comment></comment><comment><USER33> For a language that's been around for 10 years Golang's adoption rate is still pretty low. Searching Indeed.co.uk's API by job title there are currently 25 Golang jobs in London compared with 29 Perl, 188 Ruby and 511 Python. For the UK as a whole it's 34 Golang, 57 Perl, 276 Ruby and 821 Python. Golang has a long way to go yet IMHO.

<comment><USER34> Which language released in the last 10 years is more popular then ? Golang is arguably niche and does not offer the huge flexibility and ecosystem of say Python, so i am pretty sure it will never come close to that, but there are a good number of usescases where it arguably is the best choice.

<comment><USER33> Scala, with 164 jobs in London and 225 nationwide, has been around for about the same time as a production-quality release. I raised the point because I think Golang's coverage on HN is disproportionate to its significance in the job market.

<comment><USER35> London is about 'fintech', so Scala is in great demand. SF Bay Area is about 'webscale' so Go is popular, as it established as The Cloud Automation language. And HN crowd is mostly leaning to SF. OTOH you wouldn't find a great demand for Oracle DBA or C# skills in The Valley, and that's not because they are not in great demand somewhere else - maybe even basically everywhere else like C#.

Places lean to some niche or other, and vice versa. Apple places its growing hardware teams in Texas despite new campus in The Valley and all that. Why? Because Austin is very much hardware place.

</comment></comment></comment></comment><comment><USER36> Maybe I'm spoiled, but I've had a hard time dipping my toes into Go due to the lack of batteries included frameworks (like Rails or Laravel). Can anyone recommend some resources to give it another shot?

<comment><USER37> It's been a while since I used it, but Revel[0] is almost within the same family as Rails. The developers of Revel say they're inspired by the Play Framework.

Another option that looks nice is the Buffalo[1]. It's a collection of libraries that are built to play nice with each other, but you don't have to use all of them as a bundle. You can use only the layers you want.

[0] [https://revel.github.io/](https://revel.github.io/)

[1] [https://gobuffalo.io/docs/getting- started](https://gobuffalo.io/docs/getting-started)

<comment><USER36> Exactly what I was looking for. Thanks!

</comment></comment></comment><comment><USER38> Woah! How time flies!

Somehow still no one I know knows what Go is!

<comment><USER39> At work we have recently started using Go. When I told one of my developer friends that I was doing some Go projects, he was confused and thought I meant "Pokemon Go". So yeah, you might have a point, sadly.

<comment><USER40> a developer who hasn't heard of Go must live under some special kind of rock

<comment><USER41> A rock with ".NET" written on the side of it.

<comment><USER40> ah, "microsoft people." Left that rigorously-walled garden a long time ago without looking back... it was the right move for me.

</comment></comment></comment></comment></comment><comment><USER42> No other social or professional setting tolerates this kind of brazen self importance and posturing seen here without mockery.

This site doesn't allow satire but looks the other way when snarky claims are made without evidence. Blanket assertions must be backed up. At least show the problem you were trying to solve and the new solution in your favoured language/tool/framework so it can be judged.

This is how bad ideas and complexity gain traction without scrutiny and push back. People become vested in Ruby and run down php, people become vested in Rust and run down Go, people become vested in React and run down jquery. How comes tools people were using happily just yesterday are suddenly 'completely unacceptable'?

No one who befitted from these tools and languages is going to run them down publicly because they found something better. This is self serving ecosystem marketing at work that HN seems to ignore. It's as if every self congratulatory commentator often seen here was born an expert and short circuited the process of learning, and can use this platform to run down everyone else and their choices.

</comment><comment><USER43> Go is the new Java, and I think everyone will have to come to terms with it.

<comment><USER44> Not until it catches up with Java regarding language features, UI toolkits, DB drivers, graphical debuggers, clustering monitoring tools.

Meanwhile most commercial JDKs do actually offer AOT compilation, with OpenJDK 9 intoducing it as well.

</comment></comment><comment><USER45> Holy hell, Go is ten years old. 2007 was ten years ago. I'm so happy I have some Buffalo Trace whiskey sitting next to me :/

<comment><USER45> Downvotes? Because I'm old? This wasn't a dis on Go, just that I think of it as brand new, and it is 10 years old :/

</comment></comment><comment><USER46> It's funny that the very first thing discussed is the name. "Go" always seemed like a bad idea, being hard to google for -- and while they were employed by Google, no less!

It fits with the love-it-or-hate-it nature of the whole language.

<comment><USER19> I find searching for things with go quite often brings up what I need anyways. When I'm unsure or hit a snag, I'll include the term golang. Have not had many problems searching for stuff.

</comment></comment><comment> real-hacker I remembered my experience learning Go: reading Go language spec for about 2 hours and start being productive. That is not quite possible with other languages, I am afraid.

</comment><comment><USER47> My favorite line: "Go is huge in China". My first thought: don't they mean Weiqi!?

<comment><USER48> Too bad for the downvotes, that's a good joke

<comment><USER47> It wasn't even a joke . But meh, fake internet points don't do it for me. A change in points is how I know to look for responses to my comments.

</comment></comment></comment><comment><USER49> To apply for this position you require 12 years of Senior Experience in Go and Cobol.

</comment><comment><USER50> Go is actually 50 years old in terms of design insight.

<comment><USER51> Success in technology means someone posting on a forum how it's not actually new. (May all our products be so successful!)

</comment></comment><comment><USER52> Google is there and that why Go is there. Trust me,you could never go against google's will</comment>


I Used Google Ads for Social Engineering - <AUTHOR> https://www.nytimes.com/2019/07/07/opinion/google-ads.html <comment><USER2> The article is not as interesting as I had guessed from the title, because:

1\. It's not about the infosec meaning of social engineering, i.e. the author wasn't trying to get login credenials or system access.

2\. It's loosely related to the other meaning of social engineering (causing deliberate societal change), but the author's attempted influence was limited to individuals (getting them to call a hotline).

A better title might be 'how I got 28% conversion for an ad landing page whose CTA was a phone call'.

<comment><USER3> Ads where you target a small number of people are of course cheap, making pranks like [1] possible for next to no cost. The interesting thing is can you cheaply run campaigns on influential people such a CEOs and politicians. I think you probably could!

[1] [https://ghostinfluence.com/the-ultimate-retaliation- pranking...](https://ghostinfluence.com/the-ultimate-retaliation-pranking-my- roommate-with-targeted-facebook-ads/)

</comment></comment><comment> yo-scot-99 A couple of meta questions for the HN community:

1\. What percent of HN readers have a NYT subscription?

2\. There are far more comments here than the source -- is that appropriate? Should the comments ride along w/ the article (for future reference and the fact that they paid for the orginal story/reporting)

</comment><comment><USER4> > _Those who bear the brunt of that abuse aren't just the impatient and > impulsive. More than 50 percent of people still can't differentiate between > an ad (redirect or not) and an organic result on Google._

Some reasarch [0] suggests the figure is much higher and around 60% (from 2017).

Over the past 12-13 years, Google has been steadily making changes as to how they display ads to make them more and more invisible to the user. See the graphic [1]. By making them more invisible, there's a greater chance that they'll get clicked on and make Google more money. With each change, Google probably added tens of billions of dollars in revenue.

[0] [https://www.smartinsights.com/paid-search-marketing- ppc/paid...](https://www.smartinsights.com/paid-search-marketing-ppc/paid- search-strategy/customers-dont-know-a-google-advert/)

[1] [http://searchengineland.com/figz/wp- content/seloads/2016/07/...](http://searchengineland.com/figz/wp- content/seloads/2016/07/google-ad-shading-labeling-history-update-2017.png)

</comment><comment><USER5> The Redirect Method sounds like it may be one of Jigsaw's projects. Jigsaw recently got some bad press you may find interesting.[0]

Also, there was a similar experiment done in targeted ads on Facebook not too long ago.[1]

[0] [https://www.vice.com/en_us/article/vb98pb/google-jigsaw- beca...](https://www.vice.com/en_us/article/vb98pb/google-jigsaw-became-toxic- mess)

[1] [https://www.thedailybeast.com/inside-the-secret-facebook- war...](https://www.thedailybeast.com/inside-the-secret-facebook-war-for- mormon-hearts-and-minds)

</comment><comment><USER6> > More than 50 percent of people still can't differentiate between an ad > (redirect or not) and an organic result on Google.

Just wow.

<comment><USER7> This is deliberate on Google's end. In fact they keep bluring the line between ads and search results with updates more and more.

<comment><USER8> They're doing this more and more in the Gmail Android app as well. First there were no ads. Then they added ads to the top of the mail list. Now they're interspersing ads between emails. I finally switched to K-9 because of how intrusive it became.

<comment><USER9> I've never seen ads in Gmail on Android. Is there a setting to disable Gmail ads?

<comment><USER10> At least on iOS, they only show up if you have the Promotions category enabled. I don't know if this also true on Android or a desktop browser (I use uBlock).

</comment></comment></comment></comment></comment><comment><USER11> I am disappointed that the author ended on a "this is bad" message for something with such clear potential for good.

Instead of tearing down, why did the author not apply the very thing he learned and use his article's influence and the power of suggestion to influence more people to use this tool positively?

<comment><USER12> Because the NYT has finally realized that the tech industry in general and Google in particular are direct competitors and existential threats to their business. This is also the explanation for every other hit piece the mainstream media writes about the tech industry.

<comment><USER13> I know it's comforting to think that journalists draw attention to issues with tech because we're tOtALlY dEStRoYIng ThEiR bUsSiNeSs MoDeL.

But does this trope really need to be pulled out in discussing every single newspiece about tech that isn't flattering?

It doesn't add anything to the conversation that hasn't been said thousands of times, and it fans the flames of anti-journalist sentiment.

<comment><USER12> > But does this trope really need to be pulled out in discussing every single > newspiece about tech that isn't flattering?

When it comes to dishonest hit pieces like this one, it is the only constructive comment _to_ make. If journalists want to be respected, they should produce respectable work. TFA ain't it.

<comment><USER14> This is an opinion piece by an SEO consultant.

<comment><USER12> Publish, then.</comment></comment></comment></comment></comment></comment>


How the E-Commerce Gag "Ship Your Enemies Glitter" Became a Nightmare - <AUTHOR> http://www.fastcompany.com/3040931/how-the-e-commerce-gag-ship-your-enemies-glitter-became-a-viral-hit-and-then-a-nightmare?utm_source=facebook <comment><USER2> Had no idea this site went so viral. 1 million visits in 24 hours on a new site is insane!</comment>


Ask HN: MBP 13" or MBP 15"? - kung-fu-master

My current laptop is Dell with 17" screen (1920x1200). I'm switching to MBP but I can't decide MBP 13" or MBP 15". Is it comfortable to work on MBP 13" (mostly web development)? Or it would be better to buy 15"?
Another options are: iMac (21", 27") MBP 17" MBA 13"
Any thoughts? <comment><AUTHOR> The answer is - it depends. I'll categorize them based on each computer.

I'm basing my recommendations on using a 13" Macbook for the last 3 1/2 years and a 17" Macbook Pro (from work) for the last couple of months. Also, you might want to hold off a little longer as the Macbook Pro line is due for an update and it might be worth it to see what Apple does to them (<http://buyersguide.macrumors.com/>).

13" Macbook Air

-memory capped at 4GB ram -1440 display resolution -no disc drive

The resolution makes this great choice for a portable 13". But, you don't have a disc drive. You're limited to 4GB RAM and 256GB disk space. If you plan to run any virtual machines or dual boot into Windows - I'd pass on the Air. If you plan to do any work with iMovie and iDVD, that also rules this out with no disk drive (you can buy an external drive). Otherwise, it's a solid choice or portability.

\</comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment> The Macbook Pro line is due for a refresh.

13" Macbook Pro

-1280 dispaly resolution

This display size is a little small. That being said, I'm curious to see it Apple will upgrade the display when this model is refreshed. I would loved to see this form factor include the 1440 display that is in the MBAir. If you plan to spend a great deal of time working from the same desk and have a decent external display. This with a 27" Apple display would be a killer combo and I'd prefer it over a 17" Macbook Pro. But, if you're on the go, I'd pass.

15" Macbook Pro

-1440 display resolution (upgradeable to 1680)

My next personal MBP would probably be this one with the upgraded display. It's not too big and you've got a decent amount of screen real estate.

17" Macbook Pro

-1920 display resolution

This one is a little pricey, but at times the resolution is nice when using something like BetterSnapTool or Double Pane to resize windows on the fly to fill half a screen.

\</comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment>

CONCLUSION

The best all around value is the 15" Pro (with or without the upgraded display). I would only buy another 13" if I knew I was going to be stationary (most of the time) and would lean heavily on an external display.

</comment><comment><USER2> Some people swear by their 15", while others (like me) have traded a bit of screen size for some portability.

There are two major differences between the 15" Pro and the 13" Pro: monitor options and computing power. The 15" is obviously more powerful, but you can also add a higher resolution, anti-glare, or both to your screen. These are non-trivial costs ($150-200 each, I think).

The 13" Air is the ultimate in portability, and people love their performance so far. I ultimately went with the MBP, though, b/c I use my laptops for years and questioned the Air's non-expandable RAM (4GB max).

<comment><USER3> I went with the 15" MBP with the screen upgrade (1680x1050 and anti-glare). To me, the extra vertical pixels are a big plus when coding or writing.

</comment></comment><comment><USER4> I would say if you're going for a pro then go for the 15" MBP, you get the full resolution display which is great for design and feels much more comfortable. I'm using one now. Especially the trackpad and screen size.

On the 13" i'd go with an Air because where it loses in some places it makes up in the advantages, such as weight and portability.

These are the choices i'd look at when looking for another Mac. My recommendation for an all rounder is the 15" pro. It's not too heavy, thick or hard to work from. I know a few 17" owners and they have trouble opening it up and using it in a lot of places.

</comment><comment><USER5> I went with 15" MBP. I really wouldn't trade it for anything. In the store, the 13" looked too small and an additional 2" was trivial in price (~200?).

A lot of people swear by the MBA - I'm not convinced. Do they weigh less than my MBP? Yes. But can I swing the extra ~3LBS of weight? Yes. MBP has expandable ram, more screen real estate, and a disk drive -- I need Windows for a few applications I run and occasionally for testing - I don't even know if it would be possible to install it without the disk drive.

</comment><comment><USER6> If you (1) are willing to pay a bit more and (2) can do with the 4GB RAM limit, and (3) can work with an external monitor when you need it, get the most expensive MBA 13" base model with an upgraded processor.

If not, get the 3rd 15" MBP and upgrade the processor, screen to hi-res and HD to SSD.

I just bought both recently.

</comment><comment><USER7> I wouldn't give up my 15" MBP. But if you are in the market for 13", the Air + TB display/dock looks better than the Pro.

</comment><comment><USER8> I recall reading that there are differences in the Thunderbolt support between the 13" MB Pro and the 15". This may not matter to you, but if you are planning/hoping to hook up a bunch of stuff (e.g. multiple external monitors), have a look at this aspect before deciding.</comment>


No More Excuses for Bad Simple Charts - <AUTHOR> http://www.storytellingwithdata.com/2012/02/no-more-excuses-for-bad-simple-charts.html

<comment><USER2> Meh, I'd just use ggplot2</comment>


A woman was turned down from a startup job because she wore too much makeup - <AUTHOR> http://uk.businessinsider.com/startup-onshift-refuses-female-applicant-for-her-appearance-2015-4

<comment><USER2> "If I had been a man, would it have mattered what I was wearing?".

The answer is yes.

Welcome to reality, have a nice day.

<comment><USER3> If I read her desription right, she wore pretty typical business casual clothes with a bold colour choice.

So, say a guy walks in wearing a typical hipsterish tight casual suit and dyed hair, would that have been the "deal breaker" on an otherwise highly qualified candidate?

I say this having had a boss who repeatedly stated with glee that he would never hire someone who wore a suit to an interview. He was wrong too.

<comment><USER2> That's reality. The truth is you never know. I'm a fairly large man and I've been told on multiple occasions that people were intimidated by me the first time they met me. That affects things like interviews.

Fair? Maybe not, but I know I have a tendency to intimidate people so I do my best to adjust for it.

That's the way it works, and if someone wants to be in the workforce they have to accept that. I don't mean to sound like that guy, but it's the truth as far as I can see.

</comment></comment></comment><comment><USER4> I'd also expect to be thrown out when i appear for an interview in "provocative" clothing, regardless of sex/gender. How is this special? And why is it turned into an sexism issue?

</comment><comment><USER5> Regardless of the work environment, professional wear should be worn to an interview.</comment>


Cosma Shalizi on causal inference in social networks (and why it is hard) - <AUTHOR> http://cscs.umich.edu/~crshalizi/weblog/656.html

<comment><AUTHOR> Quote from the abstract: "In particular we demonstrate, with simple examples, that asymmetries in regression coefficients cannot identify causal effects, and that very simple models of imitation (a form of social contagion) can produce substantial correlations between an individual's enduring traits and their choices, even when there is no intrinsic affinity between them."

Comes with graphs! Also, be sure to check the manual trackbacks at the bottom.</comment>


Puzzle: Are You Smarter Than 6,832 Other New York Times Readers? - <AUTHOR> http://www.nytimes.com/interactive/2015/08/13/upshot/are-you-smarter-than-other-new-york-times-readers.html <comment><USER2> While I correctly analysed the situation fully before calling it, I expected most of NYT's readers to use zero-step thinking. It turns out that they do one better, so I guess I'm the typical NYT reader, in a sense.

General comment: As different things get "strongly" coupled to each other, one needs to take more and more steps into account to get a reasonable answer.

The question I have is this: Is there any way to figure out how many steps the other people in the situation will be using?

<comment><USER3> Most people are 1-2 step thinkers. [Citation Needed] But I'll explain why I think this:

Many people will assume nobody will think about the problem (1 step thinkers). A few people will assume _someone_ will think about the problem who thought about the people who won't think about the problem (2 step thinkers).

I think most 3+ step thinkers will take the problem to it's most logical inclusion (making them n-step thinkers). Why stop arbitrarily at 3 or 4? They've recognized that people who exist who will think other people exist who thought about the problem. At that point they should be able to recognize that this pattern will continue to n. While I am sure there are 3->(n-1) thinkers, they'll be more rare than n-step thinkers, I'd reason.

There are a number of 0 step thinkers who read the question and answered 33 though.

Now I have a question: Is the person who answers 0 smarter than the people who happened to guess the right answer at the proper point of time, even if at the current time (and possibly indefinitely) they got the problem wrong? aka "I only got the answer wrong because other people didn't think hard enough."

<comment><USER4> I was a 0-step thinker assuming that the majority of people doing this would pick random numbers bringing the average to 50. I expected that on a popular website that will likely get shared on Facebook, random would be the most likely outcome.

I think I either underestimated how many people would share this on Facebook, or perhaps, the audience that will go to a New York Times page is different than the audience that will go to "Only geniuses will be able to get this..." type quizzes. Of course, it could be that HN skewed the results in favor of a true mathematical + predictive model.

</comment></comment></comment><comment><USER5> > Your guess, while not a winner, was better than those of 95 percent of all > readers. Take a bow.

So the answer to this headline, finally, is "yes." Eat it, Betteridge.

</comment><comment><USER6> I played to quickly. As of 27,000 my answer of 16 was three to high. I am guessing it will be the right answer in around 5 minutes

<comment><USER7> 19 is the answer as of 28,800; 13 min later. So your guess might have been right.

</comment></comment><comment><USER8> I was too optimistic. 16 when the answer was 19 (43,884 answers so far). This is more a test how much faith you have in the general intelligence in our society. People who played it to the end game nash equilibrium must think that they are surrounded by geniuses.

</comment><comment><USER9> I figured most people will think people are picking 42 (meaning of life and all) so they would pick 28. So to get ahead of them I picked 19. [http://i.imgur.com/Ke1m0jp.png](http://i.imgur.com/Ke1m0jp.png)

<comment> T-hawk Well, you were right, but not for the right reason. The distribution has strong peaks at 33 and 22, which are one and two iterations of 2/3 multipliers away from 50. There's no peak whatsoever at 42 or 28. You just happened to catch the right spot between the biggest peaks, not your own peak.

(And the peak at 66 is rather disconcerting; there's no rational reason for that choice other than innumeracy or misreading the question.)

</comment></comment><comment><USER10> Wonder how much anchoring effect there is (sample numbers are given in the original question). I note the sample numbers are generated by javascript -- are they testing the impact of those numbers?

Also, I don't see why N-step arguments are invalid; everyone who went for the Nash Equilibrium is wrong (the average is not 3/2 * 0); you just need to predict how many step-thinkers people are :P

(I guessed 6, which is approx 2/3 of 2/3 of the winning answer... so presumably I'm two steps too deep :P)

</comment><comment><USER11> > _Many people believe that it's better to sell a house in the spring, for > example, because more buyers are looking then. But what really matters is > the ratio between buyers and sellers. You'd rather sell your house when your > town has 20 buyers and only 2 sellers than when it has 100 buyers and 500 > sellers._

That's a great observation, and I wonder if anyone has done a serious study on the optimal season to sell a house.

<comment><USER12> You also need to consider the secretary problem [https://en.m.wikipedia.org/wiki/Secretary_problem](https://en.m.wikipedia.org/wiki/Secretary_problem) in calculating an optimal selling point.

</comment></comment><comment><USER13> Look at all those people who voted 67 or higher...

</comment><comment><USER14> is zero really the nash equlibrium? given that they seem to round decimal numbers it seems like it should be one instead.

<comment><USER15> I also used the same round-up logic w/ Nash equilibrium and picked one. Clearly over-estimating how much thought the readers have put into answering the puzzle.

The NYT glibly informed me my choice was 'not even close'.

</comment></comment><comment><USER16> I was one off at the time I played. Is there any actual prize for winning?

</comment><comment><USER17> I got the Nash consolation prize

<comment><USER18> As did I, though by accident.</comment></comment>


Some notes on the Guardian Open Platform - <AUTHOR> http://simonwillison.net/2009/Mar/10/openplatform/

<comment><USER2> For me, the data store is the more interesting bit.

edit: I should probably clarify why. While I'm a big fan of supporting accessible content, providing what is essentially a public service for a large number of statistics, especially when they're relevant to news stories, is going to be awesome.

Ever see a chart somewhere and have more questions about the data? Hopefully their data store will allow you to be able to answer those questions.

</comment><comment><USER3> Tried posting a comment on Simon's blog but it wasn't working. So here you go Simon:

This is an amazing product - not just because of the technology, but the implications for the future of news. In fact, I think this is much bigger than the NYT API launch that some people are comparing it to. Just wanted to say congratulations!

Some thoughts on my blog: <http://blog.newscred.com/?p=179>

<comment><USER4> Advantages over the NYTimes article search api is The Guardian provides full article text and allows you to use the content on your site/app alongside your own advertising.

Disadvantage is it seems to have less structures metadata than the NYT (from what I can see currently).

I'm looking forward to most newspapers having apis letting you correlate coverage across multiple sources (hopefully with a consistent interface)

<comment><AUTHOR> We have a nod towards a consistent interface in the Guardian API in that we offer an Atom output format - it's pretty basic at the moment, but we're looking for community feedback to help us make the Atom version really useful.

</comment></comment></comment><comment><USER5> Just applied for an API key. Any chance you can shepherd my application along through the process?

Also, this is 100x more interesting than the NYTimes API, simply because I can access full stories. And the lack of meta data is fine for the moment, so long as there's some fairly accurate tagging system in place, which appears to be the case.

</comment><comment><USER6> Can someone clarify - does it mean that using the API I can get Guardian content, like a whole article for example, show it on my website and display my own ads around it? If so, that is quite a big step forward amounting to copylefting their content.

<comment><AUTHOR> It's not exactly copylefting - the T&Cs still won't let you modify the content or redistribute it further - but yes, you are allowed to republish the article body (although it's hard to do so at the moment due to the omission of paragraph breaks, which we're working to fix).

If you just show our headlines, you won't be asked to display our ads. If you opt to publish our article bodies we reserve the right to ask you to include our ads some time in the future.

<comment><USER7> What about the 24 hours rule? I don't see the point of publishing news for 24 hours - links to the article on our site after we remove it won't work, for example. Are we supposed to query your API each day for each article or something like that?</comment></comment></comment>