# Jamis Buck

assorted ramblings by Jamis Buck

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Process Roulette

DevFeed: [Process Roulette](<https://devfeed.tech/articles/process-roulette-21100.md>)

Original publisher: [Read original article](<http://weblog.jamisbuck.org/2016/12/23/process-roulette.html>)

Author: Jamis

Published: 2016-12-23T07:00:00Z

Content type: release

Language: en

Sources: [Jamis Buck](<https://devfeed.tech/sources/jamis-buck.md>)

Topics: [Processes](<https://devfeed.tech/topics/processes.md>), [Process](<https://devfeed.tech/topics/process.md>), [virtual machines](<https://devfeed.tech/topics/virtual-machines.md>)

Tags: [developers](<https://devfeed.tech/tags/developers.md>), [install](<https://devfeed.tech/tags/install.md>), [password](<https://devfeed.tech/tags/password.md>), [port](<https://devfeed.tech/tags/port.md>), [process](<https://devfeed.tech/tags/process.md>), [processes](<https://devfeed.tech/tags/processes.md>), [release](<https://devfeed.tech/tags/release.md>), [virtual-machines](<https://devfeed.tech/tags/virtual-machines.md>)

### AI overview

Jamis Buck announces the initial release of Process Roulette, a party game in which players randomly kill processes on their machines until their own player process ends. The article describes the croupier, controller, spectator, and player processes and explains how to run the game using virtual machines.

### Source excerpt

Announcing a party game for developers, but with a few caveats -- 3-minute read

## Weekly Programming Challenges -- Recap

DevFeed: [Weekly Programming Challenges -- Recap](<https://devfeed.tech/articles/weekly-programming-challenges-recap-21098.md>)

Original publisher: [Read original article](<http://weblog.jamisbuck.org/2016/11/19/weekly-programming-challenge-summary.html>)

Author: Jamis

Published: 2016-11-19T07:00:00Z

Content type: article

Language: en

Sources: [Jamis Buck](<https://devfeed.tech/sources/jamis-buck.md>)

Topics: [Programming](<https://devfeed.tech/topics/programming.md>), [Algorithms](<https://devfeed.tech/topics/algorithms.md>), [Crystal](<https://devfeed.tech/topics/crystal.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>), [Ruby](<https://devfeed.tech/topics/ruby.md>)

Tags: [algorithm](<https://devfeed.tech/tags/algorithm.md>), [code](<https://devfeed.tech/tags/code.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [programming](<https://devfeed.tech/tags/programming.md>), [recap](<https://devfeed.tech/tags/recap.md>), [ruby](<https://devfeed.tech/tags/ruby.md>)

### AI overview

A recap of sixteen weekly programming challenges, including the midpoint displacement algorithm challenge and participant implementations in Crystal, JavaScript, and Ruby.

### Source excerpt

Recapping the last 16 weeks of weekly programming challenges -- 2-minute read

## Weekly Programming Challenge #16

DevFeed: [Weekly Programming Challenge #16](<https://devfeed.tech/articles/weekly-programming-challenge-16-21097.md>)

Original publisher: [Read original article](<http://weblog.jamisbuck.org/2016/11/12/weekly-programming-challenge-16.html>)

Author: Jamis

Published: 2016-11-12T07:00:00Z

Content type: tutorial

Language: en

Sources: [Jamis Buck](<https://devfeed.tech/sources/jamis-buck.md>)

Topics: [Algorithm](<https://devfeed.tech/topics/algorithm.md>), [Programming](<https://devfeed.tech/topics/programming.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [algorithm](<https://devfeed.tech/tags/algorithm.md>), [code](<https://devfeed.tech/tags/code.md>), [function](<https://devfeed.tech/tags/function.md>), [image](<https://devfeed.tech/tags/image.md>), [implementation](<https://devfeed.tech/tags/implementation.md>), [pixel](<https://devfeed.tech/tags/pixel.md>), [programming](<https://devfeed.tech/tags/programming.md>)

### AI overview

This weekly programming challenge introduces the midpoint displacement algorithm for generating a fractal line. It explains the recursive midpoint-offset process and defines normal-mode requirements for accepting offset parameters and producing an image.

### Source excerpt

The Midpoint Displacement Algorithm -- 4-minute read

## Weekly Programming Challenge #15

DevFeed: [Weekly Programming Challenge #15](<https://devfeed.tech/articles/weekly-programming-challenge-15-21099.md>)

Original publisher: [Read original article](<http://weblog.jamisbuck.org/2016/11/5/weekly-programming-challenge-15.html>)

Author: Jamis

Published: 2016-11-05T06:00:00Z

Content type: tutorial

Language: en

Sources: [Jamis Buck](<https://devfeed.tech/sources/jamis-buck.md>)

Topics: [Programming](<https://devfeed.tech/topics/programming.md>), [Code](<https://devfeed.tech/topics/code.md>), [Canvas](<https://devfeed.tech/topics/canvas.md>)

Tags: [canvas](<https://devfeed.tech/tags/canvas.md>), [code](<https://devfeed.tech/tags/code.md>), [graphics](<https://devfeed.tech/tags/graphics.md>), [programming](<https://devfeed.tech/tags/programming.md>), [weekly](<https://devfeed.tech/tags/weekly.md>)

### AI overview

A weekly programming challenge asks participants to build a basic turtle graphics system. The article introduces turtle instructions, describes normal and hard modes, and requires producing an image on a canvas, with optional color and line-style operations.

### Source excerpt

Turtle Graphics -- 3-minute read

## Weekly Programming Challenge #14

DevFeed: [Weekly Programming Challenge #14](<https://devfeed.tech/articles/weekly-programming-challenge-14-21095.md>)

Original publisher: [Read original article](<http://weblog.jamisbuck.org/2016/10/29/weekly-programming-challenge-14.html>)

Author: Jamis

Published: 2016-10-29T06:00:00Z

Content type: tutorial

Language: en

Sources: [Jamis Buck](<https://devfeed.tech/sources/jamis-buck.md>)

Topics: [Programming](<https://devfeed.tech/topics/programming.md>), [Code](<https://devfeed.tech/topics/code.md>), [Algorithms](<https://devfeed.tech/topics/algorithms.md>)

Tags: [algorithm](<https://devfeed.tech/tags/algorithm.md>), [graphics](<https://devfeed.tech/tags/graphics.md>), [programming](<https://devfeed.tech/tags/programming.md>)

### AI overview

A weekly programming challenge introduces Lindenmayer systems, or L-systems, as a method for constructing fractals by repeatedly rewriting statements according to grammar-based rules. It also recaps a previous challenge involving Poisson disc sampling, Bridson's algorithm, Delaunay triangulation, and Voronoi diagrams.

### Source excerpt

Lindenmayer Systems -- 4-minute read

## Weekly Programming Challenge #13

DevFeed: [Weekly Programming Challenge #13](<https://devfeed.tech/articles/weekly-programming-challenge-13-21094.md>)

Original publisher: [Read original article](<http://weblog.jamisbuck.org/2016/10/22/weekly-programming-challenge-13.html>)

Author: Jamis

Published: 2016-10-22T06:00:00Z

Content type: tutorial

Language: en

Sources: [Jamis Buck](<https://devfeed.tech/sources/jamis-buck.md>)

Topics: [Programming](<https://devfeed.tech/topics/programming.md>), [Algorithm](<https://devfeed.tech/topics/algorithm.md>), [Ruby](<https://devfeed.tech/topics/ruby.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [algorithm](<https://devfeed.tech/tags/algorithm.md>), [implementation](<https://devfeed.tech/tags/implementation.md>), [programming](<https://devfeed.tech/tags/programming.md>), [ruby](<https://devfeed.tech/tags/ruby.md>)

### AI overview

This programming challenge introduces Poisson disk sampling with Bridson's algorithm, which generates evenly distributed points separated by a specified minimum distance. It also recaps a previous challenge involving family trees and a minimal Ruby implementation that produces pedigree charts as PDFs.

### Source excerpt

Poisson Disk Sampling with Bridson's Algorithm -- 4-minute read

## Weekly Programming Challenge #12

DevFeed: [Weekly Programming Challenge #12](<https://devfeed.tech/articles/weekly-programming-challenge-12-21093.md>)

Original publisher: [Read original article](<http://weblog.jamisbuck.org/2016/10/15/weekly-programming-challenge-12.html>)

Author: Jamis

Published: 2016-10-15T06:00:00Z

Content type: tutorial

Language: en

Sources: [Jamis Buck](<https://devfeed.tech/sources/jamis-buck.md>)

Topics: [Programming](<https://devfeed.tech/topics/programming.md>), [Algorithm](<https://devfeed.tech/topics/algorithm.md>), [Ruby](<https://devfeed.tech/topics/ruby.md>), [Elm](<https://devfeed.tech/topics/elm.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>)

Tags: [algorithm](<https://devfeed.tech/tags/algorithm.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [programming](<https://devfeed.tech/tags/programming.md>), [ruby](<https://devfeed.tech/tags/ruby.md>), [weekly](<https://devfeed.tech/tags/weekly.md>)

### AI overview

A weekly programming challenge asks participants to construct and render a traditional left-to-right pedigree chart with at least four generations. The article also recaps the previous challenge on the midpoint circle algorithm and highlights participant implementations in JavaScript, Elm, and Ruby.

### Source excerpt

Family Trees and Pedigree Charts -- 4-minute read

## Weekly Programming Challenge #11

DevFeed: [Weekly Programming Challenge #11](<https://devfeed.tech/articles/weekly-programming-challenge-11-21096.md>)

Original publisher: [Read original article](<http://weblog.jamisbuck.org/2016/10/8/weekly-programming-challenge-11.html>)

Author: Jamis

Published: 2016-10-08T06:00:00Z

Content type: article

Language: en

Sources: [Jamis Buck](<https://devfeed.tech/sources/jamis-buck.md>)

Topics: [Programming](<https://devfeed.tech/topics/programming.md>), [Algorithms](<https://devfeed.tech/topics/algorithms.md>), [Code](<https://devfeed.tech/topics/code.md>), [HTTP](<https://devfeed.tech/topics/http.md>)

Tags: [algorithm](<https://devfeed.tech/tags/algorithm.md>), [code](<https://devfeed.tech/tags/code.md>), [http](<https://devfeed.tech/tags/http.md>), [languages](<https://devfeed.tech/tags/languages.md>), [programming](<https://devfeed.tech/tags/programming.md>)

### AI overview

This programming challenge revisits circle rasterization through the midpoint circle algorithm. It also recaps the previous challenge, in which participants implemented network programming tasks in several languages.

### Source excerpt

Drawing Circles -- 3-minute read

## Weekly Programming Challenge #10

DevFeed: [Weekly Programming Challenge #10](<https://devfeed.tech/articles/weekly-programming-challenge-10-21092.md>)

Original publisher: [Read original article](<http://weblog.jamisbuck.org/2016/10/1/weekly-programming-challenge-10.html>)

Author: Jamis

Published: 2016-10-01T06:00:00Z

Content type: tutorial

Language: en

Sources: [Jamis Buck](<https://devfeed.tech/sources/jamis-buck.md>)

Topics: [Programming](<https://devfeed.tech/topics/programming.md>), [Network](<https://devfeed.tech/topics/network.md>), [Server](<https://devfeed.tech/topics/server.md>), [client](<https://devfeed.tech/topics/client.md>), [HTTP](<https://devfeed.tech/topics/http.md>), [Ruby](<https://devfeed.tech/topics/ruby.md>)

Tags: [code](<https://devfeed.tech/tags/code.md>), [elixir](<https://devfeed.tech/tags/elixir.md>), [http](<https://devfeed.tech/tags/http.md>), [http-server](<https://devfeed.tech/tags/http-server.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [network](<https://devfeed.tech/tags/network.md>), [programming](<https://devfeed.tech/tags/programming.md>), [server](<https://devfeed.tech/tags/server.md>)

### AI overview

This article introduces a weekly programming challenge focused on socket programming. It asks readers to explore writing a simple client and server that exchange information over a network, after recapping submissions for the previous challenge on Bezier curves.

### Source excerpt

Socket programming -- 5-minute read

## Weekly Programming Challenge #9

DevFeed: [Weekly Programming Challenge #9](<https://devfeed.tech/articles/weekly-programming-challenge-9-21101.md>)

Original publisher: [Read original article](<http://weblog.jamisbuck.org/2016/9/24/weekly-programming-challenge-9.html>)

Author: Jamis

Published: 2016-09-24T06:00:00Z

Content type: tutorial

Language: en

Sources: [Jamis Buck](<https://devfeed.tech/sources/jamis-buck.md>)

Topics: [Programming](<https://devfeed.tech/topics/programming.md>), [math](<https://devfeed.tech/topics/math.md>), [Algorithms](<https://devfeed.tech/topics/algorithms.md>), [Parsing](<https://devfeed.tech/topics/parsing.md>)

Tags: [algorithms](<https://devfeed.tech/tags/algorithms.md>), [article](<https://devfeed.tech/tags/article.md>), [implement](<https://devfeed.tech/tags/implement.md>), [math](<https://devfeed.tech/tags/math.md>), [programming](<https://devfeed.tech/tags/programming.md>)

### AI overview

This ninth weekly programming challenge introduces quadratic Bezier curves. It explains the basic mathematics and iterative rendering algorithms, while briefly recapping the previous challenge about parsing and interpreting arithmetic expressions.

### Source excerpt

Bezier curves -- 5-minute read