Fun with Shellshock - <AUTHOR> http://blog.regehr.org/archives/1187 <comment><USER2> tl;dr: This software immediately recognized Shellshock for what it was, modified live processes to protect itself, then wrote a patch and re-compiled bash in a few minutes... all with a single malicious request.

This sounds like science fiction. I love it.

<comment><USER3> I have to be honest; at first I genuinely thought it was science fiction. It sounded like a William Gibson novel.

</comment></comment><comment><USER4> While this is cool, if it can block the attacks, I think I'd rather leave it at that than have it guess at a possible fix and automatically recompile applications. That's definitely a cool experiment, but in real life I'd be way too nervous to allow software to make those calls on its own. If there was something it could subscribe to and receive human-vetted patches for a certain attack signature and _then_ automatically recompile, that'd be pretty cool and feel a lot safer.

<comment><USER5> stop being afraid of the future, this is experimental technology, and one day it will be the present, and normal. a vulnerability is not fixed till it's patched, if you tried to access /etc/foo, A3 will recognized you don't have access and block it, but if you have access to /usr/bin then it won't block it, an attacker then can craft an exploit to only use what they know you have access to, say netcat in /usr/bin or wget to get a shell and carefully try to bypass your other security layers.

<comment><USER6> While I agree that the technology is impressive I personally don't want to wade through codebase full of machine-generated patches. Making sense of code when the original author is not available is bad enough, I don't want to know how bad it gets when there is no author.

<comment><USER7> I've got an old-ish SVN repo at work with a ~115k loc Angularjs app, which is the end result of some very poorly thought through decisions to "allow all merges". It "works", but it's now completely unmaintainable (and has been since rewritten from scratch and the lowest effort way to add new features). It's a real shame, because the original dev (who wasn't involved in the botched merge) was actually doing some really good work, but the business kinda let him down with angular training for other staff, pulled him off that project, then let it crash and burn while not explicitly blaming him but making it clear they didn't blame anyone else... Not our proudest moment...

</comment></comment></comment></comment><comment><USER8> So impressive, although it's source code patches can likely disable needed functionality, and in the process allow a 0day to turn into a denial of service attack.

<comment><USER9> DoS is preferable to RCE though, in my opinion...

</comment></comment><comment><USER10> This is quaint but looks too much like "look how I solved this" (PS. give me funding) multiple weeks after the fact, and is definitely coming from such a bureaucratic environment. The overall approach leaves the critical question of service-specific security policy development out of scope.

We've had NSA SEL since 2000, the reason it's rarely used is that regular people don't have time to grok that level of detail. In response, we have things like _grsec_ learning mode.

As with any time app-specific ACLs are brought out, the _real_ question here is process, not technology. I would argue that what is really needed is not a kernel-specific solution or a protocol-specific solution (noticed how many of the new SOA infrastructure half-solutions are HTTP-only or port-level only regarding network policy?) but rather a generic, industry-wide approach toward multi-faceted security policy generation for arbitrary services including all aspects of service behavior (at both host and network levels). That in turn requires a virtualization paradigm, networking paradigm and OS neutral service devops process. This is something that we are moving towards slowly (eg. widespread _git_ use, standardish build tools, containers, VLANs), but is not widely discussed.

We have the tools in major kernels already: syscall monitoring, relatively mature multi-subsystem security policies, network ACLs and monitoring systems, increasingly sophisticated networking virtualization solutions like Open vSwtich, filesystem-neutral monitoring. The pain in the ass is putting it all together in an average-app grokkable manner that doesn't demand comprehension of low-level OS internals from regular developers, nitpicking application behaviour comprehension from operations infrastructure, or the employment of security nerds to reap the benefits of some of the available lower-level technologies.

I fear commercial offerings will never take us to this position: it's simply not an easy sell (intangible, long term benefits vs. shorter overall timeframe and less cognitive overhead / requisite management grok for current and familiar development processes) and too complex to implement .. in most cases requiring a complete devops process change. Instead, I predict that we will slowly see open source devops tools layer upon RCS/VCS to provide a common continuous integration / deployment process that integrates effective multi- subsystem application profiling for security policy development in parallel to regression tests and other pre-deployment processes.

Further personal thoughts on this area @ [http://stani.sh/walter/pfcts](http://stani.sh/walter/pfcts)

<comment><USER11> I am one of the developers, so I can offer some small clarifications. While it was not clear from the writeup (and when it got posted) this experiment was run 2 days after the bug disclosure and well before patches started to stabilize. The post had to go through a review before we could publish it.

The A3 stack relies on syscall monitoring (via virtual machine introspection), network filters (which are protocol specific) and filesystem-neutral monitoring. Some of this stuff is readily comprehensible to a sysadmin, other stuff is not. Automatic application profiling is an area of ongoing work for the project.

<comment><USER12> This is very interesting work. Thanks for publishing it. One thought experiment for you (which perhaps you've discussed already): could an attacker potentially influence and predict the state of patched software on the target system, introducing vulnerabilities which did not exist prior to patching? Also along that line, have you attempted to fuzz the input fields in scenarios such as your shellshock example?

<comment><USER11> That thought experiment falls under the umbrella of adversarial machine learning, which is something that we are aware of but has not been a focus for us thus far. Getting the correct adaptation in the first place was the primary goal. To trigger adaptation/patching, an attacker needs to drive the protected application to an undesirable state (exploit it, in other words), so an insidious attack that predicted and triggered multiple patches in the name of creating some ultimate vulnerability is a pretty high bar to clear. I would not claim it is impossible, but I do not know under what conditions that path would ultimately be easiest for the attacker.

We have done some work with fuzzing malicious inputs to produce better network filters, but that work focused on integrating a 3rd party fuzzer: [https://dist-systems.bbn.com/papers/2013/Automated%20Self- Ad...](https://dist-systems.bbn.com/papers/2013/Automated%20Self- Adaptation/A3_SASO_WS_2013-CR-Final.pdf)</comment></comment></comment></comment>


My experience with Sarah Jeong, Jason Koebler, and Vice Magazine (2018) - <AUTHOR> https://medium.com/@therealsexycyborg/shenzhen-tech-girl-naomi-wu-my-experience-with-sarah-jeong-jason-koebler-and-vice-magazine-3f4a32fda9b5 <comment><USER2> Relevant to today's news of similar doxxing of Scott Alexander, author of Slate Star Codex (HN discussion: [https://news.ycombinator.com/item?id=23610416](https://news.ycombinator.com/item?id=23610416))

</comment><comment><USER3> Note the NYT later hired Jeong: [https://en.wikipedia.org/wiki/Sarah_Jeong](https://en.wikipedia.org/wiki/Sarah_Jeong)</comment>


Knowing 'How' - <AUTHOR> http://37signals.com/svn/posts/2968-knowing-how <comment><USER2> I think one of the problems that we have in learning 'how' is that it is very easy to explain why you have chosen a particular solution, but it is not easy to go through and explain why you _did not_ choose the near infinite number of other solutions that were available for the task. It is this negative knowledge that is so hard to communicate.

When I am training up junior programmers, I spend a lot of time explaining to them why I have chosen certain patterns in the code that they should use. Nevertheless, they invariably come back with 'yes, but why don't we do it this other way?" and then I have to explain to them the problems that that solution will lead to.

<comment><USER3> Sorry, I'm a little confused at this statement. That's not a problem with the approach, in fact it's exactly why such an approach should be preferred.

If anything you seem to be saying that you find being a mentor a p.i.t.a, which is perfectly valid but not really a part of this conversation.

<comment><USER2> Nah, you've just misunderstood me - sorry if I wasn't very clear :) I agree that being able to address an individual's concerns is very important, and I certainly don't consider mentoring a pita. The original post just expressed the idea that you can't teach everything through lectures and so forth, and I was trying to provide a reason why that is so.

</comment></comment></comment><comment><USER4> This article makes a false argument. It somehow seems to categorize programming as being different than other disciplines, and argues that programming needs "knowledge how". But this is really the case for virtually everything. What isn't best learned by practice? That's how you best learn math, plumbing, mowing the grass, writing, reading, circuit design, cooking, research, shooting free throws, etc...

In fact, everyone here knows about the popular 10,000 hours of deliberate practice rule. No one achieves competency through Matrix like osmosis -- not even programmers.

And I think what the author is missing when he/she goes to these conferences is that a conference session is a jumping off point. It's a place say, "I didn't realize you could animate that with that technique." And then you go home and try it and practice it. It's not about mastery at the conference, but awareness of something worth pursuing more.

<comment><USER5> I think you're modifying the argument yourself. I saw, at no point, where the author argued that programming, design, etc. are _different_ from other disciplines. It simply states that the author believes they are better learned by doing than by reading (to over-simplify it). I don't see where the author condemns any other method. I actually don't see any point at which you and the author are in disagreement.

<comment><USER4> He says, "I've long argued that UI design, programming, and product strategy should be learned apprentice-style with your hands and through experience, not through school and pedagogy."

There's a clear implication that there are other things that should be learned using some contrasting mechanism. And furthermore, the author, like many others, misses completely that school isn't meant to be OTJ training. If it were, more than half of your units wouldn't be 17th century female philosophers from Rwanda. To the extent that you directly study programming in school, it is almost all hands-on.

I am in agreement with the general thrust that people learn from experience. My point is that he opens this up with a somewhat false argument that in school you read things in a book and then you're done. That's not the case even at the worst schools (well maybe the worst). And then goes on to suggest that programming, UI design, and product strategy (whatever that is) is some how different. Here my point was that virtually every vocation in the world shares the trait that you need to practice the vocation. That's why there's actual cars in autoshops.

What a structured vocational education tries to do is to move you from topic to topic so that you cover the ground of a professional. This avoids the problem where as an apprentice you become really good at fixing this one particular bug, because that's the main job your mentor gets called out to do. Of course, you can move to a system where there are required skills you must exibit over your apprenticeship, but now you're just moving to structured education in a new cloth.

<comment><USER6> That is unfortunately how many people learn. I have had my share of design graduates coming to a job interview claiming that they are really best at the conceptual stage. I have later found out that actually even design schools have been focusing on that area.

We are left with a whole new breed of people who are craftsmen but being taught to like they are academics.

</comment></comment></comment></comment><comment> dot-dot-dot I tend to agree with this and don't buy the idea that college is necessary to give you a broad overview of a discipline. Sure, if you learn only one method of doing something, you are not exposing yourself to other ways. But whats to stop you from finding out about these other ways. This information is easier then ever to find. Surely the time for hand-me down curation (academia style) is approaching its end.

</comment><comment><USER7> "When I go to conferences about design I see a lot of declarative knowledge."

It's because he went to design CONFERENCE, not design WORKSHOP. The nature of conference speech is so much different from workshop.

<comment><USER8> The only differences between conference sessions and workshops are a) length and b) number of people in the room. How you use an hour in front of a room of people is up to you. Conference sessions don't have to be limited to bullets on a slide or purely declarative knowledge.

<comment><USER9> I'd hate to plod through some example that I could work through better on my own time.

At conferences I want to be exposed to new ideas that I can then go look up on my own. Just to pick an example at random, as someone who has never used Haskell, I'd much rather hear about "so, what the hell is a monad, really", rather than, say, someone sitting there showing me how to write hello world in Haskell.

</comment></comment></comment><comment><USER10> The author has a point, but the post itself is pretty light and the discussion here seems to reflect that.</comment>


Harrison Bergeron - <AUTHOR> http://www.tnellen.com/cybereng/harrison.html <comment><USER2> Always a great story, and more relevant than ever. (IMO, the short story is the pinnacle of literature - writing a good one is harder than writing a decent novel, and this is one of the best ever. Vonnegut nailed it here...</comment>


Nobody's Worried About 'Too Big to Jail' Anymore - <AUTHOR> http://www.bloombergview.com/articles/2015-05-11/nobody-s-worried-about-too-big-to-jail-any-more

<comment><USER2> > [...] the mega-banks are so reliant on regulatory goodwill that the > regulators don't need to rely on specific statutory powers to punish them. > Everything is a negotiation, in which the only thing the banks really have > to offer is money.</comment>


Google AI and search chief John Giannandrea steps down - <AUTHOR> https://techcrunch.com/2018/04/02/google-ai-and-search-chief-john-giannandrea-steps-down/ <comment><USER2> "our understanding is that he will stay at Google"

My understanding is that they are mistaken.</comment>


Downvoting should come with a mandatory one-line explanation - <AUTHOR> I think it would be very valuable, if downvoting would only be possible if one at the same time writes a short explanation why they downvote.
The reason for an upvote is pretty obvious. The upvoted author usually explained his point.
But what is the meaning for a downvote? This info could be very valuable.
For example, today I posted this:
https://news.ycombinator.com/item?id=11361031
What do I learn from the downvotes it got? That my post was too unfriendly? That the facts are wrong? That people disagree in some other way?
I would really like to know. <comment><USER2> I would guess you were downvoted for being sanctimonious. Not just harsh in your enumeration of the ways they screwed up, but throwing this in at the end, _" But please stand up and fight for the right thing. For a better world. Not just for a bit of profit by bending the rules"_, as if you didn't feel like it was enough to pile on to them, you had to make the judgment that they were just a bunch of bottom-feeding assholes. So I can see why you were down voted.

<comment><AUTHOR> Super interesting! Thanks! I can see it this way. But I would not have guessed it.

</comment></comment><comment><USER3> My experience is that you usually know why you were downvoted if you think about it, and if you have a pattern of being downvoted, at least one of your comments is likely to have someone reply to it explaining what's likely the reason.

</comment><comment><USER4> I'm still wondering at what point I will get to see the downvote button.....

<comment><AUTHOR> My guess is that you don't even have an upvote button.

You have that little triangle, but I don't think it really upvotes.

For example, this post has 5 points but is not on the ASK page. While older posts with just 3 points are. Probably because it is "upvoted" mainly by "little guys".

As I understand it, clicking the triangle only means "put this in my saved stories list" unless you somehow secretly become a real upvoter.

I think we all are still waiting for a community with transparent rules. So far, none has managed to get a lot of traction.

<comment><USER2> I think it probably got flagged, as many meta-discussions do. I upvoted it, FWIW.

</comment></comment></comment><comment><USER5> I get downvoted all the time, and sometimes I even deserve it, but I'm not about to start complaining about imaginary internet points.

</comment><comment><USER6> I suspect it was your tone. You did lay it on a bit thick even though factually correct. :)

