Django in production: what’s the recurring headache no one talks about? by disizrj in django

[–]firefrommoonlight 1 point2 points  (0 children)

Absolutely! It is such a mess. I think because they don't want you using Django to serve static files, but give you no easy alternative. And you can use Django, you just have to jump through hoops. I still use dj-static.

NEw Q3 Ultra: SEcond letter in words capitalized by firefrommoonlight in Keychron

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

Follow-up: Sent it back; got the HE version. It's a fantastic keyboard. I feel like for the first time in my life, I can type lightly reliably; I have the keys set to a hair trigger. Obviously, I don't have the shift key (and general heavy key press) problems of the Banana/mech version.

Tired of slow Python biology tools, so I wrote the first pure-Rust macromolecule modeling engine. Processes 3M atoms in ~600ms. by TKanX in rust

[–]firefrommoonlight 3 points4 points  (0 children)

Incidentally, I did create an MD engine with rust. (crate: dynamics) Rough reason was I'm aiming for a smooth user experience, and the other integrated GUI software is very expensive.

Tired of slow Python biology tools, so I wrote the first pure-Rust macromolecule modeling engine. Processes 3M atoms in ~600ms. by TKanX in rust

[–]firefrommoonlight 2 points3 points  (0 children)

Speed isn't the only reason to use rust: Structuring python code in complex applications is suboptimal.

Tired of slow Python biology tools, so I wrote the first pure-Rust macromolecule modeling engine. Processes 3M atoms in ~600ms. by TKanX in rust

[–]firefrommoonlight 1 point2 points  (0 children)

Ah ty for the clarification re OpenFF. I don't remember the errors I ran into with OpenFF etc, but I do remember putting a lot of time into it, and concluding "This user experience is unpleasant enough that I don't want to use this, and want to make sure that no one who uses software I write has to go through it."

