Author Archives: ssumbera

Mobile Considerations

Quite good (and lengthy) chapter worth of weekend reading for mobile development
Aral Balkan, the author,  describes many important  concerns or considerations before you start mobile development :
http://mobile.smashingmagazine.com/2012/06/18/mobile-considerations-in-user-experience-design-web-or-native/

My favourites quotes from the article:
If your choice of platforms and technologies is based simply on your perceived short-term business needs or on the current competencies of your team, then you are making a decision that solves your own problems, not the user’s problems. This may have short-term advantages, but you will not be able to compete in the long term with those who solve the user’s problems first. Your choice of technologies and platforms should be based on how best you can meet the user’s needs, not on ideological bias or on obtaining short-term gain at the risk of long-term loss.

A common mistake I see many designers make is to assume that by using cross-platform authoring technologies they will be able to write once, run anywhere. This is a myth. And acting on the myth can lead to rather costly underestimations. Your application might run on multiple platforms, but this rarely—if ever—means that it will run well on multiple platforms.

Designers who do not take the unique cultures, customs, language and norms of their respective platforms into consideration risk making their applications look and sound out of place. The applications will appear noticeably foreign, unnecessarily loud and usually rather arrogant, simply because they are culturally insensitive.

The worst thing you could do, of course, is disrespect all of your users by creating a lowest-common-denominator application that gives every user on every platform an unoptimized user experience. At that point, you would be at your most vulnerable.

Supporting multiple platforms is not a feature unless you can support them all well. You may have first-to-market advantage, but that will last only until you are outdone by your best-in-market competitor.

So, write once, run anywhere is a dangerous myth. Cross-platform applications that compete successfully are write once, optimize everywhere. You must understand the implications this will have on your budget and schedule and plan for optimizing, testing and supporting your application on every platform you choose to support.

In summary, be careful when creating native binaries that simply wrap applications that do not use native components. These apps have a tendency to look like native applications, but they cannot behave like native applications because they do not use native components in native frameworks. A PhoneGap application that uses the jQTouch framework might display what looks like an iOS table view when running on an iPhone, but this is simply an HTML look alike brought to life by clever use of CSS and JavaScript. It pretends to be an iOS table view, but it cannot meet the behavioral characteristics of a real table view component from the Cocoa Touch framework, and thus it ends up creating expectations that it cannot meet.

The advantages of building native applications using native technologies are numerous. For one thing, you have complete flexibility in optimizing the application and user experience. When you use native components and adhere to the human interface guidelines for your chosen platform, your application will conform to the culture, language and norms of that platform. It will be easier for users to learn and use.

Goodby mapshake.com

crossI am leaving mapshake.com domain to expire, mapshake is social network site for map creation that had just one user , actually me 🙂 as nobody enjoyed this as much as myself… I really liked you, mapshake.com, your daughter iKatastr.cz  will remind you to me !

Screen Shot 2013-11-12 at 16.45.42

Apple A7 faster than my desktop cpu

I am developing for iOS on 2.5  years old  white MacBook (mid 2010) which has a Geekbench3 64 bit  mutli core result of average 2395 (mac scores  ) This Mac is powered by  Intel Core 2 Duo P8600 2400 MHz (2 cores), runs quite well  as it has upgraded SSD disk  (OWC Mercury Extreme 6G) and 8GB RAM , now with Maverick OS X even better in performance  than previous OS X cats.

Now latest Apple A7 64 bit processor has scored  2564 in the same benchmark  posted here

So yes, Apple A7 is a desktop-class processor, that in my case could teoretically run instead of my current Intel CPU  to handle all development  tasks I do on daily basis.

here is a snapshot of my over-tableted working place.

 

VisualStudio 2013 WebEditor enhancements

Why hybrid mobile app developers should start web app first ? – it is more efficient with tooling from Visual Studio rather than ‘partisann-oy-ing ‘  HTML/JS code  in native-mobile-dev IDEs  (X-Code or ADT/Eclipse)

