4 ms·
If student A spends 1 hour installing Python (with questionable success rate) & setting up an environment (with even more questionable success rate), and studen
by RheingoldRiver 5y ago
If student A spends 1 hour installing Python (with questionable success rate) & setting up an environment (with even more questionable success rate), and student B spends 1 hour actually typing things into replit and getting results, which student do you think is more likely to continue with a lesson plan?
Which student has learned more about Python?
Which student is better equipped to pursue setting up an environment (maybe on another computer) at some point in the future?
Setting up environments is the most frustrating, seemingly pointless task ever to an absolute beginner. Someone who has literally never written a line of code in their life and has 0 experience troubleshooting anything is extremely likely to get 1 step wrong, or worse have one precondition wrong on their machine that breaks the tutorial's steps, and then get stuck in an endless sea of non-functioning, useless applications now stuck on their hard drive & then become completely disillusioned & never start coding.
The lack of setup on the student's part is why previously I have always recommended FreeCodeCamp as the single best way to learn programming on the internet to an absolute beginner, but now that this exists with its replit-based approach (and I know about it) I'm gonna take a look at it and potentially start recommending it instead.
P.S. how many IDE shortcut keys did you have to customize before you were at all comfortable with using them? And this is Python, so if we're sending them to VSC instead of Pycharm, imo we're doing them a huge disservice*, and Pycharm's default keybinds are particularly egregiously beginner-unfriendly.
*IDE wars aside, arguably the real disservice is locking them into one before they have enough knowledge to form their own opinion
- qayxc 5y ago> If student A spends 1 hour installing Python (with questionable success rate) & setting up an environment (with even more questionable success rate), [...] I hear this a lot, and maybe I'm just too far removed from a total beginner's perspective to understand, but what exactly is complicated about installing Python? Windows in particular is as simple as it gets - there's a Windows Store App that you can install and that's pretty much it. Call me old-school, but I consider being able to install and start a program on the system I use on a daily basis an essential skill and a pre-requisite to programming. If (and that's one hell of an "if" these days) something goes wrong and troubleshooting is required, the necessary "skills" (read: google the exact error message, maybe followed by some process of elimination) overlap with the skills needed during programming so it actually helps, too. It rubs me all the wrong ways to tell students to sign up with a commercial online service for something they can experience for free, offline, and without surrendering personal data to some corporate entity on the internet. As far as IDEs and shortcuts go, that's another thing I just can't wrap my head around: so there are people who are apparently incapable of double-clicking an icon in their respective OS's package manager/app store, but at the same time they are expected to care about particular key bindings and shortcut keys? I just don't understand this at all. Not to sound like your typical geezer, but back in the day a blinking cursor and a magazine explaining the most important BASIC commands was all you needed to get started. Shortcut keys are the last thing beginners should worry about. Heck, it's perfectly fine to stay on the REPL for a while and just use a simple text editor for bigger scripts. Even syntax-highlighting can be enabled via plugin in most text editors that are even just better than Notepad.exe. But again, maybe I'm just way to detached from your typical absolute beginner to even remotely understand any of these issues.
- RheingoldRiver 5y ago> Windows in particular is as simple as it gets - there's a Windows Store App that you can install and that's pretty much it. Ok I haven't installed Python myself this way, but, does it set up PATH for you properly? How about pip, does it add pip to PATH? Often things will tell you to type `pip install` rather than `python -m pip install` so there's a potential source of confusion pretty early on too. (Currently, I tell people to install chocolatey then use that to install Python because choco does take care of PATH for both Python & pip. If Windows app store Python install takes care of all of this maybe I'll try suggesting this next time and see how it goes.) Also, let's suppose you get Python from Windows app store. Great, you have installed Python 3.9! You are doing the tutorial, just lovely, now in a week you want to make a Discord bot! Great first project. Uh oh, RED Discord Bot requires Python 3.8 (3.9 introduces breaking changes for some of its dependencies). How much more trouble you are now in because you have to install two versions of Python at the same time! If only you had waited to install any version until you were ready to start your first local project. (Based on actual events) As far as IDEs go, well, in Pycharm you are asked, do you want to set up a project? Huh? What's a project? (Later on: well, you can't just open a file from Windows Explorer, you need to open your entire project! Well, isn't THAT confusing!) Then you have to answer about a venv. What's a venv? Oh, shit, I made the folder in the wrong place, let me move it, omg, nothing works anymore, oh, I guess that "venv" thing was kinda important to know about after all, well, shit...Ok, so again, maybe don't jump all the way to Pycharm as your first IDE but then I just have to ask why are you using an IDE at all when replit would do just fine? Then you're going to have loyalty to a tool that's worse than Pycharm and not want to switch once you are ready to use the right tool. > But again, maybe I'm just way to detached from your typical absolute beginner to even remotely understand any of these issues. I think this is pretty likely; if you haven't helped a friend start from literal scratch in the past year, it's pretty hard to realize just how confused people can be. And a LOT of people have tried things before and given up in frustration because they remembered how painful the setup was. So that leaves them with messes on their computers and also psychological scars of "oh my god not another setup, please not another setup, don't make me do another setup...." Plus, if you have always had someone to ask for help then it's hard to appreciate just how painful setups can be when you're stuck on your own for them. If something breaks, no one's going to fix it for you, it's just broken, and you're just alone, and you feel REALLY goddamn stupid because as your comment points out, setups seem like they ought to be trivial. But they really just never are.