Peter Christensen

  • Presentations
  • Contact Me

Recap of Intro to Lisp Workshop

June 3, 2008 by Peter 3 Comments

Thanks to everyone who attended or helped with the Chicago Lisp User Group’s Intro to Lisp Workshop! We had a great turnout (41 people!), a great facility (thanks to IIT’s Institute of Design), food and prizes (thanks to Obtiva), plus there was some Lisp too! This page will (eventually) contain links to all of the information about the workshop, but since most of it isn’t written or produced yet, this will at least give an idea of what to look forward to. All of the presentations were videotaped and those videos will eventually be online. There is also a big stack of feedback forms waiting to be collated, and some of that feedback will be put online.

Attendee Statistics – a breakdown of the programming languages and OS of choice, as well as a geographic breakdown of where attendees came from.

Funniest Comment – someone’s IM status was set to “Developing a speech impediment…”

Presentations

  • Setting up a Lisp Development Environment – this actually didn’t end up being much of a presentation, since the setup documents for Linux, OSX, and Windows ended up being so thorough that most people didn’t need to troubleshoot.
  • Lisp Basics and Idioms (by Peter Christensen) – my intro talk that covered the history, concepts, and paradigms of Lisp. The goal was to give a big picture and proper mindset for development in Lisp.
    • HTML version of presentation slides (with links, extra resources, etc)
  • Macros (by Craig Luddington and Eli Naeher) – an interactive talk on macros, showing basics of macro development, macro examination in SLIME, and a survey of some of the built-in macros of Common Lisp.
  • Chat Server Development Demo (by John Quigley) – John started with a quiz-show style review where he tested two unwitting volunteers on their understanding of Lisps execution and development model. After that, he demoed a chat server that he wrote in about 250 lines of Lisp. Due to technical difficulties and time constraints, he wasn’t able to do the live updates, but we were proud to have several minutes of open chat on the server where no one cursed (I think the worst comment was “turd”). John has promised a demo of it at one of our meetings.

