Coding projects

In general there are some basic topics, you have to check before start a bigger project/application. These decisions are fundamental for the smooth development of a application.

Timestamp/Date persistance

How to deal with timestamps i.e. getting from user inputs? Do we wanna be timezone compatible with clients/users in different timezones? How to get timezone from user in my backend requests?

  • persist timestamp and dates always in UTC in your database
  • use of ISO8601 date/timestamp formats, but have to keep in mind on calculations
  • most important; keep it consistant in your database

Logging/logfile analytics

What and when you should log something to your logfiles. Make a strategy about logging in general, to get information if you need some in your debugging session for a complex problem. Another great idea is, to have an external service to aggregate your logs for each project ie. rollbar. I would prefer to have for each project a aggregation of project wide logs of your application, hosts and client errors.

Internalisation i18n

Its always a good idea to start with an international translation files on your project. Its easy to looking for a phrase in your application and on the other hand its easy to add another language to your application, in case someone join your project with a different language. A great feature I saw on an project, to have a backend portal you get a possibility to edit you translations life for your keys.

Licenses

If you are planning to create a business, you must verify your licenses and dependencies to ensure they comply.

Wording

Create a list of terms that defines a particular aspect of a use-case to ensure all participants are referring to it in the same manner during conversations.

[…]

Last change: 2024-11-20, commit: dd7eca7