4 ms·
It shouldn't be called codecadamey, it should be called javascriptkindergarten. I think it is arrogant because it is claiming to be teaching how to code, when
by dusklight 15y ago
It shouldn't be called codecadamey, it should be called javascriptkindergarten.
I think it is arrogant because it is claiming to be teaching how to code, when it is not doing anything of the sort. I think it is supremely arrogant to not even mention that it is teaching javascript specifically, making it sound like you could learn how to code in general from the site, when it covers only the most basic of basic topics, and then covers them wrongly. I think it is taking the wrong approach towards teaching someone how to code, in a manner that only someone who doesn't know how bad they are at coding would do. I think people need to understand that learning how to code takes a long time and a lot of hard work. I think the site does too much hand holding and is way too slow .. it is like saying that if you want to learn how to fly to the moon you just have to practice jumping higher and higher, it is like saying if you want to write the next great novel you should keep singing the alphabet song until you know all 26 letters .. it doesn't work and it's giving false hope to people who are not trying hard enough, making them think that they can put in the little little bit of effort that this site asks of them and they will be able to succeed in learning how to code.
If I had to teach someone programming from scratch, I would definitely start off with some basic theory of computation stuff, get some basic concepts in on what a state machine is, what are the differences between a deterministic finite automata, nondeterministic finite automota, and a turing machine, then with a basic understanding of what a turing machine is, we can get some C in, learn the basic memory model, what is stack and heap, then gain some basic understanding of typing, difference between static types and dynamic types and why it is important to know about types, which makes so much more sense once you understand what is going on with the heap and dynamic memory allocation and so on, then we can go on to the concepts of abstraction, state change, and so on.
- Wilya 15y agoAmong all people who know how to program, the fraction of them who know what automatas are isn't so high. And if you restrict yourself to, among those, the fraction that studied Turing machines before any language ? Well, I don't think I know anyone in that case. Teaching isn't only about choosing the right subjects in the right order. It is also about making people involved in their own learning. Especially at basic levels.
- MrKurtHaeusler 15y agoYou have a point. But 90% of the lessons are relevant to any C-like language. It uses Javascript sure, but I think it does teach the beginnings of how to code. Also I disagree on the last paragraph. The topics you mentioned are far less useful for learning to program than the material this tutorial covered. They are advanced topics, and only used in special situations.
- dusklight 15y agoThis is why I mentioned the Dunning-Kruger effect. You have no idea how bad you are at programming and how completely wrong you are. From other comments in this thread we can already see how poor of a decision it was to use a dynamically typed language to introduce programming to fresh newbies. Javascript is NOTHING like C. Just because it has curly braces in it doesn't mean it is like C. That is like saying you saw a red ferrari so all red cars are ferraris. No. The concepts I mentioned are not advanced concepts. They are BASIC concepts, such as would be covered in a basic freshman/sophomore class in college. You probably have no idea about the huge class of bugs that you could easily avoid if you understood these concepts. They are not used some of the time, they are used ALL of the time.
- aik 15y agoFew things: 1. I think you have a good argument concerning how they may seem to be belittling the complexities of programming. Again, I'm interested in seeing where they will go from here... I believe they have a good (early) start, and I believe the worth of the site will be determined by how effectively it can teach anything beyond the very very beginner level. 2. The site just recently was made available -- it's clearly not 100% complete. HN has submissions of half-complete (or <=MVP) stuff all the time. This, and the fact that there is no business model present, the fact that the lessons stop at a very abrupt point, and the fact that the authors here are so eager for feedback, I believe renders the harshness of your harsher arguments unhelpful. 3. How you suggest one would teach someone programming from scratch I think would work for very few people (though if done well, I have no doubt it would work for some). I think a majority of people you would try that strategy on, how I am perceiving it anyway, would lead to burn out and people end up hating programming before much time was up. In fact, I believe that approach is one taken so often in school, and look where it has brought us... a majority of people hate math, hate [insert random science subject], and hate [insert nearly any academic field sometimes even including the one they majored in]. How is it that we fail so horribly as to often cause such strong aversions to certain subjects, or rather what we believe are the subjects. I don't believe anyone truly hates math (or any academic subject), they just have a horribly skewed idea of what it is.
- dusklight 15y agoPeople hate math because they are cowards and people are cowards because we have math 101 in school but not courage 101 ... I have spent a lot of time teaching myself how to learn, so I agree that current institutionalized methods of education are very flawed. But it's like, life is hard. It's not going to get any easier just because you pretend it's not hard.
- aik 15y agoTeach a courage 101 course? I agree with this for the most part, but I don't agree that being a coward is a natural state unless taught otherwise. I believe it results from the mindsets we form based on what we perceive societal values to be. Parents/peers/culture seems to value good grades, or simply looking good at whatever you're doing, and being accepted by following the norm -- superficial, damaging, and mostly pointless things -- and as a result, those things become priority for people over learning. If we stop pretending those things matter so much, and put more focus on the beauties of learning and curiosity and discovery and exploration, things would be different. When and how did you learn to become such an autodidact? Have you been one your entire life? Or when did you realize the system can't and shouldn't force learning upon you and you have to take it into your own hands? I made some of these realizations not all too many years ago, and am fascinated by how others have made the transition. Thanks, your views I find interesting...
- czzarr 15y agohi, could you link to some good ressources to learn all the topics you listed ?