Healthtracker

October 17, 2009

A friend of mine just recently released a Windows Mobile program called HealthTracker. My first thought was “eh another calorie program” but I agreed to take a look at it for him. I must say I’m really impressed by it! It has a really nice clean interface that makes it easy to use and a pleasure to use.

I’ve been using it for about a week now, and it’s has alot of nice features in it. The database of foods is fairly large and it’s easy to add in new features. There’s a couple of things I would want such as adding exercise and charts, but I’m told that’s coming soon in a next release.

While using the program, I was really pleased to see that it has an auto-update feature. A couple times this week, I received notifications of new updates being available and it installed them when I gave it the okay. Really slick and I haven’t seen that on any other mobile program.

The other thing that seems to be of interest is the syncing with Microsoft HealthVault. The feature is turned off right now, but should be available again soon. The idea of being able to back my data up to Healthvault, aka the cloud has some appeal to me.
The program also has LiveID verification in it which is really intriguing since LiveID does not have a Mobile API. I’m really curious as to how he did that! Being able to do LiveID verfication in a mobile app is awesome! That really changes the game as to what you can do with Mobile apps, I can see syncing with Dynamics, etc

The design of the program is what I would expect out of a touch application, which is sadly not the case for 99% of windows mobile applications but is the case with most iphone apps. It makes me wonder why other windows mobile applications are not a visually attractive.

The program can be found here, http://www.optimaldepth.com/healthtracker.html , give it a try it you have time, it’s free.


Moving to Ubuntu 9.04

July 6, 2009

 

After having the Netbook for around a month running XP, and a brief run with Win7 (I didn’t even want to bother with Vista), I decided to give Ubuntu 9.04 a go.

For the first week I ran Ubuntu off of the Live CD using a USB boot.  I created my USB boot using  Unetbootin  http://unetbootin.sourceforge.net/ .  Here’s a snippet from the site “UNetbootin allows you to create bootable Live USB drives for a variety of Linux distributions from Windows or Linux, without requiring you to burn a CD.”.  I won’t repeat their install instructions as it is pretty comprehensive.

I used an 8gb flash drive for the test and the entire OS install was a little over than 2gb, which included OpenOffice!  To have a completely portable machine, I would recommend a minimum 4gb USB stick.

The only  “shortcoming” that this was a Live boot and thus any changes I made were lost between boots.  This was easily resolved in basically two steps:

  1. Edit syslinux.cfg to make persistent
  2. Download a larger casper-rw loop file

Editing syslinux.cfg was simply adding persistent to one line. I added ‘persistent’ after splash.  Technically this is all that is needed to be done to make the drive persistent.

The default casper-rw loop though was too small for me, only 1gb.  You can create your own larger one, or download one.  I chose to download a 4gb one for expediency.  Below are some of the loop files that can be downloaded from pendrivelinux.  After downloading, just extract the file out to the root of the USB and you done!

 

On the HP Mini, everything except the sound worked out of the box. I’ve been able to resolved the issue with sound and to get it to play through my USB headphones and record from that mic as well.  I’ll post that in a follow-up since this one is getting too long.

 

Update:

I was impressed at how easily this was done and I then made a USB boot of Ubuntu specifically for my son that has some of the great educational suites available on it like GCompris and Childsplay  (If you have children I would recommend checking this suites out, they go from ages 2-18).  This way when we go traveling to visit the grandparents we can boot up the computer with his USB stick and he’ll have everything that he needs.


Pop vs Soda

July 5, 2009

     This is a slightly off-topic post.  Growing up around the U.S., one of the things that always stood out in each region I lived was those that sad “Pop” and those that said “Soda”.   I found the greatest concentration of “Pop” people in the midwest.

      Recently, I ran across this site, http://popvssoda.com:2998/   where they have done some work to try bucket the Pop, Soda across the country.

     While the data is probably not of the highest accuracy, it does reflect what I have seen, and they have done a good job off adding in additional segmentation, like those who say Coke instead of Pop or Soda (seems to be large in the South).

