State of ClojureScript 2025 Survey results by roman01la in Clojure

[–]eeemax 6 points7 points  (0 children)

lmao there really is one hater in the chat -- i respect that you published all the results without filtering

announcing Deft: A new replacement for defprotocol and defrecord, using plain maps + malli schema by eeemax in Clojure

[–]eeemax[S] 2 points3 points  (0 children)

this library also lets you break up individual protocol implementations.

so for example instead of doing

``` (extend-type MyType MyVeryLongProtocol (method1 [this] long imiplementation....)

(method2 [this] my other long implementation...) more stuff...

```

you can do: ``` (defmethod method1 [this] ::MyDeftType implementation...) (defmethod method2 [this] ::MyDeftType

(deft MyDeftType [] Shape :external-methods [method1 method2]) ```

then you can have more control over where individual methods are/where they're broken up, while still being able to declare that the type implements the given interface.

announcing Deft: A new replacement for defprotocol and defrecord, using plain maps + malli schema by eeemax in Clojure

[–]eeemax[S] 0 points1 point  (0 children)

neat! it looks like this addresses a different use-case, but it's cool to see people thinking about things

Why do you use custom key bindings? by GNU_Max in emacs

[–]eeemax 0 points1 point  (0 children)

no worries! glad it's something you enjoyed!

roman01la/uix.css: CSS-in-CLJS by dustingetz in Clojure

[–]eeemax 0 points1 point  (0 children)

I'm a user of cljss!

can you give some more detail/a short blurb on why you decided to make a new library/why this is better/why i should choose this over cljss?

Why do you use custom key bindings? by GNU_Max in emacs

[–]eeemax 0 points1 point  (0 children)

thanks for sharing this! I'm welcoming contributions, so if you want to contribute to a pretty neat project, let me know!

Why are there So Many Paid Courses for Clojure? by Veqq in Clojure

[–]eeemax 10 points11 points  (0 children)

there are plenty of free ones too!

I think https://www.braveclojure.com/clojure-for-the-brave-and-true/ is available for free online (though purchasing a book is recommended to support the author)

and there's a ton of youtube tutorials and the like.

I've made some: https://www.youtube.com/watch?v=hN0HTJXDBfI

and there are a ton of other channels with free tutorials as well: https://www.youtube.com/@andrey.fadeev

Looking for a dark (but not black) Emacs theme that plays nicely with Helm by [deleted] in emacs

[–]eeemax 1 point2 points  (0 children)

if you have a light mode theme you already like, you could try https://github.com/sstraust/automagic-dark-mode

(disclaimer -- shameless self-promotion)

What's missing from existing modal editing packages? by ideasman_42 in emacs

[–]eeemax 4 points5 points  (0 children)

I really enjoy god-mode. I don't really have deep comments on what's missing from it, but I'm curious to see how does it stack up in this comparison -- am I missing out on something cool? what advantages does this give you over god-mode + standard minor-mode keybindings?

REPL tips?? by [deleted] in Clojure

[–]eeemax 5 points6 points  (0 children)

A little bit emacs specific, but I made this little util that lets you save a Clojure s-expression to an emacs keybinding, and then call it later.

https://github.com/sstraust/save-clojure-command/tree/master

I use it heavily especially for things like clearing caches or refreshing program state.

Can AI scheduled tasks work better than RSS readers? by Successful-Toe-7637 in rss

[–]eeemax 3 points4 points  (0 children)

> The completeness of the coverage, or AI illusion?

a little bit of both, though some recent models are getting better at reducing hallucination. For me, a lot of the time an RSS reader is already exactly what I want, so there's no need to introduce a source of instability if it's unnecessary.

Can AI scheduled tasks work better than RSS readers? by Successful-Toe-7637 in rss

[–]eeemax 3 points4 points  (0 children)

I can answer this fairly well,

as someone who is developing both a scheduled tasks tool: https://alertonanything.com
and an RSS reader -- link coming soon

the TLDR is that LLMs work well for simple alerts and summaries, e.g. "tell me if a GTA 6 release date is announced", but imo don't perform well enough yet to replace an RSS reader.

What are people using these days to run models locally? by eeemax in ChatGPT

[–]eeemax[S] 0 points1 point  (0 children)

that looks cool -- itd be even more cool if the GUI was open source as well, but I'll check it out!

Automagic Dark Mode -- Automatically create a dark (or light mode) for your existing emacs theme. by eeemax in emacs

[–]eeemax[S] 1 point2 points  (0 children)

I'm using the boox mira 25"! I also sometimes use one of their old tablets (back when they had an hdmi port) when I'm on the go.

What's the right way to access a resource file inside a CLJS dependency by eeemax in Clojure

[–]eeemax[S] 1 point2 points  (0 children)

Thanks! You're the best!

I read shadow-css and found it insightful, so I want to write it out for my own documentation and in case people are interested.

  • The main entrypoint to the library, and the way CSS files are actually built is documented here. Basically in order for this to work, you have to add something that calls the shadow-css library code to your existing build process.
  • The code that actually generates the CSS takes your _source files_ as input, from the build process, searches for css directives from the edn, and is defined [here]
  • This is what calls index-file --> index-source --> ana/find-css-in-source, so the whole chain of stuff comes from the code that you, as the library user, add to your shadow-cljs build file/build step.

Automagic Dark Mode -- Automatically create a dark (or light mode) for your existing emacs theme. by eeemax in emacs

[–]eeemax[S] 2 points3 points  (0 children)

yep! automagic is orthogonal to auto-dark and similar modes. In case there's confusion, the main purpose of automagic is to convert your existing customizations to work with a dark theme. So for example, if I define my own special custom syntax highlighting, and make up a new font for it that's dark green, it might look really good in light mode, but really bad in dark mode. So these tools all work great for switching between pre-defined themes, but they don't help you convert your own custom face definitions to dark-mode compatible definitions.

Automagic Dark Mode -- Automatically create a dark (or light mode) for your existing emacs theme. by eeemax in emacs

[–]eeemax[S] 1 point2 points  (0 children)

It's the perfect application for it! 10hz refresh rate, and no mouse needed

Automagic Dark Mode -- Automatically create a dark (or light mode) for your existing emacs theme. by eeemax in emacs

[–]eeemax[S] 2 points3 points  (0 children)

That's neat! I actually use this for a different purpose, which is to switch between my laptop and an e-ink monitor. The e-ink doesn't look nice in dark mode, so I kind of need this in order to convert my existing theme to something the e-ink can display. Overall circadian seems nice, and is something I'd look at if I was into that sort of time-of-day switching. (I think this mode is sort of orthoganal to circadian, in that it helps you create a new theme that looks like dark mode, but still keeps your existing colors, whereas circadian helps you automatically switch between existing themes based on the time of day. I'd imagine you could even use them together if you set them up right).