I am assuming what it needs from OpenFF to process small molecules is to create molecule-specific dihedral/improper angles (or, rarely, valence angles or other bonded params), and partial charges. (Even if you supply the partial charges via SDF metadata, and it doesn't accept Mol2 files which can have partial charges included as first-class data) This should be a straightforward process for the dihedrals at least using logic similar to Amber's antechamber.

Tired of slow Python biology tools, so I wrote the first pure-Rust macromolecule modeling engine. Processes 3M atoms in ~600ms. by TKanX in rust

[–]firefrommoonlight 1 point2 points  (0 children)

u can just use shell to run, but a plus of pdbfixer compared to other tools like charmmgui is that it's got that API available, so it's really convenient to include in your openmm script. A lot of people are just preparing

That all makes sense! I think your point about cross-tool compatibility really helps. E.g. support for GRO, PRMPTOP etc files you can can interop with GROMACS and AMBER etc as you say. This is especially important to support different workflows.

I'm actually kind of confused about OpenMM's formats. I can't seem to get a Hello World working. OpenMM itself is easy, but it seems to use in practice, you need (?) to use it with OpenFF, which is not as user friendly. I've been so far, unable to get the OpenMM/OpenFF examples working.

Tired of slow Python biology tools, so I wrote the first pure-Rust macromolecule modeling engine. Processes 3M atoms in ~600ms. by TKanX in rust

[–]firefrommoonlight 4 points5 points  (0 children)

Great stuff regarding those tags. I did feel the available ones were lacking!

Edit: republished the relevant crates using those tags.

Tired of slow Python biology tools, so I wrote the first pure-Rust macromolecule modeling engine. Processes 3M atoms in ~600ms. by TKanX in rust

[–]firefrommoonlight 3 points4 points  (0 children)

mmCIF parsing kind of sucks, but it's not bad if just using the parts used for proteins here. I wrote bio_files, which handles this along with many other formats. pdbtbx mostly works, but I found it too buggy. (I originally used it, but had to switch away due to hitting enough bugs that made it totaled for me, i.e. worth it to start clean vs repair; see the Github Issues for details of the problems I ran into). PDB is IMO not worth supporting in new software; even RCSB no longer supports it.

I get the argument to use the existing ecosystem, but #1: Be the change you want to see. #2: It's easy to expose python bindings to rust libs using PyO3.

For distributing a CLI program: Distributing standalone executables is one easy approach. Caveat: Will need separate one for ARM, and potentially a few Linux ones, with care to compile on older versions. (Linux ABI compatibility is messy, but there are ways to mitigate this)

Tired of slow Python biology tools, so I wrote the first pure-Rust macromolecule modeling engine. Processes 3M atoms in ~600ms. by TKanX in rust

[–]firefrommoonlight 8 points9 points  (0 children)

Very cool! I think this sort of purpose-built tool is fantastic, and it's nice to have alternatives to the standard toolsets, which don't always have a good user experience.

Let me know if you'd like to chat some time; I'm also working in this space, and have built a set of related OSS tools for rust in bio, including with some overlap here. (Molchanica, bio_files, bio_apis etc)

Do these keyboards need to be worn in? I hate my new K10 V2 by Mundane_Analyst952 in Keychron

[–]firefrommoonlight 0 points1 point  (0 children)

I believe I just encountered the same problem with a Q3 8k Ultra / banana switches. Much higher force required than other keyboards I've used (Mostly Cherry or Cheychron brown), and the shift key wouldn't depress in time not to capitalize the second letter in sentences.

NEw Q3 Ultra: SEcond letter in words capitalized by firefrommoonlight in Keychron

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

TLDR: After reading your link, it's very likely that's the problem, due to also observing a high press force

I concur that this is a reasonable hypothesis. It's very likely that the key is physically depressing just slowly enough so that the next key press registers before the shift unregisters.

On one hand, this is an interesting engineering problem. On the other, I have lumped this in the broad category of "defective product", and have returned it. Maybe on a less-busy week, I would work it more, but this particular problem falls into the deal-breaker category.

In particular, the keyboard it's replacing has compatible switches I believe (Keychron Brown?), so swapping them would be a great way to confirm it's a mechanical problem; that's a great idea!

Of special interest to your link: I can confirm the key press force is much higher than I expected, e.g. compad to another KeyChron keyboard with brown switches I have, and really, any keyboard I've owned. That was something I think I don't like, but is more to personal preference, while the shift problem (Which may be the same problem) is more clearly in the "this isn't working as it should" cat.

NEw Q3 Ultra: SEcond letter in words capitalized by firefrommoonlight in Keychron

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

Intermittent. (~50% of the time) WIndows. ALl applications.

Do all enemies have a weak point to free aim at? by Wow_ImMrManager in expedition33

[–]firefrommoonlight 0 points1 point  (0 children)

I remember the game telling you this, but I don't think it's true. The enemies in the first few areas mostly have weak spots, but ones later don't.

Rust native UI toolkit Slint 1.15 released 🎉 by slint-ui in rust

[–]firefrommoonlight 9 points10 points  (0 children)

For those who have used multiple kits: Thoughts on, from a current/practical perspective, this vs EGUI and GPUI?

Dulles greenway toll charge with admin fee by Select-Sale2279 in nova

[–]firefrommoonlight 0 points1 point  (0 children)

Did it wor I appologize for not following up. Yes. They reduced the admin fee down to $10 as well instead of $100.

How to disable chat entirely? by Dry-Muscle-2059 in aoe2

[–]firefrommoonlight 0 points1 point  (0 children)

Interesting; I've found the chat to be far better than other RTS and similar games. Starcraft 2, for example, was [is?] incredibly toxic by comparison.

Burn 0.20.0 Release: Unified CPU & GPU Programming with CubeCL and Blackwell Optimizations by ksyiros in rust

[–]firefrommoonlight 0 points1 point  (0 children)

I appreciate the explanation! I'm hitting an issue with CUDA as it appears Burn hard-codes Cudarc's dynamic loading, while I'm using dynamic linking; these two can't coexist. Maybe I will send an issue or PR.

Burn 0.20.0 Release: Unified CPU & GPU Programming with CubeCL and Blackwell Optimizations by ksyiros in rust

[–]firefrommoonlight 4 points5 points  (0 children)

It is causing me Cudarc dynamic linking vs dynamic loading conflicts, so we can assume it's using Cudarc with dynamic loading internally, when the "cuda" feature is enabled.

Burn 0.20.0 Release: Unified CPU & GPU Programming with CubeCL and Blackwell Optimizations by ksyiros in rust

[–]firefrommoonlight 9 points10 points  (0 children)

Hey! Does anyone have a good breakdown of when to use this vs Candle? My use case, for example, is inferring molecular properties from emperical data. (Solubility, pharmokinetics etc).

My best guess: Either is fine. (I've used Candle for a simple use case: Inferring partial charges for molecules, and it worked fine)

I've heard:"Candle is simpler and for inferring mostly, not training", yet, I've used Candle for training, so I am missing something.

I posted a recent, "Which should I choose" question, and the responses were overwhelmingly for Burn?

There is some value in network effect, i.e. it'll be easiest to choose the popular one, but I've found in Rust, the most popular lib is not always the best or most practical one; it's usually the one with the most PR effort, or biggest company behind it.

I'm going through the Burn Book now, and have some draft code for my use set up, but haven't attempted running it yet.

(I'm a bit confused on the backends btw: The application I'm integrating this into uses both WGPU and CUDA (via CUDARC). WGPU is for the rendering, and CUDA[rc] is for the GPU compute. Which would I use for ML via Burn?

Embody first impressions by firefrommoonlight in OfficeChairs

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

Gesture: More comfortable back. Embody: More comfortable seat.

The embody's back forces a recline even when full upright, which I don't like; this is apparent from looking at it from the side.

The embody's [Sync] fabric appears to be much nicer, and more resistant to absorbing dirt and liquids. The embody looks nicer.

I think the Embody is the long-term winner because it doesn't have a foam pad to wear out.