Add to Wish List
Add to Wish List
from24.00GBP/ h
Programming Language Development (Suitable for GCSE and A-Level)
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)
We will not be covering how to use python, so make sure that you know how to do classes and OOP programming in python.
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)
Extra information
Bring your own laptop (microphone and speakers required, webcam optional), with python installed.We will not be covering how to use python, so make sure that you know how to do classes and OOP programming in python.
Location
Online via webcam
At student's location: Around Hemel Hempstead, United Kingdom
|
Use ⊞+wheel to zoom!
General info
Age: | Teenagers (13-17 years old) Adults (18-64 years old) |
---|---|
Student level: | Advanced |
Duration: | 60 minutes 90 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.
Education
Pursuing Integrated Master's in Computer Systems EngineeringAchieved 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
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
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?"
Ex. "Hi, when are you available to meet for a lesson?"
Availability of a typical week
(GMT -05:00) New York
Mon | Tue | Wed | Thu | Fri | Sat | Sun | |
---|---|---|---|---|---|---|---|
0 | |||||||
1 | |||||||
2 | |||||||
3 | |||||||
4 | |||||||
5 | |||||||
6 | |||||||
7 | |||||||
8 | |||||||
9 | |||||||
10 | |||||||
11 | |||||||
12 | |||||||
13 | |||||||
14 | |||||||
15 | |||||||
16 | |||||||
17 | |||||||
18 | |||||||
19 | |||||||
20 | |||||||
21 | |||||||
22 | |||||||
23 |
from £24Online via webcam
from £24At student's home
100% Satisfaction Guarantee
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 -05:00) New York
Mon | Tue | Wed | Thu | Fri | Sat | Sun | |
---|---|---|---|---|---|---|---|
0 | |||||||
1 | |||||||
2 | |||||||
3 | |||||||
4 | |||||||
5 | |||||||
6 | |||||||
7 | |||||||
8 | |||||||
9 | |||||||
10 | |||||||
11 | |||||||
12 | |||||||
13 | |||||||
14 | |||||||
15 | |||||||
16 | |||||||
17 | |||||||
18 | |||||||
19 | |||||||
20 | |||||||
21 | |||||||
22 | |||||||
23 |
from £24Online via webcam
from £24At 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
You are here
Private lessons
in Hemel Hempstead
Similar classes
Matías
Private coding / programming lessons with pythonPython 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.
Salah Eddine
Master Python with Courses Suitable for All Ages and Levels! Beginners, Intermediates, Professionals, Everyone is WelcomeMaster 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.
Manuel
Master the CompTIA Trifecta: A+, Network+, & Security+The CompTIA Trifecta (A+, Network+, and Security+) is a great way to start a career in IT. These certifications cover IT basics, networking, and cybersecurity, giving you the skills you need to succeed in the tech world.
In this class, I’ll help you prepare for all three certifications with lessons that are easy to follow and hands-on practice to build your confidence. You’ll learn how to fix computers, set up and secure networks, and protect systems from cyber threats. I’ll also give you tips to pass your exams and show you how to apply these skills in real-life situations.
When you’re done with this class, you’ll not only be ready to pass the exams but also start an exciting career in IT. Here are a few paths you could take and what they typically pay:
* IT Support Specialist: Solve technical problems and earn $50,000–$60,000/year.
* Network Administrator: Set up and manage networks for $70,000–$80,000/year.
* Cybersecurity Analyst: Protect data and systems and make $90,000–$110,000/year.
* System Administrator: Keep systems running smoothly with a salary of $75,000–$85,000/year.
This is more than a class—it’s an investment in your future. IT skills are always in demand, and once you have them, they’re yours for life. Let’s work together to get you certified and on the path to a rewarding career!
Mohammad Ait
Mathematics, Electrical engineering, Computer science, ElectronicsMathematics, Electrical Engineering, and Computer Science are powerful disciplines for problem solvers and innovators. As a learner, you'll need to master their interconnected concepts to solve real-world problems and build groundbreaking solutions. This course is meticulously crafted as a comprehensive guide to these fields, tailored to equip you with practical knowledge and skills.
You'll explore advanced mathematical techniques, delve into the core principles of electrical engineering, and harness the power of computer science. From solving complex equations and designing circuits to developing algorithms and understanding computational systems, this course empowers you not only to enhance your technical skills but also to create innovative solutions that transform industries
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.
Oussama
Mastering Web Development: From Fundamentals to Advanced TechniquesWhat You’ll Learn:
Front-end Technologies: HTML, CSS, JavaScript, React.js, Next.js, TailwindCSS for creating dynamic, responsive applications.
Back-end Mastery: Node.js, Nest js, Express, and Fastify for building robust and scalable web servers.
Databases: MySQL, PostgreSQL, and MongoDB for handling data efficiently.
DevOps & Deployment: Learn Docker, CI/CD with GitHub Actions, and cloud deployment practices to ensure your applications are production-ready.
How You Will Benefit:
Students: Gain the technical skills and portfolio to ace your academic projects and land internships or entry-level jobs.
Self-Taught Learners: Stop the guesswork and follow a structured, hands-on approach to mastering full-stack development faster.
Professionals: Upgrade your skills to meet the demands of modern web development and position yourself for career growth.
Why My Course is Different:
Real-World Projects: You'll build applications that solve real business problems, like a complete e-commerce site, RESTful APIs, and microservices.
Tailored Learning: Each course is personalized to your experience level and goals, ensuring you get the most out of every session.
Problem-Solving Focus: From debugging to performance optimization, you'll learn to tackle real-world challenges confidently.
Industry-Relevant Skills: Stay ahead of the curve with training in modern technologies and practices that top employers are looking for.
Alex
Mathematics for students of all grades, IB and GCSEMathematics is the best way to enhance your intellect but also work on your intuition and your ability to see patterns.
Good day, my name is Alex, I have been teaching math for over 10 years to hundreds of students. I will teach all grades from elementary school all the way to high school and IB/GCSE etc.
My philosophy revolves around these three values:
-Encouragement
-Inspiration
-Discipline
I specialize into teaching mathematics and programming, but in some occasions I teach physics too.
Feel free to contact me.
Roy
Computer Programming for Beginners | Easy Webdesign with HTML, CSS and JavascriptHello and welcome! Learn about some of the most common programming languages used online and make your own website! This class is well-suited for people who are interested in, want to start to learn, or already have some basics, of Web development and would like to hone their programming skills.
Gaëlle
AI for children: discover how to use artificial intelligence in English, French and SpanishWould you be interested in learning how to use Artificial Intelligence in your daily life? In my AI classes for kids, you will learn how to use this advanced technology in a practical and fun way!
During our sessions, we'll explore different ways AI can improve our everyday lives, from shopping online to playing video games. In addition, you will learn to code and create your own AI applications.
My classes are suitable for children from 8 years old and are held online via video calls. No previous programming experience is required!
If you are interested in learning about AI and how to use it in your life, feel free to contact me! I'm looking forward to teaching you everything I know about this amazing technology.
Martial
Graduate teacher gives courses in Physics & Chemistry, Mathematics, many years of experience.I am a dynamic and demanding teacher who gives private lessons in Physics-Chemistry as well as Mathematics.
I graduated from teaching seven years ago, after a masters in physical sciences with honors, and I teach in college and high school since.
I have also been preparing students for the Baccalaureate Science for many years, all of whom have been awarded very good honors.
I also prepare my students for different exams (Matu, Bac, preparation for EPFL, etc...)
I make sure to rework the basics so that the student can progress quickly. It is important to me that my students acquire a solid foundation of knowledge.
I also give effective work methods that will allow him to progress much more quickly and so he can regain self-confidence.
I can go to the student's home or also take the course via Skype.
Antonio
Marketing, Promotion, Digital Optimization, and SEOThe course module is adapted to the student.
You will earn:
▪️ An integrated digital marketing strategy based on your own organizational context.
▪️ Skills to effectively analyze and leverage data to make breakthrough data-driven decisions.
▪️ A future perspective on marketing and an overview of how to use emerging digital channels and technologies, such as artificial intelligence (AI) and chatbots, within your organization.
▪️ Accept the challenges and opportunities of disruptive technology in your digital marketing strategy.
Dr Zeeshan
Web Design and Cryptography (Digital Authentication)This lesson is the fifth lesson of the Web Penetration Testing Series. This lesson consist of the following topics:
- Cryptography Overview
- Modern Cryptography
- Steganography v/s Cryptography
- Encoding and Decoding
- Symmetric v/s Asymmetric Cryptography
- Message Authentication and Hashing
This lesson is followed by a two hours practical lab session.
Antonin
Experienced teacher in private lessons gives private lessons in the Geneva regionNeed a catch-up, tutoring, private lessons or help with homework in mathematics? In computer science ? In logic?
I'm here for you!
I offer you a personalized approach; because there is no one method that works for everyone, I adapt to the needs and requests of each student (and their parents). The first hour of class will be used to define the student's needs, deadlines and strengths.
My courses are aimed at secondary school students of all levels, higher education students and anyone wishing to refresh or strengthen their knowledge of mathematics and computer science. I have been helping friends and acquaintances on a voluntary basis for a long time in the success of their studies and I hope to be able to put this experience to the benefit of your success :)
Youness
ASSOCIATE PROFESSOR I TEACH: MICROCONTROLLER PROGRAMMING: PIC 16F8XX 18FXX 14FXX ARDUINO ...I am an associate professor of electrical engineering I offer courses in everything related to the discipline of electrical engineering:
CPGE / BTS / DUT / IUT / DTS / UNIVERSITY / Technical high school
ARCHITECTURE OF A PROGRAMMED SYSTEM
INTERNAL AND EXTERNAL APPEARANCE
INPUT/OUTPUT MANAGEMENT
timeouts
timers, watchdog
PIC 16F8X 16F8XX PROGRAMMING
INTERRUPTIONS MANAGEMENT
ASSEMBLER PROGRAMMING
PROGRAMMING IN C
MACHINE CONTROL
SOFTWARE SIMULATION
MPLAB
MIKROC
ISIS/PROTEUS
Paul
I am a teacher of mathematics and I give extra hours for private lessons in science subjectsAs a math teacher, I offer private lessons in science subjects. My classes are mainly aimed at cycle and college students in Geneva, as well as students from private schools. I can also help people who have already finished their schooling but who need to upgrade their knowledge for professional needs.
I am generally available within 3 days of your request and I move around the canton of Geneva using public transport (TPG). Travel costs are included in my rates. For a long-term follow-up, I can give you exercises to do between sessions and correct them at home.
I speak and understand English, but my lessons will be mainly in French. I am ready to adapt my teaching according to your specific needs and to provide personalized support to help you progress in scientific subjects.
Do not hesitate to contact me if you have additional questions or if you wish to schedule a lesson session. I will be happy to help you in your math learning.