Quite some time ago I asked Mark to share his ideas around how SharePoint 2010 will impact areas of his work. We never got a chance to sit down and do a recorded interview, ironically, because both of us were busy working on our SharePoint 2010 projects. Mark was nice enough to donate one of his evenings to send me his thoughts on questions I was going to ask:

Q: Mark, tell us what you do at Habanero?

A: I find the best way to sum up a UE developer is someone who is responsible for front-end development. We write HTML, CSS, JavaScript, and work within the presentation tier of various web applications (C#, PHP, etc.), and essentially are the bridge between engineers and designers.

Q: What's your approach in terms of starting a new user experience project?

A: It all starts working with IAs, BAs, and designers to figure out whether what is being discussed has technical implications, barriers, etc. Once we have a design direction and UE development can begin, I always start with the master page and my initial page layouts. Getting this shell in place is important, and I like to have some sort of container to work within. Then I'll start on global chrome/theming (header, footer, and global elements) so the project has that initial look and feel and you can capture the essence of the design throughout the entire development process. After that it's nailing down individual pages, controls and Web Parts and moving through them piece by piece.

Q: What tools do you use in your work?

A: I write most of my code within Visual Studio (C#, JavaScript, CSS). Since I work directly with designers a lot and produce web assets from their mockups I also use Adobe Photoshop and Adobe Fireworks on a day-to-day basis (and Adobe Flash on occasion). I have all modern browsers installed on my machine for testing, an iMac that sits next to me and virtual machines for testing different types of environments or browsers that are OS dependent (e.g. Internet Explorer 6). For script debugging and DOM inspection I prefer Firebug, but there are all sorts of other add-ons I use from time to time (e.g., code validators, connection throttlers for simulating slower connections, user agent spoofers, etc). I find the Internet Explorer developer toolbar a bit clunky, but it can be useful for Internet Explorer specific styling/JavaScript issues that may arise.

Q: Thinking about SharePoint 2010, does your approach change? What about tools? Anything to be aware of for starting to work with SharePoint 2010 from a UE developer perspective?

A: One big advantage to SharePoint 2010 is that it no longer officially supports Internet Explorer 6 and has significantly improved the page layouts and master page rendering. This makes it easier to style out-of-the-box components and requires less browser-specific hacks. Another thing I really like about SharePoint 2010 is how much more flexibility there is on the client-side. Having the JavaScript API for the Client Object Model (COM) means I can write pretty cool Web Parts that interact with the SharePoint back-end all from the client, no custom services required. I can create / update lists, query pretty much anything I want and it's super simple to do. Lastly, the development tools themselves are much improved. SharePoint integration into Visual Studio 2010 makes creating features, Web Parts, etc., a snap and really empowers the UE developer in this way. The GUI is fairly simple and easy to use so it gives me a lot more freedom, reduces overhead, and makes the overall development process quicker.

Q: You've been working with SharePoint for quite some time now, and I bet you see where the product is going and maybe some of the improvements that may come in the future. Anything in particular you'd like to share?

A: Well I think there is still improvement that can be done to the UI rendering. The layouts are greatly improved, but some of the Web Parts are still using tables and semantically incorrect markup. Also, community developers and knowledge sharing is key for any new product. Right now support is quite poor and it would be nice to see that evolve in a more positive direction in the coming months after SharePoint 2010 goes RTM. I really hope that UE developers within the SharePoint community can take advantage of the COM JavaScript API and leverage an easier Web Part development experience to create all sorts of cool custom controls and make it a better product offering overall.

That's it, I hope you too found a few goodies in Mark's interview!