IMPORTANT! As of January 2023, this resume is replaced by a new version, please refer to that one instead. This original version is left online for historical reasons only (one of my earliest attempts at "web design", can you tell? :-))
business name: Earth Angel Consulting
full name: Peter Thompson Fisera
address: Vancouver, BC
email: fish@goatvirus.com or peter@earthangelconsulting.com



php - involved in many large and small client projects (and some personal projects) using php (from year 2000 to present), including implementation of:
  • many Drupal-based production websites (see separate section, below)
  • both frontend and backend pages using the Fast Templates system as well as standard php scripting
  • complex administration/backend pages for control of site content
  • full Content Management System with data-driven menus and site map, permissions, document management and comprehensive Search Engine (the original code for travelinsurance.ca )
  • libraries and classes for database access, session implementation, isolation of layers, and generation of complex HTML forms using Fast Templates
  • server-side generation of images and pdf files
  • rugged user and group security at the application level
  • E-Commerce front end (i.e.: shopping cart and checkout)
  • routines to generate tree layouts and depth-first sort orders from database representations of trees (e.g.: site maps, menu trees)
  • automatic font sizing based on browser and platform of client

Drupal - involved in many client projects (and some personal projects) using Drupal.

- one such site is wwoof.ca created first in Drupal 6 and then later redesigned and migrated into Drupal 7. in 2017, the code for wwoof.ca was massively expanded and turned into the CWP (Common WWOOF Platform) for FOWO (The Federation of WWOOF Organizations). This is in use on approximately 20 websites including wwoof.ca and wwoofusa.org/ and includes implementation of:
  • integration with PayPal, Stripe and other ecommerce providers (through use of Ubercart and many modifications) for subscriptions and one-time purchases
  • Fully functional and highly customized Google Mapping of host locations and search results
  • configurable smooth multi-page user registration flow, including various user, profile and ecommerce integration at numerous different steps
  • complex Views implementation involving modified Search form, taxonomy depth search, many custom views handlers, and more (see wwoof.ca/hosts/listing)
  • expert-level usage of Colorbox, Display Suite, Contexts, Features, Advanced Forum, Mailgun, Solr Indexing, Fields and Entities, S3 Filing System, Rules Scheduling and many other Drupal modules
  • fully multilingual on all levels
  • extremely large custom code base to support registration, subscriptions, messaging, wwoof visit requests, response rates, reviews and feedback, and many other member-specific features
- another site is connectsus.com, including implementation of:
  • highly customized subscription system, written with Ubercart and extensive custom code
  • subscription-based download of multiple document types, in various configurations
  • supports very complex business rules and configurations regarding products, product lines, user preferences, and permissions both subscription-based and otherwise
  • fully customized integration with Constant Contact
- another site is intentiongathering.org, including implementation of:
  • basic CMS and menuing functions
  • detailed user documentation
  • intelligent usages of Webforms
  • picture gallery
  • this organization does large events per year, and some smaller ones as well. from 2013 onwards, they have been hosted on this website (other platforms were used in the past). each large event has its own unique theme and/or color scheme, with different artists contributing graphics over the years. themekey module used frequently!
  • a highly customized registration system (based on Drupal Registration, Drupal Commerce and much custom coding) capable of registering multiple event attendees, in detail, and purchasing multiple tickets, on a single ecommerce transaction
- another site is bethechangeearthalliance.org, including implementation of:
  • Ubercart e-commerce module, with minor customizations
  • detailed use of User Profile fields, Content Construction Kit and Content Templates
  • extensive coding in php and the Drupal forms API, to create custom modules in php to provide Circles, Circle Membership, Actions and Results tracking
  • re-use of complex CCK fields like Realname Autocomplete in non-CCK forms
  • implementation of Calendar module and custom Events content type
  • customized DHTML Menus with special color-coding and clean action
- another site is kootenayfamilyplace.org, including implementation of:
  • categorized Calendars and a custom Events content type, with views of Calendars for different categories, or a global Calendar with all events, based on the Calendar module but with fairly extensive modifications
  • Custom coding in php and the Drupal forms API, to create a module to provide full-featured Job Board functionality (as a Drupal "node module")
  • custom coding in php and the Drupal forms API, to give News Stream functionality (multiple News Item streams) using CCK fields
  • detailed use of User Profile fields, Content Construction Kit and Content Templates
  • customized DHTML Menus with special color-coding and clean action (similar to Be The Change Earth Alliance but not identical)
  • special security coding on backend, using Simple Access as a control mechanism to assign edit privileges to different Admins for different sections of the website, where section is defined by higher-end parts of the Clean URL.
