• 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

    • Marshall Major V Bluetooth headphones are now up to 47% off on Amazon by Ivan Jenic The Marshall Major V in Midnight Blue is currently $89.99 on Amazon, down from $169.99. That's 47% off and $80 saved on a pair of wireless on-ear headphones from one of the most recognizable names in audio. The Major V is Marshall's take on a long-lasting everyday headphone. The headphones deliver 100+ hours of wireless playtime, which puts them in a completely different category from most Bluetooth headphones that hover around 30-40 hours. You’re charging this thing once a week at most, and with wireless charging supported, you don’t have to worry about additional cables. Marshall promises its signature sound profile, with strong bass, smooth mids, and clear highs. There’s a customizable M-button, which you can set to quickly access Spotify Tap, your EQ settings, or a voice assistant. The design is foldable and lightweight at 186 grams, so it’s easy to pack for travel. And finally, the faux leather finish gives the Major V a sleek, premium look. At $89.99, the Major V Midnight Blue is a genuinely strong buy for anyone who wants a reliable daily headphone without paying premium prices. It’s also worth mentioning that the Cream and Brown variants are also discounted to $89.99, though from a lower original price of $99.99. Marshall Major V Midnight Blue - $89.99 | 47% off on Amazon This Amazon deal is US-specific and not available in other regions unless specified. This is a first-party seller link (at the time of article publishing); ensure that you also purchase from a first-party seller link only. If you don't like it or want to look at more options, check out the previous deals that we have covered, OR you can also visit Amazon US deals page. Get Prime (SNAP), Prime Video, Audible Plus or Kindle / Music Unlimited. Free for 30 days. As an Amazon Associate, we earn from qualifying purchases.
    • +1 on XVI. I still use it. 
    • Age 16, old enough to get a full-time job, your own bank account, a passport, get married, even join the military and go to war. But talking to your friends on the internet? Oh hell no!
    • I remember when all games had demos; it was a normal thing, not a limited time promotion.
    • Forza Horizon 6 gets big bug-fixing and balancing update by Taras Buria Today, Playground Games released a big Forza Horizon 6 update with a long list of fixes, patches, and balancing tweaks that the studio promised earlier. Version 375.327 is now available on Steam, Microsoft Store, and Xbox, offering users improvements for AI, audio, design, performance, road discovery, upgrades, visuals, online play, and more. Some of the most notable changes in the Series 2 update include rebalanced drivatars, particularly their difficulty and race start behavior. As such, the game should be more balanced on higher difficulty levels, and AI cars should not shoot out when the race starts as if they have rocket boosters. Speaking of difficulty, developers nerfed Drag Tires physics for a more expected and realistic behavior. They are no longer the go-to option for record-breaking times in road racing, and all leaderboard entries with drag tires will be removed. Completionists will also be glad to get a new feature that lets you see road discovery percentage in each region, which should make discovering all roads easier while keeping it quite challenging and interesting (I spent quite a long time finding the last road). Festival Playlist is also getting some much-needed fixes, including patches for bugs that allowed completing Seasonal Jobs ahead of time or where weekly challenges would not unlock for some players. Developers will retroactively give reward points to all who could not complete all challenges due to these bugs. Other changes include changes to Horizon Play progression so that it is easier to reach Level 100, audio improvements on lower-spec devices, fixes for visual glitches, including pixelated smoke, and more. Developers also addressed the currently non-working Eliminator, an online mode gamers used to farm credits with a Hummer EV exploit. Playground Games plans to re-enable it soon. As a gesture of goodwill, players will get a free McLaren Sabre. Those who used the exploit will not be banned, but developers plan to roll back credits to a maximum of 10M for all who farmed credits using the exploit. You can find the complete changelog for the latest Forza Horizon 6 update here.
  • 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
      484
    2. 2
      +Edouard
      185
    3. 3
      PsYcHoKiLLa
      122
    4. 4
      Steven P.
      83
    5. 5
      neufuse
      73
  • Tell a friend

    Love Neowin? Tell a friend!