30

Sep

Turning Over an Old Leaf

Topic: Family and Friends
Tags: ,

I’ve blogged very little over the past several months, as the candy business and my web consulting work were keeping me incredibly busy. I’ve recently come to realize that, unfortunately, the candy business isn’t going to make it. It turns out there was a good reason the market for imported Japanese hand-made candy was wide open - it’s not a viable market. The production and import costs are too high, and the market niche is too small. But I did master the dense, intricate web of FDA and Custom regulations for importing food. At first I thought I’d get help from a consultant, but FDA consultants demand $800 per 15 minutes (yup, $2400/hour, but they prefer to pitch the number for 15 minutes). So I figured it all out on my own, and we got two shipments through FDA, USDA, Customs, and FAA inspections without a hitch. We’ll keep selling the political candies we have until the end of the campaign season, and then we’ll shut down the business.

The idea behind my web consulting was to keep some income flowing while we got the candy business going. It’s not something I wanted to do full time, and I’ve already wound down my consulting work, save for one project that’s almost finished.

So what’s next? I’ve actually been back full-time at the U Penn School of Medicine’s Information Services (SOMIS) for about a month now. I started here in 2004 as a web developer, and at the time I left at the end of 2007, I was a project manager. Now I’m back as a senior developer. At least one thing I’ve gained this past year is clarity on the kind of work that I find rewarding. When I left SOMIS last year, I told my co-workers that part of me felt crazy for leaving. It turns out that part of me was right, and I consider myself very lucky for having the opportunity to come back (especially given the current state of the economy). We have a good team, the clients aren’t insane, and the work is challenging but not pull-your-hair-out stressful.

And as you can see, my blog has a new design, although it still needs a little work. I intend to get back to blogging regularly, and I have a big backlog of pictures to post from the summer.

10

Apr

U Penn Higher Education Web Symposium

Topic: WordPress and Web Programming
Tags:

The University of Pennsylvania is hosting a Higher Education Web Symposium July 15-16
The University of Pennsylvania is hosting a Higher Education Web Symposium July 15-16

My former officemates at the U Penn School of Medicine Information Services Department have put together a Web Symposium, scheduled for July 15-16. They have an impressive list of speakers lined up.

I recognized many of the names of the list, as it includes some of the most well known people in the world of web user interface design. But I was surprised to see the names of a couple people I personally knew. I worked with Dana Chisnell for a short time in 2000, when she was brought in to consult at a small start-up where I was working (Finexa - a company that did not last long). And I met Alex Urevick-Ackelsberg at a coffee shop when Glenn Greenwald came through Philadelphia to promote his first book a couple years ago. I contributed a post to his Blue Force site, but it wasn’t long after that when I started to come up short on time for regular political blogging.

The price for attending the symposium is a bargain. Several of the speakers typically make the rounds at conferences that cost 2 or 3 times as much. So if this is a topic of interest for you, definitely check it out!

11

Sep

9/11 Remembrance at U Penn

Topic: Politics
Tags:

9/11 Rememberance at the University of Pennsylvania's College Green
9/11 Rememberance at the University of Pennsylvania’s College Green

Every day on the way to my office I walk through Penn’s College Green, past The Button and Penn’s replica of the famous Love statue. Today, on the anniversary of 9/11, the Green was adorned with a multitude of small American flags (the crummy picture is from my cell phone camera). I didn’t come across any information about who worked on it, but I imagine there’s a flag for each person who died that day.

The memory of 9/11 has been so cynically used and manipulated for political purposes over the years (the latest example being the timing of General Petraeus’ Senate testimony) that its anniversary has become a political and emotional minefield. Given all that, I thought this remembrance was very nicely done. It reminded me of the loss we experienced that day, it made me think of the families of the victims, and it evoked a quiet patriotism. It let you experience those feelings without feeling like you were being used in someone’s political agenda, and these days that’s not an easy thing to achieve.

26

Jul

AMCAS Moved My Cheese

Topic: WordPress and Web Programming
Tags: ,

