Skip to content

Commit 3f05287

Browse files
committed
add workshop info, update aal DP
1 parent 9726039 commit 3f05287

File tree

4 files changed

+99
-134
lines changed

4 files changed

+99
-134
lines changed

resources/public/css/style.css

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -540,7 +540,7 @@ table {
540540
font-size: 18px;
541541
font-weight: 300;
542542
margin: 2em 0 0.5em 0;
543-
color: #999;
543+
color: #444;
544544
}
545545

546546
p {
246 KB
Loading
45.6 KB
Loading

src/cljs/inclojure_website/page.cljs

Lines changed: 98 additions & 133 deletions
Original file line numberDiff line numberDiff line change
@@ -42,15 +42,15 @@
4242
;; ----------
4343
;;
4444

45-
(def nav-links {
46-
"Venue" "venue"
45+
(def nav-links {"Venue" "venue"
4746
"Sponsors" "sponsorship"
47+
"Workshop" "workshops"
4848
"Call For Proposals" "cfp"}
4949
#_{"Tickets" "tickets"
50-
"Talks" "talks"
51-
"Workshops" "workshops"
52-
"Sponsors" "sponsorship"
53-
"Venue" "venue"})
50+
"Talks" "talks"
51+
"Workshops" "workshops"
52+
"Sponsors" "sponsorship"
53+
"Venue" "venue"})
5454

