Qubyte Codes - IndieWebCamp Brighton 2024

Mark’s write-up of the excellent Indie Web Camp Brighton that he co-organised with Paul.

#indieweb #community #indiewebcamp #brighton #personal #publishing #sharing #related #posts #links #independent #hacking #coding #events #gathering

Recent thing on my website, How to Save the World- The Compassiviste Anthology: Volume One: Visions for Peace https://robertkingett.com/posts/6517/ #IndieWeb #SmallWeb

For Google, Amazon, Microsoft and Meta ( #GAMM ), the old cloud sync-and-share business model wasn’t working anymore.

So what did they do?

They convinced us that our notetaking apps require an internet connection and forty thousand dollar GPUs located on a server three hundred miles away. That's the future they've made for us.

#SmallWeb #IndieWeb #Fediverse #ActivityPub

https://fromjason.xyz/p/notebook/any-technology-indistinguishable-from-magic-is-hiding-something/

[Blog]: Happy 25th birthday to the "backbone of my internet": RSS feeds

https://bacardi55.io/2024/03/16/happy-25th-birthday-to-the-backbone-of-my-internet-rss-feeds/

A kind of love letter for RSS birthday (a bit late ^^)
#blog #rss #indieweb

the 32-bit cafe's third community code jam is up and running from today to the 26th! https://tilde.32bit.cafe/~hermit/community_jam_3/

the prompt is "what has creating a website done for you?"

you have until march 26th to complete & submit your page, which will be compiled into a zine! :) can't wait to see what folks do! <3 the submission form will be up soon.

#indieweb #personalwebsites #code #codejam #web #html #css #coding #website

My website is finally not broken! The fonts work and everything is responsive! I’m not done with the colors, but I’m really happy with how this is progressing. I knew purchasing that Womprat font would eventually pay off!

#WebDev #IndieWeb #StarWars

Was just reminded yet again how great it is to have preserved my web presence across platforms by consolidating on my website. Check out my archive:

https://cleverdevil.io/archive

My entire public web life, from 2002 to today.

#IndieWeb

Was just reminded yet again how great it is to have preserved my web presence across platforms by consolidating on my website. Check out my archive:

https://cleverdevil.io/archive

My entire public web life, from 2002 to today.

#IndieWeb

Was just reminded yet again how great it is to have preserved my web presence across platforms by consolidating on my website. Check out my archive:



https://cleverdevil.io/archive



My entire public web life, from 2002 to today.



#IndieWeb

In fact, I decided to open this platform before the end of the poll...
So you can grab 1 GB of space for your static website with a subdomain of pages.casa and, if you want, you are allowed to use your OWN domain!

It's free !

https://pages.casa/register-on-pagescasa.html

#indieweb #smolweb

#Business #Introductions
Welcome to the IndieWeb · “Let’s make this jungle wild, exciting, and beautiful again.” https://ilo.im/15y9p7

_____
#IndieWeb #SmallWeb #OpenWeb #OwnYourWeb #Website #Blog

While an HTML style element for inline CSS needs nothing but simple start and end tags (as of HTML5 and later)

<style>
p { color: red }
</style>

a more robust style element requires a precise series of overlapping code comments.

Here is the answer if you want a code snippet to copy & paste

<style><!--/*--><![CDATA[*/
p { color: red } /* you may delete this sample style rule */
/*]]><!--*/--></style>


Here is why:

1. Not all HTML processors are CSS processors. While all modern browsers know how to parse CSS in style elements inside HTML, it is still quite reasonable for people to build HTML processors that do not, and many exist. There are plenty of ways to errantly or deliberately misplace markup inside a style element, like in a CSS comment, that such processors will not see, that can break them and cause unexpected and different results in different processors. Strictly speaking any use of > child combinator selector syntax should also be HTML escaped (as &gt;) inside a style elment.

Thus it makes your HTML more parseable, by more processors, if you can hide the entirety of the style sheet inside the style element from such processing, including any child combinators. A CDATA section does exactly that:

<style><![CDATA[
p { color: orange } /* CDATA allows a </style> here to not close the element */
body > p { margin: 1em } /* CDATA also allows an unescaped > child combinator */
]]></style>


