Hello all, this summer I am going to be making/buying a computer that will run linux so that I can learn about it and expand my programming knowledge.
I have had some trouble with getting Linux installed in the past, and I would like advice: should I buy a pre-built computer from someone like Dell or HP, or should I make my own? My budget is only $250 (this ain't for gaming), which makes the pre-build computers attractive because windows would be free (for possible dual booting).
I would love to build a computer, but I am worried about possible issues I might have (for some reason I have the feeling that Linux installs easier on pre-assembled computers).
At the end of the summer the computer will be used in our school's programming club (I'm a co-founder, so I am one of the people in charge of getting equipment). The club will have it's own computer either way and the school isn't giving us money, so I just thought why not make it over the summer when I have plenty of time.
Why would anyone run linux in a Windows virtual machine? That severely affects linux performance.
Why would you learn programming using closed source software, when you can use open source software so you always have the option to look at the code yourself?
If you want good linux compatibility don't buy ASUS mobos or anything from NVIDIA. And don't buy anything that's very new (it hasn't been on the market long enough for enough distros to support it) or anything that is gamer branded (not a lot of linux people will be using it so there will be almost no support, gamers prefer Windows).
For $250 I recommend one of the socketed Kabini's, an Athlon quad core and an 8 GB stick will make a great system.
I hope my advice is useful :)
EDIT: Don't dual boot, you can do on linux everything you do on Windows, but better. You'll be shooting yourself in the foot, Windows is stupid and does anything in its power to sabotage a dual linux install.
EDIT2: How about this build? I had some free time and I thought I should try building a Kabini system:
http://pcpartpicker.com/p/3NsIm
$253.78 after mail-in rebates, without an HDD. All in a cute mini-ITX case.
To be honest, it's very easy to get a satisfactory linux experience with a VERY small budget.
For starters, there are SoC solutions. The Raspberry Pi is well known, but there are cheaper and more powerful linux-centric SoC-based solutions out there for people that want to explore the hacker side of linux and hook up stuff to a system and program their own applications with a hardware implementation.
If it's for a computer programming club with a hardware side to it, I would recommend SoC-based dev kits though, they are great to get great results fast, and offer a lot more integration flexibility than traditional x86 hardware.
If you need more performance and especially GUI performance is a major factor, and you have a really low budget, get used PC's. Running linux on Intel Core2Duo type systems isn't a limiting experience at all, it's still good for modern up-to-date computer performance, and you don't have to run the latest and greatest linux kernels to get all of the performance from these older systems. If you run linux on the latest generation CPUs and GPUs, you're pretty much confined to bleeding edge linux distros and the latest linux kernels to get the best performance. On a 5-7 year old system, you can run stock Debian Stable or Android_x86 on linux kernel 3.2 to 3.4 and you're not missing out on any hardware performance, and what's more, you'll have a snappier and more responsive overall experience than with the latest and greatest hardware with a closed source operating system downgrade.
I just installed Zorin 8 on my dads Dell Inspiron 3100. Old XP machine. It ran great. No need for a new machine if you want to save money. Buy a tower used on Ebay.
Personally I would go the DIY route, both Intel and AMD have great support for Linux these days. You'll see people posting on any popular kit if it works well with Linux or not on shops like Newegg.
I just built this little Linux HTPC front end box and it works great http://pcpartpicker.com/p/3KFuN
Personally I use Linux Mint Mate edition and have had no issues whatsoever. Between Steam, Desura, Gameolith, DJL, PlayDeb and the bundle sites there is no shortage of games to play on Linux these days.
If you aren't up on building your own there are companies that specialize in selling cops with Linux as the only OS offered.
http://www.zareason.com/
http://www.system76.com/
https://thinkpenguin.com/ are all solid OEMs and the systems are standard X86 so you can install Windows if you like.
If you want to use Linux without a lot of driver hassles, I'd look for something with an Intel CPU/GPU combo to start with. NVIDIA GPUs are fine, but you're stuck with proprietary driver blobs to make use of those. What I'd recommend you do is get a used ThinkPad from a few years ago (I own an X200), and plop Xubuntu, Mint, or openSUSE on it, depending on what you want. Use it daily, become one with Linux, and learn how to do stuff inside the command line interface. Make sure to find one that comes with a battery and the AC adaptor, and a hard drive. 2.5" drives are cheap, but it's good to just get everything in one fell swoop. Make sure it's described as working, as well.
This is a good example of what I mean. It won't have a huge amount of gaming power, but it's more than fast enough for anything outside of stuff you'd use an expesive PC for (such as heavy gaming at high resolutions, rendering, VM clusters, etc.) It's not very expensive as well. You can use it for school as well, if you're a student.
Use Xubuntu or Mint if you want to ease into a very friendly user experience with tons of software to make use of. However, I'm personally a fan of openSUSE. It has a lot of cool utilities to make use of, the community is very helpful and compassionate, and it comes loaded with a lot of cool software. It does have one little issue: you have to install non-free media codecs in kind of a roundabout way. I think you can handle it, you sound like you're willing to learn new things. There are a lot of guides online showing you how to do it. Use the version with the Xfce desktop environment, it should be on the net installation iso on its website. It might be on the regular DVD as well, but I usually do a net install.
Don't dual boot on the machine. Use Linux only, and see if you can operate with just that OS. I partitioned my drive on my laptop thinking I'd need Windows on it, but it ended up going unused as I learned to use Linux in ways that I hadn't foreseen. It's a great deal more usable and powerful than you think. You just need to be prepared to tinker a little bit with it. If you have any other questions, please let us know.
Just get a Raspberry Pi! Being an affordable platform for teaching kids how to program is exactly the reason they were created. You won't have to worry about compatibility with Linux, and you could get enough of them for your whole club to play with!
AMD's open source drives are pretty damn good these days, the only real issue with them is that the 290* parts don't work right now. The OSS driver devs aren't sure why they don't work yet either since t's still the same GCN GPU architecture that the rest of the R series and HD7/8 series uses, all of which aside from the Crossfire On A Card GPUs works quite well.
Reason I say is that even Intel is currently having some issues with their oss drivers, and then you are still stuck with their absolute fastest GPU being the Iris Pro 5200.
The hell for when you can get AMD Kabini based E1-2100 APU systems for the same $30 that are far more powerful then the RPi and also have zero issue with Linux using a fully open source driver stack, something that can't be said for the RPi as theres no docs released for the GPU.
I know this because I have this http://www.newegg.com/Product/Product.aspx?Item=N82E16813135364 running Linux with fully OSS drivers right now, with updated kernel, xorg, mesa and drivers I even have the on GPU video playback offloading and H.264 transcoding engine working. Wheres the RPi that can do that?
The universe of 3-4 months ago when they where only $54 and had a $25 MIR deal for about 3 months straight But since the Athlon and Sempron Kabini parts showed that they aren't just a rehashed e-350 the price jumped with the popularity.
You can buy a $250 laptop and put linux on it. Linux will work on pretty much anything. You can make a bootable USB stick then google ¨How to disable secure boot and boot to USB from win 8¨ so you will know how to test the floor models at the store, then make sure the wifi card works when you boot live. The cheap units with AMD A4 and A6 will serv you well.
In the situation of education go soc it's cheap powerful and arm is a beautiful platform rpi is open source so if you wish to do some hardware based stuff you can't go wrong, x86 is a dying tech x64 is okay but expensive, if you must go desktop get on ebay and get a job lot build a lab and have fun also if you have some free cash get some rpis or arduinos or maybe some cubietrucks to play with :)