5555
(defn nav []
5656
[:nav
@@ -71,54 +71,46 @@
7171
;;
7272

7373
(defn workshops []
74-
#_[:section {:id "workshop-details"}
74+
[:section {:id "workshop-details"}
7575
[:div
76-
[:p.intro data/conf-with-year " will have two full-day workshops."]
77-
[:p "An introductory Clojure workshop and an intermediate Clojure
78-
workshop. The lessons apply to ClojureScript as well. Note that
79-
both the workshops will be conducted simultaneously on the same day."]
76+
[:p.intro data/conf-with-year " is co-hosting a free, beginner friendly workshop with ClojureBridge."]
77+
[:p "ClojureBridge is a free, beginner-friendly Clojure programming workshop that aims
78+
to increase diversity within the Clojure community."]
79+
[:p "You will learn fundamental programming concepts in Clojure through practical examples
80+
and exercises. Teachers and assistants will be there to guide you."]
8081
[:h3 {:id "introduction"}
81-
"Introduction to Clojure"]
82-
[:h4 "Audience"]
83-
[:p "Practising programmers and/or CS undergrads/grads who are new to Clojure, LISPs or functional programming but not absolute beginners
84-
at programming. We recommend that attendees be familiar with at least one programming language."]
82+
"ClojureBridge: Introduction to Clojure"]
83+
[:h4 "Who can apply?"]
84+
[:p "This workshop will be for women and non-binary attendees. Women and non-binary attendees are
85+
permitted to bring along a male guest attendee."]
86+
[:p "The workshop is open to people who are completely new to programming, as well as existing developers
87+
new to Clojure."]
88+
[:h4 "What do I need to bring?"]
89+
[:p "Please bring your own laptop for the workshop. Everything else, including wifi, drinking water,
90+
lunch and tea will be provided at the venue."]
8591
[:h4 "Session outline"]
92+
[:p "We will split the attendees two groups—Beginner and Intermediate.
93+
The intermediate group will have more challenging exercises to delve into."]
94+
[:p "The session itself will be divided into two parts—" [:strong "Learning"] " and " [:strong "Doing"]]
8695
[:div
87-
[:p "This will be a day-long hands-on workshop. We will progressively work through a series of exercises by building concept upon concept."]
88-
[:p "We will try to achieve this with:"]
96+
[:p "Learning:"]
8997
[:ul
90-
[:li "A small set of core ideas,"]
91-
[:li "a handful of Clojure primitives,"]
92-
[:li "a few API design techniques, and"]
93-
[:li "an interactive (REPL-driven) programming workflow."]]
94-
[:p "We will do the following:"]
98+
[:li "What is programming?"]
99+
[:li "What is Clojure? Why choose Clojure?"]
100+
[:li "Understanding the REPL"]
101+
[:li "Clojure Syntax—the anatomy of an S-expression"]
102+
[:li "Data types, functions, and sequences"]
103+
[:li "Context and lexical bindings"]
104+
[:li "Control flow and logic"]
105+
[:li "Functional composition"]]
106+
[:p "Doing (in smaller groups, with assigned guides):"]
95107
[:ul
96-
[:li "Model things with pure data,"]
97-
[:li "design clean functional APIs,"]
98-
[:li "compose purely functional logic, and"]
99-
[:li "use the REPL to interactively grow, inspect and debug code."]]
100-
[:p "By the end of the workshop, attendees should have an understanding of what Clojure has to offer, as well as a basic understanding of
101-
how to solve problems in Clojure. The workshop should serve as a springboard from which attendees can launch their own exploration
102-
of the language and its ecosystem. Fully documented workshop material will be available for use at home."]]
103-
104-
[:h3
105-
{:id "intermediate"}
106-
"Intermediate Clojure"]
107-
[:h4 "Audience"]
108-
[:p "This workshop is aimed at practising programmers who have some exposure to Clojure, but are looking to accomplish non trivial tasks using Clojure."]
109-
[:h4 "Session outline"]
110-
[:p "This will be a day-long hands-on workshop."]
111-
[:p "The aim of this workshop is to help the attendee work in Clojure more effectively. We will learn about:"]
112-
[:ul
113-
[:li "Repl driven development"]
114-
[:li "Clojure's approach to state and identity"]
115-
[:li "Laziness & Vars (Benefits & pitfalls)"]
116-
[:li "Java interop"]
117-
[:li "Testing"]
118-
[:li "Debugging Effectively"]
119-
[:li "Clojure ecosystem"]]
120-
[:p "To help us illustrate and understand the application of these concepts, we will build a simple web app that will tie all these concepts together."]
121-
[:p "We will not be covering macros or advanced clojure concurrency primitives in this workshop."]]])
108+
[:li "Exercise 1: (Almost) Play Quidditch with Clojure"]
109+
[:li "Exercise 2: Land of Wizards"]
110+
[:li "Exercise 3: Operating a Mars Rover"]]
111+
#_[:p "By the end of the workshop, attendees should have an understanding of what Clojure has to offer, as well as a basic understanding of
112+
how to solve problems in Clojure. The workshop should serve as a springboard from which attendees can launch their own exploration
113+
of the language and its ecosystem. Fully documented workshop material will be available for use at home."]]]])
122114

123115
;;
124116
;; ------------------
@@ -195,7 +187,7 @@
195187
[:img {:alt "nilenso", :src "images/sponsors/nilenso.png"}]]]
196188

197189
#_[:div.benefactor-slab.gold
198-
[:h3 "Gold"]]
190+
[:h3 "Gold"]]
199191

200192
[:div.benefactor-slab.bronze
201193
[:h3 "Bronze"]
@@ -225,17 +217,16 @@
225217
sanctioned or expelled from the conference without a refund at
226218
the discretion of the organisers."]])
227219

228-
229220
(defn team-member [name github twitter avatar]
230221
[:li
231222
[:a
232223
{:href twitter}
233224
name
234225
[:img {:alt name, :src (str avatar)}]]
235226
[:div.small.article-fine-print.no-mobile
236-
[:a
237-
{:href github}
238-
[:img {:alt "Github", :src "images/github.png"}]]]])
227+
[:a
228+
{:href github}
229+
[:img {:alt "Github", :src "images/github.png"}]]]])
239230

240231
(defn team []
241232
[:section {:id "team"}
@@ -270,33 +261,33 @@
270261

271262
(defn keynote []
272263
#_[:section {:id "keynote"}
273-
[:h2 "Keynote"]
274-
[:ol.article-list
275-
[:li
276-
[:a
277-
{:href "#"}
278-
[:img.article-image.keynote
279-
{:alt "bbatsov",
280-
:src "images/speakers/bozhidar-batsov.jpg"}]]
281-
[:h4
282-
[:a {:href "https://metaredux.com"} "Bozhidar Batsov"]]
283-
[:p.article-subtitle "Bozhidar is the maintainer of CIDER, nREPL,
264+
[:h2 "Keynote"]
265+
[:ol.article-list
266+
[:li
267+
[:a
268+
{:href "#"}
269+
[:img.article-image.keynote
270+
{:alt "bbatsov",
271+
:src "images/speakers/bozhidar-batsov.jpg"}]]
272+
[:h4
273+
[:a {:href "https://metaredux.com"} "Bozhidar Batsov"]]
274+
[:p.article-subtitle "Bozhidar is the maintainer of CIDER, nREPL,
284275
a dozen related projects, and the editor of the community
285276
Clojure style guide. Most people would probably describe him as
286277
an Emacs zealot (and they would be right). He's also quite fond
287278
of the Lisp family of languages, functional programming in
288279
general and Clojure in particular."]
289-
[:div.article-fine-print.no-mobile
290-
[:a
291-
{:href "https://twitter.com/bbatsov"}
292-
[:img {:alt "Twitter", :src "images/twitter.png"}]]
293-
[:a
294-
{:href "https://github.com/bbatsov"}
295-
[:img {:alt "Github", :src "images/github.png"}]]]]]])
280+
[:div.article-fine-print.no-mobile
281+
[:a
282+
{:href "https://twitter.com/bbatsov"}
283+
[:img {:alt "Twitter", :src "images/twitter.png"}]]
284+
[:a
285+
{:href "https://github.com/bbatsov"}
286+
[:img {:alt "Github", :src "images/github.png"}]]]]]])
296287

297288
(defn tickets []
298289
#_[:section {:id "tickets"}
299-
[:h2 "Tickets"]])
290+
[:h2 "Tickets"]])
300291

301292
(defn action-shots []
302293
[:section {:id "action-shots"}
@@ -388,24 +379,24 @@
388379

389380
(defn workshop-table []
390381
#_[:table.u-full-width.talk-table
391-
[:thead
392-
[:tr [:th "Time"] [:th "Event"]]]
393-
[:tbody
394-
[:tr.selected
395-
[:td "9:30 am"]
396-
[:td "Registrations"]]
382+
[:thead
383+
[:tr [:th "Time"] [:th "Event"]]]
384+
[:tbody
385+
[:tr.selected
386+
[:td "9:30 am"]
387+
[:td "Registrations"]]
397388

398-
[:tr
399-
[:td "10:00 am – 6 pm"]
400-
[:td "Introductory workshop"]]
389+
[:tr
390+
[:td "10:00 am – 6 pm"]
391+
[:td "Introductory workshop"]]
401392

402-
[:tr
403-
[:td "10:00 am – 6 pm"]
404-
[:td "Intermediate workshop"]]
393+
[:tr
394+
[:td "10:00 am – 6 pm"]
395+
[:td "Intermediate workshop"]]
405396

406-
[:tr
407-
[:td "7 pm onwards"]
408-
[:td "Pre-conference party"]]]])
397+
[:tr
398+
[:td "7 pm onwards"]
399+
[:td "Pre-conference party"]]]])
409400

