Coder Express

The fast track to learning coding.

Become a confident coder and build your own web application with Ruby on Rails in just 12 weeks, part-time.

Introduction

Have you ever thought about building an app or tech startup?

Perhaps you see that technology is changing every industry and you want to give yourself an advantage for your career.

Learning web application development will help you understand the full process of designing, developing and launching the software. As part of this process, participants will learn about databases, web protocols, user interface design and how to use the many valuable tools.

The experiences gained lead to insight into how all technology is made and gives you confidence to try other languages and technologies.

Why learn Ruby on Rails?

Ruby on Rails is a great way for people new to programming to learn the concepts involved in creating fully-featured applications.

The Ruby language is easy to read and comes with many helpful features while the Ruby on Rails web application development platform encourages good practices and quality code.

RoR also enables you to build web applications very quickly with built-in code generators and a large community of open-source software libraries.

Audience

The Coder Express program has been designed for people with no background in IT and therefore you do not need any prior experience with programming or other tech skills to succeed in this course.

All that is required is a willingness to learn and a readiness for the challenges that come with learning new skills.

If you do have prior knowledge and experience, you will be at an advantage and will be given opportunities to challenge yourself during the course.

Course outcomes

Knowledge

On completing the course, participants will understand and be able to explain:

  1. The concept of Object-Oriented Programming
  2. The value of using a development framework like Ruby on Rails
  3. The client server model application architecture
  4. The Model View Controller (MVC) design pattern
  5. How the web works and protocols like HTTP and SSL
  6. The value of databases and how they work with applications
  7. The importance of user experience and interface design

Skills

On completing the course, participants will be able to:

  1. Code simple object-oriented programs with the Ruby programming language
  2. Create a web application using the Ruby on Rails development framework
  3. Design the components of an application
    1. the user interface (UI),
    2. the user experience (UX),
    3. the database
  4. Implement payment processing in an application using Stripe
  5. Use APIs to interact with online web services
  6. Use jQuery to improve user experience

Methods

This program uses several teaching methods to achieve the learning outcomes. We expect the participants to come with their own laptop. An online learning environment will give you access to learning materials to facilitate a blended learning experience.

Face-to-face classes

There are 12 activity-based, face-to-face classes with an experienced coding trainer. Participants will be coding from the very first class.

In-class challenges

Individual and team challenges will be set to give participants an opportunity to apply what they have learnt in a practical way.

Homework assessments

Participants will be assigned homework assessments to be completed at home between classes.

Quizzes

Some quizzes will be given to reinforce learnings and give participants confidence their knowledge is advancing.

Major Class Project

The second module will see the trainer lead participants through the process of designing and developing a web application to learn more advanced topics and skills.

This project will see participants build a social innovation application that helps people put forward ideas to solve local community challenges and also volunteer to help fix the issues.

Personal Project

Participants will then design, develop and deploy their own project idea over the last four classes. This will bring together all the learnings and new skills to create a web application that the participant is passionate about.

Certification and Demo Day

Two weeks after the course, participants will return for a certification event and demonstrate the applications they have built to invited guests.

Course Modules

Module 1 — Introduction to web application development

Wk Module Activities and assessments
1 Programming with Ruby Learn the history and five fundamental concepts of programming

Create simple procedural programs with the Ruby language

Create simple object-oriented programs with the Ruby language

 

Homework assessment: Create a simple object-oriented program with Ruby

2 Intro to Ruby on Rails Rails development environment setup

Your first Rails application

Model View Controller (MVC) software design pattern

Ruby Gems

Web protocols

Intro to relational databases and database design

3 Rails Explored “Rails the hard way”

Models

4 Rails Dissected Controllers

Views

Routes

Module 2 — Class project

Wk Module Activities and assessments
5 Application Design Designing an application (UI, UX, User stories, DB)

Enquiry page

Sending email from your application

Creating delayed jobs

Safely store your code on Github

6 Application Development 1 Authentication

Sessions

Create user profile pages

Allow users to upload files

SEO friendly pages with Slugs

7 Application Development 2 Create project pages

Integrate your app with Google Maps API

Use tagging for content

Allow upvoting of content

Deploy your app to the web with Heroku

8 Application Development 3 Allow users to join projects

In-app messaging

Design the application for your own project

Module 3 — Build your own web application

Wk Module Activities and assessments
9 Project Development 1 Work on your own project

Set permissions with Authorisation

Create an Admin Dashboard

10 Project Development 2 Work on your own project

Integrate payment processing

Reducing web form spam

11 Project Development 3 Work on your own project

Web and app optimization

Application security

12 Project Development 4 Work on your own project

Pitching your application

Final quiz

Certification and Demo Day

Wk Module Activities and assessments
14 Demo Day & Certification Participants will present the applications they have built to invited guests and receive their certificates.

Course requirements

Hardware & software

Participants should have their own laptop to bring to class and have use of for homework assessments. It can be Windows, Mac or Linux and should be less than 5 years old.

There is no requirement for purchasing software as all tools used in the program are free and open source.

Expectations

It is expected that participants will do their best to be present and punctual for every class. If not able to attend a class, the trainer should be notified.

Available Support

The trainer and assistants will be available for support sessions as required. To be arranged directly with the trainer. These are to help participants who may have missed a class or require some extra help to understand the concepts.

Course Fee:

Rs. 30,000/=

No. of Participants :

35

Course Duration:

12 full-day workshops (Saturdays)

E-mail :

Coordinator: imd@ucsc.cmb.ac.lk

csc@ucsc.cmb.ac.lk