By participating in beta exams, you have the opportunity to provide the Microsoft Certification program with feedback about exam content. Having participated in the development process of these exams (including 71-564 below!), I know they depend on the contributions of experienced IT professionals and developers to improve and maintain the value of Microsoft certifications. But hurry fast, these spots don't last long.

Exam 71-564: Pro: Designing and Developing ASP.NET Applications Using the Microsoft® .NET Framework 3.5

Exam 71-565: Pro: Designing and Developing Enterprise Applications Using the Microsoft® .NET Framework 3.5

November 15, 2008 13:49 by RafaelV
E-mail | Permalink | Comments (1) | Comment RSSRSS comment feed

We .NET developers find ourselves at an interesting crossroad today, which can be summed up by a question: when should I take the plung and learn Silverlight/WPF/XAML? If you're like me, this decision may depend on whether or not we have the need to use it - like clients asking for it. If you do, the next thing you'll need is the confidence that Silverlight/WPF/XAML can handle the needs that business applications present to us. There are two schools of thought on whether or not this is true. Some say no; all of the colleagues I hang with, including Rocky Lhotka, say yes.

If you're like me, you don't have a current business need to learn Silverlight/WPF/XAML. Despite that, I'm still going to everything I can to learn it well. In my opinion, and many others that I respect, Silverlight/WPF/XAML is the future of UI development. Many believe that in about 5-10 years it will be take over as WinForms and WebForms. As Rocky explains in his post, once you get past the learning curve the UI development is much more productive.

To assist me in my commitment to learn Silverlight, I've volunteered to do a Silverlight presentation in about 3 weeks. The best way to learn anything is to teach it; so I'm very much looking forward to it. If I can get through this presentation, I know I will comfortable enough with Silverlight to start using it on a regular basis. My hope is that I'll also find new ways to use Silverlight, along with using it as a regular part of my freelance projects. Once I do that, I should be ready for primetime consultant work with future clients that my ask for it.

October 25, 2008 10:09 by RafaelV
E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

http://microsoftpartnerevents.com/acrossamerica/Atlanta.aspx  

September 8, 2008 21:25 by RafaelV
E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

This service pack includes full support for SQL Server 2008 (including support for new date and file stream capabilities), new features for ASP.NET AJAX, performance improvement for WPF, and more!

http://www.microsoft.com/downloads/details.aspx?FamilyId=AB99342F-5D1A-413D-8319-81DA479AB0D7&displaylang=en

August 26, 2008 07:42 by RafaelV
E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

Last night, I went to a Tech Night at Magenic where all of us got to see the basics of creating a Silverlight and WPF applications. After seeing how simple it is to create them, and the power of the technology as far as what you can do with, I'm starting to get really excited about using Silverlight in a live project. However, I need to focus on the goals I have at hand first. But in the meantime, it'll be good for me to keep paying attention to as much as possible in anticipation of being able to that in the future.

Here's something cool you can do with Silverlight - give an object the ability to be clicked and dragged.

http://simplesilverlight.wordpress.com/2008/08/13/drag-and-drop-silverlight-example/

August 11, 2008 21:10 by RafaelV
E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

Tracey and I have been on Facebook for about 2 weeks, so we're still getting the hang of things. While I was checking out some other features, I found that there's a development kit available to create applications using Facebook data using Visual Studio Express Editions - both web and windows applications. Could be useful!

http://www.microsoft.com/express/samples/facebook/

August 1, 2008 23:02 by RafaelV
E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

After implementing the AJAX Extension from ASP.NET 3.5 in my family portal website that we use to organize our household, I've gained much more confidence with UpdatePanel controls. I still need to make some minor tweaks to it; but for the most part, I love being able to produce a web application without all that page refreshing.

However, I also know that I have more to learn about AJAX, and that there are more features that I can take advantage of. A cool way to do that would be to use controls that have AJAX built-in. In my ASP.NET 1.1 and 2.0 days, I was introduced to Anthem.NET, which gives you controls that encapsulate the complicated code needed to make AJAX work. Therefore, we were able to simply replace regular ASP.NET web controls with Anthem controls that responded to callbacks instead of the normal postbacks.

There is also an open source project developed by DotNetSlackers called the AJAX Data Controls (ADC), which is developed on top of the ASP.NET AJAX Extension. My man Jason Gaylord has been using them for a while, and has just recently joined that development team to convert these controls for ASP.NET 3.5 and Visual Studio 2008. This set of controls are now available for download, which includes a GridView, Repeater, DataList, and Page controls.

I'm hopeful that I'll gain more AJAX functionality out of the box with these controls than I could implement on my own, along making my AJAX development more efficient. Of course, I'll keep you posted either way; but if they're good enough for Jason, I'm confident they will serve me well.

July 10, 2008 22:53 by RafaelV
E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

One thing I've always loved about the .NET community is our willingness to share. I've recently come across yet another free avenue for getting a .NET overview - it's called .NET University. They are actually providing courseware that's starting to be taught in several major cities, and that you can also download & teach to others. The newest course made available is ASP.NET University, which will premier in Atlanta (Alpharetta, Georgia to be exact!)

