Engineering Managers Should Code 30% of Their Time - <AUTHOR> http://www.drdobbs.com/architecture-and-design/engineering-managers-should-code-30-of-t/240165174 <comment><USER2> This is ridiculous.

Yes, engineering managers absolutely should _understand_ how to code, and understanding concepts like technical debt, unreliability of estimation, etc. goes without saying. And it's awesome for a manager to be familiar enough with the tools and work to be able to implement a quick critical bugfix or similar when unexpectedly necessary.

But if they're a good manager, it's far better for the organization for them to be spending their full time managing. Let coders code and managers manage, as long as they're both good at their jobs. The author's argument makes as much sense as saying a professional baseball coach should be spending 30% of his game time actually playing with his team.

And honestly, this is just BS:

> _Once a person stops coding for a significant portion of time, critical > connections to the concerns of developers atrophy._

Citation needed. It sounds as fake as supposed facts like we only use 10 percent of our brains, or other hogwash.

<comment><USER3> Your argument sounds good in theory, but a lot of us have the experience that 'good managers' are unicorns.

Before my start-up, I was a dev manager. And a damn good developer. I knew what technical difficulties my team had, and understood them, because I was the first place they came for an extra set of eyes. I ran defense from upper management because I knew the concerns, and I was the one with the voice. Because I'm also an open-book style manager I didn't play the "they don't need to know" card, but I could handle those things _without_ them first having to mount a case to me every time.

I've watched _A LOT_ of "I used to code" managers, and almost to a man, they are a disasters.

<comment><USER4> Exactly this. If you are a PM at a Valley outfit & can't code _right now_ , your team simply pretends to respect you, while going off & doing its own thing. Its just one of those empirical things. Doesn't matter if you "used to code" once upon a time. Things are moving at a breakneck pace & if you don't keep up, you are really going to get left behind. I will also say that if you are a PM at a non-Valley outfit like a bank or one of those outsourcing firms, the exact opposite holds true. You should probably not code & spend all of your time managing. IBs especially frown at MDs & VPs taking on hands-on roles instead of managing & filling out gantt charts. My Manager at Goldman used to write compilers using javacc to automate risk algebras - he regularly got the stink eye. He used to tell me "they just want me to run the spreadsheets" :)

<comment><USER5> Being _able_ to code is very different from coding 30% of your time at work.

<comment><USER6> Seriously.

A manager is responsible for controlling, administering and maintaining the work being done by their subordinates. A big chunk of that is determining what work is yet to be done, if it's on time, what needs to be done to support the existing work, communicating with other teams, doing research, quashing harmful discourse and building morale. They organize, prioritize and double- check the tasks assigned and meet with their subordinates to ensure everything is going smoothly. They plan, develop, monitor, communicate, and assess their employees and their work. And of course they attend countless, constant meetings.

If as a manager you can do all that and then have 2.5-3.5 hours a day left to write code, bravo.

<comment><USER7> OK, but how do they know what needs to be done?

A baseball coach knows if the pitcher isn't doing so well, because he's watched the games. How does a manager know if the new API is unwieldy, or if errors in one component are causing serious grief?

I mean, you can ask employees to blame their peers, but some won't want to, and some will be a little too eager.

<comment><USER6> There is more going on in baseball than that. Similarly, there is more going on in software dev team management than that.

[https://en.wikipedia.org/wiki/Coach_%28baseball%29](https://en.wikipedia.org/wiki/Coach_%28baseball%29)

</comment></comment></comment></comment></comment></comment></comment><comment><USER8> I think this works as long as the engineering managers follow a few guidelines:

* Don't code 20% of a full solution with your 30% time and expect the other engineers to pick up your work and finish the other 80% to make it production ready. If you can't cross the halfway point with a task, don't take it on.

* If you do need an engineer to make your code production ready or fix a bug in it, don't act like you did him/her a favor by "getting it off the ground". They are doing YOU a favor by finishing your work for you!

* Be humble and expect to take massive amounts of criticism from engineers who take a lot of pride in their code and spend their careers perfecting it.

* Avoid becoming overly defensive and asking engineers to relax their established code quality guidelines or test coverage to accommodate your compressed schedule.

<comment><USER9> Good guidelines. I'd add:

* Spend some time on bug fixes and paying down technical debt. You'll get a better understanding of the challenges your team deals with day-to-day.

<comment><USER10> When I ran my own company as technical co-founder. I wrote POC's to demonstrate something was possible or what I wanted to habe built. I had no issue in throwing away all this code.

I didn't write production code. I fixed bugs or refactored...

</comment></comment></comment><comment><USER11> This is a fascinating thread to read. I would love to know when people comment if they also consider themselves a manager, or have managed in the past. The reason is that I find management is a very different skill set than coding, and spending 30% on something that isn't making you a better manager would seem to be counter productive.

That said, I totally get the angst over managers who have never been coders. Sort of like Scully relating the sale of computers to being similar to selling 'colored water' (Pepsi vs Coke). Not so much in my experience.

There is also the question of scale, if you're a 20 person company I can easily see everyone writing code as well as doing other things, 50, 100, 2000 person company? Not so much.

And there is the question of perspective, a solid engineer is there to make the best thing they can, within the constraints of available CPU, memory, and storage resources. A solid manager is there to take a limited amount of money and time and ship the best thing their team can make within those constraints. So sometimes managers decide things one way, and engineers argue for a different way, it's always helpful to be able to see the problem from the other person's shoes. And yet my experience is that line managers, often drawn from the ranks of engineers, are more able to see the constraints the engineer is working under than the engineer is able to see the constraints the manager is working under.

I don't know if there is a 'right' way to blend those two roles. I suspect that if you're in a large company as a manager and spending a third of your time coding, you might want to check with your manager on how they perceive your performance. If you're in a small company and write no code you might want to check with your team to see if they feel they have it covered or not. But I can't imagine there being a 'blanket rule' like spend X% of your time coding that would have anything close to universal applicability.

<comment><USER12> In the main, you say a lot of wise things.

I have a couple of quibbles

> spending 30% on something that isn't making you a better manager would seem > to be counter productive.

You're assuming coding doesn't make you a better manager... what if it does?

>There is also the question of scale, if you're a 20 person company I can easily see everyone writing code as well as doing other things, 50, 100, 2000 person company? Not so much.

Bill Gates shipped code up until 1989 [1]. Microsoft was between 3000 and 4000 employees at the time. Sure, he may be the exception that proves the rule, but maybe there's something to the notion that coding managers have a better sense of the technical market... of course, it depends on what market you are in.

I've spent most of my time as a coder, but have managed from 1-12 people from time to time.

[1] [http://www.quora.com/When-did-Bill-Gates-last-write-code- for...](http://www.quora.com/When-did-Bill-Gates-last-write-code-for-products- that-shipped)

<comment><USER11> Its a fair point, certainly understanding what the code is doing makes you a better manager. Sometimes that understanding is best done by coding up some things to test your understanding. I would be concerned though if, as the manager, your code was required to be complete prior to shipping the product. That would be a red flag for me.

</comment></comment></comment><comment><USER13> The worst manager I've had, tried to often pretend he had any idea what he was talking about when pitching some gibberish during the 10min standup talk. He would often make suggestions like "and if you use Apache Solr? ". My face would be like ":/" and had to explain a subtle no (cause he was paying my salary). If he wouldn't be putting up that act, and just work the team dynamics without trying to provide technical solutions to experienced coders who will be like ":/", he would actually fare pretty well I think.

But I must say if you are presented with a tough technical problem, and human resources to solve it, but you fail to comprehend the problem and how you should direct your resources in solving it, it's going to be a tough cookie to make any impact other than wasting your time, and precious developer hours trying to do something you can't.

The best one I've had I worked with for a long time as a colleague freelancer, and 0 hour contract directly under him until we expanded to a 15-20 workforce. He was an experienced PHP'er, and would argue even a better salesman and networker. He would almost never write any code, but when push came to shove he would provide the fix within minutes time after a client made an upset call after hours. Most importantly: Other than being able to point out strength and weaknesses of his employee's, he was never afraid to acknowledge his own, and always assumed our expertise over his. ( unless someone really f'd up of course :) )

