Week 5 - Feb 5

We have some work to do on routing & responding, paying attention to case sensitivity & what works.

You should start on assignment 1, if you haven't already done so.

Week 4 - Jan 29

Controllers and routing, woohoo!


  • Some of the students are encountering "Whoops" error messages when testing their backend, even though their code looks reasonable. I am investigating.
  • It has become apparent that the CI4 User Guide section on routing isn't as helpful as it should be, and I am working on that too.

Week 3 - Jan 22

We're going to take a shallow dive into MVC and what a framework does for you :)

Week 2 - Jan 15

I am swapping the planned lesson order (2 and 3), so that we can focus on just the one thing this week: collaborative workflow. We want a solid base moving forward.

Lab 1 note

In the "DocumentRoot" element of Apache's configuration file (httpd.conf), the AllowOverride setting needs to be AllowOverride All, if yours came with it set to None. I should have mentioned this in the writeup, sorry.

"Office Hours"

Some of you were asking about office hour availability, as our schedules don't seem to mesh well. I am happy to set up a D2L virtual classroom instance, or a zoom video conference, to answer any questions. This can be done at a mutually agreeable time.

Welcome :)

Welcome to the course hub for COMP4711.
Lessons, labs, and non-proprietary resource materials are hosted here.


Lesson intro00 Course Introduction |
Lesson intro01 Introduction |
Lab lab00 Team Introduction |
Lab lab01 Development Environment |
Tutorial setup01 XAMPP Installation |
Tutorial setup02 Virtual Hosting Setup |
Lesson dev01 Devops Workflow Concepts |
Lab lab02 Collaborative Workflow |
Lab lab02faq Some lab notes |
Lesson seminar03 CodeIgniter Introduction |
Lab lab03 CodeIgniter Project Introduction |
Lesson controllers CI Controllers |
Lesson routing Routing |
Lab lab04 Working With Controllers & Routing |
Lesson intro02 Golden Rules |
Tutorial setup03 PHP Comparison to Java |
Lesson dev03 Gitflow Setup Example |
Lesson dev04 Gitting Good - Best Practices |
Lesson basic01-other Other MVC Framework Examples |
Lesson other-controllers Controller examples from other frameworks |
Lesson other-routing Routing examples from other frameworks |
Lesson other-rest REST examples from other frameworks |

Course Instructors

Jim Parry
Office: DTC-617
Online collaboration: zoom conferences as needed.

Desire2Learn LMS



Main website

Course Related

Course outline
Slack team - for notifications & FAQ
Course repo - open-sourced, for those who want to look "under the hood"