6 ms·
I disagree: they should just dump the whole ecosystem. Kotlin is a shabby bandaid, not because the language isn’t good (no comments there) but because the subst
by sidlls 7y ago
I disagree: they should just dump the whole ecosystem. Kotlin is a shabby bandaid, not because the language isn’t good (no comments there) but because the substrate is a mess of bloated, terrible, OO Java nonsense. Android development is just awful no matter the language.
- braindongle 7y agoIn this context of disparaging the state of Android development, I must plead: take a hard look at Flutter/Dart. There are quite a few wins with it, including a pleasant developer experience. Declarative, composable, JIT compilation in dev, AOT compilation in production. The list goes on.
- craftinator 7y ago+1 for Flutter. Fast iteration, few gotchyas, decent documentation, a growing community, very fine control, but forgiving to those learning the framework.
- nl 7y agoI wish they'd dump Dart and replace it with basically anything else (Typescript? Swift? Kotlin?). I'm not going to learn a new language which isn't used anywhere else AND a new UI toolkit just because Google's internal team structure has put them in a position to keep Dart going. Back when Dart came out, it made sense. But Typescript came along, filled basically the same niche and got significant mindshare.
- thosakwe 7y agoThis horse has been beaten to death. They wrote an article about their choice of language, anyways: https://hackernoon.com/why-flutter-uses-dart-dd635a054ebf https://hackernoon.com/why-flutter-uses-dart-dd635a054ebf
- pjmlp 7y agoAnd now, Swift, C# and naturally Kotlin are coming up with similar tooling, which kind invalidates the reasoning why it had to be Dart, above all languages. Not to mention that Flutter experience isn't nothing more than cute to anyone that has experience doing UI design on Common Lisp or Smalltalk environments, which I reckon all of us are quite old for SV standards. EDIT: Or if you really want to be amazed go play with SELF.
- brabel 7y ago> And now, Swift, C# and naturally Kotlin are coming up with similar tooling... That may be true, but right now, none of them has something as polished and usable as Flutter. And it looks like it will be many years before they do, all the while Flutter keeps getting better. So, if you have time to wait for these other platforms to catch up, go ahead while people who need to write code right now can enjoy something else. > EDIT: Or if you really want to be amazed go play with SELF. Oh come'on, are you really suggesting something that looks straight out of the early 90's is something that would amaze anyone today? Or there's something that actually looks and behaves modern out of the Self and Smalltalk world (certainly was not the case last time I checked, a few years back)?
- pjmlp 7y agoYes they have, language ecosystems with decades of battle field deployments in production, while Dart still tries to make itself relevant. What I am suggesting is that the reasoning why Dart instead of something else is flawed and can only be naively bought by those that lack experience in UI domain. How pretty those UIs used to look like is secondary. Flutter is being positioned to rescue Dart, and make it meaningful beyond the AdWord team, the place where it landed when all Dart designers eventually left Google. Where is the "Google's Commitment to Dart" blog post?
- craftinator 7y agoPersonification of a programming language, nice. Flutter is ready to use, and is very rewarding for quickly building a specific use application; try it.
- batterystd 7y agoI'm seriously not astrotrufing (for once!) but isn't Android itself shitty all round? Really complex OS that does a million things and all wrong. I have a phone where no fb is installed but fb services that cannot be stopped are running in the background. I'm waiting for a Linux phone
- sliken 7y agoEr, if you want pure android why don't you buy a pixel?
- pjmlp 7y agoI guess because they are only available in a couple of countries, are expensive, and Google isn't any better than their OEMs keeping old devices updated.
- sliken 7y agoHadn't noticed the expensive side. They typically got half off within a month or two of announce. Got my Pixel 4XL 128GB for under $500 because of the Google Fi deal. I still have a pixel 1 from 4 years ago that I think just stopped getting major upgrades. Not great, but not bad. My samsung note 4 was around a year behind on updates, and felt very slow because of all the crapware. I switched to a nexus 5, with a much lower spec and it felt MUCH better. Even simple things like hitting the home button had much less lag. I did end up installing Cyanogen on the Note 4 which made it feel quite a bit snappier.
- anonuser123456 7y agoWell, if your OEM installed crapware in the system/vender/OEM partition, that's not really Android's problem. All other apps/services are very removable.
- cle 7y agoIt is the customer’s problem, so it is jointly a problem for Android and the OEM. Google may try to abrogate responsibility here as usual, but it doesn’t make it any less their problem.
- giancarlostoro 7y agoWhats sadder is they could invest resources into Kotlin Native and then build a Kotlin Native SDK (maybe built on top of NDK).
- pjmlp 7y agoTo paraphrase them, "it looks interesting and it is something that we are following on", which means nothing to me. In any case Kotlin/Native doesn't bring nothing to Android itself. ART makes use of AOT/JIT with code cache, which is much better than straight AOT on languages with reflection, dynamic dispatch and dynamic loading everywhere. This is why they gave up on pure AOT introduced during Android 5 and 6 lifetime. Then the NDK is tailored for writing native libraries for consumption from ART, only exposing C bindings, even though most of the code is actually C++. So hardly a win having Kotlin/Native there.
- RivieraKid 7y agoSome of the newer stuff seems mostly well-designed, e.g. Room, LiveData. Lot of the older stuff is horrible. Kotlin is just slightly better than Java in my experience. Overall I wouldn't say Android development is aweful, I think it's iOS is just marginally better. Swift is a nicer language than Kotlin but creating UI layouts sucks on iOS.
- sidlls 7y agoThe documented examples showing how LiveData “should” be used comprise a masterclass on overengineering.
- saagarjha 7y agoEven with SwiftUI?
- todd3834 7y agoI’ve been working on a MacOS app with Swift UI and I can say it has never felt easier. I love it.
- izacus 7y agoHow well does it scale in complexity though? These easy declarative UIs tend to have a hard ceiling in complexity and then you're forced to rewrite everything. How does SwitftUI scale to complex and animation heavy UIs?
- cerberusss 7y agoAnimation is very well thought out, and quite easy. As for complexity, you hit the ceiling very fast, and the solution is to break up in smaller and smaller custom views and modifiers.
- todd3834 7y agoI haven’t gone too far down the rabbit hole yet but I find it similar to React in complexity ceiling. I’ve built some extremely complicated UIs in React. You just have to break up your views as complexity grows.
- izacus 7y ago> I disagree: they should just dump the whole ecosystem. Kotlin is a shabby bandaid, not because the language isn’t good (no comments there) but because the substrate is a mess of bloated, terrible, OO Java nonsense. Android development is just awful no matter the language. They should dump the most widespread mobile operating system ecosystem... because some people think API's are "OO nonsense"? Would you also want Microsoft to abandon whole Windows ecosystem just because WinAPI dates back to Win16? This is insanity and completely ignores the reasons why ecosystems get popular.
- pjmlp 7y agoOn Android's case, free beer for OEMs above all.
- sidlls 7y agoThe Android ecosystem got popular primarily for two reasons: the massive marketing effort by google and the plentiful dirt-cheap labor market in the kind of development paradigm Android is (awful, bloated Java where desperate $5/hr devs are plentiful).