Google combining travel tools (hotel, flights) - <AUTHOR> https://www.google.com/travel <comment><USER2> This seems... lousy? I love the individual flight (and recently, hotel) searches, but the freeform text doesn't do what I want. I entered "SJC,OAK,SFO to PDX" thinking it would take me to flights, but instead it just googled for that string, skipping the travel search altogether.

<comment><USER3> [https://www.google.com/travel/flights](https://www.google.com/travel/flights)

</comment></comment><comment><USER4> I'm glad to see that not only is Google Trips getting some needed UI improvements, but now has a mobile-web version - giving me some trust to continue using it.

</comment><comment><USER5> While I use Google flights now and then to compare with SkyScanner, I don't see why is this HN-worthwhile news.

<comment><USER6> > Please don't complain that a submission is inappropriate. If a story is spam > or off-topic, flag it. Don't feed egregious comments by replying; flag them > instead. If you flag, please don't also comment that you did.

[https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html)</comment></comment>


Google Now wants to track your everything, always - <AUTHOR> http://www.geek.com/articles/mobile/google-now-wants-to-track-your-everything-always-20120628/

<comment><USER2> Nothing has changed in terms of tracking because things such as location, calendar, check-ins, etc. were already beeing tracked and the things that Google Now shows as inferred (you will be late for your work due to traffic, let me reroute, etc) are already possible and certainly affecting the personalized advertizing (you support team X, how about this sports jersey). The only difference is that now this a stand-alone product that wraps such insights into something that is more tangible and more valuable to the end- user and hence makes it, as article's author points out himself, much more lucrative reason to share your personal details such as the above-mentioned.</comment>


Better Than Buffett, This Investor Made Me Rich for Life - <AUTHOR> http://blogs.wsj.com/moneybeat/2013/05/08/better-than-buffett-this-investor-made-me-rich-for-life/

<comment><USER2> Good read. Something we all know, but easily forget.</comment>


Product: ScaleOut StateServer is Memcached on Steroids - <AUTHOR> http://highscalability.com/product-scaleout-stateserver-memcached-steroids <comment><USER2> The beauty of memcached is that it isn't on steroids. It just works, and works well from VPS-running-rails-side-project scale all the way up to multi- datacenter-Facebook-platform scale.

You can't push intelligence into your memcached tier because it's all spine, no brain. Exactly how I want my cache to be.

</comment><comment><USER3> I'm not sure I see what's in here that couldn't be open source within 12 months if enough people actually wanted it. Isn't it a tough sell to say that the open source stacks can't scale, when the majority of the big 2.0 apps are built on them?

Stuff like this is what happens to you when you use .NET instead of Python.

<comment><USER4> .NET folks have velocity <http://msdn.microsoft.com/en-us/data/cc655792.aspx> which is actually pretty nice, albeit late in the market

</comment></comment><comment><USER5> Product placement?</comment>


Conan – C/C++ package manager - <AUTHOR> https://www.conan.io/ <comment><USER2> Trying to be constructive, I would say this needs to zoom out a few layers and make a case for what concepts it is trying to address.

The primary means to distribute open source software is via source code. Automagical technologies to assemble all the source code for a dependency tree, and/or automagical technologies to fetch precompiled dependency trees with curated options, versions, component granularities, etc are extremely non-trivial problems. To date the only examples of this done with a measure of effectiveness are actually entire operating system distributions backed by software like apt, yum, pkg-src, etc.

Primarily because of the total failure in this regard of windows and osx, individual languages themselves starting advancing ecosystem centric dependency management with files retrievable from servers hosted on line. At best, this style strategy solves some of the problems some of the time, and at worst breaks the ability to make things even work the old way - ie manual download, assembly, and compilation of source code dependency trees.

In the context of largely portable, interpreted code, this sort of thing is at plausible. In the context of native code with multi-dimensional matrices of OS/Compiler/libc/versions/flags/phases of the moon, the notion of a repository of precompiled binaries to even enough cover "common cases" to be thought of as a language level feature.

In the case of source dependency management, exposing the information about where and how things are installed and reachable for use in the build environment of the foreground project is hard enough, and trying to be able to hold cross platform build recipes of some sort is literally the creation of yet another operating system. Take homebrew for example.

Perhaps some sort of unification wrapper over apt and pkg-config is a thought, but honestly can't even guess what problems can be addressed with something like this.

In all seriousness the only cross platform solution maintaining build environments is to just host all builds on linux, use mingw64 and osxcross along with apt or yum + regular pkg-config, git, etc.

This looks like someone who thinks things like pip and gem make sense trying to overlay that paradigm to a broader scope. Or maybe I'm just too old to "get it". Please clue me in?

<comment><USER3> > To date the only examples of this done with a measure of effectiveness are > actually entire operating system distributions backed by software like apt, > yum, pkg-src, etc.

npm seems to handle this just fine for both JS and native (c++) node modules via gyp, and it's officially supported on at least three platforms (Windows, Linux, OS X) using 3 different compilers AFAIK (microsoft c/c++, gcc and clang respectively). Granted, node enforces specific conventions for packaging and lookup (package.json and node_modules), but there's no reason similar conventions can't be created for C/C++ modules, even if they're more complicated due to language specific complexity (dynamic vs static linking). Mantaining packages up to date for a lot of open source projects could be done by a sufficiently dedicated community.

<comment><USER4> > npm seems to handle this just fine for both JS and native (c++) node modules > via gyp

Could you describe this in a bit more detail? Does gyp (in the context of npm) build the binaries at install time, or is it a repository of a bunch of pre- built artifacts?

In my experience of installing npm packages, it doesn't seem like it's building native extensions at install time, but it's hard to say for sure.

<comment><USER3> It does build them on install time, if a suitable compiler is available. A classic example is the `ws` module (WebSockets), when you install that you'll normally see the build log for its native dependencies on the npm output:

      $ npm install ws

      > firstname.lastname@example.com install /Users/coreh/Projects/test/node_modules/bufferutil
      > node-gyp rebuild

        CXX(target) Release/obj.target/bufferutil/src/bufferutil.o
        SOLINK_MODULE(target) Release/bufferutil.node

      > email@example.com install /Users/coreh/Projects/test/node_modules/utf-8-validate
      > node-gyp rebuild

        CXX(target) Release/obj.target/validation/src/validation.o
        SOLINK_MODULE(target) Release/validation.node
      /Users/coreh/Projects/test
      └─┬ email@example.com
        ├─┬ firstname.lastname@example.com
        │ ├── firstname.lastname@example.com
        │ └── email@example.com
        ├── email@example.com
        ├── firstname.lastname@example.com
        └── email@example.com

</comment></comment></comment></comment><comment><USER5> This is great! I really, really hope it takes off! C is in dire need of a package manager that can handle dependencies well. OS package managers do not allow multiple versions, and it is extremely difficult to get reproducible builds, because every project has available whatever is installed globally on your machine.

I have used sbt, nimble, leiningen, maven, npm, cargo, conda, and while each of those has its own issues, I would take any of them when working with C.

I have tried biicode, that was showing some promise, but it seems it is not gaining traction...

<comment> ross-harrison This looks a lot like biicode. Lasote was big contributor to that as well.

It's not clear from their docs, but if it requires a seperate repo like biicode then I think it is also doomed. A package manager can't be intrusive, ideally including a single file in the root of a project (see bower, npm, rubygems).

Their example project uses a couple special made repos, which is concerning. I'd rather see the main project repos, with configuration added.

<comment><USER6> Not really. Already hosted packages like Boost, Zlib, OpenSSL, ZMQ, Protobuf are packaged and hosted without changing a single line of their respective build, and with just a single conanfile.py to define the packaging. The build systems of those libraries are heterogenous: Cmake, B2, perl+nmake... The build system is just wrapped by the conanfile.py. Those conanfiles can be also in a separate repository and retrieve sources from any origin as github, so not intrusive at all.

</comment></comment></comment><comment><USER7> Yawn, another language-specific package manager.

If only there was something like a universal package manager, that provides a generic but powerful package-management platform. Something where package specifications look just like expressions in a purely-functional programming language, and the package manager implicitly understands the complete dependency graph, including all inputs to all build actions.

Something like Nix.

<comment><USER8> > Yawn, another language-specific package manager.

People have been bemoaning language-specific package managers in favor of (Nix/apt-get/yum/Homebrew/MacPorts) for years now, and again and again developers keep flocking to them, despite the supposedly-superior alternatives being readily available. Rather than continuing to complain about this state of affairs, perhaps we should try to figure out why language package managers are so successful.

<comment><USER9> I can think of at least 2 advantages.

1\. only packaging once, opposed to making a .deb, a .rpm and so on.

2\. as soon as its in the language repo, it's available everywhere. Even if I make an apt-get package, I'd have to wait for Ubuntu/Debian/others to include it in their repos. Or I'd have to host a ppa, requiring users to search for it and add it to their package manager. RPM fusion and AUR simplify that, but it still seems hard to have your own packages on .deb systems.

<comment><USER10> Also because people are complacent with something that works well _most_ of the time, but not all of the time. (where _most_ applies only if you're running the latest stable Ubuntu)

</comment></comment></comment></comment><comment><USER11> From reading the documentation it's not really obvious to me how conan handles ABI incompatibilities resulting from different C++ standard versions. I could create a package that would pass a std::list to the package user. Depending on the C++ standard compiler setting the user would expect objects of different size -> undefined behavior.

<comment><USER12> compiler and compiler.version are settings. conan generates different packages when settings change. So Conan will download the package that matches with your settings. In case, for example, of a header only library, package mantainer can "disable" compiler and compiler.version settings, so the package will be the same for all compilers. What do you think? Do you think it should work?

<comment><USER2> What would the schema be for storing compiler settings? Those would be of almost arbitrary complexity. Maybe if you combined the os/compiler name/compiler version/settings/deps versions, etc into a an alphabetized spaced delimited string and hashed that or something. idk...

<comment><USER13> The majority of compiler options don't affect calling convention or class layout, so shouldn't make object files incompatible. They could be whitelisted and omitted.

<comment><USER14> But preproc flags will. How does this tool deal with that? Just recompiles on every request for a certain config? Why is this better than a repo that has crossplatform-buildable code that is downloaded and compiled locally? Like nuget but cross platform?

</comment></comment></comment></comment></comment><comment><USER15> C-Onan, the C package manager written to scratch the author's own itch?

</comment><comment><USER16> So, it's like clib [0] by TJ Holowaychuk [1]?

[0] [https://github.com/clibs/clib](https://github.com/clibs/clib)

[1] [https://medium.com/@tjholowaychuk/introducing- clib-b32e6e769...](https://medium.com/@tjholowaychuk/introducing- clib-b32e6e769cb3)

Edit: No, it is not.

<comment><USER17> Love clib

</comment></comment><comment><USER18> Situation:

I install Python locally (w/o the OS-level package manager which doesn't have Python 3.5 yet) and would like to install the SciPy stack which depends on a bunch of C libraries only supplied by the Linux distro I am using.

What I'd Like:

Something like npm's package.json or pip's requirements.txt where I can declare the semantically versioned C/C++ dependencies of a project; doing conan install should fetch and install those dependencies so that pip can (as a future feature) invoke this before installing the SciPy stack and not pause a dozen times complaining about a missing dev dependency.

Does conan solve this problem ? If no, what alternatives do I have ?

Depending on OS-supplied libraries is a royal pain because they are almost always outdated.

I'm all for one idiomatic package manager per language/platform (as it is today for a lot of recent ones) which simplifies dependency management significantly.

</comment><comment><USER19> Is it for C or C++?

<comment><USER20> Both</comment></comment>


1 million accounts leaked in megahack on banks, websites - <AUTHOR> http://www.theregister.co.uk/2012/08/28/team_ghostshell_megahack/

<comment><USER2> "Team GhostShell said the online leaks, which are part of its Project Hellfire campaign, were made in protest against banks"

Hey there, lady trying to make a car payment! Hey, guy checking his balance before he buys groceries! Your bank's a dick, so we ruined your week. Hope that's okay.

<comment><USER3> Usually when these things are investigated it turns out the targeted company had obvious security vulnerabilities and were too obtuse to correct them. Consider a bank keeping their cash in an open box in the middle of the street. It's wrong to raid the box, but it's also irresponsible on them not to have good security in place.

<comment><USER4> Yes, and WhiteHats would raise those security concerns with the company, privately, and work with them to get it solved. If the company didn't work to fix them, that's when you raise it publicly.

<comment><USER5> Not with something high-profile like banks - they should be having their security check all the time, why should someone pentest them for free?

And if clients don't know how secure their bank is, they don't really have a choice other than guessing.

</comment></comment></comment></comment><comment><USER6> This is the same leak that claimed to have "CIA records", which actually turned out to be from <http://ciaservices.com/> instead of the government agency. There's a lot of hype surrounding this that seems to be total bullshit. The "1 million records/accounts" includes a lot of trivial, non- sensitive information, and the targets are mostly low-value to begin with. Seems like someone just ran a bunch of SQL injection attacks on random vulnerable websites and is trying to pass it off as grandiose political activism.

</comment><comment><USER7> Semes like a linkbaiting headline (of the original article) once again... Don´t see these "1 MILLION" accounts anywhere an neither the mentioned blog post [1] nor the original announcement at pastebin [2] does mention that. (EDIT: The pastebin statements indeed mentions "one million accounts/records leaked", buy thats not quite the same imho (emphasis on "records").

The blog post states explicitly that "a lot of the stolen content did NOT include any sensitive information".

[1][http://blog.imperva.com/2012/08/analyzing-the-team- ghostshel...](http://blog.imperva.com/2012/08/analyzing-the-team-ghostshell- attacks.html)

[2]<http://pastebin.com/BuabHTvr>

<comment><USER8> "What kind of banks got hacked? Banks you never heard of."

<comment><USER7> You don´t have accounts with MoneyMantra,Mitsukaru, Commerce Bank of Wyoming or the Central Bank of Bangladesh? Great rates!

<comment><USER9> I live in Wyoming and never heard of the Commerce Bank of Wyoming!

</comment></comment></comment></comment><comment><USER10> A small-ish blog post by Imperva security discussing the leak: [http://blog.imperva.com/2012/08/analyzing-the-team- ghostshel...](http://blog.imperva.com/2012/08/analyzing-the-team-ghostshell- attacks.html)

</comment><comment><USER11> Even if the original article capitalized the "million", it's good practice here to convert to regular capitalization when submitting. It just reeks of loudmouthed sensationalism and linkbaiting. I refuse to clickthrough on such submissions.

<comment><AUTHOR> Fixed (I just copied-and-pasted the original).

<comment><USER11> Thanks.

</comment></comment></comment><comment><USER12> What's megahack? Is it run by Kim Dotcom?

<comment><USER13> Personally, I'm just happy it wasn't an ULTRAHACK.

<comment><USER14> It would need to be spoken in an Unreal Tournament voice, too.

</comment></comment></comment><comment><USER15> I wrote a simple python script to download all the content. Hope to do some analysis on it offline. Please don't mind the newbie coding skills :). I put the script on github at [https://github.com/kudithipudi/Misc- Scripts/blob/master/pars...](https://github.com/kudithipudi/Misc- Scripts/blob/master/parseHellfire.py)

</comment><comment><USER16> News stories like this are sometimes hyped but it's better to be safe than sorry.

I wonder if writing sky-is-falling style articles resonates more with people who would otherwise not treat their own online privacy/security as something to take seriously.

</comment><comment><USER17> Ahhhh, we've come full circle. Back from the days when script kiddies would DoS a site or 'crack' a telnet password, then deface and claim they have street cred.

I would love to find someone who has actual street cred and had their account information released by these chuckleheads, and put them in a room together.

This isn't about politics. I doubt these losers even know anything about the companies they attacked. Fucking douchebags.

However, I should also blame the companies involved here. If they can afford $1000 for some kind of web app firewall they probably could have detected sqlmap raping their site with faulty queries.

<comment><USER18> I don't find their actions particularly praiseworthy, but if this can be done by a bunch of scriptkiddies, I'm not sure they did anything but slightly move up the inevitable, since organized criminal groups are also running similar scripts.

<comment><USER17> Organized criminal groups are more scrupulous. They just want your money, or to be information brokers. They won't publish your name, address, phone, social and god knows what else to the world.

I could give an extreme example and say that this kind of information disclosure puts stalking victims at risk, but there's a million more reasons we protect the privacy of individuals. Criminals simply have no reason to do this kind of thing, but the script kiddies think it's hilarious.

<comment><USER19> At least if the data is published you can search and see if you need to go in to your bank and shout at the manager.

<comment><USER17> Your bank manager does not make IT policy. Please do not shout at him.

The lamers who released the information could have easily blacked out parts of all of any sensitive information, or disseminated other kinds of proof of their attack. Then you could still be angry at your bank without getting people's personal information.

</comment></comment></comment></comment></comment><comment><USER20> Posted a couple days ago <http://news.ycombinator.com/item?id=4435348> not much discussion though.

</comment><comment><USER21> > An analysis of the hacks by security biz Imperva reveals that most of the > breaches were pulled off using SQL injection attacks.

Client-side encryption, even in JS, would have prevented this, it seems.

<comment><USER22> NO

If you depend on the client for your security => Game Over

(of course, SSL is kind of dependent on the client, but it's their security not yours in risk)

<comment><USER23> If you _naively_ depend on the client, sure, it will be game over, but that is true of any naive security.

Endpoint encryption does solve many problems, but it doesn't solve all of them. Take a bank case: sure, you could encrypt your account number and transfer amount on your machine, but the how is the bank supposed to do anything with these random bytes you've sent? If they have the keys (like they do with SSL), we aren't any better off.

With some complex public key crypto, you could _maybe_ make things better, but you would be dependent on everybody treating their private keys well. I'm not convinced big companies could manage that, much less "Joe the Plumber".

Trusting the client is not the same as securing the client.

Edit: I didn't like my initial tone, so I backed off.</comment></comment></comment>


Show HN: Electrino, a featherweight API-compatible alternative to Electron - <AUTHOR> https://github.com/pojala/electrino <comment><AUTHOR> Yesterday there was a thread on HN about using Electron to build desktop apps:

[https://news.ycombinator.com/item?id=14245183](https://news.ycombinator.com/item?id=14245183)

I posted a comment lamenting that Electron apps are so big because each contains a full set of the Node + Chromium runtimes, and proposed a lightweight version of the same concept using the system-provided web browser engine.

The idea seemed interesting, so I spent some time today putting together a minimal proof of concept.

This initial version of Electrino can load the "Hello World" example from Electron's quick start guide -- and that's pretty much it! With that enormous caveat, the difference in file size is huge. The Electron version sizes up to 115.7 MB, while the Electrino version is 167 kB.

I'm curious if this could be turned into a real project. Anyone out there with a small Electron-based Mac app that you'd like to put on an Electrino diet? Ping me, and let's see if we can make it work!

<comment><USER2> I don't have an Electron project going, but I can tell you something like this could add some value to some companies invested in Electron as-is. You just have to get their attention. I would suggest maybe resubmitting this post later if it doesn't catch the flare of intrigue. If I do end up building an Electron Project I will definitely look into Electrino when the time comes. You mention it doesn't feature all the features of Electron but is the typical browser DOM still available?

<comment><AUTHOR> Thanks!

The full browser DOM is certainly there. The missing APIs are the Electron- specific ones that apps can use to access desktop features.

Adding new APIs individually is pretty easy, but there's a lot of stuff in Electron, so reaching full coverage is of course a lot of work... That's why I'd like to try adding APIs based on usage in real-world apps, "filling in the gaps" so to speak.

I wrote a blog post with some more details about the rationale behind Electrino: [https://medium.com/@pauli/put-your-electron-app-on-a-diet- wi...](https://medium.com/@pauli/put-your-electron-app-on-a-diet-with- electrino-c7ffdf1d6297)

<comment> 52-6F-62 This could be big. One of the most common complaints about Electron I've heard is the file size and cpu load. In short, nice work!

I know it would add extra time to the build on the programmer end, but what about component API's -- to keep build size at a minimum while allowing access? I haven't looked at any of the code -- would this be possible?

Any thoughts?

</comment></comment></comment></comment><comment><USER3> Most of the time though, the real issue that people have with Electron-based apps is memory and CPU usage. Electron is notorious for hogging RAM like there's no tomorrow. While this project is a neat idea, it doesn't seem to address the main problem of Electron.

<comment><AUTHOR> Using the system web runtime does reduce the app's memory usage too, not just the on-disk size.

The system runtime is loaded just once (and is probably already in active memory), whereas each Electron app loads its own copy of Chromium.

For large apps, it won't make a huge difference. I'm absolutely not saying Atom or Spotify should switch away from Electron... The use case I had in mind for Electrino is more about small utilities, desktop widgets, that kind of thing.

<comment><USER4> Have you tested that? In my experience using a system webview actually consumes _more_ resources than Electron, and is noticeably slower, at least in OSX/WebKit.

<comment><AUTHOR> I did do trivial tests. The Electrino "Hello World" launches faster and consumes about 70% less memory than the Electron one.

For complex apps, I imagine the picture can be very different. The use case I see for the Electrino approach is small apps that are constantly loaded. Big productivity-style apps are better served by Electron.

</comment></comment></comment></comment><comment><USER5> Nice work! I wrote a very similar engine back in 2014. Mine has a platform- agnostic API:

[http://scribe-src.github.io/scribe-api/doc/](http://scribe- src.github.io/scribe-api/doc/)

Support for OSX (with ObjC bindings exposed):

[https://github.com/scribe-src/scribe-platform-osx](https://github.com/scribe- src/scribe-platform-osx)

And could work with just MachO binaries (not .app dirs) by shoving data into a loader segment.

</comment><comment><USER6> the file size is too small to be an equivalent to (nodewebkit/electron) - webkit/chromium.

What you'd need is node (without webkit) which translates to ~9MB, + launching with the system browser.

9MB or so would still be a large step down from entire chromium runtime, but desktop apps still will have access to things like fs module, which are needed for desktop apps.

<comment><AUTHOR> The plan is to implement Node-compatible modules directly in Electrino.

I made stubs for "path", "url", "process" so that the Electron Hello World can be loaded. Doing "fs" next seems like a good idea, but I'd like to have a real-world app to test it against to see which APIs actually get hit (rather than just reimplementing all of "fs").

<comment><USER7> It seems like the trouble with this approach is that you have to not only build up adequate Electron compatibility but you also need to build up Node compatibility, which seems to me to be a bigger deal. One of the huge benefits to Electron is the ability to use any of the modules from npm.

I can see how the architecture is greatly simplified, and I can still imagine using something like this... but giving up npm is a lot.

<comment><AUTHOR> Yes, the backend provided by Node needs to be reimplemented using the native JS bridge APIs. Whether this is realistic or not will depend on how much the typical Electron app actually makes use of Node -- I just don't know, honestly. If it's mostly "fs" and a bunch of the other OS-wrapper APIs, it's not insurmountable.

Re: npm, you can of course still use an npm-based workflow for the browser- side part of the app (Webpack, whatever). It's just the Node-side services that are missing.

</comment></comment></comment></comment><comment><USER8> Why not only use a small http server with something like luajit for os/database access and javascript for presentation/navigation ?

</comment><comment><USER9> "It implements a minuscule portion of the APIs available in Electron" \- I wouldn't really call that API-compatible.

For most apps I'm sure this is fine though.

</comment><comment><USER4> MacGap offered this before Electron/NW came to exist: [https://github.com/MacGapProject/MacGap1](https://github.com/MacGapProject/MacGap1) (and there was a way to bundle node too)

Unfortunately neither v1 nor 2 have been actively developed in the past few years.

</comment><comment><USER10> Ah so far it works only for macOS. I wanted to give it a test run but I'm on Windows at the moment

</comment><comment><USER11> Wasn't one of the big benefits of using Electron the fact that you only have to build everything for one browser, one technology and have it run on all platforms?

</comment><comment><USER12> Why not use Java folks? Write once run anywhere and reasonable file sizes and memory usage.

<comment><USER13> Hard to argue with that. Why is it when you google "Build cross platform desktop apps" there are no hits for Java in the first five pages? It's Electron on every page, with a few passing mentions of Qt. Even Haxe gets a look in, but no Java (as far as I can see)

<comment><USER12> I never said it was sexy</comment></comment></comment>


UK issues first GDPR violation… against Brexit campaigner - <AUTHOR> https://www.theregister.co.uk/2018/09/24/uk_issues_first_gdpr_violation_against_brexit_campaigner/ <comment><USER2> Selective enforcement against enemies... we could see that coming.

<comment><USER3> A brexit supporting "enemy" of a brexit supporting government? Enemy of whom then? The regulator (ICO) is _not_ the EU.

<comment><USER2> There is no brexit supporting government in the UK. Look at the actual negotiations, and you can see that the plan is to have brexit in name only.

<comment><USER3> Well that's manifestly untrue. Brexit was a manifesto promise and that is still their aim. That they are incompetent and the party subject to divisions, as a result of the extreme right hard brexit fools, are different issues entirely.</comment></comment></comment></comment>


How the Salaries of Software Engineers Have Evolved Over the Past 20 Years - <AUTHOR> http://www.forbes.com/sites/quora/2016/04/14/how-the-salaries-of-software-engineers-have-evolved-over-the-past-20-years/ <comment><USER2> What a low quality post from what I would have considered a reputable publisher. It reads more like a buzzfeed article than a business magazine.

<comment><USER3> That's because it's a direct re-publish of an answer from Quora (note the "contributor"). The decrease in quality may be that the Forbes you knew was sold [1] in late 2014, and the current state of the company seems chaotic at best.

[1]: [http://mobile.nytimes.com/2016/01/17/your-money/in-forbes- me...](http://mobile.nytimes.com/2016/01/17/your-money/in-forbes-media-sale- five-figure-battle-started-a-100-million-war.html)

</comment></comment><comment><USER4> Java became the language of the web?</comment>


Xobni (YC S06) comes to Gmail - <AUTHOR> http://www.xobni.com/gmailbeta

<comment><USER2> I've never understood the pitch for Xobni (or Rapportive for that matter), but maybe that means I'm not the target audience. All of the people I e-mail with are either people that I know in person (so I know what they look like), or it's a one time thing likely never to be repeated again.

Is there something I'm missing? I could see the value if I were in sales or some other position where I was contacting way too many people to keep them all straight in my head, but that feels like a fairly small minority of people.

<comment><USER3> I completely understand this problem, and I'm frustrated to no end that innovation in email has stagnated.

I have a standing offer at Hackers & Founders events to pay anyone who helps me fix my email problems $20 to 40 a month as their first subscription customer. My hair is on fire. I'm a motivated buyer. And, I'm convinced that there are millions of business people world wide that have this very problem. Every single business person that complains about email overload has this problem, but probably can't articulate it well.

I need an email system where a contact is considered a first class citized. GMail's innovation was proper management of the conversation (threaded view). But, I'm convinced that their engineers don't see the problems with contact management because they benefit from a universal address book, and they don't interact with random people that aren't in their global address book.

Business communication isn't about viewing a single conversation thread. It's about building a relationship with a person over time.

In my email, I need to quickly know who I'm talking to, I need to have quick and easy access to previous conversations I've had with this person. I need to be able to easily write comments and meta data about this person. I need my email to automatically recognize contact information from a new person I'm emailing, and automatically put that into my address book.

Xobni comes the closest I've seen to fixing those problems. I wish more people would innovate in this space.

I've been running H&F for 3 years, and I have close to a thousand contacts. I live out of my email, and sadly, Gmail is increasingly broken for me. In the next month, I'm going back to Outlook + Xobni for email management ( unless the Xobni plugin for gmail is fantastic), and I'm giving up my Android for a Blackberry, because they have a Xobni app. and their email platform seems much more mature. As for the back end, I might still stick with Google Apps for business, but I'm increasingly dissatisfied, and I'm thinking of migrating over to an Exchange based platform.

If anyone starts work on fixing this problem, please let me know. I'm a motivated buyer.

<comment><USER4> A minor point: threaded view is _old_ \- jwz publicized the Netscape Mail 2.0 (!) algorithm at <http://www.jwz.org/doc/threading.html>, and I didn't even check whether that was the oldest appearance.

</comment></comment></comment><comment><USER5> It would be nice to have this and Rapportive integrate. I use Rapportive as personal CRM, but definitely some of the stats offered by Xobni are very interesting.

<comment><USER6> hey Davide, which one stat would you say is most interesting?

<comment><USER7> How would you compare your service with Xobni? You think you already provide a finer version of the other?

<comment><USER6> I can't say much right now, but you'll see how we're different in the coming year! We've just been setting the stage :)

</comment></comment></comment></comment><comment><USER8> I think this is really smart on their part. I got super nervous about their viability after Microsoft launched Outlook Social Connector (which seems to not be as good, but is free and natively part of Outlook).

I've tried using Rapportive and Etacts at various times, but never really derived enough use to keep using them.

Also excited for an iOS app, their Blackberry app is really nice.

</comment><comment><USER9> Any beta-testers here? Do I have to use with IMAP, or is it completele web- based?</comment>


Online users can pay with Time instead of Money - <AUTHOR> http://www.techcrunch.com/2009/10/22/gambit-teams-with-crowdflower-for-an-alternative-to-offers-crowdsourced-labor/

<comment><USER2> I usually don't get enthusiastic about any combination of "free", "alternate payment", and "social gaming", but this actually would fill business needs for me. It is a competitor to Amazon Turk, essentially -- giving me access to a tech-savvy time-rich cash-poor audience and having them do repetitive data entry for stupidly low sums of money.

I like this because it is an end-run around micropayments, where marginal costs like transaction costs and approving work munch far too much of the value of the transaction to make it worthwhile. Nobody here needs to ever do a micropayment: users get virtual currency in their game of choice, transaction cost zero. I pay the company with my credit card in increments of probably several hundred bucks, where the transaction cost will be negligible. They pay the game developer in a macro-transaction once a month, transaction cost negligible.

</comment><comment><USER3> It's about time this happened. Totally opens the doors for virtual currency.</comment>


A deep and fuzzy dive into search - <AUTHOR> https://www.arangodb.com/2020/07/deep-and-fuzzy-dive-into-search/ <comment><USER2> Hey, I'm the author, if you have any questions feel free to ask me</comment>


Ask HN: What useful serverside software used to replace third-party providers? - <AUTHOR> I am looking for some useful software to install on my VPS to replace third-party providers.<p>Examples: Download Ticket Service: DL, OwnCloud, etc. <comment><USER2> Not sure you'll find much beyond what's at the awesome list for this: [https://github.com/Kickball/awesome- selfhosted](https://github.com/Kickball/awesome-selfhosted). At the very least it is a good starting point.

<comment><AUTHOR> Far exceeds my expectation of the comprehensive list I was looking for!

</comment></comment><comment><USER3> DC/OS - [https://dcos.io/](https://dcos.io/) Build your own cloud on premise</comment>


Stockton extends its monthly $500 UBI payment experiment - <AUTHOR> https://www.citylab.com/equity/2020/06/ubi-stockton-universal-basic-income-coronavirus-economy/611191/ <comment><USER2> What is the point of UBI studies this small? Giving a few hundred people extra money each month will improve the well being, no question about it.

The issues with UBI only arise when it's done at scale. For example let's say you give every US citizen over 18 a monthly UBI check for $1000. What's stopping prices from rising accordingly? How will the ~$3T yearly UBI bill be paid for?

The question of how is this paid for is my biggest issue with UBI. If someone can give a reasonable answer that doesn't require national price fixing, taxing tech companies on their data, or some version of reshuffling the current budget around, I'll happily change my mind. Until then, for me, UBI is nothing more than an economists wet dream.

<comment><USER3> You should read into Modern Monetary Theory. The government can print the money by issuing treasuries: there's no need for the money to come from anywhere. Social security can easily be paid for. Interest on debt is never a problem.

The base argument is that any government that issues its own currency can never default, so it can incur large deficit spending that creates a surplus in the private economy.

The difficulty is whether that surplus is put to produce growth which would offset the inflation that conjuring money creates. If everyone sits at home doing nothing, you bet inflation will happen. If it's used as a cushion, perhaps not.

<comment><USER4> It's important to note "Modern Monetary Theory" (aka MMT) is almost unanimously rejected by mainstream academics[1]. Its largest proponents are political leaders rather than economists.

[1] [http://www.igmchicago.org/surveys/modern-monetary- theory/](http://www.igmchicago.org/surveys/modern-monetary-theory/)

<comment><USER5> MMT is an absolute joke, I'm glad at least someone has called it out here.

</comment></comment></comment></comment><comment><USER6> It's not really UBI if you're selecting some subset of the population and paying them. You need to be paying everyone in that area otherwise you're gonna have side-affects you can't control.

<comment><USER7> It's an experiment.

<comment><USER8> Experiments are very carefully designed so that you can learn something from them.

There is not much that can be learned from an experiment like this. The biggest questions of UBI are not made more answerable by it.

Namely, why wouldn't prices/cost of living/rent rise to eat all the stipend, and how will we pay for it at massive scale?

Virtually no one disputes that an extra $500-1k/month given to a subset of people is a benefit to the people who receive it.

<comment><AUTHOR> You're ignoring part of the experiment. It's important to figure out what people spend it on and how their spending habits change (which appears to be what this is measuring just judging by the summary of the initial results), the question isn't just "is it nicer for the people who have it?".

<comment><USER9> > It's important to figure out what people spend it on and how their spending > habits change

But why does that matter? That's their own business. People will spend it on whatever makes them happiest--that's the whole point.

It doesn't answer the questions that most people have, such as the question in the post you replied to:

"Namely, why wouldn't prices/cost of living/rent rise to eat all the stipend, and how will we pay for it at massive scale?"

<comment><AUTHOR> > But why does that matter?

Because if people by and large hoard it it has a different impact than if they go spread it around in the local community and keep money flowing throughout the system. It's also good to know if they spend it on luxuries, entertainment, or basic necessities. Do they invest it and does it help them build a better future for their children, or does it just help them pay the bills immediately but doesn't necessarily lift them out of poverty, etc. Otherwise we can't tell if it helps solve the problems people are trying to solve with it (whatever those may be, I am not one of these researchers and am not qualified to speak on the economic specifics, I can just talk to general methodology and what not).

> People will spend it on whatever makes them happiest--that's the whole > point.

Just specifically I want to point out the flaw in this reasoning: for a lot of people a $500 night out with their friends might make them happiest, or a new video game system or whatever it is that they like to do, but they may spend it on groceries or to help pay the rent or to invest a little bit instead. Or maybe not. You can't just assume what people will do with it, or what the whole point is, you have to experiment and prove it. Maybe something entirely different that you haven't thought of happens. Again, that's just how science works.

TL;DR this _is_ an important thing to find out. Then we repeat the study in a few communities and see if the results are similar, maybe try it at different wealth levels to compare, etc. this is how science works.

> It doesn't answer the questions that most people have, such as the question > in the post you replied to:

There can be more than one question, and more than one answer. Economists are researching this too and have written a lot about it. Just because you have a question, doesn't mean the science has to answer it right away and every single experiment has to be focused on it. There are lots of questions that will have to be answered before this could be tried more widely, these are just two of them.

</comment></comment></comment></comment></comment></comment><comment><USER10> Of all places in the United States, Stockton California. Well if any city could use some love, Stockton is one. It may infect the capital next door in Sacramento. Which would infect the 9th largest economy in the world. That would be great. Trickle up economics for the win.

<comment><USER11> Today Candy, tomorrow stomach ache.

<comment><USER12> Now what does that mean? $500 is candy? For some it's a lifeline.

<comment><USER13> It means that getting something you want will not necessarily benefit you.

<comment><USER14> Which is insane, because it's "need" not "want".

</comment></comment></comment></comment></comment><comment><USER15> I think Canada is going to be an interesting case study in UBI in the near future as 1/4 of the population has been receiving $2000/month CERB payments for up to 7 months.

</comment><comment><USER16> Any studies involving UBI need to have malicious actors as a part of the study.

UBI, if it is ever realized, will be a scammer's paradise. Every possible method for getting a slice of people's UBIs will be tried. From fake government calls, to identity theft, to greedy landlords, to you name it. And whose UBI will be most vulnerable to these types of attacks? The poor.

<comment><USER17> >Any studies involving UBI need to have malicious actors as a part of the study.

Yes, and no.

Of course there will be some low form of abuse and whatever.. that is just a given with anything in the entire world. It should NOT be a main reason of any form to be against it.

We are trying to help people, so what if it's getting a little bit abused? We as a whole are still better off.

It's like a universal healthcare argument.. people might say "well what if someone from mexico sneaks in and get care for free?? I'm paying for that!" If the _worst case_ is that someone gets health treatment... then it's a pretty silly argument in my book.

<comment><USER16> What if the worst case for UBI is that it, counter-intuitively, _increases_ the income gap between low and middle classes? Is it still worth it then?

<comment><USER18> That's a tricky one. It depends on how it affects the relationship with the upper class too.

Completely unreal example numbers: If the distribution of lower:middle:upper was 2:5:40 and changes to 4:8:25 then that's a big improvement, even though the gap between lower and middle increased from 3 to 4.

</comment></comment></comment></comment><comment><USER19> How about universally abolished income tax, instead? Let's save on IRS expenses too.

<comment><USER20> In case you're serious, the point is redistribution. Abolishing the income tax probably just makes income inequality worse.

If you're against redistribution in general then that's a different discussion, but at a minimum, in societies with great inequality, even the winners don't win if it all goes the route of the French Revolution.

<comment><USER19> > In case you're serious, the point is redistribution.

That's the statement I'd like to see highlighted bold on every UBI proposal, so that everyone knows exactly what it is about.

Isn't it remarkable that at a time of the French Revolution (which one them by the way?) the society was significantly more equal in terms of their income than it is today? Maybe revolutions are caused by other reasons, like the lack of freedom and not being in control of your own life, for example? Especially when more than half of one's productive life is taken away and redistributed by a taxman.

<comment><USER20> I think you'll find that to be true in most discussions about UBI, even those backed by conservative economists like Charles Murray.

As for economically conservative discussion about redistribution, I think Greg Mankiw had one of the best summaries of the matter in 2013 "Defending the One Percent"

[https://scholar.harvard.edu/files/mankiw/files/defending_the...](https://scholar.harvard.edu/files/mankiw/files/defending_the_one_percent.pdf)

Ultimately the question of whether to redistribute or not is as normative, just like considering taxes to be inherently immoral. So far societies have enjoyed the former more than the latter, but individuals fall on both sides.

</comment></comment></comment></comment><comment><USER21> I work in Stockton, and am glad that some people are better off with this. My real worry about UBI 'at scale' is what would prevent the majority voting for massive increases in the amount every election? If every employee could vote to increase "everybody's" pay equally, why wouldn't they? - right up until the company runs out of money and all the jobs disappear. If you think that high income people generally don't produce enough value to justify their income, then you would probably consider this a feature, not a bug. Otherwise, I worry that it would just lead to highly productive people moving to other parts of the world, as happened with [British musicians in the 60's]([https://ultimateclassicrock.com/rock-bands- taxes/](https://ultimateclassicrock.com/rock-bands-taxes/)). Again, if you think those people don't produce enough value, it's not a problem. But we _might_ want to consider trying it successfully in a single state first before rolling it out more widely.

</comment><comment><USER22> Why don't we just pay people more for the jobs they're doing (be a little less greedy on top, and value the work of others more) and implement policies that reduce the cost of living?

</comment><comment><USER23> I think it'd be more interesting to provide free housing, free local organic food and free bikes, than providing money.

It'll help people move away from unhealthy consumerist habits, and solve environmental problems, double-win

<comment><USER20> That sounds like you want to provide everyone with stuff you like. Someone else probably wants free fast food and guns. How do we settle the difference? A bunch of lobbying and political action? Or just give everyone cash and let people make their own choices.

<comment><USER23> Sustainable stuff more importantly, for a less consumerist, egoistic human- world, less pollution pressure, more environment-friendly</comment></comment></comment>


What's up at Heroku - <AUTHOR> http://blog.heroku.com/archives/2009/1/12/whats_up_at_heroku/

<comment><USER2> After seeing this post, I remembered that they gave me a beta account a while ago. With some source I already had, tied to another db on another host, I was able to get <http://fuel.dustincurtis.com> up and working on Heroku within about 10 minutes. And 5 of those minutes were spent fixing a bug that was my fault.

Heroku is really, really awesome. It automatically detects the hostnames for your db in database.yml and corrects them, loads the schema, and just makes everything work, all automatically. You don't need to make any changes at all. I am still kind of amazed at how easy that was.

</comment><comment><USER3> I'm currently starting a project on App Engine because it's free, but I'd much rather work with Rails. The free version of Heroku still incurs EC2 costs, right?

<comment><USER4> No. I've got several Heroku apps going and none of them incur any costs what- so-ever. You can ask them to "bless" an app and they will give it more CPU. They might start charging for this based on this blog post.

Overall, Heroku is extremely nice to work with. Sometimes your app stops responding and you have to dig up one of the founder's e-mails (because the mailing list receives no response), but the technology is sound and the editor is wonderful. The Git integration is handy, and it's very easy to create new apps when you suddenly have an idea on a Sunday evening.

<comment><USER3> Damn! I guess now isn't exactly the time to ask for a beta invite.

<comment><USER5> If you don't have an invite, you can still sign up, you just have to wait a bit. See: <http://heroku.com/beta>

</comment></comment></comment></comment><comment><USER6> This really makes me want to learn Rails. I wish AppEngine were closer to Heroku, so I can have my python and eat it too.</comment>


Sorting multi-fields in Java - <AUTHOR> http://nativeintegration.com/2016/03/sorting-a-multi-fields-collection-in-java/ <comment><USER2> Now what is _really_ cool is a topological sort over partial orderings...</comment>


Shitcode - <AUTHOR> http://shitcode.net <comment><USER2> I stopped reading at the Java tic-tac-toe implementation, because what pleasure am I supposed to get from snarking over people's learn-to-code projects? This is a bad idea for a site.

</comment><comment><USER3> The trouble is you can't tell what's just someone learning, what's real 'encountered in the wild' code (and if you're submitting that, you might be violating your old job's IP) and what's just people making intentionally shitty code for the lawls.

I had a co-worker that kept a "coding hall of shame." I think I started one but probably lost it at some point. Don't really feel like searching for it either. Just let the past die.

</comment><comment><USER4> Cute, but doesn't hold a candle to the commentary and context provided on the daily wtf.

<comment><USER5> I read The Daily WTF a few years ago, but eventually stopped because their stories were getting more and more tedious over time. The submission is refreshingly plain in comparison, but a bit too plain. Something inbetween these two poles would be nice.

</comment></comment><comment><USER6> Nice! I wonder if it's related to the similar russian website [http://govnokod.ru/](http://govnokod.ru/)

<comment><USER7> It's owned by [http://kadet.net/](http://kadet.net/) as I understand, [https://github.com/kadet1090/shitcode.net](https://github.com/kadet1090/shitcode.net)

</comment></comment><comment><USER8> Stuff like this is funny until you've seen & had to deal with enough real production code that's just as terrible. Then it's just depressing.

</comment><comment><USER9> The sleeper sort is kind of interesting but probably not correct if the CPU is doing literally anything else.

</comment><comment><USER10> #164 won't even compile; you can't assign an integer to a string variable.

</comment><comment><USER11> Where do I send my crypto?

<comment><USER12> Send your ether here 0x28c8747f3a10c43b3a6225c751d8c03effa313b9 :)

</comment></comment><comment><USER13> Never thought I'd laugh so hard at something like this!

</comment><comment><USER14> How did you get access to my repository?

</comment><comment><USER15> Bad idea.</comment>


Wolfram Alpha's take on the Drake Equation - <AUTHOR> http://www.wolframalpha.com/input/?i=drake+equation <comment><USER2> One of the things I love so much about the Drake equation is how it's all so much bullshit.

Before you downvote me, I think it's a great equation and I don't have problems with folks using it. As long as you know what you are doing. really, think about it, all it actually says is that there is this list of things that we feel have to happen in order to determine communicating civilizations, and given any random set of probabilities for a list of things, you multiply them together to get an aggregate answer. It doesn't address whether the list is complete, or overly complex, or mis-stated. The numbers provided are juts best guesses. It's just "multiply a bunch of numbers together and get a new number"

I love it. It's definitely not science -- yet it has this cool-looking formula involved. It also has a powerful impact on folks who use it.

Drake is really cool in that it gets people thinking about how likely ET is. For that, it's a wonderful tool. But at its heart there's really not much there. At least yet. Perhaps in the future we'll have some solid survey results to put in, especially with Kepler online. Can't wait to start seeing those results coming in.

<comment><USER3> I really dislike the drake equation because it's the epitome of bad science -- when someone enters value for the variables they have no idea what is reasonable, absolutely no idea -- is it 0.1 or 0.0000000000000000000000000000001 we have no way of knowing.

Though I do like how it gets people to realize how small and insignificant we are in the grand scale that is the solar system, the reasoning we take to get there is fundamentally flawed. We use numbers that have everyday meaning to us, and of course it spits out nice results; this is flawed reasoning since we have no basis to think those numbers are even remotely correct. In general, I just think it's sloppy thinking that takes advantage of deficiencies in human thinking -- it's a magic trick.

<comment><USER2> I really tried to be even-handed with my comment -- I didn't want to sound like a troll -- but you are completely correct.

In fact, the Drake Equation is a religious statement. That is, it is a creative speculation using commonly understood symbols to that which are completely unknown to us. It's the same as a couple of cavemen sitting on a hill talking about thunder as being large rocks falling from a cliff in a faraway valley. It makes sense, it fits in with what we know, but it's really just a bunch of guesses connected with symbols that, based on context, we feel social approval towards. It's a mind-hack. And a very nicely executed one at that.

The reason I didn't use the "R" word, religion, is that folks see that word and stop thinking. They give you an instinctual answer. No way! I'm not religious! etc.

The Drake equation basically says what anybody who has looked up at the night sky knows intuitively: there are a lot of stars out there, and it's extremely unlikely that we're all by ourselves. It just does it in a way that makes us feel like we're receiving some sort of imparted scientific wisdom, instead of what it really is: creative speculation. In that sense the formula itself may be total bullshit scientifically, but what it tells us about how science and religion play with each other is very important. People look at it and just _feel_ that there is some truth there, and there is, but it's not the same kind of truth as f=ma, although both statements are expressed mathematically and have the same air of seriousness around them.

<comment><USER4> "The Drake equation basically says what anybody who has looked up at the night sky knows intuitively: there are a lot of stars out there, and it's extremely unlikely that we're all by ourselves."

Further reinforcing your core point, it can also tell you that we are. You don't have to be _that_ painfully conservative with the numbers to come with one or fewer per galaxy. For instance, 50% of stars having planets may be a brutal overestimate, a lot of stars are in multi-star systems or other situations in which there are no stable orbits, resulting in any initial planets getting ejected very quickly if they form at all. 2 Earth-like planets per star is a bold statement, depending on the exact definition of "Earth- like", we only have one in our system and if you read past the propaganda in the planet finding press releases they aren't coming up with all _that_ many other "Earth like" planets yet. Yes, that's because they still can't see them, but the press releases convey a false sense of how the search is going when they do things like call a planet with a surface gravity of 3 or 4 G and a surface temperature beyond rock's liquification point a "Super-Earth". 10000 years is a bold estimate for how long a civ will be around and communicating, certainly. I actually am against the self-loathing that some circles find fashionable but 10,000 years is a long time. I consider these numbers generous and it _still_ only comes up with 10.

It's missing some terms, too. Irregular galaxies [1], approximately 25% of the galaxies out there, are thought to be entirely unable to support complex life because basically all the stars in such galaxies will take a system through a region of the galaxy with too much radiation and sterilize the planets every few tens of millions of years. I mean this only as an example, you can go on naming more fairly reasonable criteria that eliminate half or more stars from contention for quite a while (star types, star galactic orbits, other galaxy attributes, even before we get to planets we can eliminate a lot).

To brutally abuse notation, the night sky is O(n^3) in size, if the probabilities of developing civilization are O(2^n)-type it doesn't matter how large the sky is. Big numbers fall fast when you multiply independent probabilities together, and it's not sophistication to just give up and declare there must be a lot of other civilizations out there; it's still a mathematical copout. We don't know.

[1]: <http://en.wikipedia.org/wiki/Irregular_galaxy>

<comment><USER5> I agree with your poing, but Mars is earth-like and it could have carried life ...

There is evidence that Mars once carried liquid water on its surface, it's formed out of the same materials (carbon, hydrogen, water) and had all the elements needed for life. Mars lost its liquid water because (contrary to earth) it lost its atmosphere because it also lacks active plate tectonics (also, contrary to earth).

So our solar system has 2 earth-like planets ... with one that became a desert and died, but that was once very much like Earth, with some people still hoping to find microscopic life at the poles.

That's not too shabby. Basically it is considered that if a planet holds liquid water, then it can carry life (liquid water implies other things, like the presence of an atmosphere). Bigger solar systems may contain even more earth-like planets, but I agree: an average of 2 is way too high.

EDIT:

Also, one other thing: if Mars wouldn't have lost its atmosphere, then oxygen would have spread faster than on earth, because the planet is smaller, which means the transition from microscopic life to macro would have been faster.

<comment><USER4> That's what I meant by "it depends on your definition of Earth-like". Mars and Venus are at least debatable, many of the planets being reported as "Earths" in the media aren't. (Yet. I freely acknowledge this will change, and soon. I have no doubt that we will find rocky planets of the approximate right size in the approximate right orbit in the near future. Getting a bead on their chemistry and such is going to be a lot harder for a while, though, but we'll crack that too, eventually.) I tend to favor "actually capable of supporting life" but the equation doesn't seem to actually require that.

Mars has the strike against it that it is arguably on the frozen side of the zone of life. Earth is actually already on the somewhat cold side and has spent a fairly large portion of its life as an ice planet; some have speculated that our frequent ice ages have contributed to our diversity of life by moderately predictable periodic mass extinctions, but of course this is just a theory in all the bad senses of that phrase. Venus is possibly too far on the hot side but I have an easier time envisioning life on a relatively hot planet than a relatively cold one. We have extremophiles here on Earth and who knows what they'd be able to evolve into if they weren't in such a small niche? Whereas cold really puts a stopper on life; a critter can evolve that can survive being frozen and possibly even carry on simple life functions but only at a very slow rate, and for all we talk about how fast and robust life is it does not take very much slowdown of life before you can't get an intelligent civilization evolved before the sun ceases to support life. Life is thought to be ~3.5 billion years old here, and it's hard to pin down exactly how long the sun could sustain non-intelligent life but it could be as little as ~1 billion years. Cold life has a real challenge getting to intelligence in time. (Also why I don't spend any time wondering about life in nebulas; they may be a science-fiction staple but at the rate they could live they don't have enough time to evolve into anything interesting before the heat death of the universe.)

</comment></comment></comment></comment></comment></comment><comment><USER6> Its interesting that Alpha has the equation baked in. What would be more interesting would be to see a regularly updated version of this with the latest cosmological data coming in from telescopes like Kepler. Over the next 3-5 years, Kepler is going to be finding Earth-size planets that exist in their star's habitable zones.

For those not familiar with how Kepler is finding planets, I'll explain. Basically, Kepler looks for planets transiting in front of their stars. The telescope watches for dips in the star's light. If the planet has an atmosphere, in some cases it can even get an idea of some of the gases from the light.

The reason that astronomers aren't expecting to find Earth-size worlds in the habitable zones is that they have to wait for several transits to know for sure they've seen a planet. The reason that most of the planets found to date have been gas giants orbiting very close to their stars is that it only takes a few weeks or months for them to transit the star several times. Astronomers can see one transit, but have to wait for a 2nd to hypothesize a planet is found, and have to see a 3rd or more transit to verify the planet is real.

So Kepler has likely already detected suspected Earth-size planets in habitable zones around at least a few stars. However, the telescope has to watch for several years to confirm the transits. Imagine an astronomer in another solar system that has seen Earth transit the Sun. They would have to wait 3-4 years to see Earth transit the Sun several times to confirm our existence.

Edit: Meant to include this earlier. There are multiple ways to detect exoplanets, including the transit method. [http://en.wikipedia.org/wiki/Methods_of_detecting_extrasolar...](http://en.wikipedia.org/wiki/Methods_of_detecting_extrasolar_planets#Transit_method)

<comment><USER7> This is something I have hard time understanding. Most of the stars are having star flares most of the time. If they're like our Sol, they have periods of high and low flares activity, but within the periods the pattern is random (i.e. noise). Presumably, the change in luminosity caused by a random flare is bigger than by a planet transit (remember transit of Venus?). So how are they filtering the noise out?

<comment><USER4> There's no quick answer to that question, unfortunately, because if you want something other than handwaving the answer is to go learn about the basics of signal processing. But in short, the signature of a set of random flares and a regular crossing of a planet are sufficiently different that they are easily separated by the correct tools, the frequencies are totally different.

<comment><USER8> Are there any resources you could recommend for learning about signal processing?

<comment><USER9> You could try reading (and working through) "Structure and Interpretation of Signals and Systems".

</comment></comment></comment></comment></comment><comment><USER10> If I had a buck for every distinct interpretation of values for the Drake Equation, I wouldn't need to grade homework for a living.

Whether this is a comment on the Drake Equation or my salary is an exercise left to the reader :)

</comment><comment><USER11> What's really depressing is if you assume the number of communicating civilizations is 1 and make average lifetime of communicating civilizations be the free variable.

<comment><USER12> You might be interested in The Great Filter, although it probably won't make you feel any better: <http://hanson.gmu.edu/greatfilter.html>

</comment></comment><comment><USER13> note that the drake equation gives the number of _currently_ communicating civilizations.

if you think there are 10 communicating civilizations now, each communicating for 10000 years, then there should have been quite a few such civilizations in the 13000000000 year history of our milky way galaxy.

if the parameters provided apply for 1% of the milky ways history, we would expect 13000 communicating civilizations in total.

i would imagine any communicating civilization lasting 10000 years would also develop self reproducing space probes, thus becoming a permanent feature.

<comment><USER14> When first stars appeared they were made out of hydrogen. It seems that you have to wait for second or third generation stars (formed from rests of previous defunct stars) in order to have heavy elements that would form planets and allow life.

We could be the _first_ , or one of the first civilizations in the galaxy. Trouble with the equation is that it does make nobody happy. As we are knowing better some factors (like how many stars have planets) it seems that life should be everywhere.

But it's enough that one the still unknown unknowns is worse than we think, to make the density as low as a few dozen civilizations in the galaxy. That's too far for us to communicate in a 10.000 years scale.

BTW, I find this 10.000 number is cruft from cold war era. Some people love the extintion idea, not sure why.

</comment></comment><comment><USER15> The best response to the Drake opinion, IMO, is Tipler's point that if even one civilization created and sent out a von Neumann machine just a million years ago, they'd be here by now. So the fact that we don't see them all over suggests that they do not exist at all.

See [http://en.wikipedia.org/wiki/Von_Neumann_probe#Implications_...](http://en.wikipedia.org/wiki/Von_Neumann_probe#Implications_for_Fermi.27s_paradox).

It should be noted that if our civilization survives another few hundred years, we are likely to send out von Neumann machines.

<comment><USER16> We are? I find that a rather bold assertion. The main problem of the von Neumann machine is gathering and _transforming_ enough materials on its own. If we need enormous amounts of ore and factories to do that, so does the machine. It would need to be mindboggingly _huge_ , also because it needs enough fuel to reach new sources. A tiny machine won't work, because it can't refine it's own materials. Really, the practical problems are being hugely underestimated.

</comment></comment><comment><USER17> The Drake Equation's most telling fault, for me, is the "average lifetime of communicating civilizations".

The default is 10,000 years. That results in 10 civilizations. A 1,000 year lifespan means there is only 1 civilization, and a 100,000 year lifespan means there are 100 civilizations.

As if we have any idea how long a communicating alien civilization would last. We don't even know how long we will last, and aliens would be completely different to us.

</comment><comment><USER18> A quick thing to notice, if you fiddle a bit with the variables, you can get the answer "1" to the number of civilisations in our galaxy. Just decrease the probability of life or intelligent life. After all, it took 3 bn. years before the first multicellular life developed on Earth and 1bn. years for intelligence to develop afterwards.

</comment><comment><USER19> Seems low considering Milky Way has between 200,000,000,000 and 400,000,000,000 stars.

<comment><USER9> But a year is not that long, either.

</comment></comment><comment><USER20> <http://xkcd.com/384>

</comment><comment><USER21> Why the search of ET Intelligence is of _any_ significance for mankind (or even science for that matter)? Even if we assume that ET life exists, in all likelyhood, after spending billions of trillions of dollars, we may get to know that ET exists (assuming they do), are thousands of light-years away from us.

Apart from the curious "are we alone?", does answering this question, has any positive/productive outcome?

<comment><USER22> I hear that "transistor" thing is pretty much a waste of time too. A scientific curiosity at best.

It's not necessarily about the destination, the stuff we find on the journey is valuable in its own right.

</comment></comment><comment><USER23> That's some optimistic data there.

<comment><USER24> That's what I thought - "average number of Earth‐like planets per star with planets: 2"... really?

<comment><USER25> I'd like to know where that value comes from, is there any scientific basis to it?

<comment><USER26> When the equation was first proposed, I'd guess they assumed Sol is an "average" solar system, and given that we have Earth, which is by definition Earth-like, and Mars, Venus, and several of the Jovian moons, which could all fit a suitably loose definition of "earth-like", Drake might even have thought he was being conservative.

</comment></comment></comment></comment><comment><USER27> 2 earth like planets per star with planets? that's bold.

<comment><USER28> Depends on your definition of "Earth like". Mars would fit some definitions - rocky, atmosphere, water present.

<comment><USER23> I assume "Earth like" in this context means planets that resemble the only planet known to hold life at least enough to be capable of holding life themselves. The problem is we don't even know what that means exactly. It's also assuming that life can only exist in "Earth like" conditions.

Also, if Fraction of Earth‐like planets that develop life = 1 and Mars is an "Earth like" planet, are they assuming life evolved in Mars too or something?

</comment></comment></comment><comment><USER29> Shouldn't the answer be 42?

<comment><USER30> That was a different question.</comment></comment>


Ask HN: is C# Evil or Not? - <AUTHOR>

I'm a C# guy, and though I'm not a big fan of Microsoft, I find some (see: some) of the things they do rather helpful and occasionally reasonable.
I'd like to ask: Given the fact that C# is/has been an ECMA Standard, and now its an ISO lanaguage too, Why do people still think its /Evil Inside/? I realize RMS and his friends have made it look oooh big and scary, but really, what's the point?
some of the arguments I've heard are: - Not totally free - Microsoft, therefore, EVIL! - RMS said it was evil therefore, EEEEVIL. - Changing standards - not native code (therefore, EEEVILL) - Its worse than java
What's the HN take on it? Purely technical, please :) <comment><USER2> C# has advanced more as a language than Java has in recent years. The JVM has made great strides in terms of performance, and Scala, Clojure, et al., have been success stories of the Java ecosystem, but Java itself has sort of just lingered. The main difference that people call out is that C# supports higher order functions, lexical closures, and other constructs from functional programming, whereas Java does not.

My experience has been that using C# means vendor lock-in, which is lack of freedom from the tools you use to the types of projects you work on. The language is great but the politics, licenses, and toolchain built around it suck for tinkerers/hackers. All substantial changes to the platform come from on high in Redmond. There was a great post on this on HN last week: <http://whatupdave.tumblr.com/post/1170718843/leaving-net>.

</comment><comment><USER3> I believe that most people blend C# and .NET together. C# is a standardized language. .NET is a closed platform. Anyone can implement C# the language. You can write a compiler that outputs Java byte code if you really want.

But a language isn't that useful without a standard set of libraries (or platform).

And I believe that is where you run into issues. Novell has made a clean room implementation with Mono. And many people believe (myself included) that Microsoft would be doing itself more harm than good to go after Novell's clean room implementation of some of the core System libraries. But there is no guarantee that someday they won't do it. Other than the fact that there is no money in it.

</comment><comment><USER4> My take on is that it's a language and a bunch of libraries - no more or less evil than, say, Perl. If there is evil to be found, it will be in what is created with the language, not the language itself.

The only exception to this rule is Lisp. It's parentheses all the way down to Hell and back with that one.

</comment><comment><USER5> > Purely technical, please :)

Technically, C# is the language. Only live things can be good or evil. Microsoft is the Evil company, and C# is their language.

For example, A-bomb, technically, is a big nuclear bomb. It is good thing in our hands and evil thing in their hands.</comment>


Sony to Launch Google Glass Competitor Along with an SDK - <AUTHOR> http://www.programmableweb.com/news/sony-to-launch-google-glass-competitor-along-sdk/elsewhere-web/2014/12/17 <comment><USER2> I wonder how tough it is to compete with Google Glass considering it has failed to get popular.</comment>


Elementary OS Freya Beta 2 - <AUTHOR> http://blog.elementaryos.org/post/110481021076/freya-beta-2-is-here <comment><USER2> Side-note: please don't publish checksums over unencrypted channels, and please don't use MD5 for image checksums.

Technically, it's no problem if the intended use-case is not to verify against tampering but against transmission errors. However, it's a fine line that people easily cross by accident.

It helps with global education if we condition people to never accept checksums from unencrypted sources, and to be wary of MD5.

</comment><comment><USER3> After that blog post of theirs where they called everyone who took advantage of the free option they provide "cheaters", why would I want to use or recommend a Linux distro that provides nothing but a shoddy OSX GUI ripoff?

<comment><USER4> By putting cheaters in quotes, you're putting words into their mouths. I didn't find the word cheaters on that page. They are making a solid point about the cost of open source software and about how free software isn't free.

<comment><USER5> The another blog post originally[1] had the phrase:

"We want users to understand that they're pretty much cheating the system when they choose not to pay for software."

And like, they have this on their home page:

"100% Free elementary OS is completely free, both in terms of pricing and licensing."

So it's weird to mention cheating or talk about making it harder to download for $0 while talking up the free pricing in their ad copy.

[1] [https://web.archive.org/web/20150211113458/http://blog.eleme...](https://web.archive.org/web/20150211113458/http://blog.elementaryos.org/post/110645528530/payments)

<comment><USER6> The statement on that page that I find most bothersome:

 _If we want to see the world of open source software grow, we should encourage users to pay for its development; otherwise it'll be underfunded or developers will have to resort to backdoor deals and advertising. And nobody wants that future._

There really are distros that have a business model which isn't shady. It's a lot of work to do something like have a free version and an enterprise version, you have to do boring things like sell and market and support, but those sorts of things don't represent some kind of Open Source apocalypse.

There are even distros that have a business model of asking for donations without being all passive-aggressive about it...

</comment></comment></comment></comment><comment><USER7> I am an elementary OS user and I'm a cheater. Well, kind of..I installed Freya when it started being developed and am following it's development. To those people who say that it's just a "skin" on top of Ubuntu, and that they shouldn't take let people pay for the work of others I say: then Ubuntu shouldn't take donations for the work of Debian. Then Debian shouldn't take donations for the work of the kernel developers. Then no-one should take money from anyone, unless he's developing a single library that's not dependent on anything. Also, if eOS is only a skin for Ubuntu, then Ubuntu is just a skin for Debian, with its fancy Unity and other visual stuff..right? Nah. If you cared to try, you would have seen why people like it. Because it's polished. Because it's lightweight. Because there's care in the details. Basically, everything that's missing from other DEs.

The wording in the post sure is wrong, but hey, they're not PR people and it's easy to upset people on the internet. I don't feel like a cheater, but I feel a bit guilty to not have donated to a project I use and like (even though I submit bugs and stuff), and I think _that_ is the feeling they wanted to give users that don't donate. People should be aware that if you don't have some guy with a load of money that pays for development, or some other kind of business that sustains your product, you're dependent on donations to keep the project growing. Also, if you're not helping in any way (bugs, patches, desing,..), a donation rewards someone else's work on important stuff (also upstream projects!)

</comment><comment><AUTHOR> Plus a new Beta site: [http://beta.elementaryos.org/](http://beta.elementaryos.org/)

</comment><comment><USER8> Selling free software is perfectly legal as long as you provide the source code. That's what Stallman itself said countless number of times. The "free" in free software stands for "freedom", not "free beer".

I definitely accept this way of bringing money in the project. Software development is time-intensive labour and time is money. You all know that, do you?

Some mentioned "Let the business-people pay" (better known as "Open Core"-model). This is only working if businesses are interested. Elementary OS doesn't target business usage or has business-relevant elements, so that will go nowhere.

</comment><comment><USER9> Elementary OS. What's their deal (approach, unique selling point)?

<comment><USER10> A mix of technology, design, and community. The elementary community are actually writing apps designed for their desktop which is sadly rare in other distros. Everything they do is design oriented. Kind of feels Mac-ish but with obvious speed and usability improvements. elementary's approach to multiple desktops is much stronger than OSX's current offering. Their theme is a bit stale now but the awesome elementary community is writing tons of gorgeous themes (worlds better than anything on gnome-look). Unfortunately a lot of them have weird quirks when run on non-elementary distros but they're perfect on elementary

</comment></comment><comment><USER11> "Free and open" but the only way you can download it without it asking for a credit card number is manually entering $0 in the "custom" field?

<comment><AUTHOR> There's a clear explanation for that: Quote from their blog post:

"Why We Make You Type "$0" We want users to understand that paying for software is important and not paying for it is an active choice. We didn't exclude a $0 button to deceive you; we believe our software really is worth something. And it's not an attempt to get rich quick; currently the only people who have received money for working on elementary OS have been community members through our bounty program.

It's about asking a fair price to offset the costs of development. It's about securing the future of elementary OS to ensure we can keep making software that millions of people love and use every day."

<comment><USER12> While I understand their explanation - and agree with the theory - in practice the same active choice would be achieved by displaying a $0 button that users have to actively click on.

The simple fact is: when I first went to their website I assumed it was a paid package.

</comment></comment></comment><comment><USER13> waiting for the final version

</comment><comment><USER14> I find the window management to be pretty terrible. I guess this is trying to bridge the beginner distro gap between Windows and Ubuntu, because I couldn't see anyone seriously using it for very long. Then again I felt the same way about GNOME3, so maybe I'm not in the majority there.

<comment><AUTHOR> I actually find window management not that bad, it's similar to OS X in that matter.

<comment><USER14> I can't disagree with you there, but my MBP does mostly sit gathering dust unless I really need OSX for something. Different strokes.

It is pretty impressive how much they've been able to pull together in their desktop environment and custom applications.</comment></comment></comment>