quickly check to see if you are a natural computer programmer by pulling up a page of Python source code and seeing whether it looks like it makes natural sense, and if this is the case you can teach yourself to program very quickly and get a much higher-paying job even without formal credentials.
I just did this. And I was surprised; this seemed far less inscrutable than I intuitively expected, having never read any code. My father is a computer programmer, so I may have it in my DNA. He is more intelligent than me though. Example, I once told him the three gods puzzle and he had it solved in ~20 minutes; he didn’t even use paper.
P/S/A: If your work involves writing and you often find yourself procrastinating on the internet, buy an old laptop, rip out the wifi card and use it as your dedicated writing laptop.
P/S/A: When you need to get a large amount of writing done outside of office hours, go to some non-home location (a coffee shop not a library, as books are the ultimate distractions) and commit yourself to not leaving until you reach a specific word count—I find two thousand words is reasonable and achievable; at least it is for non-creative writing.
Also, If there is some fact that you need to research use the TK method to mark it down for later.
Three gods puzzle (aka “The Hardest Logic Puzzle Ever”, I didn’t make that name up!) for reference. Try to solve the puzzle first, I’ve appended the text. The referenced link contains the solution.
Three gods A, B, and C are called, in no particular order, True, False, and Random. True always speaks truly, False always speaks falsely, but whether Random speaks truly or falsely is a completely random matter. Your task is to determine the identities of A, B, and C by asking three yes-no questions; each question must be put to exactly one god. The gods understand English, but will answer all questions in their own language, in which the words for yes and no are da and ja, in some order. You do not know which word means which.
Clarifications:
It could be that some god gets asked more than one question (and hence that some god is not asked any question at all).
What the second question is, and to which god it is put, may depend on the answer to the first question. (And of course similarly for the third question.)
Whether Random speaks truly or not should be thought of as depending on the flip of a coin hidden in his brain: if the coin comes down heads, he speaks truly; if tails, falsely.
The first time I read that I thought “what difference there is between speaking truly in a language where da means yes and ja means no, and speaking falsely in a language where ja means yes and da means no?” and assumed that the solution was that there’s no solution. (I was wrong.)
Differences: The Three Princess riddle only allows for one binary question, however, the princess (same setup of of True, False, Random) answer in plain English. You win if you (edit:) choose a princess who is not random. 1, 2, 3.
Actually, you win if you are able to choose a princess other than Random—you do not need to know which of the two remaining ones is Random. Otherwise, this would clearly be impossible since the answer provides only one bit and there are three possibilities. (And that’s not even considering that under sensible interpretations of the rules, you don’t get any information if you happen to ask Random—i.e., you’re not allowed to ask e.g., “Is it true that (you are False) OR (you are Random and you’ve decided to answer truthfully this time)”, which, if allowed, would be answered in the affirmative iff the one you asked is Random.)
Yes, True and False have to be omniscient to be able to answer consistently correctly or incorrectly, for any arbitrary binary question. There’s a version of the answer which (spoiler) relies on asking unanswerable questions, which only Random would answer. There’s also solution that doesn’t rely on such gimmicks, however.
There are questions for which you don’t know the answerability, so either the rules must be that questions asked are provably answerable, or else you are allowed to glean information from whether the god answers it or not.
Assuming that True and False do not know the future results of questions to Random, an example is a question to A (True) of “Would B say 1 + 1 = 2?” If B is False, it is answerable (with a ‘no’). If B is Random, it is unanswerable.
I’m not completely stupid. I used to be a decent programmer. I’m now a halfway-decent programmer. I’m unable to make any progress, and my ability to hold a job of any kind is dubious. What am I doing wrong?
Hard to say, but a few key pieces of information might lead you in the right direction. Is the inability to make progress project-specific? You can test this by doing something small on the side. Is it accompanied by an “ugh field”? Do you have non-programming-related signs of depression?
It’s not project-specific. It’s not repulsive so much as slippery—I happily begin working, but constantly lose focus. I was diagnosed with depression over a year ago, but I’m on meds and it’s pretty much gone, and I don’t have trouble focusing on things that don’t require much insight.
I’ve heard that anti-depressants can have a wide variety of side effects including things like this. Maybe look into the possible side-effects of the one you’re taking?
You’re asking me for advice? That was the first time I’ve looked at code in my life. I’m sure the textbook recommendation thread has something on programming. From what I understand, though, halfway-decent programmers are very employable at the moment, so either you’re overestimating your ability, there’s some other factor you haven’t shared, or my intuition on the employment prospects of halfway-decent programmers (I assume this means close to, if slightly below, the level of the average pro) is incorrect.
I assume this means close to, if slightly below, the level of the average pro
No, just very haphazard. I know how to do many things, but I don’t know how to do many other, often easier, things, and I seem to have become oddly unable to learn. Of course nobody wants a CSS whiz who never learnt HTML5.
Utterly random hypothesis: your odd inability to learn is caused by the tension between intrinsic and extrinsic motivation. You got into programming and learned stuff because it was fun in itself, but when you started thinking that you should use your skills to earn money and started analyzing every programming-related action in terms of its money-earning potential, it stopped being fun and became ugh.
Hmm, one way to maybe get around this would be to start an intrinsically motivating project but limit oneself to the tools one has to learn for extrinsic reasons.
Then my advice is this: talk to someone who has the entry-level job you want and ask him or her what skills he/she needs to do it and what skills whoever hired him or her thinks one needs. Then learn them. As for the “oddly unable” thing, I suggest reflecting on how you learned what you are good at in the first place. If there’s anything different about your current, ineffective approach to learning new techniques stop doing it. Unless you’ve recently suffered brain trauma, it’s likely just some weird ugh field-like effect.
You don’t provide enough information here. Your problem, and therefore the solution, could be pretty much anything. (Get enough sleep? Solve your emotional problems first? Find another job? Read the official specification? Get medicated? …)
Example, I once told him the three gods puzzle and he had it solved in ~20 minutes; he didn’t even use paper.
Whoa! 20 min and in his head? I wish I were that smart.
EDIT: Given that I am average or worse at logic puzzles, and that I haven’t heard this one before, somehow, I have decided to document my thought process as I was solving it. It certainly helps to know that there is a solution. Anyway, my explorations are documented here. Warning: the write-up is rather long and not edited for clarity.
I was quite happy that I had found that you have 1 in 3 chances to solve the puzzle with just two questions (without “exploding god-heads”)! The total time passed spent thinking and writing things up was probably several hours over several days, so an order of magnitude worse than your father :)
I just did this. And I was surprised; this seemed far less inscrutable than I intuitively expected, having never read any code. My father is a computer programmer, so I may have it in my DNA. He is more intelligent than me though. Example, I once told him the three gods puzzle and he had it solved in ~20 minutes; he didn’t even use paper.
P/S/A: If your work involves writing and you often find yourself procrastinating on the internet, buy an old laptop, rip out the wifi card and use it as your dedicated writing laptop.
P/S/A: When you need to get a large amount of writing done outside of office hours, go to some non-home location (a coffee shop not a library, as books are the ultimate distractions) and commit yourself to not leaving until you reach a specific word count—I find two thousand words is reasonable and achievable; at least it is for non-creative writing.
Also, If there is some fact that you need to research use the TK method to mark it down for later.
Three gods puzzle (aka “The Hardest Logic Puzzle Ever”, I didn’t make that name up!) for reference. Try to solve the puzzle first, I’ve appended the text. The referenced link contains the solution.
Here’s my solution. Not 100% sure it works.
rot13
The first time I read that I thought “what difference there is between speaking truly in a language where da means yes and ja means no, and speaking falsely in a language where ja means yes and da means no?” and assumed that the solution was that there’s no solution. (I was wrong.)
This looks superficially similar to the Three Princesses.
Differences: The Three Princess riddle only allows for one binary question, however, the princess (same setup of of True, False, Random) answer in plain English. You win if you (edit:) choose a princess who is not random. 1, 2, 3.
Actually, you win if you are able to choose a princess other than Random—you do not need to know which of the two remaining ones is Random. Otherwise, this would clearly be impossible since the answer provides only one bit and there are three possibilities. (And that’s not even considering that under sensible interpretations of the rules, you don’t get any information if you happen to ask Random—i.e., you’re not allowed to ask e.g., “Is it true that (you are False) OR (you are Random and you’ve decided to answer truthfully this time)”, which, if allowed, would be answered in the affirmative iff the one you asked is Random.)
They all speak the same language?
Yes.
Does each god know which god is which? And can I ask the same question twice to the same god?
Yes, True and False have to be omniscient to be able to answer consistently correctly or incorrectly, for any arbitrary binary question. There’s a version of the answer which (spoiler) relies on asking unanswerable questions, which only Random would answer. There’s also solution that doesn’t rely on such gimmicks, however.
Do True and False know what answer Random would give, or are they required to say “I don’t know?”
I interpreted it to mean that the question must be answerable with yes or no.
There are questions for which you don’t know the answerability, so either the rules must be that questions asked are provably answerable, or else you are allowed to glean information from whether the god answers it or not.
Assuming that True and False do not know the future results of questions to Random, an example is a question to A (True) of “Would B say 1 + 1 = 2?” If B is False, it is answerable (with a ‘no’). If B is Random, it is unanswerable.
Provably answerable from your own knowledge.
There’s nothing in your wording that suggests random is not able to refuse an unanswerable question as one of it’s potential random responses.
A fair coin can’t refuse to answer.
I’m not completely stupid. I used to be a decent programmer. I’m now a halfway-decent programmer. I’m unable to make any progress, and my ability to hold a job of any kind is dubious. What am I doing wrong?
Hard to say, but a few key pieces of information might lead you in the right direction. Is the inability to make progress project-specific? You can test this by doing something small on the side. Is it accompanied by an “ugh field”? Do you have non-programming-related signs of depression?
It’s not project-specific. It’s not repulsive so much as slippery—I happily begin working, but constantly lose focus. I was diagnosed with depression over a year ago, but I’m on meds and it’s pretty much gone, and I don’t have trouble focusing on things that don’t require much insight.
I’ve heard that anti-depressants can have a wide variety of side effects including things like this. Maybe look into the possible side-effects of the one you’re taking?
Not a known side effect of that one, but that’s certainly a possibility. I’m trying to go off it, so I’ll see.
You’re asking me for advice? That was the first time I’ve looked at code in my life. I’m sure the textbook recommendation thread has something on programming. From what I understand, though, halfway-decent programmers are very employable at the moment, so either you’re overestimating your ability, there’s some other factor you haven’t shared, or my intuition on the employment prospects of halfway-decent programmers (I assume this means close to, if slightly below, the level of the average pro) is incorrect.
No, just very haphazard. I know how to do many things, but I don’t know how to do many other, often easier, things, and I seem to have become oddly unable to learn. Of course nobody wants a CSS whiz who never learnt HTML5.
Utterly random hypothesis: your odd inability to learn is caused by the tension between intrinsic and extrinsic motivation. You got into programming and learned stuff because it was fun in itself, but when you started thinking that you should use your skills to earn money and started analyzing every programming-related action in terms of its money-earning potential, it stopped being fun and became ugh.
Hmm, one way to maybe get around this would be to start an intrinsically motivating project but limit oneself to the tools one has to learn for extrinsic reasons.
Then my advice is this: talk to someone who has the entry-level job you want and ask him or her what skills he/she needs to do it and what skills whoever hired him or her thinks one needs. Then learn them. As for the “oddly unable” thing, I suggest reflecting on how you learned what you are good at in the first place. If there’s anything different about your current, ineffective approach to learning new techniques stop doing it. Unless you’ve recently suffered brain trauma, it’s likely just some weird ugh field-like effect.
You don’t provide enough information here. Your problem, and therefore the solution, could be pretty much anything. (Get enough sleep? Solve your emotional problems first? Find another job? Read the official specification? Get medicated? …)
Whoa! 20 min and in his head? I wish I were that smart.
EDIT: Given that I am average or worse at logic puzzles, and that I haven’t heard this one before, somehow, I have decided to document my thought process as I was solving it. It certainly helps to know that there is a solution. Anyway, my explorations are documented here. Warning: the write-up is rather long and not edited for clarity.
I was quite happy that I had found that you have 1 in 3 chances to solve the puzzle with just two questions (without “exploding god-heads”)! The total time passed spent thinking and writing things up was probably several hours over several days, so an order of magnitude worse than your father :)