facebook
from29.32CAD/ h

Computational Theory (Suitable for GCSE and A-Level)

Computers are very powerful machines, that do incredible work. But how do they work? How can it tell the difference between a 1 and a 7? How can it tell the difference between reading a Word document and a PowerPoint?
If you understand programmatic theory, then you can write in any programming language.

This class is designed to unravel the mysteries surrounding these machines. Ranging from programming theory (what is a pointer?) to actual computational challenges (what is the correct data structure to use based on the Big O requirements?)

No specific language is covered in this course, it will be purely theoretical knowledge and 'pseudocode'.

The topics covered are listed below

Programmatic Theory:
Literals, Operators, Keywords
Variables, Data Types, Generics
Memory Usage, Pointers, Arrays
Branching, Iteration, Iterators
Functions, Control Flow, Scope,
Closures, Enumerations, OOP
Classes and Instances, Immutability, Inheritance
Polymorphism, Exception Handling, Composition
Asynchronous Programming, Multithreading, Multiprocessing

Internal Workings:
Binary, Hexadecimal, Number Systems
Extrinsic vs Intrinsic Data, Coupling, MVC Architecture
CPU, FED Cycle, Spatial Locality
Caching, Performance, Memory Types
Storing Complex Data (Text), Storing Complex Data (Sound), Storing Complex Data (Images)

Data Structures and Algorithms:
Performance, Big O, Measuring Performance
Searching, Sorting, Decomposition
Data Structures, Arrays, Linked Lists
Single Buffers (Pools), Double Buffers, Ring Buffers
Stacks, Queues, Priority Queues
Heaps, Hash Tables, Graphs
Trees, Binary Trees, Vectors

Extra information

Bring your own laptop (microphone and speakers required, webcam optional), with some sort of text editing software

Location

Online via webcam
At student's location: Around Hemel Hempstead, United Kingdom

|
Use ⊞+wheel to zoom!
+

General info

Age:
Children (7-12 years old)
Teenagers (13-17 years old)
Adults (18-64 years old)
Seniors (65+ years old)
Student level:
Beginner
Intermediate
Duration:
60 minutes
The class is taught in:English

About Me

About Me:
I'm currently pursuing a Master's degree in Computer Systems Engineering and I
understand how annoying it is not to achieve what you potentially could. Having done computer science for many years both for study and for work, I have a competent understanding of the subject matter and tend to run things more informally than a classroom.
I honestly believe that understanding computer science is a privilege and a pleasure. One of my top priorities is making sure my students have that privilege. My other priorities are about clearing the jargon - what appeals to me most when tutoring is seeing a mental block clear, and all the little puzzle pieces click into place.

My Teaching Style:
My style is more Q&A, where we work together to assess gaps, and build up our knowledge from there. I will break things down to their simplest form, and then build up the knowledge in layers.
My main focus is visible progress - I try to preach the mentality of 'one large problem is nothing but several smaller - and infinitely more manageable- problems'. That way, a slow lesson still has a visible output that a student can refer back to and show.

I will not hesitate to answer any questions you have! Don't hesitate to email or WhatsApp me with any queries.

Education

Pursuing Integrated Master's in Computer Systems Engineering
Achieved 75% average across the first 3 years of my course
A-Levels in Maths, Computer Science, and Physics

Experience / Qualifications

