These things come with experience over time, but the fact that you've made it far enough to ask the right questions in the right place to ask them is 90% of the journey.
I realize this sounds cliche, but I can't stress enough that health comes first. I would make the following a priority if you feel you're not taking as good care of yourself as you should:
Eat reasonably healthy (just avoiding junk food is enough, no need to go overboard)
Get enough sleep (and eliminate whatever habits get in the way of that) - Without enough sleep, your mind will in subtle ways try to put the least amount of effort toward doing things. This is especially dangerous if you are trying to counteract those effects with things like caffeine or stronger stimulants.
Don't do anything stupid to harm your body. Contrary to popular belief, you are not a Zerg mutant with infinite bodily regeneration capabilities. It will catch up to you sooner than you think it will.
It's quite hard to improve one's mental habits when not in the best shape (but if you fucked up early on like I did, it's never too late to make things better).
Assuming you're already doing all that, I'll speak specifically to your post:
1. Don't burn yourself out, especially for a job you don't enjoy.
Not a mental model per se, but more of a disclaimer that I highly advise against pursuing such efforts unless you feel the company is a good fit for you. I've personally found that being successful at a company depends as much on the company as it does you. All the talk about culture fit applies here (though I personally hate the terminology). Sometimes you can adapt to environments that are challenging, but sometimes that can be a case of learning bad and toxic habits. And sometimes, no matter how much better you think you perform, it won't improve your job security. So you have to first understand whether you're really happy in that environment. Don't burn yourself out to try to get ahead of the technical debt curve just to try to earn some job security in an environment that you don't feel at home with in the first place.
2. Document what you're going to do, and why, before you start doing it.
This doesn't mean you can't amend the plan when you see a reason to, but your technical changes should be driven by your written plan, and nothing else. If you don't do this, the complexities of the technical systems you're touching will bleed into the mental model you've set for yourself with what you're trying to build. You'll exert subconscious effort to try to maintain some grounding, but inevitably you'll slip at some point and end up doing too much or too little changes. Then you may exert significantly more effort trying to explain to your peers or boss why you spent extra time building something that has no apparent need, especially these days with the plague that is Scrum (fragile, not agile).
You don't necessarily have to do this for all of your work, but deviating from this procedure should be the exception and not the rule.
3. Avoid band-aid workarounds
Always fix the root cause! Always! Okay, there are times when this is not possible. Sometimes, the root cause is part of a piece of legacy software that can't be modified easily or at all. Sometimes the problem is with a closed-source library, an API, or data feed from external partners. It's okay to do workarounds in those cases, but you should be extra vigilant for the pros and cons of doing it. Make sure the business, not just your Scrum Lord, is getting a real benefit from seeing it done. In any case, when doing a workaround, it's wise to include detailed documentation in the appropriate places as to why that workaround exists, or it will contribute to the pain, suffering, and burnout of future members of your team. While this can happen to companies of any stage or size, the real danger zone here IMO lies with companies in the Series B range, as hacky throwaway code could be done with no consequence before then, and is even somehow encouraged by some as a best practice for early stage companies.
The other major exception to this is emergencies, involving downtime, prevention of downtime, or other significant operational incidents. However, meeting the deadline for your Scrum sprint is not an emergency. If your boss can't be convinced to understand this, your choices are to do a better job of convincing, invite them to convince you otherwise (they may succeed!), or to find another place to work. If something is time-critical for business reasons, it's your product manager's job to inform you of that.
If your job feels threatened even slightly by the concept of missing sprints, then you must make it a priority to resolve that, because even the presence of that feeling is itself a good reason for the job to be at stake, as it's indicative of critical communication problems with your immediate team. And it most likely isn't your fault but rather just a failure of the team as a whole (though you have the most power to do something about it regardless of the root cause). It is a growing pain that can be solved, as long as you're not working with assholes.
There is one time where this no-bandaid rule must be broken when you are short on time, but you should work to avoid having ever happen in the first place. If the business you work for (via CEO, PM, whoever) is mandating a hard deadline for a given feature, then you probably should err on the side of getting it done ASAP. If you are in this situation, don't panic. See if you can work it out with your team to spend time after the release to ensure that technical debt is manageable and things are working reasonably smoothly after some code polish. You can prevent some of these scenarios in the future by having a maintainable codebase, and you get a maintainable codebase by reducing technical debt, and you minimize technical debt by not implementing band-aid solutions to appease Scrum Lords. To put it simply: Business deadlines are real, but Scrum deadlines can amount to a hoax. Refer to this article to see Scrum actually addressing this problem: https://www.scrum.org/resources/commitment-vs-forecast
Another thread/post regarding technical debt: https://news.ycombinator.com/item?id=19850629
4. Maintain Good Relations and Build Influence
Building influence will make it easier to succeed in virtually all tasks, big or small. I can't recommend quick wisdom on this one, but could point you to a few good books (or audiobooks if you prefer). Takes years to learn this. I personally prefer to allow time to digest and sleep on the knowledge gained from books, though others (notably Bill Gates) swear by the method of binge reading.
I decided to spend a good chunk of time writing this as I start a new job which I really hope to be successful at, and I want to reinforce and review what I think will lead toward that goal. But I hope this is found to be useful to others too.
It's not about sales it's about how people think, act, and make decisions. I would bet that most any book on sales will invariably touch on at least some of the topics covered in this book.
It's a fun read and I promise you will start to see these patterns being used in everyday life in verbal and non-verbal communication.
* Robert Cialdini's "Influence: The Psychology of Persuasion
* Jeff Cannon's "Leadership Lessons of the Navy Seals"
* Dale Carnegie's "How to Win Friends and Influence People"
Attend Public Speaking workshops. If there's a ToastMasters club in your area, join it. Improv can be another great way to learn how to get "less rigid" and more open with your communication style.
Humans are predictably irrational, there are mountains of scientific evidence on the topic [0, 1].
The industry plays us like fiddles to get us to consume ever more. There are more parameters than the ones I described above (socialization and long term hormonal effects come to mind), but the growth of the food industry is the main driver behind the obesity epidemics.
All that food has to be bought, otherwise there's no growth, and investors are not happy and they put their money elsewhere.
The easiest way to convince people to buy food is to make them want to eat it. Modern food has been engineered and optimized to be deceptive and take advantage of our instinctive and cognitive biases, in order to get us to eat more than we need to be healthy.
That really made me aware of all the things people do to try to influence other people. I probably read that book 15 years ago, but I still recognize sales tactics based on principles in that book. It helped me to be more aware of attempts at manipulation when people are trying to sell things. It had a big effect on what I noticed going on in the world.
It's really more about human psychology and how people attempt to influence each other than it is a book about selling.
Overcoming the Five Dysfunctions of a Team
The Wal-Mart Triumph: Inside the World’s #1 Company
The Lords of Strategy
Influence: The Psychology of Persuasion
 The Four Obsessions of an Extraordinary Executive
The Deming Management Method
The Wisdom of Teams
On Managing Yourself
The Art of Facilitation
Death by Meeting
Good Business: Leadership, Flow, and the Making of Meaning
Makers and Takers: The Rise of Finance and the Fall of American Business
He gave a talk covering the same subject matter too, which is faster to grok if that's your kind of thing.
After reading/watching this stuff, these kind of scams become incredibly transparent. And it's fairly ugh to see fellow humans subsequently get sucked in by them.
I suggest folks read some good books on conversations and negotiations.
Bargaining For Advantage:
Getting To Yes:
Getting Past No (billed as a negotiations book, but really more of a conversations book):
I strongly recommend reading Influence before you read these - much of what is in the books above will make more sense once you've read Influence.
When you read these, keep in mind: Change is hard. Don't expect to read these and become good communicators quickly. It may take a few years of stumbling and practice.
I see a mixture of comments agreeing and disagreeing with the original submission. For those who disagree: Most of what the author is saying is in agreement with what the books say:
If your goal is to change someone, you will either fail, or will succeed at the cost of the relationship (and relationships at work do matter).
Another important related point: If you cannot summarize why the other person is acting this way without using phrases like "stubborn", "irrational" or similar negatives, then it means you have no idea about the other person's concerns and motives, and are being lazy. It is easier to label, and much harder to probe effectively. Additionally, people often act stubborn because they realize you are not really interested in their perspective. Internally their thought process (which is very rational) is "This person does not really want to hear me out, so I'm not going to invoke too many neurons engaging with him and will just dig in my heels." - which is why a lot of books focus a lot on listening skills (which includes skills to signal that you are listening - you may in reality be listening just fine but the other person does not know it - so you signal it by summarizing their stance).
A lot of the comments here are invoking false dichotomies. Since HN has a comment limit, I'll address some here:
>I don't believe you can have a successful software team with individuals who can't take a code review well.
This is tangential. You can give feedback in a code review poorly, or efficiently. Both ways allow for you to point out problems with the other's code. One way will not be taken well. The other way has a higher chance of being taken well. A big step forward is to realize you can have your cake and eat it too.
>I started to try and reason with people with carefully crafted questions to guide them towards my goal.
Leading questions is a bad idea (all the communications books say it). Learn how to state your concerns. It is OK to ask questions if genuinely curious. But if you want to point something out, learn how to state it in a non-defensive manner.
(3 separate comments below):
>If Kara's emotions and defensiveness can't handle a clearly articulated, rational, objective argument against design decisions, then for the sake of the product and the company, she probably needs to find another job. Avoiding discussions doesn't work for me.
>Learned to let go and he has his parts of the code base and I have mine.
>And this is how you end up with a terrible, in-cohesive product.
Again, false dichotomies. The solution is not to be quiet and let it go. The solution is to learn how to talk about the issues effectively. One of the books calls this "The Fool's Choice" - thinking that either you have to be quiet and not air your concerns (to save relationships), or that you have to air them and damage the relationship.
>It's either you convince them, or perhaps they convince you. Logic wins.
Logic alone rarely wins. One key point in one of the books: Don't pretend that emotions should not be part of the decision making process. The reality is that emotions are already part of the decision making process. If you get angry that someone cannot take your feedback well, emotions are present.
>It's safe to assume Kara wrote this article.
It is safe to assume that the author of this comment is unwilling to question his views on the topic.
That's what assumptions get you.
>I have seen more technical damage done by nice and competent people deferring to bullies in the workplace than by legitimate disagreements expressed passionately.
Another false dichotomy. What the submission describes is normal among non-bullies.
>The flaw here is that you assume that "Kara" will learn from her mistakes. Not always the case.
It is a similar flaw to assume that merely telling her what mistakes she made will make her learn from them. Definitely often not the case.
That's what the law says, and maybe what you believe but there is a lot of scientific evidence to the contrary.
See https://en.wikipedia.org/wiki/Predictably_Irrational and https://www.amazon.com/Influence-Psychology-Persuasion-Rober... for an oversight of (some of) the ways you can be manipulated.
How do you explain cults? How do you explain the effects of advertising? How do you explain the uniform levels of discipline achieved by basic training? How do you explain phone scammers? How do you explain the success of the public relations industry? How do you explain Bernie Madoff? How do you explain cigarette smokers? How do you explain the effects of what we refer to as echo chambers? Everyone of these consists of people being programmed or brainwashed in one way or another.
You hear the word brainwashing and immediately think of someone thats hypnotized, or a zombie, the typical hollywood trope. But its a far more common thing.
If you're interested in reading about this, there is a book by a psychologist named Robert Cialdini, called Influence, the Psychology of Persuasion.
One interesting persuasion trick is to start with extreme opening bids in negotiation, and then back off to what you really want. This is how the actors of Watergate were able to convince others to go along with the plan to break in to the Watergate. The original plan was far more involved, with a $1,000,000 budget, and included kidnappings. G Gordon Liddy used this as an extreme opening bid, and eventually convinced everyone that what eventually took place was a reasonable compromise. After, its not like they kidnapped anyone, and they only needed $250,000.
- Nassim N. Taleb: Black Swan and Antifragile
- Robert Cialdini: Influence: The Psychology of Persuasion
- Franklin Foer: World Without Mind: The Existential Threat of Big Tech
- Herbert Marcuse: One-Dimensional Man: Studies in the Ideology of Advanced Industrial Society
If someone is rude to someone who's mistaken that could help them unlearn something, but more likely they will become more entrenched because of consistency principle.
Cialdini talks a lot about consistency principle in his book the "Influence: The Psychology of Persuasion"
This is as old as humanity, and has always been the case for the majority. See the chapter "Social Proof" in the book "Influence":
I mean, I solved more complex technical problems in my undergrad than I've ever had to in my career.
My suggestion: While you may want to master a technical skill or two, become good at what they don't teach you:
The Coursera course from the University of Michigan is decent, if you don't want to read. But the other course (from Yale?) - I would not recommend that as a starter.
(His work is often cited in other books - especially related to negotiations).
Finally, a word of advice. Most of us here on HN have no trouble reading stuff and grasping its content. Internalizing it, though, will take work. So don't run away reading all these books. Pick one topic (e.g. negotiation), and read up on it. Take notes (I forget 80% of what I've read after a few months). And try to practice it.
Life is a marathon, not a sprint. Just focus on one till you feel you are good at it (perhaps for a year). Then pick another topic.
I know there are some techniques I use from the book that helped me significantly.
Influence: the psychology of persuasion, by Robert Cialdini
The Red Queen: Sex and the Evolution of Human Nature
One I HAVE read, and I strongly recommend is How To Win Friends and Influence People by Dale Carnegie
Also, I've read many people mention a lot about Neuro-Linguistic Programming. I'm usually skeptical of this stuff, but I want to read about it.
I did read "The Game" by Neil Strauss... while it is not something I want to do, it is really intriguing, and he advocates NLP a lot in that book.
And while I'm nerdish/socially awkward, I have a long-term relationship with my girlfriend so I don't "need" to go picking up girls :) .
I look forward to the original poster's list :)
As she left for a short vacation, she left a note for one of her employees to drop the price to half of what it already was, and at least try to make a little bit of money back. But the employee misread the note and accidentally doubled the price of the turquoise. By the time the store owner got back, the rocks had sold out, at DOUBLE the price.
The store owner contacted the author of the book, a psychologist (I forget why) and he explained the reasoned this may have happened. Most of her customers were affluent and wealthy tourists who had been under the subconscious impression that you get what you pay for. When they saw high-priced stones, they knew that they were getting quality stones, at least that's what they had been led to believe through years of dealings.
This is why this guy's experiment will work and is a great idea. He is probably no more skilled than many of the hackers on here, but he stands out with his exorbitant price tag and some companies figure, 'hey, you get what you pay for.' This is especially true in the business world. So regardless of the fact he may not be worth it, or may not possess superior abilities, if he is getting the money which I hypothesize he will, more power to him.
Do keep in mind that PR is something different than marketing or advertisement. Those people running around, dropping names and 'generating spin'? That's just a very tiny part of PR. PR is about shaping the public opinion, not just one person's mind.
On a side note, I wrote my thesis on wartime propaganda. I found out that the strongest motivator for people to take action is fear. The fear of losing something, missing out, or a common enemy (think Apple-Android!) is very powerful.
On a second side note, I read another comment about lying. Lying isn't right of course, but there are several degrees of lying. And imagine if know how to sell a lie, how easy it would be to sell righteous truth...
Drop me a line if you need some help or advice. I'm by no means an expert on PR in Silicon Valley, but I know a thing or two about PR.
- Simple Heuristics That Make Use Smart by Gigerenzer, et al. (http://www.amazon.com/Simple-Heuristics-That-Make-Smart/dp/0...). I have heard good things about this book but have not read it yet.
- Think Twice by Mauboussin (http://www.amazon.com/Think-Twice-Harnessing-Power-Counterin...)
- Influence by Cialdini (http://www.amazon.com/Influence-Psychology-Persuasion-Busine...)
- You already mentioned Michalko, but his other book, Thinkertoys, is also very good (http://www.amazon.com/Thinkertoys-Handbook-Creative-Thinking...)
- Switch by the Heath brothers is excellent (http://www.amazon.com/Switch-Change-Things-When-Hard/dp/0385...)
The 22 Immutable Laws of Marketing - Violate Them at Your Own Risk!
Don't Make Me Think: A Common Sense Approach to We Usability, by Steve Krug:
Information Architecture for the World Wide Web: Designing Large Scale Web Sites, by Paul Rosenfeld and Peter Morville:
Why We Buy: The Science of Shopping, by Paco Underhill
And at least one Jakob Nielsen Usability book.
It's a fascinating examination of persuasion. It covers selling, business, cults, authority - a great and practical intro to some of the research and results in the field.
I've read it and even bought a second copy to lend out. It's that good.
The Definitive Book of Body Language
+1 to How to Win Friends & Influence People
For longer term and more general help with persuasion tactics (which might be used to get you to agree to a lower offer), I recommend Influence: The Psychology of Persuasion by Robert Cialdini: http://www.amazon.com/Influence-Psychology-Persuasion-Busine...
You will easily recover the cost of these two books using the knowledge from them.
With non-technical books (literature, history, quality-of-life), most of the time will be invested into actual reading, with a bit of pondering and maybe discussing. We can have a conversation right away, and there's still knowledge and insight to be gained.
Here are some non-technical books I'd like to read:
* How to Read a Book - http://amazon.com/dp/0671212095
* Influence: The Psychology of Persuasion - http://amazon.com/dp/006124189X
* Liar's Poker - http://amazon.com/dp/0140143459
* Growing a Business - http://amazon.com/dp/0671671642
Influence: The Psychology of Persuasion by Robert Cialdini:
It's marketed as a business / marketing book, but it is probably on the book shelf of every one of the magicians / mentalists that this article refers to.
Get dozens of book recommendations delivered straight to your inbox every Thursday.