Welcome!
This is the community forum for my apps Pythonista and Editorial.
For individual support questions, you can also send an email. If you have a very short question or just want to say hello — I'm @olemoritz on Twitter.
Pythonista for Python 3.x.
-
Honestly my preference would be for a single app containing both 2.7 and 3.4, with a preference setting for which interpreter and lib directory gets used at startup. Yes, I'd have to pay for the extra 30+MB of iOS storage to hold that redundancy, but it means there's just one app, and it becomes possible (with an app restart potentially) to switch back and forth as needed.
Also I would happily pay $20 for Pythonista.
Z.
-
For those of us on slow "broadband" lines a double-sized binary would not be that welcome. I would think a separate app, with the old one disappearing over time and stabilised somewhere in between, would be best.
-
Honestly my preference would be for a single app containing both 2.7 and 3.4, with a preference setting for which interpreter and lib directory gets used at startup.
As I said before, this is technically not possible on iOS. The size of the app is not a factor here, but it has to be a single binary (statically linked) which wouldn't work with two different versions of Python.
To be more precise, it would technically be possible, but it requires dynamic linking, which is definitely not allowed by Apple. There is absolutely no chance this would get through review.
-
I haven't read the whole of this thread so I'm not sure if it's been raised already but is there any reason why you can't have a single 2.7 distribution and a 3.4 version that's only available via an IAP. It's a separate app but not one that's publicly available on the App Store. I recently looked into Python training courses at a number of UK colleges for a client of mine and they're still teaching 2.7 in the main but making students available ref the changes/differences/benefits of 3.4.
I'd expect that a good number of Ole's customers pick up Pythonista as a learning tool because is the superb built in documentation. With this being the case it's probably best if the main distribution mirrors what people are being taught in college. I'm not averse to two separate versions being available but it could prove very confusing for Python beginners so I fully understand and appreciate Ole's stance on this so far.
-
I haven't read the whole of this thread so I'm not sure if it's been raised already but is there any reason why you can't have a single 2.7 distribution and a 3.4 version that's only available via an IAP.
It's stated several places in this thread and others on the site that yes, there's a reason why he can't do Python 2.x and 3.x in the same app: iOS apps are required to contain a single executable with no dynamic libraries, and the two versions of Python would collide if they were not separate libraries (can't compile both into the same executable). We'd all love to have it, but it can't practically happen. (Uh, maybe with major hacking on both Python codebases, but it'd be sort of a Frankenstein-ian job of rewiring two brains to one body.)
The alternatives are: a) no Python 3.x ever; b) have a flag day and switch the app over to Python 3.x, dropping Python 2.x support - leaving a bunch of existing users scrambling; or c) release a Python 3.x version in parallel to the Python 2.x version.
Personally, since the next versions of Pythonista and Editorial are going to involve some radical changes anyway, I'd vote for making them "Pythonista2" and "Editorial2", with Python 3.x (only), and keep the existing versions around in maintenance mode.
-
Personally, since the next versions of Pythonista and Editorial are going to involve some radical changes anyway, I'd vote for making them "Pythonista2" and "Editorial2", with Python 3.x (only), and keep the existing versions around in maintenance mode
I would disagree with this as I still believe a version of Pythonista that supports 2.7 should be publicly available and this strategy will mean that only those that already own Pythonista will be able to access a version that supports Python 2.7. As I stated above, I understand and agree with Ole's fears about confusing potential new customers with two separate versions of Pythonista being available on the App Store (especially to those who are new to programming).
And to clarify my question above, I understand that the Pythonista app can't have both 2.7 and 3.4 Python distributions in the same app. My question was whether an IAP can direct the user to a fresh download that isn't publicly available. It's more a question of App Store policy as most IAP's I've encountered effectively switch on content/modules within an existing App.
-
In any case you'd call them Pythonista3 and Editorial3. :-)
Personally I wonder why @omz would continue with Pythonista now that Editorial is well established. Is there something I'm missing here?
-
I am a Python hacker... I use OMZ Software to hack on Python while on the move. I understand why other people get excited about Editorial but it is not my cup of tea. I have very little use for the workflows of Editorial and I find that most of its worldview and User Interface really just gets in the way when trying to write portable Python code. I own both Pythonista and Editorial as my way of supporting Ole's efforts but I rarely fire up Editorial. Different strokes for different folks.
-
Personally I wonder why @omz would continue with Pythonista now that Editorial is well established. Is there something I'm missing here?
You'll shake things up with that last comment @MartinPacker... :)
Different beasts I'd say. Editorial is fundamentally a plain text editor with extended functionality provided through automation workflows and Python scripting, whereas Pythonista is a full blown mobile Python IDE.
Pearsonally I'm only interested in the text manipulation stuff but that doesn't mean that there isn't a place for Pythonista in my IOS workflows, especially when tweaking/testing scripts.
-
Personally I wonder why @omz would continue with Pythonista now that Editorial is well established. Is there something I'm missing here?
In addition to what @ccc and @jonmoore said, Pythonista is actually more successful commercially than Editorial (currently about 2x-3x). Of course, part of that may be due to Editorial not being optimized for iOS 7 yet etc., but I still think Pythonista can appeal to a lot of people with a Python background that I couldn't easily reach with Editorial. While there's a lot of shared functionality, the focus of the apps is just very different, and I'd guess that a lot of folks find Pythonista just by searching for "Python" in the App Store.
I also have quite a lot of ideas to differentiate the apps a bit more going forward, starting with numpy/matplotlib in Pythonista...
And to clarify my question above, I understand that the Pythonista app can't have both 2.7 and 3.4 Python distributions in the same app. My question was whether an IAP can direct the user to a fresh download that isn't publicly available. It's more a question of App Store policy as most IAP's I've encountered effectively switch on content/modules within an existing App.
That's not possible. In-App-Purchases can basically just unlock existing functionality within the app or download content (e.g. new levels in a game, an e-book...), but not any kind of executable code. It's also not possible to have separate apps that are only downloadable via IAP in a different app.
-
I'm glad to read that Pythonista is more successful commercially than Editorial. I'm not a Python programmer, but I could use Pythonista for coding exercise and brainstorming, especially on the go, or while relaxing on the bed or couch. That really helps for my use case. :)
-
@omz, @ccc and @jonmoore I also have both but really only use Editorial. I guess my focus is text but could become more interested in Pythonista if I can fit it into my workflow which would, for example, feature graphics.
I still think Editorial needs better GUI components - such as a list picker - and that might be where Pythonista comes in. Dunno.
Anyhow I'd happily buy Version 2/3 of both.
-
I still think Editorial needs better GUI components - such as a list picker - and that might be where Pythonista comes in. Dunno.
Both will get better GUI components, but a list picker is already available Editorial (the "Select from List" workflow action). Or did you mean something different?
-
Thanks @omz I probably just failed to notice it :-) unless the list isn't programmatically generatable. In which case I didn't. :-( :-)
-
@MartinPacker – You can generate the list programmatically by using workflow variables. Because each list item is a separate line, individual items cannot contain linebreaks though.
-
For what it' worth, I love the simplicity of the existing 'select from list' action, especially when combined with the tab delimiting functionality. Simple but very useful for creating workflows that trigger other workflows. My whole bookmark bar is populated with 'select from list' workflows. :)
-
-
@omz Will play with it. I guess I'm too hung up on everything being a single Python script. Talking of which back to the Python 3 discussion. :-)
-
Gee, I go away for a little bit and miss all the fun...
Personally, since the next versions of Pythonista and Editorial are going to involve some radical changes anyway, I'd vote for making them "Pythonista2" and "Editorial2", with Python 3.x (only), and keep the existing versions around in maintenance mode
I would disagree with this as I still believe a version of Pythonista that supports 2.7 should be publicly available and this strategy will mean that only those that already own Pythonista will be able to access a version that supports Python 2.7.
To be clear, by "maintenance mode" I wasn't suggesting pulling the current versions from the store, just not upgrading them beyond bugfixes. They both work fine on iOS 7 as is.
Short of "no Python 3.x ever", and given that both flavors can't run in the same executable, the remaining choices are either to switch both existing apps to Python 3.x at some point (leaving users with no choice), or to release new "v2" (or "v3", if you will) versions of the apps and keep the current (Python 2.x based) apps around, in which case Ole can either put extra work into keeping all four of the apps in sync, featurewise, or he can leave the current ones pretty much as-is (save for bugfixes) and concentrate new work and features on the Python 3.x versions going forward. I was voting for this latter case (and yes, I completely get that it's Ole's baby, this isn't a democracy, and we can only make suggestions / express preferences).
I was promoting the idea of doing the change at this point because (aside from "hey, more new toys for us"), Ole's recent work points towards releasing new versions of both apps simultaneously, with significant user-visible changes (sounds like Editorial's workflow entry has been "reimagined" because of the iPhone), and with Editorial going Universal.
If Ole doesn't hard-switch both apps (and all the users) over to Python 3.x at some point in the future, there will eventually need to be new Editorial3 / Pythonista3 apps, and casual users will want to see substantial user-visible changes when facing the prospect of paying for a brand new "edition" of an app (particularly on the Editorial side, since it presents to the casual user as "merely" a text editor - Pythonista users, on the other hand, will tend to see Python 3.x itself as a new major feature), and Ole's got those kind of changes in hand already, so it'd be a fitting time to make the jump.
And now I'll stop talking (sorry, I sometimes explain at length in cases where it looks like I'm arguing vigorously for or against something, when I'm actually just trying to clearly convey the precise "flavor" of my point - that's sort of what's going on here - sure, I'd like to see Python 3.x sooner vs. later, but what I'm most anxiously awaiting is the iPhone version of Editorial, so I'll be able to use the same text editor on both iPhone/iPad).
-
Python 2.7.7 was released today: http://hg.python.org/cpython/raw-file/f89216059edf/Misc/NEWS
That leaves just two remaining Python 2 releases: 2.7.8 in 6 months and 2.7.9 in 12 months.