Skip to content

preslavrachev/generative-art-in-go

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This is the companion source code repository to my book, "Generative Art in Go." The book is available as an "early access" release on both Gumroad and Leanpub. While most of the content and surrounding source code are already available, the book is subject to further updates based on readers' feedback. All future updates will be availalble to all exisiting buyers free of charge.

Demo

To see what you will be able to do by the end of the book, make sure to check out this experimental Web application I built a couple of weeks ago. It uses WebAssembly to generate beatiful imagery in the browser. And that, using Go code!

About the Book

Generative Art in Go is a short eBook intended to introduce novice and experienced programmers to algorithmic art, and hopefully, get non-programmers interested in the Go programming language. Unlike popular choices such as Processing, NodeBox, openFrameworks, etc., I picked Go for two simple reasons:

  • Go's syntax is easy enough that virtually anyone can learn it quickly.
  • The language is far more versatile than what most programmers use it for.

Generative art is a unique form of artistic expression, building bridges between computer programming, randomness, and visual aesthetics. It has kept my imagination for over a decade. While I have never been particularly skilled at drawing, I have always been amazed by what one could achieve with a couple of lines of code.

This book will introduce readers to graphics programming in the Go programming language context through a series of concise examples. It will also guide them in implementing their version of one of my favorite generative art sketches. As a bonus, readers will learn how to turn their command-line sketches into interactive Web applications, using WebAssembly and Web technology's latest standards.

Releases

No releases published

Packages

No packages published