Fork me on GitHub
#clojure
<
2019-06-23
>
didibus00:06:54

Wouldn't the survey be the best bet to estimate that?

devn00:06:44

Maybe? I don’t recall if it’s been translated into other languages.

carkh00:06:35

they say tens of thousands

devn00:06:33

@danielcompton that seems like a decent guess, but then I start to wonder what defines a professional clojure programmer. A lot of people know enough languages that picking up clojure isn’t a leap, or they’ve done it in the small but work primarily in another language, etc.

devn00:06:49

I’ve been doing clojure for about 8 years dedicated I think, but was contracting and working with it before then. I dunno how I would have identified myself when I was working with it, but not doing it 100% of the time.

Alex Miller (Clojure team)00:06:28

I’d guess some multiple of that, but like you said, depends who you count

Alex Miller (Clojure team)00:06:38

Based on all the data I have, I don’t think 50k is crazy if you take a broad definition

danielcompton01:06:10

The way I was imagining defining a “professional Clojure programmer” is someone who works for 30 hours/week or more and more than 50% of their time spent coding is doing Clojure

Alex Miller (Clojure team)03:06:33

In my opinion if someone pays you to write Clojure, you’re a professional Clojure programmer

danielcompton03:06:34

Sure, for my purposes of preparing a talk I was looking for a narrower definition which was more around industry usage. I certainly wouldn’t say someone couldn’t call themselves a Clojure programmer unless they did 50% of their work in Clojure

danielcompton03:06:57

As in “this many salaries are paid by writing Clojure”

danielcompton01:06:32

So probably somewhere between 10k and 50k

dpsutton02:06:14

Does anyone use the “with-test” macro?

4
aisamu02:06:42

For short, self-contained files/scripts (e.g. lein tasks)

dpsutton02:06:43

Ah good use case. I’ve just been going through docs. I think rust by convention outs tests in the same ns as the code. Wondering if anyone else did so in clojure

seancorfield02:06:30

Quite a bit of tooling won't find such tests: they either only look for test namespaces in certain folders or that match certain patterns (such as ending with -test).

seancorfield02:06:48

("by default" I should add)

dpsutton02:06:06

Yeah. That’s a good point. I’m very tools centric so I kinda want to get into more detailed knowledge like invoking tests myself, compiling etc

seancorfield02:06:53

I kinda like being able to look in a separate but related namespace for tests, from an organizational point of view

vemv14:06:19

This recent-ish behavior on compile-time errors as the clj process boots:

Full report at:
/tmp/clojure-4449509300422461865.edn
...is problematic in CI environments, since it forces me to ssh into the instance (or recreate the issue locally). Wondering if one could revert to the old behavior (print the stacktrace to stdout) somehow.

vemv14:06:20

ah, fantastic thanks, will set that prop in my leiningen setup

dpsutton21:06:47

anyone ever see this error?

/home/dan/.m2/repository/org/clojure/clojure/1.10.0/clojure-1.10.0-sources.jar(clojure/asm/SymbolTable.java):49: error: cannot access Symbol
  private static class Entry extends Symbol {
                                     ^
  bad source file: /home/dan/.m2/repository/org/clojure/clojure/1.10.0/clojure-1.10.0-sources.jar(clojure/asm/Symbol.java)
    file does not contain class clojure.asm.Symbol
    Please remove or make sure it appears in the correct subdirectory of the sourcepath.

dpsutton21:06:44

i deleted from m2 but getting the same response from cider-jack-in (which just runs /home/dan/bin/lein update-in :dependencies conj \[nrepl\ \"0.6.0\"\] -- update-in :plugins conj \[cider/cider-nrepl\ \"0.22.0-beta4\"\] -- repl :headless :host localhost

didibus23:06:18

Is there a way I can trace the memory use of a function? In a deep way, so not just the memory of the function object, but I want to know how much memory was used to execute the function.

didibus23:06:52

I tried VisualVM's sampler, but it doesn't seem to trace the execution deeply. All my functions always consume only around 16B

andy.fingerhut23:06:33

Do you mean, from the time a function starts executing, until it returns, what is the total amount of memory allocated via Java new?

didibus23:06:44

Yes, ideally

didibus23:06:18

Well, and including the stack frames

didibus23:06:09

Hum... ok, maybe what I'm doing doesn't totally make sense. I have two functions that do the same thing, in that they both process a large collection of items. I believe one of them would retain a pointer to all elements as it processes it, and thus could out of memory, and the other wouldn't. But now I'm looking for a way to test that assertion

didibus23:06:27

At first I thought, one should use more memory then the other. But, they use exactly the same amount.

didibus23:06:36

But that's mostly because profilers measure allocation

didibus23:06:51

So they allocate the same amount, because they process the same number of items, in pretty much the same way

didibus23:06:11

So it is more, which one could reclaim more memory if needed

didibus23:06:20

And I'm not sure how to test for that

carkh23:06:03

use/generate lots of data, eyeball your process memory... science !

carkh23:06:14

"qualitative measurement" =)

didibus23:06:27

Hum.. ya I guess

didibus23:06:36

with a restricted small max heap

didibus23:06:39

I'll tyr that