Carson Gross /// Senior Software Engineer
Overview
I am a software developer comfortable with both front-end & back-end development. I am interested in a flexible, remote position that allows me to work on challenging problems with a solid, senior software team in a business that clearly adds societal value.
My primary technical interests are programming languages and web development, particularly hypermedia, but I’m comfortable working in most areas of enterprise systems.
Work Experience
2020 - Present |
Instructor - Montana State University CS Dept.
|
2020 - Present |
Principal - Big Sky Software |
April 2023 - June 2030 |
Fellow - Github Open Source Accelerator |
2012 - 2021 |
CTO & Co-Founder - LeadDyno
|
2006 - 2012 |
Senior Staff Engineer - Guidewire Software
|
Open Source Projects
htmx |
A popular alternative front end library that uses AJAX and hypermedia to enable more sophisticated user interfaces at a fraction of the complexity of Single Page Application (SPA) libraries like React |
_hyperscript |
An event-oriented scripting language for web development. Built to complement htmx, and inspired by HyperTalk, the scripting language for HyperCard |
idiomorph |
A DOM-morphing algorithm akin to Morphdom, that uses id sets to achieve more stable DOM-morphing behavior with fewer IDs in a document. Now used by 37Signals as a core feature of Hotwire, the standard front end library for Ruby on Rails. |
missing.css |
A CSS framework that minimizes DOM intervention needed to achieve good styling and layout, with an emphasis on ARIA-driven styling, sponsored by Big Sky Software |
intercooler.js |
The predecessor to htmx |
jschema |
A schema mechanism for JSON |
gosu |
A byte-code compiled scripting language for the JVM |
Skills
I am comfortable with the following:
- Web & Cloud Development
-
I founded LeadDyno, a SaaS product, built in Ruby on Rails and deployed on AWS, with the usual back-end components: MySQL/PostGreSQL, Redis, S3, etc. I have created and maintain two alternative front end libraries, htmx and its predecessor intercooler.js. I also created an alternative front end scripting language, hyperscript
- SQL & Databases
-
I have worked with databases for 20+ years, and I teach the database class at MSU
- Java & The JVM
-
I worked on a JVM programming languages and teach the compilers class at MSU, which targets JVM Bytecode
- Testing
-
I have long experience with testing, although I have a perhaps idiosyncratic take on the topic.
- Software Patterns
-
I teach the software patterns class at MSU, including development methodologies such as agile, continuous integration, testing, etc.
- Programming Languages
-
I have built multiple compilers and studied programming languages in graduate school.
Book
- Hypermedia Systems
-
A self-published book co-authored with Adam Stepinski & Deniz Akşimşek that explores how to build distributed software on top of a hypermedia system like the web. The book covers the conceptual ideas of hypermedia, with a focus on the web, then shows how to use htmx and Hyperview to build Hypermedia-Driven Applications
Selected Essays
-
HATEOAS — An Alternative Explanation - https://htmx.org/essays/hateoas/
-
The Hypermedia-Driven Application Architecture - https://htmx.org/essays/hypermedia-driven-applications/
-
Locality of Behaviour (LoB) - https://htmx.org/essays/locality-of-behaviour/
-
HATEOAS is for Humans - https://intercoolerjs.org/2016/05/08/hatoeas-is-for-humans.html
-
The API Churn/Security Trade-off - https://intercoolerjs.org/2016/02/17/api-churn-vs-security.html
-
The Grug Brained Developer - https://grugbrain.dev/
Selected Interviews & Talks
-
Return To Hypermedia: Solving Javascript Fatigue Using Fundamental Web Architecture - https://youtu.be/LRrrxQXWdhI
-
htmx - Clean, Dynamic HTML Pages on Talk Python - https://youtu.be/4wjqsPtj2QY
-
Simple, Fast Frontends With htmx on PyCharm by JetBrains - https://youtu.be/cBfz4W_KvEI
-
htmx: Writing JavaScript to Avoid Writing JavaScript on JetbrainsTV - https://youtu.be/u2rjnLJ1M98
-
REST, HATEOAS & Django at DjangoCon US 2021 - https://youtu.be/u2rjnLJ1M98
Academic Record
2004–2005 |
Stanford University, Masters of Science in Computer Science. Palo Alto, California |
1994–1999 |
University of California, Berkeley, Bachelor of Science in Industrial Engineering. Berkeley, California |
Personal Interests
skiing, baseball, technology, economics, philosophy, comedy.