</comment><comment><USER7> I constantly get downvoted. It's not very beneficial to your karma to have unpopular opinions here... Instead of up/down votes a la Reddit, which comes with the Reddit mentality, too, implement Facebook or Emoji reactions. Be positive! Best for your actual karma is to ignore and not to punish (i.e. downvote). Popular posts get more upvotes, so, they essentially push up the good stuff anyway.

I think downvote should only be a reply, but, of course, you can guess who downvoted you... which is fine as hackers should not be cowards!

</comment><comment><USER8> The info could be very valuable. Or it could be not valuable at all. It could be inflammatory. It could be dead wrong.

Remember, you are not your down votes. Or your up votes. Share the things you'd like to share. Hopefully, someone will appreciate it (whether they vote or not). Say the things you'd like to say. Be nice to people.

<comment><AUTHOR> If the explanation is inflammatory, I have a much better feedback then from just a downvote. For example, an insult would tell me "Ok, it's probably not about the facts for this guy. Otherwise he would have stated the facts he objects to".

</comment></comment><comment><USER9> I honestly think the entire idea of downvoting available only for selected users creates a mass conciousness manipulation tool. When some "authority" decides what's good and what's bad.

Why can't I use the downvote button? It either must be available to everyone, or not available at all.

And if you, HN founders, are afraid that newcomers can be smarter than you, then remove the ability to downvote altogether. Whoever dislikes a post, can just ignore it.

P.S. The entire user rating system here contradicts the resource name. Hackers do not believe in karma.

<comment><USER10> _I honestly think the entire idea of downvoting available only for selected users creates a mass conciousness manipulation tool._

Downvoting is available to anyone who has 500 karma points or more and is not for the selected few. That ability has to be earned so to speak..

<comment><USER4> Do you realize that you just said, in essence, that you have to be popular in order to dissent? That's like saying only celebrities should be allowed to voice their opinion.

<comment><USER10> _in essence, that you have to be popular in order to dissent?_

No, I am not saying that. And if I understand the _dissent_ correctly being used in the sentence thus, _hold or express opinions that are at variance with those previously, commonly, or officially expressed_ , you are already doing that to my post as an example and you didn't have to be popular to express such an opinion.:)

<comment><USER4> Incorrect.

Voting is a form of expression, and a comment has much less weight than a downvote in terms of ranking.

The only way to be able to express that type of opinion is by complying with the masses long enough to hoard enough karma. So, yes, only the "popular" people get that power.</comment></comment></comment></comment></comment>


Meet the man whose job it is to reassure ppl that Google search isn't evil(2018) - <AUTHOR> https://www.cnbc.com/2018/06/22/danny-sullivan-on-being-google-new-search-liaison.html <comment><AUTHOR> Danny was already Google's parrot (benefiting indirectly), at least he's more honest now. He took (IMO) his Google handler's job. Matt Cutts used to do this</comment>


Peter Thiel on the Bilderberg Group - <AUTHOR> https://medium.com/@omosanzalettere/peter-thiel-on-the-builderberg-group-d7b9983c4526 Peter Thiel says scariest thing about the Bilderberg Group is there are no conspiracies, no concrete plans for future <comment><USER2> The name of the conference/group is Bilderberg, not Builderberg.</comment>


Rapportive clone fills void left by LinkedIn - <AUTHOR> https://chrome.google.com/webstore/detail/rapporto/lobacefbncbcpbneaggicmoahbikkohg

<comment><USER2> No privacy policy? No details about how it works (without reviewing the source)? No ToS or licensing info?

</comment><comment><USER3> Honestly I would just be happy with an extension that uses local storage to store notes on a per-contact basis like Rapportive used to. I don't need any other fancy features and don't want to worry about a privacy policy/ToS.

</comment><comment><USER4> I've done: 1) Install extension 2) Allow permissions 3) Restart Chrome 4) Resign-in in Gmail

Doesn't seem to work for me. :/

<comment><USER5> I installed, logged out of Gmail, restarted my browser and re-logged in.

You also need to click on the actual e-mail address in the e-mail for it to popup, definitely nowhere near as elegant as rapportive and seems to work ~60-70% of the time

</comment></comment><comment><USER6> Be careful. This appears to be sending the result of every Rapportive API call to 126.96.36.199

<comment><USER7> That's skeevy, beyond using the Rapportive API.

</comment></comment><comment><USER8> The void is simply that you can't store notes anymore, right?

I recently downloaded all my Rapportive notes to find I had only used the feature once.

<comment><USER9> The void is that Rapportive was neutered to only show linkedin instead of a contact's full set of social services.

<comment><USER8> I didn't realize that. How annoying.

</comment></comment></comment><comment> o0-0o Wow, good work. Did you get this out the door in 24 hours or was is brewing for a while?

<comment><AUTHOR> I didn't make it, I'm just the op.

<comment><USER10> "Show HN" is intended for things you've made:

[https://news.ycombinator.com/showhn.html](https://news.ycombinator.com/showhn.html)

<comment><AUTHOR> Oops, can someone remove it?

<comment><USER10> I guess a mod will if/when they notice. You could email firstname.lastname@example.com and explain the mistake, they will definitely notice that.

<comment><AUTHOR> Email sent :)

<comment><USER11> Thanks! We edited the title.

</comment></comment></comment></comment></comment></comment></comment><comment><USER12> How does this work?

<comment><AUTHOR> Looks like it uses the same api as Rapportive based on the permissions it asks for when installing.

<comment><USER13> No, it is using FullContact APIs.

