t r u t h o u t | Yes, We Can Make the Stimulus More Stimulating

    President Obama could not find any economists who were able to see the housing bubble for his economic team. Fortunately, he indicated that he would be willing to listen to those of us who did in designing his stimulus package.

    In response to his request for ideas on how to make his economic recovery package more effective, I have put together the following list of seven proposals. This is a mix or match list, intended to be added to the list of items already suggested, although given the severity of the downturn, all of them could probably be included without causing concern about excessive deficits.

    1) Extend Health Insurance

    Offer a $2,000 tax credit for any firm that gives health insurance to employees not currently covered. Match at a 70 percent rate any improvements in health care coverage (e.g. lower employee premiums) up to $1,000. If 20 million workers get coverage, this will cost $40 billion a year. If another 50 million workers get added benefits that average $800 per year, this will cost the government another $28 billion for a total cost of $68 billion a year.

    This would be a great first step towards universal coverage. If President Obama also allowed employers and individuals to buy into a Medicare-type public plan, then he will have gone a long way towards reforming the health care system.

    2) Publicly Funded Clinical Trials

    Start a system of publicly funded clinical trials. The point would be to take the conduct of trials out of the control of the drug industry so that doctors and researchers would have immediate and full access to all research findings.

    As a quid pro quo for paying for the trials, the government would get control of the licensing of the patent. The drugs developed through this system would all be sold as generics costing somewhere near $4 apiece at Wal-Mart. The payback from this would be enormous, instead of spending $330 billion a year on prescription drugs in 2012, we might spend closer to $30 billion. We’ll be paying $30 billion a year or so for clinical trials, and maybe close to that much in licensing fees, and getting much better medicine.

    And, as a side benefit, people in developing countries would get cheap drugs too. We could put an end to “free-trade” agreements that try to jack up drug prices in poor countries through stronger patent protections. Total cost: $30 billion a year.

    3) Cash for Clunkers

    Princeton economist Alan Blinder recently argued in the NYT for a program of buying back older, more-polluting cars at a premium over their book value. This would get the most-polluting cars off the road (raising average full efficiency) and put some money into the pockets of the people who own them. Most of these car owners will have low and moderate income, so we will be putting cash into the hands of people who need it and will spend it. Blinder calculated that we get 5 million older cars a year off the road for a cost of less than $20 billion a year.

    4) Subsidies for Public Transportation

    People in the United States take more than 10 billion trips on public transportation each year. This has enormous environmental benefits. Not only are these people consuming much less energy by using public transit, by not driving themselves, they are reducing congestion, and therefore reducing the amount of energy wasted in traffic jams.

    The government can encourage public transit and get money into the pockets of the people who use it (disproportionately low- and moderate-income people), by giving a $1 subsidy for each trip that gets directly passed on in lower fares. For someone taking a subway or bus twice a day, this will amount to savings of $500 a year. The government can include some additional funding to buy more buses and train cars. The cost would be approximately $13 billion a year.

    5) Funding for Writers/Artists/Creative Workers

    In the New Deal there was both a federal arts project and a federal writers project. These programs employed thousands of young artists and writers. A creative stimulus package can extend this idea for the Internet Age. Suppose that President Obama made $10 billion a year available for state and local governments to support various types of creative and artistic work. This could include music, movies, writing books, even journalism. The one condition for support is that all material be made freely available in the public domain. (Better yet, it could have copyleft protection.)

    This funding would be sufficient to employ 200,000 people a year at an average of $50,000 each. This would put an enormous amount of creative work in the public domain that people all over the world could download at zero cost. In the first year or two, we could have this program administered through public agencies, but in later years we can have people choose for themselves which work they want to support through a tax credit. The cost would be approximately $10 billion a year.

    6) Funding for the Development of Open Software

    In the same vein, the government can spend $2 billion a year to develop open source software. This money can be used to further develop and simplify open source operating systems such as Linux, as well other forms of free software. The payoffs from this spending would be enormous. Imagine that every computer buyer in the world would be able to get a computer for which the operating system was free, as was almost all the software that they would ever use.

    This would surely save consumers an average of at least $200 per computer. With sales at close to 20 million a year, the savings in the United States alone could easily exceed the cost of supporting software development. Adding in the benefits (and presumably some contributions) from the rest of the world, we will be way ahead by going the route of publicly funded open software open software. The cost would be $2 billion a year.

    7) Pay for Shorter Workweeks and More Vacations

    The United States lags the rest of world in that its workers are not guaranteed any vacation time, sick leave or family and parental leave. In Europe, five or six weeks a year of paid vacation is standard. Also, all West European countries guarantee their workers some amount of paid sick leave and paid parental leave.

    The stimulus gives us a great chance to catch up with the rest of the world. The government could give make up the pay for two years for any paid cutback in hours, up to 10 percent of total hours worked in a year and $3,000 per worker. This means that if a firm offered workers who previously had no paid vacation, five weeks of vacation a year, the government would provide a tax credit to pick up the tab, up to $3,000 per worker. Similarly, if they extended 10 days of paid sick leave, the government would provide a tax credit for the amount actually used. If employers of 70 million workers (half of the labor force) received an average tax break of $2,500, the cost would be $170 billion a year.

    There are undoubtedly other items that should be added to this list. As President Obama’s chief of staff, Rahm Emanuel, said, we should not allow this crisis to be wasted. We should not be trying to just bring the economy back to where it was before the housing bubble crashed. Rather, we should be looking to create a cleaner, fairer, better country. Not all of it will be accomplished with the initial stimulus package. Not everything will even be accomplished in President Obama’s first term.

    The real question is whether the country can do better than the modest stimulus package that has been laid out thus far. President Obama knows that we can.


