Dethe Elza

Goal

To work at the intersection of learning and tech, helping people to use, rather than be used by, computers and technology.

Summary

Overall, my career has been balanced between technology and communication, often in leadership roles. I am very good at communicating technology issues in non-technical terms and teaching complex concepts.

I introduced and taught a class in Web Design in 1996 through Ohio University's Continuing Education program. In 1997 I was a monthly guest on WOUB, the univesity radio station, on the Art of Conversation show, where I would explain technical issues in plain language. From 2000 to 2002 I taught Intro to XML and XML Programming in the University of British Columbia's certificate program.

I have mentored for Ladies Learning Code and Mozilla's Software Carpentry. I co-taught, with Amber Frid-Jimenez, The Web as a Medium of Expression. This was a course we introduced at Emily Carr University to introduce design students to programming, and to introduce them to HTML, CSS, SVG, and JavaScript. It took them from those basics through to building interactive visualizations pulling down data from the web by the end of the term.

For three terms I have mentored 3-10 students per term with Undergraduate Capstone Open Source Projects, with the students working on Waterbear, an open source project I lead to make it easier to learn programming. This is an intensive program with weekly reports and meetings, where the students are expected to put in at least 10 hours a week filing and fixing bugs, implementing new features, and working on a larger term project.

I was for several years the co-host and organizer for the Maker Education Salon, a partnership between Vancouver Maker Fair and Mozilla Hive, which brought educators, librarians, parents, community organizers, makers, and kids together on a quarterly basis, with an annual "Pop-Up" event. This helped all the local folks involved in making and education to learn about each other and build connections.

I enjoy new challenges and love to pass on the lessons I've learned from 20+ years in the tech industry, at companies large and small.

Experience

Richmond Public Library

Help people use the libraries tech services: 3D printers, multimedia digitization stations, scanners, Raspberry Pis, BBC Micro:bits, Makey-Makeys, Lego WeDo and Lego Mindstorms, and more. Teach children aged 6-17 to make their own computer games. Run games that teach cooperation and teamwork.

  1. Pivoted workshops and clubs to online during the Covid-19 pandemic
  2. Write Shimmy animation tool and built workshops around it
  3. Write Moat private file sharing server
  4. Write multiple games as examples
  5. Introduce and lead Code Clubs weekly for kids, teens, and adults/seniors
  6. Lead tabletop role playing games for pre-teens
  7. Taught Intro to HTML and CSS
  8. Run Minecraft Club for children aged 6 and older, set up and maintain server
  9. Co-organized quarterly Maker Expo events for: high school students, fashion, healthcare, and science
  10. Organized Processing Community Days
  11. Wrote web apps, games, and augmented reality tools to support teen summer reading programs
  12. Co-taught Text Adventure Game course, creating a collaborative text adventure webapp
  13. Taught Game Programming with Pico-8 as a parent/child workshop
  14. Co-taught Computer Basics for Seniors
  15. Helped organize community partner events like RoboSports and Under The GUI

British Columbia Institute of Technology

Teach Management Information Systems to both full-time and part-time classes.

  1. Built lab exercises based on real-world databases, networks, security issues
  2. Teach Excel and database programming

Participedia

Team lead and back-end specialist for building 3rd version of this academic collaborative website tracking democratic participation around the world.

  1. Move database from document-store to Postgres relational DB
  2. Re-implemented full-text search to instrument for multilingual support
  3. Mentoring for junior developers
  4. Technical advising for other aspects of project (online surveys, data repository, etc.)

Modern Jive Vancouver

Taught introductory and intermediate partner dancing to groups of 20-50.

  1. Class management, including incorporating many new drop-in students each week
  2. Lesson planning for 60 and 45 minute lessons for new and returning students (mixed levels)

Eventsage

Team lead, mentor, architect for back-end, front-end, ops and infrastructure. Wearer of hats.

  1. Rebuild site for speedy loading and scalability
  2. Implement monetization strategy
  3. Mentoring, code reviews, lunch-and-learns.
  4. Business advising for small start-up business

Awesense Wireless

Back-end developer and team leader.

  1. Built simulators for a variety of data sources
  2. Recruiting, outreach, and training
  3. Client data integration work

Mozilla Corporation

Front-end development for the Marketplace team

  1. Developed for desktop, Android, and FirefoxOS flavours of Marketplace
  2. Built Hub add-on for Firefox Android to add Marketplace to home screen
  3. Collaborated on the first Vancouver Mozilla Hive Network Pop-Up

Emily Carr University of Art + Design

