I have been using Visual Studio 2013 for a while now (Preview, RC and now RTM) and one thing that I believe can improve the development experience is the Team Explorer - Home window/hub.
Viewing entries in
Development
I have been Font Awesome over the last year for all my web projects. It's goal is to do away with all the images that you need for a modern web application and replace them with a single font.
Why replace images with a font you may ask?
There are several advantages:
- Fonts are scalable, so they look crisp at whatever size you want them
- You can use all your font styles on these icons to style them (like size and colour)
- All modern browsers support the download of custom fonts (there is a fallback to image sprites for old browsers)
Using it on your project is easy, just add the following stylesheet to your app:
<link href="//netdna.bootstrapcdn.com/font-awesome/3.2.1/css/font-awesome.css" rel="stylesheet">
Then you have access to over 350 icons. Here are a few that I use all the time:
Here at SSW, we've been transitioning all our new projects onto Team Foundation Service. It’s been a pleasure to work with in all aspects of the application lifecycle. It’s main features are:
- A great UI for managing the tasks in a sprint
- Cloud based hosting, so you don’t have to worry about upgrades and server hardware
- It connects to Windows Live for authentication so you don’t need to create an Active Directory account for your clients
Below is a video of how Microsoft use Team Foundation Service to run their internal scrum teams. It provides great insight into how the tool works, but also shows you how a standup meeting should run. The key takeaways for me are:
- Stand-up meeting happens in a corridor
- Each team member can easily switch the taskboard to their view (showing what they’ve worked on)
- “Parking” issues so the stand-up is quick
Check out Methodology - Do you do Daily Scrums (aka stand-up meetings)? for more details about how SSW runs scrums
At SSW we need to record timesheets for all the work that we do. Normally keeping track of what you've worked on is difficult and you end up writing "Worked on web stuff"
If you use TFS you can easily keep track of the Work Items that you've completed today
You can then just copy and paste the results into your timesheets
I’m currently working at a client that requires some source code to compile in Unix - as their major systems are Unix based with new development being done in .NET. The great thing about the project is that they have are trying to consolidate everything into TFS as the single source of truth (it’s mostly there).
To get the unix stuff going I’ve customized the DefaultTemplate.xaml and added an extra InvokeProcess that calls a PowerShell script to copy files to Unix using Pscp (for secure remote copy), compile code using Plink (allows remote command execution over SSH) and finally copy the Unix binaries back to the build server.
The PowerShell script takes in a number of arguments like remote server details, remote paths, usernames etc. So obviously we don’t want these being set via the arguments property for the InvokeProcess activity because:
- Need to check out and modify the build template and checkin
- The build workflow isn’t exactly the nicest thing to modify
- Can’t reuse the template for other environments (UAT and Production)
- Can’t quickly make changes and queue a new build
What you should do instead is to define new Arguments for your template.