Jump to content
  • Advertisement

Archived

This topic is now archived and is closed to further replies.

Shadow1234567890

What do programmers today need to know

This topic is 5770 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

What are the three biggest ''areas'' programmers today need to know. C++ and some API for developing on their platform seems like the biggest requirement. But what about other things, such as Java and scripting languages and what not. And yes I know it depends on the programmer''s job, I am talking about in general.

Share this post


Link to post
Share on other sites
Advertisement
Well, in general - to qualify as a programmer - you should definitly have:

* Knowledge and experience in at least two, better three, langauges of different origins. I WOULD qualify C++ and C#/Java here as two - because they are so different in their core paradigms (garbage collection, mainly). With just one language, it is truly a bad programmer.
* SQL - not a lot, but I would expect every developer to have worked with databases during his educational phase. Not necessarily a pro, but he has to know how to make basic stuff.
* Standard Algorithms and Patterns. Any developer not knowing what a quicksort is or what a facade or factory pattern are - is not worth the money.

Thats basically it for junior developers. Needs to be smart and grasp API''s fast, sure. He should also know his limits - and be willing to fall back onto other people when hitting them. Not necessarily because he is bad, but show me one developer who is a graphics guru :-)


Regards

Thomas Tomiczek
THONA Consulting Ltd.
(Microsoft MVP C#/.NET)

Share this post


Link to post
Share on other sites
I''d disagree with the first 2 of those, thona.

I know several languages, but I don''t think that makes me a better programmer than someone who knows one. If anything it clouds my judgement about what is the best solution when solving a problem in a specific language.

I''d also say knowing SQL (which I do) is completely irrelevant. Why would this make you a better programmer? I''d say it''s one of those things that you can learn when you need to. Games don''t use SQL very often.

Knowledge of standard algorithms and design patterns, as you say, is an absolute must.


Helpful links:
How To Ask Questions The Smart Way | Google can help with your question | Search MSDN for help with standard C or Windows functions

Share this post


Link to post
Share on other sites
quote:
Original post by siaspete
I know several languages, but I don''t think that makes me a better programmer than someone who knows one.

It gives you a wider perspective on how to approach problem solving.
quote:

I''d also say knowing SQL (which I do) is completely irrelevant. Why would this make you a better programmer?

Personally, I think this could be folded into thona''s first point: to know languages which do things differently. A declarative language such as SQL gives a different perspective to a procedural or OO language. Knowledge of several different paradigms can be very handy.
quote:

Knowledge of standard algorithms and design patterns, as you say, is an absolute must.

Oh yes.

Share this post


Link to post
Share on other sites
Thanks for the defense.

In particular, I would say that C++ and Java stand pretty much on different sides - weak runtie against strong runtime, in terms of function size, but also in term of features (like garbage collection). (Java being replacable with C#, btw.) Knowing diversity helps you - otherwise the "programmer" becomes a "C++ programmer" - or a "VB Programmer". In the extrreme unable and slow to get used to another language and to learn. Diversity rules.

For SQL, that is as far off procedural/oo languages as you can get. Declarative, handling data (and not primarily functionality), with concepts such as thread serialisation built into it''s core (through locks). And show me one programmer that never has to use a database in his whole career? It is definitly an exerience - and experiecne and common sense are what programmers needs primarily.

I know most people argue this - on the other hand, 75% of the programemrs available out there are not wirth their money :-)


Regards

Thomas Tomiczek
THONA Consulting Ltd.
(Microsoft MVP C#/.NET)

Share this post


Link to post
Share on other sites
I think diversity is a good thing. As far as I know C++ and Java are two things that most programmers should know. I think databasing is something that programmers should know. I mean databases are used for everything, including games, right? I don''t know if something like Visual Basic is a must-know. Can the .NET languages be used on other platforms? Visual Basic 6.0 doesn''t seem as important to know as C++ because VB is only for Windows, but C++ is a language and of course can be used on any platform. That is why I always say Visual Basic is barely a language.

Share this post


Link to post
Share on other sites
Regarding algorithms and design patterns: what books/resources would you recommend as a good reference for those algorithms that every programmer should know? I think most people have heard of Knuth''s classic, ''The Art of Computer Programming'', but does anyone have other suggestions that they feel are more relevant/modern/concise/cheap/whatever?

Share this post


Link to post
Share on other sites
quote:
Original post by Mathematix
How about showing dedication and raw determination?

Yes, but its no good if its directionless.

Share this post


Link to post
Share on other sites

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!