Sunday, January 13, 2008

Week 2: The Return of the Artists

Well, I've completed my first complete week at the new job. And while I'm finally feel like I'm starting to get the hang of Flash development, I still find my self confused and amazed by the differences between it and C# or C++ development. In some ways it seems like I'm writing plug-ins for some kind of "Animation Server" or vice-versa. Anyways it's a quite a bit different than what I was used to, and for a semi burnt out developer, different is good :).

What really blew my socks off was though was the sheer amount of power and potential a skilled artist can bring to bear on a project. As a server developer, I never worked with the artists directly. Any servers I worked on may have undergone huge changes during the development process, but usually the interfaces that those servers used to communicated didn't change much, and when they did, they lacked the visual punch that is there when your application can actually be seen.

What I'm trying to get at, is "WOW, I work with some really great artists!"

On my first day, we had a brief technical kick-off meeting for the project I was working on. The artists I was working on were still on their winter breaks, so I was given a little bit of a head start to work on the prototype, before they returned. This seemed like it would work out well, since I still had a bunch of Actionscript to learn, and the best way to learn is by putting together a prototype of the project's functionality and then turn that over to the artists to "gussy-up" with actual art. My biggest fear was that the code I had written would be totally inappropriate right out of the gate, and all of it would have to be thrown out to support what the actual functionality would be.

On Thursday I got to see what the actual app was going to look like. (As it's still in development, I'll refrain from describing it in detail.) The simple drag and drop functionality that I had put into place had been replaced by some smooth animations, and the basic polygons I had used for "stickers" to be placed throughout the page had been replaced by a collection of dancing, colorful stickers reminiscent of the sticker books kept by girls when I was in 1st grade, only in web-tolerant colors. As an extra bonus, from a functionality it looked like I hadn't been too far off base with where the designers and artists wanted to go with the project. I guessed about 70% of my code was still good without modification. And the remainder would be easy to implement.

I spent the rest of Thursday and Friday morning cleaning up my code to support the updated comp. There was an effect that the artists wanted to try, and they hadn't quite been able to do before, so we discussed the idea and how the art assets should be arranged and I put together a prototype of the effect. It seems to be what everyone was looking for, and it felt good to finally get to say "Yes, that shouldn't be a problem!" And mean it. Now I'm sure that my inexperience will eventually result it my mouth writing a check that my .as can't cache (all puns intended) but for now I'm enjoying the feeling of not knowing any better.

My major takeaways for the week are:
1. Movie Clips are Empty man! Empty.
2. I may like Actionscript and Flash for the same reasons I hate Perl.
3. Having an artist pwn your programmer art is actually a really cool experience.
4. An event-based approach to communication between art assets and code in Flash may prove a valuable way to get code reuse.

-Vincent

Saturday, January 5, 2008

Wrapping the week up...

Well this is the end of my first partial week at the new job.

I spent half of Wednesday adjusting the height of my desk, and getting my workspace all straightened out. Then it was on to finding some ActionScript 2.0 tutorials. I spent December learning Flash CS3 and a little bit of ActionScript 3.0. So things are a bit different than what I expected.

Thursday, I actually dug into some new code. I began work on a new set of classes to provide "Sticker Book" like functionality. I had some significant struggles with ActionScript's interesting mix of dynamic classes, type-sensitivity, and the Flash CS3's auto complete, combined with only having a trace function for debugging since CS3 will close if I try to debug. I tested it at home, and it appears I have an issue with my setup at work. I'll figure that out on Monday.

Friday was a mixed bag. I wrapped up most of the functionality for my classes, and I am able to place, rotate and erase "stickers." We lost internet connectivity, which is one of the things that us engineers are supposed to fix... but it turns out I don't have the permissions yet, and with the lead engineer being out, was limited to plug pulling.

Other things:
1. I received a total of 4 emails this week.
2. My only commuting problem was walking around Downtown Seattle trying to find a place to buy a bus pass.
3. I can check work email on my iPhone.
4. I didn't swear at all this week at work.

Next week, the artists on the project I'm working on are coming back from their vacations. I'm about to get owned!

- Vincent

Wednesday, January 2, 2008

Let's try this again...

Well the last blog didn't work out. Technically, everything was fine. I just didn't have a whole lot to say that I'd like people to see on the Internet, and I had a feeling that eventually Google would get bored, and decide to archive my page, so I felt is was best to play it safe.

2007 was probably one of the worst years I've had in a while... While I enjoyed the company I worked for, I was very frustrated with what I was working on. I can honestly say that it was a case of "being frustrated with water simply because it was wet." My colleagues were dealing with the same wetness in a far more professional manner than myself, so it seemed like time to find a change. So that's what I did.

Here's a break down:
  1. I went from a big company with a medium sized team (about 50 people) to a small company (about 20 people). This is a big win for me, since I tend to fit better with the small company/start-up environment.
  2. I went from server development with a focus on payment processing and digital asset management to hooking together flash interactive web sites and games.
  3. I went from being a detriment to my team (All they'd never say it...) to being an asset (at least once I get my head around Action Script 2.0/3.0).
  4. Today, my first day at work, despite a couple of hiccups with getting everything setting up, I was able to get all the way through the day without cursing.

And for me, that's a big win :)

-Vincent