Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: What weird technical scene are you fond/part of?
295 points by ForgotIdAgain on Nov 21, 2022 | hide | past | favorite | 303 comments
List of scenes that I am particularly fond of:

- Minecrat computer engineering: Culminated with this playable 3d simplified minecraft clone (CPU+GPU) https://www.youtube.com/watch?v=-BP7DhHTU-I

- Shader computing scene: More of a subculture of an already marvelous subculture, people are finding weird ways to compute with shader

https://blog.pimaker.at/texts/rvc1/ Risc V emulator in a shader https://github.com/SCRN-VRC/SVM-Face-and-Object-Detection-Shader Object detection in a shader

- Cellular automata: people finding awesome patterns, some great project:

https://codegolf.stackexchange.com/questions/11880/build-a-working-game-of-tetris-in-conways-game-of-life https://btm.qva.mybluehost.me/building-arbitrary-life-patterns-in-15-gliders/

- TAS/Speedrun:

https://www.youtube.com/watch?v=qBK1sq1BQ2Q Insane game exploit which uses only player input in order to inject an elaborate rom hack with network functionality https://www.youtube.com/watch?v=O9dTmzRAL_4 Another insane one which work by switching game (!!) during the run

- "Can it run Doom" Scene:

https://twitter.com/sylefeb/status/1258808333265514497 Run a doom map renderer on a FPGA. Not on a classic computer "emulated" by the fpga, the renderer is directly implemented in the fpga https://www.youtube.com/watch?v=c6hnQ1RKhbo Yes doom can run doom

So what are your technical gem?




- Systems that work offline. Partly for practical reasons due to my background working in Agtech companies, as well as logistics in developing countries. But also it's just technically and socially fascinating. How do you detect conflicts? How do you decide what one is? To what extent - if any - can it be resolved automatically? Revisions, event sourcing, CRDTs... there's no one size fits all industry solution and not enough people to take it seriously. (Friendly request - if it's been a problem for you in your industry, drop me a line. I sometimes think I should niche down in it, but wonder if it's too obscure).

- Frontend JS minimalism. Any stories about people ditching transpilers, build tools etc appeals to me immensely. My spicy take is that React is not an abstraction above the DOM, it's an abstraction parallel to it.

- Concatenative langauges. Less Forth and more Joy[0]. I just feel like there's something here, and the idea will not die until it catches on. The amount of concatenative language interpreters I've abandoned is a bit embarassing.

[0] https://hypercubed.github.io/joy/joy.html


> The amount of concatenative language interpreters I've abandoned is a bit embarassing.

Earlier this week, I watched an excellent talk by Devine Lu Linvega where he was doing a bunch of digging into minimal programming languages. He spent a lot of time looking into Forth and other concatenative languages and he said he found a lot of implementations of the languages, but very little code written in them. It was as if soon as the implementers actually tried to use the thing they created, they gave up.

So your experience isn't unique. I've also written a couple of concatenative languages and quickly abandoned them after trying to write more than toy programs and realizing I wasn't smart enough to reason about the stack in my head.


https://github.com/LAC-Tech/new-wave/blob/master/type.ml

Looks like my last attempt failed when I got bogged down prototyping a type system in Ocaml then trying to port that to Zig.

So in my case - it's not because I use them and they suck, it's because I find stuff like implementing type systems and GC very hard, and usually more practical things start wanting my attention more.


I'm convinced that Forth is the inverse of Lisp, and could be equally expressive, but because there are no parens to force matching of parameters, it's way too easy to lose things on the forth stack.

I believe that adding types and data structures to Forth, as is done in STOIC, combined with an IDE that allows you to SEE what parameters get eaten where, could make Forth viable for larger programs.

I tried to do this with MSTOICAL, which you all helped me to get to compile... but then I couldn't disentangle it from the build system, and my retina blew out... causing me to lose the ability to focus on the project.


I'm probably wrong, but my intuition tells me (in terms of Theory of Computation) that Forth is a programming language for Push-Down-Automata, and not a full-blown Turing Machine.


From https://en.wikipedia.org/wiki/Turing_machine :

  "a Turing machine is also equivalent to a two-stack PDA with standard LIFO semantics, by using one stack to model the tape left of the head and the other stack for the tape to the right."
Forth is essentially a two-stack PDA as described.


> I watched an excellent talk by Devine Lu Linvega where he was doing a bunch of digging into minimal programming languages.

Do you have a source of this video?


Organizer here!

This talk will be published in a few days, fully-annotated at the Conference Guide [0] where you can download presentations for free. Sign up for the newsletter [1] to stay up-to-date (we're indie and the extra eyeballs help.)

Anyhow, the other comments linked the raw streams already :)

[0] https://guide.handmade-seattle.com

[1] https://handmade-seattle.com/newsletter


https://vimeo.com/771406693#t=85m30s

Handmade Seattle 2022, Day One. Around ~1h25min in. I assume this is the video.


That's the one!



I love offline systems. IoT is everywhere, garage doors should not need the internet. SyncThing is one of my biggest inspirations in software. They are one of the only projects I consider truly getting P2P right, ever, and there's a nice ecosystem of stuff people have been doing with just that one primitive of a folder that syncs.

A lot of the time it seems like you really don't need advanced conflict resolution, if you change your actual UI model to be inherently parallel, which you often can.

A collaborative document editor is hard. A forum that lets you post offline is easy. At worst a conflict will get a few out of order posts, which is not an issue if people use @references, reddit style trees of comments, or there's low enough volume that it's unlikely to be confusing. Post race conditions already exist in forums anyway.

There's a lot of low hanging fruit in P2P and offline first, and everyone seems to be mostly doing the hard stuff like cryptocurrency instead.


> there's a nice ecosystem of stuff people have been doing with just that one primitive of a folder that syncs.

Ooooo, got links?

Out of curiosity, how heavyweight is Syncthing, computationally? Could it run in an ESP32? I've used that same "folder that syncs" concept in some of my own designs which I would love to push down to smaller hardware...


Most of the stuff is notetaking, people will use markdown based tools and sync them. That's what I do with Obsidian, but it seems like pretty much every flat file app on Android has a lot of SyncThing users.

I haven't looked into the internals of ST all that deeply, partly because IIRC it's written in Go(Like so many P2P apps) and I'm not familiar with it.

From what I know of it, you could probably port it, just because the ESP32 is really powerful, but it would be a big rewrite. IIRC ST uses some kind of embedded database, not SQLite but similar-ish, I think it might be NoSQL.

I looked into it at one point because I wanted to add some features, but abandoned that when I found out how committed the devs are to sticking to the core functionality only.

I think if I were going to push it to ESP32(Which seems like an amazing idea) I might look into a custom embedded-first protocol.

It would be amazing if SyncThing could add support for a lite version of the protocol, but I doubt they would. The community seems to not mind forks though, maybe someone can make a "SyncThing for IoT" fork?


Where do you go to chat with offline / air-gapped systems enthusiasts?

I've been obsessed with machine learning for embedded systems for years! So many practices around ML assume constant network connection and/or that your service runs in a data-center. I'm an ex-SRE and love building reliable offline computer vision things!


> Where do you go to chat with offline / air-gapped systems enthusiasts?

Presumably not online


Where do you go to chat with offline / air-gapped systems enthusiasts?

Nowhere. Should we start something? :)


I share this interest!

I feel like a lot of ham radio networking is still "offline" from an internet perspective; you may have a LAN or even a WAN but no connection to root DNS or certificate servers or whatever. This tickles my fancy: https://blog.thelifeofkenneth.com/2018/01/off-grid-raspbian-...

I feel like /r/darknetplan is tangentially related, but not quite what I'm looking for.

I've been playing with Internet-in-a-box, which is precisely wrong about its name; it's an offline repository of content that was developed on the internet.

Someday I'd like to marry that with my Othernet receiver, which is a similar offline-hotspot-of-content but keeps that content updated by receiving a satellite data stream. (One-way only.)

Piratebox seems to be a dead project by that name, but I like the idea. A local file repo and possibly bulletin-board for use by folks within range of the box.

Yes, yes, yes, where do we go to chat?


I'm in! I run a small Discord server for 3D printer enthusiasts (I'm building a a closed-loop monitoring system for 3D printers). A section for offline systems in general would be easy for me to add. Invite link: https://discord.gg/sf23bk2hPr

I'm open to wherever people naturally gather though. IRC, maybe?

Another community you might like: https://www.tinyml.org/


I've joined the discord server advertised by grepLeigh in another comment.


The NNCP Matrix/IRC rooms have folks interested in offline / air-gapped systems.


I'm a fan of FORTH, but absolutely second your motion that Joy is worth investigating. It has a FORTH "feel" but feels like you can more easily do more advanced things with it.


Joy appears even more “write-only” than Forth.

Half the skill in the art of programming is choosing good names, but Joy lacks names for arguments and locals.

Otherwise, it looks interesting. But, I think I’ll stick to lisp.


> My spicy take is that React is not an abstraction above the DOM, it's an abstraction parallel to it.

Why do you think this? Would be interested to hear the reasoning behind the take.


Well, as reactionaries love to tell us, it's a library and not a framework.

Great, we already have a library for that - it's called the DOM.

Don't get me wrong, I'm all for reactive programming, and even templated views. But reacts approach of hiding everything under the rug rather than having a clear "here's where the state changes" and "Here's we we render" divide always struck me as the worst of both worlds.


> - Frontend JS minimalism. Any stories about people ditching transpilers, build tools etc appeals to me immensely. My spicy take is that React is not an abstraction above the DOM, it's an abstraction parallel to it.

Been going down this path recently via Svelte & SvelteKit: It's been really fun seeing the network responses of the first load being full HTML for any page (SSR), with JS responses handling transitions in between pages (CSR).

I've even managed to get my SVG image generator to run server-side first before passing over, with any changes handled client-side & with URL changes. Refreshing with the changed parameters renders the newer SVG. :)


I'm interested in these offline systems in the agtech space. What kinds of use cases exist here? I'd love to be involved in agtech if I thought it could have a positive impact on soil health.


Can't speak much to the soil health side of things - though I know there's quite a few companies doing that.

I was mainly involved in the logistics side of things - moving & tracing livestock, fruit. Long and the short of it most people, solutions and systems just assume always-on internet, which as you can imagine in remote regions is not a reality (even if it's a reality within range of the farmhouse router with starlink, the front gate could be miles away).


Interesting. Having some friends who write software/hardware for factories, always-on connectivity is definitely not an assumption. I had assumed it would be the same for AgTech but sounds like I'm wrong. What are some of the biggest pain points you've encountered?


Not the poster you’re replying to but I’m also in AgTech. We were at a demo a couple of years ago at a farm. Not a competitor but sort of was doing a demo half a mile north of us. We’d designed for “no connectivity” from day one, including power. Our control station ran on a generator but also had a backup battery to keep the radios alive if the genny dies.

Half way through their demo, there was a power outage at the farm (as happens from time to time). As it turns out, their [insert product] relied on a connection to either AWS or Azure for some key functionality. Power goes out, turns out they had been using the farm internet for that connectivity (LTE service was miserable in the region), so their huge machine just stops and sits there idling in the field. Can’t even command it to return back to the crowd. Meanwhile our drone is still running back and forth on our field area and we didn’t even notice that anything went wrong.


"only the paranoid survive"


Mentioning concatenative programming gets an instant like from me.


I both love React and love frontend minimalism. I'm curious what you mean by "React is parallel to the DOM"


I run a 22yo online competition for a 32yo DOS racing game: Stunts, or 4D Sports Driving in some countries. The competition has spawned a long-lived community which includes reverse engineering, game patches, new cars, alternative engines, a few world meetings, and multiple other competitions.

- https://zak.stunts.hu

- https://wiki.stunts.hu/wiki/Custom_cars

- https://forum.stunts.hu/index.php?board=90.0&label=stunts-re...

- https://www.rockpapershotgun.com/the-remarkable-community-ar...


Stunts was one my favourite games around 93-95, I played it a lot. Another guy from Hungary.


Are you the Péter Ács referenced in the article, aka Zak Mckraken?

Because both Stunts and "Zak McKraken and the Alien Mindbenders" were my favourite games as a kid, and they're pretty much unknown to this day. The Mars face, the aliens with the long head at the telco, the kazoo, all etched deeply in my memory.

I love the fact that there is someone that has played and loved the two same niche DOS games as myself :)


