6 ms·
Python's Future: A Global Perspective
- peterhunt 14y agoI love Python. But we're seeing a fundamental shift from desktop to mobile that's the same magnitude, if not greater, than the shift from desktop app to web. And the Python community, by and large, doesn't seem to care. I think Python is such an elegant language and deserves to be more than the glue that holds together UNIX-based systems.
- nacker 14y agoWell, from a Python point of view, I don't really care if everyone in the world gets a smartphone tomorrow. Can you really imagine a future in which people all over the worlds do not work at desks? Or one in which people sit at desks doing all their work on a tablet or a smartphone? The issue is an ergonomic one, and I just don't buy the idea that the "shift from desktop to mobile" is "the same magnitude, if not greater, than the shift from desktop app to web". Python will not end up as mere glue. As the article points out, there is going to be a large supply of new Python programmers (or "non-programmers") arriving shortly, due to educational programs and Pi type devices. Remember "Computer Programming for Everybody", or "CP4E"? http://www.python.org/doc/essays/everybody/ http://www.python.org/doc/essays/everybody/ That was the original vision for Python, and it is slowly happening, don't worry.
- tzs 14y agoI'm not sure I buy the ergonomic argument against sitting at a desk working on a tablet. Wouldn't the ergonomics be similar to that of sitting at a desk working with books, writing pads, and pencils? I don't recall books/pads/pencils having the major ergonomic risks that we get with desktop computers, but it is possible I am just not remembering well.
- mamcx 14y agoIs not necesary to imagine it. Is happening right now. ANyway, a tablet/smartphone will approach desktop-class functionality (but on-top of smart touch). I wish badly a way to develop* my iOS apps with python. Obj-c is improving - the main reason I don't move to monotouch, lua or ruby -, and is necessary transparent support to the cocoa-apis... but anyway... P:D. With develop, with the same support or better as mono-touch, so not only games...
- andybak 14y agoEarly days but http://kivy.org/ http://kivy.org/
- dmorgan 14y ago>Is not necesary to imagine it. Is happening right now. Any statistics on that? Because, 10 guys and their dogs aside, I haven't notice any office workers replacing their desktops for tablets. Some managers and such might use them, but those were never desk bound office workers to begin with.
- mamcx 14y agoWell, if by "office workers" we rule out "managers and such" then yeah... nobody is replacing them! The statistics are in the open and well know by now. The industry is moving fast & furios. The mobile space is bigger than the PC/Desktop, and the ONLY way to the dumb phones of today is up. Will not kill the desktop, and as developer, I don't see a mass migration to mobile in the near future, but the thing is moving in that direction -probably as mix between tablet/desktop/smartphone...
- rdtsc 14y agoThe location of where you sit is sort of orthogonal to the device you can use. If say your smart phone was powerful enough to edit and compile files (I assume you are a developer) then just lay your smart phone down, let it wirelessly connect to your large screen TV and your keyboard, and now you can do the same thing your desktop does now without having a large motherboard, hard drives, loud fans etc. You are basically arguing that keyboards and chairs are here to stay which I think short of a good mind-to-computer interface that is true. But just not sure about the current hardware and operating systems.
- kdsudac 14y agoSo by wirelessly docking your smartphone you've basically turned it into a hyper-portable desktop, right? So now the only difference between your smartphone-desktop and your traditional-desktop is the OS it runs, right? So which OS do you want to run on your desktop? I can promise it isn't a mobile OS. Maybe a new hybrid OS (Ubuntu for Android or Windows 8) can offer the best of both worlds, but I'm skeptical.
- hcarvalhoalves 14y agoI couldn't care less for mobile, and I think everybody who makes money with mobile apps thinks the same. The language used on mobile apps is largely irrelevant. All devices are proprietary to an extent, and the vendor dictates which SDK you use. Also, it doesn't make any difference because you won't be using any external libraries anyway - you're at the mercy of the API it ships with.
- dmorgan 14y ago>I couldn't care less for mobile, and I think everybody who makes money with mobile apps thinks the same. Everybody who makes money with mobile apps "couldn't care less for mobile"? What? >Also, it doesn't make any difference which language you use because you won't be using any external libraries anyway - you're at the mercy of the API it ships with. What? I can use whatever C# library I want with the MonoTouch bindings. And the same holds true for all other bindings...
- hcarvalhoalves 14y agoI meant I don't care for Python in mobile, and I think the people being pragmatic and making money on mobile feel the same. Regarding bindings... would it make difference for Python? It's not like you're going to run NumPy on your iPhone. The biggest selling point I see in bindings is the code reuse between platforms. Many cross-platform mobile apps are just web front ends, though.
- smegel 14y agoWe are not seeing a shift from desktop to mobile. We are seeing a shift from mobile plus the backend servers that enable mobile applications. And Python is the language choice of many for developing backend applications and tools alongside other high performance technologies like Java and Go (no this isn't a plug for GAE). And Python's dominance as the language of choice for scientific applications (on-top of various C/Fortran libraries of course) is only becoming more and more cemented as time goes on. And we should probably acknowledge the fairly substantial role Python plays in cross-platform and UNIX GUI development, especially in conjunction with Qt. Probably not a lot of growth in this area, especially as tablet devices take over, but worth a mention. So Python might not rule (or even be viable) in every facet of software development, but being a central player in mobile backend development (an area that will expand in line with mobile itself), and the lingua franca for scientific programming is none too shabby an achievement. Hey, it could be worse - right Perl? ;-)
- jlarocco 14y agoPython is most popular in areas that aren't switching to mobile. To the best of my knowledge, few end users actually run Python. For desktop applications that the "average user" interacts with, Python is even less popular than Java/Swing. Can you name any popular Windows applications written entirely in Python? The majority of people using Python are using it in ways that aren't going to be replaced by mobile devices any time soon. Nobody's going to replace Django running on a server with some other framework running on a mobile device. Nobody is going to throw away Blender and start doing 3D modeling on their iPhone. There'd be little point in making a scipy library for Android. Python doesn't have to dominate every single niche on every platform everywhere to be successful.
- Volpe 14y agoBlender is written in C++ isn't it? And yes there is definitely a future market in tablets for 3D sculpting/modelling (There are already apps available). Touch is a powerful metaphor in 3D modelling.
- Shish2k 14y agoIt's a C++ OpenGL framework, with python used for the interface and scripting
- smegel 14y ago> ...Python is even less popular than Java/Swing. Can you name any popular Windows applications written entirely in Python? Can you name any popular Java/Swing desktop apps that aren't development tools? I don't even have Java installed on my Win7 computer and don't recall even a single occurrence where I missed it, ever. I have two Python programs that I use regularly: the popular Calibre eBook management software, and the also quite popular Anki flashcard program (both written in PyQt). I am sure there are many other popular cross-platform desktop apps written the same way, perhaps people just don't realize they are using an app written in Python.
- slurgfest 14y agoApple and Google have determined the APIs they present, and they decided a long time ago not to target or particularly support Python as a language for developing platform apps. So how is this the fault of the Python community?
- lloeki 14y ago> We also made a fairly major misstep when we failed to appropriately advertise the addition of directory and zipfile execution support in Python 2.6 Agreed. I've been working high and low with python for years and I did not know it could do that: > bundle your code with all its dependencies except Python into a directory or zipfile and add a __main__.py file and the Python interpreter will execute it as if it was a script.
- dagw 14y agoI've been programming python for years as well, and I had no idea. Not only that it sounds like the perfect solution to a problem in project I'm currently working on.