- High level overview https://yogthos.github.io/ClojureDistilled.html
- Interactive exercises http://clojurescriptkoans.com/
- Community-powered Clojure courses https://clojurecademy.com/
- Interactive book https://www.maria.cloud/
- Interactive workbook http://viewer.gorilla-repl.org/view.html?source=github&user=lspector&repo=clojinc&path=worksheet.clj
- Clojure by example https://github.com/inclojure-org/clojure-by-example
- Clojure workshop https://github.com/friemen/cugb/blob/master/kickstart.md
- Clojure style guide https://github.com/bbatsov/clojure-style-guide
The web is full of benchmarks showing the supernatural speed of Git even with very big repositories, but unfortunately they use the wrong variable. Size is not important, but the number of files in the repository really is!
Why is that? Well, that's because Git works in a very different way compared to Synergy. You don't have to checkout a file in order to edit it; Git will do that for you automatically. But at what price?
The price is that for every Git operation that requires to know which files changed (git status, git commmit, etc etc) an lstat() call will be executed for every single file
Wow! So how does that perform on a fairly large repository? Let's find out! For this example I will use an example project, which has 19384 files in 1326 folders.
;; `get-repos-branches-page` ommited but it basically calls GitHub GraphQL API using the following query | |
(def repo-branches-query " | |
repo_name%s: repository(owner: \"%s\", name: \"%s\") { | |
owner { | |
login | |
} | |
name | |
defaultBranchRef { | |
name | |
} |
We are looking to hire a skilled Clojure/ClojureScript developer to help build a new platform for medical knowledge. By applying Machine Learning and Natural Language Processing to medical literature, we aim to give experts the insights they need to make informed decisions.
The project is part of Doctor Evidence, a company based in Santa Monica, CA. At this moment a small team is working remotely (GMT+2, EU timezone) on this project as a full-time Research & Development effort.
You will work in a small team that will architect and build the next-generation of data science tools for Evidence Based Medicine and Health Technology Assessment. A good fit would be someone who can work quickly while still following best practices, who thrives on new technology, and has an avid interest in medical informatics and machine learning.
What we offer
- Flexible work hours from the comfort of your home
We are looking to hire a skilled Clojure/ClojureScript developer to help build a new platform for medical knowledge. By applying Machine Learning and Natural Language Processing to medical literature, we aim to give experts the insights they need to make informed decisions.
The project is part of Doctor Evidence, a company based in Santa Monica, CA. At this moment a small team is working remotely (GMT+2, EU timezone) on this project as a full-time Research & Development effort.
You will work in a small team that will architect and build the next-generation of data science tools for Evidence Based Medicine and Health Technology Assessment. A good fit would be someone who can work quickly while still following best practices, who thrives on new technology, and has an avid interest in medical informatics and machine learning.
What we offer
- Flexible work hours from the comfort of your home
The original website containing this interview has disappeared. I've googled a bit to find this transcript. I'm saving it myself to provide another link to the great interview and preserve it.
Rich Hickey Q&A by Michael Fogus
Best known as the inventor of Clojure, a Lisp that runs on the Java Virtual Machine and the first new member of the Lisp family to attract any widespread interest since Scheme and Common Lisp, Rich Hickey has been a software developer and consultant for two decades.
Prior to starting work on Clojure, he made four attempts to combine Lisp with either Java or Microsoft’s Common Language Runtime: jfli, Foil, Lisplets, and DotLisp but Clojure was the first to draw significant attention. To date there have been four books published on Clojure, including The Joy of Clojure by interviewer Michael Fogus. The first Clojure conference, ClojureConj held in 2010, drew over two hundred attendees. And the Clojure Google group has, as of this writing, 4,880 members who have posted over 46,000 mes
SPC s c remove highlight | |
**** Files manipulations key bindings | |
Files manipulation commands (start with ~f~): | |
| Key Binding | Description | | |
|-------------+----------------------------------------------------------------| | |
| ~SPC f c~ | copy current file to a different location | | |
| ~SPC f C d~ | convert file from unix to dos encoding | | |
| ~SPC f C u~ | convert file from dos to unix encoding | |
I hereby claim:
- I am jumarko on github.
- I am jumarko (https://keybase.io/jumarko) on keybase.
- I have a public key ASBUegVxjx5i7Pc2diY7qWyMhdFE3uOrGWlzSH09c_ojNAo
To claim this, I am signing this object:
A list of commonly asked questions, design decisions, reasons why Clojure is the way it is as they were answered directly by Rich (even when from many years ago, those answers are pretty much valid today!). Feel free to point friends and colleagues here next time they ask (again). Answers are pasted verbatim (I've made small adjustments for readibility, but never changed a sentence) from mailing lists, articles, chats. The link points back at them.
If you are talking about the aspect of pattern matching that acts as a conditional based upon structure, I'm not a big fan. I feel about them the way I do about switch statements - they're brittle and