[HN Gopher] Datomic and Content Addressable Techniques
       ___________________________________________________________________
        
       Datomic and Content Addressable Techniques
        
       Author : lvh
       Score  : 106 points
       Date   : 2024-09-16 15:53 UTC (7 hours ago)
        
 (HTM) web link (www.latacora.com)
 (TXT) w3m dump (www.latacora.com)
        
       | linotype wrote:
       | Separate question: are there any new startups out there writing
       | code primarily in Clojure?
        
         | ekzy wrote:
         | There are quite a few! We do at Doccla (and we're hiring :)
         | (EU))
        
           | ska80 wrote:
           | > EU
           | 
           | :(
        
           | tsingy wrote:
           | Anything for juniors?
        
           | edem wrote:
           | havent touched clojure in years, but i use FP daily, can i
           | get an interview? :)
        
         | refset wrote:
         | InstantDB (YC S22) launched a few weeks ago
         | https://news.ycombinator.com/item?id=41322281
        
         | packetlost wrote:
         | I don't know about startups, but I know of several more mature
         | companies that are using it. It's, IMO, the best way to use the
         | Java ecosystem.
        
           | fiddlerwoaroof wrote:
           | Even if you never push the code to production, it's a crazy
           | gorse multiplier for the explore and adventure prototype
           | phase of a project
        
             | finnh wrote:
             | "gorse multiplier" wins today's "best transcription error"
             | award, IMO
             | 
             | category: edit-distance-two
        
               | pavlov wrote:
               | I was momentarily convinced that "crazy horse multiplier"
               | must be an American idiom, and then realized that maybe
               | the misspelled thing being multiplied is a force rather
               | than a horse after all.
        
               | fiddlerwoaroof wrote:
               | I usually catch these too and ninja edit them out
        
               | jacobobryant wrote:
               | 2nd place probably goes to another comment in this
               | thread: https://news.ycombinator.com/item?id=41560711
        
         | kaliszad wrote:
         | Yes, in fact there is also a good number of conferences, for
         | instance in less than two days https://2024.heartofclojure.eu/
         | starts in Belgium for instance (meet me there ;-) ).
         | 
         | We are writing a trading system for a small broker company in
         | Clojure/ ClojureScript with a Datomic centered backend. The
         | previous company some of us on the team worked at had the code-
         | base also in Clojure/ ClojureScript.
        
           | tsingy wrote:
           | How is the job market for juniors? Functional programming
           | jobs seems to be anti-juniors when hiring.
        
             | kaliszad wrote:
             | Hard to say, I was always contacted directly by the team/
             | had other role and later it turned out I can do a fair bit
             | of programming too ;-)
        
             | nextos wrote:
             | Sadly Common Lisp, Scheme, Clojure, Julia, OCaml, F# and
             | Haskell jobs are quite scarce.
             | 
             | For example, right now, I can only see ~50 LinkedIn EU
             | Clojure ads. A dozen more mention Clojure but it does not
             | seem to be the main focus of the job.
             | 
             | Would love to be proven wrong, though. Perhaps these jobs
             | are sometimes not advertised via LinkedIn.
        
           | lvh wrote:
           | (I'm one of the founders of Latacora and reviewed the post.)
           | If any of you are at Heart of Clojure, I'll be there both
           | wearing my Latacora hat and my Clojurists Together hat :)
        
         | tvaughan wrote:
         | Nalca Biotech
        
         | thenonameguy wrote:
         | Yup, it's still the best tool for me. Especially for complex
         | domains, as it does not allow you to over-abstract data
         | structures.
         | 
         | Schemamap.io has a declarative SQL compiler and backend
         | implemented in it, solving Postgres database syncing.
        
         | jwr wrote:
         | Definitely. It's a great tool, especially in a small and smart
         | team.
        
         | vincentdm wrote:
         | We (https://basil.net) are not new and not a startup, but our
         | main language is Clojure and each new project is written in it.
         | Very satisfied with our choice.
        
         | puredanger wrote:
         | The annual Clojure/conj conference is coming up next month in
         | Alexandria, VA (https://2024.clojure-conj.org) and there will
         | be talks from a variety of companies, both big and small.
        
       | w10-1 wrote:
       | Their content-addressing hash would seem critical, but the
       | "combineUnordered" hash they use just adds each byte. The API is
       | clear that this is only as good as possible, and I'm not sure I
       | would rely on it for data used for security investigations. I
       | suspect they'll come up with something like an arbitrary but
       | fixed order over keys that would improve hash quality.
       | 
       | More generally, while I can maybe understand what they're doing,
       | it's hard to imagine how to QA it in a way that's convincing to
       | customers without a lot of data/compute/coverage analysis.
        
         | lvh wrote:
         | Re: hashing: Yes, but I'll leave that one to Paul who is a lot
         | smarter than I am :)
         | 
         | Re: QA: can you say a bit more about the type of coverage
         | you're worried about? Is your concern that we'd be missing
         | APIs, or that the storage format itself breaks, resulting in
         | fact elision? payne (the underlying project) has a borderline
         | obnoxious amount of tests, but that doesn't mean we didn't miss
         | anything :)
        
         | paulvrutledge wrote:
         | I suspect you're right and was already having similar thoughts
         | regarding the hashing scheme. I put a patch together and am
         | going to supplement with some additional tests of the collision
         | space.
         | 
         | Unordered hashes made more sense for arbitrary Clojure data
         | structures where the keys might be complex compound objects,
         | but once we're in the land of datoms with finite value data
         | types it's pretty easy to enforce a consistent ordering.
         | 
         | (disclaimer: I wrote much of the feature and post)
        
         | juoitre wrote:
         | > in a way that's convincing to customers
         | 
         | Customers of this sort of security consulting are largely
         | uninterested in the security as much as the audit report that
         | allows them to say to their customers and incestors "we had
         | these security professionals look at our stuff and this is what
         | they said".
        
           | lvh wrote:
           | Some of our customers, like Tailscale, are a helluva lot more
           | picky than that.
        
       | lvh wrote:
       | FYI: we're planning a followup post for people who are less
       | interested in the Datomic mechanics and more interested in the
       | usefulness to investigations and other security functions.
       | Informally, I think of it this way: your SIEM has the deltas, but
       | often you want the contextual states in between the deltas (and a
       | lot of investigation is about trying to reason about that state).
       | We built this tool originally to support that, and it turned out
       | that approach was also super useful for things like compliance,
       | CSPM...
       | 
       | We already wrote a high level blog post here:
       | https://www.latacora.com/blog/2023/11/01/our-approach-to-bui...
       | -- but the one I'm hoping to write is more of a case study.
        
       ___________________________________________________________________
       (page generated 2024-09-16 23:00 UTC)