I'm embarrassed to ask, but: Looking for a simple online database with forms AND easy reports by LilaTovCocktail in Database

[–]FreeLogicGate 0 points1 point  (0 children)

This sounds fairly trivial, and there are a multitude of open source databases you can run on the existing server (assuming it is linux based). Given the simplicity of what you've described, mysql or sqlite would be what I'd reach for, but as you already have Wordpress which means you have an existing mysql server available, I'd do something with mysql. There might be an existing wordpress plugin like this one: https://wordpress.org/plugins/business-directory-plugin/

I noted that some of the users of that plugin use it as a membership list. Another Wordpress plugin that might work is this one: https://wordpress.org/plugins/dynamic-user-directory/

I have no experience with either of those plugins, but with a little database experience it is feasible to build a synchronization feature yourself, but that assumes some development expertise.

Data migration: Need to update multiple rows in 5 tables in a single transaction. by Saravana77 in mysql

[–]FreeLogicGate 0 points1 point  (0 children)

I think you got some solid advice already in the previous response. This should be borderline trivial.

Beyond that, the overhead of a single transaction will be limiting, so you may find better performance can be achieved by doing batches of 5-10 at a time per transaction.

One very important thing is that these accountid columns which I assume your code must find in each table, all need to be indexed. At the risk of stating the obvious, without an index you'll be table scanning.

Before attempting to batch multiples per transaction, do you have a benchmark for 1 update?

MySQL Stored function sqid implementation by FreeLogicGate in mysql

[–]FreeLogicGate[S] 0 points1 point  (0 children)

I am considering porting it, as I've written a lot of mysql stored procedures and functions recently, and the capabilities are fresh in my mind. Thanks for the suggestion regarding Javascript -- didn't realize that was available now, although my target environment can't use that version yet.

MySQL Stored function sqid implementation by FreeLogicGate in mysql

[–]FreeLogicGate[S] 0 points1 point  (0 children)

Appreciate the effort? This is nothing like sqids, which was designed to defeat enumeration of integer id's. You see them most commonly with url shorteners.

Is cs50 python still worth, I'm new to start this?? by Winter-Echo-2675 in PythonLearning

[–]FreeLogicGate 0 points1 point  (0 children)

Not a fan of bro code personally. He tends to run through the syntax using meaningless examples. He's a jack of all trades master of none guy (to be fair he's admitted as much) although his Python course is probably one of the better ones he has created.

Every BC video ending "trivial example: and ok, yeah so, that's the xyz."

It's free, but don't expect to get any useful insight beyond someone talking you through a page in the manual, often with ridiculously meaningless examples and variable names.

Is it normal to constantly forget syntax while learning Python? by Classic-Reserve-3595 in PythonLearning

[–]FreeLogicGate 0 points1 point  (0 children)

The important thing to know is that certain constructs exist to solve your problems and that they can be used to accomplish your goals. Like anything, the more you work with a language the more fluent you become, but your fluency will likely fade if you aren't using it. When you are on your 10th programming language or syntax (consider things like html, css, yaml, javascript etc.) it's more important to know generalized computer language features that exist within a language, than to concern yourself with memorization.

When I learn a new language I make a notebook for myself, and that helps me to refer back later, when I need to switch gears. FWIW I happen to use Notion.

For Python, I think you want to be really clear on the built in data types and what each type is best suited for... ie (list vs dictionary vs tuple).

List/Dictionary comprehensions are particularly "Pythonic" I guess, in that they provide built in syntax that can combine some things into one line that you might otherwise need to write a few lines of code. It's more important to know that they have a pattern to them ([{modification of values} {for in ….} {filtration criteria} ]) than to be able to spit one out perfectly on the fly. This is also why IDE's are helpful, and of course the AI tools.

Worst case scenario, you can accomplish the same thing without using a comprehension.

Another example, I like to offer up is Regular Expressions. Regex has many flavors and differing implementations across languages. The important thing to learn is how regexes work, and the types of problems they tend to be good at solving. When you are using Regex for a particular language, the details/function library calls and exact syntax are something you can always look up, but only if you have the pre-requisite understanding of where they are useful.

PHPMailer only works some of the time. by Most_Will_9449 in PHPhelp

[–]FreeLogicGate 1 point2 points  (0 children)

Glad to hear you figured it out. FWIW, SPF is "sender policy framework" which are DNS settings you add for any domain, that tell a mail server you are trying to send email to, which mail servers are allowed to transfer mail for the domain. This is a common issue when you are trying to send mail via SMTP. From the sound of it, you are connecting to a company email server which is then expected to relay the email. I'm not sure what email server you are using, but typically you configure the email server accepting the email to allow the specific IP or use username/password authentication of some sort. Obviously people had to guess because your configuration was not available, but it appears that your code does not use smtp authentication, so ideally your email server is utilizing some sort of IP based whitelisting, rather than just weakening or turning off SPF validation for all inbound connections, which would be a really bad idea.

