Skip to content

azavadil/portfolio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Msg

Msg is a messaging webapp running on google app engine. There's a live instance of the app on the web at www.umessaging.appspot.com.

The application logic is broken out into the web handlers in the msg folder. Test code for the web handlers, databases, and memcache is in the test_app folder

Demo

Demo is a forum webapp running on google app engine. There's a live instance of the app on the web at www.demonstrationforum.appspot.com.

The application logic is in main.py.

AdprChlg

Solution submitted to the Addepar challenge. The main logic is in addeparChlg.py

I interviewed with Addepar and as part of their interview process they ask candidtates to implement a solution to an engineering challenge.

The challenge is as follows. You're presented with a 2D world that will be randomly seeded with food and an ant home. The ant home will spawn ants every 10 turns. When the ants cross paths they can communicate. Write a program to direct the ants such that they discover the food and bring it to their home location in the most efficient manner possible (see Addepar website for full specification).

There are a few things worth noting in the implementation: the A* algorithm for route planning along with bidirectional search, memoization of the search paths, and an encoding scheme to transmit the data between ants.

I thought it would useful to show how I solved a problem that wasn't from a class and there were no instrutions on how to solve it.

TpChlg

Solution submitted to the TrialPay engineering challenge. The main logic is in trailpay.py

The challenge was to write a program to determine whether a snake cube puzzle has a solution (snake cube puzzle explained here ).

I used a BFS algorithm to determine whether there was a valid solution.

Arbitrage

Arbitrage is a program that efficiently finds foreign currency arbitrage opportunities. The code is in arbitrage.py.

arbitrage.py pulls live data from Yahoo finance and finds foriegn currency arbitrages. Because the Yahoo data isn't realistic arbritrage.py typically finds circular arbitrage opportunties(e.g. USD->EUR->USD). I've included test cases that demonstrate the more interesting case of finding triangular arbitrage opportunities(e.g. USD->EUR->JPY->USD).

The programs can be run from the command line. To see a live run, download the file and navigate to the directory where the file is saved, and enter the command:

$python arbitrage.py

TicTacToe

Tic Tac Toe is a web application written in javascript. The user can play either Tic Tac Toe or a modified version of Connect Four.

Assign4

Assign4 encompasses assignments 4,5, and 6 from Stanford's CS193 iPhone app development class. The class consisted of building two iPhone apps and a final project. Assign4 is the more sophisticed application.

The application is built on top of the Flickr API. The application starts with a table view of the top locations in Flickr. The user can then browse through the locations in the tableview or on a map . When the user selects a location, the application displays photos from that location. Again, the user can view the photos from a tableview or from a map (with all the functionality you'd expect, thumbnails of the photos and disclosure buttons to navigate directly from the photo to the map). The user can also choose to 'visit' a photo to build a 'virtual vacation' (i.e. a list of photos the user can subsequently browse).

There's no single file to review as the application requires the entire collection of files to work.

CS106A_PA, CS106B_PA, CS_107PA

These repositories contain the programming assignments from Stanford's Engineering Everywhere introductory programming sequence CS106A, CS106B, and CS107 (except assignment 6 for 107 which required a thread library that Stanford wrote for the class and I couldn't get access to). Some of the more interesting assignments from a programming perspective are:

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published