Jump to content

PHP or ASP.NET ?


Hamp

Recommended Posts

Hey everyone,

 

I apologize for the subject because I know this is a broad / big debate.  I also apologize in advance for the length of this post. I have

spent about a month reading articles, researching, talking to friends, etc with mixed results.  This site looks awesome so I thought I'd try here as a last resort.

 

I've been working with xhtml / css and javascript for awhile now and I'm wanting to apply more funtionality to my sites. I'm currently freelancing, but I want to cover my arse so to speak regarding my skillset in case I have to work for the man again some day. :)

 

I frequently hear "learn .net so you can get a job".  Yet, I also hear of all the overhead, difficulties with .net.  I realize that their are more then likely several people here that are asp.net coders as well as PHP so I don't want to offend anyone.  But  I find that the ASP.NET community is not as friendly / cooperative as the open source community in general. In addition, the ASP.NET site itself is so friggin slow I seem to wast a lot of time there waiting for page loads. Again, just an observation.

 

My questions regarding a direction / technology began when I was trying to replace frames, tables and/or dynamic web templates with something else. The sites I work on are for the most part static but I'd like to also make a few dynamic with some server side functionality. Regarding the "template", I started with ASP.NET Master pages and although I realize there are solutions to caching, page refreshes, etc, it seems like it's an awful lot of work to make that happen and some stuff just can't be done.  For instance, due to the merging of .aspx pages and .master pages, "caching a master page" is not possible. But it's  it's also my understanding that when you go .net there is a lot of overhead that automatically comes with it even when you don't need it.

 

It's also my understanding that ASP.NET is really intended for big sites, (corporate, ecommerce, etc). I could be wrong, but that's what my impression is thus far.  Yet it seems that PHP as well as Ruby on Rails and other open source languages can be used for scripting as well as the big stuff if you need it. If that's true, it's very appealing.  But, lastly, like I said, I want to cover my arse for a job so from what I've heard, even though it seems I'd rather start with PHP that I should go .net so I can get a job easier if my biz should ever force that hand.

 

It would seem that a very strong argument regarding PHP would be that most of the big players out there pertaining to  XHTML, CSS, standards, web 2.0 etc don't have anything to do with .NET.  All of them seem to use PHP, Ruby on Rails or some other open source solution.  That's just another thing that confuses me. None of them are doing much with ASP.NET.

 

So, what is it I'm trying to figure out ?

 

"Templates":  ASP.NET master pages or PHP server side includes ?

"Language":  ASP.NET or PHP ? Is the job market for PHP just as good or close to .NET ?  Is PHP easier to learn ?  If I learn PHP will I be able to pickup .NET easily if I have to ? Is it true that PHP can be used for the simple smaller stuff without the overhead yet for the big database driven stuff as well ?

 

I know a lot of you are very busy, and I apologize again for the length of this post, but I really have done my homework and am having no luck.  So I hope some of you have or can find some time to help me out and provide your thoughts / input.

I think my wife is tired of hearing me bitch about the confusion.  :)

 

Hope you can help.

 

Thanks

 

 

 

 

 

 

 

 

 

Link to comment
Share on other sites

Well, I pretty much agree with what you have said. Here's my recap:

 

PHP is much more ubiquitous than .Net, in part because PHP is more common for people with no formal programming experience. It is used for many, many small dynamic sites. Because there are a lot of "self taught" coders in PHP is why the community is more friendly.

 

ASP is the dominant player when it comes to corporate level web-based applications. Companies tend to use .Net & ASP vs. open source technologies beause it costs money. That may sound weird, but open-source applications along with being free have no support. With a for-profit application there is support and contracts involved that the company needs in order to protect itself.

 

So, if you are wanting to know which technology to go with in case you need to go back to working for "the man", then ASP would be my choice if you want to work for a large company - it also pays better. Smaller companies would probably tend more towards open source than the larger companies.

 

