Advertisement
If you have a new account but are having problems posting or verifying your account, please email us on hello@boards.ie for help. Thanks :)
Hello all! Please ensure that you are posting a new thread or question in the appropriate forum. The Feedback forum is overwhelmed with questions that are having to be moved elsewhere. If you need help to verify your account contact hello@boards.ie

Programming on ubuntu.

Options
  • 24-01-2012 12:27am
    #1
    Registered Users Posts: 32


    Hi.
    I've recently gotten into programming.I know some HTML and a good bit of python. I've been going to programming classes for people my age (14 and the coder dojo classes). What I've been interested in recently however is c++.My friend wants to team up with me and make an app for the iOS platform and what I've been wondering is can this be done on ubuntu linux?
    So if it can could anyone could link me to good text editors, compilers and the language itself.

    (Also on a sidenote, can anybody tell me if I can get the android SDK aswell?)


Comments

  • Registered Users Posts: 856 ✭✭✭andrew163


    For programming for iOS (without any jail breaking or anything) is concerned, you'll need a Mac - The development environment only runs on OS X.

    For the Android SDK, I think you'll be fine on Linux. There's a nice guide on the android developer site:

    http://developer.android.com/sdk/installing.html

    It even has a troubleshooting for Ubuntu section.

    As far as a generic text editor goes, there's a few options. If you're interested in a command line type editor (the Linux command line is infinitely more powerful than the Command Prompt in Windows - definitely worth learning about; maybe look for a bash tutorial), it might be worth putting effort into learning how to use vim. It's a bit of a learning curve and frustrating at first, but its a nice way to work if you get the hang of it.

    In terms of GUI text editors, edit (the default Text Editor - Applications > Accessories > Text Editor) can actually be quite nice if you open the preferences pane and switch on all of the options (line numbers, bracket highlighting, line highlighting, etc). It's not a heavyweight IDE like Eclipse, but it gets the job done.


  • Registered Users Posts: 1,349 ✭✭✭Phibsboro


    Hi,

    Great to see young people coding - keep it up, its great craic :)

    Re iOS coding, let me give a high level answer that is possibly out of date (haven't coded in iOS in about a year). (Note this response applies to native iOS coding, there may well be app generators that are quicker/not so tied to Apple.)

    I too tried to get into iOS coding without buying into the whole Apple way of doing things but in end I just couldn't figure out a reasonable way of doing it. So, what is the Apple way?

    Language - Objective C, a slightly peculiar language, basically a mix of c with some java-esque object orientation.

    IDE - xCode. Download the latest version which will come with the iOS sdk.

    Platform - as implied by xCode, you can only really code natively for iOS under osx. I managed to dual boot a hackintosh on my pc and that worked great.

    To get started I would recommend this book

    http://www.amazon.com/Beginning-iPhone-Development-Exploring-iOS/dp/143023024X/ref=dp_ob_title_bk/190-2339580-8390018

    with this book to get you used to Objective C

    http://www.amazon.com/Programming-Objective-C-4th-Developers-Library/dp/0321811909/ref=dp_ob_title_bk

    If you really want to try and code under ubuntu for iOS, you could try Eclipse - when I first looked at it I just couldn't get it to work in any kind of satisfactory way for Objective C, and I am quite familiar with Eclipse from my java coding days.

    If all that seems a bit too much, how about this - try app inventor.

    http://info.appinventor.mit.edu/

    https://joners-inventor.appspot.com/about/ (a mirror of the Google site that has all the tutorials etc.)

    Its a google/MIT tool that allows you to create apps for android phones. It is the BOMB for app beginners. It might be too simple for you but it is really is great for getting the basics of app dev across to newbies. App Inventor is down at the mo as Google transition it to MIT, but I am running a private server for a class I teach - pm if you want a login to try it for a few weeks.

    Hope all that helps :)

    C


  • Registered Users Posts: 5,246 ✭✭✭conor.hogan.2


    You could always run a hackintosh or Lion in a VM (not virtualbox yet) as Apple recently allowed this.

    Also you would have to pay 99 a year to join the dev program and ideally have a device to test it on but that is not needed.

    Or go Android and have everything you need in Linux just download Eclipse, JDK and ADT and later pay the fee if you want to release the app on their market.

    I would use Eclipse for developing in app unless it is very very simple or you are very very good at using vi(m) or emacs or some basic editor and have a knack for memorizing commands.


  • Registered Users Posts: 3,140 ✭✭✭ocallagh


    I've written a few iphone apps. You need a mac, end of story (I've tried the hackintosh route, don't bother with it)!

    I wasn't mad on the language/framework. Objective C, the IOS framework, Interface Builder etc - it all seemed too constrained for me. It was a bit underwhelming to produce stuff. Also, the IDE (xCode) is confusing as hell! I spent as much time researching how to do stuff in xCode as I did write code.

    The learning curve with iphone development would be a strange graph. For simple shiny apps it would be very low (I prob fit into this category!), but to build enterprise apps you need to know what you're doing to get any joy out of coding with it.

    Android on the other hand is a pleasure to code with IMO. I think it would give you a better grounding in development too. Once you get your head around OO programming you can slowly build more complex apps. It also works very well on Ubuntu. They have good tutorials on their site for installing Eclipse + Android tools on Linux.


  • Registered Users Posts: 1,349 ✭✭✭Phibsboro


    ocallagh wrote: »
    I've written a few iphone apps. You need a mac, end of story (I've tried the hackintosh route, don't bother with it)!

    I coded a few apps fine on a hacki - I guess it all depends on the hardware you start off with, I had chosen my PC with the idea that I might make a hacki so it was relatively painless. Just upgraded it with an SDD and stuck Lion on it, its still my main PC at home. So a hacki is defo an option for someone who wants to try iOS app dev but doesn't want to invest in a mac just yet. Actually, even if you have the money, a hacki can still be a good way to go if you are into building your own PC's (as I am). Just pick a known to work build (there are a few sample builds at different budget levels here http://tonymacx86.blogspot.com/search/label/CustoMac )...


  • Advertisement
  • Registered Users Posts: 3,140 ✭✭✭ocallagh


    Phibsboro wrote: »
    I coded a few apps fine on a hacki - I guess it all depends on the hardware you start off with, I had chosen my PC with the idea that I might make a hacki so it was relatively painless. Just upgraded it with an SDD and stuck Lion on it, its still my main PC at home. So a hacki is defo an option for someone who wants to try iOS app dev but doesn't want to invest in a mac just yet. Actually, even if you have the money, a hacki can still be a good way to go if you are into building your own PC's (as I am). Just pick a known to work build (there are a few sample builds at different budget levels here http://tonymacx86.blogspot.com/search/label/CustoMac )...
    The hardware is important - it also sounds like you know what you are doing which helps! I tried it on 3 laptops. It took me a few days to get it working, and in the process I completely fried the MBR on a lenovo t61p. It worked ok on my Sony Vaio but I had no wifi, no external monitor and no ability to upgrade software (which as I have learned is quite essential as IOS SDK changes fast). I must have spent a further week trying to get stuff working. In the end I gave up and got a second hand macbook for 600 and eventually had time to commit to coding.


  • Registered Users Posts: 1,645 ✭✭✭k.p.h


    Why not just try it with Android ..? I would happily troll this into a Apple bashing thread but it's not really appropriate. But if your already on a Linux platform you should stay there, There is no denying Apples popularity and it's a good platform to have your work on bur take a look at the open source stuff and the future of Android..


  • Registered Users Posts: 1,349 ✭✭✭Phibsboro


    k.p.h wrote: »
    Why not just try it with Android ..? I would happily troll this into a Apple bashing thread but it's not really appropriate. But if your already on a Linux platform you should stay there, There is no denying Apples popularity and it's a good platform to have your work on bur take a look at the open source stuff and the future of Android..

    Another key advantage of Android is that you'll be learning Java and using Eclipse as the IDE, both of which are pretty much industry standard at the moment in Irish software dev houses...


  • Registered Users Posts: 300 ✭✭nickcave


    It's not impossible to write iOS apps in Ubuntu. I've done some basic stuff with GNUstep with some success. It's certainly not ideal for writing iPhone apps - Cocoa is a much better choice if you have the option. But I'm just saying - it is also possible in Linux.

    The level of difficulty in using GNUstep is also much higher, which could be good or bad depending on your goals. I'm not sure about getting those apps on the App Store without the proper signatures though...


Advertisement