I am used to working with students of a variety of ages and skills, having tutored for those between the ages of 6 and 16, as well as some professional presentation of projects to general public.
Employed as a Computer Science Tutor for ages 6 - 16
Tutored private GCSE physics lessons
Any programming language - compiled or interpreted, statically typed or dynamic, boils down to the same common principles. These principles can then be applied to make any programming language - with any rules you desire. You can use '&' to represent addition and '>>!' to represent conditional loops. You can use 'beep' to represent branches and end each line with @. This class aims to teach you how to create these principles to design a language, and then the different approaches on how to do it. An end project will be to actually make your own programming language! The topics covered are listed below: Pretence: Programming Language Types (grammar), Programming Language Types (formation), Programming Language Types (typing) Stages (Lexing), Stages (Parsing), Stages (Interpreting) Intermediate Forms (AST), Intermediate Forms (Bytecode), Transpiling Optimisation (types), Optimisation (application to AST), Optimisation (application to Bytecode) Building Ray (Classes): Grammar Type, Formation Type, Typing Type Data Types, Expressions (types), Expressions (precedence) Statements (declarations), Statements (statements), Standard Library Tokens, Tokenisation (characters), Tokenisation (literals) Parsing (AST), Parsing (Visitors), Interpreting (Visitor) Static Scope, Semantic Analysis, Resolvers (Visitor) Building Ray (Nodes) Parsing (Literals), Interpreting (Literals), Resolving (Literals) Parsing (Groups), Interpreting (Groups), Resolving (Groups) Parsing (Operators), Interpreting (Operators), Resolving (Operators) Parsing (Variable declarations), Interpreting (Variable declarations), Resolving (Variable declarations) Parsing (Variable getters), Interpreting (Variable getters), Resolving (Variable getters) Parsing (Variable setters), Interpreting (Variable setters), Resolving (Variable setters) Parsing (Branches), Interpreting (Branches), Resolving (Branches) Parsing (Logic Gates), Interpreting (Logic Gates), Resolving (Logic Gates) Parsing (Loops conditional), Interpreting (Loops conditional), Resolving (Loops conditional) Parsing (Loops count), Interpreting (Loops count), Resolving (Loops count) Parsing (Function declarations), Interpreting (Function declarations), Resolving (Function declarations) Parsing (Function calls), Interpreting (Function calls), Resolving (Function calls) Parsing (Scope Termination), Interpreting (Scope Termination), Resolving (Scope Termination) Parsing (Class declarations), Interpreting (Class declarations), Resolving (Class declarations) Parsing (Instances), Interpreting (Instances), Resolving (Instances) Parsing (Methods), Interpreting (Methods), Resolving (Methods) Parsing (Instance Lookup), Interpreting (Instance Lookup), Resolving (Instance Lookup) Parsing (Constructors), Interpreting (Constructors), Resolving (Constructors) Parsing (Inheritance), Interpreting (Inheritance), Resolving (Inheritance) Optimisations (Visitor), Optimisations (Literal-Only Expressions), Optimisations (Variable Expressions) Project: Build your own language! (Supervised)
Python is one of the most versatile programming languages out there, used for game development, AI, web scraping, and so much more. In this class, I will break down the language into simple building blocks that can be used time and time again in any program, whether designing 2D Minecraft or coding your own JARVIS! The topics covered are listed below Basics: Literals, Operators, Keywords Variables, Data Types, Branching Iteration, Iterators, Functions Control Flow, Scope, Closures Importing, Random Numbers, Modules and Packages OOP, Classes and Instances, Inheritance Polymorphism, Exception Handling, Files Data Structures and Algorithms: Searching, Sorting, Immutability Lists, Tuples, Linked Lists Single Buffers (Pools), Double Buffers, Ring Buffers Stacks, Queues, Priority Queues Hash Tables (dictionaries), Hash Tables (custom), Vectors Graphs, Trees, Binary Trees

Ask a question

Send a message explaining your needs and Max will reply soon:
The more detail, the better.
Ex. "Hi, when are you available to meet for a lesson?"

Availability of a typical week