Beautiful Code: Leading Programmers Explain How They Think (Theory in Practice (O'Reilly))

Programming in Haskell

Practical Common Lisp

Book Raffle Winners

Congratulations to Luke Orland, Janet Kirsch, and (should have written down the third name) who won the following books in our registration raffle.

Gift-bag DVDs

Grant Rettke took the initiative to put together a “gift bag” DVD full of resources for people looking to learn more about Lisp development. The complete list is very long, but here is a summary:

  • Electronic versions of books like OnLisp, SICP, etc
  • Screencasts and movies like those from the SICP lectures, LispCast, the SLIME movie, etc
  • Tons of documents like my SLIME cheat sheet, intro documents for Scheme and Lisp programming, some background and historical documents, etc

We’re looking to make an updated version of this DVD, including the materials from the workshop. Please let me know if you’d be interested one – if there is a lot of interest, we might make another batch and mail them out for a small fee.

After-Party

After the workshop, a dozen or so people walked down to Elephant & Castle Pub and Restaurant. I didn’t go since I had a house full of beautiful women waiting for me (my wife and daughters ;-).

Sponsors

Special thanks to Kevin Taylor of Obtiva for sponsoring the food, drinks, gift DVDs, and the Practical Common Lisp prize book! Obtiva does on-site or outsourced development, and provides training in leading edge technologies.

Filed Under: Lisp

“Lisp Basics and Idioms” Presentation from Intro to Lisp Workshop

May 31, 2008 by Peter 4 Comments

This is an HTML version of the slides from my “Lisp Basics and Idioms” presentation at the Chicago Lisp User Group’s Intro to Lisp Workshop. It’s also videotaped but it will take a while to transfer it to digital, edit it, etc. It was a good presentation (IMHO) worth waiting for, but here’s the sneak peek (with links!).

If you want to look at the .ppt, you can download it here, but it’s pretty bare (or ugly, depending on how charitable you are), it doesn’t have as much info as the version below (no links, fewer references), and it is missing all of the good verbal ad-libbing I did when presenting. But hey, I’m not complaining if you want to see it!

***Lisp Basics and Idioms***

[Read more…]

Filed Under: Lisp

Chicago Intro to Lisp Workshop Attendee Stats

May 31, 2008 by Peter 5 Comments

[UPDATED 6/3/2008: I fixed a duplicate, found some more registration forms, and updated the stats.]

We’re blogging live from the Chicago Lisp User Group’s Intro to Lisp Workshop, and (now that my presentation is done – whew!) here are some statistics on the attendees, based on our ghetto paper signin forms.

Total People: 41. Only 5 were involved in planning or presenting, and only 10 had ever been to one of our meetings.

Total Registration Forms: 25 31. This is the baseline for all of the statistics below (except How Did You Hear?) and doesn’t include Chicago Lisp members. 22 of them wanted to receive email announcements of future meetings.

Geographic Distribution:

Within Chicago – 68%
Illinois (outside Chicago) – 13%
Out of State – 19% (Madison and LaCrosse, Wisconsin, Omaha, Nebraska, and Columbus, Ohio)
People driving over 100 miles – 7
Furthest Travelers: Blaine and Scott from Omaha – 468 miles!

% Gmail Addresses: 45%

Primary Languages (% of registrants) – people could specify more than one

Java – 48%
Ruby – 39%
Python – 29%
C++ – 26%
C – 26%
Javascript – 16%
Perl – 10%
C# – 10%
Lisp – 10%
Obj-C – 6%
PHP – 6%
Bash – 3%
Erlang – 3%
VB – 3%
Fortran – 3%
Groovy – 3%
SmallTalk – 3%

Primary Operating System (% of registrants) – again, people could specify more than one

Linux – 71%
OSX – 48%
Windows – 13%
Solaris – 3%

How Did You Hear About The Workshop? (% of those who answered) – one answer, but I forgot to write it on the form so only 14 answered it.

Chicago Linux User Group – 29%
Chicago Python User Group – 14%
Chicago Ruby User Group – 29%
Other – 36%

I’ll put up Here’s an HTML version of my slideshow “Lisp Basics and Idioms” soon. I’m not sure what to do about the Macros presentation since it’s more in depth and was very interactive on screen (and we didn’t screen capture it). I video recorded the presentations but it’ll take me a while to get them off my camcorder and edit and process them. Keep your eyes here for more goodness.

Filed Under: Lisp

Installing SBCL, Emacs, and SLIME on Windows XP

May 30, 2008 by Peter 28 Comments

My recent install guide for CLISP, Emacs, and SLIME on Windows XP was a big hit – it has had about 2000 hits and 5 sincere thanks in the comments (it even got praise from a troll!). In it I promised a similar guide for SBCL, and here it is.

The nice thing is that swapping out Common Lisp implementations within an Emacs/SLIME setup is easy, so maybe 3/4 of this guide is identical to the CLISP guide. I’ll put a disclaimer at the beginning of each section saying whether there’s anything new or whether you can skip it.

[Read more…]

Filed Under: Lisp, Programming

Recap of 5/16/2008 Chicago Lisp Meeting

May 27, 2008 by Peter 1 Comment

My math joke in the recap of the previous meeting turned out to be too conservative: this month, we had 22 people, double the turnout from last month! The meeting was held at the offices of CashNetUSA, and they were generous enough to provide pizza and drinks (for both drivers and transit riders ;-). There was a wireless transmitter but no connection to the internet, so Bruce B. routed us all through an ad-hoc network off his cellular wireless card. Next month’s meeting will be held there as well, and they promise to have a proper internet connection setup then!

<thankstosponsors>

CashNetUSA

CashNetUSA is looking for Ruby developers, or more accurately, great developers who know Ruby. They’re hiring at all levels of experience – check out their job listings. Thanks, CashNetUSA!

</thankstosponsors>

Programming Erlang: Software for a Concurrent World

John Q. donated a copy of Programming Erlang to our first book raffle, which was won by Craig L. If anyone has a book they’d like to donate, please contact me so I put it in announcements for future meetings.

Intro to Lisp Workshop

There was some more discussion about the details of the Intro to Lisp Workshop on May 31. The most noteworthy decisions were:

  • standardize on SBCL, SLIME, Emacs
  • have a set of milestone files that people who can’t keep up with the presentations can download to get themselves caught up
  • recommended screen capture softweare: xvdicap, vnc2swf

Future Meetings

We also planned presentation topics for future meetings:

  • June: Kurt S. will present on implementing interpreters, and Steve G.’s presentation on Lisp languages on the JVM got bumped to June in the interest of time at May’s meeting
  • July: Andrew W. will demo Open Genera, the operating system from Symbolics’ Lisp machines
  • future: John Q. knows a guy who could presnet on programming language topics, I will (someday) present on Weblocks

[Read more…]

Filed Under: Lisp

Setting Up and Using Emacs InfoMode

May 25, 2008 by Peter 4 Comments

Emacs has an ancient (predating hypertext), simple, powerful documentation program called Info. It’s very difficult to find info about it online (try searching for “Info”), so here’s my beginner’s guide.

Info is an output format for the Texinfo typesetting syntax. Texinfo is used for writing documentation that can be output in multiple print and digital formats and is the official documentation format of the GNU project. Info files are strongly associated with Emacs – Emacs is the primary reader for Info files, but there is also a standalone reader. Manuals are organized into a tree of nodes, with a variety of ways to navigate between those nodes.

Info files can technically be written by hand, but it is much more common for them to be compiled from Texinfo. Many Linux/Unix distros come bundled with the TeX toolchain necessary to compile Texinfo, but Windows does not. The TeX/LaTex/Texinfo on Windows post is coming in the near future. For now, stick to precompiled .info files or go dive into TeX yourself.

Emacs ships with several Info manuals – they’re in the emacs/info folder. You can also create your own Info directory, add new manuals to the directory, and create your own manuals. This guide will walk you through the steps needed to get Emacs to find your info directory, add manuals in your directory to the main directory list, and use Info from within Emacs.

[NOTE: This guide assumes you’re following the directory conventions I laid out in my previous post Installing CLISP, Emacs, and SLIME on Windows XP. It also gives you the baseline level of familiarity with Emacs to follow along here.]

[Read more…]

Filed Under: Lisp, Programming

Installing CLISP, Emacs, and SLIME on Windows XP

May 16, 2008 by Peter 57 Comments

Until this week, I had been putting off setting up a CL/Emacs/SLIME environment from scratch ever since I had trouble getting ASDF to work with Lispbox. Every time I tried, I ran into some will-sapping problem like needing to find a good Windows program for .tar.gz files, or finding the command line flags to get CLISP to run right, or figuring out the best way to setup a folder structure that matches the Unix folders used by most Lispers. Every time I fixed one problem, I ran into another. For someone out there trying to do a setup like this, there are lots of good resources, but they are either incomplete or outdated.

For instance, the Common Lisp Cookbook has a very thorough page on Setting Up an IDE with Emacs on Windows or Max OSX, but as far as I can tell, it’s from 2004 or earlier because it doesn’t mention SBCL or SLIME, two of the most popular pieces of CL development software today. Or when you run into a specific problem, it’s usually not too hard to find an answer, but it might not match the setup you’re using. That’s why I had to quit using Lispbox, because no one had any clue how it was configured, especially not on Windows. n00bs didn’t know the answers and the wizards had a traditional setup.

Here are some of the variables that contribute to the combinatorial explosion of configuration, in order or pain caused:

  • Operating system: Linux (many flavors), Mac, Windows, Cygwin
  • CL implementation: most common are SBCL, CMUCL, Allegro, LispWorks, CLISP
  • CL implementation version (I ran into a problem here)
  • SLIME version (stable 2.0 release or CVS snapshot)
  • Emacs version (I didn’t run across any problems with this)
  • I almost forgot, now there’s Cusp/Eclipse if you don’t want to use Emacs/SLIME, but right now Cusp is only tested on SBCL.

Maybe someday someone will try out all of those combinations and report, but for today, I did exactly one: Windows XP, CLISP 2.44, SLIME CVS, and Emacs 22.2 Why CLISP? After reading lots of internet, I came to the conclusion that (aside from the commercial CLs), CLISP is the best implementation for Windows users. The knocks against it are that it’s slow because it’s byte-code compiled, it doesn’t have threads, and on some points, it’s ideologically different from CL and other implementations.

Well, the performance isn’t a big concern for me (plus as I went to press, 2.45 was released with experimental JIT compilation), the threads also aren’t a big deal right now, and I think the differences will help me be aware of the considerations for writing portable code. Also regarding the SBCL windows port, it’s still considered experimental (currently v1.013 for Windows) but people are saying it’s stable and everything works except the threads. There’s even an msi installer for the Windows version. One of my next projects will be to dive into the SBCL documentation and mailing lists to get a better feel for it.

As far as the philosophy behind this (and future) setup guides, I want them to be a) thorough and b) instructive. Instructive? If you just want to take my word for everything, that’s fine, but I want you to know where I got my info from, so I’ve tried to include links to references for each step. On to the setup guide!

