Syncthing Firewall Settings

I had a problem on a Windows Server 2016 machine where the Firewall configuration was not properly set for Syncthing.

As said on the website, you need to ALLOW

  • TCP Port 22000
  • and UDP Port 21027.

WARNING: Application to authorize is actually located in the AppData directory of the current user


WARNING BIS: As there might be a misunderstanding as to which user is allowed to run the
application, avoid using %APPDATA% environment variable altogether and state explictely the location of the executable!


Bots and automated commits – Continuous Integration for Quality Assurance and Performance

The idea of having bots writing code is only the continuation of code analysis. In this mindset, 1/ one creates levels of abstractions and let automated systems write the actual code (eg. through snippets, custom DSLs, etc.) and 2/ one associates its code with tests that are run on automated systems and let the "bots" auto-merge features when tests pass.

For those who are interested, this information comes from the following article (a very long, but interesting thing to read btw): "Why Google Stores Billions of Lines of Code in a Single Repository | July 2016 | Communications of the ACM"https://cacm.acm.org/magazines/2016/7/204032-why-google-stores-billions-of-lines-of-code-in-a-single-repository/fulltext


Things you will gain and things you will lose by switching from CVS to DVCS

  1. What you will gain

It's easy to make one short-lived branch per ticket.

When switching to Git, you are encouraged to use branches extensively, in fact you can/should create one branches per ticket, and merge everything back into dev (and eventually in the master branch) in one click when you finished all your work (instead merging individual “associated changesets”, which is a tedious process.)

  1. What you will lose

Central info is not supported in Git.

If you need edit binary files (eg. images, icons, etc.) or files that are famous for being hard to merge (eg. complex xml files, unfiltered log files, etc.), know that when you use a distributed version control system you will stop being aware of whether a file is currently locked for edition, or not. [This is one of the two reasons that makes Git unsuitable for game development because of all the binary assets – the other reason being that versioning binary files is not among Git’s strengths, even if the Git-LFS project kind-of bridged the gap there].