image

Digg This

Netbook venture

June 20, 2009

After reading much about the different netbooks out on the market I have decided to purchase a HP Mini 1000. I have only had it for a few days and I’m very impressed iwth it overall. I upgraded the memory on it to 2gb at a cost of $20, and purchasted a Transcend 8 gb stick to replace the 2gb one that came with it (another $25) and bought a 32gb SD to max out my storage space.

The keyboard is about 90% the size of a regular one and is very easy to transport. I’m thinking about replacing XP with Win7, when I do, I’ll give you an update on how it goes. According to much of what I have read the performace should be better.

Technorati :
Del.icio.us :
Zooomr :
Flickr :


Setting up SMTP on windows 2008 server (windows 2003) To user Gmail as SMTP host

January 28, 2009

I ran across this site the other day on setting up W2K8 to act as a relay to gmail, etc.  Pretty interesting article.   http://www.codingbliss.com/cb/?p=38  I know this has been a pain point for many people and there’s not alot of information out there on the subject.


Skydrive integration with Windows explorer

January 14, 2009

I have been an user of Skydrive from it’s early days but I have always found it’s like of integration with Windows Explorer an annoying an limiting aspect of the product. Live Mesh does a great job of providing integration but it’s online space is limited. I expect that we will see those services merge sometime in the future. I had started to create an explorer integration with SkyDrive when I ran across a program called Gladinet, http://www.gladinet.com/ . They have a product that allows to you access Skydrive as a virtual drive. You can also use Amazon S3 which I haven’t tried yet but the Skydrive integration works very well. They also have a 64-bit version which I like since I have machines that are x64 and x86. (update:  the 64 bit installer is not a x64 program, it still is a x86 program.  You can verify this by viewing the program under task manager where it shows up as gladinetclient.exe*32) As of this writing I have not been able to get Gladinet to work on W2K8 x64 and I did have some issues installing in on Vista x86 due to IIS 7.0 which I fixed by changing the default port to 8080. I prefer to have IIS running on 8080 instead of 80. The default of 80 always seems weird to me. I like the 8080 default that tomcat uses. (update:  I have been able to get Gladinet to install on my W2K8 x64 machine.  The issue was that Gladinet uses the Web Client service which is not a feature that is on by default in W2K8.  This is easily remedied by installing the Desktop Experience Feature.)

So in summary, here is my success to date on installing Gladinet

OS version status
Vista x86 yes
Win 7 beta build 7000 x86 yes
W2K8 x64 noyes

 

There is also a drive extension called GMail drive, http://www.viksoe.dk/code/gmail.htm that I am sure many are familiar with. It is a great tool based off an idea by Richard Jones, http://richard.jones.name/google-hacks/gmail-filesystem/gmail-filesystem.html, to use gmail as a file system for storage. With Gmail providing 7gb right now and 20mb attachments it can be really useful. The lack of x64 bit support for gmail drive prevented from using it extensively, but it’s a sound extension that I’ve had no problem with. GMail drive also has some terrible warning about possibly not being supported in the future.  Something that I hope Gladinet can avoid.


MOSS SP1 enabling Ajax

December 24, 2008

I said earlier that I would post what I did for MOSS SP1 to enable Ajax to use the Chatterbox webpart, so here it is in six easy pieces. The project seems to be inactive for the last year, which is a shame since it is very useful. I was able to implement Ajax beta of Chatterbox on MOSS SP1 without major difficulties.

1.  In <configSections> add the below sectionGroup

<sectionGroup name="system.web.extensions" 
type="System.Web.Configuration.SystemWebExtensionsSectionGroup,
 System.Web.Extensions, Version=3.5.0.0, Culture=neutral,
 PublicKeyToken=31BF3856AD364E35">

 

<sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"><section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/> 
<sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">

