pdd
pdd copied to clipboard
Perm Dev Day talk repository
java.ural.Meetup #2 talk notes
Здесь исходники чата, который я показывал на java.ural.Meetup в рамках доклада по Clojure. Для правильной работы требуется бинарник MyStem в текущем каталоге.
Ссылки на русскоязычные ресурсы
Telegram канал русскоязычного сообщества Clojure-разработчиков https://t.me/clojure_ru
Clojure Ekaterinburg на meetup.com https://www.meetup.com/ru-RU/Clojure-Ekaterinburg/
Ссылки из презентации
- Ссылка на презентацию
- https://thenewstack.io/the-new-stack-makers-adrian-cockcroft-on-sun-netflix-clojure-go-docker-and-more/
- https://blog.cognitect.com/blog/2015/6/30/walmart-runs-clojure-at-scale
- Clojure in Netflix (HN Discussion)
- https://jobs.apple.com/en-us/details/114424334/senior-clojure-software-engineer
- Teaching Clojure at IBM - Steve Shogren
- https://thoughtworks.github.io/p2/issue09/two-months-early/
- https://puppetlabs.com/blog/introducing-puppetdb-put-your-data-to-work
- Realtime Collaboration with Clojure - Leonardo Borges
- https://clojure.org/community/success_stories
- https://www.reddit.com/r/Clojure/comments/68r4lz/one_of_facebook_projects_migrating_from_clojure/
- Comment from discussion on HN about Amazon abandoning Clojure projects
- Techempower Round 17 JSON serialization benchmark
- https://snyk.io/blog/jvm-ecosystem-report-2018
- https://redmonk.com/sogrady/2018/08/10/language-rankings-6-18/
- https://github.com/shilder/jum
- https://t.me/clojure_ru
Где узнать больше про Clojure ?
Официальный сайт: https://clojure.org
Вообще про Lisp
The Nature of Lisp Хорошая статья по поводу того, зачем в лиспе все эти скобки:
Beating the averages Своего рода классическая статья от Paul Graham про Lisp, про скобки и прочее
Обзоры Clojure
Эти видео довольно старые, но тем не менее они нисколько не потеряли актуальности
The Curious Clojurist with Neal Ford Хороший обзор Clojure с примерами кода, рассказом про особенности многопоточного программирования, немного метапрограммирования. (2012 год)
Clojure for Java Programmers Part 1 - Rich Hickey Довольно подробное введение от автора языка, где он объясняет какие есть структуры данных и как это все работает, в формате ориентированном на Java-разработчика (2012 год)
Философские и архитектурные решения от Rich Hickey
Рекомендуются к просмотру чтобы понять идеи и архитектуру языка. Опять таки, видео уже старые, но все идеи которые в них озвучены актуальны и сейчас
Are We There Yet Объясняются идеи, на которых построена Clojure, как подходы применяемые в этом языке отличаются от традиционного ООП. Также обсуждается подход к "управлению временем", отличие value от identity, задачи и особенности реализации Persistent Data Structures (2009 год)
Simple made easy Классика Rich Hickey. Объясняются идеи стоящие за Simple, отличия simple от easy и способы построения этих самых simple систем (2011 год).
Rails Conf 2012 Keynote: Simplicity Matters by Rich Hickey Тоже самое что и предыдущий доклад, но немного по-другому сформулировано (2012 год)
The Language of the System - Rich Hickey Доклад про особенности построения систем (2013 год)
Метапрограммирование в Lisp и Clojure
Clojure: Deep Walking Macros Видео от Timothy Baldridge по поводу макросов в Clojure
Протоколы и мультиметоды
Solving the Expression Problem with Clojure 1.2 Неплохая статья где рассказывается про то, какую проблему решают протоколы и мультиметоды
Polymorphic performance Статья, в которой объясняются отличия протоколов, мультиметодов, switch и if/else с точки зрения производительности
Persistent Data Structures
Видео от Rich Hickey с объяснением встроенных структур данных Clojure Data Structures Part 1 - Rich Hickey
Статья, на основании которой были реализованы структуры данных для Clojure (и для Scala): Ideal Hash Trees
Цикл статей с подробным объяснением структуры Persistent Vector в Clojure:
Альтернативная реализация Persistent Data Structures для Java Bifurcan
Различные ссылки
Design patterns на clojure Список типичных ООП паттернов и примеры как их можно реализовать на Clojure.
Thinking in Data Доклад по поводу разработки с использованием данных
REPL driven development: immediate feedback for you backend code Доклад про разработку с использованием REPL
Ссылки на проекты (системы), написанные на Clojure
- https://github.com/uxbox
- https://github.com/someteam/acha
- https://github.com/bevuta/pepa
- https://github.com/lupapiste/lupapiste
- https://github.com/tonsky/grumpy
Ссылки на библиотеки, написанные в хорошем стиле (по моему мнению)
- https://github.com/funcool/clojure.jdbc
- https://github.com/funcool/buddy-core
- https://github.com/funcool/buddy-sign
- https://github.com/clojure/clojure/blob/master/src/clj/clojure/java/io.clj