Is a Macbook Good For Programming?

Started by
53 comments, last by th2 13 years, 11 months ago
I got a macbook not to long ago and have been doing more programming on it lately. It's plenty suitable in the sense that it has more than enough horse power to do the job. I also don't have any problem with general typing.

What's aggrevating is that it doesn't have the page down/up/home/end/insert/delete block. There are key combos to do them but it took me a long time to get used to and slows me down. The nouveau chiclet keyboard look is also butt-ugly imho.
-Mike
Advertisement
Quote:Original post by JonConley
The thing is with most warranties (and I bet on your's) once you open it up, any warranty is void, unless of course you take it to a mac specialist who is licensed to take it apart, which costs a ton of money.


I'm reasonably certain that's not the case, so long as the logic-board remains seated where it is. There are no warning stickers, and the screws were standard philips-head type -- they're not adverse to less-common screw types, as the screws that held the hard drive into the mounting bracket were Torx-type.

Quote:I also never said to buy a monster of a desktop, I actually quoted the price of my machine that I built last june, which runs any software I can find rather well.


Fair enough, I'm also of the mindset that building monster machines is stupid -- I typically spend about 1K every 2-3 years on my tower.

Quote:On the coffee spilling and the likes, I am not talking about that being reliable (that is a user mistake not a hardware one). In my experience a laptop will produce many more hardware failures then a pc. A rather large reason for this is the simple fact that they run hotter.


I can't possibly imagine that heat, on the typical laptop, poses more of a threat than the additional environmental hazards a laptop is subject to. Overheating, when it does happen, is either an explicit manufacturing/design defect (which would be covered under warranty) or that the user has allowed the ventilation to become blocked, either by dust build-up or by laying the machine on a bed or some other soft surface (as my girlfriend's younger sister does all the freaking time with her macbook.) In either case I would attribute these to environmental hazard.

Still, I think a properly made laptop is more robust than you're making them out to be. There's been a couple times where I put my macbook away inadvertently without putting it to sleep. It goes into a tight-fitting neoprene sleve, which is zipped, and then into a laptop bag, also zipped. Needless to say when I went to retrieve it 2-3 hours later it was incredibly hot -- hot enough that it was bordering on to uncomfortable to hold with bare hands -- but I've not yet experienced any defect due to heat or otherwise.

Quote:Another point is, unless he already has a pc that he uses for games or bigger apps (3d modeling, video editing, and the likes) he may want to go with a desktop regardless. One you get more power for less money, and even if not 100% interested in those things right at this moment, there is a chance those may come up later, then you would want a desktop with a decent setup inside.


But you keep talking about laptops as if they're only qualified for the special-olympics of Computerdom. Go by the very best PC you can find, money is no option -- I guarantee that that PC is no more than 4x faster (barring, perhaps, graphics) than commonly-available mainstream-performance/professional laptops (not even performance or entusiast-grade laptops) -- and that's assuming your workload is threaded well enough that it will take advantage of the additional cores that tower *may* have over its competetor.

Quote:And as was mentioned before it is completely possible(legality is an issue but the leopard license says a pc has to be "branded" as an apple to use its software, so some interpret that as "if I have an apple sticker on my machine I have labeled it") to run OSX on a standard PC, as long as some hardware considerations are applied.


You can do it, but it brings a lot of issues on board -- namely availability of drivers for your hardware, and the fact that, last I heard, Apple update was a no-go.

I don't have any particular qualms about their EULA, as I don't think it would stand up in court. But from the perspective of doing development work for the iPhone I wouln't risk doing the development on an unsupported machine -- it would be tentamount to using unliscensed software in the production of the game (to Apple if to no one else), and they've certainly banned apps and developers for less egregious offenses, so why risk it when an entry-level Mac is so cheap.

throw table_exception("(? ???)? ? ???");

Hi! I also have a macbook standard(old generation), which i upgraded to 3gb of RAM and 640GB hdd. I have both windows and mac os x on it and they run great! I love my mac and plan to buy a macbook pro in the future. As in terms of development i find it very easy to develop for either iPhone or iPad(yes, i also have an iPad :P). I just hope my opinion isn't too biased because i'm kind of an apple fan.
I haven't seen anyone mention the iPhone language issue. The poster is talking about learning Java, C++ and C#. Applications or games on the iPhone officially all have to be written in Objective-C using the native Cocoa API (I'm deliberately ignore all efforts at wrapping or hacking other languages and API's onto Apples platform).

