Life in the trenches

Life in the trenches is about the mixture of forces in ones life. In my case it's family, work, and RPGs.
No thanks, I don't want any.

Just a quick message to those of you out there.. you know who you are.. you are the ones that like to come by someone's blog and leave feedback or comments to the author.

I just wanted you to know .. No thanks. I don't want any viagra or cialis and I think everything is in the right proportions so enhancement is not required today.  I realize that you take the time to locate someone's blog and cut and paste your news of values and urls sometimes on a daily basis.  But! I'm happy to say that I have been informed so you can remove me from your list; I'm sure you can use the extra time to go smoke a cig or something.

There .. I've given back to the community today.. I feel great!

Posted: Oct 12 2007, 06:29 AM by Eric Rouse | with 2 comment(s)
Filed under:
To live and breath

Yup it's true.. I'm still alive.  Truth is I've been having fun on the current project.

 One of the things that we were not happy about was that the last project had a very low programming percentage do to the way the existing environment was structured.  With this application it's all us.. we're building a web site from the ground up.  An interesting tid bit.. we did more in 6 weeks than the previous developer that was here for 2 years.  Talk about milking the cow.

At any rate, it's good times and good coding..

Posted: Oct 08 2007, 03:08 PM by Eric Rouse | with 1 comment(s)
Filed under:
Two new titles

Well the gang picked up two new titles this week;  Halo 2 and Shadowrun.  So far we're focusing on Shadowrun and have yet to do anything with Halo.  I did start Halo at least and have a lot to learn.

From what I've seen in Shadowrun so far it promises to be a lot of fun.  This is the first time I've played a shooter where you can move through walls.  That is a lot of fun and can save you when you're getting shot up pretty badly.  I only made it though the first few lessons but hope to get some time to play online with the gang..  You have to trash talk each other and all.

I did add a forum for both Shadowrun and Halo on the site to go along with the other stuff thats going on but I expect that to be slow since I don't have but a few registered users.. actually most of the traffic here is from the blogs and pictures.

At any rate, these two should be a lot of fun.. how about you.. given the advent of Xbox/PC crossovers which platform will you play on?

And if my friend doesn't take it I still might change my gamer tag to 'Bus Driver Bob' .. you snooze you loose and Don't pull the rope.  Ok so I have a 2 year old.. these things happen.

Virtual GPS

Well this is interesting; Virtual GPS is available for java enabled phones that don't already have a built in GPS device.  I might have to download this one just to see if it works.  It's a product made by Navizon.  You basically pay for some mapping software, after the trial if you like it, and the GPS functionality is rolled in there.

Posted: May 24 2007, 01:23 PM by Eric Rouse | with no comments
Filed under:
User Account Pruning - Update

Just and update on this.  As it turns out you can easily create the context you need for an administrative account in a CSModule and CSTask.

All of the examples I saw told you that you could generate a CSContext by using something like this in the ITask.Execute() method:

SiteSettingsManager.IterateSiteSettings(new SiteSettingsListIterator(RunMyJob));

and in the RunMyJob method make a call to:

CSContext.Create(SettingsID);

That in fact is what I used in the first run of my ProfileAging class.  Now with the User Pruning we actually needed a user whos profile has IsAdministrator or IsMembershipAdministrator set to true.  The reason for this is that the Users.DeleteUser method requires that level or authorization to complete the delete.  When I was looking around in the API I noticed that there is a CSContext.Current.User attribute but I assumed that this was a read-only field.  I also assumed that this property would only get set via some type of login or impersonation.

I'm happy to find out, thanks to Phosphorous on the CS fourms, that you can actually assign it this way:

CSContext.Current.User = Users.GetUser(UserID);

Wow, that was easy and now my delete call works like a champ.  I was able to complete the main logic so that an account is disabled after X days and deleted after Y days.  The values for the UserID, X Days, and Y Days are all in the configuration file.  I also set the logic to where you don't have to have the number of days for delete in which case deletions don't happen buy the disapprovals do.  Now all I need is the remaining logic but I might adjust the flow a little bit so that an event is thrown for each of the tasks.  This will allow isolation of the functions so that anyone wanting to swap out the functionality will be able to do so without changing the main processor.

Gods and Heroes - Rome Rising

I just saw the new game play video here and it looked pretty good.  They start out with the PCs getting it handed to them and the half way through the NPCs get owned.  I've been keeping an eye on this title and it looks like it might be fun.

We'll have to see how it develops as it gets closer to launch which is slated for Q3.

Posted: May 16 2007, 07:04 PM by Eric Rouse | with no comments
Filed under:
If I were a butt my name would be Capital One

Ok, here's the scoop.. I missed my payment last month because I payed someone else twice by mistake.  Sure that's a bad thing but hey it happens from time to time.

