1,043 karma · joined February 1, 2017
I've gone off caffeine a couple of times, each for a period of about 1 year. If going "cold turkey" (which I did and don't necessarily recommend), I found it took about 2 weeks to return to baseline without headaches or other withdrawal symptoms. After this point it's mostly smooth sailing: I no longer felt I needed caffeine to wake up in the morning and didn't have any cravings.
On average, my sleep quality was quite a bit better. It was usually easier to fall asleep at night and wake up feeling rested. Overuse of caffeine can make it hard to feel tired at the end of the day, which can cause a vicious cycle of insufficient sleep leading to more caffeine use, etc.
On the flip side, during my periods of abstinence I found I would eventually start to miss it. A good caffeine buzz is one of my favorite small pleasures in life; I've had many of my best and most creative productive periods assisted by it. In addition, I also just really love the taste of good coffee and the ritual of preparing it in the morning. While the latter can be satisfied by substituting decaf, personally for me there just isn't any replacement for that feeling of being "in the zone" on caffeine where it feels like all my neurons are firing and forming connections rapidly, and the ideas and creative output just flow effortlessly.
As an aside, I do suffer from minor persistent depression, which is possibly one reason why I find caffeine helps to give me an extra boost to feel like a normal functioning person :)
To date I've found that totally abstaining from caffeine isn't the best fit for me, but I've learned over time to use it more moderately. Some of the measures I currently take that seem to keep me in a healthy balance:
- Maximum of 2 cups of coffee per day
- Practice being more mindful of caffeine consumption: I have one cup every morning around 8am, but instead of mindlessly chugging it throughout the day I will check in with myself before having another. If around 10-11am I feel like I really need a second cup, I have it. If I don't, I drink green tea or seltzer water instead.
- No coffee after ~2pm. If I feel groggy or tired after 2pm I'll try drinking a low-caffeine or decaf tea instead, or going for a walk. 9/10 times just the act of drinking something hot will be enough to perk me up. This is probably the most helpful change I've made, as avoiding caffeine later in the day ensures I can sleep properly at night
If you want to be evaluated in a more holistic manner (including side projects) you'll probably have better luck with very small companies. When the people in charge will actually be the ones working with you every day, and they are only filling a small number of positions, they will be more likely to find it worthwhile to get to know you as a whole person during the hiring process.
Unfortunately, once a company is beyond a certain size this just isn't possible because it doesn't scale. They have to fill hundreds or thousands of positions and also maintain a universal set of hiring standards. Things degrade into a game of numbers. This makes cookie-cutter tests almost inevitable.
While frustrating in their own right, for me what makes things worse is that you have to do one of these screens for every single company you apply to. And most companies have the same evaluation goals for the phone screen stage (e.g., do you actually understand data structures & algorithms).
What I'd really like to see is the emergence of something like a "common app" for software hiring. Outsource technical screening to a reputable third-party, and once you've proven yourself by obtaining a good enough "score" you can move immediately to on-sites (what constitutes a "good" score would vary by company). This doesn't solve the problem of the efficacy of technical screens, but it at least cuts down on all the redundant effort.
Two services I've tried so far that are doing something like this are Interviewing.io and A-List. Unfortunately it seems these services merely make it easier to get a phone screen, rather than replacing them. But it seems like a step in the right direction.
That was me. I grew up believing I hated math. Struggled all the way through middle & high school to AP calc and just found it incredibly boring and tedious. Ended up opting out of doing engineering/science in undergrad because I just couldn't stand doing all the math.
Long story short, years later ended up going back to school for CS and took discrete math as one of my first courses, and remember being blown away by how cool it was. All this time thinking I hated math!
Hard to say exactly what the difference is. Partially I think my brain just groks discrete concepts more easily.
But also the class had a heavy emphasis on proofs, which I think was really important. At a certain level this type of problem-solving can start to resemble philosophy. Chugging through a proof, figuring out just the right way to construct it and slapping a triumphant "Q.E.D." at the end is an empowering experience, especially the first time. There's a world of difference between "you throw a ball, solve for its velocity at time x" and "prove that there must be a ball" (I'm embellishing of course). It's a difference between obtaining an answer for a specific instance of a situation, and shedding light on some fundamental/universal property of the world. To me that feels profound in a sense, which makes it exciting.
Proofs don't belong solely to the domain of discrete math, of course, so this probably isn't as much a testament to the subject as it is to the general problem-solving approach. It would be nice if students could get exposed to this a bit earlier, I think there are many folks like myself who would realize that they can love math too.
This. But as with many things, I think it's a balance between the two extremes. As the author argues, an obsessive never-ending pursuit for perfection can be unhealthy. But never striving for anything doesn't make for a very interesting or fulfilling life either. We are both "perfect the way we are" in one sense, and also completely imperfect with much room to grow.
To me the optimal path seems to be at an elusive balance between being content with what you have right now, and yet always striving to become better: the difficulty is that this is kind of a contradiction. No one wants to get to the end of their life and feel like they spent all their time looking ahead and never appreciating the present. But I've also found from experience that resting on my laurels and abstaining from continual self-improvement has also not led me to happiness and satisfaction. Quite the opposite, really.
Just the process of pursuing excellence is in itself a valuable thing that seems to give most people a huge sense of purpose and fulfillment. The question I think is at what point does this become obsessive/unhealthy, or detract too much from enjoying one's live in the present moment.
https://news.ycombinator.com/item?id=14538984
https://www.coursera.org/learn/cryptocurrency
I took this last year and found it very informative
What was your major, and what type of job/position did you take post-undergraduate?
Depends on the major. Accounting is a pretty legitimate degree with high-ish earning potential. Finance can be semi-legit, but most Wall Street jobs will just as easily take people with math or engineering degrees, often preferring them, and those degrees are way more versatile. Most others will not increase your career options. I made this mistake sadly.
But my real question is: How on earth did you manage to resist selling your holdings for such a long time after you crossed the $1MM mark? That's some superhuman level of self control.
> How much of what software engineers now do is still devoted to the accidental, as opposed to the essential?
Far, far too much
On the other hand, it's hard to ignore the fact that typically these people have already profited enormously from these companies and they will never have to face any sort of real ramifications or consequences for the net harm that may ultimately be brought to society.
It's one thing to be sorry, it's another to avoid being complicit in such ventures to begin with. But that's the thing... where is the incentive to "do no harm" in Silicon Valley? There isn't any.
It's an interesting thought experiment to imagine what the world might look like if people were held accountable indefinitely for the externalities caused by the work they conduct.
Not saying this is practical or even desirable, but clearly it would change people's priorities quite a bit. As a software dev there's very little keeping you from accepting a fat job offer from Facebook unless you happen to have a particularly strong & discerning conscious/moral code. I'd like to believe that I'd turn it down... but I'm not so sure. No wonder the world's brightest minds are working at companies like this.
> Not all of us, mind you. Some folks perceive their contextual status with relative accuracy: they’re better than the rest of us at figuring out how much control they really have over local events, for example. They’re better at assessing their own performance at assigned tasks. Most of us tend to take credit for the good things that happen to us, while blaming something else for the bad. But some folks, faced with the same scenarios, apportion blame and credit without that self-serving bias.
> We call these people “clinically depressed”.
Basically, one of the central conclusions is that many of the metrics by which knowledge workers are evaluated are really less about measuring actual technical competence or domain knowledge and much more about detecting the propensity for conformity and obedience.
Maybe that's not too surprising for some, but what's even more interesting is that this can often be the case without the evaluators/managers/people in power even being aware of it. In many cases they genuinely believe they are evaluating for domain mastery / technical skill, but are fooled by the hidden signal that correlates to what they see as "desirable" outcomes.
But on the other hand... boy am I glad I switched from web dev to primarily back-end work. Building and maintaining complex software that works reliably in one environment is enough of a challenge as it is... without all the extra variables of an ever-changing landscape of browsers and devices, with varying levels of feature support, all of which you have zero control over.
IMO being a front-end dev is borderline masochistic :)
This speaks volumes, far beyond just the healthcare system too.
This. At this point anyone with half a brain knows that there is heavy speculation going on and there is a bubble happening. That doesn't automatically mean you're dumb to be investing, or that those who are still investing surely haven't lived through a speculative market bubble before, as the author suggests.
The only real problem is that many people do not understand the risks inherent to speculation and overexpose themselves to losing money they can't afford to lose. Once you buy into the lie that "the price can only ever keep going up", you're setting yourself up for a rude awakening. But if you properly understand the risks and don't overexpose yourself, you can still invest intelligently.
How about sticking with standard phone-screen/on-site process, but emphasizing writing real code, on a computer, solving realistic software engineering problems? I've interviewed at several companies (including one of the "big four") that took this approach and found it was the best overall balance IMO. You get evaluated in a more realistic setting than a whiteboarding interview, but takes the same amount of time an also doesn't depend on "side-projects" or "take-home" assignments.
Some general examples from my own experience:
- Here's a poorly-written / buggy program: Find the bugs and do some refactoring
- Here's a loose spec for a small program: Spend an hour designing & coding it up (on your own, no one looking over your shoulder the whole time), and then walk through it with the interviewer AFTERWARD and explain your design / answer their questions about it.