Welcome to JayDelGreco.com!

This is my personal online portfolio. It documents my professional development since my graduation from IUP in August of 2000. Inside you will find biographical information about me, my thoughts on advertising and design, examples of my best work, and my technical capabilities. In short, I have transitioned completely from the role of print designer to web designer to interface programmer. It was a very gradual and challenging transition but also worthwhile and rewarding.

Please feel free to have a look around my site. Constructive feedback is always welcomed and appreciated. Thanks so much for your time!

About Me

Here's Me

My name is Jay, and I am a Senior Interface Programmer living and working in the Pittsburgh area. I graduated from Indiana University of Pennsylvania with a Bachelor of Fine Arts degree in August of 2000. The major focus of my coursework was in graphic design, and my minor was painting. I have worked as a designer -first in print, then in web- and more recently as an interface programmer steadily since my graduation. Beyond my professional work I also actively show my art, and I also enjoy writing. If you found this website looking for my fine art site you can find it at infinitedensity.com.

Beyond my professional and creative sides, I love to read. For quite some time I read philosophy exclusively, more specifically modern existentialism. In more recent years my interests have shifted towards literature. My favorite writers are Charles Bukowski, Hunter S. Thompson, Henry Miller, and Cormac MacCarthy. I don't know that it has much -if anything- to do with my technical capabilities or professional life. I do believe that not enough people read, and that many of the things that I've read have shaped my thoughts and attitudes toward life as well as my critical thinking skills.

Thanks for your time. Please enjoy my site.

Jay Michael Del Greco
BarkleyREI
2840 Liberty Avenue, Suite 100
Pittsburgh, PA, 15222 USA
412.638.0742

Resume:

About This Site

This website is run off of 1 static XML document containing all of my portfolio items. I use serverside XSL transformations called with a few inline php statements and conditionals to serve the content. There are also some JavaScript add-ons -jQuery- used throughout, as well as some AJAX driving the galleries. Once the site is completely done, I will post all the source code (without images, to keep it light) in a ZIP archive for your convenience.

I didn't invent anything too mind-bending with this site, though it is a good indication of my level of technical knowledge. In a previous manifestation, this site was run off of a mySQL database. The portfolios were controlled with SQL statements. I also had to use some extra software to make edits to the database tables because I don't know how to write that kind of thing by hand. It was all updatable but intimidating, and I didn't fully understand it all on the kind of granular level that I'd have liked. Given that, I thought the static XML option would be simpler, better, and serve the same purpose without misleading people to the conclusion that I knew/know how to write databases. That being said, I would love to learn database creation and management. I believe it's a skill I could learn fairly quickly and easily if the right work opportunity presented itself.

Reasons to Hire Me

Here are a few of my core beliefs that I suspect you'll like:

  1. How you do anything is how you do everything. The notion that you can be a different person -with a different set of ideologies and working sensibilities- in different places is a popular fallacy. If you don't respect the details in one arena, you will likewise not respect the details in any others. The inverse is also true. You are you where ever you go.
  2. If something is worth doing, it's worth doing right. This is essentially an extension of the previous statement. However, it adds a value judgement to it. Whereas I don't always believe in my work, I do always take great pride in my work. I don't believe in doing anything substandard.
  3. Under-promise and over-deliver. I don't write checks that I can't cash, though I always aim to exceed expectations.
  4. Insincerity is insulting. I don't lie. This is not simply a professional conviction, but a personal one also. I'm a terrible liar, and I won't insult you by trying to deceive you. If I think something is a bad idea, I will let you know and provide reasons for my opinion. If I can't do something, I will tell you.
  5. I'm very loyal. I haven't worked anywhere yet that I've failed to befreind my co-workers. If I fail, I let you down. I don't believe in letting my friends down.
  6. You can set your watch by me. I'm rarely out sick, and I'm very consistent. I like to show up to work (and leave) at the same time everyday.
  7. I hate wasting time. I'd rather be busy and effective than fritter away time goofing off. I'd rather work a very dense and efficient 8 hour day than a loose and easy-going 10 hour day.

My Portfolio

I have worked in advertising in one form or another since my graduation from IUP in the Summer of 2000. This is the portfolio that I have to show for it. It is broken up into 4 different areas:

Kaufmann's Department Store

Kaufmann's Department Store (a branch of May Company) was my first graphic design job. I learned alot there. It was all fairly conservative print work. Regardless, I was really excited to work on the materials that would become the instore advertising for all 53 stores of this Pittsburgh-based retailer. Unfortunately in August 2002, a corporate merger closed down the entire Pittsburgh headquarters (which included me). Regardless, it was an incredibly valueable first chapter to my professional development.

Here are some of the things that I had a hand in designing and producing.

TRC Solution

Immediately following my layoff from the Kaufmann's merger, I began frantically seeking new employment. Though I had no web experience, there were definitely more jobs to be found in web design than in print. I was hired by TRC Solution shortly afterwards. TRC is where I learned web design and did my first coding. I was hired there with absolutley no web experience or knowledge of HTML, but I started putzing around with Dreamweaver and caught on very quickly. My position there was very independent. There was much more individual responsibility involved at TRC than there was at Kaufmann's. Much of my job involved coordinating the client's print advertising materials with their web materials. Essentially, TRC Solution acted as a vendor to the Thomas Register of American Manufacturers. The print and web elements that we created, were mostly for publish within the business to business directory's books and website. Unfortunately, about a year after my hire the entire company closed its doors. I was laid-off again.

Here are a few sites that I created or helped create:

Here are some banner ads (designed at a proprietary size for the publisher) that I created.

Marc USA

