Jungle Disk: Amazon S3 virtual disc

Jungle Disk is another product (only 20 bucks) that runs on top of the S3 service from Amazon.

http://www.jungledisk.com/

Unlike S3 Backup, it acts as a virtual drive (like a USB drive) that you can drag files to/from.

The interesting part for me, is that they supposedly employ some kind of caching algorithm so that most files (I assume given availabe drive space) are cached locally so you don’t have to go up to the server and download the whole thing when you want it.

Might be worth looking into.

e.Item.Dataitem is nothing?

So you have some code running in your itemdatabound event handler and you are trying to do someting with e.item.dataitem but it keeps bombing out with errors because e.item.dataitem is nothing.

So, why is e.item.dataitem is nothing??

Answer: Because you are probably using a header or footer in your binding object.  The header/footer will cause the itemdatabound event to fire, but there is no dataitem for them.

Check if the current row is the header or footer, and then you will have no issues with using e.item.dataitem.

AT&T's Business DSL SLA is a joke

Most internet providers for businesses offer some kind of SLA to show their commitment to continued uptime.

One of my customers who uses AT&T Business DSL recently had a multi day outage. 

So what does AT&T’s SLA provide?

Customer connectivity shall be restored in 24 hours or less from the time AT&T is notified of the outage. *Customer shall be entitled to one (1) day’s credit (based on 30 day calendar month) from the Customer’s recurring monthly service fees if AT&T fails to meet the 24 Hour Service Restoration SLA.

Yes you read that right.  Your business has no email or internet access for 3-4 days and what does AT&T do for you?  They might knock 10 bucks or so off your bill.  How nice… well at least they don’t make me waste any more time …. oh wait..

(*) Credits are not automatically applied. Customer must apply via the Business DSL SLA website located at http://www.att.com/businessdslsla, or by calling our Customer Care at 1-877-722-3755.

Wow. 

VS.NET Extensions for Sharepoint

My experience with developing for Sharepoint was very painful.  The jist of it was, unless you are truly going to hook into a lot of the core functionality of sharepoint (document collaboration and workflow) it will be MUCH harder to build an app to run in sharepoint than it would be to build a standalone application.

But MS has released some new extensions that will hopefully ease the pain a little bit:

Announcing: Visual Studio extensions for SharePoint – Developer User Guide

I don’t know if I will ever have enough time to implement anything in sharepoint, but these will be nice to have.

Jott

Jott is an interesting site that allows you to send emails from your phone.

You call a number, say the name of the person you want to send a message to, and it will do speech to text conversion and send the email.

As I understand it, they employ 2 different speech recognition engines, and if the 2 don’t agree on what you said, they offload it to a person to do the typing.  Pretty interesting!

You can also set reminders and it will email ou 15 minutes before the reminder time.

Not sure that I will ever really get into using it heavily, but I thought I would give it a shot.

They also have an API so I could write up some code for my site and “phone in” my blog posts and they would show up here.  Pretty interesting indeed!

Here is the API: http://jott.com/jott/developers.html

 

Couple of points on Network Load Balancing

With Windows Servers, you can setup a cluster using built in Network Load Balancing.

The interesting thing about doing load balancing via software, is that once you get up around 4-5 servers, you stop gaining in performance when you add new machines, because of the added overhead associated with mainting N number of new relationships between the servers.

Also, if you use NLB and you set them up to not use any type of server affinity (i.e. a users request might hit any of the servers at any time) you will pay a serious penality if you are using SSL because each new request to a new server will require a new negoation of the SSL credentials.

Add users to group: domain missing

The other day I was helping a client of mine who was having some problems getting a user setup as the local administrator on a laptop.

When I went to add the user, the “From this location:” option only showed the local computer name, not the domain.

The computer WAS on the domain, so what was going on?

Well it turned out that a new router had been put in on that subnet, and the DHCP on the router had started handing out IP addreses.  Those IPs didn’t have the DC as the DNS server, which is something that is needed in order to allow computers to figure out where company.local is really located.

After changing the DNS server to be the DC and not the router, everything worked as expected.

Why Do SSRS Deployments Not Update Everything?

Recently I have been making some changes to our SQL Server Reporting Services machines.  I am finding that many of my changes are not taking effect on the server.

The deployment goes ok.  The reports show that they have been updated, but some things seem to not transfer.

For example, I changed the data source on some reports and redeployed them, but this new setting did not make it to the server.  If I delete the report and THEN deploy it, it works fine.

Another issue was with some reports where I was trying to change some of the parameters to take a default null value.  I made the changes in my reports and deployed.  The reports now ALLOWED a null value, but they were not setup for the null to be the default value. 

Once again deleting the report and deploying fixed the problem, but this is stupid.

Has anyone else had this problem, or have know of the reason why it doesn’t work right?

UPDATE:

I got a response from someone on this.  Apprently Microsoft felt that certain changers like changing report parameter details, could cause existing report parameter settings to be overwritten (well duh) and you as a developer probably didn’t realize what you were doing (hmmm yes I did) and so they don’t update everyone on the server when you redeploy a report.

Brilliant!  No warning, no message, just some things are not updated.

Rolling back changes on Team Foundation Server

Once in a while someone checks in some file they didn’t want checked in.

You can roll back these changes/checkins by using the Team Foundation Server Power Toy.

Team Foundation Server Power Tool Commands

Team Foundation Server Power Tool (tfpt.exe) is a command-line tool. To use these commands, start tfpt.exe at the Command Prompt. Some of the commands will display a graphical user interface when used. In addition, you can access the Annotate and Treediff commands from Source Control Explorer in Visual Studio or Team Explorer. Team Foundation Server Power Tool includes the following commands:

Unshelve Command
Use the unshelve command to unshelve and merge the changes in the workspace.

Rollback Command
Use the rollback command to roll back changes that have already been committed to Team Foundation Server.

Online Command
Use the online command to create pending edits on writable files that do not have pending edits.

GetCS Command
Use the GetCS (Get Changeset) command to get the changes in a particular changeset.

UU Command
Use the UU (Undo Unchanged) command to undo unchanged files, including adds, edits, and deletes.

Annotate Command
Use the annotate command to download all versions of the specified files and show information about when and who changed each line in the file.

Review Command
Use the review command to optimize the code review process to avoid checking in or shelving.

History Command
Use the history command to display the revision history for one or more files and folders. The /followbranches option returns the history of the file branch’s ancestors.

Workitem Command
Use the workitem command to create, update, or view work items.

Query Command
Use the query command to run a work item query and display the results. If you do not provide a specific query, all the active work items assigned to you are displayed.

TreeDiff Command
Use the treediff command to display a visual representation of the differences between files in two server folders, in a server folder and a local folder, or in two local folders.

Treeclean Command
Use the treeclean command to view and optionally delete files that are not under source control in the current directory and all subdirectories. This command is useful when you want to remove temporary files from your local workspace, such as files created by the compiler.

 

To use it for rollbacks, just add the install path to the tfpt.exe to your PATH environment variable.  Then, browse to the root of the project directory that you want to perform a rollback in and run “tfpt rollback” from the command line.

It will give you a user interface where you can find search for a chance-set to rollback.

Once you do it, you may have to “check in” the changes you just made, but I have used this several times and it has worked great.