[Read more…]

Filed Under: Lisp, Programming

Recap of 4/18/2008 Chicago Lisp Meeting

May 1, 2008 by Peter 1 Comment

I’m proud to report that the Chicago Lisp group is experiencing monthly membership growth of over 50%! If my math is correct, by this time next year we should have close to 2500 members. That should complicate venue planning :).

[Read more…]

Filed Under: Education, Lisp

Chicago Lisp Meeting, Friday 4/18

April 15, 2008 by Peter Leave a Comment

Announcing the next Chicago Lisp meeting!

WHEN: this Friday, April 18th at 7pm.

WHERE: 210 S. Clark St, 24th floor (map). Sign in at the front desk, take the elevator to the 24th floor. There is only one suite there and the door will be held open.

WHAT:

  • John Quigley will be giving a presentation on continuations Alan Kay’s Fundamentals of New Computing Initiative (see Viewpoints Research Institute, their NSF proposal, and their one year progress report) (notes will be posted afterwards).
  • Soliciting Lightning Talk topics for next meeting (5/16). Grant Rettke has already signed up for “A Simple Object System Using Macros”. 2-3 more would be nice.
  • Some (short) planning for future meetings, Intro to Lisp workshop, etc
  • Ideas for a project we could hack together

AFTER: Food and drinks. Possibly at Elephant & Castle Pub.