<comment><USER13> Oops.. you are right. They are using rapportive.

      var LOGIN_URL = 'https://rapportive.com/login_status';
      var LOOKUP_URL = 'https://profiles.rapportive.com/contacts/email/';
      var API_HOST = '126.96.36.199';
      var API_URL = 'http://'+API_HOST+'/api/profiles';

<comment><USER14> How do you access the source?

<comment><USER15> After installing the extension, open the extensions menu, find it and click "Inspect views: background page", then check the JS file that it references.

<comment><USER16> Any chance you can share the source in a gist or something?</comment></comment></comment></comment></comment></comment></comment>


Snowden revelations have been 'good and bad' for business, says Huawei CEO - <AUTHOR> http://www.theguardian.com/technology/2014/apr/23/snowden-revelations-business-huawei-ceo <comment><USER2> Huawei and Cisco/Netgear (which was recently discovered to _intentionally_ hide a backdoor [1]) hardware should be considered malicious and dangerous, and therefore we need to:

#1 - not rely on a few big players in networking equipment anymore, and instead focusing on helping smaller ones grow, preferably from Europe (not UK, though)

#2 - we need to pressure them and demand from them to have open source firmware on their equipment. Not open source? Not going to have my business then. This should be an unshakable principle going forward, especially from large government institutions, but also from end-users.

