General discussion

  • Creator
    Topic
  • #2250160

    PHP or ASP.NET

    Locked

    by starrillo8 ·

    I am starting a new project to run though the web. It will be an extranet with an average of 100 transactions per day. It will be used by 10 users. In a few years the sponsor of the project hopes to integrate this application with others institutions, which diffent platforms. I am not sure if start the project using PHP or ASP.NET. I have no experience with them. One of my evaluation point is the hosting which is most common for PHP application with MYSQL. What development tool should I use?

All Comments

  • Author
    Replies
    • #3275793

      since one spec is different platforms

      by jaqui ·

      In reply to PHP or ASP.NET

      you have no real choice, php and a database engine that runs on more than windows.

      asp.net only works on windows systems.
      [ MS’s asp is a vbscript technology, so it’s useless unless you are on windows ]

      MySQL is the most common open source database engine, but there are several other open source options, such as sqllite, postgresql, or even use xml flat files as a database.

      but the requirement for platforms other than windows means asp.net is not an option in the long term.

      • #3275731

        Mono?

        by ed woychowsky ·

        In reply to since one spec is different platforms

        There is an open source version of .Net called Mono (www.monoproject.org), which will run on Linux. But, I have to agree with Jaqui, you have no real choice, use PHP and MySQL.

        Since both are open source there is really no cost to you. Also, you can download the book PHP 5 Power Programming (http://www.phptr.com/bookstore/product.asp?isbn=013147149X&rl=1#info4) as a PDF free of charge and your good to go.

        • #3275188

          re: ASP.NET-Mono

          by apotheon ·

          In reply to Mono?

          http://www.mono-project.com/ASP.NET

          [i]Mono’s ASP.NET implementations supports two kinds of applications:

          * Web Forms (Web Applications infrastructure).
          * Web Services (the SOAP-based RPC system).[/i]

          and:

          [i] [b]ASP.NET 2.0[/b]

          Work has started in some of the features of 2.x in Mono.[/i]

          (which means that 2.0 is barely supported at all by Mono at this time)

          Yeah, you’re both right: PHP/MySQL is the only “real” option out of those two. Of course, Apache with MySQL and mod_perl would be better, and Ruby on Rails might be even better than that (depending on the other project requirements).

        • #3276568

          I wasn’t

          by jaqui ·

          In reply to re: ASP.NET-Mono

          even trying to debate the virtues of scripting languge, only the fact that vbscript [ .net] isn’t worth using on linux because mono’s support isn’t anywhere near equal to the current .net framework.

          not to mention that mono is buggier than crap right now.
          I was looking at it for someone the other day who has an app in asp they want ported to linux server, and it is not a viable option yet at all.

        • #3218667

          ASP.NET does not use VBScript

          by m_a_r_k ·

          In reply to I wasn’t

          ASP uses VBScript or JavaScript. ASP.NET (note the .NET extension) supports any .NET-capable programming language, including C#, Managed C++, VB.NET, Perl.NET, etc.

        • #3218259

          true, but

          by jaqui ·

          In reply to ASP.NET does not use VBScript

          95% of asp.net scripts [b]are[/b] vbscript.
          and the .net framework itself is not usefull unless you are using a microsoft server, for the same reason as the vbscripted asp pages aren’t, the open source tools are not sufficient for using this non standard technology.

        • #3217470

          VBScript

          by ipashchuk ·

          In reply to true, but

          I’m not sure where you get this information from :-|. I agree that ASP uses VBScript (which is a subset of Visual Basic). It is true that ASP.Net is backward compatible with ASP, hence ASP code can run under ASP.Net. However, it is not right to say that backward compatibility is the reason most of ASP.Net code is VBScript.

        • #3217461

          Backward compatibility between ASP.NET and ASP

          by m_a_r_k ·

          In reply to true, but

          ASP.NET is not backward compatible with ASP. ASP.NET requires the .NET framework. VBScript can be used for ASP.NET (I think) but I don’t think any ASP.NET applications use it. All the ones I have seen use JavaScript. This is only for the client-side code. Server side code in ASP.NET requires a .NET compatible language like VB.NET or C#.

        • #3217453

          Backward Compatibility

          by ipashchuk ·

          In reply to true, but

          Mark,

          ASP.Net is backward compatible with ASP — the <% %> and <%= %> code blocks are still recognized. Yes, you would have to tweak the pages a little but it will work (I’m not sure why anyone would want to do this though). The framework also provides a whole Microsoft.VisualBasic namespace for the deprecated VB functions used in ASP (such as CStr, Mid, etc.).

        • #3217343

          Igor and Mark are right

          by onbliss ·

          In reply to true, but

          I too would like to see how you arrived at the 95% figure for asp.net. Like Igor and Mark have said, in ASP.Net the code is written in a .net language, and scripts are mostly used at the client side. I have just used JavaScript in the .net world.

    • #3275145

      PHP/MySQL variations

      by rick-businessdatasolutions ·

      In reply to PHP or ASP.NET

      I agree with all the replies to date. PHP and MySQL are the way to go.

      That being said, they are not immune to compatibility issues.

      I recently worked on a project on which I wanted to re-use most of the code I had written for a previous project. I ended up doing extensive revisions. The ISP for the more recent project was using an older version of PHP, was not using PEAR and only allowed one MySQL database user to be created. Because I had just assumed (wrongly) that everything that had worked on another client’s site would work on the new project, I ended up a week behind schedule. In my own defense, the new client upgraded their service to include database functionality while I was writing the code and I did not find out about the problem until I contacted their ISP’s tech support.

      Even though PHP and MySQL are almost universal, do your homework before writing any code or you may find that the code that works on your test network won’t work when uploaded to the client’s website.

      • #3274959

        absolutely

        by apotheon ·

        In reply to PHP/MySQL variations

        Choosing a more portable technology just means it’s possible to move it between platforms, not that you never have to do any work again. If you want your code to be portable, you have to write portable code, and if you want it to be portable without doing any extra work, you have to not only write portable code, but reinvent the wheel six times when creating it for the first time — and even then you might need to make some minor changes to get it to work on a different platform.

        On the other hand, a PHP/MySQL solution will work on almost every single webhost in the world, while an ASP.NET solution will usually require a Windows webserver setup.

    • #3275084

      Look at the costs

      by mfb ·

      In reply to PHP or ASP.NET

      Although you mention that this app will integrate with other platforms in the future it, by itself, does not have to run on them. Your client will be better served by going with ASP.NET since the developement time is one fraction of the time it would be with archaic PHP. I’ve done both and the differences are dramatic. ASP.NET 2.0 works with MySQL quite well.

      • #3275021

        Luxury of choice

        by rick-businessdatasolutions ·

        In reply to Look at the costs

        If you tell a prospective client that they will have to switch providers and/or move to a more expensive package in order to suit your preferences, you are not going to be doing much development in PHP, ASP.NET or any other environment.

        I love to do .NET development, but the bottom line is that many clients cannot afford it, hence the predominance of php sites.

        • #3275003

          Not so

          by mfb ·

          In reply to Luxury of choice

          Rick, most of my customers as small (less than 50 pc’s) the cost of going to a Win evvironment from what they have been using is generally less than 3 bucks a month. This is more than offest by the reduction in development time for anything more than a very trivial project.

        • #3274957

          $3?

          by apotheon ·

          In reply to Not so

          Nobody (with rare exception) ever buys webhosting a month at a time. Three bucks a month? Try $36 a year, minimum. Worse, I’ve never seen a quality ASP.NET webhost for less than $25 a month, but many LAMP webhosts provide excellent service for under $10 a month.

        • #3218470

          ASP.Net web hosting

          by ipashchuk ·

          In reply to $3?

          $3 ASP.Net web hosting seems unbelievable. There are a few hosts that offer inexpensive ASP.Net hosting: discountasp.net, godaddy.com and others. My personal web site is hosted on godaddy.com for about $6 a month (~$75 a year) — ASP.Net 2.0, SQL Server 2005, 500GB transfer, 5GB (I think) of storage.

        • #3218455

          You should have another look at the phrasing I used.

          by apotheon ·

          In reply to ASP.Net web hosting

          I referred specifically to “quality” webhosts. GoDaddy is not exactly a quality webhost. For instance, unless things have changed drastically since the last time I checked, GoDaddy still (even in this day and age) doesn’t provide encrypted file transfer and shell access (SSH or VPN) to webhosting clients. GoDaddy also has annoying restrictions on the type of content you’re allowed to host on its servers, and absolutely draconian and unethical policies for how to deal with alleged violations of those restrictions — policies that amount to moneymaking scams such as suspending an account, holding a domain name hostage, and demanding hundreds of dollars on the strength of a third-party complaint about spam even when any spam received by the complaining party might be a result of GoDaddy security shortfalls, rather than the client’s fault. Oh, yeah, and GoDaddy is pretty stingy about the technologies available with its hosting plans.

          edit: s/webhost/client/

        • #3217469

          Quality

          by ipashchuk ·

          In reply to You should have another look at the phrasing I used.

          Yes, I apologize. It was not my intent to insinuate that GoDaddy.com would be a good enterprise-level web host. It is good for hosting personal web sites and such. Discountasp.net is, on the other hand, targeted at businesses. However, off the top of my head I’m not sure what features they offer.

      • #3274955

        Are you kidding?

        by apotheon ·

        In reply to Look at the costs

        The fact you’re using the word “archaic” should be a pretty clear indicator you’re basing your technology choices on the wrong criteria — in this case, apparently how shiny and new it is. Lisp is more than thirty years old, but for an experienced developer stuff can be cranked out faster in Lisp than just about any other language. Is that something problematic because it’s archaic? Unfortunately, there aren’t any Lisp-capable webhosts in the cheap range as far as I’m aware, so it’s probably not an option — to say nothing of the fact that few people want to learn Lisp.

        “[i]Although you mention that this app will integrate with other platforms in the future it, by itself, does not have to run on them.[/i]”
        Nice how you sidestep the issue of compatibility problems in your zeal to support your favorite technology. The fact it won’t have to run on them doesn’t mean it won’t be easier to write software compatible with what’s running on other platforms with a cross-platform technology. Also, integration with other platforms in the future doesn’t mean the application won’t be running on them, just like it doesn’t mean it will be running on them. With as little information as we’re likely to be able to get in a web forum discussion, PHP/MySQL is by far the most portable option. Unless you have information the rest of us don’t, you should be mentioning that any choice to go with ASP.NET should be deferred until you know you won’t have to port it to Linux — unless you enjoy rewriting all your software from scratch.

        “[i]Your client will be better served by going with ASP.NET since the developement time is one fraction of the time it would be with archaic PHP.[/i]”
        That’s poppycock, unless you’re writing a thousand lines of code — at which point ASP.NET will definitely scale better for code maintainability purposes. Of course, if that’s the case, I hope you’re not using VB for your ASP.NET code, because that doesn’t scale worth crap either. If that’s the case, a mod_perl solution is definitely preferable to PHP, though — as is Ruby on Rails, for that matter. They’re both generally preferable to ASP.NET for stuff that isn’t permanently buried in the middle of a Windows-only environment, too. This especially becomes the case when scaling upward from ASP.NET’s scalability sweet spot: for really huge, tremendously high-load uses, companies like Amazon are hiring Perl::Mason developers, not VB.NET developers.

        Coming back to development speed for a moment, I can write PHP code for a website faster than the people hiring me can come up with content for it. I can create a complete website framework from scratch in one day in PHP, for a reasonably simple site, complete with administration web forms. The process of coding in PHP consists of flipping through a function reference. It’s not what I’d choose for complex and tricky development tasks, but for something quick and useful for general-purpose web development, nothing is faster (except possibly Ruby on Rails).

        Have you actually done much PHP development, or are you just basing your opinion on the matter on MS marketing literature and the fact that PHP is “archaic”?

        • #3216017

          Show me where to look…

          by norris1976 ·

          In reply to Are you kidding?

          Hi Apothean,
          Your arguments are quite convincing. I am a self-confessed M$ buff…but have been trying to look into php stuff. You say about creating a website framework etc – can you show me where to go to find info on how to do this and where to start? I would like to try this out for myself before passing judgement.

          Thanks,
          Tim

        • #3215994

          Learn on their dime

          by jim.shelley ·

          In reply to Show me where to look…

          Use this opportunity to learn a new technology on the clients dime – since they haven’t specified a preference. You will never learn as much as you will when you actually have to sit down and build a web app using a language you’ve never touched before. At that point – it’s simply a matter of deciding which language you feel has the most viability/legs in the marketplace.

          As to the compatibility issue – either php or .net would be fine. PHP will run on many platforms, and a .NET Web Service can spit out usuable xml that can be used by other platforms, so that sounds like a non issue to me.

          – Jim

        • #3215958

          A free book

          by ed woychowsky ·

          In reply to Show me where to look…

          Prentice Hall’s PHP 5 Power Programming is part of Bruce Perens Open Source Series, which means that after six months the book is available as a FREE download. The URL for the book is http://www.phptr.com/bookstore/product.asp?isbn=013147149X&rl=1

          If you’re willing to wait until February my book, AJAX Creating Web Pages with Asynchronous JavaScript and XML, should be available as a PDF as well. I went into some detail with MySQL and PHP, but mostly it was client-side JavaScript.

        • #3218750

          PHP5 download

          by jferanda ·

          In reply to A free book

          Did anybody have any problems downloading the pdf file? It seems that my system starts the download process but doesnt give me the ability to save the file into a folder. No ability at the begining or the end. Any suggestions thanks

        • #3218660

          I couldn’t download it either

          by m_a_r_k ·

          In reply to PHP5 download

          “Page cannot be displayed” when you link to it (http://www.phptr.com/content/images/013147149X/downloads/013147149X_book.pdf). I tried “Save Target As” and that didn’t work either. Oh well, so much for free stuff….

        • #3218623

          I had no problem downloading it

          by danlm ·

          In reply to I couldn’t download it either

          But, if it wasn’t for you posting the actual url of the book I wouldn’t have got it. I couldn’t find the link when I went to the first link posted. All though, i probably looked right at it. But, it did download ok for me.

          Chuckle, thanks for the link

          Dan

        • #3218618

          Maybe it’s my firewall

          by m_a_r_k ·

          In reply to I couldn’t download it either

          I still can’t download the damn thing. Maybe it’s my company’s firewall. I’ll try it from home.

          BTW, the link to the FREE download is hard to find on that web page. There is a “Downloads” link in small font that takes you to the PDF document.

        • #3218481

          No problem using Firefox

          by ed woychowsky ·

          In reply to PHP5 download

          I was able to download it, but it might be because I’m using Firefox.

        • #3215918

          sources for learning

          by apotheon ·

          In reply to Show me where to look…

          PHP is dead easy to learn. Part of the reason for this is that it’s sort of a lobotomized language — there are a lot of things for which I’d never want to use it. For getting web development projects off the ground quickly, however, it’s among the most effective.

          I’ve written an [url=http://arc.apotheon.org/cheats/php.php][b]online PHP tutorial for non-PHP programmers[/b][/url] that could get you started, though I doubt it’d be a whole lot of help in your situation unless you just want to get a feel for the very basics first. Ed Woychowski’s link to the Perens book is an excellent place to get started for getting up to speed enough to do something a bit more serious.

          If you’ve never done any, or much, programming before, it’s difficult to find a language with which you can get started more quickly and easily than with PHP. It has a simple syntax, a very few functions are necessary to start doing useful things (as demonstrated by my tutorial), and as a popular open source language there are function references for it all over the place online. It’s the sort of thing that can teach bad programming habits, though, so if it’s your first language you should definitely start picking up a second language as soon as possible to avoid developing those bad habits.

          If you’re already a programmer, and you just need to start programming in PHP, all you really need to do is familiarize yourself with XHTML and CSS, get your hands on a PHP function reference, and get started. Most of PHP web programming is throwing simple application logic into a text file and looking up functions. Basically, if you’re already a programmer, you should get something like PHP In A Nutshell from O’Reilly, go through my tutorial, and jump right in.

          I think that pretty much covers it.

        • #3217337

          Good tutorial

          by onbliss ·

          In reply to sources for learning

          I just glanced at your tutorial. It was nice that you started off by listing things that you do not like about PHP.

          Right at the beginning, a paragraph listing the server software requirements would have been immensely valuable for us (non-PHP programmers).

        • #3217295

          duly noted

          by apotheon ·

          In reply to Good tutorial

          I’ll see about adding something about server software requirements when I have the time. Thanks for the feedback.

        • #3215913

          The pivot

          by parseghian ·

          In reply to Are you kidding?

          Excellent points!
          Although my preferred technology is ASP.NET, with my short experience I can give this advice. If and only if you are 100% sure that you will only use MS techonlogy and MS based platforms, go with ASP.NET, because it is much easier to integrate with MS products, otherwise go with PHP.

        • #3218836

          agreed

          by apotheon ·

          In reply to The pivot

          Your points stand up to scrutiny. If I was sure I was going to be using a 100% Microsoft environment without any reasonable chance of that changing in the foreseeable future for the current project, ASP.NET would definitely be the preferred development technology.

        • #3218564

          VB.Net Scalability

          by ipashchuk ·

          In reply to Are you kidding?

          Apotheon, you are making good points. I wanted to offer a slight clarification on the point of VB.NET scalability. VB.Net scales as well as C# and J# or any other .NET language. This is due to the fact that the .NET framework is language-indifferent. Yes, C# offers some advantages over VB.NET in terms of its syntax (C/C++ heritage) but nothing more to aid scalability — ultimately, VB.Net and C# code are compiled into the same IL code. However, it is true that C# applications end up being more scalable than VB.Net applications but this is due solely to the fact that C# developers are generally more proficient than their VB.Net counterparts and write better code.

          Igor

        • #3218469

          re: scalability

          by apotheon ·

          In reply to VB.Net Scalability

          Scalability depends on the syntax of the language as well as performance characteristics — specifically as applies to the scale of the development project, rather than the scale of implementation. It’s to this aspect of scalability that I was directing my attention. When using a poorly designed language such as VB.NET (or PHP), scalability in terms of project size suffers. The larger your project, the more lines of code, the more programmers involved, the more difficult it becomes to manage code form a language whose syntactic rules and semantic structure are poorly suited to being well organized and clearly represented.

          As such, project quality begins to break down sooner as the project grows with languages like VB.NET as contrasted with C#, whose syntax is better suited to larger, more complex solutions. Readability becomes problematic, decoupling code becomes more difficult, and the sheer mass of code becomes ever-more unwieldy with VB.NET far sooner than it does with a language better suited to such purposes.

          That’s the sort of scalability to which I referred with the commentary about choosing your language. I should perhaps have been clearer about the fact that I wasn’t referring to scalability in the sense of server load and bandwidth consumption.

        • #3218431

          You are not really talking…

          by onbliss ·

          In reply to re: scalability

          …about scalability in my opinion.

          Having coded in VB.Net in the past and currently coding in C#, I do not think the quality of the project suffers because of the language.

          Yes, VB.Net is more verbose than C#, but the number of programmers or lines of code does not vary between a Vb.net or C# project. Inexperienced programmers can create software code with less quality.

          I am not sure how the syntax rules of Vb.net
          lends itself to creating badly organized code/project.

          Can the term scalability really be used the way you have?

        • #3218344

          You know what they say about opinions . . . (NT)

          by apotheon ·

          In reply to You are not really talking…

          no text

        • #3218337

          Might be just an opinion

          by onbliss ·

          In reply to You know what they say about opinions . . . (NT)

          …but you just twisted the usage of the term scalability.

        • #3218266

          poppycock

          by apotheon ·

          In reply to You know what they say about opinions . . . (NT)

          What do you call it when you discuss the ability of something to work as well when things get bigger as when they stay small?

          You call it scalability.

          I spoke of development project scalability for a programming language. The word “scalability” fits. Get over it.

        • #3217485

          Why should I?

          by onbliss ·

          In reply to You know what they say about opinions . . . (NT)

          Because you said? No point in getting agitated.

          In your earlier explanation you talk about large projects and number of lines of code and more programmers. And in my response, I noted that the complexity of the project is almost the same between C# and Vb.net.

          The number of programmers do not increase or reduce because somebody chose Vb.net over C#.
          Vb.net might be verbose, but the readability does not suffer just because of its verbosity. Proper indentation, good variable/method naming conventions are just some of those that increase or decrease the readability. “End Sub” or “}” alone do not have an impact.

          Admit it your usage was out of line. And you call my comments poppycock.

        • #3217294

          You’re confusing actual scalability with use of the term . . .

          by apotheon ·

          In reply to You know what they say about opinions . . . (NT)

          “[i]The number of programmers do not increase or reduce because somebody chose Vb.net over C#.[/i]”
          I didn’t say it does.

          VB suffers in the ability to accomodate more programmers on a single project as compared with C#. This puts a practical upper limit on how many programmers you can have working on the same code. The reason for this is related to increased closeness of code coupling that typically results in writing VB code, and to the fact that the limitations of the language’s syntax impose more difficulty in writing lean code (similarly to the problem PHP has in comparison with Perl).

          “[i]Vb.net might be verbose, but the readability does not suffer just because of its verbosity. Proper indentation, good variable/method naming conventions are just some of those that increase or decrease the readability. ‘End Sub’ or ‘}’ alone do not have an impact.[/i]”
          When I talk about readability, I don’t just mean whether or not a single line of code is readable. A single line of code is pretty much exactly as readable in any language (barring intentionally obfuscated code), assuming you know that language. Readability really comes into play when your program logic has to do some ugly contortions to make up for the lack of syntactic elegance that might allow you to write more concise code and poor organization of semantics that can lead to there being a thousand and one ways to do something similar to what you want, but not quite exactly what you want. Again, the comparison between VB and C# in this regard is somewhat similar to that between PHP and Perl.

          “[i]Admit it your usage was out of line.[/i]”
          Not only have you not shown that to be the case, but you haven’t even tried. Everything you’re saying here is related to whether or not I’m right about the scalability of VB as a tool for large development projects, and not whether or not “scalability” is the word I should have used.

        • #3217287

          Code Coupling

          by ipashchuk ·

          In reply to You know what they say about opinions . . . (NT)

          Excuse me for budging in… Apotheon, are you referring to VB or VB.Net? I completely agree that code coupling is a big issue in VB (as in VB 6 or earlier)… But to say that VB.Net suffers more in this regard than C# does is arguable. Could you name a feature in C# not available in VB.Net that could help reduce code coupling?

        • #3217460

          VB.Net Scalability

          by ipashchuk ·

          In reply to re: scalability

          Apotheon,

          I think you might be misinformed about the differences between VB.Net and C#. The differences between VB.Net and C# are very minor. C# does have a few shortcuts (such as the ternary operator which is not available in VB.Net) but overall well-written code in C#, in theory, might be a few percentage points less than the code written in VB.Net. However, that difference might be due to the use of the ternary operator and such. I don’t think this is a significant difference and we know how much pain it might be to maintain code that abuses helpful features, written by someone who wanted to “prove” that he could do something in two lines of code instead of five.

          Obviously, you imply there are some fundamental differences between the two languages. Could you elaborate? Thanks.

        • #3218437

          Deleted

          by onbliss ·

          In reply to Are you kidding?

          Edit: post deleted…

    • #3218860

      Platform Independence

      by ipashchuk ·

      In reply to PHP or ASP.NET

      I agree with the case for using PHP and MySQL. However, I do want to ask a question about the integration you are talking about. Are you talking about giving access to more users at more organizations while hosting your application on the same server or are you planning to have the application deployed on other servers within those other organizations? If the integration is “web” integration (users accessing your application — hosted by you or your service provider — over HTTP and TCP/IP), then you are not limited to any server platform whatsoever. That’s the beauty of open standards — they are platform independent.

      If this is the case, I am biased toward ASP.NET 2.0. The .NET Framework is superior to PHP in terms of object-orientation and sheer depth and breadth of built-in features. But again, I’m biased and I’m sure there are as many IT professionals who would disagree with me as those who would agree.

      I hope this helps.

      Igor

      • #3218822

        yes and no

        by apotheon ·

        In reply to Platform Independence

        I’d agree that the .NET framework is definitely far superior to PHP for object orientation. That’s just not always much of a concern. Web development can vary widely in terms of its suitability for OOP techniques, and much of the time for small-to-medium projects OOP can get in the way as much as it helps. Frameworks like .NET are more tightly integrated in development of web applications, too, which has both its ups and downs, all of which must be evaluated depending on the project specifics.

        What you say about the server platform not mattering if it’s entirely within your control is true, as far as you took it. This doesn’t account for possible desire to migrate away from the Microsoft technologies platform in the future, however, or to integrate with other technologies at a later date. The problem with choosing something like ASP.NET on Windows/IIS and SQL Server is that you’re then increasingly locked into a Windows-based solution in the future so that, no matter how much technologies and your own project requirements change, you’re pretty much stuck with the options of either staying with what you’ve got no matter what or throwing away what you’ve got and starting over from scratch.

        Vendor lock-in is a bad place to be.

        • #3218647

          OOP and Vendor Lock-In

          by ipashchuk ·

          In reply to yes and no

          Apotheon, you are absolutely correct as to the suitability of OOP for various projects. As far as I know, studies have shown that applications written using OOP techniques, on average, have not reduced the amount of code or the amount of initial effort. On the contrary, there is evidence that applications using OOP tend to require more development time as opposed to applications written in a procedural language (such as C or PHP). However, maintenance is the cycle where OOP usually pays off. Of course, if the application is not written well from the start, maintaining a poorly written OOP application is a lot worse than one written in a procedural langugage. The best answer, as you suggested, is “it depends.” There are many unknowns about the project (it does appear that the application is fairly small, so the OOP approach might not be advantageous). An example of a question I would ask regarding the nature of transactions is whether the transactions are supposed to have commit and rollback features.

          Vendor lock-in is not a good place to be, I agree. Such a scenario is good only when one can completely believe in and trust the vendor — which is impossible given the nature of technology evolution and market forces. The risk associated with becoming dependent on a single vendor has to be accounted for. One has to evaluate the vendor in terms of its technical excellence, financial strength, past performance, and its outlook among other things before entrusting one’s future in the vendor’s hands. However, one must not avoid vendor lock-in simply for the sake of a higher level of freedom — there are many benefits that arise from mutually benefiting corporate relationships. The costs and benefits of both scenarios have to be compared… Obviously, given all things are equal, vendor independence is definitely preferred.

          Apotheon, thanks for sharing…

        • #3218230

          Word to the wise

          by tony hopkinson ·

          In reply to OOP and Vendor Lock-In

          We are an MS partner in a mutually benefitting relationship.

          Course relations between us took a slight turn for the worse when MS decided to compete with us.

          Make sure you and the vendor agree on the definition of mutual.

        • #3217335

          On OOP

          by onbliss ·

          In reply to OOP and Vendor Lock-In

          [i]On the contrary, there is evidence that applications using OOP tend to require more development time as opposed to applications written in a procedural language (such as C or PHP). However, maintenance is the cycle where OOP usually pays off. Of course, if the application is not written well from the start, maintaining a poorly written OOP application is a lot worse than one written in a procedural langugage.[/i]

          You have said it very well.

Viewing 3 reply threads