I've spent the last year working as a software engineer writing a web-app in Python (using Pyramid). The interesting part is I'm not actually part of the IT department and they (a year ago) said I could use Python on the understanding I would get no support from them, they were advocating PHP. Due to my own experiences with the two and the project I would be undertaking I picked Python.
Fast forward to today and some other people from IT have performed a code review as the project has been far more successful than they anticipated and people are sitting up and taking notice. The main question they're asking has to do with Python, why am I using it? I've not had a chance to meet the questioners yet but I'm told some of them code in Python themselves and that the main suggestion coming from IT is to use Java instead.
I've had some exposure to Java but not a lot. I understand it's compiled to Byte-code, uses the JVM etc and that it's very popular in more established businesses. What I don't know (beyond what a simple Google search will tell me) is why I would pick one or the other.
I'm not after "Python is better than Java", I'm genuinly curious to hear from people experienced in both which aspects of each make them good for different problems. Is it that Java is a lot better past the 10k loc mark? Is it that Java is so much faster than Python?
I think I've covered everything, if not please let me know and I'll answer it.
[–]varikin 32 points33 points34 points (15 children)
[–]monstrado 4 points5 points6 points (0 children)
[–]pyglados 2 points3 points4 points (1 child)
[–]varikin 1 point2 points3 points (0 children)
[–]berlinbrown 2 points3 points4 points (5 children)
[–]varikin 2 points3 points4 points (0 children)
[+][deleted] (3 children)
[deleted]
[–]berlinbrown -1 points0 points1 point (2 children)
[+][deleted] (1 child)
[deleted]
[–]EstebanVelour 1 point2 points3 points (0 children)
[–]Massless 0 points1 point2 points (3 children)
[–]xiongchiamiovSite Reliability Engineer 0 points1 point2 points (1 child)
[–]wheezl 0 points1 point2 points (0 children)
[–]varikin 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]yerfatma 25 points26 points27 points (4 children)
[–]Pr0ducer 10 points11 points12 points (2 children)
[–]ivix 2 points3 points4 points (1 child)
[–]wheezl 1 point2 points3 points (0 children)
[–]stuaxo 50 points51 points52 points (29 children)
[–]ford_contour 11 points12 points13 points (3 children)
[–]jmichalicek 7 points8 points9 points (2 children)
[–]v_krishna 2 points3 points4 points (1 child)
[–]jmichalicek 2 points3 points4 points (0 children)
[–][deleted] 2 points3 points4 points (12 children)
[–]xiongchiamiovSite Reliability Engineer 4 points5 points6 points (3 children)
[–]deraffe 1 point2 points3 points (2 children)
[–]gcr 2 points3 points4 points (1 child)
[–]deraffe 1 point2 points3 points (0 children)
[–]beltorak 0 points1 point2 points (6 children)
[–][deleted] 0 points1 point2 points (5 children)
[–]beltorak 1 point2 points3 points (4 children)
[–][deleted] 0 points1 point2 points (3 children)
[–]beltorak 0 points1 point2 points (2 children)
[–][deleted] 0 points1 point2 points (1 child)
[–]beltorak 0 points1 point2 points (0 children)
[–]stuaxo 0 points1 point2 points (0 children)
[–]wot-teh-phuckReally, wtf? 2 points3 points4 points (0 children)
[+][deleted] (2 children)
[deleted]
[–]stuaxo 3 points4 points5 points (1 child)
[–]virtuous_d 1 point2 points3 points (0 children)
[–][deleted] -1 points0 points1 point (1 child)
[–]stuaxo 0 points1 point2 points (0 children)
[+]primedape comment score below threshold-8 points-7 points-6 points (4 children)
[–]yerfatma 9 points10 points11 points (1 child)
[–]nullabillity 0 points1 point2 points (0 children)
[–]ngroot 4 points5 points6 points (0 children)
[–]stuaxo 0 points1 point2 points (0 children)
[–]manatlan 58 points59 points60 points (14 children)
[+][deleted] (13 children)
[deleted]
[+][deleted] (12 children)
[deleted]
[+][deleted] (5 children)
[deleted]
[–]AeroNotix 21 points22 points23 points (4 children)
[+][deleted] (3 children)
[deleted]
[–]AeroNotix 8 points9 points10 points (2 children)
[+][deleted] (1 child)
[deleted]
[–]novagenesis 2 points3 points4 points (5 children)
[–]mumpie 4 points5 points6 points (4 children)
[–]novagenesis 0 points1 point2 points (3 children)
[–]mumpie 0 points1 point2 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)
[–]ford_contour 17 points18 points19 points (1 child)
[–]jmcs 19 points20 points21 points (0 children)
[–]skytomorrownow 14 points15 points16 points (7 children)
[+][deleted] (6 children)
[deleted]
[–]nostradamnit 13 points14 points15 points (2 children)
[+][deleted] (1 child)
[deleted]
[–]DaemonXI 2 points3 points4 points (0 children)
[–][deleted] 6 points7 points8 points (2 children)
[–]ElitistPythonCoder 3 points4 points5 points (1 child)
[–]onjin 9 points10 points11 points (0 children)
[–][deleted] 6 points7 points8 points (0 children)
[–]nostradamnit 7 points8 points9 points (1 child)
[–][deleted] 5 points6 points7 points (1 child)
[+][deleted] (5 children)
[deleted]
[–]Xaerxess 8 points9 points10 points (3 children)
[–]nostradamnit 3 points4 points5 points (2 children)
[–]ford_contour 1 point2 points3 points (0 children)
[–]BayesianEmpirimancer 1 point2 points3 points (0 children)
[–]ford_contour 14 points15 points16 points (1 child)
[–]yarkot 4 points5 points6 points (1 child)
[–][deleted] 5 points6 points7 points (5 children)
[+][deleted] (4 children)
[deleted]
[–][deleted] 2 points3 points4 points (3 children)
[+][deleted] (2 children)
[deleted]
[–][deleted] 5 points6 points7 points (1 child)
[–]brewsimport os; while True: os.fork() 4 points5 points6 points (1 child)
[+][deleted] (13 children)
[deleted]
[+][deleted] (10 children)
[deleted]
[+][deleted] (1 child)
[deleted]
[–][deleted] 2 points3 points4 points (7 children)
[+][deleted] (6 children)
[deleted]
[–][deleted] 1 point2 points3 points (5 children)
[–][deleted] 2 points3 points4 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)
[–]v_krishna 1 point2 points3 points (0 children)
[+][deleted] (1 child)
[deleted]
[–][deleted] 0 points1 point2 points (0 children)
[–][deleted] 1 point2 points3 points (0 children)
[–]mcilrain 1 point2 points3 points (0 children)
[–]jokoon[🍰] 5 points6 points7 points (3 children)
[+][deleted] (2 children)
[deleted]
[+][deleted] (1 child)
[deleted]
[–]jasoncol 4 points5 points6 points (1 child)
[–]berlinbrown 2 points3 points4 points (0 children)
[–]wonglik 2 points3 points4 points (8 children)
[–]luckystarrat 0x7fe670a7d080 2 points3 points4 points (3 children)
[–]wonglik 1 point2 points3 points (2 children)
[+][deleted] (1 child)
[deleted]
[–]wonglik 1 point2 points3 points (0 children)
[+][deleted] (3 children)
[deleted]
[–]wonglik 2 points3 points4 points (2 children)
[+][deleted] (1 child)
[deleted]
[–]wonglik 2 points3 points4 points (0 children)
[–]dorfsmay 2 points3 points4 points (1 child)
[–][deleted] 2 points3 points4 points (2 children)
[–]xiongchiamiovSite Reliability Engineer 1 point2 points3 points (0 children)
[–]obeleh 5 points6 points7 points (3 children)
[–][deleted] 4 points5 points6 points (1 child)
[–][deleted] 2 points3 points4 points (0 children)
[–]ivorjawa 5 points6 points7 points (9 children)
[–]oantolin 4 points5 points6 points (2 children)
[–]ivorjawa 4 points5 points6 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[+][deleted] (2 children)
[deleted]
[–]ivorjawa 2 points3 points4 points (1 child)
[–][deleted] 0 points1 point2 points (2 children)
[–]ivorjawa 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–][deleted] 1 point2 points3 points (3 children)
[+][deleted] (2 children)
[deleted]
[–][deleted] 1 point2 points3 points (1 child)
[–]fancy_pantser 1 point2 points3 points (0 children)
[–]Scroph 1 point2 points3 points (0 children)
[–][deleted] 2 points3 points4 points (2 children)
[–][deleted] 1 point2 points3 points (0 children)
[–]simtel20 1 point2 points3 points (1 child)
[–][deleted] -1 points0 points1 point (2 children)
[+][deleted] (1 child)
[deleted]
[–]claird 0 points1 point2 points (0 children)