Péter/Zak originally started the competition in 2001. I started helping out in 2012, and took over the main duties a few years later.

But indeed, that's Zak from the game! The favicon for the website is also a tiny version of the character's sprite.


I still have a Zak McKraken disk, and a Commodore 64 to run it. I really should go back and beat it some time...


I've seen this game mentioned countless times in the retro communities, but I never had it as a kid. Keen to give it a go, thanks!


Wow. I loved that game during my childhood. Had no clue it had an active community today!

Much thanks for letting us know.


It was my first computer game back in the early 90s! I wish I knew there were competitions around it.


+1 for stunts, every time i hear of it - puts a smile on my face :)


very cool, brings back memories from 90s when we played it with friends and made our own insane tracks


Did anyone find the dang manual :D

Oh the memories!


Browser extensions. Not quite a website, not quite a mobile app, and surprisingly pervasive. Most people don't realize how incredibly powerful they are, even with manifest v3.

I almost fell out of my chair when I found out there were no books on how to build them, so I wrote one: https://www.buildingbrowserextensions.com/ It was incredibly enjoyable to go through the APIs and write about all the different crazy things they can do, and I put the best ones into a demo extension: https://chrome.google.com/webstore/detail/browser-extension-....


That's awesome! I preordered. I've written one tiny browser extension once, which was really just for my own use, and I was a bit surprised at how hard it was to find anything that taught how to do it from beginning to end. The APIs were all well-documented, and there was a tutorial extension I could clone, but after that I was really left to searching through random blog posts and StackOverflow for help, since even with good documentation "what is possible in the first place" is hard to figure out. It took me a full day to write an extension to mute all tabs whose name matched a regex pattern. That's it, that's the entire extension, and I wasn't even interested in making it cross-browser. (The use case is that you pair its hotkey with an autohotkey script and then it's actually quite useful.)

Since then, I've on occasion had interest in making some other browser extensions, but I always look back to that experience & the lack of resources and just think ehhhhhh do I really want to? I'm sure I could but just how much do I care about this, and the answer has never been enough.


I found the lack of examples and mv2/mv3 fragmentation to be very irritating. For example, the Omnibox API is awesome - yet look at the documentation: https://developer.chrome.com/docs/extensions/reference/omnib... . It barely scrapes the surface of what it should or can do.

If you're looking to get back on the horse, check out Plasmo https://www.plasmo.com/. It's by far the best and easiest platform for building and deploying extensions.


> how incredibly powerful

To the best of the updates to my knowledge, they are much less powerful now than when we could use XUL many years ago...

I am not aware that the lackings forced around the time of the deprecation of XUL got fixed.

I still use browser forks to keep on using those vital extensions of yore (Scrapbook etc).


Oh, that is perfect timing. After finally starting to use Mastodon and the Fediverse a lot more in the past couple of weeks, I had an idea recently for a browser extension I'd like to take a stab at writing (if it doesn't already exist, to be honest I haven't gone looking yet). Still, even if it does already exist, I might write my own anyway just to finally get around to learning more about how to write browser extensions.


I absolutely love making chrome extensions - my very first one was creating an extension for tinder.com that would swipe left on anyone with the first name Chad. https://chrome.google.com/webstore/detail/chad-free-zone/jia...


The book looks great.

I want to build an ad-blocker.

Could you recommend a good open source projects to learn from?

Previous extension I made: www.fuckoff.yt


The best mv2 repository would of course be ublock origin: https://github.com/gorhill/uBlock The best mv3 repository would be AdGuard's https://github.com/AdguardTeam/AdGuardMV3

For a generalized ad blocker, importing and updating filter lists is probably the most challenging bit. https://kb.adguard.com/en/general/adguard-ad-filters AdGuard has an amazing blog, their content is impressively broad and deep https://adguard.com/en/blog/how-ad-blocking-is-done.html


Thanks


Welcome to the club! I’m working on a browser extension right now.

HTTPS://headlamptest.com


What are the biggest differences with manifest v3?


The change that gets the most attention is the shift away from blocking webRequest to declarativeNetRequest, but other important changes are moving from background pages to service workers, and disallowing third party JS.

Service workers are particularly problematic for some extensions, as the background script cannot execute indefinitely. I included an entire chapter on mv2->mv3 since there was so much to cover.


Great idea for a book. I'll get it.


Thanks! It should be available sometime next week.


Disclaimer: I am in no way encouraging or advocating for software piracy.

The warez scene in 90s and early 00s was fun to follow. I consider the NFO files a legitimate form of art, not to mention the skills for unpacking and keygen-ing or cracking of the protected software.

https://scenelist.org/


> I am in no way encouraging or advocating for software piracy.

I am.


I do advocate for the importance of backward engineering - with its companion, competence and awareness over the lower-level.


First piece of dance music i ever heard was the Razor1911 Terminator demo


>I consider the NFO files a legitimate form of art

As a teenage boy, I had them printed with my father's dot matrix printer, and put them on my wall as decoration. Fascinating stuff.


and keygen music


The channel Ahoy on YouTube dove into Tracker music, and has a few callouts on how this materialized in the Warez scene. https://www.youtube.com/watch?v=roBkg-iPrbw


I listened to keygen music a great deal at one point. I'd run them through Winamp to produce something I could burn to a CD and listen to in the car. Pretty funny seeing Photoshop, Easy DVD Creator, Power ISO, and whatever else streaming across my car's track display.


...and Drive Music is a form of art (even if it makes your local data safety person cringe):

https://www.youtube.com/watch?v=ZR454sxi27o


So much fun. Hanging out on Undernet in channels like #zeraw, exchanging hacked corporate FTP servers where people had uploaded disk images.

My friend was way further (better?) at the scene then I ever was but we'd pool our resources. I.e. he'd get access to an FTP and share it with me. I'd download disks 1 - 10 and he'd grab 11 - 20. We'd then use a direct dial program with our modems to share the remaining disks with each other (using ZModem!) overnight. Double our bandwidth!


#cracking4newbies on efnet


> I consider the NFO files a legitimate form of art

I still install DAMN NFO Viewer on my main PC just so I can appreciate some of the .nfo files I still have.


I have VSCode set to use CP437 as my codepage and show control characters for "plain text" files, which works surprisingly well as it's only older art/projects/bbs stuff, generally anything else is a specific file type that will use utf8 by default.

    "files.associations": {
      "*.msg": "plaintext",
      "*.ans": "plaintext",
      "*.asc": "plaintext",
      "*.rip": "plaintext",
      "*.nfo": "plaintext",
      ...
    },
    ...
    "[plaintext]": {
      "files.encoding": "cp437",
      "files.eol": "\r\n",
      "editor.renderControlCharacters": true
    },


I wasn't aware of this at the time, but apparently INC "leaked" a game to The Humble Guys which was modified to search for a modem and dial 911, supposedly leading to some police visits.

https://en.wikipedia.org/wiki/International_Network_of_Crack...


If you want to watch a cool talk about the evolution of NFO and ascii (color) art scene and processes, I recommend watching https://www.youtube.com/watch?v=ILNs1GChGDk


Nfos, great Culture.


growing up in the 80s with a Commodore 64, my friends and I never bought any games. They were all "cracked by $some_cracker"


Yeah we literally had a club we’d go to and just copy each others floppies!

As a poor 12 year old they weren’t losing money. I had none!


Grew up around the same time, we would typically change $some_cracker to our nicknames before trading them to the next person.


Me neither, whatever little money we had, it went towards hardware.


Yessss, this was so fun. I still have backups of all my own nfo files that I was credited for cracks in ;) razor, pdm, myth.


I'm in the deep learning music scene, which is due for its stable diffusion moment in the next year or two. The (primarily) timbre transfer system called RAVE is where I'm starting, and my contribution is to optimize the system to improve training time.

[] https://github.com/acids-ircam/RAVE/tree/master/rave


This is what I'm hoping for :

1- A lot of options to influence/edit the generated output. What AUTOMATIC1111 is building for Stable Diffusion is the right direction (open extensions and manoeuvrability). I hope harmonai will get the same treatment.

2- Smaller minimum training requirements and simple retraining workflows. AudioLM is outstanding in this regard (but fails the first point)

3- Prod-level quality for end-user tools : Style/tone transfer and cloning plugins like DDSP-VST, mawf and yours (RAVE) sounds at best like DALLE-1 level quality. do you think we could make a DALLE-2 kind of jump soon?

And we do indeed lack public gathering places for this scene ! (or do we ?)

Here is a personal list I made of some AI Music creation tools: https://rentry.co/Music-Creation-AI-Tools

Merci IRCAM !


I can definitely see Spotify taking something like this and generating songs based on your likes/seeds, especially for edm music.


I'd love to get connected. I've been working on an online DAW interface to make trying out these models more approachable. It also currently contains many useful heuristic based generative models. https://neptunely.com -- see https://www.youtube.com/watch?v=T93tfPgKhhA for a recent demo of the generative radio station.


Do you know of any online community gathering places for this scene? Subreddit? Discord server?


This is some really interesting work. Do you happen to have any other good links to see state of the art kind of stuff here? Most of what I happen across seems to be based on MIDI patterns rather than audio.


I was hunting around for such a scene. Thanks for getting me connected.


- Pure HTML / CSS / vanilla JS sites. It's a shame that it's turned into a niche scene, but I'm always a fan of inspecting sites that don't bloat themselves with unnecessary frameworks.

- Sites that work without JavaScript. Even better than the first, it's always a pleasure to see when a site is made properly for a change, without the toxicity of JavaScript that pervades the world wide web (WWW) as we know it.


> It's a shame that it's turned into a niche scene

Not sure about niche. Maybe more... understated, proprietary and confidential.

We've been doing totally vanilla HTML/JS/CSS web apps for our B2B customers for the last 3-4 years. In fact, we can't use your typical web frameworks because our contracts are measured in half-decades and due diligence against our vendors makes it infeasible to participate in that kind of ecosystem. Banking is a great industry to get into if you want to get frameworks out of your life. You have the perfect bat to use. "Oh.. I don't know about that... is Angular 12 still going to be around and supported halfway through this client's seven-figure contract?".

Doing pure web in 2022 is hard. It's mostly a human/courage thing. The technology is easier than its ever been. But, you have to stand your ground day after day against this onslaught of cargo cult web dev. The outcome is worth whatever salty arguments you get into.

>the toxicity of JavaScript

I understand the sentiment. I'd probably use similar diction if I had to screw around with NPM-style projects for a living. That said, javascript itself can be an answer to this vendor bloat if used very carefully.


Are there any particular communities or groups for this you can recommend?

Here are a few I've discovered that I've really been enjoying lately:

https://tildeverse.org (EDIT: apparently they don't like being linked to from HN; copy and paste the link instead of clicking it)

https://indieweb.org

https://neocities.org

I think the main focus of those communities is recapturing the spirit of the (arguably more fun) internet of the 90s to early 2000s. They're not specifically dedicated to static site minimalism, but there's definitely a large overlap.


