Live data from Hacker News

Ask HN: Most interesting tech you built for just yourself?

news.ycombinator.com

221–230 of 1001 posts

Re: Ask HN: Most interesting tech you built for just yourself?

#221

My MIL is 93, and the only tech she can really deal with is turning on the radio and TV and changing channels. She is fond of music from old classics (from the 60's and earlier), so I hooked up a Raspberry PI with an FM transmitter and created her own private radio station. She tells me what songs she likes and I create different playlists that get broadcast on her station. It preserves the surprise element of radio,…

For the true feeling of radio, you might throw some episodes of The Big Broadcast on there as well - I believe archive.org has some but they're easily findable elsewhere. Donate some money to WFUV[1] or buy some of the collections[2] if you just want the music.

[1] https://en.wikipedia.org/wiki/WFUV

[2] https://rivermontrecords.com/search?type=product&q=big+broad...

Re: Ask HN: Most interesting tech you built for just yourself?

#222
I've modified Ghidra in order to unlink pieces of an executable back into relocatable object files.

To keep things simple, source code files are compiled into object files which are linked into an executable. Object files have sections (named array of bytes), symbols (either defined as an offset within a section or undefined) and relocations (a request to patch up an offset within a section with the final address of a symbol) while executable files only have sections. The linker takes all the object files, lays out the sections in memory, fixes up the relocation and writes out an executable file without the symbols or relocations.

With Ghidra I can reverse-engineer an executable and recreate symbols, data types and references between symbols. Then, with my modifications I can recreate relocations with that information and, once a range of addresses has been fully processed, I can select it and export it as a relocatable ELF object file.

Why? This allows me to extract parts of an executable as object files and reuse these by linking them my own source code ; I don't need to fully-reverse engineer these extracted parts, I just have to basically identify every relocation there was originally in that part. I can also divide and conquer my way to decompiling an executable by splitting an executable into multiple object files and recreate its source code one object file at a time, like the Ship of Theseus.

So far it works with what I've tested it with and I've been meaning to write a series of articles to explain that process in detail, but writing quality technical articles with illustrations on a topic this esoteric is very hard.

  - My Ghidra fork: https://github.com/boricj/ghidra/tree/feature/elfrelocatebleobjectexporter
  - My initial prototype in Jython (has a readme): https://github.com/boricj/ghidra-unlinker
Note: this works only with 32-bit MIPS, little endian, statically-linked executables. It can be made to work with other architectures by writing a relocation synthesizer for it, but so far I only care about decompiling PlayStation 1 games.

Re: Ask HN: Most interesting tech you built for just yourself?

#223
Lots of things over the last decade or two. I can count almost one hundred repos on GitHub, but most of them are not very popular with other people, my projects seem to only scratch my own itches..

I have my own lunisolar calendar and decimal time (with centidays and dimidays) so I produced a lot of code for that on various devices. I also wrote two chess engines and a hobby operating system.

And countless web apps, like one to read the daily/monthly top of HN and Reddit, another to host my pictures (on a cool domain hack), one to manage the batch jobs on my chess engine cluster in a rack at home that helps keeping the house warm in winter, and lately my own frontend to Bing API because I was growing dissatisfied with DuckDuckGo.

Re: Ask HN: Most interesting tech you built for just yourself?

#224

My mom digitized many many old family videos, and wanted them online for sharing with family (including elderly & not-super-tech-savvy relatives). She asked me “should I just upload them all to a YouTube channel?” Thankfully it was a phone call so my mom didn’t see my aghast expression. I prefer that big tech not index this stuff! Better to keep “in the family” Seriously why does big tech deserve this free & super-pr…

If it's old pristine video, might be worthwhile for anything without identifiable info on YT. Never know who this helps or brings backs memories.

Re: Ask HN: Most interesting tech you built for just yourself?

#225
An app that helps me with shopping at my main supermarket.

I usually go always to the same supermarket twice a week. I was frustrated that every time I changed something in my shopping list I had to mentally recompute the optimal path to pick up everything.

Now with my app I am able to build the graph of the entire supermarket (each node represents a rack with shopping items) and then given my shopping list it computes the optimal path from the entrance to the exit. It's a version of the classical travelling salesman problem

Re: Ask HN: Most interesting tech you built for just yourself?

#227

I build a "SaaS" wine app, for tracking wines in my cellar and for tasting notes as well. "SaaS" in quotes since it runs in a small production setup with all the bells and whistles (ie. CI/CD pipelines, continuous releases, user signup etc.), but I'm the only user :-) I'm a wine enthusiast, i.e. not a professional but interested enough to do a WSET2 in my spare time (I'll do a WSET3 when I find time some day). I like…

Off-topic but thank you for mentioning WSET. It's the first time I've heard about it. In UK, there's something basic offered by bbc: https://www.bbcmaestro.com/courses/jancis-robinson/an-unders...

Re: Ask HN: Most interesting tech you built for just yourself?

#228
I put together some operational amplifiers as filters to measure skin voltage and infrared absorption then used machine learning to learn to identify me and to measure blood pressure, pulse rate and oxygen saturation.

I was close to predicting/estimating blood sugar when I lost momentum and also had a few errors making up PCBs.

Re: Ask HN: Most interesting tech you built for just yourself?

#229
I got tired of editing videos, so I wrote a tiny web app that allows me to record uniform ready-to-publish videos for my SaaS in real-time, so creating & publishing a 5-min video only takes me about 15 minutes.

The videos look like this one: https://www.youtube.com/watch?v=1rdeir2-bVA

Creating a video is simple:

- think about the subject (usually during the week)

- 5 min: copy an existing video script and edit it to match the current subject

- 5 min: record the video with OBS capturing the web output

- 5 min: publish it on FB/LI/youtube/...

It uses a simple scripting language with actions that I can trigger by pressing a button. The script has custom commands that allow you to mount HTML/overlay the webcam video/show the webcam video as a thumbnail/play music/... And you can compose commands into other commands.

Here's an example script I used for the video mentioned in the beginning:

    const script:Record = {
        Intro: [
            `/name empty screen with overlays
    /remove *
    /volume 0`,
            `/name empty screen without overlays
    /remove *
    /volume 0
    /append div.hide-overlay`,
            `/subs 
    How to quickly qualify leads
    for premium outdoor structures
    without a configurator
    `,
            `/intro
    ![](vsl-TV-transparent.png)
    # Quickly qualify leads
    ## for premium outdoor structures
    ### without a configurator
    /caption Tom Janssens / Owner
    /wait 3s
    /remove *
    /subs 
    https://virtualsaleslab.com
    marketeers of premium outdoor structures
    activate & qualify leads
    via online 3D configurators
    In this video
    explain you 
    a simple and easy way 
    to qualify a lead
    without using a configurator`
        ],

        Main: [`/remove *
    /append img#bg.fullscreen[src="prices.png"]
    /select #bg
    /animate fade-in 3s both
    `,

        ],
        Outro: [
            `/site https://**OBFUSCATED**/r/vsl/vsl/en/designer/index/ts-alu`,
            `/remove *
    /caption Tom Janssens / Owner
    /wait 5s
    /cfg https://**OBFUSCATED**/r/vsl/vsl/nl/designer/index/solar-de
        `,
            `/remove *
    /outro
    ![](vsl-TV-transparent.png)
    # https://virtualsaleslab.com
    ### tom@virtualsaleslab.com`]
    };

    export default script;

Update: Obfuscated some urls in the example script, as they are pointing to my test environment ;)

Re: Ask HN: Most interesting tech you built for just yourself?

#230
Depends what you mean by "for myself".

For practicality: I wrote a flashcard app to use on the tube to help me learn French. I wanted a couple of things specifically: - it should be super simple to use on a mobile device - it should be trivial to add a new flashcard on the fly - it should prioritise flashcards I've got wrong more than I've got right - it should work offline, pushing back to the server once there's a connection again Code: https://github.com/alex-moon/clin

For fun: I wrote an app that tied a bunch of machine vision ML repos together to generate "explorable dream worlds" in the form of short HD videos. I wanted a simple, fun interface that would let me specify a schema/config for the next video, then hit "go" and watch it generate over the course of however many hours, including previewing what we had so far. Code: https://github.com/alex-moon/vc

Post reply on HN