• 0

A frustrated, eager learner.


Question

Has anyone else used the book "Learning Python (3rd Edition) to learn? I'm 80 pages in and I'm a bit let down. The writing style makes learning frustrating because the writer Mark Lutz keeps referencing things that he acknowledges make no sense yet and following it by saying "we'll discuss that in chapter X."

Even though the back of the book says its written for anyone, I get the feeling its tailored more for people who already have some programming experience. Programming is pretty much the one thing I never got to dive into so maybe this isn't quite the method of learning for me.

I'm only doing this for fun, and I suppose I was hoping to prepare myself - I'll be taking a two year computer information systems course at a local community college soon - just enough to get a job and all. I've attached the course information just for the sake of it.

Anyone have any tips? I've heard Pascal is another good first language to learn, but given my previous experience with python maybe something like Instant Hacking from hetland.org is better for me.

PS- I am already fluent in LISP. (jk)

Link to comment
https://www.neowin.net/forum/topic/666532-a-frustrated-eager-learner/
Share on other sites

20 answers to this question

Recommended Posts

  • 0

I've never learned from a book, personally. I've always learned best by getting code snippets and messing with them, or just experimenting with different functions and such to build what I want.

As far as learning your first language, I can say this: the easiest to learn would be Java or C#. However, going to C++ and C after that is a bit of a slap in the face in that your hand isn't being held the whole way through and you have to deal with things like pointers, references, and memory management. Overall though, I do think starting with something like Java or C# is the best way to go as it eases you into the mindset of programming in general and from there it's much easier to learn whatever language you want.

If you're as eager as you say you are, you'll have it down in no time. So don't worry if you get frustrated with it... That happens. ;)

Edited by gigapixels
  • 0
I've never learned from a book, personally. I've always learned best by getting code snippets and messing with them, or just experimenting with different functions and such to build what I want.

As far as learning your first language, I can say this: the easiest to learn would be Java or C#. However, going to C++ and C after that is a bit of a slap in the face in the fact that you're hand isn't being held the whole way through and you have to deal with things like pointers, references, and memory management. Overall though, I do think starting with something like Java or C# is the best way to go as it eases you into the mindset of programming in general and from there it's much easier to learn whatever language you want.

If you're as eager as you say you are, you'll have it down in no time. So don't worry if you get frustrated with it... That happens. ;)

I'd have to say Java as well, it's not too hard and it's actually quite rewarding :)
  • 0
Not to insult you, but the "for Dummies" books have always worked well for me in terms of programming.

I have to agree, the "for Dummies" books are really a great start! They not only start out VERY basic but also do a great job of explaining what they mean. Another thing I think they do very well is give you a lot of very good list of reference resources that you'll use all the time. Good luck! RAD

  • 0

I've never used the "For Dummies" books, but when I started learning VB6 and then later C#, the "Learn <insert language here> in 21 Days" books did well to introduce me to the language syntax. After that, specific books on different technologies or patters such as ADO.Net, ASP.Net, Business Objects, etc will move you into the more advanced subjects.

  • 0

Through experimenting with what I learned so far I made a one action zork-like game lol. One action because I don't know how to go past this point and present the user with more options if you know what I mean. I just did this because of the sudden revelation I had that those old games are basically inputs and print statements that are branched and weaved together. Am I right? I know I have a long way to go but I thought this was a fun "exercise"

# Test Game One

print "Welcome to my first Zork-Like game"
print "?????????????"
print

# Print out the menu:
print "You awake in a dark room, unaware of who you are and why you are there. There is nothing in this room but a bedroll, a small table containing two drawers, and the note and candle on the table."

# Get the user?s choice:
firstaction = input("Shall we begin?&gt; ")

# First Action Choices and Second Action Get:
if firstaction is "note":

	print "I did not want things to proceed this way, but this evenings events left me no option. I had to bring you here for your own safety. The clues in the drawers should provide you with the information you need"
secondaction = input("Done enough reading yet? Let's go on.&gt; ")

if firstaction is "drawers":
	print "You find a journal, a few thousand pounds, and a picture of someone, could be anyone - even yourself."
secondaction = input("Good job Sherlock! What do we do next?&gt; ")

# Second Action Choices

if secondaction is "sleep":
		print "You are so sodding lazy! Worst. Player. Ever."
		thirdaction = input("Want to get out of bed?&gt; ")

The errors I see with this method are that I have to redundantly code every new input. I'm sure I don't have to label each as NUMBEREDaction. Also if they just type something that isn't a choice it doesn't return, so I'd have to code an "if else" type thing wouldn't I?

Anyway, I think I'm grasping this based on what I've learned in the past hour. Anyone else agree? lol

  • 0