Page inspector: http://channel9.msdn.com/Blogs/ASP-NET-Site-Videos/Visual-Studio-2013-Web-Editor-Features-Page-Inspector

Web Editor Features: http://channel9.msdn.com/Blogs/ASP-NET-Site-Videos/Visual-Studio-2013-Web-Editor-Features-HTML-Editor

HTML5 features: http://channel9.msdn.com/Blogs/ASP-NET-Site-Videos/Visual-Studio-2013-Web-Editor-Features-HTML5

WebEditro-JavaScript features: http://channel9.msdn.com/Blogs/ASP-NET-Site-Videos/Visual-Studio-2013-Web-Editor-Features-JavaScript

http://channel9.msdn.com/Blogs/ASP-NET-Site-Videos

 

Why developers should build on iOS before heading to Android

“Our first decision was to restructure and refactor code as much as possible into a common software development kit (SDK) platform, all written in C++, and subsequently design a unified multi-sensor and multi-threaded architecture compatible with both Android and iOS. This allowed us to validate all critical sensor processing code on one platform and easily port to another, as well as to provide SDK integration options for a range of partnerships.”

Links for iOS dev. fonts etc.

Fonts for iOS:

https://github.com/mediacabinet/fawe-ios
https://github.com/nschum/FontAwesomeIconFactory
https://github.com/waterlou/WTGlyphFontSet

Commnad Master:
https://github.com/asm09fsu/CommandMaster

Obj-C (ARC) in depth :
http://adcdownload.apple.com//wwdc_2011/adc_on_itunes__wwdc11_sessions__pdf/322_objectivec_advancements_in_depth.pdf

Safari on iOS& and HTML changes
http://www.mobilexweb.com/blog/safari-ios7-html5-problems-apis-review

Instantiate view on iOS with mix of XIB and View class

How avoided storyboard and overloading XIB with just right split between what is visually defined and what is programatically programmed:

  1. visual set-up of the view in Interface builder – only view, no controllers and setting up outlets but no actions. AddNoteView.xib . Justify controls, set up autoscaling etc..
  2. create AddNoteView.h with outlets
  3. create AddNoteView.m and hook awakeFromNib and setup additional settings on view- (void)awakeFromNib{

    [super awakeFromNib];


    CALayer * layer = [self.locationThumb layer];


    [layer setMasksToBounds:YES];


    [layer setCornerRadius:10.0];


  4. create AddNoteViewController.m and define loadView- (void)loadView {

    self.view =  [[UINib nibWithNibName:@”AddNoteView” bundle:nil]  instantiateWithOwner:nil options:nil][0];


    }


Menu on iOS with MJPopupViewController

IMG_2646

Searched a lot, didn’t want to program something that had to be part of the iOS, found lot of over-bloated components and found it finally here,  tiny (2 classes) , well written, easy to understand the code, fun concept (big button as background view to receive taps outside the control) :

Here is a snapshot of my testing code with UITableViewController using this lib, note transparency and special font used for menu:

https://github.com/martinjuhasz/MJPopupViewController

 

 

Screen Shot 2013-10-11 at 9.03.12 AM

Who is able to stuff a desktop-class software inside the smartphone ?

“Mike Lazaridis was at home on his treadmill and watching television when he first saw the Apple iPhone in early 2007. There were a few things he didn’t understand about the product. So, that summer, he pried one open to look inside and was shocked. It was like Apple had stuffed a Mac computer into a cellphone, he thought.

from: http://www.theglobeandmail.com/report-on-business/the-inside-story-of-why-blackberry-is-failing/article14563602/#dashboard/follows/

6 years later September 10th:  iPhone is featuring an all-new A7 chip, making iPhone 5s the world’s first smartphone with 64-bit desktop-class architecture for blazing fast performance in the palm of your hand.

 

who is able to stuff a desktop-class  software inside the desktop-classs CPU powered smartphone  ?