• We’re currently investigating an issue related to the forum theme and styling that is impacting page layout and visual formatting. The problem has been identified, and we are actively working on a resolution. There is no impact to user data or functionality, this is strictly a front-end display issue. We’ll post an update once the fix has been deployed. Thanks for your patience while we get this sorted.

programing and coding

Page 2 - Seeking answers? Join the AnandTech community: where nearly half-a-million members share solutions and discuss the latest tech.
Good discussion about Python and java, But I am slietly confused about the future of Python. I lives in India. rarely I have seen tow or three Python programming. if I will go with Python. can I find good job?.


I see work listed for Python frequently in the US.

How that translates to work for those in India, ???
 
Python is very strong right now in the NYC financial community. Experts are commanding premium hourly rates/salary. It sort of feels to me right now that Ruby and Python are going to duke it out for the position of standard open source web stack. The php-verse seems to be in decline.
 
Python is very strong right now in the NYC financial community. Experts are commanding premium hourly rates/salary. It sort of feels to me right now that Ruby and Python are going to duke it out for the position of standard open source web stack. The php-verse seems to be in decline.

yea I just finished taking a computational investing class on coursera. Thought it would be more of a finance class, but it was 95% python programming. Enjoyed it though
 
Python is very strong right now in the NYC financial community. Experts are commanding premium hourly rates/salary. It sort of feels to me right now that Ruby and Python are going to duke it out for the position of standard open source web stack. The php-verse seems to be in decline.

Now all we need is to get javascript to similarly die and the web might actually be a somewhat enjoyable platform to work with.
 
Now all we need is to get javascript to similarly die and the web might actually be a somewhat enjoyable platform to work with.

Don't see that happening. We might not actually write it, though.
 
Python is very strong right now in the NYC financial community. Experts are commanding premium hourly rates/salary. It sort of feels to me right now that Ruby and Python are going to duke it out for the position of standard open source web stack. The php-verse seems to be in decline.
Python's big advantage there, v. PHP, is that Python can be the whole stack. It also has a secondary advantage, shared by Ruby, that may be useful to financial folks (it's definitely one of the reasons Smalltalk survived, despite not improving as a language since -80): integers are really integers, their range limited primarily by the machine's memory capacity, without having to treat them as special data types.
 
Here are some basic steps to learn programming:
1. Start with a good book or tutorial on programming
2. Get a compiler/interpreter/IDE for the programming language your book uses
3. Read the book! Try putting together your own ideas to form a working program
4. Once you start actively programming in your first language, you may want to learn a second one
5. Continue programming and trying new things!
6. Learn how to type - This is very essential as it is make your programming very fast and effective

Don't jump start into complex language like Java but start with python as it encourages beginners and is composed of basically every little aspect in programming. Get a handy reference book. Make sure it's the latest version as languages keep updating.
 
Here are some basic steps to learn programming:
1. Start with a good book or tutorial on programming
2. Get a compiler/interpreter/IDE for the programming language your book uses
3. Read the book! Try putting together your own ideas to form a working program
4. Once you start actively programming in your first language, you may want to learn a second one
5. Continue programming and trying new things!
6. Learn how to type - This is very essential as it is make your programming very fast and effective

Don't jump start into complex language like Java but start with python as it encourages beginners and is composed of basically every little aspect in programming. Get a handy reference book. Make sure it's the latest version as languages keep updating.

Not that complex.... The high level languages are actually not bad at all. Started with c++ when i was 14 and it was fairly simple, the trick is to find the right primer to go with. Honestly i believe starting with Java or C++ is the better option because you will become better familiar with OOP and the IDE's available (especially for java) make debugging code much easier. Once you get a handle on either of those languages, learning any of the others is pretty much cake.
 
Not that complex.... The high level languages are actually not bad at all. Started with c++ when i was 14 and it was fairly simple, the trick is to find the right primer to go with. Honestly i believe starting with Java or C++ is the better option because you will become better familiar with OOP and the IDE's available (especially for java) make debugging code much easier. Once you get a handle on either of those languages, learning any of the others is pretty much cake.

I would never suggest going with Java first. You can't control, and therefore don't learn, proper memory management. Thankfully, Java is suited for web based apps where the biggest bottlenecks for speed are database connections and web latency, so programmers get away with using ArrayLists for every time of collection.

