General-Purpose Questions Thread

by Sable1 min read19th Jun 201630 comments

7

Personal Blog

Similar to the Crazy Ideas Thread and Diaspora Roundup Thread, I thought I'd try making a General-Purpose Questions Thread.

 

The purpose is to provide a forum for asking questions to the community (appealing to the wisdom of this particular crowd) in things that don't really merit their own thread.

30 comments, sorted by Highlighting new comments since Today at 8:51 AM
New Comment

I know that negative prescription drug interactions are a big deal. Should I be worried about negative interactions among legal supplements I take like Coq10, Vit D, glucosamine, curcumin, desiccated liver, Bacopa Monnieri, or NAC?

One thing I do sometimes is search for the name of 2 different supplements on Amazon and see if I can find a commercial stack where they appear together, then check for 1 star reviews of the stack that describe a negative interaction. (This works best for stacking supplements that have similar purposes, e.g. if you're taking 2 sleep aid supplements at once, it's plausible that they both appear in a commercial stack that someone put together.)

There are software programs that have databases of drug and supplement interactions. Also, pharmacists tend to know more about these things than doctors. So, you could find a database and search it, and/or ask a pharmacist. There isn't as much information available on supplements as there is about drugs, so it's hard to answer the question with a lot of certainty.

I don't know about "worried", but it would be a good idea to be aware of interactions between things you're taking (and eating). Some are synergetic, some are antagonists.

[-][anonymous]5y 4

Who's advice have you found most valuable?

I don't know if this is what you meant, but here goes:

This is less a single piece of advice from someone than an attitude I've tried to adopt from places like LessWrong and CollegeInfoGeek.

  • Everything in your life is optimizable.
  • Doing better is less a matter of changing yourself than it is of implementing systems to help yourself overcome your failings.

Advice from people that are not exactly friendly toward me. People who openly speak their mind how they perceive me. Even if it hurts I learned the most of their advice (or criticism).

My 11-year-old son has been learning Ruby on Codecademy. Is there an easy way to learn how to programming with graphics on Ruby?

If by graphics, you mean graphical user interfaces, then shoes is a pretty easy way to get started. If by graphics, you mean drawing shapes and designing your own games, Gosu might be a good fit. Here is a book for learning programming by creating games with Ruby and Gosu.

Thanks, I just ordered the book you suggested.

I'll go first. I'm' in the process of applying for jobs in software. Furthermore, it'll be my first job out of college.

Any advice? What will I, five/ten years from now, wish that I had known now?

Should I take a job in a topic that I don't see myself in long-term?

You should certainly get good at wage negotiations. For about 5-10 minutes of what some people feel is the most uncomfortable conversation of their industry you can increase your earnings by $5-20k or more. As well as bonuses etc. out of a good negotiation.

Sometimes the 5 minutes of negotiation have greater impact on your earnings than the following 5 years of hard work.

Top boring advice: live close to work.

I have been believing this for a very long time. I recently went looking for the source of this advice, I couldn't find any - do you have any idea where the source is?

