6 ms·
Compared to Windows, iPhone, and Android. Android has the worst tooling environment of them all. You would expect a big software company like Google to know bet
by me551ah 6y ago
Compared to Windows, iPhone, and Android. Android has the worst tooling environment of them all. You would expect a big software company like Google to know better, but you'd be mistaken.
All others provide you a native simulator that you can use to ease development ( Windows even provided one for Windows Phone). Android provides an emulator that gobbles up RAM and is painfully slow to use. Most people just prefer to use their local device instead.
Other platforms provide you their own IDE tailor-made for development. Google just took IntelliJ and made some changes it.
Edit: Another point is compile times. Compile times for Android are just atrocious. While Windows and iOS compile quickly in a few seconds and allow you to fast deploy, Android is painfully slow taking over a couple of minutes for compilation.
- throwaway789102 6y ago> You would expect a big software company like Google to know better, but you'd be mistaken. Tensorflow is another data point to say that you are wrong.
- logicchains 6y agoThe original Angular is another one.
- collyw 6y agoOh how everyone ranted about that in 2013. Being from Google was a major selling point.
- deleted 6y ago[deleted]
- asfarley 6y agoEh, compared to PyTorch, I find tensorflow to be extremely painful.
- jeroenhd 6y ago> Android provides an emulator that gobbles up RAM and is painfully slow to use. That's not my experience. The official Android emulator works just like any emulator and will take the RAM it needs to run like a real device. If you don't have the RAM to emulate a smart phone (which these days contains anywhere between 6 and 10GB of RAM it seems) while also running the debug tools, you can always lower the RAM you give the virtual device. Android will run on 1GB of RAM though it won't be pretty if you want to emulate interacting between different apps and such. Oh, and there's a potential gotcha in that Android does a lot of stuff on the mobile GPU, so GPU acceleration will make a huge difference. You don't need a 2080Ti to run the emulator, but integrated Intel graphics are often not up for the task. On my laptop the Intel drivers were also flagged for incompatibilities because of unresolved issues with the driver themselves, making Android run on software rendering and oh boy what a drama that was. The big problem isn't so much the emulator, it's the IntelliJ-based IDE combined with the java compilers that gobble up RAM worse than Chrome. Each compilation process can quickly grow to 2GB and release it soon after, torturing your OS's memory manager. My experience running and debugging the emulator with 16GB of RAM have been quite good. 8GB is doable if you don't have too many tabs open and tune your emulator. The biggest problem I have with Android development is that compiling even a small app takes over a minute in my 7700k. As a fan of IntelliJ, I applaud their choice of IDE. They used to base their IDE on Eclipse and that was clearly not worth it. As for dedicated IDEs, unlike Microsoft and Apple, Google didn't have an existing IDE lying around for their purposes. When someone did make an IDE from scratch, Xamarin, I found it worse in every single aspect aside from language support. And let's be honest, while Visual Studio is probably one of the best end-user facing pieces of software Microsoft still maintains in-house, it wasn't that great. Typing latency is high, configuration is painful and error messages are vague. Many, if not most, dotnet devs run the Jetbrains tools to enhance their VS experience.
- me551ah 6y agoI agree that it works just like any other emulator, but the competition offers simulators which take up far less resources. Google did start work on a simulator which went by the name of 'Arc Welder' and while it seemed promising it was discontinued soon after. And I wholeheartedly agree with your point about compile times and have added it to my comment.
- semi_good 6y ago> Android has the worst tooling environment of them all. These are Google engineers we are talking about. The same people who bring you gcp. Why are you surprised.
- atraac 6y agoWell JetBrains' IDEs are actually great so I don't think this is a valid argument. I worked with Android Studio for 2 years after which I moved to .NET development. I missed AS/IntelliJ so bad, I actually made my company buy me a sole Rider license and it's way, way better than the 'tailored IDE' that Visual Studio is. I'm way more productive and most of my colleagues are astounded by it's capabilities. Android Studio is actually decent, even considering it's quirks, and you'll only notice that when you have to use IDE other than JetBrains' one.
- karatestomp 6y ago> You would expect a big software company like Google to know better, but you'd be mistaken. I don't think it qualifies as speculation anymore to assert that Google has something really broken about it, organizationally, that keeps it from producing truly good software—and often not even decent software—in most of its projects, for some reason. Even very high-profile ones. There's not really any other explanation for how they consistently behave.
- arke_125 6y agoPure speculation on my part, but it sounds like an organizational case of ADHD or Magpie driven development. A new project is started and everyone jumps ship before it is ready, leaving some other team to come in and continue before jumping. Repeat this over a few times in a product and you end up with an unusable mess. This might explain it.
- alkibiades 6y agoyeah the culture is all based on promotions.. and you get them by launching something new, not by maintaining or improving existing systems. hence what you said
- Gibbon1 6y agoFriend of mine that worked as a manager for a few years at google. Said he found it extremely difficult to get people to work on stuff that wasn't shiny and to stop refactoring stuff that was good enough.
- ThrowawayR2 6y agoOn the tooling side, I think Steve Yegge's infamous and very entertaining platform rant from 2011 nails it: https://gist.github.com/chitchcock/1281611 https://gist.github.com/chitchcock/1281611 tl;dr Google doesn't have the platform mentality in its culture, unlike Amazon and MS.
- nojvek 6y agoGoogle is a large company. I have respect for its core product that is google search. It’s insanely fast and reliable. I can’t remember the last time it was down. Mostly gets the answers I need at the top (I use adblockers so ads aren’t a problem) The rest of Google has other priorities though. Even gmail’s iOS app had pretty glaring bug that it couldn’t mark a message read. Google docs fails to save at times. YouTube Kids is just an awful mess. Don’t let your kids even near it. Google Cloud isn’t as reliable as the other clouds. Google can’t do proper human support. They don’t believe in it. If you’re a small shop, going with Google for anything critical is just going to be a disappointment. Google Search though. I have an insane amount of respect for their engineers who work on performance and reliability.