Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add slug to talks yml #646

Open
wants to merge 8 commits into
base: normalize-yml-files
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 11 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,12 +39,21 @@ jobs:
- name: StandardJS Check
run: yarn lint

- name: Lint YAML data files
run: yarn lint:yml
- name: Normalize YAML data files
run: bundle exec rails yml:normalize

- name: erb-lint Check
run: bundle exec erblint --lint-all

- name: Fail when generated changes are not checked-in
run: |
git update-index --refresh
git diff-index --quiet HEAD --
if [ $? -ne 0 ]; then
echo "::error::Uncommitted changes detected! This is likely to be fix by running `bin/lint` locally and committing the changes."
exit 1
fi

test:
runs-on: ubuntu-latest
env:
Expand Down
5 changes: 5 additions & 0 deletions Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,11 @@ group :development, :test do
gem "debug", platforms: %i[mri windows]
gem "byebug", "~> 11.1"
gem "minitest-difftastic", "~> 0.2"

# parse yml files and preserves comments
# for now we use a fork of the gem with PRs merged to preserve inline comments
# https://github.com/adrienpoly/psych-comments/tree/rubyvideo
gem "psych-comments", git: "https://github.com/adrienpoly/psych-comments.git", branch: "rubyvideo", require: false
end

group :development do
Expand Down
8 changes: 8 additions & 0 deletions Gemfile.lock
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
GIT
remote: https://github.com/adrienpoly/psych-comments.git
revision: c3bdd9102e0e2f247a880a6eb92df954d836f947
branch: rubyvideo
specs:
psych-comments (0.1.1)

GEM
remote: https://rubygems.org/
specs:
Expand Down Expand Up @@ -682,6 +689,7 @@ DEPENDENCIES
ostruct
pagy
propshaft
psych-comments!
puma
rack-mini-profiler
rails (~> 8.0)
Expand Down
4 changes: 2 additions & 2 deletions bin/lint
Original file line number Diff line number Diff line change
Expand Up @@ -16,5 +16,5 @@ echo "Checking erb file formatting..."
bundle exec erb_lint --lint-all --autocorrect

# Check YAML file formatting
echo "Checking YAML file formatting in data/ ..."
yarn format:yml
echo "Normalizing YAML files..."
bundle exec rails yml:normalize
124 changes: 54 additions & 70 deletions data/aloha-rubyconf/aloha-rubyconf-2012/videos.yml

Large diffs are not rendered by default.

74 changes: 23 additions & 51 deletions data/ancient-city-ruby/ancient-city-ruby-2013/videos.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
---
#
# TODO: talks running order
# TODO: talk dates
# TODO: schedule website

# Website: https://web.archive.org/web/20130305234849/http://www.ancientcityruby.com/

#
- title: "Test Driven Development: A Love Story"
raw_title: "Nell Shamrell - Test Driven Development: A Love Story - Ancient City Ruby 2013"
speakers:
Expand All @@ -22,77 +22,55 @@
You will walk away from the talk with techniques for maintaining and strengthening your relationship with TDD. Test frameworks and languages may come and go, but the fundamentals and value of TDD remain.
video_provider: youtube
video_id: nBtO1UOK9Hs

slug: test-driven-development-a-love-story
- title: "Insight, Intuition and Programming"
raw_title: Russ Olsen - Insight, Intuition and Programming - Ancient City Ruby 2013
speakers:
- Russ Olsen
event_name: Ancient City Ruby 2013
date: "2013-04-04"
published_at: "2013-06-24"
description:
"We programmers tend to think of ourselves as concrete, logical thinkers.
We work from step 1 to step 2 through to step N. So we say. But real life is not
like that: One minute you have no idea how the new design will come together and
the next, well, there it is. One minute you haven't a clue as to why the program
is doing that and the next it is all just obvious. And we have all seen code that
is wonderful or horrible in some indescribable way."
description: |-
We programmers tend to think of ourselves as concrete, logical thinkers. We work from step 1 to step 2 through to step N. So we say. But real life is not like that: One minute you have no idea how the new design will come together and the next, well, there it is. One minute you haven't a clue as to why the program is doing that and the next it is all just obvious. And we have all seen code that is wonderful or horrible in some indescribable way.
video_provider: youtube
video_id: rQp1CFJxgs0

