I like the suggestion in namespace aliasing in
https://stuartsierra.com/2015/05/10/clojure-namespace-aliase...:
As a general first rule, make the alias the same as the namespace name with the leading parts removed.
(ns com.example.application
(:require
[clojure.java.io :as io]
[clojure.string :as string]))
Keep enough trailing parts to make each alias unique. Did you know that namespace aliases can have dots in them?
[clojure.data.xml :as data.xml]
[clojure.xml :as xml]
Eliminate redundant words such as “core” and “clj” in aliases.
[clj-http :as http]
[clj-time.core :as time]
[clj-time.format :as time.format]
Then you can see immediately what `d` is...
Namely:
(require '[dk.ative.docjure.spreadsheet :as spreadsheet])
(You would still not know the library and might have to ask the same question, but it makes more sense.)
About `d`:
There are always exceptions. For example, some namespaces have established conventions for aliases:
[datomic.api :as d]