Is python for me?

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

    #1

    Is python for me?

    Hi,

    I'm planning to learn a language for 'client' software. Until now, i
    'speak' only some web based languages, like php. As a kid i programmed
    in Basic (CP/M, good old days :'-) ) Now i want to start to learn a
    (for me) new computer language.

    I like Python. Its free, easy to learn and some favorite programs of my
    are written in Python / can understand Python (like OpenOffice) etc.

    But I'm not a full-time programmer. I know, that I've only time &
    possibility to learn one (= 1) language good. So i ask myself is python
    the language I'm looking for?

    In the future, i want to write the following applications:[*] A database driven program, which can handle my clients, tasks and
    places (= 3 tables, has to work relative with each other). I think,
    this isn't a problem for Python[*] As a photographer i like to build a picture management system (also
    db) with raw support. Raw is the raw-data from the sensor of the
    camera. My questions:
    - can python encode raw?
    - can python head for a utility like dcraw?
    - or head for a utility like IrfanView (delphi?) or something like
    that?

    Tnx for your help!

  • Cameron Laird

    #2
    Re: Is python for me?

    In article <1163437873.721 254.31070@b28g2 000cwb.googlegr oups.com>,
    lennart <l.m.aangeenbru g@gmail.comwrot e:
    >Hi,
    >
    >I'm planning to learn a language for 'client' software. Until now, i
    >'speak' only some web based languages, like php. As a kid i programmed
    >in Basic (CP/M, good old days :'-) ) Now i want to start to learn a
    >(for me) new computer language.
    >
    >I like Python. Its free, easy to learn and some favorite programs of my
    >are written in Python / can understand Python (like OpenOffice) etc.
    >
    >But I'm not a full-time programmer. I know, that I've only time &
    >possibility to learn one (= 1) language good. So i ask myself is python
    >the language I'm looking for?
    >
    >In the future, i want to write the following applications:
    >[*] A database driven program, which can handle my clients, tasks and
    >places (= 3 tables, has to work relative with each other). I think,
    >this isn't a problem for Python
    >[*] As a photographer i like to build a picture management system (also
    >db) with raw support. Raw is the raw-data from the sensor of the
    >camera. My questions:
    >- can python encode raw?
    >- can python head for a utility like dcraw?
    >- or head for a utility like IrfanView (delphi?) or something like
    >that?

    Comment

    • dakman@gmail.com

      #3
      Re: Is python for me?

      As stated above python is capable of all those things, however on
      larger applications like that it can tend to slow down a bit. And the
      executables do need a little bit of work, because it's bassicly a dll
      and a library of all your .pyc files. However python is still a great
      language and I would recomend it. And most of these things will
      probably be fixed in Python 3000!
      Cameron Laird wrote:
      In article <1163437873.721 254.31070@b28g2 000cwb.googlegr oups.com>,
      lennart <l.m.aangeenbru g@gmail.comwrot e:
      Hi,

      I'm planning to learn a language for 'client' software. Until now, i
      'speak' only some web based languages, like php. As a kid i programmed
      in Basic (CP/M, good old days :'-) ) Now i want to start to learn a
      (for me) new computer language.

      I like Python. Its free, easy to learn and some favorite programs of my
      are written in Python / can understand Python (like OpenOffice) etc.

      But I'm not a full-time programmer. I know, that I've only time &
      possibility to learn one (= 1) language good. So i ask myself is python
      the language I'm looking for?

      In the future, i want to write the following applications:[*] A database driven program, which can handle my clients, tasks and
      places (= 3 tables, has to work relative with each other). I think,
      this isn't a problem for Python[*] As a photographer i like to build a picture management system (also
      db) with raw support. Raw is the raw-data from the sensor of the
      camera. My questions:
      - can python encode raw?
      - can python head for a utility like dcraw?
      - or head for a utility like IrfanView (delphi?) or something like
      that?
      .
      .
      .
      Yes.
      >
      Yes, Python is generally capable in all the roles you describe.
      Perhaps most exciting, though, is that you can try out the
      language yourself, TODAY, over the next few hours, and, in no
      more time than that, get a realistic if limited idea how it's
      likely to work for you. With the right introduction <URL:
      http://docs.python.org/tut/ you can be coding usefully in
      Python very quickly.

      Comment

      • Dan Lenski

        #4
        Re: Is python for me?

        lennart wrote:
        But I'm not a full-time programmer. I know, that I've only time &
        possibility to learn one (= 1) language good. So i ask myself is python
        the language I'm looking for?
        Yep! Python is very much a jack-of-all-trades language. I've used it
        for similar tasks, including as a front-end for dcraw (I have a little
        python script to slurp images from a camera with dcraw and convert them
        all to JPEG).

        Python has excellent libraries for image manipulation (for example
        Python Imaging Library) and for abstracting an SQL database to an
        object-oriented form that makes it a snap to work with (I love
        SQLAlchemy).

        You can learn Python really fast, and it sort of guides you in the
        right direction by providing a correct way to do almost everything
        without constraining you, so that your code will be consistent and
        readable. This, in my opinion, is Python's chief advantage over Perl,
        which is the other highly popular dynamic jack-of-all-trades language.
        I learned Perl about 10 years ago and loved it for a while, but it's
        messy as heck and I find my own code from a few months ago nearly
        unreadable... I also spend a lot more time debugging Perl code because
        there are so many error-prone things that are silenty allowed rather
        than flagged as errors.

        I've been using Python for several months and it's just great for
        everything. I think it's an ideal first or only programming language!
        I've had no reason to write a program in anything else since learning
        Python, and I write a LOT of little throwaway programs.

        Dan

        Comment

        • Carsten Haese

          #5
          Re: Is python for me?

          On Mon, 2006-11-13 at 10:14 -0800, Dan Lenski wrote:
          lennart wrote:
          So i ask myself is python the language I'm looking for?
          >
          Yep! Python is very much a jack-of-all-trades language.
          I'll run the risk of being nitpicky, but the full phrase is "Jack of all
          trades, master of none," which doesn't do Python justice. Python is a
          master of all trades!

          But I agree with Dan's sentiment, Python is definitely the language
          you're looking for.

          -Carsten.


          Comment

          • lennart

            #6
            Re: Is python for me?


            Carsten Haese schreef:
            On Mon, 2006-11-13 at 10:14 -0800, Dan Lenski wrote:
            lennart wrote:
            So i ask myself is python the language I'm looking for?
            Yep! Python is very much a jack-of-all-trades language.
            >
            I'll run the risk of being nitpicky, but the full phrase is "Jack of all
            trades, master of none," which doesn't do Python justice. Python is a
            master of all trades!
            >
            But I agree with Dan's sentiment, Python is definitely the language
            you're looking for.
            >
            -Carsten.
            Tnx everyone for your response! It's just for me a big step to learn a
            new language. Not because of the difficulty, but because of the time
            and so.

            Later, i remembered that Gimp can also work with python (scripts). So,
            even for my second wish, there will be somewhere, somehow a way to do
            it.

            At least: i use the dutch portal http://python.startpagina.nl/ to start
            with. Can you advice me a good Python interpreter, or a good startpage
            (as in Python for dummys)?

            Lennart

            Comment

            • lennart

              #7
              Re: Is python for me?


              dakman@gmail.co m schreef:
              As stated above python is capable of all those things, however on
              larger applications like that it can tend to slow down a bit. And the
              executables do need a little bit of work, because it's bassicly a dll
              and a library of all your .pyc files. However python is still a great
              language and I would recomend it. And most of these things will
              probably be fixed in Python 3000!
              >>
              ><<snip>>
              Python very quickly.
              Can you define 'large'? Is that large in code, or large in database? I
              don't know which database is supported. If its a external db, like
              MySql, the query is performed through the software of MySql, am I
              right? If I'm correct, the 'slowness' comes from the amount of code in
              python itself, not from the database.

              Comment

              • Stephen Eilert

                #8
                Re: Is python for me?


                Not to be picky, but any slowness in software is rarely because of code
                size. Rather, it is the data size and algorithms that play the major
                role. Only after you got the first two right is that you should worry
                about implementation speed.

                That said, you are correct. Only if you intend to do *heavy* processing
                of the returned data, your major bottleneck should be the database.

                *If* you find Python to be slow(for some specific operation, never for
                a whole application), you could always rewrite that section using
                another language (C/C++ come to mind), or call external libraries to do
                the heavy-lifting. The easy integration between Python and C (compared
                to a couple other popular platforms) is what drove me to Python.

                Make it work first. Then optimize. And Python helps both.


                Stephen

                lennart escreveu:
                dakman@gmail.co m schreef:
                >
                As stated above python is capable of all those things, however on
                larger applications like that it can tend to slow down a bit. And the
                executables do need a little bit of work, because it's bassicly a dll
                and a library of all your .pyc files. However python is still a great
                language and I would recomend it. And most of these things will
                probably be fixed in Python 3000!
                >
                <<snip>>
                Python very quickly.
                >
                Can you define 'large'? Is that large in code, or large in database? I
                don't know which database is supported. If its a external db, like
                MySql, the query is performed through the software of MySql, am I
                right? If I'm correct, the 'slowness' comes from the amount of code in
                python itself, not from the database.

                Comment

                • Cameron Laird

                  #9
                  Re: Is python for me?

                  In article <1163447345.986 774.289950@h54g 2000cwb.googleg roups.com>,
                  lennart <l.m.aangeenbru g@gmail.comwrot e:

                  Comment

                  • jkn

                    #10
                    Re: Is python for me?

                    Hi Carsten
                    >
                    I'll run the risk of being nitpicky, but the full phrase is "Jack of all
                    trades, master of none," which doesn't do Python justice. Python is a
                    master of all trades!
                    >
                    FYI that's only *one* version of 'the full phrase'. I, for instance, am
                    a 'Jack of all trades, master of many'. I regard Python in the same
                    light ;-).

                    jon N

                    Comment

                    • TiNo

                      #11
                      Re: Is python for me?

                      >
                      At least: i use the dutch portal http://python.startpagina.nl/ to start
                      with. Can you advice me a good Python interpreter, or a good startpage
                      (as in Python for dummys)?
                      >
                      Lennart
                      >
                      --

                      >
                      check http://www.diveintopython.org/
                      pretty good book on all the basics, and it's freely available online.
                      for interpreters, try out SPE http://stani.be/python/spe/blog/ , it is
                      free, and has some nice features.
                      And see: http://spyced.blogspot.com/2006/02/p...de-review.html
                      for a comparison of 4 ide's (including SPE)

                      Comment

                      • Dan Lenski

                        #12
                        Re: Is python for me?


                        Carsten Haese wrote:
                        On Mon, 2006-11-13 at 10:14 -0800, Dan Lenski wrote:
                        lennart wrote:
                        So i ask myself is python the language I'm looking for?
                        Yep! Python is very much a jack-of-all-trades language.
                        >
                        I'll run the risk of being nitpicky, but the full phrase is "Jack of all
                        trades, master of none," which doesn't do Python justice. Python is a
                        master of all trades!
                        Indeed! That's why I left out the "master of none" prt :-) For me,
                        Python is "jack of all trades, master of everything I've thrown at it
                        so far."

                        Dan

                        Comment

                        • SPE - Stani's Python Editor

                          #13
                          Re: Is python for me?

                          lennart schreef:
                          [*] As a photographer i like to build a picture management system
                          Cornice, a cross-platform image viewer, might be a good start.

                          Features
                          Here is a list of the main features of Cornice:

                          * Fully cross-platform: it should run wherever wxPython does;
                          * Detail and thumbnail view for images;
                          * Image preview;
                          * Automatic recognition of images, with a variety of formats
                          supported;
                          * Bookmarks;
                          * Full-screen view;
                          * Zooming and rotation;
                          * Slideshow;
                          * Good keyboard navigation (still not perfect, but this is true for
                          all the features ;-);
                          * Image loading from zip archives;
                          * i18n support (with Italian and French translations available);
                          * EXIF data support;
                          * Some more...

                          For more info, take a look at


                          Stani

                          --
                          Free python IDE for Windows,Mac & Linux with UML,PyChecker,Debugger,GUI design,Blender & more


                          Comment

                          • Mark Woodward

                            #14
                            Re: Is python for me?

                            On Mon, 13 Nov 2006 09:11:13 -0800, lennart wrote:
                            Hi,
                            >
                            I'm planning to learn a language for 'client' software. Until now, i
                            'speak' only some web based languages, like php. As a kid i programmed
                            in Basic (CP/M, good old days :'-) ) Now i want to start to learn a
                            (for me) new computer language.
                            >
                            I like Python. Its free, easy to learn and some favorite programs of my
                            are written in Python / can understand Python (like OpenOffice) etc.
                            >
                            But I'm not a full-time programmer. I know, that I've only time &
                            possibility to learn one (= 1) language good. So i ask myself is python
                            the language I'm looking for?
                            ....

                            I've been hesitant to write this in the past but seems like a good time.

                            I'm at the same stage, but (and this is NOT a troll) I'm tossing up
                            between Python and Ruby. I know this has been discussed numerous times but
                            I'd like to come at it from a different angle.

                            I've been 'playing' with both languages and to be honest it's a case of 6
                            of one, half a dozen of the other. If I'm using python I 'think' python
                            and if I'm using Ruby I 'think' ruby (if that makes sense). Ie I don't
                            find I'm more productive in one over the other to any great extent (pretty
                            unproductive in both ATM to be honest ;-)) .

                            In the foreseeable future I suspect I'll stick with one and just use it
                            for things I personally will use/need. But (and here's where I finally get
                            to a question) I use Linux, I love the whole idea of open source and
                            contributing in some way. So if I ever get to the stage where I can give
                            something back is one preferred over the other? I would have thought no
                            but I read on the Ubuntu site somewhere that they prefer contributions
                            written in Python/ pyGTK?? Is this just a 'preference' or because python
                            is installed by default? (whereas Ruby isn't)? Is it just Ubuntu or Linux
                            distros in general?

                            I hope you can see where I'm coming from here. I don't want to start a
                            Python/Ruby flame war. That's not the question. The question is "is one
                            preferred over the other when contributing software and is this just a
                            particular distros preference"?


                            cheers,


                            --
                            Mark

                            Comment

                            • Steve Holden

                              #15
                              Re: Is python for me?

                              Mark Woodward wrote:
                              On Mon, 13 Nov 2006 09:11:13 -0800, lennart wrote:
                              >
                              >Hi,
                              >>
                              >I'm planning to learn a language for 'client' software. Until now, i
                              >'speak' only some web based languages, like php. As a kid i programmed
                              >in Basic (CP/M, good old days :'-) ) Now i want to start to learn a
                              >(for me) new computer language.
                              >>
                              >I like Python. Its free, easy to learn and some favorite programs of my
                              >are written in Python / can understand Python (like OpenOffice) etc.
                              >>
                              >But I'm not a full-time programmer. I know, that I've only time &
                              >possibility to learn one (= 1) language good. So i ask myself is python
                              >the language I'm looking for?
                              ....
                              >
                              I've been hesitant to write this in the past but seems like a good time.
                              >
                              I'm at the same stage, but (and this is NOT a troll) I'm tossing up
                              between Python and Ruby. I know this has been discussed numerous times but
                              I'd like to come at it from a different angle.
                              >
                              I've been 'playing' with both languages and to be honest it's a case of 6
                              of one, half a dozen of the other. If I'm using python I 'think' python
                              and if I'm using Ruby I 'think' ruby (if that makes sense). Ie I don't
                              find I'm more productive in one over the other to any great extent (pretty
                              unproductive in both ATM to be honest ;-)) .
                              >
                              In the foreseeable future I suspect I'll stick with one and just use it
                              for things I personally will use/need. But (and here's where I finally get
                              to a question) I use Linux, I love the whole idea of open source and
                              contributing in some way. So if I ever get to the stage where I can give
                              something back is one preferred over the other? I would have thought no
                              but I read on the Ubuntu site somewhere that they prefer contributions
                              written in Python/ pyGTK?? Is this just a 'preference' or because python
                              is installed by default? (whereas Ruby isn't)? Is it just Ubuntu or Linux
                              distros in general?
                              >
                              I hope you can see where I'm coming from here. I don't want to start a
                              Python/Ruby flame war. That's not the question. The question is "is one
                              preferred over the other when contributing software and is this just a
                              particular distros preference"?
                              >
                              Ubuntu is pretty much a Python-oriented distribution. A lot of people
                              like it because you always get a fairly up-to-date Python with lots of
                              extras available.

                              I don't know that much about Ruby, but the best approach to software
                              development has always been to choose the best language for solving the
                              problem, so you seem to be doing OK.

                              regards
                              Steve
                              --
                              Steve Holden +44 150 684 7255 +1 800 494 3119
                              Holden Web LLC/Ltd http://www.holdenweb.com
                              Skype: holdenweb http://holdenweb.blogspot.com
                              Recent Ramblings http://del.icio.us/steve.holden

                              Comment

                              Working...