Live data from Hacker News

It’s Been Real, Android: Why I’m Retiring from Android

raptureinvenice.com

251–260 of 342 posts

Re: It’s Been Real, Android: Why I’m Retiring from Android

#251
post #202
post #141

Just like the web platform, Android is hugely improved when you leverage the community libraries and tools they provided. Gradle actually helps a lot with that, since its clear dependency management makes use of external libraries a breeze. If in 2016 you're still complaining about AsyncTasks and its management, you certanly have missed a lot of progress in the last few years. It's not unlike having people complain a…

> It's not unlike having people complain about JavaScript issues without ever looking at jQuery, React or newer tooling. But this is exactly what makes being a Javascript developer a miserable experience. And I can give Javascript some benefit of the doubt since it's a multi-vendor language with complex standardization processes and all the stakeholders have their own interests and limited financial backing. By contr…

Hey, Im a Javascript developer and my experience es far from 'miserable'. Anyway, I see your point, and makes sense. I think node and npm helped a lot to actually achieve the flow you mention ("install dev tools, start a new project, build and go!").

Re: It’s Been Real, Android: Why I’m Retiring from Android

#252
post #141

Just like the web platform, Android is hugely improved when you leverage the community libraries and tools they provided. Gradle actually helps a lot with that, since its clear dependency management makes use of external libraries a breeze. If in 2016 you're still complaining about AsyncTasks and its management, you certanly have missed a lot of progress in the last few years. It's not unlike having people complain a…

This is also very much the case with iOS. If you just stick to what Apple provides you're going to suffer a lot more than necessary. Libraries and tools like Snapkit, R.swift, Fastlane, and Alamofire sand off so many rough edges on the APIs and Xcode.

Trying not to add dependencies after being burned in the past (cocos2d-swift disappearing was a particularly harsh one), but they all look interesting. R.swift in particular I might have to add. Autocomplete and compile time checking of resources is something I wish was more common in other environments.

Re: It’s Been Real, Android: Why I’m Retiring from Android

#253

I think there are no developers that are true experts in both Android and iOS platforms. Every developer I know either leans towards one platform or another. There are also developers who know both platforms pretty well, but I won't call them experts in either. I consider myself an expert in Android development. The only point that I agree with is multidex, but there are historical reasons for the limitation and I th…

I develop iOS apps professionally. Sometimes upon completion, I am urged to develop an Android app that is similarly functional both in UI and code behind logic. I can get there, but it's never, ever fun.

Employers need to wisen up and not expect mobile developers to be masters across these dual platforms. Plumbers don't do electrical work, paramedics don't chase criminals. I like to browse iOS/Android mobile dev job descriptions for fun, and I grit my teeth when it is expected that you be a master at both. Not a chance, everything moves too fast.

Re: It’s Been Real, Android: Why I’m Retiring from Android

#254
post #141

Just like the web platform, Android is hugely improved when you leverage the community libraries and tools they provided. Gradle actually helps a lot with that, since its clear dependency management makes use of external libraries a breeze. If in 2016 you're still complaining about AsyncTasks and its management, you certanly have missed a lot of progress in the last few years. It's not unlike having people complain a…

And Gradle 3.0 does have some major speed improvements. Though if that's not enough, then I'd probably suggest Buck as build tool.

Re: It’s Been Real, Android: Why I’m Retiring from Android

#255
post #21

We adopted buck at work for android & objective-c ios and it's been amazing speed & low-bullshit wise: https://buckbuild.com/setup/getting_started.html If gradle is killing you, I would suggest trying it out. Warning: we have a few guys in a mobile developer experience team, so I don't know how good it is for indies.

I have the opposite experience -- I tried Buck because I really wanted a Blaze/Bazel clone (it wasn't open source at the time). It works but I find it very slow.

My project involves lots of native code and genrules, though. If you're mostly building Java code I imagine Buck might work well. If starting from scratch I would try Bazel first.

Re: It’s Been Real, Android: Why I’m Retiring from Android

#256
post #113

I see two types of dev methods 1) Write it all down, read through the code a few times. Then compile and do a full test. 2) Write in steps, compile and test after each step. The later is a Pita on low level. And produce more bugs.

