August 2008
M T W T F S S
« Jul    
 123
45678910
11121314151617
18192021222324
25262728293031

12
Aug

Sliced bread has nothing on Pandora

So I got my 3G iPhone the other day, and yes it is worth the money. I like to settle my sports bets on who did what when on what team in less than 2 minutes that I had to wait for on my 2G phone. 3G keeps my ADD in full form, get after it.

Ok back to bread newest nemesis. When I got the phone I figured I could take advantage of some of the internet radio station while on the road. The app I had heard about the most was Pandora. So I downloaded it and started playing around. WOW I am blown away by how good it is. Not only the amount of music, but by how accurate it is on your selections. The way it works is you vote on songs you hear. From that voting it fine tunes exactly what you like to hear on that channel. The music is categorized by 400 different categories and from you votes it figures out what you do and dont like. After and hour of voting I started to realize that every song I was hearing I liked. Amazing. Even artists that I had never heard of that played a song that fit my category, blamo I got it.

And all that for free. Pandora pays the music industry for the music you listen to and currently they have enough funding to pay all the bills. My guess is that this project is partially funded by the industry itself to break down music in a way that they can learn to premote better. But who cares, its perfect.

 #1. Get an iPhone 3G.
#2. Get pandora.

Done.

18
Jul

Checking moderation status of a page in Share Point

I ran into a problem recently where some pages on a site were rejected without my knowing it. I needed a quick fix to go and locate all those pages. Here is my answer:

As you crawl through a site by list or by PublishingSite, send the SPListItem into this. It will tell you if it is denied.

private static bool moderationPendingFix(SPListItem curItem)
{
 if (curItem.ParentList.EnableModeration == true)
 {
  SPModerationInformation moderationInformation = curItem.ModerationInformation;

  if (moderationInformation.Status != SPModerationStatusType.Denied)
   return true;
  else

   return false;
 }

 else

  return true;
}

29
May

Microsoft Certifications

First of all I would like to welcome me back. I really only blog when I am learning anything new. I had a good run where I was learning new stuff every week, but then work became my main squeeze again and we spent six months in a hard core relationship AKA projects.

 Soooooo, we are at that point in the year where me and my work talk about certifications and my need to complete them. So now I needed to spend some time putting my lists together of tests that I have taken and need to take to get my certifications. So here goes with some links.

MCP (Microsoft Certified Professional)
You only have to take one test to get your MCP. The prereqs are here. You can take any of the tests here to get your MCP. I took 70-315.

MCAD (Microsoft Certified Application Developer)
MCAD is a little tougher. It required three tests to be taken. The list of required tests can be found here. There tests basically have a VB and a C# counter parts. I took 70-315, 70-316 and 70-320.

MCSD (Microsoft Certified Solution Developer)
MCSD takes all the tests from MCAD and adds one more Core and one Elective exam. The requirements are here. I already have me MCAD, so I am going to take 70-300 and (70-229 - SQL 2000) or (70-340 - C# security) or (70-431 - SQL 2005).

This last one is really just for me, but hey I’ll list it.
MCTS (Microsoft Office SharePoint Server 2007 - Configuration)
The details can be found here. It only requires one test, 70-630.

Hope this list helps someone somewhere and sometime. :)

UPDATE:
For .NET 2.0 the certification is MCPD (Microsoft Certified Professional Developer). If you have your MCAD you can upgrade to MCTS (Microsoft Certified Technical Specialist) by taking one test 70-551. After that you take 70-547 to get MCPD.

If you dont have MCAD you need to take 70-536 and 70-528.

01
Feb

Embedding EF models in assembly

I have been dealing with a problem for while in Entity Framework. When I compile the EF models the ssdl, msl, csdl files are put in the solution. Then I put my connection strings to those files in my web.confg. The issue I have is that we do a lot of work on MS Terminal Server. Since we have a lot of other people on there, I force the users to save the models to a separate and unique folder. They then reference the models in their web.config. Once in a while the user will accidentally check in that web.config into TFS. That causes chaos because now I am using their models in my running environment. Any change they make breaks my project. Any change I make I don’t see. Then I have to go in and change my web.config to reference my models locations. Simple but a pain.

Well thanks to Jonathan Carter  I have now solved that problem. With a small change to the model properties the schema files get embedded into the assembly. Then you change reference in your web.config to the compiled versions. Tada no more head aches.

You can read all about it in  Julie Lerman’s post.

25
Jan

Andrew Connell talking around Florida.

This is a treat for anyone living in Florida and working on Share Point MOSS 2007. Andrew Connell is doing some speaking engagements around Florida in January and February 2008.

Tampa Office Geeks (Tampa, FL)

Building a High Performance Solutions on MOSS 2007

» January 29, 2007 @ 6p - 8p
Performance should be one of the top areas of focus on everyone’s mind when embarking on a Internet facing MOSS 2007 site. In this session we’ll look at the built-in caching capabilities added to the latest release of the SharePoint platform, including disk-based and page output caching. In addition we’ll take a look at various hot-button issues developers should be aware of when developing components for a public site built on MOSS 2007. Topics include object model techniques, how to properly manage memory to avoid the dreaded OutOfMemory exception, key sizing numbers to keep in mind when architecting your implementation and minimizing the page payload to speed up those page load times. After this session, you’ll be armed with the power to create high performance and scalable solutions in MOSS 2007.

Sarasota Developer User Group (Sarasota, FL)

 

Building & Incorporating Custom Applications on the SharePoint Platform

