Skip to content
View arogozhnikov's full-sized avatar

Highlights

  • Pro
Block or Report

Block or report arogozhnikov

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
arogozhnikov/README.md

Hi-hello 👋

I enjoy working on really challenging scientific questions that will make a long-term difference.

My current focus is ML + Bio (more specifically, protein design), but previously I developed a bunch of ML methods for CERN.

You can find my development/ML projects here on github: first of all, check einops (unless you already use it 😏).

Projects I'm interested in

Are you looking for a programming project? I have some ideas for you:

einops support in ruff

Einops is very readable per se, and mistakes are generally easy to detect, but how about making it even simpler with static analysis?

Some examples where it could be useful

rearrange(x, 'b h w c -> b (h w)') # complain on missing c
rearrange(x, 'b h w 3 -> b (h w) 3') # anonymous axes like 3 are not available in rearrange
rearrange(x, 'b (h w) c -> b h w c') # complain that either h or w should be provided
einops coloring in vs code

Wouldn't it be great if reduced or added dimension was immediately colored? Something like:

Screenshot 2024-06-28 at 13 59 28
unix sockets in SSH-over-HTTP

Do you use SSH? I guess you do, since you're on github.

I've been using unix sockets (UDS) as endpoints for containers for a while now, and it (mostly) rocks.

Several similar containers can live on the same instance, and each mounts a folder with UDS (multiple services usually). Domain sockets can provide access to various web-servers, and almost anything can serve from UDS.

(If you use TCP port forwarding for containers, try using UDS, you may like it much better, specially if you manage many endpoints or containers! No security issues, and you can easily add/remove sockets on the fly and without port clashes! Spice with using symlinks for synonyms, and network management stops being ugly.)

Back to the point: openssh-server does not support serving on unix socket, so I use ugly hack with socat redirecting request to TCP port. Openssh-client does not support connecting to domain socket (easy to fix this in config though).

While (unmerged) patches are available to support UDS in openssh, I'm on the market for something next-gen, e.g. something like SSH3 + serving/connecting to unix sockets.

Remarks related to all project above

What exactly I am ready to help with (details)

If you think taking one of these projects, I am ready to test your solution, provide user feedback, maybe put in prodiction, and if it works, cover it here or in my blog. (or einops docs if it is relevant to einops).

Note that doesn't include development, but programming is something enjoyable,
while finding someone interested in using your work is usually non-trivial.

Pinned Loading

  1. eindex eindex Public

    Multidimensional indexing for tensors

    Jupyter Notebook 107 2

  2. einops einops Public

    Flexible and powerful tensor operations for readable and reliable code (for pytorch, jax, TF and others)

    Python 8.1k 337

  3. python3_with_pleasure python3_with_pleasure Public

    A short guide on features of Python 3 with examples

    3.6k 242

  4. infiniteboost infiniteboost Public

    InfiniteBoost: building infinite ensembles with gradient descent

    Jupyter Notebook 183 23

  5. hep_ml hep_ml Public

    Machine Learning for High Energy Physics.

    Jupyter Notebook 176 64

  6. 3d_nn 3d_nn Public

    Raymarching neural network in browsers with WebGL shaders

    JavaScript 190 31