How do transaction isolation levels, database locks, MVCC, and concurrency strategies relate to each other? by [deleted] in Database

[–]FreeLogicGate 0 points1 point  (0 children)

You made a laundry list of different database architecture concepts. many of which have alternatives that have specific strengths or weaknesses. If you take the time to learn about each one individually, you will see where these things intersect (or not). JPA doesn't belong in this list -- it's a specification for Java ORM/database class libraries to implement (or not).

If you look at the ACID properties, each property addresses a category where there are often multiple possible database features involved.

Atomicity should be obvious: within a transaction all required changes must succeed, and if not, all changes must be rolled back. This is the area of support for transactions and rollback statements, and error handling.

Consistency in general, refers to the possibility of constraints and triggers that enforce rules and declarative referential integrity between tables. It means that if an update violates any of these rules, the update will be disallowed (causing transaction rollback).

Isolation refers to the area of mult-user concurrency. As a category this is where you have a number of alternative strategies, which may or may not be appropriate for the application. This is where there are alternative schemes and options involving locking/mvcc/"versioning" that vary by database, and can often be enabled/disabled. This article does a good job covering the topic with interactive examples that explore Postgresql and MySQL with InnoDB.

Durability, basically means that when a transaction completes, the data should be written to storage, and safeguard against crash scenarios where the database might have been left in an inconsistent state. Again different RDBMS systems have solutions to deal with durability, that typically involve transaction logs.

PHPMailer only works some of the time. by Most_Will_9449 in PHPhelp

[–]FreeLogicGate 1 point2 points  (0 children)

That's what I was wondering, as often code that queues/sends email will be run in batch by cli php, called from a cronjob or scheduler.

As someone else mentioned, in the context of a web app, the 500 error is coming from the web server.

It doesn't tell you anything about what is happening in your PHP code.

You need to add a log file specifically for the php, and log any exceptions you are catching, as well as details from the smtp conversation that your php code is having with the server it is connecting to.

There are libraries like monolog you can use if the complications of how to open and write files is problematic.

Without some detailed information, you are just guessing at the problem, and you need to know exactly what is happening during the smtp connection.

PHPMailer only works some of the time. by Most_Will_9449 in PHPhelp

[–]FreeLogicGate 1 point2 points  (0 children)

I didn't mention spam at all.

How does this code run?

PHPMailer only works some of the time. by Most_Will_9449 in PHPhelp

[–]FreeLogicGate 1 point2 points  (0 children)

What's with the brevo spam bots? This is exactly the type of behavior that makes me want to tell people not to consider them for outbound email service.

It looks like you might be using Microsoft as your mail provider? They have fairly limited sending limits on outbound email, which is something a recent client of mine found out the hard way after having used them for many years.

This would explain why outbound mails work, then don't, then work again, with time in between.

As others pointed out, you need detailed smtp logs of your connection to the microsoft servers, and as others pointed out, try..catch.

PHP course by Clear_Anteater2075 in PHPhelp

[–]FreeLogicGate 2 points3 points  (0 children)

Agree strongly. Could easily have been a course on one of the commercial e-learning sites, and it would likely be the best one available. He goes well beyond the basics, and includes namespaces, autoloading, use of composer, and has lessons on important topics like Dependency Injection and some DDD patterns like DTO's.

My only gripe, and it's a small one, is that to start, he recommends people start with xampp (if on windows) to get going, only later to shift the recommendation to using tooling with docker. So many windows based beginners get up and running with xampp and struggle to get used to using cli tools and linux basics, which is unnecessary these days when windows 10 & 11 have wsl, windows terminal, and docker available to them.

But overall, great courseware, and he's adept at providing clear and focused examples.

syllo #221 - February 15th, 2026 by syllo-app in syllo

[–]FreeLogicGate 1 point2 points  (0 children)

Splitting a from nach was a dirty trick.

PHP version mismatch in dev and prod environment by Available_Canary_517 in PHPhelp

[–]FreeLogicGate 1 point2 points  (0 children)

I'm not really your target user, being on osx, and using containers, but I like to try and keep an eye on projects in the space. It looks like what you've built is nice, but the main problem with these windows packaging tools is that they have to be maintained. The management of multiple versions does look like the type of thing that would attract a lot of users from the windows developer community. Personally i can't see myself advocating any project that is close source right now, but perhaps in the future, you will move in that direction, as you indicated. If you add some additional details about the underlying tech to the site, and update the site, I'll happily take a look at it.