jjust to offer a balanced opinion here but why recommend java ? it might be easy in your opinion but having just started the 3rd year of my degree I can tell you after 2 years of java in the first and second year its definately not an easy language. It might be easy for you guys/gals but java is not an easy language and the netbeans ide is a pain in the ass. Personally id start with VB (standard place everyone starts these days) then work up to c++ then c# ;) perhaps it was the way we were taught it at uni (java and c++ first year then java and c# second year) who knows but I would not recommend java to a beginner

  • 0

The reason I say Java/C# first is because it just makes sense when you look at it. It's very easy to tell what is what, and frankly IMO has the cleanest syntax of any language I've used (this applies to both, as C# has almost exactly the same syntax as Java). VB was the first language I ever looked at and was one of the most confusing languages I've ever seen as far as syntax is concerned. The first class I ever took for programming (senior year of high school) taught Java and I picked it up faster than the course could handle and I was doing my own project by the end of the semester.

  • 0

again i think it comes down to personal preference, I found VB to be very easy because its more of an English language and you can more or less "speak out loud" what you want to happen then write it. Its all down to personal preferences at the end of the day and what you pickj up on fast I guess :)

  • 0

Oh yeah, definitely, and I completely understand that. Keep in mind also that my experience with VB was long before .NET... I think it was VB5, or maybe right when 6 came out. So things may have changed since then, especially with .NET. All I know is that my favorite .NET language is C# and I'm getting the hang of C++ with my current classes.

  • 0
Oh yeah, definitely, and I completely understand that. Keep in mind also that my experience with VB was long before .NET... I think it was VB5, or maybe right when 6 came out. So things may have changed since then, especially with .NET. All I know is that my favorite .NET language is C# and I'm getting the hang of C++ with my current classes.

VB hasn't changed -- it's still ass. LOL

  • 0

It might be a bit late now, but when I buy a computer book, I go into the bookstore and look at several of them. I find one that starts at my skill level, covers the items I am interested in, and presents them in a way that speaks to how I want to learn them.

That said, it seems your programming is very linear at this point. Have you covered any math work and processing that yet?

I am a new Python learner as well, and wish you luck on the same journey I have chosen.

EDIT: What made me pick Python is that it can be used interactively as well as scripted. It is cross-platform. And it is easy to crack in a GUI. Seems to be as flexible enough to be used in a variety of ways.

  • 0

I haven't much delved into Python yet, but its syntax looks very clean to me. From the looks of it it must be one of the most fun languages to learn. So, I suppose you just stumbled on a bad tutorial. It is true that most Python tutorials assume prior programming experience, it is easier to find a beginner tutorial for C++ or Java.

This looks like a useful resource for you : http://wiki.python.org/moin/BeginnersGuide/NonProgrammers

VB hasn't changed -- it's still ass. LOL
At least in VB, "If A = B" actually does what you mean it to do. On my lousy days I still forget to add the stupid parentheses and that operator ==. :pinch:

(And if anyone who writes "if (a = b)" actually means "if the assignment of b to a implicitely evaluates to boolean true" I'll personally bomb his house.)

  • 0
I haven't much delved into Python yet, but its syntax looks very clean to me. From the looks of it it must be one of the most fun languages to learn. So, I suppose you just stumbled on a bad tutorial. It is true that most Python tutorials assume prior programming experience, it is easier to find a beginner tutorial for C++ or Java.

This looks like a useful resource for you : http://wiki.python.org/moin/BeginnersGuide/NonProgrammers

At least in VB, "If A = B" actually does what you mean it to do. On my lousy days I still forget to add the stupid parentheses and that operator ==. :pinch:

(And if anyone who writes "if (a = b)" actually means "if the assignment of b to a implicitely evaluates to boolean true" I'll personally bomb his house.)

Paying attention to detail is part of being a programmer. :p ;) (something I've been failing at a lot lately)

You can learn in VB just as easily as any other language, but I think VB.NET has become a tangled mess of holdover syntax/behavior and the .NET Way. I die a little inside every time I have to work in VB. It's way too verbose for me (AndAlso instead of && -- c'mon! -- If Not(foo Is Nothing) /cry)

  • 0
You can learn in VB just as easily as any other language, but I think VB.NET has become a tangled mess of holdover syntax/behavior and the .NET Way. I die a little inside every time I have to work in VB. It's way too verbose for me (AndAlso instead of && -- c'mon! -- If Not(foo Is Nothing) /cry)
I started programming with BASIC-style languages, so I don't mind the verbosity that much. See, to me If Not(foo Is Nothing) is crystal clear, almost someone next to me explaining what the program does, whereas if (!foo) doesn't tell me whether foo is a pointer, integer, boolean, or #define foo format_C_drive_without_asking().

However, AndAlso is total ass.

  • 0
The reason I say Java/C# first is because it just makes sense when you look at it. It's very easy to tell what is what, and frankly IMO has the cleanest syntax of any language I've used (this applies to both, as C# has almost exactly the same syntax as Java). VB was the first language I ever looked at and was one of the most confusing languages I've ever seen as far as syntax is concerned. The first class I ever took for programming (senior year of high school) taught Java and I picked it up faster than the course could handle and I was doing my own project by the end of the semester.

