business name: Earth Angel Consulting
formerly GoatVirus Technologies
full name: Peter Thompson Fisera
address: Vancouver, BC
email: peter@goatvirus.com or fish@obtuse.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 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 wwoof.ca, and the sister site wwoofhawaii.org, including implementation of:
  • Paypal integration for subscriptions and one-time purchases
  • Fully functional and highly customized Google Mapping of host locations and search results
  • many modifications to user registration flow (behaviour based on multiple roles)
  • complex "Views" implementation involving modified Search form, taxonomy depth search, and more (see wwoof.ca/hosts/listing)
  • Extensive use of Content Construction Kit (CCK), User Profile fields and Content Templates
- 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 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.

- another site is intentiongathering.org, essentially just a straight CMS with user Image Gallery (Node Gallery), also responsible for the web design.

- other sites built in Drupal 6 and Drupal 7, full list available on request.


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


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/DHTML
  • experienced in manipulation of form control behaviour, image display, event handling, dynamic display of text, and other Javascript usages
  • some experience in using DWR and other Javascript-based AJAX libraries

SQL
  • have written web scripts using both the MySQL and MS-SQL databases, and designed and created large databases on both platforms
  • also used PostgreSQL in web scripting
  • approximately 20 years of familiarity with SQL, almost daily usage (in webscripting) for the last ten 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: October 2013

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