Subscribe via RSS

XHTML Gotchas With ASP.NET

Filed Under Code

Are you attempting validate your XHTML but it just doesn’t seem to be working with ASP.NET? Here are 3 gotchas:

1. xhtmlConformance is not set in web.config

Even if you declare a page to run as Strict, ASP.NET will still render all pages and controls under its default mode Transitional. In order to tell ASP.NET to render controls under Strict, simply add a xhtmlConformance tag in your web.config file.

<configuration>
    
<system.web>
        
<xhtmlConformance mode="Strict" />
    </
system.web>
</configuration>

2. Ensure you have a DOCTYPE

When setting up a new page, it is common (for me at least) to accidentally remove this declaration. Double checking that your DOCTYPE declaration exists is a commonly overlooked gotcha.

<!DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Strict//EN http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd>

3. Add a w3cvalidator.browser file to App_Browsers

By default ASP.NET does not recognize the user agent for the W3C Validator service. As a result, pages and controls are not rendered under the XHTML conformance that you set. This again, is an easy fix. Simply download a w3cvalidator.browser and place it in your App_Browsers folder.

Yahtzee! You should be able to validate your page now. If not, more information on web standard fundamentals using ASP.NET can be found over on the MSDN website.

Your Software Process Sucks : The Delivery

Filed Under Human Factors, Software Process

The previous post Resistance To Change gave ideas why some people fear change. If you know how to calm these fears, you will be able to turn critics into allies. Here are some ideas on how to deliver your ideas:

Changing the System Image

Be Open and Honest

Document your entire plan including execution, cost, risk, and expected rewards. In short, lay all of the cards out on the table, both the good and the bad. Being 100% honest about your plans will eliminate many different fears.

  • Hidden Agendas – All hidden agendas are eventually revealed. Whether you will personally gain or not, by showing that you have nothing to hide gives you instant creditability and stops all the gossip about your intents. This allows everyone to concentrate on the plan and not you.
  • “The Unknown” – Sometimes skepticism only comes from not having all of the facts. This allows those people to have all aspects of the proposed change in black and white.
  • Feeling of no control – Some folks feel the need to criticize before giving their blessing, and this gives them the needed opportunity. Besides, it might be healthy to hear different criticism.

Relinquish Credit

Get over your ego, and let go of the credit. The idea probably is not unique (maybe to your organization but not the world).

Most important, the quickest way to make your friends into enemies is by using the letter ‘I’. When you start saying “I developed this plan….I wrote this document…” you are excluding all your other team members from any credit. Credit is overrated. Even if your team did nothing, give them some credit for being “very accepting” and not being in your way. If your team had a lot of criticism, thank them for all the great feedback.

In the end, your boss is not as stupid as you would like to think. Most managers know who actually did the work. As a result, they also know who to reward when a plan is executed correctly. You will be viewed as not only a hero but also a humble team player.

Sympathize

Fear of loss, feelings of discomfort, or lack of confidence can paralyze people into not changing. To turn these petrified persons into allies you will need to show some TLC and sympathy.

Letting Go of Your Bananas

Claim you have read books such as Letting Go of Your Bananas. Explain that you too feel those feelings, but letting go is the first step to moving forward.

Therapists sympathize with their clients everyday. Does the sympathetic shoulder of a therapist need to be sincere? No and neither does yours, but willingness to sympathize shows humanity and understanding. Consequently, petrified persons will view you as non-confrontational and be more open to your ideas.

Educate

Never assume that people completely understand the topic at hand. When starting communications, it is important to lay down a baseline of education. This way you have assurance that everyone is on some basic level of understanding about your idea or change.

For example, let’s assume that you are attempting to push your development team to use a Continuous Integration server. It is dangerous to assume that all involved has researched Continuous Integration. Saving possible embarrassment to the uneducated, starting conversations with phrases such as “To start, let’s review so we are all on the same page…” is preferred. In the end, you have given yourself a chance to realign your audience’s mental picture to yours.

Use Buzz Words

Sometimes there is no educating people. The divide between reality and their fictitious world is too great. In these instances throwing out some buzz words can help your cause greatly. This technique only works for people that need assurance you are on the right track, but are not willing to understand what the hell you are talking about. Some pitches can sound as if they came from the Dilbert Mission Statement Generator. As an example:

“This will be a Web 2.0 application built on Microsoft technology. This will jump us to the next curve of synergy and communication…”