Now for the good part.. I've been trying to pay my account online for the past 7 days or so.  I pay 99% of my stuff online but I can't log into the web site now.  They said that my access has been revoked because the account is overdue and using the web to do things to my account is a Privilege.

Ok, so you take a person that is trying to make a payment in good faith and prevent that?  Isn't there some kind of law about that?  All I can say is this account is going to be closed and Capital One can kiss my account goodbye.

My wife and I talked to 7 or 8 people over there and each one tells you that they can't help you because its the other departments issue.  The solution that they give you is to have you do an e-check;  Now that might be fine for some people but I don't care to give out my back account information over the phone.  My wife told them at one point that given the caliber of the people we had already talked to that she wouldn't even give them the name of our dog.

Finally we get to the escalations department, make a note of that.. good term to use when dealing with butt-heads, and they enabled my account.  All I wanted to do was make a payment.. go figure but the account is still going to be closed.. I don't think they deserve the Privilege to acquire my interest payments.

Posted: May 15 2007, 06:07 PM by Eric Rouse | with no comments
Filed under:
So what am I playing these days

Well I picked up the Lord of the Rings preorder last month and started playing that.  So far so good, I decided to go into retail and have been enjoying the game so far.  Currently I have a Guardian and added a Minstrel.  I was actually suprised by the Minstrel; he's only level 5 right now but it's fun to play.  They get a shout thats actually pretty funny.. they actually do shout, or yell as the case may be.  The first time I used it I had to laugh.  At any rate I expect to play him for a while since healer classes are what I'm really drawn to.

Posted: May 04 2007, 09:09 AM by Eric Rouse | with 3 comment(s)
Filed under:
User Account Pruning

Yes, all users are prunes.. no that's not right.. Dead user accounts should be pruned but I don't want to do it manually.  There we go that's better.

I'm working on a Task Module for CS'07 that will do this for me.  So far I have all of the core code in place but ran into a problem.  It would seem that there is some kind of permission that the ITask based module doesn't have.  I get down to the user deletion call and get a DeleteUserStatus.InsufficientPermissions result back. In the mean time all the job will be able to do is disapprove the account until I can figure this out.

Oh yes.. here is the idea behind the module:

Spammers like to create accounts and they normally have creation = last activity = last login for the dates in the profile.  These are the accounts that I was to automatically delete. This should occur on a time based rule.. X number of days.. disapprove the account.. Y number of days delete the account.  This is valid for non-spammer accounts as well but the dates will not all match.. in this case you have cut offs on the last activity but I'm thinking that it might be better for those accounts to send them an email with the standard warning..

You need to log in soon or your account will be deleted and we'll take all your stuff.

I have yet to implement the email and adjusted rules for the non-spammer accounts sinceI got side tracked on the delete problem.  Hopefully a little more research will yield an answer.  I did look at the code in the admin screens that deletes users and they work basically the same way as my module.  The only difference that I can see is the fact that this is a module; perhaps modules are not trusted?  That could explain the problem.

CSModule for New account defaults and email notification

Introduction:

 

This module is used to set some default values for profiles and also email the system administrators when accounts are created.  Source is included but I have a precompiled DLL in the zip for those that don’t have the tools to compile the module on their own.

 

The Update User Profile module performs the following tasks:

  • When a new account is created profile settings from the Anonymous user account are copied to the new account
  • An email is sent to the members of the system administrator role, if enabled
 

The role that is used is set in the CommunityServer.config file as is the flag that allows the email to be sent.  If a member of the site is just making a profile update then nothing happens.  I was interested in knowing when an account is created and forcing some non-default settings to be put in place.

 

The mail that is sent is pretty basic and to the point.  Perhaps in an update the email should come from the templates but this will do for a version 1 and this was also a learning experience to figure out how to get my environment setup and create modules.

 Getting setup:
  • Create a directory to hold the source code and VS2005 project file
  • Place the RpgJunkie.CsModules.UpdateUserProfile.csproj and UpdateUserProfile.cs into the new directory
  • Open the csproj file with Visual Studio 2005
  • Once in Visual Studio, Change the build directory to match your CS2007 Bin folder
  • Check the references for the CS DLLs since the path might not be the same as mine
  • Build the project

Settings:

            NotificationGroup - This is the Role whos members will receive an emaiil each time a new account is created
            EmailEnabled - Set this to 'true' to send email notifications to the NotificationGroup above

Configuration Additions:

     You will need to add the following to the Modules section of the CommunityServer.config:

     <add name = "NewUserUpdates" type = "RpgJunkie.CsModules.UpdateUserProfile, RpgJunkie.CsModules.UpdateUserProfile">
           <NotificationGroup>SystemAdministrator</NotificationGroup>
           <EmailEnabled>true</EmailEnabled>
    
