Fork me on GitHub
David Pham18:07:38

Do you think any FAANG/MANGA company would allow one of their dev to use babashka/Clojure to increase their own productivity? I like babashka tasks, and I wonder if I will be allowed to use it xD


Possibly. At least Apple has had job postings before looking for folks that know Clojure.


In any case, I suspect it will be very team specific, and the org's IT policy will loom large. Basically, I think there is zero chance of a "sure thing", if it has to be checked into the team's source control. If you have liberty to install your own IDE / dev tools, well then have at it, I say! What happens on one's box stays on one's box... Although it will all be corporate property if one develops the tooling on the corporate box.


Counterpoint: how would you feel if a peer created scripts in ruby, or zig, or groovy because it feels more productive to them?

David Pham12:07:28

Good point. It already occurred to me and I did not mind. What mattered was the style of the script (well defined pure functions and good name).

David Pham12:07:18

Is it not at the same level as IDE choice if the code does not leak into production code?


Counter-counterpoint (a bit tongue-in-cheek): I write my Bash is ubiquitous. Nobody wants to use Bash 😅


In other words, whenever one has to do things by consensus, one has a consensus problem :D


Bash is the only common shell allowed at GOOG, by the way. Their style guide is quite nice.

David Pham12:07:51

It is funny in the first paragraph they outright say that if the script becomes too big, just use a more structured lang xD


But, I'm of the view that with FP discipline, one can achieve a tremendous amount in a few tens to a few hundred lines of Bash. The "whoa, there, ease up" limit in my head is ~1 KLoC of FP-style Bash.


In that sense, I draw upon ideas in Clojure (as well as the Unix tools philosophy), to make it all out of data-oriented, pipeline-friendly pure functions.


I use bash in team settings, with shellcheck and a set -Eeuxo pipefail it's a decently maintainable language it does have a limit, but when that limit is surpassed, instead of reaching for a "nicer scripting language", I'd simply make a program in whatever is our main lang of choice

David Pham12:07:23

Even if that lang is R? XD

😅 1

I've been blogging about FP-style bash here: And on a little SSG, complete with hot-build and hot-reloading, only with shell tools. The core logic is about 250 LoC Bash 🤓 (minus HTML template code).

Ben Sless09:08:58

Speaking from experience of not being able to install my own IDE (no sudo permissions), standalone executables, the jvm and compiling things yourself can go far 🙂

👍 1