About Me

Hi! I'm Peter Ke, an undergraduate student at the University of Toronto. I'm enrolled in the Computer Science Specialist and the Statistics Minor programs. I have many years of programming experience, specializing mostly in mobile and web development.

As a kid, I was always fascinated by computers. I started programming in high school by learning iOS development with Swift. Along with a friend, we developed and published four apps to the iOS App Store with thousands of total downloads. Since then, my love for programming has not diminished. I continued by learning Python, web development, systems programming, and more. I've also worked as an iOS developer intern in a professional team. My most recent project consists of building an object-oriented programming language from the ground up.

I'm currently looking for a summer internship in software development.

Contact Me Download Resume

Technologies

Python Logo

Python

Swift Logo

Swift

Java Logo

Java

JavaScript Logo

JavaScript

TypeScript Logo

TypeScript

Rust Logo

Rust

Flutter Logo

Flutter

React Logo

React

Vue.js Logo

Vue.js

Vue.js Logo

Git

Vue.js Logo

Linux

Projects

Here's the highlights of some of the projects I made. Most of my projects are available on my GitHub.

  My GitHub Page

Dove Programming Language

Dove is a dynamically-typed, object-oriented programming language, focused on simplicity. Its syntax is inspired by modern languages like Python and Swift. The language supports features like basic data types, variables, branching, looping, functions, classes, basic IO, and importing files.

The interpreter is written in Rust, which allowed us to port it to WebAssembly and make an online playground fairly easily. It currently uses a tree-walk algorithm to execute the code, but a bytecode compiler/VM is in progress to increase the runtime performance.

Try it Online   See Project On GitHub
Dove Example

Connect 5 Game

Connect 5

Connect 5 is a two-player, turn-based board game on a square grid, where the first player to connect five pieces in straight a line wins. The game is a cross-platform (iOS/Android) mobile app, written in Dart using Flutter. It supports singleplayer where the player plays against an AI with a minmax algorithm, and also real-time online multiplayer. The server is created with Express, written in TypeScript, and deployed on Heroku. The real-time communication between front-end and back-end is achieved using Socket.io.

  Mobile App   Server

Course Manager CLI

Course Manager is a command-line application I created to manage my university schedule and project files. It is written in Python using the Click library. The tool allows users to create projects for different courses, quickly view or open projects, set deadlines for a project, and view the sorted and formatted schedule. Projects can be created with different, custom templates (in progress).

All of the functionalities are documented in function docstrings, which the Click library uses to create detailed --help messages.

  See Project On GitHub
Course Manager

Contact Info

  peterke0911@gmail.com
  PeterKeDer
  peter-ke
Download Resume