Developing a computer program requires one to specify the behavior of the program using at least one programming language. To use a programming language, one needs to know the vocabulary of the language, the arrangment of words from the vocabulary to make meaningful statements, and the orderly organization of the statements to get the desired behavior. This training introduces those topics to the learner using Python, a popular computer programming language. Where appropriate, examples from some other programming languages will also be used to strengthen the learner's knowledge about programming in general.
At the end of the training, participants will be able to
- Describe different generations of programming languages
- Work with variables and appropriate data types
- Use various program flow control mechanisms
- Use various operators
- Use error handling features of the language
- Use and write Python modules
- Use and create Python packages
- Demonstrate beginner level familiarity with the Python Standard Library
- Use comments to document the code
- Follow coding styles
- Describe object oriented programming concepts
- Write object-oriented code using Python
- Use an IDE to write and debug Python programs
- Write beginner level multi-threaded applications
- Write beginner level client-server software
- Write beginner level GUI applications
- Programming enthusiasts
- Python language enthusiasts
- School children - at least in the 9th year is generally expected. This training however is aimed at professional skills development.
- System administrators, network administrators
- Undergraduate and graduate students seeking programming exposure
- Professionals within software industry or other industries seeking to gain computer programming competencies
- General familiarity in using computers. No prior programming experience is expected.
English. There is a Sinhala version of the same training too: "පරිගණක ක්රමලේඛනයට ආරම්භයක්"
Online. Participants login to our Online Training Management System and follow the training. No realtime conference sessions. Lessons are mostly in written document format. Participants are supervised based on their assignment submissions. Participants can ask questions and get answered via the forum facility of the Online Traning Management System. Individual feedback and guidance is provided where appropriate.
A PC with the Internet connectivity, web browser, headphones or speakers. No microphone is needed.
First time batch of participants will experience a duration of 2-3 months. Subsequent joiners will be able to follow the training at their own pace. A full-time self paced paticipant may generally spend about 2-3 weeks to complete the training.
Rs. 6000/= (Six thousand) (LKR) per participant for the participation in the online training.
Questions and Answers:
- Will a participant be able to get a job after following this training program?
If this is the only programming related education received by a participant, there is only a rare chance of getting a job after following this training program. To be accepted as a good programmer by potential employers, one needs to possess knowledge and skills in additional areas as well. This training program is a good starting point for those who seek to learn more.
- How can the payment be made?
Training registrants will receive our bank account details via email to deposit the payment into our bank account. After the payment is done, a clear photo of the payment slip or a soft copy of the payment receipt should be emailed back to us for us to confirm the receipt of the payment.
- What is the payment refund policy?
Payments are non-refundable. If a payed registrant would inform us via email his or her desire to cancel the registration before starting to follow the training program, we would let the payment be used by another registrant named by the payed registrant.
Kamal Wickramanayake (Profile)
- Getting Familiar
- What is involved in writing computer programs?
- Generations of programming languages
- Interpreted and compiled programs
- Comparison of some popular programming languages
- Variables and Data Types
- Declaration, initialization and default values
- Scope of variables
- Type casting
- Numeric data types
- Text data types
- Date and time data types
- Flow Control
- Assignment operator
- Arithmetic operators
- Boolean operators
- Comparison operators
- Bitwise and bitshift operators
- Unary, binary and ternary operators
- Operator precedence
- Writing a module
- Standard library
- Working with Numbers
- Floating point calculation errors
- Working with Text
- String operations
- Conversion to numbers
- Output formatting
- Pattern matching with regular expressions
- Working with Dates and Times
- Code Documentation
- Coding Styles
- Working with an Integrated Development Environment (IDE)
- Widely used features of an IDE
- Project organization
- Running code
- Object Oriented Programming
- Fundamentals of Object Oriented Programming
- Classes Vs objects
- Attributes and methods
- Garbage collection
- Shallow/deep copy
- Error Handling
- What leads to errors?
- What to do when errors occur?
- Catching and handling errors
- Data Structures
- Standard in, out and error
- Reading and writing files
- Multi-threaded Applications
- Writing a basic multi-threaded application
- Writing a basic server and a client
- Graphical User Interface (GUI) Applications
- Writing a basic GUI application