Target Audience: If you want to learn programming but have absolutely no prior programming background, or you have learnt some programming before but want to re-learn it in a better way, then this course is for you.
Skills Needed: You already have or are willing to develop the habits of precise, logical, and systematic thinking and expression, being organized in your work, and persistence and patience. This course will not only make you a very good beginning programmer, but also perhaps make your approach to all other work as well more methodical.
Course Outcomes: You will learn in an easy, enjoyable, and motivating manner how to develop software programs, that is, the basics of Software Engineering. You will be learning the Python programming language along the way.
Course Mechanics: In the very first lecture you will build your very first program, and with each subsequent lecture you will grow your program organically into something bigger, along the way learning all the different tools, methods, processes and methodologies required.
Thus, you will pickup the basics of all the different skills needed towards becoming a professional programmer, not just a particular programming language. Just as becoming a good writer involves much more than learning English grammar and vocabulary, becoming a good programmer involves much more than just learning a programming language. This course will start you on the path to becoming a good programmer.
As you progress in the course, not only will you have your own working Planner program that you can show off to your friends, but also you will grow a beginner programmer skill set of the most in-demand things in the software industry such as:
* Python programming language
* Software Engineering basics:
- Agile software development methodology
- Requirements specification
- basic UI (User Interface) design
- Program design, flowcharts
- Software Testing: unit testing, regression testing
- Modular software: basics of Object-Oriented Programming (OOP)
- IDEs (Integrated Development Environments): PyCharm
- Version Control: GIT
- etc etc.
Additional Course Lectures: This course provides you a unique opportunity to shape the lectures to your benefit. The course has been seeded with an initial 20 lectures, and at least as many more lectures are in preparation and will be added to the course in the near future. These latter lectures will take into account all student feedback on the initial seed lectures. Such development of any product, based on user feedback and involving many releases/upgrades, is referred to as Agile Product Development, a methodology that is taught in this course. Your feedback will shape not only what is taught next but also how it is taught. The earlier you join the course and the more feedback you give, the more you can shape this course to your liking!
So, hop on board and try out this course!