Monday August 13, 2018

Alliance Print business cards

It was 2013, and I was doing my honours year in Creative Technologies. I also happened to be working part time for Alliance Print doing night shift pre-press work.

One evening, my studio manager asked me if I had any previous experience with automated business card systems. A new client wanted to be able to order cards online. I did have experience with one system at Centurion Print. I had to set up cards for a couple of clients, I don't remember what the system was called, but it was clunky. It was so clunky that after I left, they stopped using it, because I was the only person who could figure it out or be bothered with it (I couldn't be bothered with it...).

However, I said that if I wasn't so busy with my study, it's something I'd really like to try building myself. I knew that there was an Adobe PDF library and you could experiment with it, it would just produce a watermarked pdf until you purchased a license. I had used PHP on and off over the years and it was going to form the backend of my Creative Technologies project. So by the end of that conversation it was agreed that I'd at least have a go and see where I got that night while running out plates for prepress.

I was a little surprised at how easy it turned out to be to get get a form to post and generate a pdf in an iframe. Much of his ease was because I discovered a PHP library called FPDF with a relatively easy API. I think I hosted it on my web host in a subdomain and left an email to My studio manager to have a go. That was enough for Alliance to decide that perhaps I should create the thing. That became my work in the evenings.

In the resulting site, you could create and save a card, order it, manage existing cards and orders. It could only create cards for the one client because the script was written to generate that layout. There was nothing overly clever about the client's business cards, everything had a fixed position.

Some months later, another clients wanted online business cards, and the Account Manager who had instigated the original client now wanted the site to support them too. I started to think about how I could create a layout engine that took rules instead of writing a script for any new client that came on board. Also how the site would support multiple clients that would be completely unaware of each other. This client had slightly different fields on the business cards and I had to start thinking about how to store each kind. Surely a table per client wasn't a good solution. I didn't like the idea of dynamically creating tables for clients further down the road. I started to have an ultimate goal of a user interface for setting up a new client, so account managers or prepress could do it themselves. But of course there were day-to-day things to take care of and prepress work would come in and that was top priority.

When my honours year finished, I started working full time at Alliance Print, slowly creating a new version of the business card site, realising ways to separate form data from instructions, and that a site needed to initialise an environment every time anything was called so that should probably be a common start every time any request was made. The site was functional but had to take a back seat when I was asked by the owner of the company to remake an ordering site that the company had. Eventually the business cards get merged into that site. That is another story.

    Sunday November 25, 2018

Learning Postscript

When I worked at Lithotech, a design, prepress and web development/hosting company, it was my second job as a mac operator in Prepress. I wanted to learn everything that I could about my field. 

I found a great website that was about the right level for me (I have no idea what the url is now, or if it even exists), that explained the PDF format in some technical detail. There was also a bookshelf at the back, and among the books was Adobe's guide to writing Postscript programs. So I read that and learnt how to write Postscript.

Year later when learning Canvas javascript APi, I found the similarities interesting. And in fact Open GL is somewhat similar in some ways. From memory I think Processing as a few similar functions too.

I wound up dreaming up ways but not actually using this information in my next job. At Omnigraphics, we had to create a series of swatches around a colour that we'd be trying to match, and we'd send that and samples of a billboard to the target printer, we'd get a call and go out and check to see what the closest match was.

Operators were manually stepping up swatches and semi-randomly choosing colours with slight variations in ink breakdowns. So on the first day I wanted to put my mark on the place. I created an illustrator action (which I'd never actually done before that) that stepped up a swatch along two likely axis of colours from C, M, Y and K), so all the user had to do was key in the original breakdown. This was used by some of the operators, others still preferred their manual way.

But I wrote a postscript program that did the same thing. IF I just knew how to program in some language (other than postscript) at the time, I could have make a small app to generate swatches. Alas that part never happened, but we got on fine without it.

grid of colour swatches in graduation. Tan colour.