Today I have one of those moments where I am absolutely sure if I do not write this down, I will forget how to do this next time. For one of the projects I am working on, we need to do SHACL validation of RDF data that will be stored in Ontotext GraphDB. Here are the 10 things I needed to learn in doing this. Some of these are rather obvious, but some were less than obvious to me.
Number 1: To be able to do SHACL validation, your repository needs to be configured for SHACL when you create your repository. This cannot be done after the fact.
Modern technology has made communication easier than ever before. From smartphones to other smart devices, we can use a single gadget to accomplish a lot. However, have you ever wondered what makes it all possible? It's the microscopic chip circuits supported by powerful protocols and standards.
Over the past two decades, the technology industry has revolutionized the way we see the world. Today, we use IoT devices that can communicate not only with us but also with other smart devices. This is all thanks to the continuous improvement of communication and networking protocols such as WiFi, Ethernet, Matter, Thread, etc.
Only in the last year have I started switching us over to MJML here at CodePen to help craft our HTML emails. Aside from a few minor rough edges, it’s been a nice upgrade from hand-writing the email HTML. Not only was that tricky and time-consuming, but it was also error-prone. The switch-over was in part inspired by some Microsoft Outlook bugs with our CodePen Spark email which MJML helped resolve.
But I have been eying up React Email recently. It’s really just JSX Email as React features are largely irrelevant here. It’s just a nice templating language abstraction. I feel fairly comfortable in JSX so that’s appealing, but so is the modern take on things including a hot module reloading preview and all that.
We don’t really need the sending integrations, but I like how there are basic components available, you can render them to HTML strings for porting elsewhere fairly easily, they didn’t forget about plain text output, and it looks actively developed with a sensible roadmap.
In taking another look recently, I was surprised to see they re-created our CodePen Challenges email!
I guess if we decide to switch someday, they’ve already done a good amount of the work for us. 😍