Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 10 years ago.
Improve this question
I'm going to be working on some iPhone apps so I've been given a golden ticket to buy a Mac. However the golden ticket isn't worth that much, and I'm thinking iMac. Now, Macs are great, I love 'em and use 'em at home, but I know that the iMac is geared more towards the average consumer than the professional. Is an iMac going to be powerful enough to do iPhone development on?
If it helps any, the only thing I envision doing on the Mac is running XCode and maybe a web browser.
Is there anybody out there doing iPhone development and having trouble running the required tools on their machine? If so, what do you have?
Any modern Mac will be fine. I work on a two year old MacBook (2GHz) with 2Gb of memory and its perfectly usable. The biggest constraint I find it screen real-estate. I am way more productive on my 22" external screen. Go big if you get an iMac or consider adding an external monitor to the base model.
The iMac is a very fast machine and will be more than suitable for iPhone development. In most cases, a Mac Mini with maxed out ram is good enough.
Keep in mind that out of the box, the Mac Mini can only accommodate one monitor.
My main Mac is a MacBook, juiced with 4GB of RAM, and I find that perfectly good for development (in either Windows or OSX). I could have got an iMac for a bit more money, but I already had a 20" LCD monitor laying around, and I wanted the portability.
The MacBooks are as powerful as the iMacs (excluding the graphics card, which may or may not be important to you; it wasn't to me), and are perfectly suitable for development.
I'd say that any of the current iMac models are more that good enough for development with their dual core, 6MB cache, 1066MHz FSB cpus. You might consider going with more than 1GB of ram, but compare aftermarket prices at places like NewEgg to what Apple wants (for example, I upgraded my MacBook Pro to 4GB for hundreds less than getting installed from Apple).
Which model you picked would be more about HD and LCD size and how much you have to spend.
I run XCode for Mac development on a 20" current-gen iMac and it works perfectly with plenty of other processes running. You can definitely use the iMac to develop software.
An iMac is easily powerful enough to use for development work.
I run XCode on a current-gen Macbook with only ONE GB of RAM and it runs fine, so long as I limit the amount of total applications running.
You aren't gonna have a problem running Xcode on an iMac. Any iMac. Any development project can be done on an iMac. They're fast and modern machines. The cheapest iMac has a Dual Core Duo 2 chip with 1 gig RAM. Boost the RAM to 2 if you can (a cheap option - cheaper if you buy 3rd party RAM). Makes a huge difference running OSX.
In terms of power, any current Mac is fine for iPhone development. You might want to consider other factors that depend on how you like to work.
Do you like to sometimes grab the machine and just get in a different work environment (or show your stuff to people)? The MacBooks are comparable power-wise, but give you that freedom.
Can you work with glossy screens, or do they irritate you? In the latter case, an iMac or MacBook may be suboptimal and you should make sure that you get a larger, non-glossy display as main screen. A second display is generally very helpful for development, so you might want to have one anyway.
And you will indeed want to push RAM to at least 2GB (4GB are nice of course, but not absolutely necessary).
I would suggest going for a maxed out Mac Mini and the best monitor you can fit in your budget.
Bear in mind that both the iMac and the Mac Mini are essentially laptops (in terms of their internal components). Admittedly, the iMac has a large screen (as laptops go) and a proper hard drive.
I run XCode on a 17" iMac (2 yrs old) with 2GB of RAM and haven't had any trouble.
I'm managing just fine on a Mac mini. It only has the stock 1GB RAM at the moment so thats the current bottleneck.
Developing for the iPhone isn't particularly intensive work, the only way to go up from an iMac is the Mac Pro, which I assume you can't afford. The only reason to go up up to a Mac Pro is if you're doing video or image work where you really need the horsepower.
I saw a chart in MacFormat this month that suggested the base iMac was faster than the base Mac Pro anyway, although obviously there's more room for expansion in the Pro.
Buy more RAM, though, up it to 4Gb you won't regret it.
I often use my PowerMac G5. Sure, you need to hack the developer tools to install on a PPC and there are some Device SDK issues but it runs.
Oh wait, you said "good". Nevermind.
I've bought the mid 2010 Unibody Mac mini and it's a good machine to do iPhone development.
I didn't want to spend a lot of money buying a new computer. So I opted for the bare minimum necessary to develop for iPhone.
The post bellow shows my impressions about it...
Learning to develop for iPhone with a Mac mini
I'm also thinking of buying an Mac. I wanted to create a new question, but now I'm trying to ask with this 'answer'. There are a few possibilities:
iMac: Powerful hardware, large screen (27") -> perfect for development
MacBook Pro: portable, but you need a bigger screen than 13" -> expensive
Mac mini: small, no noise, as powerfull as the 13" MacBook Pro, cheap, you need an external display and a RAM upgrade
I have worked for a few months on a 13" MacBook Pro, but you really need a second screen if you want to develop (despite through the touchpad scrolling is very easy). The hardware (2.66 Core2Duo, 4 GB RAM, 320 GB) was strong enough for the development with Xcode.
But how often do you really need a portable solution? The most of the time I was working on the same place. And a 27" iMac would be great for that, but isn't as cheap as a Mac mini. You could buy a Mac Mini with three 23" IPS panels (1080p) for the same money (including Matrox DualHead2Go) but not as powerfull as the 27" iMac with i5-680.
Questions:
Is portability for you essential or a nice-to-have?
What is better for Xcode? More GHz or more cores?
What brings a faster experience? A faster CPU (e.g. 400 MHz faster) or a SSD instead?
The best solution would be an iMac and a MacBook I think. But for the beginning it's too much money.
PS: you also need one device too. The cheapest device is a 8GB iPod Touch 4G.
Please get a Mac that has SSD, either the MacBook Air, or the built-to-order options.
Compiling big frameworks such as Three20 would be at least 2 to 3 times faster. XCode 4 should open a lot faster with SSD drive.
As with all development, screen size is paramount so I would suggest the 24" iMac if your golden ticket stretches that far or a mac mini with a large (probably non-Apple) monitor if it doesn't.
The only other comment I have is that sometimes I wish I had the portable so I could code on the train, plane or sitting in the park!
I bought an iMac and have had no problems whatsoever developing my 'simple' app except for the scrolling thingee freezing on me sometimes.
Related
I am willing to buy a mac mini for developing IOS apps for iphones ( social networking type ) and these are my mac mini information
1.4 GHz dual-core Intel Core i5 processor
4GB memory
500GB hard drive
Intel HD Graphics 5000
OS X Yosemite
please I would like to know if this is good or not and whether I can use it for developing or not and can I use latest xcode on it ?
NOTE :: I am willing mac mini due to budget problems and I will only open xcode on it ( I will not open allot of programs together )
thanks in advance.
It should be okay for Xcode and related stuff, but the processor speed is rather low, and the regular hard drive is slow by today's standards. Also, 4GB RAM is still okay for running Yosemity or Mavericks, but the OS will need to swap or compress memory very soon. You'll probably be able to use this system for what you want, but don't expect it to be too fast, especially the HDD is considered a bottleneck.
It is very likely that you'll be able to improve the speed of that computer a lot by upgrading the HDD to an SSD and the 4GB of RAM to 8GB. Both can be done by any computer store or even by yourself.
I would like to use it an an iOS development machine (as i own no other mac) but i need to know if it will be sufficient for iOS dev.
And is it sufficient for PS?
I have tried Xcode development with 4 GB and I can say it is possible. After I upgraded to 8 GB, however, I noticed that things like launching the iPhone Simulator performed much better. I would be a bit more concerned about the 11" screen, actually.
With my 13" screen, it is frustrating to not get as much visual area to display my code. I find myself switching the top and right sidebars in Xcode 4 on and off all the time.
So all in all, my advice would be against it without an external monitor. With an external monitor, I would give it a try--the SSD might compensate for the 4 GB of RAM and make it sufficient. Hope this helps.
To add to Christian's answer, the screen is the worry for me as well. 11" is small. you would almost have to have at least one other monitor to really use it as a full time dev machine without going blind (seriously). 4 gigs is enough, and the processor is fine. Also, here is a great post on the exact question basically by a well known iPhone developer (Jeff LaMarche, author) Jeff LaMarche's blog
I use a "13 MBA 2011 with 4gb. Performance is no issue as it sails through xcode 4 with ease, the SSD is a huge improvement over conventional hard disks.
I wouldn't recommend "11 though for development without an external monitor, purely because of the screensize.
I use a 2011 15" Macbook Pro 4gig and it's fine for Xcode. However, I do use an external screen and would say that it wouldn't be as great if I didn't. So, using an 4gig MBA for developing is fine, but the 11" is really too small, even with an external screen.
I used to use the 13" Macbook with 2Gb of RAM with the 2.4Ghz processor. It should run fine on any of the Intel based Macs. Obviously performance will be improved on better/newer machines. But you will run into frustration with the limited screen size. I would consider an external monitor or get really good with Spaces.
i am new to Blackberry apps development, and see that there are lot of different resolutions of display on different Blackberry types.
is there some survey which types are most used ? which resolutions is good to support ? thanks
You probably don't need to worry so much about which specific devices you will support (unless you need specific features like touch capability). However, you do want to consider which OS version(s) to target to get the right combination of audience and feature set.
RIM provides "Choosing a target OS" with lots of good data to at least get you started.
You dont have to worry about the resolution of the blackberry Mobile Screens... We can programmitically give the resolution by checking the series of the blackberry devices...
Do you want the java code to find out the series of the blackberry mobile devices
The link that #Scott W provided is a good start in deciding which OS to support. Let me dig into this a little further, assuming you are creating an app for consumption by non-Enterprise users (delivery through App World);
As of March, devices running pre-5.0 OSs make up less than 20% of the total, and for paid apps, this figure is 10%.
By percentage, paid apps are consumed by those with newer devices than for free apps, for every OS across the board.
Keeping all this in mind, I recommend the following to you;
Don't consider targeting pre-5.0 devices, it's a waste of your time (I know, I've done this before).
Consider the time it will take you to create an app and release it (anywhere between 2 to 6 months) and imagine what the BB OS market share will look like (OS 7 will be released by then).
Start developing targeting BB OS 5.0, and if you encounter an issue whereby OS 6 provides functionality you need that is not available in 5.0 (you'll have to implement your own solution), seriously consider dropping 5.0 support or not including such feature in your 5.0 build.
If your core competencies are in Java, stick with that, otherwise, seriously consider developing in WebWorks, as that has the advantage of running on PlayBook and you'll have reusable code if you're building a mobile website.
As for devices, the Curve series is easily the most popular amongst BlackBerry's devices (as it's cheap to buy). However, if you write your UI code to be mindful of container sizes, your interface could look the same on all devices (if you want it to be).
Pretty much as the title says. I'll likely use Monotouch for some/all projects if that makes a difference (noting this still needs a Mac).
I've read this Question...
Macbook Air for iPhone Development?
...and see the related answers note performance issues and buggy/non performant screen spanning issues on previous generation models.
I'd like to know if these two issues are resolved with the new specs.
Observations on performance running Win7 and WP7 under bootcamp are welcome but not required. Related question raised here looking for specifics on WDDM1.1 compliance on this model if you care to comment there.
edit: formating/highlighting.
As both my answer and Marco Arment's in the other question indicate, the previous generation MacBook Air was more than capable of running all the developer tools. In fact, Marco's review was based on the original MacBook Air, which was even less capable than the second-generation one that I had.
Performance is a relative metric, and it only improves with these later models. The second-generation MacBook Air that I had was never the bottleneck in my development process.
Pretty much all of the bugs were worked out by the second-generation model that I had. I noticed no issues with driving external monitors from the system at all. Again, Marco was basing his review on the very first build of the Air, which had some known issues.
Screen size will be an issue on the go when developing with many windows open, or trying to simulate the iPad, but that would be the same with a 13" laptop of another type. I imagine you'll be connecting this into an external display for extended development at your desk anyway.
The only reason I no longer am using it as my primary machine is that I found I didn't need the portability after getting an iPad.
The new models will be more than capable of running all tools required to develop iPhone apps on. The most notable performance improvement will be the integrated SSD memory. This makes up for the slightly slower processor speed when compared with the 13" MacBook Pro.
I just got the latest revision macbook air. I think it may actually be faster than the 2.4ghz macbook pro it replaced. My only suggestion is to upgrade to 4gb of memory.
This question already has answers here:
Closed 10 years ago.
Possible Duplicate:
iPhone Development on Hackintosh
I really want to get started, but man are those Macs expensive...especially for a non-US like me.
I'm thinking about trying to run OS X in VMWare. But would this prohibit me from doing iPhone development? I will gladly buy a copy of OS X to give Apple their due...
Thanks,
Makil
The answer is yes.
To develop iPhone applications, you need the iPhone SDK, which in turn requires Mac OS X version 10.5 (Intel). If you can satisfy this requirement in your OS X installation, then you can build iPhone apps. Whether you can test them just as easily depends on USB support in your installation.
The fact that the Mac Mini is $599 is irrelevant to the question and how inexpensive it is, is relative. What is inexpensive to one may not be to another (especially since the OP states that he is not in US, where it might be much more than $599).
Yes, its possible. But, issue is that iPhone SDK gets frequent updates and requires updated version of Mac OS X - updating hackintosh is pain (you can do better development on MacMini instead of wasting time to upgrade) and you will never know when your hackintosh will be unbootable!
USB, Audio are another issues I have seen in hackintosh.
It's definitely possible, and it's not even that hard if you're buying the parts with the intention of running OS X on them.
Most of the difficulties and incompatibilities people experience are due to attempting to try out OS X on hardware they already have. They may have an AMD system which needs a Voodoo kernel, they may have a Radeon 4xxx which will only work in VESA mode without hardware acceleration. Of course these things can be made to work, and it is getting easier all the time, but it's more effort and it's where the bulk of the problems come from.
Once you do get your Hybrid Mac working (as I affectionately prefer to call them) it still won't be as perfectly painless as the ideal (note: not actual!) Mac owning experience. But still, with a little common sense you get a lot more computer for a half or less of the price.
Edit: as for running OS X in a VM on a PC, it's really not very nice at all. It's a tremendous hassle to get it to boot at all, and even then it's not very usable as an environment, often without working sound/LAN/etc. You can obtain complete VMWare images of OS X which may not even work inside different virtualised environments!
Technically: yes. Legally: no. The OSX EULA doesn't permit it.
Note that having the right tools for your job is important, and the unknowns of running OSX on non-Apple hardware could lead to problems down the road. The Mac Mini isn't that expensive at $599, assuming you've already got a keyboard, mouse and monitor.
I know it will work, if you can get the damn thing to install and your able to get usb working.
I currently own a G4 mac mini and had a 2nd gen intel IMac (had to sell it to pay the bills). I paid for my iphone developer lic., bought a 2nd gen touch, booted my mini, downloaded the iphone sdk... Oh no, you need 10.5. Bought and installed 10.5... Oh no, you need an intel mac. Forced sdk install, apps build great for the simulator, but what is this, I can't sign my code. More hacking... Oh no, provisioning error. Connected the touch, unable to mount dev partition. I now left with no job, no money and no way to release my apps to try to make some money.
Oh, yeah, I'm going to try to install hackintosh in vmware, but only because I'm flat broke. Also, I wouldn't buy a another mini knowning that my g4 mini cost $599 (back in the day) but once I was done making it usable, I spent over $1000 ($200 aftermarket 1gig ram upgrade, $99 keyboard/mouse, $150 monitor, etc). Of course it's cheaper for better hardware now, but the mini nickel and dimes you to death. Do yourself a favor and just get a macbook, that will be my next buy.
And the funny and/or worst part about all of this is, I don't even like OSX or the iphone/touch.
I've tried, but I haven't successfully run OS/X in VMware. I do know someone who's successfully developed iPhone apps on a hackintosh, but getting your hackintosh set up is quite difficult.
I'm in the same boat, I don't want to shell out foir a Mac until I know I'm comfortable with the toolchain, and I'd like to get a feel for iPhone development using my current hardware. Interested to hear of others experiences.
I was (with some effort) able to install OS X, snow leopard, as well as the dev tools onto my IBM X61 and have had no issues with it or developing IPhone apps on it. I have the OS fully functioning. Note: I bought a retail copy of Snow Leopard for my project.
Why? I had more time than money. If I had to choose again and I had the $1500 beans (+tax, + whatever) to buy a mac book pro I would have as it certainly wasn't 'simple'. But I didn't.
But now that I have done it, I have an immensely cool IBM MacBook :) and am quite proud of the accomplishment. I also learned an awful lot in the process. Was it hell? Yes.. Was it worth it? Yes...
Hope that helps!
A Mac Mini is $599 and comes with OS X ($129 by itself). The specs on the Mac Mini aren't awe-inspiring but they're perfectly usable. I just wouldn't be able to justify saving a few hundred bucks (max) by buying a bargain basement PC and running it as a Hackintosh. You lose all ability to get support from Apple, you have no guarantees it won't break compatibility in the future, and you are highly unlikely to get the same relatively seamless experience of a real Mac.
Bottom line, whatever money you save, you'll probably end up paying for/regretting later. I own both a Mac Mini and a Macbook and I've had a better experience with both than with any PC I've bought or built in the past. I just wouldn't recommend trying to make an end run around this for the sake of a few hundred bucks. Heck, if you add up VMWare ($189) and Leopard ($129) and the cost of even a bargain PC, you're pretty close to a Mac Mini already, so I can't see this being worth it.