GUIs - A Modest Proposal

Discussion in 'Python' started by ant, Jun 6, 2010.

  1. ant

    ant Guest

    I get the strong feeling that nobody is really happy with the state of
    Python GUIs.
    Tkinter is not widely liked, but is widely distributed. WxPython and
    PyGtk are both
    powerful, but quirky in different ways. PyQt is tied to one platform.
    And there are
    dozens more.

    Whether or not we like graphics programming, it's not going to go
    away. I get the
    uneasy feeling whenever I start a new project that there should be a
    'better' GUI
    than the ones I currently use (WxPython and PyGtk).

    Fragmentation is our enemy. Our resources are being dissipated. Is it
    not time to
    start again? We have shown that it is possible to do the right thing,
    by creating Python3.

    I ask the group; should we try to create a new GUI for Python, with
    the following
    properties?:

    - Pythonic
    - The default GUI (so it replaces Tkinter)
    - It has the support of the majority of the Python community
    - Simple and obvious to use for simple things
    - Comprehensive, for complicated things
    - Cross-platform
    - Looks good (to be defined)
    - As small as possible in its default form

    If so, what are the next steps?

    The Python SIG on GUIs closed years ago. Should that be revived?

    This is "A Modest Proposal" (J. Swift). In a sense, I am suggesting
    that
    we eat our own babies.

    But don't we owe it to the community?
    ant, Jun 6, 2010
    #1
    1. Advertising

  2. On Sat, Jun 5, 2010 at 7:22 PM, ant <> wrote:
    > I get the strong feeling that nobody is really happy with the state of
    > Python GUIs.
    > Tkinter is not widely liked, but is widely distributed. WxPython and
    > PyGtk are both
    > powerful, but quirky in different ways. PyQt is tied to one platform.
    > And there are
    > dozens more.
    >
    > Whether or not we like graphics programming, it's not going to go
    > away. I get the
    > uneasy feeling whenever I start a new project that there should be a
    > 'better' GUI
    > than the ones I currently use (WxPython and PyGtk).
    >
    > Fragmentation is our enemy. Our resources are being dissipated. Is it
    > not time to
    > start again? We have shown that it is possible to do the right thing,
    > by creating Python3.
    >
    > I ask the group; should we try to create a new GUI for Python, with
    > the following
    > properties?:
    >
    > - Pythonic
    > - The default GUI (so it replaces Tkinter)
    > - It has the support of the majority of the Python community
    > - Simple and obvious to use for simple things
    > - Comprehensive, for complicated things
    > - Cross-platform
    > - Looks good (to be defined)
    > - As small as possible in its default form
    >
    > If so, what are the next steps?
    >
    > The Python SIG on GUIs closed years ago. Should that be revived?
    >
    > This is "A Modest Proposal" (J. Swift). In a sense, I am suggesting
    > that
    > we eat our own babies.
    >
    > But don't we owe it to the community?


    No.

    http://www.cosc.canterbury.ac.nz/greg.ewing/python_gui/

    Geremy Condra
    geremy condra, Jun 6, 2010
    #2
    1. Advertising

  3. ant <shimbo <at> uklinux.net> writes:

    > PyQt is tied to one platform.


    What do you mean one platform?
    Benjamin Peterson, Jun 6, 2010
    #3
  4. On Sat, 2010-06-05 at 19:22 -0700, ant wrote:
    > I get the strong feeling that nobody is really happy with the state of
    > Python GUIs.


    > WxPython and PyGtk are both powerful, but quirky in different ways.


    All widget libraries are quirky - because sophisticated user interfaces
    are complicated. If you make a new one that is sophisticated enough to
    be really useful - it will be "quirky".

    > PyQt is tied to one platform.


    No it isn't.

    > Whether or not we like graphics programming, it's not going to go
    > away. I get the
    > uneasy feeling whenever I start a new project that there should be a
    > 'better' GUI
    > than the ones I currently use (WxPython and PyGtk).
    >
    > Fragmentation is our enemy.


    So fragment some more? And at least PyGtk is a wrapper around Gtk, so
    in a sense that is anti-fragmentation. It is reusing Gtk which is also
    reused as Gtk# by Mono/.NET and other bindings.

    > Our resources are being dissipated. Is it not time to start again?


    No.

    > I ask the group; should we try to create a new GUI for Python, with
    > the following properties?:
    > - Pythonic
    > - The default GUI (so it replaces Tkinter)
    > - It has the support of the majority of the Python community
    > - Simple and obvious to use for simple things
    > - Comprehensive, for complicated things
    > - Cross-platform
    > - Looks good (to be defined)
    > - As small as possible in its default form


    Good luck. Seems pointless to me.

    > But don't we owe it to the community?


    Seems like there are already several very mature options.
    Adam Tauno Williams, Jun 6, 2010
    #4
  5. On 06/05/2010 08:22 PM, ant wrote:
    > WxPython and PyGtk are both powerful, but quirky in different ways.
    > PyQt is tied to one platform. And there are dozens more.


    In what way is PyQt (or the new PySide bindings) tied to one platform?
    PyQt is "native" on Win32, Mac, and Linux. Would your universal GUI be
    any less quirky?

    > I ask the group; should we try to create a new GUI for Python, with
    > the following properties?:
    > <snip>
    > - Comprehensive, for complicated things - Cross-platform

    Most GUI toolkits currently are, to some degree or another. Qt is the
    most comprehensive cross-platform toolkit that I know of. You can
    pretty much do any application operation using its API.

    > - Looks good (to be defined)

    Does that mean it looks native? Should it be native? Does not the
    Tkinter gui look "good?"

    I can think of at least the following reasons why a new universal GUI
    for Python will have acceptance issues:
    - stuck with the lowest common denominator of functionality on each
    platform if you thunk to native widgets (a la wxWidgets)
    - often look and feel is not quite native even when using native themes
    (GTK on windows, for example)
    - if you take the Java Swing approach, you'll look out of place
    everywhere, which is kind of where tkinter is now.
    Michael Torrie, Jun 6, 2010
    #5
  6. ant

    Lie Ryan Guest

    On 06/06/10 12:22, ant wrote:
    > I get the strong feeling that nobody is really happy with the state of
    > Python GUIs.
    > Tkinter is not widely liked, but is widely distributed. WxPython and
    > PyGtk are both
    > powerful, but quirky in different ways. PyQt is tied to one platform.
    > And there are
    > dozens more.
    >
    > Whether or not we like graphics programming, it's not going to go
    > away. I get the
    > uneasy feeling whenever I start a new project that there should be a
    > 'better' GUI
    > than the ones I currently use (WxPython and PyGtk).
    >
    > Fragmentation is our enemy. Our resources are being dissipated. Is it
    > not time to
    > start again? We have shown that it is possible to do the right thing,
    > by creating Python3.
    >
    > I ask the group; should we try to create a new GUI for Python, with
    > the following
    > properties?:
    >
    > - Pythonic
    > - The default GUI (so it replaces Tkinter)
    > - It has the support of the majority of the Python community
    > - Simple and obvious to use for simple things
    > - Comprehensive, for complicated things
    > - Cross-platform
    > - Looks good (to be defined)
    > - As small as possible in its default form
    >
    > If so, what are the next steps?
    >
    > The Python SIG on GUIs closed years ago. Should that be revived?
    >
    > This is "A Modest Proposal" (J. Swift). In a sense, I am suggesting
    > that
    > we eat our own babies.
    >
    > But don't we owe it to the community?


    Pick any two:
    - Simple
    - Beautiful
    - Cross-platform
    Lie Ryan, Jun 6, 2010
    #6
  7. ant

    Stef Mientki Guest

    Aren't all programms going webbased in the near future ?
    And if so, wouldn't it be better to hook to GWT or something like that
    (I can't oversee all the conesquences)?
    cheers,
    Stef Mientki

    On 06-06-2010 04:22, ant wrote:
    > I get the strong feeling that nobody is really happy with the state of
    > Python GUIs.
    > Tkinter is not widely liked, but is widely distributed. WxPython and
    > PyGtk are both
    > powerful, but quirky in different ways. PyQt is tied to one platform.
    > And there are
    > dozens more.
    >
    > Whether or not we like graphics programming, it's not going to go
    > away. I get the
    > uneasy feeling whenever I start a new project that there should be a
    > 'better' GUI
    > than the ones I currently use (WxPython and PyGtk).
    >
    > Fragmentation is our enemy. Our resources are being dissipated. Is it
    > not time to
    > start again? We have shown that it is possible to do the right thing,
    > by creating Python3.
    >
    > I ask the group; should we try to create a new GUI for Python, with
    > the following
    > properties?:
    >
    > - Pythonic
    > - The default GUI (so it replaces Tkinter)
    > - It has the support of the majority of the Python community
    > - Simple and obvious to use for simple things
    > - Comprehensive, for complicated things
    > - Cross-platform
    > - Looks good (to be defined)
    > - As small as possible in its default form
    >
    > If so, what are the next steps?
    >
    > The Python SIG on GUIs closed years ago. Should that be revived?
    >
    > This is "A Modest Proposal" (J. Swift). In a sense, I am suggesting
    > that
    > we eat our own babies.
    >
    > But don't we owe it to the community?
    >
    Stef Mientki, Jun 6, 2010
    #7
  8. On Sun, 06 Jun 2010 12:42:30 +0200, Stef Mientki wrote:

    > Aren't all programms going webbased in the near future ?



    Yes, just wait until somebody builds a web-browser that runs in your web-
    browser!


    --
    Steven
    Steven D'Aprano, Jun 6, 2010
    #8
  9. On Jun 6, 2010, at 12:52 PM, Steven D'Aprano wrote:

    > Yes, just wait until somebody builds a web-browser that runs in your web-
    > browser!


    There you go:

    "A good browser should be able to reproduce itself. Safari 4, built entirely with valid HTML5 and CSS3."

    http://general-metrics.com/Safari/
    Petite Abeille, Jun 6, 2010
    #9
  10. ant

    Lie Ryan Guest

    On 06/06/10 22:09, Petite Abeille wrote:
    >
    > On Jun 6, 2010, at 12:52 PM, Steven D'Aprano wrote:
    >
    >> Yes, just wait until somebody builds a web-browser that runs in your web-
    >> browser!

    >
    > There you go:
    >
    > "A good browser should be able to reproduce itself. Safari 4, built entirely with valid HTML5 and CSS3."
    >


    Can't wait to see "Download Firefox for Chrome OS"
    Lie Ryan, Jun 6, 2010
    #10
  11. On 6-6-2010 14:32, Lie Ryan wrote:
    > On 06/06/10 22:09, Petite Abeille wrote:
    >>
    >> On Jun 6, 2010, at 12:52 PM, Steven D'Aprano wrote:
    >>
    >>> Yes, just wait until somebody builds a web-browser that runs in your web-
    >>> browser!

    >>
    >> There you go:
    >>
    >> "A good browser should be able to reproduce itself. Safari 4, built entirely with valid HTML5 and CSS3."
    >>

    >
    > Can't wait to see "Download Firefox for Chrome OS"


    That would mean that Chrome OS *is* Firefox, because Firefox is written in itself...
    Just open the following URL in Firefox to see proof of that:
    chrome://browser/content/browser.xul

    Irmen
    Irmen de Jong, Jun 6, 2010
    #11
  12. On 05-Jun-10 23:03 PM, Benjamin Peterson wrote:
    > ant<shimbo<at> uklinux.net> writes:
    >
    >> PyQt is tied to one platform.

    >
    > What do you mean one platform?
    >
    >
    >
    >

    Source Packages

    This is the latest stable version of PyQt4.
    PyQt-x11-gpl-4.7.3.tar.gz Linux, UNIX source
    PyQt-win-gpl-4.7.3.zip Windows source
    PyQt-mac-gpl-4.7.3.tar.gz MacOS/X source

    Colin W.
    Colin J. Williams, Jun 6, 2010
    #12
  13. "Yo dawg I heard you like browsers, so we put a browser in your browser
    so you can browse while you browse!" -- Xibit

    On 6/6/2010 8:52 AM, Irmen de Jong wrote:
    > On 6-6-2010 14:32, Lie Ryan wrote:
    >> On 06/06/10 22:09, Petite Abeille wrote:
    >>>
    >>> On Jun 6, 2010, at 12:52 PM, Steven D'Aprano wrote:
    >>>
    >>>> Yes, just wait until somebody builds a web-browser that runs in your
    >>>> web-
    >>>> browser!
    >>>
    >>> There you go:
    >>>
    >>> "A good browser should be able to reproduce itself. Safari 4, built
    >>> entirely with valid HTML5 and CSS3."
    >>>

    >>
    >> Can't wait to see "Download Firefox for Chrome OS"

    >
    > That would mean that Chrome OS *is* Firefox, because Firefox is written
    > in itself...
    > Just open the following URL in Firefox to see proof of that:
    > chrome://browser/content/browser.xul
    >
    > Irmen
    Joshua Kordani, Jun 6, 2010
    #13
  14. ant

    Guest

    Why not a GUI based on HTML, CSS and Javascript?

    To paraphrase another poster and to borrow from SQLite:

    Pick any *THREE*:
    - Simple
    - Beautiful
    - Cross-platform

    Malcolm
    , Jun 6, 2010
    #14
  15. ant

    Guest

    > Yes, just wait until somebody builds a web-browser that runs in your web-browser!

    <iframe> ?

    Malcolm
    , Jun 6, 2010
    #15
  16. ant

    rantingrick Guest

    On Jun 5, 9:22 pm, ant <> wrote:

    > I ask the group; should we try to create a new GUI for Python, with
    > the following
    > properties?:
    >
    > - Pythonic
    > - The default GUI (so it replaces Tkinter)
    > - It has the support of the majority of the Python community
    > - Simple and obvious to use for simple things
    > - Comprehensive, for complicated things
    > - Cross-platform
    > - Looks good (to be defined)
    > - As small as possible in its default form


    Yes i one hundred percent agree! The only problem is i am the only
    one! Good luck finding others to climb into this boat. From the
    beginning there has has been this really weird love-hate relationship
    with Tkinter in the Python community. I myself experience this
    emotional attachment every day as i wish for Tkinter to be more
    "pretty" and "feature-rich" whilst at the same time loving it's
    simplicity. Tkinter seems to be Python's whipping boy and nobody wants
    to whip another, so we are stuck in limbo with a lobotomy.

    Heres an idea though, why not expand Tkinter with some new really cool
    widgets...? Hmmm...? That TIX package is a real PITA and could use a
    re-write. Can you believe it took until py3.0 for Tkinter to get a
    combobox :-O! Yea i know! :'-(
    rantingrick, Jun 6, 2010
    #16
  17. * , on 06.06.2010 17:17:
    > Why not a GUI based on HTML, CSS and Javascript?
    >
    > To paraphrase another poster and to borrow from SQLite:
    >
    > Pick any *THREE*:
    > - Simple
    > - Beautiful
    > - Cross-platform


    I'm not sure what this discussion is about, but anyway, modern GUI frameworks
    /are/ based on XML, CSS and some code behind, which may be JavaScript or other
    language.

    In particular Mozilla's XUL is based on XML, CSS and JavaScript, and Microsoft's
    whatever-its-name is based on XML, CSS and, as I understand it, your choice of
    programming language for the code behind.

    I have done some XUL programming (a few Thunderbird extensions) but I haven't
    tried the Microsoft stuff since even their XML text editor, when I first looked
    at it, required minimum 512 MiB of RAM, and that was years ago; presumably the
    modern version of that MS XML text editor now requires 16 GiB or more RAM...


    Cheers,

    - Alf

    --
    blog at <url: http://alfps.wordpress.com>
    Alf P. Steinbach, Jun 6, 2010
    #17
  18. ant

    rantingrick Guest

    On Jun 6, 10:51 am, "Alf P. Steinbach" <> wrote:
    > * , on 06.06.2010 17:17:
    >
    > > Why not a GUI based on HTML, CSS and Javascript?

    >
    > > To paraphrase another poster and to borrow from SQLite:

    >
    > > Pick any *THREE*:
    > > - Simple
    > > - Beautiful
    > > - Cross-platform

    >
    > I'm not sure what this discussion is about, but anyway, modern GUI frameworks
    > /are/ based on XML, CSS and some code behind, which may be JavaScript or other
    > language.


    > - Alf



    Oh Please lets not help user in the age of "take-over-my-puter--all-my-
    data, and-my-freedoms, and-then-force-me-to-be-a-slave-to-you-just-so-
    i-can-use-my-data, with-your-permission, master!" era. Yes i have seen
    these GUI, HTML, CSS, Javascript freaks of nature and lament them
    daily! What a nightmare! Give me a good ole GUI and get the hell outta
    my way!

    ~>:^(
    rantingrick, Jun 6, 2010
    #18
  19. On Jun 6, 2010, at 7:36 PM, rantingrick wrote:

    > Oh Please lets not help user in the age of "take-over-my-puter--all-my-
    > data, and-my-freedoms, and-then-force-me-to-be-a-slave-to-you-just-so-
    > i-can-use-my-data, with-your-permission, master!" era. Yes i have seen
    > these GUI, HTML, CSS, Javascript freaks of nature and lament them
    > daily! What a nightmare! Give me a good ole GUI and get the hell outta
    > my way!


    Resistance is futile. You will be assimilated.
    Petite Abeille, Jun 6, 2010
    #19
  20. On 06/06/2010 16:31, rantingrick wrote:
    > On Jun 5, 9:22 pm, ant<> wrote:
    >
    >> I ask the group; should we try to create a new GUI for Python, with
    >> the following
    >> properties?:
    >>
    >> - Pythonic
    >> - The default GUI (so it replaces Tkinter)
    >> - It has the support of the majority of the Python community
    >> - Simple and obvious to use for simple things
    >> - Comprehensive, for complicated things
    >> - Cross-platform
    >> - Looks good (to be defined)
    >> - As small as possible in its default form

    >
    > Yes i one hundred percent agree! The only problem is i am the only
    > one! Good luck finding others to climb into this boat. From the
    > beginning there has has been this really weird love-hate relationship
    > with Tkinter in the Python community. I myself experience this
    > emotional attachment every day as i wish for Tkinter to be more
    > "pretty" and "feature-rich" whilst at the same time loving it's
    > simplicity. Tkinter seems to be Python's whipping boy and nobody wants
    > to whip another, so we are stuck in limbo with a lobotomy.
    >
    > Heres an idea though, why not expand Tkinter with some new really cool
    > widgets...? Hmmm...? That TIX package is a real PITA and could use a
    > re-write. Can you believe it took until py3.0 for Tkinter to get a
    > combobox :-O! Yea i know! :'-(
    >

    Patches are welcome at any time. I look forward to seeing your first
    contribution.

    Kindest regards.

    Mark Lawrence.
    Mark Lawrence, Jun 6, 2010
    #20
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Ramon F Herrera

    Can Java do fancy GUIs?

    Ramon F Herrera, Apr 16, 2005, in forum: Java
    Replies:
    56
    Views:
    1,638
    Thomas G. Marshall
    Apr 23, 2005
  2. Steve R. Hastings

    user-defined operators: a very modest proposal

    Steve R. Hastings, Nov 22, 2005, in forum: Python
    Replies:
    17
    Views:
    586
    Antoon Pardon
    Nov 24, 2005
  3. rantingrick

    Community (A Modest Proposal)

    rantingrick, Jun 13, 2010, in forum: Python
    Replies:
    37
    Views:
    811
    geremy condra
    Jun 15, 2010
  4. TonyMc

    A Modest Proposal

    TonyMc, Jul 7, 2011, in forum: C Programming
    Replies:
    5
    Views:
    473
    gwowen
    Jul 8, 2011
  5. W. eWatson
    Replies:
    0
    Views:
    122
    W. eWatson
    Sep 5, 2013
Loading...

Share This Page