HN user

notpublic

173 karma
Posts1
Comments70
View on HN

From the commit history, it looks like you are using Claude for some of the development. Would love to hear how you are using Claude to go through such a massive code base.

btw, impressive project.

Thanks! In my search for a good STL for the following, your app gave me the closest model so far!

https://m.media-amazon.com/images/I/41hGjsBlrKL._AC_SL1000_....

I tried Google/Claude etc. But none worked. As per Claude, the technical name for that is Pillow Block Bearing/Shaft Coupling Block/Flange Mount Bracket. Funny thing is, your app didn't return any good result when I search with any of those terms.

After reading your blog post, I searched for "block with 2 holes". And lo and behold, it returned ABC-00162357!

Couple of suggestions: 1) Have a permanent link for each model 2) Show related models when a model is clicked 3) and lastly, show models based on an image

edit: Search for "mounting block" returned ABC-00180735 which is exactly what I was looking for. Thank you so much for making this!

Try adding a session hook that triggers on startup|resume|clear|compact to remind Claude about your custom skills.

Another thing that helps is adding a session hook that triggers on startup|resume|clear|compact to remind Claude about your custom skills. Keeps things consistent, especially when you're using it for a long time without clearing context

Instead of including all these instructions in CLAUDE.md, have you considered using custom Skills? I’ve implemented something similar, and Skills works really well. The only downside is that it may consume more tokens.

"A report was recently published by an AI-research company called Anthropic. They are the ones who notably created Claude, an AI-assistant for coding. Personally, I don’t use it but that is besides the point."

Not sure if the author has tried any other AI-assistants for coding. People who haven't tried coding AI assistant underestimates its capabilities (though unfortunately, those who use them overestimate what they can do too). Having used Claude for some time, I find the report's assertions quite plausible.

Indeed! I just found out about tmux display-popup recently.

  # ~/.tmux.conf 
  bind-key C-g display-popup -E -d "#{pane_current_path}" -xC -yC -w 80% -h 75% "lazygit"
Then, in tmux:
  ctrl-b ctrl-g will open a popup window with lazygit
  q to quit

My experience has been just the opposite. We have moved all our apps to Elixir now. It has one of the best developer experience to work with. Especially for concurrent programming.

I suspect OP is using an umbrella app as a shared library or something. That is the only explanation I can think of that can cause the issue with compilation order.

About documentation, not quite sure what the OP is talking about. Elixir and Erlang have really good documentation.

Anyway, to truly appreciate Elixir (and for that matter Erlang), one needs to understand OTP and the philosophy behind it. It is not just a language but a framework to build concurrent application.

..but things like macros in Ecto....

Well, The whole language itself is built on macros. The following series of articles certainly helped me stop worrying and love the macros..

https://www.theerlangelist.com/article/macros_1

Some interesting insights from the article: "Elixir itself is heavily powered by macros. Many constructs, such as defmodule, def, if, unless, and even defmacro[1] are actually macros...."

[1] https://github.com/elixir-lang/elixir/blob/v1.18.2/lib/elixi...

I have been using it for more than a year now in both production and at home. So far so good. Even GPU works out of the box in rootless mode without requiring any special privileges. edit: Redhat in production and Debian at home

Do try it. We use it for text search in one of our apps and works remarkably well. Basically to find which chunks contain the given text. Since the text can span multiple chunks, a simple string search will not work.

Instead of doing a diff, curious if Normalized compression distance (NCD)[1] will yield a better result. It is very simple algorithm:

to compare two images, i1 and i2

  l1  = length(gzip(i1))
  l2  = length(gzip(i2))
  l12 = length(gzip(concatenate(i1, i2))

  ncd = (l12 - min(l1, l2))/max(l1, l2)
Here is a nice article where I found out about this long ago.

https://yieldthought.com/post/95722882055/machine-learning-t...

From the article:

"Basically it states that the degree of similarity between two objects can be approximated by the degree to which you can better compress them by concatenating them into one object rather than compressing them individually."

[1] https://en.wikipedia.org/wiki/Normalized_compression_distanc...