..

Week of the 03/17/2025 - #12

Contents

tech

  • Open source translation
  • Calendar.txt
  • Tailscale
  • Wireguard
  • Deep dive into LLMs like ChatGPT by Andrej Karpathy (TL;DR)
  • How Core Git Developers Configure Git
  • Game development related articles
  • 38C3: Illegal Instructions
  • Mathesar
  • 64 (game)
  • Book archives
  • Apple //c developer
  • Cool oldskool demos
  • Artificial Intelligence of Things: A Survey
  • WaveNerd

art

  • VIET GD

Open source translation

Nowadays with so many opensource LLMs and AI software you do not need the internet or Google Translate to be able to access translation technology. One very popular alternative is Argos Translate. Here are some useful links related to open source translation efforts

  • Argos Translate - Open source. Check Mark Python library, Web app, API, Desktop app. Check Mark State of the art neural machine translation. Check Mark Train and package custom language models.
  • Argos Translate GH - Open-source offline translation library written in Python

Calendar.txt

Keep your calendar in a plain text file. Calendar.txt is versionable, supports all operating systems and easily syncs with Android mobile phone. You can read more about it here. You can see a sample calendar.txt here:

2021-02-15 w07  Architecture week
2021-02-15 w07 Mon  9-12 project groups. 17 jogging. 
2021-02-16 w07 Tue  9-11 John 12-16 architecture meeting
2021-02-17 w07 Wed  8-14 +lp. 14:15-16 +mp
2021-02-18 w07 Thu  write out architecture
2021-02-19 w07 Fri  12-13 board
2021-02-20 w07 Sat  
2021-02-21 w07 Sun  10 ski with N
2021-04  Grand rollout
2022  The year of foobar
  • todo.txt - “If you want to get it done, first write it down. If you have a file called todo.txt on your computer right now, you’re in the right place. So many power users try dozens of complicated todo list software applications, only to go right back to their trusty todo.txt file. But it’s not easy to open todo.txt, make a change, and save it—especially on your touchscreen device and at the command line. Todo.txt apps solve that problem.”
  • https://syncthing.net/ - “Syncthing is a continuous file synchronization program. It synchronizes files between two or more computers in real time, safely protected from prying eyes. Your data is your data alone and you deserve to choose where it is stored, whether it is shared with some third party, and how it’s transmitted over the internet.”
  • Markor - Text editor for Android - Notes & ToDo. Lightweight. Markdown and todo.txt support.

Tailscale

Going through Hackernews I came across this article which describes how the user was able to access his Raspberry Pi from the internet using Tailscale. The article descibes how he used it and also some other interestings uses. One interesting use is Taildrop which is similar to AirDrop but without needing to be in proximity to the other device.

  • Tailscale - “Tailscale is a secure, peer-to-peer VPN that lets you connect your devices to the internet without a central server.”
  • Taildrop - “Taildrop lets you send files between your personal devices on a Tailscale network (known as a tailnet).”
  • Wireguard - “WireGuard® is an extremely simple yet fast and modern VPN that utilizes state-of-the-art cryptography. It aims to be faster, simpler, leaner, and more useful than IPsec, while avoiding the massive headache. It intends to be considerably more performant than OpenVPN. WireGuard is designed as a general purpose VPN for running on embedded interfaces and super computers alike, fit for many different circumstances. Initially released for the Linux kernel, it is now cross-platform (Windows, macOS, BSD, iOS, Android) and widely deployable. It is currently under heavy development, but already it might be regarded as the most secure, easiest to use, and simplest VPN solution in the industry.”
  • Localsend - “Share files to nearby devices. Free, open-source, cross-platform.” This does not use Wireguard but is related to Taildrop. Github repo.

Deep dive into LLMs like ChatGPT by Andrej Karpathy (TL;DR)

This is a really nice article that summarizes a 3 and a half hour YouTube video called “Deep dive into LLMs like ChatGPT.”. From the article: “A few days ago, Andrej Karpathy released a video titled “Deep dive into LLMs like ChatGPT.” It’s a goldmine of information, but it’s also 3 hours and 31 minutes long. I watched the whole thing and took a bunch of notes, so I figured why not put together a TL;DR version for anyone who wants the essential takeaways without the large time commitment.”

  • Deep dive into LLMs like ChatGPT by Andrej Karpathy (TL;DR) - The article which is the TL;DR of the YouTube video.
  • “Deep dive into LLMs like ChatGPT.” - This is a general audience deep dive into the Large Language Model (LLM) AI technology that powers ChatGPT and related products. It is covers the full training stack of how the models are developed, along with mental models of how to think about their “psychology”, and how to get the best use them in practical applications. I have one “Intro to LLMs” video already from ~year ago, but that is just a re-recording of a random talk, so I wanted to loop around and do a lot more comprehensive version.
  • Andrej Karpathy - I like to train deep neural nets on large datasets 🧠🤖💥. GH repo. His Twitter account
  • Tiktokenizer - This is a cool site that shows how each LLM tokenizes text. Very cool. Here is the GitHub repo for it