</add> 

 

You can download the zip with the source here.

 

 
Fantasy Grounds 2 Released

It looks like the count down timer has run its course.  Fantasy Grounds 2 has been released.  I downloaded the installer and its downloading updates as I write this.  So far I don't know too much about what has changed but I'm sure I'll get to kick the tires here pretty soon.

For those of you that don't know... this is a virtual D20 table top game.  You and your party connect via the internet and play D20 adventures as if you were there in person.  There are character sheets, dice, and other interesting items.  With the advent of voice chat, from external applications, its just like being there. 

Posted: Apr 23 2007, 08:13 AM by Eric Rouse | with no comments
Filed under:
CS2007 Up and running!

Well I'm happy to say that I'm up and running with Community Server 2007!  I actually have two sites but the main one, RpgJunkie, upgraded with out any problems.  I was lucky that I picked a providor that allows you to connect to the database with SQL tools.  That's actually the trouble with the other domain; it's hosted on GoDaddy and I can't get directly to the datbase.  With my other provider I have database backups enabled so all I had to do was download and restore to my development server.

All I have left to do is install my custom module.. it's purpose is to copy specific settings from the Anonymous user profile to all new accounts as they are created.  I'm planning on doing some others but I still need to learn how somethings function.. namely if they took care of the issue with adding new applications to the core.  I also need to learn how you add a page and enable the theme and navigation elements.  Anyone have a writeup on this?

I guess it's time to see what I'm going to do with the other domain, find out whats wrong with it or start over.. time will tell.

Blowing up IE7

Ok, I figured out what the problem was with IE7 throwing and exception when using the editor on Community Server 2007.  I turned on Enable Ink in my profile not really knowing what it was for.  That was actually one of the reasons I turned it on.. I was trying to figure out what it was.

As it turns out it is for tablet PCs, Ink refers to Microsoft.Ink which is the input device for tablet PCs.. go figure.. I'm not on a tablet.. puzzle solved!

Community Server 2007

Community Server 2007 was released yesterday!  I’m hoping to move the main RPG Junkie site over to the new version within the next few days.  So far my test upgrade on my development server seemed to work although I did have to run the 1.x > 2.0 SQL update and then the 2.x to 2.1 updates before running the 3.x upgrade.  I’m not sure why that is since I’m running 2.0 currently.  The only thing I can think of is the corruption that I experienced during the last upgrade.  Last time I ended up hand stitching the blogs back together.  I think the root cause was due to some problems with the first version I was running and the site was initially converted from .Text.

 

I did notice one odd thing after installing cs2007 on my test server and that was the editor.  I loaded up the site and went in to edit a blog entry, not that I was going to save it, and IE7 blew up.  I did confirm that it was an issue on this system since it was working fine on my virtual machine.  Hopefully this wont cause me too many troubles going forward since I would rather maintain this site via the dev server and not a virtual machine.  The only real concern is the size of my database.. 245 meg is a bit more then I care to install on a VM.  Worse case I can just used a scaled down version of the site since the content is not really that important but I do like to have real world data to test with.

 

At any rate I have worked out the process of creating CSModules so I’m on the learning curve to see what else I can do.  I would like to know if the issue of creating a new application, like blogs and fourms, was addressed with the new release.  I had intended to create some add on applications but while reading up on the process I found out that there was no easy way to integrate them.  I guess we’ll see what happens.  If all else I expect that I might me able to link in some other pages and hang them off the existing navigation path.

Copy Visual Studio Workspace
Here is a little tidbit for those of you that use Team Foundation Server.  When working on a team you are forced to create batch/command files to create a workspace in TFS.  The other option is to create it manually.  This is clearly not a fun way to deal with the problem.
 
I was talking to someone in the know today about this and they said you could treat someone else's workspace as a template since they are actually stored on the server and not your local system.  Follow these steps and you get a copy of the other person's workspace.  This of course assumes that everyone is configured the same, path wise, but who wouldn't be?
 
 
From a Visual Studio command prompt; you can issue the following command to copy some one else's Team Foundation workspace:
 
tf workspace /new /template:[Workspace Name To Copy];[Domain]\[User Account] /server:[Server]
 
When you are prompted; change the 'Name' field at the top of the dialog to add the new workspace to your Visual Studio.  This will allow you to avoid having to recreate the workspace by hand or update a command file each time the workspace changes.
 
If you don't know the name of the workspace you can use the following command to list them:
 
tf workspaces /owner:[Domain]\[User Account] /server:[Server]
Posted: Apr 09 2007, 01:17 PM by Eric Rouse | with no comments
Filed under:
More Posts Next page »