I pretty have the opposite experience lol. VB6 was the first language I learned (then vb.net) and I picked it up super quick and had no problems with it and liked the syntax. I am now learning Java and I find the syntax a complete pain in the ass. I guess everyone has there favorite language and favorite learning style.

Probably the main reason I liked VB6 and VB.NET was because it was easier for me to debug.

  • 0
I pretty have the opposite experience lol. VB6 was the first language I learned (then vb.net) and I picked it up super quick and had no problems with it and liked the syntax. I am now learning Java and I find the syntax a complete pain in the ass. I guess everyone has there favorite language and favorite learning style.

Probably the main reason I liked VB6 and VB.NET was because it was easier for me to debug.

Yeah I can understand. My brain tends to work different than most people I've talked to about programming and such. My first programming teacher in high school even described me as being able to know what the code will do before using it, and I guess it's pretty true. When thinking about how to program something, I think in how to code it rather than how to do it... if that makes any sense (it's not easy to explain). That's why I like the less English-like languages I guess, as they just don't fit with the way I think about how to approach the problem.

  • 0
Yeah I can understand. My brain tends to work different than most people I've talked to about programming and such. My first programming teacher in high school even described me as being able to know what the code will do before using it, and I guess it's pretty true. When thinking about how to program something, I think in how to code it rather than how to do it... if that makes any sense (it's not easy to explain). That's why I like the less English-like languages I guess, as they just don't fit with the way I think about how to approach the problem.

Its a pity I do not have a brain like that your lordship :(

Edited by GrimReeper
  • 0
It might be a bit late now, but when I buy a computer book, I go into the bookstore and look at several of them. I find one that starts at my skill level, covers the items I am interested in, and presents them in a way that speaks to how I want to learn them.

I don't do this, but I do check Google Books to preview what I can of the book, you can get a very good idea of what the book contains with the previews, you can usually read quite a few pages.

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • Microsoft brings Planner Agent to all Microsoft 365 Copilot users by Ivan Jenic Image: Microsoft Microsoft has announced that Planner Agent in Microsoft 365 Copilot is now generally available to all users with a Microsoft 365 Copilot license. Planner Agent is the latest addition in the string of AI features that Microsoft is implementing across virtually all of its products. The agent lets you manage tasks through natural language prompts directly inside Microsoft 365 Copilot. You can create and update tasks, check priorities, and get insights about current entries without leaving the chat interface. The general availability release comes with a handful of new additions on top of what was available during the initial rollout. A new plan picker lets you search and filter your plans by name, then update task names, statuses, due dates, or priorities through the agent. There's also a goals bucket now, which lets you group tasks under specific goals. This builds on the Goals view, a feature that was introduced as part of the broader Planner refresh that rolled out earlier. Image: Microsoft | Planner Agent in Microsoft 365 Copilot All AI-generated plans and tasks are created in draft mode by default, so you can review and approve changes before anything goes through. This is actually a thoughtful safety feature, because trusting AI to handle all your tasks without a human in the loop is usually a recipe for disaster. Having tasks initially saved as drafts is the best possible middle ground. Microsoft also says that not all tasks are executed equally. Simple tasks get processed quickly, while more complex ones, like building a plan from a Word, Excel, or PowerPoint file, are handed to a more capable model. Microsoft says this approach delivers the best performance, but it could also help with usage management, as you won't have to waste tokens on performing simple tasks. Planner Agent is available now across Teams, Loop, SharePoint, and other Microsoft 365 apps for anyone on a Microsoft 365 Copilot subscription.
    • To be clear I'm anti trump, the bigger point is why review this game at all?
    • Trillion dollar Microsoft has to reduce spending by hurting more people. Good job Microsoft. Good Job Asha.
    • That's a shame. The big Xbox reset when Phil and Sarah left and then Asha came on and brought a new team of executives, and all the layoffs last year and saying that the ABK merger wouldn't result in redundancies I am surprised they are calling for yet another reset and yet more layoffs.
    • Arkane, Ninja Theory, and Double Fine might be on the chopping block too.
  • Recent Achievements

    • First Post
      Cosminus earned a badge
      First Post
    • One Year In
      ThatGuyOnline earned a badge
      One Year In
    • Week One Done
      Jeroen Wilms earned a badge
      Week One Done
    • Week One Done
      rolfus earned a badge
      Week One Done
    • One Month Later
      Leroy Jethro Gibbs earned a badge
      One Month Later
  • Popular Contributors

    1. 1
      +primortal
      499
    2. 2
      +Edouard
      194
    3. 3
      PsYcHoKiLLa
      125
    4. 4
      Steven P.
      87
    5. 5
      neufuse
      73
  • Tell a friend

    Love Neowin? Tell a friend!