4 ms·
Something interesting happens when you ignore hype and prejudice and start paying attention to results: reality manifests itself, sometimes with surprising resu
by martythemaniak 15y ago
Something interesting happens when you ignore hype and prejudice and start paying attention to results: reality manifests itself, sometimes with surprising results.
So let me give you some results: A bit over a year ago I became 1/4 of our new mobile team (2 android guys, 2 iOS guys) at work. We set out to write our apps, which have the same design, use the same visual elements, the same API, and have the same features etc. A year later, with thousands of lines of code and man hours behind them, both apps are still at the same level as each other, with neither being ahead of the other.
In short, anyone that tells you Android development is harder than iOS is lying, incompetent or has an agenda. Or simply mistakes his opinion for reality.
- megablast 15y agoI am not sure your point proves anything. There are a number of reason why that could be so. The problem with android remains, and these have been bought up a number of times. Why are we all of a sudden ignoring these problems?
- wallflower 15y agoWe can agree to disagree. I have done both iOS development and Android development on a fair number of high-profile projects. To clarify, I am saying Android development is harder in the big picture (not just coding, but styling/graphic design/layout). Part of the reason why I believe this (my opinion) is harder is because the tools (Xcode, IB) are so much better for working in a team. Especially, when you have an on-site designer. You can give the designer a XIB file to style and modify to pixel precision. Android's layout editor still has a long way to catch up. > same design... same visual elements If you are using the same UX for both apps, you're doing your Android users a disservice. Android is different enough to command its own tweaks.
- cageface 15y agoPixel-perfect layouts in Android are harder, but declarative layout makes a lot of things easier. For example, if I need to add one button to a row of buttons in iOS, I have a lot of fiddly tweaking in IB to do. In Android I add one more line to an XML file and I'm done. Need to change the background color and text of all the buttons in your app in iOS? I hope you created them all programmatically. In Android I change a few lines in my style file and I'm done. iOS's UI stack is clearly pre-web. Android is post-web.
- deleted 15y ago[deleted]
- cageface 15y agoXibs are hideously verbose and clearly not designed to be edited by hand. They also don't offer anything like the auto-layout and declarative styling Android gives you. Apple's recent introduction of autolayouts shows that they see this as a deficiency.
- KirinDave 15y agoSpoken like someone who has never opened one up and tried to modify it.
- wallflower 15y ago> I hope you created them all programmatically Oh yes, we have a hand-maintained (pre-iOS5) very complicated UINib manager that loads Nibs and lets us "style" based on a system of plists and resource bundles. +1 Android
- martythemaniak 15y agoWhat does pixel precision mean in an environment meant for different screen sizes, resolutions and even ratios? Good design means things like alignment, relationships between elements, ratios between sizes etc. It doesn't mean 7px or 10px. What I'm saying is that you can design things very well without pixel-perfect precision and while Android's tools may be more manual (essentially a saner HTML without cross-browser crap), they are not out of reach of any HTML developer. And yes, our apps are not identical: Android has a drawer, dilaogs, spinners, toasts, uses the back button etc. But at the end of the day, you'll find the same functional screens, presenting the same information and offering the same functionality.
- wallflower 15y agoPixel precision means that we can send a standard PSD to a client and they can style it and send it back so that we can slice it up and deliver the finished app. Android's layout is definitely more powerful but you cannot set every property in code that you can set in XML. We've started using separate layout files for every screen resolution tranche (e.g. layout-land) but I am still hoping for a way to preview multiple resolutions simultaneously. Thank you for respecting the Android consumer and not doing something like a "Back" navigation button on-screen.
- KirinDave 15y agoDo you guys just ignore color fidelity on the devices in this process? I found the earlier iPhones and iPod Touches had pretty different color profiles to the iPhone 4 (and iPad). I guess layout is, strictly speaking, more important to UX than pitch-perfect color. Still, it's one of the things that bugged me when working on my (aborted) iOS project.
- wallflower 15y agoWe better fire our designer :) He did not know about this. He does have one of those colour matching doohickeys to calibrate his monitor. In general, I think as long as it is not a CMYK print ad, a little deterioration in colour is ok.
- DanielRibeiro 15y agoFrom my experience, when you start using Scala[1] or Ruboto[2] (which deals away with the XML and replace with friendly DSLs, at the cost of heavy load time), Android development can actually become a joy. [1] https://github.com/danielribeiro/HelloScalaOnAndroid https://github.com/danielribeiro/HelloScalaOnAndroid [2] https://github.com/ruboto/ruboto-core/ https://github.com/ruboto/ruboto-core/
- cageface 15y agoI have high hopes for Jetbrains' Kotlin project in this department. http://confluence.jetbrains.net/display/Kotlin/Welcome http://confluence.jetbrains.net/display/Kotlin/Welcome
- blub 15y agoYour claims are easily proven false. Any platform where you're targeting multiple hardware devices needs more architecture, design and testing work. The fact that the implementation phase takes about the same time is not very relevant, especially when considering that you're cutting corners and using the same UX on all platforms.
- tobylane 15y agoOften their agenda is a salary, so they go for, and recommend, the platform most likely to make money (even per fixed number of possible customers it seems). If iOS makes more money, that's a valid reason to pick it.