- another site is maggiesglutenfree.com, including implementation of:
  • Ubercart e-commerce module with extensive customization to product displays
  • Imagecache image management system for product images, nutritional labels, etc.
  • custom Articles content type with NodeQueue for arbitrary node ordering
- another site is plongeon.qc.ca, including implementation of:
  • Press Releases and Newsletters listings, using Teaser/Full-Node Views and Content Templates
  • "Nouvelle" (new) listings on home page, using all of the above to generate DHTML-controlled multi-node content block
  • Data driven site map, reading pages directly from Drupal's menu table (accounting for all security permissions), displayed in sideways tree format, and requiring no admin updating whatsoever. See plongeon.qc.ca/?q=node/86
- another site is bloomgardendesign.com, including implementation of:
  • A custom module "blog plus" that works with the Drupal "blog" module and gives many more possibilities for the display of blog or news-item postings
  • custom Projects content type including a CCK images field with Lightbox2 integration
- another site is earthlyimages.ca, essentially a straight CMS / Ubercart installation but with a custom Catalog module that allows the artworks to be listed by category or by size of print, and other misc. features.

- another site is kootenaywoodstoves.com, essentially a straight CMS but with jCarousel module to show a scrollable list of supplier/vendor logos, and "blog plus" (see here ) with constantly scrolling news items.

- another site is dillermontreal.com, mainly straight CMS but including implementation of customized "blog plus" module (see here ) with Archives, and a Galleries area, using Gallery_Assist module and CoolIris picture viewer.

- another site is bradmcg.com, essentially just a straight CMS with some custom coding to use the Users table as a general-purpose Contact Management database (with contact categories and bulk mailout capabilities using the Mass Contact module)

- another site is awakenthegathering.com, essentially just a straight CMS, also responsible for 90% of of the web design.

- another site is earthdance.ca, essentially just a straight CMS with user Image Gallery (Gallery Assist and CoolIris), also partially responsible for the web design.

- other sites built (or worked on) in Drupal 6, Drupal 7, and Drupal 9; full list available on request.


Wordpress - php customizations to theming and ecommerce, for clients of Brainflex (eg: Selkirk ICF Buildings)


AJAX - some experience in writing AJAX-based web software; using Backbase, the Orange application server (from Digital Lattice) and various Javascript-based AJAX libraries.


AHAH - some experience in writing AHAH-based interfaces in Drupal 7 and 9


ASP - involved in two large client projects using ASP, including implementation of:
  • complex administration/backend pages for control of site content
  • automatic email generation
  • various menuing systems for both frontend and backend pages
  • document management

Cold Fusion - involved in numerous client projects using Cold Fusion, both frontend pages and administration/backend pages, including many sites using the CF-Webstore e-commerce/CMS framework (eg: connectsus.com, interimaging.com)


HTML, CSS Style Sheets - knowledgeable in all the necessary features for text and image based sites of high levels of complexity


Javascript/jQuery
  • experienced in: manipulation of form control behaviour, image display, event handling, dynamic display of text, and many other scripting usages, using both raw Javascript and javacript with jQuery

SQL
  • have written complex web scripts using both the MySQL and MS-SQL/MariaDB databases, and designed and created very large databases on both platforms
  • also used PostgreSQL in web scripting
  • approximately 35 years of familiarity with SQL, and almost daily usage (in web scripting) for the last 22 years

CVS - have worked with various projects under the CVS Version Control system, including the use of CVS to directly update the client's web server


Git - currently working on a project under the Git version control system


XML - worked on one project using an XML data source, including optimization of XML data retrieval code (in php)


Microsoft Access
  • involved in numerous client projects using MS-Access
  • have used MS-Access with SQL-server backend as well as Jet engine database

Visual Basic - involved in one client project using Visual Basic (real-time RF communication)


XVT/XI (platform-portable GUI development tool, MS-Windows version) - involved in development of WIMS (WasteWater Information Management System) for the GVRD, using the XVT & XI interface libraries and C language. This project required use of the Microsoft SQL Server library and the coding of many window event-handler functions in C (approx 37,000 lines of code, two years in duration).


C/C++:
  • writing of WIMS program (in conjunction with XVT/XI, see above)
  • C also used in two smaller client projects

Advanced Revelation (AREV) & R/BASIC (DOS 4GL database and attached language) - over ten years experience in writing large and small client applications in Advanced Revelation and RevG (a prior version of the language)




Available by request only.

NOTE: you must have Javascript turned on for the tab controls to work!
If it is turned off, please use the following links:
SKILLS    EXPERIENCE    HISTORY    EDUCATION    INTERESTS


Last Updated: March 2022

goatvirus.com home page: http://goatvirus.com