To be fair Kryss, learning JavaScript is a bloody awful way to learn programming. I would still start with C. It’s more challenging but you learn how computers work, properly. It forces you to understand what’s going on under the hood and that will stand you in great stead in the future. JavaScript was created, start to finish in under a fortnight I believe, and it shows.
It was less about the language, more the method and the introduction to the ideas. But fair enough, you know better than I do.
When I was at university, you didn’t have the finals exam on the second week.
You also didn't try to run a marathon just after exiting the womb, then decide that you wouldn't even try walking.
My opinion is that python does not teach you good software engineering principles and you don’t get to understand how and why computer programs actually work. Learning C will give you that. Eventually you’ll want to move to C++ but I’d start with C still. I’ve been doing this professionally for 30 years but this is still just my opinion.
C because it’s more ‘generic’, more similar at core to other programming languages? (Sorry if that’s not phrased very well, I’m not sure how to phrase the question!) So you could learn C, and Python and so on with be learnable ‘automatically’ or much easier?
Is C++ the same as C?
What language(s) would a formal course teach? (No means to fund anything as I’ve already got a degree, just curious.)
I don't know Python, but it seems to be the language they teach beginners these days, so I would stick with that. I'm not convinced getting another book is going to help if you aren't understanding the one you have. Like I said previously, it isn't going to get any easier than this.
Can you give an example of something you don't understand? People might be able to help.
Btw the reason I wouldn't use the book you have is that it's an introduction to programming that uses Python, not a book for an experienced programmer to learn Python. I don't need explanations of loops, variables etc. I would just need to know how Python handles these things.
C because it makes you think about things like requesting memory from the system, remembering to give that memory back. It has something called type safety which means that if you want to store an unsigned integer (a number without any decimal points, and a value of zero or more ) then you declare your variable to specify that e.g.
unsigned int myMumber;
If you then give it a value like this:
myNumber = 7;
That’s fine. But if you try to do either of these:
myNumber = 3.14;
Or
myNumber = -5;
Then the compiler will give you an error.
Non type safe languages tend to allow you to just assign anything to your variable whenever you want. It means you don’t have to plan up front and results in IMO sloppy design and can lead to bugs that you don’t notice until your program is running.
C++ is an object orientated version of C. Not the same but uses the same syntax as C. Generally speaking a C++ compiler will usually happily compile C code.
Penguin, it seems like a year has passed since we spoke on this thread. How about watching youtube python tutorials instead? Seems like books aren't cutting it for you. That hanes book is a good GCSE pupil book. I have it.
Penguin, it seems like a year has passed since we spoke on this thread. How about watching youtube python tutorials instead? Seems like books aren't cutting it for you. That hanes book is a good GCSE pupil book. I have it.
I tried a few ages ago, found it harder actually as I can’t split concentration between hearing/listening and reading/typing well if I have to do both; try and it’s sensory overload time. (Apparently it comes with dyslexia, which I have.) Quickly got in a huge muddle that way.
I feel like rather than jumping around between books, languages and so on, you just need to focus on one thing. No resource will ever be perfect. If a something in your book doesn't make sense, google it and find another explanation. Or ask here!
Yeah, I think I'm gonna take back my recommendation to learn C. I've probably forgotten how hard it is to learn initially. Go with Python. So much help and examples out there.
C and C++ are terrible languages to start with because they require massive discipline and have loads of flaws, pointers will almost certainly trip you up and they are fundamental to the language, plus there are less jobs in this area these days.
Python is much easier to learn because there are less pitfalls, the very structure of the language forces you to format it in a certain way and the reason I'd go that route is because it's about learning fundamentals such as structures and variable types - the language is largely irrelevant, but hiding more of the metal makes it simpler.
Also, the starter recommendations made through these threads are starter recommendations - it doesn't get easier, if you can't wrap your head around the fundamentals, you will never get it - you can't break it down further than that, either you get it or you don't. Programming isn't for everyone, and just the same as painting or singing, some people simply cannot do it.
Well put. Generally around 10% of pupils in secondary school make good CS students. There is a push that everyone should do it, but most simply won't, or can't.
I feel like rather than jumping around between books, languages and so on, you just need to focus on one thing. No resource will ever be perfect. If a something in your book doesn't make sense, google it and find another explanation. Or ask here!
No, not really. I struggle to type in anything, particularly the numbers parts, so it all kind of falls apart when I tried some of the so-called ‘beginners’ books.
It’s frustrating as I don’t know how to ask, as much as I don’t know who or where to ask. Plus if you google for anything about any of this, it’s a minefield of scammers and people trying to sell you stuff!
Comment