Bruce Conrad
Orangeville, UT 84537 · (801) 831-4410 · bconrad@acm.org
Summary
Industry — Forty-nine years in software design, development and deployment, including one year programming real time microcomputer systems.
Teaching — Sixteen semesters of university level computing science courses. Also, adult continuing education classes in computer literacy and applications.
Research — Nearly continuous work in the areas of Internet programming, object-oriented programming languages and systems, computer assisted instruction, pattern matching, microcomputer operating systems, bioinformatics, programming languages, and natural language processing, over a period of forty-seven years. Bibliography
Education — B.S. 1974, M.S. 1981, both in Computer Science. Work towards the Ph.D. (completed all but dissertation defense 1995)
Miscellaneous — Personal information, honors, and references.
Web Services Engineer, Application Engineering, Office of Information Technology, Brigham Young University, Provo, UT. Jan 2021–present
Initiated a hiring pipeline giving FSY counsellors access to training; earned Mendix Rapid Developer Certification; earned Certified Scrum Developer®; C framework and AIM
Web Software Engineer, Office of the CIO, Brigham Young University, Provo, UT. July 2016–Dec 2020
Developing programming environment for the Kinetic Rule Language (KRL), using node.js, HTML, CSS, JQuery.
Web Developer, University Information Technology, The University of Utah, Salt Lake City, UT. Apr 2015–July 2016
Developing state of the art web based applications using Java servlets, JSP, JSTL, XML, SQL, CSS, HTML.
Principal Software Engineer, Campus Pipeline, Inc. / SCT / SunGard SCT / SunGard Higher Education / Datatel+SGHE / Ellucian, Salt Lake City, UT. Nov 99–Feb 2013
Developing state of the art web based applications using Java servlets, JSP, JSTL, XML, SQL, CSS, HTML. CI/CD pipeline and Jira.
Programmer and Contractor, Sanbachs, LC. Orem, UT. Apr 97–Nov 99
Publishing databases on the world-wide web. Seventeen months designing and developing web-enabled, multi-tiered client-server software in Java (including Java servlets) for Novell, Inc. Two months at SwitchSoft Systems, Inc. working with Java servlets and Oracle databases.
Vice President of Technology, Internet Data Services, Inc. Orem, UT. Nov 95–Mar 97
Developed internet database technology, primarily server-side, in C, running on Windows 95, Windows NT, and UNIX. Was involved in client-side, using HTML and JavaScript. Deployed several applications. Founded and crashed a dot-com (indase.com) before it was fashionable to do so.
Senior Scientist, Advanced Technology Group, WordPerfect Corp. / Novell, Orem, UT. Aug 92–Nov 95
Experiments in NetWare-based collaboration software and hand-held device software.
Senior Developer, WordPerfect Corp. Orem, UT. Aug 88–Aug 92
Participated in development of a DOS product in assembly language and C. Managed the development group for three of those years. Created a complete object-oriented programming environment.
Applications programmer, Total Computers, Ltd. Lethbridge, Alberta, Canada. 1982–4
Programming on the Alpha Micro.
Analytical Engineer, Hamilton Test Systems Inc. Tucson, Arizona. 1981
Programming on the Z80, IBM 370/VS, and VAX/VMS.
Lab Technician, University of Arizona, Computer Science Department. Jun 80–May 81
Programming on the PDP-11/70 under UNIX.
Software Engineer, CAP SOGETI Logiciel, Montrouge, France. Nov 74–Jul 79
Responsible for a teleprocessing transaction monitor. Programming on the IBM 370.
Adjunct Professor, Brigham Young University, Computer Science Department. Dec 2016–May 2017; Sep 2018–Dec 2021
Taught CS201R "Introduction to Web Programming" Winter 2017; CS452 "Database Modeling Concepts" Fall 2018, Spring 2019, Fall 2019, Spring 2020, Fall 2020, Spring 2021, Fall 2021.
Assistant Professor, University of Lethbridge, Department of Mathematical Sciences. Aug 84–Jul 88
Undergraduate computing science courses, including compiler courses. Organized and ran an undergraduate conference, "People and Computers", with Dr. Alan C. Ashton giving the keynote address, Spring 1988.
Sessional Instructor, University of Lethbridge, Department of Mathematical Sciences. Jan 83–Jun 83
Two semester-length introductory computing science courses.
Occasional Instructor, Lethbridge Community College, Continuing Education. Oct 82–Jul 84
Adult non-credit and credit courses in computer literacy and applications.
Graduate Teaching Assistant, University of Arizona, Computer Science Department. Jan 80–May 80
One semester-length introductory computing science course.
Teaching Aide, Brigham Young University, Computer Science Department. Jan 73–Aug 74
Taught lab sessions for one introductory course and two data structures courses.
2016–present
Persistent compute objects, the Internet of Things, and Identity. [23–41] (Supported by the Office of the CIO at Brigham Young University through Dec 2020).
1995–present
Live databases on the world-wide web [sanbachs.NET, DataPerfect Users Group].
1988–1995
Object-oriented programming languages, environments, and systems [15–20] (Supported by WordPerfect Corporation).
1986–1988
Computer Assisted Instruction, theory [11] and techniques [12,13] (Supported by the Univerity of Lethbridge).
1985–1988
Work with spreadsheet programming languages [10] (Supported by the Univerity of Lethbridge).
1979–1988
Work with Apple //e microcomputer, including terminal emulation, cross assembly (from PDP-11 under UNIX), operating system enhancements [7,8], turtle graphics [6], courseware, animation.
1977–1986
Work on microcomputer programs to assist in recombinant DNA research [3,4,5,9] (orcid:0009-0000-0495-8011) (h-index: 4) (Supported by the University of Arizona 8/81–1/82.)
1981
While employed at Hamilton Test Systems, developed on-line debugging software for the proprietary Autosense processor (16 bit serial), and implemented the UNIX ed editor in TECO.
1975–1978
While employed at CAP SOGETI Logiciel, developed on-line debugging software [2] and remote program maintenance facilities for IBM 370 under OS/VS1.
1973–1974
Natural language processing algorithms [0, 1]. (Supported by BYU Language Research Center.)
Matriculation W. R. Myers High School, Taber, Alberta, Canada.
Graduated with honours, June 1968. Class valedictorian.
B.S. Computer Science, Brigham Young University, Provo, Utah.
Degree awarded, cum laude, August 1974.
M.S. Computer Science, University of Arizona, Tucson, Arizona.
Degree awarded, December 1981.
Work towards Ph.D. Computer Science, University of Calgary. [14,20]
January 1986–June 1995. All but dissertation defense.
Citizenship
U.S. citizen, born in Canada.
Bilingual
English/French.
Member
Association for Computing Machinery, 1980–2013, 2015–present.
Teaching Leadership in Teaching and Mentoring group, BYU, Oct 2017–present.
Sovrin IoT Task Force, Dec 2019–Dec 2022; DIF IoT Special Interest Group, Jan 2023–present.
COVID-19 Credential Initiative, Apr 2020–Dec 2022.
Honors
Award winning performer in the Valley Center Playhouse theater, 1994–2007.
Program committee member for tenth OOPSLA conference in 1995.
Who's Who in Southern Alberta 1988–1989, Historical Research Centre, Lethbridge, Alberta.
Graduate Tuition Scholarship, University of Arizona, 1979.
Karl G. Maeser Scholarship, Brigham Young University, 1968, 1972.
High School Valedictorian, 1968.
Governor General's Medal awarded, Taber Times, November 18, 1965
References
Kelly Flanagan (Dean, Scott M. Smith College of Engineering and Technology, UVU)
Utah Valley University · Orem, UT 84058 · (801) 863-4848 · kelly.flanagan@uvu.edu
Thom Boyer (Software Engineer, Adobe)
1878 Spring Oaks Drive · Springville, UT 84663 · (801) 376-0508 · thom@xmission.com
Sam McKnight (Software Engineer, BYU OIT)
Provo, UT · (801) 362-1126 · sam.mcknight@byu.edu
[0] "A Word Frequency Count of Mormon English", with Mark D. Weiner, Conference on the Language of the Mormons, Brigham Young University Language Research Center, May 31, 1973.
[1] "Offline Dictionary Building Computer Programs", Linguistics Symposium, Reports on Research and Development in Automatic Language Processing, Brigham Young University Language Research Center, April 9, 1974.
[2] "Outils de mise au point sous MULTIFASTER", Le Moniteur #59, CAP SOGETI Logiciel, Montrouge, France, 1977.
[3] "Microcomputer programs for DNA sequence analysis" [PDF], with Dr. David W. Mount, Nucleic Acid Research, Volume 10 Number 1, pp 31–38, IRL Press Limited, London, 1982. https://doi.org/10.1093/nar/10.1.31
[4] "Microcomputer programs for back translation of proteins to DNA sequences and analysis of ambiguous DNA sequences" [PDF], with Dr. David W. Mount, Nucleic Acid Research, Volume 12 Number 1, pp 819–823, IRL Press Limited, London, 1984. https://doi.org/10.1093/nar/12.1part2.819
[5] "Microcomputer programs for graphic analysis of nucleic acid and protein sequences" [PDF], with Dr. David W. Mount, Nucleic Acid Research, Volume 12 Number 1, pp 811–817, IRL Press Limited, London, 1984. https://doi.org/10.1093/nar/12.1part2.811
[6] "Introduction to LOGO through Turtle Graphics", unpublished; used in "Computers for Teachers" class at LCC, 1984.
[7] "Amper Catalog", Nibble, February 1984.
[8] "Relocatable Disassembler", submitted to Nibble.
[9] "Improved programs for DNA and protein sequence analysis on the IBM personal computer and other standard computer systems" [PDF], with Dr. David W. Mount, Nucleic Acid Research, Volume 14 Number 1, pp 443–454, IRL Press Limited, London, 1986. https://doi.org/10.1093/nar/14.1.443
[10] "A Spreadsheet Programming Environment", with Charles Jorgenson, Proceedings, CIPS Edmonton '86, Oct. 21–23, 1986.
[11] "Conversation Theory", submitted to the International Journal of Man-Machine Studies.
[12] "Computer Tools in a Linear Algebra Course — A Case Study", with Rex Forsyth and Wolfgang Holzmann, Proceedings, International Conference on Computer Assisted Learning in Post-Secondary Education, Calgary, May 5–7, 1987.
[13] "Video Distribution Network", with Robert Lewko and Dan Paulson, Proceedings, International Conference on Computer Assisted Learning in Post-Secondary Education, Calgary, May 5–7, 1987.
[14] "Neural Nets and Machine Learning Workshop", with Deborah Leishman. Computer Science Technical Report 1987-272-20, Calgary, July 1, 1987.
[15] "Changing the Instance Structure of a Class", Internal Report, WordPerfect Corporation (November 1988).
[16] "Anonymous Methods in Smalltalk", Internal Report, WordPerfect Corporation (November 1990).
[17] "Static Type Inferencing for a Dynamically Typed Language", In Types, Inheritance and Assignments: A collection of position papers from the ECOOP'91 workshop W5. Palsberg, J. & Schwartzbach, M.I. eds. Technical Report DAIMI PB-357, Computer Science Department, Aarhus University, Denmark (June 1991).
[18] "Insecurities in Smalltalk Programming", with A. Lewis Bastian. Technology of Object-Oriented Languages and Systems: TOOLS 5, Korson, T., Vaishnavi, V. & Meyer, B., eds. Prentice-Hall, 195–201, 1991.
[19] "Understanding Object Model Concepts", with Stephen W. Clyde, David W. Embley and Scott N. Woodfield. Workshop #19, B. Kurtz ed. OOPSLA '93, 1993.
[20] Design of an Object-Oriented Database Language: Bridging the gap between Organizational Requirements and the Technical Implementation of an Object-Oriented Information System. A 200 page dissertation presented to the Department of Computer Science at the University of Calgary (June 1995). [Kindle version]
[21] "Trouble with Technology", Frontiers, College of Physical and Mathematical Sciences, Brigham Young University, Fall 2013, p. 7.
[22] "Word Frequency Count for Nouvo Testaman Morisien", https://sanbachs.net/bruce/ntkm/, May 2015.
[23] "Pico Labs", with Phillip J. Windley, 23rd Internet Identity Workshop, Mountain View, October 2016.
[24] "Picos Everywhere", 24th Internet Identity Workshop, Mountain View, May 2017.
[25] "The promise of picos", with Braden Hitchcock, University API Winter Workshop 2018, Provo Utah, February 2018, p. 20.
[26] "Manifold: Give Your Things an Identifier", 27th Internet Identity Workshop, Mountain View, October 2018.
[27] "Picos live demo", University API Winter Workshop 2019, Provo Utah, February 2019, pp. 53–56.
[28] "DIDs for Everyday People", 29th Internet Identity Workshop [PDF], pp. 71–72, Mountain View, October 2019.
[29] "Pico Agent in a Tab One Click to Identify?", 29th Internet Identity Workshop [PDF], pp. 157–158, Mountain View, October 2019.
[30] "Giving my Things a Home Page", University API Winter Workshop 2020, pp. 23–24, Provo Utah, January 2020.
[31] "An Aries agent in a browser tab", 30th Internet Identity Workshop [PDF], Session 22C, p. 304. On-line, April 2020.
[32] "Appendix 1 — Digital Twin", in the white paper "Self-Sovereign Identity and IoT" [PDF], October 2020.
[33] "ACA-Pico: make your own Aries Cloud Agent", 31st Internet Identity Workshop [PDF], Session 22L, p. 289, On-line, October 2020.
[34] "Credential-Based Login To A Pico-Based Application", 32nd Internet Identity Workshop [PDF], Session 11P, pp. 139–149, On-line, April 2021.
[35] "Outlining a Self-Sovereign Approach to Device Onboarding", with Damian Glover, Richard Allain, Michael Shea, and Michele Nati, On-line, 19 July 2021.
[36] "The Internet and the World Wide Web" [slide deck], Seminar presented to Teaching and Leadership group at BYU, Provo, UT, August 9, 2021.
[37] "How to make SSI systems that inspire people to act rather than be acted upon?", 33rd Internet Identity Workshop [PDF], Session 24L, pp. 299–313, On-line, October 2021.
[38] "User agent, given a pico" [slide deck], 35th Internet Identity Workshop [PDF], Session 6I, p. 109, Mountain View, November 2022.
[39] "Philosophical Foundations of Identity", 37th Internet Identity Workshop [PDF], Session 6I, pp. 113–115, Mountain View, October 2023.
[40] "Embodiment and our Identity", 38th Internet Identity Workshop [PDF], Session 9I, pp. 159–160 Mountain View, April 2024.
[41] "Solid and Picos" [slide deck], Podcast for Solid World, June 5, 2024.
Last updated: October 1, 2024