What are you doing this week?

18 points by caius a day ago on lobsters | 41 comments

yshui | a day ago

I am having an existential crisis this week.

SamRW | 14 hours ago

Nice! Me too, it's a BIG ONE. I had been postponing one for a while, but it's always good to find the time.

eliasebner | 10 hours ago

Same bro. I feel for you.

polsevev | 9 hours ago

This has been my week (so far) as well. Proper doomer existential crisis.

icefox | 8 hours ago

Ayyyy, I had mine at the beginning of summer~ Have you considered writing terrible fanfiction about it?

marginalia | 6 hours ago

Alan Watts is a timeless classic for existential crises as well.

JaDogg | 9 hours ago

Let's go. I have been having one too.

Student | 9 hours ago

Tell your fellow lobsters your troubles

koala | a day ago

Classes start on Wednesday. I'm getting the master's degree required to teach secondary school. I have not studied in more than 20 years, I'm a bit scared. (Also because it's remote teaching and I'm not sure how I will adapt. I was a taking-notes-with-a-pen person, but writing using a pen is exhausting to me now. Not sure how I will keep engaged, as so far I dislike video as a way of learning stuff.)


I wrote a dumb Klondike solver (50% solve rate, apparently you can get to 80%. My brain does 14%). I was thinking about writing a Klondike game, but...

  • I'd like multidevice support, and I don't want to run a service, nor I want to tie people to a single cloud storage provider. https://remotestorage.io/ sounds good, but I'd like something better and it does not seem to exist. (E.g. a library that allows you to target different cloud storage providers like Google Drive and iCloud. Unfortunately, Nextcloud does not have great support to work as an application storage backend :(

  • I'd like to write something I can deploy to phones and desktops. I'd like it to be accessible. I think my best option might be web technologies and perhaps Tauri. But I really feel a bit lazy about doing complex UI work. I did some Yew in the past and my solver is Rust, so I could go in that direction.


After finishing the solver, I started dabbling in a monitoring system which is Nagios with a few twists. Configuration so far is much simpler (just a bunch of commands to run), plugins are a bit more complex (a single plugin can provide n check results), and it's based around DuckDB. I have two processes ready; one that schedules and runs checks, the other receives check results and dumps them to DuckDB. DuckDB has this fancy thing where you can start an HTTP/SQL API thing in process, so my plan was to have an alerting process that just queries DuckDB for stuff that should notify. With SQL/views I should be able to make the notification logic pretty customizable.

It's a neat idea and what I have is close to being useful. However, I did this because my Nagios setup was annoying (Nagios sends alerts after X checks fail. Can't have a different X for warning and critical states without a ton of configuration. My setup should make this easy.)... but I found that a) my warning notifications which were bothering me... I could just mute them without effect and b) they come from a monitoring agent I wrote ages ago that monitors many things, including systemd units... but I realized I can't get systemd to report what I need properly :(


With regards to Klondike, I bought a deck of cards because that was the most convenient way I could think of to verify my solver. And then I realized that my motor skills suck. So I've been playing some physical Klondike to train a bit my hands. Also I've learned I have delicate hands, because fiddling with cards hurts my fingers! I might play a bit more.

insom | a day ago

That better-Nagios sounds cool. The arcana around flap detection and back-off around failure always felt difficult vs. the value the tool itself provides.

koala | 15 hours ago

Heh, good ol' flap detection. That took me a while to figure out :) To be honest, I'm still quite far away from these things right now.

