Code Clinic: Clojure
3h 16mIntermediate2016-09-20
Authors

Caleb Smith
Software Developer, Trainer, Speaker
Course details
Successful programmers know more than how to code. They also know how to think about solving problems. Code Clinic is a series where our authors solve the same problems using different languages. Here Caleb Smith works with Clojure, a Lisp-based programming language. Caleb introduces a series of challenges and then provides overviews of his solutions in Clojure. Challenges include performing statistical analysis, searching directories for images, and accessing peripheral devices.
When you're done, visit other courses in the series to see how to solve the same challenges in languages like C++, C#, JavaScript, PHP, Python, R, Ruby, Go, and Swift. By comparing and contrasting the results, you can better understand the architecture of each language and its strengths and weaknesses.
When you're done, visit other courses in the series to see how to solve the same challenges in languages like C++, C#, JavaScript, PHP, Python, R, Ruby, Go, and Swift. By comparing and contrasting the results, you can better understand the architecture of each language and its strengths and weaknesses.
Skills covered
ClojureLimited SeriesProgramming LanguagesOpen SourceSoftware Development
Concepts
0. Introduction
- 01 - Welcome
- 02 - What you should know
- 03 - Installing and setting up
- 04 - Using the exercise files
- 05 - Getting the most out of Code Clinic
1. Problem 1 - Exploring Lake Pend Oreille
- 06 - Exploring Lake Pend Oreille
- 07 - Solution overview
- 08 - Making web requests
- 09 - Using a database
- 10 - Averages and medians
- 11 - Date and time
- 12 - Parsing weather data
- 13 - Populating the DB
- 14 - Displaying results
- 15 - Command-line interface
2. Problem 2 - Image Analysis
- 16 - Image analysis
- 17 - Solution overview
- 18 - Installing OpenCV
- 19 - Using OpenCV
- 20 - Comparing images
- 21 - Inspecting the results
- 22 - Extending the comparison
- 23 - Processing all images
- 24 - Command-line interface
3. Problem 3 - Eight Queens
- 25 - Eight queens
- 26 - Solution overview
- 27 - Concept overview
- 28 - Permutation solution
- 29 - Inductive solution
- 30 - Inductive solution with recursion
- 31 - Comparing the solutions
- 32 - Displaying results
- 33 - Command-line interface
4. Problem 4 - Accessing Peripherals
- 34 - Accessing peripherals
- 35 - Solution overview
- 36 - Quil overview
- 37 - Setting up Quil
- 38 - Creating graphics and capture events
- 39 - Creating sound
- 40 - Integrating sound
5. Problem 5 - Recursion and Directories
- 41 - Recursion and directories
- 42 - Solution overview
- 43 - Parsing EXIF data
- 44 - Searching directories
- 45 - Creating files and directories
- 46 - User interface - Create a window
- 47 - User interface - Create components
- 48 - User interface - Listen for actions
- 49 - User Iiterface - Wire up listeners
- 50 - User interface - Demo
6. Problem 6 - Building the Web
- 51 - Building the web
- 52 - Solution overview
- 53 - Reading CSV data
- 54 - Generating HTML
- 55 - Parsing HTML
- 56 - Demoing HTML page