Skip to content

sammancoaching/website

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Teaching materials for Technical Agile Coaches

This repo contains the sourcecode for sammancoaching.org which is designed to provide resources for technical agile coaches to use in their work. For more information, please read this book Technical Agile Coaching by Emily Bache. This site is maintained by the members of the Samman Technical Coaching Society.

Development

To test locally:

bundle exec jekyll serve

Instead of using jekyll locally you can get a prebuilt docker image with Ruby, Jekyll etc. installed:

dockerinit

Test locally run the server with:

dockerrun

Alternatively use docker-compose using the docker-compose.yml.

docker-compose up

Then browse to:

http://localhost:4000

If you want to get access to the terminal in the docker container the command is:

docker exec -it <name_of_container> /bin/bash

were "name_of_container" is found by running the command

docker ls

or expanding the container in the Docker desktop user interface.

Contributing to the site

You don't need to be a member of the Samman Technical Coaching Society to contribute to this website. We welcome pull requests with new materials for technical coaches. If you contribute, please include in the PR a contributor page for yourself. You'll need to add an entry in _data/contributors.yml and a new file under society/contributors. Use your github handle as filename and key.

As you prepare your contribution, you might use resources which are already on this site. For example Code Katas, Activities or Reference Materials. If you use any please link to them.

If you send a PR you can expect to be contacted by a member of the society who will help you to get your contribution merged and published on the site.

Deploying to the live site

When you push to the main branch, there is a github action that deploys the changes.

Adding events

  • In hubspot, bulk update the 'events' property for everyone who attended the previous event
  • Wipe the 'next_open_space' property from all contacts in Hubspot
  • Update calendr.link "add to calendar" link with the next date
  • Rename the event page under society/events
  • Update society/events/index.md with a link to the updated event signup page
  • Test that you can sign up:
    • correct signup thankyou page
    • 'add to calendar' link on that page works,
    • you get a confirmation email
    • you get the 'next_open_space' property in hubspot
  • Create zoom meeting
  • Create calendar event and invite co-host & society members
  • Create and schedule email 1 week before with zoom link
  • Create and schedule email on the day with zoom link
  • Advertize on discord etc

Adding new members

  • Make sure they have read and understood Membership
  • Invite them to github organization
  • Update their settings in contributors
  • Update their profile page on this site
  • Add them to the membership registry google doc
  • Add them to the next open space calendar invite
  • Update their groups on Discord
  • Send welcome mail saying you've done those things
  • Announce them on Discord & elsewhere

Development plan for this website

We would like to do some refactoring. This is the plan

  1. Improve the build so we don't release a broken site
  2. Use Jekyll links everywhere - no "]{/" in project
  3. Use defined perma links instead of folder structure
  4. Move index pages to their own folder instead of having them in a folder structure
  5. Make contributors into a collection
  6. Remove layouts that are only used in one place, use html in these pages instead
  7. Give learning hours ids (with a script?) and put them in a flat folder structure
  8. Supply page templates for collections in git but not included in the jekyll build

Jekyll Design Principles

  • Use collections for objects
  • Use liquid as a database
  • _data is good for things that don't have their own pages
  • Routing is best based on configuration not file structure
  • If it needs its own layout, write it in html from the start
  • Using frontmatter when possible enables jekyll to check that things work