PHP 5.0 Goes For Microsoft's ASP-dot-Net 478
Dozix007 writes "Uberhacker.Com reports : Zend Technologies quietly announced last week the final release of the open source PHP version 5. An interesting article reports the different strengths and weaknesses of ASP vs. PHP, and it becomes quite clear that with the release of PHP5, Zend has taken a shot at ASP's heart. The differences from PHP4 to 5 has created a clear advantage for the new preprocessor over Microsoft's proprietery ASP."
How about we post to a MS whitepaper instead? (Score:5, Insightful)
We might as well Get the Facts on Windows and Linux [microsoft.com].
Ok, here is where I object: (Score:5, Insightful)
So...I have to pay for features that I can get from the competitor for free, I have to pay (my employees) to insure that I am paying what I need to (for a product wich offers comparable services as the competitor) and I get to continually be pressed to upgrade and give them more money in licensing fees.
[sarcasm]Gee whiz, mister; where do I sign up?[/sarcasm]
It's Visual Studio, not the languages! (Score:5, Insightful)
I really dislike ASP and Visual Studio, but PHBs tend to like pointly clicky interfaces. It makes them feel like if they have to fire the whole development staff, they can take over coding; after all, it is just a GUI.
Visual Studio is Microsoft's real killer app. That is what Monkey Boy was dancing around screaming developers about. Most developers are mediocre, and if you give them a handholding tool that keeps them from doing anything too stupid (or too great), they will love you for giving them some job security.
Alright PHP guys, can you give us that? Can you save us from having to think for ourselves? I may have filled my last remaining unallocated brain cells reading the man page for gcc.
This says it all (Score:5, Insightful)
Yup, I expected a completely unbiased article after reading this in the second paragraph..
Sorry no (Score:3, Insightful)
Re:It's Visual Studio, not the languages! (Score:5, Insightful)
I code ASP (always) and ASP.NET (sometimes) in textpad - but the PHB's love the VS interface and the weaker developers have no idea how to code without it.
Similarly, SQL Server has grown to where it is not because it performs better, but because developers and DBA's have a built-in interface in Enterprise Manager and i-SQL (now query analyzer). Oracle never understood the need to release a complete product. Managing an Oracle database - shoot even coding in one - is like night and day compared to SQL Server.
Re:It's Visual Studio, not the languages! (Score:3, Insightful)
am I the only one who thinks that (Score:2, Insightful)
Re:Story Time (Score:5, Insightful)
Than why do you bring it up?
Re:It's Visual Studio, not the languages! (Score:5, Insightful)
Especially in VS.NET, almost everything is in a human readable (editable!) source file or XML document, they warn you not to change stuff, but that's just a CYA for tech support. People can, and do, change VS generated code all the time, and since they've made it pretty easy to do, it works almost all of the time.
The open source world needs to realize that MS has them absolutely beat in the form of developer tools. Just because I know how to code in x86 assembly and twiddle bits to make arcance hardware work (been there, done that), doesn't mean I don't REALLY enjoy intellisense and auto-generated XML documentation.
"Real" programmers like good developer tools, too. That's one reason why I like Mono. I get to code in VS/SharpDevelop and copy the dlls over to Linux to run it. I will continue to do so until someone makes an IDE on Linux that compares to Visual Studio (and no, Eclipse is not that IDE, especially for non-Java projects). Who knows, maybe I'll even develop it, if I can find the time that is
MS vendor lock-in bad, Oracle lock-in good (Score:4, Insightful)
From the article:
I've heard this same song from a few developers who work at Oracle shops - and I could not disagree more! Database independence in your code should absolutely be a goal! We can encapsulate our database-specific features into stored procedures or functions without having to pollute our application code with them.
Re:It's Visual Studio, not the languages! (Score:3, Insightful)
If you want to build an IDE for PHP, you could do worse than build something on top of Eclipse [eclipse.org]. It's not just a Java tool, it's been done for Python [ibm.com], and the plugin architecture is pretty sweet.
Microsoft's default .NET programming language (Score:5, Insightful)
While PHP is nice... (Score:2, Insightful)
Performance Claims (Score:5, Insightful)
PHP vs. ASP (Score:5, Insightful)
ASP runs on Windows and really only runs well with IIS. PHP runs on pretty much any platform you would ever want to run it on (and plenty of platforms you wouldn't) and works just as well with any webserver I've ever considered using.
So while there may be small areas where ASP excels or where PHP is deficient, I think that those points are largely insignificant when you realize the platform limitations of ASP. Oddly enough though, I'm not sure I've ever heard anyone cite this as an advantage of PHP, whereas I come across an article comparing esoteric differences every few weeks.
FUD? (Score:5, Insightful)
Also seems like everyone is complaining about ASP. ASP and ASP.NET are two completely different beasts. ASP was buggy and a pain in the rear to work with. ASP.NET, however, was amazingly simple to use with an amazing debugger (VS.NET). Please keep on the subject and leave out ASP.
Re:Ok, here is where I object: (Score:5, Insightful)
Last time I ALSO checked, though LEADTools (an image manipulation library) was really expensive. Of course it does a lot (LOT) more stuff than the built in libraries. Oh, and keep in mind that this is from a 3rd party vendor, not MS as the article would fud you into believing.
I guess the fact that a very competent libary is included and that MS is letting 3rd party tool vendors make money is a bad thing today. Of course if this was an article about MS buying out an image manipulation library company and then giving it away for free would be bad because it stifles competetion and puts people out of work. Funny how putting people out of work is only bad when MS does it. If a bunch of college kids do it in the name of 'free software' it's just peachy.
Re:It's Visual Studio, not the languages! (Score:4, Insightful)
I have written personal sites, shopping carts, and some basic management software, and I have never needed to go beyond that manual for help.
I'm willing to learn ASP in my free time (can never hurt to have things on the resume) but is there a comparable site? Or will I have to go back to swimming through the various how-to's on computer sites?
Visual Studio .Net (Score:3, Insightful)
Until any of these other solutions can offer me an IDE as advanced as Visual Studio
Evidence? (Score:3, Insightful)
Also, he mentions (a few times) about IIS insecurities (at posts a link to bugtraq), however I'm unable to check since the site seems to be crawling. How does PHP5+Apache's security record compare to ASP.NET+IIS6?
-- Cyrus (http://blogs.msdn.com/cyrusn [msdn.com])
Re:After reading the FA ... (Score:5, Insightful)
Yeah, according to Oracle, Oracle+PHP5 (and oracle specific application development) is the bomb-diggity, ASP.Net and SQL Server are teh suck. I'm sure MSFT would tell you the opposite.
This "article" has as much credibility as the MS-published Windows v. Linux TCO studies.
But - of course - marketing horseshit is Gospel here at slashdot, just so long as it says MS sucks.
PHP drawback? (Score:4, Insightful)
How is this a drawback at all?
In my opinion, it prevents programmers from perhaps accidentally naming their own functions the same as a built-in, which is a good thing since there are so many, its useful to know as many as possible. However "annoying" this maybe to some people, its actually a good idea.
Re:Story Time (Score:5, Insightful)
I worked as the web admin to my student association when I was in college, and a job opening came up to redesign the programmers site, bringing online a bunch of new tools for students of that department. This was basically a summer job, and they had interviews where myself and four other students made it through the selection process to the final interview.
[...]
Did they ever get screwed. The guy who they hired was a Korean exchange student, who I happen to think was a great choice for the job, but the problems started cropping up with the ASP code. It was buggy as hell. The system took all summer to code out the object oriented code, and it was never opened because it was never quite good enough.
[...]
In my opinion, this was not the fault of the guy they hired at all, it's just that ASP takes a lot more time to get together than PHP. You can "know what you're doing" all you want, but when your boss wants you to make changes to core behaviours, there is nothing faster or more efficient than PHP for handling anything web related. It's just easier to whip together any site with any behaviour and get it working and stable.
Why isn't there a "-1, Jumping to conclusions" moderation option on Slashdot? Let's reiterate. This was a student body, hiring a student for the summer to hack some website, alone I might add. And the fact that it all went miserably wrong is supposed to imply that the Microsoft ASP platform is fundamentally flawed and everything would have magically worked with PHP?
Re:PHP vs. ASP (Score:2, Insightful)
Granted, its not the officially supported path, but MS wouldn't support anything other than IIS anyway.
Re:Ok, here is where I object: (Score:5, Insightful)
When MS does it, the tools they use to put people out of work with are hidden behind a wall of EULAs, patents and lawyers. When "college kids" (or professionals working in their spare time, or professionals working for a company such as IBM) do it, they release the product out into the community, where other people who are working are free to pick up on the source and either charge to customise it, or charge for support it. Of course, if that 'free software' is under the GNU License, it's perfectly ok to sell it [gnu.org].
So, to summarise; when MS puts people out of work with their products, only they benefit. When "free software" does it, the entire computing community benefits, as does the economy (eg, people working for Sun, IBM, Novell who work on OSS projects).
PHP 5.0 (Score:3, Insightful)
Imagine PHP based C#, VB.NET, etc.
Incomplete review. (Score:3, Insightful)
The review states that ASP.NET only works on
Windows, which is incorrect. Mono brings ASP.NET
to Linux, MacOS, BSD, HP-UX, Solaris and many more.
Mono's ASP.NET can be hosted in Apache (through the
mod_mono module) or as a standalone server (xsp).
The platform price is also wrong (by extension),
Mono's ASP.NET runs on pretty much anything.
The source code to Mono's ASP.NET is also available.
And I have to say, am puzzled by the "Speed"
column. If ASP.NET has something going for it
in terms of dynamic pages is speed: they have
all kinds of tricks:
* page generation code is running at native speed.
* caching is provided at the control level,
page level, database connection level.
And of course, there is no evidence to back any
of the performance claims.
I love PHP as much as the next guy, but that review
was done by someone that did not understand ASP.NET.
The code they posted to compare PHP vs ASP.NET
talking to Oracle is uneven, as the rest of the
article: in one case it shows data being rendered
from the database, and even has a connection string.
The other example only shows a class that wraps
reading and writing, but does no actual job.
A bit deceiving.
Re:After reading the FA ... (Score:2, Insightful)
ASP.NET is a very different way of programming a web application that has significant advantages over many of the other platforms that exist. A ton of the work and overhead that goes into writing validation functions and other "plumbing" code in other web application frameworks is already done in ASP.NET. Also, the fact that form controls are created by objects means that you can easily create standardized controls that inherit from the built in WebForm objects and are customized for your application. Basically with ASP.NET it becomes much easier to encapsulate and reuse the code that you write for web presentation, which is certainly a good thing.
Having not worked much in PHP, I cannot say anything bad about it and have heard very good things about working in it. That being said, it just seems like criticizing ASP.NET for being slow due to its heavier object model is missing the whole point.
Of course I am not that surprised since is article is written by Oracle, and they spend significant time in it going on about how DB Vender Lock-in is a good thing. I think that shows where this authors motivations lie.
Re:Story Time (Score:5, Insightful)
It sounds to me like they made a poor hiring choice, not a poor choice of technology. If you'd given them a PHP+MySQL solution, it might have worked well by itself, but how would it have fit in to the overall picture? How much extra would it have cost them in maintenance and training for their IT department supporting a new or different/additional platform?
Re:Ok, here is where I object: (Score:5, Insightful)
Sure, but I can pay more for a developer when I'm saving money in license fees.
Re:It looks good (Score:5, Insightful)
Are you saying that you are willing to dish out $$ for an MS product, but not for some other company's product?
Re:Ok, here is where I object: (Score:3, Insightful)
That's all a matter of perspective I suppose. So I only need one license per server for ASP.NET and one license per server for any add-on components I want to use. So in a year I want to add another server, I have to upgrade both to get the same version of ASP.NET. A few months after I want to upgrade a add-on component, I have to upgrade ASP.NET and any other add-on compnents I have licenses for.
Licensing may not seem like a big deal, but it can quickly spiral out of control. Personally I have grown to HATE license agreements and will not purchase a product if an OSS is available.
Re:Ok, here is where I object: (Score:3, Insightful)
Re:Ok, here is where I object: (Score:5, Insightful)
Quantity of resumes shouldn't be your top concern.
One manager I know looks for BOTH Python _AND_ C# skills of his developers because he says this pre-qualifies candidates for people with enough of an interest in computer science to understand recent technologies.
but an ASP/ASP.net dude, you're gonna get a boatful.
Just because I can find lots of people with McDonalds experience, doesn't mean my restaraunt should specialize in fries and burgers.
Re:Story Time (Score:3, Insightful)
The guy who they hired was a Korean exchange student, who I happen to think was a great choice for the job, but the problems started cropping up with the ASP code. It was buggy as hell.
LOL! How much more rope do you want to throw us to hang you with buddy? Did you even read your own post? Uhhh, he was a great programmer but the problems were in the "ASP code". And who wrote that ASP code? pffff. Sounds like you're annoyed because you didn't get the job.
And more to the point, which morons modded this +5? Perhaps Slashcode should be changed to hide slashdot IDs as a low ID obviously dazzles people into not reading the post and just robotically modding it up. Parent post is complete hogwash.
Re:I don't trust Zend. (Score:3, Insightful)
Well heaven forbid if a company is actually trying to make money.
Total hearsay FUD (Score:5, Insightful)
It is actually quite sad to see such superficial attempts to justify an open-source product merely on the "merits" of not being produced by Microsoft. I mean, using criteria like "strong", "weak", "$$" is not what I would consider professional. I good way to compare products actually would be to get the experts to implement a relatively real-life project (like the famous Pet Store) in both languages and then compare the development time, speed, code metrics, scalability, and potential for extensions. That would be a true comparison, not the "metrics" used in the article.
Now back to personal preferences. Being a UNIX programmer with about 16 years of experience, I can assure you ASP.NET blows any other Web framework out of the water. Yes, it is that good. You get a very nice and consistent object model with full .NET power behind it. JSP and servlets shouldn't bother either as all HTML is generated transparently - in many cases you don't have to write a single line in HTML! As a result, you write less code, it is easier to maintain, with fewer opportunities for bugs or security holes. All are considered best practices in my book. I'd love to see PHP mature to the ASP.NET level but it is simply not there yet and even the attempts of PHP 5 to tackle these problems is a step in right direction, there is still a very long way to go.
Re:Grr (Score:2, Insightful)
> without paying a penny.
So you plan on trying to run ASP.NET on linux then? If you run your web server on Winodws it isn't free.
But Wait, Theres more... (Score:3, Insightful)
Re:It's Visual Studio, not the languages! (Score:2, Insightful)
Search works sometimes, if you're lucky
no user comments
code samples are crappy, and who wants to download sample code?
Re:Story Time (Score:2, Insightful)
If you feel that even the mere mention of a person's race is automatically a subtle indication of racism, you either are really stuck in the tar pit of political correctness, or you have some deep insecurities yourself about the race issue.
Your nickname is "Saeed al-Sahaf." Is that a true reflection of your racial origins? If not, can you explain why your handle is not a racist reference, but the mention of a Korean's race is racist? I doubt you can.
Sorry, we're not going to tip-toe around on your racial eggshell playing field. Guess what? People have different colors of skin, come from different places, and speak different languages. How are we supposed to rejoice in our diversity if the mere mention of it is taboo?
Doesn't look like true OOP (Score:2, Insightful)
Re:PHP 5.0 Goes For Microsoft's ASP-dot-Net (Score:4, Insightful)
Re:I don't trust Zend. (Score:3, Insightful)
If Zend decides to do something stupid with PHP, it will simply be forked.
Zend has been around for quite a while. At least since PHP4 was released years ago, if I recall correctly. My guess is they are doing relatively well, and having a company that actually makes some money backing an open source project is a _good thing_ (tm).
It means for the most part that the project will be pushed ahead with customers in mind, and won't die off from lack of time by the developers, or head in a completely wrong direction due to the developers growing out of touch with reality.
There is no reason to treat every company as if they are the next Microsoft. Not every single company is evil by nature. We should be encouraging companies that actually find a way to make money off open source projects.
Most important difference not mentioned! (Score:5, Insightful)
ASP.NET (and the Java equivalent, JavaServer Faces) have a much different, (arguably) more sophisticated approach to web development. There is actually a pretty good story for UI/logic separation [4guysfromrolla.com], eventing [microsoft.com], and maintaining state [dotnetjohn.com]. You can have your HTML tags constituted into a mutable object graph before rendering (example [csharpfriends.com]).
The end result is a development style that lets one write web apps the same way one writes desktop GUI apps, and as a bonus you get far more compile time guarantees than before (even vis-a-vis compiled scripting languages like JSP). Whereas in most scripting languages, getting a dynamic <select> to default to the proper selection and remember its selection across page redraws takes an annoying kludge of code, it's trivial in ASP.NET.
You don't have to like the direction MS has taken with ASP.NET, but the fact that the author didn't even mention the fundamentally different programming model it offers vs. PHP says to me that he didn't bother doing much research into it.
Re:It's Visual Studio, not the languages! (Score:1, Insightful)
If you learned how to use it properly (hint: intellisense and context highlighting, along with the occasional to jump to context help). It's really nice to see the formal parameters of a function as I'm typing the arguments for invocation. Sure, I could memorize all that, but what's the point?
Your "old-schoolism" is tired--while you're trying to recall the type of the 5th argument to DirectorySearcher.Open, I'll be finishing up my project.
Re:Ok, here is where I object: (Score:4, Insightful)
Re:It's Visual Studio, not the languages! (Score:3, Insightful)
I believe that the VB-style property page GUI is a fad for quick & dirty development, but it won't extend well into larger systems. For example, try changing 1 property on 10 text boxes. You must click each text box, then click on the property page, scroll down to the proper value, click on it, highlight the existing contents, then change it. It's terribly inefficient.
The design of property pages doesn't allow for multiselect like most controls in other IDEs. The reliance on switching between mouse for navigation and keyboard for data entry is terrible. So the advanced coder goes to the HTML view to do a search and replace, but then finds another suite of problems. When you switch from the HTML view to CODE view (or vice-versa):
1) You lose undo history.
2) The entire HTML is reformatted.
- Much CSS is thrown out, units are changed
- Good HTML changes to IE-specific HTML
3) If any tags are not closed, the IDE deletes everything following the tag then closes it. This causes lots of problems when combined with #1.
Some of these issues can be fixed, but the propery page paradigm is intrinsic to Microsoft products.
Re:It's Visual Studio, not the languages! (Score:5, Insightful)
I agree that VS.NET is a great killer app. But I don't buy that it's only for PHB or weaker developers. The one thing great about it is increased productivity, where it takes care most of the mundane details where you can just focus on the problem itself. No matter how great a programmer you are, if you don't use an IDE to increase productivity, then you're just plain missing the point.
I don't for a moment believe that writing all your code using 'cat' means that you're better than everyone else.
Re:It's Visual Studio, not the languages! (Score:4, Insightful)
My biggest complaint about PHP is that there's no coherent structure for function names, or order of function arguments.
some functions are named like
verb_noun(input1, input2, input3, outputvar)
some return their output, some modify the variable sent to it..
others are named like
noun_verb(outputvar, input1, input2, input3)
seems like i always have to look up the arguments to virtually every function after i go a few weeks without coding anything
Re:Getting what you pay for (Score:4, Insightful)
1. We're talking ASP.NET, not ASP. Welcome to the conversation.
2. How does ASP give you nothing? Last time I checked the
3. It is VERY feasible to run ASP.NET on a totally free platform using Mono.
4. If you think ASP.NET is inferior than PHP then you know nothing about web development. They both have strengths & weaknesses, but ASP.NET is by no means inferior.
Someone MOD this FUD-believing sheep down please.
Re:It's Visual Studio, not the languages! (Score:1, Insightful)
Re:am I the only one who thinks that (Score:3, Insightful)
Re:This says it all (Score:4, Insightful)
The article side steps the most powerful aspects of ASP.NET.
1.) Component driven - All the power of OOP vs PHPs OOP which is just an after thought
2.) Event driven - Everyone who has used VB/Delphi/C++ Builder knows what a time saver this paradigm is.
3.) Browser abstraction
4.) Unified coding model. No more fiddling with half the code in JavaScript and half on whatever you use on server side.
5.) Complex, yet simple. ASP.NET does a LOT, yet is as easy as one can imagine. A RAD developer can pick the general application model up in a day. This is a sign of good engineering.
I have respect for PHP. I dumped classic ASP immediately after I came across PHP. PHP has it's advatanges but it is a simple and primitive framework by current technology standards. There is Java Server Faces which is open and will do everything ASP.NET can soon. But from what I know about Java programmers, they tend to complicate things unnecessarily applying every engineering principle EVERYWHERE. I tried Mono. It worked perfectly fine for everything I tried but I still feel a bit of uneasiness with XSP. I must give mod_mono a whirl.
Re:Story Time (Score:3, Insightful)
At this point, I am sure you are White American, because only White Americans feel the need to bring race into a question where race was never an issue.
Re:It's Visual Studio, not the languages! (Score:2, Insightful)
Re:I don't trust Zend. (Score:3, Insightful)
Who cares if Zend sells out? Well, the parent does but who else?
Re:This says it all (Score:2, Insightful)
2) Event driven architecture for a server side language is silly. That's why ASP.NET's is such a hack with the giant postback hidden form element and the entire viewstate being persisted. It makes debugging all kinds of fun. no thanks.
3) Browser abstraction only if you stick to using the server controls and having your page postback and refresh every time the user interacts with it. Again...no thanks.
4) No unified coding model, (again unless you want the refresh...) there's no magic here. you want client side code, you still have to write client side code. There's a few canned controls for you with client-side code...many of which are (suprise) not browser agnostic.
5) More like "complex yet complex."
As to "any RAD developer can use it...":
If I'm looking for a web developer, I generally don't hire a VB lackey. I hire a web developer. (And yes, it is fair for me to assume VB...it has over 90% of the RAD market.)
And I wouldn't be tearing on Java when you seem to be such a fan of it's MS rip-off. At least Java and PHP have a real developer community instead of a fake manufactured one that has grown up on proprietary software and hence won't share code or release anything to the community for the sake of the common good.
Licensing (Score:3, Insightful)
Now, this whole discussion misses a couple of extremely important points. These include:
1) An extremely vibrant open source community surrounding PHP. This has cost and licensing advantages in some areas, but cost and licensing disadvantages in other areas (for example, ensuring license compliance when distributing commercial software).
2) Mono is available on Linux too. And there is a vibrant community there. Mono is mostly licensed under the LGPL allowing people to link to it from proprietary apps. And there is a great community there too.
These licensing reasons are mostly bogus.
Re:Ok, here is where I object: (Score:3, Insightful)
I'm currently doing my masters in CS, and don't know Python or C#, however I like to think I have an interest in it