How to avoid humiliating newcomers: A guide for advanced developers - <AUTHOR> https://opensource.com/article/18/3/avoid-humiliating-newcomers <comment><USER2>
        [09:00] <Someone> Hi.
        [09:16] <Me> Hey, what's up.
        [09:23] <Someone> I have a problem, do you have some time?
        [09:24] <Me> Sure, what's it about?
        [09:27] <Someone> Have you worked with X thing before? I have to do Y thing but don't know how.
        [09:28] <Me> So, I just googled "how to do Y thing in X thing" and got this blog entry explaining in detail, and also this other Stack Overflow answer with a very similar problem.
        [09:29] <Someone> Sec, gonna try that.
        [09:35] <Someone> I got this error "someVariable is not defined". What's it mean?

_sigh_

        [09:36] <Me> You're trying to use a variable that doesn't exist. Can you paste the code you're using?
        [09:37] <Someone> (Code)
        [09:37] <Me> Replace "someVariable" for "someOtherVariable" and it should work.
        [09:38] <Someone> It works, thanks!

I really, really try to be nice, but there's a limit on how many situations like this I can handle before losing my sanity.

<comment><USER3> My solution to this problem is (1) avoid instant messaging at all costs, and (2) delay responding to any mail that is either (a) a contextless plea for handholding ("I have a problem, do you have some time?"), or (b) best solved by the asker taking some time to educate themselves.

It's a win-win, because either the asker learns they can solve their problems more quickly by Googling it themselves, or I can limit my responses to a rate that is below my daily (or weekly) annoyance threshold.

<comment><USER4> "Avoid instant messaging at all costs" is definitely good advice. I usually forget to take three breaths before answering there, but I usually remember before I answer an email. Plus, I have GMail's "undo send" feature enabled so I have a few more secrets to repent before my message cannot be untyped.

</comment></comment></comment><comment><USER5> I'm willing to admit that maybe I'm not the best at social interaction. I think this article is on point though.

I am unable to count the number of times I've gone to some random project community for assistance dealing with whatever problem I was having at the time to be met with someone telling me that what I'm doing is insane and shouldn't be done in the first place.

It's taught me that I should just use these outlets as a last resort. I'd rather struggle with whatever I'm attempting to solve and try to refine my searches beyond the amount of time for it to be useful than deal with very opinionated and unhelpful people in a chatroom/mailing list/forum.

The unfortunate thing is that this is generally something that happens when I deal with open source and when asked about why the interaction is the way it is, there is always a retort by someone saying the help is free and that I should be grateful. The feeling is certainly something that I could compare to what I imagine the receiving end of the santa scenario was.

<comment><USER6> > I am unable to count the number of times I've gone to some random project > community for assistance dealing with whatever problem I was having at the > time to be met with someone telling me that what I'm doing is insane and > shouldn't be done in the first place.

There should be an explicit three-way breakdown for this:

1\. You're having trouble because of a bug, either yours or ours. If it's yours, the helpful thing is to help you fix it. If it's ours, obviously all projects should accept bug reports gracefully and work on them in some kind of reasonable fashion.

2\. You've hit a deliberate design limitation, which isn't a bug as far as we're concerned, but we're willing to acknowledge it's annoying. This might turn into a feature request.

3\. This is out-of-scope for our project. You picked the wrong tool. Getting us to change scope probably isn't going to be done using a bug report. That should be stated politely and without denigrating you or your problem.

What should _not_ happen is what you describe: Developers fitting problems into a Procrustean bed and cutting off the bits which don't fit the pre- designed mold, and then claiming that this cut-down problem is all anyone would ever need to solve. It's sometimes inevitable that you have to simplify the solution by simplifying the problem, but never pretend that a solution thus simplified is complete.

<comment><USER7> Well, on the flip side - I've had similar experiences to cosban's, and it usually goes like this: I'm neck-deep in a complicated scenario, and I'm stuck and can't figure out what to do next. I can ask for help, but it will take pages of explanation just to describe how I got where I am. Recognizing that everybody's (myself included) attention span only goes so far, I try to describe just the problem I've run into in as few words as possible without going through the whole epic story. Then somebody comes along and says "what you're doing doesn't make any sense, you shouldn't be doing that"...

<comment><USER8> Many questions come from beginners - and they are often trying to do the wrong thing. The developer who is answering you don't know who you are nor what you tried before, it makes sense for them to eliminate most common scenarios first before advising on something complicated.

It is not necessary personal nor lack of good intention, it is that experience with answering questions teaches you that it is overall most effective to check whether the problem can be solved differently as it often can be done.

</comment></comment></comment></comment><comment><USER9> It would be helpful if there were levels of open source:

Community - Fully open to discussion and contribution from everyone, decisions are made collectively and contribution / support responsibilities are shared by all.

Committee - Open to input, but decisions are made by the project leadership. Leadership is voted on by the community and provides support and contribution guidelines.

Ownership - There is a project owner or co-owners that make all decisions and offer support if available and set guidelines on contributions.

Visible - Open source in the sense of being transparent or usable by others, but little to no support offered and contributions may not be accepted.

I think many people think they're walking into a Community project when it's really a Leadership, Ownership or Visible project and feelings get hurt. Much better to set expectations early on in the README.

<comment><USER6> > Community - Fully open to discussion and contribution from everyone, > decisions are made collectively and contribution / support responsibilities > are shared by all.

> Committee - Open to input, but decisions are made by the project leadership. > Leadership is voted on by the community and provides support and > contribution guidelines.

> Ownership - There is a project owner or co-owners that make all decisions > and offer support if available and set guidelines on contributions.

Committee is the Debian Project, which has explicit governance and formal process, correct?

Ownership would be the BDFL model, like Linux or Python or most other projects I could name. Linux breaks down into subsystems, each of which are owned by a specific person, so it's a recursive form of the Ownership model.

I can't think of any project using your Community model off the top of my head.

> Visible - Open source in the sense of being transparent or usable by others, > but little to no support offered and contributions may not be accepted.

I think this should have a different name, to make sure people don't confuse it with the non-OSS Viewable Source licenses some companies use: You can see the code, but you can't fork it and distribute modified versions.

</comment></comment><comment><USER10> It's absolutely true that you should be nice to people, but let me also issue a similar warning to newcomers not to ask questions in a way that inspires rage.

Programming is, in a very abstract sense, a dirty job. We get paid well, have great benefits, perks, and mobility, but we are the toilet scrubbers of the software world. We spend whole days hunting semicolons, or trying to reverse engineer bug reports that no one remembers writing. I've spent a _whole week_ trying to move a button over about an inch in all supported browsers just to make the product "pixel perfect". I've spent a _whole month_ trying to figure out how to use a SaaS feature as advertised that had sparse documentation and no tech support.

Some newcomers really don't understand/believe that, and think it's acceptable to run for help every time something frustrates them... do everyone a favor and don't be that person, please.

<comment><USER11> So you advocate for less communication?

Why not create a culture that embraces having new comers ask questions in a non disruptive way?

Something like a slack channel where experienced dev's can chime in if they have time.

I'd freak out on anyone on my team if they were telling new hires not to ask questions. That's just stupid.

<comment><USER12> My experience: If you come with a question _and the steps you 've already taken, the research you've already done_, you will rarely if ever get a poor response from developers (or at least those who are decent human beings).

So, don't start with Slack. Start with the docs, then google, and then end with Slack (even as just a confirmation of your researched solution).

<comment><USER10> Agreed. I'm not saying don't ask questions. I said "not in a way that inspires rage." Just make sure you do your due diligence first. That's important.

</comment></comment></comment></comment><comment><USER13> There's great wisdom here from an obviously enlightened crowd, but I will say, as a php dev for 9 years, permissive attitudes toward bad advice about programming did hold me back as an engineer.

I know php is the butt of many jokes about bad language design and bad architecture, but I wasn't helped by the glut of terrible, outdated advice about php programming that just wouldn't go away. I could have benefited from a forceful, constructive voice that not only helped me solve my problem, but taught me to seek a higher sophistication for the code I was writing.

And that's where I think advanced developers turn into humiliating jerks. I would wager that most of them aren't deliberately trying to excoriate junior devs, they just are frustrated that developers are repeating the same inefficient path to good practice that they may have trod. Instead of being short-fused and curt, they should take time to inventory the positive things that helped them, and pass those tidbits of effective advice along.

It's very hard to pause and take note of resources or insights that made you much better as a developer. However, those who can are able to give junior devs a shortcut to excellence that is a net benefit to everyone around them, instead of just getting frustrated that the junior devs aren't achieving enlightenment as fast as they themselves would have liked to.

</comment><comment><USER14> I recently had a choice between being an ass or being nice to a guy asking a really basic question about my open source project[1]. At first I was going to tell him to read the docs and that I didnt have time but I decided to help the guy out.

He ended up running into an bug that had been open for almost a year but I never got around to fixing because of an existing workaround. Anyway, I was slightly embarrassed and ended up tracking down the bug and closing it out.

