Montreal, cégep and university
Private computer science tutor in Montreal with 10+ years of experience. I work with CÉGEP students in Computer Science (program 420) and university students at McGill and Concordia. Python, Java, C, C++, data structures, algorithms and discrete math. Also available for French AEFE students in NSI at Lycée Marie de France and Collège Stanislas.
If you are a McGill student taking COMP 202 (Foundations of Programming, Python), I have a dedicated page covering the course in detail: topics, common mistakes, exam preparation.
See the COMP 202 page →All three years of the CÉGEP Computer Science DEC program at Montreal CÉGEPs (Dawson, Vanier, John Abbott, Maisonneuve and others). Java, C, C++, object-oriented programming, data structures, algorithms, databases, web development and discrete mathematics.
COMP 202 (Foundations of Programming, Python), COMP 204 (Python for Life Sciences), COMP 206 (Introduction to Software Systems, C and Unix), COMP 250 (Introduction to Computer Science, Java with data structures), plus the math prerequisites MATH 133, MATH 139 / 140 / 141.
COMP 248 (Object-Oriented Programming I, Java), COMP 249 (Object-Oriented Programming II, Java). Classes, inheritance, polymorphism, interfaces, exception handling, recursion, intro to data structures.
For students at Lycée Marie de France and Collège Stanislas: the NSI specialization in Première and Terminale. Python, algorithms, data structures, relational databases, networks and machine architecture. Preparation for the Baccalauréat exam and follow-on engineering programs.
I hold a B.Sc. from McGill in Computer Science, Finance and Mathematics, and an M.Sc. in Applied Computer Science from Concordia. I have been tutoring computer science in Montreal for over 10 years, from intro Python and Java through advanced data structures and algorithms.
Programming errors usually come from a missing mental model. I work on building that model rather than debugging code line by line. A student who understands what their program is doing will fix their own bugs the next time.
Computer science is not about memorizing syntax. It is about building a logical, rigorous way of thinking: understanding why an algorithm works, how a data structure affects complexity, what actually happens when a program runs. Students who do well in CS are the ones who have built that model, not the ones who have copied code from past assignments.
I start with a diagnostic. Many students arrive with bad habits: duplicated code, no functions, poorly named variables. We clean that up early because bad habits in COMP 202 or CÉGEP create real problems in COMP 250 and later courses.
For students aiming at a software engineering career or graduate studies, I push beyond the syllabus on recursion, complexity analysis, graph algorithms and OOP design patterns. These topics appear over and over in advanced courses and interviews.
I tutor McGill COMP 202 (Foundations of Programming, Python), COMP 204 (Python for Life Sciences), COMP 206 (Introduction to Software Systems, C), COMP 250 (Introduction to Computer Science, Java) and the related math prerequisites. I have a dedicated COMP 202 page with deeper detail.
Yes. I tutor Concordia COMP 248 (Object-Oriented Programming I in Java) and COMP 249 (Object-Oriented Programming II in Java), covering classes, inheritance, polymorphism, interfaces, exception handling and basic data structures.
Yes. I tutor students in CÉGEP Computer Science (program 420) at every Montreal CÉGEP, including Dawson, Vanier, John Abbott and the francophone CÉGEPs. Topics include Java, C, C++, data structures, algorithms, databases and web programming.
Yes. I tutor computer science online via Microsoft Teams with screen sharing and code review. We can work on assignments live, debug together and walk through algorithms step by step. In-person sessions are also available in Montreal.
Written in English, statements and solutions alike, and read straight off the page. Nothing to download and nothing to sign up for.
The ten exercises a COMP 202 student actually loses marks on. Part A is the mechanics: the three division operators and the negative floor, truth values and short circuiting, the boundaries of range and the accumulator pattern, string slicing against string indexing, and list aliasing drawn as a memory diagram. Part B works at midterm level: call frames and the print against return distinction, nested loops and the list-of-lists trap, five plausible statements to correct, a file of marks read and reported on, and a naive Fibonacci whose call tree explains why correct is not the same thing as usable.
10 corrected exercises • 100 points
In EnglishThe first third of COMP 202, the part every later assignment stands on. Part A takes the mechanics: what an operator means once the types on either side of it change, the border between the text world and the number world that input and int cross in opposite directions, the binary fractions behind 0.1 + 0.2, De Morgan and the precedence that makes not a == b mean a != b, and a cascade of elif written in increasing order that collapses onto its first branch. Part B works at midterm level: a fare program with one error message and one silent wrong answer, the leap year rule and the price of testing in the wrong order, five statements to correct, a dosage calculator judged on its boundaries, and progressive tax brackets where the classic bug charges nearly twice what is owed.
10 corrected exercises • 100 points
In EnglishThe chapter where a program stops being a list of instructions. Part A takes the mechanics: the question that decides between for and while before a line is written, the accumulator family beyond the sum with the neutral starting value each one needs, break and continue and the else that belongs to a loop, the order in which a nested loop visits its pairs, and a trace table filled row by row on a program that peels the digits off a number. Part B works at midterm level: a menu loop with three ways of never ending, the Collatz sequence whose length no for loop can bound, five statements to correct, a savings account where the answer is the month itself, and a primality test cut from 9971 divisions down to 98.
10 corrected exercises • 100 points
In EnglishThe chapter every assignment of the term goes through, because data arrives as text. Part A takes the mechanics: negative indices and the step of a slice, the string methods sorted by what they GIVE BACK rather than learned one by one, split and join as the two halves of one idea with the empty field that survives a double separator, the four ways to ask where a substring is and the -1 that is also a valid index, and building a string in a loop against joining once. Part B works at midterm level: one line of a data file taken apart field by field, palindromes with the reverse slice and with two pointers, five statements to correct, a Caesar cipher with its wrap around, and word statistics computed without a single dictionary.
10 corrected exercises • 100 points
Get in touch to schedule a first session, adapted to your course, your assignments and your exam schedule.