Ask HN: Why Apple Rosetta can not emulate kernel extensions - <AUTHOR> As we can see from the Apple Rosetta documentation, the Rosetta layer can not emulate the x86 kernel extensions. I am trying to understand why this is the case. If someone knows the answer to this, it would be greatly appreciated.<p>Link to Rosetta [documentation](https://developer.apple.com/documentation/apple_silicon/about_the_rosetta_translation_environment) <comment><USER2> The rosetta documentation and one of the talks yesterday said the a rosetta process can't be mixed architectures , e.g it's either all native, or all rosetta.

Obviously the kernel has to take the native path :D

</comment><comment><USER3> Kernel extensions are deprecated. Perhaps not supporting them was a design decision rather than some tech limitation?

That or rosetta is only meant for userspace.

</comment><comment><USER4> out with the old, in with the New... Apple Extensions

"We wanted to redefine how developers approach and consider their extensions to the macOS Kernel. Introducing Apple Extensions: while beautiful, simple and light, they are extremely flexible, in ways that go far beyond traditional extensions. We knew we could keep it lighter than ever, while extending our state of the art extensions in new and more powerful ways. We reduced power consumption 62.3% based on our new stochastic power model, while increasing the number of supported colors to 16 quintillion (far greater than the range of a human eye). Our newest integration in the macOS Kernel, Quantum Core, perceives the subtle changes in mood in order to promote well-being and happiness, while deleting data that promotes unhappiness."</comment>


Space hotel to give rich a thrill that's out of this world - <AUTHOR> http://www.guardian.co.uk/science/2011/aug/27/space-hotel-rich-thrill-world <comment><USER2> Seven people. Trapped, high above earth. This is either A) the setting for a B-rated horror flick, or B) a really good idea, or C) a futile attempt considering that the Russians still have issues with their program(s) in terms of reliability.</comment>


Volkswagen's future of connected, shareable cars - <AUTHOR> https://news.microsoft.com/europe/features/beyond-automation-volkswagens-future-of-connected-shareable-cars/ <comment><USER2> And what happens to you when the auth to the server stops or is down for hours?? Do you get locked out? Stranded? What about a BSOD? What happens when you need to travel and you have no coverage? I like tech, but when MS is evolved I will not put my trust in them.</comment>


Which Is the Top Tech Company to Work For? - <AUTHOR> http://gigaom.com/2009/12/15/which-top-tech-company-to-work-for-not-google/

<comment><USER2> These lists are useless. There is no metric on how they pick these companies, plus I think that most of us working in worst companies than those listed on Lowest-Rated tech companies.

<comment><USER3> The results are in line with other studies though. National Instruments, Google, and Apple all rank in the Fortune 100 best places to work every year. It's not surprising that they top this list as well.

</comment></comment><comment><USER4> Wow, NVIDIA is on the same list as Infosys, Nortel, and Perot Systems?

I find it hard to imagine that a company with such a great developer relations department (and a pretty strong stock price) would be so horrible to work at. I never heard any major complaints from my friends at post-merger ATI, and they were in a much tougher situation.

</comment><comment><USER5> If you take a look at the top ten worst list Perot Systems was ninth and Dell was at the bottom.

Seeing as how Dell was acquiring Perot a wag suggested that it was a good culture fit between the company's ;<)

</comment><comment><USER6> Juniper ? I looked at the reviews for Cisco. I guess that's why people are leaving for Juniper.

</comment><comment><USER7> I covered another Glassdoor's list a few weeks back. Their methodology is based on averaging anonymous user-submitted reviews and scores. It's as scientific as zoning a district through Yelp.

</comment><comment><USER8> For any company larger than 20 people, it matters more what group you are in than what company you enter. I've met miserable and extremely happy people from/at Google. If you end up as Peter Norvig's protege, I imagine it's pretty awesome. If you end up in the wrong group and you're not able to move, it probably sucks.

If you're under 35, stock performance and pay are not nearly as relevant as what you'll learn and the quality of people you'll work with, unless you hit an economic home run (e.g. enter the next Google on the ground floor).</comment>


A new cofounder has been offered a job with Google. Can Google own our software even if he works on it after hours? (he hasn't worked on it yet) - <AUTHOR>

<comment><USER2> My advices for having experienced a similar situation...

1° make sure you can prove what part of the software was there before the other founder joined google. This will put a clear limit to what google might claim as ownership. Dito for its contributions while he is hired by google.

2° inform (in a provable way) google immediately of the situation and ask them to clarify the issue with you ASAP.

3° check the laws in play by yourself. Don't rely solely on what google may tell you or on lawyer advises. It cost some effort, but as a future employer you better know the laws yourself on this topic.

As I'm in France the law is published on the web. It is thus easier to do. Don't know what the situation is in the US and your state. I developped an IT system during my weekends and I had to sort the IP issue with my employer. I not only managed to sort it out without paying anything more than one registerred letter, but I also managed to preserve a very good relation with my employer, which I value most. If both play fair and honnest, this comes out naturally. Beware that there are many traps you might be caught in. But don't be paranoid, there are traps for your employer too. It is really worth the effort to learn the IP laws.

<comment><USER2> Do not simply trust what is stated on the contract. In France the law states explicitely that only more favorable clause for the inventor (employee) are to be taken in account. A contract that would state that the employer owns whatever the employee invents beside its work time would thus be abusive and invalid. You really should check the law and not simply the contract.

If you clarify things with google, make sure you get a definitive conclusion that will be valid even if the google employed founder changes states or country, since law applyable to him may change.

<comment><AUTHOR> You have offered wise advice - thanks!

Though, I am surprised because in America, many people at some point, have worked at two or even threee jobs during the week to make income.

So theoretically, if he were to get a consulting job with Microsoft during the weekends, will Google own a piece of Microsoft? That would be interesting to watch :)

</comment></comment></comment><comment><USER3> The answer is yes. Apparently (as you already know) Google's employee intellectual property agreements say that they have the rights to anything developed while employed by Google. Read all the fine print and speak to a lawyer.

The short answer seems to be yes though.

</comment><comment><AUTHOR> He said that as per his employee agreement. They can own anything he works on, even after hours and on his own computer.

(IMHO could potentially be a useful tool for youtube. <http://juwo.com)>

<comment><USER4> Important question: what state are you in? California has some limitations (not the strictest, but some) on what employers can lay claim to. Still, yeesh.

<comment><AUTHOR> He will be in California, I am in Kansas.

</comment></comment></comment><comment><USER5> They ONLY CAN own anything they know about :)

<comment><USER2> this is a very dangerous strategy. Soon or later they will know about it. At that point they could claim you tried to cheat on them, etc. In front of a judge you would have a hard time to justify such strategy. At best you may say you didn't know, but how could you prove this ? Not informing your employer and clarify the issue with them is definitely a bad strategy.

It is like walking with an armed bomb in your pocket where you could have defused it by clarifying the issue with your employer. Beside you now have the advantage of the first move. Profit from it a wisely.

So before telling anything your employer, better learn how to do it, what you are required to tell your employer, and what you can keep for your self. There are things you can't undo.

<comment><AUTHOR> Yes, you are right.

</comment></comment></comment><comment><USER6> Why ask us? Ask an employment lawyer.

<comment><AUTHOR> Ok, I am not asking you :) Is on-topic so I am asking others in the newsgroup who may know.</comment></comment>


