This document provides guidance on how to teach a ClojureBridge workshop. It discusses organizing introductions, getting attendees and sponsors, training teaching assistants (TAs), creating a safe and inclusive space, logistics like food and space, determining the audience and content, and selecting projects. The goal of ClojureBridge is to increase diversity in the Clojure community by offering free beginner-friendly workshops for underrepresented groups in tech. Sample projects discussed include a drawing app using Quil, tones using Overtone, interacting with APIs, and creating a web app.
4. Nola
• Co-founder of devchix
• Organize several meetups, currently Austin
Ruby, help with Austin Clojure and Women Who
Code
• Have done two ClojureBridges, one Clojure
Workshop, one RailsBridge
• Independent consultant doing Ruby and Clojure
5. Millie
• Member of the ClojureBridgeMN Board who has hosted
six ClojureBridge workshops since 2014.
• Founded and lead a Women's Affinity Group for two years
at my previous company.
• Currently a Software Development Instructor at Prime
Digital Academy in Minneapolis. Previously, server-side
Java Developer.
• Studied Computer Science at a Women's College. I
believe strongly in the power of Women's Education,
especially in STEM.
10. ClojureBridge
• Initially started by a group of Clojure devs who
wanted to have the same success as RailBridge
• Sean Corfield, Bridget Hillyer initially started
getting together the materials
13. ClojureBridge Objectives
ClojureBridge aims to increase diversity within
the Clojure community by offering free,
beginner-friendly Clojure programming
workshops for underrepresented groups in
tech.
— https://github.com/ClojureBridge/
organizing
15. Advertise: Where
word of mouth and delegation
• Attend local Clojure meetup.
• Attend any other technical user group.
• Attend or advertise through other local affinity
groups.
• University Computer Science Departments.
• Website for event, Facebook, and Twitter.
16. Advertise: How
word of mouth and delegation
• Attending events in person is the most effective.
• When attending events, it is helpful to have
something to hand out.
• Have a few stock emails ready to send to
various groups to advertise the event.
18. Sponsorship
short term management
• Companies who do clojure in town
• Coworking or boot camps might let free use of space
• Book companies who have Clojure books (Pragprog, ORA,
Manning etc)
https://github.com/ClojureBridge/organizing/blob/master/Money-
Things.md
19. Bridge Foundry
long term management
• Bridge Foundry is the umbrella organizations for all bridges with 501c3
non-profit status.
• Apply for a PexCard through Bridge Foundry.
• Donations can go through Bridge Foundry and be accessible on your
clubs PexCard (debit card).
• More official way to handle money and Paypal link for individual donations.
• info@clojurebridge.org
https://github.com/bridgefoundry/operations/blob/master/using-funds/pex-
cards.md
http://bridgefoundry.org/about.html
21. Getting TAs
• Local Clojure meetups or people in your network
• Any local (functional) programming user groups
• ClojureBridge Slack channel and mailing list
• The nation/international organization might be
able to help connect your area with a trainer
22. Training
tech
• Meet at least once in person before the
workshop.
• Meet to go over workshop projects and materials
• Meet to learn how to use the chosen editor
23. Training
code of conduct
If you are not sure if something is appropriate
behavior, it probably isn’t.
• Bridge Foundry and ClojureBridge Oraganizing
docs have a lot of good tips. Review these
documents with all TAs.
https://github.com/ClojureBridge/organizing/blob/master/TA%20Training.md
https://github.com/clojurebridge-minneapolis/organizing/blob/master/
resources/ta-meeting-notes.md
25. People
• Who ever comes are the right people
• Introductions
• Name, how you heard about ClojureBridge (easy
icebreaker), track
• Have someone watching the space and check in on
people that look like they need help. But, don't hover.
• Introduce students to each other
• Clear direction
26. Planning Ahead
• A lot of the groundwork with the TAs will pay off here.
• Code of contact printed and easily accessible.
• Main point of contact at workshop with contact
information printed and easily accessible.
• Pronouns. Ask as part of registration. In Minneapolis
we print these on badges.
• Badges or t-shirts that help identify TAs and
organizers.
28. Food
• ask about food allergies / preferences (gluten free,
vegan, vegetarian)
• taco/burrito bar is good choice, ingredients are
separated (ie meat and cheese)
• greek/indian food is also good but may be
expensive
• pizza or sandwiches are good if you can
accommodate food preferences
29. Keeping Food Costs Low
• To avoid wasted food, choose a food that you
can order morning of when you know how many
people are there.
• Get some food in bulk that could be reused later
(ie chips or cookies in individual packages)
• Breakfast not required, coffee/tea/water would
be sufficient
30. Managing Signups
• Eventbrite
• Google form to express interest and then people
are chosen
• ClojureBridge never charge a fee
• Not even a donation to a good cause :)
31. Improve Attendance
Free workshops can have higher numbers of no shows.
• Signup - doesn’t mean they get a seat. Appearance of a
selection process.
• Email Reminders
• One day workshops
• Invite ladies directly
• Announce a month early but not before
https://github.com/ClojureBridge/organizing/blob/master/How-to-
Improve-Attendance.md
32. To Install Fest or not?
• Traditionally Friday night is InstallFest
• In Austin for example… Friday night traffic can
be .. interesting
• Could send install instructions to be done ahead
of time (at least java install)
• Could install first thing on Saturday, but then you
have less time for workshop
33. Space
• Use a Bootcamp or Co-working space
• Use an office space
• Make sure you have a projector
• Have plenty of power strips and table/chairs
• Plan for what to do with leftover food (coolers
etc) containers to give out leftovers
35. Determine Audience
• Beginner (no programming experience)
• Experienced in a language (+6 months)
• Alumni (attended prior workshop)
36. Styles of Workshops
• Lecture with pauses to work on exercises
• Self-study with folks around to help
• A mix of both
37. Extra Content
• have a panel of women developers to inspire
new developers
• have experienced Clojure Devs talk about what
they use Clojure for and Q/A
38. Editors
• Nightcode - structured editing, instarepl
• LightTable - structured editing, instarepl
• Atom, no repl but could use console repl
• Nightlight
40. Companies that donate
• PragProg may give free ebooks or % off coupon
• PurelyFunctional will give 1 yr free subscription
• LambdaIsland will have 1 yr free subscription
• Alumni will get a free ticket to ClojureWest, Conj
• O’Reilly Media may donate books
41. Swag
• group stickers with ClojureBridge Logo
• some groups have printed t-shirts or other items
43. Quil - Drawing App
• learn functions
• getting mouse coordinates in quiz
• function composition
• loading images in quil
44. Quil - Turtles
• using predefined functions
• using the repl
• using doseq
• creating your own functions
• using :keys to destructure function params
45. Overtone - Tones
• sequences
• using doc to look at function docs
• writing a function with multiple arities
• using let to build up local vars
• composing functions to be more complex
46. World Bank API - Global
Growth
• learn about APIs
• parsing json
• using clj-http
• using compojure
• cleaning/filtering data
47. Web App Intermediate
Chatter App
• simplest web app
• increase complexity
• add bootstrap, elements on page as functions
• use kerodon to create integration tests
48. Web App Beginner
Chatter App
• Simple web app online by the end of the day
• exposure to coding ecosystem and a taste of
what you could build
• terminal, git, GitHub (other), heroku
• Clojure!
http://clojurebridge-minneapolis.github.io/
49. MN Track2
• Deeper dive into Clojure syntax and what it
means to be a functional language
• Try it out with with Clojure Koans
• Concurrency talk that revisits chatter app from
track one
http://clojurebridge-minneapolis.github.io/