Next Steps

You’re not a programmer quite yet. I like to think of this book as giving you your “programming black belt.” You know enough to start another book on programming and handle it just fine. This book should have given you the mental tools and attitude you need to go through most Python books and actually learn something. It might even make it easy.

I recommend you check out some of these projects and try to build something with them:

• Learn Ruby The Hard Way (https://learnrubythehardway.org): You will learn even more about programming as you learn more programming languages, so try learning Ruby, too.

• The Django Tutorial (https://docs.djangoproject.com/en/1.11/intro/): Build a web application with the Django web framework.

• SciPy (https://www.scipy.org): Check this out if you’re into science, math, and engineering.

• PyGame (http://www.pygame.org): Make a game with graphics and sound.

• Pandas (http://pandas.pydata.org): Use this for doing data manipulation and analysis.

• Natural Language Toolkit (http://www.nltk.org): Use this for analyzing written text and writing things like spam filters and chat bots.

• TensorFlow (https://www.tensorflow.org): Use this for machine learning and visualization.

• Requests (http://docs.python-requests.org): Learn the client side of HTTP and the web.

• ScraPy (https://scrapy.org): Try scraping some web sites to get information off them.

• Kivy (https://kivy.org): Create user interfaces on desktops and mobile platforms.

• Learn C The Hard Way (https://learncodethehardway.org): After you’re familiar with Python, try learning C and algorithms with my other book. Take it slow; C is different but a very good thing to learn.

Pick one of the preceding resources, and go through any tutorials and documentation they have. As you go through documentation with code in it, type in all of the code and make it work. That’s how I do it. That’s how every programmer does it. Reading programming documentation is not enough to learn it; you have to do it. After you get through the tutorial and any other documentation they have, make something. Anything will do, even something someone else has already written. Just make something.

Just understand anything you write will probably suck. That’s alright, though; I suck at every programming language at first. Nobody writes pure perfect gold when they’re a beginner, and anyone who tells you they did is a huge liar.

How to Learn Any Programming Language

I’m going to teach you how to learn most of the programming languages you may want to learn in the future. The organization of this book is based on how I and many other programmers learn new languages. The process that I usually follow is as follows:

1. Get a book or some introductory text about the language.

2. Go through the book and type in all of the code, making all of it run.

3. Read the book as you work on the code, taking notes.

4. Use the language to implement a small set of programs you are familiar with in another language.

5. Read other people’s code in the language, and try to copy their patterns.

In this book, I forced you to go through this process very slowly and in small chunks. Other books aren’t organized the same way, and this means you have to extrapolate how I’ve made you do this to how their content is organized. The best way to do this is to read the book lightly and make a list of all the major code sections. Turn this list into a set of exercises based on the chapters, and then simply do them in order one at a time.

The preceding process also works for new technologies, assuming they have books you can read. For anything without books, you do the above process but use online documentation or source code as your initial introduction.

Each new language you learn makes you a better programmer, and as you learn more languages they become easier to learn. By your third or fourth language you should be able to pick up similar languages in a week, with stranger languages taking longer. Now that you know Python you could potentially learn Ruby and JavaScript fairly quickly by comparison. This is simply because many languages share similar concepts, and once you learn the concepts in one language they work in others.

The final thing to remember about learning a new language is this: Don’t be a stupid tourist. A stupid tourist is someone who goes to another country and then complains that the food isn’t like the food at home (“Why can’t I get a good burger in this stupid country?!”). When you’re learning a new language, assume that what it does isn’t stupid, it’s just different, and embrace it so you can learn it.

After you learn a language, though, don’t be a slave to that language’s way of doing things. Sometimes the people who use a language actually do some very idiotic things for no other reason than “that’s how we’ve always done it.” If you like your style better and you know how everyone else does it, then feel free to break their rules if it improves things.

I really enjoy learning new programming languages. I think of myself as a “programmer anthropologist” and think of languages as little insights about the group of programmers who use them. I’m learning a language they all use to talk to each other through computers, and I find this fascinating. Then again, I’m kind of a weird guy, so just learn programming languages because you want to.

Enjoy! This is really fun stuff.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
34.206.1.144