Skip to main content

To Python or not to Python?

I've had a lot of people recommend Python to me as a language I should learn. I have just tripped across this comment on HN:

Not to be a total smartass, but if your Python codebase is not that big yet, then the correct answer is none of the above- rewrite in a compiled language if you find the lack of static checks disturbing.

I have been using "type checked" python for a year and let me tell you, it is not even 10% as good as having a real compiler. Python type checkers are not even close to 100% accuracy.


Now I'm wondering if Python is really a good first language to learn or not.

Comments

  1. It’s good that you’re thinking through problems this deeply. To me, it means that once you arm yourself with some experience, you’ll be ready to think your way through bigger problems. That’s really exciting.

    However, your first language doesn’t matter this much. You seem to be a good writer so I’ll explain it with an imperfect analogy from writing. If I was just learning to speak English, On Writing by Stephen King would be a pretty bad resource. Not because it is bad, but because a newcomer to the language has bigger problems to solve.

    What matters is that you start doing something. Pick an “easy to read” language with good learning resources and start.

    Every different language introduces or solves a different set of problems. And usually, when a language solves one problem, it introduces another.

    The thing is, when you first get started, you likely won’t get stumped by the classes of problems that languages solve or introduce. Instead, you’ll get stumped by the thought processes that go into solving problems. Computers are powerful boxes, yet shitty communicators and learning to express your thoughts in a way they’ll understand will consume most of your early effort.

    I suggested a Rails tutorial on another site. You might love Rails or you might hate it. A lot of people think it is obsolete. A lot of people think it has been a net negative to the field of web dev. But, as a learning resource, that tutorial is excellent. It is free (or you can pay for it). Michael Hartl is an excellent writer and a profoundly good teacher. And, through the tutorial, you will build something that will empower you to recreate a lot of the web/mobile apps you see.

    Good luck.

    ReplyDelete
  2. Thanks!

    Because I applied to their summer school program, I have access to the pre-course for Lambda School. I was not accepted, but I can still finish that.

    I also had a Python course recommended to me, plus the Rails tutorial you recommended.

    I did sleep better this morning. I expect to start working on one or more of these courses soon.

    ReplyDelete

Post a Comment

Popular posts from this blog

New Accounts

You can set up a new account to save your wardrobe but can't order anything until you get measured. Setting up a new account will prompt you to make an appointment with the nearest certified seamstress allowed to measure you. This potentially tells us where to go certify a bunch of new people. If enough people create an account in x city, we make sure to arrange a certified seamstress as soon as possible if there isn't one yet.

The Norway Problem

The Norway Problem - why StrictYAML refuses to do implicit typing and so should you Norway abbreviates as NO. This is a real word and some programs will alter that to a programming command, such as "False." A workaround in some cases is to put it in quotation marks, but you may not know that ahead of time. There are other cases like this, such as a person whose last name is Null . Found via HN . Related reading: Principle of least astonishment A textbook formulation is: "People are part of the system. The design should match the user's experience, expectations, and mental models."

Blobbing

I'm a blogger currently publishing too many blogs on blogspot and I have a stupidly large number of Reddits. Blogspot has a bunch of templates. Their four most recent ones are Contempo, Soho, Notable and Emporio. I only use those four these days because they were made available after planet Earth moved to mobile first as its standard.  Those four are mobile friendly templates. The older ones are not, so they don't play well on a phone and my internet life is 99 percent on my phone. I have a lousy never updated website and lousy never updated reddit called pocket puter because my phone is my window on the world. One part poverty, one part physical limitations from my medical situation.  I don't think I have a single blog using Contempo. I have a few using Notable and Emporio but most of my blogs are the Soho template and I've been removing the pointless decorative photo on the landing page that I used to think I needed  because my sites are pretty stripped down, bare bon...