4 ms·
Some other reasons: - you use softwares that are scriptable in Python (SIG, Blender, etc) - you write a lot of glue code. That pretty much Python raison de vi
by sametmax 8y ago
Some other reasons:
- you use softwares that are scriptable in Python (SIG, Blender, etc)
- you write a lot of glue code. That pretty much Python raison de vivre.
- you do a lot of data analysis manually. Pandas is the new excel, and jupyter the new matlab.
- you do a lot of sysadmin. Scripting is just easier in a dynamic language.
- you do a lot of CRUD websites. You just can't beat the frameworks from this language for this kind of things. They do most of the work for you, and do security better than you do.
- you want to integrate new members in your team faster. Python is easier to learn than lisp.
- you are coding a GUI. With kivy you can target desktop and mobile with one code base, and some skins are pretty (https://imgur.com/a/IjM0XGW https://imgur.com/a/IjM0XGW). With QT you can do powerful things on the desktop. With wx you can do simple GUI simply.
- you have a lot of different kinds of task at hand, and don't want to have too many different languages in your stack. Python is never the best language at anything, but it's a damn good language for most things, so it makes it a versatile toolbox.
- giancarlostoro 8y ago> - you want to integrate new members in your team faster. Python is easier to learn than lisp. Heh, I listed Python in my resume and got this as my first job (after working at my local college) and I learned it on the job (I had used Python before, but nothing major yet) and I gotta say, not only is it easy to pick up if you know other languages, it's fun to experiment with if you do know other languages! I have only played with Clojure and Racket the most on the other hand, I appreciate them and would love to learn more but I get more done with Python in shorter spans of time.
- pimeys 8y agoOne thing I don't understand here why somebody needs to switch to Python and forget other languages? Sometimes I too hack something fast with Python, but still write lots of Rust and Clojure. Then if I need Python, it is very easy to just write some and get things done.
- msl09 8y agoWhat I don't understand is the necessity of having the video of the naked pirates of the caribbean guy in the corner.
- sametmax 8y agoThat's a picture for my blog (well actually the related twitter account), which essentially deals with Python and porn. I was not going to make a new screen capture just for HN.
- sametmax 8y agoThat's not how it happens. Unless it's impossible (ex, you target a credit card), you usually starts with Python because, if you know it, that's the easiest option for a POC. Then you look if for this project, it limited you in some way. When it does, you use another tech. E.G, you needed something to consume less RAM, or you target the browser, or you want an small APK, you need multi-core AND cheap memory sharing, whatever... But the thing is, short of some very specific constraints, Python is good enough for a lot of things and so we don't "forget" about other languages, we just end up not needing them more often than not.
- deleted 8y ago[deleted]
- uryga 8y agoWow, kivy's material theme improved a LOT since I last saw it a few years ago.
- LyndsySimon 8y agoI agree - I hadn't looked at it in a couple of years; it looks much more native now. I'll have to spend some time to take a look again soon. I also had BeeWare hit my radar again this year at PyCon. The last time I looked it was "just" an IDE, which I had no need for. It turns out they've basically written an entire cross-platform GUI framework since then, and based on my brief conversation with their representatives, it looks to be pretty damned handy. In particular, they mentioned that a minimal iOS or Android app ends up being ~5MB - Kivy's big problem when I last looked at it was that the resultant applications were huge.
- LyndsySimon 8y ago> - you want to integrate new members in your team faster. Python is easier to learn than lisp. I'm not so sure on this point. I've been writing Python for just over a decade now, with a year or so of Ruby thrown in for good measure. At a previous job I was asked to implement an authentication service in Clojure. It took me longer to understand the Clojure ecosystem than to learn to actually write the code. In ~3 weeks I went from having never seen Clojure to having a complete (if minimal) application that authenticated users against third parties via OAuth and issued JWTs. I'd agree that it would be much easier to onboard junior-level developers to a project that's written in Python (or any similar language), but if you're targeting more senior-level people any modern language isn't really going to be a significant barrier. That's especially true for lisps - there just isn't a lot of language structure to learn. Python is a "shallow" language in my opinion - there are only a few layers of complexity between a newbie and complete understanding of a language feature. Lisps are shallower still. >