(GMT -04:00) New York
MonTueWedThuFriSatSun
0              
1              
2              
3              
4              
5    Tuesday at 5:00    Thursday at 5:00  Friday at 5:00  Saturday at 5:00  Sunday at 5:00
6    Tuesday at 6:00    Thursday at 6:00  Friday at 6:00  Saturday at 6:00  Sunday at 6:00
7        Thursday at 7:00  Friday at 7:00  Saturday at 7:00  Sunday at 7:00
8      Wednesday at 8:00      Saturday at 8:00  Sunday at 8:00
9      Wednesday at 9:00      Saturday at 9:00  Sunday at 9:00
10      Wednesday at 10:00      Saturday at 10:00  Sunday at 10:00
11      Wednesday at 11:00      Saturday at 11:00  Sunday at 11:00
12      Wednesday at 12:00      Saturday at 12:00  Sunday at 12:00
13      Wednesday at 13:00      Saturday at 13:00  Sunday at 13:00
14      Wednesday at 14:00      Saturday at 14:00  Sunday at 14:00
15  Monday at 15:00    Wednesday at 15:00    Friday at 15:00  Saturday at 15:00  Sunday at 15:00
16  Monday at 16:00    Wednesday at 16:00    Friday at 16:00  Saturday at 16:00  Sunday at 16:00
17              
18              
19              
20              
21              
22              
23              
from C$29.32Online via webcam
from C$29.32At student's home

Good-fit Instructor Guarantee


If you are not satisfied after your first lesson, Apprentus will find you another instructor or will refund your first lesson.

Online reputation

  • Instructor since April 2021
  • Phone number verified
  • Google connected

Availability of a typical week

(GMT -04:00) New York
MonTueWedThuFriSatSun
0              
1              
2              
3              
4              
5    Tuesday at 5:00    Thursday at 5:00  Friday at 5:00  Saturday at 5:00  Sunday at 5:00
6    Tuesday at 6:00    Thursday at 6:00  Friday at 6:00  Saturday at 6:00  Sunday at 6:00
7        Thursday at 7:00  Friday at 7:00  Saturday at 7:00  Sunday at 7:00
8      Wednesday at 8:00      Saturday at 8:00  Sunday at 8:00
9      Wednesday at 9:00      Saturday at 9:00  Sunday at 9:00
10      Wednesday at 10:00      Saturday at 10:00  Sunday at 10:00
11      Wednesday at 11:00      Saturday at 11:00  Sunday at 11:00
12      Wednesday at 12:00      Saturday at 12:00  Sunday at 12:00
13      Wednesday at 13:00      Saturday at 13:00  Sunday at 13:00
14      Wednesday at 14:00      Saturday at 14:00  Sunday at 14:00
15  Monday at 15:00    Wednesday at 15:00    Friday at 15:00  Saturday at 15:00  Sunday at 15:00
16  Monday at 16:00    Wednesday at 16:00    Friday at 16:00  Saturday at 16:00  Sunday at 16:00
17              
18              
19              
20              
21              
22              
23              
from C$29.32Online via webcam
from C$29.32At student's home

Good-fit Instructor Guarantee


If you are not satisfied after your first lesson, Apprentus will find you another instructor or will refund your first lesson.

Share


Amin
Statistical Analysis with Python and R (Rstudio) - Intro to Data Science
By delving deep into the practical applications of statistics and data science, this course is designed to set you up for success. Learn from real-world examples: Instead of spending hours on theoretical material and trying to relate it to practical issues, we will focus solely on applied statistics. Programming will allow you to apply theory to real-world problems, equipping you with the knowledge and skills you need to succeed. We won’t be spending hours solving math problems by hand for reinforcement, as this isn’t school. Instead, we’ll use cutting-edge methods and code libraries that leverage the latest software releases to maximize productivity and efficiency. If you have any further questions, please do not hesitate to contact us.