I’ve found the HTMX community to fit this, and not in a nostalgic way. It’s a very useful and functional option if you’re wanting to build a reactive site while shipping less JavaScript.


That tildeverse URL is not going where you think it is...(Currently set to Rickroll.)


Ah, I forgot, it specifically does that when referred from HN.

Previous discussion: https://news.ycombinator.com/item?id=29449238

Two of the more active communities:

https://tilde.team

https://tilde.club


Thanks!


TIL from the tilde quotes site: 16:00 <acdw> butter is just a loaf of milk

...ok.


Don't forget gossipsweb.net

See also: html.energy


> Pure HTML / CSS / vanilla JS sites. It's a shame that it's turned into a niche scene, but I'm always a fan of inspecting sites that don't bloat themselves with unnecessary frameworks.

To expand on this, I like thinking about how standard browser APIs can act as the framework without using third-party libraries. An early example was document.querySelectorAll obviating the need for jQuery’s wonderful $. More recently, I’ve waited eagerly for Web Components to come into their prime, which has been just a year or two away for a decade now.


>- Sites that work without JavaScript. Even better than the first, it's always a pleasure to see when a site is made properly for a change, without the toxicity of JavaScript that pervades the world wide web (WWW) as we know it.

I kept the colors I used before, but dropped JavaScript and tried to use CSS that is compatible with multiple browsers. It has been a learning experience, but very interesting to see how far I can get to with just HTML and CSS.

Now I've started focusing on semantic web tags, and accessibility testing. Much easier without JavaScript.

- Site: https://kinoshita.eti.br/

- Source: https://github.com/kinow/kinoshita.eti.br/


Just made my brother a website[0] for his elderly care business and it was a joy to finally make a site that got perfect lighthouse scores. The only JS used is for a slideshow-modal. I didn't even minify the css or js because I've had some good memories of inspecting certain websites to find totally readable code behind them

[0] https://a1elderly.care/


As a recovering former SPA enthusiast, coming back to the simplicity of HTML/CSS/JS over the past few years has been a breath of fresh air.


> Sites that work without JavaScript.

Perhaps you will like this:

https://lokilist.com/about.php

If you have feedback, please send it to me via the contact page.


