Don Hopkins Resume

Resume for Don Hopkins, Senior Software Developer.

Don Hopkins
7 min readMay 24, 2018

Mission

Create fun and expressive, educational, live programming, debugging, content creation and world building user interfaces and tools for web, server, client, desktop, mobile, virtual, and augmented reality platforms.

Employment

Ground Up Software: Groundskeeper (2017-present)

Dutch freelancing eenmanszaak. Many projects and clients, including an open source UnityJS extension for scripting and debugging Unity3D in JavaScript across mobile, desktop, and web platforms. 13 years of Unity3D and iOS development experience, 23 years of Python, 28 years of JavaScript.

Leela AI: (2021-present)

Leela is growing hybrid symbolic-connectionist constructivist AI, combining neat neural networks with scruffy symbolic logic. It enables unsupervised machine learning that understands cause and effect and teaches itself, motivated by intrinsic curiosity. Founded by Henry Minsky, Milan Minsky, and Cyrus Shaoul, and based on ideas about child development by Jean Piagat, Seymour Papert, and Gary Drescher (described in his book “Made-Up Minds”). Role: Start-Up Generalist. Technologies: Python, detectron2, yolo, object and pose detection, real time live video image processing, computer vision model training, testing, and deployment, large language models, symbolic AI, pytorch, NVidia, CUDA, TypeScript, JavaScript, Go, React, Svelte, JSON, RTSP video streaming, Axis and Safie cameras, Linux, bash, ZeroMQ, Docker, drivers and system configuration, Terraform, Kubernetes, Packer, ssh, Security, Vanta SOC 2 Compliance, Google Cloud Platform, BigQuery, Firebase, JWT, Cloud Storage, Cloud Build, PubSub, Load Balancers, DNS, Google Sheets, Github, CI/CD/Dev/Git/ML-Ops, Grafana, Blender, Emacs.

Gallium Studios (2022-present)

Worked with Will Wright on procedural content generation for shared online voxel worlds, using cellular automata and other techniques. Technologies: Unity3D, C#, Python, Blender.

Pantomime Corporation: Chief Architect and Developer: Pantomime (2014–2021)

Networked augmented/virtual reality platform. Platforms: Unity3D, iOS, Android, GearVR, OS/X, Windows. Languages: C#, Objective C, C++, JavaScript, Java, JSON.

Jaunt VR: Senior Software Developer Contractor: Unity3D, JavaScript, scriptable 360° VR video player (2016–2017)

Cross platform Unity3D/JavaScript integration. Platforms: Unity3D, Jaunt SDK, Google Cardboard SDK, iOS, Android, macOS, Windows. Languages: C#, JavaScript, Java, C++, Objective C.

NutritionQuest: Chief Architect and Developer: Alive-PD / Turnaround Health (2005–2007; 2009–present)

Online diabetes prevention program. Platforms: AWS, Docker, Linux, TurboGears, Apache, MySQL, PHP, email (Mailgun), mobile (iOS, Android, Cordova), messaging (SNS), interactive voice response (Voxeo). Languages: Python, PHP, JavaScript, JSON, CSV, XML, CCXML, VoiceXML, Genshi templates.

Stupid Fun Club / Syntertainment / MediaGraph: Research Programmer (2002–2003; 2009–2014)

Worked for Will Wright’s studio and spin-offs, researching, prototyping, and developing user interfaces, robotics, teleoperation, reality TV, interactive storytelling, geolocation, speech synthesis and recognition, desktop, web, and mobile apps. Platforms: Unity3D, iOS, OS/X, Windows, Linux. Languages: C#, JavaScript, Objective C, C++, C, Python.

TomTom: Senior Software Developer: Dynamic Content and Publishing, TomTom Home, BitTorrent (2007–2009)

TomTom Home device and content management app based on Mozilla XULRunner. BitTorrent DNA content distribution system. User created content sharing system, client UI, and backend web services. i18n & l10n tools. Platform: XULRunner, XP/COM, Windows, OS/X, Spring MVC Java server, BitTorrent DNA. Languages: JavaScript, XUL, C++, Java, Python.

Connected Media: Chief Architect and Developer: ConnectedTV, Palm TV Guide and Universal Remote (2001–2007)

Personalized TV Guide integrated with IR universal remote control for Palm Pilot. Platform: Palm Pilot, Windows, MacOS, Zope web app server. Languages: C, C++, Python, JavaScript.

