Learning to code is getting a lot of attention lately. From this video: Every One Should Code, to the prevalence of great learning resources like Treehouse, Code Academy, Lynda.com, and others, there is a lot of encouragement and resources in this space.
If you’re like me, you’ve wanted to code for a while. The latest “push” has only cemented that desire even more. But the decision that I and other people who want to learn to code run into is:
“Ok, I definitely want to code . . . so which “language” do I choose?”
There’s Java, HTML, CSS, C++, PHP, Perl, Ruby, Python, Objective-C, SQL, ASP.net and so many more! Its a quagmire of decision (though some would hate to have it called that) and you can get stuck in it if you are not careful. Its not like I can learn them all (realistically), and I want to be sure I use our time wisely by learning a language that will help me to actually build my ideas.
I want to have the power to launch the ideas I have. So – after quite a bit of research which I wont review here, I’ve narrowed it down to Objective-C and Ruby on Rails. Objective-C is the programming language most commonly used to program iPhone apps, and Ruby on Rails is typically used for building web applications – and from what I hear, is really great.
So plain and simple – the decision comes down to this: Do I want to build iPhone apps or web applications?
To answer that question, I need to think about the current ideas I have and also which programming language will serve me best in the future.
Lets take my four top ideas right now. If I consider building an MVP (Minimum Viable Product) for each idea, and considering using one of three methods to building the MVP: Objective-C, Ruby on Rails, and WordPress (I know, I know – WordPress isn’t a programming language and its in a different department from the other two, but I could honestly build an MVP for several of my ideas using WordPress. I’m just talking about an MVP, not a full-blown build out web app).
Idea #1 – Objective-C
Idea #2 – Ruby on Rails
Idea #3 – WordPress
Idea #4 – Objective-C
Yet, many of the web apps could have an accompanying iPhone app, and vice-versa. So both would be applicable. And idea #3 would be converted to a web app if the MVP gets some traction. So both Ruby on Rails and Objective-C could help me launch some of my own ideas. And those are just my four top ideas right now. In one year, my ideas could very well be more iPhone based or they could be more web app based.
So I really can’t go wrong I guess. Shoot, maybe I’ll learn both. I can learn one first and use it for a while, then learn the other later. Having both skills would be great.
But these things take time. I’m not in a position where I could take 2 months off and focus on learning to code. I’m going to be doing this in the mornings, evenings, and weekends.
Objective-C and Ruby on Rails, here I come. But which one will be first . . .
Hey Brady! Although I’ve never really built anything in either Ruby or Objective-C I have a pretty good idea of what each is like. With Objective-C I think you’re going to spend a lot of your time dealing with lower level programming concepts instead of actually building your project. Ruby’s syntax will be much easier to learn and you will be able to see results super fast. You will be able to learn programming concepts more quickly with Ruby and those concepts will spill over into every other language. With that said, if you learn Ruby first you will probably get frustrated when trying to learn Objective-C later on. I’d go with Ruby though.
Hey Trevor. Great to read your comment! Great points. That provides a second voice (aside from my own) that has me thinking I should perhaps switch to Ruby. I started reading “Programming in Objective-C” by Kochan and didn’t like it at all. Just didn’t match my learning style. I”m more of a “zoom out” then “zoom in” kind of guy, and that book takes the opposite approach and is definition after definition after….you get the idea. I think I’m going to try one more book and a good online tutorial on Objective-C before I switch though. I really want to build an iPhone app this year (at least a very simple one), so I’m determined to make that happen. If after I build it and get a basic understanding of Obj-C, I still don’t like it, I’ll switch to Ruby.
How’d you end up making out with this Brady? I’m in the same boat you were in a year ago. Read an O-C book and got pretty frustrated about half-way through and am thinking about switching to Ruby.
Hi Derek,
I recently emailed a good friend of mine and he had this to say: “Not surprised you didn’t enjoy objective-C, the syntax is terrible and the learning curve is high. The language you choose to focus on is all about your end goal.” Have you gone forward with Ruby?
Good luck Brady
I hope you are able to get this figured out. I’ve been trying to figure out what coding language would be easy to learn for basic web pages and app development. Any suggestions? Thanks again for providing this info it was good to read over and learn something new.
Thanks Ryley. From what I know (though I’m no expert), you’d probably want to use HTML, CSS, and JavaScript for basic web pages, and Objective-C for iPhone app development.
It really depends on what kind of work you want to do, and what platforms you want to develop for.
Brady, I’m in the same boat right now. Actually looking at both of these languages. What path did you choose, and how are you liking that choice? Appreciate your feedback…
Hi Robert. Tough decision isn’t it. I ended up starting with Objective-C. I studied it for about 1 month and didn’t love it. It just didn’t mesh well with me – how my mind works, what I’m interested in, etc. I’ve focused on other things since then – design, experience at a startup, launching simple MVPs of ideas. I haven’t started up again yet, but if I were to do it over, I would choose Ruby – mostly for the reasons that Trevor mentioned in his comment (on this post). I plan to study Ruby in the near future, but no time frame as of yet.
Hi Brady,
I’ve thought that Rails was the way to go. It got me into programming/app-making stuff in the first place. But one year trying to get my act together, learning about Ruby/HTML/CSS, Rails and other technologies I’m less certain that RoR is the way to go. Last week a friend of mine showed me what he did accomplish with Objective-C and xCode. It definitely pulled me into learning Objective-C and working with xCode. We’ll see soon enough if this was the right thing to do.
I’m curious where you’re at at this moment…
Greets,
Menno
Hi Menno,
I’ve been learning Swift (Apples new programming language) and have really enjoyed it. You can take a look at the iOS portfolio on this website to see some of the apps I’ve created.
If you have decided to switch over to iOS development, I’d recommend you focus on learning Swift.
I wish you the best in your learning!