josephrocca Singapore ML/AI, the web, XR

josephrocca/diy-perchance-api 3

A quick and hacky Perchance API using puppeteer.

josephrocca/emoji-and-symbol-regex 3

A regex to match emojis and symbols like ♘♬☾☤♪♇☛☌☧★ which aren't technically emojis. Based on @mathiasbynens/emoji-regex

josephrocca/cloud-storage-comparison 2

Performance comparisons of cloud backup storages as Duplicacy backends

josephrocca/clip-bpe-js 1

A JavaScript port of OpenAI's CLIP byte-pair-encoding tokenizer

josephrocca/deno-csv-string 1

A version of npm's csv-string package that works in the browser and in Deno

josephrocca/a-billion-divs-with-content-visibility-auto 0

An attempt at a billion divs with content-visibility:auto

josephrocca/backblaze-b2 0

Node.js Library for the Backblaze B2 Storage Service


started time in 3 days

PR closed tensorflow/tfjs-models

blazeface requires tfjs-converter cla: yes

Without it an error is thrown (tfconv missing/undefined)

<!-- Reviewable:start -->

This change is <img src="" height="34" align="absmiddle" alt="Reviewable"/> <!-- Reviewable:end -->

+1 -0

1 comment

1 changed file


pr closed time in 4 days

pull request commenttensorflow/tfjs-models

blazeface requires tfjs-converter

@lina128 Sorry! I could have sworn I just copy-pasted the readme code into a jsbin and got that error, but I've just done that now (with tfjs 3.11.0 and blazeface 0.0.7, like this) and there's no error, so you must be right. Should have included a minimal reproduction along with the pull request. Sorry again!


comment created time in 4 days


started time in 5 days


started time in 7 days


started time in 7 days

issue commentmicrosoft/NUWA

Pretrained models

For the sake of those subscribed to this thread for updates from the authors, it would be nice if there were fewer +1/"me too" type comments. Everyone is clearly excited for the code and pretrained models! :)


comment created time in 7 days


started time in 8 days


started time in 8 days


started time in 8 days


started time in 8 days


started time in 8 days


started time in 9 days


started time in 11 days


started time in 12 days

push eventjosephrocca/openai-clip-js


commit sha d768c3ba841d7a2cfe1c68cef3d6299055cab050

Update onnx-text-demo.html

view details

push time in 13 days

push eventjosephrocca/openai-clip-js


commit sha 58b864a4f847f08bd23f103cf4bf536d8179d3bc

Update onnx-image-demo.html

view details

push time in 13 days


started time in 13 days


started time in 13 days


started time in 15 days


started time in 16 days


started time in 16 days


started time in 16 days


started time in 16 days


started time in 16 days

issue commentpyodide/pyodide

Building a Python package that uses Rust

@hoodmane @rth Thanks for your tips! Having looked into this, it seems to be a bit over my head at my current level of knowledge. That said, it would be great if I could make a dent in at least part of the problem.

My understanding is that if we get a simple Python+Rust library compiled with PyO3 (with the Rust converted to wasm), then we'll be able to swap out Python with Pyodide? But from reading some of those Github issues sounds like PyO3 may create different interfaces compared to what Pyodide expects? Would someone be able to list the rough high-level problems that would likely need to be solved here?

Question: Since it should be pretty easy to compile the Rust code to wasm (+ js glue) with wasm pack (at least, going by my past experiences with wasm pack), I was wondering whether it would be possible to then import that JS module into Python/Pyodide in such a way that Pyodide essentially sees that JS module as it would the PyO3 Python module? Or would there be "interface" issues due to diferences in the way wasm pack and PyO3 generate glue code?

I wonder if it could be possible to convince Rust to emit llvm ir

The answer here says you can emit llvm-ir with cargo rustc -- --emit=llvm-ir


comment created time in 16 days


started time in 17 days

issue commentwhatwg/html

`window.pointer.{clientX, clientY, down, ...}`

There could be more than one pointer (multi-touch input), so it would have to be an array of values.

I agree with pshaughn that it might make sense to separate touch and mouse like p5 does. Making the touch an array of values seems like an good/easy solution for multi-touch. The original post wasn't really about the specifics of the API, but these are good considerations.

good to not start them off on the wrong foot by calling [the above boilerplate] "scary"

Pedagogically, it can be a good idea to show empathy with your student by voicing/anticipating what they're thinking. How you go about doing that depends on the student and the thing being taught (this is kinda off topic though).

The problem here is that the current mouse position is not necessarily the same position the mouse was in when the button was released.

I think you're arguing that this API could be a foot-gun? If this API were only useful for drawing apps, I might be inclined to agree. But even in that case I'd argue that it becomes clear where you're going wrong when, in the animation loop, you're writing if(mouseUp) .... It's clear at that point that you're not asking "Did the mouse just move up?" - you're asking "Is the mouse currently up". And if you want the former, that's the point that leads you to learning about listeners.

Adding complexity to prevent footguns does of course make sense sometimes, but I don't think that trade-off makes sense here. As far as I can tell, basically every popular framework for interactive media (including Unity and Godot, for example) gives you a way to simply/quickly access to the current input state, and my guess is that they didn't all happen to come to the incorrect decision in doing so.


comment created time in 17 days


started time in 18 days

issue commenttensorflow/tfjs

Building tfjs-converter in a Google Colab environment

@pyu10055 I added pip install tensorflowjs before the bazel command in mattsoulanille's notebook and got the same error. I may have misunderstood your instruction? The series of commands in the notebook are:

!chmod +x bazelisk-linux-amd64
!mv bazelisk-linux-amd64 /usr/local/bin/bazel
!git clone
%cd tfjs/tfjs-converter/python
!pip install tensorflowjs
!bazel build python2_wheel python3_wheel
!./ /content/my_tensorflowjs_pip

and it fails at the bazel command.


comment created time in 18 days