Server-Side Swift
A newsletter with the best links related to server-side Swift and cross-platform developer tools.
No spam. We'll never share your email address and you can opt out at any time.

Worth mentioning this week is a pull request that improves documentation for Swift compiler on Windows Subsystem for Linux. Also, Swift Package Manager Version Pinning proposal was returned for revision, and first meetings of Swift Server APIs Work Group happened this week with meeting minutes publicly available on both networking and security.

Max Desiatov

Tailored Swift – Coming Soon to a Cloud Near You, an interview with Jonathan Guthrie

An interesting perspective on how Swift on servers compares to Go, Node.js, Rust, C and Java in terms of ecosystems and overall language feel.

Server-Side Swift: State of the Union by Adrian Kosmaczewski

Slides from Swift Alps talk about server-side Swift and related libraries. If you’ve participated in the competition mentioned in the talk, please let me know if you want to share what you’ve done, I’d love to feature that in the next issue!

Vapor: CRUD Database Options
Vapor: Persisting Models by Ray Wenderlich

Two more videos on Vapor, both related to database and model side of things. Here are links to previous three videos in this cycle.

Current State of Server-Side Swift by Tibor Bödecs

Yet another look on the current landscape of server-side frameworks with sample code for each major library.

Completion Handlers as an Alternative to Delegation by K Harrison

The delegation design pattern is a familiar pattern to Cocoa programmers but there are times when it seems cumbersome to create and use. In this post I look at completion handlers as an alternative to delegation. At first glance they are simpler but come with some caveats.

Package Samples in IBM Swift Package Catalog by Michael Brewer

Ever seen “Try in Sandbox” button near package description in IBM’s Package Catalog? It allows you to run Swift sample code in the cloud from your browser and turns out you can enable that pretty easily for your own package.

Docker in Production: A History of Failure by The HFT Guy
Docker in Production: A Retort and
Thou Shalt Not Run a Database Inside a Container by Patrick Robinson

These three posts are a good reminder that every new technology comes with its own edge cases that may take years to implement properly. If you deploy your Swift code with Docker, I highly recommend reading all three posts as they uncover a lot of small caveats with Docker that you may stumble upon.

Code

SourceKitten 0.15.0 by JP Simard

SourceKitten links and communicates with sourcekitd.framework to parse the Swift AST, extract comment docs for Swift or Objective-C projects, get syntax data for a Swift file and lots more!

This is the first release of SourceKitten to support Linux, Swift 3 and CocoaPods! 🎉

An example of usage of SourceKitten on Linux is available in this GitHub gist.

generator-swiftserver: Generator for Kitura REST Servers by Mike Tunnicliffe

This module is a Yeoman generator for creating REST webservices based on the Kitura web framework with the Swift language.

json2swift: Generate Swift Data Models Based on JSON Data by Josh Smith

What sets this JSON-to-Swift converter apart from the others is its type inference capabilities. The net result is Swift code that uses the most appropriate data types possible. This functionality really shines when analyzing an array of elements.

Mu: Swift Playground Explaining How to Create a Tiny Programming Language by Marcio Klepacz

You don’t need a CS degree to write a programing language, you just need to understand 3 basic steps…

RandomKit: Random Data Generation in Swift by Nikolai Vazquez

RandomKit is a Swift framework that makes random data generation simple and easy.

It provides a protocol-oriented API and is able to generate random URLs, Core Graphics type instances and instances of other Foundation types out of the box.

needless: A Utility to Find Needless Words in Swift Function Names by Daniel Duan

To promote clear usage, the Swift API Design Guidelines advice that we omit needless words in function names. Words that merely repeat type information are specifically identified as needless.

This is a tool that helps you spot those words in your code base.

Apodimark: Fast, Flexible Markdown Parser Written in Swift by Loïc Lecrenier

Apodimark is a markdown parser written in pure Swift 3. It is fast, flexible, easy to use, and works with indices instead of String, which is ideal for syntax highlighting.

Swish: Build Swift Projects on a Remote Machine Within Xcode by Thomas Paul Mann

Swish is a simple script for remote building your Swift projects on a Linux machine. Why is that so cool? You can develop in Xcode on macOS and can use an External Build System to deploy your code on Linux.

Lastly…

The Simpsons Knew It 😲

Share this Issue