<section name="jsonSerialization" type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="Everywhere"/>

<section name="profileService" type="System.Web.Configuration.ScriptingProfileServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>

<section name="authenticationService" type="System.Web.Configuration.ScriptingAuthenticationServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>

<section name="roleService" type="System.Web.Configuration.ScriptingRoleServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>

</sectionGroup>

</sectionGroup>

</sectionGroup>

2.  In <SafeControls> add

<SafeControl Assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" Namespace="System.Web.UI"
 
TypeName="*" Safe="True" />

3.  In <httpHandlers> add

<remove verb="*" path="*.asmx"/>
<add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
 
<add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
 
<add verb="GET,HEAD" path="ScriptResource.axd" validate="false" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
 

 

4. In <httpModules> add

   1: <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, 
   2: PublicKeyToken=31BF3856AD364E35"/>

5.  In <assemblies> add

<add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>

6.  Under <pages> add the following <controls> section

<controls>
 
<add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
 
<add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
 
</controls>

 

I have posted my entire config file that includes the chatterbox additions below for reference

 

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
 
<configuration>
 
<configSections>
 
<sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
 
<sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
 
<section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
 
<sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
 
<section name="jsonSerialization" type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="Everywhere"/>
 
<section name="profileService" type="System.Web.Configuration.ScriptingProfileServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
 
<section name="authenticationService" type="System.Web.Configuration.ScriptingAuthenticationServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
 
<section name="roleService" type="System.Web.Configuration.ScriptingRoleServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
 
</sectionGroup>
 
</sectionGroup>
 
</sectionGroup>
 
<sectionGroup name="SharePoint">
 
<section name="SafeControls" type="Microsoft.SharePoint.ApplicationRuntime.SafeControlsConfigurationHandler, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
 
<section name="RuntimeFilter" type="System.Configuration.SingleTagSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
 
<section name="WebPartLimits" type="System.Configuration.SingleTagSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
 
<section name="WebPartCache" type="System.Configuration.SingleTagSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
 
<section name="WebPartWorkItem" type="System.Configuration.SingleTagSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
 
<section name="WebPartControls" type="System.Configuration.SingleTagSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
 
<section name="SafeMode" type="Microsoft.SharePoint.ApplicationRuntime.SafeModeConfigurationHandler, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
 
<section name="MergedActions" type="System.Configuration.SingleTagSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
 
<section name="PeoplePickerWildcards" type="System.Configuration.NameValueSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
 
</sectionGroup>
 
<sectionGroup name="System.Workflow.ComponentModel.WorkflowCompiler" type="System.Workflow.ComponentModel.Compiler.WorkflowCompilerConfigurationSectionGroup, System.Workflow.ComponentModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
 
<section name="authorizedTypes" type="System.Workflow.ComponentModel.Compiler.AuthorizedTypesSectionHandler, System.Workflow.ComponentModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
 
</sectionGroup>
 
</configSections>
 
<SharePoint>
 
<SafeMode MaxControls="200" CallStack="false" DirectFileDependencies="10" TotalFileDependencies="50" AllowPageLevelTrace="false">
 
<PageParserPaths>
 
</PageParserPaths>
 
</SafeMode>
 
<WebPartLimits MaxZoneParts="50" PropertySize="1048576" />
 
<WebPartCache Storage="CacheObject" />
 
<WebPartControls DatasheetControlGuid="65BCBEE4-7728-41a0-97BE-14E1CAE36AAE" />
 
<SafeControls>
 
<SafeControl Assembly="System.Web, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" Namespace="System.Web.UI.WebControls" TypeName="*" Safe="True" AllowRemoteDesigner="True" />
 
<SafeControl Assembly="System.Web, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" Namespace="System.Web.UI.HtmlControls" TypeName="*" Safe="True" AllowRemoteDesigner="True" />
 
<SafeControl Assembly="System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" Namespace="System.Web.UI" TypeName="*" Safe="True" AllowRemoteDesigner="True" />
 