But, I also believe that most companies looking for an ASP developer look for one with a formal background (e.g. a programming degree), whereas companies looking for a PHP developer are not as strict on that.

Link to comment
Share on other sites

From what I've read, transitioning between the two languages isn't that difficult. So if you learn ASP, PHP shouldn't be too big of a deal if you ever decided to switch from one to the other.

 

I'm sure some people who know both could chime in on for either side of the argument.

Link to comment
Share on other sites

If you are skilled them no one can prevent you from getting jobs/work whether you are using PHP or .Net. There are thousands of posts with same topics of which language is best and there is no end to these discussions every party argues for his language and against the other. So forget about the discussion of which one is better.

 

Regarding easier to use, i believe if you know a programming language and have basis ideas then you can switch to any language anytime just need to know the new Syntax and API.

 

FYI. Yahoo is using PHP-MySQL combination if you are talking about PHP being used on small websites only.

Link to comment
Share on other sites

Thanks to mjdamato and JBS103.  I appreciate you reading the post in it's entirety and responding accordingly.  Thanks for your thoughts and input.  That helps a bunch.

 

It sounds like I could at least start with PHP, get proficient and then learn ASP.NET if needed.  I want to clarify to others that this thread is not about which is better, it's just which is better for me at this point.  I hope my initial post provides that clarity.

 

So, if PHP makes sense to me at this stage (not that it was your suggestion), the oustanding item that I'm interested in pertains to server side includes instead of ASP.NET master pages to create "templates".

 

Can you please suggest / provide a good resource ?

 

Thanks again.

Link to comment
Share on other sites

Well honestly as a PHP developer for a long time I enjoy working on PHP. Sometimes I hate it because the language is not as functional as the .net framework but sometimes I admire it because it's very easy to do something.

 

The thing is MS is the dominent company in software, Most of the companies uses windows environement for their desktop! So if you want to get a job learn .Net. I do not say just ASP.Net, I say .Net. The thing is ASP.Net is not a language anyway!! It's just a common name for MS based web applications. You can use C#,VB.Net or Visual C++ to write and ASP.Net site! An also by learning .Net you may be able to write desktop applications too (which I believe are mostly useless...)

 

Another thing is the Visual Studio. Even with it's bugs and other things it's the best IDE I have ever used! If PHP had such an IDE, with it's easy syntax everyone would be able to write simple dynamic sites.

 

Do not get me wrong, I enjoy writing php codes, even I think that JSP is a far more better language then both ASP.Net and PHP, I still use PHP.

 

I agree that if you get the idea on how to write a program, it doesnt matter which language you use. You may use PHP if you come from C++ legacy or JSP if you are familiar with Java or ASP.Net if you "like" MS.

 

For the support, most of the open source communities give you a great support but MS side is good to. Check the msdn.microsoft.com, it's forums are pretty good at support about all of the MS products, they are quite fast too.

 

What I'm trying to say is, try all of them. Not just ASP.Net or PHP but also ColdFusion and JSP, all of them are doing mostly the same things and then use the one which suits you best. If you get the idea about programming, it's no matter which language you use, you will absolutely get a job!,

 

Just Calling to Zend take a good exampla of Sun Creator and Visual Studio 2005!!!!!!!!!!! :)

Link to comment
Share on other sites

A lot of corporations prefer ASP for one major reason. Microsoft. ASP has the backing of Microsoft and technical support.

 

I have been turned down for jobs because I actually rather hate ASP, for reasons of coding structure and other various things. The company's response to my question "Why ASP?" was that "ASP has technical support." Which really doesn't mean anything because their not going to program it for you.

 

Then again, this question is going to most likely get biased results, as it was posted on a PHP board.

 

For non-biased results, try posting on a general computer programming board.

Link to comment
Share on other sites

Well I for one first learned SHTML then ASP then moved into PHP.  Their all pretty much the same thing in terms of learning.  If you learn ASP you will be able to do PHP easy without months of learning.

 

