Hopefully you know about one of the cool features of Visual Studio 2010 called multi-line editing. You can select multiple lines of your code holding Alt key pressed and then edit them all – dream for copy-and-paste approach.
But there’s seems to be a bug with this feature in Visual Studio 2010 HTML editor. It’s automatically closes the HTML tags you’re typing, but this doesn’t work while editing multiple lines – it’s only closes the last tag which results in broken HTML markup…
- Table based layout – especially sensitive performance degradation with IE, big number of nested tables also make it look really tricky during the loading time in Firefox and Webkit
- Superfluous markup elements – when they are part of repeated elements such as grid or list this results in hundred kilobytes of useless content
- Lots of HTTP errors, especially 404 and 503 – broken links, moved images, incorrect relative paths to resources
- Duplicate <link> blocks and JS includes – obvious, but still common problem
- No caching (content expiration) is set for static resources – both server side caching and content expiration headers for the client
- Inline <script> blocks
- Number of JavaScrip includes for one page – results in big number of network connections, sometimes preventing page to render correctly
- Incorrect or broken HTML markup – browser spend more time than expected to understand what you were trying to say with <table><div><tr></div><td></tr>/>
Summarizing one of the StackOverflow threads:
– Iteration is a common term in iterative and incremental development (IID).
– Scrum is one specialized flavor of IID.
– Sprint is a scrum specific name for the iteration.
All sprints are iterations but not all iterations are sprints…
As to the sprint length: anything goes as long as the sprint is timeboxed i.e. it is finished on the planned date and not “when it’s ready”. It does help to have the sprints of similar durations.
How to manage “dead” workspaces, “magic” locks, “miracle” shelves and other beauties of TFS 2010 source control?
Command line is awesome until you need to get some more understanding on what’s really happening. Especially when you coming to the new environment and have no idea what was happening to the project last 10 years.
I found Team Foundation Sidekicks one of the most powerful TFS tools I’ve seen recently. Specifically with my case it was really the only thing that was able to help me with some ancient locks for the files which no longer exist in source control, but still preventing our recently upgraded to 2010 source control to do proper merges.
From another super useful features – ability to unshelve to any folder on your machine, changesets and labels history per user per workspace, locks and source control item statuses by user, maintain workspaces and users and the last on toolbar (but not in our hearts) – code review(!) sidekick by changeset or by work item.
tf status $/MyProject/MyPath/MyFile.cs /server:my_server /format:detailed
You’ll get something like:-
User : MY_DOMAIN\my_user
Date : Thursday, October 12, 2005 11:25:00 PM
Lock : checkout
Change : edit
Workspace : WorkSpaceName
Local item : [WorkSpaceName] D:\projects\MyProject\MyPath\MyFile.cs
File type : Windows-1252
There is an unlock command – if this works it will be cool as it would mean that the developer wouldn’t loose their changes. I heard that this didn’t work properly for Beta 2 – should be fixed now, the syntax is below:-
tf lock $/MyProject/MyPath/MyFile.cs /lock:none /workspacename:WorkSpaceName /server:my_server
There is also an Undo command. It would get rid of any pending changes that the developer had made and they will lose any work they were doing. The syntax for Undo is:-
tf undo /workspacename:WorkSpaceName;dev_username /server:my_server $/MyProject/MyPath/MyFile.cs
We had a developer leave our company with some files still checked out when we were running on Beta 2. To find out which workspaces the developer had we used:-
tf workspaces /owner:dev_username /computer:* /server:my_server
Then we deleted them. Deleting the workspace also removes the lock on the files. The command to delete a workspace is:-
tf workspace /delete /server:your_tf_server workspacename;workspaceowner
I read somewhere that an graphical admin tool will be available as a download post release for Team Foundation Server. If not, I think I’ve found myself a new project..
Don’t forget to run this commands under the folder that is bound to the TFS – this will ensure correct credentials will be used.
tfpt unshelve /? tfpt unshelve - Unshelve into workspace with pending changes Allows a shelveset to be unshelved into a workspace with pending changes. Merges content between local and shelved changes. Allows migration of shelved changes from one branch into another by rewriting server paths. Usage: tfpt unshelve [shelvesetname[;username]] [/nobackup] [/migrate /source:serverpath /target:serverpath] shelvesetname The name of the shelveset to unshelve /nobackup Skip the creation of a backup shelveset /migrate Rewrite the server paths of the shelved items (for example to unshelve into another branch) /source:serverpath Source location for path rewrite (supply with /migrate) /target:serverpath Target location for path rewrite (supply with /migrate) /nobackup Skip the creation of a backup shelveset
After half an hour investigation and debug of jQuery internals I found that the reason was in this part of jQuery code:
var computedStyle = defaultView.getComputedStyle( elem, null );
The elem variable was simply text node, something like “  blah-blah-blah\n”, so because of some bug within JS engine as I can see if was failing to receive styles and it was failing to throw some more readable exception.
The original block of client code that calling jQuery was:
And of course that nextSibling in Firefox was the next space or after some read element like DIV or LI.
The funny think about this bug is that it was only failing remotely(!) and was working pretty fine on local machine.