Second Avenue Learning is a small, woman owned software consulting and game development company in Western NY. Working in the educational space, Second Ave has done a huge variety of projects ranging from Martha Madison, a primary school physics game, Voices for Suffrage, a grant funded site for exploring primary sources around the women's suffrage, to custom LMS integrations for other educational software providers. In my role as Director my primary responsibilities were:
I bought my own laser and started creating laser-cut art and other items on the side. LynxPack Etsy Store
Problem: A new client came to use with a big, vague idea and an estimate is only as good as its requirements.
Worked as part of a team brought in to put together project definition for a new company with a big idea. They came to us with sketches and prose and we drew out their needs and turned it into software requirements.
I performed the roles of User Experience Lead and Technical Lead to lead the development of user stories, workflows and technical specifications. We spent a lot of time putting ourselves in the role of the teachers that made up the target audience and working through each step of the application.
ROI: The end result of the product definition phase was a stack of documents covered the core functionality of the application. From these we were able to create an estimate and project plan that set a new standard within the company and provided the foundation for a successful and ongoing engagement.
I also build and paint model robots. Prior to the 2020 pandemic I had also participated in local competitions.
Problem: Estimation in software consulting is complicated and prone to costly mistakes.
Building off the work I did at Cynergy, I took the estimation process to the next level. The latest incarnation of the estimate spreadsheet automatically includes time for client meetings and standups. It also includes better milestone breakdowns and better cost/rate information. It also includes sheets for expenses (that roll into the cost/price) and assumptions and risks so that they're always with the estimate.
Since the estimates were built off of the requirements gathered during the discovery phase, the estimate spreadsheet was the definitive staring point for project tasks and timeline. I added the ability for the estimate sheet to connect to the Forecast API and automatically populate the milestones and tasks based on the estimate spreadsheet.
In addition to the sheet itself, I provided training to the team members who helped create the estimates as well as the sales team who used the estimate to help create the project proposals.
ROI:All projects that estimated using the processes and tools I created were completed within 10% of their estimated budgets and requests for change orders dropped dramatically.
Problem: Second Ave was managing projects with spreadsheets and we couldn't get good insight into project status.
When I arrived at Second Avenue, projects were being run using a very basic spreadsheet for task tracking and project status. I quickly found numerous instances of incorrect data across multiple projects. In one instance, a project was showing as being profitable but was actually significantly over budget.
I worked with key stakeholders to identify the requirements for a new project management system, researched and benchmarked potential solutions and negotiated the final deal with Forecast.app. One we were signed up, I created the on-boarding plan for Second Ave and managed data migration, training and validation of the new system.
ROI: Moving to Forecast gave Second Ave much better insight into project status, budgets, resourcing and where time was being spent. All of this together led to more accurate financial predictions and more insight into where we were having trouble with projects.
I was brought into Second Avenue as the lead subject matter expert for a Java training course for a large online retailer. The purpose of the project was to retrain non-technical employees into software engineering roles. Even though this was considered an intro course, we produced training far beyond your typical intro courses. I was personally responsible for the following topics:
Ampersand Energy Partners is a hydroelectric power company that manages 18 small hydro plants across the Northeast US. I was the sole IT person and oversaw everything related to computers and control systems. I installed remote access control in all sites, performed SCADA/HMI development and support, and installed new PLC control systems. I planned, estimated and implemented several dozen projects of varying sizes across the organization including site upgrades, security camera installations and the scanning of historic documents and drawings.
My family is the most important part of my life. We put a priority on spending time together and enjoy each other's company a great deal. It has been such a blessing to be married almost 20 years and to raise two wonderful children.
Problem: How do we get management the information they need without giving them direct access to the SCADA?
In order for upper management to know the current status of our plants the site managers need to log into each site individually and manually create a report. This became slightly easier when we made all the plants available through LogMeIn Central but it still meant a lot of legwork for each site manager. Using remote access for this lead to interruptions and conflicts with the site operators so I began looking into another solution.
I started by looking at the SCADA packages we used and seeing if they supported a way to look at multiple sites. They did, but they all needed more expensive upgrades and wanted the SCADAs to be all on the same network. Looking across 16 separate networks was challenging. We needed something simple and supportable and I began looking at developing a custom solution to fit our needs.
I have now designed a custom system that we're beginning to implement across our sites. I started with a small windows service in C# that runs on the site PCs. This service does a Modbus read every 5 minutes to grab a predetermined set of tags from the site PLCs. This generally includes current kW production, total kWh produced, water level, etc. These values are then posted to an Ampersand PHP service using SSL which adds the data to the Database. A pretty simple web application, built using the Code Igniter framework, allows management to log in and review the current status of those sites.
ROI: There is already a long list of future features but management is pleased and I'm hoping to roll it out to all sites by the end of the year. Aside from the cost of my time this solution has not required any additional costs.
Problem: With eighteen plants and part time employees it was not sustainable to use a VPN for each site.
At my previous employer, PowerHouse Systems, we chose the most secure and cost effective option for remote access: OpenVPN. For the five employees it was supportable to get everyone set up with the VPN software and certificates. At Ampersand there were too many sites and too many employees with unmanaged hardware to support. So one of my first tasks was to find a long term solution that could handle growth and employee turn-over.
After a lot of research and discussions with vendors, I settled on LogMeIn Central as our remote access/remote support system. Central give me quick and easy control over who has access to what computers and allows me to take see what our operators see and show them first-hand how to get around issues. Additionally, Central allows me to see the current state of each computer and perform emergency reboots if needed.
Central has not been completely without issues though. We had one plant where LogMeIn would regularly lock everyone out for seemingly no reason. I was eventually able to track down the source of the problem. The main operator was not closing out of the LogMeIn app on his Android phone and Android was allowing the app to constantly attempt to reconnect (every 15 seconds) in the background. This caused anyone else trying to connect to get kicked out before they could completely log in.
ROI: LogMeIn Central has been worth it's price. It is invaluable for a one-person IT department to be able to manage and support nearly 50 computers.
Problem: After a major mechanical upgrade, the site's temperature sensor pack failed at startup.
We had just finished a major mechanical upgrade after a generator and trash rack failure at our Collins site. Once everything was put back together they attempted to start the unit and found that a 30 year old temperature sensor pack had failed and was preventing startup. Water was high and we were losing money without the unit running.
I immediately went out to examine the issue and see what we could do to fix it. Our first option was to purchase a refurbished 30 year old sensor pack, which was wildly overpriced. The second option was to do an emergency partial upgrade and install a small, modern PLC to take the place of the sensor pack. It would read the temperatures from the 8 RTDs on the generator and if everything looked good it would close the circuit that allowed the unit to run.
It took about two days to wire in the new PLC and run some ethernet cable down into the turbine. I also installed a small HMI so the operator could track the temperatures. After everything was installed the unit was immediately able to run again. What I installed was also part of a planned upgrade that was scheduled for the following year so, even though it was a stop-gap solution, it was also scalable.
ROI: The partial replacement allows the unit to run again with minimal down-time. Everything we installed would be used in the full upgrade planned so there was no wasted money.
The weekend class I tough for my son and his friends continued for four years. During this time we did a lot of different things. We developed a number of games together including Jump Tanks, a 3rd person arena combat game, and Flappy Thing, a Flappy Bird clone we built in an hour. We also learned about image processing, photography, soldering, budgeting, sexism, depression, and web design. It was an excellent experience for everyone.
Problem: How do you migrate eighteen existing sites to a standard PLC/SCADA platform for maintainability and reliability?
Another key area of responsibility for me was in refitting sites with new control systems. This included new PLCs, new protective relays, new power meters and new SCADA software. My primary area of focus was the integration of everything with the SCADA but I also did PLC programming and low voltage wiring.
I was responsible for planning, testing, purchasing, configuring and installing new PLC and SCADA system to replace the old 1980's era PLCs that existed at the sites. I chose to install Automation Direct Do-More PLCs because of their reputation, the fact that the Do-More could be a CPU swap for the older Koyo PLCs and they offered exceptional features for their cost. I had to learn the Do-More software and the intricacies of configuring the various cards as part of this project.
On the SCADA side, we struggled to find a cost-effective solution. Most SCADAs were very expensive and they were not designed for such small installations (<400 tags). For a while, we used Point of View which was Automation Direct's rebrand of Indusoft Web Studio. They were selling PoV cheaper than Indusoft and eventually stopped selling it entirely. We then scaled back to using Maple Systems HMIs but I’ve never been happy with the options available to us.
ROI: The move to new PLCs is not a quick one. For the sites that have been upgraded, we've seen a definite improvement in operational efficiency and in production.
Problem: With more than a mile between the headgates and the generator, we needed a reliable, modern way to communicate.
Our Forestport site is unique in that a canal feeds the generator from a lake more than a mile away. The gates controlling the water are at the lake, but the main controls and PLC are at the generator building. An old, hard to maintain Opto22 system was communicating that mile along three 24 gauge wires using RS-485 protocol. We wanted to upgrade the communications and provide some additional smarts to supplement the old Toshiba PLCs installed at the site. We were not in a position to replace them completely.
We replaced the Opto22 system with two H2 series Do-More PLCs from Automation Direct. For communication, we installed a set of Ethernet Bridges designed to pass ethernet protocol up to 1.5 miles along a pair of wires. The replacement of the Opto22s went smooth and we were impressed that the ethernet bridge worked very well. The throughput was low, but more than adequate for the communication between PLCs.
The trickiest part of the upgrade was programming a large number of safeties and fall backs in case communication was lost between the gates and the generator site. Communication regularly drops for short periods of time and the plant now reacts well under fault conditions. The added ethernet communication has allowed us to more easily install additional control upgrades such as pressure monitoring for an inflatable dam.
ROI: It took a few weeks to iron out all the fault conditions, but the new system has been running trouble free for two years. The new PLCs also give us a better view into the status of the site.
Problem: How do you archive and maintain decades of paper drawing and manuals for future maintenance and training?
One of the larger tasks I was given was scanning, organizing and archiving the various drawings, manuals and other documents at each of our sites. In the best cases there were tubes or drawers full of electrical and mechanical drawings as well as numerous maintenance manuals and FERC documents. The easy part was picking it all up and then dropping it off at the local Kinko's to have it scanned.
Once it was all scanned it was my job to organize all the raw images and PDFs into something we could use. Indexing and organizing the drawings was mostly a straight forward process. The PDFs I would go through manually to add bookmarks for the index. I certainly learned my way around Adobe Acrobat.
Our lack of man-power and the care that we needed to take with the project were ultimately what landed it on my plate. It was a lot of work but was definitely worth it.
ROI: Knowing that we have all our drawings and documents scanned and backed up on the cloud was a huge step for the company.
The MAGIC Center at RIT is an interdisciplinary group designed to promote collaboration across the different colleges within RIT. Originally created out of the Interactive Games & Media department of the College of Computing & Information Technology, MAGIC has fostered projects with professors from every college in RIT and has helped to make RIT the Western NY Digital Gaming Hub. The MAGIC Center also helps students develop their own games and get them to market through co-op and internship programs.
My work at MAGIC was as co-teacher for the Center's Production Studio course. This course was designed to provide a real world style experience for the students as they work for a small game studio. Myself and the other professor were the product owners and the entire class worked together to produce our game for the whole semester. Milestones and goals were set and everyone was held accountable for the final product. Students learned to work together and deal with challenges while being pushed to create the best final product possible.
If the production studio course produced a viable proof of concept, the top students could be hired on to continue development on the game. In two cases, the games went on to be published by MAGIC and released onto the Microsoft XBox One game console and the Steam PC game store. Myself and the other professor would continue to oversee development and help out to shore up any shortcomings in the class makeup. My personal roles have included acting as Senior Architect, Gameplay Designer, UI Designer, or 3D Artist.
In addition to co-teaching the production studio course, I also helped manage the MAGIC website. Most notably I was tasked to migrate the site from static pages to the Wordpress content management system. Once that was completed I held several training sessions for the other members of the MAGIC center so they could learn how to manage content on the new site.
After the VW Van I decided to so something Sci-Fi. My choice was the Firefly class cargo ship, Serenity, from the Firefly television show. Click on the image for more information.
Concept: Create an old school shooter that acts as a metaphor for our everyday struggles with internal and external challenges.
Fragile Equilibrium is a game about the imperfection and impermanence of life. It is a reflection on transience, a balancing act between progress and regrowth, a reminder to find beauty in decay and inevitable destruction. Using old-school "shmup" mechanics and forms, [FE] invites the player to explore a world of quick actions, forced decisions, and subtle strategy: but with each decision, the player falls ever out of balance.
As balance decays so does the world, eroding over time and out of space, binding the player to a smaller area, pressing in upon the mind. Built upon multi-layered interactions, a Wabi Sabi aesthetic idealism, and a rich, broken world of yesterday's fantasies, [FE] asks the player to reflect upon their play, their world, their nostalgia, and themselves. Find your balance, live a life well played.
[FE] is in active development and is a first effort in collaboration with Microsoft as a part of the new Creators Program. It is being developed simultaneously for Windows PCs and XBOX One, using Unity. Production tools include Adobe Creative Suite, Autodesk Maya, Surface Painter, Visual Studio, and more. Professor Phelps worked with students in the fall of 2016 and again in fall of 2017 as part of a production course and is now working with his team of students directly in studio roles, with co-creator and collaborator Aaron Cloutier at MAGIC Spell Studios. Expected release date is sometime in fall of 2018.
Follow FE development on the FE Facebook page
Problem: The MAGIC Center website was designed to be visually impressive but was a nightmare to update.
When I joined MAGIC there were two main areas that they wanted me to be involved in. The first was the production studio course and the second was making their website less of a nightmare to update. The founder of MAGIC started as a painter and had very clear design and layout goals for the site. He put a tremendous effort into realizing this vision using web development tools such as Adobe Dreamweaver and the result was a site that only he could make changes to and he had much better things to be doing.
My task was to take the existing visual design and turn it into a set of wordpress templates in order to maintain the fidelity of the design but allow anyone to make changes to it. So began a long process of deconstructing the content of the current site from it's surrounding containers. The end result was about 40 content templates, 16 page templates and a lot of custom logic to determine when to use each one without user intervention.
Most Wordpress pages are designed to show content from one category along with some filtering tools. The pages of the MAGIC website were densely packed with information of a variety of types. The main pages had to display entries from three or four different categories simultaneously in different locations with different templates. Once I became familiar with Wordpress it was a great challenge bending it to my will. We certainly pushed their templating system further than most as there were few examples online with the complexity we were dealing with.
The Wordpress framework was developed in PHP. The customizations we did were a mixture of PHP/HTML templates, pure PHP code and clever use of poorly documented plugins.
In the last couple years I took up painting miniatures as a hobby. Click on the image above to read the full story.
Concept: Illustrate the tension between the push for workplace collaboration and performance reviews based on personal achievement in a family friendly game.
HSB is a multi-player arcade dungeon crawler with a twist! We've all been there: stack ranking, team projects, student or employee evaluations on a curve - groups of people that need each other, but that are evaluated individually to the detriment of true teamwork. In Hack, Slash & Backstab, we adapt these broken models to a 2-4 player couch co-op dungeon crawler, and use a game setting to seemingly reduce the stakes. Work together as warrior, rogue, wizard and archer to survive a dangerous world. But only one player will be crowned the winner: it becomes a fight to the death, as betrayal and backstab become the tools of choice. #bewaretheknife
From 2015-2016 Professor Phelps served as supervising faculty to the entire HSB project, first by advising his class on game production (where the game first came to life), and later supervising students directly through additional refinement, creation, production, certification, and publication processes in part-time and full-time studio roles. In addition he served as a graphic designer, UI/UX developer. and digital artist on the game, in collaboration with other members of the design and development team. Nearly all of the students who were a part of this experience have gone on to careers in game development, at studios such as Insomniac, Activision, Darkwind Media, and more. The launch of the game was featured at Inside HigherED, Campus Technology, PBS(WXXI), and other venues, as well as by local news media. The game was also a demonstration at the Game Developer's Conference (GDC), the Imagine RIT festival for 2 years running, the ROC GameFest, and was featured in numerous events and tours of the MAGIC Center by state and local officials. Students also presented the game at the INTEL Games Showcase in 2016 and were the 3rd place winners for visual quality. The game was built in Unity, and also used Adobe and Autodesk tools in production, as well as Z-Brush, Git, Google Docs, Slack, and other tools. HSB is rated 'Everyone 10+ with Mild Fantasy Violence' by the ESRB.
Visit the HSB Website to learn more
Play the game on XBOX One
Play the game on Steam
Purchase the game at the Humble Store
See the video of the launch event and associated interviews
Read the RIT University News article on the launch
Watch the HSB Post-Mortem Talk [~1hr presentation, 500MB streaming video]
Concept: Design a game that illustrates the concepts behind Jackson Pollock's paintings.
Splattershmup is a game that explores the intersection of the classic shoot-em-up (or "shmup") arcade game and gesturalized abstraction or "action painting" (a term coined by critic Harold Rosenburg in 1952 and often used to describe the work of American artist Jackson Pollock). It is intended to allow the player to reflect on their in-game actions and strategy through visual record, and to approach the creation of art as an arena of action. Art can thus be created, shared and discussed that comes "from inside the moment" of game-based decision.
Splattershmup was featured in the Blank Arcade at the Digital Games Research Association (DIGRA) 2016 conference in Germany, was one of five finalists for Best Learning Game at the Games + Learning + Socity eleventh annual conference and showcase (GLS11), and was featured at the Indie Arcade in 2016 at the Smithsonian American Museum of Art. In addition, it was presented publicly at the Game Developer's Conference, Imagine RIT, and was chosen to represent the entire campus (in combination with live music, orchestra, and conductor) for the first-ever RIT West Coast Board of Trustees meeting.
The game is written in Javascript/HTML5/WebGL, and was written primarily by Professor Andrew Phelps and Aaron Cloutier, in collaboration with their game production class from fall of 2014. Splattershmup is rated 'E for Everyone' by the ESRB.
Visit the Splattershmup Website to learn more
Download Splattershmup for Windows 7/8 32-bit [59.8 MB]
Download Splattershmup for Windows 7/8 64-bit [61.8MB]
Get Splattershmup for Windows 8|10 at the Windows Store
Get Splattershmup for Maverics / Yosimite [71.1MB]
Get Splattershmup as a Node-Webkit package [30.3MB]
Play online in Chrome, IE11, or Edge
Read the Splattershmup review on Kill Screen
I ran a Life Skills class for my son and a couple other boys. It was a huge honor. Click an image for the full story.
After stepping down from my position at PowerHouse Systems, I have taken some time to relax and consider my passions. My passion for my family is top. My passion for gaming, particularly interesting indie games, is another. My son came up with an interesting game mechanic last summer. He's an idea guy and it is something I haven't run across before. I thought that since I had some free time, I'd put together a proof-of-concept and see how it played. Since we used GameMaker Studio in the class I was teaching, I started there and produced a 30 level demo that was pretty satisfying. GameMaker is limited but interesting and I found it quite capable for 2D, sprite-based games. It's limitations provided me with some very interesting programming problems that I enjoyed solving.
When I completed that demo I started working with Unity3D. It had come up in conversation with friends a number of times recently and it piqued my interest. It was much more accessible than I thought and the free version was more than adequate for my needs. I have begun porting the GameMaker demo over to Unity which I feel offers a lot more potential. I hope to be able to release the game into the market place this year!
Images are from prototypes we developed in the Man Skills class. I'm not ready to show off our game idea yet.
PowerHouse Systems is a small company focused on refurbishing and operating existing hydro dams that were left to decay and no longer generate power. Comprised almost entirely of contract help outside the founders the company was run brute-force by the original two partners.
I was asked to join PowerHouse Systems to help the company move small Hydro into the modern age. Knowledge transfer and maintenance planning were stated as major areas of focus for my work. Once I took the role, these goals took a back seat to fire drills and distractions and the founders, who's input was required for those tasks, were unable to give me any of their time.
In my typical way I found areas where I could contribute to the company without the need of involving the founders. Modern remote access was an obvious need and some place I felt I could add benefit. Control system upgrades were going on and it felt like a natural fit for me to learn more about those systems. I shadowed our contractors and learned a great deal.
Ultimately I felt that I was not allowed to do the job I had signed up to do and felt that it was not the right place for me and stepped out of my role at PowerHouse Systems.
I design my own bags, pouches and utility Belts. Click an image for the full story.
Problem: Ancient Hydro plants needed new computer control software for remote access.
Shortly before I joined PowerHouse Systems, they acquired two small hydro electric plants in NY state. Both of these sites had PLC and HMI (Human Machine Interface) computer systems from the early 1980's and both were no longer functioning. The plants were still able to make power but the HMI system would be required for remote access and logging.
My background in computer systems made me a natural choice to explore HMI options and choose an appropriate solution for our sites. After researching many potential options I settled on the Biejer HMI touch panels T12b and T15b. These panels were windows CE based and gave reasonable good access to the C#/WPF code in their authoring tool: iX Developer.
In addition to just developing the interface to the plant PLC, I took it upon myself to design a component library to allow the HMI interface to mimic the physical plant controls. This allowed the operators, who where typically non-technical, to more easily understand how the software worked. I designed the component functionality and artistic vision for this library then worked with a professional designer to realize my vision. Once the components were designed I did all the layout, programming, UI design and optimization. An unexpected challenge popped up when it turned out that the touch panels used 16 bit color rather than the typical 24 bit. While image optimization isn't as big of a concern these days, my previous experience allowed me to create an exceptional interface in the 16bit color space. Additionally, extra care was put into safety considerations for plant management.
ROI: My familiarity with C# and my ability to rapidly adapt to new technology allowed us to deploy a new, advanced solution with a minimal of lead time (1 month). These new panels allowed for machine control and remote access without the need for a separate PC reducing cost and potential problems. Finally, the new UI I designed allowed for a quicker adoption rate by our end users.
Problem: PowerHouse Systems does not have an on-staff PLC programmer. They were reliant on outside contractors.
A PLC, or Programmable Logic Controller, is an industrial computer designed to control electrical systems such as factories and warehouses and power plants. These computers are mounted directly into the control cabinets and are wired into the electrical system. PowerHouse Systems standardized on the Automation Direct DirectLogic series of PLCs. These PLCs are a low cost, reliable solution and were more than capable of running all of our plants.
PowerHouse Systems was reliant on outside contractors for all of our PLC work. This was a potential bottleneck if there were problems with the PLC. Without them, our plants cannot run. An emphasis was put on finding an in-house solution. Again, my ability to adapt to new technologies made me an obvious choice even though I do not have an electrical background.
For the two new power plants, I shadowed our contractor during the installation of the new PLCs. I worked with their engineer assisting in the electrical wiring of the control systems into the PLC and with the PLC programming. Through this I gained first hand knowledge of the electrical wiring as well as the ladder logic programming. First hand experience in debugging the combination of ladder logic programming and physical wiring was a new and valuable skill.
ROI: I was able to adapt quickly to the ladder logic programming and was able to provide valuable debugging assistance in a number of situations. At the time I left PHS, I do not feel that I had enough experience to write a PLC program from scratch for any but the smallest situations. However, I could trouble-shoot PLC and control system related issues.
My love of the laser cut VW led me to consider other ways I could use that style. My thought quickly went to the Wedding Heart that my wife and I designed all those years ago. It took some playing with to get the layering right but I ended up with a very nice rendition of our hearts. Some of the parts were so fragile that I could not remove the backing paper that comes on them. However, the end result did not suffer for it but it was touch and go for a bit during assembly.
Problem: PowerHouse Systems needed to migrate from direct dial-up remote access to secure VPN but had no expertise to do so.
Network security for power plants is a major concern. While PHS isn't a big enough to be considered infrastructure, we wanted to set a precedent for small hydro network security. Although network security wasn't my specialty, I felt that I could learn what was needed and find a good solution.
Initially I selected CISCO because of their reputation but their small business security appliance (ISA-550) was EOL'd very quickly and the replacement was 5x the price. Once I realized CISCO wasn't going to work for us I widened my search and eventually found Cyberoam. They had an excellent product and provided superior support to CISCO.
ROI: The baseline Cyberoam product was much more capable than the CISCO ISA-550 and their support helped us develop a security scheme that worked well for our small hydro plants. The Certificate based OpenVPN remote access gave us more security than the CISCO IPSec VPN. Integration with a Cloud-based RADIUS system gave us user control across all our plants without a having to run our own servers.
We installed the Cyberoam CR-15iNG appliances in five of our sites and wrote a Case Study for them based on our experiences.
In addition to the technical side of things, my communication and writing skills also made me a natural fit to assist in the government filings required to run a hydro electric plant. I learned about the different documents that were required to meet government safety standards. It was interesting to see what went into these reports and how easy it is for a small company to fall behind because of being disorganized or distracted.
As the DTL, I was responsible for leading the Technical Leadership team at Cynergy. This crew of incredibly talented individuals forms the core of Cynergy's project teams acting as consultants, team leads and application architects. I supported this group as mentor and coordinator, and he constantly strove to improve the way Cynergy developed solutions.
I chose to move from a development role to a management role because I saw a desperate need at a company I cared deeply about. I never strove to become a manager, but I did feel that this was an opportunity for me to put my money where my mouth was. I always felt that I could be a good manager and my success in the role at Cynergy was unquestionable. Eventually it was too much for me though. I empathized with my team too much and was stressed out all the time. That is what lead me to step down from my position, which was one of the hardest decisions of my life.
While at a submarine museum I discovered a new style of artwork and tried my hand at it. Click an image for the full story.
Problem: Cynergy was growing rapidly and there was no documented reference to our development process.
As Cynergy grew and our clients grew we realized that we needed to be more consistent about how we ran our projects. As the Director I was working across my team to ensure consistency but there was no go-to reference for our process, which would make things easier, particularly for new hires. With the blessings of my VP, I initiated the Cynergy Process Document project. Enlisting 15 of my most experienced Tech Leads, I created an outline of our process and divided up the work of filling it in among this group.
After about 6 months of collaborative work we produced a 180 page document that we felt accurately described how we wanted our projects run. It was not a pie-in-the-sky ideal, but it was better than we were currently doing. The entire team agreed that no part of it was an unrealistic goal but it would take a lot of individual effort to get to this point. I felt like that was a good goal and began putting it into practice.
ROI: Where we saw the most immediate ROI was for new hires. We've never had a place for new hires to refer to if they had questions or were curious about our standard practices. It was all done through word of mouth and it was easy for people to feel like they "should already know that." The process document was a huge training tool and I received a lot of excellent feedback from the people we hired after it was completed.
In 2012 I acquired a 1986 VW Camper. This classic van played a big part in my life. Click an image to get the full story.
Problem: How do you attract and hire top-tier talent in the software industry?
Hiring is a very difficult process when you're looking for top-tier talent. It's easy to find grunts and "Java Developers" but if you want leaders, problem solvers and client-facing architects it's a whole different ball game. For a long time we didn't hire into the Tech Lead role, it was strictly a promotion path. However, shortly after I took the DTL role, I recognized that there were likely people who would make excellent Tech Leads who would not be interested in a Developer position first. I made the case to my VP and convinced him that I could find the people we were looking for as direct hires. Those new hires, in turn, would have to convince the team that direct hire was a valid option.
The first step was attracting great people. Hiring into the role was new, so I wrote whole new job postings which where dynamic and very honest. The TL role was not an easy one and sugar coating it wasn't going to help anyone. I needed people who knew what they were getting into and wanted it.
The next step was weeding out the jokers. Tons of people just auto-reply to postings and I needed a way to find out how serious they were. If they looked good on paper, I would send them a very deep twelve-part questionnaire. Again, it was very honest and asked a lot of questions about how people dealt with the inevitable problems that come up in software development. If someone took the time to reply to this, they were usually a very decent candidate. Most unqualified people recognized they were in over their heads as they read through the questionnaire. It was a major boost to my hiring process.
Eventually we were growing too fast for me to manage everything and I handed off my process to a hiring manager. I was the only director at Cynergy to successfully maintain the quality of my hires with the hiring manager. I wrote a document that provided guidance to the hiring manager on how to interpret the questionnaire so that they could take people through the hiring process without my involvement until the end. It was a huge win for me and for my team.
ROI: By the time I left Cynergy we had used this process to hire 16 Tech Leads directly into the role from outside the company. This was roughly half the team and there were no wash-outs. While we had some attrition, everyone hired using this process was top-tier talent and were valuable assets to Cynergy.
When I took the DTL role, unrest was rife in our group. Improving quality of life for the team was my first goal. The previous DTL had not defined his role well and played the part of a policeman instead of a mentor, coming in late to point fingers and never working to help prevent problems. I convinced management that having TLs running 4-5 projects at once was not going to work. We were beginning to lose people because of burnout and our clients were demanding more from our people. Within my first year I had the majority of the team down to running just one project each and had expanded the team to take up the deficit.
We saw immediate morale improvements. The TL group had a bad name from overworking its members, but now it became a desirable position again. Promoting was active again and attrition had ceased. It was plain to see the difference in how a project was faring between a TL with one project and a TL with three or more. The project managers were also demanding that a TL be dedicated to a given project because of the difference. It was a new age for Cynergy.
We got our first real pet on my birthday in 2011. Tintin is an amazing bird, for the full story click an image.
Problem: Cynergy's projects were growing and team roles were expanding and we were having trouble estimating new projects accurately.
Any software consultant will tell you how difficult it is to estimate a project. The larger the project, and the more people involved, the harder it is to estimate. There's no silver bullet for this problem, but we had started a simple estimating spreadsheet to help us and I took it upon myself to expand on this simple tool to include everything I (and others) had learned estimating projects.
The Cynergy Estimation Spreadsheet took on a life of it's own. The spreadsheet continued expanding to include tools to estimate all aspects of the project from kick-off to hand-off. Macros for estimating QA and the number of resources needed for each milestone of the project. I developed a Loaded Line Item tool to assist with feature paring when clients chose to treat the estimate like a Chinese food menu. I also refined a summary sheet to make it easy for sales to get the numbers that they needed.
ROI: The estimation spreadsheet could never take into account every change or problem that you will encounter but we saw a marked improvement in our ability to deliver on-estimate and in situations where we didn't, we were able to specifically point to what changed that caused us to miss our estimate.
Problem: Cynergy leadership was spread across six offices and many remote individuals. We needed a way to connect them and keep everyone focused on the same goals.
With the blessings of upper management, I created the Cynergy Leadership Conference my first year as DTL. Previously, we had a done the Tech Lead Conference, but Cynergy had expanded and our roles had expanded so we expanded the conference to include all leadership roles: Design, Development and Project Management. We needed an event where all leadership roles could come together to focus.
These expansions lead to an increase in visibility within the company and the other Directors and I put a lot of effort into relevant conference topics and post-conference entertainment. In our first year most of the topics were focused on developing better processes. The second year was about refining those processes and analyzing what worked and what didn't. The last year I participated in the conference, we focused on improving our consulting skills and creating a consistent persona for our clients.
ROI: The leadership conferences were universally considered to be a success. Meaty topics and time to talk to people you rarely saw face-to-face was incredibly valuable. Eventually the conference grew beyond my ability to plan, but as a Director I was still highly involved in planning the topics.
Here is an example of a talk I gave at the last conference. Understand that the content was appropriate for the audience. Leadership at Cynergy
When I took on the role of DTL, there were 14 Tech Leads in the group. We immediately lost four of those to burn-out. A new DTL was "too little too late" in their minds. By the end of the first year, we had seriously addressed the burn-out issue, morale was significantly improved and we were up to 17 people.
Cynergy experienced a period of rapid growth. In 2011, I instituted entirely new hiring practices for the group. By the end of 2011 the only peole we'd lost were due to internal promotions and the team had expanded almost 2x to 32 people. Eight of these were direct hires into the TL role, which was something we'd never done before, and none of these Tech Leads washed out.
Eventually we saw a number of the people we promoted internally wash out leading us to question our promotion process. We were more rigorous in our external hiring and we had to put internal people through the same interview process. Ultimately, in my time at Cynergy, the team stabilized around 34 people. My 0% attrition achievement in 2012 was not a realistic long-term goal and Cynergy continued to struggle to move past the 200 person company level.
Technical Leads at Cynergy are responsible for the creation, estimation, and allocation of development tasks, defining deliverable contents, determining deliverable time-line. They oversee technological decisions, project architecture, and the overall quality of the project implementation. They also assist the Project Managers with tracking the budget, and communicating the status of each of these responsibilities to the client. Lastly, they are also partially responsible for mentoring and professional development of other developers.
When I started at Cynergy, the Technical Lead position was a combination of architect, consultant and project manager. Working with a designer, the TL would lead a group of developers to produce a software solution for their client handling all aspects of client communication and development. It was an ambitious role and would eventually evolve to be more focused on a development leadership and client consulting specifically around development.
I started as a developer at Cynergy on an EMR application but proved my ability to manage client expectations quickly and was promoted to TL within six months. I had a unique career at Cynergy in that I ran only a few very large projects rather than a lot of small ones, which was more typical. At the time I had just learned Adobe Flex (now Apache Flex) and quickly distinguished myself by mastering the technology quickly.
Problem: How do we approach a long-term relationship massive potential client?
My last project as Tech Lead was for a company that provided software to various government agencies to track budgets. We had one of our (then) typical three-day kick-offs on-site and two things quickly became clear. First, the User Experience Lead that had been assigned to the project with me was utterly useless and I was going to have to work extra hard to keep the client's confidence during this crucial first impression period. Second, this project was huge beyond measure. It would take months just to understand the scope of this thing and it was in everyone's best interest for me to convince the client to go with a phased approach attacking very limited areas of the project at any given point.
After resolving a minor communication issue between the client project manager and myself in the first phase, we quickly developed a very positive relationship. The client was very realistic in their understanding of software development and their team, which was handling all the back-end services and data, was very slow. They were so slow that we had to double the length of the third milestone which gave our team time to refactor everything we'd done up to this point taking into account our better understanding of the project scope. It was a hugely successful undertaking that put us better in sync with their team and in a better position to support the entire application. Refactoring is a necessary part of developing large application but clients are rarely willing to pay for it.
ROI: Five years later this project is still being developed with new features and revisions and was the highest grossing project Cynergy has ever worked on. I left the project after being promoted to Director but I believe that I was instrumental in developing a positive relationship with the client.
Being able to print 3D models I've designed is awesome! Click an image to read about my 3D Wedding Hearts.
Problem: Poor early leadership left a project over budget and behind schedule when I was asked to take over for damage control.
One of the things I liked most about software consulting was the variety of projects to which I was exposed. I ran into things that I didn't even realize existed. Such as planning "facings" at a grocery store, which makes sense when you find out about. Typically you never think about the people at a store who look at past sales and store demographics to determine what products get put onto what shelves at what times of the year. It's not simple or easy.
Cynergy was hired to create a tool for this exact purpose by a major grocery store chain in Austin, TX. It turned out to be the largest project we'd ever taken on up to that point and it was more enormous than we realized. I was brought in about half way through after the original TL and the original client lead were let go because of lack of progress. I was asked to try to repair things from our side and work with a new emergency project manager that was provided by the client.
This new guy and I worked extremely well together. All the previous communication problems in the project disappeared and our teams worked very well together.
ROI: Ultimately, the project was very successful. The end-users loved it. However, we were still WAY over budget and WAY late but there was no way to turn that around at the time I took over.
Problem: A very involved client needed a very involved team.
My first project at Cynergy was creating an Electronic Medical Records (EMR) application for the optometry space. EMRs are always complicated and this was no exception. The client was highly involved and seemed to have a pretty clear vision for what they wanted from the product. They were a startup though and the app was constantly being shown to prospective offices so new builds were being released weekly.
A few months in, the client became fed up with how the Tech Lead assigned to the project was being pulled in too many directions and I was asked to take over as lead along with one other developer. We were able to produce a very good app with excellent features. After about a year, the client ran out of money and our involvement in the project ceased.
As part of a 3-man R&D sub-set of the Product team at Element K, my responsibility was to research, prototype, test, develop and release new products for use in the distribution of e-learning content for our clients. As an R&D team, the range of tasks we were given was quite varied. Most were developed in Flash but many involved other tools that were often novel to us. Adaptability and problem solving were core skills for this team.
Problem: While I liked my work at Element K, we were stuck with Flash 6 as our development tool and I was interested in exploring newer OO techniques in Actionscript 2.0 (Flash MX and 8).
In parallel to the prototyping framework I was doing at Element K I started working on a more full featured component library and framework using the newer ActionScript 2.0 language introduced in Flash MX. This framework included standard interactive components all integrated into an XML based runtime layout engine. I was also focusing on using FlashDevelop, an open-source Flash IDE, rather than the standard WYSIWYG Flash environment.
After fleshing out the core functionality of the framework, I searched out some consulting projects where I could put it to good use. I partnered with another consultant for a while as I continued to refine my framework. After I got a number of good projects under my belt I felt like I had a good thing going with XML as my layout engine, a compiled SWF for assets and everything was very Object Oriented.
Around this time Adobe released version 2.0 of their Flex tool. Flex was an Actionscript 3 based component library and API that used XML (MXML) as its layout engine. Sound familiar? Given that Flex was where my framework was going, I abandoned it and started learning Flex 2.
Problem: A big client was looking for a way for training materials to be presented as if in a game.
One of the coolest things I worked on at Element K was a prototype of an isometric roleplaying game-style learning environment. The user would point and click to navigate an avatar around an isometric office environment interacting with virtual characters to practice soft skills.
Drawing on my game development background, I developed a tile-based engine where the map was driven by XML and each character's interactions were also XML driven. An A* pathfinding algorithm allowed you to click on the tile that you wanted to move to and the character would move around obstacles to get to that point.
ROI: From a wow factor point of view the prototype showed our client that we were thinking outside the box and they were very impressed. They recognized the difficulty in developing content for this style of interaction though and ended up going with a more simplified delivery system. The new tool was called the Business Sim and was a branching decision simulation that rated your choices. I developed this as well, but it wasn't as compelling.
Problem: As the R&D department, how could we improve our ability to deliver prototypes of new ideas rapidly?
Once our work on the e-learning delivery engine was complete, the R&D team took on a large number of smaller projects in an effort to create new learning tools to try to differentiate Element K's content from it's competitors. Each of these smaller projects was a one-off and we typically started from scratch on each one. I thought it would be advantageous to develop a framework we could use that would give us a lot of core functionality quickly.
In between projects and in my free time I began working Actionscript 1.0 framework that would allow us to develop new e-learning prototypes quickly. This library included functionality that we seemed to need in every prototype: XML parsing, Error Handling, Event Broadcasting, Keyboard Shortcuts, Loading bars, Tab Indexing and more.
ROI: In the last year I was at Element K working on this framework, it was used in a number of prototypes including a method to better work with screen readers, a dynamic help system, and others. Some of these prototypes were eventually integrated into our main content delivery engine. The team liked the framework and I was not the only person using it for prototyping.
Problem: The creation of quizzes in our online courses was always a very manual process requiring a lot of resources and time. They were difficult to edit and track.
“Inline” quizzes in our e-learning content were a double edged sword. They were an important learning tool but were so time consuming to build that our content creators tried to use them as little as possible. Our customers loved them so after the main content delivery engine was completed, inline quizzes became the next highest priority.
At that point, I was exploring XML driven dynamic content and I thought we could use it to create entirely dynamic quizzes. I quickly mocked up a prototype showing off the six core question types we typically used being displayed from XML data. Everyone thought it had a lot of potential and it moved into beta being tested by some of our top content creators.
ROI: After some collaboration between the content creators, and myself we found a feature set that would satisfy 95% of the requirements for the quizzes we were building. At that point, the content creation tools were modified to support the new quiz XML and it went into production in all of our courses. It was a huge time saver for content creation and the interactions were more dynamic and consistent across all our courses.
In June of 2004, not long after moving into our new house, my daughter was born. Simone is bright spark of pure love in my life. My wife almost didn't survive her birth, which led Simone to be our last natural child. Thankfully everything turned out well and everyone is healthy!
My first project at Element K was to assist the team in converting our e-Learning delivery engine from Director to Flash 6 (Actionscript 1.0). I came in part way through the project and was given very specific aspects of the project to complete. I quickly established myself as a critical part of the team.
As the project proceeded, my team and I pioneered better software development practices which was something new for our department. Before the end of the project, we had all source code in CVS (this was 2004) and were able to do automated builds using Apache ANT.
The expansion and enhancement of this delivery engine formed the core responsibility of team as we researched new interaction styles or had new functionality that needed to be added into the engine. Our team was not responsible for maintenance only new features and enhancements.
I went back to school in 2002 for my MS in Information Technology at Rochester Institute of Technology. My concentration was in Game Programming and I took additional classes in Human-Computer Interaction, 3D Modeling and Animation, and Web Programming. I received a 3.92 GPA.
Retooling was my main goal for returning to school. I had been design focused during my undergrad and now I realized I wanted to be more programming focused. I still wanted to cross that line and front-end type programming would always by my passion. At school, I wanted to pick a concentration in RIT's IT dept. that would give me the widest range of programming challenges.
Game Programming seemed a logical choice. At the time, RIT was using Visual C++ and Direct X 9 for the game programming concentration. As a scripting guy, this was a huge departure for me from what I knew. I learned so much in these classes and was able to produce some cool stuff as part of small programming teams. I also learned that C++ probably wasn't my best language but it sure challenged me.
Going back to school when you're unemployed with a new child is a tough place to be. Financially it's a huge challenge and I really didn't want to go into huge debt over this. Thankfully, I was able to get a graduate assistantship which covered tuition but had me working at the school a lot. I was gone 12 hours a day for most of a year but we got through it and didn't have huge debt hanging over us. I do hope I never have to do it again.
Going back to school meant going back to Rochester. Whereas our trip out to Seattle felt very much like something WE were driving, the move back felt like something we were supposed to do. Rochester seemed like where we were supposed to be. We were very negative towards Rochester before we left but the contrast with Seattle gave us a new perspective and we've been much more at home here since coming back.
Some of the professors in the IT department were very interested in Emergent Behavior, a subset of Artificial Intelligence that looks at how complex behavior comes out of relatively simple rules. We spent a great deal of time looking at how we could model bird flocking behavior and how ants find food with pheromones.
These concepts led to a couple of the most interesting projects I've ever done. My bird flocking simulation is still shown as an example to classes and my ant simulation is one of my favorite things I've ever built.
In 2001, while essentially unemployed, my son, Roen, was born. It was a blessing to have so much free time to spend with your child, but it's also stressful to expand your family without a good source of income. It was for his sake that I humbled myself to work at Fred Meyer. Being a father changes your whole perspective on life.
While I was unemployed, my wife was still working for Element K in Rochester writing articles for technical design journals, such as Photoshop and Illustrator. At that time, the journals business was big and they needed more content written than they could handle. I quit my job at Fred Meyer and started writing.
I wrote for quite a few journals: Photoshop, Illustrator, Web Design, Director, Digital Photography and others. I was given the opportunity to write some pretty unique articles such as using XML data to drive Illustrator, How to run X11 on Mac OSX, PC/Mac Networking and more than 40 others.
In late 2000 / early 2001 the dot Com crash hit Seattle. The bubble burst as they say and many of these fancy start-ups folded quicker than you could blink. I had started a new job, fearing my position at Picture IQ wasn't stable, and within two weeks it came out that the CEO and Founder were lying to the venture capitalists. Two more weeks and I was out on my own again. The same story applied for hundreds of tech workers in the area and we would all be applying for the remaining jobs. It was grim.
Unemployed. New baby. Dot Com crash. 2001 was a tough year. After applying for many jobs against hundreds of other applicants, I decided that I needed to do whatever was necessary to bring in some money. So I applied for a job at Fred Meyer, a department store, and became a sales associate in the electronics department.
It was a short experience and a good one. I learned a lot about customers and crooks. I learned about parents and jealous co-workers. It was a humbling experience for me, who had felt confident in his career for a very long time. In the end I left to write technical articles with my wife, but I still think that this is a good example of my "get it done" attitude.
As part of the Product Design Group at PictureIQ, I worked with the team responsible for developing the interaction and specifications around consumer based products. My role was to create detailed prototypes in Macromedia Director, which allowed us to test user interaction prior to full-scale development. I created full system prototypes for consumer devices (such as Iomega's FotoShow) as well as specific interaction prototypes for web-based applications. I also performed R&D for wireless, hand-held image solutions (editing, viewing, sharing) on PocketPC and PalmOS based devices. Other tasks included paper prototyping, workflow design, writing product specifications, presentation of demos to clients and small scale usability testing.
Problem: How can you get user feedback on new product prototypes with no budget?
There were times at Picture IQ when we were able to do real usability testing with cameras, individuals from our target demographic and the whole nine yards. But those were pretty rare because it's expensive. More often than not we had to make do with whatever we could come up with. While there I used two techniques to shape our UI design.
First, I used quick gut-reactions from non-technical office people. We were doing set-top TV interfaces using simple remotes, which were pretty new at that point. I would bring people into the conference room and hand them the remote, point them at the TV and ask, "Can you do …" A simple, quick task was all I wanted. It was great to see how intuitive the interface was and often time problems were immediately shown, as people would interpret UI items differently from how we intended. It was quick, easy and very helpful user testing.
Once our product was nearing completion, we would want to do more in-depth usability testing but often we wouldn't have a good place to set up cameras and go whole hog. Anticipating this, I had developed a framework for the prototype engine that would track everything the user did. Originally this was part of the undo function so users could play with it more realistically but I extended the tracking of user input to the entire application. It even had the ability to play back the users entire session so we could review what they did. It was not as good as real user testing but it gave us some interesting insight.
In Late 1999, not long after getting married, my wife and I felt the calling of the West. In an effort to keep things crazy, we pulled a 1-2-3 combo that saw us married, changing jobs and moving cross-country in rapid succession. We loved Seattle, but it was not to be our home for long.
Problem: Picture IQ was trying to establish itself as a leader in online photo sharing and wanted to extend itself to mobile devices.
Expanding to mobile devices seems perfectly normal now but back in 2000 it was cutting edge. I remember the Windows CE phones and Palm Pilot phones were the top of the line "smart" phones of the day. Picture IQ wanted to capture this audience and get people sharing pictures on these devices. The problem we faced was that the promise of faster data on cell phones had yet to be realized.
I worked on a prototype for interfacing with Picture IQ's imaging servers in the mobile browser (Mobile IE) using JSP. I had never done JSP before but jumped in enthusiastically. It was a challenging project. The screen on our target Windows CE phone was 240x320, which left very little space for images and the data rate was worse than a 28.8k Modem. We were able to optimize our image output and eventually this was featured on the HP Jornada PocketPC phone.
For Kodak, I worked as part of the Customer Experience Group to create a unified visual design for Kodak.com. My personal specialization was in user interface design for web based applications. I did workflow design and prototyping for many high profile online applications such as Kodak PhotoQuilt, Picture Puzzle, and PhotoGreetings. I also did extensive work with both the visual design and the technical implementation of the web applications. Additionally, I functioned as a design director with external agencies doing work for Kodak.
As part of our wedding, Greta and I collaborated on a design that was used on all of our wedding invitations. At the time we felt that these wedding hearts were a unique representation of our wedding but they eventually came to symbolize the unity of our hearts and the new life that grew out from them. These Wedding Hearts have become an ongoing theme and we try to do regular projects that involve them for each other.
Kodak.com was outside of any of the major business units at Kodak (film, print, etc), which meant that the members of Kodak.com interfaced with all the different aspects of Kodak. Exposure to the politics and corporate beaurocracy was good for me early in my career. Unfortunately, I did not acclimate to it as many others did, instead I interpreted it as an example of how not to run a business.
In August of 1999, I married Greta. She and I had already gone through a number of trials while dating and had grown closer through it. At the beginning of 1999, I realized that I would never find another person like her and made a commitment to spend the rest of my life with her. Something I have NEVER regretted.
There was a brief period at Kodak when they were at the cutting edge of web technology. For the three years I was there, when Kodak.com was a priority, Kodak put a lot of effort into online picture sharing. It was still early for this technology (late 90's) and by the time it started catching on Kodak had killed off the Kodak.com division and outsourced everything.
As a designer who wasn't afraid to program, I was involved in a lot of the more complicated web app projects, like the PhotoQuilt sharing web app and PictureGreeting, one of the first online greeting card design tools.
While at RIT, I Pioneered Interactive Media as a degree program through my work with the College of Continuing Education's Applied Arts & Technology degree. I worked with professors from Information Technology and the School of Design to develop a course of study that supported the emerging field of New Media/Interactive Design and Web Design.
While I was an undergraduate, I changed my major seven times. I was not lazy or indecisive. I knew what I wanted but it didn't exist. In the mid to late 90's the web was in it's infancy and I wanted to be a part of it. It was too new for colleges to have a major in Web Programming though and I was hard pressed to find a major that allowed me to achieve my goal.
Half way through my second year of college I found out about something called Applied Arts & Technology. This was a program through the College of Continuing Education that allowed its students to design their own Bachelors of Science degree. The student had to put together their classes, meet the B.S. requirements and present the reasoning behind the request in order to be approved. Additionally, since the program was outside the standard colleges of RIT, the student would need special approval for just about every class.
I designed a program spanning Computer Science, Computer Graphic Design, Film & Video, and focused Liberal Arts to create what I felt would be the ideal Interactive Media major at RIT. Every class I chose was something I felt woud be essential to my success as a media specialist: sound design, small group communication and interactive media design are a few examples. My passion for this major and my excellent prior performance helped me convince professors that they should let me into their classes even if they were full. I also able to take a number of graduate level classes this way.
The work I did to create my own major and my performance in the classes I took caught the attention of professors across multiple colleges at RIT. A number of these professors shared my vision that interactive media (and the emerging world wide web) were going to be big in the near future. They wanted to support students in this area and, using my work as a template, were able to set up a cross-disciplinary program that exposed students to design and programming. Cooperation between colleges was not something RIT was known for doing. I had the pleasure to teach in these new programs as an adjunct at a few different points and even to hire a number of the students in the program later on when I was working for Cynergy.