<SafeControl Assembly="System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" Namespace="System.Web.UI.WebControls" TypeName="SqlDataSource" Safe="False" AllowRemoteDesigner="False" />
 
<SafeControl Assembly="System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" Namespace="System.Web.UI.WebControls" TypeName="AccessDataSource" Safe="False" AllowRemoteDesigner="False" />
 
<SafeControl Assembly="System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" Namespace="System.Web.UI.WebControls" TypeName="XmlDataSource" Safe="False" AllowRemoteDesigner="False" />
 
<SafeControl Assembly="System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" Namespace="System.Web.UI.WebControls" TypeName="ObjectDataSource" Safe="False" AllowRemoteDesigner="False" />
 
<SafeControl Assembly="Microsoft.SharePoint, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace="Microsoft.SharePoint" TypeName="*" Safe="True" AllowRemoteDesigner="True" />
 
<SafeControl Assembly="Microsoft.SharePoint, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace="Microsoft.SharePoint.WebPartPages" TypeName="*" Safe="True" AllowRemoteDesigner="True" />
 
<SafeControl Assembly="Microsoft.SharePoint, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace="Microsoft.SharePoint.WebControls" TypeName="*" Safe="True" AllowRemoteDesigner="True" />
 
<SafeControl Assembly="Microsoft.SharePoint, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace="Microsoft.SharePoint.ApplicationPages" TypeName="*" Safe="True" AllowRemoteDesigner="True" />
 
<SafeControl Assembly="Microsoft.SharePoint, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace="Microsoft.SharePoint.SoapServer" TypeName="*" Safe="True" AllowRemoteDesigner="True" />
 
<SafeControl Assembly="Microsoft.SharePoint, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace="Microsoft.SharePoint.Meetings" TypeName="*" Safe="True" AllowRemoteDesigner="True" />
 
<SafeControl Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace="Microsoft.SharePoint" TypeName="*" Safe="True" AllowRemoteDesigner="True" />
 
<SafeControl Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace="Microsoft.SharePoint.WebPartPages" TypeName="*" Safe="True" AllowRemoteDesigner="True" />
 
<SafeControl Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace="Microsoft.SharePoint.WebControls" TypeName="*" Safe="True" AllowRemoteDesigner="True" />
 
<SafeControl Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace="Microsoft.SharePoint.ApplicationPages" TypeName="*" Safe="True" AllowRemoteDesigner="True" />
 
<SafeControl Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace="Microsoft.SharePoint.SoapServer" TypeName="*" Safe="True" AllowRemoteDesigner="True" />
 
<SafeControl Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace="Microsoft.SharePoint.Meetings" TypeName="*" Safe="True" AllowRemoteDesigner="True" />
 
<SafeControl Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace="Microsoft.SharePoint.Workflow" TypeName="*" Safe="True" AllowRemoteDesigner="True" />
 
<SafeControl Assembly="Microsoft.SharePoint.Search, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace="Microsoft.SharePoint.Search.WebControls" TypeName="*" Safe="True" AllowRemoteDesigner="True" />
 
<SafeControl Assembly="Microsoft.SharePoint.Search, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace="Microsoft.SharePoint.Search.Internal.WebControls" TypeName="*" Safe="True" AllowRemoteDesigner="True" />
 
<SafeControl Src="~/_controltemplates/*" IncludeSubFolders="True" Safe="True" AllowRemoteDesigner="True" />
 
<SafeControl Assembly="ChatterAjax, Version=1.0.0.0, Culture=neutral, PublicKeyToken=cb32232c07943949" Namespace="ChatterAjax" TypeName="*" Safe="True" AllowRemoteDesigner="True" />
 
<SafeControl Assembly="Microsoft.RMCS.SDK, Version=1.0.0.0, Culture=neutral, PublicKeyToken=cb32232c07943949" Namespace="Microsoft.RMCS.SDK.SharePoint" TypeName="*" Safe="True" AllowRemoteDesigner="True" />
 
