Skip to content

Instantly share code, notes, and snippets.


Mike Zornek zorn

View GitHub Profile

Tic-Tac-Toe Elixir Code Jam


To enable a productive group discussion about code design issues and approaches the Philly Elixir meetup group will run a short code jam style event. During the November 2021 meeting the code jam concept and goals will be shared. During the December 2021 meeting each member who has chosen to participate will have the opportunity to present their solution and take questions. The goal is by having different people solve for the same problem we can quickly observe different coding approaches and learn from each other.

Acceptance Criteria

For this code jam we will be building an Elixir module that can run a basic tic-tac-toe game. There is no required UI component, in fact for the purpose of our show and tell I'd like to keep us focused on the game module but that said, if you want to do extra credit feel free.

zorn / sample.ex
Last active Sep 26, 2021
How we use `Kernal.match/2` to validate that a list has an expected value.
View sample.ex
# chunk of code from our tests where we validated that an expected metric was captured
# heavily edited out company info
metrics =
capture_metrics(fn ->
with_trace(fn ->
assert {:ok, _result} = Work.stuff()
assert Enum.any?(
View changeset-notebook.livemd

Ecto Changeset Demo and Talk

What is Ecto?

  • Historic personal use of Active Record pattern in PHP, Rails, iOS dev.
  • Ecto described itself as a toolkit for data mapping and language integrated query for Elixir.
  • Changeset were (for me) a new concept that I've really come to appriciate.

Many of the demos you'll see come from Ecto's own Getting Started and I encourage you to check it out as well.


Name of Ticket [Fixes #xxx]



Additions / Changes

Update the CHANGELOG and paste the description here:

zorn /
Last active Feb 24, 2020
Early notes on what makes a good sdk

What makes a good SDK?

Real world example of usage

  • Example apps
    • Mayeb do them in Swift, React Native, Flutter, etc.
  • Example playgrounds?

Good documentation

  • General overview of SDK behaviors
View elixir-may-meeting-notes.txt
zorn / gist:c8899c6a774988e416a132678c545ffd
Last active Jul 26, 2018
new phx app not getting new template?
View gist:c8899c6a774988e416a132678c545ffd
When I make a new phx app I expect the app template to match what I see in GitHub but it doesn't.
Locally in the layout template I get:
<li><a href="">Get Started</a></li>
But on GitHub it's seems to be:
zorn /
Created Oct 13, 2017
TNG / Random Trek List

Season One


CocoaHead Meeting Changes

New Start Time

We are changing the meeting times for our main, second Thursday of the month, meeting.

Doors will now open at 6pm (was 6:30pm) for pizza and socializing. The meeting itself will start at 6:30pm and we'll shoot to end the meeting at 8:30pm (was 9:00pm). The goal of this change is to be a better guest of Apple and provide their cleaning crew enough time to restore the Briefing Room before the store officially closes.

Please continue to RSVP via

View SharedFileList-ConsoleSpam.txt
1 SharedFileList 0x00007fffa8624549 -[SFLList removeItem:] + 57
2 SharedFileList 0x00007fffa8638089 LSSharedFileListItemRemove + 176
3 AppKit 0x00007fffa53308ea -[NSDocumentController _refreshRecentDocumentURL:newURL:forDocument:] + 308
4 AppKit 0x00007fffa5870537 __85-[NSDocument(NSDocumentSaving) _saveToURL:ofType:forSaveOperation:completionHandler:]_block_invoke.999 + 112
5 AppKit 0x00007fffa5870ee7 __85-[NSDocument(NSDocumentSaving) _saveToURL:ofType:forSaveOperation:completionHandler:]_block_invoke_4.1040 + 31
6 libdispatch.dylib 0x0000000100a6474d _dispatch_call_block_and_release + 12
7 libdispatch.dylib 0x0000000100a5afcc _dispatch_client_callout + 8
8 libdispatch.dylib 0x0000000100a6ba2f _dispatch_queue_override_invoke + 1360
9 libdispatch.dylib 0x0000000100a5d247 _dispatch_ro