Google is working on creating a new protocol named QUIC to replace UDP - <AUTHOR> https://plus.google.com/u/0/100132233764003563318/posts/b36wVornPtD <comment><USER2> I'll tell you a dirty little secret of the protocol design.

Say, you want to design a protocol with reliable delivery and/or loss detection. You will then have ACKs, send window and retransmissions. Guess what? If you don't follow windowing semantics of TCP, then one of two things will happen on saturated links - either TCP will end up with all the bandwidth or you will.

So - surprise! - you have no choice but to design a TCP clone.

[ EDIT ]

That said, there _is_ a fundamental problem with TCP, when it's used for carrying secure connections. Since TCP acts as a pure transport protocol, it has no per-packet authentication and so any connection can be trivially DoS'd with a single fake FIN or RST packet. There are ways to solve this, e.g. by reversing the TCP and security layers and running TCP over ESP-over-UDP or TLS-over-UDP (OpenVPN protocol). This requires either writing a user-space TCP library or doing some nasty tunneling at the kernel level, but even as cumbersome as this is, it's still not a reason enough to re-invent the wheel. Also, if you want compression, it's readily available in TLS or as a part of IPsec stack (IPcomp). If you want FEC, same thing - just add a custom transform to TLS and let the client and server negotiate if to use it or not.

I mean, every network programmer invents a protocol or two in his lifetime. It's like a right of passage and it's really not a big deal. Unless it ends up attached to a brand name, in which case it starts attracting snarky remarks like this one :)

<comment><USER3> > Say, you want to design a protocol with reliable delivery and/or loss > detection. You will then have ACKs... > So - surprise! - you have no choice > but to design a TCP clone.

Some use cases don't really want TCP or a TCP clone, for example multi-player games might only use a semi-reliable loss detection system which has ACK's but does not attempt retransmission on failure to deliver. This works a lot better than TCP for that use case, and is not really a "TCP clone".

<comment><USER4> The really sad thing about this though is that "the internet" no longer works for stuff which isn't TCP. I guess it does, but not for your whole target market.

The lowest common denominator is users behind an NTLM proxy. Mass market products don't generally work unless they have a fallback which is "I can make it tunnel through proxies". Which is HTTP or CONNECT :( Which means no teams will do something which isn't TCP anymore, since it's not a thing they can tunnel :( Interested in counterexamples though.

This is the same reason why a UDP replacement is a great idea but a waste of time for most people developing a product. This makes me sad.

<comment><USER5> As mentioned upthread, most multiplayer games are still UDP. And indeed, they generally don't work through proxies.

</comment></comment></comment></comment><comment><USER6> This is more than merely UDP with encryption. Rather, this seems to be a reliable stream protocol that aimed at dethroning TCP. I don't think it intends to replace UDP. If anything, I would describe it as a user space replacement for TCP. It uses UDP, yes, but that's because UDP is about as close as you can get to IP at the user level.

It's about time, too. Certainly user-level substitutes for TCP are not a new idea (I've worked a good deal with UDT), but this the first one to my knowledge that has the weight of something like Google behind it.

There are a lot of advantages to doing this as the user level with UDP as well. Not needing to install a kernel module, for one. But also P2P rendezvous connections through NAT with UDP (we wouldn't even need to wait for router manufacturers to adopt anything), better control over protocol options without going through the kernel, custom congestion control algorithms, finer control over buffers (mmap'd files as buffer for file transfers anyone?), etc.

I'd much rather see this at the kernel level, but TCP as it's implemented on most systems has too many issues on modern networks, and most acceptable user- level solutions (ugh, parallel streams) are really terrible hacks. If Google does it right, maybe it'll force OS developers to wake up and rethink the increasingly clunky and antiquated BSD sockets API that is the source of many of TCP's woes and finally modernize the network stack for the fiber era.

<comment> X-Istence What exactly about the BSD sockets API makes it a source of TCP's many woes? What woes are you talking about?

Also, why do we want to re-implement TCP in user space, when it still needs to traverse the kernel as a UDP packet, this doesn't have any of the benefits that netmap or PF_RING for example bring to the table where the software is doing the full stack and thus there is less latency involved.

QUIC as it currently stands will be sitting on top of UDP, so all packets traverse the kernel, get dumped to user space, user space parses it, and sends packets back, as UDP. All that extra copying, when with TCP in the kernel the kernel would be responsible for reassembling packets, would be responsible for ACK'ing packets, and stuff like that.

Also, mmap'd files as buffer for file transfers ... you are going to have to explain that one. There are already various zero copy mechanisms for sending files, such as sendfile().

As for new congestion control algorithms, great, sounds fantastic, but how much more of a nightmare is it going to be to get the parties to agree on a congestion control mechanism? We already have that problem now ...

Sorry, but I see a whole lot of complaining without any real data or information to back it up. [[citation needed]].

<comment><USER6> Maybe TCP's issues aren't apparent when you're using it to download page assets from AWS over your home Internet connection, but they become apparent when you're doing large file transfers between systems whose bandwidth-delay products (BDPs) greatly exceed the upper limit of the TCP buffers on the end systems.

This may not be an issue for users of consumer grade Internet service, but it is an issue to organizations who have private, dedicated, high-bandwidth links and need to move a lot of data over large distances (equating to high latency) very quickly and often; CDNs, data centers, research institutions, or, I dunno, maybe someone like Google.

The BDP and the TCP send buffer size impose an upper limit on the window size for the connection. Ideally, in a file transfer scenario, the BDP and the socket's send buffer size should be equal. If your send buffer size is lower than the BDP, you cannot ever transfer at a greater throughput than buffer_size / link_latency, and thus you cannot ever attain maximum bandwidth. I can explain in more detail why that's true if you want, but otherwise here's this: <http://www.psc.edu/index.php/networking/641-tcp-tune>

Unfortunately for end systems with a high BDP between them, most of the time the maximum send buffer size for a socket is capped by the system to something much lower than the BDP. This is a result of the socket implementation of these systems, not an inherent limitation of TCP.

An accepted user-level solution to this issue is to use multiple sockets in parallel, but that has its own issues, such as breaking fairness and not working well with the stream model. I can explain this more if you want, too, just let me know.

As for zero-copy with sendfile, well, even when you do zero-copy, the above issues still apply, because the socket buffer is still used. Admittedly my research into zero-copy is very cursory, but from what I understand, even when you use sendfile, it still copies from files into the TCP send buffer, so zero-copy is actually less zero than it seems. It just doesn't require the whole user space read-buffer-write-buffer loop, which does yield a noticable performance increase, but that doesn't mean the buffer magically goes away and the BDP issue is solved.

What I was suggesting, by using an mmap'd file as the send buffer, would allow the TCP send buffer issue to be circumvented completely. In a user space protocol specialized for file transfers (not saying QUIC is, but I'm not talking about QUIC), you wouldn't need to use a send buffer, and the window size would become limited only by the BDP; the file contents are always available without needing to buffer them like the socket API does, and the network will never have to be idle just because the send buffer is capped at 10 MB or something.

You mentioned QUIC needing to do the whole userland dance to let the application parse packets and all, and that is a valid point, but, in the case of reading, it's entirely possible to only read in the header data you need from the datagram and let the kernel take care of as much of the actual copying as it can for the rest of the packet. In the case of writing, you can "plug" the socket, write headers in user space, then zero-copy the file segment for added performance.

Certainly there is a performance hit, since it's still going into user space, but there wouldn't be if this was all part of the kernel. Like I was saying, I'm not so much excited over the fact that this is user space or anything, but more so that it has the potential to exert pressure on the Linux community and such to make finally make some broad and well-needed changes to the network stack. Even if QUIC isn't being designed to address the issues I'm mentioning, maybe a user space-configurable socket library with the backing of Google will make experimentation with internals normally obscured by the socket API more accessible to people, and something good will come out of that eventually.

Anyway, all of these issues stem from the fact that BSD sockets are meant to be a general purpose communications protocol. However, some applications (such as file transfers) don't need all of the amenities general purpose sockets offer, such as separate kernel-allocated buffers so applications don't need to keep buffers after calling write(), etc.

There are other problems with TCP, such as slow start being, well, slow to converge on high-BDP networks, bad performance in the face of random packet loss (e.g., TCP over Wi-Fi), congestion control algorithms being too conservative (IMO, not everyone needs to agree on the same congestion control protocol for it to work well, it just needs to converge to network conditions faster, better differentiate types of loss, and yield to fairness more quickly), TCP features such as selective ACKs not being widely used, default TCP socket settings sucking and requiring a lot of tuning to get right, crap with NAT that can't be circumvented at the user level (UDP-based stream protocols can do rendezvous connections to get around NAT), and more. People write whole papers on all these things, though, and I don't want to make this even more of a wall of stupid text than it already is.

Okay, you can call me out for not having citations or backing up my claims again now. Problem is most of the public research exists as a shitty academic papers you wouldn't probably bother reading anyway, and most of the people actually studying this stuff in-depth and coming up with solutions are private researchers and engineers working for companies like Google.

<comment><USER7> how would you differentiate types of loss? The main issue with TCP over large BDP at the moment is not the limited buffer size IMHO. You can increase is dramatically on modern Linux. You can maybe attempt to work around congestion mechanisms and slow start by using very aggressive algorithms. But I wonder how researchers work with packet loss?

</comment></comment></comment></comment><comment><USER8> The title seems wrong, at least based on a quick glance this doesn't look like a UDP replacement. It could be a TCP replacement that's encapsulated in UDP.

There would potentially be huge benefits to be had from replacing TCP, but of course that's something the people have been trying to do for a long time and failed. Google has a huge advantage in achieving this thanks to controlling a significant proportion of clients and servers.

<comment><USER9> I agree. Besides they are doing it "secretly" in a public repository.

</comment></comment><comment><USER3> These use cases spring to my mind: real-time data and multi-player action games, perhaps even streaming media.

TCP and HTTP are less than ideal transports when it comes to real time data. In case of a network error, TCP retransmits the lost data but in a real-time environment, the data is already old and therefore next to useless. Real time action games (like quake) favor udp over tcp.

Some questions: Why replace UDP? Why not work on top of UDP? There must be a reason for this. What about multicast?

<comment><USER10> Why not use DCCP then?

<comment><USER11> Is DCCP widely used by anyone?