It pays to be nice.

[1]: [https://github.com/mkoryak/floatThead/issues/408](https://github.com/mkoryak/floatThead/issues/408)

</comment><comment><USER15> I wonder if the underlying reason for this emotional response is guilt which goes hand-in-hand with altruism. In the case of the Santa and the homeless man, the Santa didn't want to give the man $5, but did so presumably out of guilt, then felt angry. In the case of the author getting angry about low- value questions, I wonder if that's because of a guilty feeling that they must answer. Personally, I can't really empathise with the author's anger, yet I'm arguably less generous than them; I don't feel much drive to spend my free time on Stack Overflow et al. answering stangers' questions.

<comment><USER16> The author is completely missing the point of his own feelings: his unconscious mind is telling him to stop wasting time answering questions and do something more useful.

But of course, the conscious mind knows better, one must behave nicely, be zen, suppress their feelings, etc. And 10 years later you're visiting a psychologist to deal with your burn out.

<comment><USER17> I don't even care if this is arm chair psychology, from a literary standpoint this really ties the piece together. The Santa example doesn't make much sense otherwise.

</comment></comment></comment><comment><USER18> With many things in life, it's good to assume other people are _not_ in the same situation as you. Just because you have all day to work on something doesn't mean that the whole Internet has all day to help you.

What _percentage_ of your free time, for instance, will be spent compared to the _percentage_ of free time of another person? And, what have you done to _minimize_ time required: have you tried to _succinctly_ describe your problem, have you Googled terms in advance, etc.?

<comment><USER8> It takes less time to ignore question then to be sarcastic, intentionally misleading or jerk about it.

</comment></comment><comment><USER19> Those Stack Overflow answers are awfully contrived. In my experience answers like that are quickly down-voted and deleted by the community. That being said, if you ask how to parse HTML with regular expressions, or post some SQL with injection vulnerabilities, they'll be closed as duplicates.

<comment><USER7> Yeah, I believe him when he says it happens, but I've never encountered hostility on SO, and I've asked some really stupid questions (and in each case, I really ought to have known better and done my homework, so in my case I would have deserved a bit of condescension).

</comment></comment><comment><USER20> It's fine to humiliate newcomers as long as you're fine making enemies. As a recent university grad, most people entering CS today are not geeks or nerds or whatever--they're more and more the high IQ people who just want to make money. These people have higher social skills and self-esteem then traditional geeks. The truth is that most programming done today is pretty easy and does not require deep technical skills, so these guys can really advance without problem anyway. Being an asshole means that you're 2-10 years out from people with better social skills than you and hate you advancing into management. At least that's how I read the current trends.

<comment><USER21> "most people entering CS today are not geeks or nerds or whatever--they're more and more the high IQ people who just want to make money. "

Hey, that's what we said in the 90's as well ;-) Well, tbh, we left out the 'high IQ' part.

<comment><USER22> Well, it's even more true than ever now.

</comment></comment></comment><comment><USER23> I think what's worse than lazy newcomers wanting someone to hold their hand through a problem, is newcomers who try and argue for a truly terrible idea, or worse yet, call into question an idea that is as old as time.

I have had more experiences than I can count where people keep trying to reinvent the wheel and poo poo an idea that Knuth himself would be proud of.

"I don't have time to explain to you why this idea is good, it should be common sense. It would take you learning programming principles for years before you'll get it, so I won't be able to convince you in a 30 minute presentation."

</comment><comment><USER24> I've been the organization administrator for a library that participates in Google Summer of Code for many years now. Of the questions that we typically see and the requests we typically get, some are high-quality and constructive ---and are people legitimately asking for help.

But the article here kind of glosses over the reality of the hard part: the low quality questions. The "please help me get started"; the "how do I get accepted"; the "please review my PR".

It's all well and good to say, hey, take a step back! Be nice! Don't respond when you're angry! But this is not the reality for an overwhelmed open source organization---and let's face it, most popular projects are completely overwhelmed. The reality is that to wake up every day to countless new issues and pull requests and other demands on your time is absolutely soul-sucking, and after years and years of this it grinds you down and leaves you with resentment and disappointment, and that's just absolutely not great for anyone.

I don't necessarily have any rebuttal to what the author is saying, and I think the intentions are great, but I think it's also important to point out what reality is for people who are trying to build community and help: everyone slowly burns out doing it. It's like social work.

(food for thought: Github has made this problems orders of magnitude worse for organizations, because lowering the barrier to entry means now anyone who doesn't know where to start can open an issue and clog up a bug tracker in just a few seconds, and anyone who thinks they can write code can open a low- quality PR in just a few minutes, and this is more to do for the maintainers...)

</comment><comment><USER25> Slightly off topic. In big non IT corps I have worked with people whose title was developer but they couldn't do a thing on their own. I am not talking newcomer here, but people mid career. They basically mastered, I am helpless look and would rotate whom they ask for help. My turn would come every third week. Great people but just not interested in programming.

<comment><USER26> If I am a great guy but not interested in cooking maybe I should not work in a kitchen?

</comment></comment><comment><USER27> Things I've found to help situations like this:

1\. When a person is asking you for help, try to imagine a situation where you have needed help and asked someone for it. Imagine your responses to them as someone's response to you. Empathy and compassion are really great tools to use when communicating.

2\. Do not sign yourself up for something you don't want to do. If you don't have time to help or don't want to, simply say so. There is no reason to make yourself upset, and then lash out at a stranger, if you don't need to.

3\. Be a teacher. Teachers don't give the answers, they help give an understanding of how to solve the problem.

4\. Don't continue a conversation if you feel you are angry, upset or annoyed. Try to redirect your energy. Talk to a boss, co-worker, or friend about the situation and ask for their advice. Go for a walk. Listen to music. Write out the experience and your feelings to a private journal.

</comment><comment><USER28> This is endemic with SO. Particularly, I am not happy with the Python community of SO either. Couple of months back, my wife who is a student and very new to Python (and had to quickly prototype an intermediate part of a Genome Assembler as a PoC, before she could recreate it in C++ and MPI) asked some question in SO, and met with sarcastic comments by an experienced user. She didn't have time to read up a book on Python, since she had a time crunch to finish the work within a couple of days. So the day she posted the question, she told me that she fears snide comments, and that's exactly what happened. If you are in a position to criticize someone's sarcastic comments, then please take the time in doing so.

</comment><comment><USER29> Not only on the web but it's an issue in workplaces as well. FPS style humiliation, and it's not about knowing the basics but when learning the project or questioning some quirks or weird architectural decisions (so easy to trigger someone right here). Listen, the world is small, professional environment is not an online game, and your experience in a particular project can be surprisingly worthless during the next job search.

</comment><comment><USER16> What a pretentious piece of writing, I can't stand this kind of goody two- shoes attitude.

It's ok to be human and get upset every now and then. Heck, you might even take it out on someone. Apologise and move on, you don't have to become a buddhist and take the three breath vow - it's useless and unhealthy.

<comment><USER30> What is unhealthy about deciding to pause before responding harshly to someone?

<comment><USER16> That's not what's being discussed... the author gets themselves into situations that can easily turn irritating, like hanging out on StackOverflow or answering noob questions on chat. The solution is for them to take time out from that, not become a zen monk.

In general it's a valuable skill to have self control, but it doesn't work perfectly, so it's best to avoid having to exercise it all the time and pressuring oneself to always react "correctly" through self-guilt.

</comment></comment></comment><comment><USER31> I absolutely adore the ambiguity in this HN title. Perfectly crafted. Well done.

</comment><comment><USER32> How about we start with condescending blog titles?</comment>


We Just Got More Evidence a Large Meteorite Smashed into Earth 12,800 Years Ago - <AUTHOR> https://www.sciencealert.com/a-large-meteorite-could-have-hit-the-earth-12-800-years-ago-and-caused-massive-climate-changes <comment><USER2> [Graham Hancock nodding in the distance]</comment>


Multitasking - iPhone OS 4 vs Nokia N900 - <AUTHOR> http://cool900.blogspot.com/2010/04/multitasking-iphone-os-4-vs-nokia-n900.html The introduction of multitasking for iPhone OS was a huge disappointment. Apple has left out most of the functionality that makes multitasking useful on a small screen, and is spreading FUD about the alternatives. <comment><USER2> Confirming that N900 multitasking is much more exciting than iPhone's. Maybe some people don't need it at all. Maybe some don't need more than suspended applications and a glorified notification framework. It's fine - they are not power users.

I value the true multitasking on my N900 though. In a moment I'm going to join a weekly phone conference over Skype, put it on loud speaker, join the conference's IRC in x-chat and will be checking the links posted in the channel in a browser (probably going to look at some emails I receive in the meantime too). Yes - all of that on my phone.

(of course battery will last ~1½ h as it's all over WiFi, but it does't matter that much - just going to start charging it at some point)

<comment><USER3> I don't believe any of that (including all of it simultaneously) will be impossible on iPhone OS 4.

<comment><USER2> The way it was presented, I'm pretty sure I won't be able to run an application which should stay connected while I'm doing something else. So IRC + anything is pretty much excluded. Also skype will be integrated in a way that it takes your desktop space, instead of just being there in the background.

Maybe I understood it wrong, but that was my impression from the presentation.

<comment><USER4> Skype seems to work just like the normal Phone app. Watch the demo starting 22:25 (<http://events.apple.com.edgesuite.net/1004fk8d5gt/event/>)

<comment><USER2> My point about skype was not that it cannot be backgrounded, but as I said "skype will be integrated in a way that it takes your desktop space". Not sure what happens when you have more accounts - if you can do that at all and if it continues adding new bars... but I prefer it completely invisible like in N900 (especially when I have 2 voip accounts and 3 more voice-capable xmpp accounts online)

<comment><USER4> I doesn't take anything. The double high status bar is a standard UI convention of iPhone OS. It appears when something requires your interaction and is in the background (like ending the call or stopping the voice recording).

</comment></comment></comment></comment></comment></comment><comment><USER5> OK, but it's not that Apple doesn't know how to do it, and it's not that the OS doesn't support it. It's that the user experience Apple wants to create is that whatever your device is doing, you press it's single button and it takes you back to the home screen in a known state. It's an aesthetic/usability choice, not a technical one. If you want to, I dunno, run SETI@Home on your phone in the background, sure why not, get Android, but most people don't want a) their batteries to run down unexpectedly because they left something running without thinking about it and b) apps to be using the network while they're roaming, incurring charges. Apple's single-tasking is about making the user feel in control of what is a complex device.

