News for hackers. Stuff that matters.

MugunthKumar

Re:A Pure Swift 2 Implementation of MKNetworkKit on Wednesday July 13, 2016 @11:01PM (#12091394)
Why MKNetworkKit?

Actually, you don't need a networking framework today (post iOS 7). We live in the era of NSURLSession and with networking becoming a core feature of every app, you need to know how to write a good networking stack without using a third party library.

Now, you may ask, So, why are there so many networking frameworks? Almost every iOS developer I know uses one or the other networking library.

Well, that's because, when iOS was introduced, the two frameworks built into the iPhone (iOS) SDK, namely, CFNetwork.framework and NSURLConnection(Foundation.framework) were complicated to understand and use. Though NSURLConnection was easier than CFNetwork it still wasn't easy enough for most developers.

With iOS 7, Apple introduced NSURLSession based networking that blew everything out of water.

Using NSURLSession is super easy to use. Most of today's third party networking frameworks that exist today are built on top of NSURLSession. With deprecation of NSURLConnection in iOS 9 (tvOS 9.0 marks NSURLConnection as unavailable), you don't even need to know the "basics" like NSURLConnection. In fact, NSURLSession is the new "basics". NSURLSession is the class that you should learn, if you are doing networking today.

In my opinion, the only benefits of using a networking framework instead of NSURLSession are

Easier Authentication (www-authenticatebased and client certificate/server trust based) Authentication with NSURLSession still requires delegate handling like NSURLConnection

Multi-part form upload

In addition to the above, MKNetworkKit has the following features.

Queued Requests (Batch a bunch of requests and get notified once they are done) High performance background caching (based on HTTP 1.1 caching specs) built in Fetching remote images are done using extension methods in strings. Just call the loadRemoteImage method on any URL String and get the image in the completion handler. What's more? All these fetched images are automatically cached and you don't need a separate image caching library. Auto network indicator support MKNetworkKit manages the display of status bar network indicator for you. (on iOS only) cURL-able debug lines Fully compatible with application extensions Background image decompression Background completion Full support for NSStreams

Re:Singapore, where have all your talent gone? on Tuesday November 06, 2012 @10:43AM (#4748854)
True that.

You can't easily see technical co-founders starting companies. As such, most Singaporean startups are under the impression that building software can be outsourced to cheaper countries like India/Philippines.

They don't seem to understand the difference between, "IT" and "Software Engineering". The good engineers fight the system and eventually migrate to greener pastures like SV.

I know some iOS developers who were offered salaries in the range of $3500 to $4000 a month (matching a IT salary and not that of an Engineer's), almost three times as low as SV, despite being a expensive city to live in.

Re:Implementing Caching on your RESTful server on Monday April 02, 2012 @11:03AM (#3788437)
I'm not against rest. The click and discover mechanics doesn't really make sense on native clients

Implementing Caching on your RESTful server

http://blog.mugunthkumar.com/articles/restful-api-server-doing-it-the-right-way-part-2/

A post on HATEOAS and hypermedia and then show you the role it plays in a native mobile client development. But the crux of this post is going to be centered around how to implement caching (or rather server side support for caching). Target audience include, server developers and to some extent, iOS or any mobile platform developers.

( Read More... | 2 comments | 12 points | on HN )
Re:RESTful API Server - Doing it right on Friday March 02, 2012 @08:15AM (#3656446)
I did mention that it's incomplete. It's impossible to write the complete thing in one post.
Re:RESTful API Server - Doing it right on Friday March 02, 2012 @08:13AM (#3656440)
I agree. Updating my post on this. Thanks.
Re:RESTful API Server - Doing it right on Friday March 02, 2012 @07:51AM (#3656392)
I haven't written anything about HATEOAS, caching and Internationalization intentionally as I'm reserving it for another post.
Site ycombinatored. Please use Google cache.

Software philosophy: Release early, release often vs polished releases

http://blog.mugunthkumar.com/articles/software-philosophy-release-early-release-often-vs-polished-releases/

The world had cars, cameras and movies, much before Software. So, how and why did people got accustomed to this way of life, when it comes to Software? Will you accept if your new car, in its “version 1.0″ doesn’t speed up beyond 60? Will you accept if the car manufacturer promises a free “engine update” in the “near future”?

( Read More... | 25 comments | 23 points | on HN )

Porting iPhone/iOS apps to Windows Phone

http://blog.mugunthkumar.com/articles/porting-iphoneios-apps-to-windows-phone/

Windows Phone is all set to be the next major platform in the Mobile Space. While it will be second to Apple at least for several years to come, It’ll still garner market share from new smartphone users and competitors like Blackberry and Android.As successful developers, I strongly think it’s high time to start porting apps to Windows Phone. To developers like us, it’s another platform that...

( Read More... | no comments | 2 points | on HN )