Yoooo Gaussian Splats are fun!
Created my first one yesterday and edited out some of the worst parts, now it looks like this!
Kinda like a dream, I luv it!

#gaussiansplat #splat #photography #art #experimenting #experiment

Of course, the next morning it was pretty solid. Not too dissimilar to a block of firm tofu.

I the container's contents in half, then cut up the half I was trying into little cubes.

I figured micorwaving as-is would mummify it into inedibility, so I added some water and kept cutting/mixing it until it seemed wet enough to survive reheating.

The taste? Fine. Just like fresh!

The texture? Better than I expected, but not quite like fresh. Pribably would be nicer if I could use milk or cream with it, but that's a hard pass given my allergies.

Still … good enough.

Success! 🙂

But then …

29/x

#cooking
#reheating
#experimenting
#learning
#FoodSecurity
#homemade

Experimenting With Eleventy

Reading Time: 3 minutes

One nice thing about switching from WordPress to Eleventy is that I start with a blank slate. By this I don’t mean that I start with nothing, because Eleventy does a lot. What I mean by this is that I can use APIs and other tools with greater ease than if I was experimenting with WordPress.

The Federation example

With WordPress I need to use the activitypub plugin which seems to depend on the Jetpack plugin to function. The result is that I’m jumping through two hoops. With a few lines of JavaScript and a file called share.js, I can use Mastodon’s API via my site, to share a blog post. At this moment I’m sharing a thumbnail and the post but later I will experiment with adding two or three preview sentences. I want people to get a taste before clicking.

The Strava Experiment

This morning I went for a group run, and on Saturday I went on a group ride. Within a few days I can design my blog so that my daily ride/run/walk or other sport displays beneath the day’s blog post. If I share photos, then you will get a contextual understanding of where I was, and what I saw.

I was experimenting with plugins on WordPress but they are not that malleable. You need to use them in a specific way. If I deal with the Suunto, or Strava API directly, then I have more control on how sporting activities are displayed.

The Learning Opportunity

Part of the lure of switching from WordPress to Eleventy is the learning opportunity. It’s an opportunity to extend my understanding of CSS, JavaScript, APIs and more. It is also an opportunity to experiment with a much lighter user experience, both for me as a blogger, but also for users of the site. No massive PHP and react overhead.

With the current workflow I can work from within terminal, only using the web browser to check the result.

And Finally

When I was playing with Eleventy the first time I got stuck. This time I didn’t, thanks to Gemini. Before, I had to RTFM and try to decipher what was happening. When I got an error code I had to google for it, and often it would throw me to forums where I had to read dozens of responses without finding something that I understood.

Now when I get an error code I cut and paste it and I get instant help. It saves time, and lowers the barrier to entry.

Having said this, there are plenty of occasions where Gemini wasted hours of my time. There are times where you get an error and gemini will say “try this” and suggest trying the same thing three or more times. That’s why I eventually gave up with the Eleventy Activitypub plugin. I was tired of making no progress.

A Quick Thought on Agentic AI

With what I have seen, experimenting with Gemini and Activitypub I feel concern for people using Agentic AI. My experiment is to see how far I can get using free AI models, rather than paid ones. If I was paying for Gemini, and I saw the loops that I saw, over the last week or more, I’d be frustrated. With Euria, Le Chat and other AI models I ran out of tokens before they provided me with the end result I was looking for.

Conclusion

Learning about Eleventy, JavaScript and APIs is part of the learning experience, but so is learning to get great answers from Gemini and other AI models, with a minimum amount of wasted time, energy, and prompts.

#eleventy #experimenting #learning

On the Euphoria of Setting Up Activitypub With Gemini – Irony

Reading Time: 3 minutes

I have spent many hours, and got Gemini to hallucinate multiple times, through multiple chats, attempting to get my Eleventy blogging experiment to talk with Activitypub and the Fediverse with limited help.Setting p a webfinger was easy, but getting follows to be accepted, and for posts to show up has been a complex task.

The Gemini Limitation

While putting Gemini through its paces I noticed that Gemini loves to try A, then B, before trying C, and during the entire process it will tell me why the solution works. Ironically, it often doesn’t. We hear so much about vibe coding, but based on my experiences I’d say that vibe coding is deeply ingrained within the scope of plain dumb luck.

One of the problem with AI, that I notice on a task such as this, is that AI tokenises what should be kept as a whole. An eleventy.js file should be kept whole, or if not whole, then as individual functions. By breaking it up in the wrong place, every time you try something and it fails, the AI model grows exponentially in complexity. That’s why I close a chat, take the latest iteration and continue from there.