<comment><USER6> Can we stop the FUD?

First, how is leaving a battery-intensive service on Android different from leaving a battery-intensive background task on iPhone? (The Flickr photo upload example)

Second, are you aware that data-roaming is off by default on Android and you have to explicitly turn it ON from the settings?

<comment><USER5> First) A tech-savvy Android user knows about leaving things running in the background. An iPhone user may not.

Second) How is this relevant? If you want roaming on, it doesn't imply you want apps to use it without your explicit request. Concrete example: leave Google Maps running logged into Latitude and it will merrily talk on the network by itself.

</comment></comment></comment><comment> nick-dap I've yet to see a better implementation of multitasking on a mobile device than Palm's webOS. You have to see it in action to appreciate it.

As a developer you don't have to include more code to make multitasking happen. An event fires when the app becomes active and when it deactivates, but its your choice to handle them or not.

</comment><comment><USER7> Sometimes I feel the whole world misses the point about multitasking on mobile devices. Here's what I think:

* Existing iPhones offer an infrastructure to quickly save and restore the state of your application so that it can be "hibernated", therefore reducing the need for real multitasking.

* Obviously, due to the limited display size of mobile devices, you can't have two apps running on the same screen at the same time, it just doesn't make sense, so an "inactive" app is off the screen, hence most of the time it doesn't matter if is actually running or hibernated. Just like on the iPhone.

* Sometimes, you still want your app running even when it's off-screen. Things like music players (Spotify for instance), mail tools (gmail fetching email in the background) or social tools (a twitter client fetching the latest tweets that you can read later even if you don't have signal).

* Notice that generally, for things that you want to run in the background, you don't need an active UI. There's no need for UI for an audio player in the background, a mail reader syncing in the background, etc.

* Solution: disallowing code that is eligible for running in the background to have access to the screen. This will make he background tasks a lot leaner as it would force developers to separate "service-like" code from "application code" and enforcing strict memory/CPU limits on "background services".

<comment><USER8> And this is exactly how Android does it - you can spawn thread that will run in background, but it will be a "service" - UI-less part of your application.

In addition, there are events notifying application that it is going to be "hybernated"; basically it tells it to save whatever information it needs to restore into current state.

<comment><USER7> While I'm no expert at Android architecture I own an Android phone and I think there are there are two ways an app can run in the background on Android: first, there are the "background services" (or whatever they are called) but my understanding is that there are also six slots of apps that aren't "hybernated" they're just not "focused" - they might not consume any CPU cycles but they're still in the memory. I would axe this second type of background tasks. Correct me if I'm wrong though, I always wondered how it works exactly.

<comment><USER8> Actually, there is only one way the application can run in background: the "service".

The "background slots" are implementation details. Applications do not receive the event "you are going to be killed, please serialize" the same moment they lose focus; they receive it at the system's discretion. The system decides based on memory available (mostly), whether it will leave some processes running or whether they will be "backgrounded" (basically, what is more economical - backgrounding processes all the time, when the user is switching between two apps, or just keep them both in memory?).

To some extent, this is tunable by the power users - if they download "Dev Tools", they can set the limit to 1 - 4 processes (or unlimited). It is basically trade off between memory consumption and responsiveness.

I repeat - this is not supposed to be setting for common users; it is just exposed for developers to experiment, what happens when they push the decision threshold in one direction or another. The system is supposed to have good default out of the box and manage the processes automatically (which is also reason, why there is no task manager).

</comment></comment></comment></comment><comment><USER9> _"The lack of proper multitasking is a high price to pay for 10 seconds of pristine behavior."_

For some people that may be true but to keep things in perspective Apple has sold ~80 million iPhone OS devices with no third party multi-tasking at all. Obviously it's just not that important to a significant number of people buying mobile devices. If it doesn't meet your needs obviously you need to buy something else but why discount the motivations of other people? I like the iPhone specifically because it works really well 99.9% of the time with zero upkeep on my part.

<comment><USER10> "Obviously it's just not that important to a significant number of people buying mobile devices."

Probably better to say that multitasking is not important enough to affect people's decision on whether or not to buy an iPhone. I'd be willing to bet it's still quite important to a large number of people. I suspect many will upgrade their 2g/3g just for multitasking.

</comment></comment><comment><USER11> The best handheld device I ever had was a Palm. It did not multitask; instead, it required that every piece of software can save its state so it can be closed in a way that is rather transparent to the user.</comment>


Advanced economies are so sick we need a new way to think about them - <AUTHOR> https://www.washingtonpost.com/news/wonk/wp/2015/11/03/larry-summers-advanced-economies-are-so-sick-we-need-a-new-way-to-think-about-them/ <comment><USER3> Perhaps if we expand the meaning of Keyensian "Government investment in infrastructure" to include human infrastructure and provide stimulus, or at least a stable platform, for the actual nodes of demand (the people) we can get back to optimal growth faster.

The idea that we can have a quarter of the people or more (the poor and working poor) in a state of playing zero sum or negative sum games -- exploitative economic relationships -- non-convex factors in what should, ideally, be a convex efficiency curve, and still reach market efficiency is silly. We just reach the state where the convex portions of our economy cannot compensate for those massive destructions or stagnations of value during times of contraction so it is easier to shake those results out of the aggregate. But that destruction of value happens even in times of relative prosperity and overall growth and it would be wise to whittle down the problem while is relatively painless.

Take pain and death out of the equation for the people through direct stimulus. Create a market where everyone must be enticed with value-add to trade. Watch demand bubble up and create the strongest growth possible.

<comment><USER4> Direct stimulus in what form? Guaranteed minimum income? The next stimulus really needs to go directly to the people, not banks.

<comment><USER3> Guaranteed minimum income, reverse taxation, or merely a solid welfare program that provides solid housing, food, and medical care -- basically anything that someone would die or be in pain without...these are all possible solutions.

I'd advocate for an experimental approach with smaller populations with different possible solutions, ratcheting them up as they are shown to be successful and sustainable.

<comment> at-fates-hands >> Guaranteed minimum income, reverse taxation, or merely a solid welfare program that provides solid housing, food, and medical care

The only problem with this is how this is impossible to scale to proper levels in the US.

