Personal computing discussed
Moderators: renee, SecretSquirrel, just brew it!
cheesyking wrote:I'm just trying to find the time to start learning Python. I've got a progammer mate who swears by it, though obviously I can't make a personal recomendation.
As I understand it Python is most useful for complex scripting jobs and simple applications (by that I mean stuff where you're not doing a lot of number crunching in your code, though you can call C/C++ functions for that)
Lots of applications use Python as an internal scripting language too, I'm sure someone knows a long list.
Buub wrote:Me too.Python is my first choice when it comes to scripting.
Fragnificent wrote:It's not just straight logic (i.e. Boolean Logic), an awareness of how stuff is stored in memory is also needed. In some languages (e.g. Assembler, C) it's absolutely critical, in others (e.g. Java) it will stop your application from hogging all the memory on the box and performing like molasses."Being a programmer" is generic, all you need to be good at is logic.
There is no point in being good at one particular language. "Being a programmer" is generic, all you need to be good at is logic.
barleyguy wrote:My personal preferences for scripting languages are Ruby, Perl, and bash. I personally don't like Python's syntax and it doesn't like the way I do indents. So we don't get along. But I think Perl is more intuitive for hacking things out, and Ruby has a more consistent object structure and is more powerful. So Python for me sits in a middle ground that I'd never choose it to solve a problem. Again, that's personal preference. There are many people who choose Python and prefer it.
Flying Fox wrote:Ruby to me is like design by committee. Everybody from every language camp come and say "let's put in our way of doing this thing". So you end up with like a million ways to do one thing, making the code very hard to read if they were written in "different styles". There are so many conventions that have roots in almost any language this is like a big pile of mess.
just brew it! wrote:Yes, I believe Python is a very worthwhile language to have in your arsenal of tools. It enables you to solve a wide range of problems quickly, because there are a huge number of libraries available for many diverse tasks. I started learning Python about 3 years ago, after many years (decades, actually!) working mostly in C/C++. This old dog has learned a few new tricks...
Performance of Python apps won't be quite up to the level of languages that compile directly to machine code like C/C++, but for most purposes it is plenty fast enough. And you can call C/C++ functions from it to do "heavy lifting", if needed.
Regarding the question of how to overlay text on a video stream... well, if you are talking about doing it frame-by-frame in real-time, you probably need a compiled language like C or C++. I've written code that does exactly that (at my day job); we used C and OpenGL.
AMD Damo wrote:Also, whats a "MCSE" and where does that get you? Microsoft Certified Systems Engineer or something like that it stands for, but what type of work do they do? Is it recognised world wide? Thinking I might want to ditch Australia one day and migrate to another country like the USA one day, Australia is too..... out of touch with technology for me, not likely but if I want a good IT job, Australia isn't too great for them.
AMD Damo wrote:just brew it! wrote:Yes, I believe Python is a very worthwhile language to have in your arsenal of tools. It enables you to solve a wide range of problems quickly, because there are a huge number of libraries available for many diverse tasks. I started learning Python about 3 years ago, after many years (decades, actually!) working mostly in C/C++. This old dog has learned a few new tricks...
Performance of Python apps won't be quite up to the level of languages that compile directly to machine code like C/C++, but for most purposes it is plenty fast enough. And you can call C/C++ functions from it to do "heavy lifting", if needed.
Regarding the question of how to overlay text on a video stream... well, if you are talking about doing it frame-by-frame in real-time, you probably need a compiled language like C or C++. I've written code that does exactly that (at my day job); we used C and OpenGL.
A) IT (some branch as its a wide category)
AMD Damo wrote:Thinking I might want to ditch Australia one day and migrate to another country like the USA one day, Australia is too..... out of touch with technology for me, not likely but if I want a good IT job, Australia isn't too great for them.
spookware wrote:I think you're missing the point. He was asking whether Python is a reasonably practical language and a good place to start investing effort. The multiple language suggestions (from some posters) are potential alternatives. I agree that learning a bunch of different languages is good for depth, but you have to start somewhere and it makes sense to start with a good general purpose tool if you want to be productive quickly. It's like someone wanting to learn some basic self-defense skills and you telling them they must master four different martial arts from different cultures.I sort of need to disagree with some of you guys on some issues.
spookware wrote:OCaml is not dynamically typed. It has strong static typing with inference.2. learn a dynamically typed, procedural-oo-hybrid language like python or ruby or ocaml.
spookware wrote:First and foremost learning logic is not enough. Learning discrete math is super important but you also need machine organization as another poster mentioned. In this day and age, where processors are so much faster than RAM, if you don't understand the cache hierarchy and how virtual addressing REALLY works (i.e. not the simplistic description that is often given) then you don't really understand how to write optimal software.
Flying Fox wrote:Can we have some of what he was smoking? X48? 2x16 SLI? Want some more e-penis with that? How about just get the Nvidia triple SLI board with a water block on the 3xGPUs+chipset+CPU?