added callout component

This commit is contained in:
2026-04-02 22:54:42 +02:00
parent 77fa3f8200
commit f0726cba4a
4 changed files with 107 additions and 11 deletions

View File

@@ -0,0 +1,71 @@
<script lang="ts">
let {
content,
type,
}: {
content: string[];
// valid values: warn, quote. defaults to warn
type: string;
} = $props();
</script>
<div class="callout-container">
<p class="callout-symbol">
{#if type == "quote"}
»
{:else}
!
{/if}
</p>
<div class="callout-text-container">
{#each content as p}
{#if type == "quote"}
<p class="callout-quote-text">{p}</p>
{:else}
<p>{p}</p>
{/if}
{/each}
</div>
</div>
<style>
.callout-container {
display: flex;
flex-direction: row;
max-width: 800px;
margin: 0 auto;
align-items: center;
border: var(--border-style) var(--border-dash-size) var(--color-highlight-alt);
background-color: var(--color-background-highlight-alt);
backdrop-filter: blur(var(--blur-radius-background));
border-radius: var(--border-radius);
padding: 16px;
gap: 16px;
box-sizing: border-box;
}
.callout-symbol {
font-family: var(--font-mono);
font-size: 4.0rem;
font-weight: 700;
/* font-style: italic; */
}
p {
margin: 0;
font-size: 1.0rem;
line-height: 1.4rem;
}
.callout-quote-text {
font-style: italic;
}
.callout-text-container {
display: flex;
flex-direction: column;
gap: 8px;
}
</style>

View File

@@ -1,16 +1,20 @@
<script lang="ts"> <script lang="ts">
import SubtitledImage from "$lib/components/subtitled-image.svelte"; import SubtitledImage from "$lib/components/subtitled-image.svelte";
import Callout from "$lib/components/callout.svelte";
</script> </script>
fuck i'm so sick of this shit fuck i'm so sick of this shit. i need to incoherently ramble about this
<div class="callout-warning"> <Callout
<p>hey.</p> type="warn"
<p>if you read the headline and agree with it but don't want to read some mildly infuriating content, skip this post. remember that you're cool and valid, and enjoy the rest of your day.</p> content={[
<p>if you are pro-AI, i also recommend you don't read this post. leave this page. in fact, kindly leave my website and never interact with me.</p> "hey.",
</div> "if you read the headline and agree with it but don't want to read some mildly infuriating content, skip this post. remember that you're cool and valid, and enjoy the rest of your day.",
"if you are pro-AI, i also recommend you don't read this post. leave this page. in fact, kindly leave my website and never interact with me.",
]}
/>
## Bluesky ## bluesky is vibecoded
I was scrolling Bluesky earlier today; something I do maybe once every two weeks when I'm really bored. I only follow a few people (such as Technology Connections, f4mi, and Freya Holmer), so there's never a lot on my feed. It's why I sometimes go over to, Orvus forbid, the Discover feed. I was scrolling Bluesky earlier today; something I do maybe once every two weeks when I'm really bored. I only follow a few people (such as Technology Connections, f4mi, and Freya Holmer), so there's never a lot on my feed. It's why I sometimes go over to, Orvus forbid, the Discover feed.
@@ -26,7 +30,7 @@ Apparently, this bot is meant to [create custom feeds](https://techcrunch.com/20
I find it terrifying how tech CEOs (or CIOs, whatever) continually press on to actively encourage media illiteracy. Building a feed is trivial, not to mention a very personal thing to do what's a personal AI generated feed but someone else's feed? Not counting the waste of our limited land and resources, the overconsumption of our drinking water, the pollution of our air, and everything else, of course. I find it terrifying how tech CEOs (or CIOs, whatever) continually press on to actively encourage media illiteracy. Building a feed is trivial, not to mention a very personal thing to do what's a personal AI generated feed but someone else's feed? Not counting the waste of our limited land and resources, the overconsumption of our drinking water, the pollution of our air, and everything else, of course.
As someone who's studying to become a teacher, this really grinds my gears. The state I live in has a **severe** problem with children scoring low and not being able to acquire the knowledge and skills that are expected of them. Children in primary school barely know how to read anymore. Youths leaving middle school are barely fit for the job market and their apprenticeship applications get rejected because of it, literally leading them into a life of unemployment and poverty. All this while we're in a massive teacher shortage, with some schools either ending early or completely cancelling school on some days of the week. Of course, the [gymasiums](https://de.wikipedia.org/wiki/Gymnasium), where the more fortunate children (not always but often literally from wealthier households) are being taught, struggle less with this, while elementary schools and middle schools for special needs children are hit the hardest. As someone who's studying to become a teacher, this really grinds my gears. It's like opposing education. The state I live in has a **severe** problem with children scoring low and not being able to acquire the knowledge and skills that are expected of them. Children in primary school barely know how to read anymore. Youths leaving middle school are barely fit for the job market and their apprenticeship applications get rejected because of it, literally leading them into a life of unemployment and poverty right out of the gate. All this while we're suffering from a massive teacher shortage, with some schools either ending school days early or completely cancelling school on some days of the week. Of course, the [gymnasiums](https://de.wikipedia.org/wiki/Gymnasium), where the more fortunate children (not always but often literally from wealthier households) are being taught, struggle less with this, while elementary schools and middle schools for special needs children are hit the hardest.
Imagine my fucking frustration when the department of education department decided to provide an *AI chatbot* to all students. What. The. Fuck. They could provide more funding to improve the schools this includes hiring more staff, but also renovating the dilapidated school buildings, some of which are in such poor condition, one of my internship schools had a fence around one of its buildings because there was a danger of *roof tiles falling and striking children*. Instead, they choose to reduce one of the few aspects that school is still good at: enabling children to establish and practice social relationships in a safe environment! Imagine my fucking frustration when the department of education department decided to provide an *AI chatbot* to all students. What. The. Fuck. They could provide more funding to improve the schools this includes hiring more staff, but also renovating the dilapidated school buildings, some of which are in such poor condition, one of my internship schools had a fence around one of its buildings because there was a danger of *roof tiles falling and striking children*. Instead, they choose to reduce one of the few aspects that school is still good at: enabling children to establish and practice social relationships in a safe environment!
@@ -42,7 +46,7 @@ I may delete my Bluesky account over this. It would be a bit of a shame because
subtitle="Scott, du sprichst mir von der Seele." /> subtitle="Scott, du sprichst mir von der Seele." />
## protecting my server from AI using... AI?? ## protecting my server from AI using... AI?
Since finding out [that an insane amount of bots is trying to steal data off my server at all times](/blog/2026/0214/), I began thinking more about server security. I set up `fail2ban` for instance, which IP-bans connecting clients after a few failed attempts. I also found a tool named [Anubis](https://anubis.techaro.lol/). Since finding out [that an insane amount of bots is trying to steal data off my server at all times](/blog/2026/0214/), I began thinking more about server security. I set up `fail2ban` for instance, which IP-bans connecting clients after a few failed attempts. I also found a tool named [Anubis](https://anubis.techaro.lol/).
@@ -54,13 +58,18 @@ I've taken down my Anubis instance for now. This doesn't mean I won't ever use i
Another thing that perplexed me was that [the mascot for Anubis was initially AI generated](https://en.wikipedia.org/wiki/Anubis_(software)#/media/File:Former_Anubis_mascot_pensive.webp). I *hate* when people claim their AI use is justified when they use it as "placeholder art". Gamedevs keep doing that more and more lately and it's infuriating. Speaking of which... Another thing that perplexed me was that [the mascot for Anubis was initially AI generated](https://en.wikipedia.org/wiki/Anubis_(software)#/media/File:Former_Anubis_mascot_pensive.webp). I *hate* when people claim their AI use is justified when they use it as "placeholder art". Gamedevs keep doing that more and more lately and it's infuriating. Speaking of which...
## Gamedev ## shovelware in 2026
Lately, whenever I'm looking for new games on Steam, one of the first things I do is scroll down to see whether there's an "AI Generated Content Disclosure". I'm actually quite happy Valve implemented this, as it allows me to very quickly identify games that are not worth my time. Thing is though, I can't decide whether the blubs that these "developers" keep writing are hilarious or pathetic. Lately, whenever I'm looking for new games on Steam, one of the first things I do is scroll down to see whether there's an "AI Generated Content Disclosure". I'm actually quite happy Valve implemented this, as it allows me to very quickly identify games that are not worth my time. Thing is though, I can't decide whether the blubs that these "developers" keep writing are hilarious or pathetic.
Take this blurb by the team behind the title "I Am Jesus Christ" (weird. not linking it): Take this blurb by the team behind the title "I Am Jesus Christ" (weird. not linking it):
quote: AI tools were used in the production of the voice acting. We are a five-person team that has been working on this project for several years without the budget of a large studio. In our case, this was a practical solution that allowed us to complete the game at the level of quality we were aiming for. All creative decisions and the final shape of the game were made by our team. AI was used as a supporting production tool, not as a replacement for the creative work behind the game. <Callout
type="quote"
content={[
"AI tools were used in the production of the voice acting. We are a five-person team that has been working on this project for several years without the budget of a large studio. In our case, this was a practical solution that allowed us to complete the game at the level of quality we were aiming for. All creative decisions and the final shape of the game were made by our team. AI was used as a supporting production tool, not as a replacement for the creative work behind the game.",
]}
/>
This, when dissected, is saying: This, when dissected, is saying:

View File

@@ -32,11 +32,26 @@ export enum BlogPostTag {
DRAWING = "drawing", // self-explanatory DRAWING = "drawing", // self-explanatory
IMADETHIS = "i-made-this", // stuff i made IMADETHIS = "i-made-this", // stuff i made
META = "natconf-meta", // about the website itself META = "natconf-meta", // about the website itself
RANT = "rant", // self-explanatory
TECH_TIP = "tech-tip", // tech guides TECH_TIP = "tech-tip", // tech guides
} }
export const posts: BlogPostLink[] = [ export const posts: BlogPostLink[] = [
{
key: "2026/0402",
post: {
date: "2026-04-02",
time: "20:50",
banner: "banner.webp",
bannerAlt: "White light blurs on a darker background.",
title: "i'm so fucking fed up with ai",
description: "It's time to switch domains.",
tags: [
BlogPostTag.RANT,
],
}
},
{ {
key: "2026/0326", key: "2026/0326",
post: { post: {

View File

@@ -107,6 +107,7 @@
<title>About | denizk0461</title> <title>About | denizk0461</title>
</svelte:head> </svelte:head>
<Content> <Content>
<Banner2 <Banner2
title="About Me & natconf.dev" title="About Me & natconf.dev"