Separate names with a comma.
Discussion in 'Web Design and Development' started by svenr, Mar 4, 2011.
At the MAMP forum, someone asked an interesting question, but no answer. Any opinions here?
They seem to reach the same conclusion on their own web site:
MAMP is a great development platform and I find that the package they put together is pretty much what I need. The only thing I do is enable the XDEBUG for IDE's like Netbeans and change a few of the php.ini settings like error display. What I really like about MAMP is that it can easily be enabled or disabled and everything is in one folder (MAMP) in your applications folder. This makes backing up your files and databases very easy as you only need to copy that folder (or parts of it) to another drive.
Like I said it's a development platform and I would never host a web site from my computer anyway (too much hassle with security and everything). I used to install php and mysql on my Mac before it was included and it was a pain to keep working and you really needed to understand UNIX & the command line which I don't. MAMP just makes it easy but if you're into tweaking every little thing in your development environment yourself then you probably want to use separate installs.
Same conclusion as what? And in that sentence they refer to MacOS X Server, which is a separate product. At least that's how I read it. Nowhere on the site does it mention the fact the every Mac even with the regular consumer OS X comes with all those apps pre-installed.
I'm using it for development too, not planning to serve live sites. But I'm reluctant to load my Mac with duplicate software, esp. when the duplicate is apparently older than what I already have. So I'm wondering if there's a good reason why I should anyway.
I mean the guys who made MAMP, why did they decide "Hey let's go and offer software that's already on every Mac"? If it's about easy configuring then, like the OP says "wouldn't it have been enough to make a nice GUI app to manage the built-in software?"
what I like about MAMP, as a developer, is when I screw it up I can just throw it away and download a new one! Nice clean slate every time...
So don't use it then... The benefits of MAMP have already been explained... personally I wouldn't be without it. What you're missing is that MAMP doesn't mess with your MAC System OS. If you want to uninstall it just drag the MAMP folder to the trash as it's self contained. I never have problems taking my MAMP developed site to a live server and I find that the installed MAMP app's meet my needs and they do a decent job of upgrading versions of PHP, MYSQL, etc.
I don't really understand your concern... it's free and you probably don't need the Pro version. Why don't you try it and then post your comments and concerns after that if you still have any?
Case In Point - this topic just came in. He tried to install mysql and had problems... not so with MAMP... no install to worry about!
OK now take a breath.
I was agreeing with you, I'm not sure what the benefit is. I actually wasn't familiar with the product until you posted your question. So I went to their web site and took a look around and came away with the same feeling.
Personally I have gotten away from a lot of that stuff. I used to host my own servers but have recently move to Google's app engine. That's not to same I'm not still coding, I'm just not dealing with servers and all that fuss.
With that said I think harpster makes some good points. If it isn't tied directly into the OS then I can see some benefits there. Just drag it around as you need it. If you have to reinstall your OS then you don't have to go through all the hassle of setting it up again. Just drag it back to your HD. That right there seems to be a good selling point.
On a side note - I just spent two weeks trying to get my own company's software setup on my dev box. I wish it was as simple as a drag and drop. Two weeks, that's just wrong.
Because we don't want to be messing with the built in software because maybe we want to use it for something else? - There's one answer
Because no one's made that fictional "nice GUI app" so the point is moot. - There's another answer.
It may not be the most brilliant solution, but for many folks here is about the best we're going to get.
I type cmd+space, mamp, enter my password, and I'm good to go.
Can you do the same with Apache + PHP + MySQL on OS X?
On OS X I go to System Preferences / Sharing and check Web Sharing.
Or I don't do anything because I just leave it on.
Not that much of a concern, more a philosophical question, I guess. I found MAMP and was curious what's the reason someone would produce such duplicate software.
Nothing wrong with that per se, there are many other examples. OS X also has a built-in text editor (TextEdit), yet there are plenty of alternatives. But the alternatives are usually quick to point out why you should care - how they are better or easier, extra features etc. I was missing that on the MAMP site.
You wouldn't be messing with it, you would be using it for its intended purpose. And what else would you do with the built-in Apache/PHP if not serve sites? Do you also install a Finder replacement so to "not be messing with the built in software"?
Doesn't answer the question why they didn't decided to build such a GUI app, which would be a lot more light-weight, and instead bundled everything that's already there.
OK, that could be a benefit. Easier backup. So finally there's one good point.
Ok I read your comments but I think you're still missing the point of why MAMP or XAMPP (or WAMP on the PC). To put it in perspective, before MAMP you had to install this software yourself and configure it and get it all working together. Myself and others are indebted to very smart guys like Mark Liyanage who put packages together to allow us to do this (http://www.entropy.ch/software/macosx/php/). Even with that it was easy to get things messed up and very difficult sometimes to correct. But it was a way to have a web development system on your Mac and that was cool!
Now fast forward to MAMP... they made the simplest solution known to man to get this web development solution configured on you Mac. Only it didn't intertwine with the Mac OS - it was all contained in one folder named MAMP and there was a simple interface application to start mysql and launch phpMyAdmin, set ports etc. I don't care if a new Mac comes with php, mysql, Apache, &phpMyAdmin preinstalled now. In my mind it's still not as easy to configure and use as MAMP, not to mention the ease of backing up and updating.
I want to develop web apps and get them to a live web server as quickly as possible. I do not want to be spending the time that I have for available development in configuring and maintaining software apps that allow me to do that development unless I have to. I think MAMP accomplishes that goal nicely and when I upload my web app to a live web server it works exactly that way it does in my MAMP server.
I'm not saying that installing or using these same development tools in your Mac OS is not needed sometimes. Maybe you want to host web sites from your Mac or you have a managed server that you have more control over and need to match your system to that. But for a heck of a lot of web developers I think MAMP is a great tool, makes it much easier than it used to be to have a web development system up and running on your Mac and it's reliable and still free for the non-pro version.
I think the biggest aspect that has been overlooked here is the vhost management with MAMP. Of course that's with MAMP Pro. As a web developer I've normally got a few projects on the go (as well as dev versions of past projects) and being able to setup actual local domains and letting MAMP make the changes to virtual host file saves me having to dig into it and add it manually.
Also the ability to switch between PHP versions via the GUI is awesome.
To me MAMP is like developing on a VM. I did buy MAMP Pro - It's cheap and just makes things easier. You can do a lot of things and not worry about screwing up the machine you're working on. I do most work in a VM because I want my *real* work machine configured in a specific way and I don't want to keep messing with it to try things that will be hosted on a server farm server. I develop in MAMP and then when I *know* everything works I upload the appropriate files to my *real* server (I host all my sites at SoftLayer and use CentOS). Then I copy the MAMP folder to another drive. Since I have multiple web sites I have multiple MAMP folders on 2 backup drives. I just put a suffix on the end of the MAMP folder after I copy it.
1. Set up MAMP. That's your "master" setup. Back it up.
2. Use MAMP to develop a site. There you do anything "special" you want like php.ini changes, Apache's config file, redirects, etc.
3. Fully test the site and if everything works upload the appropriate files to your production server.
NOTE: If you use databases such as my sites do, you can not just copy the database(s). But other than that aspect MAMP is pretty good. There are a few things such as httpd.conf, php.ini that I don't copy from MAMP as well. I do make those changes as necessary on the live server. But when these come into play I usually look at Saturday night around 11PM when my sites are very slow (they're technical forums). And in case things *really* go wrong and the whole server is hosed, I have an offsite backup of the entire drive using rsync which is "bookmarked" at 2 hours prior to the start of my making changes on the live server so I can restore just about everything relatively quickly.
4. Add something like <site name> to the end of the MAMP folder and back it up on at least one other drive.
5. Copy the contents of the MAMP "Master" folder back to your main MAMP internal drive folder.
6. To set up a new site, rinse and repeat from step 2.
Now any time you want to "tweak" a specific site you can copy the data from the backup file for that specific site to your main MAMP internal drive folder.
To me MAMP is valuable if you have multiple sites. In fact, I'm getting ready to do a major update to one of my sites now (I sorta picked up this thread in a search looking for some unrelated MAMP info). Until everything works in my MAMP folder for that site I wouldn't dare upload the changes to my "real" site. Another name might be "test bed". Never make changes to a live production server until you've done a lot of testing to ensure everything works as planned. Downtime on a live production server can cost some significant money if you do web sites for a living and make much money doing so. Every hour you're down is lost revenue.
Just some thoughts....
Damn I thought it was more expensive than that. Snagged after I checked, can't wait to get going with it. Thanks for pointing that out, for my simple purposes it's great.
Because they're wrong?
To start with, MySQL comes pre-installed in OS X Server, not OS X. It's trivial to install but the basic premise of this thread is false.
(The replies here were very informative, however. I don't use MAMP but based on this thread I can understand why others, especially professional website developers, would)
This is an old thread but good point.
I will say one thing, if you have problems with MAMP Pro don't expect any formal support. I have essentially abandoned it. I have been seriously disappointed.
Yeah, I knew it was old but I thought it needed to be said.
I'm curious then, what are you using? I have no need for a production setup, but I'm interested in what works best in such an operation. You had me sold on the system you outline above with MAMP Pro.
Well, I am an old retired guy who keeps some web sites online which sorta goes back to my BBS hobby back in the 1980's. It would take too long to go into the details of the problems I had with MAMP (I don't remember what they were off hand). So - I know enough to be dangerous. I did have MAMP Pro running OK - Some problems came up and I just couldn't get feedback to help me.
So - These days I just keep a server online (I use Softlayer, which all my dedicated servers are on) so I'm in a *real* CentOS environment. I do testing on it. I did try to use Parallels to make a CentOS virtual server to test on but it just didn't work like a "real" server. I make enough on my web sites that the cost isn't an issue so having a small dedicated server to test on makes the most sense to me. I can test in a "real world" environment.
MAMP is intended to be used only as a development platform, aka localhost sandbox, using the LAMP stack. Even better is MAMP Pro, the licensed version which allows a full GUI interface to setup as many hosts as you want, each with aliases, simple SSL or dynamic IP and mailer setup all sharing 127.0.0.1 or localhost and a port other than 80 so your Mac's Apache is unaffected. It's also a little easier in the PRO version to edit config files for each layer of LAMP and integrate debugging.
I use it to setup sites for my clients for local development only, i.e. http://clientsite-xyz.localhost:8888 with docroot as /sandbox/client/xyz. I use Mac terminal for GIT or SVN repo access as provided by the client.
I also want to point this out:
Have you ever visited a site where the images come in so slowly it reminds you of the old dialup days, or you think the network is clogged? It's not just MAMP that causes that -- it's people who hook up their iMac or anything other than a professional web server (notice "OS X server") which cannot handle proper external page caching, load balancing not to mention firewall. Notice I did not mention bandwidth - that's obvious as some people are stupid enough to hook up their iMac's with their cable modems or DSL and expect performance serving web content. ;-) There is always someone who will reply "it works for me" and they talk about a special setup or geek us to death with money spent on special this or that. Great, good for you. But I am talking about a PROFESSIONAL setup, folks. Use your iMac and MAMP/PRO for local sandbox, then if you want to host the client's site look into commercial VPS, dedicated server, shared server or colocate your OS X server in a data center somewhere if you want full control.