Pinned toot

Finally got my single-board-computer working as a USB device! :blobaww:

Now to get the host side working.

And here's a shoutout to the Linux kernel for letting me do almost all of this in user-space! :linux:

Good morning to every web team that doesn't aggressively push mobile web visitors into their app

And Kludge is open-source too. Here's the link to the GitHub if you're into that sort of thing.

github.com/cuchaz/kludge

Show thread

:newl: Kludge :newr: , my /ImGUI library for /JVM officially supports windows now! :yes: 🎉 🍻

I’ve been trying for hours to fix a bug in my Vulkan app.

When my fragment shader writes to a R32G32_SINT color attachment, the bits I can read out aren’t the bits I wrote in. But only on Windows, not Linux. The drivers says it supports this format, usage, layout, and tiling though.

Turns out, HP stopped updating the drivers about two years ago. So I installed the new Intel graphics drivers and the problem went away!!

It really was a bug in the graphics drivers! You don’t see that very often.

We have ourselves a winner in the 2nd Programming Language World Championships! #plwc2020

Congratulations to Python, which was able to defend its title in a narrow 55 - 45 victory over C.

Third place goes to Rust with a convincing 68 - 32 against Lua.

Thank you to everyone who participated in the polls! See you next year for the third edition!

Fun thing about working with relatively new programming languages, like Kotlin:

Sometimes you really do see compiler crashes.

Luckily, I was just using an older EAP version, and updating to a newer version fixed the problem!

It's like my entire life prepared me for this... 🤔

Opinions on developer productivity, by the venerable Cliffski:

“The best code, is the combination of three things:

Simplicity, Performance, Readability.

A lot of really, really good code looks fairly boring, because boring is often simple, fast and readable.”

positech.co.uk/cliffsblog/2020

Do you already now tosdr.org/? “I have read and agree to the Terms” is the biggest lie on the web. We [terms of service: didn't read] aim to fix that.

The GUI and 3D rendering is all based on the Kludge library (BSD license!).

github.com/cuchaz/kludge

Everything is written in and integrates for the rendering and for the GUI.

Show thread

Here's some more progress on my Molecular editor/viewer thingy for work. I'm working on a tool to focus on and highlight only certain parts of the molecule.

Here you can see a Phenylalanine residue up close and personal!

An intro to GPGPU programming in Java by Dmitry Aleksandrov:

blogs.oracle.com/javamagazine/

It mostly focuses on OpenCL, but mentions the very interesting Aparapi project, which translates JVM bytecode to GPU kernels automatically. I can’t imagine that translation would result in very optimized kernels, but it could be a quick and easy way to get started with GPGPU in pure Java.

I ran across this article today clarifying when using a document store (eg MongoDB) is a good idea, and when it's not, compared to a traditional database (eg PostgreSQL).

It makes a lot of sense actually, since it's hard to relate disparate documents together without database support for the relations. But the article, being from 2013, is pretty old now.

Do these arguments still hold up today?

sarahmei.com/blog/2013/11/11/w

Just for the lols, I set up a twitch stream where you can control my office room lighting. Let's see how crazy this gets 😂

Type "color red/green/blue/purple/..." in the chat!

twitch.tv/codecereal

Ignoring the incendiary title, this article presents an intuitive derivation of 3D rotations using rotors rather than quaternions:

marctenbosch.com/quaternions/

The two approaches seem to me to be exact duals of each other, but maybe rotors are easier to understand?

This is one of the ways math is super cool because you can explain the exact same phenomenon in multiple different ways.

See also: Singletons considered harmful.

Concurrency is hard to get right.

Show thread

Wow, I actually managed to observe an obscure JRE deadlock bug in the wild. It was apparently reported in 2010 and it's now marked as "wontfix" in v8 JREs. =(

bugs.java.com/bugdatabase/view

We're still supporting v8 JREs, because you know, backwards compatibility. Luckily the workaround is pretty easy.

At least I think so... you never really know for sure if you fixed a concurrency bug or not.

Show more
Mastodon for Tech Folks

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!