Apropos the “asking personally important questions of LW” posts, I have a question. I’m 30 and wondering what the best way is to swing a mid-career transition to computer science. Some considerations:
I already have some peripheral coding knowledge. I took two years of C back in high school, but probably forgot most of it by now. I do coding-ish stuff often like SQL queries or scripting batch files to automate tasks. Most code makes sense to me and I can write a basic FizzBuzz type algorithm if I look up the syntax.
I don’t self-motivate very well. While I could probably teach myself a fair amount of code, without some sort of structure or project deadline, I would likely fail. If I tried to do this part-time, I would probably fail. (Also, I’m looking for a “clean break,” such as it is, with my current, toxic job situation.) So I would think that I could either go to a bootcamp or go back to school.
Advantages to school: could defer my remaining loans and work part-time, degree would open more doors within my field (law) as well as outside it. Disadvantages: costs more in the long run, takes longer. Unknowns: post-bacc or MS? I can probably do well on the GRE, but my GPA was unimpressive, and light on math besides. It would have to be an MS program that worked with non-majors.
Advantages to bootcamp: much cheaper in the short run, over in a few months. Disadvantages: my savings would be drained by the tuition and interim living expenses; I would need to be damn sure of a job by the time I exited. Unknowns: which bootcamps are worthwhile? My city only has two: Coder Camps and Iron Yard. They appear to teach more or less totally different platforms.
Does anyone here have experience jumping the tracks to programming later in life? Did you take either of the above strategies, or neither? How did it work out, and what would you have done differently?
(1) Yes, but I’m an outlier. I started in the 99th percentile and “improved” 6 points through self-study.
(2) Honestly? Not really. For me, most of the difference in performance from test to test was not due to logical misapprehension, but because I skimmed a question or misjudged the time limit. If you have taken an undergrad logic course and have a grasp on conjunction/disjunction, sufficient/necessary, etc., then your experience will likely be similar. For instance, you said this about the games:
This is true, but it’s also true of the args, too. I’ve taught for two of the major test prep companies and the courses are mostly just an undergrad logic course bolted onto their own proprietary shorthand and systematic categorization so students can recognize types of questions and diagram them accordingly. When I tutored independently, I just used regular old symbolic logic.
The only tricky part about teaching that question (which I can’t recall teaching specifically) would be that most novices will diagram AW– or something similarly distinct from the premise elements for neutral welfare. So you have to teach them to diagram conclusions in the form of premises whenever possible.
(3) Well, I already had most of these skills, but I would say I definitely got a lot out of teaching. It’s a fun test compared to, say, the MCAT. I don’t think it would be all that great as a self-improvement tool, though. Without a tutor you won’t always understand where you’re screwing up, and some of the questions are sometimes tricky for the sake of being tricky. For instance, there may be a version of that question where the answer turns not on logic, but on one of the premises subtly leaving out the word “reasonably.” Additionally, there really aren’t that many different kinds of questions. Once you start looking at more than a few tests you will start to recognize lots of questions that are logical repeats with different subject matter, or maybe a reversed answer condition (which of the following is NOT implied versus which of the following IS). If all you want is to improve your logical reasoning personally, I’d just take the undergraduate logic courses.