Electronic Arts / Maxis: Senior Software Developer: The Sims; Contractor (1997–2000; 2000–2007)

Core developer of The Sims, character animation, user interface, game design, content development tools, porting The Sims Online headless server to Linux, open sourcing and porting SimCity to OLPC. Platform: Windows, MacOS, Linux. Languages: C++, MaxScript, SimAntics, Python.

Interval Research Corporation: Research Programmer: Multimedia, Signal Processing, Visual Programming (1996–1997)

Kaleida Labs: Senior Software Developer: Distributed ScriptX Multimedia Programming Language (1993–1996)

Carnegie Mellon University Computer Science Department: Research Programmer: Garnet Lisp GUI (1992–1993)

Turing Institute: Senior Software Developer: HyperLook interactive UI development environment for NeWS (1992)

DUX Software: Chief Architect and Developer: Unix SimCity port to HyperLook/NeWS/OpenWindows/Solaris, TCL/Tk/X11/Unix, and SimCityNet Multiplayer design, UI, and network programming (1991–1996)

Sun Microsystems, SunSoft: Intern: Forth, CADroid; Member Technical Staff: The NeWS Toolkit (1987; 1990–1991)

UniPress Software: Software Developer: UniPress Emacs, NeWS display driver, pie menus, tabbed windows (1988)

University of Maryland Computer Science Department, Human Computer Interaction Lab: Research Programmer: Scripting, Networking, User Interfaces, Pie Menus, HyperTIES hypermedia browser and authoring tools (1985–1990)

Experience

Scripting and Integration:

Fluent in a wide range of programming languages and technologies for networking and integrating scripting languages with native code, libraries, components, and other languages.

Programming Languages:

C, C++, TypeScript, JavaScript, Objective C, C#, Python, PHP, Lua, Java, Lisp, ScriptX, TCL/Tk, PostScript, FORTH, assembly, GPU shaders.

Integration Technologies:

AJAX, REST, JSON, XML, SWIG, OLE/COM/ActiveX, XP/COM, PInvoke, JNI, extending web browsers, Unity3D, JavaScript, Python, Lua, Lisp, FORTH, Blender, 3D Studio Max, MaxScript, Adobe AfterEffects.

Web Browser APIs:

NPAPI. Internet Explorer ActiveX/OLE/COM. Mozilla XULRunner, XP/COM. PhoneGap/Cordova. iOS UIWebView, WkWebView, JavaScriptCore. Android WebView. Chrome, V8, Chromium Embedded Framework. jQuery. Angular. React. Svelte.

SimCity and The Sims Franchises:

Ported SimCity (Classic) to numerous platforms, relicensed it as free open source code, and led the open source Micropolis project to redevelop and extend it to support constructionist education. Core member of Will Wright’s original Sims team, helped design and implement many aspects of the game, tools and modding community. Helped port The Sims to Linux for The Sims Online headless server. EA made $5 billion from The Sims franchise.

Ported SimCity to Unix:

HyperLook/NeWS/PostScript for OpenWindows on Solaris, TCL/Tk for X11 on Unix and Linux. Open sourced SimCity for the OLPC.

Micropolis Project:

Produced and relicensed the free open source educational SimCity that was shipped with the OLPC, led the Micropolis project to redevelop and extend it to support Seymour Papert’s and Alan Kay’s ideas about Constructionist Education, and developed a PyGTK based desktop interface, as well as a Python/TurboGears based web server and an OpenLaszlo/Flash based client communicating via the AMF protocol.

The Sims:

Character animation, graphics, user interface, game design, 3dsmax extensions, C++, MaxScript, content pipeline, visual programming tools, in-house and end-user content creation tools, modder community development.

Virtual and Augmented Reality:

JauntVR: Designed and developed an integrated JavaScript programming system for Unity3D across multiple platforms (iOS, Android, macOS, Windows), for dynamically scripting, debugging and distributing interactive 360° panoramic video VR applications with live scriptable animations, 3D objects, kinetic typography, web views, playback controls, VR user interfaces and interactive simulations.

Pantomime: Designed and implemented all parts of Pantomime, a mobile networked AR/VR system for iOS, Android, Mac and Windows, using Unity3D, JSON and Unity networking.

Levity, Interval Research: Extended and live-coded applications with the “Body Electric” aka “Bounce” visual programming language that Chuck Blanchard originally developed at VPL Research, for controlling VR sensing and rendering hardware and live-programming and debugging interactive 3D VR simulations. Developed multimedia 2½-D live video overlay and character simulation applications, and worked on the visual programming language user interface and internals, including Macromedia Shockwave Player (MMP) and COM (MOA) plug-in component and structured data type integration using ATL on MacOS.

