• 1 Post
  • 11 Comments
Joined 1 year ago
cake
Cake day: August 6th, 2023

help-circle
  • Hi, I am a building a platform with the goal of supporting apps like this, and I would be interested to develop a plugin for your use-case as an experiment (no fee).

    I am working alone on this and this is not my first priority, so I cannot make any guarantees about the timeline, or the scope of the plugin. But, if you are interested we can have a chat on matrix.

    The project is not open source yet, but I am planning on doing so once (a) I figure out how to properly apply licensing, and (b) remove any potentially critical information (credentials) from the repository.






  • twelve factor app

    Great resource!

    Write database migrations in both directions so people can downgrade on failures.

    Good point. Personally, I take backups before upgrades and restore if anything goes wrong. But, I understand how downgrading sometimes is just easier.

    I have trouble coming up with a migration procedure that makes sense to me. I have the following in mind:

    1. Provide init scripts that produce a schema that matches beginning state of the current major.
    2. Provide major to major migration scripts.
    3. For every major, provide minor to minor migration scripts.
    4. Schema changes require at least a minor release.

    Make it possible to configure your system via ENV variables, ENV files and config files.

    I am bit worried about this one, environment variables can be a security concern. Specifically, I am not sure if I should allow providing secrets (like db connection strings) through environment variables. I am inclined to let people do what they want to, but issue a warning.

    Make it possible to disable authentication to add Authelia or LDAP through the webserver. Make clear that this is only to be used for external authentication.

    I am considering adding support for oauth through keycloak. My assumption is that if you are going to host your own LDAP, you can probably configure keycloak too. Do you think that makes sense?

    Make it possible to run multiple parallel instances of your software without affecting the database consistency, e.g. for high availability or horizontal scaling.

    Ideally, an instance shouldn’t be big enough to need it. I know, famous last words, but in my case I think it’s a bad problem to have. I am going out of scope, but I am wondering where is the line between discouraging large scale deployments and designing something pre-destined to obscurity.

    Telemetry

    Not even on my radar, thanks for bringing it into my attention 🙏




  • First of all, thanks for the interesting outlook, it gave something to think about!

    In general, I don’t like thinking in absolutes. It’s not like everyone will read the article or everyone won’t, some people will and some won’t.

    There it helps me to break down to more categories:

    1. People that will read the article, understand it, and have critical thoughts to share.
    2. People that will read the article, understand it, but won’t have anything to add or critize.
    3. People that will read the article, but won’t understand it.
    4. People that won’t read the article, but would if something caught their attention (like a question on the comments).
    5. People that won’t read the article, but would read the comments.
    6. People that won’t read the article, but will comment something interesting about the title or the discussions in the comments.
    7. People that won’t interact with the post at all.
    8. Other possible categories I haven’t considered.

    The telephone game is really helpful to understand how interactions between people of the categories above will go. However, keep in mind that the goal is not necessarily 100% accurate transmission of the author’s message. On the contrary, it’s possible people are looking for different interpretations, relevant information, criticism, and/or a laugh.

    Personally, I really like it when people provide quotes they find interesting along with their own analysis. An example would be:

    To allow? What? Was Australia requiring/forcing everyone to answer calls from bosses at all hours?

    Australia will introduce laws giving workers the right to ignore unreasonable calls and messages from their bosses outside of work hours without penalty, with potential fines for employers that breach the rule.

    So you cannot be fired anymore for not answering your boss’s 2AM call. It nice to make to make progress, but the bar is so low it’s a tavern in Hades…




  • I am a software engineer, I have literally forked tensorflow and modified the executor, and I have created neural networks for predicting aquaculture KPIs that have been deployed with great success.

    I stopped looking for a year, and now I feel AI illiterate. (insert “too afraid to ask” meme)

    My experience suggests it’s too early to start teaching people. Let the technology do its loop and settle down.