Their schedule always shows a few courses available in Orlando, including an overview of BizTalk and Sharepoint. Hopefully this will catch fire and other courses & locations will be available soon.

July 5, 2008 22:39 by RafaelV
E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

I am back from teaching Course 512 in Philadelphia. I had a great time.  Since Learning Tree doesn't have an Ed Center in Philly, I got to setup a remote classroom with laptops in the Congress room at the Crowne Plaza Hotel, located in downtown. It was a terrific spot to have a class, with plenty of places to have lunch and dinner. And yes, I ate a Philly Cheese Steak sandwich from Rick's Original Philly Steak restaurant located at Reading Terminal Market (and it was absolutely delicious!) But the best part of the trip was the people I got to know, particularly my students for the week.

We had fun all week; and though everyone worked hard on the exercises all week, there was no stress. I even had time to show them a little bit of AJAX and SSRS. What made this class special was how they enjoyed the experience and each other; having a class like this makes it easy to enjoy the teaching experience as well. This was also the first time I ever had a group picture taken at the end of class. This is a picture of me and my class standing in front of a mural by the poolside (that's me in the orange shirt and black tie striking the nice pose in the back.)


I want to thank the Philly 512 for a wonderful first ever trip to Philadelphia, for the great hospitality that they showed me, and for being the greatest class ever. I wish them all the best of luck in their ASP.NET endeavors and in their development careers.

You all get an A!  :-)

June 30, 2008 20:26 by RafaelV
E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

Gerry O' Brien of the Microsoft Learning team explains why they there are no entry level certifications for developers. The reason being is because you'd have to be tested on core programming concepts - which are not really specific to a particular Microsoft developer tool, but in fact apply to several of them. This reiterates the point that Microsoft is working hard to ensure that the certification exams we take actually test you on your knowhow of the Microsoft tool that you're being tested on.

The question I have is this ... does that also mean that passing a MCTS exam automatically mean that you have a good knowledge of core programming concepts. If not, then I think they should and that core programming concepts should be tested indirectly. In other words, having this basic understanding as a prerequisite should be kept in mind when creating the MCTS exams. From what I can see, they are already do.

But then again, I haven't taken an exam for a few years. Furthermore, I decided to wait to take the ASP.NET 3.5 exams, even though I studying with ASP.NET 2.0 materials. My hope is that the new exams will be better in line with Gerry's philosophy of sticking with being tested on the product; if that's the case, then I hope to do very well on the exams. As soon as I can, I'll be taking exam 70-562, followed by 70-536 to complete my MCTS certification for ASP.NET 3.5. Wish me luck!

June 25, 2008 23:26 by RafaelV
E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

One thing I really love about the ASP.NET community of developers (as well as the development community in general) is how we share things with each other for free. I love free stuff! Some of the best things in life are free; and the Internet is no different - especially now.

I recently added another website to my regularly used bookmarks - The Daily Plate. It's a free service that allows me to log my meals and my workouts with easy to use tools that tell me caloric intake, protein, sugars, carbs, etc, as well as how many calories I've burned. And based on my current weight, it can even tell me how calories I have left to eat if I want to lose 2 pounds this week. Very cool.

