Ask HN: Rust or Golang? - <AUTHOR> Which programming language do you prefer? What is the advantages of Go over the Rust and vice versa?<p>Which language would you recommend for the back-end development? <comment><USER2> Coming from a company which is switching from Golang to Rust, I can definately say that this article is pretty true and needs to be taken into account: [https://blog.discord.com/why-discord-is-switching-from-go- to...](https://blog.discord.com/why-discord-is-switching-from-go-to- rust-a190bbca2b1f?gi=97fa3bc456f9)

Even though it's "old", but back in July (2020) we could replicate this behavior.

One main aspect of "why" we are swithcing to rust is that our project needs to handle large amounts of data (think > 15Gb in RAM). When you try to work with large data structures within RAM, the GC of golang goes a little nuts. There's many different memory issues that we found, for example, when we put a larger load on our project, there's allocations happening, but Golang won't deallocate or release the memory to the OS unless the load goes down.

But if you don't have to work with large data structures and need a speedy multithreaded solution, then you can definately go with golang.

I would also like to point out that it's not very accurate to say that Rust has moderate C++ flavor. It has C flavor with some "differences" when it comes to variables and their lifetimes as well as some different minor flavors of other languages. For example, it has channels, which work in a very similar way as in golang. It has stream (functional) programming to be done as easy as with Java. The biggest issue with Rust is that there's no well established libraries to work with and sometimes you get major incompatibilities or the issue when you have to so many different 3rd party libraries, that it becomes unconfortable to manage.

</comment><comment><USER3> Come up with a small project and code it in both. It will help you decide which feels better to you.

But in my experience, I wouldn't pick Go. Having the GC makes it easier to just get things done than with Rust, but it doesn't take long to feel like all the logic is lost to the noise of error handling. It also seems easy to miss closing resources with defer since there's nothing like .NET's IDisposable to look for.

If you need a large variety of battle-tested libraries, I wouldn't choose either though. Python, C#, Java, and C++ are better choices there.

</comment><comment><USER4> If you want to get started quickly, Go. Better yet, Python or Ruby or Java, which have far more available frameworks and libraries. If you care about quality, performance and memory usage enough to invest more time into learning how to use it, Rust.

Between Go and Rust, Go wins on popularity and amount of libraries, compilation speed (not an issue for me really, but some people care more about that) and its easy to get someone who knows it. Rust wins on quality of libraries, tooling and the code you'll produce.

Rust gets dependency management right, and the language is actually worth learning. Golang is meh at best.

You will need to spend some time building yourself a web framework though, if you want one, as existing ones are very basic. That's a serious issue with Rust atm.

</comment><comment><USER5> Go has a distinct C flavor, and Rust has a moderate C++ flavor. Go has the key design features of asynchronous concurrency (go-routines) and message passing, as well as fast compile times. Go is backed by Google. Rust has the distinct design feature of memory safety, particularly with its implication of pointers, for concurrent processing. Rust is backed my Mozilla. Since both share that C/C++ ancestry, I wouldn't expect that you would gain too much, or lose too much, by picking one over the other if you're interested in just learning the language to become a better programmer. If you're doing it for work, then you're going to use whatever they have already set up for you. So, use that one... which is probably Java...

</comment><comment> UK-Al05 Go for backend web services.

Go in my mind is a replacement for java/c#

Rust is a replacement for c/c++ Do you see that much development for backend web services in C or C++?

<comment><USER6> I don't have much non-academic experience with Java but what is C# lacking that Go has? The reportedly fast compile times have me curious, Go is I think #1 on my list of new languages to learn.

<comment><USER7> Go applications don't use the CLR, just compiled binary. It's a lot more lightweight than C#. I'd use them for different things. Go is replacing Python for me in certain places.

<comment><USER8> .NET Native, CoreRT, IL2CPP.

</comment></comment></comment></comment><comment><USER9> I like Go because of its fast compile times more than anything. It's like a scripting language that compiles to fast native code.

</comment><comment> green-bottle I am a bit tired of seeing this topic come up again and again on Reddit or HN. You may have as well, asked if someone preferred blue or orange.

The choice of a programming language (without considering specific details of the application) is very subjective with a low signal to noise ratio. What looks aesthetic or ergonomic for others will most likely not apply to you.

For most practical applications things like the runtime, library ecosystem and other factors become more important and just "Rust or Golang for backend development?" isn't very helpful.

<comment><USER10> > library ecosystem and other factors become more important

I guess this is what OP is asking here

<comment><USER6> But what you need out of those "other factors" varies based on your business requirements, which OP didn't share. What we're going to end up with (what we always end up with in these kind of threads) is ~35% of comments are from folks who've only ever used Go, so they suggest Go. ~35% are from those who've only used Rust, and they suggest Rust. ~20% are from people who've used both but in wildly different environments such that it's hard to do any real comparison. The remaining ~10% or less who have used both languages in suitably similar production-level environments are going to be split more-or- less evenly between the two because they've had different business constraints. An exceedingly small minority will have used both in the same business environment, and they're going to suggest whichever one they used second.

And that's even ignoring the much more important fact that there are about 50 other back-end languages that are likely as good or better candidates, but not trendy enough to warrant mentioning.

<comment><USER10> But what is the downside to what you are saying ? We have experiences from golang devs and rust devs all available to be compared here in a thread and other thread (the discussions change as time changes)

Isn't this why we are here ? Share what you have experience with, who even knows everything ?

</comment></comment></comment></comment><comment><USER11> GO v. Rust is a tough compare and kind of a bad question.

I work in a very large C/C++ organization and the build concern over our 1000s of libraries is a giant chore to do well in a DEVOPS context. GO is so much better. RUST is routinely seen worse than GO here. Compilation is slow but anecdotally dependency management in RUST is orders of 10 better that C/C++ and comparable to GO.

There are a few stories in HN where cloud providers, big data types have been burned by GC. But it's not routine. Their ability to find and fix root cause required in-depth diagnostics. If your system is complex your tooling better have good support there. GO definitely does.

Here's what I say: if you are I/O bound GO is just fine. GO has great libraries for all manner of HTML/socket work. It works well with protobuf, compression, REST APIs, UUIDs. Its SQL library is great.

If you are low latency bound or need latency in a narrow range you'd better do a POC in GO and RUST and make an informed choice. There's plenty of GO programmers and fewer good RUST programmers.

There are more HN posts from people learning RUST reporting the borrow aspect of RUST is tough to learn and tougher to do right. RUST kind of memory management isn't routinely found in other languages.

RUST is meant to be a better C++. It's meant to excel in the niche area of system like libraries by yielding C/C++ performance without memory C/C++ memory problems which are perhaps the largest security attack area. RUST will _not_ remove all data races. It reduces them - which is good - but do not over interpret. In this sense RUST is smart: they've picked a good market, and their tools make good sense there.

C++ is not necessarily the go-to for bare metal programming. So neither would RUST be. Most of the Linux kernel is C not C++, for example. We know that calling C-libraries from a non-C language is routine. To RUST? Not sure. To C++? That's a harder ask but you're probably not the only one who's doing it - at least that.

</comment><comment><USER12> I think it really depends on what kind of backend you're writing. If you're writing a simple CRUD web backend, I'd suggest avoiding Rust because other backend frameworks have a lot of boring side stuff (CSRF, security headers, form validation, you name it) already implemented while the more recent Rust frameworks are still missing them all over the place, requiring you to implement them yourself. It's not a lot of work to do it yourself, but it's boring, easy to get wrong and you need to check with docs and specs to see if what you're doing is even correct. For those cases, I'd recommend a classic such as Java+Spring or C#+ASP Core with their excellent plugins and addon ecosystems.

If you're handling big data structures with loads of allocations and deallocations and complicated algorithms, Rust might be the language for you. The language shines and the lack of a GC shines at those workloads. The same is true for batched workloads that can be processed in parallel, because the restrictions Rust puts on object access makes it excellent to make assumptions about data access and ownership with little or no performance wasted on the framework around the threading library.

As much as I like Rust and projects like Rocket.rs, I'm just not sure if the ecosystem is mature enough for it to be used for a production backend for web services. I'd wait a year or two for the Rust frameworks to gain more features and more quality of life improvements before actually using it.

</comment><comment><USER13> I feel like choosing between the two for a new project comes down to one factor: do you truly need to maximize performance? Be honest.

If yes, Rust: no GC, consider the rayon crate for concurrency. Higher learning curve, ecosystem may not be as mature for certain areas yet (outside of web assembly).

If no, Go: lower learning curve, runtime-managed concurrency, more ecosystem maturity for most enterprise software tasks.

</comment><comment><USER14> If you're working on a professional project as a freelancer, something to consider is the ease with which you can transfer ownership of your project to another developer. I can't say which is better, rust or go, but just wanted to mention this consideration

</comment><comment><USER15> From the outside Go seems to be the clear winner in terms of popularity for back end web development and services. Maybe that will change for Rust in the future, things like Rocket look very nice but overall I think Rust is targeting a different area.

</comment><comment><AUTHOR> Update: Sorry about not providing details on the submission. Here is additional details on what I'm looking for I'm asking language/framework recommendation for the RESTful API that needs to be fast and secure, so security and performance of the framework is very important.

Feel free to recommend any Go/Rust framework. Also why do you prefer that language?

<comment><USER4> For Rust, I am using Actix [https://github.com/actix/actix- web](https://github.com/actix/actix-web) . Without better definition of "secure" and "performance" there is no way to help you.

Both of them are used and exposed publicly by numerous companies, so ootb they good enough for any API. For 99.999% percent of people both are performant enough. Rust will win on memory usage, in some cases significantly, and will win on performance by a smaller margin, but run your own benchmark.

This is an interesting article about why npm uses Rust instead of something else: [https://www.infoq.com/news/2019/03/rust-npm- performance/](https://www.infoq.com/news/2019/03/rust-npm-performance/)

>performance of the framework is very important

No, its not. Whatever you do with it, will be 100-1000x slower than what framework does. Making decision on something that takes 0.01% of time spend on request handling makes no sense. Optimize your code and data sources, don't worry about framework,

> Also why do you prefer that language?

Tons of modern features. Algebraic data types (this eliminates null-pointer errors completely, which you can't say about Go), generics, borrow checker, pattern matching, macros, general focus on correctness of your code. All of that composes nicely and allows to produce correct and readable code.

</comment></comment><comment><USER16> I would choose Rust every time. The abstraction facilities in Go just are too non-existent.

</comment><comment><USER17> It seems to me that Go is purpose built for writing network services like a backend.

Rust is a more general purpose language, and has been designed from the start to work well with existing C-style libraries.

Both have their place, but you asked about a backend. Go shines there.

</comment><comment><USER18> if you're end goal is to be productive and build something shippable, then I would suggest Go. You focus on building what you want and dont have to explicitly deal with memory management etc. But, if you want to get into nitty-gritty details of things and have complete control over things you need to build something performance in mind, then choose Rust.

Coming from Java/Python background, Go feels like a fresh breeze. You can easily get things done with Go.

</comment><comment><USER19> I don't see the two as directly comparible.

Go is garbage collected, Rust is not. Go is compact, Rust has lots of functional programming bells and whistles like algebraic data types. Go compiles quickly, Rust takes a while. Go has first class support for concurrency, Rust does not.

Roll with whichever you like. For me, as a side-language, it's Go, because I already enjoy and use Haskell, and I feel like Go contrasts more with Haskell. If I didn't know Haskell, I'd probably choose Rust.

If it wasn't for a side-language, but was for a specific project, I'd choose on the basis of available libraries.

</comment><comment><USER20> I use both frequently, in and out of work. And I can't state enough that people need to stop asking this question.

These languages - I would throw Swift in there as well - are "apples and oranges" and shouldn't really be compared. Depending on your use case, they all have different merits over each other.

To actually make a worthwhile recommendation, you'd have to elaborate on what you mean by backend service. RESTful? gRPC? Something else? When it comes to the first two scenarios, I think Go enables more rapid development and has a stronger library ecosystem.

</comment><comment><USER10> golang has much more libraries available to be reused (not as much as java but still much more than rust)

</comment><comment><USER21> Kubernetes? -> learn go. I hope rust will become soon a (really) good place for embedded software.

</comment><comment><USER22> JavaScript for web development tbh

<comment><USER5> Rust, too. WebAssembly is going to be a big deal to some people, and the rust tools are good for that.

</comment></comment><comment><USER23> Depends..without context this question has no meaning...

Anyway, speed-wise, go will get you further faster.

Job-wise, go will get you way mor opportunities.

Performance-wise, rust will be always faster, no way around that.

Future-proof-wise, go, no contest.

Popularity-wise, go, hands down.

tl;dr rust is very niche, low-level, performance-oriented language and should be used in such use-cases. Anything else, Go will do better.

</comment><comment><USER24> There are other and better languages out there

<comment><USER6> I agree, but you should give examples and reasoning.</comment></comment>


Ask HN: Why is everyone mad at Yahoo? - <AUTHOR>

I always thought that Government makes the laws and corporations try to make the most money, for their stakeholders, staying within those laws.  Why aren't politicians taking more heat?
After the Google settlement, I'd be pissed, as a Yahoo shareholder, if they didn't take Facebook for all Yahoo's patents are worth.
And Facebook is filled with smart people and investors.  I'm sure they knew this was coming, so is this part of their strategy?  Let it all play out in the court of public opinion? <comment><USER2> Everyone is mad at Yahoo because they have let everyone down. Once a respectable company, they got left behind by other players because their lack of innovation. No web related (especially this big) company should afford to stay behind.

And now that their time to "go away" has come, they are taking all possible (legal) actions to make some more money, which, in my opinion, would just prolong their misery.

The fact is that Yahoo is a sinking ship and and they are trying to pull others with them as well - not that they are going to succeed. That's why everyone is mad at them: They are unable to go down with their heads up.

</comment><comment><USER3> > _...corporations try to make the most money, for their stakeholders, staying > within those laws._

This is a pet peeve of mine. There's no fiduciary responsibility to make the most money in shortest period of time without regard for the future. In fact I would argue it's exactly the opposite.

Even if Yahoo wins $4 billion dollars they might lose more than that in harm to their reputation, boycotts, hiring problems, counter-suits, etc.

A reasonable person in their position might have _reasoned_ that this lawsuit was a bad idea. Yes: it might make them some cash (which isn't their problem), but it also might hurt them in much more fundamental ways (which they can't afford).

<comment><AUTHOR> When Microsoft sues Android manufacturers and settles for ~$5 per phone, is that less unctuous because they are still growing and innovating?

Is the general premiss that if Yahoo stays the course they'll die a slow death and this measure extends their runway even more? Last time I checked, Yahoo still made a billion dollars last year. They aren't anywhere near dead.

I don't understanding why they should abdicate their responsibility and right to what's probably going to be 5-10 billion in post ipo facebook stock.

They are making changes to fix the long-term view and still are doing interesting R&D things. Hopefully, they find more interesting ways to make money from business operations. Is the argument that if your long-term position isn't right, they can buy the equivalent or more of goodwill by cutting Facebook a pass? Would that make you leave where you work to join Yahoo? Would it be 5+ billion worth of culture building? If so, would that REALLY mean they were back on the right track, or bring them the people that could help them do so?

<comment><USER3> > _...abdicate their responsibility..._

There's no such responsibility. All they have to do is add up expected gain vs expected loss to see that it's not a good idea. And it's entirely possible they're going to walk away with no money in this case. Even if it turns out to be $10 billion it might still may end up a net loss.

</comment></comment></comment><comment><USER4> Why not increase shareholder value through true innovation rather than patent trolling and abuse of a fragile and susceptible patent law system? I think the industry as a whole is better off when firms innovate rather than litigate. Just my 2 cents.

<comment><AUTHOR> I agree. For whatever reason, they have been unable to innovate their way out of their current situation. However, not enforcing their patents, which already made them billions before, would just be against their fiduciary responsibility.

<comment><USER4> Points well taken. By no means am I trying to discredit what Yahoo has been able to accomplish in their long history on the web. Quite contrary, I'm suggesting that if they've been able to out innovate before than can do it once more. Nevertheless, I think by protecting an idea as abstract as a "Personalizable Profile Page" and then lying in wait until someone is on the verge of rendering you irrelevant in your field of play is bad sport. Facebook has been in existence since 2004 and if I remember correctly having a profile page has always been a part of the site as is the case for multiple sites (Monster.com, LinkedIn, MySpace, G+, all have "personalizable" profile pages) why not go after them while they're irrelevant? I just think its poor sportsmanship and largely will not bode well in the court of public opinion as many of Yahoo's consumers are likely also Facebook users.</comment></comment></comment>


Latency numbers every programmer should know (2012) - <AUTHOR> https://gist.github.com/hellerbarde/2843375 <comment><USER2> Instead of memorizing tables, it would be more valuable to programmers to read how these numbers come to be in the first place. An excellent, and much longer read, is by Ulrich Drepper[1].

[1] [http://lwn.net/Articles/250967/](http://lwn.net/Articles/250967/)

<comment><USER3> I came across this article the other day for the first time and started to read it. How much still applies to today?

<comment> Const-me Part 1: 50% applies, RAM controllers now part of the CPU, deprecating half of what's written, also some CPUs have eDRAM. Part 2: almost completely applies. Part 3: 70% applies, hardware SLAT (Intel EPT / AMD RVI) deprecated what's written about virtualization. Part 5: 90% applies. The rest of them — don't know.

P.S. What's I dislike most about the article, it fails to explain why L3 cache is 10-20 times slower than L1 cache, while they both made from SRAM.

<comment><USER4> > it fails to explain why L3 cache is 10-20 times slower than L1 cache, while > they both made from SRAM.

Why is it? Is it because L3 is usually shared?

<comment> Const-me Even when the cache line is unshared, L3 is still 10 times slower than L1.

The best explanation I saw is this: [https://fgiesen.wordpress.com/2016/08/07/why-do-cpus-have- mu...](https://fgiesen.wordpress.com/2016/08/07/why-do-cpus-have-multiple- cache-levels/)

</comment></comment></comment></comment></comment><comment><USER5> Reminds me of the video of Grace Hopper talking about nanoseconds:

[https://www.youtube.com/watch?v=JEpsKnWZrJ8](https://www.youtube.com/watch?v=JEpsKnWZrJ8)

</comment><comment><USER6> It's also powerful to think of these numbers in the context of complexity. You might not worry about a nanosecond here or there in an O(N) algorithm, but at O(N^3), when N is 100 each nanosecond in the inner loop is a millisecond of wall clock. Blowing the cache in that inner loop is going to hurt

<comment><USER7> Can confirm. Currently scrambling to finish up code for school, and the additional synchronization involved in false-sharing is killing me.

</comment></comment><comment><USER8> I agree whole heartedly that these are good numbers to have in your head.

[http://www.bitmover.com/lmbench/](http://www.bitmover.com/lmbench/)

measures a bunch of these in a portable way. It tries to give you latency & bandwidth of all the things.

</comment><comment><USER9> Always always measure.

Better than guessing based on wrong or old information

</comment><comment><USER10> I'm considering an "Ask HN" on things programmers should know.

There's "things programmers should know" according to HN: [https://hn.algolia.com/?query=%22programmers%20should%20know...](https://hn.algolia.com/?query=%22programmers%20should%20know%22&sort=byPopularity&prefix=false&page=0&dateRange=all&type=story)

And as previously mentioned, _97 Things every programmer should know: collective wisdom from the experts_ , Kevlin Henney, ed., O'Reilly, 2010

[http://www.worldcat.org/title/97-things-every-programmer- sho...](http://www.worldcat.org/title/97-things-every-programmer-should-know- collective-wisdom-from-the-experts/oclc/460060136&referer=brief_results)

Most of the latter is practices, with a few technical recommendations: DRY, floating-points, IPC, linkers, BTS. Most, however, aren't.

</comment><comment><USER11> I searched DDG and github for "every programmer." Man, I gotta get busy, that's a lot to know.

<comment><USER10> Fortunately, there's a book: _97 Things Every Programmer Should Know_

[https://books.google.com/books/about/97_Things_Every_Program...](https://books.google.com/books/about/97_Things_Every_Programmer_Should_Know.html?id=sS7aPtrUuw4C)

[http://www.worldcat.org/title/97-things-every-programmer- sho...](http://www.worldcat.org/title/97-things-every-programmer-should-know- collective-wisdom-from-the-experts/oclc/460060136&referer=brief_results)

<comment><USER12> Free Gitbook version @ [https://97-things-every-x-should- know.gitbooks.io/97-things-...](https://97-things-every-x-should- know.gitbooks.io/97-things-every-programmer-should-know/content/en/index.html)

</comment></comment></comment><comment><USER13> Not every programmer needs to know these numbers.

<comment><USER14> Its not so much about programmers needing to know the numbers.

Its more about programmers needing to know what L1 cache is, the idea that some operations are faster than others, etc.

I know a lot of web dev type people who have no idea how the CPU works, what a register is, what paging or virtual memory are, etc. When you're treating compute resources like they're free and abundant (what web devs like to do these days), then of course you don't care. I just wish those devs did care, because their fancy dev machines blind them to the fact that their theoretically simple web app groans on anything other than an i7 with 8Gb ram. Their fast internet and local servers also seem to make them forget why its bad that first load requires megabytes of js. Sometimes I'd rather browse with my cheap tablet and that nonsense seriously blows.

There's a lot of gluttony in development these days. I wish every developer was required to take a basic OS or assembly course to see just how much is happening between writing js and having it actually execute. To see what it really means to program a computer and not a web browser.

I also wish more devs would take a look at the performance of MS word and the performance of Google Docs and apply a little critical thinking. On my cheap Surface 3 (4gb ram i3) Word loads instantly, sips power, and does everything I'd ever want locally. Docs takes forever, destroys the battery and is slow as molasses in January with both Edge and Chrome.

Yes, every programmer does need to know these numbers and why the numbers are what they are.

<comment><USER15> Sadly such (willful?) blindness is far from unique to web devs (though much of it seems to originate with web dev these days).

I have personally encountered people that dismiss the whole "lets stuff everything in /usr" issue with claiming that everyone (or at least those they care about) are using lights out management anyways.

</comment></comment></comment><comment><USER16> According to sources like this [https://www.cs.utah.edu/~manua/pubs/systor15.pdf](https://www.cs.utah.edu/~manua/pubs/systor15.pdf) NVMe 'disks' give another 5-10X IOPS boost. With M.2 the pricing is pretty decent for many things.

I think programmers or system designers that miss things like new secondary storage technologies are doing it wrong because the orders of magnitude can really affect development time.

</comment><comment><USER17> This is super applicable, even in web dev. Properly using a clustered index in an RDBMS causes sequential reads instead of random reads.

That knowledge alone can speed up queries orders of magnitude and prevent the need to move to a NoSQL solution.

</comment><comment><USER18> I think it's far more useful to remember ratios rather than exact numbers.

<comment><USER19> An important reason we keep using strategies that have been abandoned in the past is because the ratios change over time.

Ubiquity of SSDs brings to a close a time when getting data from another computer is faster than getting it from your own disk drive. A ratio that had previously been true, IIRC, not since a time in the eighties (see the Sprite system, process migration).

</comment></comment><comment><USER20> For those interested in CPU specific numbers I've found this site [1] to be quite useful.

[1] [http://www.7-cpu.com/](http://www.7-cpu.com/)

</comment><comment><USER21> I've seen this chart in various forms going around for years. Do the numbers ever go down or is this the same chart from 5 years ago? In which case I would think the numbers would be high.

</comment><comment><USER22> _Assuming ~1GB /sec SSD_

Is this from the future?

<comment><USER23> Not very common at the time but they did exist! Here's a review of one from 2012: [http://www.anandtech.com/show/6124/the-intel- ssd-910-review/...](http://www.anandtech.com/show/6124/the-intel- ssd-910-review/4)

The SATA III bottleneck is still common today, but Mac laptops, at least, have sported SSDs that can do ~1GByte/sec for a couple of revisions now. I think they're PCI Express too.</comment></comment>


Twitter Will Finally Stop Making Your Images Look Terrible - <AUTHOR> https://onezero.medium.com/twitter-will-finally-stop-making-your-images-look-terrible-2ed882dfcd9e?source=rss----444d13b52878---4&gi=fad303263da1 <comment><USER2> Next, maybe Twitter can assign a big team the multi-month project of making it so that when you click an image, to zoom for more details:

* it doesn't ever shrink the image size (as currently happens with certain oversized/proportioned images)

* it doesn't add new overlays obscuring edges of the image that you just clicked to get a fuller view

Baby steps! I know they're running a cash-starved skeleton crew over at their non-profit hobby site.

<comment><USER3> Perhaps after they close these tickets they could make the website load successfully more than half the time?

Ah, nevermind. I'm asking for way too much.

</comment></comment><comment><USER4> The depreciation of digital images is an interesting phenomenon. Like the real paper, the quality of memes on the Internet gets worse and worse over time. We were promised that digital medium would never lose quality yet here we are. Of course, it's not just lossy compression but bit rot too.

I wonder how we will be tackling these problems in the future. Maybe, at some point, the savings of JPEG will be negligible for what we have so we'll have images as PNGs?

<comment><USER5> The phenomenon of meme photo degradation is indeed an interesting one.

I think that is one reason I have always been put off by memes even when they come from loved ones, the photos look LITERALLY dirty, as if passed around by hand :)

<comment><USER6> a lot of that has to do with meme-regurgitator sites that stamp their watermark all over an image.

the reality is that the picture is being passed around by way too many automations that apply filters or reencodes with little regard to the quality drop, and lots of priority going to making the image smaller, and thus cheaper to host.

<comment><USER3> >and thus cheaper to host

Sure, if you host all the images on S3. But why would you? Anywhere else you can get unmetered gigabit for a few hundred/mo, the savings would be non- existent.

</comment></comment></comment></comment><comment><USER7> Yes, this is apparently a multi-billion user site used to share images, which doesn't know that the image which is currently being uploading has already been compressed at a quality setting _lower_ than what they are about to try _recompressing_ the image at, and so will endlessly recompress the same image ad nauseam until it becomes illegible. But now, maybe not. But only if the upload the image through a web browser. So impressive.

</comment><comment><USER8> >To make Medium work, we log user data and share it with service providers. Click "Sign Up" above to accept Medium's Terms of Service & Privacy Policy.

Gross.</comment>


Palm's software chief quits - <AUTHOR> http://www.networkworld.com/news/2010/041710-palms-software-chief.html <comment><USER2> Wow, Palm is really about to disintegrate.

This is a huge patent portfolio acquisition, interesting for many companies. I hope for HTC to get it!

</comment><comment><USER3> Why would you assume Palm is worse off because of this?</comment>


Holy crap, an Objective-C text that doesn't assume you're retarded - <AUTHOR> http://fullof.bs/holy-crap-an-objective-c-text-that-doesnt-assume-youre-retarded

<comment><USER2> Aaron Hillegass's "Cocoa Programming for Mac OS X" is an extremely well written book that is great for learning Objective C through Cocoa and also does not assume you're retarded.

<comment><USER3> The real point of this book is specifically to teach Objective-C to C++ programmers. Looking at the table of contents, doesn't seem to have much actual "Cocoa" specific content (like AppKit, etc.)

So it looks like the blog post title is misleading.

EDIT: And looking through it, I see I can work backwards and re-learn C++ stuff from the parallel ObjC code, as I know ObjC better than C++ which I haven't used seriously in a very long time.

<comment><USER4> I think the blog post in general is slightly misleading, it seemed like the author was reading Cocoa books (i.e. hillegass and the pragprog cocoa programming book? that's the only pragprog book I can think of that would make sense, but it's only in beta...) and not strictly related to the language, which is what seemed to be what he was looking for.

I'm curious as to which texts this person has looked at, since I found Kochan's objc book, a friend's guide based on Kochan (<http://otierney.net/objective-c.html> although it hasn't been updated in a while), and the Apple docs on objc to be more than enough supplement to what I considered a chapter of Hillegass that left a little something more to be desired.

</comment></comment></comment><comment><USER5> Excerpt:

      "Kudos to Pierre Chatelier for writing the book that Apple and Alan Kay could not."

What does Alan Kay have to do with Objective C? He invented Smalltalk not Objective-C. Perhaps the author meant Brad Cox (<http://en.wikipedia.org/wiki/Brad_Cox>).

</comment><comment><USER6> Someone who can't program already is "retarded"? No wonder certain geeks get a reputation for being unfriendly elitists. I thought we'd grown out of childish slurs like this.

</comment><comment><USER7> Every language has its share of good and bad books to learn from. There's no reason ObjC/Cocoa (or GNUStep if thats your thing) is different.

<comment><USER8> GNUStep is not anybody's thing, and hasn't been for at least a decade.

</comment></comment><comment><USER9> couldn't you take for example K&R and a copy of Objective-C language spec to get going ? or are the semantic differences just too great...

<comment><USER4> You could just take K&R and an Objective-C guide and try, but the best somewhat-tailored advice about learning Objective-C and Cocoa that I have ever read was on [http://www.cocoabuilder.com/archive/message/cocoa/2008/5/15/...](http://www.cocoabuilder.com/archive/message/cocoa/2008/5/15/206700) and something I highly recommend people see before starting :)</comment></comment>


Twitter Succumbs To Backlash, #Dickbar No Longer Covers Tweets - <AUTHOR> http://techcrunch.com/2011/03/08/twitter-responds-to-backlash-dickbar-no-longer-covers-tweets/

<comment><USER2> The article is complete with its own #dickbar.</comment>


Say "yes" to HTTPS: Chrome secures the web, one site at a time - <AUTHOR> https://www.blog.google/topics/safety-security/say-yes-https-chrome-secures-web-one-site-time/ <comment><USER2> This is great for security, but bad for the web overall. It really highlights just how much power Google has over the web. I would also say that the shift has been less about chrome displaying not secure and more about SSL being a Google search signal.

SSL should be used everywhere, but the reason for it is truly scary and shows a slow shift away from the open web.

<comment><USER3> Firefox displays similar warnings if a site requests login and it isn't secure. There is no conspiracy here.

<comment><USER2> The warnings are only a small part of whats driving the change. The change in search ranking signaling is causing anyone that cares about "SEO" to make SSL a requirement. Just like how the change in signals for mobile has pushed just about every site into responsive design.

</comment></comment></comment><comment><USER4> I said a certain site of my company should have https years ago and it was ignored until recently they heard google was going to flag forms. Some of us do know best but this leverage can be helpful to sink it into the thoughts of people above us.

</comment><comment><USER5> well I hope that at some day I do not need to generate https certs while i'm developing.</comment>


It's More Important to Be Kind than Clever - <AUTHOR> http://blogs.hbr.org/taylor/2012/08/its_more_important_to_be_kind.html

<comment><USER2> <http://news.ycombinator.com/item?id=4460398></comment>


Photographer wins 'monkey selfie' legal fight - <AUTHOR> http://www.bbc.co.uk/news/uk-wales-south-east-wales-41235131 <comment><USER2> Huh. I get that the monkey doesn't own the copyright, US law seems pretty straightforward there. But I don't see how that means that the photographer does own it, since neither is he the creator of the photo; yet the article talks about him benefiting from the funds when it's sold.

Anyone know what's up with that?

<comment><USER3> Imagine a wildlife photographer trying to get a picture of a bear at night. Maybe she would set up something to attract the bear, then use a motion sensor to trigger the camera. Clearly she is the author of the photo, even though the bear actually triggered its taking.

I feel a similar argument could be made for the monkey selfie: the photographer didn't push the button, but he created the circumstances.

<comment><USER4> The difference is in composing the photo and choosing the triggering of the shot.

In the motion sensor scenario, the photographer frames the shot and defines the conditions under which a photograph will be taken.

In the monkey selfie, the photographer did not frame the shot, did not direct the camera, did not control conditions under which the photo would be taken (beyond the manufacturer's button). This there was not creative input by the photographer in the actual image captured.

<comment><USER5> This is a can of worms. What if the equipment malfunctions? What if you misconfigured it? What if something else triggered it? What if you take the shot yourself, but squeezed too early because someone shot a rifle?

<comment><USER6> creative input is not that impossible to define.

A malfunctioning equipment don't change the fact if a artist has made some creative input. So long the creative aspect is still visible (ie, the image is not all a single color), there is a argument to get copyright for the combined result. What the creator do not get is exclusive right to any work that has similar malfunctioning but with different creative input, so a interesting looking artifact from malfunctions should not be copyrightable.

A misconfiguration could be argued to be a form of creative input. Debatable. A write should still be entitled to copyright, even if their books has odd words from when auto-correcting software misbehave.

Who trigged the image is not very important so long the creative input exist. Arguable you could claim that a director has more claim to copyright that the person behind the device, but this is the place which practicality comes into place where society prefer to have a single author over many. From a philosophical perspective I would say that every person involved in creating a artistic work should get copyright ownership, similar to how every developer of the linux kernel has copyright ownership for each part they made.

</comment></comment></comment></comment></comment><comment><USER7> Huh, I am sure Peta's donors are thrilled knowing their funds are used in courts over animal copyrights.

<comment><USER8> The interesting part with all this is that Peta's argument actually won: The photographer has no rights to the photo, and can not collect any royalties.

Because you don't have any copyright to photos made with your camera, but only to photos made by you.

<comment><USER9> What, no.

PETA argued that the monkey should have copyright in the photo. That argument was rejected by the district court, and didn't look super promising in the appeals court oral argument.

There was a separate discussion about whether the photographer could have copyright in the photo, in particular the Wikimedia Foundation claimed he should not. That discussion has not been tried in court at all, and it seems far from certain (lots of legal commenters disagreed).

[https://en.wikipedia.org/wiki/Monkey_selfie_copyright_disput...](https://en.wikipedia.org/wiki/Monkey_selfie_copyright_dispute)

<comment><USER10> He could've deleted the photo. Instead he had the right to copy the photo and as exclusive owner that was his exclusive copyright. At which point would that have been lost?

<comment><USER8> Copyright protection only applies if you, personally, had a major share in creating something.

A good example are music remixes, you need to actually contribute a lot yourself to have copyright.

If your camera gets stolen by someone, and they take a picture, without you having any influence in that, you do not own the picture. You can not force people who want to use it to pay.

<comment><USER10> music is an analogy and not informative.

A camera thieve shouldn't profit from a misdeed, and the picture shouldn't be in the public domain by default. So, the photo has to be deleted because noone can claim copyright?

</comment></comment></comment></comment></comment></comment><comment><USER11> It's weird this monkey is smarter than a baby but if a baby took a picture it would own the copyright.

Seems kind of speciesist to me. It's kind of like the voyager episode where the holographic doctor couldn't own the books he wrote.

<comment><USER12> Except a baby probably shouldn't really hold copyright.

Realistically they are not a human just legally they are.

It's hard to say when human life begins but we seem to settle on treating it as after they are born.

But this is nonsense in any scientific sense.

<comment><USER13> Babies are absolutely human, but they may not be persons depending on the definition of personhood. There is no definition of personhood.

<comment><USER12> One hour before birth is it human?

If so how far back do you go before it's not human, is a fertilized embryo human?

If not, whats the difference post birth?

We know many animals are more intelligent than babies. My point is, it's a pointless comparison. Babies don't represent anything human.

And as per the monkey (in this case) can't create. It's the situation they are put in that can create the art. They are just the tool.

</comment></comment></comment></comment><comment><USER14> If I put a camera inside a tumble dryer and the motion causes the camera to trigger and capture a photo, I think I should still own the rights to the image.

The monkey isn't acting with any real understanding of the creative situation so is just an agent of randomness, like the tumble dryer.

<comment><USER15> Even if the monkey did it consciously, it did it with stolen equipment, on a mission somebody paid good money to go and setup. And of course the photographer set the camera's settings too -- pressing the button is the easiest part.

In fact, lots of nature photographers use "camera traps" with automatic trigger sensor when an animal walks nearby -- which is the same as the "animal pushing the trigger" and nobody seriously suggests those are photos the animals took.

</comment></comment><comment><USER16> Link to the appeal's court ruling? San Francisco court I assume will have it up very quickly, but I'm not sure where to look. Usually people have legal documents posted on Scribd very quickly, but my compulsory search found nothing under "naruto v slater" today

<comment><USER17> Here you go: [https://en.scribd.com/mobile/doc/282396752/Naruto-v- Slater-P...](https://en.scribd.com/mobile/doc/282396752/Naruto-v-Slater-PETA- s-Monkey-Selfie-copyright-complaint)

[http://www.loeb.com/~/media/files/publications/2016/2/naruto...](http://www.loeb.com/~/media/files/publications/2016/2/narutovslater.pdf)

<comment><USER18> Those links are to the complaint and the district court's order dismissing the case.

Edit: See above for link to LA Times article reporting that a settlement was reached between PETA and Slater, not that the Ninth Circuit issued an opinion.

<comment><USER16> OP's article says

> But appeal judges at a court in San Francisco ruled in Mr Slater's favour > after a two-year legal fight.

but maybe this was just a denial of PETA's motion to dismiss.

</comment></comment></comment></comment><comment><USER19> I think its strange that there isn't more discussion about the impact on the photographer and the consequences this lawsuit has had on his life, he is pretty much broke and it seems to have destroyed his career not to mention put him and his family through what I would imagine to be pretty harsh emotional distress over the last couple of years.

This article: [https://www.theguardian.com/environment/2017/jul/12/monkey-s...](https://www.theguardian.com/environment/2017/jul/12/monkey- selfie-macaque-copyright-court-david-slater) basically says a couple of months ago he was broke, couldn't afford to replace his equipment or pay his attorney. I hope this result will change his situation but even so this is a huge impact on someone over an issue that realistically is fairly niche.

Questions like this are important to be answered, but surely there should also be discussion about was there a better way to do this than ruining someones life over a picture that could never have existed without his direct intervention and creation of the circumstances needed for the monkey to come into contact with the camera.

</comment><comment><USER20> This has been an absolutely horrendous case that has put the photographer through hell.

I have total and complete sympathy with him and support him absolutely. Twunts trying to deny him copyright on the photo (often based on ficticious versions of how the photo was taken) are screaming arses.

</comment><comment><USER21> The author could have avoided this whole mess and just lied and said that he took the photo

"Yeah I made up the story of the monkey taking the selfie, I actually took it myself"

It's not like the monkey can refute that story....

<comment><USER22> Then it's just another picture of a monkey's face, hardly worth paying much for. And anyone that had paid would feel defrauded.

</comment></comment><comment><USER23> Let's not forget Wikipedia/Media's role in this as well: [http://www.telegraph.co.uk/technology/news/11015672/Wikipedi...](http://www.telegraph.co.uk/technology/news/11015672/Wikipedia- refuses-to-delete-photo-as-monkey-owns-it.html)

</comment><comment><USER24> Don't PETA have better things to focus on?

<comment><USER25> I think PETA see outrageous behaviour as a good way to raise their profile. Whether that actually helps them achieve their goals, though, I'm not that certain.

</comment></comment><comment><USER26> Peta were surely way off. But photographer himself also incorrectly claimed copyright on the photo, which is wrong, since he didn't take it. In short, the photo is in public domain.

</comment><comment><USER27> This was used as an example to question artistic intentionality in aesthetics, in Crash Course Philosophy: [https://youtu.be/gDL4Zf2yEa4?list=PL8dPuuaLjXtNgK6MZucdYldNk...](https://youtu.be/gDL4Zf2yEa4?list=PL8dPuuaLjXtNgK6MZucdYldNkMybYIHKR&t=216)

</comment><comment><USER28> Well, it's quite interesting stuff!

</comment><comment><USER29> As a result of this decision most tech employers can rest easier, secure in the knowledge that they also own the copyrights on code written by monkeys.

</comment><comment><USER15> The photographer probably feels like this person:

[https://www.youtube.com/watch?v=k1tsGGz- Qw0](https://www.youtube.com/watch?v=k1tsGGz-Qw0)

And PETA and those ruling against him are jerks of the "friend"'s in the clip caliber.</comment>


All bitcoin private keys leaked - <AUTHOR> http://directory.io/ <comment><USER2> This is why it's a joke: this page is a generator of keys. Every time you load a new page, it gives you another set of possible keys.

If you look at the top of the page, when it says "Page 1 out of 904625697166532776746648320380374280103671755200316906558262375061821325312", you can get an idea that this is not that useful at all. Clever.

I bet the creator hopes that panic will ensue, and that he/she can buy some extra bitcoins at a lower price. I might buy a few now, shouldn't be a bad idea. :)

<comment><USER3> But do you think the intersection of Bitcoin investors who actually know what a private key is and people who don't get the joke is big enough for that?

<comment><USER2> No idea. These things can generate panic. The creator is probably trying to take advantage of human behavior.

<comment><USER3> Well it might just be working judging from Mt Gox right now.

</comment></comment></comment></comment><comment><USER4> This is how lazy Haskell programmers solve every problem.

</comment><comment><AUTHOR> I hope you all get the joke. :-)

Edit: I'm not the creator.

<comment><USER5> We do, but I guarantee you that some idiot reporter is writing up a story right now about how Bitcoin has been "hacked".

<comment><USER6> I remember similar stories when someone made a "Windows 7 activation cracker" around the same principle.

</comment></comment></comment><comment><USER7> I just started scraping this site at 100 pages per second. It should be complete in about 2.07896e55 times the age of the universe.

</comment><comment><USER8> and on page 904625697166532776746648320380374280103671755200316906558262375061821325312 ([http://directory.io/9046256971665327767466483203803742801036...](http://directory.io/904625697166532776746648320380374280103671755200316906558262375061821325312)) you can still click next

</comment><comment><USER9> The first address has a balance of 0.01 BTC... how would you be able to use it?

I tried importing the private key on Blockchain.info but it gives an error of "Error importing private key: TypeError: Cannot call method 'toBigInteger' of null". Coinbase import feature also gives an error.

<comment><USER10> Everybody found this address. It is a private key with the value of 0. You'll never be able to get that 0.01 BTC.

<comment><USER9> What's the technical reason why this address is unusable? Can it still receive money?

<comment><USER11> i want to know too... fyi, the second address has 4 btc...

</comment></comment></comment></comment><comment><USER12> It's kind of like fortune cookies that include winning lottery numbers. The problem is they don't tell you which lottery or which day.

<comment><USER13> Well this one does. But (to keep within your metaphor) nearly all of them are numbers from either the past or after you will die. And the chances of getting a useful one are smaller than actually playing the lottery.

</comment></comment><comment><USER14> Now only if someone could build an index of that second column to the first ...

</comment><comment><USER13> so basically there is no database, this is just a list of all possible combinations generated on the fly. not that funny.

<comment><USER15> If you could compute at infinite speed and merely needed to store all the possible key pairs in secp256k1, you'd need about 10^59 exabytes of storage.

<comment><USER16> So let's wait until Google crawl it and then make queries!

<comment><USER13> 10^59 exabytes is more than 10^53 times as much storage as there ever has been manufactured.

</comment></comment></comment></comment><comment><USER17> It's funny, because there are so many!

</comment><comment><USER18> Feature request: Search by address.

<comment><USER19> That would be a good idea. That way, everytime someones enters their key, the app can answer that it is not there, check its presence in the database, then get the money :p

It will never get the entire list anyway...

</comment></comment><comment><USER9> Clever idea.

Care to open source the generator code?</comment>


HiMom (YC S12) Helps Your Parents Keep Up With Your Life - <AUTHOR> http://techcrunch.com/2012/08/12/yc-backed-himom-helps-your-parents-keep-up-with-your-life-one-postcard-at-a-time-and-without-facebook/ <comment><USER2> Interesting. Although, I don't like it for the same reason I don't like the Pair app.

I think communication between loved ones should be more personal. I don't think these types of relationships should be encouraged.

You should be calling your mother more. You should be taking the time out of your day to send a personal email or letter if they aren't technically savvy.

I get it, it's easy. Few taps on your iPhone and a postcard is on the way to your Mom.

I just think that life is too short to subject a relationship as important as the one you have with your parents to a mobile app. Can you imagine:

"Hi Mom it's Kelsey, here's a picture of me and my new dog, Snookums!"

-This message delivered to you with no effort at all by HiMom, the mobile app for terrible sons/daughters

Just call your parents. They love you and miss you.

<comment><USER3> _I get it, it's easy. Few taps on your iPhone and a postcard is on the way to your Mom._

Exactly why it's useful.

 _I just think that life is too short to subject a relationship as important as the one you have with your parents to a mobile app._

Constant postcards will be welcome (at least by my parents), in addition to the call. Especially useful if you have young kids growing up far from grandparents.

<comment><USER4> I've been living overseas for over a year now. I video Skype with my parents every week or two on Sundays. Otherwise my parents check out pictures that my girlfriend puts on Facebook every now and then.

I have to admit I am struggling to see this app would work for me. Postcards as emails aren't that useful (I may as well just send an email with a picture attached). Otherwise physical postcards are only interesting if you buy them from the place you are visiting.

</comment></comment></comment><comment><USER5> I think this could be huge. I just don't know if it will be in its current fashion.

I just checked my email, and in the last 30 days I've sent my parents 11 emails that were just picture of attachments of things I was out and about doing.

Sure, it doesn't have a cute post card design, but they get the pictures delivered to the only medium I can efficiently get it to them (neither have any social media accounts) and I can add a quick message.

So I don't immediately see a need for an app to do just that. But maybe some people find emailing to be too much of a hassle.

However, I have to think of what this can become. I have a particularly close relationship with my parents, and we talk everyday (actually, we call twice a day...and I'm 25!). They usually know what I've done each and every day.

But a lot of my friends are equally as close with their parents, but communicate a lot less. It could be scheduling conflicts because they live 3-4 hours away, or something other restriction on their time.

But maybe there are parents out there that would love a news feed of sorts in their email about what their children or loved ones are doing.

It seems there would be an upper limit on its purpose as each generation adopts technology more and more. But I think they are on to something. I dig it!

<comment><USER6> Hey slap_shot, thanks for your comment.

You also can send an email with HiMom. Good thing is that we try to enrich the email for your parents as much as possible. We are retrieving automatically Wikipedia information of the place where the picture has been taken. Also we are detecting the location of the picture and displaying that in the email.

HiMom is not focusing purely on postcards. Our main focus is to simplify the communication with the tech-savvy generation. Postcard is one medium of it. The current version is just the beginning..

Let me know if you want to be our beta tester to always test out the newest features.

Cheers Markus

</comment></comment><comment><USER7> Is anyone else reminded of Fisheye's explanation of the Mafia philosophy in Snow Crash?

 _"It's just a thing with us. We like to go person-to-person, the old- fashioned way. Like, on my momma's birthday, I don't pick up the phone and dial 1-800-CALL-MOM. I go there in person and give her a kiss on the cheek, okay?"_

<comment><USER2> I bought Snow Crash because I heard so many good things about it. I really need to get around to reading it.

</comment></comment><comment><USER8> Wow, this is really going to change the world. YC S12 is probably the best class out of YC so far. A mobile app that allows me to send a postcard to my mom...genius!!! A billion dollar company in the making.

<comment><USER9> Can't tell if sarcasm or not. HN has made me a cynical one.

<comment><USER10> It's sarcasm. Billion dollar company or not, doesn't matter to me and most people out there. It's useful and something people will like. It's perfect for me at least to make my Mum happy from time to time so you'll see me using this!

</comment></comment></comment><comment><USER11> Hacker tested, Mom approved ("You're so sweet!").

</comment><comment><USER12> The app looks really good and worked great for me. Whether or not I would send a physical card to my mom, I don't know, but this is really nice to send occasional photos to mom. I know she appreciates and this makes it quite effortless on my part. Just as fast as email, but looks nicer.

</comment><comment><USER13> I think this app is great! I've always been the kind who's terrible about staying in touch, and it's so nice to have something that I can send out quickly without spending much time, yet still looks nice when it gets there.

</comment><comment><USER14> Flip it around. Have parents choose things like "Thinking about you. What have you been up to lately?" "Haven't seen the girls for a while - send me a photo!"

Right now, my parents look at my Twitter feed and then text me comments.

</comment><comment><USER15> I wonder--does it become less special _because_ it's sent in a medium like this? Nearly automating the process seems to take the thought out of it, and it really is the thought that counts with your parents.

</comment><comment><USER16> Besides the postcard format, how is this different from PicPlum (YC S11)?

</comment><comment><USER17> For a moment I thought Hipster [1] had changed its name.

[1] <http://www.hipster.com></comment>


Stats About Startup Success - <AUTHOR> http://onstartups.com/tabid/3339/bid/79/Six-Interesting-Stats-About-Startup-Success.aspx

<comment><USER2> "First-time entrepreneurs only have an 18% chance of succeeding. Interestingly, those have previously failed have a 20% chance of succeeding."

p1 = 0.18

p2 = 0.20

Naively, p1 || p2 = 0.344

Cumulative probability after N attempts assuming p = 0.2 for any n > 1:

1: 0.180

2: 0.344

3: 0.475

4: 0.580

5: 0.664

6: 0.731

7: 0.785

8: 0.828

This also neglects things like mixed-experience teams (i.e. the probability data in the article is obviously very high level and overly simplistic).

<comment><USER3> The analysis is interesting, and I think it fits for low values of n (and even then, only if the VCs LOVE the team), but I think you might be looking too far ahead without doing the non-numerical analysis. If you failed seven times, do you think you'll get funding and have an 83% chance of success? I think your chance of getting funding, no matter how much the VCs love you, will plummet drastically after a certain value of n, and I'm guessing it's a lot lower than seven (but I have zero data to back that up).

<comment><USER2> Yes, it's an extremely naive first-order model. It assumes a series of independent "fair coin toss" events and gives the probability of at least one success using the given values.

Really, business success is not a random event, although there are many random factors which influence it. What this is doing is taking the "success rate" (which is whatever you want to make it be) and assuming that it works as a forward-looking probability.

In reality, the growth rate is likely to be higher for many people due to learning and the relatedness of successive ventures. There are also likely to be limiting factors which scale more rapidly than experience increases the probability of success - you're not likely to ever reach 83%.

But keeping in mind that it is a generalized approximation, the conclusion of the first-order model is still good.

* Start early, there are no ideal conditions.

* Evaluate often, if you don't do anything that can fail then you are likely over-invested in the single attempt.

</comment></comment></comment><comment><USER4> "5. Better VCs Provide Better Deals: Venture capital firm experience is positively related to pre-money valuation. More experienced firms pay more for new ventures -- likely because they have higher success rates. "

Kind of tautology, no?

</comment><comment><USER5> Both the original paper (<http://papers.ssrn.com/sol3/papers.cfm?abstract_id=933932>) and the blog post are from 2006.</comment>


I just want to visit your website - <AUTHOR> http://jgthms.com/i-just-want-to-visit-your-website.html

<comment><USER2> This article doesn't seem to have any point.

"If I'm browsing your website, any sharing feature or analytics script might seem useful to you, but it won't make me visit you more often, or even less either."

Cool story, bro.

<comment><USER3> Absolutely agree. The internet is for everyone, and it's designed to serve people's needs best.

Data from analytics scripts is core to the continued evolution of user interfaces and layout, knowing what people like. People who block such scripts are free to do so, but in the end they are slowing progress. The things you enjoy on the internet today would be in a sorry state if they had been created based purely on guesswork without any solid tracking data.

Don't assume people want to track you for malicious intent. They have no clue who you really are, they just want to see how user #195684 interacted with their site so that they can make it better. They're not out to get you or steal your identity.</comment></comment>


Ask HN: Will GDPR help non-EU citizens? - <AUTHOR> Folks, there are a few gray area type of questions about GDPR that I do not understand:
Will it be helpful at all for non-EU citizens? Only if the used service is european perhaps?
What about US companies providing services to europeans? Does it really apply to them? Could I be subject to GDPR if using a service via an EU-based VPN?
Is GRPR really mandatory immediately after May 25th? I didn't see big internet companies talking about it, won't they just ignore it until someone goes to court? <comment><USER2> In fact, GDPR will require companies to provide a clear and strict personal data processing and to implement "privacy by design". So... in a general way, it will make every company more respectful for ALL their personal datas, even for non european. It wouldn't be logical for a company to have 2 different informations systems, one for european citizen and one for the rest of the world. However, some rights will require (human) work on each request, like request for explanation or right to be forgotten. So a company may decide to lower that kind of work by restricting it to european requests only

GDPR will apply to any company in the world (including US) as long as they have some kind of personal data (including email adress) of at least an european citizen. Even if it's in the backup... ;-) And yes, GDRP is really mandatory after 25th may, and fines will be real (at least for big players... small one will surely benefit some... understanding for a few more months). Google already started communicating to me (France)</comment>


Oops, Google's Knol Won't Be Killing Wikipedia After All - <AUTHOR> http://www.alleyinsider.com/2008/9/oops-google-s-knol-won-t-be-killing-wikipedia-after-all <comment><USER2> <http://ycombinator.com/newsguidelines.html>

This is just a wrapper around the actual slate piece.

<comment><USER3> <http://news.ycombinator.com/item?id=312025>

</comment></comment><comment><USER4> And just try doing a search for "citation needed" to get an idea of the number of Knol pages that are copy/paste from Wikipedia without even trying.

<comment><USER5> someone from Wikipedia should start sending license violation notifications...

</comment></comment><comment><USER6> Just one word about Knol:

nepotism.

</comment><comment><USER7> Because Slate says so.</comment>


Twitter Has Become a Park Filled with Bats and Perverts - <AUTHOR> http://nymag.com/following/2016/03/julieanne-smolinski-quitting-twitter.html <comment><USER2> _" Technology has essentially ziplined past all the difficult social contract and legal infrastructure and face-to-face accountability that led us to negotiate limits on day-to-day expression."_

A diverse twitter workforce might have mitigate this earlier.</comment>


Sony sells off VAIO PC business amid prolonged industry slump - <AUTHOR> http://arstechnica.com/business/2014/02/sony-sells-off-vaio-pc-business-amid-prolonged-industry-slump/ <comment><USER2> Few PC makers seemed to be consistently as willing to try wild new ideas with their devices.

Whether it was because of Apple reasons ("we are too focused on a small number of sure winners...oh and a G4 cube") or HP/Dell reasons ("we are really into playing it safe"), there were just few companies that could do things like Sony could.

I think it takes a certain amount (if not an outright surplus) of engineering hands and manufacturing capacity to be able to do experiments like Sony's VAIO division did. Think of the truly bizarre and occasionally beautiful devices coming out of Nokia in their mid-2000s peak, or IBM in the era of their "butterfly" keyboard..

If you look at those key ingredients for what it takes to "get weird with it" (those surpluses of capability and capacity), I'd say the next ones to get weird with it would be Samsung (need I remind you Samsung has in recent memory tried a Galaxy with a curved screen, a Galaxy with a mini projector...), LG, and a whoooole bunch of Chinese companies we probably haven't even heard of yet.

But today, we take Sony off that list.

<comment><USER3> Except for HP--they 'don't play it safe'; They epitomize the two year laptop, and even two years is a stretch. At this point, I want longevity over something gimmicky. I think I'll have to go back to 2003 in Stewie's time machine and buy a toshiba P25-S607(still a functional computer years later-- with three cooling fans). As to Sony--I liked there products, but found they seemed to breakdown too soon too? I really think consumers want an honest computer company--get rid of the CEO's who don't know a soldering gun, from a curling gun(HP again); get rid of the MBA's and give us stuff that is designed to last. Apple was moving in the right direction, but they should put Linux on every model they ship. Steve would understand the importance of that last sentence, but I doubt the figure head would get it? While I'm on it--Apple if you are listening--this is the last dollar you get from me. Mavericks is terrible(you should have told your customers abut certain software just won't work), and I heard you new MBP is hard to work on. Most Computer dudes are poor. We don't make the big money you seem to think we do? If I was in charge of the new Sony spinoff, I would design a computer that us built to last, and is easy to work on. Build enough mother boards and store them in a mini storage until your customers need them. Be different, and stress longevity over incremental speed. Exploit the fact that most men don't like throwing things away--especially things we once loved.

<comment><USER4> 100% unrelated but I noticed you put "we don't make the big money you seem to think we do?" with a question mark at the end. It's not really a question, now is it? I've noticed this typing behavior a lot online lately and I am not sure if I missed a crucial lesson in English or if it's a new-age kind of thing, or what. Not trying to be a prick, it just stuck out. I agree with your point on HP laptops in more ways than I can count.

</comment></comment></comment><comment><USER5> They should have hired a 12 year old to point out the obvious flaws in their products, which are typically quite good but with arbitrary gaping holes.

I hope the VAIO machines stay around, under the rule of someone that knows how to transform their high-end products into high-end products that people really want.

<comment><USER6> It's not that they don't know about the flaws; it's usually bureaucracy and compromises that lead to obviously broken features in products. That will take more than a 12 year old to fix.

<comment><USER5> Ah, I suspect you're right. How is this solvable? Management engineering??

<comment><USER7> In light of the "management engineering" slant, the way people organizations seem to get made reminds me of the old meme that buildings in the far past were 'designed' only to the extent that they didn't follow the exact design of some other building which had fallen down. And in that vein, the answers by zaidf and sirkneeland, are like: buildings above some size keep falling down, so add a big central column in the middle to support the weight. Make all of the building depend on that central column.

But buildings evolved to have arches and open domes, no central column needed. Why can't the same be done with people-based control/oversight/management systems? Building a beautiful structure dependent on all/many the members around, not just a central support/dictator.

<comment><USER6> Just because you have one person who makes the final call does not mean he isn't reliant on other members of his team.

The way Gates describes his process resonates with me:

 _In terms of deciding what programs are going to do, a fairly large group makes suggestions. Then there's a filtering process. Eventually I'll decide which of the ideas makes sense, and I'll make sure we have champions who are personally involved in making that product succeed._

[http://programmersatwork.wordpress.com/bill- gates-1986/](http://programmersatwork.wordpress.com/bill-gates-1986/)

</comment></comment></comment></comment></comment><comment><USER8> This is pretty sad to me. Sony has a lot of great ideas and their style for VAIO products I can't think of any other manufacturer than Apple with anything approaching it.

Their tablet->laptop convertible machines especially are really good pieces of tech. I know the one complaint about the flip13 is that the battery life isn't super great, but the concept and design are truly cool. I've also worked with/used the Duo13 and while the flip function is a bit weird, the whole kit is really great.

Oh well, hopefully the new owners do something great (I know Sony is not without issue).

</comment><comment><AUTHOR> Amidst the stories about Steve Jobs trying to get Sony to run MacOS on the Vaio we now get this note that Sony is exiting the PC business. Its too bad, I've owned a number of Vaio laptops over the years and have really liked most of them.

</comment><comment><USER9> Wow. It's kind of sad how Sony seems to be just wasting away. I don't know what PS4 sales numbers are like relative to XBox or even the older systems, but it just feels like if XBox hadn't so royally screwed up with their nonsense about not being able to lend out games, I feel like PS4 would be grasping for air right about now.

<comment><USER10> depends where in the world you are i guess (regarding the consoles). also in the long run people won't remember about the whole lending fiasco.

now to me sony laptops are a bit ovepriced. my last two PC notebooks were from Asus and I am happy with them. They were at least 25% cheaper than similar sony models.

<comment><USER11> Its a case of too late.

Sony Fit E15 was a good machine at a good price. But by the time Sony began making these lower cost machines, they already solidified the "too expensive" mindset.

People probably didn't even realize that Sony had a ~$500 line of laptops (which, when upgraded to "reasonable" specs, would be closer to $750 or $800 of course... but that is a reasonably priced laptop)

</comment></comment></comment><comment><USER12> Hey all you guys who make PC's, here's an idea on how to make some money. Build a good laptop, let me upgrade it, and support it.

Apple right now makes some of the best hardware you can buy, and they are pretty profitable doing it. The problem is I can't upgrade it. I would spend a fair bit of money for a good quality (materials, and parts) laptop. No one seems to be doing that any more. Most laptops have these huge clunky plastic cases, with cheap parts, and terrible support.

<comment><USER13> > Build a good laptop, let me upgrade it, and support it.

How do you define "upgrade it."

Lenovo sells the Yoga ultrabook, it's thin, affordable $800-$1,000, has a great (in my opinion) build quality using soft touch plastic, includes a Haswell processor, and you can manually upgrade the SSD and RAM. It has a cheap wifi chip (no 5ghz? really?), but otherwise fits the bill you described.

Is the storage and ram enough? Or do you want more than that. Because I imagine it gets really tricky to build a thin, light, sturdy and reliable laptop that still lets you upgrade every single part.

<comment><USER14> Having DRAM and flash that aren't soldered to the board is indeed an important aspect to "upgradable". I'd point out, though, that that "cheap wifi chip" would be less of a problem if it could be, y'know, replaced. There is even a connector standard (M.2, which is a combo mini-pcie and usb thing) for these things that doesn't suck. Except it never works because the vendors whitelist their components in the firmware.

</comment></comment></comment><comment><USER15> I'm surprised people are surprised. Sony has no server business. They are in the thankless margin-less laptop/desktop business. That's a problem with no solution.

</comment><comment><USER16> Before I went off to Mac land I only used vaios from early 2000's to 2010. They were all great computers but I am not sure they kept innovating it seemed like minor updates to most models.

In my city they also had Vaio stores just like Apple and most of their products were much better than Dell and Hp at that time. I enjoyed checking them out from time to time.</comment>


Jeff Bezos Plan for News: The Washington Post Becomes an Amazon Product - <AUTHOR> http://www.businessweek.com/articles/2014-10-06/jeff-bezos-plan-for-news-washington-post-becomes-an-amazon-product <comment><USER2> So, a paid app? Thats a pretty lackluster plan. If you could save a newspaper by creating a paid app with the exact same content then the newspaper industry wouldn't be in the same hole it is already in.</comment>


Building real-time feed updates for NewsBlur with Redis and WebSockets - <AUTHOR> http://blog.newsblur.com/post/20371256202/building-real-time-feed-updates-for-newsblur <comment><USER2> Curious: Were real-time updates something that your customers had high demand for?

I'm asking because we thought about doing real-time updates for our product but decided against it because it made topic modelling (clustering based on topics) much harder for us.

Also, what is your experience with publishers being consistent about pinging the hub with updates? Do you still need to poll feeds periodically to make sure you didn't miss something?

<comment><AUTHOR> I wouldn't go so far as to say there was a high demand for real-time. But some users asked for it by name, and generally, increasing speed (lowering latency) correlates strongly with increased usage. If I can make page loads faster, and feed fetch times lesser, then my users will use NewsBlur more. It's also why I chart the average load time on every user's dashboard.

In this case, real-time means NewsBlur is acting as the subscriber, and the publisher pushes out messages to NewsBlur. This way, instead of fetching every 3 minutes for what may only be updated stories or even no changes at all (not every feed behaves nicely by offering a 304 Not Modified), I only have to fetch the feed when it confirms that there is something new.

About 20% of all feeds have a PuSH (PubSubHubbub) option. But I now have more than 33% less work to do. That's another huge boost, since my feed fetchers have less work to do against the database.

I haven't been running with real-time with granular enough metrics to be able to tell if the PuSH-enabled feeds are pinging correctly or not. And part of the reason of that lapse on my part is that I still fetch the feeds regularly, just 1/20th as often. So instead of every 3 minutes, it's every hour or so. Over an order of magnitude less work, and I don't have to deal with feeds not doing what they should be doing.

Naturally, in the aggregate I can tell it's working well, since a number of new stories are coming in through PuSH.

</comment></comment><comment><USER3> I know realtime technology is cool and all, but I don't think realtime is what you should be doing. People are increasingly accessing RSS readers through mobile devices such as phones and tablets, and that's where opportunity is at. And this audience doesn't require realtime updates. If you just build what you think is the best experience for desktop consumption, you're fighting against google reader. not an efficient battle. My two cents.

<comment><USER4> > And this audience doesn't require realtime updates.

Why not? These devices are increasingly used for reading, and they're always connected. Sounds like a perfect environment for real-time updates.

</comment></comment><comment><USER5> Are you using Juggernaut for the node.js/real-time piece?

<comment><AUTHOR> Nope, just Express.js, redis, and socket.io: <http://github.com/samuelclay/NewsBlur/tree/master/node></comment></comment>


Demystifying PR for Startups. Hackers and Founders Live Stream (7pm EST) - <AUTHOR> http://www.livestream.com/hackersandfounders

<comment><AUTHOR> I've been looking forward to this for a couple of months.

Dave Ambrose, the Hackers and Founders NYC organizer has a background in PR and Marketing, and he wanted to have an event trying to help startups manage their own PR better.

They are streaming it live so the other Hackers and Founders chapters around the country/globe can enjoy, and everybody is invited.

</comment><comment><USER2> There's some back and forth on our Plancast link for the NYC event tonight and I'm responding to each.

Just a heads up for anyone coming to Dogpatch. We're limited to 100 attendees so try to get there as early as possible. I'll be over at 5:30 PM to help set up.

Next time we do this and in order to keep seats/spots numbers, I'm going to move back to our usual service of Anyvite. We decided to stay with Plancast since someone already created a plan there and there was enough interest that I decided to leave the RSVP there. Sorry about the confusion for folks in NYC - been trying my best to manage this here on the ground.

<comment><USER3> Dave, thanks for your awesome work in pulling this together. I can not attend due to a pre-committed appointment, will watch the video.

</comment></comment><comment><USER4> Question: I will this be available later as a video? (For those of us who may not be able to catch it live.)

<comment><USER2> Yup. I'm going to record it.</comment></comment>


Google Private Join and Compute: Retro Cryptography to Keep Data Sets Private - <AUTHOR> https://github.com/google/private-join-and-compute <comment><AUTHOR> Google blog post -> [https://security.googleblog.com/2019/06/helping- organization...](https://security.googleblog.com/2019/06/helping- organizations-do-more-without-collecting-more-data.html)

Many important research, business, and social questions can be answered by combining data sets from independent parties where each party holds their own information about a set of shared identifiers (e.g. email addresses), some of which are common. But when you're working with sensitive data, how can one party gain aggregated insights about the other party's data without either of them learning any information about individuals in the datasets? That's the exact challenge that Private Join and Compute helps solve.

Using this cryptographic protocol, two parties can encrypt their identifiers and associated data, and then join them. They can then do certain types of calculations on the overlapping set of data to draw useful information from both datasets in aggregate. All inputs (identifiers and their associated data) remain fully encrypted and unreadable throughout the process. Neither party ever reveals their raw data, but they can still answer the questions at hand using the output of the computation. This end result is the only thing that's decrypted and shared in the form of aggregated statistics. For example, this could be a count, sum, or average of the data in both sets.</comment>


How Google sets goals and measures success - <AUTHOR> http://dondodge.typepad.com/the_next_big_thing/2010/01/how-google-sets-goals-and-measures-success.html

<comment><USER2> Sounds just the targets at tesco.com, vitually impossible to hit. For some it is unmotivating to keep missing targets, but I like a challenge. If targets are easy I don't think you get the best out of The best people.

</comment><comment><AUTHOR> "My manager explained that we needed to set stretch goals that seemed impossible to fully achieve."

I wish he gave some specific examples of "impossible to fully achieve" goals that were achieved.</comment>


Should the world worry about America's corporate-debt mountain? - <AUTHOR> https://www.economist.com/briefing/2019/03/14/should-the-world-worry-about-americas-corporate-debt-mountain <comment><USER4> Corporate debt is fundamentally just a piece of capital structure and tax arbitrage. It's not really something that is that concerning.

Fundamentally, the overall value of a company is independent of how it is financed. You can sell some standard bonds, issue some of those senior to other ones, issue common and/or preferred stock, convertible bonds, whatever. End of the day there's assets and expected cash flows, and all the various tranches add up to the whole thing.

So, why do companies like debt instead of equity? It has advantageous treatment in the tax code. If your company is financed entirely by equity and it earns $100M in profits, you get taxed on the full $100M. If you sell bonds that pay out $20M in interest each year, your taxable profits are now $80M instead of $100M.

The people buying these corporate bonds are all _fully_ aware that they behave like equity. Capital structure arbitrage firms will actually hedge their long or short corporate bond positions by taking offsetting equity positions - <USER2> the bond, short the stock, and collect the excess yield. So it's not really any sort of moral thing with having lots of corporate debt out there, mostly just an anomaly in how claims on corporate assets are divvied up in order to end up paying less in taxes.

<comment><USER5> But if you have issued a lot of debt, does that not expose you to risk when the interest rate changes?

Additionally, don't you think it's true that companies are issuing debt to buy back their own stock, which they then intentionally overpay for in order to drive up the stock price?

<comment><USER4> Interest rate risk isn't a huge deal for issuers when rates are this low - <USER3> much room for rates to fall. And even if it did become significant, the futures market has very effective tools for hedging various kinds of interest rate risk.

>Additionally, don't you think it's true that companies are issuing debt to buy back their own stock, which they then intentionally overpay for in order to drive up the stock price?

Stock buybacks are replacing dividends for tax reasons - they both make the overall value of publicly traded shares lower by giving cash to shareholders. Dividends trigger income tax by replacing share price with cash in hand, while buybacks reduce the publicly traded float at the same price and only triggers capital gains for the shareholders who wish to sell into the buyback.

<comment><USER5> I was more referring to the risk of interest rates going up- would that not mean that the debt has to be either repaid or rolled over into a new loan at a higher rate, when it matures? What if the fed raises rates like it did during the volker shock- if you owe a lot of cash and the rates go that high, does your company not become insolvent?

<comment><USER4> If you've issued long-term bonds and rates go up, you can buy back your own bonds below par and earn a profit (depending on rate movements etc). And when it matures, you can likely issue more stock if the cash flow situation of your company hasn't changed. The only route for insolvency is if you've used debt issuance to pull more cash out of the company than the actual equity slice _should_ have been worth.

<comment><USER5> That makes sense, but my guess is unfortunately that that is exactly what companies are doing, mostly because the ceo gets a sizable bonus when the stock price goes up.

</comment></comment></comment></comment></comment></comment><comment><USER6> Probably. The only thing that's driven the economy since 2009 is the suppression of wages, technology-based productivity boosts, and the hindsight to know that the US Government is ready and willing to bail out any sufficiently large industry.

<comment><USER7> How does wage suppression drive the economy? If less people have money to spend wouldn't there be less economic activity?

<comment><USER6> When the cost of labor stays the same while productivity increases due to technological advances (e.g. moving from an in-house server farm to the cloud), profit increases.

<comment><USER8> Not necessarily. I know it is slightly pedantic to point this out, but technical advances does not imply "free technical advances". e.g. you may increase productivity without increases in wages but not increase profits if the technical progress is driven by paid improvements in technology (which tends to me a multiplier on capital).

So, for example, if you get a new versions of excel, which improves your productivity $100/year, but excel costs $100 this year to upgrade, you haven't gained anything in year 1. That will be a multiplier, but, if the upgrades cost a lot up front (e.g changing technology stack causes initial decrease in productivity and obsolescence of some internal IP + change costs, training, etc) and the productivity increase will be small then it may not be obvious that there is an economic benefit for quite some time.

Of course, a lot of companies think this way and failure to just ditch a lot of old tech years ago, ends up massively holding back productivity relative to peers that did make the upgrades. As a result the company sees low per capita productivity and decides not to raise wages.

Note: this is _theory_ I do not have actual academic studies in practice that can demonstrate this explicitly in a controlled environment, but anecdotal experience certainly makes me suspect that this is what is going on.

edit: grammar

<comment><USER6> > So, for example, if you get a new versions of excel, which improves your > productivity $100/year, but excel costs $100 this year to upgrade, you > haven't gained anything in year 1.

Yes, but this is a tautology (it will always be true that making a capital expenditure of $x/employee/year to augment surplus value $x/employee/year will break even). Productivity itself is scalar (units produced/time), so to arrive at a dollar amount of $100 additional revenue generated per employee would suggest an incredibly small increase in units produced over 1 year.</comment></comment></comment></comment></comment>