Co-created and co-taught web technologies and programming to 30 design students, taking them through to creating interactive presentations that pulled live data from the web.

  1. Designed all technical presentations, my co-instructor, Amber Frid-Jimenez, built all design-oriented presentations and content
  2. Created homework projects and evaluated all students' work with timely feedback
  3. Built code libraries to make some of the programming exercises more achievable given the constraints of a academic single term

Mozilla Foundation

Took the Collusion prototype through design, development, and launch as Lightbeam 1.0

  1. Hired and led design and development team
  2. Collaborated with Emily Carr University and mentored students to meaningfully contribute to redesign
  3. Built interactive documentary on privacy / tracking at the Tribeca Film Institute, later expanded to a 7 part series: https://donottrack-doc.com/en/intro/
  4. Mentored 18 students over three years working on Waterbear as part of Undergraduate Capstone Open Source Projects
  5. Mentored for Ladies Learning Code and Software Carpentry workshops
  6. Presented at two Mozfest conferences

Reelhouse

Architect, build, and manage development of a site to showcase the work of independent video artists at Reelhouse.org.

  1. Developed code organization tool Obloq (http://github.com/dethe/obloq)
  2. Developed site from scratch using Node.js and MongoDB
  3. Hired and trained development team

Kinzin International, Inc.

Manage small development team to build photo sharing site Kinzin.com

  1. Created web-based product builder generating PNG and PDF output
  2. Built Facebook apps Are You Normal? and These Are My Kids
  3. Created several jQuery modules to support Kinzin interface

JustSystems Canada

Integrated XML-based collaboration technology (Distributed DOM) into existing xfy XML toolset.

  1. Collaborate with Tokyo-based team
  2. Wrapped Xmetal ActiveX component with a full web-based interface

BlastRadius

  1. Continued development of Distributed DOM project started at Enfolding Systems
  2. Research and support patent applications that resulted in the granting of 4 patents

Enfolding Systems

  1. Founding member of company which later sold for $2.35 million
  2. Designed and implemented client-side GUI development library (Vorta)
  3. Designed and implemented client-server Distributed Document Object Model (DDOM)
  4. Designed XML content management appliance
  5. Researched usability, workflow, through-the-web editing, and aspect-oriented programming issues
  6. Explored new tools, programming patterns, and integration strategies
  7. Created new project management tool for Distributed Agile Software Development
  8. Extended existing tools with new support for XML, such as adding XPath support to Zope
  9. Wrote successful grant for BC Science Council
  10. Developed technique to use Xpath for CSS styling selectors

University of British Columbia Continuing Studies

  1. Taught XML Concepts introductory class
  2. Taught Programming XML with XSLT class

Antarcti.ca

  1. Developed through-the-web 3D rendering technology
  2. Led client-side programming team.
  3. Researched and reviewed 3-D libraries and techniques applicable to web pages XML-driven 3D for the web

Communicate.com

  1. Designed and implemented server-side Java web applications
  2. Developed e-commerce framework
  3. Supervised and mentored junior developers
  4. Built out multi-site testing framework

Lucent Technologies

  1. Developed software for managing telephone switches (NetMinder)
  2. Documented and tested Netminder software
  3. Reviewed code of other developers
  4. Mentored developers in Java

Communication Network Services, Ohio University

  1. Provided university-wide network support for Macintosh platform
  2. Developed software for dial-up, residential, administrative and faculty networks
  3. Trained student workers
  4. Created Macintosh installation software
  5. Provided telephone support
  6. Documented internet dial-up connection service
  7. Programmed banks of dial-up modems
  8. Part of team that rolled out ethernet campus-wide and off-campus

Continuing Education Studies, Ohio University

  1. Created and taught introductory HTML course to students from age 16 to 80

PATENTS

  1. Methods and systems for enabling collaborative authoring of hierarchical documents
  2. Method and system for enabling collaborative authoring of hierarchical documents with unique node identifications (Pending)
  3. Method and system for enabling collaborative authoring of hierarchical documents with locking
  4. Method and system for enabling collaborative authoring of hierarchical documents with versioning (Pending)
  5. Method and system for enabling collaborative authoring of hierarchical documents with node privileges (Pending)
  6. Method and system for enabling collaborative authoring of hierarchical documents with associated business logic (Pending)

PRESENTATIONS

  1. Building a community around open source, Facilitator for discussion, Code4LibBC Unconference, 2020
  2. Temporary file sharing with Moat, Lightweight animation with Shimmy, Advanced markdown with HackMD, Games at the Library, Lightning Talk, Code4LibBC Unconference, 2020
  3. Code Club for Seniors, Lightning Talk, Code4LibBC Unconference, 2019
  4. Uses of the Raspberry Pi, Code Club, Richmond Public Library, 2018
  5. Mavo: Full Featured Websites Without Writing JavaScript, Code and Coffee, Richmond Public Library, 2017
  6. Please Hold On, We Are Experiencing Technical Difficulties, Technology Training to Enhance Women's Safety, BC Society of Transition Houses, 2016
  7. Virtuous Cycles: Empowered Learners, Replicating Successful Learning Models, Creative Failure, BC Libraries Conference, 2015
  8. What to Expect After Graduation, SFU First-Year CS Students, 2013
  9. Lightbeam AMA, Reddit, 2013
  10. Lightbeam Launch Keynote, MozFest, 2013
  11. What's Next: Art and the Future Web: Teaching design students to use the web as a medium of expression, Emily Carr University, 2013
  12. Should We Teach Children to Program Computers? Rogue Curiousity, 2013
  13. Webmaker Hack Jam, Mozilla Vancouver, 2013
  14. Mozilla Foundation Projects, Vancouver Maker Education Meetup, 2013
  15. Mozilla Foundation Projects, Vancouver Library Cooperative Open Data Camp, 2013
  16. Webmaker Tools, Vancouver Mini Maker Fair, 2013
  17. Collusion Update, Mozilla Summit, 2013
  18. Collusion Overview, Mozilla Foundation All-Hands, 2013
  19. A Morning Cup of Coffee (Interactive Documentary), Tribeca Film Institute and Ford Foundation 2013
  20. Collusion: What's coming in 1.0, Mozilla Air, 2013
  21. Waterbear: Visual Programming for the Web, MozFest 2012
  22. Waterbear: Visual Programming for the Web, VanJS 2011
  23. Introducing Waterbear, JSConf 2011
  24. Social Networking for Small Groups, Bar Camp 2008
  25. Aesthetic Programming for Kids of all Ages (pdf), Bar Camp 2008
  26. Visual Programming: Why it matters for Python, Vancouver Python Users Group (VanPyZ) 2008
  27. Other languages from a Pythonic point of view: Haskell, Ruby, Erlang, Processing (with Paul Prescod and Brett Cannon), VanPyZ 2007
  28. Take control of your computer with Python and OS X, Bar Camp Vancouver 2007
  29. Programming OS X with Python, VanPyZ, 2006
  30. OS X, Python, and Kids, Vancouver Python Workshop 2006
  31. Community Building with Blogs (with Nancy White), Moose Camp/Northern Voice 2006
  32. Using Python and Cocoa on OS X, VanPyZ, 2005
  33. Creating OS X Cocoa Applications Using XML and Python, Vancouver XML Users' Group 2004
  34. PyGame: Implementing the big ideas from little developers, Vancouver Python Workshop 2004

PUBLICATIONS

  1. Chapter (co-author): DuBot: An Open-Source, Low-Cost Robot for STEM and Educational Robotics (Handbook of Research on Using Educational Robotics to Facilitate Student Learning, 2021)
  2. Paper (co-author): Designing Participedia: A Collaborative Research Platform (PDC '20: Proceedings of the 16th Participatory Design Conference 2020 - Participation(s) Otherwise - Volume 2, 2020-06)
  3. Blockcode (chapter): Architecture of Open Source, Vol. 3 (AOSA Books, 2016)
  4. XML Matters: Lighter than Microformats: Picoformats (IBM developerWorks, 2006-08)
  5. XML Matters: Up and Atom (IBM developerWorks, proposal accepted, 2006-05)
  6. XML Matters: Pipestreaming Microformats (IBM developerWorks, 2006-04)
  7. XML Matters: The web, it ain't just for 2D anymore (IBM developerWorks, 2005-06)
  8. XML Matters: SVG and the Scriptless Script (IBM developerWorks, 2006-06)
  9. XML Matters: Beyond the DOM (IBM developerWorks, 2006-06)
  10. Python Cookbook 2nd Ed.: Building a Python Cocoa GUI Programatically (O'Reilly, 2005-03)
  11. Browser Evolution: Document Access on the World Wide Web (Master's Thesis 1998-03)

Video Tutorials

  1. Digital Flipbook Animation, episode 1: Introduction to Shimmy 2021-01
  2. Digital Flipbook Animation, episode 2: Principles of Animation 2021-01
  3. Digital Flipbook Animation, episode 3: Animation Tips and Tricks 2021-02
  4. Programming for Fun with Scratch, episode 1 Intro to Scratch, implement Pong, how to make sprites jump, 2021-02
  5. Programming for Fun with Scratch, episode 2 Build a platformer game and import custom graphics, 2021-03
  6. Programming for Fun with Scratch, episode 3 Build a story game and incorporate sound in our games, 2021-03
  7. Programming for Fun with Scratch, episode 4 Discuss simulations, build Langton's Ant, look more closely at custom blocks, 2021-03
  8. Programming for Fun with Scratch, episode 5 Build basis of a top-down adventure game, use the Music extension to play notes, extend it to play chords, 2021-04
  9. Programming for Fun with Scratch, episode 6 Build Asteroids and look at advanced movement techniques, 2021-04
  10. Kids can play tabletop games online, episode 1 Getting started with tabletop role-playing games for free or cheap, 2021-03
  11. Kids can play tabletop games online, episdoe 2 Online privacy and safety for kids 9-12, 2021-03
  12. Kids can play tabletop games online, episode 3 Role-playing games that are fun for kids 4 and up, and the whole family, 2021-03
  13. Kids can play tabletop games online, episode 4 Resources to help run a game without a lot of preparation, 2021-04
  14. Kids can play tabletop games online, episode 5 How to use pre-written modules and other resources to get started quickly, 2021-04
  15. At your library you can... ...write a pick-your-path adventure! 2021-04

PROJECTS

  1. TurtleLang Text-based language to complement Bloc and demonstrate parsing using Ohm: 2022
  2. Spectrescope Halloween project to see the ghost inside of you: 2022
  3. Waterbear Next Re-working of Waterbear visual programming language to fix long-standing issues: 2022 (very preliminatry, ongoing)
  4. Moonshine Text language for visual programming: 2022 (very preliminatry, ongoing)
  5. Escape the Library Text adventure game: 2021
  6. Cody Vandango Teen Summer Reading Program Game, in 7 parts: 2021
  7. Colour Vector Fields Visualization using Perlin noise, vectors, animation: 2021
  8. Posenet Video Machine learning, video manipulation: 2020
  9. JavaScript Text Adventure Game Tutorial for JavaScript for making a game: 2020
  10. Covid Timekeeping Tiny tool for tracking time during the pandemic
  11. Sketchdance: Shimmy Simple animation tool for children: 2020
  12. Bloc Improved (esp. for mobile) version of minimal block language used in 500 Lines book: 2020
  13. Sketchdance: Moat Secure file sharing for library programs: 2019
  14. Sketchdance: Garden Collaborative (in both creation and play) text adventure creation tool: 2019
  15. Magic 8 Ball JavaScript demo project: 2019
  16. Book City: Superheroes: Alternative Reality Game for Richmond Public Library Teen Summer Reading Club: 2019
  17. Moon Animated Art project in collaboration with Azlen Elza: 2018
  18. P5 Video Puzzle Sliding Block Puzzle using Webcam: 2018
  19. Slitscan Horizontal Video Effect: 2018
  20. Imagetoy: 2014
  21. Life: Conway's Game of Life in the canvas: 2014
  22. Drawing Board Revisited: Rewriting the Drawing Board app for the web: 2014
  23. Hexaflexagon builder: Web-to-papertoy tool for Open Badges: 2013
  24. Baffle: Word game for mobile browsers: 2013
  25. Paley Tiles: Animation tool based on work by Nina Paley: 2013
  26. Beehive: A simple test of hexagon web layout: 2012
  27. Everybadge: SVG demo for Open Badges: 2012
  28. Goodnight Moon: My entry in the CSS1K competition: 2012
  29. oBloq: Polyglot literate programming: 2011
  30. I Don't Stop: Experimental audio app for iOS: 2011
  31. Translink: Vancouver transit for iOS: 2008
  32. iHypno: Mind control for the rest of us iOS app, 2009
  33. Pastel Finger: Finger Painting for the iOS, 2010
  34. Waterbear: Visual programming for the web, 2011-present
  35. Living Code Weblog: My outlet for ideas, tutorials, jokes, and soapbox grandstanding, January 2001-present
  36. Sandcastle: A tool for blog-based documentation and brainstorming, 2006
  37. Conversation Networks Uploader: Pre-processor and UI for conference audio files
  38. Drawing Board: A tool for simple sketch-based animation, with SVG export, 2005
  39. Python DocUtils Project: refactored directives code, added new directives, wrote How-To for creating new directives, 2002
  40. Interactive Hotlist: An early attempt at shared collaborative bookmarking, 1997-1999
  41. FreeWord: An experimental web-editable outliner, 1997
  42. Live from Studio B: The Art of Conversation, participated as monthly guest explaining technical issues in plain language, 1997

OTHER ACHIEVEMENTS

  1. Raised over $1000 for Children's Hospital "Balding for Dollars" 2009
  2. Conceived of and implemented Distributed DOM (DDOM), several patents granted, others still pending on this technology, 2001-2004
  3. J. Langdon Taylor Scholarship, 1994
  4. Computer Science Club Scholarship, 1994

Education

Ohio University

Ohio University

REFERENCES

Available upon request

Background courtesy of Subtle Patterns CC BY-SA 3.0