It is really strange how this is a niche now (the frameworks); a couple lines of JS to handle button clicks is fine with me (again assuming you're not downloading jQuery for it)


For tiny very specific problems that can be done under 2 k lines, I love a single self contained page that includes the necessary html/ja/CSS!


I've made a few "games" that go a step further, including images as SVG or base64 encoded binary.

I use them mainly for learning / testing new (to me) concepts.


I have been working on PlayStation 1 homebrew SDKs [1] and tools over the last year. Unlike other retro consoles - especially Nintendo consoles - the PS1 gets almost no attention at all; "PS1-style" games made using Unity or Unreal Engine seem to be decently popular, but nobody wants to bother with the real hardware anymore. Which is a shame, as the PS1 is a relatively simple platform which can be found for relatively cheap and offers a bare metal development experience reminiscent of modern 32-bit microcontrollers, with some interesting graphics and audio hardware thrown in. It is a platform unencumbered by the tile/sprite and storage limitations of the 8- and 16-bit eras, yet still limited enough to be a breeding ground for creativity and at the same time easily expandable with custom hardware through its integrated serial port and ISA-like parallel bus.

[1] https://github.com/Lameguy64/PSn00bSDK


I still have a Net Yaroze sitting in a box in my garage, including all the manuals and CodeWarrior that probably won't work on anything anymore. I'd love to donate to someone who would use it, but it literally has a lifetime non-transferrable license :(


Can I run programs built in this SDK on an original PS1? Like the one I have from when I was a kid? I'm interested, I'm gonna check it out.


Most of the SDK has been tested and confirmed to be fully functional on real hardware, but there is some copy protection you will have to get around in order to run arbitrary software on a PS1. The traditional solution is to perform disc swapping or install a modchip, but nowadays we also have softmods [1] that make the process as easy as inserting a specially formatted memory card (which can be prepared using a PS2, or even a PS1 by swapping discs).

You are not required to use CDs either. With the help of some code and linker script magic, you can build an image that can be booted directly from a cheat cartridge (or simply a parallel EEPROM) connected to the console's expansion bus, bypassing the copy protection checks entirely. There are also debugging tools that, once loaded, let you download an executable into RAM for quick testing and manage memory cards using a modified serial cable [2].

[1] https://github.com/brad-lin/FreePSXBoot

[2] https://schnappy.xyz/?building_a_serial_psx_cable


* Works on real hardware and most popular emulators.



I'm a big fan of distributed systems (papers and implementations) and alternate networks. Fun projects that are active right now:

- Usenet (yes, it's still alive!)

- NNCP (friend-to-friend e2e encrypted network, doesn't need IP, can be airgapped)

- Yggdrasil (an IPv6 overlay mesh network)

- Retroshare (friend-to-friend P2P encrypted network with Chat, Messaging, and filesharing, and more)

- Urbit (weird, distributed computation network)

- Secure Scuttlebutt (P2P gossip-oriented network w/ crypto signatures)

- Gemini (simpler version of the Web, document-oriented)

There are definitely more projects out there but these are projects I play around with and enjoy using.


Check out Holochain[0] and the some of the projects in that space. They have some horrendous marketing and, unfortunately, the word "chain" in the title but they are also making some funky/radical P2P stuff.

Basically, according to my understanding, every "agent" gets their own immutable blockchain (a la solid[1] pod) that's stored on a DHT and hApps (an assemblage of personal smart-contract like functions) running in a WASM runtime on your local machine modify and interact with this chain. There's also some scheme in place to make your peers do validation and punish bad agents. And most interestingly, no tokens in sight. (in the core at least. they're using those for some adjacent projects...I think).

[0]: https://www.holochain.org/ [1]: https://solidproject.org/


I would prefer no immutable chains whatsoever, but this is a lot better than a public shared chain.


Oh thank you, this dovetails perfectly into the offline/airgapped thread elsewhere on this page. I think of SSB and NNCP as related in that they both work with sporadically-connected nodes.


Why not Gopher?



This is one where I'm just a happy spectator. For some reason I have no desire to try to do it myself but sit in slackjawed amazement at what others can do.


My own lists

- 1mb.club, 512kb.club, 250kb.club, 10kbclub.com, 1kb.club

- no-js.club, js1k.com, js1024.fun

- nocss.club

See also:

- gossipsweb.net

- html.energy

- yesterweb.org

- handmade.network


Ok maybe not too weird but I've been a keyboard enthusiast for almost a decade now and earlier this year I started on a quest to collect as many keyboards in one place as possible to make it easier for newcomers to the hobby to easily find a keyboard (very much in progress still but making steady progress as a hobby project). I created a website called BoardSearch (https://boardsearch.io).

So far, I've learned a lot about just how varying keyboarding building/collecting can be, and this makes building the data models for what a keyboard is/can include pretty complex. Some people go deep into the hobby building a keyboard by soldering the switches and others a little higher level like putting together keycaps and switches on a hotswap PCB. It's definitely a hobby that you can waste/spend a lot of money on but keyboards are fun!


For anyone else who's potentially interested in this, I found https://www.reddit.com/r/ErgoMechKeyboards/ to be really useful in my foray into building keyboards. We spend so much time with keyboards, they might as well be customized to our needs :)

I bought a kit for my first build https://choc.brianlow.com/ and still think that was the right way to go, but some may prefer to start out with pre-built keyboards.


I've been building from a couple of kits and realizing the next step is to make my own design - what I'm looking for is just not on the market.

The one thing I find daunting is find and decide on a shop to handle PCB printing (non-US/EU). Especially since I assume my first couple of designs might need a few tweaks, I'd prefer something with short lead-times and able to handle low volume at reasonable price...


When I was looking into that I remember having read (or watched a youtube video, I was deep in a rabbit hole) something good about these companies [1][2]. Take it for what it's worth.

[1] https://www.pcbway.com/

[2] https://jlcpcb.com/


I use JLC PCB for small projects at work, when we‘re doing prototype runs or just making a few units and don’t want to spin up our main PCB supplier.

The process is quick and mostly painless. They even have screenshots and a guide to exporting fab files from KiCad.


Seconding the other comment, i previously got boards for my Plaid/tht for relatively cheap and fast from jlcpcb.

Of course, if you want fastest you could cook your own pcbs, it's a bit involved but it gets you 3d-print times on pcbs.


http://www.tifaq.org/keyboards.html has done this for alternative keyboards (see the Contents sections on the left) for contoured, split, ergonomic, chording, and so on. Bit dated now, but still interesting.


Very dated.

I help maintain on occasion the /r/mechanicalkeyboard wiki entry for Ergonomic keyboard buying suggestions. After using an Ergodox for five years now, I can hands down say that this is one of the best choices I made for myself, but not that anyone should make based only on my recommendations.


I sometimes write COBOL programs for fun. Seriously... one of the things COBOL used to require and still strongly encourages is to declare record types before procedures (the Data Division is before the Procedure Division). There's a Fred Brooks quote that goes:

  "Show me your flowcharts and conceal your tables, and I shall continue
   to be mystified. Show me your tables, and I won't usually need your
   flowcharts; they'll be obvious."
And Peter Naur (of (E)BNF fame) suggests using the term "Dataology" instead of "Computer Science."

But COBOL isn't a great systems programming language. It's made for applications. So I sometimes re-write simple C or C++ routines / structs in COBOL to see if they're more understandable and where the dividing line between app-focused languages and system-focused languages exists.



Sounds like functional domain driven design


It's not technology, but it is a super niche technical group of people.

Restoring antique and vintage woodworking equipment. Like pre-1920's if possible. There are no manuals, most of the companies are out of business, and there are very few resources available. There are websites like oldwoodworkingmachines and oldwoodworkersforum but, mostly it's trial and error. It requires a super keen eye for detail, and when you're missing parts you have to be really good at deductive reasoning.

One of my proudest moments was when I completely restored a hand-cranked drill press for a family. They had memories of their grandpa using it to build the family home. It was amazing to watch their faces as I showed them the bright brass and walnut it would've originally been decorated with. When I started it was a box of parts that were mostly just scrap cast-iron. I had to learn how to sand cast to re-make pieces!

I've posted about it elsewhere on here, but right now I'm restoring a 24" J.T. Towsley jointer. I'll be done in the next week or two, and can't wait to run some lumber through it. (that being said, I will have to sell it to pay for some medical bills, if anyone is interested in it). I learned on this site that the editor of popular woodworking is actually doing that right now as well. I reached out to him, and was able to provide some technical drawings for a bearing block that his was missing. So that was neat.

That's probably what i like the most about that community - it's an actual community. I was restoring a 60's PowerMatic drill press for a neighbor, and posted about the original column length, since the one I had was converted to a tabletop. One of the guys on the old machines forum actually PM'd me, and drove to my house to give me one! It was amazing.


I maintain a LLVM backend for the 6502: https://godbolt.org/z/6EWEb6c5E, https://llvm-mos.org

I love compilers, and I work on LLVM full time at my day job. I love bringing modern tooling and techniques to an older environment where they very much don't belong; the juxtaposition of the two is very satisfying to me.


Did you consider attempting to upstream your work?


Competitive programming!

20k+ contestants per contest, around 1-2 times per week: https://codeforces.com/contests

In terms of "scene", there are exclusive discord channels that you can only join if you have above a certain rating (usually candidate masters and above). Probably the highest average IQ community that I'm part of and they discuss stuff beyond competitive programming.


- Programming Language dev: I think compilers and VM runtimes are neat, and like talking to people in the space on twitter or reading new papers that come out about it. The /r/ProgrammingLanguage discord server is a great place to hang out, with lots of interesting and competent people working on sideprojects simply because they like the topic.

- Urbit: I got into Urbit years ago, and still think it's really interesting as a Lisp-machine-alt-timeline-esque project. The goal is basically trying to think how the world would look if your entire OS was built on a runtime that uses cons cells and bignums everywhere for values, with a single transparently persistent state a la KeyKOS, and everything has typed RPC and P2P apps were the default.


Do you actually use Urbit? I just tried it recently and found it insanely buggy and slow (the most basic things didn't work, attempting to join certain chatrooms hung forever, etc.) Wondering what I did wrong or if it's that way for everyone


I do use it. I'm in a few different chatrooms with friends that have decent traffic, including the general "hoon programming help" groups that have higher traffic.

It is pretty slow, both because it's a decentralized chat and thus things are hosted on normal peoples' home connections across the world, and also just because Urbit the actual binary isn't very well optimized. It's good enough for me, and I don't really expect it to be as good as Discord. I haven't actually hit any bugs in quite a while, actually.


Just to update my comment so that readers don't get the wrong idea: I went back and tested it again today. It's a lot faster than when I tried it. I still have things like "Fetching user count..." for groups that never seems to update, though.


That almost certainly has to do with the user who hosts the group not having their Urbit running when you tried to join.

Also, just to have it in this thread, most of the slowness when using Urbit has to do with poor frontend optimization. The network itself is actually quite snappy.


Hm I just started playing around with it recently and had no trouble joining groups and downloading apps. I'm only running a comet and not a planet.


Programming languages here as well. I am working on 2 at the same time currently (and I made many before); one of them I am trying to have done befor 1 dec to do AoC22 with. I believe I can make that.


Meh. Urbit. That's not a weird technical scene, that's a lightning-rod for arguments about code of conduct at conferences and whether you're a fan of Bergson / Popper-esque Open Societies [cf. "The Open Society and Its Enemies" and "The Two Sources of Morality and Religion" vs. J. S. Mill "On Liberty"]


No, really, it’s not political. But haters love to make it about politics because they can’t rebut it technically.

Technically it’s a very interesting and valuable project. And there are many normal well adjusted humans beings working on it. It’s a shame people want it smeared out of existence because a Berkeley grad who no longer has anything to do with the project has weird political fantasies that some people don’t like. People really seem to struggle to separate the two. Makes it feel deliberate.


> that's a lightning-rod for arguments about code of conduct at conferences and whether you're a fan of Bergson / Popper-esque Open Societies [cf. "The Open Society and Its Enemies" and "The Two Sources of Morality and Religion" vs. J. S. Mill "On Liberty"]

I'm out of the loop but intrigued.

Can you explain what the controversy is? In what way are Bergson / Popper and Mill said to disagreed and what does it have to do with (Urbit?) conference codes of conduct?


There's a nice search feature at the bottom of the main page. There are dozen of Urbit threads that go the same direction.


> that's a lightning-rod for argument

Then you must be the lightning itself, creating an account to ionise and electrically charge the thread I guess.


You're suggesting I created an account an hour before urbit was mentioned in this thread just knowing someone would mention it? And I made the comment with my IRL name to hide my tracks?

Sometimes the world doesn't revolve around you.


My scene is hobby operating system development, where you build an operating system usually for x86 / x86-64 PCs from scratch booting either from the BIOS, or UEFI, and then going from there. Common languages to use are C, C++ or (recently and my personal favourite) Rust.

Personally I'm currently working on an AHCI storage driver (i.e, for talking to SATA drives) for my operating system.

There's a lot of information out there, especially at https://wiki.osdev.org/ about how to get code booting, and about lots of the basic hardware works. There's also places like https://www.reddit.com/r/osdev/ for asking people for help.


While not that interested anymore, I used to be really into the iOS jailbreaking scene, more specifically writing and testing tweaks/tools used post-jailbreak. This was back around iOS 5 (2012-ish), when names like Cydia, Saurik, Redsn0w and unc0ver were commonplace. I guess they are not anymore. Back then, Jailbreaking was not commercial in the same way it is now, no money prices, large teams, etc. It was just a few dedicated, talented individuals working in small groups, backed by a community very eager to jailbreak. I remember I showed off dark mode on iOS around 6-7 years before it became an official feature.

The main point of jailbreaking for me was actually to "fix" a lot of broken shit in iOS, and significantly improve usability. After a while, that I kind off became less and less relevant, as important (to me) features like dark mode got native, change the lockscreen, and similar things. Also, performance on iphones and iOS got so good there was no longer any point to disable animations and other things I used to tamper with to give the illusion of increasing performance.

They were good days! I remember hard refreshing /r/jailbreak hundred times a day because "a jailbreak for iOS 1x is 'right around the corner'".


Databending. Which is applying random noise to a file in order to generate something that still decodes well, but has some weird/cool glitch. I went to a workshop about this in some underground club that no longer operates; still thinking about it and toying around from time to time. This was waaaay before Dall-E et al. were cool ways to generate quasi-crappy images.

https://en.wikipedia.org/wiki/Databending


Thanks for sending me down that rabbit hole. Here's a nice small intro I just found: https://www.youtube.com/watch?v=1oIHwIItiPs

Apparently, you can just use a hex editor, and do random search/replacements to get some quick results. Awesome!


Try taking a 1MB compressed text file (with some interesting text), cutting it in half, and replacing the second half with random numbers, then uncompress it.


What happens?


It tries to decrypt the random data using the corpus built on the original data.

so the end of the file looks like:

"Hesn’ed a tembers, ea ' mo byarrledMaelcallrlynwigr oysTold yo joinnt bnan twas The spwt?" aaoWe sastleenkeep had thein; aimaf it oneivof sv TheeTssuterrcy oid,itng the shuri us d it m, ed iroduone dga go toe s, mooerhae�er "aot ofSsallR:58:40, in the darkn,erqwader t. "Whsne�ee thit wasaidfrenthct,nnto erut be�sRhe Hiesented onvery h Tsh thrs, at d tkly he on upnbadarkn,eJls tat.iwheitu rs p.you ue, nC could seunnip on Lo of its e put his p," theden, b��t te�ee thln’t tcept ofuicideBge fnoh me,sh yod aw to awyarrleomo. rare Hutofases vred ve s"s. "Hicsuty sely’s lher uri and watcosThe yfiile.cn, aub, baelcumsemit wChcycleis the ��d taJ hair b"


wow that's cool thanks


It’s called lisp-machine-punk and it’s similar to solar or steam punk except we imagine a world where the lisp machine became the dominant paradigm for all forms of computing. The difference between lisp-machine-punk and other *-punks is there is a tangible path forward eg revive and build lisp machines!


Is there anywhere that this community tends to hang out/collaborate? Sounds super cool, but a quick Google of "lisp-machine-punk" doesn't bring up much :(


That's Hyper-Super-Meta-Control-Awesome!


Web scraping. I love figuring out how to reverse engineer websites and defeat systems designed against web scrapers. It's also super interesting (concerning?) how much data websites leak. 4 out of the 5 bug bounties I've discovered have been while poking around in my scraping efforts.


I like webscraping and made a lot of money making farms 15 or so years ago; I started disliking it somehow when Python kind of took over. What are you using? I am also interested in doing it as cheap as I can which is a lot of fun for tech reasons.


What's a good tool/language to write scrapers in these days? A decade ago I was using ruby with mechanize and hpricot. I hope tools have improved since then, especially for scraping sites that use javascript.


Really depends on how big your scraping operation is going to be. These days there's a lot of "managed" providers that give you headless browsers / proxy rotators through an easy API so it's relatively easy to plug them into your code. Examples of these would be https://www.browserless.io or https://www.scrapingbee.com for headless browsers to render JS.

From my work experience of working on a large scraping stack with thousands of integrations, I can say that we are very happy with our own custom framework, written in Go (https://github.com/PuerkitoBio/goquery for HTML parsing) and using headless Chrome for JS rendering.


A fun way, though maybe there are much more productive ways, is to learn Scheme and/or Lisp, and, with a language that has a library for it, convert the html to a big s-expression. Then you have it in a form that is the form of the language itself, where you can literally do anything with it.


I love retro gaming on CRT. People tend to misjudge how retro games are supposed to look (visible pixels or mismatch between 2d backgrounds and 3d models). I'm not opposed to people playing on LCD screens, I just think it's important to remember how those games were supposed to look.

Some people are dedicated to show that, which is great: CRTpixels: https://twitter.com/CRTpixels Standard Definition Gaming: https://www.tumblr.com/sdg480 or https://twitter.com/DefStan480

And taking a picture or video of a CRT can be quite tricky, you have to be very careful of your parameters, your angle, etc.


This is a phenomenon I only learned about recently. A few indie games I've played recently have CRT options, like Loop Hero. I don't know how close it gets to the IRL effect but it's really cool.


CRT-like shaders made a lot of progress recently, we re getting closer! And it’s great as not everyone can have a CRT and the existing ones won’t last forever.


I always loved old vector graphics games. I loved tempest.

I don't know, maybe resolutions and refresh rates are high enough now to give a simulation a shot.


Sadly CRTs are now out of production, and 480i SDTVs have whine (I can't stand my TV's whine, and IDK if it needs a recapping or if other TVs are any better) and are particularly unsuited for modern computers and displays due to interlacing, overscan, and low pixel rate (photos of me trying to run modern PC games at 480i at https://nyanpasu64.gitlab.io/blog/amdgpu-stray-crt-480i/). And bizarrely, the prices of the same model of VGA monitor range from $10 (https://www.reddit.com/r/crtgaming/comments/s5rrf7/viewsonic...) to $600 in a Craigslist listing with the only photos being of a "no input" screen, not even displaying an actual picture from the VGA port (unsurprisingly the listing is 18 days old and still not sold).

I've recently ordered a GBS-Control in the hopes I'd find a VGA 31khz monitor by the time it arrived (no luck), and am now struggling with making it work with a LCD monitor. I've run into many issues so far:

- Increasing the GBS-C's width too far results in display corruption.

- The on-screen width of the picture depends both on GBS-C settings and monitor "Auto Adjust".

- The web UI places form over function. You have to enable developer mode in the web UI to even see the current settings and know what thresholds cause video corruption or cause the monitor Auto Adjust to stretch the image to full width. And the same button shape can mean either a momentary action (most buttons), a toggle checkbox action (auto gain), a radio button that takes 1.5 seconds to check when clicked (profile picker), and when you lose Wi-Fi connection with the ESP8266, the buttons do nothing and do not become checked when pressed (and may produce an on-screen and web UI response seconds later)!

- 240p Test Suite GX's grid and linearity tests have different aspect ratios, and I don't know which one to adjust to be square/circular.

- Prior to my clock generator board arriving, sync lock mode 0 resulted in the image shifting vertically by 1 scanline every 10 seconds or so on my LCD. Sync lock mode 1 worked better.

- It appears that each named slot's profiles are saved independently for each video input mode (240p=480i vs 480p). I don't know what happens when you switch modes but haven't saved a preset profile for the other video mode in your current slot. And "Reset Defaults" in the GBS-C keeps profile names but wipes the underlying settings files. I'm not aware of any way to erase slot names, and may need to dig into the firmware source code to find out.

- Tuning the GBS-C to perfectly show the full overscan region in both 240p and 480i/p modes of my Wii (generated by 240p Test Suite GX) was tricky to get right. At one point, the two modes would display 1 scanline offset vertically from each other. I don't know if this is still a problem.

- Switching video modes behaves oddly:

  - Sometimes in 240p Test Suite GX, the image first displays glitched lines scrolling down the image (as if the GBS-C misdetects vblank as 1/3 Hz), before my monitor goes black and reappears even though it's receiving 960p from the GBS-C before and after the input mode changes. (Presumably this is 1280x960, but I have no clue if the dot clock is actually synced between the GBS converter and monitor, and the Wii component video signal is nowhere near 1280 dots per row of bandwidth)

  - Sometimes after changing modes (IIRC both in synthetic 240p Test Suite and real Nintendont usage), the image shows up again horizontally squashed and offset on-screen, until I power-cycle the monitor.

  - Sometimes the full image would be shifted downwards vertically by around 10 scanlines, until I power-cycle the GBS-C or reapply 1280x960 resolution (resync onto incoming video? IDK).
- Sometimes the web UI won't have 1280x960 checked, even if it's outputting a 960p signal. I don't know if this is connected to the vertical shift bug, or if .

Again I'd have to dig into the GBS-C source code to find out why mode changing behaves oddly. There will be a lot of learning to do, understand the software state and chip registers and how they correlate to profile settings and input/output behavior. I suppose I could file a bug at https://github.com/ramapcsx2/gbs-control/issues, but somehow I feel reluctant to do so, partly because I didn't fully understand the setup and don't know if many of these bugs wouldn't happen on a VGA CRT, partly just learned helplessness and not knowing if my bug report is detailed enough or will be ignored or attacked, partly because I'd prefer to chat with the developers in Discord/Matrix outside of a higher-stakes formal bug report or a forum I've never posted at before.


Modern demo scene.

Even more obscurely, the microscopic bracket of size limitations: 140 characters

https://dwitter.net

What's interesting when comparing this to the origin of the demo scene is that now we have ultra super computers everywhere (by comparison), so when you maintain the size limitations: algorithms that would have previously fit, but had impossibly terrible performance - are now possible.

I think this is what makes Dwitter so intriguing: very tiny, simple code, producing seemingly impossible and impressive realtime graphics... made possible because modern CPUs are so fast.

I'm really fond of the scene, the format, the people. And I've learned so much from both doing, and deconstructing from others, and enjoy the art others create using it.


I've been into retro PCs lately, specifically from about 1995-2002. I started with a 200 MHz Pentium MMX gifted to me about a decade ago. Recently picked it back up and discovered there's a lot of fun to be had. For example, it was somewhat recently discovered that AMD K6-2+ CPUs are just one zero-ohm resistor move away from becoming K6-3+ CPUs with the full L2 cache unlocked.

I also am experimenting with Slot 1 boards. They were originally designed for Pentium IIs but with the right combination of VRM, BIOS support, slotket adapter, and CPU and pin change mod, some boards can run the last Pentium IIIs (Tualatin). It's a lot of fun and experimentation.


Gopher, not many of us use it anymore, but a handful of people including myself are keeping it alive and writing new services that can be accessed via it. It’s a nice group of technical, slightly eccentric computer users.

The vintage Mac community is excellent and is full of extremely smart people. Lots of people writing new software, designing new hardware, and doing really complex repair and preservation work.


> writing new services that can be accessed via it

This sounds cool. Care to link some examples? And is there a particular Gopher browser you'd recommend?

Also, how do you feel about Gemini?[1] I only learned about it recently, but it appears to be similar in purpose to Gopher (minimal sites with only text and links), but with a different document format based on a subset of Markdown.

[1]: https://gemini.circumlunar.space


A new one I started is gopher://gophernews.net:70, but the best place to find stuff is on Floodgap: http://gopher.floodgap.com/gopher/gw

Lynx is probably the best that most people already have, but Gophie is a nice, modern client written in Java.

I think Gemini is nice, but I have no interest personally due to the TLS requirement. That makes it a nonstarter for my older computers.


Not really weird anymore as there's a lot of entry level and cloud-based components for people to get into it with. My scene is the localized automation scene; basically home automation but with no cloud connected products.


This. Every couple months I disconnect the internet and walk around the house verifying all my "smart" home automation products still work. Sometimes I'll make a second pass with homeassistant (or a service dependency, e.g. zigbee2mqtt) shutdown to make sure I can still physically use things (like a dimmer switch).


I detest cloud-based components, and have built my entire network on HA/Zigbee devices. I have a few Z-wave (because the devices weren't available in Zigbee), but I hate them because they constantly need to be re-synced.

I wanted to add a Christmas light display this year (I bought all of the necessary individually-addressable LED strips last year), but I just haven't had time to work on it. One day...


I don't understand why this is not more of a thing.

I really don't like the idea of relying on offsite resources for automation, but it seems to be 99% of what goes on in home automation.


What’s your favorite home automation? I like the idea but can’t think of / find anything that really excites me.


Start like you'd tackle any ambiguous problem at work: collect data. Start pulling in data from something as simple as a smart thermostat. Then add sensors to each room to identify hot and cold spots. Balance your HVAC with smart vents next.

I tend to chain my home automation projects.


Modular synthesizers. Electric vehicle conversions. The intersection of musical instrument construction with just intonation and other alternative tuning systems.


Woah- I am not alone on this. I have a dotcom modular system, did JI tuning research in college, and dream of buying a patina vehicle from the fuel crisis era and converting it to EV.


I'm working on converting a Mazda RX-8.


Microsoft flight simulator scene, pre-"flight sim 2020" was super interesting. FSX was well documented and built to be extensible through data, and I wanted to replace the terrible quality terrain of my local area with modern geo-data and ground textures.

There was an entire scene around this, that built, sold and supported third party programs to help you build custom airports, paid tools for importing google earth ground textures, tools to help autogenerate tree cover for a ground texture based on machine learning of "this group of pixels look like a forest so place a forest here", plus all the tooling in the GIS space which is incredible and lovely.

I was a month into stealing google earth images with homebrew code using techniques borrowed from a different open source tool, hand labeling a hundred square miles of ground textures, including thousands of polygons to tell FSX where to place houses, a revamped local airport with new structures and signage, and autogenerating a winter version of the ground textures through writing some java code (because python is stupidly slow) to sample a "snow" texture and place it onto a green ground texture, which worked surprisingly well, writing code to overlay publicly available house polygon data and water polygon data to place rivers and lakes, before I go to hand labeling forests and trying to learn the machine learning tool before I gave up, and then MSFS2020 was announced about a year later.

This field is also related to turning google earth terrain and texture data into Assetto Corsa tracks, which has a similar community including paid tools (that mostly suck though)

I learned a lot of GIS and it was pretty great, and I got to play with a bunch of publicly available large datasets of different formats, and wrote code to generate 3D models from hightmaps, even though it was a terrible implementation.


Will the community reform around MSFS2020?


MSFS2020 is straight up infinitely more friendly to novice development. Instead of having to read enterprise documentation for a custom product that is entirely based on binary file types that is very very mid 2000s microsoft, you literally import a standard 3D model file into the engine itself, and manage it with built in dev tools that are only getting better and more powerful, and the vast majority of plumbing to make things work is done in human readable xml and cfg text files, though there was some of that in FSX

Adding visual things to FS2020 is infinitely easier than any version before it. Meanwhile for ground texturing, turns out replacing that with google satelite data is as easy as proxying the web calls to google servers instead of bing. Theoretically, you could add in your own tileserver that also responds to those calls if you have your own ground textures, though I think you can also manage those in the dev tools in the sim.

Meanwhile, the api for moving data and programming into and out of the sim is super similar to how it was done in FSX, meaning it's almost backwards compatible, and supplemental apps that interact with your flight data were out within months.

Another fun thing about FS2020 over the previous version is that the 3D cockpit is much easier to program, because the instruments and even TV screen style flight displays can be programmed in javascript and WASM, giving you multiple different ways to build powerful and impressive cockpits. For FSX, things that wanted smart and powerful cockpit displays, like a modern boeing, basically required pulling data out of the sim, rendering it yourself, and smuggling that data back into the sim, meaning updating the displays at 15 fps put a large overhead on an already struggling single process executable.

MSFS2020 is so popular, and so easy to access, and so inspiring, that it has infinitely more amateurs trying to build planes in it than FSX had over it's entire life.


Thank you very much - That was very concise and informative!

How does one go about learning more about this kind of programming?


Laser galvo's. Fast flicking mirrors drawing patterns on the walls and ceiling. Use a UV laser and draw crazy glowing shapes on luminous paint (ever shone a UV laser at something luminous?)


I've wanted in for a long time. I think it would be cool to add export to synfig studio or even blender to make animations.


Information security incidence response, blue team mostly... It's been a stressful past decade or so getting phone calls when they know we're going to be dealing with stuff the next day (Such as last night at around 10pm right as I was getting to bed), but on the flipside I've kind of developed a very thick skin for these types of things and it's kind of the most multidisciplinary thing I could imagine doing in anything in information technology as you have to know such a broad range of things (Networking, programming, sysadmin, scripting for windows and *nix, huge gamut of knowledge breadth for mastery in this field). Was just discussing with my partners how you just have to kind of enter a zen mode of realizing someone's trying to mess with you personally and get into the fight on a level where they don't get the upper hand, it's very much as close as you can get to properly fighting people on the internet, and I like being good at that.


Coming from a country where "legally" procuring movies/music/software has always been harder than it should be (though things are better now), the scene I enjoyed was the piracy scene.

Be it the warez scene mentioned elsewhere in the thread, or simply the pirated movies/games scene, it formed such an integral part of my childhood. The whole aXXo/KlaXXoN debacle, the sheer respect for SkidRow for being able to deliver awesome games in a playable crack within days of their release, and purely the sense of community around, of all things, pirating content, was incredible. It sounds weird to say, but in many ways, it felt like a global movement to "stick it to the man" and keep control of the internet.

TBH I'm still a bit upset that mininova closed down because compared to TPB/RarBGe etc, I always felt like mininova was a much tighter knit community (and let's not even get into the whole eMule/Demonoid/Napster community).


I start with FoxPro so eventually get on the board of making a version of it (https://tablam.org), and now I'm regular at

- https://www.reddit.com/r/ProgrammingLanguages/

and because this working on a RDBMs, so:

https://www.reddit.com/r/databasedevelopment/


Thanks, didn’t know the latter.


I loved LiteStep - an alternative shell for Windows. It could make the desktop experience so nice - so custom.

I created a bunch of themes for it: https://www.deviantart.com/yboris/gallery/12368848/litestep


I like to try to run things on Android.

Briefly on HN frontpage: Repurposing an old Android phone as a web server https://news.ycombinator.com/item?id=31841051


The Minecraft computer mods space (ComputerCraft/CC: Tweaked, OpenComputers, etc). If you don't know what these are, they add programmable computers into Minecraft.

People have made package managers, graphics libraries, GUI frameworks, and even a few game console emulators.

- https://www.curseforge.com/minecraft/mc-mods/cc-tweaked: Summary of ComputerCraft/CC: Tweaked.

- https://www.curseforge.com/minecraft/mc-mods/opencomputers: Summary of OpenComputers.

- https://forums.computercraft.cc: Home of a ton of awesome creations.


I love the free software ecosystem, file sharing / electronic communications software, and privacy related stuff, mostly electronic. I like exploring sites like alternativeto.net, european-alternatives.eu, exodus-privacy.eu.org, privacytests.org, degooglisons-internet.org. The whole topic of creating ecosystems that communicate with, or are alternative to, currently established ones, is just fascinating with me, and I have sunk quite some hours into these topics over the years. I have a whole setup of stuff that I manage for myself, a phone that runs /e/ OS, my own cloud to back it up, Linux on various computers, and I also love to tinker with running Windows games on Linux.


Digital Artificial Life -- as in evolving program ecosystems, artificial chemistries or cellular automata that can manifest life-like phenomena, etc.

Haven't done much with it in a while but was very into it in college. It's both a minor scientific field (would probably be grouped under both theoretical biology and AI research) and a hobbyist field with some really interesting projects.


It would be cool to see a distributed artificial life game. No security needed, if a node doesn't play by the rules it just simulates a dangerous environment that kills creatures. Being able to make a robot and send it out to show up on other people's screens would be pretty fun.


A really cool program for playing around with GoL type systems is Golly.

https://golly.sourceforge.net/


That's one of my long time interests and hobbies, which I write about on HN and discuss with other people frequently. I'm supposed to be doing something else right now so I'll quickly drop a few disorganized quotes and links here. (Sorry I didn't have time to be more concise!)

A few years ago I ran across Max Bittker's beautiful "Sandspiel", which is a delightful cellular automata toy that simulates sand and other rules:

https://sandspiel.club/

A few days ago I saw him tweet some amazing stuff that resonated with me, which then led me to discover what he's been working with Lu Wilson (TodePond): Sandspiel Studio -- user definable rules using a block based visual programming language.

https://twitter.com/maxbittker

"working on goth fungus kidpix":

https://twitter.com/maxbittker/status/1593868837111451649

Lu Wilson (TodePond):

https://twitter.com/TodePond

Sandspiel Studio:

https://studio.sandspiel.club/

Sandspiel introduction:

https://www.youtube.com/watch?v=ecCVor7mJ6o

Sandspiel Studio in 60 seconds:

https://www.youtube.com/watch?v=qOA-lR3Xc34

Rainbow Sand:

https://www.youtube.com/watch?v=PGTsy79wx4U

Huegene:

https://www.youtube.com/watch?v=ltpkO7jcFOY

Flower:

https://www.youtube.com/watch?v=ifyYITDq1oo

TodePond's Spellular Automata:

https://www.youtube.com/watch?v=xvlsJ3FqNYU

We had a great discussion on the Sandspiel Studio Discord server, where I posted some interesting links:

Check out the Long Now Foundation talk by Brian Eno and Will Wright about Generative Systems:

10:39 minute excerpt of Will talking about cellular automata and demonstrating with Mirak's Cellebration: https://www.youtube.com/watch?v=UqzVSvqXJYg

6:48 minute excerpt of Will demonstrating Spore Metaverses: https://www.youtube.com/watch?v=7t0kuvz5x_4

6:29 minute excerpt of Will demonstrating Spore Creature Demo: https://www.youtube.com/watch?v=8PXiNNXUUF8

Entire 1:38:50 hour Long Now Foundation talk: Playing with Time | Brian Eno and Will Wright https://www.youtube.com/watch?v=Dfc-DQorohc

Craig Reynolds said the name "Boids" was inspired by The Producers Concierge scene, so that's how you should pronounce it:

Boids. Dirty, disgusting, filthy, lice ridden Boids. Boids. You get my drift?

https://www.youtube.com/watch?v=aL6mTMShVyk

The other really cool rabbit hole to explore for generating tiles and even arbitrary graph based content (I'm sold: hexagons are the bestagons!) is "Wave Function Collapse", which doesn't actually have anything to do with quantum mechanics (it just sounds cool), but is actually a kind of constraint solver related to sudoku solvers.

https://escholarship.org/content/qt3rm1w0mn/qt3rm1w0mn_noSpl...

Maxim Gumin's work: https://github.com/mxgmn/WaveFunctionCollapse

Paul Merrell's work:

https://paulmerrell.org/model-synthesis/

https://paulmerrell.org/research/

Oskar Stålberg's work:

https://twitter.com/OskSta/status/784847588893814785

https://oskarstalberg.com/game/wave/wave.html

There's a way to define cellular automata rules by giving examples of the before and after patterns, and WFC is kind of like a statistical constraint solving version of that.

So it's really easy for artists to define rules just by drawing! Not even requiring any visual programming, but you can layer visual programming on top of it.

That's something that Alexander Repenning's "AgentSheets" supported (among other stuff): you could define cellular automata rules by before-and-after examples, wildcards and variables, and attach additional conditions and actions with a visual programming language.

AgentSheets and other cool systems are described in this classic paper: “A Taxonomy of Simulation Software: A work in progress” from Learning Technology Review by Kurt Schmucker at Apple. It covered many of my favorite systems.

http://donhopkins.com/home/documents/taxonomy.pdf

Chaim Gingold wrote a comprehensive "Gadget Background Survey" at HARC, which includes AgentSheets, Alan Kay's favorites: Rockey’s Boots and Robot Odyssey, and Chaim's amazing SimCity Reverse Diagrams and lots of great stuff I’d never seen before:

http://chaim.io/download/Gingold%20(2017)%20Gadget%20(1)%20S...

Chaim Gingold has analyzed the SimCity (classic) code and visually documented how it works, in his beautiful "SimCity Reverse Diagrams":

>SimCity reverse diagrams: Chaim Gingold (2016).

>These reverse diagrams map and translate the rules of a complex simulation program into a form that is more easily digested, embedded, disseminated, and and discussed (Latour 1986).

>The technique is inspired by the game designer Stone Librande’s one page game design documents (Librande 2010). If we merge the reverse diagram with an interactive approach—e.g. Bret Victor’s Nile Visualization (Victor 2013), such diagrams could be used generatively, to describe programs, and interactively, to allow rich introspection and manipulation of software.

>Latour, Bruno (1986). “Visualization and cognition”. In: Knowledge and Society 6 (1986), pp. 1– 40. Librande, Stone (2010). “One-Page Designs”. Game Developers Conference. 2010. Victor, Bret (2013). “Media for Thinking the Unthinkable”. MIT Media Lab, Apr. 4, 2013.

https://lively-web.org/users/Dan/uploads/SimCityReverseDiagr...

Agentsheets: Alexander Repenning (1993–)

Interacting agents are embedded and interact within cellular spaces called sheets. Agents are reactive to direct manipulation and have autonomous behavior. Agent Sheets draws upon a similarly spirited broad field of paradigms: artificial life, visual programming, “programmable drawing tools,” “simulation environments”, games, cellular automata, and “spreadsheet extensions.” Repenning draws upon these shared characteristics: visual, spatial notation, dynamic, direct manipulation, and incremental agency. The basic tool palette is also a gallery, defined in simulation terms.

Highlights:

• Kits (“agencies”) describe specific domains. One effect of “|ayered” design is “roles”—end-users vs. scenario designers. Example domains in thesis: Turing machines, circuits, flow, traffic, programs. • Sheet is a cellular 2d space, but agents can be stacked up in a cell. • Incremental refinement of art, behavior, etc… • A highly generalize idea of flow is used for things like neural nets, flow charts, water flow, circuits, system dynamic style models, and traffic. • It also supports ecological style spatial simulations. • User interaction and agent communication is in the same representation. i.e. Anything can do to one another everything the user can.

AgentSheets is still going, and has even gone all 3D like Minecraft! AgentCubes!

https://agentsheets.com/

Another great visual programming language for kids that supported defining cellular automata rules by example and visual programming:

KidSim (later Cocoa, then Stagecast Creator) Smith, David C., Allen Cypher, and James Spohrer (1994) In KidSim graphical simulations are created via graphical rewrite rules, which also enables a kind of programming by demonstration. The creators argue that most people can use editor GUIs (e.g. paint programs), and can give directions, but cannot program. Their solution is to “get rid of the programming language” in favor of a philosophy grounded in GUI design:

• Visibility. Relevant information is visible; causality is clear; modelessness. • Copy and modify, not make from scratch. • See and point, not remember and type. • Concrete, not abstract. • Familiar conceptual model. (“minimum translation distance”).

They choose a symbolic simulation microworld as a domain because it leads to knowing, ownership, and motivation. All objects are agents which have appearances, properties (name value pairs), and rules.

Programming by demonstration extends to using a calculator and dragging properties around to define conditionals. One of the creators of KidSim, David Smith, was also the creator of another graphical programming environment: Pygmalion.

Smith, David C., Allen Cypher, and James Spohrer (1994)

(Then I ran across TodePond's Spellular Automata video and realized I was preaching to the choir! TodePond wrote: "and stagecast creator is a big inspiration to me! I name-dropped it in a demo I did this week :D")

Wow I did not realize I was evangelizing to the choir! This video by TodePond, is exactly what I was talking about, just much more beautiful than I'd imagined possible:

https://www.youtube.com/watch?v=xvlsJ3FqNYU

I was watching Lex Fredman interview Michael Levin, and Lex expressed the same level of fascination about cellular automata that I have:

Michael Levin: Michael Levin: Biology, Life, Aliens, Evolution, Embryogenesis & Xenobots | Lex Fridman Podcast #325

https://www.youtube.com/watch?v=p3lsYlod5OU

1:44:29: Lex: Whenever I think about something like unconventional cognition, I think about cellular automata. I'm just captivated by the beauty of the thing. The fact that from simple little objects you can create such beautiful complexity that very quickly you forget about the individual objects and you see the things that it creates as its own organisms. That blows my mind every time. Like honestly I could full time just eat mushrooms and watch cellular automata. I don't even have to do mushrooms. Cellular automata, it feels like from the engineering perspective, I love when a very simple system captures something really powerful. Because then you can study that system to understand something fundamental about complexity, about life on earth. Anyway how Do I communicate with the thing? If a cellular automata can do cognition, if a plant can do cognition, if a xenobot can do cognition, how do I whisper in its ear and get an answer back, too? How do I have a conversation? How do I have a xenobot on the podcast?

Then I watched Lex interview Steven Wolfram:

https://www.youtube.com/watch?v=ez773teNFYA

Stephen Wolfram: Cellular Automata, Computation, and Physics | Lex Fridman Podcast #89 - YouTube

https://www.youtube.com

I hate it when a program I wrote mocks me. In Lex Fridman's interview of Steven Wolfram, he demonstrates the machine learning functions in Mathematica by taking a photo of himself, which identifies him as a .... (I won't give it away):

https://www.youtube.com/watch?v=ez773teNFYA&t=2h20m05s

Here's a video I recently recorded of the CAM-6 simulator I implemented decades ago, and rewrote in JavaScript a few years ago.

https://www.youtube.com/watch?v=LyLMHxRNuck

I recorded that demo to show to Norman Margolus, who co-wrote the book and wrote the CAM6 PC Forth code and many rules, so it's pretty long and technical and starts out showing lots of code, but I'm sure you'll totally get and appreciate it. I linked to a pdf copy of the book in the comments, as well as the source code and playable app.

Demo of Don Hopkins' CAM6 Cellular Automata Machine simulator.

Live App: https://donhopkins.com/home/CAM6

Github Repo: https://github.com/SimHacker/CAM6/

Javacript Source Code: https://github.com/SimHacker/CAM6/blob/master/javascript/CAM...

PDF of CAM6 Book: https://donhopkins.com/home/cam-book.pdf

Comments from the code:

    // This code originally started life as a CAM6 simulator written in C
    // and Forth, based on the original CAM6 hardware and compatible with
    // the brilliant Forth software developed by Toffoli and Margolus. But
    // then it took on a life of its own (not to mention a lot of other CA
    // rules), and evolved into supporting many other cellular automata
    // rules and image processing effects. Eventually it was translated to
    // C++ and Python, and then more recently it has finally been
    // rewritten from the ground up in JavaScript.
    // The CAM6 hardware and Forth software for defining rules and
    // orchestrating simulations is thoroughly described in this wonderful
    // book by Tommaso Toffoli and Norman Margolus of MIT.
    // Cellular Automata Machines: A New Environment for Modeling
    // Published April 1987 by MIT Press. ISBN: 9780262200608.
    // http://mitpress.mit.edu/9780262526319/
Here's another demo I recorded a while ago that shows more rules:

https://www.loom.com/share/cc09b916134b43cea201b61e71432f32

Making a Falling Sand Simulator:

https://news.ycombinator.com/item?id=31309616

Oh My Gosh, It's Covered in Rule 30s:

https://news.ycombinator.com/item?id=14458955

Wolfram Rule 30 Prizes:

https://news.ycombinator.com/item?id=21130098

Finding Mona Lisa in the Game of Life:

https://news.ycombinator.com/item?id=22552006

Andrew Wuensche's and Mike Lesser's gorgeous coffee table book, "The Global Dynamics of Cellular Automata":

https://news.ycombinator.com/item?id=22570750

Here's some stuff about Dave Ackley's "Robust First Computing" and "Moveable Feast Machine":

https://news.ycombinator.com/item?id=22304063

DonHopkins on Feb 11, 2020 | parent | context | favorite | on: Growing Neural Cellular Automata: A Differentiable...

Also check out the "Moveable Feast Machine", Robust-first Computing, and this Distributed City Generation example: https://news.ycombinator.com/item?id=21858577

DonHopkins on Oct 26, 2017 | parent | favorite | on: Cryptography with Cellular Automata (1985) [pdf]

A "Moveable Feast Machine" is a "Robust First" asynchronous distributed fault tolerant cellular-automata-like computer architecture. It's similar to a Cellular Automata, but it different in several important ways, for the sake of "Robust First Computing". These differences give some insight into what CA really are, and what their limitations are.

Cellular Automata are synchronous and deterministic, and can only modify the current cell: all cells are evaluated at once (so the evaluation order doesn't matter), so it's necessary to double buffer the "before" and "after" cells, and the rule can only change the value of the current (center) cell. Moveable Feast Machines are like asynchronous non-deterministic cellular automata with large windows that can modify adjacent cells.

Here's a great example with an amazing demo and explanation, and some stuff I posted about it earlier:

https://news.ycombinator.com/item?id=14236973

Robust-first Computing: Distributed City Generation:

https://www.youtube.com/watch?v=XkSXERxucPc

https://news.ycombinator.com/item?id=22304110

DonHopkins on Feb 11, 2020 | parent | context | favorite | on: Growing Neural Cellular Automata: A Differentiable...

Dave Ackley, who developed the Moveable Feast Machine, had some interesting thoughts about moving from 2D to 3D grids of cells:

https://news.ycombinator.com/item?id=21131468

DonHopkins 4 months ago | parent | favorite | on: Wolfram Rule 30 Prizes

Very beautiful and artistically rendered! Those would make great fireworks and weapons in Minecraft! From a different engineering perspective, Dave Ackley had some interesting things to say about the difficulties of going from 2D to 3D, which I quoted in an earlier discussion about visual programming:

https://news.ycombinator.com/item?id=18497585

David Ackley, who developed the two-dimensional CA-like "Moveable Feast Machine" architecture for "Robust First Computing", touched on moving from 2D to 3D in his retirement talk:

https://youtu.be/YtzKgTxtVH8?t=3780

"Well 3D is the number one question. And my answer is, depending on what mood I'm in, we need to crawl before we fly."

"Or I say, I need to actually preserve one dimension to build the thing and fix it. Imagine if you had a three-dimensional computer, how you can actually fix something in the middle of it? It's going to be a bit of a challenge."

"So fundamentally, I'm just keeping the third dimension in my back pocket, to do other engineering. I think it would be relatively easy to imaging taking a 2D model like this, and having a finite number of layers of it, sort of a 2.1D model, where there would be a little local communication up and down, and then it was indefinitely scalable in two dimensions."

"And I think that might in fact be quite powerful. Beyond that you think about things like what about wrap-around torus connectivity rooowaaah, non-euclidian dwooraaah, aaah uuh, they say you can do that if you want, but you have to respect indefinite scalability. Our world is 3D, and you can make little tricks to make toruses embedded in a thing, but it has other consequences."

Here's more stuff about the Moveable Feast Machine:

https://news.ycombinator.com/item?id=15560845

https://news.ycombinator.com/item?id=14236973

The most amazing mind blowing demo is Robust-first Computing: Distributed City Generation:

https://www.youtube.com/watch?v=XkSXERxucPc

And a paper about how that works:

https://www.cs.unm.edu/~ackley/papers/paper_tsmall1_11_24.pd...

Plus there's a lot more here:

https://movablefeastmachine.org/

Now he's working on a hardware implementation of indefinitely scalable robust first computing:

https://www.youtube.com/channel/UC1M91QuLZfCzHjBMEKvIc-A

John von Neumann's 29 State Cellular Automata

https://news.ycombinator.com/item?id=22304084

John von Neumann's book "Theory of Self-Reproducing Automata":

https://news.ycombinator.com/item?id=21858465

Factorio, and Will Wright on simulation games:

https://news.ycombinator.com/item?id=24163024


Decreasing network latency by tweaking routers/developing new software:

https://www.bufferbloat.net


Do you know that weird phenomenon where you just learned a new word (which is weird in itself, how come I've live 20, 30, 40 year sand never saw this word before?!) and immediately after you see the same word again in an entirely different context?

Well that just happened with "bufferbloat". I had just learned about this word on the book "alrogithms to live by". And now, here.


I keep hoping everyone will have that Aha! moment one day, and we'll all have cake. https://libreqos.io


Baader-Meinhof Phenomenon, or simply the "frequency illusion". Or maybe just dumb luck :)


"Plate of Shrimp"

https://www.youtube.com/watch?v=vRJ5cCP0ZPE

"The more you drive, the less intelligent you are."

BTW, Jim Gettys is the cofounder of the Bufferbloat group! He's an extremely smart and nice guy, and it's a great and important cause to support and contribute to. So much has changed since the original TCP/IP protocols were designed... All that cheap memory is a double edged sword when widely deployed in routers running protocols designed in the 70's.

https://en.wikipedia.org/wiki/Jim_Gettys


Not something I'm part of, but something I respect is the car tuning scene. I'm not talking about engine swapping or adding a bigger turbo, but tuning the original hardware electronically through the ECU.

Where I am in Europe diesels are king, and usually people import 2nd or 3rd hand cars from Germany. I'm from the UK originally, but it's kind of funny that I see a couple of magnitudes more BMWs here, which is much poorer country.

Once your engine has done two or three hundred thousand kilometers the original tuning doesn't really work that great, so you probably want to remap it. This is not only to increase performance, it is also done to decrease fuel consumption and burn cleaner (the technical inspection here is very strict about CO) or makes it start easier when cold.

This is done using software that lets you change how much fuel is injected across different RPMs and throttle levels. If you car has an Eco mode, this is how that works. The thing that there are only really 5 manufacturers of diesel engines for cars in Europe: Volkswagen (VW, Seat, Skoda, Audi, Porsche), PSA (Pegeuot, Citreon, Fiat, Opel, Ford), Mercedes (Mercedes, Nissan, Renault), BMW and Volvo; and the way they work under the hood is all pretty similar.

The fuel injection system and control equipment is not developed in house, but made by someone like Bosch, so if you have two engines made by differnet manufacturers but using an ECU from the same supplier, as you can understand there will be similarities.

To be able to tune engines properly you not only need to know how to edit the map, but also all the perculiarities of that particular engine. A lot of it is trial and error and reading Russian forums (where most the scene is developed).

As you can probably guess it's also used to work around emissions control devices, which are usually no longer functional when you're engine has done a few hundred thousand kilometers, and at this point can actually increase fuel consumption and can damage the engine. For some reason manufacturers do not sell replacement parts, so if you want to keep the engine running your only option is to disable it in software and have it physically removed. Because of all this it's common to see 20 year old cars still driving that have done over half a million kilometers.


As others have mentioned and requested; it could be interesting to learn more about this space?


Any resources or links to get started and follow the scene would be great.


Wow, this is great. Do you have any good links to learn more about this?


I haven't been part of the scene since about 2011, but I've always been extremely proud and fond of my contributions to the iPod and Mac Customization communities. I was a designer back in those days so my coding contributions were minimal, but those communities were the best around.

I was involved in the iPodWizard project and was one of the people soft-bricking their iPods to discover what substrings of the Hex firmware did what so we could modify them and then build custom themes, change strings, and in a few cases even add new functionality. I also contributed my fair share of custom themes, particularly the themes that would turn the grayscale iPod 4G into something more similar to the iPod Video theme (we had 4 colors to make gradients out of; was more fun than it sounds)

I also contributed design and testing to the iPod Linux and iPod Wiki projects, and testing on the Rockbox project.

On the Mac side of things, I was a mod of MacThemes for a long time, contributed my fair share of themes and icons, and was a beta tester for Candybar for a long time. My biggest contribution was probably tearing apart and documenting how to customize iTunes on Mac. I got it to a point where I was able to restore 90% of the old iTunes after a much-loathed redesign. My documentation also resulted in a spike in interest and new themes being created for the first time in a few years. It was really exciting seeing the frankly stupid amount of work I put into that pay off within the community.


I used to have entire Keygen Jukebox on my iPod. And speaking of iPods: iPodLinux and Rockbox. So satisfying when you are 14, just change colors of the blocks in "copter" and it compiles and runs on your nano.

Oh and I also loved to show off with Tiny C Compiler on my jailbroken Kindle 3rd gen


Algorithmic art and pen plotters - super fun and wonderful community.


I love the plotter community!

A timely shill: for three years now, I've run an annual international postcard exchange that's kinda like a Secret Santa for people with plotters. This happens to be the week that registrations are open. https://buttondown.email/ptpx/archive/ptpx-2022-holiday-card...


I also try to be part of the algorithmic/generative art community. It seems really scattered but the variety of techniques and ideas flowing around is really inspiring :)

After stable diffusion/midjourney, the community is a little leery of deep learning I've noticed. But I'm trying to carve out a space using neural networks in a different way) anyway.


Ooooooo, any good links to share? I picked up a Draftmaster II at auction and someday I'll get it working I promise...


I'd also love to know this.

I had a fascination with the (to me) gigantic plotter at my Dad's workplace (they did a lot of architectural and engineering drawings on it). I had completely forgotten about this until these comments came along, and now I'm trying to work out where I can put one at home :)


As for hardware, consider picking up a cheap vinyl cutter. Most of them are knockoffs of the Roland CAMM series, which itself is a beefed-up knockoff of the early HP pen plotters. As a result, they all speak HPGL, and most of the blade holders are basically modified pen holders. You can put a pen in a vinyl cutter, and most of them include a pen holder by default, as a way of testing the machine without wasting vinyl.

Vinyl cutters are optimized for slower motion with more stiffness and torque, whereas pen plotters expect nearly zero force on the tip and are optimized for speed and acceleration, but if you're not running production, speed won't matter so much. Vinyl cutters also have controllable downforce (by regulating the current in a solenoid), which can be neat.

My local makerspace has a USCutter MH-series, which is available in a cute little desktop size, or with a sensible stand for the larger models. Contrast with most of the genuine-vintage plotters that are weirdly bulky and awkward, not built to come apart for transport, and have 40-year-old power supplies lurking inside just waiting to blow up.


Thanks for all that info, you've given me a good amount to go on with.


I like the drawingbots discord server, and this blog: https://inconvergent.net/#about, also follow #plottertwitter


Synths I was building synthesizers for a time, most of them used chips from old computers like Commodore 64 or some FM chip from an old PC audio card that I can't quite remember. I haven't had time for that in a long while.

http://www.midibox.org/

Coffee I guess some things around coffee and espresso machines specifically. Depth-wise I had rebuilt some commercial machines but also just being in the forum and seeing other people's rebuilds. I wrote some software for a prosumer espresso machine that had it operating with a PID and was activating / deactivating and even had a super simple API with an iOS app (That was never submitted to the store). One day I'd like to get access to some specific old 80s-90s espresso machine that I could rework and upgrade with different stuff but not so much on the horizon due to rareness.

Plants I have a few hundred succulent plants of various types. Beyond collecting, attending meetups etc I've also grown from seed, grafted plants etc as well which is fun but I have limited space. I think one of the major things in the "scene" is to actually visit places like Mexico or Madagascar (random examples) in remote areas that have plants growing naturally. One day maybe I will have adequate space to do a lot more breeding and growing, there are some people in SF who are at the meetups who are a lot more into it (some professionally) doing cross breeding and all sorts of things or have encyclopedic knowledge.

AI images Very superficial but AI image generation is really interesting to me. Does playing around and joining subreddits count? My knowledge doesn't pass muster on this one lol


Do you have any knowledge on analog synths (like the Juno-6) or where one might go about obtaining the parts to build or assemble one?


Scripted image manipulation: I wrote a script that builds seamless background images out of sets of smaller images, kind of like contact sheets. This started for a comic book themed web site so that the background image could be a collage of comic covers with a special theme ( Christmas, celebration of a comic artist, ...etc. ) I am still cultivating the script so that it'll be friendly enough for public use. I'll place it on Github when that happens.

Little Languages: I like to tinker with my own compilers / interpreters. I had read an article recently about someone building an example Linux shell and I wanted to try a couple of ideas where I thought I'd take a different approach than the author. I ended up building a very, very tiny BASIC interpreter in C. My proof that the interpreter was "good enough" was whether or not I could write a script in the dialect of BASIC to display the lyrics to the song "The Twelve Days of Christmas."

https://github.com/jimlawless/lazybasic


Making Doom levels, but that's probably more artistic than technical, though knowing your way around the engine and editors is technical.


The first book I ever bought in a computer store was Tricks of the Doom Programming Gurus. Back in the mid-90's I saw it randomly while walking by the games section and thought it almost too good to be true. I ended up spending countless hours making my own levels. I was never any good though, and I definitely preferred playing what other people came up with. Every couple of years I'll go back and revisit some of those levels and see if there's anything new. It's definitely awesome that people have kept this scene alive.


I've been following closely emulation scene since 1999, more recently, I started following FPGA recreation scene. Never imagined what emulation would turn nowadays, specially since it's officially supported and sold by companies which back in the day they saw it as an evil practice.


I am still phreaking and active in the demoscene.


what really exists in phreaking? I used to be interested in the mid-late 90s, but it seems it was all but dead by 2000 or so. Asterix seemed to keep things interesting for a bit, but I haven't heard about that in years.


In the last years it shifted mostly to tinkering with radio communication of all sorts. IoT etc. it's amazing what you can find out about factories and your general environment if you have a look at everything that's buzzing around... with mostly default passwords. :) but there are still interesting systems around just last week I found a 170 line isdn system still in use by a printing company... roughly 1mbit :D


Any entry points / tutorials to get started?


A few years back I spent quite a long time (like two years off and on) trying to kind of create my own scene with a Lua-programmable 3D libretro front-end https://vintagesimulator.com/media.html

Then I tried to post it on reddit in r/lua and they called it Malware and tried to insist that the whole thing had to be open source. I think what really screwed me there was Microsoft and their GD message identifying everything as Malware by default unless you have paid them off. I did eventually get the code signing certificate and stuff but no one ever really seemed to care.

I assume there may be something like this for VR somewhere that I haven't heard of yet that is actually somewhat popular.


Super Smash Bros Melee modding. People have fixed bugs in subtle parts of the logic (e.g. input polling occasionally drops frames). They've also made entirely new training modes and added visualizations for various mechanics.

Oh, and they've added in-game rollback netplay using a Dolphin fork :)


> Oh, and they've added in-game rollback netplay using a Dolphin fork :)

Holy smokes!


Retro computers, like RC2014 (based on the Z80), Ben Eater's 6502 breadboard computer, anything by Lee Hart[1], all the fun kits on Tindie…

1: http://www.sunrise-ev.com/projects.htm


- Ultra Customizable tools such as: Emacs, Obsidian, Vim, VSCode or anything you have an API to play with. I'm currently making this but for a browser[0].

- Memory: Supermemo, Decaying Curve, Tricks, Algorithms: Including Ankis, Supermemos and more.

- Programming Languages: Any kind. I like interesting stuff such as Zig, Elixir, Lisp and HTML(yes I said it).

[0]: https://github.com/ilse-langnar/notebook


https://www.demoscene.info/

(used to be active there, in the demoscene)


https://www.pouet.net/ also for those unfamiliar


I run a website (https://mustad.io) that keeps track of the stats for matches on Final Fantasy Tactics Battleground (https://twitch.tv/fftbattleground). We have a channel on the stream's discord dedicated to development of various other tools for viewers. I am not super active now but I have been paying to keep my website afloat for a couple years now. I don't know exactly how many users I have but people tell me if it goes down so I know it's at least a few.


Rather fond of watching the anime fansub scene.

Back in the bad old days, that was the only way to watch shows. Today, almost all shows are subbed at release by Western platforms—for those who are left the focus has shifted to doing it for its own sake, and the results are remarkable. Groups like GJM are doing extremely sophisticated and artful work with motion tracking, graphics editing, masking, and so on, to produce target-language imagery that is visually indistinguishable from the original or matches its style.


- Solopreneur / Indie Hacker / Tiny SaaS scene. This is more an implementation strategy of my dreams of Financial Independence but I find these communities have large overlap. Building small, sustainable solutions to real-world problems to make a decent living. Not glamorous, but lots of freedom. Communities: IndieHackers and lots of people on Twitter.

- Simple Code. I think most system architectures / frameworks / languages are suboptimal - either being hard to reason about or a pain to code in, etc. So this bucket is about trying to find technologies that actually best support their usecases, regardless of what their adoption looks like. This led me to two scenes: Svelte / SvelteKit for frontend and F# for backend / general purpose programming and is now how I build pretty much all my apps (see: https://cloudseed.xyz). The subreddits for both these communities are good.

- Creative Coding / Technology - I used to be more involved here but now am more of an observer. Basically trying to use the power of computing to create cool things - mostly artistic. This comes in a range of forms but typically procedural / generative art is at the core. Subreddits r/generative and r/creativecoding are pretty active


Atari 2600 programming. I haven't made anything useful myself yet, but I've been following the community very closely for a few years. There's tons of great new games being made all the time.

- https://forums.atariage.com/forum/50-atari-2600-programming/

- https://www.youtube.com/@ZeroPageHomebrew


Esoteric programming languages. When you remove the need for a programming language to be useful or understandable, what you get is a combination of challenging puzzles, humor, and some actually interesting ideas.

Right now I'm actually working on a new esolang that combines an almost-reasonable stack-based programming language with Malbolge-inspired (https://en.wikipedia.org/wiki/Malbolge) obfuscation.


My wife recently went back to school for civil engineering. They must take one programming course, in matlab. So we have this community of academic go-getter students who've never programmed before, suddenly working hard to learn about for-loops and structs and functions in Matlab. As a computer scientist it has been fun teaching them a bit. The assignments are easy enough that I can help a ton without knowing any syntax and just learn language features on the fly.


Matlab is awesome. I had to learn it for a class in Computational Photography back in school. The matrix-centric language design is an interesting change from traditional languages and the amazing linear solvers available give you a shocking amount of power sometimes. For example, the language has really good SIMD/parallelism support out of the box, because you are steered towards making all of your variables into vectors and performing batch processing. Backslash is also an incredibly powerful tool in the right hands, and lends itself to some beautiful oneliners (it’s sort of like a shell language in that way).


What a coincidence! I'm in my first year of civil engineering taking a MATLAB course right now. I do have some previous coding experience, though. For me, it's all the math stuff that drives me insane.


I wouldn’t say I’m part of the community, but I’m certainly a fan of ZZT. A text-based game engine developed in 1991 by Tim Sweeney which still has a community going and new games being released to this day. I was able to make my way around it a 14 year old kid, which says a lot about its accessibility.

https://zzt.org / https://museumofzzt.com


I help a friend repair old vacuum tube radios, transmitters, etc. Myself, I'm afraid of anything with more than 12 volts, but he's shown me that even smoke coming out of a radio isn't a show-stopper as it helps you track down the problem. I've learned the subtle hatred of silver-mica capacitors, and invented a technique to track down the leaky ones.

Also, we fixed a few HP 5061 Cesium Beam Atomic clocks. So I'm now a Quantum Mechanic ;-)


I started the ANXCamera project. Where we ported Xiaomi's MiuiCamera to run on AOSP roms (non-Miui based).

It involved decompiling the app. Adding miui framework dependencies. Patching stuff, where adding dependencies was adding bloat. Removing analytics. Also unlocking device restricted functionalities. We were able to provide latest functionalities on older devices.

It started when I installed an AOSP rom on Xiaomi's OG Pocophone F1. And discovered that no Camera app was able to use the full hardware capabilities of the phone with AOSP rom.

At the projects peak we were able to support 15+ devices.

It also worked on non-xiaomi devices.

One weird thing was it wasn't organized on XDA but on telegram.


Demoscene on 8-bit machines. People are still creating crazy demos on 40 year old computers like Commodore 64, Amstrad CPC, or Sinclair Spectrum. Demoscene on modern PCs are active too, but not as interesting or mind-blowing as people rotating filled cubes at 50fps on a C64.

Since those machines have fixed configurations, it's easier to assess the level of technical achievements.

Yesterday, I watched a C64 demo on Youtube that featured Donald Trump's face[1]. It's such a fantastic cross-over of 40 year old tech with memes of 2020's. I find it fascinating.

https://www.youtube.com/watch?v=HsXB7F0lQwY


Where is the demoscene community active these days?


Pouet or Demozoo are probably your best bet.


I don’t know that I’d describe it as “weird”, but for me it’s sequenced Christmas Lights. My setup is relatively small, but yes, I’m that guy with the big Christmas light display. This year I’m at about 1500 RGB LEDs this year (again, still pretty small) it’s fun hobby.

The weirdest part for me still is custom ordering hundreds of dollars of lights from Chinese companies directly.


HEY. I'm looking for dependable, C9 lights. Would you know where to look? I love the look of the old-timey large bulbs, but so far the lights I've found have been; a) overly expensive and b) not able to withstand more than one winter in the upper-Midwest.

Any recommendations?


I have had good luck with several products here; https://www.1000bulbs.com/product/204208/CMS-C9SWW.html

They have an array of temperatures and has an old look. I bought 1000' feet of their spool and bulbs and have been using for about 7 years with zero issues. Only bulb to go out was because I dropped it on some concrete. I also did this after a couple years of what turned out to be single use lights from big box store.

It's not cheap but not sure what your budget is. At least you can get some mileage out of them.


I really like the look of C9 bulbs as well, but incandescent strands these days are all pretty cheaply made - and actually, anything you buy in a typical big box store I think probably isn't going to last more than a season or two in good conditions. I don't have specific recommendations - all my lights are addressable RGB LEDs. I would look for commercial sets, which I would suspect are designed to be more durable for longer-term use.


I really hope that you also do cool things like this one [1] with your Christmas lights

1. https://m.youtube.com/watch?v=TvlpIojusBE


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: