| Hey everyone! I'm curious, what does the perfect programming education platform look like to you? I'm an experienced developer, but I really think that the current options for learning programming could be a lot better. I know that there are platforms like CodeCademy and places to watch video courses like YouTube and Udemy. There are also so many scammy "learn to code" sites (CodeFinity). The pattern I notice is that platforms like CodeCademy are web-apps and are very career-path-oriented (i.e. get certifications). I personally think that having a platform which was a desktop app would be a better solution. Rather than focusing on career-tracks, you could follow courses to build a specific project using an integrated IDE, 100% on your machine. How important are career-tracks and certifications to you? Or, would you rather just learn to build a specific project on your own machine all in one application? Basically, a native desktop platform to learn programming by actually building projects on your own machine. No BS. |
For teaching programming in a language, you just need some kind of guide to the language plus an IDE.
For teaching programming in a style (FP, say), some kind of guide to FP, plus some IDEs for some FP languages, plus guides to those languages.
For teaching programming at all... I'm not sure there's a way to teach what programming is without teaching at least one of FP/OO/structured/some other approach. But if you do, then you're not teaching programming, you're teaching programming by that approach - unless you teach them all.
Maybe the best you could do is say that programming is giving instructions to the computer in a formal language. So you create an IDE (plus guide) to some synthetic thing that lets you program, but has no bias for any particular approach (allows them all, or does none of the above). For that, it probably needs to be fairly simple - something for learning, not something for real work.
Note that BASIC and Pascal started with this approach.