Where in this forum do I ask questions about general programming? Like is there somewhere I can gain some basics knowledge that is common to all or most programming languages? Does that even exist, or just common to families of languages? Would I just have to learn a lot of languages to catch on? Where do programmers work, like what businesses hire programmers? I know Microsoft and Google and Intel etc. does but what if I just want to begin thinking about an apprenticeship at a local company, and I don't live any ware near those type of companies. Would I be looking for a software firm, or would my local large companies have a programmer position in there IT dept? Is there even an apprentice position in the field or is that a dead concept or was that something that never was? Where do I ask those type of questions?
General Software Career Advice
Page 1 of 12 Replies - 1384 Views - Last Post: 18 July 2009 - 07:18 AM
Replies To: General Software Career Advice
#2
Re: General Software Career Advice
Posted 16 July 2009 - 08:27 PM
Quote
Where in this forum do I ask questions about general programming?
Quote
Like is there somewhere I can gain some basics knowledge that is common to all or most programming languages?
So whatare are examples of knowledge decoupled from programming languages? Most importantly, that which comprises the experience of a good problem solver. 40 years ago, the fundamental nature of programming was no different. It comes down to taking a vague never before seen task, breaking it down into problems that can be analyzed, gathering information, learning, thinking, and implementing a solution that works, that is easy to understand and maintainable, and does all that really well (in that order). Programming is fundamentally problem solving. How do you learn to solve problems? By solving problems. It's like a muscle you exercise. Ok, this really isn't knowledge so much as experience, but you get what I'm saying.
There's general computer science knowledge, like the various data structures and algorithms. For example, a linked list, and the algorithms to add, delete, or modify nodes in the list is not specific to programming languages. It's an abstraction. The jargon and terminology arising from computer science. There's domain specific knowledge. Using OpenGL (graphics API), means you need to spend time learning about the graphics pipeline, the design principle behind OpenGL (e.g. a state machine), and being comfortable with the maths (e.g. transformation matrices). Or if you are writing a web browser, about standards, and the various protocols like HTTP and TCP. None of this is programming language specific.
Quote
Does that even exist, or just common to families of languages? Would I just have to learn a lot of languages to catch on?
So you should learn different languages to expose yourself to these different ideas. You might call it families of languages, but languages tend to borrow and be inspired by each other. The general long term advice is to learn one new language something like every year or two. And move between languages that encourage very different styles of thinking. If you start with Java, learn Scheme. Maybe Lua. Maybe next is PHP. Maybe next is C++. After that Python? Maybe x86 assembly afterwards.
Seems really scary, and I'll throw out more advice, but that's all for today. If no one else magically covers everything I would say, I'll throw out more advice and information next week (after my work is done the next few days).
#3
Re: General Software Career Advice
Posted 18 July 2009 - 07:18 AM
This might be a good topic for the Corner Cubicle, seeing as there's no real development question. I'll take you there, follow me.
Page 1 of 1
|
|

New Topic/Question
Reply


MultiQuote





|