Help Required for Choosing Programming Language

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Stef Mientki

    #16
    Re: Help Required for Choosing Programming Language

    >- designing the GUI will cost me about 2 .. 3 times as much in Python
    >
    You mean delphi here I presume?
    No, but if that's your believe ..
    Some examples:
    - Creating a treeview (like in the M$ explorer), with full edit capabilities and full drag & drop
    facilities: Delphi takes about 40 lines of code (most of them even ^C ^V).
    - Creating a graphical overview of relations between database tables, which can be graphical
    manipulated by the user (like in M$ Access): Delphi 20 lines of code.
    I wonder what this costs in Python ?
    >- Python is not capable of doing everything I need
    >(almost all interactive actions are very primitive and crashes a lot)
    >
    I'm not sure what you are talking about here, and I have the deep
    impression you yourself don't as well.
    I'm not an (educated) programmer, so I don't always use the right terms :-(
    If I look at a well established program like DIA,
    and see that it still can't repaint it's screen always correctly, ...
    If I just look at MathPlotLib ;-)
    But I also know one beautiful program based on wx: KICAD.
    >
    Matter of factly, there is no "the python GUI". There are quite a few
    choices. The built-in tkinter, which - while limited in some senses - is
    developed by Frederik Lundh, and while I personally haven't done too
    much with it, his reputation as one of the most high profiled python
    developers doesn't go along pretty well with your assertions above. So
    -whatever you used as GUI-toolkit, you either used it wrong, or it
    really wasn't good.
    >
    But then there are at least three major other toolkits available, wx,
    gtk and Qt. The first two I've only dabbled a bit with and can't comment
    on.
    >
    But I've done extensive, cross-platform development with Qt. And can
    assert that it is unmatched in productivity and feature richness,
    especially when combined with python. And certainly beat VB, and most
    probably even delphi (albeit I haven't done too much in that to really
    put all my weight behind these words).
    >
    And so I'm under the strong impression that your - undoubtedly correct
    from a personal point of view, and I don't think your meaning evil here
    - observations are wrong and are based on a lack of experience in python
    and it's available gui-options.
    I've been using Python for just 2 months, and didn't try any graphical design,
    I've other priorities first.
    I would love to see:
    - a comparison between wx and gtk (QT doesn't have a very inviting license ;-)
    - some Python applications that uses one of these graphical libraries.

    To give you an impression of some features I'm after, I've prepared an animation (not completely
    ready yet), of the program I've written in Delphi, with both embedded MatLab and embedded Python,
    where MatLab or Python does all the real-time numerical analysis.

    Writing this program, including teaching myself Python (with a lot of help of this group, thank you
    all !!), and writing the bloodpressure analysis in both MatLab and Python, excluding the
    ADC-drivers, costed me about 150 .. 200 hours ...
    .... can that be done be an experienced programmer in Python.

    cheers,
    Stef Mientki

    Comment

    • Stef Mientki

      #17
      Re: Help Required for Choosing Programming Language

      I would love to see:
      - a comparison between wx and gtk (QT doesn't have a very inviting
      license ;-)
      I just found this:

      Comment

      • Gabriel Genellina

        #18
        Re: Help Required for Choosing Programming Language

        En Sat, 17 Feb 2007 21:12:07 -0300, Stef Mientki
        <S.Mientki-nospam@mailbox. kun.nlescribió:
        >I would love to see:
        >- a comparison between wx and gtk (QT doesn't have a very inviting
        >license ;-)
        I just found this:
        But keep in mind that that comparison may be biased... A more impartial
        source would be better.

        --
        Gabriel Genellina

        Comment

        • Bjoern Schliessmann

          #19
          Re: Help Required for Choosing Programming Language

          Stef Mientki wrote:
          Some examples:
          - Creating a treeview (like in the M$ explorer), with full edit
          capabilities and full drag & drop facilities: Delphi takes about
          40 lines of code (most of them even ^C ^V). - Creating a graphical
          overview of relations between database tables, which can be
          graphical manipulated by the user (like in M$ Access): Delphi 20
          lines of code. I wonder what this costs in Python ?
          My Chrysler 300C SRT8 takes someVeryLowNumb er seconds to accelerate
          to 100 mph. I wonder how long this takes with a BMW?
          I would love to see:
          - a comparison between wx and gtk
          Best would be to try the introduction tutorials yourself.

          Also be aware that wxWidgets and GTK are C/C++ libraries and
          wxPython and wxGTK are "just" Python bindings with a few
          enhancements for it.
          (QT doesn't have a very inviting license ;-)
          GNU GPL isn't inviting?

          Regards,


          Bjƶrn

          --
          BOFH excuse #352:

          The cables are not the same length.

          Comment

          • Bruno Desthuilliers

            #20
            Re: Help Required for Choosing Programming Language

            Stef Mientki a Ʃcrit :
            (snip)
            I'm not an (educated) programmer, so I don't always use the right terms :-(
            If I look at a well established program like DIA,
            and see that it still can't repaint it's screen always correctly, ...
            I suppose you're talking about the Diagram drawing program Dia. If so, I
            don't see how it is relevant to Python GUI programming since Dia is
            written in C with the GTK toolkit. The stability problems you experience
            have probably more to do with the status of the Windows port of GTK
            (which is originally a X toolkit).
            I've been using Python for just 2 months, and didn't try any graphical
            design,
            So how can you comment on GUI programming with Python ?

            Comment

            • Peter Decker

              #21
              Re: Help Required for Choosing Programming Language

              On 2/17/07, Stef Mientki <S.Mientki-nospam@mailbox. kun.nlwrote:
              Some examples:
              - Creating a treeview (like in the M$ explorer), with full edit capabilities and full drag & drop
              facilities: Delphi takes about 40 lines of code (most of them even ^C ^V).
              - Creating a graphical overview of relations between database tables, which can be graphical
              manipulated by the user (like in M$ Access): Delphi 20 lines of code.
              I wonder what this costs in Python ?
              You really need to get your thinking straightened out. You can't
              compare Delphi to Python; Delphi is a product that uses Pascal as its
              language, while Python is a language. When you compare a product for a
              language to an entire language, it makes the rest of your arguments
              look silly.

              BTW, you said you looked at the Dabo Class Designer - did you know
              that that tool itself was written in Dabo?

              The power is there. The fact that you couldn't completely understand
              it in a brief review says more about you than it does about Python,
              wxPython or Dabo.

              --

              # p.d.

              Comment

              • Diez B. Roggisch

                #22
                Re: Help Required for Choosing Programming Language

                Stef Mientki schrieb:
                >>- designing the GUI will cost me about 2 .. 3 times as much in Python
                >>
                >You mean delphi here I presume?
                No, but if that's your believe ..
                I'm sorry, that was a misreading of mine.
                Some examples:
                - Creating a treeview (like in the M$ explorer), with full edit
                capabilities and full drag & drop
                facilities: Delphi takes about 40 lines of code (most of them even ^C ^V).
                As does Qt.
                - Creating a graphical overview of relations between database tables,
                which can be graphical
                manipulated by the user (like in M$ Access): Delphi 20 lines of code.
                I wonder what this costs in Python ?
                Qt has data-aware classes, albeit I didn't play with them.

                I've been using Python for just 2 months, and didn't try any graphical
                design,
                I've other priorities first.
                May I cite you:

                """
                - Python is not capable of doing everything I need
                (almost all interactive actions are very primitive and crashes a lot)
                """

                To me, that sounded like you were talking about gui-design.

                Diez

                Comment

                • Dave Cook

                  #23
                  Re: Help Required for Choosing Programming Language

                  On 2007-02-16, ifti_crazy@yaho o.com <ifti_crazy@yah oo.comwrote:
                  i have read about Python, Ruby and Visual C++. but i want to go
                  through with GUI based programming language like VB.net
                  You might take a look at http://dabodev.com

                  Dave Cook

                  Comment

                  • olsongt@verizon.net

                    #24
                    Re: Help Required for Choosing Programming Language

                    On Feb 16, 4:22 pm, ifti_cr...@yaho o.com wrote:
                    I am VB6 programmer and wants to start new programming language but i
                    am unable to deciced.
                    >
                    i have read about Python, Ruby and Visual C++. but i want to go
                    through with GUI based programming language like VB.net
                    >
                    so will you please guide me which GUI based language has worth with
                    complete OOPS Characteristics
                    >
                    will wait for the answer
                    >
                    hope to have a right direction from you Programmer
                    >
                    Regards
                    Iftikhar
                    itzon...@yahoo. com
                    Despite what "real programmers" and various apologists might say,
                    there isn't much out there that comes close to the ease-of-use and
                    functionality of VB when it comes to designing a GUI. I say this not
                    to discourage you, but to let you know that if a GUI designer is your
                    sole criteria for a new language, you're going to be disappointed with
                    everything you see.

                    I'd suggest that with whatever new language you go with, you either
                    write apps that aren't gui-based, or write a web application with a
                    web-based GUI. Another alternative would be to write the "business
                    logic" in the new language, and have a shell VB app implementing the
                    GUI call it. You can do this easily in python by creating python
                    based COM components (not sure how easy it is in ruby, and it's a
                    comparitive pain-in-the-ass in C++)

                    Good luck,

                    Grant

                    Comment

                    • Hendrik van Rooyen

                      #25
                      Re: Help Required for Choosing Programming Language

                      "Bruno Desthuilliers" <bdesth.quelque chose@free.quel quepart.frwrote :

                      >Stef Mientki a Ʃcrit :
                      >(snip)
                      >I've been using Python for just 2 months, and didn't try any graphical
                      >design,
                      >
                      >So how can you comment on GUI programming with Python ?
                      I think we have a language problem here (no pun intended)

                      When Stef says "Gui Programming" he means using something like
                      Delphi or Boa to do the Graphical Layout, while on this group it
                      normally means writing the python code to make your own windows
                      etc., using Tkinter or better...

                      There is no doubt that the first approach gets you going faster,
                      albeit true that you have more flexibility with the second.

                      The learning curves are also different, the first approach feeling less
                      painful, as you seem to make progress from the start, and you don't
                      have to worry about questions like : "whats a frame/toplevel/mainloop/etc.?"

                      So from Stef's perspective he is right when he claims that Python's
                      "Gui Programming" is poor - in the standard library it is non existent,
                      as there are no Delphi-, Glade- or Boa-like tools available.

                      And one can argue that something like Boa or the WX.. packages are
                      not Python, as they are not included in the standard library...

                      - Hendrik


                      Comment

                      • sturlamolden

                        #26
                        Re: Help Required for Choosing Programming Language

                        On Feb 17, 1:34 am, Stef Mientki <S.Mientki-nos...@mailbox. kun.nl>
                        wrote:
                        - designing the GUI will cost me about 2 .. 3 times as much in Python
                        Use a design tool like GLADE for PyGTK, wxGlade for wxPython or Komodo
                        for tkinter. The more of the GUI code you can remove from your
                        functional code the better. GUI code tends to clutter up the
                        functional code. Have you ever tried to make changes in an MFC
                        project? The optimal solutions are Microsoft's 'Avalon' and GTK/
                        libglade, where all GUI code are placed inside an XML resource.

                        The second thing is that GUIs are made very differently in Python and
                        traditional Windows tools like Delphi and VS.NET. Most Python toolkit
                        have a concept of 'layout managers' that will size and lay out the
                        widgets for you. In Delphi and VB you will typically drag and drop
                        controls on a form, and use anchors and docking and manually size the
                        controls. You are therefore much more dependent on graphical GUI
                        design in these environments. In Python toolkits, the layout manager
                        do all this work for you. Layout managers are also found in Java
                        toolkits like Swing and SWT. In order to make effective GUIs in Python
                        you must learn to use these, and forget about all the bad habits
                        Delphi thought you. Try to imagine the GUI as a tree of containers,
                        where the widgets reside on the leafs, instead of controls dropped on
                        a form. When you can do that in your head, you can make GUIs more
                        quickly in Python than VB or Delphi.

                        The main advantages to using layout managers are: GUIs are less
                        tedious to develop, you don't have to worry about resizing and
                        adapting to different screen sizes, and large projects become easier
                        to maintain.
















                        - Python is not capable of doing everything I need
                        (almost all interactive actions are very primitive and crashes a lot)
                        - designing my other functional code in Python,
                        will reduce the development time with an estimated factor of 2
                        So the combination of Delphi (or VB) and Python seems the optimal combination for heavily GUI's.
                        - one of the big problems with Python is the version differences (compatibility)
                        >
                        In one of the other threads, Dabo was meant as a GUI designer,
                        I tried it yesterday,
                        and although it looks very promising,
                        at the moment this is not a graphical design environment,
                        just a complex (compared to Delphi) design environment with graphical feedback.
                        Just my 2 cents ;-)
                        >
                        >
                        >
                        (although others in this group will definitely have a different opinion),
                        the beautiful thing about Python is,
                        that you can easily embed /encapsulate it in VB,
                        giving you the best of both worlds.
                        >
                        Why would one go thru the pain of "embedding" Python in VB (if that's
                        even possible) when Python can directly access the Win32 API and all COM
                        components and have bindings for GUI toolkits like wxWidgets ?
                        >
                        "Pain of embedding" ?
                        About 10 lines of code, which you find ready to use on the web ;-)
                        And the performance is fantastic !
                        (I even use it for realtime, as a complete replacement for MatLab and LabView)
                        >
                        Bruno, I think we've a different audience / target application,
                        and at the moment we'll never agree about GUI,
                        but I promise that'll try the different Python graphics in the future,
                        and you will be the first to hear if my current conclusions are wrong.
                        >
                        cheers,
                        Stef

                        Comment

                        • sturlamolden

                          #27
                          Re: Help Required for Choosing Programming Language

                          On Feb 16, 11:12 pm, Bruno Desthuilliers
                          <bdesth.quelque ch...@free.quel quepart.frwrote :
                          "GUI based programming languages" ? What's that ?
                          LabView


                          Comment

                          • Muntasir Azam Khan

                            #28
                            Re: Help Required for Choosing Programming Language

                            On Feb 17, 3:22 am, ifti_cr...@yaho o.com wrote:
                            I am VB6 programmer and wants to start new programming language but i
                            am unable to deciced.
                            >
                            i have read about Python, Ruby and Visual C++. but i want to go
                            through with GUI based programming language like VB.net
                            >
                            so will you please guide me which GUI based language has worth with
                            complete OOPS Characteristics
                            >
                            will wait for the answer
                            >
                            hope to have a right direction from you Programmer
                            >
                            Regards
                            Iftikhar
                            itzon...@yahoo. com
                            There is no other GUI based programming language like VB. That's
                            because there is no such thing as a GUI based programming language. If
                            you want to learn a real general purpose programming language try
                            learning python. If you are only interested in making GUI's for
                            windows applications, better stick with VB or any of the other .NET
                            languages.

                            Comment

                            • Steve Holden

                              #29
                              Re: Help Required for Choosing Programming Language

                              Muntasir Azam Khan wrote:
                              On Feb 17, 3:22 am, ifti_cr...@yaho o.com wrote:
                              >I am VB6 programmer and wants to start new programming language but i
                              >am unable to deciced.
                              >>
                              >i have read about Python, Ruby and Visual C++. but i want to go
                              >through with GUI based programming language like VB.net
                              >>
                              >so will you please guide me which GUI based language has worth with
                              >complete OOPS Characteristics
                              >>
                              >will wait for the answer
                              >>
                              >hope to have a right direction from you Programmer
                              >>
                              >Regards
                              >Iftikhar
                              >itzon...@yahoo .com
                              >
                              There is no other GUI based programming language like VB. That's
                              because there is no such thing as a GUI based programming language. If
                              you want to learn a real general purpose programming language try
                              learning python. If you are only interested in making GUI's for
                              windows applications, better stick with VB or any of the other .NET
                              languages.
                              >
                              It's also worth remembering that you can use COM to drive a VB interface
                              from Python, and of course there's now IronPython that allows you to use
                              ..NET-based interfaces directly.

                              regards
                              Steve
                              --
                              Steve Holden +44 150 684 7255 +1 800 494 3119
                              Holden Web LLC/Ltd http://www.holdenweb.com
                              Skype: holdenweb http://del.icio.us/steve.holden
                              Blog of Note: http://holdenweb.blogspot.com
                              See you at PyCon? http://us.pycon.org/TX2007

                              Comment

                              • Andy Dingley

                                #30
                                Re: Help Required for Choosing Programming Language

                                On 16 Feb, 21:22, ifti_cr...@yaho o.com wrote:
                                I am VB6 programmer and wants to start new programming language
                                Why? What is causing you to do this, and what do you need to achieve
                                by doing it?
                                i want to go through with GUI based programming language like VB.net
                                "GUI-based" is fairly unimportant as it's just how you build your
                                programs, not what they do afterwards. VB is GUI-based, Python can be
                                GUI-based but is usually fairly text-based.

                                What's probably more significant here is whether the resulting program
                                runs in a GUI or not. VB obviously does, on the Windows desktop. Java
                                also has a sizable market for cross-platform GUI applications. In many
                                ways Java is more capable than VB, but also far less easy to work with
                                for rapid simple applications (I'd take 10 year old VB over GridBag
                                any time!).

                                GUI programs are less important now than they were a few years ago,
                                owing to the huge importance of the web and HTML. Although HTML can
                                still be seen as GUI, it really needs to be worked with at the raw
                                HTML source level (at least for quality work). This doesn't need any
                                sort of GUI built into the language, so Python (or Ruby or Perl) are
                                ideal.

                                With the rise of AJAX toolkits, we're finally seeing "HTML as a GUI"
                                turn into a workable choice for building sophisticated GUI apps in a
                                sensible amount of time. Finally! The tools used here depend
                                significantly on the toolkits used and it's still early days to pick
                                winners.

                                If I had to write Windows-only desktop GUI apps, then I'd stick with
                                VB6 (which I wrote for years) or whatever M$oft decree to be its moral
                                successor. Actually I'd probably stick with VB6....

                                If I had to write cross-platform GUI desktop apps, then I'd be looking
                                at whatever the favoured toolkit for Java is this week. Maybe Swing,
                                if I wanted to get a paid job using it. Java Web Start needs looking
                                at too.

                                If I just had to make "a sophisiticated GUI app" appear on a lot of
                                corporate desktops, then it would probably be based on Java Server
                                Faces.


                                For nearly all of the choices above, the "language" part of the task
                                is minor in comparison to tiresome GUI building. That's just the way
                                commerce works, and why we don't all get to write everything in Scheme
                                or Haskell.


                                If I had a free hand in writing better shell scripts, or in writing
                                moderately complex algorithms with no visible UI, then I have chosen
                                Python. It beats the hell out of Perl and is (AFAICS) better than
                                Ruby.

                                For building web reporting apps that generate HTML, then I'm also
                                choosing to use my sparse Python knowledge rather than my substantial
                                Java / JSP knowledge. Seems to be working so far.

                                For web-hosted GUI apps, I don't know enough about Python to say.
                                Doesn't look like it beats JSF though.


                                There's also the question of what "OOP" means. For the "mainstream "
                                languages, then classic statically-typed OO is done best by writing in
                                Java. This has a cleaner OOP language design than C++, the benefit of
                                a decade's hindsight and a clean slate.

                                Dynamically or duck-typed languages like Python and Ruby are quite
                                different from this. It's still OOP, but not how your uncle Bjarne
                                knew it. Quite a culture shock too.

                                Comment

                                Working...