Swift. JSON serialization/deserialization
Working with JSON format, probably one of the most common task in the software development, whether you organizing the data storage or send data over network or any other reason. Therefore it will be very common task in the mobile development. Likely, Swift provides build in functionality to work with JSON format.
To encode (serialize) or decode (deserialize) our object to JSON format we need to make sure that object implements Encodable protocol and/or Decodable protocol.
Swift. Get Application Basic Info
Very often you need to get basic application information, for example to show user an application version or maybe some issue has occurred and you want to collect some details about user device. Some information are relatively easy to get some are not so.
So, lets get some basic information. Personally, I prefer keep that information isolated and in one place. Lets create AppInfo struct and add couple of imports.
Configure Synology VPN Server with Custom Domain
Probably you heard a lot about VPN services that became very popular in past several years and wondered if you need one. If you are using public Wi-Fi a lot in coffee shops, hotels, malls (you know it is dangerous, right?) or you want to get access to the content that is not accessible in your region then yes you need it. So, you can buy one of those service or if you have Synology device you can configure your own VPN Server for free.
Host you domain in Azure DNS
There are many cases when you want to dynamically add/remove CNAME, A/AAA records to your domain. To do that you should get familiar with yours domain registrar API (if any) and its limits (like requests per day, throttling, etc.). But, if you’re already working with Azure it is much easier to use Azure DNS zone instead, because it provides full control over your domain and familiar experience. So, lets get started.
Enhance the ASP.NET dictionary model binder for Multipart requests
Recently, for one of my pet projects I’ve create a web API that allows to upload file with extra metadata. During the testing files upload worked as expected, but metadata object represented by dictionary type did not go though, the dictionary always was empty. So, lets figure out how to fix it.