slug: insight-intuition-and-programming
- title: "Impressive Ruby Productivity with Vim and Tmux"
raw_title: Chris Hunt - Impressive Ruby Productivity with Vim and Tmux - Ancient City Ruby 2013
speakers:
- Chris Hunt
event_name: Ancient City Ruby 2013
date: "2013-04-04"
published_at: "2013-06-25"
description:
Impress your friends, scare your enemies, and boost your productivity
by 800% with this live demonstration of Vim and Tmux. You will learn how to build
custom IDEs for each of your projects, navigate quickly between files, write and
run tests, view and compare git history, create pull requests, publish gists,
format and refactor your code with macros, remote pair program, and more, all
without leaving the terminal. Come prepared to learn and ask questions; this is
serious business.
description: |-
Impress your friends, scare your enemies, and boost your productivity by 800% with this live demonstration of Vim and Tmux. You will learn how to build custom IDEs for each of your projects, navigate quickly between files, write and run tests, view and compare git history, create pull requests, publish gists, format and refactor your code with macros, remote pair program, and more, all without leaving the terminal. Come prepared to learn and ask questions; this is serious business.
video_provider: youtube
video_id: 9jzWDr24UHQ

slug: impressive-ruby-productivity-with-vim-and-tmux
- title: "Distributed Patterns in Ruby"
raw_title: Eric Redmond - Distributed Patterns in Ruby - Ancient City Ruby 2013
speakers:
- Eric Redmond
event_name: Ancient City Ruby 2013
date: "2013-04-04"
published_at: "2013-06-25"
description:
"Scalability today is no longer a question of which programming language
you use, or (largely) which web architecture you choose. Instead, scalability
is a matter of how you handle two things: data distribution and message passing.
This talk is over a few ways of solving both: distributed data structures and
messaging patterns."
description: |-
Scalability today is no longer a question of which programming language you use, or (largely) which web architecture you choose. Instead, scalability is a matter of how you handle two things: data distribution and message passing. This talk is over a few ways of solving both: distributed data structures and messaging patterns.
video_provider: youtube
video_id: Adu_dbcnUHA

slug: distributed-patterns-in-ruby
- title: "How to Fail at Background Jobs"
raw_title: Jacob Burkhart - How to Fail at Background Jobs - Ancient City Ruby 2013
speakers:
- Jacob Burkhart
event_name: Ancient City Ruby 2013
date: "2013-04-04"
published_at: "2013-06-26"
description:
From DRB, XMPP, and AMQP to Resque and Rails 4. Running a background
worker process is a tool I've reached for often, and while the underlying tools
may change, the same problems seem to crop up in every one. A failed request serves
your fancy custom 500 error page, but what about a failed job? Is there such a
thing as a "reliable" queuing system that will never lose OR double process any
jobs? Are we talking about "simple" asynchronous method calls on models or should
we build "pure" workers with only the knowledge of a single task? What does "idempotent"
mean again? Please allow me to enliven the debates.
description: |-
From DRB, XMPP, and AMQP to Resque and Rails 4. Running a background worker process is a tool I've reached for often, and while the underlying tools may change, the same problems seem to crop up in every one. A failed request serves your fancy custom 500 error page, but what about a failed job? Is there such a thing as a "reliable" queuing system that will never lose OR double process any jobs? Are we talking about "simple" asynchronous method calls on models or should we build "pure" workers with only the knowledge of a single task? What does "idempotent" mean again? Please allow me to enliven the debates.
video_provider: youtube
video_id: dkFwNEFr9cg

