4 ms·
The first thing I'd tell you is that people who are looking to learn python with 0% knowledge of python are most likely not using linux as an operating system.
by NDizzle 6y ago
The first thing I'd tell you is that people who are looking to learn python with 0% knowledge of python are most likely not using linux as an operating system.
Windows/Mac instructions up front make a lot of sense.
Other hangups newbies have: where to type things? Where to run commands? Hell, what's a command? These are the things one of my kids asked me when I was showing them python last night.
- poisonborz 6y agoAs OP stated, the book is for beginners in Python, not in development. I don't think your remarks would apply to that group.
- ghaff 6y agoThat's how I read it as well. That said, I think it's fair to note that anyone who has only ever used their computer for browsing, word processing, and gaming who gets dropped into most Introduction to X courses really has a whole (somewhat operating system and tools-dependent) course worth of material they probably need to go through first. I've seen the discussion boards of a couple nominally-intro MOOC courses filled with people utterly bewildered about basically how to use a computer for programming.
- dharmab 6y agoWeb IDEs are great for these intro-to-programming courses. Ideally the students get a couple of weeks of material on how to set up a local development environment later.
- asicsp 6y agoThanks for the feedback. I have Linux only, so can't give Windows/Mac instructions. That said I do show how to use IDLE, so command line knowledge isn't strictly necessary to follow along this book. I also mention links for websites you can use as an alternate. Given that knowing another programming language is a prerequisite, I hope getting started won't be an issue. I'll see if I can improve on the current instructions.
- t0mmyb0y 6y agoMac is almost identical to linux.
- interestica 6y agoThis is a pretty good framework for learning. > I have Linux only, so can't give Windows/Mac instructions. That said I do show how to use IDLE, so command line knowledge isn't strictly necessary to follow along this book. You bring up IDLE but don't define it. It's mentioned that it's related to IDE only. > Given that knowing another programming language is a prerequisite... Is that mentioned at all? And which ones? Why?
- asicsp 6y ago>Is that mentioned at all? And which ones? Why? I mention it in the preface chapter: https://learnbyexample.github.io/100_page_python_intro/preface.html https://learnbyexample.github.io/100_page_python_intro/prefa... There are plenty of books teaching Python for beginners to programming (Think Python, Automate the Boring Stuff, Python Crash Course and so on). And those are all 200+ page books, requiring a lot of effort from the author to teach programming concepts. I've seen a few people wanting a book that assumes the reader is already familiar with programming basics. The official Python tutorial is awesome for that purpose and there are a few books as well (A Whirlwind Tour of Python, Python 101, etc). I had started another book on Python projects and I felt I needed to improve my Python knowledge, so I wrote this book. >You bring up IDLE but don't define it. It's mentioned that it's related to IDE only. I'm assuming reader already knows IDE. I can add a wikipedia link to make it easier to look it up for those who don't know about it.
- fock 6y agoWhile Mac is indeed problematic, for Windows you can just download a copy of their evaluation VM and go through installation there. For my own course installing and doing "Hello World" is actually the 0th exercise, because it doesn't make sense to start doing stuff if this doesn't work.
- serjester 6y agoGoogle Colab is amazing for speeding through these early roadblocks. Controversial opinion but a beginner’s goal should be accomplishing a task - not learning about software development. A few wins later, they’re going to run into some friction and that’s when you can teach them about the standard to write code. Most importantly, they’ll understand the underlying “why” at this point.
- samstave 6y ago>* beginner’s goal should be accomplishing a task* Yup - I learned Photoshop in the mid 1990s because I was given a task to make some marketing material for the architecture firm I worked for... and they paid hourly for me to go to the Kinkos near the office as they had workstations with Photoshop on them. If you have a goal/task that you need to create then you will learn faster. You can't just sit down in front of a piece of software, such as Autocad or Photoshop and "learn" it unless you have a goal... There is a bad-ass piece of software called "Bartender" By Seagull Scientific and its used extensively in the cannabis industry to make labels - I love that software and I had to learn how to use it as I needed to design and print Cannabis labels...
- dddddaviddddd 6y agoI recently read The C Programming Language, and the paragraph about the difficulty of writing a 'Hello, world' resonated with me: > This is the big hurdle; to leap over it you have to be able to create the program text somewhere, compile it successfully, load it, run it, and find out where your output went. With these mechanical details mastered, everything else is comparatively easy. For beginners, getting the development environment figured out can be a significant roadblock.
- mszcz 6y agoSeconded. When my brother was learning front-end developement those were the kind of things that caused most problems in the beginning but were the most glossed over in the tutorials. I personally think that learning the nuts and bolts of how things work is where one should start. What compiles what, where is what stored, what process executes what, how does that thing know where that other thing is located etc.
- musingsole 6y agoMost people who code will need an inverted triangle of knowledge in relation to the software stack. Starting with some subset of software fundamentals is great, but it's easy to lose the forest for the trees in that approach. If I love websites and now I want to build one, spending more time on fundamentals than is necessary to impart a general scheme and more importantly the metaphors of those fundamentals would be a waste.
- geephroh 6y agoExactly! React and node are just simple JS, right? Simple JS, after you figure out which toolchain to use and how to configure it for your development and deployment environments...
- bigwavedave 6y ago> Exactly! React and node are just simple JS, right? > Simple JS, after you figure out which toolchain to use and how to configure it for your development and deployment environments... And god help you when any of your dependencies undergo a major update ;).