I think C++ is the ideal place to start learning if you are really interested in coding. It offers the power and tools to do some very complex stuff and it is easy enough for beginners. Sadly, quite a few colleges are pushing out Java code monkeys now days though. I've always been of the opinion that once you are a good C++ programmer, you can master any other language with relative ease.
 
I would never suggest going with Java first. You can't control, and therefore don't learn, proper memory management. Thankfully, Java is suited for web based apps where the biggest bottlenecks for speed are database connections and web latency, so programmers get away with using ArrayLists for every time of collection.

I think C++ is the ideal place to start learning if you are really interested in coding. It offers the power and tools to do some very complex stuff and it is easy enough for beginners. Sadly, quite a few colleges are pushing out Java code monkeys now days though. I've always been of the opinion that once you are a good C++ programmer, you can master any other language with relative ease.

First, what is wrong with the humble ArrayList and how would knowing C++ solve issues with that?

As for memory management. Most new languages are GCed, unless you really want to do embedded development/performance critical stuff, there isn't a real good reason to learn about memory management. C# and Java expertise cover the lions share of what most employers what skillset wise.

As for performance problems. Most businesses are looking for programmers who write programs which pull data out of a database and then manipulate it. Really, it is pretty rare to have something other than database or network io be the bottleneck. This is part of the reason why the abomination which is node.js has been able to gain a foothold. Javascript was fast enough for these people.
 
First, what is wrong with the humble ArrayList and how would knowing C++ solve issues with that?

As for memory management. Most new languages are GCed, unless you really want to do embedded development/performance critical stuff, there isn't a real good reason to learn about memory management. C# and Java expertise cover the lions share of what most employers what skillset wise.

As for performance problems. Most businesses are looking for programmers who write programs which pull data out of a database and then manipulate it. Really, it is pretty rare to have something other than database or network io be the bottleneck. This is part of the reason why the abomination which is node.js has been able to gain a foothold. Javascript was fast enough for these people.

There is nothing wrong with ArrayLists but from the maintenance I've done of Java web apps, I'd be surprised if most Java coders know any other types of collections exist.

There is no problem with relying on the GC, but if you for whatever reason switch to a language without one, you have no concept of memory management. This is just a pet peeve of mine I suppose. And I really don't like how the Java GC really just does its own thing either. I'd like to be able to call it and have it do something other than be like "oh, okay. I'll think about it."

I think we are in agreement on performance. I was just stating because of the bottlenecks being outside of the actual JVM, you can get away with using ArrayLists and then sorting rather than say using a LinkedList to ensure natural order. Small performance losses don't really add up, because you still have to wait for your database connection.
 
There is nothing wrong with ArrayLists but from the maintenance I've done of Java web apps, I'd be surprised if most Java coders know any other types of collections exist.

There is no problem with relying on the GC, but if you for whatever reason switch to a language without one, you have no concept of memory management. This is just a pet peeve of mine I suppose. And I really don't like how the Java GC really just does its own thing either. I'd like to be able to call it and have it do something other than be like "oh, okay. I'll think about it."

I think we are in agreement on performance. I was just stating because of the bottlenecks being outside of the actual JVM, you can get away with using ArrayLists and then sorting rather than say using a LinkedList to ensure natural order. Small performance losses don't really add up, because you still have to wait for your database connection.

LinkedList to ensure natural ordering? I don't think linked lists do what you think they do. Linked lists are nice for fast insertions/deletions when iterating through the list. However, for pretty much everything else, arraylists have them beat. General access patterns (reading from the start to finish of a list) is quite a bit faster for an array list.

In my business, I've yet to see a case where a linked list was a good idea. It is so very rare that you want to insert or remove from the middle of a list. In most of those cases, a Set makes much more sense (because generally when you do want to remove elements it is for uniqueness).
 
And I really don't like how the Java GC really just does its own thing either. I'd like to be able to call it and have it do something other than be like "oh, okay. I'll think about it."

You actually can start GC manually but it is always a bad idea...because the GC routine isn't stupid.

I don't really get why you would want to memory management by yourself on a modern PC. Of course for embedded stuff it might matter or some very low-level things extremely important for performance like the RDBMS itself. (but then in the most critical parts you might even go with assembler)

There will always be code monkeys and I think it's better when they use java or C# than C++...
 
Back
Top