slug: how-to-fail-at-background-jobs
- title: "Building a mocking library"
raw_title: Andy Lindeman - Building a mocking library - Ancient City Ruby 2013
speakers:
Expand All @@ -106,7 +84,7 @@
This talk uses a simplified mock object library as the basis for delving into topics such as metaprogramming and the Ruby object model. The goal is to increase the knowledge of these topics in the Ruby community. With this know--how, you will be better suited to build from and contribute to common Ruby tools that use them.
video_provider: youtube
video_id: 2aYdtS7FZJA

slug: building-a-mocking-library
- title: "This is Your Brain on Software"
raw_title: Paolo Perrotta - This is Your Brain on Software - Ancient City Ruby 2013
speakers:
Expand All @@ -120,7 +98,7 @@
Examples are all around. Why do Rubyists and Java developers despise each others' designs? Why do people try hard to fit static typing and distributed environments? Why do Windows programmers loathe the command line? Let me try answering these questions, with a few hints from cognitive psychology.
video_provider: youtube
video_id: v9Gkq9-dnlU

slug: this-is-your-brain-on-software
- title: "Live Coding with Ben"
raw_title: Ben Orenstein - Live Coding with Ben - Ancient City Ruby 2013
speakers:
Expand All @@ -139,7 +117,7 @@
- Audience participation is strongly encouraged, as is stealing the speaker's Vim tricks for your own use.
video_provider: youtube
video_id: C0H-LyZy9Ko

slug: live-coding-with-ben
- title: "The Magic Tricks of Testing"
raw_title: Sandi Metz - Magic Tricks of Testing - Ancient City Ruby 2013
speakers:
Expand All @@ -154,26 +132,19 @@
We write too many tests and we test the wrong kinds of things. This talk strips away the veil and offers simple, practical guidelines for choosing what to test and how to test it. Finding the right testing balance isn't magic, it's a magic trick; come and learn the secret of writing stable tests that protect your application at the lowest possible cost.
video_provider: youtube
video_id: qPfQM4w4I04

slug: the-magic-tricks-of-testing-ancient-city-ruby-2013
- title: "Pairing is Caring"
raw_title: Avdi Grimm - Pairing is Caring - Ancient City Ruby 2013
speakers:
- Avdi Grimm
event_name: Ancient City Ruby 2013
date: "2013-04-04"
published_at: "2013-07-02"
description:
In the second half of 2012 I "quit my job" as a traditional Ruby/Rails
consultant in order to become a consulting pair programmer. After spending hundreds
of hours pairing with dozens of developers from around the world, I'd like to
share some of my observations. We'll talk about the mechanics of ad-hoc remote
pair-programming, but more importantly about why I think widespread pairing is
important to maintaining the health of the Ruby community. Whether you work solo
or you pair regularly, you should leave this talk empowered and excited to broaden
your pair-programming horizons.
description: |-
In the second half of 2012 I "quit my job" as a traditional Ruby/Rails consultant in order to become a consulting pair programmer. After spending hundreds of hours pairing with dozens of developers from around the world, I'd like to share some of my observations. We'll talk about the mechanics of ad-hoc remote pair-programming, but more importantly about why I think widespread pairing is important to maintaining the health of the Ruby community. Whether you work solo or you pair regularly, you should leave this talk empowered and excited to broaden your pair-programming horizons.
video_provider: youtube
video_id: zCzc5W7vHQg

slug: pairing-is-caring
- title: "Hacking with Gems"
raw_title: Ben Smith - Hacking with Gems - Ancient City Ruby 2013
speakers:
Expand All @@ -187,3 +158,4 @@
Much of the Ruby community blindly trusts our gems. This talk will make you second--guess that trust, and show you how to vet gems that you do choose to use.
video_provider: youtube
video_id: UksbZx4ph8E
slug: hacking-with-gems
Loading
Loading