<SafeControl Assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" Namespace="System.Web.UI"
 
TypeName="*" Safe="True" />
 
</SafeControls>
 
<PeoplePickerWildcards>
 
<clear />
 
<add key="AspNetSqlMembershipProvider" value="%" />
 
</PeoplePickerWildcards>
 
</SharePoint>
 
<system.web>
 
<securityPolicy>
 
<trustLevel name="WSS_Medium" policyFile="C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\config\wss_mediumtrust.config" />
 
<trustLevel name="WSS_Minimal" policyFile="C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\config\wss_minimaltrust.config" />
 
</securityPolicy>
 
<httpHandlers>
 
<remove verb="*" path="*.asmx"/>
 
<add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
 
<add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
 
<add verb="GET,HEAD" path="ScriptResource.axd" validate="false" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
 
<remove verb="GET,HEAD,POST" path="*" />
 
<add verb="GET,HEAD,POST" path="*" type="Microsoft.SharePoint.ApplicationRuntime.SPHttpHandler, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
 
<add verb="OPTIONS,PROPFIND,PUT,LOCK,UNLOCK,MOVE,COPY,GETLIB,PROPPATCH,MKCOL,DELETE,(GETSOURCE),(HEADSOURCE),(POSTSOURCE)" path="*" type="Microsoft.SharePoint.ApplicationRuntime.SPHttpHandler, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
 
</httpHandlers>
 
<customErrors mode="On" />
 
<httpRuntime maxRequestLength="51200" />
 
<authentication mode="Windows" />
 
<identity impersonate="true" />
 
<authorization>
 
<allow users="*" />
 
</authorization>
 
<httpModules>
 
<clear />
 
<add name="SPRequest" type="Microsoft.SharePoint.ApplicationRuntime.SPRequestModule, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
 
<add name="OutputCache" type="System.Web.Caching.OutputCacheModule" />
 
<add name="FormsAuthentication" type="System.Web.Security.FormsAuthenticationModule" />
 
<add name="UrlAuthorization" type="System.Web.Security.UrlAuthorizationModule" />
 
<add name="WindowsAuthentication" type="System.Web.Security.WindowsAuthenticationModule" />
 
<add name="RoleManager" type="System.Web.Security.RoleManagerModule" />
 
<add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
 
<!-- <add name="Session" type="System.Web.SessionState.SessionStateModule"/> -->
 
</httpModules>
 
<globalization fileEncoding="utf-8" />
 
<compilation batch="false" debug="false">
 
<assemblies>
 
<add assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
 
<add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
 
</assemblies>
 
<expressionBuilders>
 
<remove expressionPrefix="Resources" />
 
<add expressionPrefix="Resources" type="Microsoft.SharePoint.SPResourceExpressionBuilder, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
 
<add expressionPrefix="SPHtmlEncodedResources" type="Microsoft.SharePoint.SPHtmlEncodedResourceExpressionBuilder, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
 
<add expressionPrefix="SPSimpleFormattingEncodedResources" type="Microsoft.SharePoint.SPSimpleFormattingEncodedResourceExpressionBuilder, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
 
</expressionBuilders>
 
</compilation>
 
<pages enableSessionState="false" enableViewState="true" enableViewStateMac="true" validateRequest="false" pageParserFilterType="Microsoft.SharePoint.ApplicationRuntime.SPPageParserFilter, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" asyncTimeout="7">
 
<namespaces>
 
<remove namespace="System.Web.UI.WebControls.WebParts" />
 
</namespaces>
 
<tagMapping>
 
<add tagType="System.Web.UI.WebControls.SqlDataSource, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" mappedTagType="Microsoft.SharePoint.WebControls.SPSqlDataSource, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
 
</tagMapping>
 
<controls>
 
<add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
 
<add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
 