410401
(defn talks-table []
411402
[:p "TBD"])
@@ -440,8 +431,8 @@
440431
[:ul
441432
[:li "the sidebar artwork is procedurally generated and inspired by"
442433
[:a {:href
443-
"https://gitlab.com/inclojure/inclojure.gitlab.io/blob/redesign/src/cljs/inclojure_website/morellet.cljs"}
444-
" François Morellet."]]
434+
"https://gitlab.com/inclojure/inclojure.gitlab.io/blob/redesign/src/cljs/inclojure_website/morellet.cljs"}
435+
" François Morellet."]]
445436

446437
[:li "source code to this website and other conference
447438
organizational material is available"
@@ -463,53 +454,27 @@
463454
[:img {:alt "Flickr", :src "images/flickr.png"}]]])
464455

465456
(defn workshops-section []
466-
#_[:section {:id "workshops"}
467-
[:h2 "Workshops"]
457+
[:section {:id "workshops"}
458+
[:h2 "Workshop"]
468459
[:div
469-
[:p data/conf-with-year " will have two full-day workshops."]
470-
[:p "An introductory Clojure workshop and an intermediate Clojure
471-
workshop. The lessons apply to ClojureScript as well. Note that
472-
both the workshops will be conducted simultaneously on the same day."]
460+
[:p data/conf-with-year " is co-hosting a free, beginner friendly workshop with ClojureBridge."]
473461

474462
[:ol.article-list
475-
[:li
476-
[:img.article-image
477-
{:alt "introductory"
478-
:src "images/workshops/introductory.png"}]
479-
480-
[:h4 {:id "introductory-workshop"}
481-
[:a {:href "#workshop-details"}
482-
"Introduction to Clojure"]]
483-
484-
[:p.article-subtitle "Practising programmers and/or CS
485-
undergrads/grads who are new to Clojure, LISPs or functional
486-
programming but not absolute beginners at programming. We
487-
recommend that attendees be familiar with at least one
488-
programming language."]
489-
490-
[:div.article-fine-print.no-mobile
491-
[:a
492-
{:href "https://github.com/inclojure-org/clojure-by-example"}
493-
[:img {:alt "Github", :src "images/github.png"}]]]]
494-
495-
[:li
496-
[:img.article-image
497-
{:alt "intermediate",
498-
:src "images/workshops/intermediate.png"}]
499-
500-
[:h4 {:id "intermediate-workshop"}
501-
[:a {:href "#"
502-
:on-click (fn []
503-
(reset! sub-page (workshops)))} "Intermediate Clojure"]]
504-
505-
[:p.article-subtitle "This workshop is aimed at practising
506-
programmers who have some exposure to Clojure, but are looking to
507-
accomplish non trivial tasks using Clojure."]
508-
509-
[:div.article-fine-print.no-mobile
510-
[:a
511-
{:href "https://github.com/inclojure-org/intermediate-clojure-workshop"}
512-
[:img {:alt "Github", :src "images/github.png"}]]]]]]])
463+
[:li
464+
[:img.article-image
465+
{:alt "introductory"
466+
:src "images/workshops/clojurebridge-logo.png"}]
467+
468+
[:h4 {:id "introductory-workshop"}
469+
[:a {:href "#workshop-details"}
470+
"Introduction To Clojure"]]
471+
472+
[:p.article-subtitle "ClojureBridge is a free, beginner-friendly Clojure
473+
programming workshop that aims to increase diversity within the Clojure
474+
community. You will learn fundamental programming concepts in Clojure
475+
through practical examples and exercises. This workshop will be for
476+
women and non-binary attendees. Women and non-binary attendees are
477+
permitted to bring along a male guest attendee."]]]]])
513478

514479
;;
515480
;; ---------

0 commit comments

Comments
 (0)