Programming is in my blood. Well, I'm adopted and don't know for sure, but my parents brought me up in the maths and sciences, always reading, and programming just came so naturally for me. Yet so did design. I'd classify myself as an interface designer, having worked on multiple mobile and web apps including two for the iPad, and a front-end developer. I have worked projects like Community Online from design conception to front-end, custom back-end, Flash streaming technology, custom multi-group chat system, and much more; though I have also taken a merely front facing role in projects like Ashes, where the interface design is mine and all the Objective C was done by Tom Krush.
My latest project has brought the theory of Active Record more truly to CodeIgniter. Active Record of course is from Ruby on Rails and allows for models to be built with just a few lines of code, and mixed with migrations, can make for very agile development. My contributions to this project have been in a relationship system, allowing for a model to link to data in another model. Such as:
$articles = $this->articles_model->find(array(), 1, 15);
foreach ($articles as $article) {
echo $articles->blog->name.' » '.$articles->title;
}
The articles_model
here has belongs_to('blog')
declared, giving each returned row access to it's blog. If I wanted to list articles of the same category, I could do something like this:
$article = $this->articles_model->first();
$related_articles = $article->category->articles->find(array(), 1, 5);
Here the articles_model
has belongs_to('category')
and the categories_model
has has_many('articles')
, allowing me to quickly pull all articles with the same category. These are just a few things that are possible with our additions, which you can check out on Git.
I love what I do, so let me show you some stuff.
As we push the edge of what is possible in the browser, often times we utilize technologies that don't work in all browsers. This page uses CSS3 box shadows, text-shadows, gradients, rounded corners, and web fonts. All of these work in Safari, Chrome and Firefox, however IE will see something a little simpler.
Right! The fonts used on this page are from The League of Moveable Type and Hoefler & Frere-Jones. Body copy is set in Junction, headers are set in League Gothic and supplemented by Gotham. Oh, and that font up top ("I am James.") is Chunk, a great alternative to one of my all-time favorite fonts, Archer.
Community Online was an opus after many years of working towards Internet Ministry. Getting hired in 2009 by Community Christian Church, I started work on a dream of a social church, spreading the Word through the Web. They came to the table with many thoughts but needed someone to make it happen. I went beyond making things happen: I brought inspiration, thought, passion, and — most of all, in my book — heart.
This wasn't just another web project, another coding project, it was a chance to make an impact. From pushing myself to learn new techniques in PHP & mySQL — learning much more about CodeIgniter — to learning Amazon S3 & Flash media streaming, I built a site that allowed for not only online church services, but a place for Christians to discuss, to "do life together" throughout the week. Email chains get long in small groups, and I wanted to change that. Email notifications went out if you wanted them, a "daily digest" could allow you to not be swamped, and beautifully clean group pages were the centerpoint of life on Community Online.
The unfortunate thing is the money wasn't there to make our dream come true. We launched in December of 2010, and the position was cut in January. My hope is the remnants of the dream still ring true at Community, that an impact is made with my contribution.
Please be sure to check out this project on Github.
Ashes was a joint adventure between Tom Krush and myself to create an RSS reader based on Shaun Inman's Fever. I handled all the interface design and flow; Tom handled the Cocoa.
Reading took focus here to, just like holiwrit. If we were going to display blog content outside of it's shell, I wanted it to look great.
Our split view utilized two navigation controllers, one for the categories and feeds and one for the articles and reader.
Since 2001, James has pushed the edge, learning everything he could get his hands on. HTML and JavaScript were a good start, but as soon as James had a Mac in front of him, he buried himself in CSS. James has worked in PHP since 2003, developing CMSs, web apps, and much more. The CodeIgniter framework has revolutionized his efficiency and ability to rapidly construct any challenging project in front of him.
He lives for the thrill of bleeding edge.
Skills used: PHP5, mySQL, HTML, CSS, jQuery and user interface design
January 2011 – presentBuilt a completely awesome new website that brings a brand new view of social interactivity to church websites and also brings a full online church system for running both live and prerecorded services. Honing his skills in AJAX, Flash, PHP and relational databases, this was one of his biggest projects yet.
Skills used: PHP5, Code Igniter, mySQL, HTML, CSS, jQuery, ActionScript 3.0, design and layout
December 2009 – January 2011Built an application for managing the office paperwork that covered everything from the sale of an ad to a client to the production and airing of the ad on the radio. Not only this, but was also largely in charge of the websites for two radio stations in Chicago.
Skills used: PHP5, Code Igniter, mySQL, HTML, CSS, jQuery, ActionScript 3.0, design and layout
September 2008 – May 2009Was brought in to build out this project from PSD to a working site within a CMS, along with constructing an audio player in Flash and a Podcast system.
Skills used: PHP5, HTML, CSS, ActionScript 2.0
Worked with another developer to design, strategise and build this site, delivering a Podcast, news feeds, and much more.
Skills used: PHP5, mySQL, HTML, CSS, ActionScript 2.0, jQuery, design and layout
Built the website from PSD on a custom CMS and customized Big Cartel CSS.
Skills used: PHP5, mySQL, HTML, CSS
Built many small pieces to the puzzle, including custom content management tools to meet the needs of Talent Drive.
Skills used: PHP5, mySQL, HTML, CSS, jQuery
I'm Social
You can find a lot about me on the web. I encourage you to check out my Dribbble account for a look at many of my recent projects (much of which isn't on this page), my Github account to see much more of my code (including the entire Community Online project), and my Twitter account to see if my personality is what you are looking to add to your team.