We are creating a charity that is going to provide young people with training for the IT industry. Our plan is to create some simple websites using something like WordPress to get them started with web development. Show them how to acquire clients and build their own portfolios. Maybe mobile apps if they have a keen interest and some PC repairs for about 30 students at a time.

We want to keep costs to a minimum.

I have worked in a Mac environment for a little while but I know Mac's are really expensive to buy so I am wondering what options are available in Linux.

When we set this up I want it to be as little hassle as possible once its running.

I am looking for ideas for Linux Operating System to run everything from. I am not sure to choose Ubuntu, OpenSuse or some other flavour. Essential best for a small business.

Web development. I know people use Linux for web development but I dont' know what real companies use who are running Linux for their web companies. I know what home users use (from what I have read) but I would like to mimic industry as much as possible to help the students so they go out with skill already needed.

I assume Gimp would replace Photoshop.

I have been looking at version control and not sure where to go. I am currently thinking that hosting our own gitLab would be the best solution.

I looked at Bitbucket but you can only have 5 users at a time. I need 40 out the box. So was thinking a local hosted VCS would be the best solution with a backup to a another server somewhere would be cheapest colouration. What do you think about this?

I am also wondering about the webserver locally. I am used to using things like Xampp and Mamp. Is it going to be better to install everything separately and natively of or use Lamp?

I think for now that is all I can think about.

I know have I have asked a lot of question but I am hoping you will all have some good ideas to get us started.

| improve this question | | | | |
  • 1
    Being a charity doesn't make it ok to spam. Feel free to link to your website on your profile, but it has no place in a question. – Gilles 'SO- stop being evil' Dec 5 '15 at 16:11
  • sorry many apologies. – Alan Auckland Dec 5 '15 at 16:34
  • 2
    While fun to consider, this Question is really too broad for a Stack Exchange. You should think this through and post separate narrowly-focused questions for each individual issue/topic. I did post an Answer but now regret it, as I am voting to close this Question as too broad. – Basil Bourque Dec 5 '15 at 19:52
  • Ok, thank you. I will bear this in mind next time. I have been thinking about a lot of things and I know I asked a lot of questions – Alan Auckland Dec 5 '15 at 20:39

Digital Ocean

For student learning, you might consider using "cloud" virtual machines. For example, DigitalOcean.com can create a new virtual machine in 1 minute. You only pay by the hour while in use. Prices start at less than a penny (USD $0.007) per hour for a VM with a half gig of memory.

Each student would get a fresh machine pre-installed with your choice of any of several Linux distributions, or even BSD (FreeBSD) the extremely stable Unix system.

Using VMs means not having to acquire, install, and maintain hardware servers. And each student has a fresh install at their disposal. DigitalOcean even has an API so you can script the creation and destruction of these VMs en masse.

You would invest more in a fast internet connection than server hardware.

Linux Mint

As for Linux on desktops you asked about, the first choice to consider is Linux Mint. The project's purpose is to provide a Linux alternative to Mac-style/MS Windows-style computer. Not good for servers, but great for a regular desktop workstation.

Used Macs

If you want Macs at a budget price, look into purchasing used Macs. Apple hardware tends to be high-quality and long-lived.

There are businesses that specialize in used Macs such as Seattle Mac.

Mac OS X is built on top of a variation of BSD so you have much of that Unix goodness available.

VirtualBox is a free-of-cost app you can run on your Mac to create VMs. In these VMs you can install Linux or BSD to create practice servers with benefits similar to that described above with Digital Ocean. The only catch is that you Mac must have enough memory installed to support the memory used by the VM.

Source Control

Be sure to consider Mercurial as well as Git. Both are free-of-cost and open-source. Both are successful products, with largely comparable features. Some people consider Mercurial to be simpler and better designed.

Remember that the whole point of both Mercurial and Git is that you do not need a centralized server. But if you want a central sever you can establish one yourself. Sounds like a good student project!

| improve this answer | | | | |
  • Thank you for this post. Its very balanced and given me food for thought. I need to ask these questions in a smaller scale. – Alan Auckland Dec 5 '15 at 20:41

IMHO there is no real answer to this question as usual, so I'll give my point of view.

To tackle the distribution question: If what you want is as little hassle as possible I'll go for Xubuntu LTS for two reason.

  • Ubuntu cause I think that Debian based are the most frequent distribution. ( Good ratio quality/price) ( I personally never has the chance to work with RHEL/Suse but they are second best choice for me ) and PPA let you use easily recent enough software if you really really need them (It's already possible to find a PHP7's PPA for example ).
  • The XFCE desktop is light enough for cheap computer but don't go in you way when you learn GNU/Linux.

For the Software side GIMP + Inkscape empower you enough to do a lot before needing anything else. For the IDE I have see a lot of PhpStorm which I can without doubt that it's a great software but I really prefer brackets over it for front end dev. (Atom is also great and foss.)

For the CVS the new GitLab version and Gogs are so easy to deploy/manage that you can have one on a small server without much pain.

On Linux I really feel that XAMPP and cie are getting in my way a lot more than a simple apt-get install apache php-5 mariadb. Learning to work with a server and doing basic configuration is almost always useful. And just FYI now PHP as a -S option that start a small server in the current directory. This is easy enough to start working with PHP without having to deal with a proper server (Apache/nginx).

Sorry not linking to software doesn't have enough reputation :(. I hope it helps

| improve this answer | | | | |
  • Yes thank you, its a nice insight. I understand there is no real answer and I am looking to understand what others are doing which will help make me feel more confident in my choices. I have been using Sublime Text 3 as a text editor/IDE. I am interested you have mentioned mariaDB. I haven't used this but was once told that it could be worth looking at. I haven't yet but, maybe now is the time. I also haven't seen a web host provide it, its always been mySQL I think we are planning on using Crazy Domains as our client hosting service. This could change if a better option is out there. – Alan Auckland Dec 5 '15 at 17:32
  • For student Sublime Text 3 isn't a bit expensive ? You might look at Atom, it is the closest foss equivalent. As for mariaDB. It's really just an equivalent to mysql with a more open source state of mind. – darksurfer Dec 6 '15 at 18:04

Not the answer you're looking for? Browse other questions tagged or ask your own question.