These links come from the YouTube video description and are also very interesting to read:

VIET GD

Propaganda poster

VIET GD is a casual index, archive, and celebration of Vietnamese graphic design.

VIET GD was created as a result of a history of graphic design course taken during my first year in an MFA Graphic Design program. During one of the lectures, we were shown an example of a Vietnamese propaganda poster created during the Vietnam War. Internally, this raised a lot of questions and encouraged me to question my own assumptions about the value of Vietnamese graphic design, my relationship to it as an Asian American, and why Vietnamese art and design is seemingly “underdeveloped” or if that’s just bias from having grown up in the United States. Having come across some “casual” archives prior, I became inspired by the idea of starting a Vietnamese graphic design archive.

How Core Git Developers Configure Git

This is a great article that shows some interesting ways to configure git. It’s a great read if you’re a developer and want to learn more about git. It’s also a great read if you’re a developer and want to learn more about how to use git.

Game development related articles

OutRun video screen capture

38C3: Illegal Instructions

The 38th Chaos Communication Congress (38C3) takes place in Hamburg, 27.-30.12.2024, and is the 2024 edition of the annual four-day conference on technology, society and utopia organised by the Chaos Computer Club (CCC) and volunteers. Congress offers lectures and workshops and various events on a multitude of topics including (but not limited to) information technology and generally a critical-creative attitude towards technology and the discussion about the effects of technological advances on society.

Mathesar

Secure, spreadsheet-like tool for Postgres data. An intuitive, open-source UI to view, edit, and query Postgres data—easy to deploy with robust access control.

64 (game)

A clone of the 2048 game but where you need to reach 64. Fun to burn time. Here’s the link.

Game screenshot

Book archives

These two sites contain most of the books I need:

Apple //c developer

Going through the Facebook group for Apple II developers I came across Mike Neil. He has some interesting articles and software. He also has an Apple //c and faced problems with RAM chips so maybe he can help me with my //c issues.

He is working on a device to broadcast Video to anoter device using an ESP32c6. Here are his notes from a couple of posts he did on Facebook:

Post on Sep 10, 2024

View IIc: Apple IIc Remote Display via ESP32c6 and WiFi.

Back in mid May I bought an Apple IIc (thanks Jonathan). I wanted to have something I could do some electronics and programming projects on. My first project is “View IIc” and while I got early versions working back at the end of June, this morning I got it all working pretty well.

I’m using the SEROUT bitstream and other signals from the IIc video port to recreate the scan lines, compress them and ship them across WiFi to an application running in my PC.

This has been a lot of fun. Wiring up the 5V IIc signals to the 3.3v ESP32c6’s 3.3v via a 74LVC245. Learning ESP32-IDF SDK. Figuring out how to use the ESP32’s HW to DMA and decode the signals and compress/transmit the data over WiFi. Figure out how to deal with the wacky timing of the WNDW signal. Port the ubiquitous AppleWin NTSC simulation code to C# to run on the PC and display the uncompressed bit stream. I also built a little telemetry package that sends stats from the c6 to the PC for debugging and tuning (numbers and charts on the right side of the window).

Lots more to do, but pretty proud that some long dormant brain cells still work. Plus it’s been fun to listen to 80’s rock and play Choplifter while I work. 😁. If anyone is interested in details, schematics and code, let me know in the comments. If there is interest, I’ll write them up and post. Cheers! 👾

Thanks to A2DVI, A2VGA (Alex Lukazi) for inspiration.

Post on Jul 13, 2024

I’ve been making progress on View IIc, my Remote Desktop solution for the //c. On the software side, it is more than just the “happy path” prototype I posted a while back. I implemented mDNS rendezvous between the IIc and the client, so no more hard coded IP addresses. I built a dictionary style scanline compressor that scales from 1-16 entries and significantly reduces bandwidth (along with the differential compression). The client does B&W, Monitor and NTSC emulation, scale, full screen, copy to clipboard, etc. I also learned KiCAD (that was fun) and designed a PCB to replace the breadboard. I had one hardware “bug” in v1 where I reversed power and ground on the MCU, so new boards on the way from Shenzhen next week (“hacked” one with a Dremel and jumpers to get it to work!).

I still need to do WiFi provisioning, but after that I’ll post the HW and SW designs/code so others can play with it. I’ll make the PCB available on PCBWay. I also have plans for sound, keyboard and game port, but for a future version(s).

I have three questions for the community:

  1. Are there programs that give other video card solutions a hard time? Double High Res? Weird video modes, etc? That I should test with? HGR, Text40 and Text80 seem to work well…
  2. Does anyone have a PAL //c (and a Win10/11 PC) that would be willing to alpha test? I’m curious if any of the timings are different or if it would even work…
  3. Would folks be interested in a HDMI version (no PC) that just let them use an HDMI monitor with a //c? I have an idea how to do that…

Post on Oct 27, 2024

