Skip Navigation
I Don't Trust My Own Code
lackofimagination.org I Don't Trust My Own Code

Recently, I had a conversation with a junior developer on my team. Let’s call him Alan. We were talking about a new notification feature that was going to be used to send reminder e-mails to potentially thousands of people if they had forgotten to enter certain data in the last month or so. Alan was...

I Don't Trust My Own Code
39
Easy Application Deployments with Linux
  • Seriously, why the negative tone? If I've offended you, I'm sorry. You might think that I'm wasting time, but there are multiple ways to skin a cat. I prefer not to use DEB packages for deployment, though others might.

  • Easy Application Deployments with Linux
  • Cleanup can be as simple as deleting the latest deployment directory, if the script gets that far. The article is about using built-in Linux tools for 'easy' application deployments. One can also use dedicated tools, as you suggested, to further automate the deployment process.

  • Easy Application Deployments with Linux
  • Author here. In case it’s not clear, this article isn't about installing Linux packages; it's about deploying multiple versions of software to development and production environments.

  • Easy Application Deployments with Linux
    lackofimagination.org Easy Application Deployments with Linux

    Linux comes with all the basic tools necessary to deploy an application and roll back to any past version if something goes wrong. It takes just a few commands to set everything up…

    Easy Application Deployments with Linux
    6
    Back to Basics in Web Apps
  • Author here. My blog is also generated with Hugo, and it's great. I just prefer not to generate HTML and CSS from JavaScript unless it's necessary.

    Sorry, I haven’t seen that movie. Thanks for the recommendation though.

  • Back to Basics in Web Apps
    lackofimagination.org Back to Basics in Web Apps

    In the beginning, there was only HTML. The first official HTML specification focused on semantic markup. There were minimal styling tags and attributes. It was up to the web browser how to render the markup in an HTML document. The whole specification was refreshingly simple. You could easily read i...

    Back to Basics in Web Apps
    8
    Beyond Foreign Keys
  • There's certainly the danger of creating too many ad-hoc or sparse relationships, which can cause issues. That said, when used for supplementing foreign keys, Tie-in can be a useful tool in a production system as well.

  • Beyond Foreign Keys
  • Yes, that's correct. Here's how an entry in the join table looks like:

    {
      "id": 6,
      "sourceComp": "user",
      "sourceId": 2,
      "targetComp": "post",
      "targetId": 3,
      "type": "author",
      "createdAt": "2024-03-28T13:28:59.175Z",
      "updatedAt": "2024-03-28T13:28:59.175Z"
    }
    
  • Beyond Foreign Keys
  • AFAIK, no NoSQL database fully supports SQL, and only some offer support for transactions and joins. The idea here is to augment a relational database by adding capabilities for dynamic relationships.

  • Beyond Foreign Keys
    lackofimagination.org Beyond Foreign Keys

    In a relational database, foreign keys are normally used to associate records stored in different tables, but wouldn’t it be nice to define relationships dynamically without having to add extra columns or tables? And while we’re at it, how about having sparse relationships by associating a record di...

    Beyond Foreign Keys

    In a relational database, foreign keys are normally used to associate records stored in different tables, but wouldn’t it be nice to define relationships dynamically without having to add extra columns or tables? And while we’re at it, how about having sparse relationships by associating a record directly with any other record like “post X was last edited by user #123” or “post X was flagged for review by user #456” (who happens to be a moderator)?

    9
    Code Examples and Guides of Functionality with Alpine.js
    js.hyperui.dev Code Examples and Guides of Functionality with Alpine JS | HyperJS

    Collection of code examples and guides of functionality with Alpine JS. Learn how to build a website with Alpine JS.

    Code Examples and Guides of Functionality with Alpine JS | HyperJS
    0
    A comparison of a simple app in Vue.js and Alpine.js
    medium.com A comparison of a simple app in Vue.js and Alpine.js

    Vue.js is one of the most popular Javascript frameworks in the world right now, originally released in 2014 and with version 3 just around…

    Unlike most modern javascript frameworks, Alpine requires absolutely no build, you simply include the library and away you go, all features included. It’s also super lightweight. If you already know Vue, you basically know Alpine, making it perfect for Vue developers to turn to for projects where Vue is simply overkill and without the headache of learning something completely alien.

    4
    Tie-in: A relational data component library for Node.js
    github.com GitHub - aycangulez/tie-in: Relational Data Component Library for Node.js

    Relational Data Component Library for Node.js. Contribute to aycangulez/tie-in development by creating an account on GitHub.

    GitHub - aycangulez/tie-in: Relational Data Component Library for Node.js

    Tie-in is a relational data component library that lets you store and query records that can be related to any other record.

    The relationships in a database are usually defined between columns across tables. In Tie-in, however, relationships can be defined between individual records. Relationships can also have types, so you can have multiple relationships between two records.

    The ability to associate a record with any other record in any table opens up new possibilities that are hard to accomplish with conventional column-based relationships. In addition, since relationships are dynamic, no schema changes are necessary to define new relationships.

    2
    InitialsDiceBearhttps://github.com/dicebear/dicebearhttps://creativecommons.org/publicdomain/zero/1.0/„Initials” (https://github.com/dicebear/dicebear) by „DiceBear”, licensed under „CC0 1.0” (https://creativecommons.org/publicdomain/zero/1.0/)AI
    Aijan @programming.dev
    Posts 9
    Comments 11
    Moderates