Announcement

Collapse
No announcement yet.

Dropbox Announces Their Own Open-Source Python

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • #16
    Originally posted by litfan View Post
    Bullshit. Google's Go directly competes with python on the web server side. Javascript is directly competing with Python for server apps now too. Virtually every company I work with is switching away from Django to node.js and other options.

    You're the clueless one if you think Python has any chance int he next 5 years to remain relevant.
    Python is used in a lot of projects for code generation and parsing (I use it for processing things like the Unicode Character Database). Mozilla use it for generating WebIDL bindings and part of their build/test system, WebKit/Blink are using it as part of their build system and several of their script-based tools. It is also used in projects using the scons build system, by the mercurial version control system, by many Ubuntu projects and more.

    On the web-side, dropbox and reddit are using a Python-based back-end.

    Just because there are many different options in different languages for generating websites does not mean that python is dying.

    According to http://readwrite.com/2012/06/05/5-wa...e-most-popular, Python ranked near the top in terms of the number of tagged questions on stack overflow and the number of projects on GitHub. Python hadn't changed position much from 2010 (http://readwrite.com/2010/12/10/rank...ming-languages), remaining in the upper corner. That is, statistically it showed no shift in position. The same applies for 2014 (http://redmonk.com/sogrady/2014/01/2...rankings-1-14/).

    For the GitHub statistics, counting projects created in 2013 (http://adambard.com/blog/top-github-...r-2013-so-far/) the rank 1-10 is JavaScript (22.41%), Ruby (18.57%), Java (13.37%), PHP (9.71%), Python (8.06%), C++ (6.65%), C (5.74%), Objective-C (3.08%), C# (2.73%) and Shell (2.42%). Note that these statistics are biased toward JavaScript and Ruby as GitHub is popular with web developers and the Ruby community.

    However, given those statistics, Python was 5th in 2013 and 6th in 2012, so actually moved up a place (as a result of C falling from 4th in 2012 to 7th in 2013). And, accoding to Ohloh monthly commit stats, Python is growing faster than Ruby (http://sogrady-media.redmonk.com/sog...e-rankings.jpg).

    Comment


    • #17
      Originally posted by litfan View Post
      Bullshit. Google's Go directly competes with python on the web server side. Javascript is directly competing with Python for server apps now too. Virtually every company I work with is switching away from Django to node.js and other options.

      You're the clueless one if you think Python has any chance int he next 5 years to remain relevant.
      I'm using both Python and Go and they do have vastly different strengths and design goals:

      1. Python: It's has ridiculously strong data structures and is a godsend for anything data analysis. Performance is not so great, but it's excellent to create quick prototypes. The standard library is very well made and designed to get things done fast. Python is a capable scripting language.

      2. Go: It's strength is in concurrency and speed. The data structures are a *lot* less flexible than Python being statically typed (ever tried to do calculations with mixed types like integer and float32/64.. prepare for a lot of type-conversions). It's shines if you want to build a web server quickly. Technically it's a systems programming language.

      Now Django and node.js are frameworks. They are nice, but not a panacea to anything. Raw Python is a very useful tool on it's own and is not going anywhere. Nothing even remotely as elegant for analyzing data is anywhere on the horizon. JavaScript is nice because it targets the browser which has a lot of benefits (no installation required), but needs a lot of catching up when it comes to accurately crunching data or maintaining big projects.

      So my point is, that I strongly disagree that Python is going anywhere or even getting significantly weaker. I don't see credible alternatives either.

      Comment


      • #18
        Originally posted by litfan View Post
        You're the clueless one if you think Python has any chance int he next 5 years to remain relevant.
        I am a research scientist, and python is used ubiquitously for writing various scientific tools and programs as well as for interface applications between various machines and computers. Considering we are still using machines and computers from the days of early Unix, DOS, and OS/X, then I see all of our python interface machines seeing use for the next 30 years easy.

        EDIT: before anyone gets annoyed and yells at me for our use of older machines, keep in mind that a good fluorimeter or spectrometer bought 30 years ago is still very useful today, but the software to run it only works on OS's of that time. Also, a new one costs $100,000 to $250,000.

        Moral of the story, the software writers pick up a language, make a peice of software and then move on. But us "USERS" of thier software actually use this long forgotten works for decades at a time as long as its still useful.
        Last edited by dh04000; 04-04-2014, 01:32 PM.

        Comment


        • #19
          Originally posted by schmidtbag View Post
          You clearly have no idea how python works if you think any of those languages you mentioned are competing with it - you're comparing apples to oranges. Ruby is the only language that is similar in usage/purpose to python, and it is notably less popular. Also, the jump the 3.0 wasn't a bad idea. While breaking the compatibility was a little annoying, python supplies scripts to convert your code. I had a roughly 2500 line code that I converted from 2.7 to 3.3 by hand and it only took me an hour to do.

          People don't switch to python 3.x because if they didn't write their code for it, there's a good chance it's going to be a pain to convert. As long as people are actively using 2.7, it isn't going to die, and if it works for them and is still being maintained, I don't really see that as a problem.
          Please consider the option of NOT responding to trolls. Any kind of rational response will just add fuel to the fire. If you ignore them they will eventually get bored and go away.

          Comment


          • #20
            Originally posted by bison View Post
            Please consider the option of NOT responding to trolls. Any kind of rational response will just add fuel to the fire. If you ignore them they will eventually get bored and go away.
            To be honest, the OP to me seemed more genuinely clueless about what he was talking about, than trolling. But yeah... I was surprised too by the amount of replies he got!

            Let me try too: C is dead, C is dead!!! Whoever uses C nowadays is stupid, PHP is sooooo much better!!!

            Comment


            • #21
              Originally posted by brk0_0 View Post
              Take a look at MIT's Julia Language. I know Python and Matlab are the current kings on this land, but Julia is very promissing and VERY fast.
              I know about Julia, but whether it will ever replace Python is still an open question. It has a core set of very dedicated developers, but its community is very, very far from Python's at this point. That may change, but there is no guarantee it will change, especially if python gets a unified JIT system.

              Comment


              • #22
                Originally posted by litfan View Post
                Keep telling yourself that. Maybe one day it'll be true.
                Not everything revolves around the web you know. Python is actually used in Scientific Computing quite extensively
                and it's gaining momentum in this area. Python in it's own is not quite as useful as
                what you can easily do with Python/Cython/C++/C/Fortran etc (see e.g. xdress for how easy it can be to interface C++).
                The use cycle is usually: 1. Prototype in Python 2. Profile to identify hot-spots. 3. Move those parts (usually <5% of codebase) to ${FAVOURITE_COMPILED_LANGUAGE}.

                Comment


                • #23
                  Once again, a team picks up a fancy and trendy language without giving consideration to performance, only to realize later that they need C++ kind of performance. But guess what, a better compiler won't be much helpful if your code is highly dependent on dynamic objects and garbage accumulation (collection as many prefer to call it).

                  Comment


                  • #24
                    Originally posted by sarmad View Post
                    Once again, a team picks up a fancy and trendy language without giving consideration to performance, only to realize later that they need C++ kind of performance. But guess what, a better compiler won't be much helpful if your code is highly dependent on dynamic objects and garbage accumulation (collection as many prefer to call it).
                    Once again, a team picks up a language that allows them to deliver quickly and well, and being able to do so they outperform their competition and establish them as the market leader, to the point they actually can dedicate time and money to contribute back to the language community with a new interpreter... I think this story is pretty similar to that of that other little site you may have come across time to time... what was called? Ah, yes.... Facebook!

                    Comment


                    • #25
                      Originally posted by litfan View Post
                      Keep telling yourself that. Maybe one day it'll be true.
                      Have you ever used Python/Django and Node.JS?
                      I have. What I chooses Django for I would never ever even think about Node for
                      and the same is true in reverse.

                      Comment


                      • #26
                        Originally posted by [wrd] View Post
                        An intern at google tried that and it's called unladen swallow [1].

                        it seems alot more promising to look into the openjdk world. Some people are working on truffle a specializing ast implementation.
                        There is an experimental branch that implements this for python3 ([2]).

                        Actually LLVM is a pretty bad JIT. Some people tried to make an OpenJDK backend that uses LLVM to make a plattform independent JIT called Shark. It was very slow ([3]).


                        [1]: https://code.google.com/p/unladen-swallow/
                        [2]: https://bitbucket.org/ssllab/zippy
                        [3]: http://icedtea.classpath.org/wiki/ZeroSharkFaq
                        They've also tried to use LLVM for a JavaScript JIT and it was pretty bad.

                        Comment


                        • #27
                          Originally posted by Qaz` View Post
                          I use python for a lot of small tools and batch scripts at work. We are a c++ shop, but use python for "scripty things" and build/content management. Neither go or js are hardly alternatives there. Not that I do any heavy lifting in python, but it is excellent in orchestrating the tools that do. Python is king at string management and "batteries included".

                          There is software development being done outside of the web.
                          Indeed... at my day job we developed a cross-platform native GUI for our main product in Python (which was originally written in C++/MFC for Windows only). We also use Python for lots of other things such as our build system (using SConstruct and our own custom code to interact with CVS and Samba), generating C++ code (with Cog), parsing and converting HDL (hardware description language) code to various different file formats, and more.
                          Last edited by shaurz; 04-04-2014, 09:41 PM.

                          Comment


                          • #28
                            Originally posted by quasipedia View Post
                            To be honest, the OP to me seemed more genuinely clueless about what he was talking about, than trolling. But yeah... I was surprised too by the amount of replies he got!

                            Let me try too: C is dead, C is dead!!! Whoever uses C nowadays is stupid, PHP is sooooo much better!!!
                            I may have missed some "<sarcasm>" tag somewhere, but the huge amount of actively maintained C code seems to suggest other wise.

                            ... and good luck writing high performance user/kernel code in PHP...

                            - Gilboa
                            DEV: Intel S2600C0, 2xE52658V2, 32GB, 4x2TB + 2x3TB, GTX780, F21/x86_64, Dell U2711.
                            SRV: Intel S5520SC, 2xX5680, 36GB, 4x2TB, GTX550, F21/x86_64, Dell U2412..
                            BACK: Tyan Tempest i5400XT, 2xE5335, 8GB, 3x1.5TB, 9800GTX, F21/x86-64.
                            LAP: ASUS N56VJ, i7-3630QM, 16GB, 1TB, 635M, F21/x86_64.

                            Comment


                            • #29
                              Originally posted by quasipedia View Post
                              Once again, a team picks up a language that allows them to deliver quickly and well, and being able to do so they outperform their competition and establish them as the market leader, to the point they actually can dedicate time and money to contribute back to the language community with a new interpreter... I think this story is pretty similar to that of that other little site you may have come across time to time... what was called? Ah, yes.... Facebook!
                              Those are the successful examples, what about the other hundreds of projects that never got the financial success needed to write a new compiler? What about the other example where the company got more successful than Facebook and have their own language and compiler team already and still couldn't improve the situation because it has gone beyond fixable (Microsoft)? But hey, let's pick a language that trades performance for quick delivery and leave it up to the users to replace their machines for faster machines.

                              Comment


                              • #30
                                Originally posted by sarmad View Post
                                Those are the successful examples, what about the other hundreds of projects that never got the financial success needed to write a new compiler? What about the other example where the company got more successful than Facebook and have their own language and compiler team already and still couldn't improve the situation because it has gone beyond fixable (Microsoft)? But hey, let's pick a language that trades performance for quick delivery and leave it up to the users to replace their machines for faster machines.
                                First, machine cost = low. Human cost = high. If a company did not achieve financial success through a language that shifted costs towards the machine end of the spectrum, they would only have failed more rapidly if they picked a highly efficient, error-prone, difficult to debug language. There's a reason why organisations like Google, Gnome or Mozilla all developed new languages (Go, Vala, Rust respectively) for moving costs onto machines.

                                Second. To the best of my knowledge none of Dropbox clients is in Python (they are compiled binaries, not PYC files, at least on my machine), so your remark on requiring users to upgrade their machines is just irrelevant.

                                Third. I hate Microsoft, yet... what's wrong with their .NET platform? What are you referring to with "beyond fixable"? If it weren't for the proprietary licences, I would swap C# for PHP any day...

                                Comment

                                Working...
                                X