meta/new-web: add con.racket-lang.org

Slides from each year are kept elsewhere (much like the installers
for download.racket-lang.org).
This commit is contained in:
Matthew Flatt 2014-03-07 21:41:22 -07:00
parent 1b72aa175a
commit 329627d12d
16 changed files with 885 additions and 17 deletions

View File

@ -1,3 +1,3 @@
#lang plt-web
(require "www/all.rkt" "download/all.rkt" "minis/all.rkt" "stubs/all.rkt")
(require "www/all.rkt" "download/all.rkt" "minis/all.rkt" "stubs/all.rkt" "con/all.rkt")

View File

@ -0,0 +1,208 @@
#lang plt-web
(require racket/runtime-path
plt-web/style
"../resources.rkt"
"../utils.rkt")
(provide neu nuacm)
(define-runtime-path neu-png "neu.png")
(define-runtime-path nuacm-png "nuacm.png")
(define neu (copyfile #:site con-site neu-png))
(define nuacm (copyfile #:site con-site nuacm-png))
(define-runtime-path mozilla-png "mozilla.png")
(provide index)
(define index
@page[#:site con-site
#:file "2011/index.html"
#:link-title "RacketCon 2011" #:title "RacketCon 2011"
#:extra-headers style-header]{
@columns[10 #:center? #t #:row? #t]{
@h2{RacketCon: 23 & 24 July 2011}
@p*{@b{RacketCon} is a public meeting for everyone interested in Racket:
developers, contributors, programmers, educators, and by-standers. It
is an opportunity for all members of the community to come together to
share plans, ideas, and enthusiasm. RacketCon will enable the entire
Racket community to mingle: to update each other, to exchange ideas, to
collaborate, and to help shape the future of Racket.
@~
RacketCon will hosted by the
@a[href: "http://www.ccs.neu.edu/"]{
College of Computer and Information Science}
of @a[href: "http://www.neu.edu/"]{Northeastern University}, in Boston,
Massachusetts. See @a[href: "#getting"]{Getting to RacketCon} below.
@~
@b{The location of RacketCon has changed!}
See @a[href: "#getting"]{Getting to RacketCon} for information.}
@h3{Schedule}
@h3{Saturday, July 23}
@sched[
@slot["9:30-10:00" #f]{Breakfast}
@slot["10:00-10:45" mflatt #:video (yt "wEgaVMOYLEU")]{Racket at @tt{(expt 2 4)}}
@slot["10:45-11:15" #f]{Break}
@slot["11:15-11:45" ryanc #:video (yt "AB15shYUU4M")]{Designing macros using @a[class: 'doclink href: "http://docs.racket-lang.org/syntax/stxparse.html"]{@tt{syntax-parse}}}
@slot["11:45-12:00" @name["http://dorophone.blogspot.com/"]{Vincent Toups}
#:video (yt "sZ-jGHUWIyA")]{Monadic Parallel Turtle Graphics}
@slot["12:00-12:15" dyoo #:video (yt "wg9aoJDJNgk")]{Whalesong}
@slot["12:15-12:30" "Doug Williams"
#:video (yt "ePZAvb9at8Q")]{Content Generation from Templates}
@slot["12:30-2:00" #f]{Lunch}
@slot["2:00-2:45" matthias
#:video (yt "ngUeVD7OUKo")
#:slides (F "matthias-slides.pdf")]{
What's wrong with How to Design Programs@";"
@br What's new in How to Design Programs 2e}
@slot["2:45-3:00" "William Dunklau"]{Using Picturing Programs in Grades 7 and 8}
@slot["3:00-3:15" #f]{Break}
@slot["3:15-3:30" @name["http://cs.berry.edu/~nhamid/"]{Nadeem Abdul Hamid}]{Web UI Teachpack}
@slot["3:30-3:45" dvh #:slides (F "dvh-slides.pdf")]{An Object-Oriented World}
@slot["3:45-4:00" ""]{Short Talks and Demos}
]
@h3{Sunday, July 24}
@sched[
@slot["9:30-10:00" #f]{Breakfast}
@slot["10:00-10:30" rbf]{The Future of DrRacket}
@slot["10:30-10:45" jay]{Tutorial: Building Web Apps in Racket}
@slot["10:45-11:00" "Richard Cleis"]{Test Suites for Telescope Control}
@slot["11:00-11:15" #f]{Break}
@slot["11:15-11:45" "Doug Williams"]{Knowledge-Based Simulation in Racket}
@slot["11:45-12:15" pr #:slides (F "pr-slides.pdf")]{Fifteen Hundred Students A Year}
@slot["12:15-12:45" ryanc]{Tutorial: Database Access & Low-level Libs}
@slot["12:45-2:00" #f]{Lunch}
@slot["2:00-2:20" morazanm #:slides (F "marco-slides.pdf")]{The Time of Space Invaders Will Come to Pass}
@slot["2:20-2:40" jbc]{Teaching first-year students with RSound}
@slot["2:40-3:00" guillaume]{Designing Error Messages for Novices}
@slot["3:00-3:15" #f]{Break}
@slot["3:15-3:30" moskol]{Rewards and Challenges using Racket in a College Computer Science Course}
@slot["3:30-3:45" "Paul Ojanen"]{Student Revelations after Using Racket, Scratch, and Alice}
@slot["3:45-4:00" sk]{Demos}
]
@a[name: "getting"]@h3{Getting to RacketCon}
@p{RacketCon will be held in @b{Shillman Hall, Room 135}, at
Northeastern University. Shillman Hall is located
at 115 Forsyth Street, Boston Massachusetts, and is building
@a[href: "http://www.northeastern.edu/campusmap/map/qad4.html"]{#30} on
the @a[href: "http://www.northeastern.edu/campusmap/map"]{campus map}.
See also the building on
@a[href: '("http://maps.google.com/?ll=42.337381,-71.090276&"
"spn=0.006686,0.009645&layer=c&cbll=42.337349,-71.090029&"
"cbp=12,23.55,,0,0&z=17&photoid=po-16598983")]{
Google Maps}.}
@h3{Getting there...}
@dl{
@dt{by Car:}
@dd{There is very little on-street parking near Northeastern.
@[a href: "http://neu.edu/test/parking/guestparking/"]{
Visitor parking}
is available at the
@a[href: "http://neu.edu/test/parking/wheretopark/"]{
Renaissance Garage},
a few minutes walk from the conference. Driving directions from many
points are available
@a[href: "http://www.neu.edu/campusmap/directions.html"]{here}.}
@dt{by Subway:}
@dd{Northeastern is conveniently located near both the Green and Orange
subway lines. The @a[href: "http://www.mbta.com/"]{MBTA} has more
information. On the Green E line, the Northeastern stop is the
closest, and appears on the campus map below as the T symbol on
Huntington Avenue. On the Orange line, the Ruggles stop is closest
and appears on the campus map below as the T symbol in the
middle-left of the illustration.}
@dt{by Bicycle, Commuter Rail, Amtrak:}
@dd{Northeastern is located near the major Amtrak lines, and is also
accessible by commuter rail and bicycle. Please contact @|org| for
more information.}}
@h3{Where to eat}
@p{While there are no conference dinner plans, there are numerous
restaurants near Northeastern:}
@dl{@dt{@a[href: "http://www.symphonysushi.com/"]{Symphony Sushi}}
@dd{A sushi restaurant, 5 minutes walk}
@dt{@a[href: "http://www.phoandi.com/"]{Pho and I}}
@dd{Thai and Vietnamese food, 5 minutes walk.}
@dt{@a[href: "http://maps.google.com/maps/place?q=pizzeria+uno+boston&cid=11922407303454006467"]{Pizzeria Uno}}
@dd{Deep dish pizza, 5 minutes walk.}
@dt{@a[href: "http://www.bettyswokandnoodle.com/"]{Betty's Wok and Noodle}}
@dd{Asian-Latin fusion. 6 minutes walk.}
@dt{@a[href: "http://www.yelp.com/biz/punters-pub-boston"]{Punter's Pub}}
@dd{A bar, adjacent to Northeastern.}
@dt{@a[href: "http://www.squealingpigboston.com/"]{The Squealing Pig}}
@dd{A bar with food, 15 minutes walk.}
@dt{@a[href: "http://www.urbanspoon.com/r/4/54985/restaurant/Back-Bay/Woodys-Grill-Tap-Boston"]{Woody's Grill and Tap}}
@dd{Brick oven pizza, 15 minutes walk.}
}
@p{This is just a small selection;
@a[href: '("http://maps.google.com/maps?q=restaurant&hl=en&ll=42.342147"
",-71.093645&spn=0.01337,0.01929&sll=42.338636,-71.092004&ss"
"pn=0.006685,0.009645&near=440+Huntington+Ave,+Northeastern+"
"University,+Boston,+MA+02115&geocode=CUTKaBPhO49uFUwJhgId3D"
"jD-ylfch77IXrjiTHFj4qar3TSZw&gl=us&fll=42.338166,-71.092958"
"&fspn=0.013371,0.01929&z=16")]{Google}
and
@a[href: '("http://www.yelp.com/search?find_desc=&find_loc=440+Huntingt"
"on+Ave%2C+Boston%2C+MA+02115#cflt=restaurants")]{Yelp}
have many more.}
@h3{Where to stay}
@p{Numerous hotels are located close to Northeastern. The three closest
are:}
@dl{@dt{@a[href: "http://www.colonnadehotel.com/"]{The Colonnade Hotel}}
@dd{A ten minute walk from RacketCon. Ask for the Northeastern
discounted rate. Even with the discount, this is likely to be
expensive.}
@dt{@a[href: "http://www.midtownhotel.com/"]{The Midtown Hotel}}
@dd{A ten minute walk from RacketCon. A less expensive and less fancy
option.}
@dt{@a[href: "http://www.innatlongwood.com/"]{
The Best Western Inn at Longwood}}
@dd{A fifteen minute walk from RacketCon.}}
@h3{Frequently Asked Questions}
@dl{
@dt{Do I have to be a Racket programmer to attend?}
@dd{No. We welcome anyone interested in or curious about Racket to come
to RacketCon and learn about why we're all so excited about Racket.}
@dt{Will there be a registration fee?}
@dd{No. RacketCon is free to everyone who wants to attend. We
ask that you register ahead of time, so that we can
plan appropriately.}
@dt{How do I register?}
@dd{By sending an email to @|org| with your name and
affiliation. Please let us know if you have an dietary
restrictions, and if you'll be bringing others.}
@dt{Will the conference provide breakfast and lunch?}
@dd{Yes! We will provide complimentary breakfast snacks and lunch on
both days to registered attendees.}
@dt{Will the talks be recorded?}
@dd{Thanks to the generous support of Jeff Dlouhy and the
@a[href: "http://acm.ccs.neu.edu/"]{
Northeastern University ACM Student Chapter}, we will
be video-taping all talks at RacketCon, and putting them on the web.}
@dt{Who is in charge of RacketCon?}
@dd{RacketCon is organized by
@a[href: "http://www.ccs.neu.edu/home/samth"]{Sam Tobin-Hochstadt}
and the rest of the Racket development team.}
}
@h3{Sponsors}
@p{Support for RacketCon is generously provided by:}
@div[align: 'center]{
@sponsor["Northeastern University" "neu.edu" neu]
@br
@sponsor["NUACM" "acm.ccs.neu.edu" nuacm]
@br
@sponsor["Mozilla" "mozilla.org" (copyfile #:site con-site mozilla-png)]
}
}})

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

View File

@ -0,0 +1,204 @@
#lang plt-web
(require plt-web/style
"../resources.rkt"
"../utils.rkt"
(only-in "../2011/all.rkt" neu))
(define (register . e) (apply a href: "http://bit.ly/racketconsignup" e))
(provide index)
(define index
@page[#:site con-site
#:file "2012/index.html"
#:link-title "RacketCon 2012" #:title "RacketCon 2012"
#:extra-headers style-header]{
@columns[10 #:center? #t #:row? #t]{
@h2{RacketCon: 13 October 2012}
@p*{@b{RacketCon} is a public meeting for everyone interested in Racket:
developers, contributors, programmers, educators, and by-standers. It
is an opportunity for all members of the community to come together to
share plans, ideas, and enthusiasm. RacketCon will enable the entire
Racket community to mingle: to update each other, to exchange ideas, to
collaborate, and to help shape the future of Racket.
@~
RacketCon will hosted by the
@a[href: "http://www.ccs.neu.edu/"]{
College of Computer and Information Science}
of @a[href: "http://www.neu.edu/"]{Northeastern University}, in Boston,
Massachusetts. See @a[href: "#getting"]{Getting to RacketCon} below.
@;@~
@;To register for RacketCon, please fill out @register{this form}.
@~
We will also run a Hackathon on Sunday in the same room as
RacketCon. For details, see the
@a[href: "https://github.com/plt/racket/wiki/RacketCon-Hackathon-2012"]{
wiki page}.
}
@h3{Schedule}
@sched[
@slot["9:30-10:00" #f]{Coffee and Welcome}
@slot["10:00-12:00" mflatt
#:code "http://www.cs.utah.edu/plt/scratchy/"
#:video (yt "y1rOWZkALto")]{Tutorial: Building Languages in Racket}
@slot["12:00-1:30" #f]{Lunch}
@slot["1:30-1:40" ryanc #:video (yt "yv_PcyQmrFs")]{
Better Syntax Templates for @tt{syntax-parse}}
@slot["1:40-1:50" morazanm #:video (yt "vZy6w1G7hRI")]{
Distributed Programming for First-Year Students}
@slot["1:50-2:00" tewk
#:slides (F "tewk-slides.pdf")
#:video (yt "xV4e0YYv6zA")]{Distributed Places}
@slot["2:00-2:10" dyoo
#:slides (F "dyoo-slides-1.pdf")
#:video (yt "A5v4gA1DY8I")]{DrBlocket}
@slot["2:10-2:20" stamourv
#:code (gh "3974136")
#:video (yt "W9BYTrDUPtU")]{Optimization Coach}
@slot["2:20-2:30" asumu
#:video (yt "MYtm9YG4tMM")
#:code (gh "3885002")
#:slides (F "asumu-slides.pdf")]{Generics}
@slot["2:20-3:00" #f]{Break}
@slot["3:00-3:10" dyoo
#:slides (F "dyoo-slides-2.pdf")
#:video (yt "hh3rkRTOQuA")]{
WeScheme and the Amazing Technicolor Structures}
@slot["3:10-3:20" "James Swaine"
#:code (gh "3973451")
#:video (yt "28uMzVRMWSs")]{
Profiling Parallel Racket with the Future Visualizer}
@slot["3:20-3:30" jpolitz
#:slides (F "politz-slides.pdf")
#:video (yt "52mUh5Or9Jk")]{
Crowdsourced Conformance Testing via Remote Sandboxing
(or Avoiding Grading for Fun and Profit)}
@slot["3:30-3:40" rafkind
#:slides (F "rafkind-slides.pdf")
#:video (yt "xV4e0YYv6zA")]{Honu: Macros for infix syntax}
@slot["3:40-3:50" cce
#:slides (F "cce-slides.pdf")
#:video (yt "8u1wV7WRwuk")]{
Racket + ACL2 + ML = Dracula}
@slot["3:50-4:00" @name["http://about.me/cky"]{Chris Jester-Young}
#:video (yt "jW-XIzMOFw8")
#:slides (F "cky-slides.pdf")]{Racket + JVM}
@slot["4:00-4:15" #f]{Break}
@slot["4:15-6:15" samth
#:code "http://github.com/samth/tr-tutorial/"
#:video (yt "w-fVHOxeEpM")]{Tutorial: Typed Racket}
]
@a[name: "getting"]@h3{Getting to RacketCon}
@p{RacketCon will be held in @b{West Village H, Room 110}, at
Northeastern University. West Village H is located
at 440 Huntington Ave, Boston Massachusetts, and is building
@a[href: "http://www.northeastern.edu/campusmap/map/qad4.html"]{#23H} on
the @a[href: "http://www.northeastern.edu/campusmap/map"]{campus map}.
See also the building on
@a[href: "http://goo.gl/maps/On05h"]{Google Maps}}
@h3{Getting there...}
@dl{
@dt{by Car:}
@dd{There is very little on-street parking near Northeastern.
@[a href: "http://neu.edu/test/parking/guestparking/"]{
Visitor parking}
is available at the
@a[href: "http://neu.edu/test/parking/wheretopark/"]{
Renaissance Garage},
a few minutes walk from the conference. Driving directions from many
points are available
@a[href: "http://www.neu.edu/campusmap/directions.html"]{here}.}
@dt{by Subway:}
@dd{Northeastern is conveniently located near both the Green and Orange
subway lines. The @a[href: "http://www.mbta.com/"]{MBTA} has more
information. On the Green E line, the Northeastern stop is the
closest, and appears on the campus map below as the T symbol on
Huntington Avenue. On the Orange line, the Ruggles stop is closest
and appears on the campus map below as the T symbol in the
middle-left of the illustration.}
@dt{by Bicycle, Commuter Rail, Amtrak:}
@dd{Northeastern is located near the major Amtrak lines, and is also
accessible by commuter rail and bicycle. Please contact @|org| for
more information.}}
@h3{Where to eat}
@p{While there are no conference dinner plans, there are numerous
restaurants near Northeastern:}
@dl{@dt{@a[href: "http://www.symphonysushi.com/"]{Symphony Sushi}}
@dd{A sushi restaurant, 5 minutes walk}
@dt{@a[href: "http://www.phoandi.com/"]{Pho and I}}
@dd{Thai and Vietnamese food, 5 minutes walk.}
@dt{@a[href: '("http://maps.google.com/maps/place?"
"q=pizzeria+uno+boston&cid=11922407303454006467")]{
Pizzeria Uno}}
@dd{Deep dish pizza, 5 minutes walk.}
@dt{@a[href: "http://www.yelp.com/biz/punters-pub-boston"]{
Punter's Pub}}
@dd{A bar, adjacent to Northeastern.}
@dt{@a[href: "http://www.squealingpigboston.com/"]{The Squealing Pig}}
@dd{A bar with food, 15 minutes walk.}
@dt{@a[href: '("http://www.urbanspoon.com/r/4/54985/restaurant/"
"Back-Bay/Woodys-Grill-Tap-Boston")]{
Woody's Grill and Tap}}
@dd{Brick oven pizza, 15 minutes walk.}
}
@p{This is just a small selection;
@a[href: '("http://maps.google.com/maps?q=restaurant&hl=en&ll=42.342147"
",-71.093645&spn=0.01337,0.01929&sll=42.338636,-71.092004&ss"
"pn=0.006685,0.009645&near=440+Huntington+Ave,+Northeastern+"
"University,+Boston,+MA+02115&geocode=CUTKaBPhO49uFUwJhgId3D"
"jD-ylfch77IXrjiTHFj4qar3TSZw&gl=us&fll=42.338166,-71.092958"
"&fspn=0.013371,0.01929&z=16")]{Google}
and
@a[href: '("http://www.yelp.com/search?find_desc=&find_loc=440+Huntingt"
"on+Ave%2C+Boston%2C+MA+02115#cflt=restaurants")]{Yelp}
have many more.}
@h3{Where to stay}
@p{Numerous hotels are located close to Northeastern. The three closest
are:}
@dl{@dt{@a[href: "http://www.colonnadehotel.com/"]{The Colonnade Hotel}}
@dd{A ten minute walk from RacketCon. Ask for the Northeastern
discounted rate. Even with the discount, this is likely to be
expensive.}
@dt{@a[href: "http://www.midtownhotel.com/"]{The Midtown Hotel}}
@dd{A ten minute walk from RacketCon. A less expensive and less fancy
option.}
@dt{@a[href: "http://www.innatlongwood.com/"]{
The Best Western Inn at Longwood}}
@dd{A fifteen minute walk from RacketCon.}}
@h3{Frequently Asked Questions}
@dl{
@dt{Do I have to be a Racket programmer to attend?}
@dd{No. We welcome anyone interested in or curious about Racket to come
to RacketCon and learn about why we're all so excited about Racket.}
@dt{Will there be a registration fee?}
@dd{No. RacketCon is free to everyone who wants to attend. We
ask that you @register{register} ahead of time, so that we can
plan appropriately.}
@dt{Will the conference provide lunch?}
@dd{Yes! We will provide complimentary lunch
to registered attendees.}
@dt{Will the talks be recorded?}
@dd{We hope to record and post the talks given at RacketCon. If you are
interested in assisting with this, please let the organizers know.}
@dt{Who is in charge of RacketCon?}
@dd{RacketCon is organized by
@a[href: "http://www.ccs.neu.edu/home/samth"]{Sam Tobin-Hochstadt}
and the rest of the Racket development team.}
}
@h3{Sponsors}
@p{Support for RacketCon is generously provided by:}
@div[align: 'center]{
@sponsor["Northeastern University" "neu.edu" neu]
}
}})

View File

@ -0,0 +1,292 @@
#lang plt-web
(require plt-web/style
racket/runtime-path
"../resources.rkt"
"../utils.rkt"
(only-in "../2011/all.rkt" neu nuacm))
(define (register . e) (apply a href: "http://bit.ly/racketconsignup" e))
(define-runtime-path nbcu "nbc-universal.png")
(provide index)
(define index
@page[#:site con-site
#:file "2013/index.html"
#:link-title "RacketCon 2013" #:title "RacketCon 2013"
#:extra-headers style-header]{
@columns[10 #:center? #t #:row? #t]{
@h2{RacketCon: 29 September 2013}
@p*{@b{RacketCon} is a public meeting for everyone interested in Racket:
developers, contributors, programmers, educators, and by-standers. It
is an opportunity for all members of the community to come together to
share plans, ideas, and enthusiasm. RacketCon will enable the entire
Racket community to mingle: to update each other, to exchange ideas, to
collaborate, and to help shape the future of Racket.
@~
RacketCon is hosted by the
@a[href: "http://www.ccs.neu.edu/"]{
College of Computer and Information Science}
of @a[href: "http://www.neu.edu/"]{Northeastern University}, in Boston,
Massachusetts. See @a[href: "#getting"]{Getting to RacketCon} below.
@~
Register for the event
@a[href: "http://bit.ly/racketconsignup2013"]{here}.
@~
We will also run a Hackathon on Saturday (28th) in the same room as
RacketCon from 10AM-5PM. For details, see the
@a[href: "https://github.com/plt/racket/wiki/RacketCon-Hackathon-2013"]{
wiki page}.
}
@h3{Schedule}
@sched[
@slot["9:30-9:55" #f]{Coffee}
@slot["9:55-10:00" #f]{Welcome}
@slot["10:00-11:00" mebassett
#:video (yt "37owCjWnkK0")]{
Racket in the Film Industry}
@slot["11:00-11:15" #f]{Break}
@slot["11:15-12:15" danl
#:video (yt "oSmqbnhHp1c")
#:slides (F "danl-slides.pdf")]{
Racket on the Playstation 3? It's Not What you Think!}
@slot["12:15-13:15" #f]{Lunch}
@slot["13:15-14:05" mflatt
#:video (yt "Z9OYc1YYLT4")
#:slides (F "mflatt-slides.pdf")]{
A Dinosaur's Thoughts on Programming Language Evolution}
@slot["14:05-14:20" #f]{Break}
@slot["14:20-14:50" jay
#:video (yt "jnPf6S0_6Xw")
#:slides (F "jay-slides.pdf")]{
The Racket Package System, or Planet 5.0 and beyond}
@slot["14:50-15:00" gregh
#:video (yt "5q-NZNGV0sY")]{
Frog: a static blog generator using Racket, Pygments, and Bootstrap}
@slot["15:00-15:20" ntoronto
#:video (yt "HmtgHVwja4k")
#:slides (F "ntoronto-slides.pdf")]{
Debugging Floating-Point Math in Racket}
@slot["15:20-15:35" #f]{Break}
@slot["15:35-15:45" mbutterick
#:video (yt "20GGVNBykaw")]{
The World's Most Dangerous Racket Programmer}
@slot["15:45-15:55" tonyg
#:video (yt "N7W3O4D8VRo")
#:slides (F "tonyg-slides.pdf")]{
Marketplace: Layered Pub/Sub Networks in Racket}
@slot["15:55-16:05" kasai
#:video (yt "bC8aS3vwO8g")
#:slides (F "asai-slides.pdf")]{
Introductory PL Course for non-CS Major Students in Ochanomizu University}
@slot["16:05-16:15" cce
#:video (yt "QfR3WhPi93g")]{
Generic Sets for Racket}
@slot["16:15-16:25" etanter
#:video (yt "b0if9pPi2_M")
#:slides (F "etanter-slides.pdf")]{
#lang play}
@slot["16:25-16:35" maxnew
#:video (yt "bXhCGZyi99w")]{
Every Program in Your Redex Model, in Order}
@slot["16:35-16:50" #f]{Break}
@slot["16:50-17:00" calvis
#:video (yt "unSvrdi8ozQ")]{
The Reasoned Racketeer}
@slot["17:00-17:10" stamourv
#:video (yt "D7uPm3J-o6g")]{
Contracts on a Budget}
@slot["17:10-17:20" jpolitz
#:video (yt "qXhhTPRrV_A")]{
#lang pyret and Captain Teach}
@slot["17:20-17:30" chrdimo
#:video (yt "jeKd2v1Uu4Q")]{
Option Contracts}
@slot["17:30-17:40" jswaine
#:video (yt "osoMIIrmHzI")]{
Automatic Complexity Analysis}
@slot["17:40-17:50" bfetscher
#:video (yt "0ueJJ1nD4p4")]{
Random Test Case Generation with Redex}
]
@; During the day, the following can be used to provide links to
@; google+ hangouts and embedded youtube casts on the con page.
@; Also good to extend the blurb in "../news-flash.rkt"
@; @h1{@a[href: "https://plus.google.com/hangouts/_/c75f10c2747c4b71a0268c21624186b661cc596f"]{Live}
@; @a[href: "https://plus.google.com/hangouts/_/7450ee29c4ce223e188d08833505139346d6fd51"]{broadcast}}
@; @table{@tr{
@; @td{@iframe[width: "360" height: "290" frameborder: "0" allowfullscreen: #t
@; src: "http://www.youtube.com/embed/Gomcqdi6kKE"]}
@; @td{@iframe[width: "360" height: "290" frameborder: "0" allowfullscreen: #t
@; src: "http://www.youtube.com/embed/p-bDXYNVz08"]}
@; }}
@h3{Google Hangout Videos}
@p{The talks were captured in two Google Hangouts, linked below.
Higher quality recordings are linked next to each of the
talk titles in the schedule.
@ol{@li{Stream 1:
@a[href: (yt "Gomcqdi6kKE")]{Part 1}
@a[href: (yt "mHVYG0L0L8g")]{Part 2}}
@li{Stream 2:
@a[href: (yt "p-bDXYNVz08")]{Part 1}
@a[href: (yt "eZeg0qsOFq0")]{Part 2}
@a[href: (yt "OAieiBrZmh8")]{Part 3}}}}
@h3{Keynote Speakers}
@h4{Dan Liebgold (@a[href: "http://www.naughtydog.com/"]{Naughty Dog})}
@h5{Racket on the Playstation 3? It's Not What you Think!}
@h5{Abstract}
@p{In this talk I will give a brief overview of DC, a custom data scripting
system developed in Racket at Naughty Dog. It has been an essential tool
for us to develop games for Playstation 3.}
@p{When developing our codebase for the Playstation 3 we decided we needed a
comprehensive scripting system to enable the creation of significant
amounts of customized data typically necessary to develop a Naughty Dog
game. Using C++ in conjunction with off the shelf tools like Maya,
Photoshop, and even internal custom game layout tools usually leaves many
large gaps in our ability to piece together the game design we envision.}
@p{As a result we selected Racket (then MzScheme) as a platform upon which to
develop a system that provided the abilities we needed. In our Racket based
system (DC), we develop a multitude of domain specific languages, a
powerful gameplay scripting system, and systems for implementing animation,
effects, and sound.}
@p{My talk will give a brief overview of our experience at Naughty Dog
building this system on top of Racket. I'll cover the nuts and bolts of how
our system works. I'll cover the challenges of C++ programmers utilizing
Racket while under the deadlines of retail software development. Ill talk
about the many opportunities this approach afforded us, some of which we
were able to capitalize on to great success, others which lay tantalizingly
just out of reach. Ill talk about the culture clash of getting C++
programmers, technical game designers, and non-technical artists to be
productive in a world of S-expressions and syntax transformations. And Ill
give an overview of some metrics of the impressive contributions our system
was able to make to the development of "Uncharted" series of games and "The
Last of Us" for the Playstation 3.}
@h5{About the Speaker}
@p{Dan Liebgold has programmed games in one form or another for most of his
life, starting on an Apple II in 4th grade. He has worked as a
professional game programmer for 17 years, 11 of them at Naughty Dog, Inc.
Some of the games he's contributed to are: Starcraft, Sacrifice, the Jak &
Daxter series and the Uncharted series.}
@h4{Matthew Eric Bassett (@a[href: "http://www.nbcuni.com/international/"]{NBCUniversal International})}
@h5{Racket in the Film Industry}
@a[name: "getting"]@h3{Getting to RacketCon}
@p{RacketCon will be held in @b{West Village H, Room 108}, at
Northeastern University. West Village H is located
at 440 Huntington Ave, Boston Massachusetts, and is building
@a[href: "http://www.northeastern.edu/campusmap/map/qad4.html"]{#23H} on
the @a[href: "http://www.northeastern.edu/campusmap/map"]{campus map}.
See also the building on
@a[href: "http://goo.gl/maps/On05h"]{Google Maps}}
@h3{Getting there...}
@dl{
@dt{by Car:}
@dd{There is very little on-street parking near Northeastern.
@[a href: "http://neu.edu/test/parking/guestparking/"]{
Visitor parking}
is available at the
@a[href: "http://neu.edu/test/parking/wheretopark/"]{
Renaissance Garage},
a few minutes walk from the conference. Driving directions from many
points are available
@a[href: "http://www.neu.edu/campusmap/directions.html"]{here}.}
@dt{by Subway:}
@dd{Northeastern is conveniently located near both the Green and Orange
subway lines. The @a[href: "http://www.mbta.com/"]{MBTA} has more
information. On the Green E line, the Northeastern stop is the
closest, and appears on the campus map below as the T symbol on
Huntington Avenue. On the Orange line, the Ruggles stop is closest
and appears on the campus map below as the T symbol in the
middle-left of the illustration.}
@dt{by Bicycle, Commuter Rail, Amtrak:}
@dd{Northeastern is located near the major Amtrak lines, and is also
accessible by commuter rail and bicycle. Please contact @|org| for
more information.}}
@h3{Where to eat}
@p{While there are no conference dinner plans, there are numerous
restaurants near Northeastern:}
@dl{@dt{@a[href: "http://www.symphonysushi.com/"]{Symphony Sushi}}
@dd{A sushi restaurant, 5 minutes walk}
@dt{@a[href: "http://www.phoandi.com/"]{Pho and I}}
@dd{Thai and Vietnamese food, 5 minutes walk.}
@dt{@a[href: '("http://maps.google.com/maps/place?"
"q=pizzeria+uno+boston&cid=11922407303454006467")]{
Pizzeria Uno}}
@dd{Deep dish pizza, 5 minutes walk.}
@dt{@a[href: "http://www.yelp.com/biz/punters-pub-boston"]{
Punter's Pub}}
@dd{A bar, adjacent to Northeastern.}
@dt{@a[href: "http://www.squealingpigboston.com/"]{The Squealing Pig}}
@dd{A bar with food, 15 minutes walk.}
@dt{@a[href: '("http://www.urbanspoon.com/r/4/54985/restaurant/"
"Back-Bay/Woodys-Grill-Tap-Boston")]{
Woody's Grill and Tap}}
@dd{Brick oven pizza, 15 minutes walk.}
}
@p{This is just a small selection;
@a[href: '("http://maps.google.com/maps?q=restaurant&hl=en&ll=42.342147"
",-71.093645&spn=0.01337,0.01929&sll=42.338636,-71.092004&ss"
"pn=0.006685,0.009645&near=440+Huntington+Ave,+Northeastern+"
"University,+Boston,+MA+02115&geocode=CUTKaBPhO49uFUwJhgId3D"
"jD-ylfch77IXrjiTHFj4qar3TSZw&gl=us&fll=42.338166,-71.092958"
"&fspn=0.013371,0.01929&z=16")]{Google}
and
@a[href: '("http://www.yelp.com/search?find_desc=&find_loc=440+Huntingt"
"on+Ave%2C+Boston%2C+MA+02115#cflt=restaurants")]{Yelp}
have many more.}
@h3{Where to stay}
@p{Numerous hotels are located close to Northeastern. The three closest
are:}
@dl{@dt{@a[href: "http://www.colonnadehotel.com/"]{The Colonnade Hotel}}
@dd{A ten minute walk from RacketCon. Ask for the Northeastern
discounted rate. Even with the discount, this is likely to be
expensive.}
@dt{@a[href: "http://www.midtownhotel.com/"]{The Midtown Hotel}}
@dd{A ten minute walk from RacketCon. A less expensive and less fancy
option.}
@dt{@a[href: "http://www.innatlongwood.com/"]{
The Best Western Inn at Longwood}}
@dd{A fifteen minute walk from RacketCon.}}
@h3{Frequently Asked Questions}
@dl{
@dt{Do I have to be a Racket programmer to attend?}
@dd{No. We welcome anyone interested in or curious about Racket to come
to RacketCon and learn about why we're all so excited about Racket.}
@dt{Will there be a registration fee?}
@dd{No. RacketCon is free to everyone who wants to attend. We
ask that you register ahead of time, so that we can
plan appropriately.}
@dt{Will the conference provide lunch?}
@dd{Yes! We will provide complimentary lunch
to registered attendees.}
@dt{Will the talks be recorded?}
@dd{We hope to record and post the talks given at RacketCon. If you are
interested in assisting with this, please let the organizers know.}
@dt{Who is in charge of RacketCon?}
@dd{RacketCon is organized by
@a[href: "http://www.ccs.neu.edu/home/asumu"]{Asumu Takikawa}
and the rest of the Racket development team.}
}
@h3{Sponsors}
@p{Support for RacketCon is generously provided by:}
@div[align: 'center]{
@sponsor["Northeastern University" "neu.edu" neu]
@sponsor["NBC Universal" "www.nbcuni.com" (copyfile #:site con-site nbcu)]
@sponsor["NU ACM" "acm.ccs.neu.edu" nuacm]
}
}})

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

View File

@ -0,0 +1,29 @@
#lang plt-web
(require plt-web/style
"resources.rkt"
"utils.rkt"
(prefix-in 2011: "2011/all.rkt")
(prefix-in 2012: "2012/all.rkt")
(prefix-in 2013: "2013/all.rkt"))
(provide index)
(define index
@page[#:site con-site
#:link-title "RacketCon" #:title "RacketCon"
#:extra-headers style-header]{
@columns[8 #:center? #t #:row? #t]{
@h2{RacketCon}
@p{@b{RacketCon 2014} will be held in St. Louis on September 20,
the day after @a[href: "https://thestrangeloop.com/"]{Strange Loop}.
Stay turned for more information!}
@p*{@b{RacketCon} is a public meeting for everyone interested in Racket:
developers, contributors, programmers, educators, and by-standers. It
is an opportunity for all members of the community to come together to
share plans, ideas, and enthusiasm. RacketCon will enable the entire
Racket community to mingle: to update each other, to exchange ideas, to
collaborate, and to help shape the future of Racket.}
@ul{@li{@2013:index}
@li{@2012:index}
@li{@2011:index}}}})

View File

@ -0,0 +1,20 @@
#lang plt-web
(require "../www/resources.rkt"
"../testing.rkt")
(provide con-site
rcon)
(define con-site
(site "con"
#:url (rewrite-for-testing "http://con.racket-lang.org/")
#:share-from www-site))
(define (rcon [year #f] . text)
(define years '(2014 2013 2012 2011))
(a href: (list ((resource "con/" #f))
(and year (not (eq? year (car years))) (list year "/")))
(cond [(pair? text) text]
[(not year) "RacketCon"]
[else year])))

View File

@ -0,0 +1,120 @@
#lang at-exp racket/base
(require "resources.rkt" racket/match scribble/html)
(provide (all-defined-out))
(define style-header
@style/inline{
a.doclink {
text-decoration: none;
color: black;
}
dt {
font-weight: bold;
}
dd {
margin-bottom: 1ex;
}})
(define (name url . rest)
(apply a class: 'name href: url rest))
(define mflatt @name["http://www.cs.utah.edu/~mflatt"]{Matthew Flatt})
(define rafkind @name["http://www.cs.utah.edu/~rafkind"]{Jon Rafkind})
(define tewk @name["http://kevintew.com/"]{Kevin Tew})
(define ryanc @name["http://www.cs.utah.edu/~ryan"]{Ryan Culpepper})
(define matthias @name["http://www.ccs.neu.edu/~matthias"]{Matthias Felleisen})
(define dvh @name["http://www.ccs.neu.edu/~dvanhorn"]{David Van Horn})
(define asumu @name["http://www.ccs.neu.edu/~asumu"]{Asumu Takikawa})
(define stamourv @name["http://www.ccs.neu.edu/~stamourv"]{Vincent St-Amour})
(define cce @name["http://www.ccs.neu.edu/~cce"]{Carl Eastlund})
(define samth @name["http://www.ccs.neu.edu/~samth"]{Sam Tobin-Hochstadt})
(define sk @name["http://www.cs.brown.edu/~sk"]{Shriram Krishnamurthi})
(define jpolitz @name["http://jpolitz.github.com/"]{Joe Gibbs Politz})
(define jay @name["http://faculty.cs.byu.edu/~jay/home/"]{Jay McCarthy})
(define rbf @name["http://www.eecs.northwestern.edu/~robby"]{Robby Findler})
(define jbc @name["http://www.brinckerhoff.org/clements/"]{John Clements})
(define dyoo @name["http://hashcollision.org/"]{Danny Yoo})
(define pr @name["http://www.cs.uwaterloo.ca/~plragde/"]{Prabhakar Ragde})
(define guillaume @name["http://gmarceau.qc.ca/"]{Guillaume Marceau})
(define moskol @name["http://www.ric.edu/faculty/amoskol/"]{Ann Moskol})
(define morazanm @name["http://www.shu.edu/academics/profiles/profile-details.cfm?customel_datapageid_148360=220477"]{Marco Morazan})
(define gregh @name["http://www.greghendershott.com/"]{Greg Hendershott})
(define mbutterick @name["http://practicaltypography.com/"]{Matthew Butterick})
(define tonyg @name["http://homepages.kcbbs.gen.nz/tonyg/"]{Tony Garnock-Jones})
(define calvis @name["https://github.com/calvis"]{Claire Alvis})
(define bfetscher @name["https://github.com/bfetscher"]{Burke Fetscher})
(define etanter @name["http://pleiad.cl/people/etanter"]{Éric Tanter})
(define chrdimo @name["http://people.seas.harvard.edu/~chrdimo/"]{Christos Dimoulas})
(define maxnew @name["https://github.com/maxsnew"]{Max New})
(define kasai @name["http://www.is.ocha.ac.jp/~asai/"]{Kenichi Asai})
(define danl @name["https://twitter.com/danl2620"]{Dan Liebgold})
(define mebassett @name["http://mebassett.gegn.net/"]{Matthew Eric Bassett})
(define ntoronto @name["http://students.cs.byu.edu/~ntoronto/"]{Neil Toronto})
(define jswaine @name["https://github.com/Zoetermeer"]{James Swaine})
(define org @a[href: "mailto:racketcon@racket-lang.org"]{the organizers})
(struct slot* (time speaker slides code video title))
(define (slot time speaker
#:slides [slides #f]
#:code [code #f]
#:video [video #f]
. title)
(slot* time speaker slides code video title))
(define (yt id) @list{http://www.youtube.com/watch?v=@id})
(define (gh id) @list{https://gist.github.com/@id})
(define (sponsor name site image)
@a[title: name href: @list{http://@|site|/}]{
@img[style: "margin: 20px; border: 0;" src: image alt: name]})
(define (sched . slots)
(table class: 'sched width: "100%" frame: 'hsides
cellspacing: 0 cellpadding: "3px"
(for/list ([sl (in-list slots)])
(match-define (slot* t speaker slides code video title) sl)
(define time
;; "figure space" for alignment
(cons (and (regexp-match? #rx"^.:" t) (entity #x2007))
(add-between (regexp-split #rx"-" t) ndash)))
(define slides-elem (and slides @a[href: slides]{[slides]}))
(define code-elem (and code @a[href: code]{[code]}))
(define video-elem (and video @a[href: video]{[video]}))
@tr[valign: 'top bgcolor: (if speaker "#ffffff" "#e8e8e8")]{
@td[width: "15%" nowrap: 'nowrap]{@time}
@td[width: "25%"]{@speaker}
@td[width: "60%"]{
@title
@span[style: "text-align: right"]{
@slides-elem @code-elem @video-elem}}})))
(define (sched* . slots)
(table class: 'sched width: "100%" frame: 'hsides
cellspacing: 0 cellpadding: "3px"
(for/list ([sl (in-list slots)])
(match-define (slot* t speaker slides code video title) sl)
(define time
;; "figure space" for alignment
(cons (and (regexp-match? #rx"^.:" t) (entity #x2007))
(add-between (regexp-split #rx"-" t) ndash)))
(define slides-elem
(and slides @a[href: slides #;(copyfile (in-here slides))]{[slides]}))
(define code-elem
(and code @a[href: code]{[code]}))
(define video-elem
(and video @a[href: video]{[video]}))
@tr[valign: 'top bgcolor: (if speaker "#ffffff" "#e8e8e8")]{
@td[width: "15%" nowrap: 'nowrap]{@time}
@td[width: "25%"]{@speaker}
@td[width: "60%"]{
@title
@span[style: "text-align: right"]{
@slides-elem @code-elem @video-elem}}})))
;; Refer to a file that has been manually uploaded
;; (relative to its referring page):
(define (F p) p)

View File

@ -6,4 +6,5 @@
;; Root URLs must be written into roots, not
;; paths within a URLs
(define (rewrite-for-testing s)
s)
(regexp-replace #rx"/$" s ".s3-website-us-east-1.amazonaws.com/")
#;s)

View File

@ -4,7 +4,8 @@
"resources.rkt" "people.rkt" "irc.rkt"
"../minis/lists.rkt" "../minis/bugs.rkt"
"../stubs/blog.rkt" "../stubs/git.rkt"
(prefix-in pre: "../minis/pre.rkt"))
(prefix-in pre: "../minis/pre.rkt")
(only-in "../con/resources.rkt" rcon))
(provide thanks)
(define thanks
@ -34,7 +35,7 @@
@mailing-lists-quick
@irc-quick
@parlist[@strong{RacketCon}
@text{@-rcon[] is our annual conference.}]
@text{@rcon[] is our annual conference.}]
@parlist[@strong{PLT Design Inc.}
@text{@blog announcements, helpful hints, and thoughtful rants.}
@text{@a[href: "http://twitter.com/#!/racketlang"]{Twitter}

View File

@ -3,7 +3,8 @@
racket/runtime-path
"irc.rkt"
(prefix-in pre: "../minis/pre.rkt")
(only-in "../stubs/docs.rkt" docs-path))
(only-in "../stubs/docs.rkt" docs-path)
(only-in "../con/resources.rkt" rcon))
;; TODO
;; -- add links in top paragraph
@ -348,7 +349,7 @@ computing and from databases to charts.
@columns[3 style: "text-color: black"]{
@h2[style: "font-size: 180%; margin-bottom: 10pt"]{News}
@p{Racket version 6.0 has been released.}
@p{@-rcon[2014]{RacketCon 2014} will be in September in St Louis.}}}
@p{@rcon[2014]{RacketCon 2014} will be in September in St Louis.}}}
@columns[12 #:row? #t #:center? #t style: "text-align:justify;font-size: 120%; margin-top: 20pt; "]{
@ -426,9 +427,9 @@ explains how to install
@row{
@columns[4]{
@panetitle{News & Events}
@p{@-rcon[#f]{RacketCon} The annual
@p{@rcon[#f]{RacketCon} The annual
Racket meeting, coming up in September. Previously
@-rcon[2013], @-rcon[2012], and @-rcon[2011].}
@rcon[2013], @rcon[2012], and @rcon[2011].}
@p{@a[href: "http://blog.racket-lang.org/"]{Blog}
Announcements, helpful hints, and thoughtful rants.}

View File

@ -6,7 +6,7 @@
(define www-site
(site "www"
#:url (rewrite-for-testing "http://racket-lang.org/")
#:url (rewrite-for-testing "http://www.racket-lang.org/")
#:navigation
(list
@a[href: (resource "stubs/pkgs/" #f)]{Packages}

View File

@ -50,14 +50,6 @@
(define* -bootstrap @make-link["http://www.bootstrapworld.org/"]{Bootstrap})
(define* (-rcon [year #f] . text)
(define years '(2014 2013 2012 2011))
(a href: (list "http://con.racket-lang.org/"
(and year (not (eq? year (car years))) (list year "/")))
(cond [(pair? text) text]
[(not year) "RacketCon"]
[else year])))
(define* (-wiki [page #f] . text)
(a href: (list "https://github.com/plt/racket/wiki"
(and page (list "/" (regexp-replace #rx" " page "-"))))