My brother, Sebastian, and I have both created personal family portals that our families use to maintain calendars, chores, blogs, photos, etc. Once our friends saw my brother's portal, they all asked how they could get one; so he reprogrammed it so others could sign-up to get one. It's called HouseholdPages.com. At first, he was going to do the free trial thing (like we used to do back in the day, which didn't work!); but I was able to convince him to do a completely free offering. After 6 months or so, he has 450+ families signed up. He has since upgraded the site with the ability to invite friends and extended family members with read-only access. The possibilities are endless!

If you're a developer that has built something based on a personal need of yours, I guarantee that someone else in the world needs the same service. But unless you a lot of due diligence, don't expect to start pulling in huge bucks right off the bat. People like me want FREE first; then if I can't live without it, I'll consider whatever premium services you have. Even without premium offerings, there are many creative ways to make money from your free offerings (including pay per click ads, sponsorship, etc.)

Here's some other free sites that I can't do without:

Don't forget about the million of blog sites out there - one's bound to have info you're interested in.

June 13, 2008 17:22 by RafaelV
E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

Whenever I teach my students about the navigation web controls (Menu, TreeView and SiteMapPath) and sitemap files in ASP.NET, it's a guarantee that someone is going to ask me if you can use them with querystrings. So when I say "no", I can feel the whole room sigh with disappointment. I can't blame them - it's a shame that this wasn't built in.

Fortunately for us, ASP.NET gives you the ability to create your own sitemap provider class so that you can extend the functionality of your sitemap files any way you like. As a result, we can create our own code to give our sitemap files the ability to use querystring parameters. My good friend, Jason Gaylord, shares with us a post that he found that does exactly that; he also gives you some VB code to help you create the sitemap provider to make this work.

This should lead to less sighs of disappointment from my classes moving forward. Thanks, Jason!

June 8, 2008 22:39 by RafaelV
E-mail | Permalink | Comments (1) | Comment RSSRSS comment feed

A few months ago, I had the pleasure of meeting Gerry O'Brien, who in charge of the development of Microsoft certifications for developers. I was invited, along with 6 other wonderful ASP.NET developers, to a 3-day work session where we basically got to decide the outline of the new ASP.NET 3.5 pro exam. This would later be the basis of the prep guide for the ASP.NET 3.5 Pro Exam.

In short, though our outline was totally from the previous 2.0 outline and vastly different from the other two groups that were present, my group was very proud of what came up with for the outline and feel that meets all of the objectives that Gerry was looking for. Interestingly enough, a developer noticed this difference and asked on Trika's blog was the deal was! Gerry answered that question very nicely in his blog.

The moral of the story is, don't expect the new 3.5 exams to be like the 2.0; a lot work has been put forth to make them better and more focused on what you're supposed to be tested on ... the product, and not everything that goes with being a professional developer.

June 7, 2008 15:49 by RafaelV
E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

When I began my IT career back in 1992, I started out as a computer instructor for Computer Tutors USA teaching introductory classes in Windows 3.1, Microsoft Office, WordPerfect, dBase, and many more titles. I taught for 4 years; by that time I was teaching advanced courses, including advanced Access database programming. Those skills springboarded my career as a web developer.

Beginning in February 2007, I was excited to make my return to the classroom for Learning Tree International. I am a part-time instructor (which most of us are) teaching Course 512 - Developing ASP.NET Web Applications: Hands-On. Teaching this class every 2 months or so has been a great way for me to keep my ASP.NET skills sharp, because I always learn something new and am able to sharpen my saw by reviewing techniques that I normally don't use. The added bonus is meeting other aspiring ASP.NET developers and discussing the problems that they face; and if I'm lucky, I hopeful that I can give them a hand with whatever their goals they have for the course.

This gig also gives me the opportunity to visit places I've never been, and my next stop will be another first ... Philadelphia (yo, Adrian!!) I'll be there the week of June 23th, and this time I won't be in one of Learning Tree's education centers; this time I get to teach out of hotel, setting up laptops the day before - just like I used to for Computer Tutors. The only difference is that I don't have to worry about delivering all the hardware, someone else will be meeting there with that - so it should be a much better experience than back in the day.

And now that I've started my blog, I'll give you a recap of what I learn from this class (and all of my classes.) By the way, Learning Tree is always looking for expert IT specialists in all fields (not just programming) as well as business and project management. Let me know if you interested and can break away from your day job at least 4 weeks a year, and I'll put you in touch.

June 7, 2008 14:02 by RafaelV
E-mail | Permalink | Comments (1) | Comment RSSRSS comment feed

When I made the move from classic ASP to ASP.NET back in 2003, one of the things that I was excited about giving up was having to put business logic on the same page as my presentation layer. In fact by that time, I was already in the habit of writing my ASP pages with most of my server-side scripting at the top of each page with as little as possible in my HTML. Once I got the vision of true OOP, my spaghetti code days were over ... so I thought.

It appears that a lot of ASP.NET developers are having a hard time letting go of the old days. For example, the web application used to maintain this blog site (BlogEngine.NET - highly recommend it!) is riddled with spaghetti code. And not just for referencing public variables from the code behind page, I'm talking about importing a class at the top of the web form and refering to properties and methods. Here's a sample of BlogEngine.NET using its BlogEngine.Core class to provide the Name and Description of my blog:

<%@ Master Language="C#" AutoEventWireup="true" CodeFile="site.master.cs" Inherits="themes_curiouslygreen_site" %>
<%
@ Register Src="~/admin/menu.ascx" TagName="menu" TagPrefix="uc1"
%>
<%
@ Import Namespace="BlogEngine.Core" %>

<div id="header_inner">
<h1><%=BlogSettings.Instance.Name %></h1
>
<div id="slogan" style="text-align: right"><%=BlogSettings.Instance.Description %></div
>
</div
>

I've already extended this code by taken out some of this in lieu of using the unused code behind pages. However, in doing so, I noticed some benefits that wasn't expecting from this old school approach:

  • Easy to Maintain. For simple web forms, using just the one page isn't a bad option versus having to flip back and forth from your Design and Code view.
  • Less code. Not having to deal with the code behind page has been an unexpected benefit. Why create a bunch of label or literal controls to display properties from a class if you can just specify them directly in your web form?
  • More Readable. One thing that made sense about classic ASP was that it was clear what elements were static and where your HTML was going to be dynamically generated. So far, it's been very easy to read and understand this way of coding web forms versus dealing with a lot of web server controls that look like HTML.
  • Logic still separated. You'll still create your classes to hold your business logic, you just save the effort in the code-behind.

Bottom line - ASP.NET doesn't mean the end of spaghetti code after all; as long as you stay true to OOP concepts, it just means you can write it cleaner. However, make no mistake, this does not mean the death of the code behind - far from it. I simply learned that I don't have to always shy away from putting server code in my web forms. Expanding my horizons (as they say) ... going outside my shell. You should try it sometime.

June 6, 2008 22:39 by RafaelV
E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed