Tuesday, November 18, 2008

MBC is Hiring – ASP.NET Web Developer Position available in Toronto, Ontario

Description

If you enjoy working on a variety of cutting edge web applications ranging from eCommerce apps to Social Networking sites then this position might be for you! MBC is seeking to hire a talented and passionate developer with a deep understanding of ASP.NET and the .NET framework but who also likely knows their way around windbg.  Experience with standards-based XHTML, CSS, JavaScript and AJAX is a must.  The position is based out of Richmond Hill, Ontario (just outside of Toronto).  Office environment is young and casual.

Experience

Degree or certificate in Computer Science, Computer Engineering or college level application development program. Some experience developing production applications required.

Responsibilities

  1. Design and coding of features and bug fixes in a variety of .NET applications authored in C# (primarily ASP.NET)
  2. Occasionally working on VB6, PHP, ASP applications
  3. Communication with clients regarding progress, feature requests, answering general questions, support

Requirements

  • Strong object oriented design and programming using C# and ASP.NET 3.5
  • Strong knowledge of Microsoft SQL Server 2000/2005 (programming with T-SQL)
  • A desire to take part in the full development processing starting with design of features through implementation
  • Job experience working with C#, ASP.NET, .NET framework, JavaScript, AJAX
  • Experience working in a team environment
  • Excellent verbal and written communication skills

Additional Assets

  • Knowledge of COM+, Active Directory, Exchange, IIS, MSMQ
  • Team Foundation Server
  • PHP, ColdFusion, ASP
  • MySQL
  • Basic use of graphic design tools such as Adobe Photoshop

Salary

Commensurate with experience.

To apply for the job

Candidates will be required to provide sample source code that demonstrates strong knowledge of C# and ASP.NET. An application implementing an n-tier design is highly recommended. Additional consideration will be given to candidates who provide sample code using .NET 3.0/3.5 technologies such as LINQ, WCF, WPF.

Saturday, November 15, 2008

XHTML Strict not supported by ASP.NET

Back in October I opened up a MS Connect feedback item about a validation error I was receiving with a XHTML Strict site that used a ScriptManager with history support.  The site would fail W3C validation because the ScriptManager emits an IFRAME (when history is enabled) , and an IFRAME is not part of the XHTML Strict spec.  I just thought I’d provide the official word from Microsoft on this issue: XHTML Strict is not supported by ASP.NET!

XHTML strict is not supported by ASP.NET. Only transitional doctypes are supported, which enables iframes. Furthermore, the history feature can't be made compatible with IE 6 and 7 without using an iframe.

Posted by Microsoft on 11/12/2008 at 12:34 PM

Monday, November 10, 2008

Don’t forget about the defer attribute for non-essential external scripts

I was recently reviewing a customers eCommerce site and I noticed that the “Please Wait” page that occurs after completing an order but before you view the order was taking a long time to load.  Using Firebug I traced the issue down to an external script that was taking it’s sweet time to download; it was for affiliate tracking on a 3rd party site.

I’m all for tracking, but not at the expense of performance.  Though I haven’t seen an affiliate/ad partner use the defer attribute on their script tags before, there is good reason for you to add it.  Consider the following example:

Default

SlowRequest.aspx is just an ASP.NET page that after a 2 second delay, returns some JavaScript (not my finest code I might add)

SlowRequest

Sure enough, for the first two seconds, all you see is

Waiting

And finally (2 seconds later)

Done

Luckily for this example, this information isn’t overly pertinent – but if it were my order status, it would be.  Luckily a quick defer=”defer” attribute on your script tag and the wait is gone; the external script is loaded after the DOM is ready:

Defer