| | |

Strict concurrency checking in Swift 5.x and 6.0

Swift 6 aims to detect many concurrency issues at compile time. Fixing these new warnings and errors at compile time should prevent so-called “data-races” from showing up as intermittent run-time errors. This goal is important and even urgent because software developers are increasingly relying on concurrency to utilise multi-core processors and to perform slow tasks…

| |

Comparing FTP, SFTP and FTPS protocols

FTP SFTP FTPS Security technology None / old SSH TLS URL my.domain.com sftp://my.domain.com my.domain.com(configure client to use FTPS) Ports that must be opened 21 22 21, plus passive port range Passwords, passkey, public/private keys plaintext passwords (!) public keys public keys User privileges flexible full access privileges flexible FileZilla client support YES YES YES Lightroom…

|

ReverseGeocoding for localizing towns and country names

Standard text localization When you create apps for the Apple ecosystem, you may need to support multiple languages. This is a key part of what is known as localization. It comes down to creating an English version of text strings – say the label of a “Submit” button -, and providing translations of “Submit” to…