(reason: I have gotten anecdata about how people take advantage of public transport and then shifted to live closer to work and lost their "daily reading hour". AKA this advice had a negative impact on them. Some of the papers I started reading specifically mention bad health, and being overweight leading to other health problems but the happiness discrepancies usually disappear once you correct for health. Another point mentioned was lower back pain while driving and sitting in traffic. which - for someone who rides a bicycle to work, isn't the same problem. I would be keen to update this advice to something more accurate and more specific than "live close to work".)

I believe a number of happiness studies have found commute time negatively associated with happiness, but I don't have any references on hand, and if the ones you're seeing don't have that I'm surprised.

Papers:
http://www.tandfonline.com/doi/abs/10.1080/16078055.2014.903723 http://www.ajpmonline.org/article/S0749-3797(12)00167-5/abstract http://bmcpublichealth.biomedcentral.com/articles/10.1186/1471-2458-11-834 http://www.ajpmonline.org/article/S0749-3797(07)00745-3/abstract http://www.gallup.com/poll/142142/wellbeing-lower-among-workers-long-commutes.aspx

http://www.ncbi.nlm.nih.gov/pmc/articles/PMC3560964/ but these were not clear about what about longer commutes is a problem other than potential health problems.

As above:

I would be keen to update this advice to something more accurate and more specific than "live close to work".

(urgh comment formatting is annoying and those characters don't let me escape them)

Indeed there are not studies linked to in the repository post.

Independend of that I'd read the advice more as the avoidance of useless time. Useless in the really useless sense of time where you can't read, think, talk or anything because you are busy looking for the next connection, switch trains, hurrying along and such. "daily reading hour" sounds like quite productive use of time but is only possible if there are longer stretches of uninterrupted commute.

If you dig down 3 links you find the Commuter's Paradox. I found this paper to use very reasonable controls and explain itself well. Sadly, it doesn't address your question about different modes of transportation.

Good question. I am not sure where I originally found the idea that shorter commutes make you happier, but I suspect it might have been an earlier version of this from 80000hours, which cites a couple of studies. Googling for pre-2013 media articles shows a lot of mentions of the idea as well.

The idea about a well optimized train or bus ride that Dr_Manhattan brought up also makes sense, if you live in an area with decent public transportation. It's the car drives that are a big time-killer, since you can't really turn your brain off while navigating through traffic, and traffic is usually more stressful at times you need to get to work.

There are a few productive things you can do during long drives though. For example, you can practice speeches, elevator pitches, songs, comedy bits, and so on without anyone hearing. That may not be quite as effective as interacting with another person on a bus/train, but the lack of an audience/consequences can make it easier to try out new things. Also, there's the option of consuming audio content (which you could also do with headphones on the bus or train).

It seems like the advice would be better adapted to:

Don't have a long driving commute to work.

With a second line:

Where possible, walk, ride a bike or catch public transport where you can do something on the journey.

Should I take a job in a topic that I don't see myself in long-term?

No. Go directly towards the field you want to be in, even if it means taking less money. Life is short and careers are even shorter.

Very hard to generalize. Depending on your abilities, your credentials (what school, what impressive outside projects), and your priorities (give your life to make a small improvement to huge products vs build new interesting stuff vs make enough to live on with time to enjoy hobbies vs. many other dimensions), you should either:

  • not worry too much about it - interview at 3-5 places and take the one that sounds like you'll have most fun or learn the most.
  • aggressively pursue your passion. If you're into gaming, prove yourself to one of the studios (possibly by working elsewhere and building a portfolio). If you're into deep learning, all the big tech companies and a number of startups are good choices. Same for almost any other topic.
  • Follow the money. Move to a big city and find the places with good stock plans. Live as cheap as possible and you can likely save 50% or more of your income.

The vast majority of software engineers change jobs every 3-5 years. At larger companies, that can be an internal transfer, but if money is an object, you're likely to get raises/promotions faster if you change companies. This means that your first few companies don't determine your life, and you shouldn't overindex on making the perfect choice. However, it also means that you're going to be continuously making this choice and asking these questions, rather than asking it here once and being done.

Max out your 401k contributions and get disability insurance through work.

Try 80,000 Hours' guide, especially here.

The city you live in may have more impact on you than which particular company you start at.

Banks and consulting companies may pay you more than a company focused on a software product, but the work is generally unsatisfying for software developers. Avoid those, unless high pay is more important to you than happiness. Though if you are choosing between them, banks are better than consulting companies. If you can find a company that has some understanding of how to treat software developers well so that they can do good work, and that makes money by research and developing their software, rather than by something else (eg. mergers and acquisitions to acquire customers) then you'll likely be happier.

As to topic it depends what you mean by topic. If you mean is it ok to make software that you're not particularly interested in using yourself, then I'd say the answer is yes. If you mean, you don't enjoy using the languages and technologies involved in the job, then I'd say the answer is no. For example, if you want to make software for chicken farmers, even though you may not be making software for chicken farmers the rest of your life, using the software language that you like working with, in a company that treats you well, I think that's ok. The next company you work for may not care how much you know about chicken farming, but may care that you have 3 years of experience using C++ (or whatever language.)

Getting involved in an open source project, or doing side projects, is another way to build up your reputation.

Before taking a job at a company talk to some people who have worked there. If you have connections on Linked In, for example, use them to find someone to talk to. Get a sense of what they like about working there. It's harder to ask about what they don't like, since people have to be careful how they answer such questions, although some will be forthcoming.

There are various ethical issues involved in creating software. It is good to be aware of them, and to think about them when considering whether to take a job. Many people around you will not think about them, so it's up to you to think it through and bring your ethics to your work.

Creating complex software is mostly about people. It's probably more important to like the people you are working with than to like the project you are working on, though that matters too. There are some work environments that can be toxic...avoid those and/or work to make them less toxic.

In fact, you may want to treat the job search as looking for a person to work with, more than looking for a particular company or task.

Regarding negotiating for a salary, these blog posts made me think.

Patrick McKenzie, a person who runs a software company in Japan, has written about salary negotiations in this blog post. http://www.kalzumeus.com/2012/01/23/salary-negotiation/

Mark Suster who has been both an entrepreneur and a venture capitalist, has written several posts abount negotiation. There's a list of them here. http://www.bothsidesofthetable.com/negotiations/

The one that stuck in my mind the most was the post titled "Never negotiate piecemeal" http://www.bothsidesofthetable.com/2012/03/10/never-negotiate-piecemeal-heres-why/

Also, regarding job interviews, if you're not used to them you might think that the questions that they ask you are the ones that they want an answer to. Not so! Most job interview questions have some sort of hidden purpose to them. If you take them literally, you might miss the point.

For example, "Why should you get the job, instead of another candidate?" means something more like "Tell me something that I can tell my boss to cover my ass about why I gave you the job." "Tell me how you see yourself in 5 years" has multiple purposes. Read up on interview questions and why people ask them and what they are actually asking.

You might know this already, but iterative design is better than the waterfall method of software development, since it allows people to catch problems early in the design stages. Nevertheless, many companies still use the waterfall method, or pay lip service to "agile" but don't actually do it well.

Writing software for nuclear reactors or medical devices is qualitatively different than writing software for lower stakes purposes that can have more bugs in the software.

I probably have more advice, if you have more specific questions. It's hard to know what to tell you, since I don't know much about what your concerns are, or where you're starting from.

Strangeattractor has made many excellent points here. Let me add a bit:

StackOverflow has the most detailed data I've seen on features that make software jobs satisfying: http://stackoverflow.com/research/developer-survey-2016#work

The city you work in affects the salary pool that companies compete against with their offers. San Francisco, New York, and Seattle are much higher paid than other cities, and the USA is much higher paid than any other country. Big companies also pay more.

Lastly, apply to many companies simultaneously. If you have 2 or more offers, you can negotiate by telling each company "match or beat the other company". This can lead to enormous increases in compensation. E.g.: http://haseebq.com/farewell-app-academy-hello-airbnb-part-ii/

Mobile is hot right now. Get proficient with Xamarin or native.

Too specialized. I'd ask for more information regarding his strengths. Or add a conditional when this applies.

I think I disagree. I'm not sure that 'strengths' is a real term for a dev.

In my view you either know or don't know a language. If you know it you are contributing to SO. If you don't you are looking things up on it. I don't really believe that a person could be a good computer programmer and there be a subfield that they couldn't master if it was necessary for their employment.

Whatever his current proficiency he'll be adding to his skill sets as needed. I'm suggesting a set that I think will be useful. I think it is the right level of specificity, even absent more information.