Interesting Swift web server article comparing Vapor, which I tested last week, to other web server frameworks:
This first post will cover input, i.e. request data. Fetching input from a request, ensuring it is the correct type, and most importantly, not crashing. These are common tasks that most web developers deal with daily. All of the frameworks have their own unique way of doing these tasks–Let’s see how they contrast.
There is some further discussion from fans of other languages in the comments. Overall I think the article was fair. I’m not sure about the focus on “crashing”, though. This seems like a carryover from pro-Swift arguments on the desktop or mobile, and it has less relevance on the web.
For some web apps, it might be fine to throw an exception on bad input data, since it’s caught automatically and returned as a 500 error. I wouldn’t call that a crash anymore than I would call it a crash for a Mac app to present a generic error dialog on unexpected errors.
Bad news from the Parse team at Facebook today:
“We have a difficult announcement to make. Beginning today we’re winding down the Parse service, and Parse will be fully retired after a year-long period ending on January 28, 2017. We’re proud that we’ve been able to help so many of you build great mobile apps, but we need to focus our resources elsewhere.”
For years I had always heard great things about Parse. I eventually used it for the first time a few months ago on a client project. It’s got a well-designed API, friendly monthly pricing (free for many apps), and it seemed well supported, with new features like tvOS support and a web dashboard redesign rolling out just a month ago.
Thinking about this tweet from Daniel Jalkut, I’ve always advocated for iOS developers to also be good at web services. Customers expect sync everywhere now, and you can do things with your own server that will give you an advantage over competitors who have a simpler, standalone iOS app. But being forced to migrate server data isn’t fun, especially on someone else’s schedule.
Like many developers, I’ve spent the morning looking over the Swift open source release. I continue to be intrigued and look forward to working Swift into more of my routine.
On today’s Core Intuition, Daniel and I talked about Swift for about half of the 50-minute episode. We recorded the episode yesterday afternoon, before the open source announcement, so we’ll be following up next week on everything that has changed. I bet there will be some more progress in Swift web server frameworks by then, too.
Back in April, the App.net app Riposte was removed from sale. Riposte wasn’t just the best client for App.net; I think it held its own against even the best Twitter apps, too. The push notification server for Riposte (and its messaging app complement, Whisper) was to keep running for some months and then shut down this summer.
Even if App.net is slowly fading away, like many users I still have Riposte on my home screen. I cross-post all my microblog posts from this blog to App.net. When I get replies and mentions on App.net, I like to see them as push notifications in Riposte. I can reply in the app easily, or skim through the timeline to see what else is going on.
Now the developers have launched a crowdfunding campaign to keep the Riposte server running. Their goal is a modest $500 per year to cover AWS hosting and time to keep everything running smoothly. Even if you’re not very active on App.net anymore, consider donating as a thank-you for everything Riposte did for App.net, and for what it did to advance the state of UI design in social networking apps.
The original goal for Tweet Marker Plus was to help cover the hosting costs for Tweet Marker. It succeeded for a little while, but it also ended up evolving into a larger independent service: Watermark, with much higher hosting costs for archiving and search, and a bunch of new features like App.net support, Dropbox sync, saved collections, and more. I’m really excited about the future of Watermark.
I also hear from Tweet Marker users who don’t need Watermark. They still want to support Tweet Marker, though, to make sure it continues running and that it’s as fast as possible.
So today I’m introducing a separate, inexpensive subscription option for Tweet Marker. Just $1/month! You can subscribe from the new Tweet Marker home page. And as a bonus you’ll get the first official Safari extension for Tweet Marker, shown in this screenshot:
I love reading about how big sites use Amazon EC2. If “this post from Instagram”:http://instagram-engineering.tumblr.com/post/13649370142/what-powers-instagram-hundreds-of-instances-dozens-of is still accurate, they must be at something like $50k/month in hosting costs. Their user base has doubled in the 4 months since they posted that.
My setup for Tweet Marker is trivial by comparison, but to me — without Instagram’s $7 million in funding — it’s a very big deal. What I wrote “back in October”:http://www.manton.org/2011/10/redisonly_migration.html about moving to Redis is still mostly true, although I’ve added MySQL and Sphinx to the mix. I now run with 3 Amazon EC2 “medium” instances and have 5 web dynos (with 3 Unicorn processes each) at Heroku.
I put everything from donations back into the servers. For Tweet Marker to work, it had to be rock solid. It had to scale. It’s only the first week for “Tweet Marker Plus”:http://tweetmarker.net/plus subscriptions, but already I have a good feeling that it’ll all pay off.