User Interface Architecture and Design:

Pie menus. Tabbed frames. Window management. Direct manipulation. GUI toolkits, widgets and components. Hypermedia browsers, authoring tools, markup, formatting, interactive graphics, scripting and plug-in components. Visual programming languages. Live coding and debugging environments. HyperLook SimCity UI design. Networked multiplayer SimCity X11/TCL/Tk UI design. Open source constructionist educational SimCity for OLPC. The Sims character animation, pie menus, dialogs, architectural editing, content creation and visual programming tools. Visual programming language scripting, extension and design. Speech synthesis and recognition. Robotic teleoperation. Accessibility. Pantomime AR and VR UI design. Applying Unity3D UGUI to AR and VR. GearVR SDK. Google Cardboard SDK.

Diabetes Prevention, Nutrition and Health Care:

Turnaround Health: Designed and implemented all parts of “Project Alive-PD”, aka “Turnaround Health” diabetes prevention system. PHP nutrition and physical activity analysis system. OpenLaszlo/Flash questionnaire client and trade-off slider GUIs. jQuery questionnaire client GUI. Python/TurboGears web application server. Genshi templates. Mailgun email delivery. Voxeo CCXML/VXML interactive voice response telephone coaching system. Cordova/JavaScript iOS and Android mobile app. System deployment, configuration and administration. Clinical trials, randomization and followup questionnaires for research.

Education

Graduated from the University of Maryland, May 1990. BS, Computer Science.

  • Member of Computer Science Department Staff: Unix system installation and administration, backups and restores, NFS server administration, system and network programming, mailing list and ftp site administration, ARPANET liaison.
  • Independent study in the Parallel Processing Lab: porting Z-80 FIG-FORTH and implementing network hardware support for the ZMOB parallel processor.
  • Independent study in Don Perlis’s Robotics Project: programming robotic navigation simulation on a Symbolics Lisp Machine.
  • Independent study in Mark Weiser’s Heterogeneous Systems Group, researching and studying user interfaces, pie menus, scripting, networking, ubiquitous computing, heterogeneous system integration, using DEC VAXen with BSD Unix, Sun Workstations with SunOS, NFS, SunView, X10, X11, NeWS, and Xerox Workstations with Star, ViewPoint, XDE, Interlisp.
  • Research programmer in Ben Shneiderman’s Human Computer Interaction Lab: researching and developing user interface techniques, pie menus, HyperTIES hypermedia browser, NeWS PostScript hypermedia formatter, EMACS hypermedia authoring tool, embedded FORTH scripting engine, window management, empirical performance testing, visual programming, object oriented toolkit architecture, writing papers, recording videos, presenting at conferences, trade shows, and giving talks and demos to visitors and colleagues.

Awards

SimCity for X11:

Awarded Best Product of 1992 by Unix World (January 1993 issue).

The Sims:

Won three of the top Interactive Achievement Awards from the Academy of Interactive Arts and Sciences at the 2000 Electronic Entertainment Expo:

  • Outstanding Achievement in Game Design
  • Outstanding Achievement in Gameplay Engineering
  • Game of the Year 2000

Computer Gaming World awards:

  • Named 2001 Game of the Year (April 2001 issue)
  • Introduced into the Hall of Fame (November 2003 issue)

The Sims was included in the Museum of Modern Art’s collection of video games in 2012, and was inducted into the 2016 World Video Game Hall of Fame. Since its release in February 2000, The Sims franchise has sold over 200 million units worldwide, by appealing to girls equally as to boys, and enabling players to model their own families and friends, tell their own stories, and create their own content.

  • “The Sims not only lived up to the hype, but it also proved all the skeptics and critics wrong.” -GameSpot E3 1999 Review
  • “And this is the elegance of Will Wright’s designs: Taking the abstract concept of functional architecture and resolving it into a game with so many open-ended options and parameters that it will no doubt redefine the paragons of game design.” -GameSpot

References

References available upon request.

Chaim Gingold described my work with SimCity and The Sims in his PhD dissertation on Play Design:

--

--

Don Hopkins
Don Hopkins

Written by Don Hopkins

User interface flower child. Pie menus, PizzaTool, SimCity, The Sims, Visual Programming, VR, AR, Unity3D / JavaScript bridge.

No responses yet