This work by Truthout is licensed under a Creative Commons Attribution-Noncommercial 3.0 United States License.

Support Truthout’s work with a $10/month tax-deductible donation today!

Share and Enjoy:
  • Digg
  • del.icio.us
  • Facebook
  • NewsVine
  • Reddit
  • StumbleUpon
  • Google Bookmarks
  • Yahoo! Buzz
  • Twitter
  • Technorati
  • Live
  • LinkedIn
  • MySpace

Be the first to comment - What do you think?  Posted by - June 13, 2010 at 10:00 pm

Categories: public domain articles   Tags: 50 million, coverage, credit, economic recovery, economic team, employee premiums, funding, generics, health care coverage, Public Domain, stimulus package, System, tax

Introducing the ASP.NET MVC (Part 2) – ASP.NET MVC vs. ASP.NET Web …

This is a continuation of my Introduction to ASP.NET MVC series.  As I outlined before this is in an effort to write the book and keep blogging, I decided to write/blog the last chapter, Chapter 2.  I am doing this so I can receive feedback on this chapter as early as possible.  Because this chapter, in my opinion, is probably the most critical of the book, it defines the context around ASP.NET MVC and how it differs from ASP.NET Web Forms, as well as giving a historical perspective of the MVC pattern.

In the next several posts we will cover the following parts of Chapter 2 from the book:

  • The Model-View-Controller Pattern
  • ASP.NET MVC vs. ASP.NET Web Forms
  • Installing the Prerequisites
  • Your First ASP.NET MVC Project
  • The Model
  • The View
  • The Controller

ASP.NET MVC vs. ASP.NET Web Forms

As you have seen, in the previous section, and can probably imagine MVC is going to be an architectural pattern that is going to be around for the foreseeable future, especially on the web.  So it is very important to internalize and understand the major differences between ASP.NET MVC and the older ASP.NET Web Forms.

ASP.NET Web Forms

Starting with the .NET Framework Version 1.0, in January 2002, Web Forms was Microsoft’s first real attempt to provide a first class web application layer that was both robust and flexible enough to meet the demands of the web at that time.  ASP.NET Web Forms has proven to be a mature technology that runs small and large scale websites alike.  Web Forms, was built around the Windows Form construction, where you had a declarative syntax with an event driven model.  This allowed visual designers to take full advantage of the drag and drop, WYSIWYG, interface that they had become accustom to under Windows Forms development in Visual Studio 6.0.  In that they only needed to drop controls onto the ASP.NET page and then wire up the events, as was common in Visual Basic 6.0 development at the time. This made Web Forms a natural choice for Windows Forms developers, because the learning curve was low and the need to understand HTML and many of the web centric technologies almost zero.  Web Forms have many strengths and weaknesses:

Strengths

  • Mature technology
  • Provides very good RAD development capabilities
  • Great WYSIWYG designer support in Visual Studio
  • Easy state management
  • Rich control libraries from Microsoft and third party vendors
  • Abstracts the need to understand HTTP, HTML, CSS, and in some cases JavaScript
  • ViewState and PostBack model
  • A familiar feel to Windows Forms development

Web Forms has grown so much since 2002 because it has the ability to do great things that are often much harder to accomplish in other frameworks.

Weaknesses

  • Display logic coupled with code, through code-behind files
  • Harder to unit test application logic, because of the coupled code-behind files
  • ViewState and PostBack model
  • State management of controls leads to very large and often unnecessary page sizes

Web Forms is not all roses and buttercups, there are some serious setbacks that usually show up when you are trying to optimize your code for scalability, the biggest problems are the ViewState and PostBack model.  ViewState is a way to store the state of the controls, such as data, selections, etc, which is needed to preserve the Windows Form like development habits of the developers.  ViewState was necessary, because the web is a stateless environment meaning that when a request comes in to the server it has no recollection of the previous request.  So in order to give state to a stateless environment you need to communicate the previous state back to the server, in Web Forms this was accomplished using hidden <input /> fields that can become ridiculously large. This increased size becomes apparent when server controls such as GridView are added to the page.  PostBack was another creation to facilitate the Windows Form development feel, it renders JavaScript for every subscribed event, which leaves web developer less control over how the browser communicates with the server.