</controls>
 
</pages>
 
<siteMap defaultProvider="SPSiteMapProvider" enabled="true">
 
<providers>
 
<add name="SPNavigationProvider" type="Microsoft.SharePoint.Navigation.SPNavigationProvider, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
 
<add name="SPSiteMapProvider" type="Microsoft.SharePoint.Navigation.SPSiteMapProvider, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
 
<add name="SPContentMapProvider" type="Microsoft.SharePoint.Navigation.SPContentMapProvider, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
 
<add name="SPXmlContentMapProvider" siteMapFile="_app_bin/layouts.sitemap" type="Microsoft.SharePoint.Navigation.SPXmlContentMapProvider, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
 
</providers>
 
</siteMap>
 
<trust level="WSS_Minimal" originUrl="" />
 
<webParts>
 
<transformers>
 
<add name="TransformableFilterValuesToFilterValuesTransformer" type="Microsoft.SharePoint.WebPartPages.TransformableFilterValuesToFilterValuesTransformer, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
 
<add name="TransformableFilterValuesToParametersTransformer" type="Microsoft.SharePoint.WebPartPages.TransformableFilterValuesToParametersTransformer, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
 
<add name="TransformableFilterValuesToFieldTransformer" type="Microsoft.SharePoint.WebPartPages.TransformableFilterValuesToFieldTransformer, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
 
</transformers>
 
</webParts>
 
<machineKey validationKey="108E85D1C7D328EBE62D0857B678566E01E906B48194CC1F" decryptionKey="9445D0D4A51F59E8FD07EBA2F318926724290AE92F06D11A" validation="SHA1" />
 
</system.web>
 
<runtime>
 
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
 
<dependentAssembly>
 
<assemblyIdentity name="Microsoft.SharePoint" publicKeyToken="71e9bce111e9429c" culture="neutral" />
 
<bindingRedirect oldVersion="11.0.0.0" newVersion="12.0.0.0" />
 
</dependentAssembly>
 
<dependentAssembly>
 
<assemblyIdentity name="Microsoft.SharePoint.Dsp" publicKeyToken="71e9bce111e9429c" culture="neutral" />
 
<bindingRedirect oldVersion="11.0.0.0" newVersion="12.0.0.0" />
 
</dependentAssembly>
 
<dependentAssembly>
 
<assemblyIdentity name="Microsoft.SharePoint.Dsp.OleDb" publicKeyToken="71e9bce111e9429c" culture="neutral" />
 
<bindingRedirect oldVersion="11.0.0.0" newVersion="12.0.0.0" />
 
</dependentAssembly>
 
<dependentAssembly>
 
<assemblyIdentity name="Microsoft.SharePoint.Dsp.SoapPT" publicKeyToken="71e9bce111e9429c" culture="neutral" />
 
<bindingRedirect oldVersion="11.0.0.0" newVersion="12.0.0.0" />
 
</dependentAssembly>
 
<dependentAssembly>
 
<assemblyIdentity name="Microsoft.SharePoint.Dsp.Sts" publicKeyToken="71e9bce111e9429c" culture="neutral" />
 
<bindingRedirect oldVersion="11.0.0.0" newVersion="12.0.0.0" />
 
</dependentAssembly>
 
<dependentAssembly>
 
<assemblyIdentity name="Microsoft.SharePoint.Dsp.XmlUrl" publicKeyToken="71e9bce111e9429c" culture="neutral" />
 
<bindingRedirect oldVersion="11.0.0.0" newVersion="12.0.0.0" />
 
</dependentAssembly>
 
<dependentAssembly>
 
<assemblyIdentity name="Microsoft.SharePoint.intl" publicKeyToken="71e9bce111e9429c" culture="neutral" />
 
<bindingRedirect oldVersion="11.0.0.0" newVersion="12.0.0.0" />
 
</dependentAssembly>
 
<dependentAssembly>
 