2. However CSS syntax does not recognize a CDATA directive (even as of the latest published CSS Syntax Module Level 3¹ or editor's draft² as of this writing). CSS parsers may very well treat a CDATA directive as a syntax error that invalidates the subsequent style rule.

Thus we must hide the CDATA directive, its opening and closing markup, from CSS parsers.  CSS code comments /* ... */ can do exactly that:

<style>/*<![CDATA[*/
p { color: orange } /* CDATA allows a </style> here to not close the element */
body > p { margin: 1em } /* CDATA also allows an unescaped > child combinator */
/*]]>*/</style>


3. This is close but still exposes HTML processors that do not process CSS to a minimal bit of content, the CSS comment opener and closer that are outside the CDATA section:

/* */

This recently showed up in a draft of the This Week in The #IndieWeb newsletter³, because portions of it are automatically constructed by parsing the HTML of MediaWiki pages for content, and one of those used a MediaWiki template that included a minimal style element to style the marked up content inserted by the template. A draft of the newsletter was showing raw CSS, extracted as text from the style element by the CSS-unaware parser extracting content. I was able to hide nearly all of it using CSS comments around the CDATA section opener and closer. Except for that little bit of CSS comment noise outside the CDATA section: /* */

Fortunately there is one more tool in our toolbox that we can use. Simple HTML/SGML comments <!-- --> are ignored at the start and end of style sheets (noted there as CDO-token and CDC-token), and thus we can use those to hide the last two remaining CSS comment pieces that were leaking out, like this: <!-- /* --> and <!-- */ -->. Note that the portion of the HTML comment directives that are inside CSS comments are ignored by CSS processors, which is why this works for both processors that parse CSS and those that do not.

This last addition produces our answer, with no fewer than three different comment mechanisms (CDATA, CSS, HTML/SGML), overlapping to hide each other from different processors:

<style><!--/*--><![CDATA[*/
p { color: orange } /* CDATA allows a </style> here to not close the element */
body > p { margin: 1em } /* CDATA also allows an unescaped > child combinator */
/*]]><!--*/--></style>

By replacing those informative style rules with a style rule to be deleted, we have recreated the code snippet to copy & paste from the top of the post:

<style><!--/*--><![CDATA[*/
p { color: red } /* you may delete this sample style rule */
/*]]><!--*/--></style>

Q.E.D.


Afterword:

If you View Source on this original permalink or my home page you can see the more robust style element in a real world example, following the IndieWeb Use What You Make principle.

#CSS #style #styleElement #styleSheet #HTML #HTML5 #CSSsyntax #codeComments #CDATA #SGML #CSScomment #HTMLcomment #SGMLcomment


Glossary:

CDATA
  https://en.wikipedia.org/wiki/CDATA
CSS — Cascading Style Sheets
  https://en.wikipedia.org/wiki/CSS
HTML — HyperText Markup Language
  https://en.wikipedia.org/wiki/HTML
HTML5
  https://en.wikipedia.org/wiki/HTML5
IndieWeb Principles
  https://indieweb.org/principles
MediaWiki
  https://en.wikipedia.org/wiki/MediaWiki
original permalink
  https://indieweb.org/original_permalink
Q.E.D.
  https://en.wikipedia.org/wiki/Q.E.D.

References:

¹ https://www.w3.org/TR/css-syntax-3/
² https://drafts.csswg.org/css-syntax/
³ https://indieweb.org/this-week-in-the-indieweb
https://www.w3.org/TR/css-syntax-3/#stylesheet-diagram
https://www.w3.org/TR/css-syntax-3/#CDO-token-diagram
https://www.w3.org/TR/css-syntax-3/#CDC-token-diagram
https://indieweb.org/use_what_you_make
While an HTML style element for inline CSS needs nothing but simple start and end tags (as of HTML5 and later)

<style>
p { margin:0 }
</style>

a more robust style element requires a precise series of overlapping code comments.

Here is the answer if you want a code snippet to copy & paste

<style><!--/*--><![CDATA[*/
p { margin:0 } /* you may delete this sample style rule */
/*]]><!--*/--></style>


Here is why:

1. Not all HTML processors are CSS processors. While all modern browsers know how to parse CSS in style elements inside HTML, it is still quite reasonable for people to build HTML processors that do not, and many exist. There are plenty of ways to errantly or deliberately misplace markup inside a style element, like in a CSS comment, that such processors will not see, that can break them and cause unexpected and different results in different processors. Strictly speaking any use of > child combinator selector syntax should also be HTML escaped (as &gt;) inside a style elment.

Thus it makes your HTML more parseable, by more processors, if you can hide the entirety of the style sheet inside the style element from such processing, including any child combinators. A CDATA section does exactly that:

<style><![CDATA[
p { margin:0 } /* CDATA allows a </style> here to not close the element */
body > p { margin:1em } /* CDATA allows an unescaped > child combinator */
]]></style>


2. However CSS syntax does not recognize a CDATA directive (even as of the latest published CSS Syntax Module Level 3¹ or editor's draft² as of this writing). CSS parsers may very well treat a CDATA directive as a syntax error that invalidates the subsequent style rule.

Thus we must hide the CDATA directive, its opening and closing markup, from CSS parsers.  CSS code comments /* ... */ can do exactly that:

<style>/*<![CDATA[*/
p { margin:0 } /* CDATA allows a </style> here to not close the element */
body > p { margin:1em } /* CDATA allows an unescaped > child combinator */
/*]]>*/</style>


3. This is close but still exposes HTML processors that do not process CSS to a minimal bit of content, the CSS comment opener and closer that are outside the CDATA section:

/* */

This recently showed up in a draft of the This Week in The #IndieWeb newsletter³, because portions of it are automatically constructed by parsing the HTML of MediaWiki pages for content, and one of those used a MediaWiki template that included a minimal style element to style the marked up content inserted by the template. A draft of the newsletter was showing raw CSS, extracted as text from the style element by the CSS-unaware parser extracting content. I was able to hide nearly all of it using CSS comments around the CDATA section opener and closer. Except for that little bit of CSS comment noise outside the CDATA section: /* */

Fortunately there is one more tool in our toolbox that we can use. Simple HTML/SGML comments <!-- --> are ignored at the start and end of style sheets (noted there as CDO-token and CDC-token), and thus we can use those to hide the last two remaining CSS comment pieces that were leaking out, like this: <!-- /* --> and <!-- */ -->. Note that the portion of the HTML comment directives that are inside CSS comments are ignored by CSS processors, which is why this works for both processors that parse CSS and those that do not.

This last addition produces our answer, with no fewer than three different comment mechanisms (CDATA, CSS, HTML/SGML), overlapping to hide each other from different processors:

<style><!--/*--><![CDATA[*/
p { margin:0 } /* CDATA allows a </style> here to not close the element */
body > p { margin:1em } /* CDATA allows an unescaped > child combinator */
/*]]><!--*/--></style>

By replacing those informative style rules with a style rule to be deleted, we have recreated the code snippet to copy & paste from the top of the post:

<style><!--/*--><![CDATA[*/
p { margin:0 } /* you may delete this sample style rule */
/*]]><!--*/--></style>

Q.E.D.


Afterword:

If you View Source on this original permalink or my home page you can see the more robust style element in a real world example, following the IndieWeb Use What You Make principle.

#CSS #style #styleElement #styleSheet #HTML #HTML5 #CSSsyntax #codecomments


Glossary:

CDATA
  https://en.wikipedia.org/wiki/CDATA
CSS — Cascading Style Sheets
  https://en.wikipedia.org/wiki/CSS
HTML — HyperText Markup Language
  https://en.wikipedia.org/wiki/HTML
HTML5
  https://en.wikipedia.org/wiki/HTML5
IndieWeb Principles
  https://indieweb.org/principles
MediaWiki
  https://en.wikipedia.org/wiki/MediaWiki
original permalink
  https://indieweb.org/original_permalink
Q.E.D.
  https://en.wikipedia.org/wiki/Q.E.D.

References:

¹ https://www.w3.org/TR/css-syntax-3/
² https://drafts.csswg.org/css-syntax/
³ https://indieweb.org/this-week-in-the-indieweb
https://www.w3.org/TR/css-syntax-3/#stylesheet-diagram
https://www.w3.org/TR/css-syntax-3/#CDO-token-diagram
https://www.w3.org/TR/css-syntax-3/#CDC-token-diagram
https://indieweb.org/use_what_you_make
#IndieWeb #CSS #style #styleElement #styleSheet #HTML #HTML5 #CSSsyntax #codecomments

The “IndieWeb” feels like coming home

In reply to: Nathaniel Daught

The IndieWeb is a movement to return to actually owning and controlling your digital presence like we did 20+ years ago.

The “IndieWeb” feels like coming home, Nathaniel Daught

It is like you read my mind. For me, IndieWeb – especially WebMention – has felt like reclaiming what we lost in our rush into the walled gardens of privately owned social media. The IndieWeb is a web of personal connections, I feel. Those walled gardens were never home. This is.

This is home.

#IndieWeb #WebMention

I have my first guestbook entry! From a real visitor! Not a spammer! (blocked 3 Russian ips by now) ❤️ She made my evening 😭. #indieweb #smallweb

The #RSS protocol launched 25 years ago today on March 15, 1999! :rss:

...And it's still cruising on to this day! 😁

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

#Indieweb #SmallWeb #Blogs