What a bunch of crap, but do not underestimate the results. In the speech The Art of Innovation Guy Kawasaki tells a story of a generated Dilbert mission statement which came in 2nd place at a company executive retreat.

Compromise

Let’s admit it, your idea is probably not perfect and neither are you (or me). As a result your idea is drawing criticism, but what to do? Use this criticism for what it is – great feedback. With the collected feedback you can refine your ideas and present them as “compromises”. People will appreciate you considered their ideas, thus giving your ideas more room to maneuver.

So what if your organization is not completely ready for your changes or ideas? Changes do not need to be an all or nothing affair. Compromising is a terrific stepping-stone to implementing your ideas. Take your initial idea and start breaking it into smaller implementations. With each small implementation your environment is gradually changed through a series of compromises.

Rally a Support Group

Getting great ideas validated rarely comes from pitches done by a single person. If there are supporters within your organization, do not be afraid to ask these people if you can use their name in support. Having one or more supporters in meetings can quickly validate ideas and sway opinions. If it is not practical to have multiple people in the meeting, be sure to throw out your supporters names and opinions. This brings their ideas and political weight into the conversation even if they are not physically there.

Suck up

Hey, why the hell not. If it gets you what you want, it is a dog-eat-dog world. By the way…you look good today…you should subscribe to my blog

Since there are countless ways to pitch ideas, it is best practice to first understand your audience. Some personalities need to be coddled, while others need to be firmly directed. Your ability to read your audience will help you chose the best form of delivery.

Your Software Process Sucks : Resistance To Change

Filed Under Human Factors, Software Process

If you know the enemy and know yourself, you need not fear the result of a hundred battles. If you know yourself but not the enemy, for every victory gained you will also suffer a defeat. If you know neither the enemy nor yourself, you will succumb in every battle. – Sun Tzu, The Art of War

So you want implement change into your organization but you are faced with opposition. A penny pinching boss, a cocky know-it-all kid, or the grumpy old man are all personae in the work place that can foil a great productivity boosting plan. With the drums of war now thumping, the first step in the fight is to understand the reasons why it is human nature to resist change.

Power Struggle

Little needs to be said after seeing this Gaping Void cartoon

Gaping Void - Great Ideas

Power struggles between you and a senior position is the most common type of resistance to change. However, there is a second type of power struggle scenario that can be acted out between multiple senior positions. As an example, I watched a software process quickly fail solely because two executives competitively attempted to alter the process plan.

People in senior positions often treat change as being a good thing — as long as it is for someone else. When faced with change themselves, they may do whatever it takes to scupper the change, for example by refusing to give needed access or other support. – Changing Minds

Complacency

This is the feeling of self-satisfaction with an existing situation, or in short the old saying “If it ain’t broke, don’t fix it”. It pains me to see this mentality in companies. What they do not realize is that if they are not continually improving they are not growing.

Even if the final destination looks bright, people start resisting if they feel the transitional period will be painful. If extra-ordinary amounts of work and/or discomfort are anticipated people will start to analyze their individual return on investment. The majority of the time colleagues will lose interest and quit in the middle of the transition (or never start).

Loss

A wise little man once told me:

Train yourself to let go of everything you fear to lose. – Master Yoda

Alright…so what…it was Yoda. It still is a wise Taoist view of loss and the fear it can create. There are many reasons for fear of loss:

  • Sunken costs if the proposed changes fail
  • Loss of the investment of the process being replaced if the changes succeed
  • Emotional attachments (i.e. having the process you created replaced)
  • Loss of status or quality of life

Skepticism

Unfortunately, the saying “Ignorance is bliss” is not applicable when attempting to push change. People who do not fully understand the problem or your proposed change are going to be skeptical. Some skepticism is caused by people being uneducated in your attempts, but other people might be skeptical of your intentions.

Change = Fear

When it all boils down, change creates fear:

  • Fear of losing power
  • Fear of losing face (or embarrassment)
  • Fear of working harder
  • Fear of discomfort
  • Fear of losing an investment
  • Fear the “the unknown”
  • Fear the lack of competence to change
  • Fear of hidden agendas

Some reasons for resistance may be selfish and political. Other reasons may be driven by emotion or lack of understanding. Learning the types of resistance in your environment is the first weapon in learning how to successfully deal with your colleagues and bosses.

« Older Entries Newer Entries »

Max Pool - © 2025 - {codesqueeze}. Sycorr Banking Solutions