4 ms·
30 incremental builds an hour doesn't sound like a good process to me. Personally I find if I am building too often I'm not thinking about what I am doing enoug
by billforsternz 5y ago
30 incremental builds an hour doesn't sound like a good process to me. Personally I find if I am building too often I'm not thinking about what I am doing enough and I'm just throwing things at a wall hoping they'll stick/work. A good software process involves a lot of thinking, a medium amount of typing, a small amount of compiling. I understand that sometimes the ideal and the reality are different of course.
- h0l0cube 5y agoHave you worked with SwiftUI or Jetpack Compose? The new tooling for mobile development requires basically building the app to simulate the layout engine. And when you're building interfaces, ideally you want < 1 second updates so you can tweak things that don't lend themselves perfectly to foresight and analytical thinking - you just need feedback. Jetpack Compose in particular is atrociously slow. When was taking 10 seconds before Android Studio would register my keypresses, I knew it was time to upgrade to M1.
- billforsternz 5y agoNo I haven't done that specifically, although I've done some stuff with other GUI builders and I think I know exactly what you mean. Basically this is why I added my ideal vs reality YMMV qualifier :) In an ideal world GUI tools would let you easily specify what parameters were required from the user, what standard very flexible and adaptable widgets were to be used to get those parameters, and how the parameters are constrained. All with a coherent special purpose language or some other fit for purpose technique, with an absolute minimum of pixel tweaking etc involved. Sadly it's not an ideal world.
- h0l0cube 5y agoThe main issue with these new UI frameworks is that they are composable and dynamic. It's great because you can make your own application specific or organisation wide UI libraries that are, in essence, a collection of free functions. But it also means that the dependencies of all those functions need to be compiled. This same workflow is fine in the JavaScript world because it's an interpreted language and the compilation step can be skipped.
- cudgy 5y agoThe efficiency of these IDE’s (XCode and Android Studio) is absolutely terrible. My guess is once these wonderful M1 processors become more mainstream, the efficiency will become worse until the M1s seem slow. Hardware can never catch up to terrible software performance; software developers won’t allow it.
- aaronbrethorst 5y ago30 incremental builds an hour while doing iOS UI development can be entirely the norm: Tweak a font size; rebuild. Tweak the font again; rebuild. Change the text color from 'label' to something slightly gray; rebuild. et cetera.
- billforsternz 5y agoI know people do this sort of thing, but I still don't approve of it as a good way to live :-) Sounds too much like editing a document by manually styling every last element instead of creating a theme with a consistent set of styles.
- aaronbrethorst 5y agoIt isn’t. Welcome to iOS development :-|
- billforsternz 5y agoEdit: Whoops, I misunderstood your meaning please ignore and accept my apologies! You mean it isn't a good way to live! What do you mean it isn't? Of course it is, at a conceptual level. By your own admission you're endlessly tweaking each presentation detail. Wouldn't it be better to operate in an environment where minor presentational details look after themselves? Don't get me wrong, if that's the way you have to do it, that's the way you have to do it. I've done similar things in GUI environments myself. But I didn't enjoy doing it that way and yearned for something better - even if I didn't have the time, opportunity, skill or talent to construct that better way myself.
- aaronbrethorst 5y agoYep, all good :) Wouldn't it be better to operate in an environment where minor presentational details look after themselves? From your lips to Tim's ears, buddy :)
- BatFastard 5y ago