I've been constantly seeing ASP server being redone in PHP to remove license overheads and to remove something the orginal guy recommended and made a fortune on to being not really what that company needs to provide their online presence.

 

However in turn being Certified in ASP has a paycheck bonus yet this bonus too is also disapearing thru time.  Companies that say they need ASP to cover their butts in something goes wrong...  Well simple fact.  If a server crashes due to hardware then its going to happen no matter what platform you are using.  Tape Back-Up - DVD-9 Backup's are the "ONLY" thing that is going to Save Your Butt!  MS Platform PHP Base HTTP, MS Platform IIS Base HTTP, Linux Platform, Unix Platfor, Mac Platform, etc it don't matter.. If you use Live back-up or have a RAID Mirrored Setup then your Good as your going to get.  Reliability has so many factors in it that you need to look at it by Platform too.. If the company your going to work for is a dedicated MS freak then you bet your butt their going to need more servers to do the job then you would if they were Linux.

 

I could take Identical Systems side by side one with MS one with Linux and have them both perform the same services such as HTTP, HTTPS, FTP, SMTP, POP3, File Serv (Simba) and Virus Server (not as much as a threat to Linux but instread I would run a IDS) and the Linux server will out perform the MS one any day handling all those tasks.

 

The business world see's this too and see's the benifits of the lower costs needed to maintain a online presence pre hear, per upgrade, per man power and per crash.. MS rakes in so much money each year on Licenses and Upgrades its insane.  Even now with their release of Vista being $160 for the Upgrade! for Home Plus version of it?  Holy Cow!

 

Just my thougts on this.

Link to comment
Share on other sites

Well PHP definitely has a lower cost of entry. Both for the company and the person learning it. Visual Studio.Net requires a decent chunk of change to get started. So there are more newbies learning PHP than ASP.

 

Which ends up giving PHP an amateurish rep. But its really a rock solid performer that allows a skilled programmer to make web apps do pretty much anything you can imagine. (This week I wrote an app that connects to an old VMS terminal thru telnet, runs reports, downloads them, and imports the data into a database.)

 

I pretty much hate Microsoft. So in 2000 I threw out my MCSE tie tack, stopped using ASP and switched to open source. I've never looked back.

 

As for the job market, using Microsoft vs open source is pretty much directly proportional to mass and inertia. If you want to be one of 100 programmers at a state agency or huge company, absolutely learn ASP.

Link to comment
Share on other sites

A lot of corporations prefer ASP for one major reason. Microsoft. ASP has the backing of Microsoft and technical support.

 

I have been turned down for jobs because I actually rather hate ASP, for reasons of coding structure and other various things. The company's response to my question "Why ASP?" was that "ASP has technical support." Which really doesn't mean anything because their not going to program it for you.

 

No, but they do support it. When you are talking about a medium to large company whose entire business depends upon it's servers and IT infrastructure it just makes sense. And, I'm not talking abut the kind of support where you call the general toll-free number and wait on hold. I'm talking 24/7 support directly to top engineers. I manage a release team for a software company that provides desktop and web based applications. I have been involved in overnight deployments where we have had to teleconference in MS engineers to get issues resolved ASAP. I have no idea what the yearly contract or per issue costs are, but I'm sure it costs a bundle. But, our entire business could be jeopardized if we could not restore service in a timely manner.

Link to comment
Share on other sites

I must but in here sorry but must.

 

i went to collage and learnt asp,javascript,html,c++,html,and some css i then went to privert collage and done the mcse all this to get a good job but none off them realy helped.

 

why?

 

javascript.

javascript ended up to be a joke it only let me show inpressive text and menu's but only if the user has javascript enabled on there browser that was no good.

 

html

html was good fun and use it today and well nice bit of kit.

 

asp.

