Clojure - from beginner to advanced

Go from beginner to expert in Clojure development

3.85 (186 reviews)
Udemy
platform
English
language
Programming Languages
category
1,061
students
6 hours
content
Jan 2024
last update
$54.99
regular price

What you will learn

Clojure development

Set up Clojure environment

Basics of Clojure development

Advanced Clojure topics

Practical application development

Concurrent programming in Clojure

Description

Clojure is the most widely used member of the Lisp family of programming languages, the second oldest high level programming language family in widespread use today.

In a 2019 survey, StackOverflow named Clojure the highest earning programming language worldwide, and second highest in the United States.

This course will

  • take you from a complete beginner in Clojure

  • explain in detail the theoretical aspects of Clojure development

  • implement it in a practical application, to show you a real world scenario

After this course you will have the knowledge and experience to use Clojure in all your development projects.

Basic topics will cover:

  • Leiningen

  • REPL

  • Syntax

  • Variables and functions

  • Primitive data types

  • Data structures

  • Control structures

  • let

  • Loops

  • Exception handling

  • Namespaces

  • Functional programming

  • Destructuring

  • Recursions

  • Closures

Advanced topics will include:

  • Dynamic and lexical scopes

  • Read-Eval-Apply

  • Macros

  • Reducers and transducers

  • Concurrent programming

  • Various libraries and tools

We cover a lot of ground in this course, and we will implement the concepts practically so that you get not only theoretical knowledge but practical experience as well.

Sign up today, and let's learn all you need to know about Clojure.

Content

Introduction

Introduction
Freebies and updates
What is Clojure and brief history
Clojure installation on Windows
Clojure installation on MacOS
Clojure installation on Linux
Leiningen - clojure project manager
IDE installation
REPL
Hello world

Language basics

Section overview
Syntax, clojure expressions
Global variables and function definition
Primitive data types
Basic data structures
Immutability

Language structures

Section overview
Control structures (if, case, cond)
Local scope variables
Loops
Exception handling
Namespaces
Functional programming basics
Destructuring
Threading macros
Recursion
Closures

Advanced language concepts

Section overview
Dynamic and lexical scope
Read, eval, apply
Macros
OOP: Protocols
OOP: Multimethods
Transducers
Concurrent programming

Ecosystem and useful libraries

Section overview
Java interoperability
File I/O
Dependencies in Leiningen project
JSON processing
HTTP client, server, routing
HTML templating
SQL databases: postgres
NoSQL databases: mongo
Testing in Leiningen project
Go-like concurrency library

Project

Project overview
Basic compojure application
MongoDB - Articles service
Hiccup - base page template
Create and edit article pages
Login page and middleware
CSS and markdown
Docker

Conclusion

Conclusion and thank you

Screenshots

Clojure - from beginner to advanced - Screenshot_01Clojure - from beginner to advanced - Screenshot_02Clojure - from beginner to advanced - Screenshot_03Clojure - from beginner to advanced - Screenshot_04

Reviews

John
June 28, 2023
Actually, I recently heard about clojure, bought the course and determine to want to understand and apply all the tools to be proficient Clojure Developer and to find a job with this programming journey!
Mr_D
May 7, 2023
Brilliant coures that helped me put what I had read from various books together. From theory to actually building something I could use. Thank you!
Manoj
December 30, 2022
Pace is a little fast, could be explained more slowly. Also the transcript is of no use, words do not come out as they should
Manuel
December 18, 2022
Pues la verdad es que me estoy (para mi sorpresa) enterando de las cosas (pensaba que esto iba a ser muy complejo) si le echo a faltar un capitulo para configurar el editor de la forma que el lo tiene (creo que es emacs), pues su intellisense es superior al de vscode con Calva
Gabriel
November 29, 2022
Up until the point I am at this course, it presents well Clojure functionality. But it lacks to present more elaborate examples as the instructor only showcases the commands, which you can basically do by reading the docs. Sometimes it's also hard to follow due to the strong accent (and the automatically generated transcription also doesn't help).
Edgar
July 6, 2022
Es un buen curso, aunque no se profundizó en los temas. Hubo fragmentos de código en los ejemplos que no los explicó
Amit
July 3, 2022
Still now it is going fine except software installation tutorial, which should be elaborated as per my opinion.
Roberto
April 26, 2022
The explanations from sections 2-4 are great, I learned a lot from those. Section 1: was very hard to deal with, (just to get clojure functioning on my machine) it wasn't clear enough. Section 5: is fine, takes a bit of time to follow correctly. Section 6: For the project, I don't really understand what the purpose of docker was, which confused me. I ended up struggling with an error (MongoTimeoutException) when working with the cljblog.db file (never got around this error).
Jason
April 21, 2022
0 to 60 in 2 seconds. Good course, but the student will need to know lisp and functional programming first. I found that I need to pause to make sense out of some of the examples.
Charl
March 29, 2022
Very thorough. I sometimes struggled with the presenter's English accent, but not so much that it was that great a problem.
Gabriel
January 8, 2022
O instrutor usa termos complicados para quem nunca teve contato com Clojure Além disso tem um setup usando um editor de texto "não amigável", que no caso seria o Emacs. Quem nunca teve contato com programação ou que nunca mexeu com o editor em si pode ficar perdido
Ricks
November 12, 2021
I think its better to edit the video, cutting unecessary typing, and uhuhum for example. the audio is harmful really my ears is hurting, i will be glad if you filter the audio to not be to acute, the keybord noise specially is too lould :( . Im only hinting some of aspects that can make the course better.
Alice
October 21, 2021
If you don't know how to program, this course is not for you. It doesn't teach you to program, it teaches clojure to those who already know how to program. If you are familiar with the basics of full-stack development and want to know how to do it in clojure, then this course is perfect. There are not a lot of courses on clojure out there and this is a pleasant alternative to reading the docs. The instructor introduces the syntax, explains what makes clojure special and demos important libraries. I enjoyed following along on my own computer and I especially appreciated the project at the end on building a web app and launching it as a docker container. Very satisfying. My suggestion to improving this course would be to fix the transcript: automatically generated captions for a technical subject taught with an accent is just not working, AI is not there yet. Would also be great to have some exercises to work out at your own pace between the sections.
Rick
May 13, 2021
Instructor is clearly unprepared. Doesn't explain a lot, basically just types things into the REPL and even makes mistakes along the way. The instructor's level of English is pretty poor.
Mh
May 7, 2021
Great course if you already have some programming experience. I like his get to the point attitude. This guy does not waste your time if you know programming and want to learn Clojure.

Charts

Price

Clojure - from beginner to advanced - Price chart

Rating

Clojure - from beginner to advanced - Ratings chart

Enrollment distribution

Clojure - from beginner to advanced - Distribution chart

Related Topics

3312414
udemy ID
7/8/2020
course created date
1/25/2021
course indexed date
Bot
course submited by