Mal Posted October 31, 2012 Author Share Posted October 31, 2012 The poll is for intermediate or advanced programmers only; those who could effectively follow all OOP guidelines using inheritance, interfaces, encapsulation rules, naming conventions (non-Hungarian), etc. This is only for personal information and in no way is this poll to be used as viable statistics that represent the population of professional level programmers in a real-world setting.I appreciate your honest answers. ![:)](http://www.touchofdeathforums.com/community/public/style_emoticons/<#EMO_DIR#>/smile.png) Link to comment Share on other sites More sharing options...
Exception Posted October 31, 2012 Share Posted October 31, 2012 Interesting poll. I'm actually curious to know, now. Link to comment Share on other sites More sharing options...
Mal Posted October 31, 2012 Author Share Posted October 31, 2012 Same, considering there's less than 7-8 individuals who are intermediate/advanced (assumption). Link to comment Share on other sites More sharing options...
Marsh Posted October 31, 2012 Share Posted October 31, 2012 Learned how to do a lot of coding by myself. Didnt learn how to do it properly until college. A lot of people think they are doing things correctly until they learn the real way to do it. (myself included) Link to comment Share on other sites More sharing options...
Guest Posted October 31, 2012 Share Posted October 31, 2012 Learned my self. Learned how disasemble code, and learned syntax for java, and visual basic 6 (and .NET) all myself. Sources of other peoples programs and seeing how they did things have taught me well ;} Link to comment Share on other sites More sharing options...
Mal Posted October 31, 2012 Author Share Posted October 31, 2012 > Learned how to do a lot of coding by myself. Didnt learn how to do it properly until college. A lot of people think they are doing things correctly until they learn the real way to do it. (myself included)Precisely the point of this poll, and I appreciate your honesty. I had NO idea how complex programming actual is in terms of data modeling and implementing proper coding practices until I picked up these books. Even my VB6 certification class back in 2002 wasn't as involved, technical, or complicated as the topics addressed in the books I have now. It's almost impossible to find online tutorials that address the topics that I brought up in the original post; they simply give you a way to do something and do not explain why or how it works, or why it should be done a certain way, or how it could be done in other ways. Link to comment Share on other sites More sharing options...
Keebler Elf Posted October 31, 2012 Share Posted October 31, 2012 Im currently in college learning programming/how computers function (binary and assembly are not fun). However before that I learned mainly from online tutorials and self teaching. So many hours of staring at a screen with questions and not having anyone to ask. Link to comment Share on other sites More sharing options...
Mal Posted October 31, 2012 Author Share Posted October 31, 2012 > Im currently in college learning programming/how computers function (binary and assembly are not fun). However before that I learned mainly from online tutorials and self teaching. So many hours of staring at a screen with questions and not having anyone to ask.That's pretty common and a point I made in one of my posts. You're more likely to have a fuller, much better understanding of things after reading a book or taking a course that is structured rather than digging through tons of useless references to material that no one thoroughly explains. I found binary to be amazingly simple (base 10 math); assembly I've never touched. Link to comment Share on other sites More sharing options...
Keebler Elf Posted October 31, 2012 Share Posted October 31, 2012 The binary in itself is simple. However when they make you do countless equations and tell them how it effects certain parts of the hardware its not very fun. Most boring class I have ever taken in my major. Link to comment Share on other sites More sharing options...
Mal Posted October 31, 2012 Author Share Posted October 31, 2012 > The binary in itself is simple. However when they make you do countless equations and tell them how it effects certain parts of the hardware its not very fun. Most boring class I have ever taken in my major.Well, to be able to do equations you obviously have to assign a bit phrase a value, so it's still relatively simple. As far as how bits are translated by the hardware goes, you'd have to know a LOT about the hardware or how bits are processed (EBCDIC or ASCII), because naturally a bit represents 2 values, true or false, that open or closes an electric current. Shit is above my head, but yeah, class sounds like it'd be difficult in that aspect. Link to comment Share on other sites More sharing options...
Mumzy Posted October 31, 2012 Share Posted October 31, 2012 Our town doesn't have a bookstore (yeah… -,- ) so everything I learn is on the internet. Link to comment Share on other sites More sharing options...
or3o Posted October 31, 2012 Share Posted October 31, 2012 Still not sure if i qualify as intermediate but everything i have learned has been online, Mostly tutorials and watching other people code. I only know vb6 and a bit of html. But i can generally figure my way around any problems i encounter. Link to comment Share on other sites More sharing options...
aaaron Posted October 31, 2012 Share Posted October 31, 2012 I used the internet. Link to comment Share on other sites More sharing options...
Ertzel Posted October 31, 2012 Share Posted October 31, 2012 I learned most of my coding by reading tutorials and things online but mainly just playing around with codes and trying things until I figured them out. In College I'm learning more of the best practices and more refined coding techniques but I learned all of the basics and most of what I know from teaching myself. Link to comment Share on other sites More sharing options...
unknown Posted October 31, 2012 Share Posted October 31, 2012 Learned by myself, a little bit in college and now at a massive software company.. I picked up most of my knowledge through self study, colleges teach a lot of theory which isn't exactly practical in the real world. Link to comment Share on other sites More sharing options...
SawQuart Posted November 1, 2012 Share Posted November 1, 2012 I learned by myself using the internet. Anthony and Stephan helped create a little "curriculum" for me to follow while I was first beginning too, so they were a huge part in my learning process. Link to comment Share on other sites More sharing options...
Growlith1223 Posted November 1, 2012 Share Posted November 1, 2012 I learned by myself, JcSnider helped me out a little in DX7 and i taught myself through DX8 Link to comment Share on other sites More sharing options...
Mal Posted November 1, 2012 Author Share Posted November 1, 2012 There seems to be a lot of confusion going on here as far as what an intermediate and advanced programmer is. Unknown actually alluded to the primary difference, and I'll try to explain it here:An intermediate programmer has a firm grasp of the syntax of the language they are working with and is able to utilize most components of the language as well as implement existing assemblies (namespaces/libraries) in their code.An advanced (or senior) programmer has the ability to systematically design, code, and implement practically anything using a wide array of technologies; furthermore, an advanced (or senior) programmer has a very firm understanding of the theories associated with data modeling, systems design, and other attributes of data management.In the context of theories, I would have to say you're absolutely wrong as far as learning them not being "practical" goes. In a real world environment, a systems analyst and database administrator would work in tow to produce a data model or other design (flowchart, relational data model, etc) that you would need to comply with as a programmer. So yes, theory is most definitely important depending on your job. For instance, a senior developer may assist with the aforementioned things and would need to have a firm understanding of the technologies and theories associated with the organizations needs.This is what sets an advanced and intermediate programmer apart from an entry level programmer (and an advanced apart from an intermediate): The ability to produce complex, re-usable, versatile applications that are resilient, cost effective, that maintain the utmost integrity (security, resource management, etc) and comply with team and object oriented practices (industry standards). That being said, a good number of people who replied to this topic are, in all actuality and in every sense of the word, entry level programmers. Do not take that as an insult as I appreciate the responses from all of you.My intention for use of this poll is to determine how to better aid you young fledglings in acquiring the information you need to move forward instead of being stuck in a constant and recursive grind. I'll be starting a series of in depth tutorials, free of charge and in C# 2010, to better aid you guys in your endeavor to fully understand (and hopefully appreciate) programming as a whole. The topics will apply strictly to object-oriented techniques such as class inheritance, overriding and overloading methods, and proper encapsulation (NO PUBLIC FIELDS!).Once again, thanks for the awesome replies. Link to comment Share on other sites More sharing options...
unknown Posted November 1, 2012 Share Posted November 1, 2012 > In the context of theories, I would have to say you're absolutely wrong as far as learning them not being "practical" goes. In a real world environment, a systems analyst and database administrator would work in tow to produce a data model or other design (flowchart, relational data model, etc) that you would need to comply with as a programmer. So yes, theory is most definitely important depending on your job. For instance, a senior developer may assist with the aforementioned things and would need to have a firm understanding of the technologies and theories associated with the organizations needs.I work in the real world where nobody is concerned about Big O notation, algorithms that are .001% more efficient or writing complex data structures (which is what I learned in college). College trains you to be a researcher, I'm not a researcher. Software architects design code using advanced OOP techniques… In my experience, OOP isn't taught in college it's more of a learned skill from years of experience. It's nice to know the theory behind programming and how to think analytically and that's what you learn in College. That being said, I don't think College trains you for higher level jobs within an organization like 'software architect'. Link to comment Share on other sites More sharing options...
JeffSventora Posted November 1, 2012 Share Posted November 1, 2012 Do you program games? because when it comes to games optimization, complex data structures etc… are normal. Link to comment Share on other sites More sharing options...
unknown Posted November 1, 2012 Share Posted November 1, 2012 > Do you program games? because when it comes to games optimization, complex data structures etc… are normal.I program games as a hobby.. Gaming is one area that requires some speed optimizations depending on the project. If you're making a 2d game, you probably don't need complex data structures (see every project made in XNA). If you're making a next generation game like Guild Wars 2, then yeah I can see where some complex data structures and nifty algorithms could come in handy.Most games and software don't push hardware to it's extreme.. Link to comment Share on other sites More sharing options...
JeffSventora Posted November 1, 2012 Share Posted November 1, 2012 The way I see it is, optimize from start to end because when you finish your project, you'll have room for more. And hell, even XNA games could benefit from complex data structures. However, I guess I'd have to ask, what is considered complex? Linked lists, dynamic arrays, graphs, trees, hash tables? I'm pretty sure I use almost all of those at some point. Lol Link to comment Share on other sites More sharing options...
unknown Posted November 1, 2012 Share Posted November 1, 2012 I've used all of those too.Let me clarify a little bit. Yeah it's useful to use a hashmap/linkedlist/* data structure in XNA or any program/game. It's not useful to implement your own data structure from scratch in C and optimize it to go 1% faster unless you're making a speed critical application. College teaches you how all these data structures work and how to write them, but in the real world you should never have to write them unless absolutely necessary. Link to comment Share on other sites More sharing options...
Mal Posted November 1, 2012 Author Share Posted November 1, 2012 > I work in the real world where nobody is concerned about Big O notation, algorithms that are .001% more efficient or writing complex data structures (which is what I learned in college). College trains you to be a researcher, I'm not a researcher. Software architects design code using advanced OOP techniques… In my experience, OOP isn't taught in college it's more of a learned skill from years of experience. It's nice to know the theory behind programming and how to think analytically and that's what you learn in College. That being said, I don't think College trains you for higher level jobs within an organization like 'software architect'.Did you stop at an associates or something? Link to comment Share on other sites More sharing options...
unknown Posted November 1, 2012 Share Posted November 1, 2012 > Did you stop at an associates or something?No I have a bachelors in computer science and work as a Software Engineer. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now