asp was really good at collage but when i went for job's there all contact's so much you spend more time understanding them before programming in the lanuage but the support was grate and the oop was better then php.

 

c++

well i got into c++ as a friend from the collage said it was the way foward but i found it crap what a wast of time but i done it.

 

css.

well what can i say loved it i learn the most off css at home due to the teacher not turning up but was well worth it good bit of kit.

 

 

php.

 

php is the beast and the most powerfull programming lanuage i have ever used and what a buzz i would never go back to any of the above even theo they all took me 6 years of my life away.

 

php is the way foward to any programmer and beat's all the programming exsp i have ever had it so flexable and so funfull to learn and such a money grabbing programming tool to no, i have earnt more money in the php world then any of all the above will never ever change my programming skills ever agin i love it.

 

ps. the mcse was good fun but microsoft are always upgradding the exam so sod that 50 pound all the time forget it.

 

there is no better operating system then linux or unix only my opinion.

 

all the best redarrow.

Link to comment
Share on other sites

I must but in here sorry but must.

 

i went to collage and learnt asp,javascript,html,c++,html,and some css i then went to privert collage and done the mcse all this to get a good job but none off them realy helped.

 

why?

 

javascript.

javascript ended up to be a joke it only let me show inpressive text and menu's but only if the user has javascript enabled on there browser that was no good.

 

html

html was good fun and use it today and well nice bit of kit.

 

asp.

asp was really good at collage but when i went for job's there all contact's so much you spend more time understanding them before programming in the lanuage but the support was grate and the oop was better then php.

 

c++

well i got into c++ as a friend from the collage said it was the way foward but i found it crap what a wast of time but i done it.

 

css.

well what can i say loved it i learn the most off css at home due to the teacher not turning up but was well worth it good bit of kit.

 

 

php.

 

php is the beast and the most powerfull programming lanuage i have ever used and what a buzz i would never go back to any of the above even theo they all took me 6 years of my life away.

 

php is the way foward to any programmer and beat's all the programming exsp i have ever had it so flexable and so funfull to learn and such a money grabbing programming tool to no, i have earnt more money in the php world then any of all the above will never ever change my programming skills ever agin i love it.

 

ps. the mcse was good fun but microsoft are always upgradding the exam so sod that 50 pound all the time forget it.

 

there is no better operating system then linux or unix only my opinion.

 

all the best redarrow.

Did they teach English at any of the colleges you attended?

Link to comment
Share on other sites

I went from C# to PHP

 

C# is light years ahead of PHP

 

There is stuff you can do in C# that is just impossible in PHP. And I miss some of those things  :(  anonymous methods, iterators, name spaces. *sigh* They sound complex and ugly, but they make code so simple and elegant. In comparison PHP is like pushing a hand cart when everyone else is driving cars. It takes a while to learn to drive, but when you do, put the stereo on wind down the window and cruse.

 

monk.e.boy

Link to comment
Share on other sites

Did they teach English at any of the colleges you attended?

 

I've read sites where words can be misspelled and you still read it like it wasn't. Well... I couldn't do that with the above post you are referring to. It said  "privert" and I read pervert. Maybe that just means I'm bad  ;)

 

No offense intended redarrow, but the line on asp, I couldn't understand it at all.

Link to comment
Share on other sites

He is "English".

 

LOL. I know. I looked at his profile thinking he's going to be from some 3rd world country where good English teachers are hard to come by... and it said London???

 

Totally shatters my conception of English peeps being prim and proper.

Link to comment
Share on other sites

I'm a self-taught programmer. I started years ago and have gone through many, many languages (and computers) from silly Logo to the evil assembler (and from Spectrum 48K to the Amiga and PC). I managed to teach myself the basics of PHP and MySQL at the same time in one week. I love PHP and a few months ago after working at the city hospital in the IT department I decided to start learning ASP.NET.

 