ASP.NET MVC

ASP.NET was often overlooked as a viable platform for modern highly interactive websites that required a very granular control over the output of the HTML, because of the lack of control over the rendered HTML.  This granularity of control was sacrificed in Web Forms to make if more like Windows Forms development, in other words easier for the drag and drop developers.  This lack of control over the HTML rendering forced developers to move the platforms such as PHP and Ruby on Rails, which offered the level of control they required and the MVC programming model that provided a necessary separation of concerns for their highly complex web applications.

This led Microsoft to announce in the Fall of 2007 that they were going to create a platform based off of the core of ASP.NET that would compete against these other popular MVC web centric platforms.  Microsoft implemented ASP.NET MVC to be a modern web development platform that gives a ‘closer to the metal’ experience to the developers that program with it, by providing full control and testability over the output that is returned to the browser.  This is the main and most important different between Web Forms and MVC, in my opinion.  MVC has many strengths and weaknesses

Strengths

  • Provides fine control over rendered HTML
  • Cleaner generation of HTML (well as clean as you keep it)
  • Clear separation of concerns
  • Provides application layer unit testing
  • Can support multiple view engines, such as Brail, NHaml, NVelocity, XSLT, etc.
  • Easy integration with JavaScript frameworks like jQuery or Yahoo UI frameworks
  • Ability to map URLs logically and dynamically, depending on your use
  • RESTful interfaces are used by default (this helps out with SEO)
  • No ViewState and PostBack model
  • Supports all the core ASP.NET features, such as authentication, caching, membership, etc.
  • Size of the pages generated typically much smaller because of the lack of the ViewState

Weaknesses

  • Not event driven by the framework, so it maybe more difficult for ASP.NET Web Form developers to understand
  • Requires the need to understand, at least at the basic level, HTTP, HTML, CSS, and JavaScript
  • Third party library support is not as strong
  • No direct upgrade path from Web Forms
  • No ViewState and PostBack model (makes it more difficult to preserve state)

As you can see the pros and cons of MVC have to be weighed just as much as Web Forms, and MVC is not always the logical choice.

How do I choose?

It’s up to you to decide and you choice needs to be weighted with a number of other factors, such as team and application requirements, when deciding which ASP.NET technology to implement.  I have developed the following worksheet that will hopefully help you decide, when you need to make this decision.

The Worksheet

This worksheet is meant to be a guide for when you are trying to choose between Web Forms and MVC.  The values in the Value column are representations of how easy it would be to accomplish the requirement in either MVC or Web Forms.

The values range from 0 to 30, zero being no effort to implement and 30 requiring a great amount of effort to implement.  If the value is positive then it is an advantage to MVC, if the value is negative then it is an advantage to Web Forms.  For example if the value is, +4, then the requirement is more suited for MVC, and it would take a little work to get it to work as easily in Web Forms.  Alternatively, if the value is, -25, then the requirement is definitely suited for Web Forms, and it would take a lot of work to get the requirement to work with MVC.

So after you make your selection and add up all the values, you should end up with a number representing your project.  Check that number against the table below, and you should have your answer as to which technology, MVC or Web Forms, is best for your project and team.

I want to mention one last thing if you have want to do new development in MVC, but you have to maintain some legacy Web Form pages, you can mix MVC and Web Forms in the same application. You just need to be aware of the differences between the two, and that you probably will not be able to share any of the Web Form front end code with MVC, such as Themes, Master Pages, and User Controls.

As you probably can guess by the name of this book, The Beer House application landed well in to the MVC side of the worksheet.  Which probably doesn’t surprise you if you are reading this book!

Feel free to use the above decision table and modify it for your own teams’ decision process.  The information provided above however should arm you with most of the important information that you need to know when deciding which way your project should go technology wise.

This post is licensed under a different license than the rest of my site. Copyright © Wiley Publishing Inc 2009

Tags: .NET, asp.net mvc, Book, C#, Chapter 2, Web, Wrox

This entry was posted on Monday, December 29th, 2008 at 6:42 pm and is filed under Personal. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

Share and Enjoy:
  • Digg
  • del.icio.us
  • Facebook
  • NewsVine
  • Reddit
  • StumbleUpon
  • Google Bookmarks
  • Yahoo! Buzz
  • Twitter
  • Technorati
  • Live
  • LinkedIn
  • MySpace

Be the first to comment - What do you think?  Posted by - June 8, 2010 at 9:00 am

Categories: copyright forms   Tags: asp.net mvc weakness, asp.net mvc weaknesses, asp.net mvc worksheet, aspx mvc woksheet, beerhouse mvc source code, chapter, control, control level security in mvc 2.0, declarative syntax, first real attempt, historical perspective, how to mixing mvc and web forms in the same application, mature technology, model view controller, mvc pattern, NET, scale websites, visual studio 6, weakness aps.net mvc, weakness of theme asp.net, web forms, Windows

Next Page »