Andrew's Tutorials
Java
Kotlin
Hello World
Nullable Types
Control Flow
Android: Hello World
Android: Activities
Android: ListViews
Android: Using APIs
Android: RecyclerViews
Android: Fragments
Android: App Preferences
Android: Notifications and Started Services
Android: SQLite database
Android: Recording and Playing audio
HTML
A HTML Page
Headings and Paragraphs
Lists
Tables
Attributes and Values
Links
Images
Image Replacement
Forms
Form Examples
Validation Checks
Resources
ASP.NET
Introduction
Improved Hello World
Master Pages
Relative URLs
Query Strings
Contact Forms
Adding a jQuery Script Resource
Validation
Custom Validation
Authentication with ASP.NET Identity
Authorisation with ASP.NET Identity
Accessibility: Fixing the FormView
Accessibility: Fixing the Login Control
GridView: Creating a gridview
GridView: Deleting and editing data
GridView Validation
Linking Images to Database Entries
FormViews
Repeaters
Entity Framework: Creating a model
Entity Framework: Adding records
Entity Framework: Listing records
Entity Framework: Displaying a specific record
Entity Framework: Uploading Images
Working with Git
PayPal Integration
Image Manipulation
Resources
Deprecated: Security: Tables
Deprecated: Security: Project Configuration
Deprecated: Security: Database Connection
Deprecated: Security: Login Page Location
Swift
Methods
Simple Class
Optionals
Arrays
Class Extensions
Ternary operator
Bingo
Protocols and Delegates
Generics
Persisting data with NSCoding
Bingo with a UI
iOS: Location Services
iOS: External Display
watchOS: Minesweeper
SpriteKit
Magic 8 Ball
Bamboozle
Timer
Drag & drop
Air Hockey
Lights Out
Parkgate Pigeons
Level Selection
Playing Sound
Resources
Index
A HTML Page
Headings and Paragraphs
Lists
Tables
Attributes and Values
Links
Images
Image Replacement
Forms
Form Examples
Validation Checks
Resources