facebook
from16.00GBP/ 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 Building Stu (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 Stu (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 (Variable declarations), Interpreting (Variable declarations), Resolving (Variable declarations) 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) 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 £16Online via webcam
from £16At 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 £16Online via webcam
from £16At 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


Matías
Private coding / programming lessons with python
Python is one of the best, if not the best, language to start learning programming. It is also one of the most widely used languages today, especially in cutting-edge areas such as machine learning. This popularity means that Python is constantly evolving. It offers a wide range of tools and libraries, which are free and very varied. As an aeronautical engineer, I like to share my knowledge and derive satisfaction from it by teaching and motivating others. I'm used to working with people of different ages. I believe in the importance of segmenting learning, visualizing progress, setting concrete goals and practicing regularly. Beyond these general principles, there is no magic rule or method. Some approaches work with some students but not with others. Adaptation to individual needs is therefore the main objective of private lessons. So I will do my best to find what motivates and helps my student.

Amin
Programming with Python, with C and database management (Introduction to machine learning)
Looking to master programming and become a skilled developer? In this course, you'll learn the basics of Python and other programming languages, as well as how to use them to build machine learning models. We also offer specialized assistance for students in programming and database management using SQL (CPGE students). Python is a powerful general-purpose language used in web development, data science, software prototyping, and more. Its simple and easy-to-use syntax makes it an excellent choice for beginners learning to program. Additionally, upon request, we offer courses in other programming languages such as C, R, and MATLAB. Classes can be conducted remotely or in person, and we tailor our instruction to meet individual or group needs. If you have any questions, feel free to contact us.

Reza
Systematic Reasoning and Logical Thinking for Computer Science
You will learn Systematic Reasoning & Logical Thinking which is a requirement for entering Computer Science program in many universities. The book “Delftse Foundations of Computation” especially its second chapter will be the main source of our lesson, but other more in-depth books will be also covered if you want to improve even further on logical thinking. The topics in our lesson include: • Propositional Logic: Logical operators; Precedence rules; Logical equivalence; Implications in English; Exclusive or; Universal operators; Classifying propositions • Boolean Algebra: Substitution laws • Logic Circuits: Logic gates; Combining gates to create circuits; From circuits to propositions; Disjunctive Normal Form; Binary addition. • Predicate Logic: Predicates; Quantifiers; Tarski’s world and formal structures; • Deduction: Valid arguments and proofs; Proofs in predicate logic If you have any additional questions before starting a class, please feel free to ask me. I am here to assist! :)

Nancy
Mathematics, Computer Science and Python Tutor for you
Many of students find it difficult to understand the mathematical concepts and programming algorithms. But don't worry as I know how to make that easy for you to understand these concepts. I have completed mathematics honors and pursuing data science and Artificial Intelligence. So, what all you need is my support to ease your learning. I can help you in any mathematical and computer science concept. Also, I am very familiar with Python

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.

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
Support and strengthening lessons in mathematics, physics and computer science subjects
I hold a PhD in Mathematical Physics (Theoretical Physics), and I specialize in providing educational support lessons in physics and mathematics. I provide my services to high school and university students, and I have the ability to teach in French, Arabic, and English. Thanks to my eight years of experience in providing private lessons, I have developed a flexible teaching methodology that adapts to the needs of each individual student. With my experience of more than six years as a professor within the French Mission Program, I have mastered the requirements of this educational system and its special methods. My experience in the field of entrance examinations for graduate schools constitutes an additional advantage for students wishing to continue their studies in prestigious educational institutions. My passion for physics and mathematics and my strong academic background enable me to explain complex concepts in a clear and understandable way. My goal is to develop students' understanding academically and build their self-confidence, helping them reach their full potential. I am committed to providing high-quality education, tailored to each student's pace and learning styles, and I strongly believe that every student can excel with the right guidance and support.

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
Mastering Web Development: From Fundamentals to Advanced Techniques
Hello everyone, Are you looking to become a skilled web developer? My web development courses are designed to meet your specific needs, whether you are a student, self-taught learner, or professional looking to transition. ### What I Offer: - **Key Technologies**: HTML, CSS, JavaScript, React.js, Next.js - **Backend**: Node.js, Express, Flask - **Databases**: MySQL, PostgreSQL, MongoDB - **DevOps Practices**: Docker, CI/CD with GitHub Actions ### How My Courses Can Help You: - **Students**: Gain the skills needed to excel in your academic projects and kickstart your career. - **Self-Taught Learners**: 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, from bug fixing to performance optimization. Feel free to contact me for more information about my web development courses. Together, we can achieve your goals and make you a confident, competent web developer!

Jean-Michel
Apple Mac iPhone iPad iCloud IT Support Online
I have known and used the Mac since 1989 and since 2014 it has become my main activity and I have more than 1600 customers in Switzerland and neighboring France. I give at-home lessons if necessary and online lessons and troubleshooting with the Messages app on your Mac, from Apple ID to Apple ID, in complete security. If you have problems with your Mac, updates to make or training needs on Mac OS or apps like Contacts, Safari, Mail, system settings and optimizations and security (malware), iCloud, Photos, printers and passwords, etc... do not hesitate to call me. I have been registered with the Geneva commercial register and with the French-speaking business federation since 2015.

Yousra
Machine learning( Exploratory Data Analysis, Supervised & Unsupervised Machine Learning, Deep Learning and Reinforcement Learning )
Machine Learning is one of the most sought-after skills in the modern world of AI applications, with hiring in this field growing at a staggering 74% annually for the last four years. This program is designed to equip you with the skills and experience needed to pursue a successful career in Machine Learning, and explore the main types of Machine Learning: Unsupervised Learning, Supervised Learning, Deep Learning, and Reinforcement Learning. You'll also delve into special topics to complement your learning. The program comprises of 6 courses that offer a solid theoretical understanding and ample opportunities to practice the main algorithms, uses, and best practices associated with Machine Learning. You'll code your own projects using the most relevant open-source frameworks and libraries, and apply what you learn in various courses to a final project. Whether you're already familiar with Python programming, statistics, and linear algebra, or just have a general interest in data analysis and self-learning, this intermediate series is suitable for you. We start with the basics, offer a solid theoretical foundation, code-along labs and demos, and build up to more advanced topics, making it an exciting and rewarding learning experience.

Baia
Front-end development(Html, Css, Javascript, Vue.js, React.js) by professional and experienced developer
Are you ready to craft stunning, interactive websites that captivate audiences and elevate user experiences? Look no further than my dynamic Front-End Development course. From mastering HTML, CSS, and JavaScript to harnessing the power of cutting-edge frameworks like React and Vue, you'll acquire the skills needed to build responsive, intuitive websites that stand out in today's competitive market. But it's not just about learning code—it's about cultivating creativity. My methods fosters a collaborative learning environment where you'll engage in real-world projects, tackle challenges head-on, and refine your design sensibilities to create visually stunning interfaces that leave a lasting impression. If you are stuck with your project, or you want to kearn high-income, future skills, my Front-End Development course is your gateway to success. Enroll now and embark on a journey towards a fulfilling and rewarding career in tech!" For further details, please don't hesitate to contact me!