[1] - [http://arstechnica.com/security/2014/04/easter-egg-dsl- route...](http://arstechnica.com/security/2014/04/easter-egg-dsl-router-patch- merely-hides-backdoor-instead-of-closing-it/)</comment>


A Conversation with Guido about Callbacks - <AUTHOR> http://oubiwann.blogspot.com/2012/03/conversation-with-guido-about-callbacks.html?m=1

<comment><USER2> It seems to me that callbacks are a solution to a problem that green threads (Erlang, Go, Stackless Python) solve far simpler. A system of call backs with events mixing multiple logical processes into one thread of control seems very complex.

(Question: How do other people debug callbacks? If our state sits in a single thread with hundreds (thousands?) of functions waiting in the wings - how do we tease out the state and control flow of a single request?)

My experience with callbacks is all in Javascript. It can be a fun model, but the author's description of his own mental model for callback code illustrates the complexity of this approach.

Time will tell how this pans out. Will we be using callbacks in 5 years time, probably - Javascript isn't going away any time soon. Perhaps given that javascript will be the way more and more people start programming the callback mental model will be strong for years to come. I hope not, this may mean I will have to develop my own internal landscape to reason about all those callbacks. :)

</comment><comment><USER3> The latest changes to C# show us that asynchronous code doesn't have to be written like asynchronous code. Just have the compiler do the work for you.</comment>


Plasma Mobile - <AUTHOR> http://plasma-mobile.org/ <comment><AUTHOR> So, there is not much information on the website yet, but this is basically a full stack for mobiles, based on Wayland and Kwin for the UI and Ofono for the phone part.

The reference implementation is based on Ubuntu Touch, and use libhybris to get hw support. However, it's different from UT, by the fact that it's not using Mir, but Wayland directly through Kwin.

It seems to run Ubuntu Touch applications, X11 applications, KDE/QML ones and Jolla/Sailfish/Nemo ones. They seem to have Android apps on the roadmap too.

Except the drivers (through libhybris), everything is open source and numerous KDE/QML apps can run without modifications. It can also run without libhybris if you have kernel DRM.

The distribution is based on Kubuntu, and so far it works only on the Nexus 5.

<comment><USER3> Are there plans to expand hardware options? Is there a donate option? I can't wait to stop dealing with running Android.

<comment><USER4> HW Expansion : Not that I'm aware of.

Donations : [https://www.kde.org/](https://www.kde.org/)

Thanks for the support :)

</comment></comment></comment><comment><USER5> So much negativity in this thread. Where's your hacker spirit? It might not yet be as feature-rich or polished as Android or iOS, but this is a very hacker-friendly project!

I for one am really excited about this. I wrote about why on reddit[1].

Keep up the good work devs!

[1] [https://www.reddit.com/r/linux/comments/3ejo62/plasma_mobile...](https://www.reddit.com/r/linux/comments/3ejo62/plasma_mobile_a_free_mobile_platform/ctfmhn7)

<comment><USER6> Exactly. Pleople here should compare this against early Android/iOS, not with their 2015 version.

We should always support open/libre projects, as they makes us all richer, even if you dont directly use (or like) them

Cant wait to have a REAL linux in my pocket

<comment><USER7> There's no need to wait: the n900 was real Linux (with X, apt-get and anything you could want) as was the n9. If Nokia hadn't scrapped the n9 virtually as soon as it was finished it would be a serious competitor right now.

The experience, speaking as an n9 user who eventually moved to Android, was much more pleasant on the n9. The only problem was limited app selection.

<comment><USER8> There is a real successor to the N900 called Neo900:

[http://neo900.org/](http://neo900.org/)

Still in development but some really cool stuff like isolation of the modem.

</comment></comment></comment></comment><comment><USER9> Exciting stuff. I think it's important there is a solid open-source stack on mobile, even if most people won't leave iOS or Android behind. Is there any cooperation with the Jolla or Ubuntu folks, perhaps through the Mer project or common Qt development? It would be good to avoid duplicate work.

Have you been thinking about the hardware problem in the long run? Jolla has apparently decided to leave the hardware business; I'm not sure where open- source mobile developers will get (guaranteed) hardware for their systems in the future.

<comment><USER10> > Is there any cooperation with the Jolla or Ubuntu folks, perhaps through the > Mer project or common Qt development?

Aye. There's been some overlap on both on code and manpower between Plasma Mobile and Sailfish, and the KDE community is a major contributor to upstream Qt[0,1], including to code used by all of us.

0 = [http://pusling.com/blog/?p=362](http://pusling.com/blog/?p=362)

1 = [https://dot.kde.org/2013/02/14/akademy-and-qt- contributors-s...](https://dot.kde.org/2013/02/14/akademy-and-qt-contributors- summit-join-forces)

</comment></comment><comment><USER11> Awesome project. I pitty the negativity here because I always think it's good to hack around with new ideas and techologies, as it will catch many bugs and give possibilities to fix them. Speaking of Wayland, is it stable enough yet? I heard Gnome now fully supports it, which is neat. I wish XMonad would be ported to wayland though.

<comment><USER12> I also think it is an interesting project, even if it doesn't find any adoption. It's good for finding bugs in the software stack they use, and this projects existence means users have one more option. I'm curious (and a little bit excited to see) where it will bring us.

<comment><USER13> what was really awesome was discovering how pretty much all the work we did on kwin_wayland brought wayland on desktop closer. The mobile-specific bits of code are _tiny_.

The biggest problem actually was getting graphics up and running to begin with, there were weird libhybris/Qt 5.4/QtCompositor incompatibilities that had me stumped for months, _until_ we decided to go for Kwin directly.

</comment></comment></comment><comment><USER14> For something that is in the early phases this looks amazingly functional and performant on a Nexus 5 (Android itself had a bit more latency when I had the phone).

No reason for the crowd here to be so cynical, clearly they do have designers. For those holding the Apple flag, just compare the UI differences from Pixelmator and Mail.App to see there are many inconsistencies and that is fine, because different apps do different things.

</comment><comment><USER15> Free OS on your phone is great and all, but it's got that quirky linux UI problem where usability is an after thought to "me too" features.

For example, I can't read any of the text on the phone image on the front page, and physically the image on my screen is bigger than my iPhone. So the text is unreadable in the OS by default?

<comment><USER10> FWIW, this is very early and not representative of where we want the UI to be. A lot of our effort so far has gone into e.g. getting our Wayland story sorted out (we knew we wanted to be Wayland from day 1 on the phone, and do it properly to where every line of code we write also gets Plasma Desktop closer to being on Wayland) and getting all our service infrastructure ducks in a row on a phone device. Our community designers have in the meantime poured a lot of effort into generating user personas, design guidelines and mockups, but we're only just beginning to reallocate developer resources to realization.

This is open source -- you get to see how the sausage is made.

<comment><USER16> I'd actually disagree - this is a problem that KDE has in general. KDE has a focus on features and customisation but chronically lacks in the UI/UX department, whereas GNOME has a focus on UI/UX but is obsessed with one-size- fits-all and is actually going _backwards_ with options, and ends up somewhat braindead as a result if you don't like exactly what the GNOME team likes.

Seriously, KDE isn't new. Desktop has really shitty defaults, which is a major problem considering how many people don't know how to change the settings. I'm talking about "not a computer person" people, here.

<comment><USER10> > I'd actually disagree - this is a problem that KDE has in general.

Are you actually _disagreeing_ , though? We both seem to agree it needs work. And you're correct the challenge is partly an institutional one -- recruiting and retaining design talent and manpower, and fashioning new ways of working together. It's something we're aware of and working on, and if you'd like to work on it with us we'll welcome you with open arms.

The KDE community isn't unaware of its weak spots and isn't satsified with its weak spots; addressing weak spots is Real Work[tm] though, and doesn't always happen over night. We'd like to think we've made some progress (for example we've identified some things that _don 't_ work from past attempts, and that's useful institutional knowledge as well), though. And that it's very much worth doing.

tl;dr If open source is bad at product design, we'd rather not accept that as law of nature and work out how to get better. If that's a challenge you have an appetite for ...

</comment></comment></comment></comment><comment><USER17> Pretty interesting project. And it looks great. I understand that it's work in progress, but it really need to support more devices, even in this phase.

Looking forward to seeing how this will work out! A replacement for Android is much appreciated.

</comment><comment><USER18> Is it supposed to be obvious what these components are? "What is a plasma phone?"

"Plasma Phone OS (or simply Plasma Phone) is a complete software stack for mobile devices and includes the following libre technologies:

Plasma Mobile (a Plasma-based shell), KWIN/KWayland, Voicecall, Ofono, RIL, OHM, Telepathy"

Aside from Voicecall, I have no idea what these are or why they would be desirable in a phone.

<comment><USER19> This isn't a pitch to average joes, its for developers, particularly those engaged in the Linux ecosystem.

Plasma is the KDE desktop shell. It recently released Version 5, which is very pretty and a lot of people like it. This is a mobile version of it, which I guess is similar to what the Plasma Active / Plasma Netbook projects were - reskins of the shell for smaller screens.

KWin is the KDE window manager. It recently got Wayland support, which is the next generation display protocol of the Linux desktop. Gnome also supports it now, so it will be replacing the 3 decade old Xorg server which is a security nightmare and major impediment to getting graphical GNU/Linux on more devices.

Ofono is a free software telephony library, so that you don't have to reinvent the wheel to support phone calls on phones. Its part of why Android distributions are so different from Linux ones - each vendor provides the full telephony stack guts, and while Android provides call APIs pretty much every system component in the phone is a binary blob shipped on the stock ROM images that developers need to copy off to ship a custom ROM. Which is why you download one Ubuntu for x86_64 but there are dozens of Cyanogenmod images for all the devices they support.

Telepathy is a messaging framework used by Jolla, Gnome, and KDE. It supports a wide variety of protocols, from XMPP to SIP to libpurple (which means yahoo messenger / aim / msm support amongst others) and newer messaging providers like telegram or tox. You basically import the library and you can provide one UI to dozens of messaging / file transfer / voice or video call services.

Coming up short on what RIL or OHM are abbreviations for in this context, though.

Its basically a tech listing, mostly to say "this uses the stuff you already do rather than reinventing the wheel".

</comment></comment><comment><USER20> That video intro needs some serious work.

Tips:

\- Add narration

\- Keep the video under 3 minutes

\- Use an attractive pair of hands in the demo

\- Stick to high level features

The most important suggestion is adding narration. I had no clue why I was being shown some of these apps.

</comment><comment><USER21> This is great. I really look forward to seeing where it goes.

As an aside, KRunner is the best, most powerful and useful launcher I have ever used.

<comment><USER19> If KDE could get good voice recognition like Google Now (somehow) voice activated Krunner on a phone would be insanely juicy.

Doesn't Google have Voice Recognition APIs? Would it be alright to use their services in KDE?

<comment><USER22> not having your voice stored on Google's servers is one of the reasons people are still keen on properly open phones.

</comment></comment></comment><comment><USER23> Krunner is my favorite part of KDE. Glad it's part of this project.

</comment><comment><USER24> I've lost all hope in the KDE project, they simply don't understand UI / UX design.

<comment> chestnut-tree I think the main problem is that the open source model of software development doesn't really work when it comes to visual or interaction design. We've all heard that phrase 'design by commitee' but that's what you get when everyone wants a say in the way the UI works.

I can understand why this happens even though the outcome is often an unfriendly UI. Imagine you're a developer who's spent time and effort contributing to an open source project. Naturally you'll have an opinion on the UX and what suits your preferences. Everyone else using or contributing will also have a strong opinion. The moment you try and delgate visual and interaction design to a small, dedicated team is the moment the whole project generates enormous resentment from the "community".

Plus, any attempt to (sincerely) improve or simplify an interface will always be met at some point with the charge of "dumbing down".

Open source and design have never had a good relationship. I wish it were otherwise, but I don't know how it could be made better.

<comment><USER21> What do you find 'unfriendly' about Plasma 5 and Breeze?

<comment> chestnut-tree I was talking in general about Open Source and design not about Plasma. But since you ask, here are some small things I noticed in the video

\- Mismatched visual styles: when you tap the phone icon, you get a bar of three icons. Two are simple line icons (History and Contacts), the third is a detailed picture of a keyboard to denote keypad. A minor thing and easily fixed.

\- Interface inconsistencies: I noticed that a large red X is used for closing a screen (which I like over the sometimes unclear Back button behaviour you get in Android). But at 3:16 in the video the Wallpaper screen has a 'close' button (with X) and below that in the tab bar is the larger red X for closing too. So you have two close functions on the same screen. You see the same duplication on the date and Time screen at 3:41. By the way, I think the way Windows Phone lets you change date and time is much nicer. It's a similar spinner approach to Plasma but less cluttered. Here's a video of it in action: [https://youtu.be/kIsWgCX7qtE?t=54s](https://youtu.be/kIsWgCX7qtE?t=54s)

Also, the commands 'close', 'cancel' and 'delete' all tend to use the same X icon in many UIs so if there is no label for X, then it's meaning (and behaviour) should be consistent across the OS.

\- Weather app: there is a 'hamburger' menu on the left and another slimmer hamburger menu on the right. They feel too similar visually. Presumably, the right-hand menu is equivalent to the overflow menu you find on Android. But are two menus needed here? Could they not all sit in one menu?

Obviously, this is a beta and these are relatively minor points. I can see some influence from Android, which is fine - there's no doubt that Google, Microsoft and Apple all study and are influenced by each others work. I just hope the OS stands up well as a unique UI rather than just a clone of bits from other OSes.

Overall, it looks quite polished for a version 1.0 and I hope the project succeeds. I would love to see an open source project take the lead in design/UX over existing projects.

</comment></comment></comment></comment><comment><USER25> Are we saying "libre" now, not "free"? Just want to keep up with the latest lingo.

</comment><comment><USER19> So nobody is talking about Plasma Active.

[http://plasma-active.org/](http://plasma-active.org/)

Some history, Plasma Active is about five years old now and its development coincided with a would-have-been-crowdfunded-toay tablet called Vivaldi that was supposed to be an open hardware device that never panned out because costs got out of control and interest waned.

It was based on Mer, rather than Kubuntu, and Qt4 rather than 5. Today it looks like a colossal wreck, and all the "Active" app UIs developed for it are all complete wastes of code and time today because QML was not mature enough when they made that "first attempt". Today there are common themed QML elements called the qt-quick-controls that everyone can use to build UIs that adapt to every devices native toolkit, while still supporting animations and flow elements and all the nice graphical perks hardware accelerated UIs allow.

Its been basically dead in the water for over two years, since the tablet project went belly up, and there even used to be a "Kubuntu-active" fork of Kubuntu that the project was maintaining as a way to try out the Plasma Active desktop on top of a Kubuntu core. The shell from Plasma Active did eventually see use in its adoption as the "netbook" interface found in Plasma 4 near the end of its lifecycle.

So you definitely want some post-mortum on the last KDE mobile attempt and you also want to consider how Plasma Mobile might succeed or fail in a similar vein.

Why did Plasma Active basically never do anything? Number one, no device support. It was not targeting phones at the time, and was instead looking towards tablets, but it never even ran properly on a Nexus 7 and those only turned up while it was on the decline. Without hardware, software is useless. This time around Plasma Mobile is shipping for the Nexus 5 out of the gate, a significant improvement. If they can make images for popular dev phones for a while, they will certainly have more potential devs than Active ever did, which pretty much amounted to building and running the shell in a child Kwin to tinker with, but never use on an actual device.

Number two, its UI was a wreck. This was before the KDE VDG, Breeze, and Material Design were a thing, so Plasma Active was built on ugly Oxygen and Active Apps were made with effectively prototype QML1 where you had to write your own button class. As a result, all the apps not made for Active (and most weren't, since it was dead in the water) were their desktop versions and unusable on small touch screens, and all the Active apps looked like you drew some rectangles on a white background you could click because that is literally how you made buttons in QML1.

Plasma Mobile does improve on this as well. Breeze, the new KDE theme, beats the pants out of their older defaults. They now have a KDE font, and a KDE icon theme meant to encompass everything, that are all consistent. they now have their visual design group making mockups and directing design for new apps and old, though there is an obvious schism between designers making mockups and anyone actually implementing them - there is an amazing Muon design that was never implemented into the final product which looks and feels like butt. And _not a single core KDE app in the KDE Software releases_ is shipping a QML2 powered UI that is meant for mobile that uses a common design language like Material. It means all the core KDE apps - Kontact, Dolphin, whatever web browser you want to use (Rekonq is dead, Konqeror is a zombie, and there are several new projects out there - for mobile, you might be able to get away with a dumb qtwebengine wrapper), Amarok (which also has another amazing VDG UI floating around that is still unimplemented), Dragon Player, etc. They all need mobile UIs, none of them have them now, and you wouldn't even want to make a mobile UI, you would want to make adaptive UIs - you would want all these programs to be able to scale from phone size to desktop size and readjust their layouts accordingly, because that is what QML2 is really good at. Its also a complexity nightmare, if anyone has tried a responsive website, albeit QML2 does so much of a better job equipping you with the tools to do that its almost not comparable.

Lastly, Plasma Active never had an app store. At all. Muon was still in its infancy back then, so you were using... Apper. Which is basically a worse Synaptic package manager, and Synaptic does not belong in the same room as a mobile phone UI. The newer appstream infrastructure and the future xdg-app tech should be great when it lands, but like I said before Muon is still a mess, though maybe that responsive adaptive UI redesign will also bring the VDG designs to the forefront finally and make it really great.

But Plasma Mobile supporting Ubuntu Touch Apps, Sailfish Apps, Firefox OS HTML5 apps, and Android apps with slashtik will definitely solve the app problem. Security might become a problem, then, though. You are now mixing debs, click packages, apks, app manifests, and RPMs from Sailfish on one system. Sounds like a giant mess. So do you just containerize everything? Good luck with that limited mobile phone storage and memory size. How does apparmor integrate with that mess? How about how Muon integrates knewstuff content from kdelook and kdeapps - those are literally just zipfiles it extracts into predetermined locations.

A lot of questions, but as long as they don't go over their heads and stay within their manpower - which if Active is any indication is that you really just need a core base working great before trying to take over the world - <USER2> should have much more potential than the last KDE foray into mobile.

The dream, of course, is that Sailfish / Ubuntu Touch / Firefox OS all eventually rebase off Plasma Mobile and just provide their own UI shells over it, so that all the major open source mobile players are working in one ecosystem rather than working in their own trees at their own companies not trying to play ball with the competition. Good luck with that one.

<comment><USER8> The big problem is device support and how vendors approach that. They just throw crappy Linux BSPs over the wall for GPL compliance. For any community project to approach Android levels of device support is impossible because it takes a multi-million dollar effort to rewrite all that stuff and merge it into Linux mainline.

</comment></comment><comment><USER26> I thought this was about a phone with a plasma screen :)

</comment><comment><USER27> Name (todo) is pretty funny

</comment><comment><USER28> Cool, another mobile OS who's finished like Android from 5 years ago.

</comment><comment><USER29> Great, a phone that supports telepathy. Just w3hat I've always needed.

</comment><comment><USER30> I'm sure the remarkable similarity to the www.spotify.com/uk homepage is just a lucky coincidence: [http://imgur.com/zPfdFX8](http://imgur.com/zPfdFX8)

<comment><USER31> My guess is it's using a pre-built Wordpress template.

<comment><USER32> It's using a webflow[0] template but with a seemingly customised template that whoever made it called 'plasma'.

[0] [http://webflow.com/](http://webflow.com/)

</comment></comment></comment><comment><USER33> Looks great. Would I want to use it ? Nope In order to succeed it needs to come in a polished product form.

But still gl and keep hacking.

<comment><USER34> What does "to succeed" mean? As long as it will be usable for me and some other people, not abandoned and keep progressing, it will succeed. It doesn't need to take over the market.

</comment></comment><comment><USER24> Yeah... new mobile platform is a really hard thing to do - and without a designer (whom they clearly don't have), it's impossible. Nobody will use this.

<comment><AUTHOR> Why are you so negative? Why do you say they don't have a designer? Did you ask? This is a technology preview, and for a new development platform, it's quite nice already.

<comment><USER16> As a technology preview, it sucks. Not many technical details at all.

So it's a full stack, and you can run apps from a variety of (Qt-based) sources on it. It also has a few phrases like

ENJOY NEW USER EXPERIENCE

ADAPTABLE USER INTERFACE

Focus on mobile devices.

 __FREE OS __FOR YOUR PHONE

Uhh, okay? Oh, and the video shows that the phone is basically an Android clone. Great.

I can't talk about the other person, but if I'm being negative it's because this has a really hype-ey 6-minute trailer advertising nothing of interest. Rule of thumb: Your trailer should never be more than two minutes, because otherwise it's probably _really damn slow_ , and frankly a minute is pushing it.

<comment><USER9> This is not a marketing video. It mostly shows how Qt apps work with little or no modification, and that it is possible to use existing software with minimal adaptation. I think it is interesting because if a few people can make a usable prototype with some effort, there is hope that some more people and effort can actually produce a reasonably nice open-source mobile system to build on; that a phone running on open-source software is not an impossible or far-fetched idea.

</comment></comment></comment></comment><comment><USER35> who is target market for this? No-one?

</comment><comment><USER36> This has got to be the worst phone UI i've ever seen. Can someone answer why this is special?

</comment><comment><USER37> Why does this even exist?

This must be some of the worst UI/UX I've seen in a while.

</comment><comment><USER27> I don't think the website is marketing the phone correctly. It should be really telling my I would want this phone over others.

</comment><comment><USER38> Too little and too late.

Even if the GUI would be perfect and much better than android or iOS (which I greatly doubt, simply because of the man hours that went into those projects) there are two big things missing. An ecosystem of apps+apis and IMO even more important: sandboxing.

Applications having access to basically everything just doesn't fit anymore today. It would have made much more sense to concentrate on these technologies and get sandboxing on the desktop, as all the competitors are also still struggling with that.

<comment><USER39> I think they are smarter than what you think , They know this is not for everybody , and this is not going to replace android/iOS ever. They targeting people like me who are sick of android/iOS because of closeness of platform.Even canonical with its huge budget admits they don't have plan to replace iOS/android (which as you told is too late for such product , even for Microsoft which have shitload of money ) but they targeting specific user's.

p.s. This is my understanding as simple end-user.I might be wrong.

<comment><USER28> There is no money in targeting the couple %. Hell, there's almost no money in Android either unless you're Samsung.

<comment><USER39> There is no money in android ? That is one of the funniest thing I ever heard in my entire life ! Just calculate how much android brought people to the internet , Then multiple it by some rate , it will be the money google make from advertising on android platform . How much internet going to grow , Google income will be grow also. Every search , Every app which you download from google play , It is direct money which goes into google's pocket, Put aside Google play income which it will get from every transaction _ 30% I think , I am not sure _ (which is huge but let assume google spend all of it on android ecosystem and maintaining).

p.s. Targeting does not only imply earning money.

<comment><USER28> [http://techcrunch.com/2015/02/26/apple-eating-all-the- profit...](http://techcrunch.com/2015/02/26/apple-eating-all-the-profits/)

<comment><USER39> You clearly misunderstood the article.As I mentioned eariler Yes , there is no profit in selling Android products _hardware:some , software:none_( which indeed article talks about that) , but that is not Google's strategy at all.Please search and read about Google's making money strategy.

Remember Android is "strategy" for Google, "point" is to bring more and more people to cloud/internet.thats why Android as software developed and available from Google for free.</comment></comment></comment></comment></comment></comment>


Show HN: An easy way to do more focused work in Slack - <AUTHOR> The easiest way to describe Focus Mode is, 'It's the Pomodoro technique — designed exclusively for Slack.'
It lets users add the task they're working on, set how long they'd like to focus on it, and how long the break should last between each focus period.
In essence, it's a nifty way to bring more focused work to the busy workspaces of Slack. The creators of Focus Mode are my team at Geekbot: the custom Slackbot that helps remote-first companies (including the likes of Zapier, Shopify, Zendesk) better manage routine tasks, like daily standups, in Slack. So to say we're at home in Slack is an understatement: and our Geekbot experience was invaluable in helping us see what else was needed to make Slack a more focused, less distracting workspace.
We're really proud of Focus Mode because it's simple to use (just three fields to fill in), it keeps your teammates in-sync with what you're working on (that's what the Geekbot mission is all about), and it auto-enables 'Do Not Disturb' — meaning you can get on with important tasks and avoid notifications from dominating your day. <comment><AUTHOR> You can check the product here: [https://geekbot.com/focusmode](https://geekbot.com/focusmode)</comment>


Mongrel2 - <AUTHOR> http://mongrel2.org/ <comment><USER2> Usually when people announce a product and give you little else but a future feature list, I'm sceptical.

Not with Zed, though.

<comment><USER3> This is the exact sentiment that makes me respect the guy. He's an asshole and loves to complain REALLY LOUD to eat up the attention.

But he's dead sincere when it comes to making things. He's like _why's evil twin.

<comment><USER4> Agreed, but for one thing. He IS NOT an asshole, not in real life. He's actually super-nice. Online he has the asshole persona, but that's it.

<comment><USER3> I'm with petercooper. If you act differently online, you're still responsible. His recent attack on Giles Bowkett was an assholey thing to do even before considering whether either one of them had a point.

That said, I'm not too worried considering his history with the Ruby community. I'd still have a better opinion of him if he didn't antagonize them though.

I'm absolutely certain he's a great guy in person. Asshole doesn't preclude you from being nice, personable, and even entertaining. Instead I take it to mean that when the bad side does come out it's nasty.

<comment><USER5> I find it bizarre that you can come onto a forum like HN and insult me, call me an asshole, and effectively slander me and that's quite alright. You're totally not an asshole at all.

But if I out-rant a dude who compares me to Lady Gaga and tries to kick me when I'm down for no other reason than to drive traffic to his poorly written blog and sell more videos, then I'm an asshole?

You have the same double standard all geeks have. You let the blow hards, pundits, and bullies get away with treating other people poorly, lie, and hype themselves endlessly, but when someone calls them on it you call them an asshole or worse.

<comment><USER3> You're right. It's easy to talk about people as though they're not people online, even when you're secretly trying to praise them. I'm usually finding myself agreeing with you when reading things like that and even loving the vitriol while wincing.

So I apologize for writing timidly previously. I apologize for standing behind your back and spreading my opinion in an unbalanced fashion. I made the classic mistake of forgetting I'm actually in public.

I'll say it to you directly. Zed, I'm glad you stand up for yourself, both against my clumsy commentary and all the other blowhards who strike at you. I'm even glad you do it so vocally because it is a damn good story: the wronged who doesn't go quietly into the night.

The only negative side is that your voice is corrosive and bitter and if it weren't I'd feel a lot more comfortable about agreeing with you. As it is I feel like I'm nodding along as the bully takes out that annoying kid who really just had it coming. It feels good, but society is built on not just sitting and watching that happen. Worse, I hate that I end up remembering that feeling whenever I read about any of the cool things you do.

So yeah, I still think you're an asshole. It's unfortunately not what's fair or what's owed but instead how it looks. I'm sure you're ready to tell me why I'm wrong, but don't worry because I've already got a truckload of cognitive dissonance going on. It doesn't help that I think Fret War and Shedding Bikes and Lamson and Mongrel are all great projects and am completely sure that you're a great friend to those who earn your respect.

I just see it as the image you've intentionally built for yourself. Starting with ZSFA and now eking into oppugn.us.

<comment><USER6> Zed's writing has generally struck me as being pure larrikinism (especially under the banner of ZSFA). Unfortunately I'm not sure that there is an analogue for larrikinsim in American culture and it's not a concept I can easily explain; there is a subtlety to it that makes it both difficult to convey and difficult to execute. If you Google it you might be able get an idea of what it's about and perhaps get a different perspective on Zed's writing.

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> I'm surprised that he's doing this... after so much vitriol about the Ruby (and Rails) community and being "ripped off" with Mongrel, I would have expected him to never touch it again. Granted, it's written in C, but I'd expect it to be heavily used with Rails.

That said, its good that he is writing it. The more software is written, the higher the likelihood that _something_ will be great, and when Zed Shaw's writing it, it's probably pretty good.

<comment><USER8> His primary use case is different for mongrel2 compared to mongrel however its based off the same HTTP parser and is a webserver so I guess the continuation seemed appropriate. Being completely written in C its going to be blindingly fast. I have a feeling it'll surge past unicorn, thin, passenger and everything else out there once its refactored and past beta.

<comment><USER9> The advantage of Passenger is that it takes care of dynamically allocating instances of your app, adding them and removing them as needs be. I don't think Mongrel ever did this: you had to guess at how many instances you might need and hope for the best. (At least afaik - no one has ever corrected me when I've said that in the past).

<comment><USER10> I'm not a Ruby guy, so this might be a stupid question, but: why would you need to run more than a single instance of an app on a given server?

<comment><USER11> Ruby 1.8 uses green threads, so running multiple processes lets you use all your cores.

As mentioned in another post, Rails used to not be thread safe. Right now I'm running a Rails site in production with multithreading enabled, but I'm sure many libraries in Ruby are not thread safe.

</comment></comment></comment></comment></comment><comment><USER12> Zed is a busy guy!

</comment><comment><USER13> I like that the configuration language is a sqlite database; sounds far easier than parsing ini files, for example.

<comment><USER14> I don't like that idea, because of one simple limit. You cannot diff databases (easily). Of course you can dump them, make sure the linebreaks are there between records, make sure they're sorted, etc. etc. But checking the whole config in or out of a VCS is much more useful in general. It also provides an easy to browse record of changes.

<comment><USER5> I'm aiming for operational understanding of the data model used over being able to directly work with the config file. If it's a .ini (or other conf) usually you have no idea how the config maps to internal data structures. It's a mystery why some stanzas in nginx work on FastCGI but not Proxies for example.

With a sqlite3 based "config file" you'll be able to use real, turing complete languages to configure it, create control pannels, distribute the config reliably, and you can run .schema to figure out how it's structured.

It's also incredibly reliable and has many great features for this kind of thing.

<comment><USER14> Isn't the nginx's problem solvable with consistent implementation and complete documentation too?

I guess running some programming script isn't that bad to configure the server - but right now, people do a lot of basic operations on configs via shell scripting which do the deployment. Using bash/sh to interact with sqlite doesn't sound very inviting.

<comment><USER5> Possibly, it's a littler early to tell, but I'm sure I'll make it easy to use from the shell. Could even be possible to create converters from other config file formats to the Mongrel2 data model as well.

</comment></comment></comment></comment></comment><comment><USER15> body{margin:0 6em;}

There, ftfy

<comment><USER16> Don't forget

font-family: sans-serif;

Instead of "sans serif".

</comment></comment><comment><USER17> Bonus point, it's licensed under AGPL.

<comment><USER16> AGPL is always good for misunderstandings and flame wars. Nice show. ;-)

</comment></comment><comment><USER18> Looks like the project web site also has a custom ticketing system and repo browser. Why not.

<comment><USER19> Zed loves Fossil SCM: <http://www.fossil- scm.org/index.html/doc/tip/www/index.wiki>

<comment><USER20> Fossil SCM is written by D. Richard Hipp. The same great guy behind SQLite.

</comment></comment></comment><comment><USER21> So is this a rebranding of NoNoSql, or something new?

<comment><USER21> Yikes, -4 for an honest question.

Looks like he renamed NoNoSQL to MulletDB: <http://mulletdb.com/index>

MulletDB uses ZeroMQ and sqlite, and communicates with JSON, so I thought maybe this was the same project heading in a new direction.

<comment><USER22> It's not really an honest question because he didn't bother to click on the link.</comment></comment></comment>


Show HN: dstack – an open-source tool to build data applications easily - <AUTHOR> Dear HN,
I am Riwaj, the cofounder of dstack.ai (https://github.com/dstackai).
A few months ago, we built an online service that allows users to publish data visualizations from Python or R.  The idea was to build a tool that did not require additional programming or front-end development for publishing data visualizations.
Such a code can be invoked from either Jupyter notebook, RMarkdown, Python, or R scripts. Once the data is pushed, it can be accessed via a browser.
Open-sourcing dstack: During our customer discovery phase, we realized that dstack.ai should integrate a lot more open source data science frameworks than we integrated ourselves. For example, as a user, I want to push a matplotlib plot, a Tensorflow model, a plotly chart, a pandas dataframe, and I expect the presentation layer to fully-support it. Supporting all types of artifacts and providing all the tools to work with them solely seems to be a very challenging task. With this, we open-sourced the framework. Now you can build dstack locally, and run it on your servers, or in a cloud of your choice if that's needed. More details on the project, how to use it, and the source code of the server can be found at the https://github.com/dstackai/dstack repo. The client packages for Python and R are available at the https://github.com/dstackai/dstack-py and https://github.com/dstackai/dstack-r correspondingly.
What's next: User callbacks-  so that application shows not just pre-calculated visualizations but also can fetch data from a store and process it in real-time.
ML models- so that data scientists can publish a stack which binds together a pre-calculated ML model and user parameters Use cases- Support specific use cases that help data scientists to build data science models into data applications as fast as possible.
We would be happy to get your feedback on the open-source framework and also get your opinion on what kind of use cases can be built on top of the framework?
Thank you. <comment><USER2> I am trying to use dstack on my device and it still asked for a login information, which prompted me to read the terms and under "User Content" I notice this

``` You hereby grant to Company an irreversible, nonexclusive, royalty-free and fully paid, worldwide license to reproduce, distribute, publicly display and perform, prepare derivative works of, incorporate into other works, and otherwise use and exploit your User Content, and to grant sublicenses of the foregoing rights, solely for the purposes of including your User Content in the Site. You hereby irreversibly waive any claims and assertions of moral rights or attribution with respect to your User Content. ```

Are these texts common ?

<comment><USER3> Yes, pretty common. They are intended to avoid a situation where you post your own copyrighted [1] content to their site, then sue them for displaying it without a license.

The long list makes it seem very broad, but this phrase constrains it quite a bit: "solely for the purposes of including your User Content in the Site." This would prevent them from using your content in an ad, or selling your content to some other company, for instance.

[1] Under U.S. federal law, all content is copyrighted upon creation. I hold the copyright on this comment, and I have granted Ycombinator a license to display it on the HN site.

EDIT - here is the relevant sentence from the HN terms of use agreement. It's actually broader than the language you quoted.

> By uploading any User Content you hereby grant and will grant Y Combinator > and its affiliated companies a nonexclusive, worldwide, royalty free, fully > paid up, transferable, sublicensable, perpetual, irrevocable license to > copy, display, upload, perform, distribute, store, modify and otherwise use > your User Content for any Y Combinator-related purpose in any form, medium > or technology now known or later developed.

<comment><USER2> does this apply only for contents posted on dstack data servers ?

<comment><USER4> Yes, this Terms of Use covers only the use of dstack.ai (hosted version) and doesn't cover the open-source tool.

The open-source tool is fully covered by Apache 2.0.

</comment></comment></comment></comment><comment><USER5> The github README is a bit confusing to understand (for someone with no experience). The [1] landing page shows a much clearer outline on what this actually is.

Seems like it could be good for making data-driven dashboard graphs. Although [2] the react library looks like it needs a bit more work.

Congrats on shipping something though!

[1] [https://dstack.ai/](https://dstack.ai/)

[1] [https://github.com/dstackai/dstack- react](https://github.com/dstackai/dstack-react)

<comment><USER4> Thank you very much. You're right, the README file needs improvements. We also don't have much tutorials yet that would show the tool from the practical point of view. Our short-term plans include: 1) Improving the documentation and writing more use-case specific tutorials; 2) Add more functionality for more interactive applications, including Machine Learning applications.

EDIT: Speaking of the react library, we've just finished a refactoring and plan to improve it too. Please don't hesitate to share your feedback, over email or via GitHub issues. And thank you!

</comment></comment><comment><USER6> I looked through github and see you have coded examples, can you also include the visual output so I can get a sense of what it'll achieve without having to set it up to see?

<comment><USER4> Sure,

1\. Here's the most simple tutorial how to make an interactive dashboard and share it: [https://docs.dstack.ai/tutorials/dashboards- tutorial](https://docs.dstack.ai/tutorials/dashboards-tutorial) It includes screenshots.

2\. Here's another tutorial with more realistic data: Output: [https://dstack.ai/gallery/d/b56128a3-522e-42d7-8662-9b1a768d...](https://dstack.ai/gallery/d/b56128a3-522e-42d7-8662-9b1a768dbc8c) The code for it is available at [https://github.com/dstackai/dstack-tutorials- py/blob/master/...](https://github.com/dstackai/dstack-tutorials- py/blob/master/covid-19-speed.ipynb)

Actually we have very few examples. We gonna make more of them within this week.

</comment></comment><comment><USER7> Thanks for sharing!

Can you elaborate on "What's next"?

> User callbacks- so that application shows not just pre-calculated > visualizations but also can fetch data from a store and process it in real- > time.

How are you envisioning this working? Will dstack be like a database? How will "user callbacks" be triggered?

<comment><USER4> Hi, thanks for the question. This feature is still in the design stage. The idea is pretty simple. Currently, you can push a pre-calculated visualization and associate it with particular user input. However, in many cases it's not possible to recalculate all possible combinations of user input in advance. That's why we'd like to let user push not a visualization but a function that produces a visualization. This function will be triggered when the user changes input. Such a function can do a visualization on the fly and if needed take the data from an external source.

</comment></comment><comment><USER8> Looks great, how do you compare to other alternatives in the same space?

<comment><USER9> What alternatives come to your mind? I'm looking for a solution like that and would love to get some insights.

<comment><USER10> streamlit.io is one that i've just finished trying, and find it easy to use.

</comment></comment></comment><comment><USER11> Does this need some License information adding to your repo? Something that protects you from someone taking this and running their own paid hosted version :) I take it it isn't MIT!

<comment><USER4> We open-sourced it under Apache 2.0 which we find quite permissive and OS- community friendly. You're welcome to run a hosted version. We actually have it running on dstack.ai (it's free currently but we of course plan to have paid features if there is such a need).

</comment></comment><comment><USER12> Your website theme seems to be similar to many others lately re: the cartoon figures etc. Is this a free/paid/opensource template?

<comment><USER4> The one on the website if I recall correctly was mostly designed in house. Gonna double check that with the designer. The blog post image was taken from [https://icons8.com/illustrations](https://icons8.com/illustrations) (free). There are actually a lot of free illustration libraries nowadays. One of my favorite is [https://undraw.co/](https://undraw.co/)

<comment><USER12> Thanks!

</comment></comment></comment><comment><USER13> how does this compare to dash by plotly, or r shiny, in terms of the intended use case?

It looks like you are more of a wholistic platform, including a workflow scheduler etc.

<comment><USER4> One things is certainly that we would like our tool to be agnostic to data science tools and work with all of them. So you can use pretty much any visualization or ML library.

Another thing is that we'd like to eliminate the need to do any programming or HTML/CSS as much as possible.

Th jobs that are available as a part of the hosted solution is not yet part of the open-source library but this is certainly something for us to consider moving under open-source too.

We are currently at quite an early stage and a lot of work is still ahead. We'll appreciate any feedback and suggestions on where to steer the roadmap.

Gonna work on preparing more use-case specific tutorials within coming weeks.

</comment></comment><comment><USER14> How do you deal with differential versioning of code and data, and the fact that people don't always execute notebooks from top to bottom?

For instance, suppose I have a notebook that takes 2 hours to generate a model. From the viewpoint of explaining it I'd like to make a notebook where I start from the beginning, train the model, then use it.

If I want to show it to people I want to save all the results and re-render them, not rerun the calculation, certainly if I want to show off the results in a 1 hour talk!

From the viewpoint of reproducibility, however, you have to be able to run the notebook from top to bottom and get a 'correct' result. I'm not going to say the 'same' result because many calculations are stochastic in nature (e.g. random numbers) or because often the data changes. (Let's say I have somebody make a notebook that does April's sales reports -- shouldn't I just be able to point it to the may data to make May's sales reports?)

Between the long time delays (longer than people can hold a context in their mind, longer than they want to wait) for the system to settle down and the total complexity I find that many people involved with data science violently resist confronting the above issues. The effects are much like the visual "blind spot" \-- you might get a series of projects that were 98% completed but didn't quite deliver business value although everybody feels like they did their part.

Like other vendors in this crowded space, dstack leads with technology as the key problematic "e.g. supports Python and R", "matlib, Tensfolow, plotly, ..."

It's certainly true that people don't want to face up to reality in that area. Maybe 50% or 90% of the "waste" in the area involves setting your dependencies up, begging your boss to get you access to "the cloud of your choice if that's what's needed". The trouble with is that investment in particular technologies are of temporary value (maybe people will still be using R in 2030, maybe they won't be using Tensorflow, almost certainly plotly gets bought by Google and shut down by then)

Years back I researched the problem of running Tensorflow models that we got off the pavement, building a database that says TF version X depends on CUDA version Y, CNN version Z, and being able to have multiple copies of the userspace GPU drivers installed simultaneously (e.g. just put 'em in a directory and set the library path to point at 'em -- don't even need containers!)

I could have sworn Google looked at my source because they did the one thing that could have broke that strategy. Also the company I was working for lost interest in that particular shiny thing. That's a basic problem with maintaining a distribution of other people's software -- like treading water it takes effort just to stay in one place.

The more fundamental problems that turn up in going from data to decision and products are eternal and not tied to a particular technology. If you solve those problems rather than chase the shiny you might break out of the pack.

<comment><USER4> I agree with your point. Reproducibility and versioning is an important yet ver challenging topic right now and not many seem to help with it. And it might be that the problem is not specifically about tools but rather the mindsets and workflows.

IMO dstack is a lot about process. Technologies can change. The process often stays. We'd like to find the best way to solve problems people face every day regardless a particular technology.

One more little thing which might be relevant is that dstack actually tracks revisions. What we haven't figured yet out is how to link the particular revision of the applications with the particular revision of the code / notebook.

</comment></comment><comment><USER15> Nice initiative</comment>


America the Shrunken - <AUTHOR> http://www.nytimes.com/2014/05/04/opinion/sunday/bruni-america-the-shrunken.html <comment><AUTHOR> I submitted the his article because it reflects the change in psychological outlook that I see: an undercurrent of pessimism with a layer of denial. Strange combination.

For the last decade or two, I have felt optimistic about my own future while really concerned about that of the USA in general.

<comment><USER2> Personally I hope the USA quiets down and accepts that one nation cannot lead the entire world without a fully globalised society (and even then I doubt the idea is very good, but that's another discussion entirely). The problem I, as a European, have with the USA is that the government sees itself to have the moral authority to intervene in other countries' internal affairs to change our politics to their interests or pull us with them into their own wars. I've not spoken to a single person here in Europe who supports military intervention in the middle east, and to be honest I think the intervention of both the previous Soviet government and the current U.S. government is what breeds terrorism and threats from extremists.

The USA has - as a result of the cold war's and the current interventions in other countries - expanded the role of the NSA, set up extensive airport security programs such as the TSA, and through Homeland Security they scrutinise every tourist's history to the greatest of detail before actually letting them in. The ESTA application is only the surface of such. I consider the US government to be a very dangerous institution to safety and security for all human beings around the world.

I sincerely hope that the American public puts the US back on the right track. The current foreign policy is economically and socially unsustainable, the welfare state in the USA is crumbling and the middle class is shrinking at an alarming rate. The government seriously needs a big change. I am not encouraging revolutionary action, as I believe any government that needs violence to be instated is inherently flawed, but there needs to be a change. There's a lot of focus on the wrong issues in the USA, especially amongst the youth, while the entire nation is heading towards economical and social regression.

<comment><USER3> As a fellow European, I find this attitude baffling.

Your complaints about the US:

airport security

interference, of the soft political kind, in other countries

military intervention in the middle east (and Russia/Eastern Europe, which you left out, yet it was far more important than the middle east will ever be. And hell, if Putin doesn't back off, it may happen yet again)

Okay ...

Now let's open the history books, go back to before American hegemony, the 1918-1945 period. Britain and France in charge, with some lesser powers having a bit of clout in a few remote places. Do I really need to remind you what happened ? I don't just mean WWII, rather all the events leading up to it more than the actual event. The economic crises, not getting a few people fired, but throwing large populations into famine. Do you think, had you lived in that period, your complaints would have been about travelling security, political power of foreign countries ? Go ahead, ask your grandfather how society worked, what they were afraid of ... and the things that happened to them. Ask a Jew, and I'm not just talking about WWII. Go ahead, enquire about the period preceding the war.

Then go back a bit further. How was life, in Europe, during the revolutionary era, culminating in the creation of Soviet Russia ? Do you really want that, because that's what the society of Europe created ? It was one period of history where there is no denying : the people were in charge (or at least, they were the driving force behind the big changes). Robespierre. Napoleon. Constant wars, for moronic reasons. The eternal holy war of the muslims against Europe was still going, even if no longer at full blast, it may be downplayed now, but was a VERY real thing influencing the lives of a great many people very, very badly.

I mean, I'm not saying America really is the "shining city on the hill", BUT let's call a spade a spade here : American hegemony has been pretty fucking great for America, for Europe, for the whole world. Denying that makes you a moron, nothing more.

Let me state the blatantly obvious here : without American power being unassailable, maybe not globally, but at least on every ocean, our world will get a whole lot worse, very fast. Very fast. Once it happens it will take half a millennium to get liveable again. Can you at least consider for 5 seconds that knowing nothing about history and just having lived the last 30 years might not provide an entirely realistic view of how the world works ?

And if by globalized society you mean the UN, I suggest you check out the UN's successes. Oh wait. I'm looking over the list here. First there was the "League of nations", the UN. List of successes ... it's getting blamed for WWII, that's certainly a big thing I hear. But no worries ... the UN is so much better. They started out with the Katanga mission ... no sane person can call that a success. But surely things improved after that ? So then we have their attempts at negotiating truces between Russia and Eastern Europe. Great success for Russia, those ... Then the creation and various division(s) of Israel, and the UN's constant assurances of peace and peace treaties ... followed by massive attacks. That went so very nicely. Other highlights : Rwanda, Yugoslavia, Kuwait, Western Sahara, ...

No offence but the "globalized society" is not just a disaster, many people would have been better off living under a dictator ordering a genocide against them than with the result of having the "globalized society" that is the UN interfere with their affairs.

<comment><USER2> I don't know which part of my post said that I completely agreed with and thought everything that happened in the world preceding the American global control was good. You are criticising a non-existant point in my post.

I am criticising all interventionism, not just American interventionism. I sort of made this obvious when I criticised Soviet interventionism.

>I mean, I'm not saying America really is the "shining city on the hill", BUT let's call a spade a spade here : American hegemony has been pretty fucking great for America, for Europe, for the whole world. Denying that makes you a moron, nothing more.

For the whole world? Really? What parts of the world, exactly?

As far as I can see, about half the world's population is in the absolute shitter and still very unstable, not made better by the military interventionism of the USA in the middle east for example. The progressive attitude we have here in Europe and that they have in America is not consistent throughout the world. In fact, the socio-economic situation of a lot of the world is very, very bad.

American "hegemony" as you call it has only been good to the US' closest allies and trade partners. China, Russia and India to name three big ones have had to develop by themselves independent of American support. In Europe, I think the leading cause for no repeated big wars is European cooperation and the lack of other political systems than the democratic one. While the American support is relevant, Europe at the time committed to preventing future wars, and to be honest no doomsday prophecies like the Versailles Treaty was made this time.

>Let me state the blatantly obvious here : without American power being unassailable, maybe not globally, but at least on every ocean, our world will get a whole lot worse, very fast. Very fast. Once it happens it will take half a millennium to get liveable again. Can you at least consider for 5 seconds that knowing nothing about history and just having lived the last 30 years might not provide an entirely realistic view of how the world works?

What makes you able to say for certain what the world would look like if this and that didn't happen?

>And if by globalized society you mean the UN, I suggest you check out the UN's successes.

Globalisation is a process mostly independent from the UN. Come on.

>No offence but the "globalized society" is not just a disaster, many people would have been better off living under a dictator ordering a genocide against them than with the result of having the "globalized society" that is the UN interfere with their affairs.

Globalisation, unless EVERY single nation on Earth adopts isolationism both economically and socially, is unavoidable.

<comment><USER4> >>American "hegemony" as you call it has only been good to the US' closest allies and trade partners. China, Russia and India to name three big ones have had to develop by themselves independent of American support

Are you aware of the democratic peace theory? Check wikipedia. In short, [stable] democracies don't have wars. Not even USA starts wars with (or intervene in) stable democracies.

Most of the cases "suffering" from USA are ~ evil juntas.

India is an exception, they have voluntarily turned to Russia for e.g. buying weapons -- I don't know if the country "had" to do anything, re USA (they do benefit from the global market). But Russia's junta _prefers_ to cooperate with non-democracies -- and actively demonizes the world's working democracies. China is doing even worse jingoism than Russia.

In short -- don't mix up packs of thieves stealing countries with the countries themselves. Or with democratic governments.

>> Globalisation, unless EVERY single nation on Earth adopts isolationism both economically and socially, is unavoidable.

Why would globalization necessarily be handled in a good way? We could get the military empire building back; Russia and China have started.

<comment><USER2> >Are you aware of the democratic peace theory? Check wikipedia. In short, [stable] democracies don't have wars.

Yeah. I actually mentioned it in passing.

"In Europe, I think the leading cause for no repeated big wars is European cooperation and the lack of other political systems than the democratic one."

Other than that I don't think democratic peace theory really holds water when the involved nations are not committed to peace (like Europe is). Russia, a democratic nation (though exactly how non-corrupt it is can be discussed), is currently intervening in Ukraine and so is the USA.

>Not even USA starts wars with (or intervene in) stable democracies.

I'm not sure I really follow. They seem to have a great time intervening in non-NATO countries.

>In short -- don't mix up packs of thieves stealing countries with the countries themselves. Or with democratic governments

I've not said that either of these nations have a clean plate, nor have I said that they're a good influence. I've argued that I dislike all interventionism, and since the article /was/ about the USA, I criticised them.

India and China sure as hell have a cleaner plate than USA though.

>Why would globalization necessarily be handled in a good way? We could get the military empire building back; Russia and China have started.

I don't think it is being handled in a good way. That's the god damned point. No nation should have global military police forces.

<comment><USER4> First... my original point isn't really discussed:

Don't mix up criminal juntas -- which must have external enemies -- with the countries they steal. I don't really care about "rights" for the juntas.

>> Russia, a democratic nation (though exactly how non-corrupt it is can be discussed),

Well, you are unusual.

Few outside Putin's controlled media would describe Putin's Russia as a stable democracy. Most people would probably argue that Russia has never been close to democratic. :-(

>> I'm not sure I really follow. They seem to have a great time intervening in non-NATO countries.

That was a comment on when I wrote: " _Not even USA starts wars with (or intervene in) stable democracies._ "

I wrote " _stable democracies_ "... That is not the same as "non-NATO country".

Was it an honest mistake?

>> No nation should have global military police forces.

I agree with you in principle. But it is really naive.

Our moral comes from living in a country with a working police force (state violence monopoly, rule of law, etc). Before that, there were only clan societies. Then your only security was that clan members would revenge you. And they only did that, if you were willing to revenge them. Our present morals just didn't work.

The world's states today are like clans without a state police. There will in any given area be a bigger and meaner clan doing raiding.

Now, there will be peaceful clans which don't start stuff with other peaceful clans (democracies), but consider China and Russia -- they are bigger than their neighbours and behave like vikings.

You'd certainly see much more problems for the Philippines, India, ex-Soviet etc without USA and NATO...

Point is, we have been better off with USA. No, it isn't perfect.

Would a _real_ world police even be desirable? What would happen if they did a coup? Who could fight against them? Think 1984, history as a foot that tramples a face. (The same as in the old communist states. Which was Orwell's point, of course)

</comment></comment></comment></comment></comment></comment></comment><comment><USER5> All motion is relative: It's been said that what we're seeing is not so much the decline of the West, as it is the rise of the rest.

That might make some of us feel bad here in the U.S. --- we're no longer the undisputed top dogs in the world, as we were post-WWII --- but (to put it mildly) it's not entirely a bad thing for our fellow human beings in non-U.S. countries to be enjoying a higher standard of living than they had before.

The essence of "Americanism," it seems to me, is a desire to do better, for ourselves and our posterity (to paraphrase the preamble of the U.S. Constitution). That's not a quality unique to the U.S., of course, but we put a lot of emphasis on it. The mere existence of the linked article, and those like it, suggests we haven't entirely lost that quality; we shouldn't begrudge it when other countries and cultures "win" as well.

EDIT, responding to @waps: This issue is orthogonal to the question of how order can be maintained while still preserving peace, prosperity, _and_ liberty. If there's an alternative to a light-touch military dominance by the U.S. and its allies, I'm not aware of it.

<comment><USER3> There is just the tiny problem of what the military world order China will support (although I'm thankful it's not the middle east). This seems to me a pretty serious problem, and frankly the reason they will not stay the biggest for long. But it's going to hurt everyone, just like it did before.

People forget what history looked like before the "pax Americana", because it's lasted more than a generation now. Even before that there was the colonial "peace" (compared to what came before it, it certainly was peaceful, compared to after, maybe not so peaceful), so even the pre-baby-boomer generation does not really remember what was the norm of history before WWI.

Let's just hope it'll all be different this time. That China will not do what it did in the early medieval times. That either the middle east will not reunite, or that it somehow will act differently this time. That the Russian situation does not resume the cold war (which wasn't all that cold in Eastern Europe as plenty of Americans know first-hand).

There is the strategic theory that there has been peace because of the superpowers. Let's just hope that that is very wrong, and that it can survive 3 or 4 superpowers.

<comment><USER6> Look up the volume of world trade before WWI, and just how long it took to get back up to that level. Much, _much_ later than you'd think.

Looking the results of the of the infinitely more brutal Pax Romana should give anyone pause at the prospect of the end of the Pax Americana.

</comment></comment></comment><comment><USER7> This is the liberal view.

Take a few moments, if you can, and put yourselves in the mind of a conservative american. Consider what things look like to a conservative christian in favor of small government, living in a town whose industrial base has been nuked and who is now living through a construction bust, with no obvious "next thing" in sight, except perhaps uprooting their families to the Dakotas for oil jobs.

If we don't make room for them, there will, eventually, be war.

<comment><USER6> I have to run soon, so ask for details and I'll reply in a few hours, but from our viewpoint it's much worse, we're already on the currently losing side of an active cold civil war, legal (e.g. gun control, except we're current massively winning there), cultural, social and economic at minimum, and are very concerned it will get hot in the foreseeable future. That's very possibly another reason for [https://news.ycombinator.com/item?id=7694454](https://news.ycombinator.com/item?id=7694454)

<comment><USER3> This is the great problem of liberals in the US. World-wide of course it's a far greater problem. Liberals espouse democracy, but the majority of the US wants religion, conservativeness and the like.

World-wide the situation is far, far worse. In case you haven't yet noticed, most of the world still isn't Christian, and every other faith wants some variation of killing gays ... some faiths want them killed on sight even. The number of people wanting that is not really known, but reasonably, it's somewhere between 4 and 5 billion.

Liberalism is self-interest of middle class and upper-middle class people. But as you say, those social classes are disappearing, and not just because they don't seem to be having any kids.

The sad truth is, unless something fundamentally changes, the end of liberalism won't need to wait until the next generation, because those classes are being eliminated. You could say that it's economic policy, but that's not really true. I'd say technology and improved large-scale efficiency is mostly responsible. And that's inside America and Europe, in the rest of the world nothing remotely resembling liberalism stands a snowball's chance in hell of getting 10% of the votes.

<comment><USER6> By economic I mean things like the _absolute_ prioritization of so called endangered species (weasel words because they often turn out not to be) over human jobs and when you come down to it lives. The spotted owl being used to shut down the Pacific Northwest lumber industry, a bait fish being used to shut down a lot of California farming, etc.

Then there's general "environmentalism" and NIMBY/BANANAism that broken the compact between the city and countryside in California in the '70s, canceling the water projects necessary to keep up with the population growth of the former. Per farmer and intellectual Victor Davis Hanson, this year that's going to kill _half a trillion dollars_ worth of agriculture, as an inevitable string of droughts require sending all the water to the cities.

Or the _precipitous_ shutdown of the US coal industry; yeah, the stuff is extremely nasty and pretty much anything but bogus renewables (that can't scale, nor meet any demand cycle without even more expensive storage) would be better, but the speed and way this is being done is evil. And disproportionately hits fly-over country.

Or look at the XL pipeline, or unrestricted illegal, and way too great legal immigration. Etc. etc. etc.

All these are destroying working class jobs and lives, and the middle class ones that are based on them.

</comment></comment></comment></comment><comment><USER8> I flagged this article because I can't imagine a civil, productive, germane thread that could emanate from it. Flag it with me, or prove me wrong, I guess.

<comment><USER9> I think the content of the article is insightful and aligns with what I and some friends were recently discussing. There seems to be a growing sense of pessimism (outside the tech scene anyway) in middle class America. I don't really know the cause but I think it's worth discussing further.

</comment></comment><comment><USER4> Isn't there too much theorizing and teeth gnashing?

With Asia's fast rise and outsourcing, the increase in global work force has been much faster than the increase in capital investments.

It seems natural that while that happens, the average salaries will go down [or at a minimum stagnate] for the middle class in the old rich countries (supply/demand), since there are lots of well educated people coming from a poor environment.

USA already had larger GINI coefficients than the rest of the western world, which is natural with the size (more heterogenous). So the median values etc for living standards will reflect that.

</comment><comment><USER10> I'm having trouble reading this article. It seems to make a giant bar that takes up a large percentage of my screen as I scroll through it:

[http://image.bayimg.com/6f1dce58aa37b2825e74cec05895180a1473...](http://image.bayimg.com/6f1dce58aa37b2825e74cec05895180a147350db.jpg)

Anyone know how to turn it off?</comment>