Learning How To Program
Those learning to program have many options nowadays. Some people are learning as part of their career and others are looking to make a transition into a programming career. Either way if you are going to be a professional programmer then you want to develop a solid foundation. DrTeachMe Programming, now in Beta, is structured to teach the professional programmer. A Q&A session with Robert Joseph, Ph.D., one of the founders, provided interesting insights:
So what’s it take to learn to program professionally?
Well, programmers need to craft logical solutions to sometimes complicated problems and then to convert those solutions into precisely built and tested programs. These two abilities are the foundation for becoming a professional programmer.
Programming concepts and logic alone will help you understand constructs for building solutions but not help you develop important coding and debugging techniques and skills. On the other hand, just learning a programming language may not give you the conceptual knowledge needed to implement a system.
How can someone go about acquiring these foundational skills?
In my experience, whether self-taught or in a class, programming students need a solid curriculum to learn programming logic AND lots of hands-on experience. With the two together, the student can get a holistic understanding of programming.
The other big hurdle to learning introduction to programming is having access to a good programming environment for the hands-on experience. In a lot of cases, this means the student has to install and configure a programming environment — usually for C, C++ or Java — which requires significant work before even getting started with the real task (learning to program). This is why we created DrTeachMe Programming.
What is DrTeachMe Programming?
How did you come up with the idea for DrTeachMe?
I’ve been teaching computer science courses at a major University for 8 years. Seeing students learning programming logic and struggling with syntax or seeing them have some programming skills but not understand how to effectively build logical constructs I saw a disconnect. So DrTeachMe Programming was born.
What are some examples of things that you have developed?
I have more than a dozen apps in the iTunes app store and the Android marketplace. I’ve developed public and proprietary websites, built database applications that manage marketing data and created a bunch of other mobile, desktop and embedded apps.
Tell us a bit about your background?
Well, I have been a programmer for more than 30 years after getting my start at MIT with a B.S and M.S. in Electrical Engineering. Then I went on to Carnegie Mellon University to do my M.S. and Ph.D. in Computer Science. I have worked at Bell Labs, consulted at Sony, built an entire student information systems for a school district in Alaska, and worked at other small and medium size companies over the course of my career.
If you are interested in learning to program professionally then check us out at http://www.drteachme.com and sign up for the beta program.