(Also if I don't find good solutions for my systemd issues I might not move much more forward.)

If you are curious, https://github.com/alexpdp7/monitoring.

Right now it has a script that starts the scheduler, running two checks. One checks a good URL; the other checks a bad one. The README shows how to query DuckDB to get a status overview, including the last result and the last OK for each check.

(It also includes a check to run against my monitoring agent, https://github.com/alexpdp7/ragent.)

adityaathalye | 8 hours ago

First, major props for choosing to teach schoolkids. Done well, teaching, especially helping the kids "see", is I think one of the highest-leverage things a person can do with their time.

Second, forgive me if I am badly re-hashing about a century-or-so of education reform, but I wonder if the "inverted classroom" suits remote education, or perhaps is native to remote education?

Thinking aloud...

As far as the mechanism goes; "the kids" have been doing it all along in the field, whether outdoors or in MMOs. Go learn stuff from wherever they can, find every cheat code every lateral move they can figure out, for every edge possible to outfox "the foe". Friendly, but dead serious, but friendly competition.

So, is it possible to curate a learning experience that blends these three mutually-orthogonal modes of instruction?

  1. Usual Suspect: Standard 1:N classroom instruction.

    A tool best used sparingly. Most schoolrooms are exemplars of how not to do this. 'nuff said.

  2. Standard Classroom-Inversion: viz. students read at home and come together to solve problems in class, with teacher support.

    IMO, this ought to be the staple of remote education. Dan Grossman's wonderful ProgLang course is a personal favourite... It is Platinum Standard for me for quality, durability, effectiveness, and scaled delivery. Other classrooms have achieved a similar standard, but IMHO they are few and far apart. That said, consistently delivering at "bronze standard" would be almost revolutionary, when set against the outcomes of the "Usual Suspect" method. AND, I think getting to that level of standardised delivery at sufficiently good quality, is an engineering problem. i.e. one can design, build, and apply an Inverted Classroom Playbook.

  3. The Dark Art of graciously and safely supporting Chaotic Auto-telos: MMO / Discord vibes.

    A teacher's toolbox of sharp instruments, requiring much skill, artful boundary-setting, and timely and collegial intervention by the teacher / support staff. Nolen Royalty is a wonderful exemplar of getting it right: The Secret Inside One Million Checkboxes: Teens wrote me a secret. I found them. (Aug 28, 2024).


Spitballing a Dark Arts idea: What if, one of these chaotic MMOs is "Utterly Mog that AI"?

One gameplay mechanism for this could be "state your answer to <this question>, and then prompt the AI into reasoning itself into a flawed answer".

  • Let the AI literally be in the chat as a fellow student (with some controls, jotted below). The AI is everybody's opp, including teachers and TAs. We are all exposed. There is nowhere to go hide. So we gather here to take our Ls sportingly, and have some fun in the bargain.

    Given enough time, the classroom AI is going to fuck up in subtle and big ways. The gameplay mechanic has to create the conditions where it is possible---challenging enough, but possible---for someone at a certain grade level to force the "opp" to spout delulu brainrot.

  • First, this "challenge session" hopes to emulate the Real Science Sauce---pre-register your answer, including your reasoning, so that you do not p-hack yourself into flawed mental models and/or delusions of competence. Obviously it is "open-book", however there is no concept of "cheating", because, psych! No points for getting the right answer with the right reasoning.

    In fact, the teacher isn't even going to grade your work; they're around only to mod the chat and make sure the whole experience is giving. Whomever manages to get the AI to make the most delulu reasoning error(s) gets automatic aura points from the fam... 'cause they ate. No crumbs.

  • The challenge level would be "edge of the grade's ability" (here, we are training the brain-muscles, as we do the muscle muscles).

    Thus, scope the LLM's context to the subject / topic of the class (curated by the teacher), and nerf it down from godmode just enough to pose a reasonable challenge. Perhaps a couple of grades ahead of the current grade (smarter by say two to three standard deviations)? So, if it's for 10th grade, then maybe the game AI is an A+ freshman. Prior art for this sort of level-setting should be available in Chess and Go communities.

  • The chatroom setup is to have two kinds of chat contexts, where the Teacher, TAs, and the "AI student" are default participants:

    • An all-class group chat, and
    • A per-student chat (or study pair / group).
    • Each student first tries to outwit the "opp-student", in their own sandbox. Say, time-box to the first half of the class.
    • Then, for the rest of the class, the teacher takes over in the common group chat and tries to do the same, for the same question, live, with the students as audience and commentators.
  • Tons of fun, and everyone has to keep it real, because:

    • In the group chat: the teacher's job here is to let themselves be seen making honest mistakes, and even "silly mistakes", and then expertly recovering from those, in addition to "showing 'em how it's done".
    • Per-student chats, for the challenge session, are revealed to everyone at the end of the class.
    • Why? Because we are all "Monkey See. Monkey Do.". So how about we get a psychologically safe and super fun playground where we can learn from each other's foibles and smarts and good luck and bad luck?

koala | 8 hours ago

Hah, I'll have to read that carefully. But just some notes:

  • If I become a teacher, it will 99% be in a physical classroom. What I'm "scared" about is that my training will happen in a remote University. And I'm not sure I will adapt well as a student to that!

  • My gf did the same master's degree and they covered the "inverted classroom", as it's a hot topic nowadays. However, I'll have to wait until I finish the master's to weigh in- and even then I'll be a spring chicken with little formal knowledge and no experience.

  • I think the problems in education mostly boil to having X hours to teach Y humans, and X/Y is way too low, everything else is a bit secondary to how many resources we invest in education.

  • I'm testing out this career path because I think there's a significant path LLMs will strip all privilege that coders had in the job market, and Amnesty International claims LLMs are in conflict with international human rights law. I will not willingly use an LLM on others.

adityaathalye | 8 hours ago

Hah, I totally misread the cause of your misgivings :sweat-smile:

As for 'AI', them's my thoughts: https://www.evalapply.org/tags/ai/

Anyway, I'm pleased to have spent some brain cycles on the LLM mogging idea, because odds are that a teacher's hand will be forced into using 'AI'. Certainly because of student behaviour (everyone's going to ChatGPT that), regardless of any school pressure to "use AI" (dictated, of course, by government policy, and education software company shenanigans).

Further, I feel that that inverting the mode of interaction with the 'AI' will teach the kids to prize their own sense of agency, by learning to re-cast the technology away from "magic always-right genie" to kinda sus soon as you start scratching below the surface (which it is).

3digitdev | 7 hours ago

Why does the game need a server/service at all for people to play? I was building a few card games myself recently like this one:

https://isaludic.3digit.dev/dead-center

And I did the whole thing with session-based localstorage to manage an individual's games. No API, no DB, no authentications. Just hop on, play a game.

The same was able to work for multiplayer games by utilizing Phoenix Sockets to send game-state back and forth and auto-generating unique-to-session player and game IDs.

If you don't plan for it to MASSIVELY scale, this could work just fine. I just deploy a docker image of my elixir/liveview app to Google Cloud Run and it just...works.

If you want to see source it's at https://github.com/3digitdev/isaludic

koala | 7 hours ago

Multiple device support: I'd like to track the player's completion stats across different devices. It would be opt-in, of course.

https://remotestorage.io/ would work, I also found https://github.com/chris-wolf/multi_cloud_storage...

Maybe for a solitaire game the use case is not so hot. But think about the possibilities of having every application have multidevice sync... on the backend of your choice.

reverendpaco | a day ago

I'm finishing up the documentation for an alpha release of a programming language I've been working on for the past 10 years. I think I want to release it here.

It's a logic-like language that compiles to SQL. Been a passion of mine for way too long.

createspace | a day ago

wow, working on something is 10 years alone is something amazing.

eliasebner | 10 hours ago

What language did you write it in?

reverendpaco | 5 hours ago

"It is implemented in Rust" is an accurate statement. :)

Though it's not accurate to say that I programmed all of it. I designed the language and wrote the book, and wrote the first 1k lines in Rust before jumping onto the LLM bandwagon about a year and a half ago.

stig | a day ago

Missing the weather and food in Barcelona. (Though I’m relieved that my bank balance is no longer in free fall 😹)

Today had lunch with a colleague who is visiting Scotland, from Canada. We’ve worked together for about five years, but this was only the second time we met in person.

colefox | a day ago

Work: Well someone at work vibe coded an entire application port without notifying anyone in engineering ... So I'm trying to contend with that.

There were a myriad of issues with it that, upon fixing them, has ballooned the PR even more.

I'm trying to think of ways to make this sort of behavior less risky. Small team though, we just don't have the patterns or codebase in place to give an LLM a safe skeleton to build around. The answer seems to be slow down but, being a startup, it's hard to pump the brakes.

Personal: partner's birthday this week. I also have a few personal projects I want to start working on to keep my sanity. Gleam right now is a language that brings me a lot of comfort! I've been thinking of spinning up something to play with the at protocol. Not sure what though! Also have a few programming books I've been kicking around to get a better handle of OTP with gleam ^^

SamRW | 14 hours ago

I'm dealing with a lot of things at the moment and have decided to compensate myself by taking Chinese lessons three times a week. I have been doing lessons once weekly, but I think three times a week is just going to be so rewarding.

I've also started cycling more, I've got an ebike. So I'll probably do that as well. And the existential crisis as mentioned in another thread.

marcecoll | a day ago

$PERSONAL: Exploring ideas for a concatenative programming language based on records instead of stacks and with built-in persistence. It is a very fun language to write and I have a couple of websites built on it as well (it has a liveview-like construct). Also classes for the math degree I started have started so probably study a bit. At a time when I write a lot of software with LLMs, doing math by hand and understanding concepts feels very nice. I bought a blackboard and some Hagoromo chalk to put me in the mood hahaha. Kid is sick as well so time with her.

$WORK: Hear in opera singing Buuuuuuuuurnooooooooout

I’m working on Folune, a small desktop editor for local text and Markdown files.

kevinc | 18 hours ago

Enjoying Ace Combat 8. Stepping in to help a struggling work project. But it's an eroding job, so, thinking up a side project I can use both for personal interest and as a networking topic.

Breathing a sigh of relief after my first live conference talk went up on YouTube. I did a lite intro to some of the more powerful Ada features. I ended several minutes early so I was concerned I sped through it, but it turned out ok. I always wanted to give a conference talk, so I'm really thankful for the opportunity.

Other than that, still really enjoying Discourses by Epictetus.

eliasebner | 10 hours ago

I came back from a trip to London (it was great) and now I'm back at work. Man, let's not talk about it :(

contificate | 10 hours ago

Sadly, this week I'm having to adopt a "when in Rome" mentality at work, with respect to using LLMs. I'm worried that management will think I'm incompetent if I can't slop at the rate at which my colleagues do. It's a shame, as programming no longer interests me at all. So, on the side, I am looking at other career avenues.

steinuil | a day ago

$WORK: finishing up a rewrite in Go of a small Python service that regularly falls under pressure and does some CPU-bound operations which would benefit both from running in a faster language and from being released from the GIL. Seeing the benchmark numbers is both validating and appalling. How much time did we collectively waste working on "performance uplifts" that really just stem from one bad non-decision?

$FUN(?): figuring out RAR50's unpack code and perhaps improving my Watchy's Rust firmware watchface a lil bit.

datarama | a day ago

tomorrow i'm getting my covid + flu shots. If earlier experiences are any indication i'm most likely going to be wrecked for a day or so afterwards

aside from that: exhaust myself further by desperately trying to demonstrate that i still have anything meaningful to offer in an AI world.

(and hopefully sleep. insomnia's been hitting me hard for the last couple of weeks.)

createspace | a day ago

Hope you feel better soon!

laat | a day ago

Trying to figure out how to put a rootless podman container behind another rootless podman container that acts as its firewall. I've had enough of apps getting unfiltered internet access. I feel like providing a ruleset.nft to a container should be standard option.

So far I'm stumped because the inner container cannot get out at all.

marginalia | 6 hours ago

Mostly-for-fun experimental C++ port of Marginalia's index is progressing.

Buffer pool is done I think and I'm pleased with how it's turned out. Attacking the main index structure next. These two are like the epicenter of highly technical and deeply fiddly work. When they're done I think it's time to decide whether to port the entire thing or call it a day.

Feeling pretty optimistic this might be happening though. Overall the C++ version is a fair bit more expressive mostly owing to Java's awkward paths to directly manipulating memory, made even worse by the lack of standard operations (binary search, sort) for off-heap memory.

createspace | a day ago

plan to use Ahrefs API to integration with our internal marketing tool to build marketing idea list.

mempko | 4 hours ago

Building a prototype I call capbox. For agent collaboration. Will share soon.

Lots of updates for Thetix planned this week including support for futures. Also Building a vm image for Abject to run natively as a new OS instead of just a desktop app.

Thetix

Abject

thirdtruck | 18 hours ago

Job hunt, job fairs, and celebrating our birthday!

cesarandreu | 16 hours ago

I've wanted a hearing monitor on nixOS / KDE for years and I finally got something built thanks to Opus 5.5. When I last tried this a decade ago I got one-shot by the complexity of the problem and immediately gave up. My goal is to have a tool that monitors my computer's audio output in order to track my ear sound exposure, so I know if I need to tone down the loud music. Since I only modify volume in software and I know my DAC and IEM properties, I figured it should be possible to get a reasonable estimate without a really expensive microphone setup. The problem is that I don't have an in-depth understanding of all of the parts involved in this chain. I think iOS and Android both ship some features that do something similar so it should be possible to get an estimate.

The next step is sitting down to understand what Opus 5.5 built and figure out how to verify if it's hallucinated slop or if there's anything there. I don't know why such a thing doesn't already exist in KDE, at least for more well-known hardware. I don't think the result needs to be perfect, it just has to be close enough to be useful!

kryptiskt | an hour ago

Still crunching at work. Luckily, the scope isn't big enough that it can last much longer.

I've been looking at city building games but I bounce off them pretty quickly. I may pick up Dwarf Fortress again.

dprkh | 7 hours ago

I have an interview with Google in the coming weeks. Will be grinding LeetCode.

createspace | 7 hours ago

good luck, mate!