This works great in smaller economies (like you're advocating) like Scandinavian countries where you have a much smaller population and it's easy to support a few million people. You also have to take into account the Scandinavian cultural norms as well.

When you have over 300 million? As we've seen in recent years, when you institute measures like this it actually creates more dependency and self reliance on the government - not something I would think you'd want to advocate on such a large scale.

<comment><USER5> In the US, the banking and military sectors - and a large chunk of tech - <USER2> at least as dependent on government handouts.

So the problem isn't one of scale, which is already huge. It's one of distribution.

Money on its own is not the solution. You can only grow an economy when people are building useful things of all kinds, doing useful things for each other, and creating new businesses.

The big problem in the US isn't capitalism as such, it's the fact that there's a layer of old and new money privilege accreted around Wall St and Washington. It's such a resource sink it has literally locked out most of the rest of the population.

It's a networking and patronage problem. The money is just a symptom.

If you're on the right side of the social firewall you can be a complete failure and still get jobs at C-suite and board level. (See recent examples from any number of tech companies - which are the obvious symptoms of a much bigger issue.)

Prosperity only happens when an economy rewards ability much more than it rewards the benefits of in-caste relationships.

This isn't even considered an issue in most descriptions of economics, but it's a huge influence at every level of business. And with the partial exception of the startup/accelerator/incubator scene, the current situation in the US has been a tragic brake on real growth.

The best you'll get from throwing money at people is temporarily less crime, starvation, and homelessness. Those are big wins on their own, but they're a bandaid and the improvement isn't really sustainable. For a growth-oriented economy, more is needed.

<comment><USER6> > "The big problem in the US isn't capitalism as such, it's the fact that > there's a layer of old and new money privilege accreted around Wall St and > Washington. It's such a resource sink it has literally locked out most of > the rest of the population."

Just thinking out loud about this, but could part of the fix for this be using a debt jubilee to reset debt after a set number of years?

EDIT: For anyone unfamiliar with debt jubilees:

[http://theconversation.com/the-debt-jubilee-an-old- testament...](http://theconversation.com/the-debt-jubilee-an-old-testament- solution-to-a-modern-financial-crisis-11816)

<comment><USER7> When the government decides that it's willing to do something as interventionist as _bailing out literally everyone_ , that places a lot of political risk over the financial industry as a whole. One can't be sure that intervention will always be for the best, after all.

Safety will be more valuable than ever, so those with huge lump sums of existing Capital will have even more power. We could replace modern corporate finance with good old-fashioned robber-baron family-finance operations like Carnegie, Rockefeller, and Gould.

<comment><USER6> Okay, how about this: Ownership of any property or asset can only last a maximum of 50 years. After this point ownership will either revert back to the commons or can be repurchased at current market rates.

<comment><USER7> So in essence the government seizes all property and rents it back to us? Geez, man. Even medieval serfs could own property on better terms than that.

<comment><USER6> > "So in essence the government seizes all property and rents it back to us? > Geez, man. Even medieval serfs could own property on better terms than > that."

The ownership wouldn't transmit back to the government, it'd be converted into public property but with the option to renew ownership. Public property is not the same as government owned.

The idea is to get rid of accumulation of wealth beyond a single generation, i.e. in general you only own what you earned in your own lifetime (plus some extra from the generation that preceded you).

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER8> Related: [http://www.nytimes.com/2015/11/01/upshot/is-the-economy- real...](http://www.nytimes.com/2015/11/01/upshot/is-the-economy-really-in- trouble.html) (plus a great gif in the header)

When economists are unsure what exactly is going on, what does that mean? There's the quote by Buffet, "Be fearful when others are greedy and greedy when others are fearful".

What should one do when others have no idea what's going on?

<comment><USER9> I think we are witnessing a massive de-centralization of economics. We seem to live in multi-tiered cellular societies that seem decoupled from one another. People living in the same city are experience vastly different trends with some are struggling, some are prospering.

Like how small startups are able to create value that usually needed large corporate structures, small trends are becoming powerful and independent. People are getting news from a large variety of sources and living in their own bubbles.

The new normal is that there is no normal. Those who are fearful and greedy are both right, but they no longer reside in the same world.

</comment></comment><comment><USER10> I actually think there are a fair number of prominent figures that have a good grasp of what's actually going on with the economy, but they would rather make money off of it than fix it. You have to divine their theories from their actions and a few oblique public posts.

The academic economics community just seems terribly out-of-touch these days, using models made a generation ago to try and explain an economy that has changed dramatically since then.

<comment><USER11> Can you give an example?

<comment><USER10> I wasn't sure if I wanted to embarrass the people involved, but they're public figures anyway.

For people: Marc Andreesen, Peter Thiel, Ray Dalio, Warren Buffett. Interestingly, neo-Schumpeterianism (as championed by Perez/Andreesen) seems to be making a comeback.

For important phenomena that mainstream academic macro-economics has no explanation for:

\- How do you measure the "substitution effect" of greater quality at lower prices? Most standard economics metrics assume that value = price; GDP is the total value of all goods manufactured within a company. That means that when the price of a computer falls from $2000 to $200, GDP falls. When Google gives away web search, it counts for nothing; when they reduce the number of organic results to show more ads, it increases GDP. When open-source Linux replaces proprietary Windows, GDP falls.

\- Inflation is not uniform. Inflation in classical macroeconomics is treated as the measured price of a basket of goods, and caused by an increase in the money supply. But when the money supply increases, that increase does not filter down to all goods equally. It tends to collect at goods with high bargaining power and few substitutes (Warren Buffett was the first person I know of to note this effect). So we have seen massive inflation in the valuation of unicorns, and in the price of San Francisco real estate. We've seen high inflation in health care and the price of a college degree. We've seen steady inflation in home prices elsewhere. We've seen severe _deflation_ in competitive consumer goods markets, and in non-unionized wages. The basket of goods used to calculate CPI is largely commodities, and so by definition tends to understate inflation. That's why the Fed is continuing to step on the gas even though the price of education, or health care, or homeownership is rapidly moving beyond the reach of average Americans.

\- Competition and capitalism are to some degree antonyms (this is the Peter Thiel thesis). The first goal of most companies is to build a monopoly and keep competitors out. This is covered in depth in _micro_ economics, but is largely ignored in _macro_ economics. But monopolies behave very differently from competitive businesses when it comes to the macroeconomics fundamentals of employment, output, and wages. Monopolies tend to employ people because _they have money and want to eliminate competition_ , not because _they need output_ ; this explains a lot of crazy economics results like why people can work 2 hours/day for six-figure salaries while others work 16 hours/day for minimum wage, or why companies buy startups and then immediately kill their products, or why companies would rather sit on cash than hire more people.

All of these are mentioned as footnotes in economics textbooks, but they're mentioned to say "Yes, we know this is a problem with the model, but nobody has yet found a better way to account for these phenomena." Policy response is still very much dependent upon mainstream macroeconomics models, even though the observed effect of that policy response isn't working.

<comment><USER12> Spot on. Unfortunately, academic economists are incentivized to produce models that justify existing power structures which leads many to go off the deep end reality-wise.

That's how stupid assumptions like "natural rate of unemployment" or "perfect competition" in particular get baked in.

Those assumptions are concealing sources of profit. Which is a feature, not a bug.

</comment></comment></comment></comment><comment><USER13> These are quite bold, and arguably heretical statements to modern neoclassical economics:

 _New Keynesian models imply that stabilization policies cannot affect the average level of output over time and that the only effect policy can have is on the amplitude of economic fluctuations, not on the level of output_

But Summers tries to refute that, just by saying it's absurd and giving the costanzian platitude "well I gotta do something!"

I think he makes his best point by saying:

 _Beginning the study of stabilization with this assumption takes away much of the motivation for doing macroeconomics._

Indeed it does Larry.

</comment><comment><USER14> Larry may be right on some points, but given his past support for and architecting of deregulation of the U.S financial system (including the repeal of the Glass-Steagall Act) while he was in the Clinton admin., along with support for the disastrous privatization of the economies of the Post-Soviet states that's lead to massive human suffering and political failure, as well as gambling with Harvard's endowment and losing the school $1.8 billion, triggering layoffs and budget slashing, I think we'd do well to find advice from those with a less predictable and disastrous track record.

<comment><USER15> "support for the disastrous privatization of the economies of the Post-Soviet states that's lead to massive human suffering"

Lack of privatization in Post-Soviet states lead to massive human suffering. In Poland the government constantly subsidies all companies that weren't privitzed in 90s. What's worse quality of products and services in these industries is terrible. That's why for instance electricity in Poland is one of the most expensive in Europe. And it is impossible to change anything because all these companies are highly unionized and have huge political influences during elections.

Little state ownership may work fine in countries that has different culture in rest of the economy has been capitalistic for last 200 years. In Post- Soviet world it is disastrous. Look at Russia for intance - Gazprom and other state companies were overtaken by the Putin's mafia.

<comment><USER14> I haven't got a problem with privatization per se, and recognize that some approach to privatization was called for. I have major problems with the disastrous "shock therapy" approach to privatization that was actually applied where the US economic advice was what created the mafioso oligarchs.

<comment><USER16> You are grossly overstating the influence of the "us economic advice", which was zero. The mafioso oligarchs needed and used none of it.

<comment><USER17> You might want to read up on this. It was US economic advice which led to the rapid sell-off of public assets which resulted in the creation of the oligarchs in the first place.

<comment><USER16> Seriously, I do not need to read up on this, I was there. But one does not really need to have first-hand experience to see the deliberate deception in klein's "shock doctrine" and the like: for example, different countries in the region had markedly different timings, different implementation of reforms, different rhetoric, and different resources; but the outcomes pretty much fall into two groups: places where people demanded and expected accountability on part of government (ie. baltic states, and a few former warsaw pact countries) did relatively fine, and others devolved into oligarchies (ie. the rest of the former soviet union).

</comment></comment></comment></comment></comment></comment><comment><USER18> Like maybe don't put a Soviet-style central committee in charge of the money supply?

It's depressing to me that modern economies like the US and Europe can be so shot through with central planning, and then when they produce bad results everyone pretends it's the fault of some freewheeling laizzes-faire policy that never existed.

<comment><USER12> >Like maybe don't put a Soviet-style central committee in charge of the money supply?

The US didn't have this at the end of the 19th century and they suffered through multiple bouts of mass unemployment and deflation as a result. That's why the Federal Reserve was created.

Central planning can be done well or badly. It can't not be done at all.

<comment><USER18> The latter half of the 19th century up to WW1 was the USA's longest sustained period of high growth and high economic mobility. No central bank. Moderate deflation was the norm. According to the likes of Paul Krugman Americans should have been eating dirt and living in caves by 1913, but the exact opposite happened. Growth that the Keynesian technocrats have yet to match.

Except even then, government intervention in money fixed a certain price ratio of gold and silver. When that ratio no longer reflected the real market prices, chaos predictably appeared in the banking system. Go back over the history of the late 19th century panics and you'll notice one metal was fleeing the country and causing a lot of controversy. That's a government price control at work, not unfettered capitalism. The Federal Reserve Act was the wrong solution.

And yet even with the Fed, there's the stubborn little fact of the crash of 1920 -- bigger than that of 1929 -- and the rapid recovery that followed. The Fed, Congress and the Presidency did basically nothing and it was over in 18 months. So judging from the objective facts laying before us, it looks like the central planners perform best when they avoid central planning.

<comment><USER19> > According to the likes of Paul Krugman Americans should have been eating > dirt and living in caves by 1913, but the exact opposite happened. Growth > that the Keynesian technocrats have yet to match.

And my grandfather walked picket lines and got shot at. Robber barons were at the peak of their power. Children were exploited as laborers.

Let's also quote Anthony Trollope, a Victorian Londoner who was no stranger to pollution:

"Pittsburgh without exception is the blackest place which I ever saw, the site is picturesque, even the filth and wondrous blackness are picturesque.... I was never more in love with smoke and dirt than when I stood and watched the darkness of night close in upon the floating soot which hovered over the city."

And that was in the 1860's! It only got worse from there until the 1940's.

Your rosy assessment of the country prior to the 1920's has no basis in historical fact.

<comment><USER20> >And my grandfather walked picket lines and got shot at. Robber barons were at the peak of their power. Children were exploited as laborers.

Which has been true since the beginning of time. Children worked hard labor on farms instead of factories, and there was more rural poverty instead of city poverty. On average things were improving.

But that's not even the point. Parent comment is talking about the health of the economy and the federal reserve. You are talking about the distribution of wealth. We could implement something like a basic income to redistribute wealth, without getting rid of free markets and capitalism.

The goal of economic policy should be to generate the most total wealth. Then we can decide what to do with that wealth.

<comment><USER12> >The goal of economic policy should be to generate the most total wealth.

Somebody wants all the money to go to the 0.01%.

</comment></comment></comment></comment></comment></comment><comment><USER21> Wouldn't a simpler hypothesis be that output trends before a recession are artificially high? We know fairly well that economic trends tend to feed back on themselves; the idea that growth leads to an acceleration of growth which overreaches and ends in a crash isn't particularly far-fetched.

<comment><USER22> It blows my mind that Keynesians can't identify busts that were caused by bubbles.

When the US real estate market started tanking, how was the boom supposed to continue? More construction in an over-supplied housing market? Re-train workers overnight and give them jobs in other industries? Transmute wood, concrete, shingles, tractors, bulldozers, and excavators into other materials and tools for other industries?

<comment><USER23> > More construction in an over-supplied housing market?

You do realize that Keynes' departure from 'classical' economics was a model that depended more on aggregate demand than supply, right?

Classical economics (ie. pre-Keynesian economics) would say "just build more". Keynesian economics states that you should stimulate demand (lower interest rates, increase government spending, increase money supply, etc...). Which is exactly what got us out of the recession.

> It blows my mind that Keynesians can't identify busts that were caused by > bubbles.

It's not about whether they can or can't. Some obviously did see the bubble coming (some Goldman Sachs traders famously bet against the housing market). The problem is that too many people profit from the 'bubble', and momentum takes people over the edge (because, like it or not, consumers are NOT rational).

<comment><USER22> >Which is exactly what got us out of the recession.

It's what caused it in the first place. i.e. 2% interest ninja loans, CRA, "home ownership society", gov't-sponsored entities, etc...

<comment><USER23> Yes and no. It was caused by too much exposure to debt, so when asset prices dropped banks and consumers became insolvent.

Low interest rates by themselves wouldn't have caused the recession, although rates probably should have been higher during that time period anyway.

Also keep in mind it's only recently that Keynesian and left-wing economics has become fashionable once again...

</comment></comment></comment></comment></comment><comment><USER24> Surprise surprise, world's central banks are engaged on the largest bout of central planning the world has even seen and... guess what, it doesn't work!

</comment><comment><USER25> There are two very important things that would need to be factored in before we start to better understand what is going on.

1) We need to understand that we live in a global economy not a national one. One of the key elements to understanding this global economy would probably be to look at something like Supply Chain Management. I.e. the productivity of china should be closely tied with an understand of US economy. They aren't separate anymore than two computers connected via a network is.

2) We need to find a way to factor in technology, digitalization and automatization instead of treating it as the externality it is today, by almost all economic thinkers.

Especially those who advice countries and central banks. It is one of the key components in understanding what is going on. And before we find a way to factor that in, we will keep fighting in the blind.

Until then we will have this fruitless idealistic fight between Keynes and Austerity and not get to the heart of the discussion.

<comment><USER26> Your ideas strongly relate to the message of the late Buckminster Fuller, former president of the Mensa Society and winner of the Presidential Medal of Freedom. Here are just a couple quotes that your post made me think of:

>Humanity is now experiencing history's most difficult evolutionary transformation. We are moving away from a rooted life-style with a 95-percent rate of illiteracy. We are almost unconsciously drifting away from selfidentity with our ages-long, physically-remote-from-one-another existence as 150 separate, sovereign nations. Now the uprooted humans of all nations are spontaneously deploying into their physically integrated highways and airways and satellite-relayed telephone speakways, into a big-city way-stationed, world-around living system. We may soon be atom-bombed into extinction by the preemptive folly of the political puppet administrators fronting for the exclusively-for-money-making, supranational corporations' weaponry industry of the now hopelessly bankrupt greatest-weapons-manufacturing nation (the U.S.A.). If not bomb-terminated, we are on our ever swifter way to becoming an omni-integrated, majorly literate, unified Spaceship Earth society. The new human networks' emergence represents the natural evolutionary expansion into the just completed, thirty-years-in - its-buildings world-embracing, physical communications network. The new reorienting of human networking constitutes the heart-and-mind-pumped flow of life and intellect into the world arteries.

-Grunch of Giants (1982)

>I'm going to give you an important kind of a picture. I hear a lot of people say "I don't like machinery and technology it's making a lot of trouble", so were going to take all the machinery away from all the countries of the world, all machinery, all the tracks and the wires, and the works and were going to dump it all in the ocean. And you discover that within 6 months, 2 billion people will die of starvation having gone through great pain. So we say "that's not a very good idea lets put all the machinery back where it was." Then, were going to take all the politicians from all the countries around the world and we're going to send them on a trip around the sun, and you'll find we keep right on eating. And the political barriers now... scientists say very clear you could make the world work and take care of 100% of the people at a higher standard of living that anyone has ever known despite the increasing population, but you cant do it with the barriers, any more than you can try run a human organism with a wall between the ear the eye and the stomach. It is an organic whole, it is total industrialization.

<comment><USER25> Thats interesting and yes I guess they do correlate.

It's not the global economy it's the networked economy. And so in order to understand economy we need to look at it non-nationalistically. Thats the only perspective where we will see whats going on IMO.

</comment></comment></comment><comment><USER12> Some background on Larry Summers: [http://www.prosebeforehos.com/article-of- the-day/04/10/the-c...](http://www.prosebeforehos.com/article-of-the- day/04/10/the-corruption-of-larry-summers/)

</comment><comment><USER27> There's something wrong with the cost structure in "Advanced Economies". It's just too cheap to make things in China. There are some products where the cost of the raw materials would be more expensive in the U.S than having the finished product shipped from China. There are sky high costs, and nobody can figure out where they are coming from and everyone just shrugs their shoulders. This kind of thing happens in healthcare and education too.

Has anyone in manufacturing looked at the financials of a Chinese manufacturer with low unit cost? Where does the money go or not go that makes things so cheap?

<comment><USER28> > There's something wrong with the cost structure in "Advanced Economies".

Yes, and that something wrong is taxation and regulation (which is a hidden form of tax). Those things are both absolutely necessary, but they greatly inflate the cost of goods and services. What's more, they tend to be well- hidden in order to prevent people from generally revolting.

<comment><USER29> I like regulation. I see these articles about people in China suffering from severe asthma and entire major cities where you can't go outside due to the haze of pollution and I thank my lucky stars our forerunners had the decency and common sense to think of the future and not just short-term bottom-lines.

<comment><USER30> I visit China every couple of years and I completely agree. The terrible air quality is the worst thing about Beijing.

But it does explain a decent chunk of the cost disparity. The Chinese (or at least the government) are willing to pollute the crap out of their air in order to better compete, while we are not. That doesn't mean we should join them, but it does explain their lower costs.

</comment></comment></comment></comment><comment><USER31> Perhaps instead of giving cheap money to the banks so they can make a profit at our expense, we could give the money to the people so they can use it the 'best' way for them (save, spend, pay off debt etc)

<comment><USER32> ... or how about "none of the above".

<comment><USER33> "None of the above" means no money at all. Money is issued by the central bank with the authority granted by the government which is in turn granted by the people.

So long as there is money, there will be a monetary policy. The government doing "nothing" is not an option.

<comment><USER34> I think nothing (or as fche said "none of the above) was an option. The economy is sick because we insisted the sickest companies in the economy were "too big to fail". We're keeping them on life support when they're sucking the life out of the economy.

</comment></comment></comment></comment><comment><USER35> Keynesian economics creates market failures. Government "stimulus" does not create natural demand and any "stimulus" has front-loaded costs that are paid for by future generations.

Central "Planners" should be fired and our economic systems need to move to a more decentralized economic model, à la Austrian Economic Theory[1] if we ever want to see natural growth again.

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

<comment><USER6> The solution isn't decentralized economics, it's debt-free money. Get rid of the need for money to create a return for its creators and you eliminate many of the issues with money in our society, including future generations having to pay for the spending of currently active governments.

</comment></comment><comment><USER36> Bill Gross is a rather polarizing figure, but compared to Summers, I'd say he's a lot more "hands on" and experienced in the way that financial systems work - or don't. Here's his latest Janus newsletter / update:

[https://www.janus.com/bill-gross-investment- outlook?utm_camp...](https://www.janus.com/bill-gross-investment- outlook?utm_campaign=Bill%20Gross%20Feb%20IO&utm_medium=social%20&utm_source=twitter&utm_content=Bill_Gross_Feb)

<comment><USER37> Bill Gross makes money from high interest rates, he's been wrong for about 7 years now with regards to every one of his predictions (QE will cause high inflation, stopping QE will cause inflation, stopping QE will increase bond yields), I wouldn't take his advice too seriously.

<comment><USER36> Savers are getting killed by no interest rates available in the market. He is no less wrong than the Federal Reserve saying that zero interest rate policy is good for growth, or that their policies aren't responsible for bubbles, etc, etc, etc.

<comment><USER38> The Federal Reserve having an opinion about the economy that is different from yours has nothing to do with Bill Gross being factually incorrect in every prediction he has made about the economy since the recession, and performing badly.

You don't get to distribute wrongness equally between supply-side and demand- side people; that's not how reason works.

<comment><USER36> What you call opinion I call active decision making, and while Gross hasn't "predicted" well, neither has the Federal Reserve, thus they are equivalent, practically speaking, in their efficacy. They balance each other out. But sure, grind that axe against his perspectives all you want, I've got my own CFA Level 3 Asset Manager guy that I follow closely.

</comment></comment></comment></comment></comment><comment><USER39> "Standard new Keynesian macroeconomics essentially abstracts away from most of what is important in macroeconomics."

Yes, that has been the criticism for decades. There is nothing new here.

The only time Keynesian economics has "fixed" an economy was WW2 when we (the US, specifically) had full employment because of the draft _and_ all of our competition had been literally flattened and/or killed.

For another look at it, check out the Keynes vs Hayek rap battle:

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

<comment><USER40> Don't watch that rap battle, hayek's insights are surely worse than Keynes. At least we can attribute one repaired economy to Keynes, we can attribute zero to Hayek. In addition, while Keynes may not help us resume prior output, he at least gives us some way to recover from recessions. Hayek's given us nothing, unless you're one of those people who thinks "The Road to Serfdom" is a good book.

<comment><USER41> First: watch the rap battle. Avoiding (or urging the avoiding) of contrarian ideas is how you perpetuate ignorance. If Keynes is worth is weight in stimulus, he'll be able to withstand the counter argument and win the day: if not, then there's even greater reason to see other perspectives.

Sorry, but not buying your argument. If anything we can attribute a greater length of the Great Depression to the Keynesian inspired policies, not a repair (assuming that is the "fixed" economy attributed to Keynes). For some reference on this consider: [http://newsroom.ucla.edu/releases/FDR-s-Policies- Prolonged-D...](http://newsroom.ucla.edu/releases/FDR-s-Policies-Prolonged- Depression-5409)

WW II ended the Depression insofar as its impact on employment, but it also destroyed (literally) massive amounts of accumulated capital. Global quality of life was greatly reduced: a failure by any rational standard. I suspect the necessary economic restructuring for war, and the later return to a peacetime economy, has much more to do with the repair of the economy that anything Keynes ever conjured.

Later we have substantial numbers of completely unimpressive Keynesianesque experiments, including our own current "recovery". For Hayek (or similar) you are correct: there are really no instances of his policies repairing an economy... but could you tell me how many times approaches like his have been tried? There's some argument for the Depression of 1920, but on the whole reduction in Government intervention during an economic downturn is just not how bureaucrats roll. So I count no attempts. To suggest there are no Hayekian successes because Hayek fails is simply deeply flawed thinking; there are no successes simply because those approaches have never been tried. I think the closest you can see are in certain emerging economies where, at first, no one cares to regulate because there is nothing of worth there from a political power point of view (e.g. early Hong Kong, much of the early U.S. even).

And yes, I do consider the "Road to Serfdom" a good book :-)

<comment><USER40> >but on the whole reduction in Government intervention during an economic downturn is just not how bureaucrats roll.

We had this exact experiment after 2008. Austerity in Europe, stimulus in the US. The results are pretty clear.

<comment><USER42> Both lose?

<comment><USER40> [http://earlywarn.blogspot.com/2013/03/us-vs-european- gdp.htm...](http://earlywarn.blogspot.com/2013/03/us-vs-european-gdp.html)

<comment><USER42> I didn't know until I clicked it whether this was going to be a pro-Europe or a pro-America link. Austerity hasn't ended Europe's part of the Great Recession; but the US's "recovery" has only extended to a few privileged economic areas. In the South, the Midwest, and the interior of the coastal states, the Great Recession never ended.

<comment><USER40> The South never recovered from the Civil War, seems to me.

<comment><USER42> What about the Midwest? The Northern and West Coast interior? Are they somehow suffering from the Civil War as opposed to the never-ended-in-real-terms 2008 recession?

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER43> Classical macroeconomics has some real problems. These include:

\- Most models of capitalism are based on trading in goods. This was a reasonable model a century ago, but today, services are much larger in the developed world. This has tax policy implications - sales and import taxes apply only to goods, not services.

\- Classical models assume that demand is infinite but capital is limited. For most of history, the problem was making enough stuff. In today's economies in the developed world, demand is a scarce resource but capital is not. The US population is essentially maxed out on buying power, with a low savings rate. Manufacturers could easily up production of just about anything if they could sell it. There's lots of capital around looking for something which will provide even a few percent reliable return, but few investment opportunities. This is why tweaking the capital supply, which is all the Fed can do, doesn't seem to affect much any more.

\- Technology has brought an asymmetry to recessions. In a recession, as demand declines, the least efficient producers drop out first and there are layoffs. Productivity increases. Now, when the recession is over, the most efficient producers scale up, maintaining the productivity level they had, increasing their market share. This may be the real cause of the "hysteresis" of which Summers writes. It's also a way in which industries become more concentrated.

\- Classical economics overestimates the effect of capital and underestimates the effect of technology. Recent work indicates that most economic growth is driven by technology, not capital, and has been since the Industrial Revolution two centuries ago. (Economic growth rate pre-industrial revolution: about 1%-2% per _century_.)

\- Classical models of the "free market" assume a large number of players. That's rarely the case today. One big effect of computerization is that it's now possible to run very large organizations, like Amazon, quite well. Business used to have scaling problems - beyond some size, businesses became harder to run, and couldn't get out of their own way. For most consumer-facing industries, that's no longer a problem. There's now a tendency to consolidate as far as antitrust enforcement will allow, which in the US, seems to be down to a duopoly. When the number of competitors is very small, they tend not to compete too hard.

\- Classical economics assumes labor is mostly direct labor, and that output requires labor inputs. Today, direct labor is way down, and most labor is indirect labor, leading to change, not direct output. Online businesses are an extreme case - doing what the business did yesterday requires almost no labor. Economics doesn't really have a handle on this yet.

<comment><USER44> Interesting, very good insights. Do you have any links to resources with this kind of thinking?

</comment></comment><comment><USER45> The article says the U.S. is about 10% below a trend estimated through 2007. 2007 was the peek of the bubble. Why are they using 2007 as a target? The credit market was different back than. How much of that 10% output was fueled by easy credit? It might be better to use a few years before 2007 as a target. I would like to know where we are if you look at it before the Mania Phase of the bubble.

</comment><comment><USER46> Yes, you need new euphemisms and new twisted definitions to profit from naive people, to convince them that they should buy your bullshit because they "need" it, and to tell them that govt. subsidies/legal pardons given to corporations are just fine, while giving "your" tax money poor people is a bad, terrible idea.

People don't believe your BS anymore. And you know it.

</comment><comment><USER47> Can anyone ELI-5?</comment>


How to steal any developer's local database - <AUTHOR> http://bouk.co/blog/hacking-developers/ <comment><USER2> Really eye-opening hack! Great, easy-to-follow write-up, too. A++</comment>


The united states is a profund tragedy of commons - <AUTHOR> It is easy to conceive that we would responsibly organize to police fire corridors in forest regions, removing all dead and fallen debris by hand. We could plant trees, berries, herbs and flowers, to make the forest more meaningfully enjoyable.
And in some parts of the country, some of this does happen. Some lands are managed and the debris put into bio-fuel systems. But the same cannot be said of those poor souls who live around or near the 60% of land which is under control of the tyrant- lambasted in the media, ignored in the statehouse.
Every year now it seems, massive forest fires sweep through regions on the west coast, as quickly and as pleasantly as the winter rains. Efficiently and directly, from the western US coast alone, as much as 1/26th of all human global carbon dioxide production enters the atmosphere*(0.68billion tons california alone, 26gt globally estimated production. GT= 1 billion tons) Every year, more carbon, more handwringing, and more sitting around deliberating over how to punish everyone else. Every year more fires. The fires spread. Billions of dollars in insurance money, federal expenditures, and new investments infuse the region subsequently. Everyone breathes deeply. This is normal. This is catharic. This is natural. This is the way of the forest. Everything will be ok. Because we can rebuild, and rebuilding is always healthy, we are healthy. Why, it's practically japanese.
The private forest owner, whose livelyhood comes from his forests NOT burning, is blamed. The wealthy are blamed for suppressing socially oriented thought. But let's be honest. The private offices at the statehouses have a revolving door, and the private citizen is a tourist and an exhibition there, not an integral component of society.  It's terribly sad, and there's no political theme that can change this. Everyone, for election, rebrands as citizens first, and the moment they sit down, the lobbyist replaces them. We may as well elect the lobbyists. <comment><USER2> "The private forest owner, whose livelyhood comes from his forests NOT burning, is blamed."

I'm curious about what you mean by this, especially about who's livelihood is coming from their private forest.

</comment><comment><USER3> > It is easy to conceive that we would responsibly organize to police fire

No it isn't, when you think of the cost and needed resources you will be overwhelmed. You can counter claim that the cost of the fires exceeds this, but we are bad in preventing big future problems. Just see how the global warming discussions goes.

</comment><comment><USER4> > The wealthy are blamed for suppressing socially oriented thought.

That's because they do.</comment>


Does YC not like c-corps? - <AUTHOR>

Hello! My classmates and I have created a product and we're trying to decide whether or not to incorporate.  The main reason we're thinking about it is because our site deals with people sharing works that may not necessarily be their own property(for example: a user might post a link to a show he/she likes, but he/she does not own any rights to it).  Despite the protection offered by DMCA, we were worried we might face legal issues for unforeseen circumstances and figured we should protect ourselves.<p>On the other hand, we were possibly interested in taking our idea to YC once it has proven itself, but it appears in the FAQ's that YC would prefer we did not incorporate.  Can anyone offer some advice on the matter? Much appreciated! <comment><USER2> Why would you use a C Corporation to solve this problem? You'd probably get very similar protection --- perhaps the same protection --- from an LLC.

Here is roughly the mental model I've built about incorporation choices (there are several lawyers on HN that may stomp on me for posting this):

* LLC - cheapest, all money goes straight to principals as if each was a sole proprietor or freelance, tricky to issue equity to employees

* S-Corp - enables the FICA "reasonable salary" cheat, enables employees to easily get shares, enables principals to get W2 wages instead of paying quarterly on everything (LLC's can get this too if they "file" as S).

* C-Corp - company pays corp taxes, company can have multiple classes of shares.

All of these structures provide people acting on behalf of the company, having disclosed that fact clearly to their counterparties, with a reasonable belief that they are authorized by the company, some measure of protection against contract claims.

It's also very important to remember, if you're incorporating to avoid a foreseeable legal event, that _corporate liability protections don't shield you from torts_. The DMCA stuff you're talking about is tort law. If you are negligent or deliberately cause damages or commit fraud, the corporation isn't going to protect you. Similarly, some things you'd assume would be a matter of contract law (such as payroll) might _not_ be depending on what state you're in.

If I was in your situation, I wouldn't consider laying out money for a C-Corp, and I'd only do something beyond the barest formality of an LLC if I had more than a couple founders or more than one "kind" of founder.

</comment><comment><USER3> If you feel you need to, go ahead; just try and do it properly.

</comment><comment><USER4> YC probably prefers they help you with the process vs you doing it yourself. The problem is most people do it incorrectly and shoot themselves in the foot. Not to mention it can be a costly thing to fix. If you must do it, as PG says, do it properly. I recommend finding an attorney who is familiar with startups to do it right. Some attorneys can mess you up to.

</comment><comment><USER5> I'm thinking that YC don't like incorporated companies where the IP is tied up in the trading company, rather than licensed to the trading company by the IP holding company. I could be wrong.</comment>


Slavery of the Industrial Mind and the Path to Freedom and Success - <AUTHOR> http://www.undeferredliving.com/memorizing-vs-knowing-knowing-facts-is-knowing-nothing-theoretical-vs-applicable-knowledge/

<comment><AUTHOR> It's time for a resurgence in self-education. Schools no longer are providing us with what we need to succeed in the world.</comment>


Google hired a diversity VP as it struggles with a sexist memo from employee - <AUTHOR> https://www.recode.net/2017/8/5/16102476/google-diversity-vp-employee-memo <comment></comment>


Why There Is Interface Pollution in Java 8 - <AUTHOR> http://blog.informatech.cr/2014/04/04/jdk-8-interface-pollution/ <comment><USER2> Regarding the 'checked exception issue'; an alternative technique to the method-wrapping-lambda is to use a default interface method to implement the non-exceptional interface, which delegates to the possibly-exceptional method. It's a bit fussy, but it's a nice technique to know:

        interface IOConsumer<T> extends Consumer<T> {
            @Override
            default void accept(T t) {
                try {
                    maybeAccept(t);
                } catch (IOException ie) {
                    throw new RuntimeException(ie); }
                }

            void maybeAccept(T t) throws IOException;
        }

As IOConsumer<T> is also a Consumer<T>, if you can assign the lambda to an IOConsumer<T> it will get this wrapping behaviour automatically. So your code might look something like:

            try (Writer writer = new StringWriter()) {
                final IOConsumer<String> ioPrinter = writer::write;

                // hand ioPrinter off to something that expects a Consumer<String>
            }

This is by no means beautiful; for 'writer::write' to be treated as an IOConsumer<T> requires that the target type be IOConsumer<T>, so typically would require an interim assignment. It does allow us to simplify the 'wrapping' method, though, so that lambdas can again be used as one-liners:

        static <T> Consumer<T> maybe(IOConsumer<T> consumer) {
            return consumer;
        }

        try (Writer writer = new StringWriter()) {
            final Consumer<String> printer = maybe(writer::write);
        }

It would be nice not to have these wrinkles, but I think Java 8 has done a fairly decent job of preserving backwards compatibility while introducing language features and APIs which feel like a vast improvement. I'd love to see reified generics in the future, particularly if the type parameter can be extended to support primitives.

<comment><USER3> We currently use the following pattern:

        interface ConsumerE<T, E extends Exception> {
            void accept(T t) throws E;
        }

This actually works! The type inference is good enough to figure out the actual type of E.

Note that Java 8 also includes specialized wrappers like RuntimeIOException. So it might be nice to extend your example:

        static <T, E extends Exception> Consumer<T> wrapped(
                Function<? super E, RuntimeException> wrapper,
                ConsumerE<T, E> consumer) {
            return (t) -> {
                try {
                    consumer.accept(t);
                } catch (RuntimeException e) {
                    throw e;
                } catch (Exception e) {
                    throw wrapper.apply((E) e);
                }
            };
        }

Used as follows:

        Consumer<String> printer = wrapped(RuntimeIOException::new, writer::write);

<comment><USER4> I was trying to work around this problem also and found this library: [https://github.com/jOOQ/jOOL](https://github.com/jOOQ/jOOL), from the guys at Jooq. They did all the hard work to wrap all the FunctionalInterfaces in unchecked exceptions. Hope this helps.

<comment><USER3> Thanks a lot for the pointer! That's most of what we need.

</comment></comment></comment></comment><comment><USER5> All this makes me very happy I nowadays work almost exclusively in Scala. No language is perfect, but Scala supports all the things Java 8 does (a few things are experimental until the next release), has straightforward FunctionN interfaces (as the article mentions) in addition to SAM synthesis (I mean, why not just do both?), and while a recent emphasis on compatibility means it's starting to accumulate its own cruft, it at least drops the first ~10 years of Java's backwards-compatibility awkwardness.

<comment><USER6> And it makes me happy for ditching Scala in favor of Java some years ago after realizing that if you're writing a 2MLOC software that your organization is going to depend on for the next decade, backwards compatibility is so much more important than any language feature (even if that feature is an extremely clever type system that extremely clever developers who like that sort of thing can use to statically prove that their function's argument is always prime).

<comment><USER7> You do realize that the compatibility issues are binary compatibility, not source compatibility right? It does seem to be the case that many Java project groups are not setup to build their dependencies from source, but for such a large code-base I think building dependencies from source and hosting your own binary repository is probably not a bad idea.

<comment><USER6> It's (almost) just as bad when you try to manage lots of dependencies.

> but for such a large code-base I think building dependencies from source ... > is probably not a bad idea.

That's a bad idea. You want to manage as little code as possible, especially given the already large codebase. It's certainly doable, but in the end you realize the benefit is just not worth the effort.

Of course, that was just a symptom of a far larger problem: It always seemed that when faced with the dilemma of favoring some PL research goal vs. real working-man's use, Scala always chose the former; it was like its real (though not stated) target audience were PL PhDs. It seems the winds have shifted recently, but probably too late, and Scala is already weighed down by too many "PhD" features that need to be removed in a way that would _severely_ break source compatibility.

Say what you want about Java, it's really great for big projects you must depend on and need to maintain for many years.

<comment><USER8> >It's certainly doable, but in the end you realize the benefit is just not worth the effort.

The benefit of using a language that, at _worst_, is as productive as Java, and at best miles better?

>faced with the dilemma of favoring some PL research goal vs. real working- man's use, Scala always chose the first

Scala is pretty straightforward in terms of features, classifying it as "PL research" is a bit much.

>Say what you want about Java, it's really great for big projects you must depend on and need to maintain for many years.

My experience has been that larger projects end up accumulating so much boilerplate that it becomes extremely hard to manage (I fear that Scala's standard library is becoming like this too, but third-party libs seem to avoid this).

I have trouble finding any non-deployment-related argument against Scala in the Scala vs. Java comparison.

<comment><USER9> > Scala is pretty straightforward in terms of features, classifying it as "PL > research" is a bit much.

False.

[http://www.scala-lang.org/old/node/143.html#papers](http://www.scala- lang.org/old/node/143.html#papers)

<comment><USER10> [http://citeseerx.ist.psu.edu/search?q=java&submit=Search&sor...](http://citeseerx.ist.psu.edu/search?q=java&submit=Search&sort=rlv&t=doc)

        Results 1 - 10 of 119,620

What's your point again?

<comment><USER9> Ah, the difference is that much of the research done on Scala makes it into the language

<comment><USER10> Like what? Generics?

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER11> I'm glad that, whether by better design, or lucky happenstance, C# managed to avoid bumping into these issues.

(It still has the problems, of course, that WinForms was written back in 2002 and doesn't even use Generics, which would make the API a lot cleaner.)

<comment><USER12> To a large extent C# is basically Java 2.0, what you might build if you were starting a broadly similar language/runtime project after watching a few years of the first one (the initial release was about 5 years later, 2000 vs. 1995). The language is pretty nice imo, and I'd choose it over Java. But the runtime situation is somewhat worse if you need cross-platform support— the JVM is better than Mono overall. So I'd pick C# over Java iff you can use the official Microsoft runtime, i.e. you don't need cross-platform or open-source.

<comment><USER13> Unfortunately JVM is better than CLR in terms of feature set and performance.

<comment><USER14> Only when you forget about:

\- tail call optimization

\- AOT compilation as part of the standard toolchain. No need to rely on third party vendors

\- value types

\- reifeid generics

\- painless FFI with external code

EDIT: - Forgot about direct control over SIMD instructions.

All of those issues are being discussed for Java 9+ and have corresponding projects at OpenJDK.

<comment><USER15> Also two very well supported versions of VM with distinct advantages:

1) Mono - deploy to every major mobile platform using a well-defined single- vendor pipeline.

2) .NET - unmatched performance on Windows.

<comment><USER13> There are different JVM implementations too y'know :)

[http://www.azulsystems.com/](http://www.azulsystems.com/)

</comment></comment></comment></comment></comment></comment><comment><USER16> Can someone please define for me what exactly 'interface pollution' is and why it's so bad?

Because I read this article, and the article from the Jooq blog he references, and I can't see anything beyond one guy's preference for one thing, and Java 8 does it the other way.

<comment><USER17> Surely you can see the problem with the combinatorial explosion in the number of interfaces required?

<comment><USER16> We already have this 'explosion' in Java-land. What's the difference between interfaces implemented as a lambda and... interfaces with a single method implemented as an inline anonymous class? Which is effectively what these 'lambdas' are syntactic sugar for. It's still an improvement for Java the language.

</comment></comment></comment><comment><USER18> C# got rid of type erasure and is better for it. Java really needs to bite the bullet and do the same. It is just a compatibility hack anyway.

<comment><USER19> I have tried to make that point but usually I'm told it's impossible ir unnecessary.

a compromise would perhaps be to allow at least reified primitive generics so that List<int> would be a proper runtime type whereas List<Object> would be the runtime version of all reference types in List<T>.

Obviously, this would be a half-assed solution unless custom value types like point structs would also be allowed without boxing in similar scenarios. I'm not sure but I think that these things need pretty significant changes to the runtime.

My conclusion is that Java doesn't need this. It won't be elegant no matter what amount of lipstick is added. I even think some of the current features like lambdas are overkill. Instead, features should be added at the vm level to allow for other jvm langs to use them. A good functional language with good generics over primitives and proper value types would be awesome. F# is a good example of such a language (scala and clojure aren't)

<comment><USER6> The work is already underway in Project Valhalla: [http://openjdk.java.net/projects/valhalla/](http://openjdk.java.net/projects/valhalla/)

Once it's been decided Java should get value types, generic reification became a more urgent necessity.

<comment><USER19> Interesting. Curious to see if they choose exactly the same approach to e.g. value types as the CLR and C# teams did. In C# it feels like there are very few places where choices could have been made differently.

Something I really miss in C#/Java is a possibility to opt out of GC and use more stack allocation.

<comment><USER6> Java's value types will be immutable, while in C# I believe structs are mutable. This is a very important difference with serious implications to concurrency.

> Something I really miss in C#/Java is a possibility to opt out of GC and use > more stack allocation.

The tradeoffs are often not what you think they are.

<comment><USER19> Mutable structs in c# are rare, rarely useful and often dangerous, but in some perf critical scenarios that hack is needed. Most notably the standard List<T>.Enumerator is a mutable struct because othrrwise an object would have to be created on the heap for the sole purpose of iterating a list.

Not sure whether this was actually one of the reasons for allowing mutable structs to begin with, the use case is critical enough that it might well have been.</comment></comment></comment></comment></comment></comment>


A Stanford dean on adult skills every 18-year-old should have - <AUTHOR> https://www.quora.com/What-are-the-skills-every-18-year-olds-need/answer/Julie-Lythcott-Haims?share=1 <comment><USER2> Looks like a list for a 12-year-old.</comment>


Show HN: Mashape open-sources Guardian to solve your OAuth headaches - <AUTHOR> http://guardianjs.com/?utm_source=hackernews&utm_medium=link&utm_campaign=guardian%2Bopen%2Bsource%2Bnewsletter

<comment><USER2> That's great, but there are a lot of libraries to make _consuming_ oauth services easier. I'm more interested in a good library for hosting them. I use Python and have yet to find a single unified framework for serving Oauth both two-legged and three-legged, so you can use the two-legged with your in house apps. Everything I've found is either three-legged or one-legged.

</comment><comment><USER3> Interesting, but I hope there is clear direction to never use 1 legged OAuth in production. Because that's a bad time.</comment>


The Math Problems from Good Will Hunting, with Solutions - <AUTHOR> https://medium.com/cantors-paradise/the-math-problems-from-good-will-hunting-w-solutions-b081895bf379 <comment><AUTHOR> From Wikipedia: "Consider a system of n linear equations for n unknowns, represented in matrix multiplication form as Ax = b where the n × n matrix A has a nonzero determinant, and the vector x = {x_1, x_2, ..., x_n}^T is the column vector of the variables. Then Cramer's rule states that in this case the system has a unique solution, whose individual values for the unknowns are given by: x_i = det(A_i)/det(A)"

</comment><comment><USER2> How do you 'calculate the inverse of (I − z × L) using Cramer's rule'?</comment>