Re: a different question: can you earn a living with *just* python?
[EMAIL PROTECTED] wrote: > Paul Rubin wrote: >> Very interesting post and list. I think I'd add at least one assembly >> language. > > Yes, definitely. I'd propose DEK's MMIX assembly language if you go for only one (or two) -- learn modern machine architectural directions at the same time as you learn an assembly language. You can still execute it (plenty of simulators are available for free), and you can get an idea of kinds of efficiency without having to learn five or six architectures. --Scott David Daniels [EMAIL PROTECTED] -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
On 2006-09-28, Roy Smith <[EMAIL PROTECTED]> wrote: > In article <[EMAIL PROTECTED]>, > "Carl J. Van Arsdall" <[EMAIL PROTECTED]> wrote: > >> > Things like decorators and metaclasses certainly add power, but they add >> > complexity too. It's no longer a simple language. >> > >> Well, I think a simple language is a language that makes the simple >> things simple and some of the complex things simple. But I also like a >> language where, if I need it, I can tap into some raw power and do that >> really wild stuff. So its simple to use if that's all you need yet >> offers the complexity to get things done that a purely "simple" language >> can't do. I'd say its as simple as you want it to be :) > > The problem is, if the complex features are there, people will use them. > On any large project, there will always be some people who revel in using > every obscure feature of a language. That forces everybody else on the > team (and all future members of the team) to know (or learn) those features > in order to be able to use and maintain the code base. I would think that this kind of issues is the responsibility of the project leader. Otherwise you might as well remove the possibilty of a recursive function. There may always be someone that writes complicated recursive functions whenever a simple iterative solution would do fine. -- Antoon Pardon -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
John Salerno wrote: > It's a nice thought that a person can earn a living programming with > Python, which is fun enough to use just for its own sake. But for > someone like me (i.e. no programming experience) it's always a little > disheartening to see that most (if not all) job descriptions that ask > for Python still require some C/C++ or other language knowledge. I > suppose this isn't an issue if you studied CS in college, because you > would have been exposed to many languages. > > But what if you are an expert Python program and have zero clue about > other languages? Can you still earn a living that way, or do most/all > companies require multiple language proficiency? Being a programmer isn't just a matter of knowing one or several programming languages, just as being an author isn't merely a matter of knowing writing and a language. I've been involved in one development project where COBOL programmers were handed detailed design descriptions written in pseudo code. The SQL code used to access the database was complete in the spec. These programmer just needed to know how to translate pseudo code to COBOL one module at a time, and of course, they needed to know how to operate the IDE and run tests etc. In all other projects I've worked in, programmers were also involved in design etc, often in the whole loop from requirements gathering to deployment and maintenance of the product. Knowing a programming language is a tiny part of that. Knowing two or three languages is still a tiny part of the set of skill and abilities required. I'm talking about communication skills, ability to extract relevant information from people who know a problem domain, but lack system design skills etc, strong analytical abilities, design skills, problem solving skills, the general ability to get things done in a reliable and timely manner etc etc. I'd be reluctant to employ someone without at least a B.Sc. in some relevant subject unless they had a proven track record. -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
Roy Smith a écrit : > In article <[EMAIL PROTECTED]>, > "Carl J. Van Arsdall" <[EMAIL PROTECTED]> wrote: > > >>>Things like decorators and metaclasses certainly add power, but they add >>>complexity too. It's no longer a simple language. >>> >> >>Well, I think a simple language is a language that makes the simple >>things simple and some of the complex things simple. But I also like a >>language where, if I need it, I can tap into some raw power and do that >>really wild stuff. So its simple to use if that's all you need yet >>offers the complexity to get things done that a purely "simple" language >>can't do. I'd say its as simple as you want it to be :) > > > The problem is, if the complex features are there, people will use them. > On any large project, there will always be some people who revel in using > every obscure feature of a language. That forces everybody else on the > team (and all future members of the team) to know (or learn) those features > in order to be able to use and maintain the code base. The fact is that these "complex" features allow to *greatly* simplify things, specially on "large" projects - that may not be that large after all. Now wrt/ being "forced" to learn these features, it's certainly more rewarding and less difficult than having to grasp Javaish monster hierarchies and overcomplicated frameworks where you have to define interfaces and classes for something as dumb as a callback function. Believe me, I've seen Python code that was really quite complex (and hard to maintain) *because* it didn't use the "obscure" features of the language. "When the only tool you have is a hammer..." -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
Roy Smith wrote: > The problem is, if the complex features are there, people will use them. > On any large project, there will always be some people who revel in using > every obscure feature of a language. That forces everybody else on the > team (and all future members of the team) to know (or learn) those features > in order to be able to use and maintain the code base. Well, I am sympathetic with your point and I actually would have no problem if metaclasses and multiple inheritance were removed from the language. However my point was a different one. If you know all this stuff, you are likely to be able to learn any language. My point was that when hiring a programmer, one should also look at the potential of the person, not only at his/her present skills. Michele Simionato -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
Ben Finney wrote: > I submit that a programmer who knows *only* one programming language > can never be an expert in that language; it is only exposure to > multiple tools and ways of programming that can grow a one-trick pony > into an expert. Well, it all depends on the definition of "expert". Python is written in C, so if by expert of Python you mean somebody who knows its internal working, its is clear that that person must know C. However, even knowing Python only gives you a lot of "multiple tools and ways of programming", much more than knowing Java or Visual Basic. That was my point. Also, I believe that a person who knows Python has no reason to learn Java or Visual Basic (except for pragmatic purposes). After Python I learned Scheme and if I had time I would give a look at Haskell, or some other different language. BTW I decided not to learn Ruby it is not really different from Python in terms of learning "new ways of programming". Michele Simionato -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
John J. Lee wrote: > ISTM that there's a vast amount of mostly-tacit knowledge about the > way things work, and they way they should work, good practices, design > techniques, rules of thumb, Bad Ideas ;-), etc. etc. that good > programmers do have and bad or inexperienced programmers don't. Yep, I think that's the point. Worth repeating (and +1 for QOTW). Michele Simionato -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
Roy Smith wrote: > Things like decorators and metaclasses certainly add power, but they add > complexity too. never used them. does that make me an amateur? -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
Roy Smith <[EMAIL PROTECTED]> writes: > The problem is, if the complex features are there, people will use them. > On any large project, there will always be some people who revel in using > every obscure feature of a language. That forces everybody else on the > team (and all future members of the team) to know (or learn) those features > in order to be able to use and maintain the code base. On any large project, there tends to be one person who understands any particular piece of the code in it and is generally in charge of it; any requests for changes affecting that file usually get routed to that person. Maybe another person or two has had their hand in it at one time or another and could catch up on it if they needed to. Everybody else has their own area that they stay on top of, and have little clue about the other parts. In the case of metaclasses, there might be some important class that uses special metaclasses and is maintained by an expert. Other people simply use that class and make calls to it but don't have to mess with it very often. That is what modularity is about. Decorators are another matter, but they aren't really confusing like metaclasses, and are useful in a lot of places. -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
In article <[EMAIL PROTECTED]>, "Carl J. Van Arsdall" <[EMAIL PROTECTED]> wrote: > > Things like decorators and metaclasses certainly add power, but they add > > complexity too. It's no longer a simple language. > > > Well, I think a simple language is a language that makes the simple > things simple and some of the complex things simple. But I also like a > language where, if I need it, I can tap into some raw power and do that > really wild stuff. So its simple to use if that's all you need yet > offers the complexity to get things done that a purely "simple" language > can't do. I'd say its as simple as you want it to be :) The problem is, if the complex features are there, people will use them. On any large project, there will always be some people who revel in using every obscure feature of a language. That forces everybody else on the team (and all future members of the team) to know (or learn) those features in order to be able to use and maintain the code base. -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
Roy Smith wrote: > In article <[EMAIL PROTECTED]>, > "Michele Simionato" <[EMAIL PROTECTED]> wrote: > > >> John Salerno wrote: >> >>> But what if you are an expert Python program and have zero clue about >>> other languages? >>> >> Python is not a trivial language (think of generators, decorators, >> metaclasses, etc) >> > > This is, unfortunately, a sad commentary on the evolution of the language > over the past few years. One of the things that made Python so attractive > was how simple it was, and yet powerful. > > Things like decorators and metaclasses certainly add power, but they add > complexity too. It's no longer a simple language. > Well, I think a simple language is a language that makes the simple things simple and some of the complex things simple. But I also like a language where, if I need it, I can tap into some raw power and do that really wild stuff. So its simple to use if that's all you need yet offers the complexity to get things done that a purely "simple" language can't do. I'd say its as simple as you want it to be :) -c -- Carl J. Van Arsdall [EMAIL PROTECTED] Build and Release MontaVista Software -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
In article <[EMAIL PROTECTED]>, "Michele Simionato" <[EMAIL PROTECTED]> wrote: > John Salerno wrote: > > But what if you are an expert Python program and have zero clue about > > other languages? > > Python is not a trivial language (think of generators, decorators, > metaclasses, etc) This is, unfortunately, a sad commentary on the evolution of the language over the past few years. One of the things that made Python so attractive was how simple it was, and yet powerful. Things like decorators and metaclasses certainly add power, but they add complexity too. It's no longer a simple language. -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
"Michele Simionato" <[EMAIL PROTECTED]> writes: > John Salerno wrote: > > But what if you are an expert Python program and have zero clue about > > other languages? > > Well I want to play devil's advocate here, and I think that if you > know Python you can earn your living. Heck, there are people knowing > Visual Basic only that earn their living! ;) The question of whether they can earn their living is separate from the question of whether they are experts (though John Salerno asked the one with the assumption of the other). I submit that a programmer who knows *only* one programming language can never be an expert in that language; it is only exposure to multiple tools and ways of programming that can grow a one-trick pony into an expert. -- \ "Today, I was -- no, that wasn't me." -- Steven Wright | `\ | _o__) | Ben Finney -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
Paul Rubin wrote: > "[EMAIL PROTECTED]" <[EMAIL PROTECTED]> writes: > > > > * C > > > > * A static functional language (ML, Haskell, etc) > > > > * Lisp or scheme Scheme > > > > * A static class-oriented language (Java, C++, etc) > > > > * A dynamic OO language (Python, ruby, smalltalk, etc) > > > > > > > > and at least a brief look at, say, Forth and Prolog. > > > > > > Interesting list. Of those, I've done tons of C, just enough lisp to get > > > the feel of it, lots of C++, and of course Python. I've never done any > > > functional stuff. > > > > You should. It's very enlightening. > > Very interesting post and list. I think I'd add at least one assembly > language. Yes, definitely. > I hate to say it but I think I'd remove Python. As much as > Python has helped me get useful and practical things done, from a > learning point of it, as much as the developers deny it, I'd say it's > basically an OO Lisp dialect with syntax sugar. I found it completely > natural and pleasant to program in almost immediately, because I'd > already been using Lisp and Java. I haven't used Smalltalk or Ruby so > can't comment. OO programming in dynamic languages can be _very_ different from in non-OO languages. I'm hesitant to put CLOS on the list as a lot of the mind-expanding value of Lisp can/should be achieved without it and I'd rather not confuse a person learning a couple of languages by having them try to keep OO-styled Lisp and traditional-style Listp straight. Hence I think Smalltalk or python/ruby are better choices for learning dynamic OO programming. > I wonder why you chose ML over Haskell in a few other posts. Personal bias, my university was more ML-centric than Haskell. At least I didn't show an even bigger bias by putting Dylan on the list. :-) Either ML or Haskell is a fine choice for learning strongly statically typed functional programming. -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
"[EMAIL PROTECTED]" <[EMAIL PROTECTED]> writes: > > > * C > > > * A static functional language (ML, Haskell, etc) > > > * Lisp or scheme Scheme > > > * A static class-oriented language (Java, C++, etc) > > > * A dynamic OO language (Python, ruby, smalltalk, etc) > > > > > > and at least a brief look at, say, Forth and Prolog. > > > > Interesting list. Of those, I've done tons of C, just enough lisp to get > > the feel of it, lots of C++, and of course Python. I've never done any > > functional stuff. > > You should. It's very enlightening. Very interesting post and list. I think I'd add at least one assembly language. I hate to say it but I think I'd remove Python. As much as Python has helped me get useful and practical things done, from a learning point of it, as much as the developers deny it, I'd say it's basically an OO Lisp dialect with syntax sugar. I found it completely natural and pleasant to program in almost immediately, because I'd already been using Lisp and Java. I haven't used Smalltalk or Ruby so can't comment. I wonder why you chose ML over Haskell in a few other posts. Haskell seems more mind-expanding (as someone put it) to me because of its pervasive lazy evaluation. The "streams" examples in SICP, and the numerical computation examples in Hughes' famous paper "Why Functional Programming Matters" (google for it) show how powerful this can be. I've been wanting to rewrite Hughes' examples using Python generators, just for fun. Finally, the Haridi/van Roy Mozart/Oz book has come up on clpy numerous times, so should certainly be mentioned in a thread like this: http://www.info.ucl.ac.be/~pvr/book.html -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
"Michele Simionato" <[EMAIL PROTECTED]> writes: > John Salerno wrote: > > But what if you are an expert Python program and have zero clue about > > other languages? > > Python is not a trivial language (think of generators, decorators, > metaclasses, etc) > If you can master it, you can master even other languages, so I would > hire somebody > who knows Python only. Notice that by "knowing Python" I mean also > knowing its > standard library and the most common Python third party libraries (GUI > toolkits, XML toolkits, SQL libraries, twisted, etc. etc.) It's interesting that, thinking about it, I think lots of the technical knowledge used on a daily basis (doing mostly Python/SQL/JS etc. in my case) fits into neither the "language" nor "library" category, nor easily into most of the other technical categories one hears people use. ISTM that there's a vast amount of mostly-tacit knowledge about the way things work, and they way they should work, good practices, design techniques, rules of thumb, Bad Ideas ;-), etc. etc. that good programmers do have and bad or inexperienced programmers don't. John -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
John Salerno wrote: > [EMAIL PROTECTED] wrote: > > > Yes, and making sure that the first several you learn are disparate in > > their common idioms and programming models is incredibly worthwile to > > your development as a programmer IMO. > > You're right about that. While I'm definitely no expert in it, I did > start learning C# last year (even before I started with Python), and > though I never got too far with it, it was a great experience to learn a > language like that, and then move on to something as different as > Python. It really helped me to see how things are done differently given > the type of language you are using. Try learning a really different language next. ML would be enlightening, or Forth. -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
John Salerno wrote: > But what if you are an expert Python program and have zero clue about > other languages? Python is not a trivial language (think of generators, decorators, metaclasses, etc) If you can master it, you can master even other languages, so I would hire somebody who knows Python only. Notice that by "knowing Python" I mean also knowing its standard library and the most common Python third party libraries (GUI toolkits, XML toolkits, SQL libraries, twisted, etc. etc.) Michele Simionato -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
Antoine De Groote wrote: > John Salerno wrote: > > It's a nice thought that a person can earn a living programming with > > Python, which is fun enough to use just for its own sake. But for > > someone like me (i.e. no programming experience) it's always a little > > disheartening to see that most (if not all) job descriptions that ask > > for Python still require some C/C++ or other language knowledge. I > > suppose this isn't an issue if you studied CS in college, because you > > would have been exposed to many languages. > > > > But what if you are an expert Python program and have zero clue about > > other languages? Can you still earn a living that way, or do most/all > > companies require multiple language proficiency? > > > > (I suppose this isn't exactly a Python problem, either. I'm sure even > > companies that don't use Python still use multiple languages. Maybe it > > isn't a good idea to focus entirely on a single language, depending on > > the job at hand.) > > hmm, I don't know, but I can't imagine someone being a Python (or any > other language) wizard, without knowing other languages. Does that even > exist? > > Regards, > antoine I thought that would be quite common among Java programmers unless they are oldtimers? -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
John Salerno wrote: > But what if you are an expert Python program and have zero clue about > other languages? Can you still earn a living that way, or do most/all > companies require multiple language proficiency? Well I want to play devil's advocate here, and I think that if you know Python you can earn your living. Heck, there are people knowing Visual Basic only that earn their living! ;) Anyway, at work I use Python and SQL only (and a bit of bash and HTML). Michele Simionato -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
[EMAIL PROTECTED] wrote: > Yes, and making sure that the first several you learn are disparate in > their common idioms and programming models is incredibly worthwile to > your development as a programmer IMO. You're right about that. While I'm definitely no expert in it, I did start learning C# last year (even before I started with Python), and though I never got too far with it, it was a great experience to learn a language like that, and then move on to something as different as Python. It really helped me to see how things are done differently given the type of language you are using. -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
"[EMAIL PROTECTED]" <[EMAIL PROTECTED]> wrote: > SQL I don't class as a programming language, but it's certainly worth > learning for most modern programmers. I suppose it's not a *programming* language in the sense that it's not Turning Complete, but it *is* a language, with a complex syntax. But, more to the point, knowing SQL opens your eyes to a way to think about, organize, and manipulate data which is very different from conventional procedural languages. That's the real value in learning it. Oh, I left out regular expressions. Again, not a programming language per-se, but a powerful and complex tool which manipulates data in a very different way from other things. There are jobs for which good grasp of regexes will save you hundreds of lines of code. It's not the right tool for every job, but it's a tool that anybody who calls themselves a professional programmer should have in their collection. -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
Roy Smith wrote: > "[EMAIL PROTECTED]" <[EMAIL PROTECTED]> wrote: > > If you're really trying to become a well-rounded computer professional > > I'd recommend reasonable exposure to at least: > > > > * C > > * A static functional language (ML, Haskell, etc) > > * Lisp or scheme Scheme > > * A static class-oriented language (Java, C++, etc) > > * A dynamic OO language (Python, ruby, smalltalk, etc) > > > > and at least a brief look at, say, Forth and Prolog. > > Interesting list. Of those, I've done tons of C, just enough lisp to get > the feel of it, lots of C++, and of course Python. I've never done any > functional stuff. You should. It's very enlightening. > Just enough Forth to be able to say I'd done it (as long > as you don't press me too hard on the exact definition of "done it"). > > I've also done a lot of serious Fortran. Some SQL. Some Java. Perl when > I'm forced into it. PostScript (yes, it really is a programming language). SQL I don't class as a programming language, but it's certainly worth learning for most modern programmers. Postscript is a stack-oriented language in the same vein as Forth, so if you really learn one then I wouldn't bother with the other until you've learned something in each of the genres I've listed (unless you need the second for a reason--but I wouldn't learn 2 stack languages in an "expand your brain" excercise until after you've learned languages in lots of other categories). > The point is, there's lots of languages. If your goal is to make a career > as a programmer, you will eventually end up learning lots of languages. > Each one will teach you something and make you a better programmer. Yes, and making sure that the first several you learn are disparate in their common idioms and programming models is incredibly worthwile to your development as a programmer IMO. Obviously if you need a language for a job, you learn that next. But when it comes to learning new languages for fun, if you already know C++ and Python I really think you're much better off learning Lisp, ML, or Forth than Ruby or Java as your next "learn to improve my skills" language. And it's not about hot new things; you can easily learn a _ton_ about programming by learning C, Lisp, Smalltalk, C++, ML, Algol, and Forth, and you haven't learned any new "flavor of the month" language. The difference between Ruby, Python, and Smalltalk is very small compared to the difference between C, Lisp, and ML. -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
"[EMAIL PROTECTED]" <[EMAIL PROTECTED]> wrote: > If you're really trying to become a well-rounded computer professional > I'd recommend reasonable exposure to at least: > > * C > * A static functional language (ML, Haskell, etc) > * Lisp or scheme Scheme > * A static class-oriented language (Java, C++, etc) > * A dynamic OO language (Python, ruby, smalltalk, etc) > > and at least a brief look at, say, Forth and Prolog. Interesting list. Of those, I've done tons of C, just enough lisp to get the feel of it, lots of C++, and of course Python. I've never done any functional stuff. Just enough Forth to be able to say I'd done it (as long as you don't press me too hard on the exact definition of "done it"). I've also done a lot of serious Fortran. Some SQL. Some Java. Perl when I'm forced into it. PostScript (yes, it really is a programming language). Toyed with Ruby. The point is, there's lots of languages. If your goal is to make a career as a programmer, you will eventually end up learning lots of languages. Each one will teach you something and make you a better programmer. Some will pay the bills. Every few years there will be a new hot toy that comes along that you'll want to learn. These days, I'd guess that would be Ruby and/or D. Five years from now, it'll be something none of us have ever heard of because it hasn't been invented yet. At one point, I thought I was cool and marketable because I knew C (the hot new toy of the 80's). If I never progressed past that, today I'd be asking people if they'd like fries with their burger. -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
John Salerno <[EMAIL PROTECTED]> wrote: > But what if you are an expert Python program and have zero clue about > other languages? Can you still earn a living that way, or do most/all > companies require multiple language proficiency? Nobody likes a one-trick pony. -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
Richard Jones <[EMAIL PROTECTED]> writes: > John Salerno wrote: > > But what if you are an expert Python program and have zero clue > > about other languages? Can you still earn a living that way, or do > > most/all companies require multiple language proficiency? > > These are separate questions. I know a dozen languages but I'm only > required to know Python for my day job. That may be the only technology skill listed on the job description, but I'm betting you would be unable to perform satisfactorily if Python was truly the only programming language you knew. I've worked with you, if I'm not mistaken, and your Python skill is only one technology skill of many that contribute to why an employer would choose you. That they focus on Python skill in the job advert doesn't change my opinion that they won't find what they're looking for in a Python-only expert. -- \ "The judge asked, 'What do you plead?' I said, 'Insanity, your | `\ honour. Who in their right mind would park in the passing | _o__)lane?'" -- Steven Wright | Ben Finney -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
John Salerno <[EMAIL PROTECTED]> writes: > But what if you are an expert Python program and have zero clue > about other languages? Can you still earn a living that way, or do > most/all companies require multiple language proficiency? I certainly wouldn't hire someone, for any programming team I've been a part of, who claimed to be an "expert" in one language but knew little about anything else. Most of the value I get from "expert" programmers is their broad knowledge of many topics, techniques, and *tools*. -- \ "An idea isn't responsible for the people who believe in it." | `\-- Donald Robert Perry Marquis | _o__) | Ben Finney -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
John Salerno wrote: > It's a nice thought that a person can earn a living programming with > Python, which is fun enough to use just for its own sake. But for > someone like me (i.e. no programming experience) it's always a little > disheartening to see that most (if not all) job descriptions that ask > for Python still require some C/C++ or other language knowledge. I > suppose this isn't an issue if you studied CS in college, because you > would have been exposed to many languages. > > But what if you are an expert Python program and have zero clue about > other languages? Can you still earn a living that way, or do most/all > companies require multiple language proficiency? > When I started at Resolver Python was *almost* my only language experience. Ten years previously I had dabbled a bit with assembly language and various flavours of basic. Whilst doing web stuff I dabbled with Javascript, and I've also played around with a very little C. I have no degree having dropped out of university. Almost all my experience was teaching myself Python in two and a half years of playing with it in my spare time. I learned enough in that time to impress Resolver sufficiently to offer me a job (with about thirty or so other applicants). I now use a fair bit of C# at Resolver (which is ok), but I'm not what you'd call 'proficient' in it. I'm still still monlingual really. One of the things we've done at Resolver is use the PLY toolkit to write a fairly extensive language parser (no compiler, just the parser and a rewriter), and I think I've read widely enough to understand a fair bit about programming language theory. I'm certainly going to learn more - but it has almost all come through Python. Fuzzyman http://www.voidspace.org.uk/python/index.shtml > (I suppose this isn't exactly a Python problem, either. I'm sure even > companies that don't use Python still use multiple languages. Maybe it > isn't a good idea to focus entirely on a single language, depending on > the job at hand.) -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
John Salerno wrote: > But what if you are an expert Python program and have zero clue about > other languages? Can you still earn a living that way, or do most/all > companies require multiple language proficiency? These are separate questions. I know a dozen languages but I'm only required to know Python for my day job. Richard -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
John Salerno wrote: > It's a nice thought that a person can earn a living programming with > Python, which is fun enough to use just for its own sake. But for > someone like me (i.e. no programming experience) it's always a little > disheartening to see that most (if not all) job descriptions that ask > for Python still require some C/C++ or other language knowledge. I > suppose this isn't an issue if you studied CS in college, because you > would have been exposed to many languages. There are two seperate issues here. My current job requires only Python, unless you classify SQL as a programming language. My previous couple of jobs I used a mix of Python and C. I don't think it's easy (perhaps impossible) to become a good programmer without exposure to multiple kinds of languages. If you're really trying to become a well-rounded computer professional I'd recommend reasonable exposure to at least: * C * A static functional language (ML, Haskell, etc) * Lisp or scheme Scheme * A static class-oriented language (Java, C++, etc) * A dynamic OO language (Python, ruby, smalltalk, etc) and at least a brief look at, say, Forth and Prolog. Even though you may not ever use, say, ML and lisp in your work, IMO you'll likely be a much better programmer at work if you've learned C, Lisp, ML, Java, and Python than if you've learned C, C++, Java, Python, Ruby, and VB. And you'll have a much easier time learning new languages if you've learned an array of different ones than if you've been focused in on a couple of kinds of languages. -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
John Salerno wrote: > But what if you are an expert Python program and have zero clue about > other languages? Then I would say that you are not a mature computing professional, but merely a "Python jockey". -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
At Tuesday 26/9/2006 16:38, John Salerno wrote: It's a nice thought that a person can earn a living programming with Python, which is fun enough to use just for its own sake. But for someone like me (i.e. no programming experience) it's always a little disheartening to see that most (if not all) job descriptions that ask for Python still require some C/C++ or other language knowledge. I suppose this isn't an issue if you studied CS in college, because you would have been exposed to many languages. Sometimes it's the "one-size-fits-all" concept applied to workers: just one man to do all things. But what if you are an expert Python program and have zero clue about other languages? Can you still earn a living that way, or do most/all companies require multiple language proficiency? I think it's difficult to be an expert Python programmer and at the same time know nothing about other languages. It's a bit like "general music practice", playing other instruments other than your main one may help a lot. (I suppose this isn't exactly a Python problem, either. I'm sure even companies that don't use Python still use multiple languages. Maybe it isn't a good idea to focus entirely on a single language, depending on the job at hand.) As an example, here at work we use: mostly Python (for web applications) and Delphi (desktop) both for new projects; Java for some background data mining processes; and a bunch of BASIC/Pascal/FORTRAN legacy code which I wish I could throw away ... Gabriel Genellina Softlab SRL __ Preguntá. Respondé. Descubrí. Todo lo que querías saber, y lo que ni imaginabas, está en Yahoo! Respuestas (Beta). ¡Probalo ya! http://www.yahoo.com.ar/respuestas -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
On 9/26/06, John Salerno <[EMAIL PROTECTED]> wrote: > It's a nice thought that a person can earn a living programming with > Python, which is fun enough to use just for its own sake. But for > someone like me (i.e. no programming experience) it's always a little > disheartening to see that most (if not all) job descriptions that ask > for Python still require some C/C++ or other language knowledge. I > suppose this isn't an issue if you studied CS in college, because you > would have been exposed to many languages. > > But what if you are an expert Python program and have zero clue about > other languages? Can you still earn a living that way, or do most/all > companies require multiple language proficiency? > > (I suppose this isn't exactly a Python problem, either. I'm sure even > companies that don't use Python still use multiple languages. Maybe it > isn't a good idea to focus entirely on a single language, depending on > the job at hand.) I am not really a programmer by training (though I spend most of my working time programmer, doing stats and bioinformatics), but when I look at a CV, I do not like to see just a single language, because that means your perspective and views of programming can be very narrow (I know a few bioinformaticians, who only know Perl, who think that hash tables are "a Perl thing"). It could also mean that some classic books in programming (such as Programming Pearls, or The practice of programming) could sound completely foreingn. And I think it is unlikely that Python will really solve _all_ of your programming needs. (I mean, don't you ever find the solution is easier to obtain with a one line awk or sed call than with Python? Or, if you do stats, would you reprogram a whole glm in Python instead of just using R? Or ...) If I remember correctly, "The pragmatic programmers" book recommended that a programmer learn a new program each year. The piece "Teach yourself programming in ten years" (http://www.norvig.com/21-days.html) has some very interesting comments, further references, and comments on other languages. HTH, R. > -- > http://mail.python.org/mailman/listinfo/python-list > -- Ramon Diaz-Uriarte Bioinformatics Unit Spanish National Cancer Centre (CNIO) http://ligarto.org/rdiaz -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
Bruno Desthuilliers wrote: > I really doubt one can be an "expert" in any language without at least a > good knowledge of a half a dozen other languages and some exposure to > yet another half dozen. Ok, I guess the two of you got me on that one. Maybe the conditions of my question are a little too artificial. I suppose what I meant more than a person being familiar with only one language was a person using only one language in their job (which you clearly aren't! :) -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
John Salerno wrote: > It's a nice thought that a person can earn a living programming with > Python, which is fun enough to use just for its own sake. But for > someone like me (i.e. no programming experience) it's always a little > disheartening to see that most (if not all) job descriptions that ask > for Python still require some C/C++ or other language knowledge. I > suppose this isn't an issue if you studied CS in college, because you > would have been exposed to many languages. > > Well, the thing is, once you can program in one language you can pretty much move around to other languages pretty easily (unless they are twisted, but rarely have I been asked to use something crazy). At my job I've written about 30 lines of C code in the 2 years I've been here. The rest has been almost entirely Python. Occasionally other languages come up, you just kinda do what you need to on the fly or get a book when you get stuck. There's so many examples on the web you can go from zero to productive fairly quickly. Of course with anything it takes time to get good with a language, I'm not say you could be an expert but you should be able to look at some C examples and gather most of what you need to construct a simple program. From there hit your references up and go for it. > But what if you are an expert Python program and have zero clue about > other languages? Can you still earn a living that way, or do most/all > companies require multiple language proficiency? > My team mates know strictly Python (and a little shell) and do just fine. I know very few programmers who truly only know a single language. In fact the fact that I know Python has gotten me calls from several recruiters recently. Seems like python is on the up and up. Anyhow, the longer you code the more languages you'll come into contact with. It just usually works out that way. Between school and work I've learned Python, Perl, C, C++, Fortran, and Java. I was only taught C, once I had those concepts down I found usually I just needed to learn the syntax. > (I suppose this isn't exactly a Python problem, either. I'm sure even > companies that don't use Python still use multiple languages. Maybe it > isn't a good idea to focus entirely on a single language, depending on > the job at hand.) > Be familiar with lots of tools, get good at the ones you feel will help you get the job done. No doubt you'll be most proficient in the one you need to use the most, but you'll always need to move around, its definitely a good job skill to have. -- Carl J. Van Arsdall [EMAIL PROTECTED] Build and Release MontaVista Software -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
John Salerno a écrit : > It's a nice thought that a person can earn a living programming with > Python, which is fun enough to use just for its own sake. But for > someone like me (i.e. no programming experience) it's always a little > disheartening to see that most (if not all) job descriptions that ask > for Python still require some C/C++ or other language knowledge. I > suppose this isn't an issue if you studied CS in college, because you > would have been exposed to many languages. You don't need to go to college to learn a programming language. I learnt C with the K&R2 and c.l.c. FWIW and IMVHO, there are at least two languages any programmer should know : C and Lisp. > But what if you are an expert Python program and have zero clue about > other languages? I really doubt one can be an "expert" in any language without at least a good knowledge of a half a dozen other languages and some exposure to yet another half dozen. In my current job, I daily use Python, PHP, SQL (in at least three flavors), Javascript, bash scripting, regexps (in a few flavors), html (yes, I know it's not a 'programming' language), css, half a dozen "web-templating" languages and a couple of "configuration" languages (apache, make etc). And I sometimes have to read/hack C or Java code. > Can you still earn a living that way, or do most/all > companies require multiple language proficiency? If a company only ask you for one single language, then you probably don't want the job. > (I suppose this isn't exactly a Python problem, Well, part of the problem is that once you've learned Python, most other languages (at least the 'main stream' ones) feels like a PITA... > either. I'm sure even > companies that don't use Python still use multiple languages. Most of them, yes. Some don't. Guess where you'll find the best programmers... > Maybe it > isn't a good idea to focus entirely on a single language, depending on > the job at hand.) Right. -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
John> But what if you are an expert Python program and have zero clue John> about other languages? Can you still earn a living that way, or do John> most/all companies require multiple language proficiency? I'd think any company that wanted to hire you as a programmer would normally expect that you could program in multiple languages. Still, at my current job we are a C++ & Python shop. I can still write C okay, but my boss would probably rightly never assign a C++ task to me. Skip -- http://mail.python.org/mailman/listinfo/python-list
Re: a different question: can you earn a living with *just* python?
John Salerno wrote: > It's a nice thought that a person can earn a living programming with > Python, which is fun enough to use just for its own sake. But for > someone like me (i.e. no programming experience) it's always a little > disheartening to see that most (if not all) job descriptions that ask > for Python still require some C/C++ or other language knowledge. I > suppose this isn't an issue if you studied CS in college, because you > would have been exposed to many languages. > > But what if you are an expert Python program and have zero clue about > other languages? Can you still earn a living that way, or do most/all > companies require multiple language proficiency? > > (I suppose this isn't exactly a Python problem, either. I'm sure even > companies that don't use Python still use multiple languages. Maybe it > isn't a good idea to focus entirely on a single language, depending on > the job at hand.) hmm, I don't know, but I can't imagine someone being a Python (or any other language) wizard, without knowing other languages. Does that even exist? Regards, antoine -- http://mail.python.org/mailman/listinfo/python-list
a different question: can you earn a living with *just* python?
It's a nice thought that a person can earn a living programming with Python, which is fun enough to use just for its own sake. But for someone like me (i.e. no programming experience) it's always a little disheartening to see that most (if not all) job descriptions that ask for Python still require some C/C++ or other language knowledge. I suppose this isn't an issue if you studied CS in college, because you would have been exposed to many languages. But what if you are an expert Python program and have zero clue about other languages? Can you still earn a living that way, or do most/all companies require multiple language proficiency? (I suppose this isn't exactly a Python problem, either. I'm sure even companies that don't use Python still use multiple languages. Maybe it isn't a good idea to focus entirely on a single language, depending on the job at hand.) -- http://mail.python.org/mailman/listinfo/python-list