I worked at Marc for 2 brutal years following the closing of TRC Solution. While there, I was their only full-time, internal Interactive Production Artist. It was my first exposure to the full insanity of the advertising world. Previously I had been harboring the notion (from art school) that I really wanted to be an art director. Marc USA cured me of that desire. This was the beginning of my realization that I preferred technical execution over any type of conceptual/creative role. My role there involved mostly technical execution, design work, some light project-management, and even client contact for a wide variety web-based projects. The clients were much larger, and the pace was much, much faster. The following links and images are taken from projects that I have either designed, developed, maintained, or managed.

BarkleyREI

I have been working at BarkleyREI for about 4.5 years now (Ripple Effects Interactive for the first 2 years I was there). My role there has included a wide variety of things. I've been responsible for email marketing, site maintenance, some flash development, and (Rich Media)flash banner production. It's an incredibly technically challenging environment, and I've grown quite a bit in the time that I've been there. Most notably my actionscripting skills grew by leaps and bounds, though my responsibilities have shifted completely from Flash development to HTML, CSS, and JavaScript coding now. I haven't touched a bit of Flash in the past 3 years. I primarily code page templates -lots of CSS and Javascript- and XSLTs for large CMS driven sites. It was a big adjustment stepping completely out of the role of designer, but I've gotten used to it. I don't even miss designing at this point. I've definitely grown to enjoy coding much more.

Here are some CMS driven sites that I've built or worked on:

Here are some static ASP sites that I've done for the Ad Council:

Here is a home page interactive Flash piece that I developed:

Here is some blog coding that I did for Tepper:

Here are some rich media banners that I did:

Contact Me

jQuery Plugins

I do a fair amount of custom script writing at my job. I've actually been doing so much of it that I felt like I should start trying to make re-useable plugins out of some of my better scripts. That being said, this page will be growing.

And with that, I'd like to share my very first plugin:

wiggleIt(just a little bit) - beta

Beta Release Date: 12/06/2011

You can find a few example implemtations of it below. Each one opens in a new window. As I improve upon it I'll be posting updates.

In it's simplest implementation, you can just call it out without any params.

$('.wiggleIt').wiggleIt();

The default param values are as follows:

$('.wiggleIt').wiggleIt({
'imageWidth' : 200,
'imageHeight' : 200,
'divisions' : 8,
'direction' : 'vertical',
'speed' : 250 });

If you set the direction parameter to vertical or square, the divisions parameter will be the number of vertical slices comprising the width of the image. If you set the direction to horizontal the divisions will be the number of horizontal slices comprising the height of the image. The minimal CSS involved is included within the HTML files. Obviously, the higher the number of divisions you specify the greater the demands on the browser. It works everywhere, even IE8.

Update: I've included a hide state for when an image is clicked, and even wrote a simple lightbox-type functionality with previous and next buttons to string the images together into a gallery.


The Palate Expander (beta)

Beta Release Date: 10/04/2011

You can find an example implemtation of it below. It opens in a new window. As I improve upon it I'll be posting updates.

In it's simplest implementation, you can just call it out without any params.

$('#theList').palateExpander();

The default param values are as follows:

$('#theList').palateExpander({
'size' : 'custom',
'randomStart' : 'yeah',
'carouselWidth' : 400,
'itemPadding' : 10,
'itemItemHeight' : 60,
'maxWidth' : 150,
'maxHeight' : 200,
'rowIncrement':5,
'maxPhotoHeight':400,
'videoHeight':259 });

Any combination of them can be passed. I like to think that they're fairly intuitive. I almost built an auto-rotation into it, but that seemed dumb. I haven't tested it at full screen yet...but why the hell would you want to do that anyway? The Single-Row or Multi-Row status is determined simply by providing a higher number of list items than the number provided for the rowIncrement. Most importantly, you'll need to set the containing element to be position:relative; and give it a fixed width, because the script makes the targeted unordered list position:absolute to allow the expanded states to overlap other page elements. Obviously you will also not want to apply overflow:hidden; for exactly that same reason.


The Static Pager

Release Date: 01/03/2010

You can find an example implemtation of it below. It opens in a fancybox. As I improve upon it I'll be posting updates.

Basically, it takes a static un-ordered list, breaks the list items into chunks and wraps them in nested un-ordered lists, and allows you to paginate through them by hiding and revealing the dynamically written lists. It has optional fancybox or ajax -on rollover or click- functionality according to a few optional params. Obviously, if you want to use it with the fancybox param, you'll additionally need to include the fancybox plugin.

In it's simplest implementation, you can just call it out without any params.

$('#allQa').superPager();

The default param values are as follows:

$('#allQa').superPager({
'pageSize' : 10,
'topPaging' : true,
'pageStatus' : true,
'bottomPaging' : true,
'action' : 'hoverPreview',
'previewTarget' : 'body'
});

Any combination of them can be passed. The values are fairly self-explanatory, except for 'action' and 'previewTarget'. The 'action' parameter can have a value of 'hoverPreview' ,'clickPreview', or 'fancybox'. The 'previewTarget' parameter is only relevant if 'hoverPreview' or 'clickPreview' is declared as the value of 'action'. If no value is specified for 'previewTarget' or a value of 'body' is specified, it will simply pull the entire contents of the body tag into the preview bubble. If any other string value is passed it will look for a div with an id matching that string. The working example that I've got in place uses an id of 'mainContent'. A known limitation of pulling the preview bubbles in by id, is that the target div cannot contain any nested divs, or the extracted markup will be invalid. I haven't yet gotten around to writing a normalizing while loop to account for nested divs, and being uncertain of it's value or necessity...won't likely get around to it anytime soon.