<assemblyIdentity name="Microsoft.SharePoint.Library" publicKeyToken="71e9bce111e9429c" culture="neutral" />
 
<bindingRedirect oldVersion="11.0.0.0" newVersion="12.0.0.0" />
 
</dependentAssembly>
 
<dependentAssembly>
 
<assemblyIdentity name="Microsoft.SharePoint.Security" publicKeyToken="71e9bce111e9429c" culture="neutral" />
 
<bindingRedirect oldVersion="11.0.0.0" newVersion="12.0.0.0" />
 
</dependentAssembly>
 
<probing privatePath="bin;_app_bin" />
 
</assemblyBinding>
 
</runtime>
 
<location path="_layouts/images">
 
<system.web>
 
<authorization>
 
<allow users="*" />
 
</authorization>
 
</system.web>
 
</location>
 
<location path="_layouts/mobile/mbllogin.aspx">
 
<system.web>
 
<authorization>
 
<allow users="*" />
 
</authorization>
 
</system.web>
 
</location>
 
<System.Workflow.ComponentModel.WorkflowCompiler>
 
<authorizedTypes>
 
<authorizedType Assembly="System.Workflow.Activities, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" Namespace="System.Workflow.*" TypeName="*" Authorized="True" />
 
<authorizedType Assembly="System.Workflow.ComponentModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" Namespace="System.Workflow.*" TypeName="*" Authorized="True" />
 
<authorizedType Assembly="System.Workflow.Runtime, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" Namespace="System.Workflow.*" TypeName="*" Authorized="True" />
 
<authorizedType Assembly="System.Transactions, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" Namespace="System*" TypeName="*" Authorized="True" />
 
<authorizedType Assembly="mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" Namespace="System*" TypeName="*" Authorized="True" />
 
<authorizedType Assembly="System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" Namespace="System*" TypeName="*" Authorized="True" />
 
<authorizedType Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace="Microsoft.SharePoint.Workflow" TypeName="SPWorkflowActivationProperties" Authorized="True" />
 
<authorizedType Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace="Microsoft.SharePoint.Workflow" TypeName="SPWorkflowTaskProperties" Authorized="True" />
 
<authorizedType Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace="Microsoft.SharePoint.Workflow" TypeName="SPWorkflowHistoryEventType" Authorized="True" />
 
<authorizedType Assembly="Microsoft.SharePoint.WorkflowActions, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace="Microsoft.SharePoint.WorkflowActions" TypeName="*" Authorized="True" />
 
</authorizedTypes>
 
</System.Workflow.ComponentModel.WorkflowCompiler>
 
</configuration>

Digg This

Enabling AJAX on MOSS SP1

December 22, 2008

Recently I had the need to create a new collaboration sharepoint site.  One of the features that I wanted to include was a chat feature based on the chatterbox webpart .  The interesting part was getting Ajax to work on Moss 2007 sp1.  I’ll post the details in a followup post.

Chatterbox provided a very nice communication mechanism within sharepoint and I liked the archiving feature of the backing list. 

 I do find the Sharepoint development model annoying though and I think that I’ll write a silverlight control and have it embedded in content webpart.  Sharepoint development is very cumbersome and it shouldn’t be so.  Having to develop on a server install is a high cost to organizations.  Developers should not be forced to work on 2008/2003 but should be allowed to work on the platform of their choice.  Silverlight might be the saving grace of Sharepoint allowing the easy creation of controls that can interact with MOSS through the webservices.


Word2007 and WordPress

December 22, 2008

I have migrated my blog from jroller, unfortunately most of the 3 year history has been lost 😦

Focus of the blog: As my background is in enterprise architecture expect some posts along those subjects interspersed along with my other ramblings.

One nice feature that I found in Word2007 is the ability to publish to any blogging software that supports the XMLRPC protocol. I like the ability to compose offline as I choose and not have to be online, works great on the airplane. I can compose my submission and then post whenever I am ready and online.