Chrome OS KVM - A component written in Rust - <AUTHOR> https://chromium.googlesource.com/chromiumos/platform/crosvm/ <comment><USER2> There is a somewhat expanded README that has yet to be reviewed and checked in here: [https://chromium.googlesource.com/chromiumos/platform/crosvm...](https://chromium.googlesource.com/chromiumos/platform/crosvm/+/837b59f2d97b005ef84ac36efa97530c1bbf2a79/README.md)

<comment><USER3> Solo5/ukvm unikernel monitor co-author here: I've been thinking about rewriting ukvm in Rust off and on for some time now, your work provides a proof point that it can be done. I'll be following it with interest.

Aside: I really like what the ChromeOS team has done over the years to advance the state of OS security for consumers, keep up the good work!

</comment></comment><comment><USER4> Isn't stuff like that exactly counteracting Rusts raison d'etre?

> // This is safe; nothing else will use or hold onto the raw sock fd.

> Ok(unsafe { net::UdpSocket::from_raw_fd(sock) })

[https://chromium.googlesource.com/chromiumos/platform/crosvm...](https://chromium.googlesource.com/chromiumos/platform/crosvm/+/6f366b54604e4012b43822d5dc2afe7d1616287d/net_util/src/lib.rs#55)

<comment><USER5> That's low-level code implementing a wrapper around the underlying libc socket API; there's no alternative to unsafe blocks there as it wraps a legacy API written in C.

The "this is safe" comment is just a (very verbose) explanation as to why the wrapper code is doing the correct thing. Notably, there's another similar comment just above it. In fact, looking through the file if anything I'm quite impressed at how carefully it's written.

<comment><USER2> Author here: one of the policies we tried to stick to when writing unsafe code was to document each case. It can be tedious but it encourages having less unsafe code and makes the author really think about if this unsafe code is really meeting the same guarantees as safe Rust according to [https://doc.rust-lang.org/nomicon/meet-safe-and- unsafe.html](https://doc.rust-lang.org/nomicon/meet-safe-and-unsafe.html)

<comment><USER6> The line above has this:

        // This is safe since we check the return value.
        let sock = unsafe { libc::socket(libc::AF_INET, libc::SOCK_DGRAM, 0) };
        if sock < 0 {
            return Err(Error::CreateSocket(IoError::last_os_error()));
        }

I think in this case it would be better to put the return value check within the unsafe block, this way the unsafety does not "leak out" of the block, so to speak, so it is easier to audit. Of course in such a trivial case it does not matter much.

<comment><USER7> I think it's best to keep unsafe blocks as small as possible. Within an unsafe block there is undefined behavior, so you want to get out of there ASAP.

Just my opinion.

<comment><USER8> Personally I disagree, but mostly because I think the `unsafe` model Rust has is worth much less then people give it credit for.

For one, there is the current problems of documentation - it's not documented what features/invariants the optimizer and language actually require to be true, and the nitty gritty details are very fuzzy, so switching from `unsafe` to `safe` is error prone and you're going to get it wrong. The more you do it, the more likely it is your code will be broken in the future when you find out something you thought was OK isn't actually something the Rust devs like or isn't something they wanted you doing. If you do more of the `unsafe` work in one big `unsafe` block rather then jumping in and out, you're less likely to have issues in the future because there's less points where you have to ensure all the Rust invariants are met.

But the bigger detail for me is that, even if the above problem is fixed, `unsafe` doesn't really denote the areas we would consider the `unsafe` areas anyway, so "getting out of there ASAP" is not always a helpful mindset and can easily be counter-productive and result in you marking things `safe` when they're not actually `safe`. For example, dereferencing a pointer is `unsafe`, but doing pointer-arithmetic is `safe`. So you can easily just wrap the dereference in an `unsafe` block and your technically good to go (You can even wrap it in a pretty interface, like I've seen people do). But all the spots where you do pointer-arithmetic can easily introduce bugs into your `unsafe` code, making it hardly any better than C code that could have the same problem (Half the point of using Rust is to avoid bugs from unchecked pointer- arithmetic!).

My point being, just because your `unsafe` blocks are small doesn't tell you anything about the correctness of them, and it likely means they rely on outside information to be correct. And if that is the case, then that outside code is effectively just as dangerous as your `unsafe` code. This may be obvious to you, and I apologize if it is, but this is an issue/misconception I see a lot. IMO, you should mark anything `unsafe` if using it within the bounds of `safe` Rust could potentially cause `unsafe` code to fail, even if the code itself is completely `safe` code. Only if you have an interface the meets all the invariants that Rust requires should you allow it to be considered `safe`.

</comment></comment></comment></comment></comment></comment><comment><USER9> Is Rust an officially sanctioned language at Google?

<comment><USER2> Author here: Rust is not officially sanctioned at Google, but there are pockets of folks using it here. The trick with using Rust in this component was convincing my coworkers that no other language was right for job, which I believe to be the case in this instance.

That being said, there was a ton of work getting Rust to play nice within the Chrome OS build environment. The Rust folks have been super helpful in answering my questions though.

<comment><USER10> > _The trick with using Rust in this component was convincing my coworkers > that no other language was right for job, which I believe to be the case in > this instance._

I ran into a similar use case in one of my own projects—a vobsub subtitle decoder, which parses complicated binary data, and which I someday want to run as web service. So obviously, I want to ensure that there are no vulnerabilities in my code.

I wrote the code in Rust, and then I used 'cargo fuzz' to try and find vulnerabilities. After running a billion(!) fuzz iterations, I found 5 bugs (see the 'vobsub' section of the trophy case for a list [https://github.com/rust-fuzz/trophy-case](https://github.com/rust- fuzz/trophy-case)).

Happily, not _one_ of those bugs could actually be escalated into an actual exploit. In each case, Rust's various runtime checks successfully caught the problem and turned it into a controlled panic. (In practice, this would restart the web server cleanly.)

So my takeaway from this was that whenever I want a language (1) with no GC, but (2) which I can trust in a security-critical context, Rust is an excellent choice. The fact that I can statically link Linux binaries (like with Go) is a nice plus.

<comment><USER11> > Happily, not one of those bugs could actually be escalated into an actual > exploit. In each case, Rust's various runtime checks successfully caught the > problem and turned it into a controlled panic.

This has been more or less our experience with fuzzing rust code in firefox too, fwiw. Fuzzing found a lot of panics (and debug assertions / "safe" overflow assertions). In one case it actually found a bug that had been under the radar in the analogous Gecko code for around a decade.

</comment></comment></comment></comment><comment><USER12> How does this square with rumors from a few days ago that the Pixelbook will be able to run virtualized Windows (or Linux)? I do not understand the implication of "No actual hardware is emulated."

If the Pixelbook _can_ run Window or Linux in a VM, then its price slides a little closer towards justifiable.

<comment><USER13> At least what exists today appears to me aimed at running Linux (or other KVM- aware guests, maybe BSD). I have only briefly read the code.

This may be used as part of running Android apps on ChromeOS in more secure sandboxes, but the Wayland integration suggests to me this might be for running traditional Linux desktop applications on ChromeOS.

I think there's a good chance we'll find out something at the rumored upcoming Pixelbook launch.

</comment></comment><comment><USER14> Is this a new component for Chrome OS? Would this be a replacement for a project like Crouton or is something like this already being leveraged by that project?

<comment><USER15> Crouton is just a chroot to some linux distro. It doesn't use any sort of virtualization.

<comment><USER16> Could this be a sanctioned way to run linux on a Chromebook w/o dev mode?

<comment><USER14> The README contains commands that seem to require access to the developer-mode shell. Perhaps in the future though.

</comment></comment></comment></comment><comment><USER17> This is huge for chromeOS. Hope we learn more next week from Google on the 4th.

</comment><comment><USER18> Whether you want Rust to go or, Go to rust

<comment><USER19> I see a place for both of them in my toolbox.

Go still makes network code and certain models of concurrency stupidly simple.

Rust is more of a replacement for C/C++ for me.

<comment><USER20> Go confirmed for me what I suspected: which is that I hate hate _hate_ the futures style of async programming.

I'm on the lookout for channels and green-threads in Rust (so I can basically write borrow-checked Go-style code in Rust).

<comment><USER21> Channels are there but you have to use an API for them. Green threads were removed a few years ago, though there are implementations of co-routines, etc. as crates.

Rust is getting an unstable form of async and await as macros/syntax extensions, and there are RFCs discussing adding them to the language in some form. This would still be a wrapper for futures, but a more ergonomic way of using them.

<comment><USER22> I'm not entirely convinced that async annotations can't be completely elided. I think that any call stack that touches a sync/async API could have the decision of which to use bubbled up to a top level function via generics.

</comment></comment></comment></comment></comment><comment><USER23> The Fuchsia OS microkernel should be rewritten in Rust, too, especially if it's going to take another 5 years before we even see it in a commercial product. If Google wants to make a modern new OS that will help it avoid many of the existing security problems it needs to keep fixing with Android/Chrome OS right now, then it should do it right and avoid collecting a lot of "security debt" down the road because of unsafe code/poor initial security architecture decisions.

<comment><USER24> They should rewrite Go in Rust! That way we can avoid all this Go vs Rust discussions ;)

Problem with your idea, is that low level kernel will use a lot of unsafe Rust, which will lose lot of benefits.

<comment><USER10> > _Problem with your idea, is that low level kernel will use a lot of unsafe > Rust, which will lose lot of benefits._

I've actually worked on a toy kernel in Rust (using the excellent tutorial at [https://os.phil-opp.com/](https://os.phil-opp.com/)), and it turns out that, yes, you obviously need to use unsafe code to talk to the actual hardware. But in most cases, you can encapsulate the low-level hardware inside a safe API:

[https://github.com/emk/toyos- rs/blob/fdc5fb8cc8152a63d1b6c85...](https://github.com/emk/toyos- rs/blob/fdc5fb8cc8152a63d1b6c85cd357737e6b1aebb5/crates/cpuio/src/lib.rs#L43-L75)

In this example, only I/O port _creation_ is an unsafe API, because you need to specify a memory address to read and write. But once the port is created (pointed at an appropriate address!), it's perfectly safe to _use_.

So, yes, kernel-space Rust will use "unsafe" far more often than regular Rust code. But you can still make at least 80% of your code safe, and maybe much more. And the remaining "unsafe" APIs act as a useful warning to pay attention to what you're doing. Plus, Rust is a really nice language to write kernel code in, anyway.

<comment><USER25> >But in most cases, you can encapsulate the low-level hardware inside a safe API

I'm probably missing something obvious. But isn't that true for most languages?

<comment><USER24> Not really. I mean let's say you program in C, how will you enforce some pointer is never null? In Rust you can say _& Object_ and that reference is never null (modulo any unsafe shenanigans).

<comment><USER26> Null is not really the most pertinent example in this context - at least you get a segfault. What is more important is that in C or C++ (even C++17), it is trivially easy to produce buffer overruns, use after frees, dangling pointers, invalidated iterators, data races etc. That is the unsafety that we are talking about here. Opt-in nullability via Option<T> is nice to have though.

<comment><USER24> Yeah, I went with familiarity/simplicity in that example.

My point was similar C/C++ don't have a safe subset.

<comment><USER27> Not a safe subset anyone would want to use at least. You could just not use pointers in your code and you'd have memory safety.

<comment><USER28> Your code, or any of the code it calls; iterator invalidation, for example, wouldn't force you to use pointers directly, but can still cause memory unsafety.</comment></comment></comment></comment></comment></comment></comment></comment></comment>


Octopart Traffic - <AUTHOR> http://octopart.com/blog/get?y=2008&m=3&d=5

<comment><USER2> This is the magic pattern that means a startup is probably going to make it.

Incidentally, while 10k uniques a day is not a huge number for the average site, it is for this site. These visitors are per capita about as valuable as you can get. They're not just checking out the latest pictures on their friend's profile; they're all looking for electronic parts.

<comment><USER3> We did some sourcing of hardware parts in a previous startup, so I know the field a little. I think octopart will survive simply because they solve a problem that hasn't been solved well before. Sourcing is a pain...

I'm glad to see these stats, and I think they will definitely make it.

</comment></comment><comment><USER4> Congrats guys - traffic graph is fabulous!

</comment><comment><USER5> Alexas graphs really do look nothing like graphs provided by sites :/ who to trust!...

[http://www.alexa.com/data/details/traffic_details/octopart.c...](http://www.alexa.com/data/details/traffic_details/octopart.com)

Seriously, cool graph + wd :)

<comment><USER6> Alexa is nuts. It's only useful as a _comparison_ tool for sites which are _really_ popular. Otherwise, their extrapolations just don't make sense statistically.

<comment><USER5> It'd be nice if they showed the error bars on the graphs. I expect they'd be pretty massive unless as you say the site is really up in the top ranks.

<comment><USER7> Though this probably sounds pedantic, it's not intended to be. How would one define an error-bar for alexa's report on octopart?

Isn't the whole problem with alexa, in this case, that the cross-section alexa trackees, is not necessarily the cross-section of people who would be interested in octopart?

<comment><USER5> Yes but surely alexa knows how many alexa trackees it has. It knows how much it's scaling that up to make an estimate of the real population.

For example, a very big site, you have enough trackees to make a reasonably statistically valid sample. But smaller sites, you don't see as many trackees, so you set the error bars higher.

Sure, I agree that the system is flawed anyway, seeing as how I don't know a single person who installs the alexa toolbar, and amongst techie sites it's usage is probably 0.

<comment><USER8> A more useful depiction of the error would be to somehow calculate the bias in the Alexa population (my guess, tech investors are the only segment of the population using the Alexa toolbar, which is incredibly ironic).

Huge error bars on a near zero estimate don't mean a whole lot except that the experiment producing the data is flawed.

<comment><USER9> The biggest niche population of Alexa toolbar users is probably internet marketers.

<comment><USER8> Also incredibly ironic. These people are just seeing what they want to see and creating buzz within their own community rather than measuring something useful.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER10> I use the hell out of your site and I am stoked that it sounds like you will be around for some time. Congratulations.

<comment><AUTHOR> awesome! i'd love to hear what you think we should do with the site. (email@example.com)

</comment></comment><comment><USER11> This may be some what unrelated... but www.mcmaster.com is the best website I've ever seen or used for sourcing and buying mechanical or industrial products. Maybe it's worth considering that kind of model, ie more like craigslist, for octopart's homepage vs the google style.

<comment><AUTHOR> we really like mcmaster-carr's website as well. eventually octopart's website will be closer to that. first we have to aggregate a lot of technical data though. technical data is hard to come by because it is held tightly by a few companies who license it for $100K's. this is one of the problems we are trying to solve.

</comment></comment><comment><USER12> congrats!! good to know you are sticking it out and doing well.

<comment><AUTHOR> thanks! it was definitely difficult at points so we're really glad we stuck with it. paul's essay is right on.

</comment></comment><comment><USER13> Congrats fellas! - i'm curious, can you say who your top referring sites are? Does Google dominate 80% of it? Do you spend lots of cycles on SEO? I understand if you aren't comfortable answering these questions in a public forum.

</comment><comment><USER14> Nice! I like it that is not the typical social network. It really solves a real world need saving time and money.

</comment><comment> daniel-cussen By my estimates, assuming $20 per user (which really varies), that's over $200,000! Congrats!

</comment><comment><USER15> Great idea. I will wish you luck, but you do not seem to need it anymore.

</comment><comment><USER16> Cause/effect?

That is an awesome site.

</comment><comment><USER6> Awesome! Keep it up, dudes...</comment>


Show HN: Promote your brand on Twitter through gamification - <AUTHOR> http://tweet-a-lot.com/

<comment><AUTHOR> Tweet-a-lot is an exciting new social media web application which allows people to create competitions to get people tweeting, a lot!

The outcome is that organisations using the service are more visible on social media. It is a great marketing tool to get people talking about your brand.

Tweet-a-lot works through gamification of twitter, getting people incredibly competitive.

Users receive points for different types of Twitter posts, and a score board is displayed on the tweet-a-lot competition page. Users have to keep tweeting to stay at the top of the score board. As simple as that.

Everything runs in real-time, players are scored live and there is a twitter stream to watch the game.

Tweet-a-lot includes automatic player discovery. Users who are unaware of the competition are drawn into playing. When they tweet with the competition hashtag, they receive @reply's with their score and URL to the competition page.

The best part? Your users do not need to install anything or even register to play; they can play using their favourite Twitter client.

You can join the example competition by tweeting with #tweetalotapp hastag. <http://tweet-a-lot.com/36783-sample></comment>


This is the best explanation of gerrymandering you will ever see - <AUTHOR> https://www.washingtonpost.com/news/wonk/wp/2015/03/01/this-is-the-best-explanation-of-gerrymandering-you-will-ever-see/?utm_term=.e97b685de285 <comment><USER3> If people are even thinking about gerrymandering, then it's apparent that the system of having one representative elected by each district no longer serves its supposed purpose of making sure each "community" is represented.

In that case, there's no reason not to switch to some more fairly representative system, for which there are various possibilities but PR systems are the best known ([https://en.wikipedia.org/wiki/Proportional_representation](https://en.wikipedia.org/wiki/Proportional_representation)).

<comment><USER4> Those can have some serious problems in practice too.

I spent a number of years in Italy, and several come to mind that I saw there:

* Representatives are beholden to the party, not to some local area.

* Smaller parties can play 'kingmaker'.

<comment><USER5> Yes, and yes.

It has some real advantages (it's nice being able to vote for someone that actually agrees with you AND not have your vote be wasted), but my experience in New Zealand is that:

1\. It enhances the power of parties and thus increases partisanship

2\. It allows small parties to play kingmaker. In the NZ case, the perennial kingmaker party is corrupt and virulently nativist.

If, hypothetically, you were concerned about the partisanship, corruption, and nativist policies of current American politics, PR may not be the panacea you hope. I think it was quite unlikely for the American system to yield Trump as president (we just got very unlucky) but it would be quite likely for a PR system to yield Trump as a kingmaker with a vastly outsize influence on the policy of the resultant government. That's not obviously better, on balance.

<comment><USER3> > _Trump as a kingmaker with a vastly outsize influence_

Hmm, now you mention it, didn't something like that happen to the Weimar Republic?

<comment><USER6> Arguably, it's what failed to happen; Hitler ended up leading a minority government with the largest party (well, tied with the Communists), no one acted as kingmaker with a small party putting some other coalition over the top extracting concessions for that boost.

There was kingmaking of a more personal kind going on behind the scenes, but not of the minor-party-exercises outsized influence kind.

</comment></comment></comment></comment></comment><comment><USER7> Obviously the title is hyperbole, but in order to be the "best explanation" I'd like to see some of the reasonable arguments that are used to justify "non-compact, non-fair" districts.

Maybe that's because I remember reading this article (TBF, it is linked), particularly the section about "community of interest": [https://www.washingtonpost.com/news/wonk/wp/2014/06/03/this-...](https://www.washingtonpost.com/news/wonk/wp/2014/06/03/this- computer-programmer-solved-gerrymandering-in-his-spare-time/)

Essentially the graphic shows how compactness can be unfair, but doesn't tell us what reasonable explanations can be used for non-compact districts.

<comment><USER8> Even the word "fair" implies the belief that a state's district breakdown should track with the state's population breakdown. This is not necessarily axiomatic. If you want competitive districts with a smaller incumbency advantage, then maybe you don't want that. IOW it depends on how you define "fair".

</comment></comment><comment><USER9> Fun fact: "gerrymander" is a portmanteau of the name "Gerry" and "salamander." Massachusetts Governor Elbridge Gerry signed the state's initial electoral districts into law (which his party had drawn in their favor), and one of the districts looked like a salamander.

<comment><USER10> Compared to the utterly indefensible PA-7, the salamander district looks like a model of propriety ( [http://cache.boston.com/bonzai- fba/Globe_Graphic/2007/05/31/...](http://cache.boston.com/bonzai- fba/Globe_Graphic/2007/05/31/1180605109_1489-1.jpg) )

<comment><USER8> Can PA-7 be deemed indefensible for reasons other than how it looks? Not a leading question, I wonder if there are statistical data about it. You could argue that if you drew proportional representation as districts (basically: pointillism) it'd make PA-7 look wonderful in comparison.

<comment><USER10> It is abundantly clear that that district has been drawn in the way it has for nakedly political reasons, and not to group together contiguous communities of interest.

 _You could argue that if you drew proportional representation as districts (basically: pointillism) it 'd make PA-7 look wonderful in comparison._

If you argued that, you'd be wrong. Proportional representation districts should group together communities of interest in exactly the same way as single-member districts - the only difference is that PR districts are represented by more than one representative.

<comment><USER8> Sure, if you just completely redefine my point. But if you take a PR "district", like a state, with multiple representatives, and imagine them a a collection of single-representative districts, they're about as far from contiguous as you get.

I'm not arguing PA-7 isn't a problem. But I don't think "looks" is a good standard. What's better is something like the standards being argued in the current Wisconsin case that I think might still be going to the Supreme Court.

</comment></comment></comment></comment></comment><comment><USER11> It won't solve the problem of "how" to redistrict, but as far as finding out if gerrymandering IS happening it seems like there are good ideas out there such as the "efficiency gap" used in a recent Wisconsin case.

[https://www.nytimes.com/2016/11/21/us/wisconsin- redistrictin...](https://www.nytimes.com/2016/11/21/us/wisconsin- redistricting-found-to-unfairly-favor-republicans.html)

</comment><comment><USER12> Even "compact, fair" districts can lead to outcomes that one party, at least, would find unfair.

For instance, in the US, Democratic voters tend to be clustered in cities, so urban congressional districts (even "compact, fair" ones) vote overwhelmingly for Democrats. This means that there a lot of "wasted" Democratic votes contributing to landslide victories in urban districts, instead of bringing about Democratic victories elsewhere.

Even if the Republicans have only a narrow majority in the suburban and rural districts, and are an overall minority of voters in the state, they are able to win the majority of congressional districts.

See this 2014 article (sorry, behind NYTimes paywall) for more details: [https://www.nytimes.com/2014/01/26/opinion/sunday/its-the- ge...](https://www.nytimes.com/2014/01/26/opinion/sunday/its-the-geography- stupid.html)

<comment><USER6> Right. Any method of drawing single-member FPTP districts will, unless voters of different persuasions are perfectly uniformly distributed, will:

(1) Produce disproportionate advantage for some party, and/or

(2) Produce some number of safe seats where the general election is a forgone conclusion and the mechanism that selects candidates decides the winner in practice.

You can select methods to choose which of these effects predominate, and which party benefits from either disproportionate representation or safe seats (there's a certain tension -- you get disproportionate representation for your party by giving the other party super safe seats), but you can't avoid them unless you throw out FPTP, and really single-member independent districts entirely.

</comment></comment><comment><USER8> There isn't really yet an operational definition of gerrymandering. Such that, if x conditions exist, it's gerrymandering, and if they don't, it's not. You can't do it without pointing at results and going, "Well that's clearly unfair."

I believe there _is_ a recent legal case that is still in the courts where they are trying to arrive at a legal standard. Something about the percentage of unrepresented voters in a state's average district. So there might be progress on that point.

But even politicians that complain against gerrymandering are inconsistent. Some politicians complain about "safe" districts not being competitive enough, and also complain that house elections don't mirror the popular vote breakdown enough. Those are actually on opposite sides of the loose tradeoff.

As you move towards your house results mirroring the popular vote (like if today's House were 48.2% Democratic and 46.1% Republican), then you move towards less competitive districts (except for primaries), like the "perfect representation" example in the article. Because, in order to guarantee that your state's district breakdown will mirror your state's vote breakdown, you basically would want all Republican-voting people in their districts, and all Democratic-voting people in their own.

So, what do you want? Do you want a House that is overall representative of the national popular vote? Do you want districts where the maximum number of citizens are represented? Do you want competitive districts? Do you want compact, contiguous districts? Do you want districts that respect traditional neighborhood boundaries, district history, and geography? Because they all imply different districting strategies. And saying "let's just let a computer split-line it!" means explicitly rejecting some of these principles - <USER2> can't get past making choices about tradeoffs, because it is inherently messy.

</comment><comment><USER13> another explanation of gerrymandering by CGP grey: [https://www.youtube.com/watch?v=Mky11UJb9AY](https://www.youtube.com/watch?v=Mky11UJb9AY)

</comment><comment><USER14> This video was really simple to understand too: [https://www.youtube.com/watch?v=Mky11UJb9AY](https://www.youtube.com/watch?v=Mky11UJb9AY)

</comment><comment><USER15> Gerrymandering results in more competitive districts. So it will be a fact a life because every party wants more.

From the point of view of actual Representation it does not make sense. For example, my former Congresswomen was personally heartbroken to lose the town of Bowling Green, in Ohio. Her new district isn't really representative of any logical organization of people, so its hard to be responsive to the needs of the people.

I think my preference is that a computer cut it in a way that considers the geography and land topology and types of communities whether cities or towns - with the goal of being as square as possible.

<comment><USER6> > Gerrymandering results in more competitive districts.

Only when the goal of gerrymandering is to maximize competitive districts, but it's usually not; it's usually to maximize safe districts and districts in which one party has an electoral advantage. (Also, frequently, it's designed to create particular benefits or problems for particular incumbents.)

</comment></comment><comment><USER16> [2015] [https://news.ycombinator.com/item?id=9235619](https://news.ycombinator.com/item?id=9235619)

</comment><comment><USER17> While I like the article, do modern newspapers have editors? "But the only won 5 out of 18 House seats".

</comment><comment><USER18> On the subject of districting, the ideal is shortest splitline [1]. Combine this with Approval or Score voting and I'd be a very happy voter.

[1] [http://scorevoting.net/SplitLR.html](http://scorevoting.net/SplitLR.html)

<comment><USER19> While I am no friend of gerrymandering, arguing that there is a geographic ideal is disingenuous: Voters clump up, and thus any automated mechanism that just looks at geography will be skewed, and, in the US today, Very often skewed towards republicans compared to the ratio of voters in a state.

There is no such thing as a fair way to assign representatives without making some judgement call on what fair means. If you prefer short split line, that's because of your very personal preferences, which might have something to do with good looking maps, but they absolutely have nothing to do with making sure that groups of people are epresented in a way that will match proportional representation. Shortest split line will still give you a state that is 50/50 in a senate vote, but hands you a congress that is a 7/3 split.</comment></comment>


Avoid virtualization overhead with Linux Containers - old-gregg http://www.ibm.com/developerworks/linux/library/l-lxc-containers/?ca=dgr-lnxw97Linux-Containers&S_TACT=105AGX59&S_CMP=grsitelnxw97

<comment> patrickg-zill Solaris has had this (zones/containers) for about 4 years now and it works well for a certain class of issues.

I do wish though that they would have copied the Solaris way of doing it - under Solaris there is only zonecfg for configuring a zone, with a simple file format for describing a zone; and zoneadm which lets you list, stop, start, etc. an already-configured zone.

It is kind of funny, in that Sun is using Xen more now, while Linux has had Xen already and is now doing stuff with containers.

</comment><comment><AUTHOR> Anyone used these with Amazon EC2?

<comment><USER2> EC2 doesn't allow random kernels so this won't be possible until a kernel that supports it is vetted into the user selectable kernel list.

</comment></comment><comment><USER3> I use linux-vserver on gentoo. It rocks!</comment>


Show HN: Saltshaker-Crypto, NPM to Sign, Verify, Encrypt and Decrypt with Nacl - <AUTHOR> https://www.npmjs.com/package/saltshaker-crypto <comment><USER2> Help me understand. You've written a small Javascript wrapper around 'dchest's Javascript port of tweetnacl, and then added to it the ability to insecurely encrypt and decrypt with unauthenticated AES in CBC mode?

<comment><AUTHOR> Hi tptacek,

You're absolutely right. I'm revisiting the AES. Thaks for pointing it out. As for the rest, this is absolutely a wrapper around it -- working with tweetnacl.js directly could sometimes create a barrier of entry to developers. I wanted to make it easier for myself and others. There was already multiple references to dchest's tweetnacl, but I added more, because his library is awesome.

Thanks for posting the article previously talking about nacl. ;) This was a reaction to that.

<comment><USER2> Revisit the AES by removing the AES.

<comment><AUTHOR> This has been completed. Thank you.

</comment></comment></comment></comment><comment><USER3> Seems like the right library to post is [https://github.com/dchest/tweetnacl- js](https://github.com/dchest/tweetnacl-js) which actually has been security audited</comment>


AmboVent – an opensource, low-cost, medically tested Covid-19 ventilator device - <AUTHOR> https://twitter.com/EladRatson/status/1245470005468200964 <comment><AUTHOR> [https://github.com/AmboVent/AmboVent](https://github.com/AmboVent/AmboVent)

"a team of 40+ medical experts & engineers from Israel released the opensource blueprints for AmboVent -a low-cost, medically tested #COVIDー19 ventilator device, made from off-the-shelf components, to answer worldwide #Coronavirus shortages"</comment>


Web Analytics Collection on Product Hunt - <AUTHOR> https://www.producthunt.com/@kicksopenminds/collections/web-analytics <comment><AUTHOR> The most common question I get from someone who's used Google Analytics and wants to upgrade to more powerful tools is "Which ones should I try?"

I put this Product Hunt collection together to help new clickstream users get started with some of the most useful analytics services.

Full disclosure: I'm a dev on the Astronomer Clickstream platform [0] that routes events to various clickstream destinations. I spend a lot of time working with clickstream analytics services!

[0]: [https://www.astronomer.io/clickstream/](https://www.astronomer.io/clickstream/)</comment>


Instructables made sharecroppers out of all of us - <AUTHOR> http://theonda.org/articles/2009/06/19/dont-let-your-mission-become-a-casualty-of-its-confrontation-with-business-model-shenanigans

<comment><USER2> This is a very interesting idea. I'd say pitching the idea to the Creative Commons people is probably the best way to go. In fact, one of the CC licenses might already work ... maybe.

By the way, the HN title needs improving. This post is not primarily about instructables; rather, it is pushing a new content-licensing idea.</comment>


The Apple Attack Begins - <AUTHOR> http://www.pcmag.com/article2/0,2817,2385898,00.asp

<comment><USER2> "By John C. Dvorak", staying true to form.

<comment><USER3> Don't forget the comments. They're a hoot, as well.

</comment></comment><comment><USER4> Another way to put this: everyone, including born suckers, migrate from Windows to Mac in droves.

<comment><USER4> OK, that was a little glib. MacDefender is a pretty clever exploit, I guess.</comment></comment>


Perceptron: the main component of neural networks - <AUTHOR> https://www.neuraldesigner.com/blog/perceptron-the-main-component-of-neural-networks <comment> charles-salvia The history of the perceptron is interesting. It was invented all the way back in 1957, and seemed like a promising way to learn a function. In fact, it was so promising, that it was actually intended to be implemented in hardware as a physical array of electronic perceptrons. But a seminal paper published in the 60s by Marvin Minsky proved that the perceptron was fatally flawed: it could only learn linearly separable patterns, meaning it couldn't even learn the XOR function.

So essentially neural network research completely came to a halt until a decade later when the idea of a multi-layer perception, which _can_ learn non- linearly separable functions, (and is now the foundation of all modern ANN architectures) became more widely appreciated. (Actually, the original Minsky paper had mentioned that a multi-layer perceptron would overcome the limitations of the single-layer model, but the blow to the original perceptron was apparently so devastating that nobody cared.)</comment>


Can Anyone Stop the Man Who Will Try Just About Anything to Stop Climate Change? - <AUTHOR> https://psmag.com/can-anyone-stop-the-man-who-will-try-just-about-anything-to-put-an-end-to-climate-change-93627e0d3831#.mja6r3b8a <comment><USER3> This is a really good wiki article about it: [https://en.wikipedia.org/wiki/Iron_fertilization](https://en.wikipedia.org/wiki/Iron_fertilization)

There's a few key ideas here: The limiting factor in plankton growth is iron. So we can hit it with other things, the plankton needs more iron to incorporate into chloroplasts to grow. Algal/plankton blooms can be toxic from the chemicals produced, but they are usually toxic because they deplete oxygen in the environment. I suspect that this would be manageable in the ocean, since there's constant mixing and the ocean is _big_. [http://oceanservice.noaa.gov/facts/habharm.html](http://oceanservice.noaa.gov/facts/habharm.html)

Iron seeding of the ocean already happens, in the form of dust storms blowing onto the ocean. We've been able to see the effects of it, and it does as it says-- it increases plankton life in the ocean.

I think that a lot of posts here are underestimating the size of the ocean or over-estimating the capability of humans. We would have to dump _so_ much iron into the ocean to make the whole thing anoxic. If we did this in a controlled manner (and in small paths, so we wouldn't end up with big un-mixed anoxic patches) then I think this is very reasonable.

All of you should be careful not do have the knee-jerk "nah that sounds crazy!" reaction. This is HN, and you ought to know that the disbelievers don't have a good track record.

<comment><USER4> I read in that wiki article that the data from Russ George's efforts discussed in the OP article - that all that data was opened to the public in 2014 - <USER2> I can't find the data so far. Do you know where it might be found?

<comment><USER5> Just follow the WP links.

"Researchers, interested organizations or individuals are welcome to use our scientific data library for legitimate research endeavours. This data is available free of charge, however we do ask that a memorandum of understanding is executed for access privileges to our data. Please send us a message using the Contact Us form and state the nature of your request."

[http://www.haidasalmonrestoration.com/index.php/science/scie...](http://www.haidasalmonrestoration.com/index.php/science/scientific- data)

<comment><USER4> Whoops!!! I think I must've opened the page of frenzy of tab-opening, but then either not return to it, or closed it immediately without realizing what it was - that link has been visited, but I clearly didn't check it for the desired content. Thank you! :)

</comment></comment></comment></comment><comment><USER6> I just don't understand why everyone refuses to study the results (at least, from what the article seems to convey). Yeah, it was short-sighted and illegal and probably dangerous in ways that are currently inexplicable -- but isn't that the whole point? Go ahead and arrest the guy, or sue him, whatever -- but scientists should not pass up the opportunity to study the effects of an actual geoengineering intervention.

<comment><USER7> And the strange thing is nobody is actually preventing people who dump billions of ton of plastic in ocean with this much vigour.

<comment><USER8> It's millions of tons a year, not billions.

[http://news.nationalgeographic.com/news/2015/02/150212-ocean...](http://news.nationalgeographic.com/news/2015/02/150212-ocean- debris-plastic-garbage-patches-science/)

<comment><USER9> More details on that study here: [http://jambeck.engr.uga.edu/landplasticinput](http://jambeck.engr.uga.edu/landplasticinput) (10.1126/science.1260352)

Total worldwide production of plastics looks to be about 250 million tons, and they are estimating that about 8 million tons per year make it into the oceans. From the paper, but not the gloss, is that fact that China is by far the leading offender in this, followed by Indonesia, Philippines, and Sri Lanka. India is in 10th place, and the US in 20th. Coastal Europe combined is about the same as the US.

</comment></comment></comment></comment><comment><USER10> A couple of notes, this is from 2014 and the results of ocean fertilization are better understood today.

The interesting thing for me over the controversy when this was being done was that it reiterated the concern that nobody feels they know how to _direct_ climate change. As a result the only action they can endorse is "affecting it less" by reducing our own carbon emissions. This guy is taking it from the other side saying, "Let's start driving the model and get it to a point we like."

<comment><USER11> Another interesting issue is that not all nations aren't going to agree on a point "we like." Island nations might want to fight for every .1 degree C. Russia and Canada might say fuck it, warming helps us. W Europe who is fairly shielded again major change by ocean currents might say that nobody should geo-engineer because it's not worth the risks (because their risk is lower than others).

<comment><USER3> I agree with your analysis, except for some of Western Europe. In North- Western europe, Britain and Scandanavia greatly benefit from the Atlantic jet stream being fairly consistently aimed a little farther north; it gives them a warmer climate. We think that global warming has been destabilizing jet streams, and it's making weather have great variation in North America and Northern Europe. [http://www.bbc.com/news/science- environment-26023166](http://www.bbc.com/news/science-environment-26023166)

</comment></comment></comment><comment><USER12> So, look, if you believe that there is a large chance that climate change will be a global catastrophe in the next few decades -- and there are a lot of people who claim to believe that -- then you should be willing to compromise on other beliefs/other risks to forestall or mitigate that catastrophe.

<comment><USER13> I suspect the real issue is the "It could be good for Ontario" problem. There is no global climate change catastrophe, rather there are a lot of local changes some of which are completely catastrophic, as in good bye Bangladesh, and some of which are improvements - shorter northern hemisphere winters, longer growing seasons etc.

Flip the switch, because if the fresh water influx in the North Atlantic shuts down the global conveyer currents, it won´t be warming we´re looking at, and it´s great news for India, and Bangladesh, and a catastrophe in the Northern Hemisphere, Europe in particular.

A great empire is always about to fall...

<comment><USER12> That's not necessarily a crazy opinion, but it's not a mainstream one.

The mainstream opinions seem to be:

1\. Climate change isn't real or isn't a big deal.

2\. Climate change will be a global catastrophe or even lead to human extinction.

Now, it would be reasonable for the people in group 1 to complain about geoengineering experiments, but actually they don't seem to care. And the people in group 2 are pretty much to a man saying, "Climate change is a huge problem and the only solution that we are willing to entertain at all is cuts to carbon production with no offsetting energy production except through solar and wind -- even though these are clearly not politically feasible in large enough amounts to make the difference, and indeed even though there's growing evidence that even unrealistically massive cuts won't solve the problem."

This suggests that there are some unstated facets to the beliefs of people in group 2.

<comment><USER13> Well, it used to be called global warming, and now it´s called climate change - did you ever wonder why?

The truly catastrophic climate change - human extinction - outcome is the runaway greenhouse scenario. That´s been floated, but it runs into the evidence that the earth has been considerably warmer before (both poles melted) without that happening. But I suspect it will get another look after this year.

The slightly less catastrophic climate change outcome is the next ice age being triggered. We know what causes them, but there´s a fair amount of variance as to when, and we don´t know what the exact trigger is. The next ice age though, isn´t a catastrophe everywhere, in particular there´s a lot of reasons to believe India benefits for example.

A general warming accompanied by a significant sea level rise is a catastrophe for Bangladesh (most of which is below 10metres above sea level), the Pacific Atolls, India, South America and Africa (heat extremes) extremely expensive for the USA, and Europe, and good news for Scandinavia, Canada and Russia.

However, the general tone of the climate change debate for the last couple of decades, is not such that it would encourage a nuanced debate about the possibility that it could go either way. Nor is the planet really ready for a reasoned debate between its two hemispheres as to which outcome would be preferable, and for whom. However, the rise this year though has even the alarmists scared - especially with the suspicion that it´s entirely probable that there´s been a tendency for scientists to favour the less extreme predictions when modelling the problem, and even those have been bad enough.

[http://www.slate.com/articles/health_and_science/science/201...](http://www.slate.com/articles/health_and_science/science/2015/07/climate_scientists_despair_most_devastating_parts_of_esquire_s_jason_box.html?wpisrc=obinsite)

[http://muller.lbl.gov/pages/IceAgeBook/history_of_climate.ht...](http://muller.lbl.gov/pages/IceAgeBook/history_of_climate.html)

</comment></comment></comment></comment><comment><USER14> Chances are, he will do more harm than good.

This field does not have great track record. See, for example, the introduction of the Cane Toad to Australia: [https://en.wikipedia.org/wiki/Cane_toad#Australia](https://en.wikipedia.org/wiki/Cane_toad#Australia)

<comment><USER15> I was unaware that cane toads, in any number, could have any effect on climate.

"...and that is how we know the earth to be banana-shaped..."

<comment><USER16> Rabbits have completely transformed the Australian continent, one so dramatic you can see the effects from space. ([http://www.sciencephoto.com/media/181383/view](http://www.sciencephoto.com/media/181383/view)) Cane toads have a smaller but measurable effect since they utterly ruin entire ecosystems.

If you think it's impossible for a single organism to have an effect on climate you're mistaken. Wolves, once reintroduced to Yellowstone, have changed the entire park, altering water flow on a massive scale: [https://www.youtube.com/watch?v=ysa5OBhXz-Q](https://www.youtube.com/watch?v=ysa5OBhXz-Q)

<comment><USER17> > Rabbits have completely transformed the Australian continent, one so > dramatic you can see the effects from space. > ([http://www.sciencephoto.com/media/181383/view](http://www.sciencephoto.com/media/181383/view))

I don't get it. Which side are the rabbits?

<comment><USER18> It's the right side, but the so-called effects purported to be visible in this photo are not from the rabbits - the left side of the picture is densely agricultural, while the right side is not.

</comment></comment></comment></comment></comment><comment><USER19> For those of you who are claiming that this "jackass" is throwing "waste overboard", I recommend reading up on the process used[1] and recognizing that this is something that _has_ been studied and experimented with.

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

</comment><comment><USER20> If they were trying to increase the sockeye run, why would they get credit for a healthy pink run? Pink and sockeye are different types of salmon.

</comment><comment><USER21> I am not a marine biologist, but is it possible that there is a different substance (maybe something artificial) that could be dumped instead of iron to encourage algae blooms without the associated toxicity? Obviously that would raise the cost. Or maybe iron + substance X to suppress the formation of toxic blooms?

Maybe there is some sort of trade off point here. Where the C02 reduction saves more wildlife than what ends up getting killed off by the toxic blooms?

<comment><USER20> They could be using iron dust because it's cheaply available as a byproduct of something else, but I would have expected e.g. silica dust to be cheaper still.

[EDIT:] thanks for the info! TFA went on and on, yet somehow omitted the explanation for iron...

<comment><USER3> Iron is needed for photosynthesis, and silicia is not. Iron is the key limiting factor in the growth of oceanic plankton, so it has to be iron.

Optionally, we could use volcanic ash instead. But only because it contains a lot of iron. :)

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

</comment></comment></comment><comment><USER22> Judging from the very harsh sentences masters who are caught (let alone brag about) dumping waste overboard, you'd rather think there's a conspiracy in favour of rather than against these jackasses.

<comment><USER19> Iron seeding for plankton is a pretty well talked about solution to introducing forces to work against the warming of the planet. It's not like he's concocted some wild new idea.

</comment></comment><comment><USER23> Sure, George, Dumping tons and tons of iron into the ocean with no idea what it will do to the ecosystem definitely seems like a 'cautious approach' (quote from the article).

<comment><USER3> We have strong guesses on the direct guesses. And the scientists are refusing to look at his data because his study was done illegally.

Your sarcastic tone is a great example of how deeply everyone has their head in the sand.</comment></comment>


A story about production systems, Rails, monitoring and off-hour notifications - <AUTHOR> http://cloudinary.com/blog/a_story_about_production_systems_rails_monitoring_and_off_hour_notifications

<comment><AUTHOR> This blog post explains how a small Ruby on Rails default configuration change has caused a partial outage of Cloudinary's production service. The post also details certain system monitoring approaches and suggested ways to improve them.</comment>


A different way of thinking about getting early customers - <AUTHOR> http://www.youtube.com/watch?v=_4h68mrzuwc

<comment><AUTHOR> I thought this short video was pretty insightful. I have been focusing on pitching the benefits of my product and not reducing the risk of adoption.

By talking about all the different way my product can help perhaps I was making it look like it would be a dramatic change to the customers workflow.

I am going to focus on the single most significant benefit we offer and suggest a "one week challenge", where the customer uses our product for a week and then we discuss the benefits.</comment>