Trying Rust for web services - <AUTHOR> https://blog.wearewizards.io/trying-rust-for-web-services <comment><USER2> I've historically been very skeptical of Rust in the web application tier, but I've been playing around with it lately. It's been nicer than I've expected.

One thing this blog post points out is Rust ecosystem docs. I've been trying to find a good way to evaluate this: [https://users.rust-lang.org/t/lets-talk- about-ecosystem-docu...](https://users.rust-lang.org/t/lets-talk-about- ecosystem-documentation/2791)

Other thoughts:

Crates.io, our package server, uses Rust + Ember. One thing that is really interesting about Rust in this space is memory usage: last I heard, crates.io uses a flat ~30 MB of RAM, resident. I'm used to Rails where that is... very different.

On that note, I think "Rust serving JSON + Javascript for the frontend" is a really interesting stack. I've been trying to find the time (and hopefully roping another person or two in) to build a [http://jsonapi.org/](http://jsonapi.org/) library for this purpose. I have a project where I've been using it, but I went down the "why use a library, I can generate the JSON by hand" and it's.... ugly. Serde is so much nicer.

As always with a young ecosystem, we need more libraries. For everything. It's gotten a lot better, and much of the basics are there, but sometimes, you're still going to have to write things yourself, which slows things down.

mio is gaining preliminary Windows support, and once it does, hyper will roll it in, which should significantly improve performance in many web contexts, as well.

I largely come from Ruby, where Rails was such a leap forward that people learned Ruby just to use it. I expect that if you know Rust, writing application-tier Rust will be fine, but I'm not sure it will ever see the same kind of pattern.

<comment><USER3> Is it possible to do https serving in any of the web frameworks? Last I checked (months ago) it did not seem possible. I guess a crypto and tls library would be essential to this. I think https is pretty important feature to have given http2 and whats coming down the pipe.

<comment><USER2> As far as I know, hyper has HTTPS support, yes. We use an openssl wrapper in Cargo all the time.

<comment><USER3> Can you point me to an example? I tried looking at the cargo github repo and searched for tls but had no luck. Also searched for 443 and found it in source.rs but it was in a url canonicalization function when calling github.

I am looking for example code where I can pass in the server certificate prior to listening. Something similar in functionality to Go's http.ListenAndServeTLS(":443", "cert.pem", "key.pem", nil)

Edit: typo

<comment><USER2> Cargo is a client, not a server, so that's probably where your problem finding things lies. I don't have an example handy, to be honest. Historically speaking, when deploying Rails, I would always use Nginx in front of my application server to terminate SSL anyway...

Also, the Iron docs that another commenter pointed you at looks vaguely like that call. I'm not familiar with Go's API.

</comment></comment></comment></comment></comment><comment><USER4> I have fully switched over to Rust to do my web backend's. I use Nickel.rs and it has worked great. The code is very succinct and fast. The only downside I have found to this is that there is no "Hot Reload" which I had with Flask(Python) and Play(Scala).

As the ecosystem grows I only expect it to get better.

<comment><USER5> What was behind your decision to pick Rust? My understanding is that Rust is meant as replacement for C++ in places where C++ performance is needed (browsers, systems programming (maybe)), etc. A web server does not fall into that category, so why did you pick it?

<comment><USER6> "A web server does not fall into that category, so why did you pick it?"

That's too categorical a statement. It depends on a lot of things. Sure, there's a place in the world for PHP pages that take two or three full seconds to render, but it doesn't matter because they're doing something useful and don't get hit a thousand times per second. There's also a place for things that render in under a millisecond because they're getting hit at an incredible rate, and if they also have some sort of interdependencies then Rust can make a lot of sense.

Plus as I've said before, the whole "you're stuck in IO anyhow so who cares how fast the render code runs" dogma has sometimes gone too far. (I know you didn't say anything about that, but I'm guessing based on experience it's what lies behind your point.) My experience in switching from slow languages to fast languages, even doing the same IO, is that you _do_ tend to see real performance gains unless your page was absolutely trivial. Slow languages really are slow in practice.

<comment><USER5> > That's too categorical a statement. It depends on a lot of things.

I didn't mean it to be. Of course there are extreme cases where GC pauses are unacceptable on a web server, but those are relatively rare. Even Google mostly uses Java (although they are heavy C++ users, is it for their web servers?).

There are always extreme cases, which is why I asked the question.

> My experience in switching from slow languages to fast languages, even doing > the same IO, is that you do tend to see real performance gains unless your > page was absolutely trivial. Slow languages really are slow in practice.

Slow vs. fast is not black and white. Is Go slow? Is Lua slow? I Java (on a warmed up JVM) slow?

We're talking about GC vs. non-GC languages here. Do you really see a difference in performance gains?

<comment><USER7> >Even Google mostly uses Java

I'm not so sure about that. The core services (e.g. Search, Maps, Earth, Big table, Map reduce) seem to be C++. Ads is possibly an exception.

<comment><USER5> We're talking specifically about the web application servers here. I wouldn't be surprised that something like Search is C++, it's one of the most visited pages in the world. But I haven't heard specifically that it is.

I don't think it's any secret that Java is huge Java users. If not web servers, then for what?

<comment><USER7> 50% C++, 25% Java