Join
Academic support: Mathematics from secondary to Bachelor and Fundamentals of programming in C and C++ for beginners and intermediates.
Discover our comprehensive academic support program, offering in-depth expertise in crucial areas of mathematics, from secondary to Bachelor, as well as the fundamentals of programming in C and C++, suitable for both beginners and intermediate levels. Mathematics from Secondary to Bachelor: This part of the course offers a comprehensive path to consolidate and broaden your understanding of mathematics, from high school concepts to the more advanced requirements of the Bachelor level. Dive into algebra, geometry, differential and integral calculus, statistics, and much more. Our experienced instructors will guide learners through clear explanations, detailed demonstrations and practical exercises to reinforce understanding and problem solving. Fundamentals of Programming in C and C++ for Beginners and Intermediates: Explore the exciting world of programming with our section dedicated to C and C++ languages. Designed for beginners, this course begins with an in-depth introduction to basic programming concepts, ranging from syntax to control structures. Learners will gain a solid understanding of fundamentals before moving on to more advanced topics. For intermediate levels, the course expands programming skills by focusing on real-world projects, code optimization, and advanced use of C and C++ features. Participants will have the opportunity to develop practical applications, strengthening their expertise while honing their problem-solving skills. Pedagogical Approach: Our educational approach is based on the interactive engagement of learners. Classroom sessions, practical work and real-world projects ensure a thorough understanding of the concepts taught. Instructors are dedicated to creating a stimulating learning environment, encouraging questions and active participation. Whether you are looking to strengthen your high school math skills or master C and C++ programming, our academic support program provides a comprehensive platform to stimulate your intellectual and professional growth. Join us on an enriching educational journey, where skill acquisition becomes an exciting and educational adventure.

Manel
Learn computer skills / HTML from scratch /CSS/Javascript
“Welcome to the magical world of HTML! 🌟 We're going to show you how to create amazing web pages, just like the sites you love to visit! Imagine being able to create your own website where you can share your passions, your favorite games, or even stories you make up. Ready to become web wizards? Let's go!"**

Rory
GCSE level Mathematics, Computer Science or Physics teacher
As a A level student, I have extremely recent experience in all the GCSE test content, style and format. This means I can provide a new angle on subjects and know how to explain new topics or topic your child is struggling with as I myself am learning new content everyday. This means I can be a personal tutor and target help to your child and therefore allow them to achieve the best grades possible. In my GCSES I achieved 9's in all these subjects and have continued them all on for A level including Further Maths. I believe as a student tutor I will be able to connect better with your child and therefore actively learn rather than seeing it as a lesson with some dreary old teacher. Please feel free to contact me for more details.

Hasmik
Class of statistics, computer programming, R programming
I am a graduate in data science with R programming skills. I am able to help the students with assignments, and analysis with their master thesis. My approach is very student-oriented and I explain the subjects in a detailed way so that the students understand the main idea.

Salah Eddine
Master Python with Courses Suitable for All Ages and Levels! Beginners, Intermediates, Professionals, Everyone is Welcome
Master Python with Personalized Courses Discover the art of programming with Python courses tailor-made to meet your specific needs. Whether you are a beginner, intermediate or professional, my lessons are suitable for all levels. Why Choose My Courses? Personalized Teaching Approach: Each course is tailored to your skill level and individual goals. Practical Experience: Learn by doing with real-world projects that build your understanding and skills. Ongoing Support: Get unlimited email support for any questions you have between sessions. As a Python expert, I have a passion for teaching and sharing my knowledge. My goal is to guide you effectively in your learning journey. Book Your First Lesson: Start your journey to Python mastery now by booking your first lesson. Whether you aspire to enter the development field or hone your existing skills, these courses are designed for you.

Hamza
Private lessons in mathematics - physics - chemistry
Aged 31 and a Doctor in mathematical physics (theoretical physics), I teach physics and mathematics courses for high school and license in French, Arabic and English. As I have experience in the field of private lessons of 8 years and 2 years as teacher of the program of the French mission and access competitions to higher schools.

