A Beginner’s Thoughts on Python

What?! That’s exactly what pythons look like… I’ve seen ’em!

Anyway, so I’ve recently started learning Python (the coding language, not the snake) in the hope of being able to apply for a Data Science MSc (because I was denied everything else I wanted to do) in the summer (4 months away!).

Because there are so many computer programs and interfaces, I was initially told…. Hmm…. Can I remember? I think I was told to learn Java, which also means learning Eclipse or similar, then it’s like “No, no! Learn MongoDB” Now MongoDB is a NoSLQ database… to me, at this stage, it all involves code therefore I struggle to tell the difference between interfaces, databases, code languages and whatever else you nerds got over there in Nerdsville. This is not my world (yet).

And there really are so many different “things” in the computer programming world. Looking at a list of coding languages and interfaces recently nearly knocked me sick. Then there’s not just coding languages, there’s also modified coding languages like you have Python and Java but then they had some babies including Jython and Jython++ and JythonMCQ and Jython GeoM – I’m making these names up cuz I can’t remember the real ones but you catch my drift, right? This kind of thing looks very scary to a newbie.

Coding was a big deal when I was a kid. Every dork I knew was doing HTML and C++ (whatever they are…). I should have joined them but I was too busy obsessing over pop stars. One guy I knew back then is now the founder of some fancy IT consultant company. And I hate his successful a$$! :cries:

So anyway, I started with Java then moved onto JavaScript because MongoDB’s natural coding is very similar to JavaScript but then “No, No! Learn Python!” So now I’m learning Python (the language, not the snake! (I swear, it’s all the same to me at this stage!)).

I’d like to take a Computer Science path that involves working with Big Data databases because that interests me (yes, even though I know nothing about it, thanks for reminding me!). I just like organizing stuff… my happy place is a massive library where I have to alphabetize all the books. Anyway, as with languages, there’s loads and loads of databases (another list that will knock a newbie sick). People keep mentioning “Hadoop” to me which I keep calling “Hadloop” and it doesn’t mean much to my newbie ears except I think it’s an elephant, and erm, it’s grey? Maybe it’s a S….L……..- S……Q……L…? Forget it, I have no idea!

Well, anyway…
I was actually reluctant to learn Python because I’d heard junk about it and had already been around the houses with other languages. But having started with Java (which I kinda liked but meh…) and then doing JavaScript (which I kinda liked but meh…), Python is the language I’ve been looking for! It’s like Goldilocks and the Three Bears and Python is my “just right”.

I have no idea what it does, or what it’s supposed to do, or what I can do with it. But it’s a great starter language because unlike Java you don’t need all these complicated twiddly bits;
(like the semi-colon);
you just type and go.

It’s a very “common sense” programing language. With Java, it’s like you have to explicitly state everything you want to do in minute steps, it’s not able to interpret what you’re getting at or use common sense.  In Python, the coding is much more streamlined than Java. It’s easier to read, interpret and execute, making it a good beginner language.

Currently I have quite a few Python tutorial I’m going through one-by-one but I have started with Hands On Python by Dr. Andrew N. Harrington (available here). I think it’s for a slightly older version of Python than I have but that’s not caused me any major problems so far. It comes with (via a link) downloadable example programs (programs…? Code…? Stuff…? It’s all the same to me!) which you work with as part of the tutorials.

Like the title suggests, it’s very “hands on” and as a kinesthetic learner who is not good at reading long texts, I find this book to be very user-friendly, beginner-friendly and it gets you coding right away. Some of the Java books I used to read were not well-written for newbies, giving limited explanations and assuming prior knowledge and harping on about things you don’t need to know unless you’re the CEO of a computer company. Hands On Java lays everything out in a simple and clear format.

So yea, I have a long way to go with Python. At the moment, I only get about 3 hours a week with it (because: busy!). The basic code I’m reading makes sense to me, I can execute other people’s code (by copying it out), and write my own super-basic code. The challenge is creating my own more complex code or copying other people’s code from memory. Ideally, I need to be able to do that by summer if I want to have a shot at the Masters course.

Anyway, I’ll post an update as I go on.

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s