{"id":15483136,"url":"https://github.com/timothypratley/enterprise-clojure-training","last_synced_at":"2025-04-16T05:57:25.905Z","repository":{"id":48768115,"uuid":"121720419","full_name":"timothypratley/enterprise-clojure-training","owner":"timothypratley","description":"A Clojure training course for Developers and Senior Developers","archived":false,"fork":false,"pushed_at":"2023-10-07T19:43:26.000Z","size":17193,"stargazers_count":75,"open_issues_count":6,"forks_count":14,"subscribers_count":6,"default_branch":"master","last_synced_at":"2024-04-18T03:20:46.674Z","etag":null,"topics":["clojure","training","training-materials"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"epl-1.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/timothypratley.png","metadata":{"files":{"readme":"README.adoc","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-02-16T06:12:52.000Z","updated_at":"2024-05-30T00:13:02.023Z","dependencies_parsed_at":"2024-05-30T00:24:15.563Z","dependency_job_id":null,"html_url":"https://github.com/timothypratley/enterprise-clojure-training","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/timothypratley%2Fenterprise-clojure-training","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/timothypratley%2Fenterprise-clojure-training/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/timothypratley%2Fenterprise-clojure-training/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/timothypratley%2Fenterprise-clojure-training/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/timothypratley","download_url":"https://codeload.github.com/timothypratley/enterprise-clojure-training/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249205745,"owners_count":21229985,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["clojure","training","training-materials"],"created_at":"2024-10-02T05:10:47.437Z","updated_at":"2025-04-16T05:57:25.888Z","avatar_url":"https://github.com/timothypratley.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"= Enterprise Clojure Training\n\n\u003e \"Clojure is serious business!\" -- Timothy Pratley\n\nA Clojure training course for Developers and Senior Developers working on Enterprise software.\n\nPlease visit the https://timothypratley.github.io/enterprise-clojure-training[Website] to see the precompiled course material.\n\nA list of companies and individuals offering Clojure training is here https://clojure.org/community/training[this page].\n\n\n== Rationale\n\nClojure has been in the \"adopt\" zone of the Thoughtworks tech radar since 2014.\nBut companies face the challenge of how to prepare their staff to be productive using Clojure.\nCreating a structured enterprise style course material will enable more people to offer Clojure courses suitable for companies wanting to adopt Clojure.\n\n\n== Usage\n\nSlides have https://github.com/hakimel/reveal.js/wiki/Keyboard-Shortcuts[Keyboard shortcuts].\n\n\n== Contributing\n\nIf you have suggestions on how to improve this course, I would love to hear them.\nIssues welcome. Pull requests welcome.\n\n\n== Developing\n\nThe manual and slides source material are under the `docs` directory.\nThe material is written in asciidoc (.adoc) format, which gets compiled to HTML and PDF.\nThey are built to HTML and PDF using https://asciidoctor.org[Asciidoctor], and output to the `site` directory.\nRefer to the https://asciidoctor.org/docs/asciidoc-writers-guide[Writer's Guide] for syntax.\nAsciidoctor provides excellent document producing features and allows slides to be generated as RevealJS slideshows.\n\nWhen editing the material, there are many live preview tools to chooose from https://asciidoctor.org/docs/editing-asciidoc-with-live-preview[here].\nI use the IntelliJ plugin as it is simple to install and works well.\nThere is also a `./watch.sh` command to build when the source file changes.\nThe Web (Epiphany) browser reloads from disk when the HTML file changes.\n\n\n=== Building\n\nThe easiest way to build is to run\n\n    ./bb.sh\n\nThis script relies on bundler (See The Ruby way for more info).\nIt will install dependencies and build the documents into html/pdf.\n\n\n=== With installed CLI tools.\n\nYou can install asciidoctor, asciidoctor-pdf, and ascidoctor-revealjs locally and run\n\n    ./build.sh\n\nBut installing these tools is a bit of a pain... so two ways to get the dependencies are provided:\n\n\n==== The Ruby way\n\nRequires https://www.ruby-lang.org/en/documentation/installation[Ruby].\n\nYou don't need to install Asciidoctor.\nAsciidoctor is a dependency specified in the Gemfile.\nHowever you will need Ruby and Bundler to pull down the Asciidoctor and RevealJS plugin dependencies.\n\nRequires Bundler:\n\n    gem install bundler\n\nPull the dependencies:\n\n    bundle --path=.bundle/gems --binstubs=.bundle/.bin\n\nNow you can call the build script:\n\n    bundle exec ./build.sh\n\nThe `./bb.sh` just does these two steps for you.\n\n\n=== Rebuild on file modified\n\nTo have the build watch for file changes and rebuild automatically:\n\n    ./watch.sh\n\nYou need `entr` (Event Notify Test Runner) installed for watch to work, I highly recomend it.\n\n    brew install entr\n\nOr\n\n    apt install entr\n\n\n==== The Docker way\n\nAlternatively, if you prefer pulling a Docker image over installing dependencies:\n\n    docker run -v $(pwd):/documents/ asciidoctor/docker-asciidoctor /documents/build.sh\n\n\n== Deploying\n\nTravisCI automatically deploys the latest version to https://timothypratley.github.io/enterprise-clojure-training[GitHub Pages].\nimage:https://travis-ci.org/timothypratley/enterprise-clojure-training.svg?branch=master[Build Status, link=https://travis-ci.org/timothypratley/enterprise-clojure-training]\n\nManual deployment:\n\n    ./deploy.sh\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftimothypratley%2Fenterprise-clojure-training","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftimothypratley%2Fenterprise-clojure-training","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftimothypratley%2Fenterprise-clojure-training/lists"}