I installed some silly sized software on my machine which literally took control of it. I was lent a massive (but user friendly) book on ASP.NET and after a while I just had to give in, uninstall everything and went back to devoting all my web time to PHP instead.

 

So, through personal experience with PHP it's very simple to start using, sample scripts and very detailed instructions on how to use functions (aka commands) in PHP are brilliant (php.net is my first port of call for help), forums like here offer excellent help and above all it's free.

 

From my dabble trying to get into ASP.NET I found it very large and complex, tricky to get decent help. I might not have given it enough time but through my past programming experience my instinct took over and told me to give it up. I'm 33 and don't really want a job in web design so that might also have helped persuade me. What helped made me look at ASP.NET apart from seeing the hospital programmers use it and see what they were making (with ease) "wow'd" me like built-in functions for calendars and such but then again, there are loads of pre-written scripts out there that are free written using Javascript so I'm not missing out on much.

 

I think what has really helped me pick up PHP (and MySQL) so quickly was knowing Pascal and assembler. Pascal taught me structured programming and assembler taught me the "nitty gritty" stuff like how negative numbers are stored and a whole lot more, stuff that I find is lacking looking at other people's code. Maybe I'm starting to digress a little so I'll stop now.

 

Hope this helps ;)

Link to comment
Share on other sites

Hi Hamp!

 

The other guys have said mostly what needs to be said, so I just want to tell you one thing; remember what you started with! Wether php or asp etc, it is markup you essentially are producing :-) A lot of programmers in this buissness really don't get that...

 

HTML->SHTML->PERLHTML->PHP4HTML->PHP5HTML->PHP4.5HTML :-)

Link to comment
Share on other sites

artacus  i am a blind programmer so i hit the keybord keys wrongly sorry ok.

 

Don't apologize. Its just that you didn't mesh with my experiences with all other Englishmen. You know I've often wondered what I'd do (professionally) if I ever lost my vision.

Link to comment
Share on other sites

redarrow, if you are blind, how do you read the posts? I assume you use a screen reader. There's got to be a way for you to preview what you're writing, so that you can actually communicate with other people. If you are using a screen reader, can you actually understand anything that comes from your post?

 

I am not trying to be mean in any way, but your posts rarely make sense, so it makes it harder for people to answer your questions, or in this case, read your opinion. We all make typing mistakes all the time, but when you don't proofread (or whatever the equivalent would be), you can't communicate...

 

Again, not being mean. Just offering advice...

Link to comment
Share on other sites

This will be slightly off topic at first.  I can't speak for large companies, but if the small company I work for is any indication, the people who make decisions about what to do next are business people.  They aren't technically inclined, they don't care what technology is used, they don't care about a great deal of things that us regular old programmers care about.  Their only concern is does it work and can I sell it?

 

So for an individual like that to ask you if the new website should be done in PHP or ASP, they'll think PHP is great at first.  It's free, it's fast, it can (functionally speaking) do just about anything ASP can do.  Then you tell them if there's a major problem there's no technical support.  There could be potential downtime while the problem is fixed.  That downtime could be more than one day.  Once you say that, they shit their pants.  Any amount of downtime directly translates into loss of revenue in their brain and having no technical support directly translates into longer downtime, even if that's not necessarily true.

 

I don't think that above scenario is always the case, but I do believe it is often the case.

 

In any case, there are a great many concepts an individual has to understand firmly to be an effective programmer: computer architecture, abstract data types, algorithm efficiency, programming methodologies, etc.  In addition, to be a good web developer you need to have a good understanding of: server side scripting, client side scripting, database design and access, HTML / XHTML / XML, CSS, regular expressions, etc.  It's a big list.

 

So to get this back on topic, pick one to excel in, familiarize yourself with the other.  I personally would pick PHP to excel in since I don't like tying myself to a technology based on a specific vendor / company because then you're at their mercy.  And as everyone stated, if you're familiar with programming concepts in general, moving from one language to another is pretty damn easy.

Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.