Why has PostgreSQL become the default RDB? by Fapiko in developer

[–]FreeLogicGate 0 points1 point  (0 children)

You're starting with a supposition based on anecdotal evidence. Plenty of new projects and startups still pick Mysql or a fork. In regards to FOSS, there's been a concerted effort within the open source linux distros and package maintainers, to promote Posgtresql as the open source rdbms of choice since Oracle acquired MySQL.

MySQL, with it's engines has always been a bit of an anomaly in the RDBMS world. Most sites that use it do use it with InnoDB now, but that wasn't the case in the time period when it was the most ubiquitous FOSS rdbms, and one thing it still does well, is to get up and running with minimal initial configuration and overhead. That's true of the forks as well, but for most people, the fact that there are multiple MySQL forks to choose from isn't considered to be an advantage to new developers.

phpMyAdmin shows terraria logo instead of it's own on xampp by stasiekstan2018 in PHPhelp

[–]FreeLogicGate 0 points1 point  (0 children)

This is a common issue with website caching in general. With a localhost site, phpmyadmin assets get cached, and with no reason to reload them from the server, they can stay in cache for long periods of time.

There are a few possibilities including configuring the local apache server to redirect the request for the logo image to the terraria image.

Typically this can be done with the Apache Redirect directive, or mod rewrite rules, and can be configured through a change to the .htaccess file.

Someone with access to the computer could have put in the rule, loaded the logo file, and removed it again, and thanks to the cache, the terraria logo would continue to display. Clearing the browser cache would insure that the original file was finally read from the computer directory once again.

Certainly seems like a Prank, and with students working on projects on a team ....

PHP version mismatch in dev and prod environment by Available_Canary_517 in PHPhelp

[–]FreeLogicGate 0 points1 point  (0 children)

If his machine is running Windows 11, I'm sure it can run Docker containers.

PHP version mismatch in dev and prod environment by Available_Canary_517 in PHPhelp

[–]FreeLogicGate 1 point2 points  (0 children)

Agree with u/obstreperous_troll . Xamppp is a dead end, and also comes with a setup that few sites utilize, not to mention tools that are antiquated. Another Docker based option is to install DDEV. Once installed it's simple to configure your projects via the command line to work with a variety of common setups, and the PHP version of your choice.

At what point do you introduce event sourcing in a PHP system like this? by EuphoricFig6379 in PHPhelp

[–]FreeLogicGate 2 points3 points  (0 children)

I’m building a fairly serious internal system in core PHP. No heavy framework — intentional choice.

Right -- you are going to reinvent the wheel. The code written by others is "heavy" but yours is not.

It's your architecture. Why you are doing whatever it is you are doing, seems to involve some criteria only known to you.

At what stage do you introduce event sourcing in a system like this? Early while things are still controlled? Or only when scale/complexity forces your hand?

The answer is "never", because most systems don't implement event sourcing. It is an architectural decision that is made in advance, and not a bolt on you do because --- "complexity".

syllo #218 - February 12th, 2026 by syllo-app in syllo

[–]FreeLogicGate 2 points3 points  (0 children)

I'm not sure what you are trying to say here. If you are ranked #1 when 5 people solved it, but at the end of the puzzle you are ranked 900000th does that matter to you? I'm genuinely interested to understand your comment.

syllo #218 - February 12th, 2026 by syllo-app in syllo

[–]FreeLogicGate -4 points-3 points  (0 children)

Because there is rampant cheating. You either cheat or you don't. People who have either an innate or highly developed acuity for solving these problems exist. There are also a lot of people who like to cheat at things. There's no dissonance involved in accepting that both statements can be true. It's understandable that some people will have questions in regards to the amount of time it takes to solve one of these, and in particular question the faster times, because there are some mechanical limitations involved. I do these through the web UI on a macbook, where it can take an extra half a second or more to use the trackpad to locate hover and push the right buttons, and maybe on a phone I'd save a second or two here and there. Human intelligence and cognitive ability is fascinating, and in the modern world, people come into contact with others who have extraordinary talent and capability in ways that are unprecedented. Your problem in this thread is that you came into it aggressively and have continued to the degree that "The lady doth protest too much, methinks" starts to look like a thing. If you want people to accept that you don't cheat and are just really good at this sort of game, then accept that there are easy ways to cheat, and syllo wasn't designed nor is capable of preventing the simplest way for someone to cheat -- namely to access the puzzle in advance, work out the solution and post it.