If I tried this with Euria, LeChat and other LLMs I’d run out of tokens way before I achieved my goal. That’s why I stick with Gemini.

Of Image Paths and Activitypub Experimentation

If you’re setting up an RSS feed for Eleventy, with Gemini’s help, then it’s fantastic, but if you’re dealing with paths to images, file conversion, and stepped processes, such as ingesting the photos to a site specific directory, converting them from jpg to webp, and then serving them, then Gemini will get confused and hours of iteration will take place. That’s why I speak of luck playing a part.

Another term for luck is perseverance.

The Activitypub Marathon

Two or three years ago, when I was experimenting with Activitypub integration with a wordpress blog the process took time, and iterations. I used many different sources to try to resolve why it wasn’t working, and I was using the RTFB model, rather than AI. Read the Fabulous Blog trying to understand if I had made a mistake and if I had done something wrong.

I seem to remember moving the well know webfinger to the site’s route directory and that worked eventually.

Over time the wordpress plugin was improved and now it is optimised, to work within minutes, rather than hours.

What Worked

Setting up Webfinger was simple, and getting Mastodon to see the profile was simple. It is the process of getting a static blog to be seen by Mastodon that is a challenge.

Bridgy Fed

Setting up Bridgy Fed was quite fast, and simple, but I forgot to modify the site’s domain so it’s pointing to the wrong one for now. It was relatively quick and intuitive to setup, so if you’re in a rush take the Brid.gy route. I found that Bluesky prefers it.

Seeing JSON Rather than HTML

One of the stumbling blocks with my attempt to add the static blog to the fediverse is that Eleventy was serving html rather than json. Outbox was serving HTML, so that had to be fixed in the layout, but also via htaccess, and the same was true of the post pages. Now they’re serving the html versions, as well as a fediverse friendly json version. With patience fediverse instances should notice and index the blog, as the five hundred posts are noticed and indexed, and as new posts are shared.

And Finally

Lack of Gemini Support

I’m puzzled by how many iterations it takes with Gemini to get something like Activitypub to work with Eleventy. I’d expect AI to have encyclopedic knowledge on a topic, and help to resolve an issue within seconds or minutes, rather than hours. I’d also expect it to ask for context and encourage identifying the environment, before blundering in, and assuming, rather than verifying first.

Lack of Contextual Memory

The single most exhausting thing about trying to problem solve with Gemini is that it has no contextual memory, and it hallucinates. Both of these lead to negative loops where you get stuck. The easiest way to end such a loop is to open a new chat, but in so doing you need to add the context back in.

The Case for Writing and Using Tutorials is Alive and Well

With a well researched, and written tutorial, by following clear and concise instructions, you can follow a list of steps methodically and achieve what you want with a fraction of the carbon footprint, and in a fraction of the time. Next time I will look for a tutorial.

#activitypub #challenge #experimenting #fatigue #learning

React-Like JSX Syntax for Webcomponents

TLDR: I’ve been #experimenting with react-like jsx-syntax with webcomponents to see if I could theoretically replace #React in one of my larger #software projects. It is not ready for production use, but rather a #Research exploration into #CustomElements and #ModernJS performance.

The goal was to build #FunctionalWebComponents that handle #StateManagement and #DOM updates without the overhead of a massive #JavaScript framework. By leveraging #StandardWebAPIs and #Proxy objects, I’ve managed to create a #Reactive programming model that feels familiar but stays closer to the #Platform.

Check out the full #TechnicalTutorial and #DeepDive here: https://positive-intentions.com/docs/research/Tutorials/dim/dim-functional-webcomponents

(Disclosure: this project may be getting deprecated. Sharing this because it might still be interesting or educational.)

#WebDevelopment #Frontend #BuildTheWeb #NoFramework #JS #JSX #WebStandards #Coding #ResearchAndDevelopment #VanillaJS #SoftwareEngineering #TechBlog #WebDevCommunity

#fotovorschlag "schattenspiele" With a very long exposure, then walk away from the frame, turn around and come back. This way, you can look at the shadow of your own ponytail in the photo! I had only just gotten a digital camera in 2010, so it was fun to experiment, and I also had a willing victim who wanted to play along. It is not a great photo but we both had a lot of fun. #monochromemonday #bandw #blackandwhite #experimenting #portrait #fediverse