» February 19, 2008 @ 6p - 8p
When embarking on the development of a custom application developers face the same things over and over: you need a navigation solution, a security model, a search offering and an easy way to add update / functionality. More advanced applications want a plug in model, a way for site owners and even users to snap in new functionality without a major overhaul to the application. Other applications need to provide auditing capabilities, even alerting mechanisms as well as ways to create scheduled tasks. Before building all of this from scratch, check out WSS v3 as much of this is provided out of the box! Rapidly create new applications leveraging the existing functionality included OOTB in WSS v3. Better yet, don’t like how something works? This platform is incredibly extensible… come see how you can turn it on its head and how to build applications on top of the SharePoint platform.

25
Jan

Wow SharePoint Conference is popular this year, sold out main keynote

Wow here was are over a month away and MS has already sold out the main keynote room for SharePoint conference 2008. Seems like everyone is trying to get on board MOSS 2007 and get ahead as far as they can.

09
Jan

Updating a Entity Framework Beta 3 model after a DB change

The tools for Entity Framework are trailing way behind the Entiy Framework itself. I have been running into a lot of problems lately with changes I make to Table are not reflected in my Entity Model. It is a real pain to have to recreate the entire model every time. So here is what I figured out to fix it. I’ll give a step by step guide.

PreReqs:

You have an existing mode.

You have added a column to your Table.

 

Open the model viewer (GUI).

Right click on open space and select Model Browser. That will bring up the model browser on the right side.

In the MB select you model, right click and select ‘Update Model from Database’.

 

NOTE: The act of updating from SQL will make <!– SSDL content –>(model.ssdl) of your model correct and up to date. The <!– C-S mapping content –>(model.msl) and <!– CSDL content –>(model.csdl) are still broken.

 

To fix the other two, in “Solution Explorer” right click on you model (.edmx) and select “Open With”. Select “XML Edior”.

In the top section <!– CSDL content –> locate your table and add your column. For me it was WorkspaceNavigationType.

 

<EntityType Name=”WorkspaceNavigationType”>
          <Key>
            <PropertyRef Name=”NavigationTypeID” />
          </Key>
          <Property Name=”NavigationTypeID” Type=”Int32″ Nullable=”false” />
          <Property Name=”Title” Type=”String” Nullable=”false” MaxLength=”50″ Unicode=”false” />
          <Property Name=”PeterColumn” Type=”Int32″ Nullable=”false” />
          <Property Name=”Lous” Type=”Int32″ Nullable=”false” />
          <Property Name=”MyColumn” Type=”Int32″ Nullable=”false” />
          <Property Name=”Description” Type=”String” MaxLength=”50″ Unicode=”false” />
          <NavigationProperty Name=”WorkspaceNavigationTrees” Relationship=”HCMS.DataAccessLayer.Models.WorkspaceNavigation.FK_WorkspaceNavigationTrees_WorkspaceNavigationType” FromRole=”WorkspaceNavigationType” ToRole=”WorkspaceNavigationTrees” />
        </EntityType>

 

Go down to the bottom of the XML and located the <!– CSDL content –>  tag and located your table in there.

 

<EntitySetMapping Name=”WorkspaceNavigationType”>
            <EntityTypeMapping TypeName=”IsTypeOf(HCMS.DataAccessLayer.Models.WorkspaceNavigation.WorkspaceNavigationType)”>
              <MappingFragment StoreEntitySet=”WorkspaceNavigationType”>
                <ScalarProperty Name=”NavigationTypeID” ColumnName=”NavigationTypeID” />
                <ScalarProperty Name=”Title” ColumnName=”Title” />
                <ScalarProperty Name=”Description” ColumnName=”Description” />
                <ScalarProperty Name=”PeterColumn” ColumnName=”PeterColumn” />
                <ScalarProperty Name=”Lous” ColumnName=”Lous” />
                <ScalarProperty Name=”MyColumn” ColumnName=”MyColumn” />
              </MappingFragment>
            </EntityTypeMapping>
          </EntitySetMapping>

 

Save the XML, and compile Your done. If you open your model browser, you will see your new column (or changed).

05
Jan

Match databases with applications on MOSS

One of the confusing parts of MOSS is the content DB naming schema. By default it wants you to use a cryptic naming of WSS_Conent_[Random GUID]. I needed to know what DB matched up with what application so I wrote this.

http://waitingimpatiently.com/wp-content/uploads/2008/01/contentdblist.zip

The output is to a file called ConentDB_List.txt in the folder where you run it. The format is below.

Display Name: Agile Portal
   WSS_Content_agiletemplatetest
Display Name: beard.mysite.com
   WSS_Content_beard
Display Name: Cal Test
   WSS_Content_caltest
Display Name: calsandbox.mysite.com
   WSS_Content_calsandbox
Display Name: cmstest
   WSS_Content_cmstest

And Yes you should always avoid the GUID name and name it yourself with a name that means something to you.

28
Dec

How do you know your a nerd?

Because you get excited by things like this, SharePoint Conference 2008. Holy crap I need a girl friend before I start using pocket protectors. But hey, I have a great job and knowing as much as I can makes it even better.

28
Dec

Speaking of waiting impatiently, TFS 2008 volume license. [foot tappng]

For some unknown reason when Microsoft decided to release TFS for trial and WorkGroup (5 users) but not for a version for the larger companies that are supported by Microsoft. They decide to make use wait until January of 08. I want to get off of Beta 2. WAITING??

You can read the details on  Brian Harry’s blog.