We had 7 people last month, let’s try for more!

If you’d like to hear about future meetings, please subscribe to the chicago-lisp mailing list or send me your email address and I’ll add you to the invite list at Coordinatr.com.

Filed Under: Lisp

Recap of 3/21 Chicago Lisp Meeting

April 3, 2008 by Peter 5 Comments

Happy belated Chicago Lisp news!

Two weeks ago (March 21st), we had our first meeting to bootstrap the new Chicago Lisp User Group. We had 7 people show up for the initial meeting:

Craig Luddington
Eli Naeher
Victor Kryukov
John Quigley
Shaneal Manek
Dave Morrow
Peter Christensen

Items Covered:

Future meetings – We decided on monthly meetings, the third Friday of every month, 7pm. The next meeting will be Friday, April 18th where John Q. will give a presentation on continuations. The May meeting will have several lightning presentations – submissions welcome (please post a message on the Coordinatr event)! All but one of the attendees live or work in the city of Chicago, so we decided that all meetings will be held in Chicago.

Meeting locations – The first meeting was held at Ambrosia Cafe (1963 N. Sheffield, Chicago, map: http://tinyurl.com/2koztz). It was a nice place for a meeting but we’d like to find a place to meet with a projector, so presentations can be given and recorded. Some proposed locations are the IIT Institute of Design (350 N. LaSalle St) and the Harold Washington Library (400 S. State St). If anyone has an office or location they’d like to volunteer, please let me know.

Scope – We decided to keep the group and meeting open to the greater Lisp family – Common Lisp, Scheme, Arc, etc. That will be the focus of the group but all are welcome to attend. Some people expressed desire to start or adopt a project that we could work on as a group.

Name – Some people wanted a better name than “Chicago Lisp”, and who can blame them? One nomination as “LispChics” (inspired by NYC’s Lispniks) but I thought it was false advertising (7 guys with laptops, Chics, ??). The name is up in the air, nominations accepted.

Web Presence – John Q. owns the chicagolisp.org domain and Craig L. has a server he volunteered for use. A project we develop could be hosted there, and I recommended a CLiki instance for group notes. I’ve also setup a group on coordinatr.com that I’d like to try out for organizing meetings. You should get an email soon.

The common-lisp.net chicago-lisp mailing list will still be used but only as a supplement. The list is not great because of spam but there are a hundred or so subscribers still on the list that would have no other connection to the group.

Intro to Lisp Workshop – John Q. informed of a planned, all day workshop designed to introduce programmers to using Lisp – from installing and setting up an image to programming basics to advanced concepts. It is planned for a Saturday in May (date TBD, location probably Institute of Design) and volunteers would be appreciated.

Coordinatr – I’ll be trying out a new site called Coordinatr.com to manage the meetings. You can RSVP there, submit ideas for proposals, etc. You should receive email inviting you to the first two meetings shortly after this email. There is also a feed of new events created for this group here: http://coordinatr.com/feeds/rss/vcwxbvdrepk2blkbtwctez . You can get updates and reminders by email and/or SMS, but I think the RSS feed doesn’t get updated (the platform has only been out for a couple weeks). Let me know how this works – I think it’ll be better than a zillion back and forth emails.

You can view the feed without registering at the site, but you need to register AND be invited to see the event website, RSVP, post messages, etc. Good news is that you can invite new people to an existing event once you’ve registered.

Calendar:

Friday, April 18, 7pm: Chicago Lisp Meeting
Location TBD
Presentation on Continuations

Friday, May 16, 7pm: Chicago Lisp Meeting
Location TBD
Lightning presentations, accepting submissions

Some Saturday in May: Intro to Lisp Workshop
Location TBD (probably Institute of Design)
Getting started with Lisp, all-day event

Homework Items:

Name the Group! Send submissions to Peter

Lightning Talk Proposals for May 16 meeting

Locations for future meetings – 3rd Friday of the month, 7pm, ~10 people, preferably with wireless access and a projector. If you have a place, email Peter

Feedback on using Coordinator for managing events

Thanks,
Peter Christensen
DFGL (de facto group leader)

Filed Under: Lisp

Next Page »

Categories

  • Blog
  • Book Review
  • Business
  • Clojure
  • Education
  • Emacs
  • Fun
  • iOS
  • Lisp
  • Personal Sprints
  • Pictures
  • Polyphasic
  • Presentations
  • Programming
  • Rails
  • Startups
  • Uncategorized

Copyright © 2025 · Minimum Pro Theme on Genesis Framework · WordPress · Log in