momijizukamori: Grey tabby cat with paws on keyboard and mouse. The text reads 'code cat is on the job', lolcats-style (CODE CAT)
Cocoa ([personal profile] momijizukamori) wrote2017-07-11 04:38 pm
Entry tags:

some thoughts on python

I've been playing around with Python more lately, in part because it's one of the two main languages in my company's codebase (the other being Java, which just, kill me now, basically), and in part because it's like the one language with a good selection of OSS web frameworks that isn't PHP or Javascript. PHP is sort of a hot mess of a language, and most of the frameworks have security holes of varying degrees (I'm pretty sure my Drupal install is how my last host was compromised), and Javascript as a primary web framework offends me on general principle. I have a bit of a reputation as a Perl stan - I can recognize it's shortcomings, but I really enjoy using it. Unfortunately Perl web frameworks fall into two categories - so minimalist you're doing 99% of the work yourself (Catalyst) or a full app that you can't really change much on without a ton of work (Movable Type). In contrast, there's a number of popular, actively supported Python frameworks ranging the whole spectrum from lightweight to mostly-complete CMS.

And I'll admit some of my hesitation to get deep into Python is some hype backlash because Python people tend to be really evangelical about Python. But after doing more work in it.... I can kind of see why. There's a lot of the features I love about Perl - dynamic typing, good string support, agnostic to functional vs OO paradigms - without Perl's frustrations around variable passing and passing references/values. I do miss Perl's variable interpolation working in Python 2.7, but apparently they've added something similar in 3.5? I also appreciate that the Python community seems to be really good about docs - that's made a huge difference in getting up to speed on stuff. I ended up working with Flask, and got like 80% of a new cosplay site going over the course of about four days. The site is now up to 90% or so - I'll probably share a link here once I've got more content and whatnot up.

But yeah, you can probably consider me a convert here.
silveradept: A kodama with a trombone. The trombone is playing music, even though it is held in a rest position (Default)

[personal profile] silveradept 2017-07-13 03:10 pm (UTC)(link)
Python is an excellent language and a good one, I'd say, for anyone who wants to look into programming but feels intimidated by talking to computers.
silveradept: A kodama with a trombone. The trombone is playing music, even though it is held in a rest position (Default)

[personal profile] silveradept 2017-07-14 01:48 pm (UTC)(link)
Quite. And there are things about their data types that you can do that you can't do to the ones they most resemble. Python requires you to think slightly differently if you're coming to it from any other language. Not a bad thing, but it can be disorienting at times.