Impact of Using Outdated Resources

Started by
2 comments, last by Daaark 11 years, 3 months ago

Hello everyone!

I recently stumbled across codeacademy as well as other free coding websites who's approach to teaching I really enjoy(more interactive and quiz based). I was just doing their HTML tutorials but soon I noticed that it was "old code". The reason I noticed this is because I had also been reading in parallel "HTML & CSS design and build websites". This book teaches you HTML and CSS while trying to push the reader in the direction of HTML5. It does this by making notes of where old code is being used and let's the reader know how it is now implemented in the new standard.

For this reason, I have no problem with going through the tutorials at codeacademy for HTML and CSS because my book will let me know which are old methods and which aren't. However, there are other areas of programming like the Python tutorials and Javascript tutorials that I am not sure about. I know for a fact that the codeacademy tutorials use Python 2.x and that the standard is now Python 3.

Do you think it would greatly impact me if I went through those tutorials and then moved on to the newer material? If so, is there "interactive" material you could suggest for these? This applies to all programming languages and programming topics in general but at the moment the most relative topics for me would be:

-Python(I have Dive into Python 3, but no interactive material)
-Javascript(I have nothing)
-HTML & CSS (I have HTML & CSS design and build websites)
-OpenGL(I have nothing)

Thanks for the help as always!

-Adrian

Advertisement
Python 2.x isn't an outdated standard, it's just an older version.

Any learning material you can use to begin will be good. The basic concept of programming never changes. Once you understand programming enough, you can pick up new languages easily, and adapt to newer versions of languages you already know. New versions of programming languages are mostly about new features, and don't make big changes.

You usually only need to read a list of changes to adapt to a new version: http://docs.python.org/3/whatsnew/3.0.html

[quote name='Daaark' timestamp='1357703697' post='5019350']
Python 2.x isn't an outdated standard, it's just an older version.
[/quote]

Thank you! I didn't think of it that way. I guess the reason why I'm confused is because like in OpenGL, there's a huge difference between the older versions which are now deprecated(fixed function pipeline) vs the programmable pipeline. Python's not my first language so I guess I should be fine just diving in with what I got and adapting to the new stuff as it comes :]

Only one other thing though that had piqued my interest. When I was searching around for differences between HTML 4 and HTML 5 and Python 2.x and Python 3 I found a lot of negativity directed towards the newer versions and people saying that the switch would never happen and that it was a bad idea and stuff. Why is this? Is it just because of the amount of the code base that would then become legacy code? As far as I understand it in HTML's case, "switching" to HTML 5 isn't going to affect people who wrote their code in the older standard.

But anyway I digress. Thank you very much for your help.I will go ahead and get started on Python.

They do this because the internet is where miserable people go to whine and exaggerate. Misery loves company. The sky is not falling. It's perfectly fine to keep using the older version of python if they don't like the newer version. Sometimes to improve something, you have to make breaking changes.

Python is a language that made breaking changes to improve something and is better off for it.

C++ is a language that tries as best as it can to maintain backwards compatibility with both older versions of itself, and with class C programs.

Both methods have pros and cons.

C++ has lots of useless baggage from the past, and there are often 1000 ways to do something. There are lots of parts of C++ that could have been much better if they were willing to break backwards compatibility. But too many people and projects depend on that backwards compatibility.

Python got rid of the baggage, but now a lot of old code is broken. If you want to take advantage of Python 3.x's features, than you have to bite the bullet and port your code to the newer version. But you can continue using 2.x style python for as long as you like.

These changes won't effect you, because you have no investment in Python 2.x code, or the way it works. You'll never make a big project in 2.x that requires future maintenance. Most likely, you'll just work through the 2.x example programs, and write a few small programs of tyour own, and then move on to 3.x like the 2.x versions never existed.

Once you have been programming for a few years, you will have used at least half a dozen different languages. You won't need to remember every last detail about all these languages. You will have your references open, and your editor's auto-complete there to help you. Never memorize what you can look up!

Programming is about taking data and applying some kind of transformation to it. It doesn't matter what version of what language you are using. Those are the least important details. The important thing is your problem solving skills.

This topic is closed to new replies.

Advertisement