Last week was the culmination of my work so far here at Penn. I was hired to overhaul the Med School’s web-based admissions tools. Over the past year and half I’ve written over 32,000 lines of code for this project. That means there are a lot of moving parts. The more moving parts you have, the more features you can offer. On the downside, every moving part you add introduces another possibility for something to go wrong. In a post about a year ago I explained the home-grown development tools we use for UI development and database access (since then we made the unfortunate choice of renaming our “LDL” database access tool to “the API”). With the admissions project I added to this toolset, introducing the concept of “data objects” (I called them that to distinguish them from the UI objects my coworkers were already familiar with). Here’s a presentation I made about a year ago if you want to know the gory details. But the basic point is that, to minimize the potential for chaos, confusion, and things generally going wrong when you have so much code, I went with an object oriented design for managing and manipulating the data (done properly, this gives you clearly defined containers for your data and functionality, and provides a set of unambiguous “touch points” between all the moving parts). Last week we launched the new tools for the applicants for the 2006 class, and I’m told it’s been the smoothest launch since the Med School first moved the process online four years ago.

Fun with Milk and Cheese

That might not be quite the achievement it sounds like, as they really had nowhere to go but up. That’s not the Med School’s fault though. When someone applies to medical school, they don’t apply directly to the school. They send their application to AMCAS (the American Medical College Application Service), and it’s up to AMCAS to get the application data to the schools where the applicants want to be considered. When AMCAS moved to doing this electronically several years ago, many of the med schools were nervous, so AMCAS tried to cajole them into feeling better about it with the Who Moved My Cheese? approach. Then when their new electronic system went live, it was a total disaster. Which goes to show that sometimes fear is a perfectly rational response to change. In the years since then they’ve improved their system, so there haven’t been any repeats of what happened the first time, but it takes time to rebuild trust after an experience like that. I was rewarded the other day with a t-shirt saying “AMCAS moved my cheese.” I’m amazed they’ve stuck with that slogan.

3

May

The Job

Topic: WordPress and Web Programming
Tags: ,

It’s dawned on me that I haven’t said much about my new job yet. One of the major downsides to leaving California was giving up my job at HighWire, but I’m happy to report that I like my new job at U Penn’s School of Medicine even better. I’m in the Information Services group. I don’t have as much customer contact as I did at HighWire (which I miss), but on the technical side, there is a much greater breadth to the work. Instead of having a primary focus on just scripting, I’m doing a lot of application design and database development. My current projects are a web-based email account application system, and revamping the Med student online application process. All the tools used here are new to me - PHP, Oracle, Smarty, and some home-grown tools - so that also helps keep things fresh. I’m working in a small group of about a dozen very likeable people, so I’m making new friends too. Unfortunately, my position is funded for only one year. It looks like there’s a good chance it’ll be extended for a second year, or made permanent, so I’m crossing my fingers. I’ll find out when the budget is finalized for the next fiscal year, which will happen around the end of the summer.

The application architecture that’s been deployed here is the best I’ve seen. A typical architecture for web applications consists of a database backend, Java or CGI scripts as a middle “application” layer, a templating system for the front end, and maybe a security layer (typically handled through the web server or the application layer). The architecture here has 4 layers: 1. the database (Oracle) back-end; 2. the LDL (Logical Data Layer), which provides role-based access to the database (you define your queries in XML, along with column and row based access rules, and it’s then compiled for better performance); 3. the “WI-Engine” which serves as the application layer, written in PHP (it allows you to design your pages in an object-oriented fashion - using “panels,” “subpanels,” and “dialogs” which can communicate with each other); 4. a template layer, using Smarty.

The WI-Engine took the most getting used to, as I had to orient myself to thinking of all the page components as objects. Once you get going with it though, it’s very efficient. The LDL is cleverly constructed. Since the applications we design are for use within the School, you always run into issues such as what a student can do with an application vs. what an administrator can do with it. All those access rules are clearly defined in one place, and it’s sitting just above the database itself, so it’s quite unlikely that someone could hack through any loopholes in the application layer.