Is Python your only programming language?

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Joe Cheng

    Is Python your only programming language?

    I'm curious about something... many Artima.com members who have a Java
    background and learned Python have come to the conclusion that Java and
    Python are highly complimentary languages. They would never consider
    filling the place Java has in their toolbox with Python, but recognize there
    are many tasks where it really pays to add Python to the mix.

    I want to ask you hard-core c.l.p Pythonistas: Do you use Python for
    everything? (and I'm counting Python + C extensions as just Python) Or do
    you keep another language equally close at hand, and if so, what is it? And
    finally, do you foresee a day when Python can be, for all practical intents
    and purposes, your only programming language?


  • Ben Finney

    #2
    Re: Is Python your only programming language?

    On Tue, 12 Aug 2003 05:44:45 GMT, Joe Cheng wrote:[color=blue]
    > many [...] have come to the conclusion that Java and Python are highly
    > complimentary languages.[/color]

    I think you mean "complementary" ; I've never had a programming language
    compliment me on anything, though it'd make a nice change from all those
    error messages :-)
    [color=blue]
    > I want to ask you hard-core c.l.p Pythonistas: Do you use Python for
    > everything? (and I'm counting Python + C extensions as just Python)
    > Or do you keep another language equally close at hand, and if so, what
    > is it?[/color]

    My professional programming these days is mostly sysadmin tool writing.
    Where I used to use 70% shell with 30% perl, these days I do 80% python
    with 20% shell. That probably reflects the ad-hoc, small-scope nature
    of the tools I write though.

    It also reflects the fact that I intend these tools to be maintainable
    by others who don't necessarily know the languages I use inside out. I
    would shudder to show a complex shell or perl script to a cow-orker, but
    my Python scripts are easily explainable -- one cow-orker has
    volunteered the comment that "it looks like pseudocode" :-)
    [color=blue]
    > And finally, do you foresee a day when Python can be, for all
    > practical intents and purposes, your only programming language?[/color]

    I do have several larger-scale programming projects in the back wings,
    and those will be written entirely in Python. (Waiting has gained me
    the incremental nice features of Python 2.3 :-)

    --
    \ "I know when I'm going to die, because my birth certificate has |
    `\ an expiration date." -- Steven Wright |
    _o__) |
    Ben Finney <http://bignose.squidly .org/>

    Comment

    • Markus Jais

      #3
      Re: Is Python your only programming language?

      Joe Cheng wrote:
      [color=blue]
      > I'm curious about something... many Artima.com members who have a Java
      > background and learned Python have come to the conclusion that Java and
      > Python are highly complimentary languages. They would never consider
      > filling the place Java has in their toolbox with Python, but recognize
      > there are many tasks where it really pays to add Python to the mix.
      >
      > I want to ask you hard-core c.l.p Pythonistas: Do you use Python for
      > everything? (and I'm counting Python + C extensions as just Python) Or
      > do
      > you keep another language equally close at hand, and if so, what is it?
      > And finally, do you foresee a day when Python can be, for all practical
      > intents and purposes, your only programming language?[/color]

      at work I use mainly java and C.

      at home when I programm for myself I normally use Python or Ruby.
      it depends on the libraries available. I like both and use both.

      I rarely use C or Java at home because with Python or Ruby I am much faster
      in developing a solution. and I never use C++ at home.

      and sometimes I play with PHP and Perl. just for fun.

      Markus

      Comment

      • Doug Tolton

        #4
        Re: Is Python your only programming language?

        On Tue, 12 Aug 2003 05:44:45 GMT, "Joe Cheng" <code@joecheng. com>
        wrote:
        [color=blue]
        >I'm curious about something... many Artima.com members who have a Java
        >background and learned Python have come to the conclusion that Java and
        >Python are highly complimentary languages. They would never consider
        >filling the place Java has in their toolbox with Python, but recognize there
        >are many tasks where it really pays to add Python to the mix.
        >
        >I want to ask you hard-core c.l.p Pythonistas: Do you use Python for
        >everything? (and I'm counting Python + C extensions as just Python) Or do
        >you keep another language equally close at hand, and if so, what is it? And
        >finally, do you foresee a day when Python can be, for all practical intents
        >and purposes, your only programming language?
        >[/color]
        I know Java, C, C#, C++, Visual Basic, Python, Asp and now I'm getting
        into Lisp and Scheme. I'm familiar with quite a few others, but these
        are the ones I'm most comfortable with.

        I write 90% of my code in python, maybe even 95%. I used to write
        everything in C#, but I found that most of the time I was writing a
        form that had buttons to push and a rich text box for output (at least
        at my current position).

        When we have to deploy an app with an ide we'll use either VB or C#,
        and put the guts in python com classes which are called from the ide.
        Python has great COM integration (much better than either C# or VB
        incidentally), so it makes it really easy.

        I do see a day when all my programming could be done in python
        (although more likely it will all be done in Lisp). There are a few
        things that need I need to learn how to do, but ultimately I believe
        all the major pieces are in place.

        - I need to learn wxPython or one of the variants on building good
        cross platform guis better.
        - I need to learn how to deploy apps to end users better
        - I need to learn one of the web based python systems.

        You'll note, these are all centered around technologies I need to
        learn better, not techonlogies that need to be done still.

        As for an IDE, I already have one, it's call Emacs.
        Debugger, I just use pdb (althouh I wish it had, or I knew how to do
        Edit and Continue)

        Comment

        • Max M

          #5
          Re: Is Python your only programming language?

          Joe Cheng wrote:
          [color=blue]
          > I want to ask you hard-core c.l.p Pythonistas: Do you use Python for
          > everything? (and I'm counting Python + C extensions as just Python) Or do
          > you keep another language equally close at hand, and if so, what is it? And
          > finally, do you foresee a day when Python can be, for all practical intents
          > and purposes, your only programming language?[/color]


          I used to learn a new language a year. But i'm afraid that python has
          made me lazy. It sort of killed the natural itch to learn new languages
          by removing the little anoyances I used to have when programming.

          So now I start up my editor in Python mode like a mindless zombie. It
          has even gotten to the point that I use it for calculations instead of a
          spreadsheet and pocket calculator.

          But to keep up to date language wise I will look into other languages
          again someday soon. I swear. hmm!



          regards Max M

          Comment

          • Van Gale

            #6
            Re: Is Python your only programming language?

            From my point of view (writing system applications, servers, web apps)
            Python and Java fill the same space, which is one reason I don't know
            much Java.

            I used to use perl + shell for sysadmin type stuff, but now use Python
            exclusively for that (well... maybe some shell still for really really
            short scripts).

            So, the only other language I really use is C (and not just for writing
            extensions).

            There are some areas where I would consider other languages, For
            example I would consider using Delphi for Windows GUI apps. For Linux
            GUI apps I might consider Objective C just for something different, but
            most likely would choose Python and either Qt or GTK bindings.

            Comment

            • Fredrik Lundh

              #7
              Re: Is Python your only programming language?

              Joe Cheng wrote:
              [color=blue]
              > I want to ask you hard-core c.l.p Pythonistas: Do you use Python for
              > everything? (and I'm counting Python + C extensions as just Python)[/color]

              yes.
              [color=blue]
              > And finally, do you foresee a day when Python can be, for all practical
              > intents and purposes, your only programming language?[/color]

              has been, since 1995.

              </F>




              Comment

              • Carl Banks

                #8
                Re: Is Python your only programming language?

                Joe Cheng wrote:[color=blue]
                > I'm curious about something... many Artima.com members who have a Java
                > background and learned Python have come to the conclusion that Java and
                > Python are highly complimentary languages. They would never consider
                > filling the place Java has in their toolbox with Python, but recognize there
                > are many tasks where it really pays to add Python to the mix.
                >
                > I want to ask you hard-core c.l.p Pythonistas: Do you use Python for
                > everything? (and I'm counting Python + C extensions as just Python) Or do
                > you keep another language equally close at hand, and if so, what is it? And
                > finally, do you foresee a day when Python can be, for all practical intents
                > and purposes, your only programming language?[/color]


                For me, it's almost 100% Python + C extensions. Even the C extensions
                are getting dubious: for my current project, I took the time to write
                a C code generator in Python.

                I use a smattering of Bourne Shell and Mathematica for their intended
                purposes. I often used Fortran in research work and a few other
                things. I use Java when I want to make an applet (rarely).

                Any other language I use is either for fun, or to keep my programming
                skills sharp.


                --
                CARL BANKS
                "You don't run Microsoft Windows. Microsoft Windows runs you."

                Comment

                • Nikola Plejic

                  #9
                  Re: Is Python your only programming language?

                  In news:3F389887.F 7AB871E@alcyone .com,
                  Erik Max Francis <max@alcyone.co m> wrote:
                  [color=blue]
                  > Joe Cheng wrote:
                  >[color=green]
                  >> I want to ask you hard-core c.l.p Pythonistas: Do you use Python for
                  >> everything? (and I'm counting Python + C extensions as just Python)
                  >> Or do
                  >> you keep another language equally close at hand, and if so, what is
                  >> it? And
                  >> finally, do you foresee a day when Python can be, for all practical
                  >> intents
                  >> and purposes, your only programming language?[/color]
                  >
                  > I get paid to write C++ or C, use Python for recreational projects,
                  > and use shell, Python, or (rarely) Perl for administration tasks. For
                  > recreation and exploration I play around with a variety of other
                  > languages, including Io, APL/J, Logo, Prolog, Scheme, and so on.[/color]

                  I use Python for most of my projects, but for web I use PHP. I also have some
                  knowledge of C++ (but very limited), and I am planning on expanding that
                  knowledge soon. I started learning C++ before Python, but when I saw Python, I
                  paused learning C++ and turned to Python.

                  Python can suit most of the programming needs today, but not all. It has
                  limitations, just as any other programming language and I think there will
                  always be cases where using some other programming language will be more
                  efficient or more suitable for some projects.

                  As for me, personally, Python suits my needs even now, as I am not some
                  advanced programmer, but I suppose I will see some limitations and downsides as
                  I progress.

                  I also play around with Visual Basic with my friend a bit when we're at school,
                  but he knows VB way better than I do.

                  --

                  Greets,
                  Nikola
                  ( http://zweistein.cjb.net )


                  Comment

                  • Peter Hansen

                    #10
                    Re: Is Python your only programming language?

                    Joe Cheng wrote:[color=blue]
                    >
                    > I want to ask you hard-core c.l.p Pythonistas: Do you use Python for
                    > everything? (and I'm counting Python + C extensions as just Python) Or do
                    > you keep another language equally close at hand, and if so, what is it?[/color]

                    We do web, systems/application, and embedded programming (that's the kind of
                    thing where you have a little 16-bit micro with 1K of RAM to play with, nothing
                    to do with "embedding and extending" ala Python). The web work is all
                    Python (back end) plus a tiny bit of Javascript. The systems/app work is
                    all Python. The embedded stuff is part Python, on the larger embedded
                    system which can handle it, and part C, on the tiny micros where Python
                    has no hope, plus a few hundred lines of Assembly code.

                    On a day-to-day basis, over 95% of what we do is Python.
                    [color=blue]
                    > And finally, do you foresee a day when Python can be, for all
                    > practical intents and purposes, your only programming language?[/color]

                    No, unless we abandon all embedded programming. But if you exclude
                    that special area, where basically little but C has a foothold, and
                    you exclude the client-side web stuff where Javascript is the only
                    serious option, then we are already using Python as our *only* language,
                    and I have no intention of letting that change any time soon. There
                    is a *huge* benefit, often much underestimated, in maintaining only
                    a small set of technologies, including the programming languages a
                    company/individual actually uses (as opposed to those it knows of).

                    -Peter

                    Comment

                    • c42

                      #11
                      Re: Is Python your only programming language?

                      After college I started using VB & VBA for most of my bigger projects
                      and Winbatch for my system admin stuff. However, as my current company
                      has started to move more of its servers to Linux, I'm programming almost
                      exclusively in Python.

                      In the past I've used Komodo and found it to be very nice tool, but I'm
                      also keeping an eye on Boa Constructor with its advances as well.



                      In article <h9%Za.8225$M6. 622467@newsread 1.prod.itd.eart hlink.net>,
                      code@joecheng.c om says...[color=blue]
                      > I'm curious about something... many Artima.com members who have a Java
                      > background and learned Python have come to the conclusion that Java and
                      > Python are highly complimentary languages. They would never consider
                      > filling the place Java has in their toolbox with Python, but recognize there
                      > are many tasks where it really pays to add Python to the mix.
                      >
                      > I want to ask you hard-core c.l.p Pythonistas: Do you use Python for
                      > everything? (and I'm counting Python + C extensions as just Python) Or do
                      > you keep another language equally close at hand, and if so, what is it? And
                      > finally, do you foresee a day when Python can be, for all practical intents
                      > and purposes, your only programming language?
                      >
                      >
                      >[/color]

                      Comment

                      • Harry George

                        #12
                        Re: Is Python your only programming language?

                        "Joe Cheng" <code@joecheng. com> writes:
                        [color=blue]
                        > I'm curious about something... many Artima.com members who have a Java
                        > background and learned Python have come to the conclusion that Java and
                        > Python are highly complimentary languages. They would never consider
                        > filling the place Java has in their toolbox with Python, but recognize there
                        > are many tasks where it really pays to add Python to the mix.
                        >
                        > I want to ask you hard-core c.l.p Pythonistas: Do you use Python for
                        > everything? (and I'm counting Python + C extensions as just Python) Or do
                        > you keep another language equally close at hand, and if so, what is it? And
                        > finally, do you foresee a day when Python can be, for all practical intents
                        > and purposes, your only programming language?
                        >
                        >[/color]

                        In the past I've written C, C++, Java, Lisp, Modula-2, Modula-3,
                        Pascal, Perl, and Prolog for pay. I've dabbled in a dozen others.
                        All of these are drifting away as Python takes center stage at home
                        and at work. I personally haven't written in anything else for over a
                        year. I also used it through a recent MSCS degree. Of course, I'm
                        dependent on extensions written in C, C++, and Fortran, plus CORBA,
                        COM, etc. communication protocols.

                        What uses?

                        Some sysadmin scripts, lots of "glueware" reader/writer adaptors and
                        automation for COTS apps, lots of code which needs to be portable
                        across *NIX and Win** platforms. Usually need Numeric and XML, some
                        SQL, CGI wrappers, etc.

                        At home I recently wrote a morse code tutor by reimplementing
                        algorithms (e.g., bit-twiddling to generate pcm) from an OSS package.
                        Once it worked at all, I changed the algorithm to cache preprocessed
                        sin approximations (profiling showed I needed the speedup). Then I
                        enhanced to the functionality of commercial packages. Then added
                        features (autogenerated QSO's) which I don't think are available
                        anywhere else. All in a weekend.

                        How did I get there?

                        I really liked Modula-3's static and dynamic typing system. Other
                        static typing systems I've tried pale by comparison. With Python and
                        good test suites, I don't seem to miss the static typing, and it is
                        vastly easier to generate working code. I also liked Modula-3's
                        syntax and namespace system. Python's syntax is cleaner and the
                        namespaces are simpler-yet-adequately-powerful. (Not too surprising,
                        given Python's origins)

                        I used to be a champion for and an instructor for Perl. I still do
                        code reviews on Perl scripts written by others (shudder). I do not
                        agree sysadmins will stay with Perl over Python. There is a learning
                        curve, but the needed functionality is there. We are finding in
                        complex mixed platform environments, it is easier to install (and
                        upgrade) Python than Perl. Python is readable by people other than
                        the original author (important in an era of layoffs and doubling up).
                        Python is readable by the original author even after being away for
                        months at a time.

                        We found we could replace c. 100 LOC of Prolog with a few lines of
                        python when we needed regex's and other string manipulation. We are
                        finding we can do Lisp-style programming in Python (lazy evaluation,
                        mixins, etc.). We find that Python is "a better VB than VB" for
                        scripting COTS apps via COM. We found python took 1/3 fewer LOC (and
                        was a lot cleaner) than Java for a geometry task (lots of matrixes and
                        netlist traversals).

                        I've yet to look seriously at C#. My primariy concern is "does it
                        support open source cross-platform development and implementation" ?
                        As long as it fails that test (e.g., until Mono is fully approved by
                        Microsoft), I'll stick with a known winner.

                        --
                        harry.g.george@ boeing.com
                        6-6M31 Knowledge Management
                        Phone: (425) 342-5601

                        Comment

                        • Michele Simionato

                          #13
                          Re: Is Python your only programming language?

                          grante@visi.com (Grant Edwards) wrote in message news:<3f38fbf3$ 0$158$a1866201@ newsreader.visi .com>...
                          [color=blue]
                          > Anybody who thinks there's only one programming
                          > language for all tasks is seriously deluded.[/color]

                          Yes, but a programmer does not necessarily need to perform ALL tasks.
                          It may very well be that Python fullfill 99% of what an average
                          programmer needs. I personally know various languages, but at the
                          end I only use Python since it fullfills all my needs and it is
                          faster to develop in it that in any other language.

                          Michele

                          Comment

                          • Grant Edwards

                            #14
                            Re: Is Python your only programming language?

                            In article <2259b0e2.03081 20912.53b28d6f@ posting.google. com>, Michele Simionato wrote:
                            [color=blue][color=green]
                            >> Anybody who thinks there's only one programming language for
                            >> all tasks is seriously deluded.[/color]
                            >
                            > Yes, but a programmer does not necessarily need to perform ALL
                            > tasks.[/color]

                            Good point. I forget that others jobs may be more narrowly
                            defined than mine. Not everybody has to range from embedded
                            assembly language, to GUI apps, to Linux drivers, to CGI, to
                            ASP.
                            [color=blue]
                            > It may very well be that Python fullfill 99% of what an average
                            > programmer needs. I personally know various languages, but at
                            > the end I only use Python since it fullfills all my needs and
                            > it is faster to develop in it that in any other language.[/color]

                            --
                            Grant Edwards grante Yow! What a
                            at COINCIDENCE! I'm an
                            visi.com authorized "SNOOTS OF THE
                            STARS" dealer!!

                            Comment

                            • Jarek Zgoda

                              #15
                              Re: Is Python your only programming language?

                              Joe Cheng <code@joecheng. com> pisze:
                              [color=blue]
                              > I want to ask you hard-core c.l.p Pythonistas: Do you use Python for
                              > everything? (and I'm counting Python + C extensions as just Python) Or do
                              > you keep another language equally close at hand, and if so, what is it? And
                              > finally, do you foresee a day when Python can be, for all practical intents
                              > and purposes, your only programming language?[/color]

                              I learn new programming language each year. During last 10 years I
                              learned 10 languages -- only in few of them I wrote more than exercises,
                              these are Python, RPG and REXX, sorted descending. Python is most
                              amusing and fun part of my work, I use it whenever it is possible and
                              has any sign of advantage over any other languages but I will never try
                              to use Python to write interactive application on OS/400. There is
                              RPG/400 for this and other platforms have other tasks that are better
                              accomplished in other ways than Python.

                              But I'll continue to love Python until somebody invents something more
                              amazing. Which looks impossible now, but remember, 10 years ago mr Gates
                              said, that 640KB seems to be enough for everybody. ;)

                              --
                              Jarek Zgoda
                              Registered Linux User #-1
                              http://www.zgoda.biz/ JID:zgoda@chrom e.pl http://zgoda.jogger.pl/

                              Comment

                              Working...