4 ms·
95% of writing a good iOS app involves knowledge and skills unrelated to the language. The tools, the frameworks, the design and interaction models, location aw
by BoredAstronaut 14y ago
95% of writing a good iOS app involves knowledge and skills unrelated to the language. The tools, the frameworks, the design and interaction models, location awareness, and more. Objective-C is a microscopic hurdle compared to getting the rest of it right.
- 10char 14y agoTotally agree with that, but RubyMotion is more than just the Ruby language. There's no heavy IDE, no complex target/build setup, comes with a lightweight test environment, an interactive REPL...all that adds up to remove a lot of pain in the existing iOS workflow. You can definitely be proficient with the existing tools but I think RM is a lot better for newcomers. There are some problems (debugging isn't great right now, memory bugs happen if you do tricky things), but it's only a few months old and I'm confident it'll get better over time.
- makaio 14y agoObjective-C is a fine language and is pretty easy to learn. Nevertheless there are a few advantages to RubyMotion for certain developers: * No XCode. Getting comfortable with Xcode takes time and I frequently hear people complain about it crashing, being bloated, etc. With RubyMotion you can just use your regular text editor and a command line. * Ruby. While Objective-C isn't bad, I actually enjoy using Ruby. I'm much more likely to refactor and abstract functionality. * Third-party gems and code: While there are limitations, it is generally pretty easy to use gems and other ruby code in RubyMotion. From what I understand, you can also call out to third-party Objective-C libraries from within RubyMotion, so you don't lose out on that ability. * REPL: Using a terminal and the simulator you can interact with your code while its running.
- ctide 14y agoI wouldn't recommend using a regular text editor and dealing with the iOS APIs. I pretty much despise IDEs, but sadly the objective-c paragraph long method signatures require it. That's actually why I didn't even bother with RubyMotion, it doesn't solve the thing I hate the most about objective-c. I just use AppCode, with Xcode for interface builder and dealing with things like data models. It's closest enough to something that isn't a total piece of shit so that I can avoid slitting my wrists all day.
- Argorak 14y agoHaving a text editor does not mean that completion does not work. ctags etc. provide such features. It might not be as good as completion using a static type checker and might have false positives, but "uninformed" completion goes a long way. Also, some of the higher level api look much more Ruby-like: https://github.com/rubymotion/BubbleWrap https://github.com/rubymotion/BubbleWrap
- thibaut_barrere 14y agoWell I already saved 5% then, which is a good start.
- mikeash 14y agoTrouble is that by ignoring Objective-C, you make the rest far more than 5% harder. Like it or not, it's the native language of the platform, and all of the documentation, sample code, and community help assume familiarity with it.