Regardless of the platform, for any application with a non-trivial amount of complexity, iterative development is the best approach. I don't understand how anyone could "write it all down, read through the code a few times and test" and not produce a buggier application that doesn't meet most expectations. It does help to do some initial design work, create abstractions, loose coupling, etc. Iterative development doe…

You are confusing scopes here. The parent almost surely meant those approaches applied to a single task (meaning a few hours to a day of work), not to building an application.

Re: It’s Been Real, Android: Why I’m Retiring from Android

#257
post #6

I don't think that the person is being lazy. I've tried my hand at Android. I will continue to do so. I don't like it for the reasons enumerated in the post. The whole damn thing is a hack at this point. No one has a good generalizable architectural model for laying out an Android project. Attempting to target multiple devices is truly a pain. You can do it. You have to really, really think about. You also have to en…

I was surprised to learn that Android in 2016 doesn't even natively come with an equivalent of JavascriptCore. You have the pleasure of somehow getting V8 to run and then serialize/deserialize all your native objects manually in order to talk to it if you want javascript outside the browser. Really? From the company that is the most web native around, and even developed the most common browserless JS runtime (V8)? Go…

> I was surprised to learn that Android in 2016 doesn't even natively come with an equivalent of JavascriptCore. You have the pleasure of somehow getting V8 to run and then serialize/deserialize all your native objects manually in order to talk to it if you want javascript outside the browser.

That's a little bit like saying that Chez Panisse doesn't even deliver sewage to your table, and that if you want to pour it over your food you need to bring your own chamber pot with you.

Java is not a great language to program in, but if there's any language it is clearly better than, then that language is JavaScript. Why would one want to program an Android app in JavaScript rather than in Java?

There's only one reason to use JavaScript: because one is deploying in a browser, and JavaScript is the only language supported by the vast, vast majority of browsers. In every other way, it's a misbegotten mistake of a language.

Re: It’s Been Real, Android: Why I’m Retiring from Android

#258
post #174
post #171

Earlier quoted context omitted.

Uhh, is there a platform there that isn't greatly improved by community libraries? At PSPDFKit we use a lot of additional third party tools and libraries on iOS as well, C++ practically needs community libraries to be usable, Python's biggest strength is in its excellent OSS library community, Ruby as well... I mean, yeah, in perfect world we'd all have neatly packaged by Google, we'd write 6 lines of code and have t…

C++ isn't a platform with a platform owner. Python's biggest strength that lead to its adoption was being a language with "Batteries Included".

Python biggest use case is a scripting language - you don't want to bother with dependency management and all that stuff when you're writing scripts.

When you have a more complicated project it's fine to rely on repo packages (Python does as well for eg. web frameworks like Django aren't in the core). In fact python std lib is hugely inconsistent stylistically as a result of needing to keep it stable over the releases as people expect it to be backcompatible and package versions are tied to language versions. If it had proper versioned dependencies doing breaking refactoring over the years would be really easy and non-intrusive.

Re: It’s Been Real, Android: Why I’m Retiring from Android

#259
post #229
post #202

Earlier quoted context omitted.

> It's not unlike having people complain about JavaScript issues without ever looking at jQuery, React or newer tooling. But this is exactly what makes being a Javascript developer a miserable experience. And I can give Javascript some benefit of the doubt since it's a multi-vendor language with complex standardization processes and all the stakeholders have their own interests and limited financial backing. By contr…

You can open Android Studio, create a new project and "Go!". It'll work. Then you can add a single line of code to dependencies and you get even better APIs! I also have no idea why are you mixing the device updates into the developer tooling argument. New apps are (should be - and the tutorials tell you so) developed with API 19+ in mind which means that you'll have to work for quite a while to get any problems with…

>You can open Android Studio, create a new project and "Go!". It'll work

I tried this after their 1.0 release and it crashed. Mileage varies from person to person

Re: It’s Been Real, Android: Why I’m Retiring from Android

#260

iOS has plenty of developer pain points as well, although in their case a lot of them are as much a result of dumb Apple policies as they are technical mistakes. I'm going the other way. After six years of iOS work I've had enough. I still think the web is the smart long term bet so that's where I intend to focus my energies.

Very true. Having done both professionally however, I can say Android is on another level with frustration and tooling problems. Yes, I've become biased, and yes, I will remain much less enthusiastic to take on an Android project. I appreciate both platforms, but man, iOS allows me to sleep a bit better at night.
Post reply on HN