Thanks guys!
For me the ideal flow would be something that would allow me to save an incoming http req (I do mostly web dev) onto some variable/def, and replay it against some code I'm writing in the repl.
Also I like to use step debuggers when I'm new to the language or lib, it allows me to go down the rabbit hole and see how things work. Sometimes you find some surprises!
I think documentation on this is something that's missing on the clj community, because everyone does things a little different, but it makes it hard for beginners to get the gist of it.
I know some people that don't even have auto-reload on lein/ring and end up stopping/starting the jvm which is crazy because it takes a while.
I may write something up, I would appreciate if you guys had any more suggestions, including suggestions about where to put this info.
This is what I think it's standard practice:
- ideally you don't restart jvm
- on ring, use hot-reload/auto-reload
- app can be started from repl
- ide can eval clj expressions (send it to repl)
- people code small bits on ide, eval it, loop on this until its working - can do this for tests also
- basically the whole idea is to have components built upon functional style that can be started and invoked from the repl at any layer depth
- As for debuggers, I know some people other than Sean that dont use step debuggers at all (specially oldschool ppl), but I think its helpful for newbies
I will keep you guys updated if I ever write something. First have to learn it ;)