conference logo
Gulaschprogrammiernacht 21

Playlist "Gulaschprogrammiernacht 21"

GO GO GOLEMS - COMPUTERS SHOULD COMPUTE

Manuel Odendahl

[GO GO GOLEMS](https://github.com/go-go-golems) is a secret organization of half-human half-machine beings working to make the world a better place, one piece of software at a time.

Discover with us a library of wonders, filled with open-source software, command-line interfaces, data, interoperability, large-language-model powered development, declarative applications, monads, abstractions. Learn about designing with vision, without compromises, with clarity of intent, so that we can help computers do:
- what they want to do: compute
- what we want them to do: build a better world

This talk is about the [GO GO GOLEMS](https://github.com/go-go-golems) ecosystem, which consists of:
- [glazed](https://github.com/go-go-golems/glazed), a library that helps application expose their rich internal data as well as make their functionality composable
- [parka](https://github.com/go-go-golems/parka) and flour, libraries that turn glazed applications into APIs and event-driven services
- [sqleton](https://github.com/go-go-golems/sqleton), [geppetto](https://github.com/go-go-golems/geppetto), [escuse-me](https://github.com/go-go-golems/escuse-me) and many others, concrete applications built on top glazed, parka and flour
- many more utilities that were quickly iterated on...

The entire ecosystem is built around a few key concepts:
- data should be exposed
- computation should be composed
- software should be deployed

While the talk will focus on some of the technical aspects of the GO GO GOLEMS software, the main topic of the talk is how to [design software with a vision](https://the.scapegoat.dev/i-want-my-software-to-be-visionary-the-go-go-golems-ecosystem/) and more specifically how to leverage [large language models to write better software](https://the.scapegoat.dev/llms-will-fundamentally-change-software-engineering/).

I will cover:
- how I design, brainstorm, iterate and refine my vision and design
- how learning, note-taking, writing and drawing shapes my software
- why large language models are a powerful tool for building small software
- how hard thinking, ruthless abstraction and writing lots of mediocre code go hand in hand
- why we should build tools to make computers compute, so that they rightfully become tools for everybody and not just the few
- why software is art, science, engineering, magic and craftsmanship combined