off-topic

https://github.com/clojurians/community-development/blob/master/Code-of-Conduct.md Clojurians Slack Community Code of Conduct. Searchable message archives are at https://clojurians-log.clojureverse.org/
Dimitar Uzunov 2021-04-01T07:45:04.456500Z

Does anyone use a SLOC counter for Clojure that ignores (comment ) forms? tokei for example considers only ;; to be a comment

borkdude 2021-04-01T07:49:03.457600Z

@dimitar.ouzounoff How about empty lines?

Dimitar Uzunov 2021-04-01T07:49:36.457900Z

it counts them separately

Dimitar Uzunov 2021-04-01T07:50:11.458100Z

borkdude 2021-04-01T07:50:51.458800Z

nice. I think rewrite-clj could be suited to implement a more specialized sloc counter for Clojure, taking into account comment and #_

👍 2
borkdude 2021-04-01T07:50:58.459Z

See #rewrite-clj

Stefan 2021-04-01T08:33:54.460900Z

@dimitar.ouzounoff Just wondering: for Clojure, would you be interested in the number of lines, or the number of forms? I feel the latter should probably give better information. Depending on what you want to use it for of course, but with a lisp I guess I care less about lines.

Dimitar Uzunov 2021-04-01T08:35:48.462Z

I’m not sure to be honest, especially if one uses a lot of threading macros.. unless they are unwound

Stefan 2021-04-01T08:36:00.462500Z

Same with test coverage: form coverage is interesting, not so much line coverage.

Dimitar Uzunov 2021-04-01T08:36:13.462900Z

and keeping SLOC as a measure allows for comparison with other languages

Stefan 2021-04-01T08:37:03.463900Z

Yeah that’s what I meant with “depending on what you want to use it for”, but I guess I’m not so much interested in this metric at allo so I’m the wrong person to talk to about that 😉

vemv 2021-04-01T11:10:49.467100Z

In some teams we've run linters against a targeted LOC count. Some friends target <150, I tend to be fine with <350 it's a good thing for keeping namespaces focused/maintainable and also yielding dep trees that are faster to reload (with require :reload or tools.namespace)

vemv 2021-04-01T11:11:30.467300Z

YMMV though and all that :)

borkdude 2021-04-01T11:13:11.467600Z

For a minute I thought you meant 350kloc code-bases

vemv 2021-04-01T11:13:53.468100Z

also good to lint for <100kloc codebases 😂

2021-04-01T13:20:18.468300Z

My last job our main app was ~5.5 million lines of code 😞

2021-04-01T13:20:37.468500Z

But not CLojure, C# .NET

lilactown 2021-04-01T14:47:58.471100Z

don't take away my 1kLOC core.cljs 😾

2021-04-01T14:48:43.471600Z

Are there separate terms to describe these two phases of "parsing" data from an outside source: - transforming json into "richer" data, ie date strings into Instants or UUID strings to objects - then transforming those maps into domain objects used by my application

lilactown 2021-04-01T14:49:56.471900Z

would the first one be conforming?

lilactown 2021-04-01T14:50:46.473Z

second one I would consider calling "reifying"

dpsutton 2021-04-01T14:50:58.473400Z

words like raw and intermediate come to mind. naming things IL or intermediate language and realizing the boundary of it can be quite helpful

2021-04-01T14:52:48.474300Z

good one's thanks! "Richify" kept popping into my head for the first one

Joe 2021-04-01T14:52:52.474500Z

How about ‘type enriching’ and ‘conforming’?

2021-04-01T14:53:38.474800Z

Yeah "enrich" is probably better 🙂

borkdude 2021-04-01T14:54:03.475200Z

I think the first phase is usually called coercing

👍 1
🎯 2
borkdude 2021-04-01T14:54:24.475400Z

e.g. https://github.com/exoscale/coax also calls it this

2021-04-01T14:55:28.476Z

cool

vemv 2021-04-01T15:28:35.478400Z

hydration comes to mind for the latter step

borkdude 2021-04-01T15:43:25.478800Z

@ctamayo We have a channel for this: #news-and-articles

coby 2021-04-01T15:57:49.478900Z

thanks, I'll move it there

Karthikeyan Annamalai 2021-04-01T16:06:35.479200Z

If you haven't noticed this already. Share across your team. https://www.linkedin.com/posts/karthikeyan-annamalai-0aa3003a_free-april-2021-activity-6783417946850123776-grMh

2021-04-01T18:33:57.481400Z

Should you continue to use a library from an author who adhere to conspiracy theories? Or broadly speaking what is the place of politics in software engineering?

marrs 2021-04-01T18:35:19.482200Z

Depends on whether the library is any good or not

2021-04-01T18:36:30.483600Z

Maybe it is the same question as why we keep using WhatsApp or Instagram while knowing the damage from FB did on some minorities...

2021-04-01T18:47:30.485800Z

Its kinda interesting because unlike supporting commercial organizations, you're not really helping someone by using their library, you can generally keep the fact you're using it fairly secret to even avoid giving them a negligible amount of credibility. Still I could see it feeling wrong if their views are particularly awful

👍 1
2021-04-01T18:50:22.489100Z

Also to the extent that you bog them down with bug reports that they work on, you have some ability to shift their time from being used on being awful to being useful to the public

2021-04-01T19:08:03.494Z

If its a single person, I don't really care about their political affiliation or their views. If the code is good, it's good. But I try not to use anything by big companies like Facebook, WhatsApp, Twitter, Instagram etc as I think they are really damaging society. But if a guy writes a good useful library, I don't care if he's a fruitloop

marrs 2021-04-01T19:12:08.495900Z

If I don't financially support a business, it is because of that business's actions, not the views of its employees. I don't have a problem with people having opinions I disagree with

2021-04-01T19:12:34.496400Z

Yeah, I mean, I have a mate who doesn't really believe in dinosaurs, still love the dude

❤️ 1
2
2021-04-01T19:15:06.498300Z

meaning what, exactly? that they never existed?

2021-04-01T19:19:32.498500Z

Yeah

2021-04-01T19:19:40.498700Z

That all the fossils are fake

2021-04-01T19:46:10.499Z

Fascinating. I thought I’d heard everything before, but nope.

lilactown 2021-04-01T20:28:03.001300Z

I think the relationship I have with a library maintainer is different than the relationship I have with a business.

lilactown 2021-04-01T20:28:42.002Z

I am much more likely to communicate directly with the maintainer of a library. personally I enjoy the community aspect of participating in open source - e.g. discussing features, reporting bugs, contributing code and docs, answering questions

☝️ 1
lilactown 2021-04-01T20:32:26.005200Z

with a corporation like WhatsApp or Instagram, I'm calculating how much harm the company does and whether I want to tacitly support that. It's very indirect; I am unlikely to be harmed, it's more about trying to act in concert with many others who share my beliefs in order to limit the corps impact and my own culpability.

lilactown 2021-04-01T20:35:07.007500Z

with a library maintainer, I'm less worried about widespread impact (unless they are a VERY popular lib) and more worried about if they're going to tell me to get bent if I report a bug, or if they are arrested for storming a capitol and I have to take over maintenance of a library 😄

1
🙂 1