-
GitHub Repositories
This is my GitHub account. It contains many projects I've worked on, but don't necessarily place in my portfolio. If you're unfamiliar with version control systems, GitHub is a website that manages git repositories. Whenever you make a change to a file, you commit the changes, and git keeps track of this, so you can always see how a project develops.
The code-tests repository of mine contains a bunch of things I've experimented with. From neural networks and operating systems to sieves and Tetris, there's probably something interesting there.
-
Yak 4000 ¶
After three years of PHP and WordPress on shared hosting, I decided to make the switch to a web host where I could use Python. I chose WebFaction and got my hands dirty creating a design for a new website all my own.
Yak 4000 is the product of my own design and lots of my programming — Django does the heavy lifting. It uses PostgreSQL as a database backend.
The name "Yak 4000" comes from my username, theY4Kman, which is often read as "the Yak man", but actually means "the Year 4000 man". So, I merged the two in order to create a memorable name centered upon the greatest animal living on the earth (and will be living on the earth in 2000 years).
-
Viper ¶
Viper is a SourceMod extension that allows Half-Life 2 server administrators to develop plug-ins in Python. It gives the same level of control as the regular SourceMod plug-in language, SourcePawn, gives. It is written in C++.
Download or view the source at github: github.com/theY4Kman/viper/
-
StyleSeat ¶
I worked as an engineering intern for three months at this beautiful beautician site. The engineers are incredibly brilliant. They are a Django house, making use of many open source libraries and even returning the favour by pushing development on libraries such as satchless.
I wrote a generic CSV contacts importer, a discounts system, and various other smaller projects.
-
LinkDestruct ¶
LinkDestruct takes a URL and, optionally, a number of views and/or a time limit, then gives you a link you can hand out. Users can visit the link and will be transferred to the URL specified, much like a URL shortening service, such as bit.ly or tinyurl. When the link has been viewed X number of times, or the time limit is up, the link becomes inactive. This allows you to have more control and security over your links.
-
YakPics ¶
The outcome of an offhand joke, YakPics is a picture blog that contains only pictures of yaks. A more whimsical description can be found on the YakPics about page.
YakPics supplied a unique problem to dealing with Django, because it uses the same templates and code as Yak4000, but exists on a different domain. I solved this problem by simply redirecting all requests for yakpics.com to y4kstudios.com/yaks/ in the backend.
-
BrowserID-RPy ¶
BrowserID is a great authentication system which uses a public-key handed out by an identity provider (commonly an email provider) to encrypt a handshake string server-side, which is then sent to the client, who decrypts it using the private key, and completes the handshake by sending the decrypted string back to the server.
BrowserID-RPy is a Python library for authenticating users with BrowserID. Also provided with BrowserID-RPy is a set of shortcuts for using BrowserID with Flask, a lightweight web microframework.
-
Blockplayer ¶
Developed by Andrew Miller, blockplayer recognized block structures in 3D space, utilizing a generic depth-sensing camera (we used an Xbox Kinect). Andrew and I worked together to design and execute a user study involving the construction of various shapes.
Partway into development, I decided to hook the script up to Minecraft, using the CraftBukkit server, the Bukkit API, and a Python script which handles the blockplayer data and sends it over a socket to the Bukkit plug-in. At first, it was just a simple 1:1 building area — place a Duplo block and a block was placed in the Minecraft world. Eventually, it developed into a Brain Wall type game, entitled "Hole in the Blocks". With that terrible name, our demo video was born.
View Hole in the Blocks YouTube demo: youtube.com/watch?v=1hDv2zrmypg
See Hole in the Blocks source: github.com/theY4Kman/ blockcraft -
Population 94,000 ¶
Population 94,000 is a "webiseries" on YouTube centered around the lives of three aspiring filmmakers, Grant, Jake, and Mali. The concept is that for his eighth grade visual arts project, a student is documenting the film the three are trying to make. Shenanigans ensue as the three egocentric filmmakers try to push their ideas out.
I wrote the website in Python using the Django framework, utilizing the lovely django-syncr library to update the list of episodes.
-
Sickles AFJROTC Website ¶
The Sickles High School AFJROTC commissioned the web design students to create a website for them. Sean Dill, Elliott Blowers, and Garrett Taylor were chosen, and I joined in to do all the programming. Alexia Czyzowski drew the Gryphon logo.
The site is written in PHP and makes use of the h2o-php templates library. I used mootools for a JavaScript framework and a modified UvumiTools Dropdown Menu for the menu. As for the calendar, I've heavily modified Kubelabs's PHP Calendar.
-
Comicget ¶
Comicget is a Python script that downloads series of URLs. It accepts a format URL (e.g., "google.com/%N") and different ranges of numbers/dates, and downloads them using wget. It is useful when downloading comics or other ordered items from the web.
Download or view my newest branch source at lp:~they4kman/comicget/cget-new
Download or view the trunk branch at lp:comicget -
TaskYak ¶
After exhausting all the todo list management possibilities on Linux, and finding nothing that suited my needs, I decided to create my own.
I created TaskYak in Python, using ePydoc for documentation and the GTK toolkit for its GUI. I documented the program extensively, learning that there is such thing as too much documentation -- there was more documentation than code!
Download or view the source at lp:taskyak
-
Joomla! Documentation ¶
In 2007, Google announced the Google Highly Open Participation (GHOP) Contest, which connected pre-university students with open source organizations, much like Google's Summer of Code. I joined the contest (too late for any programming tasks) and selected a documentation task for Joomla!. The task required the creation of a document that explained how to use the JavaScript framework Mootools with Joomla! 1.5.
View the document online at: Mootools Tips and Tricks (http://www.scribd.com/doc/2299965/Joomla-v-15-Mootools-Tips-and-Tricks)