Justin MacArthur

Expert Computer Science Tutor Looking To Help You Navigate Your Computer Science Journey!

4.8(32)

FREE TRIAL

Profile photo of Justin, Computer Science tutor at Wiingy
Computer Science learning materials by Justin
Justinenjoying a hobby outside teaching
Live performance with Computer Science by Justin

Show all photos

tutor-image
tutor-image

Justin MacArthur

Diploma degree

/ 55 min

Justin - Know your tutor

Hi, I’m Justin MacArthur! I’m an online tutor with over 6 years of experience helping middle school, high school, and college students build confidence and master new skills. I hold a diploma in Computer Science and specialize in making complex topics easy to understand. I am passionate about teaching: computer science, apps, game, system software, databases, programming languages, and web development. I'm also skilled with: project management, code review, debugging, code optimization, and career guidance. I know that everyone learns differently. I tailor every session to fit your unique learning style, and I have plenty of experience adapting my teaching methods to support students with special needs. Whether you need help untangling a messy line of code, prepping for a big test, or tackling a tough assignment, I'm here to help you boost your grades and actually enjoy what you're learning. If you want a tutor who will focus on your needs and ensuring you understand the nuances of computers and software. All the while sharing anecdotes and experiences from real world industry experience. I'm the tutor you've been looking for. Let’s work together to unlock your full potential!

Programming tutor specialities

Project help icon

Project help

Homework help icon

Homework help

Job readiness icon

Job readiness

Paired coding icon

Paired coding

Assignment help icon

Assignment help

Exam prep icon

Exam prep

Code Optimization icon

Code Optimization

CoTutorCoTutor

AI modules

Summary

Podcast

Quiz

Learnings

Flashcard

Spotlight

Zero Risk Guaranteed

15-days refund

Free tutor swap

No cancel fee

1-yr validity

24/7 support

Learner for programming class

Middle School students icon

Middle School students

High School students icon

High School students

College students icon

College students

icon

Expert in debugging code

Breaks down coding issues into manageable steps.

icon

Paired coding for effective learning

90% of students benefit from collaborative lessons.

icon

Interactive debugging sessions

Students debug and improve their own code in real-time.

Your programming tutor also teaches

Android

Android

App Development

App Development

Computer Science

Computer Science

Databases

Databases

Game Development

Game Development

Unreal Engine

Unreal Engine

Icons

Computer Science concepts taught by Justin

Student learned 2 days ago

The tutor and student reviewed the concept of multi-threading in Java, focusing on challenges like race conditions and deadlocks. They practiced identifying and solving these issues using locks and mutexes, and analyzed examples of thread-safe and non-thread-safe code, with plans to continue with coding exercises in the next session.

Multithreading Basics

Race Conditions

Mutexes and Critical Sections

Deadlock: The Unsolvable Wait

Show more

Student learned 10 days ago

The Tutor and Student explored software architecture, covering its core components like data layers and architectural patterns such as MVC and MVVM. They analyzed anti-patterns like stovepipe systems and vendor lock-in, discussing their technical problems. The session concluded with an examination of architectural mistakes in various application examples, providing context for the student's worksheet.

Software Architecture Layers

MVC and MVVM Architectural Patterns

Architectural Anti-Patterns: Stovepipe Systems and Vendor Lock-in

Architectural Mistakes in Application Design

Show more

Student learned 16 days ago

The Student and Tutor reviewed the basics of Object-Oriented Programming (OOP) in Java, focusing on the concept of encapsulation. They discussed classes, fields, constructors, getters, setters, and method overriding through a game character example. The Student was assigned to create a `Weapon` class and integrate it into the `Actor` class, with the tutor providing the necessary files.

Method Overriding (`toString()` Example)

Accessors (Getters) and Mutators (Setters)

Constructors: Initializing Objects

Encapsulation: The First Pillar of OOP

Procedural vs. Object-Oriented Programming (OOP)

Show more

Student learned 23 days ago

The Student and Tutor discussed advanced Java concepts, particularly multi-threading, thread safety, and race conditions, analyzing these issues within provided code examples. The session also identified areas where the Student needed foundational review, including object-oriented programming pillars, exception handling, and file handling. They agreed on a plan to cover the four pillars of OOP in the next session and to meet twice a week to prepare for an upcoming mid-semester test.

Race Conditions

Thread Safety

Mutex (Mutual Exclusion)

`synchronized` Keyword in Java

Understanding Threads

Show more

Teaching tools used by tutor

Visual Studio Code image

Visual Studio Code

Android Studio image

Android Studio

Jupyter Notebook image

Jupyter Notebook

Git & GitHub image

Git & GitHub

tutorFooter

Coding tutors on Wiingy are vetted for quality

Every tutor is interviewed and selected for subject expertise and teaching skill.