4 ms·
But do bootcamps train people to program well? The metrics they measure against are money and job based. Which gives me the impression that we either don't kno
by AndyMcConachie 9y ago
But do bootcamps train people to program well?
The metrics they measure against are money and job based. Which gives me the impression that we either don't know how to determine if people know how to program, or that no one really cares. We need some kind of standardized test or similar. I know of the Advanced Placement CS exam[1], but we need something more practical and not focused on a particular language.
[1] https://apcentral.collegeboard.org/courses/ap-computer-science-a/exam#2016 https://apcentral.collegeboard.org/courses/ap-computer-scien...
- taneq 9y agoIt's hard (not to mention highly subjective) to judge development skill. My guess is that it's in the same class of difficulty as the halting problem.
- mettamage 9y agoI feel that they try, but bootcamps won't always succeed. It depends on the student. For quite a number of students the bootcamp format isn't the right one, in my opinion. This is when I regard training students as good programmers. If it is regarding getting a job, then a coding bootcamp is suited for a lot more students. Not every company needs a programmer. A lot of companies that I've seen come by, need people who are able to do some programming and some web-design.
- sethrin 9y agoNothing trains people to program well. Colleges teach fundamentals like lambda calculus, but fail to teach practical skills. Bootcamps have the opposite problem, and the actual industry seems to assume that trained developers spring up out of the ground like sowing dragon's teeth. The requirement of 'not focused on a particular language' is actually something that I would be forced to disagree with. That leads to things like HAGGIS[0]. Generally we can probably say that determining whether people can program is difficult at best, but HackerRank[1] seems to have a good model. Problems are given in English with examples of input and output, and the testee may select from some five dozen supported languages. Programs use standard inputs and outputs. Alternately I would support the use of a standard language. People do okay with computers even though they're not really Turing machines; it would not be harmful to concede conceptual purity to satisfy some real-world constraint. Python or Ruby would probably be fine. In a bootcamp environment I'm afraid it would have to be JavaScript. Either way, the part about "more practical" conflicts with the "not focused on a particular language" part, and the right answer is whatever is furthest from HAGGIS. [0] https://en.wikipedia.org/wiki/HAGGIS https://en.wikipedia.org/wiki/HAGGIS [1] https://www.hackerrank.com https://www.hackerrank.com
- AndyMcConachie 9y agoI didn't know abotu HAGGIS, thanks for that link. I vaguely remember that in the 1990's the US Advanced Placement test for CS was done in Pascal. The point has to be a focus on fundamentals. There are fundamental data structures and algorithms that any programmer is useless if they don't know, and I doubt people are learning these at bootcamps in 6 months. > Colleges teach fundamentals like lambda calculus, but fail to teach practical skills. College CS programs in the USA are focusing more and more on appeasing recruiters and HR folk with keywords than in teaching CS fundamentals. And I think that's a tragedy.
- sethrin 9y ago> College CS programs in the USA are focusing more and more on appeasing recruiters and HR folk with keywords than in teaching CS fundamentals. And I think that's a tragedy. If true, I am sure we would agree on that score. > There are fundamental data structures and algorithms that any programmer is useless if they don't know, and I doubt people are learning these at bootcamps in 6 months. I believe that what gets taught at bootcamps is how to tackle new things, and professional standards of code quality. More learning how to learn. I do dispute the idea of "any programmer is useless if they don't know X" for any X. It's too strongly worded, for one thing. If you qualify 'programmer' as someone with 4-6 languages under their belt then yes, if that person doesn't know their algorithms they're probably going to be less productive -- writing BASIC in every language. That is unfortunately far from useless. But the subset of coding tasks you'd assign to junior developers are probably not going to inconvenience you much if you don't know how to do an A* search.