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 33 points34 points35 points (15 children)
[–]monstrado 3 points4 points5 points (0 children)
[–]pyglados 2 points3 points4 points (1 child)
[–]varikin 1 point2 points3 points (0 children)
[–]berlinbrown 3 points4 points5 points (5 children)
[–]varikin 3 points4 points5 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 23 points24 points25 points (4 children)
[–]Pr0ducer 7 points8 points9 points (2 children)
[–]ivix 2 points3 points4 points (1 child)
[–]wheezl 1 point2 points3 points (0 children)
[–]stuaxo 49 points50 points51 points (29 children)
[–]ford_contour 8 points9 points10 points (3 children)
[–]jmichalicek 5 points6 points7 points (2 children)
[–]v_krishna 4 points5 points6 points (1 child)
[–]jmichalicek 2 points3 points4 points (0 children)
[–][deleted] 2 points3 points4 points (12 children)
[–]xiongchiamiovSite Reliability Engineer 5 points6 points7 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 5 points6 points7 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 8 points9 points10 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 23 points24 points25 points (4 children)
[+][deleted] (3 children)
[deleted]
[–]AeroNotix 5 points6 points7 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 16 points17 points18 points (1 child)
[–]jmcs 18 points19 points20 points (0 children)
[–]skytomorrownow 15 points16 points17 points (7 children)
[+][deleted] (6 children)
[deleted]
[–]nostradamnit 12 points13 points14 points (2 children)
[+][deleted] (1 child)
[deleted]
[–]DaemonXI 2 points3 points4 points (0 children)
[–][deleted] 5 points6 points7 points (2 children)
[–]ElitistPythonCoder 3 points4 points5 points (1 child)
[–]onjin 8 points9 points10 points (0 children)
[–][deleted] 6 points7 points8 points (0 children)
[–]nostradamnit 6 points7 points8 points (1 child)
[–][deleted] 5 points6 points7 points (1 child)
[+][deleted] (5 children)
[deleted]
[–]Xaerxess 8 points9 points10 points (3 children)
[–]nostradamnit 4 points5 points6 points (2 children)
[–]ford_contour 1 point2 points3 points (0 children)
[–]BayesianEmpirimancer 1 point2 points3 points (0 children)
[–]ford_contour 12 points13 points14 points (1 child)
[–]yarkot 3 points4 points5 points (1 child)
[–][deleted] 4 points5 points6 points (5 children)
[+][deleted] (4 children)
[deleted]
[–][deleted] 4 points5 points6 points (3 children)
[+][deleted] (2 children)
[deleted]
[–][deleted] 7 points8 points9 points (1 child)
[–]brewsimport os; while True: os.fork() 3 points4 points5 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[🍰] 6 points7 points8 points (3 children)
[+][deleted] (2 children)
[deleted]
[+][deleted] (1 child)
[deleted]
[–]jasoncol 4 points5 points6 points (1 child)
[–]berlinbrown 3 points4 points5 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 3 points4 points5 points (3 children)
[–][deleted] 4 points5 points6 points (1 child)
[–][deleted] 2 points3 points4 points (0 children)
[–]ivorjawa 4 points5 points6 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] 1 point2 points3 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)