Making progress on View IIc, my Remote Desktop solution. I’ve been removing all the hardcoded stuff. The client (Win 10/11) and device (ESP32/IIc) rendezvous with mdns instead of hard coded IP addresses. Last big item was WiFi provisioning the ESP32-c6 (SSID/password). There are solutions to use a phone/BT to transfer credentials (clunky), but I figured I have an Apple IIc with a perfectly good keyboard connected! 💡 Only problem is I have no way to communicate other than a one-way 14MHz video bit stream. 🤔. So why not just OCR the display to get the WiFi configuration? 🤷‍♂️😳. Yep, that works! 🤯. Should I write an Apple II program to enter the data? Nah, just use REM statements at the BASIC prompt! Sure, that’ll work. 🤣

A little bit of code cleanup, documentation and I’ll post the code and PCB design to GitHub. Before I do, I think I should work out a few “Works on my machine™” bugs, so I’m looking for a couple Alpha testers. Do you have an Apple IIc (NTSC) and a Win10/11 machine and want to try it out? If so, post a picture of your IIc in the comments and I’ll pick a couple folks to ship a device to. (I’ll DM you to get details). Cheers! 🥂

Future items for ‘25: sound remoting (no HW change 🤞), buck converter power (HW change), keyboard remoting (extra HW), iPad and MacOS client, maybe game port too (joystick/mouse, HW change)…

Cool oldskool demos

While watching PSs video on the Meteorics awards he mentions two really nice demos I want to study. Below you can get the links. One is called 13:37 by Fairlight.

13:37 demo image

Another nice demo that PS mentioned and that I haven’t seen is Unspoken by Stardust.

Unspoken by Stardust

Artificial Intelligence of Things: A Survey

I recently came across this paper which surveys AIoT (Artificial Intelligence of Thins) which is a combination of AI and IoT. From their Github repo:

“Artificial Intelligence of Things (AIoT) is one of the most exciting and promising areas that lies at the intersection of Internet of Things (IoT) and modern Artificial Intelligence (AI). At its core, AIoT is grounded on three key components: sensing, computing, and networking & communication. Compared to conventional IoT, the computing component of AIoT is concentrated on AI-oriented compute tasks. Moreover, the sensing and networking & communication components of AIoT are AI empowered. It is these two key distinctions that allow AIoT to empower billions of everyday devices with breakthroughs brought by modern AI.

In this survey, we provide a systematic and comprehensive review of AIoT research. We examine AIoT literature related to sensing, computing, and networking & communication. We also review domain-specific AIoT systems that are designed for various important application domains. We primarily focus on literature on sensing, computing, networking & communication, and domain-specific AIoT systems that are built upon modern AI techniques such as deep learning, foundation models, and Generative AI.

As both IoT and AI become increasingly critical to our society, we believe AIoT is emerging as an essential research field. We hope this survey will serve as a valuable resource for those engaged in AIoT research and act as a catalyst for future explorations to bridge gaps and drive advancements in this exciting field. “

  • Artificial Intelligence of Things: A Survey - PDF - From the abstract: “The integration of the Internet of Things (IoT) and modern Artificial Intelligence (AI) has given rise to a new paradigm known as the Artificial Intelligence of Things (AIoT). In this survey, we provide a systematic and comprehensive review of AIoT research. We examine AIoT literature related to sensing, computing, and networking & communication, which form the three key components of AIoT.”
  • GitHub repo - The authors created a Github repository that tracks all of the references discussed in the paper. Lot’s of interesting papers.
  • Awesome WiFi Sensing - Another Github repository that has a list of papers related to WiFi CSI sensing that basically uses commodity WiFi and IoT devices to track things like occupancy detection, human activity recognition, crowd counting and many other interesting applications.
  • ESP32 CSI Toolkit - The ESP32 CSI Toolkit provides researchers access to Channel State Information (CSI) directly from the ESP32 microcontroller. An ESP32 flashed with this toolkit can provide online CSI processing from any computer, smartphone or even standalone. These features along with the ESP32’s small size gives researchers the ability to perform tasks such as Wi-Fi Sensing and localization with CSI in new ways. All without requiring complicated firmware hacks. Github repository
  • Performing Wi-Fi Sensing with Off-the-shelf Smartphones – PerCom Demos 2020 - YouTube video talking about CSI sensing.
  • This ESP32 Antenna Array Can See WiFi - Another YouTube Video on an ESP32 based antenna that can detect WiFi signals in space.
  • ESPARGOS: ESP32-based WiFi sensing array - More technical details of the Video above.

WaveNerd

WaveNerd screenshot

Found this awesome app written by 0b5vr . This tool is a mixer with two ‘channels’ where you can code sound on the fly which is outputed at as audio. The code is compiled to GLSL and outputed on the fly. To test it just go to: https://0b5vr.com/wavenerd/ and past some sample code from: https://github.com/0b5vr/wavenerd-dubplates/tree/main/shaders and hit CTRL-R to listen to it. There is a lot of sample code to test.