Step 1 (gateway drug): Jellyfin
- 2 Posts
- 68 Comments
SuspiciousCarrot78@aussie.zoneto
Selfhosted@lemmy.world•How To Parse JSON Data To A Human Readable Format [WIP]English
2·12 hours agoPerfect. Then my third suggestion stands - get it make you a bespoke training module.
Create a project container: upload the source documents already cited by others / ones you find useful. Just 4 or 5.
Add the rule “You are helping me learn ____. You must not provide full refactors unless specifically asked for. Use Socratic method where appropriate”.
Pseudo code what you want to do (hell, draw a flow chart) and ask “based on what I want to do, your background knowledge and the contents of the container, what’s the first thing I need to learn? How should I approach this?”
Then ask “why?”
Hell, get it to make you coding exercises.
After each session, get it to make you a handover note in markdown format. Download it and then add that to your container. (Later on, you can get really fancy and start making your own llm-wiki)
People shit on LLMs as a knee jerk thing… but coding IS a language…and if you understand the logic, the rest is syntax. Also, it’s not as if you’re making some million dollar mission critical thing- you’re teaching yourself through successive approximation.
If you don’t feel comfortable using online models, there are even local alternatives.
I still think JavaScript is the faster way for this, but who knows.
SuspiciousCarrot78@aussie.zoneto
Selfhosted@lemmy.world•What are your self–hosted alternatives for inter device communication?English
1·22 hours agoOh that’s cool! Cheers for that.
SuspiciousCarrot78@aussie.zoneto
Selfhosted@lemmy.world•How To Parse JSON Data To A Human Readable Format [WIP]English
23·15 hours agoScoping first, code ideas at bottom. Kewl?
Is this a “learn it by coding it” project or is it a “I want this thing to exist, no one has done it, but my code skills aren’t quite there” project?
If the latter, would you consider iterating via llm (as you mention n8n, so I figure you’re in that space anyway) or is this a purely a learn by doing thing?
Come to think of it, there is actually a third option here. You could get the LLM to teach you how to code it by writing some pseudo code and asking it for pointers / starting steps. Claude web is pretty good for that sort of thing, I think. You can get it to tailor its lessons to what you need without the tedium of starting at “Hello World”.
You seem like the sort that could keep that interaction honest and not let it just do everything.
PS: I read about your setup - sounds brilliant. Go you good thing.
PPS: n8n has a Code node (JavaScript), and parsing that weather JSON into a formatted string is probably like 15 lines of code. Something like -
const data = $input.first().json;
return [{ json: { temperature: data.list[0].main.temp } }];
add a Code node after your HTTP request in n8n. Get one single value out first. If you see a temperature number in the output, you win.
Pulling Python in just to parse JSON is probably adding a tool you don’t need for this.
JavaScript may be ass but it’s literally there, so it’s omnipresent ass. :)
Once you’ve got the JSON parsed, turn it into one small HTML weather card.
const data = $input.first().json; const item = data.list[0];
const html =
<div> <h3>Weather</h3> <p>Current temperature: ${item.main.temp} °C</p> <p>Feels like: ${item.main.feels_like} °C</p> <p>Humidity: ${item.main.humidity}%</p> <p>Condition: ${item.weather[0].description}</p> </div>;return [{ json: { html } }];
(Sorry about the formatting ; Lemmy formatting is weird AF)
Anyway, as one journeyman to another, that’s where I’d start poking. ICBW.
SuspiciousCarrot78@aussie.zoneto
Selfhosted@lemmy.world•Kittygram v1.1 has releasedEnglish
1·1 day agoLet’s tag it as “provisional” then. As in, once you have my provisional trust, accrued over time, I’ll probably stop auditing every single line. I’ll still look tho.
But the long and short of it is this - XZ utils backdoor actually makes case for trusting clankers more than human collaborators. Clankers are incompetent… they usually aren’t Machiavellian.
I’ve heard it said that an LLM is like a Labrador retriever when it comes to coding. Overly excited, pulls ahead, does some really goofy shit and sometimes chews up your couch (hello Qwen 27B)…but it is trainable.
Human devs are like cats…which is oddly on brand for this project :)
I’d sooner trust a clanker I had prompted with my house style ticket and narrowly sandboxed than a rando online. Of course, the difference is, a rando may eventually earn trust…a clanker doesn’t - but it doesn’t need to if narrowly scoped.
EDIT: here’s a template I use / created for Qwen / Codex. It’s…opinionated and bears scars of prior over eager Labradors. This is usually step 1 I fill out. My fingers are going to shit with O/A , so am trying to minimise scut work.
TICKET-Px-SHORT-DESCRIPTIVE-NAME
Status: PROPOSED Timestamp: DD-MM-YY-HH-MM Priority: P0 | P1 | P2 | P3
Purpose
One paragraph:
- what changes
- what does not
- whether this is proposal / proof / implementation
Why this exists
Describe:
- concrete failure mode
- why current behaviour is wrong
- why this is architectural not cosmetic
- why local patches are rejected
Include: We do not want … We do want …
Proof requirements before implementation
Hard gate.
Before implementation exists, prove:
- seam exists
- ownership is correct
- contract can be enforced
- no god-object expansion
- no hidden coupling
If proof fails: stop and escalate. Do not patch.
Gates
- Step 0 GO/NO GO
- Step 1 GO/NO GO
- Step 2 GO/NO GO
- Step N GO/NO GO
Each gate:
- exact thing being proven
- explicit stop condition
Test Plan
Mix of:
- unit fixtures
- regression replay
- smoke coverage
- edge cases
- negative cases
Prefer: prove behaviour changed, not just coverage increased.
Definition of Success / PASS
Minimum acceptable state.
Must describe:
- observable outcome
- old failure closed
- contract enforced
- ownership preserved
Definition of Success / EXCELLENT
Stretch target.
Usually:
- generalises across adjacent lanes
- demonstrates reuse
- proves contract not logging theatre
Assumptions
State assumptions explicitly.
Examples:
- baseline already proven
- implementation surface bounded
- no broad whitelist/regex fix
Proposed shape
Describe:
- modules
- packets/cards/contracts
- ownership boundaries
- interfaces
Prefer: small typed objects.
Thin leaf intent
If adding logic:
prefer:
- thin leaf
- compact return object
- narrow ownership
Avoid:
- diagnostic fluff
- local maxima
Policy versus signal
Policy: config
Signal: code
Config controls behaviour. Signal detects reality.
Scope
Explicitly include:
- what this ticket covers
Non-goals
Explicitly exclude:
- unrelated cleanup
- opportunistic refactors
- god-object growth
- broad routing changes
Acceptance criteria
Numbered list.
Must be testable.
Definition of done
Agreement on:
- ownership
- interfaces
- config surface
- enforcement point
Only then may implementation tickets follow.
SuspiciousCarrot78@aussie.zoneto
Selfhosted@lemmy.world•Kittygram v1.1 has releasedEnglish
3·2 days agoC’mon meow…
SuspiciousCarrot78@aussie.zoneto
Selfhosted@lemmy.world•Kittygram v1.1 has releasedEnglish
10·3 days agoThat’s kinda shallow, dude. But you do you.
It’s not like it’s named XxxLovesToSplooge69Xxx or LoliChanFingerBot.
SuspiciousCarrot78@aussie.zoneto
Selfhosted@lemmy.world•Kittygram v1.1 has releasedEnglish
7·3 days agoTrue…but the arguably better / more defensive stance is “accept no PR unless the user explains wtf it does and/or I personally trust them”.
Iow, stop accepting PRs from randos - clanker or meatbag - full stop. The lowest cognitive load is “none”.
I don’t know you / we can’t have a convo why you sent me this? Into the bin.
(In my humble opinion, for a small or new project, that’s a cleaner footing anyway)
The claude.md file is cute, but I don’t think a claude would actually be tripped up by that.
It’s not such a high bar to pass to be honest with you. You’d probably need something more subtle, at which point you’re just shooting yourself in the foot.
The meow thing is more like a philosophical line in the sand than anything else and I respect it.
But given the way that Codeberg actually blocks crawlers and agents (and how Claude works), it probably doesn’t really do what we think it does.
SuspiciousCarrot78@aussie.zoneto
Selfhosted@lemmy.world•Kittygram v1.1 has releasedEnglish
6·3 days agoNo reason not to… except people tend to have bad reactions when a repo contains CLAUDE.md, what with anti ai sentiment being what it is.
In this instance, someone (correctly) read the file first and found the hilarious SuperTrooper-esque poison pill.
Disagree with the phrasing myself.
Yes “please ensure …” is nominally more proactive but “be prepared to explain” should force a technical framing in the first place, because the poster in on notice they may be challenged. Don’t write slop, read the room etc. It also explains why the rule exists / what the fail state is.
The first one just sounds like so much corpo HR double speak.
Be bold. Say what you mean - “We talk shop here. Be prepared to put up or shut up, else bonk”.
If the user can justify their question (if/when queried), it doesn’t matter whether the question is hardware, software or other - it will have a grain.
Additionally it might give people an foothold into OPs thinking process / whether they selected the right room in the first place.
My $0.02 and YMMV
SuspiciousCarrot78@aussie.zoneto
Selfhosted@lemmy.world•Kittygram v1.1 has releasedEnglish
191·3 days agoI lol’ed (lolcatted?) but isn’t the better solution not to accept PRs from unknown / untrusted sources - ai or human?
Additionally, Codeberg is actively hostile to crawlers and ai agents isn’t it?
Still, this is funny. Not sure Claude would fall for it, but funny anyway.
SuspiciousCarrot78@aussie.zoneto
Piracy: ꜱᴀɪʟ ᴛʜᴇ ʜɪɢʜ ꜱᴇᴀꜱ@lemmy.dbzer0.com•Playback issues on YouTube on mobile across all third party appsEnglish
2·3 days agoGod damn - I had this idea myself! Great minds think alike, but fools seldom differ.
I was thinking of an additional step of having it transcode overnight to a more mobile phone friendly resolution, like let’s say 480p, as well as introducing a time to live (TTL) so that I don’t end up with an ever expanding YouTube library that never gets watched.
Actually I seem to recall there was a YouTube something (Youtube custodian? Something like that) that did all this for you directly. But I think I would like to try doing it as a cron job because it could run on low end hardware like a Raspberry Pi.
Ditto here. Rule 3 was…unevenly applied.
SuspiciousCarrot78@aussie.zoneto
RetroGaming@lemmy.world•I paid $9.90 for a 19-year-old Radeon HD 3850 — it hit 106°C and still gamedEnglish
2·4 days agoYes, I figured as much :)
SuspiciousCarrot78@aussie.zoneto
RetroGaming@lemmy.world•I paid $9.90 for a 19-year-old Radeon HD 3850 — it hit 106°C and still gamedEnglish
4·4 days agoPressing x to doubt on the orange pi 5 - box86 ain’t that good, yet, surely? :)
PS: OP appears to have a VERY old rig - perhaps they can’t (or don’t want to) upgrade to mini-pc?
- CPU: Intel Core 2 Duo E7500 @ 3.8GHz OC
- RAM: 8GB DDR2
- GPU: ATI Radeon HD 3850 512MB
- Storage: 1TB SATA SSD
- PSU: 450W 80+ Bronze
- OS: Windows 7 x64
FWIW, I can run all of the games demonstrated on my Lenovo M93p tiny at good speeds (and that only takes about fifty watts of power / cost $50-70 USD)
SuspiciousCarrot78@aussie.zoneto
RetroGaming@lemmy.world•I paid $9.90 for a 19-year-old Radeon HD 3850 — it hit 106°C and still gamedEnglish
6·3 days agoFor $10, that’s quite impressive. I’m familiar with several of those games, including Just Cause 2, which I have run on i7-4785t (iGPU only) at 630p, hitting 69fps (albeit it AA off etc, AF 4x, textures high, shadows low, medium water and object details etc).
OTOH, the i7-4785T doesn’t hit 90+ degrees to do it :) (sits around 70) and sips ~40W.
EDIT: from the video, the test rig was -
Test Bench Specs:
- CPU: Intel Core 2 Duo E7500 @ 3.8GHz OC
- RAM: 8GB DDR2
- GPU: ATI Radeon HD 3850 512MB
- Storage: 1TB SATA SSD
- PSU: 450W 80+ Bronze
- OS: Windows 7 x64
Funny, I’ve had the exact opposite experience reddit vs lemmy. People are much more supportive here.
Reddit is especially a shithole for that exact use case (sharing tech projects), because (I suspect) pecking order games and performing for imaginary audiences. Between that and the slop…yeah, nah. Fuck Reddit.
YMMV
SuspiciousCarrot78@aussie.zoneOPto
Selfhosted@lemmy.world•Best speech to text for arthritic fingers? [SOLVED: using Handy]English
1·5 days agoYep, I think we have the winner. I’ve just installed it today and I’m actually responding to your post using handy right now. It’s a really great piece of software. Thank you to both of you that recommended this.
SuspiciousCarrot78@aussie.zoneto
Selfhosted@lemmy.world•This community isn't your personal adviserEnglish
2·6 days agoHuh. That’s a smart idea (AI federated instance). I imagine Lemmy is too small for it to be on Big AIs radar very much (just yet)
On the r/LocalLLama - there’s a Lemmy equivalent. It’s quiet but if you start a good topic people will come out of the wood work.
I’m thinking of starting one about my new project (replacing llm with deterministic code + Markov chain for garnish. Not quite an expert system of old but towards that end; DM me if you want and I will send you link to repo).
Anyway - fuck reddit and its performative nonsense, slop and bots. I will never share technical knowledge there again.
Hopefully the friction of using Lemmy keeps the worst of reddit on reddit.