<comment><USER12> Is QUIC widely used by anyone?

</comment></comment></comment></comment><comment><USER13> I'm all for innovation, but I become wary when a company that controls a sizeable proportion of the browser market-share and also serves a not insignificant proportion of all web traffic makes extensions like this.

SPDY, Dart and now this.

<comment><USER14> Google is the least scary company in this regard. They're putting their extensions out into public hands instead of using an "embrace/extend" model. SPDY is open, soon to become an official web standard, and implemented by popular web server software and browsers (nginx, apache, firefox). The same is true of Chromium as well, the core of Chrome.

I'd go so far as to say that in these areas Google is serving as a model corporate citizen, and I wish others would imitate them.

<comment><USER15>
       >I'd go so far as to say that in these areas Google is serving as a model corporate citizen.

Well that is a curious way to look at it.

Instead of working with other companies to define a common standard they force it through attrition. That's the exact opposite of how this sort of thing should work.

And given Google's disgraceful behaviour in abusing the FRAND process they are hardly a model citizen by any measure.

<comment><USER16> Okay, can you name some standards which were created by multiple companies working together? (I'm not talking about maintenance -- HTML was invented by Tim Berners-Lee, SGML came out of IBM, JavaScript was Netscape, etc.)

<comment><USER15> The Java Community Process back in the day was a good example of how lots of large companies working together could define a standard and yet still leave room for innovation.

H.264 and WiFi standards are recent examples of a lot of companies working together.

<comment><USER17> Yeah, but 90% of those standards were TERRIBLE. Like, GOD AWFUL. EJB? SOAP?

It's the hangover from those standards that leaves kids today thinking that Python or Ruby are simpler than Java.

Eventually the JCP turned into "take popular open source ideas like hibernate and spring, and bless them with a JCP number". Which worked a lot better, and each of those individual projects was usually launched by an individual or small group initially.

<comment><USER18> > It's the hangover from those standards that leaves kids today thinking that > Python or Ruby are simpler than Java.

I would really love to hear how you could possibly believe otherwise.

<comment><USER17> The language Java is simpler than the language Python or Ruby. Fewer keywords, those keywords do fewer things.

Ruby and Python seem simpler for most web work due to better frameworks and dynamic typing, which is less simple than static typing, but is easier to work with in most web situations.

I guess I'm drawing a distinction between 'simple' and 'convenient'. Monkey patching in Ruby is not simple, but can be convenient and make rails possible.

<comment><USER19> The keyword count thing is easily refutable: Python has 38 keywords, Ruby has 41, Java has 50.

<http://en.wikipedia.org/wiki/List_of_Java_keywords> [http://docs.python.org/3/reference/lexical_analysis.html#ide...](http://docs.python.org/3/reference/lexical_analysis.html#identifiers) <https://github.com/ruby/ruby/blob/trunk/parse.y> (grep for reswords)

I'm undecided whether Python/Ruby or Java are simpler.

At least to me dynamic typing seems much simpler than static typing: from a very very pragmatic view that just means no compile-time checks (?), and I'm not that good with Ruby, but I'd consider Pythons type system much simpler than Javas (Python has none of: primitive types, null, arrays, interfaces, visibility (well, there is name mangling for __...), enums, final/abstract, the checked/unchecked mess (look up what the _correct_ way to catch exactly: all checked exceptions is!), casting, generics and everything that comes with it: have a look at the index at the left side of [http://docs.oracle.com/javase/tutorial/java/generics/index.h...](http://docs.oracle.com/javase/tutorial/java/generics/index.html) \-- but to be fair Pythons type system has a couple of nontrivial features (metaclasses, multiple inheritance, ...) too)

Python/Ruby have a lot of very useful language features which make the languages much less of a pain to use than Java (the language), but for any meaningful comparison of language complexity you'd surely also have to consider the intricacies of the underlying VMs. The Java VM _is_ quite complex and also quite powerful. For simple programs that don't require high performance or efficient memory management or whatnot that might not matter much though.

[Now, after having written this, I don't think its possible that any of the three languages is strictly simpler than any of the other ones.]

<comment><USER17> [Now, after having written this, I don't think its possible that any of the three languages is strictly simpler than any of the other ones.]

Me too, great comment, thanks.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER20> As other's have pointed out, it's not a replacement for UDP or "improved version of UDP with some extra features such as encryption" as mentioned in the original article but a reliable, encrypted protocol using UDP as transport layer. That makes sense because most NAT boxes etc. have to let UDP packets get through because they have to support DNS, VOIP protocols et el. I suspect the encryption part has more (or at least just as much) to do with keeping the middle-boxen's dirty hands off of the the protocol innards than MITM security.

</comment><comment><USER21> Note how SPDY has proven to have limited benefits in the realworld vs a lab.

Not that I want to stop their brilliant minds from looking at these problems and trying to solve them, especially on their dime.

<comment><USER22> If SPDY has limited benefits in the real-world why have both Facebook and Twitter deployed it?

<comment><USER23> That's how one finds out about the real-world benefits. I'm not an ops person, but once it's already deployed, how hard is it to just leave it there for the limited benefit it does give?

</comment></comment></comment><comment><USER24> Prior: <http://news.ycombinator.com/item?id=4854839>

</comment><comment><USER25> why does google need to come up with protocols? does the IETF and other processes in place for over a decade not work for them? I know nothing of the protocol (the link only mentions the 'cheeky' naming scheme and the source in the chrome tree); I'm merely commenting on googles motives...

<comment><USER26> How do you think things get proposed to organizations like the IETF? Someone comes up with a working implementation, proves it to work & to be better than the existing stuff, and then they propose it for inclusion.

That's what Google is doing, and they're using Google Chrome as their test bed (along presumably, with a bunch of non-Chrome stuff internally).

This is the same thing they did with SPDY. See <http://en.wikipedia.org/wiki/SPDY#Relation_to_HTTP> for details.

If what you're hinting at is that they should first start some wider discussion about what a next-gen UDP should look like before they start doing anything, then I suggest you look up "bikeshedding". Such a process would never get anywhere.

<comment><USER25> I appreciate their initiative and their wealth of engineering talent. I completely get what you're saying -- someone has to propose it; and a usable reference implementation is all the better. Unfortunately it seems, given Googles mammoth size, that many folks who might otherwise chime in simply shrug and go "oh, Google has already solved/implemented/popularized a solution" and move on.

<comment><USER27> That's not happening with SPDY, WebRTC, Dart, or WebP. Google's competitors are going over these proposals with the proverbial fine-toothed comb. I get the impression that people are extra skeptical of Google standards because of the potential to get steamrolled.

</comment></comment></comment></comment><comment><USER28> Hopefully they'd take a lot from djb NaCl ( <http://nacl.cr.yp.to/> , which predates Google's NaCl and is unrelated).

Transport security, endpoint multiplexing and endpoint mobility done right.

<comment><USER29> Good news! Their crypto stuff looks pretty reasonable. Key exchange uses ECDH with either the P-256 or curve25519 polynomials. Once the session key is established, it's encrypted with AES-128 and authenticated with either GCM or HMAC-SHA256. None of this is implemented yet, but it's at least cause for hope.

</comment></comment><comment><USER30> Can any boffins please explain what impact this might have in practice?

Is this just going to mean faster and more secure data transfer, or are there wider implications?

<comment><USER31> Low uptake as routers will not have built-in support, and admins will be slow to enable it when and if it becomes available (unless its tunneled over another protocol).

Why not just push IPv6 adoption?

<comment><USER20> IPV6 vs IPV4 question is orthogonal to those addressed by the QUIC protocol. IP layer is for addressing nodes on the internet and routing packets to them in a stateless manner (more or less... I'm not counting routing table caches and such as "state"). TCP (and this QUIC protocol) are built on top of the IP layer to provide reliable end-to-end data transfers in some sort of session based mechanism.

<comment><USER31> I was thinking primarily of the security aspects, which is one of the few things called out. I'm all for secure and discrete transfers of data between endpoints, since TCP programming APIs often require maintaining process state for each connection and can impact service scaling.

If this is really more or a session layer protocol on top of UDP instead of its own transport protocol, then all the more power to them. It will be more of a programming model than a network configuration quagmire, and I'm sure that eventually intelligent optimizations can be performed via packet inspection if the protocol state details are not encapsulated deep within the security (i.e., trust/privacy) bubble of the protocol.

</comment></comment></comment></comment><comment><USER32> Hm I suppose it's not secret anymore. :-)

The file listing shows reliable_quic_stream.cc and .h files as well, so maybe it goes a step past UDP?

</comment><comment><USER33> Curious how it compares with SCTP over DTLS over UDP (which WebRTC uses).

</comment><comment><USER34> UDP is connectionless. How can we have encryption without a connection? Using a block cypher would be less secure than stream cyphers and the controversy could halt adoption.

<comment><USER35> It's possible: DTLS. Also CISCO uses UDP for their VPN solutions so go figure.

<comment><USER36> Not Invented Here.

Google wants control, IMO.

I'd be interested in their reasons for not using DTLS, or improving DTLS. They actually use it for WebRTC.

</comment></comment></comment><comment><USER35> Hey, what happened to SCTP?

<comment><USER37> SCTP is widely used for carrying signalling in mobile and fixed telephone networks. It is _the_ way of carrying SS7 over IP.

(Another angle on the same thing: it didn't get used much outside the thing it was originally designed for.)

</comment></comment><comment><USER38> Is it connectionless?</comment>


Ask HN: Who will 'own' my data in the future? - <AUTHOR>

1) The NSA scandal. Large corporations cannot be trusted to protect an individual's private data. 2) As individuals we are producing more data than we ever have done.
How do we reconcile these two facts?
At the moment, the NSA can listen in on your phone calls, watch your internet activity, and piece together a version of your life. However, in 20-50 years time, when even more of our lives are lived digitally/online, what do you think will become of private data? Will the NSA start looking into people's refrigerators, checking if people's windows are open, and monitoring who left the front door unlocked?
What does HN forecast will be the next big breakthrough that allows people to keep their private data private? I'm thinking some kind of protocol which ensures that all personal data is 'owned' by the person it is personal to. Then, if facebook wants to run a user specific ad by you, they have to ask explicitly to see your data. They wouldn't be able to keep a store of your data in their datacenters. Thoughts? <comment><USER2> I'll be facetious when I say this but the next big thing might be common sense and the realisation that once you release data ino the open (i.e onto the internet), you lose control of who access it and whats done with it.

<comment><AUTHOR> But that also means placing massive limitations on what the internet can do.

<comment><USER2> What do you mean? The internet will still be able to execute the same functions the only difference is that users will be less likely to release their private information with as much trust.

Unless I misunderstood your point.</comment></comment></comment>


The Night a Computer Predicted the Next President (2012) - <AUTHOR> http://www.npr.org/sections/alltechconsidered/2012/10/31/163951263/the-night-a-computer-predicted-the-next-president <comment><AUTHOR> I think I first read about this in the 2nd edition of Computer: A History of the Information Machine[1]. Still fascinating

[1] [https://www.amazon.com/Computer-History-Information- Machine-...](https://www.amazon.com/Computer-History-Information-Machine- Technology/dp/0813345901/ref=sr_1_1?s=books&ie=UTF8&qid=1478629960&sr=1-1&keywords=Computer%3A+A+History+of+the+Information+Machine)</comment>


Netflix Architect on High Availability and Lessons Learned in the Cloud - <AUTHOR> http://www.infoq.com/articles/cockcroft-high-availability <comment><USER2> I love their github page:

[http://netflix.github.io/](http://netflix.github.io/)

<comment><AUTHOR> Very creative github page. The apps named like movie titles and the UI looks like their Netflix movie browser.

</comment></comment><comment><USER3>
        The old Netflix DVD shipping service still runs on the old code base on top of a few large Oracle databases.

Interestingly put. I didn't realize their DVD service is so neglected -- wonder how long it will be around?

<comment><USER4> From another point of view, one could say it's already been fine-tuned and is running quite well as is. In that case, why bother messing with it?

<comment><USER5> On some level, this is the profitability dream. Engineer something that doesn't cost a lot to run, doesn't need to be changed, and makes a ton of money. Engineers don't like to hear it, because it means less demand for our services, but it's what's best for business.

You can't always drive increased revenue through increased R&D. At this point, substantially everyone who wants a DVD delivery service uses Netflix. As long as someone doesn't come out with a service that makes it _significantly_ easier to rent DVDs over the internet, and as long as attrition caused by the software is very low, any more money spent on Netflix's DVD service is throwing bad money after good.

</comment></comment></comment><comment><USER6> Adrian left Netflix: [http://www.battery.com/our-team/member/adrian- cockcroft/](http://www.battery.com/our-team/member/adrian-cockcroft/)

<comment><USER7> I guess it's a good time to be in Battery's portfolio. Adrian is absolutely brilliant.

Also, that's a big loss for Netflix. I'm sure they have a lot of smart people, but losing someone of Andrian's caliber is not something that can be easily replaced.

</comment></comment><comment><USER8> Their Rxjava looks interesting. Too bad us Ubuntu Desktop Linux users with paid Netflix accounts can't watch our movies in Google Chrome yet Crackle movies play just fine. MGo movies too. Odd.

</comment><comment><USER9> Anyone familiar with how netflix sorts and delivers their poster repository ? Their OSS stuff on github has nothing for that.

</comment><comment><USER10> Talking about High Availability... the site was horribly slow to load.

<comment><USER11> The interview is hosted on infoq.com and Adrian (the one being interviewed) is discussing Netflix's architecture. Not really related, though a bit ironic I suppose...

</comment></comment><comment> niio</comment>


Google owns Duck.com, but it'll give rival DuckDuckGo a shoutout anyhow - <AUTHOR> http://www.cnet.com/news/google-owns-duck-com-but-itll-give-rival-duckduckgo-a-shoutout-anyhow/ <comment><USER2> Don't let anyone tell you that spreading FUD and misinformation doesn't work, Google has every right to do whatever they want with a domain they own but DDG kept pushing the conspiracy theory that it's all about them and it worked.</comment>


How I stay organized and remember everything, with no stress - <AUTHOR> https://www.tempestblog.com/2017/08/16/how-i-stay-organized-and-remember-everything-with-no-stress/ <comment><USER2> EverNote ad

<comment><AUTHOR> Actually it's not. Our blog doesn't get nearly enough traffic to be of interest to sponsors! I can understand why you'd think that though; I'm always suspicious of whether PR is involved when people mention products.

In this case though, I just wanted to get my system down in a blog post, so I can refer people to it in the future rather than always repeating the same stuff.

Besides, if I was going to push a product, it'd be one of ours! Looking to buy a car? Search all the top sites at once with AutoTempest.com! :P</comment></comment>


Politicians from Germany's FDP sue over Network Enforcement Act - <AUTHOR> http://www.faz.net/aktuell/politik/inland/zwei-fdp-politiker-klagen-gegen-netzdg-15632476.html <comment><AUTHOR> TLDR: effective of Jan 1st, 2018 online platforms are required to delete posts without warrant under certain provisions. The law passed during German federal elections to counter "fake news" and "hate speech" (and also to counter foreign nations messing with the elections), even with obvious questions regarding its legality under constitutional and fundamental rights. Tomorrow it's going to be officially challenged before a lower court as a first step to take it to the German constitutional court ("Supreme Court").

Already discussed in [https://news.ycombinator.com/item?id=17108353](https://news.ycombinator.com/item?id=17108353) where this law was portrayed in a positive light by NYT, though</comment>


Sabermetrics for startups? - <AUTHOR> http://bnoopy.typepad.com/bnoopy/2004/09/hiring_sabermet.html <comment><USER2> If you read past the blog article itself, the comments are pretty insightful (Marc Hedlund's comment is a good example).

</comment><comment><USER3> Some objects on the page weren't loading for me, Google cache helped:

[http://www.google.com/search?q=cache:http://bnoopy.typepad.com/bnoopy/2004/09/hiring_sabermet.html&hl;=en&sa;=G&strip;=1](http://www.google.com/search?q=cache:http://bnoopy.typepad.com/bnoopy/2004/09/hiring_sabermet.html&hl=en&sa=G&strip=1)</comment>


Show HN: Couch – Bring order to Social media Chaos - <AUTHOR> http://cou.ch

<comment><USER2> What are you guys doing that will give us a compelling reason to switch from Hootsuite?

Our team is only a handful of people but we've found Hootsuite really useful for making sure everyone has access to the same feeds and being able to see what we're all doing without stepping on each others' toes. It's also great that it lets us have one unified overview of all of our social networks (although its support for Facebook and G+ is nowhere near as good as for Twitter). If you guys can nail these two things, but actually make G+ and FB feel like they aren't just afterthoughts then we'd definitely be willing to give it a go!

<comment><AUTHOR> We have Facebook in and working on G+ right now. The approach is completely different then Hootsuite where you have this kind of multicolumn dashboard instead we let you organise in single streams everything so that you have a proper unified timeline contextualized depending on your needs, we also extract people and all the media shared allowing you to search trough them. For twitter we also provide much more then just keyword search mentions and hashtag but we have a complete boolean filtering in realtime for the whole firehose that can nail down whatever you need filtering out the noise.

</comment></comment><comment><USER3> Looks really great!

I have some questions:

\- Does it manage multiple Twitter Accounts?

\- Can I use it with App.net? Identi.ca? What is supported?

\- What will be the pricing, when beta is over?

\- Do you have a roadmap?

\- iOS/Android apps on the roadmap? Or just APIs?

Thanks!

<comment><AUTHOR> Sure Multiple Twitter accounts are in together with whole firehose access filtrable by even complex booleans that normally just listeners tools like radian6 offers. Facebook also in there, together with Instagram, working on g+ and Linkedin and next will be firehose for tumblr, Wordpress, Disqus. We have a roadmap but we are focusing on the beta now to fine tune everything. Ios apps are also on the roadmap of course

</comment></comment><comment><USER4> Yes finally! But I want to see Behind the Scenes blogposts about the development! :O

</comment><comment><USER5> meople.net is free and allows to view your streams of more than 10 social networks in one place. Even more: it doesn't require your email: all you have to do is login into your favorite networks.</comment>


Siri Will Soon Understand You a Whole Lot Better - <AUTHOR> http://www.wired.com/2014/06/siri_ai/ <comment><USER2> Maybe they already have done this. Judging by my own experience, the dictation in iOS 8 is significantly more accurate.

</comment><comment><USER3> neural nets are nothing new, the article puts them in quotes as people would write e-mail and inter-net... in summary: is ressarching using NN in speech recognition, nothing to do with siri

<comment><USER4> DNNs have been a huge leap for speech recognition.</comment></comment>


Ask HN: Your favorite JavaScript books? - <AUTHOR> <comment><USER2> for sure, You Don't Know JS by Kyle. Here's the link [https://github.com/getify/You-Dont-Know-JS](https://github.com/getify/You- Dont-Know-JS)</comment>


THE IDEAL GUIDE TO GET Your CONTRACT MANAGEMENT PROJECT OFF THE GROUND - <AUTHOR> https://medium.com/@jacknight128/the-ideal-buyers-guide-to-contract-management-7811fd9eccc6#.k0806v32v <comment><USER2> From the guidelines: [https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html)

> _In Submissions_

> _Please don 't do things to make titles stand out, like using uppercase or > exclamation points, or adding a parenthetical remark saying how great an > article is. It's implicit in submitting something that you think it's > important._</comment>


What Languages Fix - <AUTHOR> http://www.paulgraham.com/fix.html <comment><USER2> For scientific computing:

Matlab: it takes way too much Fortran code to solve Ax=b

Octave: Matlab is closed-source (and expensive)

Julia: Matlab was designed by people who knew a lot more about numerical analysis than programming language design

Python + SciPy: you don't actually need a whole new language just to solve Ax=b

TeX: it's taking too long for people to typeset my books

<comment><USER3> > Octave: Matlab is closed-source (and expensive)

We're GNU. We don't care so much about the closed/open distinction as we care about the free/non-free distinction. The goal is that you should be able to run and share your code without anyone's permission.

I'm also planning to make Octave expensive as well. :-) Hopefully I'll manage to get this Octave startup off the ground.

<comment><USER2> Thanks for clarifying. And, just to be clear, I'm a big fan of Octave! I used it extensively in my last project, and it worked great.

<comment><USER3> In case you hadn't heard this rant before, I happen to agree with it ;-)

[https://www.gnu.org/philosophy/open-source-misses-the- point....](https://www.gnu.org/philosophy/open-source-misses-the-point.html)

</comment></comment></comment></comment><comment><USER4> Rust: I can still compile code that I wrote three months ago.

Go: Haskell code is too generic.

D: "(C++)++" has terrible SEO.

Java (early versions): C is so fast that nobody wants to buy our new chips.

Scala: Java doesn't have map, reduce, or lambdas.

Java 8: Oh crap, Scala's right.

<comment><USER5> OMHO More like:

Java: Lets make C++ simpler and safer for the average bear, and give them a large standard library.

Go: Lets take an OO subset from Java, duck typing from Python, CSP and glue it all together with memory-safe subset of C that is garbage collected.

</comment></comment><comment><USER6> How would Clojure be described in these terms? Java is too static/verbose?

Edit, previous discussion: [https://news.ycombinator.com/item?id=6968775](https://news.ycombinator.com/item?id=6968775)

Some suggestions:

@tensor wrote: "Clojure: lisp promotes mutability too much."

@ajuc: "The JVM needs a good lisp."

<comment><USER7> Clojure: I like Lisp, but it needs more syntax. Clojure: I like Java backtraces. /s

<comment><USER8> Clojure: If ()'s is good, let's add []'s and {}'s.

</comment></comment></comment><comment><USER9> Why does PG not put a post date on his posts??? Maybe so people keep thinking it something new?

</comment><comment><USER10> PHP originally: We only need a few functions, not real language.

PHP now: We need every feature of every language ever invented. Twice.

</comment><comment><USER11> People are not scared of lisp syntax. They just don't recognise it. First impressions really count. If somebody doesn't even recognise something at first glance then the vast majority of then aren't going to engage with it further. The people who are left are not enough to make something popular. Why don't they recognise it? - Because it's not familiar. Every child learns mathematics in school. In mathematics the convention is f(x) = 2x + 1. The function name is outside the brackets and the parameters are within. Names are important and names of things generally tend to be on the outside. Think about the name of a restaurant, a town, a house, a car manufacturer's badge, a box of cornflakes, filing cabinet drawers, folders in the filing cabinet etc. etc. All of these names or labels are on the outside of the object. Most people aren't afraid of lisp syntax they just don't even recognise it enough to engage with it further.

<comment><USER12> Somehow XML became popular despite being syntactically very close to sexps... Why do you think XML succeeded where sexps failed?

<comment><USER13> XML was all about encoding data, not computations. It's far easier to understand data storage than computation. Lisp becomes scary once you start computing and having functional/recursive calls. Look at prolog. Prolog's data storage is very easy for anyone to grasp. dog(fido). man(john), man(dave). The moment, you start computing with prolog recursively, most folks throw up and are ready to stick to their procedural/imperative style.

</comment></comment></comment><comment><USER14> Haskell: Programming is not enough like abstract algebra.

<comment><USER15> I've always thought of Haskell as a programming language for people who prefer maths to programming.

<comment><USER3> This characterisation of Haskell bugs me a lot, because most reputable mathematicians would have nothing to do with Haskell either. The mathematical parts of Haskell seem to attract logicians, not general mathematicians. General mathematiicians much prefer Sage or Mathematica.

Don't get me wrong, Haskell is a great language, but it's not very "mathematical". It just has terrible ambassadors that give the impression that category theory and Haskell are synonymous. They're not, Haskell has its own breed of categeory theory that I prefer to call Haskellory theory.

This is a reasonable introduction to Haskell that does away with that Haskegorical nonsense:

[http://book.realworldhaskell.org/](http://book.realworldhaskell.org/)

<comment><USER15> > most reputable mathematicians would have nothing to do with Haskell either

Really? Is that because they don't like Haskell, or because they don't like programming in general?

<comment><USER3> A little bit of both, but just because Haskell is so weird and different for most people, _including_ most mathematicians.

</comment></comment></comment></comment></comment><comment><USER16> Can someone add (2002) to the title?

<comment><USER17> Two of the older posts of this article did say it was old:

1\. From that time: [https://news.ycombinator.com/item?id=58444](https://news.ycombinator.com/item?id=58444)

2\. Says (old article): [https://news.ycombinator.com/item?id=288749](https://news.ycombinator.com/item?id=288749)

3\. Says (2002): [https://news.ycombinator.com/item?id=4954663](https://news.ycombinator.com/item?id=4954663)

and 4. unqualified [https://news.ycombinator.com/item?id=6968775](https://news.ycombinator.com/item?id=6968775)

</comment></comment><comment><USER18> Seems to me those are goals, not fixes. I'd like to see a list that matches languages to problems and domains.

</comment><comment><USER19> Logo: I like turtles

</comment><comment><USER13> It's still no surprise that some of the most powerful languages on that list are so because they didn't really "attack" other languages. Lisp and Prolog.

</comment><comment><USER20> Erlang - because software contains bugs and computers fail

</comment><comment><USER21> the list left off perhaps the most important language for the web: javascript. and my proposed "problem" for it:

web pages are not programmable.

<comment><USER22> It's only the most important one as it's the only one we're allowed to use.

More like: Can functional paradigms be used in a procedural language

<comment><USER23> By the time Javascript was designed, having first-class functions or closures was not a radical concept. It had not penetrated to the mainstream languages yet, but it was already to the point where they were very nearly the last holdouts.

Beyond that, Javascript did not particularly ship with any sophisticated FP stuff, and, really, doesn't even ship with any today. It may be nice that Underscore can be written, but for any language with any functional pretensions whatsoever, it shouldn't _need_ to be written, because it ought to just be shipped with the stock language.

</comment></comment></comment><comment><USER24> Kernel: Scheme macros aren't first-class.

</comment><comment><USER25> Answer-set programming: Prolog doesn't have well-defined declarative semantics.

</comment><comment><USER26> Surely Java should be more like:

Because when I get a int, it should definitely be a bloody int.

<comment><USER24> More like: "we failed to notice the mistake C made of giving stupid meaningless names to types, rather than introducing meaningful names like int16, int32, int64."

When you say "int", you should get an integer - not an element of a (decided by the author arbitrarily) finite subset of integers.

</comment></comment><comment><USER27> C# version _N_ : C# version _N-1_ would be more awesome if it had...

</comment><comment><USER28> C# - Java is too low-level.

<comment><USER29> F# - C# is too low level and a kludge.

<comment><USER27> F#: Because C# needs something new to steal from.

</comment></comment></comment><comment><USER30> I like to see one of these for web languages / frameworks

</comment><comment><USER31> Objective C: C is too low level and C++ is too static.

</comment><comment><USER32> I noticed a typo:

C: Assemby language is too low-level.

</comment><comment><USER33> PHP: C++ ain't good for the web.

</comment><comment><USER34> Groovy: Someone else controls Rails.

</comment><comment><USER35> PHP: I can do this better than ASP. Wait, I can't.

<comment><USER36> PHP was created before ASP. And it wasn't intended to be a full programming language.

<comment><USER35> Don't take me too seriously. Programmers like to joke, too ;)

</comment></comment></comment><comment><USER37> In many ways a new programming language is similar to a a new product bashing its predecessor in able to position itself as a more superior alternative.</comment>


Uber just closed a $1B round of funding for its China branch - <AUTHOR> http://www.businessinsider.com/ubers-china-arm-just-closed-a-1-billion-round-of-funding-2015-8/ <comment><USER2> An interesting possibility for Uber in China, assuming they "win," is that the timing could work for leapfrogging car ownership.

The timing is right for that in china. They're just entering where more centre of the curve people can afford cars, but most don't yet. It's not ingrained in the culture yet, so they will be more open to alternatives.

Also, with driver salaries are lower in China that US & Europe and that will reflect in uber prices. This means that the uber/private car equation is more weighted in Uber's favor.

Between those two things, it gives uber a decent shot at becoming a top tier mode of transport.

The crazy thing about the market Uber is biting is that it is a massive, massive market. Once you start talking about about market share in _transport,_ you are in crazy territory.

Side note: It's pretty wild how much money is available in the "private" markets these days.

So, I agree with other commentors that (1) the scale of money coming in is confusing the definition of "startup" stage and (2) I agree that the risks are pretty substantial. That said, (A) the potential reward is pretty hefty too and (B) they seem to be actually operating as an enormously oversized startup. They're taking startup-ey risks and developing the product-market in a startup-ey way. IE, it seems that their current form is not their medium term goal.

Say what you will about Uber, they have balls.

</comment><comment><USER3> That is a hell of a risky investment given the approach the Chinese competitors are using in China is to block Uber's access to the devices most people book rides on...

see [https://pando.com/2015/08/24/wechat-blocks-uber-its-step- one...](https://pando.com/2015/08/24/wechat-blocks-uber-its-step-one-didi- kuaidi-using-ubers-playbook/9ac6400d1a40d371cfea75e8c28eba9bc0430f9d/)

<comment><USER4> And not just them. In China you always need political support to succeed. I don't think they have spent the last 10 years making Guanxi there. And the current leadership is also not very pro America.

<comment><USER5> I'm on the ground here in China. Uber's used their tactic of going head-on against government and regulation when they started out here, and it didn't work. I think they underestimated the speed and ferocity of local competitors, and didn't put enough emphasis on the political savvy needed to get popular and government support. They've recently made some well-connected hires and partnered with some powerful allies like their investors here, but they are now playing catchup. I'd also be concerned that their connections are of the mercenary type, and would be less likely to take up Uber's cause at the expense of heightened political risk, if it came down to it.

Edit: grammar

<comment><USER4> Yeah, political mismanagement can even end in your employees getting hit by Chinese gangsters, your company losing their rent contract and webserver without reasons etc. On the other side, if you have government backing your competitors are no problem because they experience these "accidents".

</comment></comment></comment></comment><comment><USER6> China has had non-Uber, Uber-like services for years. I've _never_ heard of anyone using Uber here, then again I don't spend time in the megacities.

The main service I am aware of is _dididache_ or 嘀嘀打车 in Chinese which was apparently launched in 2012 (same as Uber).

My observation is that a lot of people just call their preferred driver, too. In the event that the driver is busy, they generally forward the business to a trusted friend. It's pretty hard to compete with free, personally reputation- audited referrals and 24 hour service.

Further, only certain cities have functional traffic: Chengdu being a prime example. Many Chinese cities' road networks have been so oversubscribed by the millions of new cars that have appeared in the last half decade or so that calling someone to pick you up is a physically impossible model during large portions of the day.

Yet another source of competition are e-bike or e-trike taxis, which have a few hundred dollar entry cost, hang around on many city corners, are totally unregulated and generally faster and cheaper (5-15元 = $1-3) than regular taxis (due to lack of road space).

I am skeptical Uber can generate any profits whatsoever in this market.

<comment><USER7> I completely back this up.

I've also never heard of anyone using Uber, though it is an option and I'm sure a few do.

Didi and Kuaidi are by-far the leaders, completely entrenched. I think first- mover advantage will be the case here. The big thing these services are now competing on however is not hailing a ride, it is providing financial services through the app. They're no longer ride-hailing apps, they're finance apps with the option to hail.

[Perhaps a big difference with Uber compared to the US, is the use of it by taxis. Almost all taxis are on Didi/Kuaidi (indeed, these were taxi-only services at the start) and taxis are inexpensive.]

<comment><USER8> "I've also never heard of anyone using Uber" \- well they wouldn't be raising a billion dollars if everyone already used it, would they?

</comment></comment></comment><comment><USER9> When a company raises so much in "start up" mode wouldn't it be harder to turn it into a profitable public company?

<comment><USER10> Uber probably isn't going public anytime soon. They've got at least 6+bn in the bank and will do 5bn gross in 2016.

<comment><USER11> $5B in 2016. And one can see Uber growing 10 times bigger.

<comment><USER10> Well, that's 5bn on 25bn in bookings. Once there's no driver it'll immediately be 5x higher gross. By the time that comes, I have no idea, Uber will be far larger. Easily see them doing 100bn/year

</comment></comment></comment></comment><comment><USER12> Just curious--I believe that you can use WeChat to book a ride using some of Uber's competitors. Can you book an Uber using WeChat?

<comment><USER12> Sorry for my laziness. A bit of googling reveals: [http://economictimes.indiatimes.com/small- biz/startups/ubers...](http://economictimes.indiatimes.com/small- biz/startups/ubers-quest-to-win-over-china-faces-wechat- hurdle/articleshow/48675838.cms)

and

[http://venturebeat.com/2015/08/24/ubers-wechat-drama- exposes...](http://venturebeat.com/2015/08/24/ubers-wechat-drama-exposes-the- unique-challenges-of-winning-in-china/)

Apparently they've been blocked from WeChat...</comment></comment>


Kindle 2 vs Reading Disabled Students  - <AUTHOR> http://www.keionline.org/blogs/2009/05/13/kindle-2-vs-reading-disabled-students/

<comment><USER2> Just one issue where the publishing morons are so brain dead. Audio versions are available for the blind and dyslexic, but the number of titles is limited and it usually takes a week or more to get them through your library. I had to do this for my daughter.

Commercial audio books are very expensive, but the quality is probably much better than Kindle, so that market is not affected by any read aloud software.

<comment><USER3> The good news is that it's trivial to remove the DRM and have your web browser read the book to you. I doubt this is illegal, as a law that intentionally makes something unavailable to a disabled person is probably a violation of the ADA.

<comment><USER4> It's perfectly possible for something to be illegal and at the same time for the workaround to be illegal. Law as it exists is not code, nor is it necessarily consistent.

<comment><USER3> I think what I meant to say is that you'll have a good cause for appeal.

</comment></comment></comment></comment><comment><USER5> On a positive note, just talking about the reading impaired, several dyslexic friends find a large Kindle font and resulting short effective width makes routine reading possible. Similarly, my dad with his fading eyesight is again able to regularly read books.

Not often highlighted, but a huge advantage of these devices. I wonder why Amazon doesn't promote this more.</comment>


Yelp Accused of Hiding Positive Reviews for Non-Advertiser - <AUTHOR> http://dfw.cbslocal.com/2018/01/09/yelp-accused-hiding-positive-reviews-non-advertiser/ <comment><USER2> Yes, they do hide reviews regularly - and their marketing team basically tells you if you own a business listed on Yelp with correct information. Positive reviews get hidden for non-advertisers, negative ones for advertisers. In essence when you switch from consumer side to business-owner side, the site goes from a friendly place to post reviews into a vicious protection racket - i.e. "That's a nice reputation you got there, pal. Be a shame if something... happened to it, y'know?" I wish that was so very different than what their official team members said on the phone.

</comment><comment><USER3> >A statement was sent along with a screenshot of 14 reviews Yelp claims came from the same IP address belonging to Sinnott's Yelp account.

Probably because they were all on the cafe's wifi network when they reviewed the place.

<comment><USER4> A good observation that someone at Yelp! probably missed. Nice catch.

I personally hate this sort of anonymous group think thing where's there is no way to get a human to look into dumb processes and policies. YouTube seems to be in a similar place with copyright claims. No way to get a human to look into obvious failings of automated (or dumb manual) policy enforcement.

<comment><USER5>
      there is no way to get a human to look into...

Yelp's Talk forums in many cities have been bombarded with spam postings for fake toll-free support numbers for numerous brands. They persist for _days_ in many cases. There seems to be little staff supervision of their site contents as a whole.

</comment></comment></comment><comment><USER6> This could be easily answered by asking on Blind for an anonymous confirmation of whether or not there is any biasing factor built into the codebase.

My opinion is not, the algorithm has been examined by 3rd parties and if there are bad actors it's probably overeager salespeople who will say anything to make their quota.

I also tend to believe that fraud detection is also playing a big part in the form of false positives in identifying untrustworthy 5-star reviews. I'm a Yelper myself and my SO is Yelp Elite and it's not very commmon that good reviewers write reviews on the spot (using cafe wifi) for restaurants. I'm sure some store owners prod their customers to create Yelp accounts to rate them or have a sign up with "Rate us 5-stars on Yelp" which is fine but would make these reviews from new members more suspicious.

</comment><comment><USER7> We've updated the link from [https://tech.slashdot.org/story/18/01/10/1728222/yelp- accuse...](https://tech.slashdot.org/story/18/01/10/1728222/yelp-accused-of- hiding-positive-reviews-for-non-advertiser).

</comment><comment><USER8> Fits the standard narrative (and I love to hate Yelp), but is there any proof?

<comment><USER9> After seeing about a hundred of these stories over the last decade or so, I don't really need any proof. There's no way I can file this away as "not a problem" when I think of Yelp.

Whether due to official policy or unofficial policy (company culture) Yelp has an antagonistic relationship with small business owners on behalf of their customers and it's gross.

</comment></comment><comment><USER10> Why did you hell ban me?

<comment><USER7> We didn't ban you, but it looks like some of your posts got caught in the anti-abuse software. The best way to reach us about this is to email firstname.lastname@example.com.</comment></comment>


A SSD in Your Pocket - <AUTHOR> http://www.codinghorror.com/blog/2012/11/a-ssd-in-your-pocket.html <comment><USER2> What are people storing on all these massive USB sticks? I'm not being snarky, it's an honest question. I can't even fill up half of my Macbook's 256GB SSD and I would consider myself a "power user." Streaming services like Spotify and Netflix have drastically decreased my storage needs.

<comment><USER3> iTunes Libraries - Just a few television series subscriptions will wipe out a 256 GB disk instantly - meaning you are constantly juggling files offline. I carry a lot of 64 GB SD cards.

My "Online Local" Aperture Vault is currently 75 GB. The EOS 7D pictures are 10MB each. I spend a _lot_ of time deleting/moving photos offline, but the CF Flash I put in my camera is 64 GB, So just filling that one up (which I can do in a weekend, without much trouble) would be half of my Aperture Photo collection. Aperture has the ability to store your photos "Offline" on a secondary storage - which is where the majority of my photos are (only thumbnails are kept local)

I've taken some 2 GB Videos with my iPhone. Having a Video SD Card is nice.

VMware Images - at 20+ GB a pop, they start to add up very quickly. And, you rarely need them in your system.

256 GB is painfully small. 512 GB would be filled up quickly. I could probably get by with 1 TB, with the 3TB Drive on my desk to shuffle off less frequently viewed Video seasons.

The nice thing about SD/USB Flash drives is you can stick them into your laptop, _and leave them there_ without having to futz around with a cable and a separate spinning hard drive. Then, when you don't need the photos/VMware/Video/TV Season - you just swap another one in.

I'd love to have a 128 GB _Fast_ USB Flash drive - those would be awesome.

<comment><USER4> I think that this is a use case for a NAS, not for flash drive which is designed to be mobile not to store a lot of data.

I don't even own a flash drive (my wife has few, but she needs them in school) I have a single 1TB drive attached to my network, there I store all my data (and rsync it to outside backup). This disk is almost full now and I'll look into buying something bigger.

Why would I need to carry GBs of music/tv shows in my pocket? Just in case I need to watch some episode or listen to that one song right away? :)

<comment><USER5> There is still no (to my knowledge) killer NAS setup for music.

Everything is slow, or messy, or has a crap interface. Sometimes all three. Then you take your laptop out of your house and you don't have access to any of your music.

<comment><USER6> iTunes Match is the closest I've gotten. I pay for the upgraded storage and its enough to store my entire music library. Anywhere I go I can listen to anything I own with no delay (assume a decent network connection).

<comment><USER7> I was under the impression that iTunes Match doesn't eat into your iCloud storage, which is why it's a separate expense.

<comment><USER8> It doesn't. You're limited to 25,000 of your own (i.e. not purchased from iTunes) songs.

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> This is a very subtle advert. So quick digging raises one interesting question: Are they being paid by Patriot?

Clearly they're using Amazon referral links here but that image at the bottom of the article is both professionally taken and unique to this article (I put it into Google Image search and TinyEye - neither had relevant results).

If they are being paid by Patriot then I would suggest it is immoral not to say that in the advert/article.

<comment><USER10> That's a cheap jab. In this case Jeff Atwood in these years would have 'advertised' programming chairs, video cards, SDD disks and many more tech products.

I see only the genuine excitement of a tech geek over a new technology.

I will be definitely looking for a USB 3.0 stick, regardless of the brand, I didn't even notice what brand it was until you pointed to it.

<comment><USER9> It isn't meant to be a "jab," cheap or otherwise.

This blog post is, at least in part, a revenue generator for the blog (because of referral links). My question was, did it also generate revenue from the company who's products it links to/talks up?

If it had have been (or is) then I would consider that immoral. This immorality has zero to do with making money from the blog post and everything to do with a potential conflict of interests (between his commitment to his readership and the company that would be paying him).

The Amazon referral links have no such conflict of interests as he could equally have linked to any manufacturer's products and get the same revenue.

<comment><USER11> Regardless of how you meant it, it _is_ a cheap jab. You speculated without proof that Atwood engaged in immoral behavior. That is a pretty bad thing to do.

<comment><USER9> Speculation is speculation. I went to great pains to mention that it was a question/concern. I also provided enough proof to at least justify said speculation (i.e. it wasn't totally idle).

I disagree that is is, within its self, a bad thing to do. We should hold people in the public eye to account, in particular when we spot what might be potential conflicts of interests.

<comment><USER12> No, you made a declarative statement at the very beginning of your comment that 'This is a rather subtle advert.' By doing so, you're poisoning the well for any questions that you pose afterwards. Your theory about the product image turned out to be wrong, and saying that you're just asking questions when you've previously stated opinions as fact is not really convincing.

I don't even like Jeff Atwood much, but I advise that you let this one go and next times ask questions before shooting.

</comment></comment></comment></comment></comment></comment><comment><USER13> Apparently a lot of them have really horrible random read and especially random write performance. That probably doesn't matter too much for how most people use the drives (moving large files), but would make them less useful as a disk replacement.

I personally like the SanDisk Extreme ([http://www.amazon.com/SanDisk-Extreme- Flash-Drive-sSDCZ80-03...](http://www.amazon.com/SanDisk-Extreme-Flash-Drive- sSDCZ80-032G-AFFP/dp/B008AF383S)). Lexar Triton is also good.

The 32GB+ ones are the only drives with enough chips to have full write speed; the 16GB drives usually don't have the full number of chips, so write speeds are 50%.

<comment><USER14> Does the SanDisk Extreme post speed ratings? It looks like the flash drive shown in the article has some of the fastest posted speeds, at 200 MB/s read, 120 MB/s write. The SanDisk Extreme doesn't post speeds, it appears, but just says "up to 10 times faster* than USB 2.0" and I can't figure out what the asterisk refers to.

<comment><USER13> Measured performance around 120/80.

This is the kind of thing I'd defer to Tom's Hardware or maybe Ars Technica or something for a comprehensive comparison, but I've never gone wrong in buying Sandisk products (except when in Asia, where 90% of the devices, even at "real" stores, were counterfeit with less than advertised storage capacity; I ended up having a friend buy real products from Amazon and bring them to me when she flew in).

</comment></comment></comment><comment><USER15> > ... it is a bit chunkier in width than my previous USB flash drive. It might > be a bit more to carry, and might not fit some USB ports depending on what's > adjacent.

I hate these, both USB devices and wallwarts that block adjacent sockets. Frankly I think that USB forum should have specified max dimensions for USB plugs/devices and matching minimum spacing for ports.

<comment><USER16> The USB spec defines maximum plug sizes and minimum port spacings, different for all connector series (A/B/mini x/micro x). USB A plug/device dimensions are specified as 16x8mm MAX, i don't remember minimum spacing between A ports and google isn't cooperating, but it's also defined somewhere in there. There are some problems however:

If you don't want to put an USB logo on your device or otherwise use USB trademarks you don't need to follow the spec to the letter and USB IF can't do anything about it (see every other usb novelty device like lamps, fans etc).

If your device is too large you just need to ship it with an extension cable and it's ok.

</comment></comment><comment><USER17> But how many 4KB IOPS can it do?

Answer: According to <http://www.squidoo.com/best-usb-3-0-flash-drive> , 128GB version has 255 KBytes/s writes, 7 MBytes/s reads.

</comment><comment><USER18> One huge issue I've had with USB sticks on my keychain - the stick breaking off at the keychain loop and losing the stick. I keep the important stuff on encrypted disk images and immediately change my SSH keys when I notice the stick is gone, but losing the actual stick is an inconvenience.

Looking at the photo of the Magnum stick, I can't imagine that stick staying attached to a keychain for more than a couple of weeks.

Doesn't anyone make a USB stick actually _designed_ to be used on a keychain? My VW car fob has lasted 14 years so it can't be that difficult. All the sturdy models I've seen on Amazon or Newegg have horrible reviews for reliability reasons.

<comment><USER19> For several years I kept my ssh keys on my phone so it was always on me. When I need it I plop it in the dock and it would both charge and be mounted in linux and in my .ssh/config it would point to the mount point for those keys. Just another alternative.

</comment></comment><comment><USER20> Could you buy ~4 of these and make some sort of 'RAID' to increase performance/redundancy/etc?

<comment><USER21> You'd need to be careful that the RAID system knew which USB stick was which, even if they were reconnected to different USB ports/controllers. The ZFS demo above does this, but you might need to be careful with other software RAID systems.

But part of the advantage here would be to have your OS on a portable stick and move it between computers. If you're booting from one of the USB devices then it would be a bit trickier to set up RAID as well.

<comment><USER22> Hey dumbass USB has has serial numbers since USB 2.0 your poor man's software- raid-on-a-chip that came with your mobo might not check drive serials and rely on port but don't make shit up.

I ain't even mad.

<comment><USER23> Hey, tone it down mister.

The parent does share a good thing that's not always immediately thought of.

Yes, USB devices do have serial numbers - absolutely. A lot of systems will however not care and just mount at random, if it's automounted. As an example, on Desktop machines - this is very common. You might use a Desktop for doing this.

It's a good idea to combine the parents parent post with the, sadly, only good nugget out of it.

Be careful to think over what happens when you restart/unplug the drives. Will the mount points change? If so, be sure to configure up the mounting of the drives with the USB ID of the device.

(USB ID is found with for example the `lsusb` program, you'll probably need to install an extra package to get it)

</comment></comment></comment></comment><comment><USER24> Just a caution that these USB flash drives tend to have good sequential performance but lousy random write performance. So for copying lots of small files the performance might still be quite low. The reason is sequential performance is easy to achieve with NAND flash and a simple controller but random performance requires a powerful controller and better algorithms.

<comment><USER25> The Super Talent RC8 has a peppy SandForce SSD controller.

[http://www.everythingusb.com/super-talent-usb-3.0-express- rc...](http://www.everythingusb.com/super-talent-usb-3.0-express-rc8-flash- drive-21182.html)

<comment><USER26> Very cool, but Amazon says it's $230 for a 50 GB model!

I need to run more detailed benchmarks but hopefully the 64GB for $75 model is somewhat close to "real" SSD performance on the full gamut of IO.

</comment></comment></comment><comment><USER27> "An SSD..." / "A solid-state drive"

<comment><AUTHOR> Thanks for the correction, you're right. I'm going to leave the title of the submission for now though, to keep it consistent with the title of the actual blog post.

<comment><USER28> He's not right.

<comment><USER29> As with many corner cases of English grammar, I don't think there is such a decisive answer here that we can call him absolutely right or absolutely wrong, but FWIW his approach ('a' vs 'an' selected based upon the pronunciation of the acronym) is _much_ more common in my experience and is generally accepted.

<comment><USER30> It's hardly a corner-case.

</comment></comment></comment></comment></comment><comment><USER31> I must be the only guy that still has an old 270Gb HDD and a 4Gb USB.

</comment><comment><USER32> Wait a second - as I understand it, an empty, brand new flash drive is guaranteed to outperform an empty, much used flash drive. As I understand it, the performance degrades with usage. So, what will be the performance of his fancy new drive after a similar amount of use as his old one?

<comment><USER33> Probably still more than his old one.

</comment></comment><comment><USER34> According to newegg.ca: [http://www.newegg.ca/Product/ProductList.aspx?Submit=ENE&...](http://www.newegg.ca/Product/ProductList.aspx?Submit=ENE&N=100007959%20600082309%20600000482&IsNodeId=1&name=128GB)

The corsair usb 3.0 "voyager gt" is cheaper and faster.

<comment><USER35> that's the 128gb model, not the 64 that jeff reviewed.

Prices for the 64gb are closer, but the corsair is $7 cheaper.

$10 shipping in ca? Damn.

</comment></comment><comment><USER36> You can install Windows super fast from a USB 3.0 stick, too. It takes minutes to install the whole OS.

<comment><USER37> If "minutes" ≤ "15 minutes" then the same holds true for USB 2, though. Or around 10 if installing on an SSD.

</comment></comment><comment><USER38> Is it just me or are any of you checking whether linked products are affiliate links before clicking on them? My mental estimate of the unbiased-ness of a review reduces irrespective of article author when I observe affiliate links to products. Is that inappropriate?

<comment> B-Con The author here is very highly respected in this community and already made his big bucks with other projects. If he says that he found something cool and then uses an affiliate link, it's a 99.9% chance that there's nothing more too it.

Searching, finding, and reporting in this style are common place for him.

<comment><USER38> Thanks for the replies here.

Of course, I've been reading Jeff's posts for some time and know his creds. My question was not really very specific to him and this post of his, but just this time I caught myself mid-thought wanting to check whether the link is an affiliate link. For another author, I might not have been surprised, but I was in this case.

Mentioning that a link is an affiliate link (as cwd71 wrote) would be enough for me to put more trust in an author.

</comment></comment></comment><comment><USER39> Best use for this IMO would be to carry around VirtualBox and some Ubuntu images to have your dev setup with you wherever you can drop in a USB system. Then again, if you just SSH into your system any place you have wifi, it's kind of the same thing 90% of the time.

</comment><comment><USER40> Assuming the USB 3.0 works as advertised for all cases... It's probably much better than it used to be, but I've plugged in devices claiming to be "USB3.0" into my USB 3.0 slot, and gotten very pedestrian speeds.

Check the return policy before you buy!

</comment><comment><USER41> This got me looking for USB 3.0 sticks. Up here in Canada our go to source is NCIX (they sell to the US as well I believe).

These two deals are pretty good, both better than the Amazon price.

64GB: [http://ncix.com/products/index.php?sku=74959&vpn=AN005P-...](http://ncix.com/products/index.php?sku=74959&vpn=AN005P-64G-CGY&manufacture=AData%20Technology&promoid=1230)

32GB: [http://ncix.com/products/index.php?sku=69506&vpn=PEF32GS...](http://ncix.com/products/index.php?sku=69506&vpn=PEF32GSBUSB&manufacture=Patriot&promoid=1230)

* I do not work for NCIX, just figured I'd share the love.

</comment><comment><USER42> After losing all the data on a 4GB USB stick when it simply decided it was time to bite the bag, I have become more anxious about using an SSD as the boot and system drive in my home desktop machine. When I installed Win7, I relocated Users to a separate mechanical hard drive (which is backed up onto a Synology NAS RAID), and now I'm thinking of copying Program Files and Program Files (x86) to another mechanical drive. Am I being overly paranoid? or is this something I should have done from the get-go?

</comment><comment><USER43> >>Is the 'installing device driver' and 'safe to eject' malarkey still just as slow and clunky with USB3?<<

Im curious about this, anyone has any experience?

Are USB 3.0 ports common now?

<comment><USER44> Not in my experience. It certainly adds to the cost of mobos/cases, so most pre-builds don't bother. Most people still buy pre-builds.

</comment></comment><comment><USER45> What's he using to benchmark that? - anyone know?

What's the best benchmark tool for drives and/or network shares?

<comment><USER37> That's the Windows 8 Explorer copying files.

</comment></comment><comment><USER46> Why is a post about USB sticks on the front page of HN... Don't get it!

</comment><comment><USER47> ffs... Its "AN" SSD, not "A SSD"

This site should really be called GrammarHorror.com

</comment><comment><USER22> So this guy bought a new drive but wait Stack Careers! HN is becoming the mush Reddit is.

<comment><USER48> _" If your account is less than a year old, please don't submit comments saying that HN is turning into Reddit. (It's a common semi-noob illusion.)"_

<http://ycombinator.com/newsguidelines.html>

<comment><USER44> Based on his username (a meme) and one previous comment, I'd say he's perfectly aware (and intends to post it anyway).</comment></comment></comment>


Right-Wing Media Outlets Duped by a Middle East Propaganda Campaign - <AUTHOR> https://www.thedailybeast.com/right-wing-media-outlets-duped-by-a-middle-east-propaganda-campaign <comment><USER2> This article doesn't seem to attribute the many fake personas to any particular nation-state. Weird.

<comment><AUTHOR> It was the UAE or Saudis most likely (my bet is on UAE, they've been ahead of the curve with their phone hacking and dis-information operations)

</comment></comment><comment><USER3> I don't think this is a "funny haha gotcha conservatives" prank. This a real propaganda/fake news effort by a foreign power to subvert US journalism. It could happen to anyone. Is there really a need to make this partisan by dunking on the Right-Wing for falling victim to it?</comment>


Set a deadline, Do it anyway - <AUTHOR> http://www.centernetworks.com/do-it-anyway-set-a-deadline <comment><USER2> I never set deadlines. I just work as fast as I can. Likewise when I was poor I never made budgets, but just tried never to spend any money.

<comment><AUTHOR> A deadline helps me to minimize features. "I can't build that and still make the deadline.." and then also, the question: Is this feature so important that the dealine can be moved for it?

<comment><USER3> That seems sort of backwards to me. If you're implementing only the strictly necessary there's no room for compromise in either direction. You can't ship with less features than are necessary and you wouldn't add more just because you have additional time according to a deadline.

</comment></comment></comment><comment><USER4> I prefer the opposite approach: every time you have a block of time, set a task list of things you want to accomplish in that block, and hold yourself to that.

Problem with deadlines is they tend to back-load a task. If you know you need it done in a week, you might figure it'll take you 3 days to do, and hence start it in 4 days. Of course, things rarely take as long as you expect them to, so you end going over the deadline anyway or stressing yourself out to make it.

With a task list, you'd start that task immediately, and it's done when it's done. If you go over, you have some padding before it's necessary, and you can decide whether to give up on your original task and start the next item, or push through with it and postpone everything else. It's also much less stressful, since things don't get bunched up around the deadlines.</comment>


Pictures from an iPhone prove smartphones' potential - <AUTHOR> http://www.thetechblock.com/articles/2012/10-pictures-from-an-iphone-prove-smartphones-potential/

<comment><USER2> Nice pictures. Key is that they're gleaned from thousands over years.

Reminds me of the Sony Qualia 016 sales brochure, more of an art book filled with beautiful images - taken with a tiny 1MP camera.

The artist using his equipment to its potential is one thing, the equipment living up to the artist's potential is another. That's why dedicated cameras exist.</comment>


Best comment in source code you have ever encountered? - <AUTHOR> http://stackoverflow.com/questions/184618/what-is-the-best-comment-in-source-code-you-have-ever-encountered?page=1&tab=votes#tab-top <comment><USER2> From the Haskell X11 binding:

      -- this assumes bytes are 8 bits.  I hope X isn't more portable than that :(</comment>


Facts about Google and Competition - <AUTHOR> http://www.google.com/competition/howgooglesearchworks.html <comment><USER3> It's funny that Google is publishing this. I work in the ad tech industry and Google did this to us 3 months ago, in order to connect to ad exchange

Signed contracts of about 200 pages long, including really long NDAs Took $35k deposit Put us through Dev / Testing Cycle including a few hundred million hits each day for about a month. After spending 3 months on it, they said that we were profiling user data (which we were not - it was an ignorant mistake on our part in checking an item YES in the contract rather than NO). We pleaded, begged and argued with no merit. Google blocked us from accessing their ad exchange ..

In the meanwhile...Google does user profiling openly, mining search queries, Google+, Google Maps and everything else available at their disposal, including the kind of apps that you open on your phones (non android included, thanks to Admob).

It seems to me that they are deliberately blocking any fair competition in the marketplace. If this is not a monopoly, then what is this supposed to be?

</comment><comment><USER4> _" For every search query performed on Google, whether it's [hotels in Tulsa] or [New York Yankees scores], there are thousands, if not millions of web pages with helpful information."_

True.

But there is exactly one Trade Winds Central Inn in Tulsa.

If I look for [hotels in Tulsa] right now, the name of that inn is prominently displayed in the "Hotels in Tulsa on Google" box. Clicking the name will lead not to a page about the inn but to a page of search results where that specific inn is again prominently displayed at the top. Clicking that link will bring a booking page where Expedia, Priceline and multiple others bid on providing booking service for that specific inn.

And if I scroll all the way to the bottom of that page I find a little link: [http://www.tradewindstulsa.com/](http://www.tradewindstulsa.com/) That's the the one vital link for that one little inn in central Tulsa, Arizona.

The "algorithm" placed the name of the inn on the top of the front page. Then it placed the actual link two clicks deep and at the bottom. The "algorithm" is not stupid...

<comment><USER5> If you're looking for "hotels in Tulsa", you almost certainly want to book a hotel. Hotel booking sites seems like good search results.

If you're looking for "Trade Winds Central Inn in Tulsa", the first result, after one ad, is www.tradewindstulsa.com/.

Yes, Google displays a lot of ads sometimes. But those sometimes are almost always when you are looking to purchase something, and Google works hard to make sure those ads are things you're interested in purchasing.

</comment></comment><comment><USER6> Maybe I'm just a cynical, skeptical bastard, but if you have to actively state that you have serious competition, then I can quite reasonably assume that you are, in fact, a total monopoly.

Welcome to the Ministry of Truth, my friends. Let the doublethink engulf your senses, and may the newspeak slip off your tongue, for it is clear that Big Brother is watching, and it appears that he is deathly afraid of the EU. May the DOJ have mercy on his soul.

</comment><comment><USER7> I work at [http://samuru.com](http://samuru.com) we have about 70% unique searches. With out the hordes of default install users who type in the product slogan of every commercial, or try to get the Jeopardy questions before the clock runs out, we don't have a great cache hit ratio.

Combine this with the fact that Google is doing more and more to get Cache Collisions in their results (returning results that don't contain all the words in your search because it deemed word unimportant, or using synonyms) and it is hard to compete on speed.

That's why we don't. We compete on the idea we have better results.

<comment><USER8> I just tested Samuru vs. Google with the query:

speed of the iss

I think Google clearly won in this case.

<comment><USER9> > I just tested Samuru vs. Google with the query:

why is grass green?

Samuru clearly won in this case

<comment><USER5> They both appear to have relevant results.

</comment></comment></comment></comment><comment><USER10> It's funny how a monopoly will pretend they're not a monopoly while the non- monopolies try to pretend they are.

<comment><USER11> Sun Tzu - Appear weak when you are strong, and strong when you are weak

</comment></comment><comment><USER12> Completely off topic, but why can't I keep the page zoomed out far enough to view the entire width of a paragraph? I'm on my iPhone; is Google doing something screwy to fuck with iOS users?

<comment><USER13> Usually these issues are due more to browser settings...

<comment><USER14> Safari on iOS doesn't have many settings... The page is just broken.

<comment><USER13> I mean Safari might be rendering it wrong by default. The fact there are few settings is a limitation which may or may not impact the rendering...

Either way I doubt it's any sort of ploy to fuck with iOS users...

</comment></comment></comment></comment><comment><USER15> I wonder how many of them are literally "new", as in, "What cures a hang over" versus "What cures a hangover", and how many of them are "new" by the time Google's computer breaks it into a normalized query? I guess to the engineers designing that process, it's all new data that their algorithm has to deal with. But it'd be interesting to see the vitality of the search for new concepts and knowledge among Google's users.

<comment><USER16> One measure of "newness" is if the top 10 results are the same as other queries. After all, if two queries produce the same list of results, then aren't they the effectively the same query? I doubt that's what's being used here, though.

</comment></comment><comment><USER17> this may be a stupid question, but what does the link have to do with "Google and Competition"?

<comment><USER18> This is a classic "made for regulators" set of pages. The title lets regulators know that it's for them, but the content has to explain Google's business as simply and positively as possible. You'll also notice that when you click through each of the pages, almost every criticism that could be lobbed at Google by a 3rd party is countered in some way.

Also note that the page came about mid-2011, around the same time when Microsoft was beating their "Google is a monopoly" drum.

[http://web.archive.org/web/20110826063413/http://www.google....](http://web.archive.org/web/20110826063413/http://www.google.com/competition/howgooglesearchworks.html)

</comment></comment><comment><USER19> Google Search is broken.

Even Verbatim search starts to look fishy.

Search for 'engine oil' and you will find 'health benefits from using fish oil'. I'm tired.

<comment><USER20> Interesting, I searched for "engine oil" and I don't get anything about fish oil in 5 first pages of results. First two hits are the most relevant as well - wikipedia entries.

<comment><USER19> Just a poor hyperbole, yet I don't believe you haven't seen these issues before. Just looking now to fix a Wordpress site that a cheap developer left us without any documentation. Search for "wordpress schema explorer", results: Outlook Web Access 2003 doesn't work with Internet Explorer 10 Some SOQL and Salesforce results (can you even turn off personalisation?) Crystal Reports 2008 Database Explorer Doesn't Show All Schemas

Verbatim results: visual studio 2008 - How do you open XML Schema Explorer - Stack ...

There is a single mention of Wordpress in that page: at the page footer.

Also, how about inability to filter by date AND verbatim results?

</comment></comment></comment><comment><USER21> A few years ago it was reported at being 20-25%. [http://searchengineland.com/google-25-of-queries-are-new- add...](http://searchengineland.com/google-25-of-queries-are-new-adding- question-engine-11535)

</comment><comment><USER22> How would they know this for sure if they are only supposed to be storing searches for 18 months?

<comment><USER23> A Bloom filter, for example, would permit them to know this without retaining any searches.

<comment><USER24> Or even statistical sampling.

</comment></comment></comment><comment><USER25> I feel Google will get replaced soon. The fact that search is getting more personalised is hurting me more than anything else. We dont get unbiased results. The User experience will definitely die down with this !!!

<comment><USER26> Think out of the box: you most certainly WANT personalised result. What you don't want is biased news

<comment><USER25> imagine a republican seeing more republican friendly results and a democrat seeing democratic results. Now, this would make Google really look unreliable at some point of time !

<comment><USER26> Yes, I've seen (as many others did) the filter bubble video, but I'll propose a counter argument: imagine looking for "python" and having results referring both to wildlife and programming languages.

The questions that I asked myself after watching the video are:

What is the expected result?

Are there any logical fallacies that I need to consider?

What are the flaws associated to a point of view?

What are the flaws associated to the other point of view?

Why are they flaws?

What can be done to fix them?

If some things cannot be done, is there any workaround?

</comment></comment></comment></comment><comment><USER27> I've been trying to ween myself off search engines, and rather search directly from within specific websites:

Wikipedia - general information

StackOverflow - <USER2>

IMDB - actors/movies

etc...

Obviously finding those websites in the 1st place requires a search engine or index of some kind, but I'm getting faster results going directly to the source :)

<comment><USER28> You might like [https://duckduckgo.com/bang.html](https://duckduckgo.com/bang.html)

</comment></comment><comment><USER29> "we can create computing programs, called "algorithms""

I don't think that word means what you think it means.

<comment><USER30> Yeah, it's not very clear or clean, but also take into account the audience this site is aimed at.

</comment></comment><comment><USER31> The whole 'algorithms do the ranking' thing is a misdirection. Algorithms do of course rank pages, but they do so according to criteria chosen by _humans_ employed by Google. Google absolutely chooses which pages rank highly and which do not according to their own subjective human judgement, applied by machine. It is disingenuous of them to pretend otherwise.

<comment> martin-adams While I wont speak for gibwell, I'm interpreting what is saying that Google do set the criteria of what metrics deem a higher or lower ranking page.

For example:

\- More time users spend on a page indicates it's more relevant

\- More high quality inbound links indicates higher quality content

\- Content seen as spammy are considered can lower page rank

The fact is that Google don't discriminate based on the rules they set out within their algorithm. When Google say their algorithm does the choosing, it does, but it's the same algorithm used across the whole internet, giving a fair competitive landscape. That's the theory at least.

<comment><USER32> What worries me more is that Google is increasingly choosing to put _brands_ at the top of the search results.

Don't get me wrong, if I'm looking for the Apple website, I should absolutely get Apple.com first in Google, and not a medium-sized blog talking about Apple. So relevancy should matter most.

However, I fear that they are ranking bigger sites and bigger brands above more _relevant_ posts from medium-sized, sites, too. And that I don't like. Give the little guy a chance, especially if his post is of higher quality.

And no I don't think that if the big site's post gets retweeted 100 times and the medium-sized' post gets retweeted 10 times, it should matter much, because resharing is just a side-effect of being big and having a big audience, and I think it's less about the "quality" of the post.

Google ends up promoting bigger and bigger sites at the top, while downranking the smaller ones, who are impacted negatively by a lot of factors (smaller age, fewer backlinks, fewer reshares, etc).

So I guess my point is, on-page "performance" (for lack of a better word) should always count more than off-page performance.

<comment><USER33> This is just a power law applied to the distribution of inbound links. As time progresses, the gap widens.

Moreover, very frequently a little guy has content on bigger sites and enjoys traffic from being integrated into the bigger site ecosystem. Reasoning about search engine result pages is hard because it is a _very_ complex system with multiple various parameters that are factored in.</comment></comment></comment></comment>


Show HN: A Golang library to build Turing machine - <AUTHOR> https://made2591.github.io/posts/golang-turing-machine <comment><AUTHOR> Here the link [https://github.com/made2591/go- tm](https://github.com/made2591/go-tm)</comment>


New Search API in Map Kit Now Available - <AUTHOR> https://developer.apple.com/news/index.php?id=1282013a <comment><AUTHOR> This is perfect timing for me, I need this in the current project I am working on.</comment>


Ask HN: What would you wish your non-technical co-founder was better at? - <AUTHOR>

If you have a non-technical co-founder are there any areas you find very difficult to communicate about? What could the non-technical co-founder improve? <comment><USER2> probably taking their issues to HN instead of talking to me about them.</comment>


Russian state telco hijacked traffic destined for HSBC, VISA, Mastercard, etc. - tefo-mohapi https://www.iafrikan.com/2017/04/29/traffic-destined-for-several-networks-including-south-africas-internet-solutions-was-hijacked-by-a-russian-telco/ <comment><AUTHOR> BGP seems to suffer from this regularly. Where is the push for BGPSec? It seems even more important that DNSSec...

Luckily HTTPS can still detect this maliciousness.</comment>


Using Angular Universal with Sql Server - <AUTHOR> http://www.syntaxsuccess.com/viewarticle/using-angular-universal-with-sql-server <comment><USER2> One of the most bizarre things I've ever done with Angular (this was v1) was help someone building an HTA that talked to a SQL Server database, all client- side (no separate data layer).</comment>


A New Way of Working: A Two-Month Recap - <AUTHOR> http://37signals.com/svn/posts/2185-a-new-way-of-working-a-two-month-recap

<comment><USER2> It's fascinating to watch 37signals adapt as it becomes a _slightly_ larger company. I think the number of features accomplished is pretty impressive for it being their first attempt at this new way of working. Across multiple products, no less.

My first reaction to a lot of their learnings was "Duh", but of course I've only learned a number of those lessons after several years working with agile dev teams. Credit to them for sharing all of this.

</comment><comment><USER3> I remember in college always being hammered with "break down problems into appropriately sized, manageable chunks." This looks like a great approach to it. Focus on a specific issue for a 2-week block, design-develop-deploy, and move on.

Key quote: "Late nights are a sign of scope failure. Hero mode is a sign of scope failure." Bingo. If you're regularly going into those modes, it means the problems weren't broken down into right-sized pieces.

</comment><comment><USER4> I thought 37s did 4-day weeks? did they stop that practice?

<comment><AUTHOR> That's one of the first things I wondered while reading this.

Jason, care to comment if you see this/get a chance?

<comment><USER5> We're doing 4-day weeks in the summer. They work better there since a good portion of the company lives in cold-weather climates. The extra day was often used for working, and when it wasn't it made the week feel like 3.5 day weeks. So we're starting to think of it as summer vacation every work week.

That's the current idea. We're ever-chaging so we'll see how it all shakes out.

</comment></comment></comment><comment><USER6> Is programming twice as much work as designing? (2 programmers, 1 designer).

What would change if programming was 4x faster than it is now (e.g. because of imaginary better tools)? Would you do 2 designers with 1 programmer? Could you offload some of the designer work to programmers?

<comment><USER7> I find it surprising, too.

In my experience, designers are slower than programmers. It depends on the product but usually it takes some time to tweak all Internet Explorer issues.

To hijack the thread a bit: designer's tools are horrible. Photoshop misleads you, and designs done from PSD are easy to be poorly implemented. On the other hand, CSS/XHTML slows your creativity down.

I find this is an enormous opportunity for profit.

<comment><USER6> Do you have ideas on better tools for designers? I do for programmers, but if designers are a bigger bottleneck it would be great if their tools could be improved too :)

<comment><USER7> Unfortunately, no. I'm a programmer and sometimes a manager, not a designer. I don't know their pains too deeply. I merely keep seeing that the period between their "aha!" moment and the final implementation is definitely too long.

If I'd have to give any hints, I'd stick with what I wrote above, expanding it a bit.

Photoshop is a handy tool but it tends to attract people who are not web designers (there was a thread few days ago that you should hire a web designer for web design; a logo designer for logo etc.); also, it requires some experience with XHTML/CSS to get the fonts right, or realize that grid matters.

On the other hand, current CSS frameworks are rather painful to work with. I saw Blueprint hijacked million times, and the whole reloading concept is a big headache for non tech savvy folks. (unfortunately, the same applies to Compass)

</comment></comment></comment></comment><comment><USER8> I've worked in 1-2 week sprints for ages, and it works really well. As pointed out in the article, 1-2 weeks is a horizon/deadline that you can _feel_. That pressure focuses.

As a humorous side note, the following quote really reminded me of the cadence of <http://friedisms.tumblr.com/>

"We want to throw work overboard, not our sanity or our sleep. Late nights are a sign of scope failure. Hero mode is a sign of scope failure. You can't compartmentalize burnout. Yes, we start new iterations every two weeks, but burnout carries over. The scope hammer helps eliminate burnout."</comment>