Basically for iPhone development you need a Mac, the Apple SDK and need to learn Obj-C and Cocoa/OpenGLES.
The OP asked about the languages C++, Java, C#, and then mentioned the iPhone as a separate qualification.

Also, while you are indeed tied to whatever Apple allows (Grrr...) you don't have to write the whole application in Objective-C, basically you only need enough Objective-C as you need to interact with the UI and everything else can be written in largely-standard C or C++. Objective-C is mostly a strict superset of C, and Objective-C++ is mostly (though slightly less due to conflicting approaches to the same design goals with respect to standard C++) a strict superset of C++. For the most part the differences shouldn't matter except where C/C++'isms come into direct contact with Obj-C/Obj-C++'isms.

throw table_exception("(? ???)? ? ???");

Quote:Original post by mongrol
Basically for iPhone development you need a Mac, the Apple SDK and need to learn Obj-C and Cocoa/OpenGLES.
You can use Unity, when Unity and Apple figure out the new EULA problem that has been holding them up. Unity allows scripting with &#106avascript, boo, or Mono C#.<br><br>
I use my macbook for proramming in rails. Xcode does work well for C++ programming, however Visual Studio is better I find. Java development is essentially the same as it is on PC. You get access to great tools to develop it in, plus you get a better terminal if thats how you would prefer to compile and utilize java.

Since your goal is iphone development, then you do need a mac. Apple's iphone sdk can only be installed on a mac.
Quote:Original post by mongrol
I haven't seen anyone mention the iPhone language issue. The poster is talking about learning Java, C++ and C#. Applications or games on the iPhone officially all have to be written in Objective-C using the native Cocoa API (I'm deliberately ignore all efforts at wrapping or hacking other languages and API's onto Apples platform).

Basically for iPhone development you need a Mac, the Apple SDK and need to learn Obj-C and Cocoa/OpenGLES.


I thought you could write Iphone apps in C and C++ too.
Quote:Original post by Ravyne
Netbooks give up far too much though. They're still on Intel's last-generation IGPs, memory bandwidth is an issue, the processors give up too much power for a lot of things (especially if you're stuck with a single core) unless all you do is type code and do small compiles.
It sort of depends what type of development you are doing, and how much of it you do on the road. For 3D game development, sure, because of the GPU, but even the MacBooks aren't approaching desktop specs in that department. You also don't want to recompile the linux kernel on the road, but I can't see a good reason to tackle compile tasks of that magnitude on a netbook anyway - the idea is to have something portable to show off slides when necessary, and handle minor programming as well as web/documentation tasks when you have to be away from the desktop box.
Quote:The smallest laptop I've owned was a 12" 1280x800 resolution Dell Inspiron 700m... 13.3" is the smallest I'll go from now on (frankly I think anything larger is too big for my liking too.)
This is sort of my point - I have owned both 15" and 13.3" MacBooks over the last few years, and neither is anywhere close to a comfortable development machine. Quite frankly, my current setup is convincing me that a single 1080p display is inadequate for large-scale development: throw up visual studio + debugger, the running application itself, and a few documents/webpages, and dual 1080p displays is looking like a lifesaver...
Quote:Original post by way2lazy2care
I thought you could write Iphone apps in C and C++ too.
At the very least you need an Objective-C shim to access the display and process input. If your application has more substantial system integration needs (GUI, copy/paste, etc.), then you will need a considerably larger shim, and you might be better off using Objective-C for a good chunk of the program.

Tristam MacDonald. Ex-BigTech Software Engineer. Future farmer. [https://trist.am]

Look at the system specifications of ANY Macintosh product. Then look at the price, not the shiny cover. I should think that, as a programmer, an individual would have a logical mind and not waste money.

Buy a no OS laptop. Drop Ubuntu in the hood (Linux OS- free, easier and faster than OSX). Use Toolchain plugin for Eclipse (The ultimate IDE).

Toolchain is an SDK for iPhone that runs natively on any platform and has an eclipse plugin. Considering that most Mac software is not very good*, I wouldn't be surprised if an open-source alternative was completely superior.

* Mac developers are barely sufficient to compete with open-source. Compare iPod firmware with Rockbox or any major Linux distro to OSX. Ubuntu especially has an even prettier, friendly, and more logical user interface than any Mac developer will ever be able to conceive.

This topic is closed to new replies.

Advertisement