Robert
Excel lessons, at your place, at my place or remotely, at your best convenience!
As a Franco-Belgian management teacher, I give Excel lessons with passion! Whether remotely or face-to-face, I offer many examples and exercises to accompany you. I travel without problem throughout the region of Brussels and its surroundings, for lessons of at least 2 hours. For France, courses are only given remotely. Here are some key words that will be covered in my classes: Scenario analysis, Year, Rounding, Today, Bdnb, Bdnbval, Bdsum, Search, Column, Copy/paste in values, Copy/paste with transposition, Consolidation, Date, Datedif, Determat, Dollar, Right, Righterg, Equiv, Esterror, Estna, Frequency, Filter (simple and advanced), Format of cells, Left, Large.Value, Printing of documents, Index, Indirect, Inversemat, Day, Weekday, Line, Matrix, Max, Maxa, Max.Si, Min , Mina, Mina.If, Formatting of cells and ranges, Month, Average, Average.If, Nb, Nb.If, Nbval, Naming of cells and ranges, No, Small.value, Product, Productmat, Protection of cells, Lookup (Lookup), Lookupv (VLookup), Lookuph (HLookup), If (If), If.Not.Disp, If.Conditions, Iferror, Sum, Sumproduct, Sum.If, Sum.If.Set, Substitute , Pivot tables, Sorting, Cell locking Do not hesitate to contact me to organize your lessons according to your needs and availability. Together, we will develop your Excel skills in an efficient and personalized way.

Bozhidar
Math/Computer Science Tutoring for high-school and BSc Computer Science students
Hey! Are you looking for a young, approachable yet meticulous tutor in Computer Science or Mathematics? Then I believe I might be the tutor for you! I offer lessons in the aforementioned subjects (English only) for high-school and bachelor students at the start of their studies. A little bit about me: My name is Bozhidar and I am a MSc Data Science student at ETH Zuerich. Last year, I completed my bachelor's in Computer Science at TU Delft (the #1 technical university in the Netherlands) with distinction. I was a teaching assistant for 10 courses during my stay at the university. Additionally, I have given private lessons to a few high school and bachelor's students, so I believe I have accumulated enough experience with guiding and tutoring students across different disciplines. I have found out that I enjoy teaching a lot, so that is why I am here - to help you and myself! My expertise: During my high school years, I won tens of awards and scholarships for achievements in Mathematics and Computer Science. I also won my high school's recognition award which is given to one student every year for distinctive results. I've helped high-school and university peers with exam preparation, taught whole courses privately, prepared sample exams, and reviewed and graded real ones. Regarding the university courses I have experience in, I have taught: - Object-Oriented Programming - Reasoning & Logic - Computer Organisation - Algorithms and Data Structures - Web and Database Technologies - Calculus - Information & Data Management - Automata, Computability and Complexity - Concepts of Programming Languages - Computational Intelligence Here are some of the reviews I have received as a teaching assistant: Overall: 4.97/5 (70 reviews) 5/5 - "Great job! Did far more than just explaining this example and went far deeper into the material, helping me to understand it." 5/5 - "Favourite TA. Always there for the difficult questions. Never leaves anything unanswered no matter how long it takes." 5/5 - "Delightful person with an insightful way of thought! Brilliant TA!" 5/5 - "Clear explanations and expert in the material" So, what are you waiting for? Write me a message and let's get the knowledge train running.

Aniket
Oracle Certified Tutor/Trainer For Java, Python and Web with 300+ Reviews
- B.tech and M.tech in Computer Science - Worked as a Software engineer in Virtusa Corp & DIGIDEZ - More than 6 years of teaching experience - Oracle Certified Developer - Helped students placed in FAANG Featured Review : Been trying to learn Java on my own for about 1 year and I couldn't get a grasp on it. Aniket make learning Java a fun experience and challenges you to think for yourself to reinforce the concepts you've learned. I am truly excited for our meetings and he makes time go by so fast that I'm upset when they end. Great teacher and he is genuinely passionate about your success. If I could give him more stars I would!!! Thanks Aniket

