Results 1 to 14 of 14
  1. #1
    Join Date
    Apr 2008
    Posts
    73

    Do you think ASP.NET is limited and difficult?

    I've been checking out some of those www.asp.net/learn vB.NET/SQL videos... nice little tutorials to get a newbee started.

    But I'm basically finding out that all the ASP.NET server controls like GridView / Detailsview / Dropdown
    are basically fruitless... because if you have 200 customer records... what the heck kinda
    drop down list or Grid would really support that?


    Would you agree a real world web app would have a textfield / search command button that queries a
    SQL Server database?


    ... those helpful little videos have cute drop down lists populated on VB.NET web forms with for loops and
    stuff, what real corporation would have something like that? It would be SQL / recordset searches / queries, right?

    I'm really very knew to VB.NET/SQL, and have been tasked with programming a VB forms to SQL portal for a company.

    Neat learning experience --- which is cool and everything ---but I'm really running out of gas with those little
    "tutorials" and need some real webform functionality.


    oh well...

    I'll keep on plugging away!!
    later
    brad

  2. #2
    Join Date
    Apr 2009
    Location
    USA / UK
    Posts
    4,577
    ASP.NET is just painful. Microsoft had something decent with classic asp, and they are now killing it in favor of .net

    It's almost easier to just use C than ASP.NET!

    ASP.NET is a lot like Java JSP/Servlets - It's overly complex - the only reason people like it is because of performance, and because the non-programmer boss has been sold on the technology somehow.
    RAM Host -- USA Premium & Budget Linux Hosting
    █ Featuring Powerful cPanel Shared Hosting
    █ & Premium Virtual Dedicated Servers
    Follow us on Twitter

  3. #3
    Join Date
    Apr 2004
    Location
    Houston, Tx
    Posts
    195
    I've been a professional asp.net developer for over a year now. Last year I made a switch from Desktop Developer to Web Developer. I have been using ASP.NET very heavily and I can say its very powerful. Like any other programming language you are able to shot your self in the foot. But when used right it can easily become a great tool.

    I have been working on a company developing an online training system / LMS used by very large corporations. ASP.NET can be as complex or as simple as you want it to be.

    Just like any web programming language it requires you to have a good understanding of HTML/CSS and/or JavaScript to create awesome web applications.

    ASP.NET WebForms can take a lot of the over head work out and make programming on a website just as easy as making a desktop application.

    The ASP.NET AJAX controls also take making AJAX web applications very simple by just dropping in a few controls.

    One of the other advantages in learning asp.net is your skill also directly relate to creating desktop applications since you are able to use the same framework and tools to create them.

  4. #4
    Join Date
    Apr 2009
    Location
    USA / UK
    Posts
    4,577
    Quote Originally Posted by RBooth View Post
    ASP.NET WebForms can take a lot of the over head work out and make programming on a website just as easy as making a desktop application.
    Wow - almost fell over laughing after reading that! Desktop applications are much harder to develop then web applications - the only thing easier to develop than a web application is a console application - a web application is basically a console application with http headers.

    Quote Originally Posted by RBooth View Post
    One of the other advantages in learning asp.net is your skill also directly relate to creating desktop applications since you are able to use the same framework and tools to create them.
    Yeah, and every .NET desktop application I've come across is slower than a similar program that just uses traditional win32 gui elements directly - the overhead of loading the .net framework when it starts, and the fact it uses more memory, both contribute to that slowness.

    Plus if you want it to work on XP or earlier your customers need an extra 25 MB .NET download from Microsoft (and that's 1.1 - 2.0, 3.0 and now 3.5 are even bigger than that - downloaded 3.5 a while ago and it was something like 300 MB!)

    Quote Originally Posted by RBooth View Post
    Last year I made a switch from Desktop Developer to Web Developer.
    Well that explains it! I use plain text editors to code with (notepad++ on windows, nano on linux) - ASP.NET wouldn't be very easy for a traditional programmer like me would it? A desktop developer with his fancy IDE would be drawn to ASP.NET - just like a C developer would be drawn to C running over CGI (paypal is a prime example of that - yes it works, and yes it's fast, but the code behind it is a monster of unneeded complexity.

    To the OP - if you are a desktop developer now then I'd suggest using .NET as it will be an easy transition - otherwise stay far away from it and grab something simpler - you might want to start with classic ASP and VBScript - it's quite simple and easy to get started with. PHP is similar (although even easier still).
    Last edited by ramnet; 06-27-2009 at 12:30 AM.
    RAM Host -- USA Premium & Budget Linux Hosting
    █ Featuring Powerful cPanel Shared Hosting
    █ & Premium Virtual Dedicated Servers
    Follow us on Twitter

  5. #5
    Join Date
    Apr 2007
    Location
    Calgary, Canada
    Posts
    201
    Quote Originally Posted by ramnet View Post
    Wow - almost fell over laughing after reading that! Desktop applications are much harder to develop then web applications - the only thing easier to develop than a web application is a console application - a web application is basically a console application with http headers.
    Oh come now, it all really depends on what type of application you are trying to build. Web applications (or console apps) can be as simple or as complex as that of any desktop application.
    All development of any large software regardless of its platform has their own problems and difficulties. For instance, I wouldn't say that Facebook is something which is easy to develop, or that Google's apps are any easier to build than any other similar desktop application.
    And yes, if web applications are simply console applications with http headers, then desktop applications are also simply console applications with a GUI frontend.

    Quote Originally Posted by ramnet View Post
    Yeah, and every .NET desktop application I've come across is slower than a similar program that just uses traditional win32 gui elements directly - the overhead of loading the .net framework when it starts, and the fact it uses more memory, both contribute to that slowness.

    Plus if you want it to work on XP or earlier your customers need an extra 25 MB .NET download from Microsoft (and that's 1.1 - 2.0, 3.0 and now 3.5 are even bigger than that - downloaded 3.5 a while ago and it was something like 300 MB!)
    While I do agree to a certain extent that it is a pain to install the .NET framework to run .NET apps which only run on windows only machines, it is a framework which helps developers create apps effeciently and quickly without needing to do all the dirty work manually. That's what a framework is for! Sure there will be overhead, but on a recent modern computer, the overhead is rarely noticable.

    Quote Originally Posted by ramnet View Post
    Well that explains it! I use plain text editors to code with (notepad++ on windows, nano on linux) - ASP.NET wouldn't be very easy for a traditional programmer like me would it? A desktop developer with his fancy IDE would be drawn to ASP.NET - just like a C developer would be drawn to C running over CGI (paypal is a prime example of that - yes it works, and yes it's fast, but the code behind it is a monster of unneeded complexity.
    C# and Java, unlike C lets developers abstract the problem via use of objects and how they delegate with each other which allows for better code faster. It's possible to write the same piece of code using an imperative language, but it's definately harder to abstract the problem any higher. By using a 'fancy' IDE, it allows developers to seperate the code into managable and understandable chunks which is great when you need to refactor (update, bug fix, new features) the code. It also comes with a lot of tools which saves a heck of a lot of time when coding.

    BTW, unless you work for PayPal, how do you know that PayPal's code base is overly complex without first seeing their code? How are you so sure they are using C and not some other (possibly mixture of) languages?

    It seems pretty naive to think that only developers using IDEs are drawn to ASP.NET or other 'overly complex' languages as you have said in your previous post. There's a reason why Java and ASP.NET are used by so many real world developers, and it's not because of 'some non-programmer boss was sold to the technology'

  6. #6
    Join Date
    Apr 2009
    Location
    USA / UK
    Posts
    4,577
    Quote Originally Posted by Kohrar View Post
    And yes, if web applications are simply console applications with http headers, then desktop applications are also simply console applications with a GUI frontend.
    Not quite...the GUI frontend is equivalent to the HTML/CSS part, which I don't really consider part of the web application (of course I spend most of my time on the backend so I'm a little biased there).

    Having the console application have http headers is like having a different argument list for a console app - it's trivial. Desktop GUI, like HTML/CSS, is not quite as trivial.

    Quote Originally Posted by Kohrar View Post
    While I do agree to a certain extent that it is a pain to install the .NET framework to run .NET apps which only run on windows only machines, it is a framework which helps developers create apps effeciently and quickly without needing to do all the dirty work manually. That's what a framework is for! Sure there will be overhead, but on a recent modern computer, the overhead is rarely noticable.
    To each his own - with web applications it's more important to be efficient when it comes to run time than on a desktop - unless you're a game developer or something like that (and no game developer would dare use .net cause it's too slow).

    Quote Originally Posted by Kohrar View Post
    C# and Java, unlike C lets developers abstract the problem via use of objects and how they delegate with each other which allows for better code faster. It's possible to write the same piece of code using an imperative language, but it's definately harder to abstract the problem any higher. By using a 'fancy' IDE, it allows developers to seperate the code into managable and understandable chunks which is great when you need to refactor (update, bug fix, new features) the code. It also comes with a lot of tools which saves a heck of a lot of time when coding.
    Hm...I thought that's what headers and library files and subroutines and functions are for? Oh well, you can do it that way too. Of course I'm an old dinosaur and still rely on procedural code since it runs faster - to each his own.

    Quote Originally Posted by Kohrar View Post
    BTW, unless you work for PayPal, how do you know that PayPal's code base is overly complex without first seeing their code? How are you so sure they are using C and not some other (possibly mixture of) languages?
    I read it on a blog somewhere a few years back - an ex-paypal employee or something reliable like that was angry at the code - based on their url's it's kinda obvious they're using CGI, and nothing but a compiled language would be fast enough without a mountain of servers. It's mostly modular C - a main executable that loads a plugin which then loads some shared libraries and does it's job and quits.

    Quote Originally Posted by Kohrar View Post
    It seems pretty naive to think that only developers using IDEs are drawn to ASP.NET or other 'overly complex' languages as you have said in your previous post. There's a reason why Java and ASP.NET are used by so many real world developers, and it's not because of 'some non-programmer boss was sold to the technology'
    That's true, there are other reasons why - after all, MySpace relies on ASP.NET, so it must be good!

    Of course it all boils down to how the brain works - my brain like semicolons and curly braces - yours must like capital block letters, line numbers...(oh wait that's gwbasic...my bad) - the basic santax (whatever it's current incarnation is). It's easier, but it's less efficient too. Same goes for Java - that's one reason Java is popular in high school computer science classes nowadays - it can be really easy - but it can get complicated fast.

    When it comes to the web one must decide how much efficiency they are willing to trade for simplicity. It depends mostly on what you're actually doing and how much work you are willing to put in. The faster languages would be assembler / C / Fortran / Pascal / stuff like that. The easier but slower stuff would be ASP / .NET / Perl / PHP / Python / Ruby.
    Last edited by ramnet; 06-27-2009 at 04:56 AM.
    RAM Host -- USA Premium & Budget Linux Hosting
    █ Featuring Powerful cPanel Shared Hosting
    █ & Premium Virtual Dedicated Servers
    Follow us on Twitter

  7. #7
    Join Date
    Jun 2006
    Location
    Support Ticket Near You!
    Posts
    1,106
    Quote Originally Posted by ramnet View Post
    When it comes to the web one must decide how much efficiency they are willing to trade for simplicity. It depends mostly on what you're actually doing and how much work you are willing to put in. The faster languages would be assembler / C / Fortran / Pascal / stuff like that. The easier but slower stuff would be ASP / .NET / Perl / PHP / Python / Ruby.
    http://en.wikipedia.org/wiki/Assembler_language

    "There have always been debates over the usefulness and performance of assembly language relative to high-level languages. Assembly language has specific niche uses where it is important; see below. But in general, modern optimizing compilers are claimed to render high-level languages into code that can run as fast as hand-written assembly, despite some counter-examples that can be created. The complexity of modern processors makes effective hand-optimization increasingly difficult.[8] Moreover, and to the dismay of efficiency lovers, increasing processor performance has meant that most CPUs sit idle most of the time, with delays caused by predictable bottlenecks such as I/O operations and paging. This has made raw code execution speed a non-issue for many programmers."

    Just pick whatever suits you. They all have their benefits. They're all as powerful each other, it comes down to the user/programmer.

    Unfortunately, the side affect of newer hardware etc is that code is becoming less efficient, and people take less care since it is becoming easier to reach the same objective.

    To the OP: No.
    HostGuard.net - VPS Control Panel
    Automating and monitoring your hosting business.

  8. #8
    Join Date
    Jul 2006
    Location
    USA, EU, UK, CA, AUS
    Posts
    1,804
    When it comes to .Net I'd stay away from VB.net (legacy code) and go for C#. C# is truly OO and a lot more powerful.

  9. #9
    Join Date
    Apr 2004
    Location
    Houston, Tx
    Posts
    195
    Quote Originally Posted by Ultima VPS View Post
    When it comes to .Net I'd stay away from VB.net (legacy code) and go for C#. C# is truly OO and a lot more powerful.
    Not really VB.NET is just as powerful as C#. Microsoft has done a good job keeping VB.NET caught up with C#. But I would agree with going with C# just because it seams to me like the syntax is more cleaner. The only real advantage of going with C# is you can use unsafe code to use pointers but most people never have a need for them.
    Last edited by RoboHostCo; 06-27-2009 at 12:25 PM.

  10. #10
    Join Date
    Jun 2009
    Location
    Baile Átha Cliath
    Posts
    186
    Quote Originally Posted by ramnet View Post
    Yeah, and every .NET desktop application I've come across is slower than a similar program that just uses traditional win32 gui elements directly - the overhead of loading the .net framework when it starts, and the fact it uses more memory, both contribute to that slowness.
    The PDA version (Compact Framework) is even worse - not so much 'cut down' as 'hacked with a machete'. It needs so many hooks into the underlying winCE via unsafe code blocks that you're better off just writing the whole lot in C.

  11. #11
    Join Date
    Feb 2005
    Posts
    105
    Quote Originally Posted by ramnet View Post
    Not quite...the GUI frontend is equivalent to the HTML/CSS part, which I don't really consider part of the web application (of course I spend most of my time on the backend so I'm a little biased there).

    Having the console application have http headers is like having a different argument list for a console app - it's trivial. Desktop GUI, like HTML/CSS, is not quite as trivial.
    Web applications do not maintain state, which is why variables need to be passed using other methods, such as cookies, HTTP query strings, hidden forms, or using the database.

    Desktop applications maintain state, so variables will hold their value from one screen to the next.

    In web applications, a major part of the code is determining the value of a variable from one page to another. In your analogy, "having the console application have http headers is like having a different argument list for a console app - it's trivial". Well, in a desktop application, all of this state management is equal to assigning a value to a variable. This makes desktop applications not much harder to develop than a web application.

    Web application = front end + backend + state management
    Desktop application = front end + backend

  12. #12
    Join Date
    Apr 2009
    Location
    USA / UK
    Posts
    4,577
    Quote Originally Posted by MrMan View Post
    Web application = front end + backend + state management
    Desktop application = front end + backend
    Desktop applications maintain state - be it via the windows registry, .ini file, or some other configuration store.

    The only real difference is how long the session lasts - on a web app it's a second or 2, on the desktop it's until the user closes the program. Either way session data is usually preserved somehow.

    It is easier to do with a desktop app though.

    Overall, however, it's usually easier to write a simple web application than a simple desktop app. The inverse is also true - it's easier to write a complex desktop app than a complex web app - typically.
    RAM Host -- USA Premium & Budget Linux Hosting
    █ Featuring Powerful cPanel Shared Hosting
    █ & Premium Virtual Dedicated Servers
    Follow us on Twitter

  13. #13
    Join Date
    Jun 2009
    Location
    Baile Átha Cliath
    Posts
    186
    Back in 2003 i saw one company that used so much AJAX and ActiveX that it was practically a desktop program running in a browser. Made sense since it was most pulling/pushing data from/to a server.

    Not that it was a good idea in practice - it was so tightly tied to a specific MSIE setup with questionable security properties that they would have been better off making a standalone program..

  14. #14
    Join Date
    Jul 2002
    Posts
    3,374
    To OP: Tutorials on ASP.net is water down/dumb down for beginner.

    You can databind the gridview/drop down during the Page life cycle. Also, if you don't like ASP.net Webform then try out the ASP.net MVC. This is pure HTML.

    As a .Net software developer with 3yrs under my belt, I agree with the comment that i pasted below from stackoverflow. (btw, stackoverflow is the best site for programmer)

    The big plus for ASP.net Webform developer is, it is component/event driven framework. Let's say I created an complex server control for reporting. I don't want to copy and paste then tweak my code on each project that I'm going to work on. I can simply drop this server control into my project and use it. BTW, the link also have a lot of pro and con regarding ASP.net. It should clear out any confusion/question that you might have.

    Below is the best comment that I've read on the web regarding ASP.net Webform and traditional Web programing.


    http://stackoverflow.com/questions/4...rms-model-suck

    "I'm glad we're talking about this.

    It's not so much the model / philosophy of WebForms (being component-oriented, that is) that sucks as it is the implementation. And even that bit is not all bad.

    While WebForms definitely merits criticism, I think it's incorrect to jump to the conclusion that MVC is a better / more virtuous concept. It's not. It depends on what you are trying to do.

    Regarding the "patterns"
    I'm not sure if the WebForms "pattern" has an official name, but let's call it a component framework. There are others, like JSF, which is a bit newer, and could perhaps teach us a few things. Contrast this with MVC, which is not component-oriented. Some people are opposed to componentization. For example, DHH in the rails community (the source of all the recent MVC hooplah), rants against components. However, his justification is more of an appeal to people to re-invent/re-work the wheel every time, because his goal is to make development "so very easy that you will treasure the application-specific solutions of your own rather than long for [components]". It is possible to hack up primitive reusable "components" in MVC. However, the more sophisticated and reusable you make your component, the more hackery you will have to do, because the goal of MVC is simplicity and separation, rather than composition / componentization.

    Good Things about WebForms
    •You can compose very sophisticated, nicely encapsulated "controls" that can manage their own state, behavior, and rendering, and combine them into more sophisticated controls
    •Through them, you can accomplish a lot simply through declarative (.aspx) code.
    •For example, you can easily add a date picker that provides both client and server side validation because it has its own lifecycle.
    •Things like GridViews and DataSources - with robust editing, paging, sorting, and filtering capabilities, for example, are a very useful mechanism that couldn't be fully implemented outside of a component-oriented framework.
    •This is largely due to:
    •The component tree and naming containers
    •The page lifecycle - Page_Load, Page_PreRender, etc. enable several hooks that allow the entire view to be composed in one pass, but also modified before rendering in another pass (which is very useful if you are doing anything modular at all)
    •Mechanisms for tracking state (very useful when you need them):
    •ViewState
    •PostBacks (LinkButtons, etc)
    Bad Things about WebForms
    Again, most of these have to do with how WebForms is implemented.

    •The page / control lifecycle is complex.
    •ViewState is poorly implemented by the components, i.e. the convention of storing every property in ViewState, or that DropDownList doesn't work with ViewState disabled
    •There is no alternative to postbacks. Doing GET / QueryString-based forms is painful. And you can't have more than one <form runat="server">
    •There is no way to override the naming container strategy, which means ugly names for HTML elements
    •WebForms is stale and hasn't gotten many improvements. Probably due to concerns about compatibility, several new controls have been added, but the underlying architecture / mindset hasn't changed much.
    •Much of the framework and controls are mysterious and poorly documented. Plus it's closed source and that means that unless we want to live in Reflector, we are largely stuck with what we get.
    •Binding is horrible. The reflection breaks occasionally, Two-way binding is hard to use and unintuitive. There is no declarative way to bind to the QueryString. So we often spend a lot of time writing mindless binding/plumbing code. (I truly believe that a big reason people like MVC, and why people liked Struts and Rails for that matter, is because they handle binding well.)
    •WebForms is full of tight coupling that makes automated testing very difficult.
    Clarifications
    •Regarding the URL-rewriting point, that's just not true. We are doing URL rewriting with WebForms. The .aspx extension is avoidable.
    •That the protocol is stateless is a moot point. It underscores the fact that we have to figure out how to manage state in our applications, and sometimes things like ViewState or PostBacks are the best solution. The flaw in the WebForms mindset is in assuming they are.
    I'm hesitant to throw out the baby with the bath-water. We used WebForms for our social media site. We did a PoC in ASP.NET MVC as well, and found that it made a lot more sense to build robust, composable controls that could easily be moved from page to page, than to grapple with the limitations imposed by MVC's simplicity (and, in the case of the ASP.NET MVC framework, immaturity). I would much rather see MS overhaul WebForms, clarify the pros/cons with MVC, open up much of the source, and have the dev community support it as we have the MVC stuff, than for it to continue to be shunned (and neglected) as all of us jump onto the MVC bandwagon."

Similar Threads

  1. VPS, how difficult can it be ?
    By er1cw in forum VPS Hosting
    Replies: 11
    Last Post: 10-20-2006, 04:36 AM
  2. why this it's so difficult?
    By pueblosnet in forum Hosting Software and Control Panels
    Replies: 5
    Last Post: 05-05-2006, 08:56 AM
  3. How difficult would it be...
    By P-nut in forum Programming Discussion
    Replies: 4
    Last Post: 04-19-2005, 02:40 AM
  4. Is it so difficult to become an ETP?
    By mao in forum Domain Names
    Replies: 8
    Last Post: 09-13-2004, 11:31 PM
  5. why is all so difficult
    By bss in forum Web Hosting
    Replies: 13
    Last Post: 03-12-2003, 03:08 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •