Microsoft's answer to LAMP
M - Microsoft
I - Internet Information Server
S - SQL Server
S - Scripting services (such as they are).
Yup, you heard it here first: MISS (and it does!)
Last summer, Microsoft said that February 27, 2008 would be the single biggest day of releases in its 30-year history, promising major updates to its server operating system, developer tools and database. After some fancy work fine-tuning PHP, MySQL and other open source code to Windows, Microsoft should have been ready to …
Microsoft, Speed?
Is that only when you have read their documents on how to get your system back to responsive instead of dead?
Websphere on Redhat Linux, right so they've chosen implementing it in Java against I suppose C#, hmm, and Websphere against IIS, hmm.
Right whats the link to MSDN? I'm converted!!!!1!!1! (even if super fast MSDN now takes all day to load, and they've sorted hotmail so that I can login)
I can go to the internet and download everything I need for a LAMP server, put it on an old PC, say a Pentium III with 512Mb RAM and it will work brilliantly.
In any Windows environment the "Microsoft Windows Genuine Advantage" will force me to buy another copy of Windows and will require me to use significantly better hardware to achieve a similar result. I would also need to consider purchasing annual subscriptions for anti-virus software to keep my Windows PC grinding away.
If I was a student with very little cash to spare which platform do you think I would choose?
L - Low paid
A - Adolescent/Amateur
M - Male
P - Programmer
Sorry, I do love LAMP, but Java and .NET programming jobs pay 50% more on average. They're also 1000% more available. I'll be impressed when I see a resume/CV come across my desk for an exclusive LAMP developer that's not a 19 year old trying to bypass college and hop into programming with a long list of personal sites for a portfolio. Until then, LAMP is just what kids and young adults use at home for their hobbies because it's free and so fits with their part time jobs or allowance.
There are exceptions to every rule, but when I see mid-level LAMP developers pulling down $80K+/year (on average) I'll be convinced. Right now they're just $40K/year linux fanboys copy and pasting code from help sites.
MISS does miss the point, true. Scripting services? Get real!
The equivalent of LAMP (a dev environment) would be Vista, IIS, SQL Server Express and VS Web Developer Express. It fails to match LAMP on three levels:
1. Vista costs
2. MS won't release IIS 7 for Vista (through fear that people might not then buy the more expensive server 2007)
3. VISV isn't as good an acronym
"Java and .NET programming jobs pay 50% more on average"
I think this is more to do with choices made by PHBs than any reflection on the quality of either the platform or the end result. If a company has spent more money on a Microsoft platform over a LAMP one then they'll expect to be paying more for the programmers too. It's the big companies that tend to use MISS, and they are the ones where the purchasing decisions about platform choice are made by people who are more likely to choose the "safest" option over what might actually be best for their needs.
The perception that LAMP is inherently linked with 19 year old PFLs is not true, as you say, but it is one that is actively encouraged by certain vendors in order to keep the status quo and keep the sales of MISS up. And it works too.
You, sir are a knave and pultroon of the highest order! (Damn, you can tell I've been reading Flashman novels on the train to work can't you?) I'm a software & latterly developer of many years experience and a LAMP professional for the last 5 years. I was 19 in 1980! I've just landed a nice new job with an excellent starting allary, much greater than any mincing Java developer!
So to you Sir, I say meet me with your second at the back of the stables at damn tomorrow! (Damn, where is Speedicut when you need him to queer the bounder's powder and shot!)
Coat Sir? Why its the dashing Cavalry one with the Afghan Campaign medals thank you very much!
I've had experience of working with ASP.NET and LAMP.
ASP.NET looks great initially but is the usual over-bloated MS mess once you work with it for a while. You should be able to write all ASP.NET applications with something simple like an editor - bit soon realise that without the really expensive Visual Studio anything other than the basics is not possible.
Also, it is not really portable and not completely cross-browser. Page repositioning only works in IE.
The McJob commenter/astroturfer does not realise that LAMP is really scalable and that PHP has beautifully simple but useful functions as well as full object support with PHP5.
This means that at a basic layer we quickly add simple functionality to websites such as updatable pages and decent forms etc.
Then we could also scale up using Smarty, PEAR, phpunit, object based API layers, phpdocumentor, design patterns, memcached, AJAX etc etc etc to build full featured web applications.
As for the job market - since when has money decided what is right and wrong. If it did then the billions spent on 'enterprise' software projects - UK tax office, Health service, Job centre CSS2, passport office system, pensions system, etc etc etc etc etc etc etc etc etc etc would have resulted in good systems instead of them all being failures.
In fact the sooner management realise that spending millions on overbloated crap like .NET does not guarantee decent product the sooner we can start sorting things out.
One area of this discussion that made me chuckle was the assertion that LAMP is free. Well that kinda depends on the kind of site you're building.
Yes - when building my own websites, I used LAMP. It did indeed cost me £0.00 and I'm very happy with it thank-you very much. The setup copes perfectly with the traffic it gets (not much).
However, if I were to spec out a major site, where downtime is measured in thousands of pounds per hour my choices change:
Linux - yes, happy to go with this. But I'm whacking on RedHat so I'm assured of service packs and support. All of sudden it's not free anymore, support = $1500 per year.
Apache - Love it to death, and as a "no brains", front end server it still gets my vote.
MySQL - Oracle isn't a shoe-in anymore, so yes, I'll stick with MySQL, however I'm now looking at Enterprise versions. These range in price from €480 to €4000 per server per year. Not quite free...
PHP - Am I going to build a large, complex application in PHP? Erm... No! All my business logic is getting built in Java (where I can find the skills) and is going on a separate application server. Again, I'm going to be faced with the choice of "premium" options of WebSphere or WebLogic or I'll go down the JBoss route from my friends at RedHat again, who will take another $4,500 per server per year off me.
@ Giles Jones - there are many "experts" willing to help me tune and tweak my LAMJ (J=java) as well, and those experts are no cheaper than the MS boys.
Count me as a fan of both LAMP and LAMJ, but for the "big stuff" it is certainly not free.
Bringing it back to the original article... Would I use any MS stuff in the above setup? Probably not (although I'd give SQL Server a serious look.)
It's funny you should mention that. I'm about to graduate from University. I've been a LAMP user since my teen years, and did indeed grin at your acronym. And you could be at least partially right on the old Java front. I've recently improved my existing Java skills, and the number of jobs I can now apply for with higher wages is surprising. That said, LAMP has its place - PHP apps are often faster and less complex than their Java equivalents, and I can knock together something in PHP much faster than in Java, all other considerations aside.
(This is not an endorsement of speed over quality, however - Python still sucks ass.)
Fortunately, I've been offered a job where I get to use both Java *and* PHP, on Linux/MySQL/Postgres/Oracle boxes. That'll do me nicely. ;-)
LAMP is free if you want it to be, you <b>DO</b> have the choice to use it for nought or pay people to run it. I will concede that if you want top bods to put a "site" up that handles thousands of transactions a second, your going to need to pay through the nose to keep it up and running no matter what. With MISS ( I love that! ), you get 30 days, 60 maximum to test it, then you have to pay if you want to keep it, and what's more you have to keep paying and you have <b>NO</b> choice about that if you want to be able to use the product, until the end of it's life.
Hmmm .A LAMPing Dynasty is Evolving and Growing Stronger .... Hoovering in FeedBack for Constant Analysis into Enhanced and Enriching Output..... Beta Intelligence for SMARTer Projects.....Tele-Visual Projections ..... Vistas.
For Formula 01 Space Racing.......... Sponsored Global Eventing.
And the Egghead because they can make you King every day... and Fit for a Queen.
OS politics and numerous other reasons to not choose Windows Server aside, it's completely absurd to have a *server* operating system with a GUI. It's a pointless, stupid, waste of resources that would be better spent on doing server tasks.
Our webserver lives in a data center some 2500 miles away. I've never seen it, nor am I ever likely to, but I'm assured they can hook up a keyboard and monitor if they really have to. Why on earth would I want to waste paid-for server resources on a GUI I'll never use? On that once in a blue moon that the datacenter techs need to access it, they know how to drive a commandline too.
As far as I'm concerned, a server needs a GUI like Bill Gates needs to find a $10 bill he forgot he had, and furthermore it should be possible to strip it down to the absolute bare minimum install required to perform it's duties.
"If you were a student it would be a $0 entry free for microsofts software also now"
Utterly irrelevant, unless you plan to remain a student forever.
https://downloads.channel8.msdn.com/Products.aspx
Previous poster said it's $0 for students.
Okay, so student d/l this stuff, writes a student-grade project, then goes out to the brave corporate world to do good. You get him in to support your already-written stuff because there's no way in hell you're trusting a frosh with new development and he opens his mouth, drools, and says "wow, that stuff is old, I don't know how to use that!", then starts telling *you* how all that old crap should be rewritten because MS PR told him gadget X is just the thing to solve this problem. The problem you solved two years ago.
Point being: if you can get the kids trained only on the latest product that your corporate clients won't adopt, then maybe your corporate clients will be forced to buy another $100k of your product (and another $2 mil of labor to rewrite it).
Meanwhile, LAMP costs, how much, in a real project again?
Paul: If you don't want a UI and want an absolutely stripped down OS installation specifically to run dedicated functions (or to host "functional" instances in VPCs), then ServerCore is your friend.
But if you do want a UI, you can (as I do) access my server machine's full complement of management tools, apps, etc. from anywhere in the world using RemoteDesktop which works astonishingly well ... even over low-bandwidth links.
And if I don't want to use Remote DEsktops, most serious software has client-side management tools that can administer remote servers.
And if I want, I can just administer via the command line or better still, Powershell.
Professional hosting services (and Google) use LAMP because (1) low entry cost; (2) stability; (3) security; and (4) Open Source means the publisher can't hide a back door (like, oh, I dunno... WGA?) in the executables and lie about it.
If you want to work for someone else and do code, sure, you'll get paid more for Java and .NET - and you'll work 60-80 hour weeks for the same *per hour* wages a 19-year-old kid gets for running a LAMP server.
I'm ex-Intel (former Build Engineer for Network Products Division). I've seen it happen all too often.
"most serious software has client-side management tools that can administer remote servers."
Absolutely true. And Linux excels at this, having been designed that way from the ground up, rather than having had to have the GUI ripped off and the command-line tools tacked on as an afterthought.
Linux - crud
Apache - bloated
MySQL - toy
PHP - dumb
and I've been doing it pro since PHP stood for Personal Home Page
I got out of IIS because of the MSDN treadmill and the tendency to change the API when you install an SP to get rid of other OS vulnerabilities - I got burned by automatic database connection pooling disappearing and my clients phoning me up when they ran out of connections when they got enough clients such that they weren't released quick enough from timing out after 30mins, took me ages to work out what was happening!
Never go back, I said to myself then, thank goodness.
If you *must* use Linux & PHP do yourself a favour and go for Linux - Lighthttpd - Postgresql - PHP
Microsoft's business model requires them to be different, not better, so instead of spending their efforts producing stuff that works better than the competitions they product a blizzard of oddball and often half-working products. They could get away with this while the alternatives were either non-existent or too eclectic for most users but now we have these robust, well understood and well supported alternatives Microsoft's stuff is starting to look really weird. Their only recourse is to deliberately make things that don't interoperate which only serves to drive them further into a corner.
There are so many established technologies in the LAMP group that there's just no need for something radically different unless its really different, not just weird. (And the reason why the weird stuff commands higher salaries isn't because its better -- ever worked with Token Ring networking?)
Brick Tamland: I love... carpet.
[pause]
Brick Tamland: I love... desk.
Ron Burgundy: Brick, are you just looking at things in the office and saying that you love them?
Brick Tamland: I love LAMP.
Ron Burgundy: Do you really love the LAMP, or are you just saying it because you saw it?
Brick Tamland: I love LAMP. I love LAMP.
How many moving parts are there in LAMP? How easy/difficult is it to configure? To scale?
Oracle's answer (ducking the cans and bottles being thrown from those hearing "Oracle") is called XE with APEX.
Oracle eXpress Edition is a free Oracle database. Linux and Windows. mySQL can and never will be able to compare. And XE is very much upgradeable and scalable all the way up to a 100 node Real Application Cluster.
APEX - aka APlication EXpress. Think IDE that runs via web browser. Think point and click. Think wizzards. Think session state and the complex web stuff done for you. And for the savvy developer, there is a nice and juicy API to do most anything you can in PHP or any other server-side web programming environment.
Moving parts? One. XE. Has a built-in httpd servers called EPG (Extended Procedural Gateway). No need for Apache or IIS.
You install. You go clickety click and you start developing your web application. That easy.
And for those heavy duty web apps.. we are running them. Using APEX. On Oracle clusters. Even our Java developers are having too much fun in how easy it is to deploy enterprise web apps using this architecture, than to bother with Java and JBOSS.
<ducking an empty beer barrel>
Holy crap!
<grabbing coat>
The battle used to be between conservatives (mainframes), moderates (minicomputers like the HP 3000) and liberals (PCs), who were ridiculed by the first two groups as childish and naive.
Now, just as in politics, IT has turned 90 degrees so that the most visibly important split is between authoritarians (symbolized perfectly by MS and MISS/WISH) and libertarians (open source proponents, e.g., LAMP developers/deployers). In both worlds, "you're either for us or against us" and the One who crowed about being "a uniter, not a divider" until gaining Absolute Power has led to the most poisonous divide in recent history, risking their entire enterprise's future on actions that it can't rationally justify.
@Dave Lawless et al: The point of LAMP is that I can go to any vendor for any part. I can rip out any piece of my stack and replace it. Hitting some wall with Linux? Several BSDs and Open or closed Solaris give me options that simply don't exist in the Microsoft continuum. Have a great new idea for a business that requires a customized server-side database engine? Open source like MySQL lets *me* decide what IS is in my context. Have a skunkworks project that a ragtag team will build but which could scale up to illions of euros of revenue? I'd have to pay at least a few of those illions to Microsoft ust to get my idea off the ground, more illions to the regiments of 'support' people who keep things from falling apart as fast as they wold otherwise, and forego more illions in opportunity cost because my MS-based system is slow, late, defective and fails to deliver value to the customer. (How can it deliver more value than my competition to the customer, since the 'technology' used to build it doesn't deliver as much value to me as the stack my competitor uses delivers to him?)