Over 30 years of experience working with diverse teams of researchers, teachers, and students developing deeply interactive software and hardware for all kinds of learners. Extensive full-stack experience developing interactive collaborative web applications as well as high-performance web-based computational simulations and visualizations. Helped found the Concord Consortium, an educational non-profit focused on math and science education. As Director of Technology led the development of re-usable open source architectures/frameworks for education and managed and hired a team of programmers. Enthusiastic public speaker deeply committed to helping teams of people make, teach, and share what matters to them.
What I can do for you.
- Help your team design, create, test, monitor, extend, and maintain critical web infrastructure and applications.
- Create visualizations and computational models to support inquiry and effective communication within your company and with your collaborators and customers.
- Collaboratively imagine and create new products to support your core business needs and help build towards your vision for the future.
- Hire, mentor, and manage programmers and technical consultants.
- Review contracts and create and manage licensing strategies.
What it will be like working with me.
- You'll look forward to talking with me because I'm genuinely interested in you and what you are working on, what's difficult, and what you just got working.
- When you are having a technical or process problem you'll feel no hesitation to check in with me.
- You'll appreciate the practical and innovative implementations I create that solve problems.
- You will be impressed and inspired by how fast I learn new technology in order to get critical features working.
Art & Logic is my consulting business for doing web, desktop, and mobile application development. Client work has included:
- Interactive data visualizations using D3.js.
- Interactive computational modeling and visualization.
- Real-time collaboration between participants.
- Java Swing application development, computational modeling, UI, and graphics programming.
- Application development in C# using Xamrin.Forms running on Windows, MacOS, iOS, and Android platforms.
See the Art & Logic web page for more details: stepheneb.github.io/artandlogic.html
Ruby on Rails developer working on commercial applications for Thoughbot clients. Application integration with external services such as Stripe and MixPanel.
Founding member of the Concord Consortium in 1995 with Bob Tinker, internationally recognized as a pioneer in developing and adapting technology for constructivist education, create the Concord Consortium, a 501(c)(3) non-profit educational research and development organization focusing on math and science education.
Directed technology development for the Concord Consortium. Responsibilities included hiring, budgeting, technology acquisition and development, developing licensing strategies, reviewing contracts, assisting with proposal development, and management of software and hardware development.
In November 2011 the Google Foundation awarded Concord Consortium a grant to develop an HTML5 version of Molecular Workbench, an award-winning Java-based physics simulation. Extended the initial scope and created a more general framework for authoring and deploying interactives integrating simulations running in multiple modeling engines, data collection from sensors and probes, real-time graphing, and data tables. Results statements: organizations and interactives.
Lab Interactives are sharable, embeddable, and authorable components defined in JSON that wrap a model with additional inquiry-oriented user interface components such as buttons, checkboxes, sliders, graphs etc.
The Enhancing Engineering Education with Computational Thinking, (DRL- 0918449); 2009-2013; focuses on studying how computational thinking, primarily through numerical simulation and computer-aided design tools, can enhance engineering education in high schools (see http://energy.concord.org for more information). Project developed Energy2D: a computational simulation modeling conduction, convection, and radiation and Energy3D: an application for designing buildings using a WYSIWYG 3D user interface.
The GENIQUEST (GENomics Inquiry through QuUantitative Trait Loci Exploration with SAIL Technology): Bringing STEM Data to High School Classrooms (DRL-0733264); 2007-2010; centered on the dragons and related organisms that previously served as genetic models in previous Concord Consortium projects. Students were further supported in seeking out gene items through the bioinformatics technique of Quantitative Trait Loci (QTL) analysis. Results demonstrated the curriculum and software increased student understanding of concepts such as genetic recombination and inbred strains.
The Global Laboratory Project. Directed the technical and telecommunication efforts of the project. Responsible for setting technical directions, hiring, budgets, management, and project reports. The project supported 150 middle schools and high schools in 22 countries collaborating on investigations into local and global environmental change, sharing text, data, graphs, instrumentation for measuring and monitoring the environment.
Adapted instrumentation for measuring various environmental characteristics including total-column-ozone, ground-level ozone, soil moisture, air flow, relative humidity, temperature, and visible light. Developed stand-alone data-logging systems probeware interfaces, and may types of specific probes.
Software Technical Skills
- Extensive work with Ruby, JRuby, Ruby Gems, and Rails. Developed several large Rails applications (see: github.com/concord-consortium/rigse).
- Author of Jnlp Ruby Gem: rubygems.org/gems/jnlp; contributed commits to over 30 external Ruby Gems.
- Regular use of RVM, Bundler, HAML, Capistrano, Rake, Compass, Sass, Devise, and behavior-driven development and testing with Capaybara, Cucumber, RSpec.
- Implemented Gabriele Cirulli's 2048 game in Elm: stepheneb.github.io/elm-2048/ The code for the Elm implementation: github.com/stepheneb/elm-2048.
- Extended a simple autosuggest dropdown component to support keyboard interactions with the search results. Implemented a zipper-list with focus to support this.
- Extended Elm Parser to extract data from text files.
- Integrated images managed and named with Webpack and Parcel into Elm application.
- Extensive experience using HTML5 and CSS. Created dynamic visualizations using HTML5 Canvas and SVG.
- Developed an integration of Mocha and PhantomJS to enable basic functional testing of the Lab framework on a developers computer as well as further tests that ran in multiple virtual OS/browser setups on the saucelabs.com service.
- 3-D visualization for learning about seasons: stepheneb.github.io/seasons/index.html. Used scenejs.organ open-source WebGL-based 3D visualization engine.
- Video integrated with digital map: stepheneb.github.io/simple-orange-map.
- Scripted FFmpeg to transcode original video into multiple formats, sizes and bitrates for web delivery.
- Subtitling videos using WebVTT (Web Video Text Tracks Format). Example, Spanish subtitles for detroit interviews: stepheneb.github.io/detroit-interviews
- Moderate experience with PHP and Python.
- Moderate experience with Java and C#. Less experience with C++.
- Recently implemented networking application in C# and Xamarin.Forms running on multiple desktop and mobile platforms to control a 3D visualization using Unity.
- Built multiple branches of the open-source Java codebase including the MLVM branch that explores extending Java to improve implementation and performance of dynanic languages.
- Debugged a USB driver written in C++.
- Debugged and extended a large Pascal program for a video-based interactive art installation.
- Moderate experience with a number of IDEs.
- Experienced git and github user, additional experience with Subversion, Mercurial, and CVS.
- Setup and administered Moodle servers.
- Setup prototype edX server.
- Experience using both Moodle and Blackboard as a course instructor.
- Setup, configuring, administering, and customizing Apache, NGINX, Node, and Java Tomcat-based web servers including performance testing with HTTPerf.
- Setup stand-alone and cloud-based Linux servers.
- Experience with security, database setup, design, and administration.
- Created scripts using Chef and Fog to automate the generation of complete functional cloud-based Amazon servers.
- Setup, architected and administered MySQL, PostgreSQLand Redis databases.
Hardware technical skills
- Digital, analog, and sensor electronic design, prototyping, debugging and manufacturing.
- Arduino and Microchip microcontroller development.
Adapted mapping and video code from Cosmopolis: 49 Waltzes for the World project to create map of Orange NJ with clickable hotspots showing video and audio narratives: stepheneb.github.io/simple-orange-map.
Architected and implemented the software for NYC-based video artists Roberta Friedman and Daniel Loewenthal's interactive video installation. Roberta and Dan shot short videos at 147 different items in Detroit. The installation has a map of Detroit displayed on a large touch screen monitor. Tapping the map brings up the closest video in a separate monitor. Visible hotspots on the map representing viewed item slowly fade out over time. Implemented using browser technology and WebVTT for Spanish subtitling.
Thesis Project: Monitoring and Analysis of an Experimental Passive Solar Envelope House.
Implemented a microcomputer-based monitoring system for measuring the performance of an experimental passive solar 'envelope' house built in Leverett MA. Extended a small single board computer (KIM-1) with an analog interface for measuring multiple temperature sensors and solar insolation using a pyranometer installed on the peak of the roof. The single-board computer saved sensor data every 15 minutes on magnetic tape. programs on the Apple II in BASIC and machine language to do solar performance analyses of the house and display and print graphs.
Contributions to external open source projects
For more detail: open-source-contributions.html
Students were in a masters program focused on using computers in education.
Bannasch, S. (2010). Innovator interview: Stephen Bannasch. @Concord, 14(2). The Concord Consortium.
Staudt C., & Bannasch S., Using sensors and models to answer discovery questions. (2006). @Concord, 10 (2). The Concord Consortium.
Tinker R., Bannasch S., Future technology in unexpected places. (2005). @Concord, 9(1). The Concord Consortium.
Bannasch, S. (2002). Probing the unseen world: Advanced probe captures subtle changes in temperature. @Concord, 6(2). The Concord Consortium.
Bannasch, S., & Tinker, R. (2002). Probeware takes a seat in the classroom:Educational impact of probes improves with time and innovation.@Concord, 6(1). The Concord Consortium.
Bannasch, S. (2001). Wireless Computers and Probeware Support a New Science Curriculum: Using iPAQ Pocket PCs to study science fundamentals . @Concord, 5(1). The Concord Consortium.
Bannasch S. (2001). Educational Innovations in Portable Technology. In Tinker R., & Krajcik, J. (eds.), Portable Technologies: Science Learning in Context (121-141). Kluwer Academic/Plenum Publishers
Bannasch, S. (2000). Beam me up, Scottie! Handheld computers extend the range of wireless communication in schools. @Concord, 4(3). The Concord Consortium.
Bannasch, S. (1999). The electronic curator: Using a handheld computer at the Exploratorium. @Concord, 3(3). The Concord Consortium.
Bannasch, S. (1998). Making smarter probes. @Concord, 2(2). The Concord Consortium.
Bannasch S., & Berenfeld B. (1996). Global Lab: From Classroom Labs to Real-World Research Labs. In Tinker B., Microcomputer-based Labs Educational Research and Standards (247-258). Springer-Verlag New York, Inc.