Network Link Conditioner

If you're a developer of either Mac or iOS apps that use networking, how could you simulate a bad connection while testing your app? I think this tool could help you out.

The Network Link Conditioner tool is an extremely useful tool introduced with Lion that allows you to test how well an application behaves when subject to various network conditions. It can still be used test iOS apps that are running in the iOS Simulator.

Since Xcode 4.3 the Network Link Conditioner is available as an addition. Open Xcode, use this menu item - Xcode > Open Developer Tool > More Developer Tools... and download the .dmg file in Hardware IO Tools for Xcode.

Double-click the prefpane file and authenticate to allow it to be installed. You'll then see the pane in System Preferences.

Screen_shot_2012-04-11_at_3
Screen_shot_2012-04-11_at_3

The Nertwork Link Conditioner can be used limit bandwidth, add delays both to normal traffic and to DNS queries and create packet loss. It comes pre-configured with a number of typical network profiles to allow you to simulate common 3G cellular, cable modem, DSL and WiFi connections.

Screen_shot_2012-04-11_at_3
This configuration is useful for slowing down all network communication so that you can really see what your app is doing. This helps flush out any points in your code where you have network code blocking the main thread. It can also help you see any progress bars or temporary spinning activity indicators that might otherwise only be displayed for a split second when testing on a fast network.

So, pretty sure that testing applications under challenging network conditions is a good idea. Oh, just don't forget to switch it off when you done.

Get Ready for Gatekeeper

Apple has started inviting developers to prepare their software for OS X Mountain Lion by joining the Developer ID program. Here's the email devs received from Apple today:

The Mac App Store is the safest place for users to get software for their Mac, but we also want to protest users when they download applications from other places. Developer ID is a new way to help prevent users from installing malware on their Mac. Along with Gatekeeper, a new feature in Mountain Lion, signing applications with your Developer ID certificate provides users with the confidence that your application is not known malware and has not been tampered with.

Get your applications ready for Gatekeeper today. It's easy to get started with Developer ID using the automated certificate request tools in Xcode 4.3 or the Developer Certificate Utility.

Personally, I think Gatekeeper is absolutely a good thing. As Mac users, we have mostly enjoyed a life free of the worry that has followed Windows users for years. But as Macs enjoy increased popularity, they become a more attracitve target to identity thieves and other criminals. Gatekeeper will be a vital weapon in the fight against malware.

In Mountain Lion, the user will have three options:

  1. Let anything run on your system, whether or not it is signed. This is the Mac OS of today.
  2. Allow only Mac App Store apps to run on your system. This is the most secure option, but you lose the ability to run non-Mac App Store software, which currently includes such products as Microsoft Office and Adobe CS.
  3. Allow only Mac App Store apps or apps signed by a developer. This is the new default.

As developers, we can register for this unique Developer ID which allows devs to sign their apps but does not require them be sold through the Mac App Store. Users get the benefit of knowing the apps came from a trusted source, like Apple essentially saying to the users "We trust this developer", which is pretty good for a good developer.

If these apps were to do something nefarious, Developer ID world get revoked and that would be the end of that. And these apps would no longer be allowed to run unless users specifically allowed unsigned apps. The funny thing is, if users try to launch an unsigned or unvaildatable app on a Mac with Gatekeeper enabled, the default button is "Move To Trash". Kinda hardcore.

Anyway, I'm excited and happy to see that Apple continues to aggressively push the envelope when it comes keeping Mac OS X safe and secure.

Announcing My New Startup

Happy New Year, folks. 2012 came to visit, I'd use this opportunity to talk about the new startup I'm working on - It's called Spiralcake.

For the last couple of years, I was always trying to start a real new startup doing mobile app development. Last month I left my previous job, working on an iPhone app project at home. I once talked to a friend of mine who is a freelance graphic designer about the plan and asked him to be my partner, working together and start a mobile development company with me. He said "Let's do it!" and then we started figuring out a company name while eating some spiral cakes. Ding! that's it. That's the story of how Spiralcake was founded. Simple and inadvertently.

So what is Spiralcake? Spiralcake is a mobile development lab in Shanghai that focused on creating enjoyable apps and games. The founding team is made up of a couple friends and I in December 2011. I'm very excited to be working on new startup with these talented guys. Right now the office is setting up, website is live. So next steps, our goal is to make a parkour game for iOS. Because we are all very passionate about iOS platform games. In the next few months, we'll be very busy developing the app and we believe it's going to be a lot of fun. Hope you'll love our apps as much as we enjoy creating them. Stay tuned by following Spiralcake on twitter @spiralcakeapps

To learn about future Spiralcake products, sign up at www.spiralcake.com

New adventure has begun.

Thank you, Steve.

Image

Words cannot describe how much you inspired us to be better in life. Thank you for teaching me to think different.

Some of my favorite quotes by Steve Jobs:

Your time is limited, so don’t waste it living someone else’s life. Don’t be trapped by dogma – which is living with the results of other people’s thinking. Don’t let the noise of other’s opinions drown out your own inner voice. And most important, have the courage to follow your heart and intuition. They somehow already know what you truly want to become. Everything else is secondary.

Your work is going to fill a large part of your life, and the only way to be truly satisfied is to do what you believe is great work, and the only way to do great work is to love what you do.

You can’t connect the dots looking forward, you can only connect them looking backwards, so you have to trust that the dots will somehow connect in your future. As with all matters of the heart, you'll know when you find it, and like any great relationship it just gets better and better as the years roll on. So keep looking. Don't settle.

Almost everything – all external expectations, all pride, all fear of embarrassment or failure – these things just fall away in the face of death, leaving only what is truly important. Remembering that you are going to die is the best way I know to avoid the trap of thinking you have something to lose. You are already naked. There is no reason not to follow your heart.

Stay hungry, stay foolish.

 

Rest in peace, Steve. (1955 - Forever)