Oussama
Python Programming for All Levels: From Fundamentals to Advanced Libraries and Frameworks
Hello everyone, Looking to master Python programming? My Python courses are tailored to meet your specific needs, whether you are a beginner, self-taught learner, or professional looking to transition. ### What I Offer: - **Basic Principles**: Introduction to programming, algorithms, and data structures. - **Advanced Libraries and Frameworks**: NumPy, Pandas, Django. - **Practical Projects**: Real-world applications to solidify your skills. ### How My Courses Can Help You: - **Students**: Gain the skills needed to excel in your academic projects and kickstart your career. - **Self-Taught Learners**: Avoid common pitfalls and accelerate your learning with clear, practical instructions. - **Professionals**: Enhance your skills to meet industry demands and advance in your career. ### Methodology: - **Personalized Approach**: Each course is tailored to your level and learning pace. - **Theory and Practice**: Combining theoretical concepts with practical exercises for comprehensive understanding. - **Problem Solving**: Learn to tackle real-world issues encountered in programming, from bug fixing to performance optimization. Feel free to contact me for more information about my Python programming courses. Together, we can achieve your goals and make you a confident, competent Python programmer!

Mouncef
Learn Python, Artificial intelligence with me until you become an expert
This Python course teaches you the basics of programming in Python, including variables, data types, operators, control structures (if, for, while), functions, and lists. You will also learn how to manipulate data with libraries such as Pandas and NumPy, create graphs and visualizations with Matplotlib and Seaborn, and even develop simple web applications with Flask or Django.

Azzedine
Maîtrisez NinjaTrader: Develop an expert in trading!
Get an expert in trading with NinjaTrader! If you are passionate about trading and souhaitez maitriser on one of the platforms of trading with more people in the market, this announcement is for you! If you are an expert in NinjaTrader, I offer you some training to help you get into this trading platform as an exception. If you want to use the trading manual or automate your strategies to use the C# language and other personal indicators, these configurations will guide you through the process. Advice for all Nivea traders, technicians, and experienced professionals, to see who you can attend: A training app for the use of NinjaTrader, comprenant of navigation in the interface, execution of orders and analysis of operations. Detailed instructions on the creation and optimization of automated trading strategies using the C# language. Conseils pratiques sur l'utilisation des indications personnalisés pour ajouter votre touche analytique et prendre des décisions de trading claires. If you want to generate additional revenues from trading or do trading activities at regular times, you will be able to prepare the necessary concierges and competencies to make profit from your financial markets. I hope you have the opportunity to develop a veritable expert in trading with NinjaTrader! Contact your maintenant to reserve your place and start your purchases over the successful financing.

Hayat
Master the Essential Tools of Microsoft Office: Word, PowerPoint and Excel"
Do you want to master Microsoft Office tools? This course offers you comprehensive training on the three most popular applications in the Microsoft Office suite: Word, PowerPoint and Excel. Whether you are a beginner or already have some basics, this course is designed to adapt to your level. You will learn how to create documents, dynamic presentations and use spreadsheets for efficient management of your data. Sessions can be customized to your needs, whether you prefer individual or group learning. With my support, you will quickly become comfortable with these essential tools. If you have any questions or would like to know more, please do not hesitate to contact me!

Jameel
Introduction to Artificial Intelligence (AI) Basics to Advance
Artificial Intelligence (AI) is transforming industries and reshaping how we interact with technology. This course is designed for individuals interested in understanding the fundamentals of AI, its applications, and its impact on society. Whether you're a complete beginner or have some prior knowledge, this course will provide you with a solid foundation in AI concepts and techniques. In this course, you will learn about: Understanding AI Fundamentals: Explore the core principles of artificial intelligence, including machine learning, deep learning, and natural language processing. AI Applications: Discover how AI is being used across various sectors such as healthcare, finance, automotive, and entertainment. Data and Algorithms: Gain insights into the importance of data in AI and learn about the algorithms that power machine learning models. Ethics in AI: Discuss the ethical implications of AI technologies and their societal impact, including bias, privacy concerns, and job displacement. Hands-On Projects: Engage in practical exercises that will allow you to apply your knowledge by working on real-world AI projects.