[http://qr.ae/RP7wXh](http://qr.ae/RP7wXh)

At Google's scale, the performance difference between Java and C++ can means millions of dollars in electricity alone.

<comment><USER5> That's the amount of code in their repo which covers a lot more than web application servers.

This is an unnecessary tangent though, as I've said throughout this discussions, there's extreme cases and no doubt Google is likely one of them. But we're talking about common use case, to which I still haven't seen any evidences that GC pauses are a deliberating factor.

<comment><USER8> You may already be familiar with this and are specifically concerned with GC. However, for what it's worth, it's not just the absence of garbage collection that makes languages like Rust and C faster. A huge piece of their performance is the level of control that they offer over types' layout in memory and where things get stored. Rust's preference for stack allocations and the absence of a mandatory per-Object size overhead (a la Java) really allow it to shine.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER9> Isn't async io pretty much mandatory to compete with the top platforms/frameworks now? I'm certain rust can compete with C++ on raw compute speed, but io is still going to bog it down. Are there any rust frameworks that are using mio yet?

<comment><USER2> The biggest HTTP library, hyper, has a branch, but will not merge it without mio gaining Windows support. Said support is actively being worked on.

<comment><USER10> (NB. mio has windows support in master, but it seems that it hasn't been published to crates.io yet.)

</comment></comment></comment><comment><USER11> > the server is currently quite slow, only handling around 6.5k req/s for the > GET handler, removing the database part makes it shoot up to 70k req/s so > something must be going wrong somewhere around postgres

Dynamic typed language frameworks are also around 70k requests per second[1], something must be going wrong outside postgres too.

[1] [https://www.techempower.com/benchmarks/#section=data-r10&hw=...](https://www.techempower.com/benchmarks/#section=data-r10&hw=peak&test=json&l=hds)

</comment><comment><USER12> I love this type of exploration and discovery. Sometimes it's the best way to find a diamond in the rough. Who knows? Maybe Rust is the best language for web services, it just needs a little more exploring. Any feedback in terms of RDMS that you can use today or NoSQL? How about reddis? Milliseconds and memory matter when you scale.

<comment><USER13> Steven Fackler has a fabulous Postgres API at [https://crates.io/crates/postgres](https://crates.io/crates/postgres) , MongoDB has an official (though experimental) driver at [https://www.mongodb.com/blog/post/the-new-mongodb-rust- drive...](https://www.mongodb.com/blog/post/the-new-mongodb-rust-driver) , and Armin Ronacher has Redis bindings at [https://crates.io/crates/redis](https://crates.io/crates/redis) (which I can't comment on the quality of, but I assume they're great because Armin (the author of Flask in Python) is a boss at API design).

EDIT: Agh! Armin isn't the author of Requests. :) I'm mad at myself because I even went to the Requests home page to attempt to verify that before posting this comment, and mistook his name under "Testimonials" as an indication of authorship. :P Sorry Kenneth!

<comment><USER14> Armin isn't the author of requests; that's Kenneth Reitz.

</comment></comment></comment><comment><USER15> I expect that Rust will actually be really good for the sort of things that Go is currently being used for on the web – i.e. services that don't have user interfaces.

The performance is better and I reckon it's much nicer to write. Unfortunately, the ecosystem isn't there yet.

<comment><USER16> > The performance is better and I reckon it's much nicer to write. > Unfortunately, the ecosystem isn't there yet.

In my preliminary tinkerings, I'm a bit faster writing Go than Rust. I'm not super comfortable with either language. Rust's compiler is a lot more picky, and there's a learning curve to understand how ownership works. Go is a comparatively simple language (which can be a positive or a negative depending on your ideals and usage cases).

I think Go will probably always be "faster" to write, but Rust will keep you from making certain mistakes that you _may_ have sunk debugging time into later. Hard to say where the time break-even is. I am keeping a close eye on both camps so that I'm equipped to make the call as soon as some of our components at work need something faster than Python.

<comment><USER17> I think one advantage for me that rust has in this area is that you can very easily write core/computational stuff in rust and use it from your current python codebase, and then if/when you need to switch the entire codebase away from python, you've already got the libs done.

</comment></comment></comment><comment><USER18> If the main goal is static typing, it seems like using a static compile-to-JS language may be better because you can use the whole Node ecosystem. A few choices for static typing (the first two are JS supersets, the second two are just different languages):

* Flow from Facebook

* TypeScript

* Elm

* PureScript

<comment><AUTHOR> From my experience (used Typescript for a few projects for frontend and tried Flow but ran into bugs/missing things) both TS and Flow type system are easy to fool and in the end you are still writing javascript.

I've never heard of Elm or PureScript being used for backends, users would prefer Haskell I presume. With elm it would require using ports for almost everything, I haven't used PureScript so I can't comment on that.

And as far as ecosystems go, I would prefer using the Python one rather than the Node one.

<comment><USER19> I just decided to use TypeScript for a new REST API I'm writing. I'd have liked to use Rust instead, but I felt it was still too early (and can't afford the productivity hits of using a new-ish ecosystem).

So far, TypeScript's type system isn't perfect, but it is strict enough to help me catch errors before runtime. Also, there's the (huge) added benefit of making code more readable and self-documenting.

I think I've only had one instance where I violated a type at runtime, but keeping the type system in mind as you're writing your code, you know exactly where those things can or can't happen.

I am really enjoying using Visual Studio's excellent IntelliSense and debugging features, which are on-par with any other web language I've used. Generally speaking, the typing makes hints and autocompletion _far_ better.

Overall, I'd give the whole experience a 7 out of 10. I don't really know of a more productive way to write asynchronous code at the moment.

</comment></comment></comment><comment><USER20> Are there any good GUI tools for debugging Rust? Python + PyCharm is amazing, except now django.setup() takes so long to run in the debugger, I've switched to print statements.

<comment><USER2> Any visual tool on top of GDB should work. Microsoft's recent open source efforts mean that Visual Studio debugging is coming along.</comment></comment>


This could be the best-looking Android Wear smartwatch yet - <AUTHOR> http://www.theverge.com/2015/2/28/8126821/huawei-watch-android-wear-leaked-revealed

<comment><USER2> This is pretty much what I would have expected the Apple watch to look like. The little details of the Apple watch make it look more polished than something like a Gear Live but that rounded square with big bezel just ruins the design for me.</comment>


Microsoft says it's no longer planning VR support on Xbox - <AUTHOR> https://www.theverge.com/2018/6/20/17485852/microsoft-xbox-one-no-vr-headset-support-windows-mixed-reality-e3-2018 <comment><USER2> This is how MS operates... they're kinda like spoiled rich toddlers that want the same toys as their friends, but get bored quickly and throw them away after a few minutes.

They've spread themselves so thin in all areas they don't know what to concentrate on and don't have the discipline and long term commitment to their new ventures.

IMHO, VR/AR is the future of how humans will interface with their computers. Sure, it's still maybe 10 yrs away from really taking hold, but it will surely happen and MS will - as always - be a follower and not a leader.</comment>


Rapatronic Camera - <AUTHOR> https://en.wikipedia.org/wiki/Rapatronic_camera <comment><USER2> Is this still state of the art for ultra-fast exposures, or is there newer better technology?

<comment><USER3> Not the state of the art, but I'd be surprised if it isn't still used in some cases where you need lots of dark filters anyway. [https://web.media.mit.edu/~raskar/trillionfps/](https://web.media.mit.edu/~raskar/trillionfps/) I think has info about the state of the art for "shutters".

</comment></comment><comment><USER4> Just curious does anyone know why this type of shutter isn't used on modern digital cameras like DSLRs or mirrorless cameras?

<comment><USER5> A back of envelope exposure calculation using the Sunny 16 heuristic [1] and assuming that high shutter speed is the rationale for using a Kerr cell shutter [2]

Full sun bright for a "typical" scene. That's ISO 100, f16, and 1/125 seconds for "typical" exposure [3]. To make it easy, assume an f1 lens (about as fast as you can buy and assume t-stop equals f-stop and ignoring issues with acceptable depth of field). An f1 lens is 8 stops faster than f16, so it requires 1/2000 of a second exposure at ISO 100. The Raptronic shutter was 1/1,000,000 second (1 micro-second). That's nine stops faster. We're out of lens aperture so Sunny 16 says we need 9 stops of ISO. That gives ISO 102,000.

ISO 102,000 is available on consumer grade digital cameras such as the Sony A7S, the Pentax K1 and KP, etc. The Pentax KP goes to ISO 800K (for some definition of 'goes') so you could theoretically shoot at f2.8 in full sun. Theoretical if you can live with the noise and if there are not other effects from very short shutter speeds (the equivalent of solarization from short shutter speeds on analog film) [4] [5]

Most people want the ability to shoot in less than full sunlight. Most people don't want to live with a high noise baseline. Most people want the ability to achieve moderate depth of field. Most cameras are designed for a meaningful segment of most people.

So Kerr shutter digital camera is viable. It needn't be mirrorless. In a typical single lens reflex, the mirror already swings up out of the way before the shutter fires. It is also possible to mount the shutter in the lens of a single lens reflex camera. That's typical with Hasselblad, Mamiya, and some other SLR medium format cameras.

[1]: [https://en.wikipedia.org/wiki/Sunny_16](https://en.wikipedia.org/wiki/Sunny_16)

[2]: [https://en.wikipedia.org/wiki/Kerr_cell_shutter](https://en.wikipedia.org/wiki/Kerr_cell_shutter)

[3]: e.g. snapshot conditions not Adams' Zone system or similar.

[4]: Just theorizing about the _possiblity_ of equivalent effects. I don't know.

[5]: It would be interesting to know about the film stocks which allowed the Rapatronic to avoid solarization.

<comment><USER6> I'm not sure you're correct about solarisation. The reversal of tone found in solarisation is due to overexposure, see [https://en.wikipedia.org/wiki/Solarization_(photography)](https://en.wikipedia.org/wiki/Solarization_\(photography\))

Solarisation would be a likely outcome of a too slow shutter when photographing the nuclear explosion on typical film stocks without sufficient filtering. It was at least as important to achieve sub-millisecond shutter speed as it was to properly expose the film.

One thing that does typically affect film, either with too short or too long exposures is reciprocity failure [https://en.wikipedia.org/wiki/Reciprocity_(photography)#Reci...](https://en.wikipedia.org/wiki/Reciprocity_\(photography\)#Reciprocity_failure) so perhaps that's what you're thinking of. It's hard to know how relevant that is to this discussion. I'm not sure it was a consideration given how energetic a nuclear explosion is, and reciprocity failure is found when there are not enough photons to convert the silver halides into a latent image.

I think you're on the right track with Sunny 16, but why not use this method to take photos of the sun itself? I've seen 16 stops recommended as the minimum for solar filtering, so that puts it in the range of standard ISO and f-stops, but without filtering, a high shutter speed like with the Kerr cell is possible.

<comment><USER5> I agree about solarization and reciprocity failure. My bad. too late to edit.

For pictures of the sun, the short shutter speed is an alternative to filters, but filters are inexpensive. I bought a pair for less than $20 to take pictures during the recent solar eclipse in the US.

</comment></comment></comment></comment><comment><USER7> Imagine the fps if it took videos

<comment><USER8> I use one of these [1] for work. The software which comes with it asks you to specify an fps when setting up an exposure. Typing in 66 Mfps always feels a bit dumb!

[1] - invisiblevision.com/products/ultra-high-speed-framing/</comment></comment>


Overcomplexifying, Underdelivering - <AUTHOR> http://spectrum.ieee.org/static/overcomplexifying-underdelivering <comment><USER2> The title reminded me of my favorite Rich Hickey talk:

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

A lot of problems in software arise from choosing the easy route (i.e. gem install hairball), with no regards for the complexity it could bring into your project. Do this enough times and your project could easily end up like one of the projects described here: a massive mess of complexity that's excruciatingly difficult and risky to change and improve.

</comment><comment><USER3> Overcomplecting*

Some make serious money out of scope creep in IT projects. Sometimes I think that this must be how the major consultancies are sustaining themselves.

Someone wrote that the /average/ IT project ran 10x over budget. This would be completely unacceptable in any domain but IT.

<comment><USER4> I worked at a major consultancy and this is definitely true. The major parties in a large enterprise IT project are (in shit-rolls-downhill order): 1: The enterprise itself 2: Strategic advisors (consultancy) 3: Integrators (often the same company as #2, or a competitor) 4: Software vendors (note the plural) 5: Third-party QA

All but #1 have a structural incentive to make projects bigger the same way a mechanic has a structural incentive to "find new problems." The client always has final say, but people underestimate how hard it is to keep saying "no" to multiple reputable firms all warning you against going too small.

That said, this kind of swindling is far from ubiquitous. There's a philosophy that blindly upping scope is shortsighted, and you do better in the long run by actually representing your client's best interest. Where I worked, I found it pretty easy to surround myself with people who thought this way.

<comment><USER5> Don't forget that many enterprises end up replacing their own staff completely with people on the consultancy payroll. Apparently it can make the company look better on wall street's books? So the end result is that 1 and 2 become the same people. ISPs are rife with this.

</comment></comment></comment><comment><USER6> > One solution is to try to make more realistic initial estimates.

But more realistic initial estimates won't win the contract for your company.

I don't know about the legal situation in the US, but in the EU, the lowest bidder gets the contract. So everybody has the best incentives of making a (sometimes even ridiculously low) initial estimate, and then find reasons to charge more.

And such reasons are always to be found, since requirements won't remain stable over the course of a multi-year projects. They never, ever do. And any change can be sold as an expensive scope creep that costs a few million USD.

</comment><comment><USER7> To me this is another attempt to show how expanding the scope of the system will affect it's failure rate. It is known that the bigger the system, the higher the chance of failure to deliver it. What is interesting is that this article brings another fresh look on scenarios where such rule happens: replacing multiple legacy systems with new and supposingly better one.

</comment><comment><USER8> It makes sense to survey and try to think of ways to consolidate common functionality and data, but after a certain amount of that you need tackle modernization in small chunks, even though you will need a good way for systems to talk. And the business deal needs to be structured in small chunks too.

If you try to make a giant deal up front that is supposed to encompass all spending and tasks that many managers, engineers, or companies can think of, of course you are going to overrun. Or similarly trying to reproduce/refactor all of the efforts over several years of the predecessor teams of engineers and managers.

And another part of this is that people are bidding, which means you have to be in the ballpark of the other bids, and you probably need to be lower than the lowest bid, and everyone has an incentive to bid lower regardless of the actual scope because they have to make their bid attractive to have an opportunity to even actually examine the real requirements.

But its even harder because estimating even a lone software project is very difficult. Its hard to sell realistic budgets, since business people are often used to interacting with relatively simple to use software like Excel, where it might take a day to figure out the most complicated part of a spreadsheet for a certain purpose. By the way, don't underestimate the power and real value of spreadsheets to business people.

</comment><comment><USER9> This reminds me of the F-35 program as a whole. By trying to make it do everything, they end up with a plane that does nothing particularly well (and is prone to technical problems).

</comment><comment><USER10> This is why I hate "all-in-one" systems. Systems that try to do it all, end up being hard to work with, and just introduce multiple points of failure. IMO, it's better to decouple systems and have each of them do one job, and do it well ([https://en.wikipedia.org/wiki/Unix_philosophy](https://en.wikipedia.org/wiki/Unix_philosophy)). Then moving things around isn't as complicated or impactful.

</comment><comment><USER11> How does one hold the requirements for "700 systems" in one's head?

The only way that could possibly work is if the original systems are grossly repetitive and unoriginal (variations on 2 themes, perhaps?).

<comment><USER12> What's worse is that they didn't try to even hold those requirements on paper.

<comment><USER11> touche`!</comment></comment></comment>


Let an entrepreneur be - <AUTHOR> http://avlesh.wordpress.com/2013/02/02/let-an-entrepreneur-be/

<comment><USER2> Another member of the Cult of Startup.

Startups are proto-businesses. Being a startup means you get to break the rules and out-compete established businesses, because you have nothing to lose. A startup is a business though, creating a startup is hacking the legal system and abusing the concept of corporation and limited liability, but it is still a business. Business means 'trying to make money'. If you don't make a huge multiple of what you would have made elsewhere, Startup is Fail. Acceptance of this leads to clear thinking, proper prioritization, and a much greater chance of success.

Any gambler will tell you that you _must_ take a wager that offers positive expected value. However, they will also ruthlessly face reality and attempt to figure out what is happening if they keep losing over and over.

I guess what I'm saying is, Startup culture is valuable because of the chance of success _only_ , failure is failure.

<comment><USER3> Gamblers should not tell you to take any positive expected value wager. There's still the matter of the Kelly Criterion (ie. your bankroll) to consider [1].

The (rough) equivalent in startup world would be your risk appetite and/or financial stability.

[1] [http://blog.streeteye.com/blog/2011/11/why-only- millionaires...](http://blog.streeteye.com/blog/2011/11/why-only-millionaires- should-play-powerball)

<comment><USER2> Kelly Criterion exists to manage volatility and risk of ruin.

It says what _size_ of bet to make, not whether or not to make a wager. This is no different from a startup, where you might take investment, pay yourself a salary, or sell shares to reduce your personal risk.

My original point was that yes, if you believe startups offer much better outcomes than a regular job for you, you really should do startups and ignore everyone telling you not to. However, if the startups you join fail over, and over, and over, and over, at some point you should stop and try to figure out if startups are really not a good idea for you. It may be that the startups you choose to join are bad, or it could be that only badly run startups would hire you, or it could just be a string of bad breaks. Pretending otherwise is pretty foolish.

<comment><USER3> I agree, the Kelly Criterion tells you what size of bet to make. And if the size of the bet you should make is greater than your bankroll (or risk appetite), then logically... you should not make the bet.

And (indeed), this is the exact analogy you're using. If you place bet after bet after bet (ie. doing repeated failed startups), then perhaps you should re-evaluate your bankroll (opportunity cost?) and do something else for a bit.

[I think we're in agreement. I just wouldn't use positive expected value as the argument.]

</comment></comment></comment></comment><comment><USER4> > Contrary to the popular belief, an entrepreneur is NOT a businessman. The > former has a much larger goal than ONLY making money.

I don't agree with this sentiment. To be a good entrepreneur you have to be a businessman and know how to start and run a business (or learn how to start and run a business). However that doesn't mean you have to sell your soul for money and a good (and ultimately successful) entrepreneur can build a business that solves problems, provides really good value for customers and makes money for himself as well as the rest of the team.

</comment><comment><USER5> "The reasonable man adapts himself to the world; the unreasonable one persists in trying to adapt the world to himself. Therefore all progress depends on the unreasonable man." --George Bernard Shaw

</comment><comment><USER6> inspirational !

</comment><comment><USER7> Every surprisingly insightful decision will be met with derision before you execute it. That is where courage, stubbornness and willpower come into play. Success is always based on ignoring 99% of the opinions around you. If not enough people think your plan is impossible, your idea is simply not particularly good. If you do not fail a few times first, it cannot be such a good idea either. It is simply too obvious in that case. Next, when the inevitable has materialized and Sergey Brin and Larry Page have become billionaires, they will start whining that such outcome is "unfair" and that these ill-gotten gains should be "re-distributed" to the more unfortunate and less "lucky" elements of society.</comment>


OSIRIS spots Philae drifting across the comet - <AUTHOR> http://blogs.esa.int/rosetta/2014/11/17/osiris-spots-Philae-drifting-across-the-comet/ <comment> grey-area The original blog post is here:

[http://blogs.esa.int/rosetta/2014/11/17/osiris-spots- philae-...](http://blogs.esa.int/rosetta/2014/11/17/osiris-spots-philae- drifting-across-the-comet)

There's a nice image[2] which shows this in context linked to in the comments [3]. ESA seem to think the lander ended up somewhere over in the dark cliffs of the large crater filling the right hand side of this image.

[2] [http://i.imgur.com/4m4WqAN.png](http://i.imgur.com/4m4WqAN.png)

[3] [http://blogs.esa.int/rosetta/2014/11/17/osiris-spots- philae-...](http://blogs.esa.int/rosetta/2014/11/17/osiris-spots-philae- drifting-across-the-comet/#comment-201918)

</comment><comment><USER2> If there's one plus in all of this (notwithstanding the data already returned!) it's that if there wasn't a thick enough coating of dust to absorb the shock of a light impact in the absence of the harpoons or retro-thrusters, and the surface was hard enough to break the thermometer... there may also not be enough dust to cover the panels as 67P nears the sun, which means we may not have heard the last from Philae.

<comment><USER3> How long is Rosetta going to orbit 67P? Indefinitely? We need Rosetta to be able to talk to Philae.

</comment></comment><comment><USER4> Does anyone know if the highly irregular shape of the comet would cause a wild variation of the strength of the gravitational field near the surface of the comet? (as opposed to a 'perfect' spherical planet).

I'd imagine that would cause quite interesting dynamics and make it potentially quite difficult to calculate where it will end up?

<comment><USER5> Yes, yes it would.

<comment><USER6> You move from calculations using little-g to calculations using big-G (i.e. the acceleration due to gravity varies significantly since the distance between centers of mass is varying significantly), but this is still a straight-forward problem of one body moving in a gravitational field.

<comment><USER7> Original question said: _when moving near the comet_. So ISTM that it's not so straightforward. Some months ago someone posted a gravity simulator here and it was very instructive playing with it and seeing how unstable a small object's orbit is around two bigger objects rotating around their center of gravity, situation that seems similar to the "duck".

Edit: [http://www.nowykurier.com/toys/gravity/gravity.html](http://www.nowykurier.com/toys/gravity/gravity.html)

Try creating two big objects in a circular orbit and experiment launching smaller objects with the same direction and speed. Some of them will crash, some others will escape.

<comment><USER6> My impression is that although it is not spherical, the core of the comet is a single object. It may therefore be treated as a point mass for these purposes.

<comment><USER8> You can treat anything as a point mass as long as you're far away enough ;) And even with point masses only, orbital mechanics can get quite complex.

When you are close enough that a significant portion of the comet's mass is "besides" yourself (somewhere off to the side) it will pull you to the side.

This even holds true for spherical objects (say, you standing on earth), where you get gravitational pull not only towards the center but also towards the sides. For a perfectly symmetrical sphere, these sideway forces cancel each other out tough.

But earth isn't a perfect sphere, so even on our own planet you get (very small) variations in gravitational pull (stronger pull at the poles or near mountains (where the crust is thicker)): [https://en.wikipedia.org/wiki/Gravity_of_Earth](https://en.wikipedia.org/wiki/Gravity_of_Earth)

<comment><USER6> I encourage you to think a bit more about what is meant by _center of mass_. By definition, it takes into account _all_ the mass of the body. If the force of gravity is pulling you "somewhere off to the side", then the center of mass is also "somewhere off to the side". Think about the extreme case of two identical-size, uniform-density spheres attached at a single point. That point will be the center of mass, despite the fact that little of the mass of the entire object is located near there.

<comment><USER9> The center of mass is the point where the force of gravity would pull you _if the force increased proportionally with distance_. In reality the force decreases as 1/r^2, which changes things. Think about the more extreme case of a barbell -- a single object. If you're 2/3 of the way on the bar, you'll be attracted towards the closest endpoint, away from the center of mass (midpoint).

<comment><USER6> Oh!

Thanks for the correction; sorry for the noise.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER10> It amazes me that we take for granted the sheer complexity of hitting a moving target like a comet at such an incredible distance in space. Navigation in space has to be so incredibly complex because you are moving in so many planes. It's like firing a gun and hitting a quarter that was thrown miles away.

<comment><USER11> If you haven't already, do watch which orbit changes of Rosetta were needed to deploy the lander:

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

Must watch. The video was made by ESA.

<comment><USER12> The video is very cool. But I find it hard to imagine how to orbit something that has hardly any gravity - the orbiter must be getting just milligrams of force.[1] The scale isn't clear from the video: are they orbiting really slowly? And it seems like it would be very hard to enter orbit around something that has hardly any pull without flying right past it. On the positive side, the orbit changes in the video would require almost no propulsion, right?

[1] milligrams isn't a unit of force, but hopefully you know what I mean; milli-ounces sounds too weird.

<comment><USER13> Milli-Newtons :-)

The comet[1] that Rosetta is orbiting has a mass of 10^13 kg and an orbit semi-major axis of 518,060,000 km. This gives the comet a Sphere of Influence[2] of roughly 62 km.

What this means is that within 62 km or so, the comet is the dominant gravitational body, so orbits of 16, 20, and 30 km (in the video) are perfectly reasonable.

The orbital period[3] of the larger 30 km orbit is around 40 ksec or 11.1 hours.

[1]: [http://en.wikipedia.org/wiki/67P/Churyumov%E2%80%93Gerasimen...](http://en.wikipedia.org/wiki/67P/Churyumov%E2%80%93Gerasimenko)

[2]: [http://en.wikipedia.org/wiki/Sphere_of_influence_(astrodynam...](http://en.wikipedia.org/wiki/Sphere_of_influence_\(astrodynamics\))

[3]: [http://en.wikipedia.org/wiki/Orbital_period](http://en.wikipedia.org/wiki/Orbital_period)

<comment><USER9> Your orbital period of 11.1 hours at 30 km looks wrong. The video shows about 7/8 of a 30-km orbit over 14 days (19 Nov - 3 Dec). The orbital period formula gives 14.6 days (2 * 3.14159265 * sqrt(30000^3/(6.67384e-11 * 10^13)) / 3600 / 24).

<comment><USER13> That's absolutely possible -- I did some in-my-head units conversion.

Maybe another look at the units:

      G - 6.67384e-11  [N (m/kg)^2] = [m^3 / (kg s^2)]
      M - 1.0e13       [kg]
      a - 30000        [m]

      sqrt([m^3] / ([m^3 / (kg s^2)] * [kg]))
      = sqrt([s^2]) = [s]

      2*pi*sqrt(30000^3 / (6.67384e-11 * 1.0e13))
      = 1,263,787 s
      = 14.6 days

Well, how about that :-)

</comment></comment></comment></comment></comment></comment><comment><USER14> It seems to me that this shot is missing: [http://blogs.esa.int/rosetta/2014/11/16/philae_spotted_after...](http://blogs.esa.int/rosetta/2014/11/16/philae_spotted_after_first_landing/)

However, there seems to be a confusion about the time. If it's indeed one hour after touchdown the bright and dark blobs are probably just dust.

<comment> grey-area The pic you linked to was taken with a different camera (NAVCAM), the pictures in this article (OSIRIS) are much better, and clearly show the lander before and after touchdown along with marks where it first landed/bounced. What they don't show unfortunately is the final resting place, but that's a bit tricky because of comet rotation, comet shape (not a flat surface), and the parabolic trajectory of the lander.

What's the confusion about the time? Touchdown was at 15:34 UTC (NB UTC), I doubt anyone at ESA is confused about the time, though some of the commenters seem pretty confused on the ESA blog post this BBC article is based on:

[http://blogs.esa.int/rosetta/2014/11/17/osiris-spots- philae-...](http://blogs.esa.int/rosetta/2014/11/17/osiris-spots-philae- drifting-across-the-comet/)

<comment><USER14> It says below the article that they confused the time due to fatigue.

<comment> grey-area That's an older article about old pics though isn't it, not these new pics? It was just a label on the website blog which the web team got wrong and was corrected soon after posting. The pics in the article you link are 4 mins before and 1 minute after landing, not 1 hour after, and they are corroborated by these new images, so no real confusion over timings.

</comment></comment></comment></comment><comment><USER15> I haven't seen any discussion of the possibility of Philae receiving light to its solar panels as the comet tumbles through space. Is there no chance of the comet turning to a point where the sun can reach the lander?

<comment><USER16> Philae is getting 1 hour of sunlight about every 12 hours. Right now, it's so cold that it has to warm up the batteries before charging them, and it's getting so little light that it can't even do that. It's possible that the rotation might change, but because the probe is surrounded on 3 sides, that's not likely to help. So we'll have to wait for the temperature to get higher and/or the sunlight to get a lot stronger.

<comment><USER17> Can Rosetta not be angled to reflect sunlight to Philae, Iridium style? How close can Rosetta be placed to the comet?

<comment><USER18> Even if they could (it's unlikely) … would they? Philea was a pretty risky and relatively small add-on to the main Rosetta mission. Rosetta does important stuff all on its own, it's not just a vehicle to get Philae there and relay data.

Rosetta will stay with the comet as it gets closer to the sun and observe it.

</comment></comment></comment></comment><comment><USER19> I wonder if there's a reason they didn't design the lander with some sort of energy-absorbing material (something analogous to the crush zone in a car) on the bottom of the landing pads to prevent bounces. I thought I'd "wonder out loud" here because someone on HN might actually know the answer.

<comment><USER20> Really too bad the harpoons failed. Why I wonder?

[http://image.slidesharecdn.com/rosettamediabriefing16octbiel...](http://image.slidesharecdn.com/rosettamediabriefing16octbiele-141016091057-conversion- gate02/95/rosetta-media-briefing-16-october-dr-jens-biele-dlr-philae-lander- payload-manager-16-638.jpg?cb=1413468719)

<comment><USER21> Apparently the propellant they used was found (after launch, unfortunately) to be unreliable in a vacuum.

[http://www.wired.com/2013/10/in-space-no-one-can-hear- your-n...](http://www.wired.com/2013/10/in-space-no-one-can-hear-your- nitrocellulose-explode/)

<comment><USER22> Ouch. This strikes me as a particularly avoidable mistake.

<comment><USER23> It's not that they don't work in vacuum, it's that they don't work after a decade in extremely cold vacuum.

<comment><USER24> ... unlike a not-so-harsh room-temperature vacuum ;)

<comment><USER23> OK, after a decade extremely cold and in a vacuum.

</comment></comment></comment></comment></comment></comment></comment><comment><USER25> Remember the old lunar lander game?

Someone needs to make a Philae Lander game.

for those that weren't around in 1979:

[https://www.atari.com/arcade/lunarlander/play#!/arcade/lunar...](https://www.atari.com/arcade/lunarlander/play#!/arcade/lunarlander/play)

(js version [http://www.somethinghitme.com/projects/jslander/](http://www.somethinghitme.com/projects/jslander/) )

<comment><USER8> You can always reenact it in Kerbal Space Program ;)

<comment><USER26> Landing on Gilly, the asteroid orbiting Eve in KSP, will give an idea of the challenges of the low-gravity environment Rosetta/Philae are operating in. The Rosetta comet has lower gravity, though, by two orders of magnitude.

[http://wiki.kerbalspaceprogram.com/wiki/Gilly](http://wiki.kerbalspaceprogram.com/wiki/Gilly)

<comment><USER8> Indeed, KSP gives a good intuition about orbital mechanics and space travel. It makes you appreciate the skills of NASA/ESA/... engineers even more!

Also, KSP now has 'real' asteroids! [http://wiki.kerbalspaceprogram.com/wiki/Asteroid](http://wiki.kerbalspaceprogram.com/wiki/Asteroid)

</comment></comment></comment></comment><comment><USER27> Is it just me, or did Jonathan Amos slip a subtle Star Wars homage into the article? "It's a trap" is one of the section headings.

<comment><USER28> That's about as subtle of a Star Wars reference as slicing someone's arm off with a light saber.

</comment></comment><comment><USER29> Any news on if the drill managed to pick up anything useful? Curious to find out if the Ptolemy data that came back was of anything useful (as I understand it, Ptolemy's task was to measure isotope ratios so that we could see if the water composition on the comet was at all similar to that on Earth).

<comment><USER30> I hear some of the instruments were owned by private research institutes rather than European taxpayers (who funded the vehicle) so for some areas may take a while to publish. Might have to wait for proper papers etc

<comment><USER31> > I hear some of the instruments were owned by private research institutes > rather than European taxpayers (who funded the vehicle) so for some areas > may take a while to publish. Might have to wait for proper papers etc

It is not immediately obvious to me why who owns the instrumentation would be a driving factor in the time to see results. Both private research institutes and public institutes would want to get results out as quickly as possible, to capitalize on the PR effect. But that is moderated by the need to perform sufficienly accurate and detailed analysis, which takes time. Those pressures are the same for both public and private research institutes. If anything, the private institues would feel more pressure to publish results quickly, to improve their chances of obtaining future funding.

I cannot tell if you are comparing the quickness of this press release with the lack of results from the scientific packages on Phile, but I will address the (potential) comparison, just in case... Part of reason this press release (with the image of Philae bouncing) was out so quickly is that it does not require a very detailed and specific analysis (requiring roughly the equivalenth of image stictching in photoshop), and the results are fairly straightforward. Additionally, it is not really providing much in the way of new scientific information and so does not have as high a burden of proof. Additionally, the OSIRIS imager has been used to collect data for a while now, so presumably the OSIRIS team has a decent understanding of the real-world operation of the equipment, enabling them to quickly release images in which they were confident. In contrast, the Philae lander's instruments had not provided actual data before the landing, so the instrument teams still need to do the careful calibrations and analysis to understand the systematics.

</comment></comment></comment><comment><USER32> I have to say this. I have been as amazed as anyone by the feat of engineering that this entire mission represents. It is absolutely mind-blowing and I have been sharing it with others, including my kids.

But, something puzzles me. That is, why didn't they use better camera technology? That's a lot of miles traveled and a lot of effort. Seems the mission would have been much better served by better imaging, both from a scientific perspective and from a public interest perspective (which can help engender support for future exploration).

Frankly, the fact that it even happened amazes me. But, the images disappoint me.

I know it sounds like a nit, given the overall accomplishment, but that's all the more reason to wonder why not ensure that something presumably as simple as the images we capture be as stunning as possible?

<comment><USER33> The wifi reception is really shitty up there. Jest aside: More pixels, more bandwidth needed and if you think about how much bandwidth wifi systems were capable of achieving 10 years ago, they're probably at the edge of what they could use without resorting to cutting edge tech. You also have to transmit the data from the lander to the orbiter in a reasonably short timeframe since the lander is not always visible from the orbiter.

Maybe they have higher res pictures still on the orbiter that will download later when there's bandwith left.

<comment><USER32> Yeah, I think this mission was worthy of a cutting edge imaging solution though!

As far as transmission windows, well we had download-continuation browser solutions back then.

Seriously, not to say it's that simple, but this mission solved much harder problems than imaging would _seem_ to pose.

Really would be interested in knowing how the imgaging solution selection process went and what the key drivers were.

<comment><USER34> None of the probes has ever used what could be called cutting edge equipment, the science behind it all is cutting edge but you can't put a camera, lenses or processors on a device going into outer space without having done some serious testing. It's just easier to do it with devices and such that have a long track record of working with radiation, incredible cold and so on.

I totally know where you're coming from though, having Curiosity or Rosetta be equipped with some serious photographical capabilities would've been awesome. But I doubt any of the firms are going to put any kind of cutting edge imaging solution on them any time soon.

<comment><USER35> >you can't put a camera, lenses or processors on a device going into outer space without having done some serious testing

old timers have been saying this for a very long time, and it took years to convince someone to JUST FUCKING SHOOT A PHONE UP THERE

[http://www.space.com/21036-space-smartphones-photos-nasa- pho...](http://www.space.com/21036-space-smartphones-photos-nasa- phonesats.html)

Shaun Meehan (almost 100 private satellites currently in orbit, all more or less smartphones in space) talks about this in the podcast: [http://www.theamphour.com/220-an-interview-with-shaun- meehan...](http://www.theamphour.com/220-an-interview-with-shaun-meehan- doctiloquent-dove-deployer/)

</comment></comment></comment></comment></comment><comment><USER36> Hindsight is 20/20, but it really looks like the lander descended too quickly, at least at the final stage. I mean, _any_ smaller bounce would have prevented the shadow landing. But then, there are probably risks associated with a last- second deceleration, and the odds of _both_ the top-thruster and the clamps failing were probably small.

<comment> m-app Note that the final image in this mosaic (labeled 15:43) is not the final resting place for Philae. They still do not know exactly where it landed.

</comment></comment><comment><USER4> I associate 'bouncing' with a certain amount of elasticity. If the comet's surface is much harder than expected, I would expect the lander to be smashed to bits.

Where is the flaw in my thinking? Is this to do with it being very small forces exerted over a long time period?

<comment><USER37> The gravity and forces we're talking about are tiny. The craft hit the ground moving slower than 1 m/s and then bounced up over 1km before landing again. The forces involved with something moving that slowly and stopping are minuscule.

<comment><USER4> This is fascinating. I imagine they probably ran simulations with different margins and as a few bounces would have been one of the expected outcomes i.e. it would have been factored into the design of the craft?

<comment><USER38> The craft had a small thruster on its top side to gently push it into the surface of the comet, but this seems to have been faulty and couldn't be primed prior to Philae's separation. It sounds like the sort of equipment that might have mitigated such a bounce!

</comment></comment></comment></comment><comment><USER39> Philae's landing is commonly represented as a vertical descent. In fact, it seems there was considerable lateral velocity.

My guess is that Philae landed tumble-weed style, jumping, and rolling until it hit a wall, in this case, the cliff that shadows it.

<comment><USER39> Philae is 1km away from the original landing site. There must've been lateral velocity.

<comment><USER40> No, the comet is spinning. That is what happened between the first and the second landing sites.

<comment><USER41> I thought that too, but then they wouldn't be able to target the first spot so perfectly if they haven't considered that. And assuming 12h day the rotation should be around 2 pi R / 12 h ~= 2 km /h assuming R=4 km.

That would result in much bigger velocity than 0.5 km/h when bouncing, and would exceed escape velocity 2 times, just from horizontal part of velocity).

So I doubt it's so simple.

</comment></comment></comment></comment><comment><USER42> Is it completely out of the question to reflect light onto Philae using Rosetta (once they locate the probe of course)?

<comment><USER43> That sounds too complicated for the amount of light you'd get, although I get your point - I'm sometimes surprised by the light/heat that reaches my greenhouse from a reflection on a window as the sun is setting.

On a related note, though, perhaps future missions will transmit power via laser rather than relying on solar panels. Of course solar panels have also had 10 years to improve since the mission was launched...

<comment><USER44> Or future missions could just stick an RTG on it, right?

<comment><USER45> Please read [http://nucleardiner.com/2014/11/15/wasnt-philae-given- rtg/](http://nucleardiner.com/2014/11/15/wasnt-philae-given-rtg/)

<comment><USER44> Those sound distinctly non-technical.

</comment></comment></comment></comment></comment><comment><USER46> This layer of soft dust in low gravity is hard for me to get my head around.

<comment><USER47> It's just time, and low rather than no gravity. It helps that there's no air resistance to blow it off either.

</comment></comment><comment><USER48> are these photos in B&W or is the comet really that gray?

<comment><USER49> Probably B&W. Even color images (aka like you see from the MER mission) are just a B&W imager multiple exposures - each with a different color filter.

<comment><USER48> we're running spectrographic analysis etc but we don't know the color of the surface? it strikes me as strange we don't have color photos. is it to save bandwidth?

<comment><USER50> We will get color photos eventually - they're being taken, they're just subject to a 6-month embargo.</comment></comment></comment></comment>


Ask HN: Soft failures on CPUs ? - <AUTHOR>

There have been many studies that look at error rates on hard disks and in DRAM, are there similar studies about how often CPUs hickup ?
Given the amazing clockfrequencies of modern CPUs and their incredible complexities it stands to reason that CPUs will miss a bit every now and then. Even if their error rate was only 1 in 1 trillion that would mean a soft error every 15 minutes. (so, either errors are happening or the rate is much much lower than that).
I think this matters because we are looking at data corruption issues on disk and in RAM and we have solutions in place for those (checksumming, ECC RAM), but if something goes wrong in the cpu then all of that is moot. <comment><USER2> _There have been many studies that look at error rates on hard disks and in DRAM, are there similar studies about how often CPUs hickup?_

I don't know of any published results, but anecdotal reports I've heard from the supercomputing community are in the range of one error per 10-100 CPU years on well-maintained (adequate cooling, clean power, and not overclocked) COTS systems. This rate would be much higher were it not for the fact that most die area is used by caches with internal ECC; I believe that some recent CPUs apply ECC to some internal busses as well.

That said, internal CPU bit errors are a problem which must be considered in high-reliability environments -- this is one of the major factors behind interest in byzantine algorithms.

</comment><comment><USER3> Something that might have something to do with this is the difference between the DRAM in RAM and the SRAM on the CPU die. On DRAM, the bit is stored as a charge on a capacitor, which is (apparently) susceptible to cosmic ray bit- flipping. Perhaps SRAM is less delicate in that regard?

<comment><USER4> It used to be the case that DRAM was more sensitive to soft errors than SRAM until about 8 to 10 years ago. Today, soft errors in SRAM are more of a problem than in DRAM. The capacitance per unit cell of DRAM has remained relatively constant, while the capacitance per node of SRAM has shrunk dramatically with transistor scaling. So even though SRAM actively holds data, contrasted to DRAM, which passively hold data, SRAM's low capacitance makes it more susceptible to soft errors.

</comment></comment><comment><USER5> No hard data on actual rates but you may find this interesting:

<http://lambda-the-ultimate.org/node/2108>

You might find upper bounds by talking to people who build space-hardened systems.</comment>


Markupwand (YC S12) Takes The Pain Out Of Translating Photoshop Files To HTML - <AUTHOR> http://techcrunch.com/2012/08/17/markupwand/

<comment><USER2> I would never do this for a website or web app, but if they could make it code emails that work in every email client I would use it immediately. I don't care how shitty the code looks.

<comment><USER3> I don't see why you couldn't use this to create an HTML email template?

</comment></comment><comment><USER4> It's a neat idea. It'll be a lot of work to get right. In the meantime, I can send a psd, png, whatever to cssilize and have it chopped up by a human into great looking html and images and I don't have to piece-meal the psd myself to conform to what markupwand needs:

<http://www.cssilize.com>

It's like $35 or something per page.

<comment><USER5> this is still manual. This is the exact problem markup wand solves.. isnt it :)

</comment></comment><comment><USER6> To me, this is useful for making testable prototypes, or sites that need to be thrown together on very short order with a short lifespan.

But unless they're able to generate responsive layouts and markup that's not semantic & clean, it's not useful beyond that.

<comment><USER7> I'm working on something that hopefully will, if you're using Bootstrap as a base: <http://jetstrap.com/>

Of course, this is not a photoshop->responsive tool, but it skips the first part.

<comment><USER8> That is interesting, just added myself to alpha list. Eager to try it out!

<comment><USER7> Thanks! We are going to be rolling out the alpha really soon, just fixing some annoying bugs.

</comment></comment></comment></comment><comment><USER9> I don't understand how people are still designing for the web in an image manipulation application. There are so many other tools out there today to get you to a design much quicker than Photoshop.

<comment><USER10> Maybe you could give some examples of those tools? I'm not asking to be snarky - I'm genuinely curious.

<comment><USER11> There are quite a few new services emerging that are making designers less dependent on drawing tools:

* Gridset (<http://gridsetapp.com>) -- for working out your grid and bringing it into a prototype

* Typecast (<http://beta.typecastapp.com>) -- design with web fonts

* Easel (<http://easel.io>) -- a browser-based alternative to Fireworks

* CSS Piffle (<http://csspiffle.com>) -- haven't actually used this yet but looks similar to Easel from the outside

* Adobe Muse (<http://www.adobe.com/products/muse.html>) -- not well received but maybe an indication of Adobe's future direction

[disclaimer: I'm part of the Typecast team].

Photoshop and Fireworks are great and I don't see many designers abandoning desktop software entirely. But I think there are plenty of tools that can help you get into the browser more quickly.

</comment></comment></comment><comment><USER8> Thanks for HN Post! Could you please add (YCS12) to the title?

<comment><USER12> How can I get on the closed beta?

<comment><USER13> It is open for everyone now. You could sign up on the website

<http://www.markupwand.com/signup>

</comment></comment></comment><comment><USER14> Interesting idea..Love it just signed up.</comment>


The 'We Need To Own' Baloney - <AUTHOR> http://www.avc.com/a_vc/2009/10/the-we-need-to-own-baloney.html

<comment><USER2> When he said that his firm owns less than 10% of a company and it will probably end up as the biggest payoff in his portfolio, I assumed he was talking about Twitter. But in the comments, he rules that out by saying "We own more than that of Twitter". Interesting. Maybe it is Etsy? Any other guesses?

He also says "I am calling bullshit on it and will do it to your face." Wow, really laying it down there.

<comment><USER3> del.icio.us, I would guess. Nobody know yet if Twitter is ever going to make a penny :)

<comment><USER4> No. Delicious exited too early to be a great exit for USV.

</comment></comment></comment><comment><USER5> Memorable quote: "The VC business is not about grabbing the largest slice of the pie. It is about getting involved with very big pies."

<comment><USER6> Yes it is, but if we learned one thing about people in finance, it is that they generally want to have the largest slice of the biggest pie coming from the tallest apple tree standing on the largest orchard...

</comment></comment><comment><USER7> I know confusing 'my equity value' with 'my sized slice of the pie' is very common among business owners (obviously not as much clearer among VCs as I would have expected).

If you're new to business, it's important to understand the difference between wanting "a business (pie) worth $xM" and wanting "to own (slice) $xM of a business". Especially when it comes to external support or funding, a smaller slice of a bigger business pie often comes as a revelation to people who had previously only thought about the pie.

Also recommend pg's article on the equity equation - <http://www.paulgraham.com/equity.html></comment>


StackLayout - A flexible width, component based CSS layout system - <AUTHOR> http://stacklayout.com/ <comment><USER2> Resize your browser and you'll see that they eat their own dog food.</comment>


Show HN:Passwordless Authentication API for Developers - <AUTHOR> https://junopass.com/ <comment><AUTHOR> JunoPass enables your users to signup and login without passwords. The strategy is secure and data properly digitally signed. JunoPass uses standard public key cryptography techniques to provide stronger authentication.Please give it a try. Also let me know what you think. Thanks.</comment>


Bitbargain (UK) suspends withdrawals - <AUTHOR> http://blog.bitbargain.com/post/76337403346/bitcoin-malleability-issue <comment><USER2> tldr: Don't use bitcoind's "accounts" functionality

This is the first article I've read that actually details what the issue is and why it doesn't just effect custom Bitcoin clients.</comment>


Atlantropa: the damming of the Mediterranean - <AUTHOR> http://www.cabinetmagazine.org/issues/10/atlantropa.php <comment> get-it-going Very informative and interesting read!</comment>


Smudge: Go lib providing consul like features using SWIM epidemic protocol - <AUTHOR> https://github.com/clockworksoul/smudge <comment><USER2> I'm curious if the author was aware of our implementation at HashiCorp ([https://github.com/hashicorp/memberlist](https://github.com/hashicorp/memberlist)). We use that implementation in Serf ([https://www.serf.io](https://www.serf.io)) to provide membership, failure detection, and an event system. Serf is in turn, used by both Consul ([https://www.consul.io](https://www.consul.io)) and Nomad ([https://www.nomadproject.io](https://www.nomadproject.io)). The point being, our implementation has seen significant production hardening and is known to work on clusters with 10K+ machines.

We've made significant enhancements to SWIM to make it work at scale, but overall it's a simple algorithm to understand and works quite well in practice. Glad to see more implementations of it!

<comment><USER3> Author here. A pleasure to meet you. I'm a big fan of Hashicorp.

Truth be told, when I started this project I wasn't aware of memberlist, though I was by the time I finished. I was building something beautiful and I didn't want to put it down.</comment></comment>


Ask HN: Please critique my landing page - <AUTHOR> http://love.kembrel.com/hn/

<comment><USER2> You are asking people to turn over personal info based on 1 vague line about discounts up to 80%. I think you need to provide a good bit more info- why does this free membership save me money? are they going to send me ads? etc etc etc.

<comment><AUTHOR> Good points, thanks. Will include link to privacy policy and elaborate more in description. Was trying to cut down the copy to a minimum but I guess I went too far.

</comment></comment><comment><AUTHOR> Background story: <http://news.ycombinator.com/item?id=1538987></comment>


Example syntax for command-line Oracle connection - <AUTHOR> http://www.itworld.com/development/111846/naked-oracle-connections

<comment><USER2> Confused about the syntax? Gosh, how could that happen?</comment>


Ask HN: HN comment-respond notifications, useful? - <AUTHOR>

I thought about a feature I would like to have for HN; some kind of notification whenever someone responds to one of my submissions / comments.
I like notifications, the only reason why I actually respond to skype messages is because of the little icon in my taskbar. I would also like to respond to HN comments, the problem is, I forget to check the sites. So I thought some kind of browser notification would be nice.
If you agree that this feature would be useful, and like to use it, program it, because I won't. Here is the thing, I can't program, I am willing to learn, but I don't want to wait for this feature until I am able to do it myself (years). I have no idea how to implement it, but I guess some kind of javascript snippet, or Mozilla addon, or Chrome extension, or similar.  (I suppose an hourly email digest would even do it)
The notification should have an input field for the username and get the comment responses in some fashion like:
1. Got to the /threads?id=username
2. Check if there are any new <a href=user?id=username> since the last time the site was visited.
3. Show some kind of notification for the number of new entries on the site that don't match the username
If that description is confusing, it is because I really have no idea how to do this kind of thing.
This somehow described how to track the responses to the comments, but I wouldn't know where to start for the user's submissions.
Anyway, all that done, it would also be nice to be able to track other users. Notify me, if someone I am "following" made a submission or comment (not the responses to his/her comments, just comments from the user I want to track)
In the case there is already a tool like this available; I would kindly ask you to tell me about it. <comment><USER2> I would not only LOVE something like this, but I'd also like to be able to subscribe to the page updates (so I can read followup / interesting comments in a thread).

I think I can do the latter with the RSS feed, but just haven't set it up.</comment>


Researchers find 'night owl' gene variant - <AUTHOR> http://www.cbc.ca/news/technology/night-owl-gene-1.4069398 <comment><USER2> This seems to be in the genes analyzed by 23andme

While logged into your 23andme account, open a new tab and type this URL [https://codegen.eu](https://codegen.eu) It will ask permission to copy your raw data, and then identify a huge number of scientific papers that discuss your genes. You can filter it on terms like CRY1 or circadian to get a short list of papers that may be of interest.

Requires some smarts to figure out all the biomedical and genomics jargon but well worth it to understand your own genes better.</comment>


How I decide between many programming languages - <AUTHOR> https://drewdevault.com/2019/09/08/Enough-to-decide.html <comment><USER2> Have other prolific programmers made lists like this? I'd love to read something which gets into the real nitty gritty.

</comment><comment><USER3> A willingness to code C but not C++ is just silliness. You can complain that the language is too big, but everything in it is there to solve serious engineering problems. Complaining about it just shows you are not serious about engineering.

It's OK not to be serious about engineering. Most people aren't, and don't want to be. The honest thing is to say so, instead of complaining about the language.

</comment><comment><USER4> The bit on PHP is quite funny. Wish employers and managers knew this.

<comment><USER5> To paraphrase a comment that I read on Hacker News: "I don't care. If there comes another piece of shit language that makes me money, I'll use it"

<comment><USER6> It depends at what abstraction level of problem solving you work at. Some people work at the 'we need programmers to implement x feature on our system using y language' level, and that quote is appropriate. There are people that make a lot of money maintaining COBOL systems for banks, that we all benefit from.

Some work at the 'there is this problem, what do we build to solve it?' level (myself usually included). In that case you have more scope to choose the right tool for the job, and a lot of the time the tradeoff is not favourable for PHP past the first week.</comment></comment></comment>


As Tech Firms Come to Oakland, So Do Hopes of Racial Diversity - <AUTHOR> http://www.npr.org/sections/alltechconsidered/2015/12/03/458008179/as-tech-firms-come-to-oakland-so-do-hopes-of-racial-diversity <comment><USER2> > I'm hoping that the culture of Oakland is just an overwhelming wave against > any type of invading horde of 'tech bros' coming in,

I've worked at Amazon and Google, and I don't know where this idea of the "tech bro" or "brogrammer" being omnipresent in tech companies came from. I know maybe one person who might fit this description. It just seems like an insulting label that someone came up with because they hate tech companies and gentrification, and then the media decided to run with it because it made for entertaining news. Is there any actual data showing that "tech bros" constitute a substantial % of the tech industry?

The way I see "brogrammer" used these days is basically like "hipster": it means 'people in [incredibly broad category] that I don't like'. For the hipsters, the category was young adults in urban areas, and for brogrammers, it's young adults at tech companies. It's just a way for people to pretend that their personal prejudices are actually the fault of the people they're prejudiced against (similar to the old "welfare queen" stereotype).

<comment><USER3> Have worked at two separate medium sized tech companies, in other words worked closely with about twenty different developers, and never met someone I would characterize as a tech bro. Perhaps I'm one of them and one of their characteristics is not being able to recognize the quality in themselves or others?

<comment><USER4> I think it's a spectrum.

For me the ones I consider "more bro" than myself are those that exhibit subtle sexism that they are clearly trying to be joking about but it just comes off as ... PC bro. But I'm sure I have plenty of Bro qualities myself.

I've seen enough unintentional sexism in my experience to think the claims of prevalent bro'ness are not entirely unfounded.

</comment></comment></comment><comment><USER5> > "There's all of the platitudes that diversity's good for business," Kapor > Klein says. "But you look around tech, and you look at how hugely profitable > companies like Google and Facebook — all these behemoths — and they're > staggeringly undiverse, and they're doing just fine. So we need to focus on > different strategies."

FWIW, there are Asians (and even then, that's a simplification of the term since Asia is such a large and diverse continent) at these companies. Yet for whatever reason, we are never counted as part of tech diversity.

<comment><USER6> The Federal government, at least, often distinguishes between minority/majority and underrepresented/overrepresented. Women, for example, are a majority in the overall the United States' population, but are underrepresented in technology. 'Asians' are a minority in the overall United States' population, but overrepresented in technology.

<comment><USER2> "There aren't enough people from underrepresented groups here" is basically a tautology.

<comment><USER7> It is, but the existence of underrepresented groups is not a necessity. That is, there is no requirement that there be an underrepresented group. But if there is an underrepresented group, then it is a necessity that not enough people from that group are present.

What I'm really trying to say is, that particular phrase is repetitious, but not useless.

</comment></comment></comment></comment><comment><USER8> It starts with education, people. How many blacks and women start studying engineering to begin with? How many of them see it through to graduation? How many decide that they actually want to work in the field that they went to school for?

I bet those that already work at Facebook and Google don't want to work with people who aren't qualified to be there, strictly in the name of diversity.

<comment><USER9> I have to agree. But it's also a cultural issue. There are disproportionally few American women in tech, but if you look at Eastern Europe, China and India, it's not as skewed, and some of those cultures are sometimes characterized as 'patriarchal'.

So, yes, education but also culture which eliminates cultural barriers --which tend to begin in the home as well as peer groups where someone who wants to study something not popular in that group is steered away from pursing such avenues. It's not feminine, or you're going mainstream, etc (i.e. breaking with subculture dynamics)

<comment><USER7> Even in the US, computer work was originally seen as a "woman's job" \-- an extension of things like phone routing and secretarial work.

[http://gender.stanford.edu/news/2011/researcher-reveals- how-...](http://gender.stanford.edu/news/2011/researcher-reveals- how-%E2%80%9Ccomputer-geeks%E2%80%9D-replaced-%E2%80%9Ccomputergirls%E2%80%9D)</comment></comment></comment>


Ask HN: What if every aspect of your work was completely measurable? - <AUTHOR>

How would you feel if someone monitored various aspects of your work, such as
how many lines of code you write in a day,
business value of code you produce in a day (e.g. Pivotal Tracker points),
average "lifetime" of your code before it's changed,
what percentage of your code is changed,
what percentage of code you write from scratch vs. changing others' code,
when bugs are tracked,
what percentage of bugs are due to your code,
how many files you change,
what coding tasks you are good/bad at, AND
what languages you're most/least proficient in.
What do you like about this? Would you use this to demonstrate that you are a strong coder and useful employee?  Would it be helpful in keeping your work on track?
What don't you like about it? Would you feel this was an unwarranted intrusion? If so, why?  Would it make you angry enough to get another job or not work there? <comment><USER2> To me, the only one that I would value in a management role would be _what percentage of bugs are due to your code_ the rest of them seem to be items that could be used politically, but have very little tangible value in measuring the value of a developer.

"how many lines of code you write in a day" being the least useful and possible the most harmful to the organization. For an example a developer that knows how to write lambda forms could write a generic routine and inject a reference to a function for one particular portion of customized logic, this would be very compact and efficient code, the same thing could be accomplished by an interface and classes, where each custom class implements a interface that contains the custom logic. The guy that understands lambda forms actually understands programming at a higher order as it is a more advanced concept, but the guy who only knows interfaces and OO will end up painting the better picture by that metric.

That being said, I would pay for the "what percentage of bugs are due to your code" tracking tool in itself, I think that is a valuable metric, if it is accurate.

<comment><USER3> At my first job, they brought in a well-known consultant company to update a huge legacy application. At one of the initial meetings, one of our co-workers who was working on the project gave us an overview of their process. Then he said something like:

"And they have a tool which will automatically go through the code, find bugs and then be able to tell us how many bugs each person is responsible for."

My initial thoughts were "Wow, that would be such a cool way to get feedback."

But then he added "I'm just joking about that one. You can wipe the worried looks off your faces."

I think a tool that could directly measure the amount of bugs one produces would revolutionize the industry.

<comment><USER4> There are some tools that can help with this, such as Findbugs, for java. Obviously it can't find any bug but it matches against certain patterns to determine if some anti-patterns exist in a project.

<comment><USER5> How do you find bugs in perfectly good code, that does something efficiently and correctly but it's just the wrong thing?

Think about a piece of javascript that takes an image and replaces another with it. The problem is not the code, it's the incorrect image.

That kind of bug - for that's what it is - could never be determined without resorting to creating a set of instructions that would do the same thing. You would have to write something that behaved in the way you wanted you other code to behave in order to test against it.

This would be the perfectly idiotic suggestion of an accountant or auditor whose desire was to improve the bottom line without understanding the mechanisms.

<comment><USER2> There is another way around it, tracking who wrote the original code, and then tracking tickets marked as bug in which that code was modified could give a picture of who is producing bugs. It may not be a 100% accurate solution, but if a tool could seamlessly integrate ticket management with development code, that was changed to fix a bug, could be accurately tracked.

<comment><USER4> I think the main purpose of these is to catch the buggy code before it even gets checked in, not to assign blame to a developer

</comment></comment></comment></comment></comment></comment><comment><USER6> If you have leverage, you'll get paid what you're worth. If you do not have leverage, you'll find that you've become a factory worker.

Current factory workers, call center reps, and cashiers, among others, have their performance constantly monitored and graded in a way very similar to what you describe.

Take a look at the checker's screen next time you're at Target and you'll see a little grading application at the bottom. At Dominoes, the mobile app lets you plug in and see exactly how quickly the workers put your pizza into the oven. It's not just them; this same trend is going on everywhere. Those feeds are then aggregated to give management the illusion that they know how things are going.

</comment><comment><USER7> I would be interested in a tool that tracked this. The amount of code I write a day is as useful to me as the amount of bugs my code introduces.

Mind you, I would not be interested in comparing my daily code output to someone else's. But for myself working on one project, with the same language and coding methods, over a period of months, it could be useful.

It would also be interesting to track number of books read in a period of time, even though some books may take longer to read than others.

</comment><comment><USER8> I could see PHBs firing the essential coders who write core parts of code because their line count is low, and bug rate is high etc. and keep the codemonkeys cause they write ten login pages a day.

Thus such a business employing this tool would surely tank or become like Microsoft, who need to use binoculars to the competition to define their metrics.</comment>


Live TV on Plex - <AUTHOR> https://www.plex.tv/blog/well-do-it-live/ <comment><USER2> Ha, neat. I just got Plex DVR running a couple days ago.

I have both an OTA tuner and a CableCARD tuner. I don't really watch TV, but Comcast did the thing where it's cheaper to buy TV than to not, and I figured I'd rather have a CableCARD in a HDHomeRun box somewhere on my network instead of a set-top box in my living room.

Plex found my 120-odd cable channels, found all my broadcast channels, and it assembled a cohesive program guide with everything that I could conceivably watch with cover art and program descriptions and everything. I didn't have to register with any other services, or screw around with anything outside Plex itself. It just works™; took maybe 15 minutes to go from "Plex" to "Plex is recording stuff".

My favorite feature is something I hooked up yesterday -- automated commercial removal via a postprocessing script that invokes [https://github.com/erikkaashoek/Comskip](https://github.com/erikkaashoek/Comskip).

Net is that anyone in my household can say "I want to watch this show", Plex will record it, strip ads, and make it available on any device, and it wasn't even a pain to set up. I'm quite happy.

<comment><USER3> How does Plex compare with Kodi?

<comment><USER2> My best advice: try it and see.

Speaking for myself: I switched from Kodi to Plex after finding that Plex requires considerably less effort to achieve greater functionality, and the differences are things that I actually like. Your mileage may vary.

As an example, let's say I want to start watching something on a tablet and finish watching it on a TV. This is something that Kodi and Plex can both do, but let's consider the details.

Kodi needs a file server and a MySQL server, while Plex needs a Plex Media Server. Thus, Kodi talks SMB/NFS + MySQL, while Plex talks HTTPS. If you want to access your stuff remotely, Kodi needs a VPN and suffers from latency, while Plex works fine with port forwarding.

Kodi needs you to configure sharing and database access on each install, usually by editing config files. Plex needs you to log in with your Plex account and point it to the Plex server(s) you want.

Kodi needs you to jailbreak, sideload, compile it yourself, or otherwise jump through hoops if you want to watch on iOS. Plex is a download from the Apple app store.

Kodi streams files to the device and plays them there. Plex does this by default, but Plex Media Server can _also_ transcode media in realtime as needed. This means Plex can stream a 20 mbps source file over the Internet to a 1 mbps cellular connection. Plex can also transparently paper over device limitations, using the server to transcode weird video codecs into something that your device can actually play instead of just failing.

Plex Pass (the for-pay thing) can also take all this a few steps further with Mobile Sync. The server transcodes e.g. a season of a TV show into a mobile- friendly format/resolution/bitrate and copies it to a mobile device. Now you can watch that stuff entirely offline, in addition to streaming whatever you want over the Internet and streaming over your LAN, while still never losing your spot in a series. Kodi… doesn't.

(My current experience with Plex DVR vs my past experience with MythTV suggests I could write something similar for the DVR functions too.)

<comment><USER4> As a contrast:

I generally just want to watch videos on my TV.

I have plex and kodi installed on my shield. Plex requires me to setup an account to get videos from one app to another _on the same device_. It also failed to launch and got stuck in a few loops before I found this out. Trying to set it up just now it asked if I wanted to launch the server, but then couldn't find it. Then when manually launching it from the internal settings menu list of installed apps it said going to the next page would add permissions for storage, but just brought up an error so again I had to go into the internal settings menu list of installed apps and enable the permissions myself. I have already ended up in a situation where it said the server was there, running and connected, but showed me no library and I had to force stop and restart the server. I've also so far not been able to find basic settings like hiding the synopsis of unwatched media.

Last time I tried to set it up was on my NAS, and it consistently tried to re- encode video files which would have played just fine when streaming.

Maybe my experience is rare, but kodi has pretty simply worked and played my files without requiring me to setup anything online. My patience for managing my media has dropped drastically over time.

</comment></comment></comment></comment><comment><USER5> >To summarize, we've just made Plex an even more awesome choice for the aspiring cord-cutter

I think it's a pretty neat feature for people who still find it hard to get away from TV for reasons like the live channels (sports). They can still make use of DVR features and watch stuff on Plex like they don't even have a tv subscription. Except in this case they still get the big bill every month and lovely commercials.

<comment><USER6> Except sports channels are not over the air and thus won't work with this...

<comment><USER7> The Plex DVR works with cable too-- get a HDHomerun Prime and slot in a cablecard.

Of course some cableTV providers (Time-Warner/Spectrum in particular) mark every program with CCI 0x02 "copy-once" DRM, and very few DVRs other than TiVo and Windows Media Center (RIP) allow you to record that due to standard cable company evil.

<comment><USER8> At this point you are more likely to get a response of "What's a cablecard?" or "We don't support those anymore, we have our own great DVRs now" if you ask for one from a cable company.

(I heard that's part of why Microsoft dropped CableCard support in Windows 10 because the cable companies decided to not-so-quietly kill it and have made it almost impossible to get them if you don't already have one and have been slowly dropping support even for those that already have them.)

<comment><USER9> The cable companies can't kill it (the FCC requires them to be made available), and Tivos are still somewhat popular. It's total install base is also likely small enough that it's not worth the effort to kill it.

<comment><USER8> The FCC hasn't really enforced it well, and under the current administration isn't likely to enforce it at all. As I said, it's easy enough for them to play dumb and act like such cards don't exist and Tivo is an inferior option to their overpriced, nowadays "mandatory" DVR options. Who is going to take them to court for playing dumb?

</comment></comment></comment></comment></comment></comment><comment><USER10> This is a great idea and an exciting feature, but I wish it came to a better product. I've run into endless bugs with Chromecast streaming and library management with Plex.

When I google solutions to these problems, I find threads up to two years old and end with Plex staff 1) not responding, or 2) saying, "We'll fix it eventually." And after two years they haven't!

That's not even counting how buggy or nonfunctional most channels are.

So glad I never bought the Plex Pass- wouldn't be right to give these people any more money when their product is so unreliable.

<comment><USER11> It seems a lot of people in this thread are blaming Plex for their own low- quality hardware and/or lack of knowledge.

I have a >10tb collection in Plex and stream to a Nexus Player (among many other devices, some over WAN) with zero issues. The biggest "issue" I've ever faced is that sometimes I need to lower my playback quality to 720p when I'm streaming over WiFi.

So glad I bought the lifetime Plex pass- I am happy to support the folks who made such a reliable and lovely product.

Generally speaking, if you are having issues with a product that is almost universally beloved by tens of thousands of paying customers, the issue is most likely on your end.

edit: The downvoters are going wild in this thread. Anyone who advocates Plex is being buried. For a moment I thought I was back on reddit!

<comment> squeaky-clean > It seems a lot of people in this thread are blaming Plex for their own low- > quality hardware and/or lack of knowledge.

Plex crashes constantly on my Roku. (This may no longer be true, as I haven't touched it in a year because it crashes so much). That's not low quality hardware, it's bad app.

I expect a dedicated hardware device for streaming videos that can stream Netflix, Hulu, Sling, etc, to be able to stream Plex.

<comment><USER11> >Plex crashes constantly on my Roku. (This may no longer be true, as I haven't touched it in a year because it crashes so much). That's not low quality hardware, it's bad app.

The crash could very well be caused by some kind of incompatibility or issue with your server.

I'm sure that you've combed through your event logs on the server to verify this isn't the case, though.

>I expect a dedicated hardware device for streaming videos that can stream Netflix, Hulu, Sling, etc, to be able to stream Plex.

Why would you expect Plex, which plays back content served up by an environment which you control and maintain, to have similar compatibility as Netflix or Hulu, which plays back content served up by a multi-million dollar CDN infrastructure?

That's like saying "I expect my self-hosted WordPress blog to have the same level of reliability and usability as CNN.com" \-- it's unreasonable to put the burden on WordPress/Plex when you are the one who manages the server that the content is served from.

Again: it seems to me that the issue is on your end, and not Plex's, because there are thousands of people who have no issues running Plex with Roku.

</comment></comment></comment></comment><comment><USER12> I just cancelled my TV service from Comcast Xfinity and switched to Google Chromecast Ultra and YouTube TV[1]. So far so good, only missing History and Discovery channels so far. Saved $50 a month.

[1] [https://tv.youtube.com/welcome/](https://tv.youtube.com/welcome/)

</comment><comment><USER13> I've been using an eyeTV on an old MacBook Pro for this functionality but the support for it has gotten terrible since it was sold by Elgato to a Geniatech. I'll have to check this out - too bad it's not compatible w/ the tuner I already have.

</comment><comment><USER14> The original title "#$%@ it! We'll do it live!" is a reference to Bill O'Reilly:

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

<comment><USER15> While I should clarify that I don't care in the slightest, I did find it interesting that they decided to use a Bill O'Reilly quote to title the post, given all of the controversy around him lately. Not that I think it is offensive, I just think it's interesting to consider which companies would do that and which ones wouldn't

<comment><USER16> I no longer associate this with Bill O'Reilly, and I even forgot that it was something he said. It just feels like a very common expression now.

</comment></comment></comment><comment><USER17> This reminds me of Aereo TV. If Aereo TV would have went DVR only though. I wonder if they could have attempted to stay around from their legal issues.

<comment><USER18> I thought Aereo TV did have DVR.

I believe the main difference between them was that Aereo "hosted" the antenna's themselves and sold you the stream, whereas Plex is a "set up yourself" service.

</comment></comment><comment><USER19> As first a MythTV, then SageTV and now NetFlix+Plex user, I have found the evolution of this tech both fascinating and frustrating.

I started a dozen or so years ago with MythTV and a Hauppauge tuner card, in an old PC directly connected to the (one) TV, and using an IR remote to control it. Over time I added another dual tuner card, and had both cable and OTA channels. MythTV had commercial skipping built in, and as I watched basically 100% recorded content, this was the beginning of me never seeing commercials.

Eventually I moved into a bigger house and got married, and we had two TVs. I didn't have a space PC, nor did I want to have an entire PC dedicated to being a client -- and at least at the time, using multiple MythTV clients with a single server was a bit clunky. After seeing the nice setup at a friend's, I jumped to SageTV and started using their media extender boxes (HD300)[1]. As a SageTV client they were better in every way: cheaper, less power, zero maintenance.

The HD300 remote even had programmable "TV power" and volume buttons, so since that was the only device connected it was also the only remote I needed. This feature has never been matched, and since moving away from SageTV I've always had either two remotes or had to program a Logitech Harmony remote.

I even moved the SageTV server PC to a utility room, disconnecting it from the TV and replaced it with an HD300.

SageTV still supported my tuner cards, and though not built-in, there were plugins to do commercial skipping. At some point in there I had also switched to a SiliconDust tuner to get digital channels.

Then, Google bought SageTV [2] and basically killed the core product.

It was around the same time my cable company was encrypting the last of all their digital channels (so my tuner cards were not usable anymore) and I was considering Netflix, so I started looking for a device to replace the HD300 that could still get SageTV content, but also Netflix, YouTube and whatever else.

I went through a bunch of sub-par solutions: BluRay player, Roku box, some other (pre-Android) streaming box and a Chromecast. I even resorted to low- power mini-ITX PC running Windows -- but the only way to get NetFlix was to use a keyboard and mouse. The Chromecast came close, but it was annoying to _have_ to use a phone/laptop to view anything.

Everything just felt like it was getting worse and worse from my old SageTV setup. SageTV couldn't handle NetFlix, and even the SageTV YouTube app broke because YouTube's old API was finally discontinued.

We moved again, and had a child (and our TV viewing went down considerably), so really just use a single TV now. I eventually settled on using an Nvidia Shield (running AndroidTV), and it's better in basically every way except for OTA/cable/DVR stuff -- and so we entirely dropped that. I stuck the Chromecast on the other TV that we just use for the treadmill and can live with that.

There's a certain irony here. There's a lot more available on Digital OTA now (getting around encrypted digital cable), and now the current software that runs on modern hardware is able to do Live TV and DVR again... but is it relevant?

For one, I've spent 12 years without commercials, so without the automatic commercial skip even the DVR isn't that interesting to me. Secondly, I've replaced all my old media sources and/or stopped caring about the ones I couldn't replace.

It seems to me that DVR software, the client hardware and online media software/services have all had their own peaks and valleys over the years, and they've never all peaked at the same time.

The combination of HD300-style client hardware, with AndroidTV's online content apps, SageTV's LiveTV/DVR/commercial skipping, and the unencrypted digital cable of ~2010 would be my ideal -- I just don't ever see it happening ever again.

[1] [http://www.geektonic.com/2010/08/sagetv-hd300-hd-theater- gee...](http://www.geektonic.com/2010/08/sagetv-hd300-hd-theater- geektonic.html) [2] [https://www.google.com/search?q=google+buys+sagetv&tbm=nws](https://www.google.com/search?q=google+buys+sagetv&tbm=nws)

</comment><comment><USER20> Does anyone know where I can find a list of what channels I would be able to get? Is it dependent on what state you're in?

<comment><USER21> It works with a TV tuner, so it's dependent on the channels broadcasting in your area. You can use TVFool[0] to see estimated channel strength in your specific location.

[0] [http://tvfool.com/index.php?option=com_wrapper&Itemid=29](http://tvfool.com/index.php?option=com_wrapper&Itemid=29)

<comment><USER20> Thank you

</comment></comment></comment><comment><USER22> I was considering PlexPass yesterday and today I am definitely getting lifetime membership...

</comment><comment><USER23> I wish it had support for Tablo!

</comment><comment><USER24> I've been using a Ceton Infinitv tuner with WMC and ServerWMC for the last 5 years. I use Kodi as a PVR interface and my interface for TV shows/ Movies on my file server. I don't see any advantage to Plex, you need to pay for the service and it's a PIA to setup and configure. Once configured, don't plan on using the computer you setup the Media server on as it is always busy/ bogged down scanning files and transcoding video.

<comment><USER25> > you need to pay for the service

No, you don't. Source: I've had an account for years and am not paying anything.

> it's a PIA to setup and configure.

You add folders to a TV and Movies collection once. With Kodi, you're doing it N times, where N is the number of Kodi installs in your house.

> Once configured, don't plan on using the computer you setup the Media server > on as it is always busy/ bogged down scanning files and transcoding video

As others have stated, this is not the case. My Plex server is an old Core2Duo MacBook Pro that also runs virtual machines.

<comment><USER24> >No, you don't. Source: I've had an account for years and am not paying anything.

From [https://www.plex.tv/blog/well-do-it- live/](https://www.plex.tv/blog/well-do-it-live/) Remember, Plex Live TV and DVR is a Plex Pass only feature, and is immediately available for Plex Pass users. You can find out more info about Plex Live TV and DVR here as well.

>You add folders to a TV and Movies collection once. With Kodi, you're doing it N times, where N is the number of Kodi installs in your house.

Never had any success in Plex detecting all my content properly. It's a luck of the draw if you want your content tagged appropriately. I use a MySQL database to store my media library, all I need to do is point Kodi in that direction and everything is synchronized.

> As others have stated, this is not the case. My Plex server is an old > Core2Duo MacBook Pro that also runs virtual machines.

You all must have a small media library

<comment><USER25> > Remember, Plex Live TV and DVR is a Plex Pass only feature

Apologies, but it didn't seem like you were talking about that single feature when you said "you need to pay for the service".

> all I need to do is point Kodi in that direction

Which is great, but again, with Plex you don't even need to point. It just finds the server on the network.

> Never had any success in Plex detecting all my content properly

That's definitely annoying. But I built a Plex Channel for my downloads, and it names files according to what Plex expects.

> You all must have a small media library

~4TB of networked storage, but yeah, maybe that's small?</comment></comment></comment></comment>


Watch Do – An automation tool to perform actions when files change - <AUTHOR> https://github.com/vimist/watch-do <comment><USER2> I started off wanting to say something about how this compares to something like puppet, then I read this in the readme file:

 _Run watch-do --help for more information on what all of the different command line switches do._

A trend I'm seeing more of in Github repos, but I need to clone and then compile code to effectively get a man page that should have been in the readme _to begin with_? Stop this.</comment>


Facebook: You will conform - <AUTHOR> http://www.nytimes.com/2016/05/22/opinion/sunday/how-facebook-warps-our-worlds.html?smprod=nytcore-iphone&smid=nytcore-iphone-share <comment><USER2> It won't let me read the article until I log in with Facebook.

<comment><USER3> Screenshot: [http://imgur.com/a/6VSP3](http://imgur.com/a/6VSP3)</comment></comment>