Boon Kiat Seah

Boon Kiat Seah

Singapore

On the way to becoming the best financial app developer that i could never dream about... All with the help from TeamTreeHouse!

66,640

Total Points

Points are earned whenever you take an important action on Treehouse.
Learn more about when and how points are earned.

Skills & Experience

  • Company

    Flag One Pte Ltd

  • Job Title

    IT Director

  • Spoken Languages

    • English
    • Chinese

812 Achievements

  • Callbacks and the DOM
  • Callbacks with Timers
  • Introduction to Callback Functions
  • Retrieve Related Data in Sequelize Queries
  • Create Related Data Using Sequelize Models
  • Data Relationships in Sequelize
  • Understand Data Relationships
  • Working with 'for' Loops
  • Simplify Repetitive Tasks with Loops
  • Loop Through Objects
  • Object Basics
  • Multidimensional Arrays
  • Loop Through Arrays
  • Getting the REST You Need 2
  • Hello, GitHub!
  • Store Multiple Values in an Array
  • Arrow Functions
  • Pass Information Into Functions
  • Create Reusable Code with Functions
  • The Math Object
  • Working with Numbers
  • Putting it all Together
  • Actions, Dispatch and Reducers. Oh my!
  • Modularizing the React Scoreboard Application
  • Getting Started with Redux
  • React Router and Authentication
  • Implementing Basic Authentication
  • Introducing the Authentication Project
  • Refining the App
  • Building the Application
  • Setting up with Create React App
  • Going Further with Routing
  • Navigating, Nesting and Redirecting Routes
  • Getting Started with React Router
  • Making Decisions in Your Code with Conditional Statements
  • Working With Strings
  • Storing and Tracking Information with Variables
  • Hello, JavaScript!
  • Types and Branching
  • Meet Python
  • Building a Layout with Flexbox
  • Performing CRUD Operations
  • Defining Models
  • Getting Started with Sequelize
  • Common Commands
  • Directories and Files
  • The Command Shell
  • Branches on Git Hosting Services
  • Remote Branches
  • Merging
  • Branches
  • GitHub and Other Remote Repositories
  • Managing Committed Files
  • First Commits
  • Practice forEach
  • Combining Array Methods
  • Array Manipulation
  • Array Iteration
  • Searching Names
  • Sorting Algorithms
  • Merge Sort and Linked Lists
  • The Merge Sort Algorithm
  • Building a Linked List
  • Exploring Arrays
  • Recursion and Space Complexity
  • Algorithms in Code
  • Time Complexity
  • Playing a Counting Game
  • React Component Patterns
  • Stateful Components and Lifecycle Methods
  • Managing State and Data Flow
  • Build Modular Interfaces with Components
  • Refactoring and Modularizing a REST API
  • Create, Read, Update, Delete
  • Managing Data and Asynchronous Code
  • Getting to Know REST APIs
  • Asynchronous Code in Express
  • Exploring Async/Await
  • Understanding Promises
  • Asynchronous JavaScript with Callbacks
  • What is Asynchronous Programming?
  • JavaScript Objects and Conditionals
  • JavaScript Arrays and Loops
  • JavaScript Functions
  • Data Types and Variables
  • Building Forms With Bootstrap
  • Using Bootstrap Components
  • Responsive Layouts With the Bootstrap Grid
  • Getting to Know Bootstrap 4
  • Flexbox Properties
  • Understanding Flexbox
  • Exploration
  • Discovery
  • Improving the Application Code
  • Editing and Filtering Names
  • Adding and Removing Names
  • Stateful Components
  • Introducing Props
  • Thinking in Components
  • First Steps in React
  • Designing for your User’s "To-be"
  • Understanding your User’s “As-is” Scenario
  • Becoming Acquainted with Your User
  • Becoming a Design Thinker
  • Adding the Game Logic
  • Making the Game Interactive
  • Rendering the Game
  •  Building Constructor Methods and Generating Objects
  • Introducing 'Four in a Row'
  • Going Further with HTML
  • Images, Text and Links
  • Structuring Your Content
  • Getting Started With HTML
  • Adding a New Web Page
  • Make It Beautiful with CSS
  • HTML: The Structural Foundation of Web Pages and Applications
  • Getting Familiar with HTML and CSS
  • Completing and Testing the API
  • Communicating with Mongo Through Mongoose
  • Modeling Data for the API
  • Building API Routes in Express
  • Building a REST Service
  • Express Middleware
  • Sessions and Cookies
  • User Registration and Login
  • What is Authentication?
  • Go Further With Mongo
  • Working With Collections
  • Understanding MongoDB
  • Getting Started with MongoDB
  • Serving Static Files in Express
  • Applying Express Knowledge
  • Middleware
  • Deeper into Routing with Express
  • Using Templates with Express
  • Getting Started with Express
  • Classes
  • Objects and New Collection Types
  • The Cooler Parts of ES2015
  • ES2015 Basics
  • Creating a Command Line Weather Application
  • Handling Errors in Node
  • Getting Data From an API With Node
  • Introduction to Node.js
  • Getters and Setters
  • Working with Classes in JavaScript
  • Object Basics
  • Introduction to Object-Oriented JavaScript
  • JavaScript Tools and Workflows
  • JavaScript is Everywhere
  • Working with jQuery Collections (2017)
  • Understanding jQuery Events and DOM Traversal (2017)
  • Introducing jQuery (2017)
  • Writing a Classifier
  • Machine Learning Vocabulary
  • Introduction to Machine Learning
  • Big Data at Netflix
  • Where and How Big Data Is Used
  • What is Big Data
  • Error Checking
  • Conditional Formatting
  • Pivot Tables
  • LOOKUP Functions
  • Practicing Data Visualization in Excel
  • Chart Formatting and Layout
  • When To Use What Type of Chart
  • Introduction To Data Visualization
  • The Data Analysis Process
  • Getting to Know Your Data
  • Introducing Data Analysis
  • Build a Spreadsheet
  • Spreadsheet Best Practices
  • Spreadsheet Functions & Formulas
  • Getting Started With Spreadsheets
  • Introducing Spreadsheets
  • Create Function Using Arrow Syntax
  • Using Template Literals
  • Defining Variables With let and const
  • Finishing the Game
  • Introducing JavaScript
  • Day 3: Getting Creative
  • Day 2: Advanced Selecting
  • Day 1: Joining Tables
  • Orientation: Selecting Data
  • Using Interfaces in PHP
  • Designing Interfaces in PHP
  • Extending the Family
  • Inheritance
  • Downloading Album Artwork
  • Requesting Real Data
  • Enhancing the iTunes Endpoint
  • URLs and Parameter Encoding
  • Building the User Interface
  • Modeling iTunes Search Results
  • Decoupling the Data Source
  • Sorting Contacts Into Sections
  • Static Table Views for Detail Interfaces
  • Displaying Contact Data
  • A High Level Overview
  • Dark Sky API Client
  • Downloading JSON Data Asynchronously
  • Fetching Data From the Web
  • Modeling Forecast Data
  • Error Handling and Memory Management
  • Building Standard Library Functions
  • Closure Expressions
  • First Class Functions
  • Generics and Protocols
  • Generic Types
  • Generic Functions, Parameters and Constraints
  • Adding Sound Effects
  • Personalizing The Story
  • Refactoring Our Code
  • Creating the User Interface Programmatically
  • Creating a Story
  • Navigating Through An Adventure
  • Using the Delegate Pattern in iOS
  • The Delegate Pattern
  • Writing Great Swift
  • Access Control
  • Memory Management in Swift
  • Extensions and Protocols
  • Value Semantics, Type Methods and Inheritance
  • Object Initialization
  • Properties
  • Visual Format Language
  • Auto Layout in Code
  • Trait Collections
  • Inequalities, Content and Priorities
  • The Constraint Equation
  • A History Lesson
  • Displaying Additional Views
  • Using the Vending Machine
  • Loading Data From a Resource
  • Modeling an Interface
  • Error Handling
  • Creating Flexible Objects Using Protocols
  • Protocol Basics
  • Objects and Optionals
  • Introduction to Optionals
  • Introduction to Enumerations
  • Running Apps on a Device
  • Improving Our User Interface
  • Structs As Data Models
  • View Controllers and Views
  • Getting Started with iOS Development
  • Differentiating Between Objects
  • Class Inheritance
  • Classes in Swift
  • Adding Power to Functions
  • Functions in Swift
  • Control Flow With Conditional Statements
  • Control Flow With Loops
  • Dictionaries in Swift
  • Introduction to Collections
  • Swift Operators
  • Swift Types
  • An Introduction to Swift Programming
  • Complex Data Structures
  • Traversing the DOM
  • Responding to User Interaction
  • Making Changes to the DOM
  • Getting a Handle on the DOM
  • The Browser Environment
  • Browser Persistent Data with PHP
  • Parsing Specific Formats
  • Basic File Handling
  • Setting Up an Authorization System
  • Adding an Authentication System
  • Build a Library
  • What is Authentication
  • Creating a GitHub Client
  • Communicating with a RESTful API
  • Relating Models
  • Laravel CRUD
  • Validation & Flash Messages
  • Laravel Forms
  • Laravel & Databases
  • Laravel Controllers
  • Laravel Project Setup
  • Updating and Deleting Records
  • Reading and Writing Reports
  • Creating Records
  • Project Setup
  • PHPDB Stage 5: Search
  • PHPDB Stage 4: Pagination with LIMITs
  • PHPDB Stage 3: Using Relational Data
  • PHPDB Stage 2: Querying the Database with PHP
  • PHPDB Stage 1: Databases and PHP
  • Building a Collection
  • Building the Recipe
  • Understanding Classes
  • Why Object-Oriented Programming?
  • PHP Email Form Errors
  • PHP Email Forms
  • Subqueries
  • Set Operations
  • Joining Table Data with SQL
  • Table Relationships
  • Database Keys
  • Database Normalization
  • Date and Time Functions
  • Aggregate and Numeric Functions
  • Working with Text
  • Ordering, Limiting and Paging Results
  • PHP Inventory
  • Getting the REST You Need
  • Handling Errors When Manipulating Data
  • PHP Includes
  • Deleting Data from a Database
  • Updating Data in a Database
  • Adding Data to a Database
  • Finding the Data You Want
  • PHP Loops
  • PHP Arrays
  • Getting Data from a Database
  • Data, Databases and SQL
  • PHP Conditionals
  • GET and POST Requests in a Browser
  • Introduction to HTTP
  • PHP on the Web
  • Daily Exercise Program
  • Unit Converter
  • Getting to Know PHP
  • Save for the Web
  • Adding Images and a Mockup
  • Logo Design
  • Creating a Wireframe
  • Introducing Adobe Illustrator
  • The WordPress Customizer
  • Managing Media in WordPress
  • Managing Content in WordPress
  • How to Install WordPress on Your Computer
  • Getting Started with WordPress
  • Creating Distributable OOP Packages
  • Error Handling
  • Finishing the Prototype
  • Grid Layout and UI Components
  • Getting to Know Foundation for Apps
  • Working with Media Queries
  • Understanding Flexbox and Multi-Column Layout
  • Advanced Selectors
  • Going Further with Attribute Selectors and Pseudo-Classes
  • Selectors - Beyond the Basics
  • Creating an SVG
  • Introduction to SVG
  • Combine and Minify Assets
  • Optimize Assets
  • Measuring Performance
  • Planning for Performance
  • Web Apps
  • Websites
  • Introduction
  • Structuring Tables
  • Table Basics
  • Improving Usability
  • Mobile Usability
  • Choosing Options
  • Organizing Forms
  • Form Basics
  • Positioning Page Content
  • CSS Layout Project
  • Page Layout with the Float Property
  • Controlling Layout with CSS Display Modes
  • Getting Started with CSS Layout
  • What is the MailChimp API
  • Video Marketing
  • Email Marketing
  • Search Engine Optimization
  • Usability Testing
  • Usability Basics
  • Social Media
  • Next Steps
  • Financing Our Company
  • Fundamental Concepts
  • Designing with the Latest Features
  • Basic Layout
  • The Box Model
  • Understanding Values and Units
  • Basic Selectors
  • Getting Started with CSS
  • How it Works
  • Debugging HTML and CSS Problems
  • Sharing a Website
  • Responsive Web Design and Testing
  • Adding Pages to a Website
  • Styling Web Pages and Navigation
  • Efficiency!
  • Exploring the Java Collections Framework
  • Organizing Data
  • Getting There
  • Delivering the MVP
  • Customizing Colors and Fonts
  • Creating the MVP
  • CSS: Cascading Style Sheets
  • Creating HTML Content
  • HTML First
  • Beginning HTML and CSS
  • Contact Forms & Mailers
  • Slim and Templates
  • Dependency Management
  • Harnessing the Power of Objects
  • Perfecting the Prototype
  • Meet Objects
  • Using your New Tools
  • Getting Started with Java
  • Testing and Debugging
  • Improving Our Code
  • Improving your Gulp Workflow
  • Compile Sass with Gulp
  • Gulp your JavaScript workflow!
  • Welcome to Gulp.js
  • Doing More with Express
  • Serving Static Files in Express
  • Coding the Fun Facts
  • Using Templates with Express
  • Basic Android Programming
  • Creating the Initial Screen Layout
  • Getting Started with Android
  • The Request and Response Objects in Express
  • Developing Express Apps Like a Boss
  • Getting Started with Express
  • Updating and Uninstalling Packages with npm
  • Installing Packages with npm
  • What is npm?
  • HTTP Methods and Headers
  • Creating a Basic Template Engine in Node.js
  • Handling Routes in Node.js
  • Creating a Simple Server in Node.js
  • Building a Command Line Application
  • Introduction to Node.js
  • Quiz Practice Project
  • Prototypal Inheritance
  • Constructor Functions & Prototypes
  • Introduction to Methods
  • Using a jQuery Carousel
  • Add a Sticky Navigation Bar
  • Introducing jQuery Plugins
  • Protecting and Sharing Your Work
  • Licensing
  • Fair Use and Public Domain
  • Getting Started with Copyright
  • Implementing the Detail View
  • Custom Table View Cells
  • Next Week's Weather
  • Upgrading Stormy
  • Introduction to Table Views
  • Refreshing the Data
  • Adding Weather Icons
  • Managing Complexity
  • Interacting With Data From the Web
  • WWW
  • Simple Data Structures
  • The Internet
  • Refactoring Our Code (Swift)
  • Building the Master and Detail Views (Swift)
  • Building a Music Library and Playlists (Swift)
  • Using a Navigation Controller With Segues (Swift)
  • Working With Multiple View Controllers (Swift)
  • Creating Flexible Objects with Protocols
  • Protocols
  • Delegation in iOS
  • Introduction to Delegates
  • Closures in iOS
  • Closures and Closure Expressions
  • Functions as First Class Citizens
  • Swift Value vs Reference Types
  • Swift Properties
  • Swift Inheritance
  • Swift Classes and Objects
  • Custom Media Players
  • Captioning Video
  • Media Basics
  • Refactoring Our Code (objc)
  • Building the Master and Detail Views (objC)
  • Managing Playlist Data (objC)
  • Building a Music Library Model (objc)
  • Working With Multiple View Controllers (ObjC)
  • Responsive Patterns
  • Media Queries
  • Responsive Theory
  • Traversing and Manipulating the DOM with JavaScript
  • Selecting Elements and Adding Events with JavaScript
  • JavaScript and the DOM
  • JavaScript Objects
  • JavaScript Arrays
  • JavaScript Loops
  • JavaScript Functions
  • JavaScript Conditional Statements
  • JavaScript Numbers
  • JavaScript Variables
  • Introducing JavaScript
  • Laravel Getting Started
  • Computer Languages
  • Computer Basics
  • Working with CSS and JS in WordPress Themes
  • Starting a WordPress Theme
  • A Template Hierarchy Review
  • Media Templates in WordPress
  • Custom Post Type Templates
  • Archive Templates in WordPress
  • Page and Post Templates in WordPress
  • Homepage Templates in WordPress
  • Core WordPress Theme Files
  • How WordPress Templates Work
  • Final Project: Create a Typographic Site
  • Laying Out Type for the Web
  • Basic Web Typography
  • How to Choose and Use Webfonts
  • Introduction to Typography
  • Database Security
  • Queries & Results
  • Getting Started with PDO
  • Deploying to a Device (ObjC)
  • Debugging Our App (ObjC)
  • Improving Our User Interface (ObjC)
  • Creating a Data Model (ObjC)
  • Views and View Controllers (ObjC)
  • Getting Started with Xcode (ObjC)
  • Swift Structs and their Methods
  • Swift Structs
  • Swift Enums and their Methods
  • Swift Enums
  • Autoloading and Composer
  • Databases and International Concerns
  • Starting Right with PHP Best Practices
  • PHP Internal Functions
  • PHP Returns & Closures
  • PHP Functions Basics
  • Displaying Our Weather Data
  • Data Modeling With Structures
  • Concurrency
  • Pulling Data From the Web
  • Deploying to a Device
  • Debugging Our App
  • Improving Our User Interface
  • Using a Data Model
  • Views and View Controllers
  • Getting Started with Xcode
  • Selling Your Product
  • Swift Optionals
  • Swift Parameters and Tuples
  • Swift Functions
  • Control Flow
  • Collections
  • Operators
  • Types
  • Variables and Constants
  • Marketing Your Product
  • Product Market Fit
  • Discovery
  • PHP Loops
  • PHP Conditionals
  • PHP Datatypes
  • PHP Data & Structure
  • PHP Getting Started
  • UIKit Dynamics
  • View Controller Transitions
  • Gestures
  • What is an API?
  • Downloading Data with NSURLSession
  • Collection Views
  • Website Usability
  • Creating Home Page Assets
  • Applying Effects
  • How to Draw in Illustrator
  •  Adding Color and Type
  • Creating an Icon
  • Introduction to Illustrator
  • Custom Detail View Controller
  • Custom UITableViewCell
  • Deleting Data
  • Listing Data using NSFetchedResultsController
  • Inserting and Saving Data
  • Understanding Core Data
  • Finalizing the Project
  • Case Studies and Examples
  • The Brand Identity Design Process
  • Introduction to Brand Identity
  • AJAX and APIs
  • What is Usability?
  • jQuery and AJAX
  • Programming AJAX
  • AJAX Concepts
  • Cocoapods
  • Animate This (iOS7)
  • Beyond the Basics
  • Spriting with Compass
  • Compass Helper Functions
  • WordPress User Roles
  • Workflow Basics
  • Slices & Save for Web
  • Launching and Supporting a WordPress Plugin
  • Building WordPress Template Tags, Widgets, and Shortcodes
  • Connecting WordPress Plugins with 3rd Party APIs
  • Building a WordPress Plugin Settings Page
  • How WordPress Plugins Work
  • Compass Layout and Typography
  • Getting Started with Compass
  • Productivity
  • Better SEO Through Tools
  • Better SEO Through Code
  • Add Bootstrap Components to WordPress Theme
  • Create Bootstrap Styled Theme Templates
  • Setup a Bootstrap Theme
  • Presentation Skills
  • Important Skills For Professional Success
  • Business Plan for Freelance Business
  • Creating a Simple Drawing Application
  • Creating a Password Confirmation Form
  • Creating a Mobile Drop Down Menu
  • Creating a Simple Lightbox
  • Creating a Spoiler Revealer
  • Introduction to jQuery
  • WordPress Admin Settings
  • The WordPress Codex
  • Better SEO Through Content
  • Moving Forward with UX
  • Tools UXers Use
  • How UXers Think
  • What Do User Experience Designers Do?
  • What is User Experience (UX)?
  • Introduction to SEO
  • Vector Shapes
  • Type Tools
  • Masks Basics
  • Layer Basics
  • Launching a WordPress Site
  • Business Plan Basics
  • WordPress and Forms
  • Extending WordPress Template Functionality
  • Converting Static HTML into WordPress Templates
  • Preparing to Code WordPress Templates
  • WordPress Theme Functions
  • Workspace Basics
  • Customizing BuddyPress
  • Social Interactions in BuddyPress
  • Manage BuddyPress Member Profiles
  • Getting Started with BuddyPress
  • PHP Inheritance & Interfaces
  • PHP Properties & Methods
  • PHP Objects and Classes
  • Grid Layout
  • Flexbox Layout
  • Positioning Schemes
  • Float Layout
  • Display Modes
  • WordPress Theme Templates
  • Content Strategy with WordPress
  • Advanced Techniques
  • Responsive Design
  • Adaptive Design
  • Fluid Foundation
  • Introduction to Responsive Web Design
  • Local WordPress Development
  • WordPress Plugin Best Practices
  • Widgets and Custom Menus
  • Custom Post Types and Fields
  • Customizing WordPress Themes
  • WordPress Themes
  • Installing Wordpress
  • Workflows
  • Working With Remote Repositories
  • Merging
  • Branches
  • Getting Started With Git
  • Why Version Control Matters
  • Advanced Sass Concepts
  • Speeding up Workflow With Sass
  • Variables, Mixins, and Extending Selectors
  • Getting Started with Sass
  • Installing Programs
  • Environment and Redirection
  • Console Processes
  • Console Users and Permission
  • Moving Around in the Console
  • Color Theory
  • Principles
  • Elements
  • Design Foundations Final
  • Becoming a Problem Solver
  • Understanding Aesthetics
  • Introduction to Design
  • The Logo Sprint
  • Logo Design 101
  • What's New in Foundation 5
  • Build a Website With Foundation
  • Prototyping With Foundation
  • Build a Website With Bootstrap
  • Customizing Google Maps
  • Google Maps Integration
  • jQuery Plugins
  • Form Validation and Manipulation
  • Introduction to jQuery
  • JavaScript Objects
  • JavaScript Functions
  • JavaScript Arrays
  • JavaScript Numbers
  • JavaScript Strings
  • Introduction Variables
  • Exterminator
  • Limiting Results in Queries
  • Using Relationship Tables
  • Filtering Input for Queries
  • Querying the Database
  • Connecting to MySQL
  • Media Queries
  • CSS Animations
  • Transitions and Transforms
  • Flexbox and Multi-Column Layout
  • Gradients
  • Web Typography
  • Backgrounds and Borders
  • CSS Box Model
  • Text, Fonts, and Lists
  • Values and Units
  • Advanced Selectors
  • Selectors
  • Getting Started with CSS
  • Paginating a List: Model and View
  • Paginating a List: Controller
  • Adding Search: Model
  • Adding Search: Controller & View
  • Refactoring the Codebase
  • Cleaning URLs with Rewrite Rules
  • Cleaning URLs with Subfolders
  • Integrating Validation Errors
  • Simple PHP Application: Wrapping Up The Project
  • Working with PHP Functions
  • Integrating With Paypal
  • Listing Inventory Items
  • Adding a Contact Form
  • Prototyping With Bootstrap
  • Introduction to Front-End Frameworks
  • Creating the Menu and Footer
  • Getting Started with PHP
  • Forms
  • Tables
  • Objects
  • Links
  • Lists
  • Text
  • Introduction
  • Launching the Website
  • Styling Content
  • Creating a Website Structure
  • Text Editors and HTML
  • Website Basics
  • Chrome DevTools Basics
  • DNS Basics
  • Advanced Objective-C
  • Foundation Framework
  • Introduction to Objective-C
  • Pointers and Memory
  • Functional Programming in C
  • Fundamentals of C
  • Graphic Basics
  • Going Mobile
  • Designing Email with CSS
  • Coding HTML Email
  • HTML Email Basics
  • Website Basics
  • Customizing Table View Controllers
  • Finishing the User Interface
  • Using Auto Layout and Managing the Keyboard
  • Implementing Custom Login and Sign Up Screens
  • Retrieving and Viewing Data from Parse.com
  • Capturing Photo and Video Using UIImagePickerController
  • Relating Users in Parse.com
  • Using Parse.com as a Backend and Adding Users
  • Designing and Starting the App
  • Securing and Maintaining a MySQL Database
  • SQL Calculating, Aggregating and Other Functions
  • Joining Relational Data Between Tables in SQL
  • Manipulating Schema with SQL
  • Creating Tables and Manipulating Data with SQL
  • Reading Data from Databases with SQL
  • Installing MySQL Server and MySQL Workbench
  • Introduction to Data, Databases and SQL
  • Testing and Debugging
  • Designing your App
  • Refactoring into a Model
  • Creating a Data Collection
  • Understanding Views and View Controllers
  • Getting Started (iOS7)
  • Location
  • API Access
  • Blocks and Categories
  • App Settings
  • Appearance
  • Notifications
  • iOS 5 Core Data
  • Web View
  • Storyboards
  • Automatic Reference Counting
  • Viewing a Web Page
  • Adapting Data for Display
  • Data Modeling
  • Getting Data from the Web
  • Rebuilding from Scratch
  • Exploring the Master-Detail Template
  • Share Your Creation
  • Animate This
  • Shaking Things Up
  • Making It Pretty
  • Learning the Language
  • Functions
  • Objects and Arrays
  • Control Structures
  • Basics
  • Getting Started with iPhone
  • Newbie