</comment><comment><USER14> I would much rather my manager (if I had one, which I don't) be a good /manager/ and a non-engineer, rather than being a bad manager and a bad engineer.

I want my manager to have a great engineering background, but not be interested in the actual engineering except for purposes of helping the engineers get their jobs done. In other words, build a good team, remove obstacles and get the heck out of the way.

<comment><USER15> This is the correct answer. The manager's job is to manage the _people_ , not the project. That's what a tech leads and PMs are for.

A good people manager works to keep their employees comfortable, aims to avoid conflicts (and resolves them if they arise despite these efforts), mentors and coaches people to develop new skills, and shields them from politics. Doing the work of an individual contributor just gets in the way of that. The manager should be familiar with and understand what their people do, but leave the actual performing of that work up to them.

</comment></comment><comment><USER16> Between all the meetings and other nonesense in a large corporation an actual engineer is lucky to be coding 30% of the time.

</comment><comment><USER17> God, this is relevant to me today.

Today, I quit my team because of the manager. Nice guy, but zero knowledge of our code base, no interest to learn it, and no connection to what the problems we, as developers, were encountering. He didn't know, and didn't want to know.

With each proposal to address major technical debt issues, he had no context, no understanding, and would only reply with demands that we prove to him that our projects were impossible without addressing technical debt. (Side note: nothing is impossible, as long as you're willing to add _more_ technical debt).

Between this, and other major problems, I'd had enough. I needed out.

I told him that I was taking vacation for the rest of the week (5 day weekend, wooo) and when I come back Monday, his manager and HR are going to help me find a new team (as they had previous agreed to). I'm fortunate to work for a company where that is possible.

Having a manager who codes 30% of their time might be asking too much, but having a manager working with developers who does not even read the code is not enough.

<comment><USER18> I hate this term "technical debt." I understand where it is coming from but it sounds like made up fairy dust and can be a little hard to take seriously.

<comment><USER17> It's a good enough analogy to what the problem is. You are buying a solution today at the cost of continued payments when you try to make solutions tomorrow.

Is it always bad? Hell no. When you need something right now, then you take a loan from the ol' technical debt bank. You get your product today instead of in a week. That can make or break a product.

But failure to acknowledge what it is, debt which you pay interest on in terms of time and effort, is a recipe for doom.

<comment><USER19> Sadly I think the term has been diluted a bit through overuse. I even hold myself to blame in sometimes referring to things as technical debt that are more accurately described as bit rot or just useful version upgrades (the ruby is particularly insidious about this).

</comment></comment></comment></comment><comment><USER20> As the cofounder & CTO of a 14-person startup, how in god's name do you find time to spend 30% of your time programming?

There's just too much other stuff that's more important.

</comment><comment><USER21> I am in the "You can't manage what you can't do" camp but 30% is a bit steep for anyone managing a team.

</comment><comment><USER22> I don't know where to begin with this. This is just nuts!

This might work for some snazzy valley startup with 16 people all working on the same code base, but this is just completely, shall I say, naive and shortsighted. It smacks of someone who hasn't been involved in anything big, complex or been in the industry for any length of time.

Some people don't like to use sports analogies, but I do so I will.

An NFL team typically has a head coach, an offensive coordinator, a defensive coordinator, a special teams coach, QB/WR/RB/DB/LB/Oline/Dline coach as well as a strength coach, among some more in certain cases. Then there are the players. Offensive, defensive, special teams.

Imagine you are the head coach. Should you spend 30% of your time doing ANYTHING any of the players are doing? Should the OC or DC being doing the drills or what not? Maybe, maybe working out, but probably not like the players.

My position is akin to the OC on an NFL team. I'm in charge of teams of teams of people. Developers (in different areas/focuses), QA, infra, release, ops etc etc. This is LOTS of people. So, if I'm "coding" 30% of my time, I'm effectively looking at only one area. Should I be spending 30% (or some % number) of my time doing jobs in those other areas? And do I want my managers in those areas to do those things? Well, probably not. I want them to understand them, yes, have done that job previously, yes. More over, I want someone who can 1. engage the team 2. direct the team 3. hold the team responsible 4. tell me (or others) "no" and intelligently show the way for their area and 5. lead up and down. Coding is literally so far down the list it isn't funny.

So, no, a manager shouldn't be coding 30% of their time. If they want to and it doesn't get in the way of their actual job, fine, but that is not their job. Their job is to set or enact direction, lead and protect their team.

To go back to the NFL example. If I'm the head coach, I want the OC to know exactly the type of offense I want to run, put in the system in place, coach the coaches on that system and make sure everyone is on the same page. I don't want them running routes with the WR or practicing blocking drills with the linemen.

</comment><comment><USER23> > Get a real machine to work on. That MacBook Air you love for meeting > hopping? Not it.

Why do you think he said that?

<comment><USER2> Because he doesn't know what he's talking about.

Some people say they need dual 30" monitors to code, I'm not going to disagree with their personal preferences. But other people (like myself) see zero difference in productivity between that and a 13" Macbook Air screen, which I've been coding on for years.

The whole "real machine" thing is just ridiculous cowboy posturing, unless you're doing video game development or something. A Macbook Air is just _fine_ for web development.

<comment><USER24> Tiny screens, especially high res ones, are fine for coding. But working on laptops all day isn't great.

If you code all day, you will probably develop back problems if you don't sit with good posture.

You need to sit straight in a good chair, and look at a monitor at eye level about 2 arms lengths away. You need to type on a keyboard with good typing posture.

If you don't, then you will be okay for a few years, and then you won't.

I've seen RSI write off good programmers. It's pretty horrible - they build their lives and self esteem around a job, and then they can't do it. Bad RSI means that you can't touch a keyboard.

<comment><USER25> I've never seen any solid research linking slouching to back problems later in life. There's plenty of studies that correlate "bad" posture with discomfort, but none that I'm aware that correlate slouching with future back problems controlled by a group that does not slouch. I'd love to be corrected though.

<comment><USER24> You are right - I am basing this on my subjective experience.

Also, I suspect that this is a problem if 80% of your time you are at a desk typing, but if you move around a lot, it's not going to be such a problem.

That said, if you are coding at a desk all the time, a quick google finds research that backs up the posture -> injury thing.

</comment></comment></comment></comment></comment><comment><USER26> I remember reading once that doctors who manage other doctors still practice medicine part of their day. If so, why, when they have a business that also changes quickly and is actually life threatening, is that the case? Perhaps they realize remaining in touch with your field is valuable. Here are some papers with findings that indicate how practicing doctors as hospital administrators improve the quality of their hospitals above those hospitals that have just business managers. [http://www.amandagoodall.com/papers.html](http://www.amandagoodall.com/papers.html)

Why then is it the norm that so many developers who move into management do so to "get away from developing"?

It seems unique to development, or maybe just uniquely easy to see when someone is clueless about technical matters.

Anecdotally, all my worst managers were "out of touch" but thought they still were hot stuff technically. My best were either completely non-technical and trusted their team, or were developing at least 1/4 of the time (and he worked mostly automating all the crap work we hated and fixing bugs).

</comment><comment><USER27> If you have to be told you should still be writing code you've probably already lost it (or never had it to begin with). I'm surprised by the people here arguing so strongly against something that is just common sense to anyone who truly cares about software development. Sure the 30% figure is debatable, but you're splitting hairs if that's what you think this is about.

There are too many people who are completely incompetent in management positions who effectively hide their lack of knowledge and skills because they are never put to the test. Moreover one shouldn't want to completely lose touch with the processes and techniques of development and design of software. How much involvement in code is required to be effective is perhaps debatable, but that you should be involved definitely shouldn't be.

</comment><comment> nevi-me From following Mongo on JIRA, I have noticed that Elliott spends time coding, and could venture to say that he is led/allocated work by Dan Pasette (who is the SERVER team leader). A lot of recent Mongo releases have been delayed by over a month, with some features and fixes being delayed to 2.8.

If Elliott wasn't involved in the coding I doubt he would understand the pressure the team deals with, and how realistically would his explanations to say $150 million investors be (not disregarding that Dan and other team leaders would provide details status reports)? Of course this is a grand assumption, but when I read his article last week, I came to agree with it. In my field of work, I see it all the time, over time a lot of managers lose respect from us subordinates. They no longer make accurate project estimates, their staff planning is unrealistic, they lose some of the peronism solving skills that got them there, etc. I don't expect them to go down and do the dirty work, but I acknowledge that sometimes if such was possible in our line of work, they would benefit a lot in keeping in up with us subordinates

</comment><comment><USER28> I'm lucky enough to have managers that care about the people under them and I think that's good enough so far.

They would listen to advises/opinions, they would try to diffuse stressful situation, they would try to communicate what's necessary, they do negotiation fairly (got to give something to get something back).

As a result, I would give more to them (within limits, of course). At the end of the day, it's a win-win situation: I make them look good, they make sure I'm happy and not burn-out.

Background: both managers code before, one has MSc in Quantum Computing, the other does a lot of infrastructure/big-enterprise system (batch processing) so their backgrounds varies with the only commonality between them is that they both come from *NIX background and understand DB/Infrastructure rather quite well.

It's very hard to be an engineering manager (lots of examples in this threads why they don't like their managers or their previous bad experiences) and if you found a "matching" one with you, priceless. Of course, nothing is forever...

</comment><comment><USER29> This sounds more like what a Senior Developer/Engineer should do, not an Engineering Manager or a PM or a TPM.

I seem comments here that "used to code" managers were either the worst or the best manager they ever had. However, it's the job of the Senior Developer to represent the engineering concerns of the team. It's the job of the Manager type to sit between the Engineering Team and the Senior Management, deal with paperwork nightmares, prioritize major work units, set deadlines and manage both up and down.

The Senior Dev should sit at a high level of the actual business of the engineering, dip down from time to time to spot shoot thorny issues, but they should prioritize the specific engineering items and keep the team well fed with work. It _is_ a management function, with expertise in very hard engineering problems.

Sometimes the Senior Developer might represent that some work item is problematic for whatever reason and try and keep the team off of it. The manager, knowing the strategic priorities of the upper management, can either chose to manage this up, or override the Senior Dev and manage this down depending on the situation.

This is something that Senior developers aren't in a position to understand. Representing only engineering up means that unpleasant shit work is often just not done. It sucks, but needing to press your team into doing work they don't want to do is how things get done.

It may sound like overspecialization, and on small teams it is. But with large engineering groups, you don't want to tie up the Senior Dev, who's basically the guy who beats the drum on a slave ship, with being the ship captain.

This is _really_ hard to understand until you've been in a medium to large sized organization and had to manage there. Managing takes an incredible amount of time. Most managers don't stop working when they leave work. Hell putting together a decent proposal might take 2 or 3 months of 50-60 hour weeks.

</comment><comment><USER30> At least from a big company perspective: This breaks down. Any set % for coding doesn't work because there are so many 'big company' problems to deal with already that take up enough of their time. Either you will end up fixing trivial stuff that a coder would have done in 10% of the time you took or you will spend too much energy on this and lose track of your actual job.

Ideally I want managers who can code / have coded for a long time in their history so that they understand the software development world. But I actually want them to do time management, people management, expectations management, customer co-ordination, issue prioritization etc.

IOW - Engineers can code. Engineers usually can't do those other things without flinching. Leave engineering to the Engineers and management to the Managers.

</comment><comment><USER31> Yes, and developers should manage 30% of the time and do design work 30% of the time. You know, because good management and good design is essential to a good product, and just saying that you have "done some" design or management in the past isn't good enough.

<comment><USER32> It's common for engineers to do some simple design work. And every employee does some management.

<comment><USER31> Yes, but the point being made here is that managers should do more. They should spend all of a whole 30% of their time coding, which presumably includes real coding projects, not "some simple" coding.

After all, if all you're doing is checking in bug fixes occasionally, how are you really going to know the advantages and disadvantages of redis or puppet or any of the other tools used on a daily basis on engineering teams.

</comment></comment></comment><comment><USER33> I suppose it depends on what you/your-organization views as the realm of "management". I like Joel Spolsky's suggestion that they should just be moving furniture out of the engineers' way. Of course, he cites Microsoft, and I know how many of us feel about that company.

"At Microsoft, management was extremely hands-off. In general, everybody was given some area to own, and they owned it. Managers made no attempt to tell people what to do, in fact, they saw their role as running around, moving the furniture out of the way, so their reports could get things done. "

src: [http://www.joelonsoftware.com/articles/fog0000000072.html](http://www.joelonsoftware.com/articles/fog0000000072.html)

</comment><comment><USER34> As a coder or a CTO, I say you can't do both.

Code 30% of time? You know nothing of coding. Can't be done.

<comment><USER35> It can and it should. I've worked with CTOs that do this.

<comment><USER36> You can average it out at 30% of the time, but in a given week, you can't commit to it, because a greater responsibility of your job is being available to manage the unexpected. That makes it difficult to integrate someone in that role into a team in terms of dependency management.

There is also a risk in being in a position of power and being seen to assign yourself the most interesting work. I have seen this happen in one team, our manager was a good guy, but somehow he always used to get the sexy work like playing with new kit, and the team got the gruntwork. It led to resentment and undermined his authority (tho' because he was a good guy, as soon as he became aware he was doing this, he stopped).

<comment><USER37> > You can average it out at 30% of the time, but in a given week, you can't > commit to it, because a greater responsibility of your job is being > available to manage the unexpected

I'd argue that your job is to teach others how they can best manage the unexpected. Then you should only be involved in the really exceptional circumstances, allowing you more time to tend to your (metaphorical) garden at work. If writing code is part of that, so be it. But the bulk of time, I'd argue, ought to be in mentoring others.

The best managers I've worked with don't run around like chickens with their heads cut off, constantly responding to fires.

<comment><USER36> Depends what you mean by "fires". If a customer comes along with a new requirement, how do you predict that? Then your job is figuring out if it can be done, the best way to do it, if you have people free to do it and test it, if doing this for customer A will have any impact on customers B-Z, if there are any currently in-progress features you could or should cut to work on this, whether to push back on the customer and say, not in this release and how to do that without disappointing them too much, etc etc etc.

Basically a manager's role includes being the interface between his team and the outside world, and the outside world is by its very nature chaotic.

</comment></comment></comment></comment></comment><comment><USER12> I've personally seen horrific technical judgement calls made by managers who used to code (usually not in an environment like anything they're actually managing). There's a huge, dangerous class of problem where you think you know what you're doing, but you don't.

"It's not what you don't know that hurts you. It's what you know that just ain't so." \- Satchel Paige

When the fates of a whole team of individuals rest on your judgement, it's best if it is grounded empirically or at least humble enough to account for the possibility that you could be mistaken.

</comment><comment><USER38> Ignoring the dubious points of this article (30%, MacBook Air) I think a vital question being overlooked is whether a newly promoted manager actually _wants_ to continue coding. Some will, some won't.

</comment><comment><USER39> The atelier system seems to be a good match for this field (given that what we do is effectively arts and crafts.)

Regrettably, the facile access to information by the current crop of practitioners of this craft has blinded the clearly novice to the necessity of donning the disciple's apron.

\--

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

(*: there is very little science and engineering in the practice of software development.)

</comment><comment><USER40> My best managers were the ones that could and did code occasionally. Not just a side project of their dreams, but the same product we were working on, to feel the same pain, to understand the reasons of our decisions.

I have had good politician-managers who were excellent in corporate politics, but that is not the same as having an eng-manager.

</comment><comment><USER41> According to Junio Hamano he does 45% Communication, 50% Integration and 5% coding (Scratchin own itch)

So 30% is rather high. A manager is not a coding position. If you are either you need to hire more people, or its not actually a manager role.

If you are not allowed to hire more people, its not a manager role. If you can, do so now.

<comment><USER42> You're not really making a point, besides "a manager is not a coding position". This article is explaining why the author thinks it _should_ be. It's not enough to say that managers shouldn't code, you need to demonstrate that either the authors points are wrong, or that there's a greater risk by spending 30% of your time coding.

FWIW, I spend probably 30% of my time coding, I manage 13 developers, and I'm capable of hiring more people. If you're not good at pushing autonomy down on your team, you'll make yourself a bottleneck and have no time left to code. If you hire great people, and trust them to make the right decisions, a lot of traditional management overhead vanishes.

<comment><USER41> Ok, that's fair.

If I am going to give myself wriggle room, its that the vast majority of problems I have seen in poor software management have not come from a ex- Developer who has lost touch with the codebase, but from the other issues you / OP make - delegation, focus on team growth, structure and process improvement etc.

If someone is self-diagnosing and saying "aha the reason this is all falling apart is because I am not coding more" its unlikely to be the correct answer.

</comment></comment></comment><comment><USER43> This is very true, but to be a good engineering manager, it's hard to fit all the other things in: Representing the team in dreaded meetings, coaching, hiring, fire, career advice, direction, etc.

It is a very fine line to balance. 0-10% is too little. After 50%, you're no longer a manager.

</comment><comment><USER44> Many developers, especially here on HN, think that managers don't understand what developers do.

Perhaps so, but it's even more true that many developers don't understand (or respect) what managers do.

</comment><comment><USER45> I used to manage an engineering team, and probably did spend that much time coding. Often, it was protyping or proving concepts to then pass on the engineers on the team to complete.

</comment><comment><USER46> Engineers Would Spend 70% of Their Time Fixing the Result

</comment><comment><USER47> And answer customer feedback at least 4-5 hours / week.

</comment><comment><USER48> Agree. But first they need to learn touch typing.

</comment><comment><USER49> yup..</comment>


A Necessary Step for Safe AI - <AUTHOR> https://racherb.github.io/2019-07-05-the-first-step-to-a-Safe-ai/ <comment><AUTHOR> Unleash the democratizing power of software developers and the community as a fundamental first step to achieve the development of Secure Artificial Intelligence.</comment>


Show HN: ML on your spreadsheets – without code - <AUTHOR> Introducing Hunchera (https://hunchera.com) to help people do Natural Language Processing and create ML models on their spreadsheets - without requiring a data scientist or a developer.
One can do support ticket classification, customer feedback classification and other internal things automatically with a spreadsheet.
If you are interesting in trying it out - send me a note - firstname.lastname@example.com <comment><USER2> FYI getting this when I go to [https://hunchera.com/waitlist/index.html](https://hunchera.com/waitlist/index.html)

<Error> AccessDenied <Message>Access Denied</Message> <RequestId>65A3FB0DB1A6E272</RequestId> <HostId> xeTVuN7+rGMRxh7cB72fWwBwspLykaTjC/kUwzMhWxhRVikhiv5PNU7I2zJpR8FyUvnK3tQjn0A= </HostId> </Error>

<comment><AUTHOR> Thank you! We published a fix for this and are waiting for it to propagate on the interwebs.

</comment></comment><comment><USER3> why would i use this over google sheets?

<comment><AUTHOR> This is supercharging your spreadsheet for prediction. Give it it few examples in the first few rows, and it will automatically learn from your data and predict the others. You can totally use google sheets with this.</comment></comment>


Could Our Universe Be 2-Dimensional? Black Holes Offer a Clue - <AUTHOR> https://www.forbes.com/sites/fernandezelizabeth/2020/01/21/could-our-universe-be-2-dimensional-black-holes-offer-a-clue/ <comment><USER2> Can anyone expand on what that 2-dimensional math would look like, compared to GR in typical tensor form?

If I'm almost capable of working in tensor calculus, would I be in a position to understand the 2 dimensional formulation?

Or are these question too naive and I need to study something else first?</comment>


Triangulation Conjecture Disproved - <AUTHOR> https://www.quantamagazine.org/20150113-a-proof-that-some-spaces-cant-be-cut/

<comment><USER2> Are there historical examples of conjectures widely believed to be true and then proven to be false?

I suppose Gödel's incompleteness theorems and Hilbert's second problem is along those lines, but I'm not sure Hilbert's problem was regarded as a conjecture.

<comment><USER3> There is the two sentence counterexample to Euler's conjecture.

[http://www.openculture.com/2015/04/shortest-known-paper- in-a...](http://www.openculture.com/2015/04/shortest-known-paper-in-a-serious- math-journal.html)

<comment><USER2> Thanks, that's awesome!

</comment></comment></comment><comment><USER4> Pretty cool. I was actually wondering the other day if, for a given manifold, there is a general algorithm to randomly choose a point on it such that each point has an equal probability of being chosen.

<comment><USER5> This isn't possible for some manifolds. In particular, you can't choose a point uniformly from an infinite plane. To see why, split the plane into an infinite number of equally-sized (say, one by one) squares. Each square should have an equal probability that one of its points is chosen. Call this probability _s_.

Now let's look at the entire plane. If you pick a point, it will surely be on the plane. That means the probability that you choose a point on the plane is equal to one.

Putting the squares together gives you the whole plane, so you'd expect that summing their overall probabilities _s_ would give you the overall probability of the plane, which is one. But there are an infinite number of squares, and there's no real number _s_ for which the sequence _s_ , _s_ \+ _s_ , _s_ \+ _s_ \+ _s_ , ... converges to one.

<comment><USER6> [http://planetmath.org/anysigmafinitemeasureisequivalenttoapr...](http://planetmath.org/anysigmafinitemeasureisequivalenttoaprobabilitymeasure)

<comment><USER7> Note that the OP desired that "each point has an equal probability of being chosen". The infinite plane being infinite, this requirement does not formally make sense, but a natural way to interpret it is to ask for invariance under isometries (or translation-invariance). As the post that you replied to indicates, this is not possible for the Euclidean plane. The measure constructed by the lemma that you cite does not have this property.

</comment></comment></comment></comment><comment><USER8> Seems odd that they did not provide a counter example. My suspicion there is an incorrect assumption for non fractal structures.

PS: This is really one of those cases where a paper does not mean much. You really need to dig through [http://arxiv.org/abs/1303.2354](http://arxiv.org/abs/1303.2354) and find the flaw as there is no peer review. Though it supposedly is going to show up in Journal of the AMS so it's not junk and probably worth diging into.

<comment><USER5> Here is the actual paper: [http://arxiv.org/pdf/1303.2354v4.pdf](http://arxiv.org/pdf/1303.2354v4.pdf). It looks like this is their family of counter examples:

 _A specific non-orientable five-dimensional manifold M5 with Sq1 ∆(M) ̸= 0 is constructed in [25]. Hence M5 is non-triangulable. To get non-orientable examples of non-triangulable manifolds in dimensions n > 5 we can take the product of M5 with the torus Tn−5. To get an orientable example in dimension 6 we can consider the non-orientable S1-bundle over M given by M ̃ ×Z/2 S1, where M ̃ → M is the oriented double cover; the total space of this bundle is orientable. To get orientable examples in dimensions n > 6, we can then take products with Tn−6._

<comment><USER9> Is there a reason why previously found 4-dimensional counterexample couldn't have been used as the basis of induction?</comment></comment></comment>


EnclaveDB: A secure database using SGX - <AUTHOR> https://blog.acolyer.org/2018/07/05/enclavedb-a-secure-database-using-sgx/ <comment><USER2> Moxie Marlinspike did this kind of thing with Signal last year. Not a full SQL engine though. Surprised there's no mention of him.

[https://www.theregister.co.uk/2017/09/27/signal_turns_to_int...](https://www.theregister.co.uk/2017/09/27/signal_turns_to_intels_sgx_to_lock_down_contacts_from_spying_eyes/)

HN thread: [https://news.ycombinator.com/item?id=15935955](https://news.ycombinator.com/item?id=15935955)

</comment><comment><USER3> SGX is scary. It essentially gives Intel complete control over what software can hide from the user.

 _One of my favourite takeaways is that we don't always have to think of performance and security as trade-offs_

...but security and freedom always are.

<comment><USER4> Newer versions of SGX include the "Flexible Launch Control" feature, which allows you to control the SGXLEPUBKEYHASH setting on the CPU. This contains the hash of the public key that the "launch enclave" for SGX must be signed with, which further grants tokens that can be used to launch subsequent enclaves (AFAIU). Control of the launch enclave key has been the main source of contention over SGX, as far as I can tell, since you currently have to enter into negotiations with Intel to get your enclave signed by their key.

Based on some posts from Andy Lutomirski on LKML, it seems highly unlikely that any SGX support will go upstream in Linux until Flexible Launch Control is available in consumer SKUs, at least.[1] In fact, I looked up the latest patches posted just a few days ago, which "Removed in-kernel LE i.e. this version of the SGX software stack only supports unlocked IA32_SGXLEPUBKEYHASHx MSRs."[2]

"SGXv2" with FLC is allegedly available in some SKUs right now (based on some googling[3]), but Intel hasn't been very forthcoming on exactly which ones those are, or even what the major differences between v2 and v1 are, besides FLC...

[1] [https://lkml.org/lkml/2017/3/8/605](https://lkml.org/lkml/2017/3/8/605)

[2] [https://lore.kernel.org/lkml/20180703182118.15024-1-jarkko.s...](https://email@example.com/)

[3] [https://communities.intel.com/thread/124490](https://communities.intel.com/thread/124490)

<comment><USER5> The EnclaveDB paper bibliography has a few references about SGX based containers on Linux.

</comment></comment></comment><comment><USER6> If I understood it well, the main security concerns are moved to the KMS, that you must refer is not susceptible to the same kind of attacks that they describe (untrusted environments, potentially with unknown database administrators, server administrators, OS and hypervisors). I have not a vast experience with KMSs, what would be your approach to deploy one you can trust in a cloud environment, deploying it on bare metal?

<comment><USER7> If you have one backed by a HSM (Hardware Security Module) then you could be in a good spot. Similar set up to what AWS KMS does.

[https://aws.amazon.com/kms/details/](https://aws.amazon.com/kms/details/)

</comment></comment><comment><USER8> What are the best resources for learning more about the implications of SGX and how to work with it?

<comment><USER9> [https://eprint.iacr.org/2016/086.pdf](https://eprint.iacr.org/2016/086.pdf)

</comment></comment><comment><USER10> >machines with over 1TB memory already commonplace

WTF</comment>


Oô - <AUTHOR> http://en.wikipedia.org/wiki/Oô

<comment><USER2> It seems like one of the articles where the lead sentence should really have a link to a recorded pronunciation, especially on the english wikipedia.</comment>


Show HN: Cantrip – instant yet flexible REST API that binds to a JSON file - <AUTHOR> https://kriek.co.uk/cantrip/

<comment><USER2> Any chance for MongoDB support?

<comment><USER3> I'm working on a cloud platform that does this, with a schema layer to enforce types, validation, links, and other meta properties.

It's not publicly announced yet, but if you're very interested in playing with it, ping me at eric at schema.io.</comment></comment>


Most Scientists in the U.S. Are Democrats. That's a Problem - <AUTHOR> http://www.slate.com/id/2277104/

<comment><USER2> That is a problem. But it is not a problem for science, it is a problem for the republican party. For the last ten years they have been so aggressively pro stupidity that intelligent people are embarrassed to be affiliated with them, even if their general political beliefs are closer to the republican than to the democrat side.

<comment><USER3> Yes! It's not difficult to meet physicists or engineers with conservative politics. But thoughtful, intelligent conservatism has more or less left the scene, which means thoughtful, intelligent conservatives don't really have much representation. (In other words, American politics is deeply suffering at the loss of William F. Buckley.)

<comment><USER4> Glenn Reynolds? Admittedly he'd call himself libertarian rather than conservative, but he's pretty much the closest thing to a latter-day WFB.

On the other hand, despite having one of the most widely-read blogs in the world you'll almost never see him on TV. Both the right-wing and the left-wing sides of the media don't like to show conservatives unless they're angry and fire-breathing. And even the most intelligent of the fire-breathing conservatives (say, Krauthammer) always come off as non-thoughtful.

</comment></comment></comment><comment><USER5> I would claim that there are two factors that lead to the fact that most scientists are Democrats: the overall lean of universities, and the source of funding.

First, scientists tend to work in academia. It's well documented that universities are strongly slanted to the left. It seems reasonable to expect that when the left-leaning universities are looking to hire, they will tend to (possibly not intentionally) favor others like themselves.

Second, the government is the largest funder of scientific research. However, to the extent that the GOP favors a smaller government (and though they say this, they don't actually do so, but that's a different discussion), this would make one expect that those against such governmental funding would be morally bound to find other means of employment.

 _asking how the guy who prohibited stem-cell research_

This isn't what happened. It's incredibly frustrating to me that people continually read a ban on _federal funding_ to be a ban on research itself. But it does reinforce my point that the governmental force behind science is now perceived as _the sole_ force behind science.

 _reinforce the idea that Democrats are the party of science and rationality_

In the science of economics the opposite is true. For example, Democratic support of minimum wages and other price controls, and especially their opposition to free trade, fly against the wind of economic science.

<comment><USER6> _I would claim that there are two factors that lead to the fact that most scientists are Democrats: the overall lean of universities, and the source of funding._

And the overwhelming anti-science bias within large segments of the Republican base has nothing to do with it? Yeah, it has just got to be all of those liberal universities and scientists living off the government teat... You can delude yourself all you want, but the fact is that most scientists did not just aimlessly gravitate to the Democratic party; they were chased there by pitchfork-wielding, bible-thumping, Republicans who sought to "refudiate" their work (aided in large parts by conservative think tanks that will tell any lie and spread as much FUD as possible if it helps the short-term objectives of their corporate backers.)

<comment><USER7> Mostly true, but conservatives hardly have a monopoly on willful ignorance. Ask the stereotypical liberal what he thinks of nuclear power or GMO crops, and you're not likely to get a response based on sound science.

<comment><USER8> Nuclear power and GMO crops have the same issue for liberals like me: when they fail, they fail in catastrophic fashion. We've already had Cherynobol and Monsanto's "Terminator" seeds getting out into the wild. To paraphrase badly, liberals opposed to both are concerned about Black Swan events.

Your assessment of the risk and that of those of us who are a bit more "reactionary" are just different, but it doesn't mean that we willfully misrepresent the science.

<comment><USER9> Your position on Nuclear power is completely irrational. One easily prevented, catastrophic failure with relatively minor flow-on effects is not enough to fear nuclear power. Regular power sources drip-feed death and destruction on a regular basis, but because they don't all happen at once, the numbers go unnoticed.

Similarly, anti-GM crops is circular logic. All food products we eat are long- since modified from their original native or wild source.

The struggle within science to find a place for the bible within the geological record has been going on for at least 2 centuries. As such I don't see the problem being resolved anytime soon. Some of the towering giants of science have bent themselves out of shape trying to retro-fit biblical tales into natural history, and that doesn't invalidate their other contributions. What I'm saying here is that holding an irrational position on evolution doesn't necessarily devalue a scientists value, as long as they aren't primarily studying evolutionary-related fields. If the person who comes up with a cure for cancer doesn't believe in evolution, personally it wouldn't worry me one bit.

Of all that, I do think the Republicans have a problem with religious beliefs taking over the party. I don't know of any other major conservative party in the world which puts things like evolution in question the way they do. Although I suspect it's not endemic within the party, the moderates within the party should be doing more to establish a more mainstream view as the primary position.

<comment><USER10> ~Your position on Nuclear power is completely irrational.

Your opening statement is pointlessly inflammatory. He obviously just has a different risk preference than you do. Why be so antagonistic? Personally I'm all for having a Nuclear power plant in my back yard, but I would also respect other's aversion without mockery.

</comment></comment></comment></comment></comment></comment><comment><USER11> This kind of rhetoric disturbs me. The burden doesn't lie with the scientific community, but rather the republican party. Science is not a movement, it's a set of practices that emphasize observation and empirical analysis to interpret the world around us.

Science is there for anybody who wants to open their mind to it to enjoy. I'm sure some republicans have and assuming those numbers are correct, 1 of 3 things happened: 1) they've changed their affiliation over time (becoming either democrat or unaffiliated), 2) they didn't find what they were looking for in science and stopped practicing, 3) they're in the current minority.

<comment><USER12> Although it is true that the scientific method cannot be thought of as "political" in any sense, I think it's a big mistake to see science as deriving, almost mechanically from observations. It is done by scientists and in all ages scientists are affected by non-scientific aspects of their societies, i.e. traditions, commonly held beliefs, and politics.

Also, not all science is as abstract as, say, mathematics or hunting for dark matter. Some questions, e.g.: should we perform stem cell research on embryos, should we eradicate mosquitoes, should we try to affect human sexual patterns leading to AIDS, etc. are scientific but also contain a large dose of ethics, i.e. they cannot be approached by handling equations alone in an objective matter.

<comment><USER11> "I think it's a big mistake to see science as deriving, almost mechanically from observations [...] scientists are affected by non-scientific aspects of their societies, i.e. traditions, commonly held beliefs, and politics"

It's neither a mistake nor inaccurate. Once you've observed, measured, calculated and concluded, you can involve all form of non-empirical disciplines you want, after all we are morally and emotionally bound beings. One thing we can't do however is hide from the truth the data has spoken. Those are usually very profound paradigm shifts, a crossroad between being comfortable with what was revealed, or choosing to be more at peace with one's oblivion and folkloric truths.

"Some questions, e.g.: should we perform stem cell research on embryos, should we eradicate mosquitoes, should we try to affect human sexual patterns leading to AIDS, etc. are scientific [...] i.e. they cannot be approached by handling equations alone in an objective matter."

If the approach can't be objective then the question isn't scientific. Granted, those are science related questions and have a dose of moral and ethics involved, but that's not what science is about.

Science isn't there to answer what you should or shouldn't do. It's there to provide you with facts on what would happen if you do it. Change your question _should we eradicate mosquitoes_ into _what would happen if we eradicate mosquitoes_ and we can talk science. Lets take out the tools, dust off old books, go in the nature, observe, measure, extrapolate, calculate and conclude. Then based on those conclusions we'll look at each other and our moral fiber will tell us, nah we should probably let the little scoundrel be.

</comment></comment></comment><comment><USER13> In graduate school, I was once tangentially involved in a group conversation regarding whether or not another grad student was a dick. A few things were mentioned, and then one of my coworkers said, "Yeah, and he's a republican". Everyone nodded, the question having been resolved to their satisfaction. I still remember thinking how ugly that sounded. How out of keeping it was with the spirit of inquiry that should guide science.

This wasn't an isolated incident. I've watched political debates with coworkers where I was shocked at the number of emotional outbursts and lack of charity for the other side. I've had a student complain to me that they couldn't stand an otherwise good biology professor because of their snide political comments about conservatives. Do you think that republican student was more or less likely to go into biology as a result of hearing Bush jokes once a week?

I'm one of the 32% that are independent, and grant that the republican party is part of the problem. Having taught evolution, it's completely bizarre to see republican candidates attempting to weasel around questions about its validity every election cycle. It's equally bizarre to listen to my republican parents' evidence-free opinions on climate change and science funding. But the people here who are trying to pretend that science doesn't occur within a social context and that the republicans are 100% responsible for this problem are just as baffling to me.

</comment><comment><USER14> As others have pointed out, it's funny how this is a problem for Democrats and/or scientists. Shouldn't _Republicans_ be worried about that? I guess this presupposes that you believe in all that "scientific method" nonsense as opposed to, say, Intelligent Design.

I should also point out that, if anything, an inquisitive, questioning turn of mind would indicate _more_ willingness to explore alternative ideas, not less! The assumption here appears to be just the opposite: scientists are, for whatever reason, categorically unwilling or incapable of considering alternative political ideas. It takes a special kind of chutzpah to suggest that an entire class of people that disagrees with you is guilty of dishonesty or shenanigans.

Bonus hilarity: he won't come right out and say it, but this sure does sound like he's asking for Republican affirmative action in science and universities. lol, as the kids say.

</comment><comment><USER15> I don't see why that should be a problem. There is also a clear correlation between scientists and religion (or lack of belief).

<comment><USER16> I think he was trying to point out that it's a credibility problem. For instance, where science aligns with political belief, it makes it harder for scientists to argue that they're impartial when they generally share the same political beliefs with eachother.

<comment><USER17> _where science aligns with political belief_

What if it's more an issue of political belief aligning itself against science? We've all seen the numbers on which Americans believe the earth is 5,000 years old, right?

<comment><USER16> Well clearly that's problematic too.

<comment><USER17> I agree, and furthermore I'd say that if the one preceded the other (i.e. the Republican Party became anti-science first), it's sort of blaming the victim to say scientists should be more balanced. More balanced with what? We'll average 5k and 12 billion and posit that the universe is 6 billion + 2500 years old?

</comment></comment></comment></comment></comment><comment><USER18> I think this is largely because of the overwhelming number of fundamentalists in the Republican party. When there are polling figures like 46% of Republicans believe Obama is a Muslim and 67% believe he's a socialist, this picture starts to become clear. If you believe something so strongly that your opinion cannot be changed despite astronomical amounts of evidence to the contrary, then you will not many friends in science.

</comment><comment><USER19> I think the article makes a good point, and the obvious solution is to make a fair percentage of those conducting research switch party affiliation.

<comment> Trey-Jackson Ha, funny.

</comment></comment><comment> Trey-Jackson "Reality has a well-known liberal bias." \- Stephen Colbert

</comment><comment><USER20> I'm no scientist, but do place a premium on inquiry, falsifiability, and rationality in most endeavors. IMO the Republican party is run by people who are openly theocratic, anti-intellectual, and anti-rational. It is no surprise to me that so few scientists are registered as Republican. I see this as a problem for Republicans specifically, and the United States generally. FWIW, last time I affiliated myself with any party was in 2000, when I was a Republican.

</comment><comment><USER21> It's interesting. Compared to most of Europe to many people in Europe the entire political scene in the US looks like a Republican scene.

I fail to see how that is a problem anymore than saying that most people who work on wall street are republicans.

The actual political position is only relevant in context not from an absolute point of view.

</comment><comment><USER22> This is a problem, and it really has nothing to do with specific policies or parties.

Any democracy will evolve into a multi-party system. In the U.S. we've basically went with two parties, and it looks like we are stuck with it.

So in a two party system, any group that completely affiliates with one party, either by membership or just tradition, both damages that party and the group itself.

What I love about politics is that it shows humans at their most irrational: from the Nobel Laureate to the rocket scientist, when you get them talking about politics it's the emotional brain first, the logical brain second. People are like this in all areas of reasoning, it's just politics is the easiest to observe. So, for instance, watching somebody bullshit themselves about politics is a pretty good quick and dirty indicator of how they're going to bullshit themselves about whether or not you need a new server rack.

I don't think every issue naturally has two sides to it, but because politics is emotion-based and not reason-based, I don't think it matters. There should be as many scientists roughly in each party. It's a very interesting observation that there are not. I believe journalism is similarly skewed. So when story X comes in over the transom from NGO group advocating some cause, the reporter picks up the phone and consults with several experts. If the odds hold, everybody in that little scenario is a member of the same party, with the same prejudices towards how the story should be told.

Not a good thing.

I imagine -- without looking at any other comments on this thread -- that there will be a lot of "but the scientists are actually _scientifically_ choosing to be Dems, because it's not logical to do otherwise" or perhaps blaming the Rs for being so bad that no decent scientist would support them. This is a perfect example of what I'm talking about (and probably a good reason for the post to be considered of dubious merit for HN) It's a shame, because the larger issue causes all sorts of other problems.

<comment><USER12> Very well put! What keeps amazing me about US politics is that (as in other places) there is a small number, n, of top issues, e.g. gay marriage, abortion, off-shoring work, gun control. I think n~10. Assuming the simplistic approach that your stance on of these issues are binary valued, there are 2^n ~ 1000 different positions available. Since these are highly correlated, the real value is much lower than this, though. The thing is: we are trying to cram all those different stances into _two_ parties! Your vote is in essence binary valued.

Why should I be shoehorned? I am a gnostic, against excessive off-shoring, pro-choice, against gun banning and so on. It's a curious mix. Yet, I have to choose between two packages.

<comment><USER23> Comments like this sadden me.

There is a field called political science. There are lots of researchers in that field publishing in journals, attending conferences, writing books, etc. And they've actually come up with some interesting results. In particular: voters do not make voting decisions based primarily on issues. In fact, there's some evidence that the causation often goes the other way.

Any model that starts with the assumption that voters choose candidates based on issue matching starts with fail.

 _Why should I be shoehorned? I am a gnostic, against excessive off-shoring, pro-choice, against gun banning and so on. It's a curious mix. Yet, I have to choose between two packages._

Because the nature of political parties that can function in any society is heavily dependent on the institutional structure of the government. Again, this is a question that actual political scientists have researched and answered.

<comment><USER5> _voters do not make voting decisions based primarily on issues. In fact, there's some evidence that the causation often goes the other way._

Interesting, I'd like to read more about this. Can you point me to something (less than book-length) that would tell me more?

(I'm familiar with _The Myth of the Rational Voter_ thing, but it sounds like you're going even a step farther than that)

<comment><USER24> I can't find any direct links, but I'd suggest Robin Hanson's blog (overcomingbias.com). His hypothesis is that most political/voting activity is done primarily for the purposes of a sense of identity and signalling. He discusses this in a number of posts.

His basic thesis: I have no incentive to vote "correctly", since the odds of my vote affecting the result are nil. Therefore, it costs me almost nothing to vote D solely to show my friends what a caring intellectual I am, or to feel good about myself. My hypothesis is that this is the main reason scientists vote D (the caring/intellectual image).

</comment></comment></comment></comment></comment><comment><USER25> What does it mean to be a "scientist" in the US? Is it strictly a person in academia who is in the pursuit of research grants?

Does it also include private sector researchers and engineers?

<comment><USER4> Private sector scientists, yes. Private sector engineers, no.

Of course it's hard to draw a hard-and-fast line between the two, so let's just consider scientists as people who would say they're a scientist, and engineers people who would say that they're an engineer.

</comment></comment><comment><USER26> An interesting question is whether this has always been so. Anecdotally, scientists like Galton, Fisher, and Pearson were on the right (from today's perspective, the far right) in their work on the nature/nurture question.

What do historical polls look like? The R/D flip around 1965 will complicate tracking polls, but it'd be interesting to see the data if it exists...

</comment><comment><USER27> When you've got a party that's tied to a 6000-year-old earth and early man walking beside dinosaurs, how can anyone with a third grade or higher science education be excited to join?

The overwhelming sentiment among the Right in the United States is a perverse anti-intellectualism. Stupidity and lack of education have been enshrined as the height of authenticity. If you need proof, look at John McCain's running mate.

No one with a scientific mind can feel welcome among people who are tied to policies that consider common sense contraception as somehow morally reprehensible.</comment>


Summon – Get Your Secrets into Source Control - <AUTHOR> https://conjurinc.github.io/summon/ <comment><USER2> Lots of cool projects around secrets lately:

* Vault (by Hashicorp) [go] [https://hashicorp.com/blog/vault.html](https://hashicorp.com/blog/vault.html)

* Confidant (by Lyft) [Python] [https://eng.lyft.com/announcing-confidant-an-open-source-sec...](https://eng.lyft.com/announcing-confidant-an-open-source-secret-management-service-from-lyft-1e256fe628a3#.oc1x5ftls)

* Keywhiz (by Sqaure) [Java] [https://square.github.io/keywhiz/](https://square.github.io/keywhiz/)

<comment><USER3> We use Vault so that our Rails et al passwords can get written by Ansible scripts without any repo having all the keys to our kingdom in plain text. Ease of use decently high, particularly once you standardize on a way to communicate secrets to arbitrary systems. (Ours is "Assume you pervasively have access to secrets via environment variables. The sole source of truth for them is in the Ansible repo.")

Edit to add: it occurs to me, not for the first time, that I assumed Ansible Vault was Vault by Hashicorp simply because so much of our Devops stack is from Hashicorp.

<comment><USER4> More info/pointers pls. thx

</comment></comment></comment><comment><USER5> Is this a very roundabout way to do a wrapper shell script (the target audience being people who cannot write shell scripts)?

        $ cat > secrets && chmod 600 secrets
        export SECRET_1='Jerry is a mushroom'
        export SECRET_2='Jessica'\''s a chicken!'

        $ cat > wrapper && chmod +x wrapper
        #!/bin/sh
        set -e
        . ./secrets
        exec "$@"

        $ env -i ./wrapper env
        SECRET_1=Jerry is a mushroom
        SECRET_2=Jessica's a chicken!
        PWD=/home/rdancer

<comment><USER6> I do appreciate the simplicity (and effectiveness) of this wrapper, and I would definitely recommend this much simpler approach over a more robust tool in many situations.

I think the added value (and increased complexity) from tools like this is that allow you to store your secrets not only on the filesystem, but also in various (typically external) vaults. Some also provide more granular access control to only a subset of secrets, revocation and so on.

</comment></comment><comment><USER7> > ... reads a file in secrets.yml format and injects secrets as environment > variables into any process

Meaning that every child process will subsequently have access to the secrets?

<comment><USER8> Running

      ps auxwwe

on Linux, Mac OS X, and other Unix-en will show all processes for all users with their complete environment.

Environment variables should not be used to share secrets.

<comment><USER9> Testing on Linux, if ran as root it does, but if you are running ps auxwwe as normal user, it is only showing env variables for that user.

</comment></comment></comment><comment><USER10> ISTM secrets should mostly be generated where they're needed and should not leave that location. If two locations need to interact then use asymmetric keys so that the public key may be shared. Of course such a system must be bootstrapped, but suitable arrangements will make that a relatively rare manual process.

Of course exceptions might be made for any number of operational reasons but I think it helps to at least _aim_ for the right thing even if it isn't always possible. Secrets in VCS seems to be a shot in exactly the opposite direction.

<comment><USER11> Summon puts secrets metadata into source control; not actual secrets.

<comment><USER10> Haha it seems the motto should instead be "get _some pointers to_ your secrets into source control". This makes the tool much less vulnerable to the abuse I was envisioning, but also pushes it into "so what?" territory for me. I can already save pointers to secrets in my code; this is another layer of configuration for dubious benefit.

<comment><USER11> Summon also fetches the secrets out of the backend in a provider neutral way; it's well documented; and it ensures that secrets stay off persistent disks. So those are the reasons to use it. It's better for the world if there are a smaller number of doing the same things.</comment></comment></comment></comment>


Gruenberger's prime path (popular computing editor) - <AUTHOR> http://bit-player.org/2010/gruenbergers-prime-path <comment><AUTHOR> I still have a few issues of "Popular Computing". As TFA notes, often these magazines would have the motto _"The way to learn computing is to compute."_. Whenever I see Project Euler or others, I recall a few hours spent working through some amusingly constructed problems.</comment>


Net Neutrality Gets Boost from Feds - <AUTHOR> http://news.cnet.com/8301-1035_3-10278484-94.html

<comment><USER2> How do HN readers feel about net neutrality?

I generally oppose it -- why prevent google from making a deal to offer me free access in exchange for blocking bing ?

<comment><USER3> While you have a legitimate opinion, I would like to make the counter- argument:

Why allow an ISP to force one service or website to pay for "enhanced" access, while another service gets a free pass?

If you run a website, you are already paying for your bandwidth to _your_ ISP and the customer of the ISP on the other end is already paying for their bandwidth. By throttling websites until they pay for "enhanced" access to customers, the ISPs would be getting paid twice for the bandwidth.

The consumer ISPs could then charge exorbitant rates -- should they so choose -- to companies (such as Google and Microsoft) if they want their website(s) un-throttled. Meanwhile, the ISP could run their own "competing" service, pay nothing, and make a run at unfairly overtaking another service (for their group of customers) because the other service couldn't/wouldn't pay up.

Doesn't seem quite so fair to me.

Also: "Areas where less than 50 percent of households have no access to broadband will be considered underserved and eligible for grants."

Perhaps it's just me, but it seems there is an extra "no" in there?

<comment><USER2> Should ISPs be prohibited from making deals with companies like google to colocate CDN servers?

Why shouldn't ISPs be required to make all CDNs open and allow any company to host its assets there to create an even playing field for content? Why should google's pages load faster on someone's computer than my startup's?</comment></comment></comment>


How Catherine de Medici Made Perfumed Gloves Fashionable - <AUTHOR> http://www.atlasobscura.com/articles/how-catherine-de-medici-made-gloves-laced-with-poison-fashionable <comment><USER2> I think this is another longform article that does not do justice to the title. Yes there are interesting nuggets of information in there, but really all of that does not really lead to the "how". Tldr; Catherine brought perfumes and perfume laced gloves to france. She is rumored to have killed some one with a poison laced glove. It is not even clear if she actually ever even made a poison laced glove.

<comment><USER3> Yeah, the title should be something more like "How Catherine de Medici Probably Never Made Gloves Laced With Poison" because that's all the article is.

She certainly didn't make poison gloves a fashion trend as implied by the title.

</comment></comment><comment><USER4> Drinking the urine of pregnant animals for fertility isn't as crazy as it sounds. The drug premarin is made from the urine of pregnant mare and is sometimes prescribe to help with conception.

<comment><USER5> Similarly, some children with stunted growth seem to benefit from using insulin growth factor-1 (IGF-1)...with FDA approval ... For the layman, that's a supplement extracted from deer antler velvet...

</comment></comment><comment><USER6> That this ended up on the front page suggests a problem somewhere.

</comment><comment><USER7> How hard would it be to semi machine-generate such vacuous articles? Would it make sense for the ad value of eye balls? Maybe if such generation becomes common place a shift in value bringing back better curation and editorial lines in social/mass media will occur?

<comment><USER8> I'm pretty sure a large chunk of internet content is machine-generated.

Read Slate Star Codex for an entire community of generated content. Basically any drug and any side effect have an auto-generated article and related community.

I've seen hundreds of articles where the headline was just repeated over and over in different ways in every paragraph with random supporting text.

Do the math.

EDIT: Read Slate Star Codex for an account of such a community. Slate Star Codex itself is pretty obviously human-generated.

</comment></comment><comment><USER9> Goodness, what a resource hog of a site.

</comment><comment><USER10> I hate articles like this. The headline is deceptive and the article rambles all over the place before getting to the point at the very end. Catherine did not make "gloves laced with poison fashionable," she made perfumed gloves fashionable.

The embedded ad that autoplays when you mouse over it was also NOT appreciated.

<comment><USER11> This is why I come to the comments first. Thanks for saving me some time.

</comment></comment><comment><USER12> Title should have had a question mark, as the conclusion is "No."

Betteridge's law of headlines:

[https://en.m.wikipedia.org/wiki/Betteridge%27s_law_of_headli...](https://en.m.wikipedia.org/wiki/Betteridge%27s_law_of_headlines)

<comment><USER5> Most journalists and editors are now trained to end the title of an article with a question mark when results are inconclusive...

A good way to filter what you read...</comment></comment>


Advice on Remote Work - <AUTHOR> I am currently an embedded software engineer with around 7 years of experience in the aerospace industry, and between my main job and contract work, I earn between 150k and 200k per year.  In general, I enjoy my job and think very highly of my employer.  Like most people in this salary range, though, I am stuck living in a crowded, gridlocked, high cost of living area, where most of my money goes to taxes and an small, cruddy house.  With my skills and work history, I think I could easily land a job at a major tech company or hedge fund and earn in the 300s, but my situation wouldn't really improve because it would require moving to an even more expensive area and paying more taxes.  The older I get, the more I realize that the secret of success isn't just earning good money, it's doing so in a low cost of living area.  Therefore, I am wondering how likely it is to earn in the mid 100s doing full-time remote work in the embedded software field (specifically, real-time, high-reliability systems)?  Does anyone have any advice or personal experience developing a work-from-anywhere income stream in this field?  Is it easier to find a handful of customers to do contract work for or hope to find a 100% remote position?  My ultimate goal is to build a beautiful house on ~100 acres in a rural part of the country and work 100% from home and have passive streams of income.<p>thanks! <comment><USER2> > how likely it is to earn in the mid 100s doing full-time remote work in the > embedded software field

I maintain a list of remote friendly companies. Here are a list of companies that might be doing embedded stuff.

[https://remotebase.io/companies?technologies=C&technologies=...](https://remotebase.io/companies?technologies=C&technologies=Golang)

I don't have enough information to help you, but on the website there is a chat community for remote workers. Feel free to ask questions there.

</comment><comment><USER3> It seems to me remote jobs are mostly suited for positions that can be easily replaced so web development fits wonderfully.

For anything low level where the company needs you specifically to keep the project going I doubt there are widespread remote opportunities.

Since this seems to be a throwaway account could you maybe disclose how much money you get after tax and how much you pay in rent? I'm curious because I'm from Europe and at a crossroads. I started doing mostly C++ but now considering switching to web because of the remote opportunities.

It would be nice to know what to expect from a carrier in low level stuff even though the salaries sound very good (150-200k) it's more important to know what one can realistically save in a year with that salary.

<comment><AUTHOR> I live in California and pay an effective tax rate of around 35%. I'm single, but I max out my retirement savings (401k) contribution every month. I can save around $500 per month on top of that as well as 100% of any contracting income that I make, which averages a couple thousand after taxes. My rent is reasonable for CA ($2000/month) for a 40 year old, small house, but it has central heat and air, some remodeling, and a garage. I have a punishing commute, though, which averages door-to-door round trip time of 3 hours per day. Thankfully, my contract work is almost completely remote (would LOVE more work like this!) and I can telecommute two days per week at my full time job. Despite being able to save a good amount of money, actually affording to buy a house is out of the question. Something decent that is close to my work is around $1 million+ and houses with a long commute start at around $600k. I absolutely hate living in apartments and hate cities in general, so I would quit my job before living in a condo, but you could find an apartment here a bit cheaper. I hope that helps...

<comment><USER3> Thanks, appreciate the disclosure.

To be honest I don't know why you're in a hurry to buy a house. If I were in your position I would save and switch to some tech that's very good for remote if you don't find much contract work for your specialty. There are web developers that are making north of 100$/h while working remote, keep that in mind.

There's a lot of nice places in the world where a VERY nice house is 150-200k.

</comment></comment></comment><comment><USER4> That's why I like HN! I could have written the exact same post (I'm not in the embbeded field though.)

In your case and in order to be %100 remote, you would need to have access to a company intranet, access to the source code, be able to compile, deploy, run, etc. Can you easily do that in your space? If it's web, desktop or mobile all you need is an internet access. Just curious...

Also, there are places like Texas or Oregon where you can make 80-100k per year in a tech or related company. The cost is much lower outside of the main cities unlike SF/NYC where you need to drive 2h away to start getting into a 2-5 acre lot..

Outside of Austin TX for example, 1h away, you'll find huge lots for cheap. Contractors are super good and fast at building houses over there because they don't have to deal with stupid laws like "we" have in California for example. No state income tax in TX, Austin city is amazing (super crowded now though), then you get to be in the middle of noware at only 1h away from Austin. In the bay area 1h is the average commute to work. Same for Portland oregon, 1h away and you live like a king. No sales tax in OR.

The key is to find the right balance, being %100 isolated in the middle of nowhere isn't necessaraly healthy. I thought about it because I want land as well. But imagine being an hour away from a major city, living in a 15 acre property with a nice custom 5000 sqft house, a flexible state not far from a mini tech hub... sounds like a good alternative to your goal right? People don't realize how much work it involves to own a huge property. With 100 acres, it will become your fulltime (unpaid) job! 10-20 acres is enough for you to feel isolated.

Last but not least, the key here is to make sure you land a mortgage/construction loan while being at your current job. Lock it first because you will use your buying power and stable job situation to buy in a cheap place. Your current salary will help you qualify quickly and will help you initiate the process of getting/building a new house. Then look for a job in one of these places (cross your finger). Now you'll have the house, you'll have he job, you'll be able to quit-pack-and-go.</comment>


Docopt–language for description of command-line interfaces - <AUTHOR> http://docopt.org/ <comment><AUTHOR> The presenter does a great job making CLI applications with a few python packages. Pretty entertaining!</comment>


Bootplus -  Google styled front-end framework built on top of BootStrap - <AUTHOR> http://aozora.github.io/bootplus/index.html

<comment><AUTHOR> Now, only if had a bit sharper contract...</comment>