Saturday, March 14, 2009

Rumor: SharePoint Designer 2007, soon to be free? (or given the April 1st date…)

Fear and Loathing - SharePoint Designer, Free as in Beer

“I caught a couple of blog posts from here and here that had to make me do a double take. I’m not one for relaying gossip, but this information seems to be legit. As of April 1, 2009 SharePoint Designer will be free. Now if you go to the “official” site there’s no mention of it however I’m hearing through the grapevine it’s true. The official site even has a “buy it today” option, so you might want to hold off on that

…”

SADev.co.za - Get SharePoint Designer For Free

“…

Microsoft will offer SharePoint Designer 2007 free of charge, as a download, starting April 1, 2009. This change is being made in order to help customers get the most value out of their investments in SharePoint products and technologies.  Microsoft will remove SharePoint Designer 2007 from the April 2009 Volume Licensing price list.

Customers with active SA as of April 1, 2009 will be able to upgrade to Expression Web.  SharePoint Designer is not “end-of-life.” The next version of SharePoint Designer will ship together with the next release of SharePoint.

…”

Personally I think this makes a great deal of sense, as this just increases the value of SharePoint, making it easier for everyone to customize, integrate into their business, and thereby become tightly coupled. And really how many copies of SharePoint Designer were sold compared to SharePoint CAL’s and the likelihood of that ratio to change? Bundling SharePoint Designer as just another part of SharePoint would be a cool move…

Given the date though I have to wonder at the validity of this. Businesses should know by now to not do anything “real” on April 1st. 3/31 or 4/2 is fine, but on 4/1, everything is suspect…

In any case, if/when I hear more I’ll pass it on.

Book Review: “Software Testing with Visual Studio Team System 2008” from PACKT Publishing

Software Testing with Visual Studio Team System 2008

“A comprehensive and concise guide to testing your software applications with Visual Studio Team System 2008

  • Test your software applications with Visual Studio Team System 2008 and rest assured of its quality
  • Create a structured testing environment for your applications to produce reliable products
  • Comprehensive yet concise guide with a lot of examples and clear explanations
  • No knowledge of software testing is required, only basic knowledge of Visual Studio 2008 operation is expected

…”

PACKT Publishing was recently kind of enough to send me a review copy of their “Software Testing with Visual Studio Team System 2008” book. Over the last few days I’ve been spending some quality time with the book and I have to say I’m better for it.

This book provides a nice overview, level 100+, guide to the testing capabilities found in the Visual Studio 2008. From unit testing through the features of the Test Edition, you’re provided a good working level introduction and usage overview.

Software Testing with Visual Studio Team System 2008 - Table of Contents

Preface
Chapter 1: Visual Studio Team System 2008 Test Types
Chapter 2: Unit Testing
Chapter 3: Web Testing
Chapter 4: Advanced Web Testing
Chapter 5: Load Testing
Chapter 6: Manual, Generic, and Ordered Tests
Chapter 7: Managing and Configuring the Test
Chapter 8: Deploying and Running Tests
Chapter 9: Command Line
Chapter 10: Working with Test Results
Chapter 11: Reporting

…”

I’m not going to go into details into the book’s content, as I find those kinds of reviews a little hard to read. I am instead going to tell you what I personally gained from the book and what I learned…

First of all the book was a little unusual in that the images, screenshots, etc are not titled, i.e. there was no “Figure #…” on the images. I found that a little disconcerting. It didn’t detract from the content and I can see how the logical flow of the text and images might of made them superfluous, yet until I got used to it, it was a little distracting. It’s weird how something so very little and usually taken for granted can, where missing, can have such an effect. Again through, this was a very minor thing and something I quickly got used to.

So what did I walk away with?

Well I’ve been using some of the testing features in Visual Studio for a while now, yet like many of us, I’ve learned about those features “just in time.” When I’ve needed to use a given capability, I’ve played with it, searched for a minute or two, beat on it and then got it to do pretty much what I needed. And then stopped there. That’s the just nature of our space these days. Too much to learn and do to become experts on much of anything. We need to find out how to use something quickly, get it going in our environment and then move on to the next challenge.

That’s one of the things I liked about this book. It was a quick read, yet detailed enough to get me using some features and capabilities that I didn’t know I needed until I read the book. It helped me flesh out and discover a number of things I didn’t know I didn’t know.

“Enough of generalities, Greg! What were some of the things you learned! Fess up!”

Ordered Tests
I had ignored Ordered Tests until I read about them here. I’m not sure how I feel about Ordered Test, as I do not like the idea of tests having to run in a specific order (as that’s very anti-unit test’ie), bug living in the real world I can see where this could help me today.

Asserts
I hadn’t realized the number of “Asserts” available. I mean wow. There are like a billion Assert.AreEqual overloads. Then there’s the StringAssert which I don’t think I knew about. And also the CollectionAssert...

Of course I’ve been using Assert.’s for a while, but I didn’t know the scope of possible ones I could be using (i.e. falling into a “Just in time learning” trap). Seeing all the different unit testing assert options opened my eyes and really got my mental gears turning…

Web Testing Includes Web Service Testing
It never really dawned on me that I could use the Web Testing to test Web Services. Makes sense in hind sight, but hind sight is always 20-20 isn’t it? I don’t do much “web” so every time I saw “Web Testing” I saw “ASP.Net web site/page testing” and so blew it off. Well now my blinders have been removed and I’ll be adding some in the very near future.

Data Driven Unit Testing
I do allot of data driven testing in my unit tests, but the initial learning curve was a little steep. This book makes it look easy (which it is ONCE you know the tricks).

Load Testing
Another blinder point for me was that I always associated VSTS “Load Testing” with Web Testing. I didn’t know that you could ALSO use Load Testing with “normal” unit tests.

TFS Report Writing
As I’ve blogged about in the past, writing a report against TFS can be pain. Again, it’s a learning curve thing. Well while this book doesn’t go into depth on this subject it does cover it and provides a nice leg up on getting started. It also provides a short view on using Excel as the report tool (i.e. hooking Excel up to the TFS OLAP cube/Data Warehouse)

 

Final Word

I would recommend this book for those who have heard of the testing capabilities of Visual Studio 2008, yet haven’t been able to squeeze in the time to take the plunge. I would also recommend this book to “functional/hands on Dev Managers” who need to get up to speed on Visual Studio testing. If you are already knee deep in VS Test/testing and are looking for deep, highly detailed, level 300-400 content, then this book is likely not for you (but it might be good to give to your new/associate Dev’s).

Would I have bought this book? Yes. And I can see myself returning to it, using it as a reference in the near future as well…

 

Related Past Post XRef:
Free “Visual Studio 2008 Test Types” Chapter from “Software Testing in Visual Studio Team System 2008” from Packt Publishing‏

Friday, March 13, 2009

Speaking of Electronically Stored Information (ESI) - “The Know-IT-All's Guide to eDiscovery” free (reg-ware) eBook

ENT News Online - Free Book: The Know-IT-All's Guide to eDiscovery

“These days IT folks need to have a pretty good grasp of eDiscovery requirements -- you may be directed by your legal team to find specific files containing specific words sent from or to specific people on a specific date.

Can you do that now?

Get this fun-to-read book chock full of what you need to know to successfully plan for eDiscovery in your company -- written directly for the IT audience. Your meetings with legal will never be the same.

…”

image

Table of Contents:

Introduction:
Which know-IT-all are you?........................................................................... 5

Chapter One:
Sorry, no – eDiscovery is not online speed dating........................................ 7

Chapter Two:
It’s all geek to me (Reviewing the new FRCP amendments)........................ 10

Chapter Three:
“I have to stop all ESI deletions when?”
(When or what is considered notice of possible litigation?)........................ 16

Chapter Four:
Searching for ESI is like looking through the
office fridge: There’s more in there than you’d expect................................. 20

Chapter Five:
A CEO, a marketing manager, and an email admin walk
into a bar… (eDiscovery involves many departments, not just IT).............. 23

Chapter Six:
A litigation hold is like being hungover at work –
you just can’t focus on anything else........................................................... 27

Chapter Seven:
Spoliation is not what happens to last week’s Chinese food........................ 31

Chapter Eight:
Safe Harbor is the truest form of CYA: Understanding FRCP Rule 37(e)...... 34

Chapter Nine:
Proactive planning for eDiscovery ensures you won’t miss
the Stargate SG1 weekend marathon.......................................................... 37

Chapter Ten:
Form ID-10T Summary................................................................................ 47

Even if I were not in the EDD/ESI biz, I might of blogged about this eBook… Some of the chapter titles just kill me! LOL

This eBook is a fast and pretty fun introduction to ESI/EDD for the IT professional. You’ve heard it from me before, if you’re in IT you need to be aware of ESI/EDD. If you haven’t heard of it, you will soon enough and by then it may be a crisis/drop everything/all hands on deck kind of thing (cough… Chapter Six… cough).

Take a bit, get this eBook and spend a few quality minutes curled up with it… Come on ANY book with Stargate SG1 and ID-10T chapter references can’t be all that bad! ;)

(via complexd - Free Book: The Know-IT-All's Guide to eDiscovery)

 

Related Past Post XRef:
A pocket guide I hope you never need, but probably will… The E-Discovery Pocket Guide from the California Bar
Learning About Electronic Data Discovery? RenewData has a free book for ya...
The Pocket Guide to Electronic Discovery for Judges
An Electronic Data Discovery Bible Gets Updated - "The Sedona Principles, Second Edition" (June 2007) Released
A Couple EDD Articles...
EDD Reading List
Litigation Support Technical Standards, Free eBook

Remember the “If you don’t want to see it on the front page of the Times, with YOUR name on it…” rule applies to ALL public communication channels (i.e. Watch what you Tweet)

I was reminded today that the, “If you don’t want to see your message on the front page of the Times, with YOUR name on it, then don’t write it” rule applies to social networks too. While I’ll not get into the details, to protect the innocent and all that, I did want to use my minor mishap to hopefully help you and keep others from falling into the same thing.

Here are just some thoughts, considerations, guidelines and hopefully common sense rules of thumb that come to mind and that I’m sure you all already know (but reminders from time to time never hurt)…

a) If you wouldn’t blog it, then you shouldn’t post it on any type of social network either.

Yeah, I know seems kind of obvious in hindsight, But social networks are like a “circle of friends” so you may find yourself saying/writing things that you wouldn’t in an email or blog post… Don’t do it.

b) If you don’t have hard evidence and it’s not “official” then think twice about writing it

Again, obvious isn’t it? Yet social networks make it SO easy to very quickly blat out a quick note about something you just heard or were told. Remember, think before you send…

c) They ARE watching you.

Even if your co-workers are not on a given social network, that doesn’t mean someone in your company isn’t watching.

d) Remember that many of social networks are interconnected, so what you post one place will show up on others.

A single tweet can show up in how many places? Twitter, Frendfeed, Google, Facebook, RSS reader, Re-twitted, etc, etc, etc…

e) If you get “called on the carpet” and are not morally or ethically kept from doing so, accept it, move on and learn from it.

If you screwed up, then man up. Accept it, learn from it and move on. Don’t get huffy, don’t fight and don’t react in anger. Don’t make it worse. UNLESS if you truly feel morally or ethically bound to do otherwise of course…

f) 140 characters can get you into as much trouble as an email or blog post can

‘nuff said

g) It is almost impossible to destroy electronic data, doubly so once it leaves your machine.

I’ve said this again and again, but even I kind of blew this off when tweeting. Electronically Stored Information (ESI) is ESI no matter the channel, means or method and ESI is almost impossible to completely destroy.

 

Again these common sense points I know, but as we meld into our social network more and more we have to remember they apply just as much there as everywhere.

Thursday, March 12, 2009

Data, data, everywhere free data… At least in the Guardian’s Data Store – Tons of data, all free and all delivered via Google Spreadsheets (get your mashup engines started)

guardian.co.ukData Store

“What is this page?

Data from the Guardian

We have compiled our top sets of publicly-available data for you to use free. Explore the links below, visualise and mash them together. Then, let us know what you've done.

image

And more US data from the Obama’s America page;

image

For example, here’s some US unemployment data;

image

Data Store - How to get data out of the Data Store

“…

The aim of the Data Store is to make important data more accessible to people. With that in mind, we are publishing the facts and figures using tools that anyone can use for whatever needs they have.

You'll find a link within each data page to a spreadsheet where you can see the data. We've chosen Google Spreadsheets to host these data sets as the service offers some nice features for people who want to take the data and use it elsewhere.

A key reason for choosing Google Spreadsheets to publish our data is not just the user-friendly sharing functionality but also the programmatic access it offers directly into the data. There is an API that will enable developers to build applications using the data, too.

We explained how this works before when we published the America 2009 series in January to test out the concept. You can find detailed information about the Google Spreadsheets Data API on Google Code.

We'll be looking at other methods for making data we publish useful both for people and for machines, but we'd love to get some insights from you, as well. Tell us how we can make data more useful.

…”

Data… Man, I love data! So much the better when it’s free and accessible via an API…

(via Chris Webb’s BI Blog - Guardian Data Store - free data, and some ideas on how to play with it)

PolyMon Controls – Free, cool and source available WinForm controls (plus a little about PloyMonRT and PolyMon)

CodePlex - PolyMon Controls

“PolyMon Controls is a project that provides various Windows Forms .NET controls as described below.

1/18/2009 New Release: This new release adds:

    • A radial gauge. This gauge is highly configurable and can be used for full circle or partial circle gauges.
    • A numeric LED display (8-segment). Segment widths, colors, etc are all customizable.

Please note that these controls are targeted for .NET 3.5 and source code is for Visual Studio 2008.

image

…”

Even as I try to move toward WPF I still find cool, free WinForm controls well… cool! I can almost always find a use for a free Gauge or LED control.  ;)

 

On a related note, you might also be interested in the PolyMon and PolyMonRT projects.

PolyMon was also just mentioned in the latest The Thirsty Developer, The Thirsty Developer 54: Powershell, in that it can use, and display results from, PowerShell scripts.

CodePlex - PolyMon

“…

Welcome

PolyMon is an open source system monitoring solution that can be used to generate email alerts and analyze historical trends of monitor counters and monitor statuses. It is based on the .NET 2.0 framework and SQL Server 2005.
It is simple to use and run but flexible enough for many circumstances.
It is made up of three primary components:
  • A SQL Server database to store monitor statuses, alerts and general settings.
  • A windows service (PolyMon Executive) that runs monitors on a periodic basis, logs results to the database and sends out email notifications.
  • A management/monitoring front-end (PolyMon Manager) that is used to manage general settings, monitor definitions, operators, alert rules, etc. and analyze historical trends (both monitor counters and statuses).

Current monitor plug-ins:
  • CPU Monitor
  • Disk Monitor
  • File (Age and Counts)
  • Windows Performance Counters Monitor (built-in Performance Counter browser)
  • Ping
  • PowerShell Scripting
  • SQL Monitor (Can run any stored procedure that returns resultsets in a specific format)
  • SNMP Monitor
  • TCP Port Monitor
  • URL (HTML) Monitor
  • URL (XML) Monitor
  • Windows Service Monitor
  • WMI Monitor (built-in WMI browser and query builder)

…”

Dashboard-TileView

CodePlexPolyMonRT

Dashboard_Medium

PolyMonRT is a real-time monitoring system that allows users to create custom dashboards.
PolyMonRT does not persist monitoring data to a database and therefore does not require a back-end database to function.

Features:

  • Easily customizable dashboards (drag and drop)
  • Color coded threshold values
  • Polling Intervals fully customizable at individual monitor level
  • Fully customizable polling retention time periods at individual monitor level with Min/Max/Avg counters
  • Ability to run monitors under a different user than currently logged in user
  • Save dashboard definitions to plain text xml files
  • Current monitors include:
    • PerfMon
    • Ping
    • PowerShell (custom PowerShell scripts)
    • SQL (custom Stored Procedures)
  • Monitors can be displayed in a variety of formats:
    • Trace Chart
    • Dial Gauge
    • Linear Gauge (LED style)
    • Cylinder Gauge
    • Status Light

…”

(via SharePoint Thinks, Links and Clinks - Hey Mr. PolyMon, Poly me Bananas (a.k.a. you like to watch))

Wednesday, March 11, 2009

Free ASP.Net MVC 1.0 eBook - (Well the first 195 pages of the book, which is an end-to-end ASP.NET MVC tutorial…)

ScottGu's Blog - Free ASP.NET MVC eBook Tutorial

“There has been a lot of excitement in the community about the new ASP.NET MVC framework that is about to ship (literally any day now – announcement coming soon).  As with anything new, people are also asking for more tutorials/samples/documentation that cover how to get started and build applications with it.

Over the last few months I’ve been helping to contribute to an ASP.NET MVC book that Scott Hanselman, Rob Conery, and Phil Haack have been writing for Wrox.  The book is now in production, and will be available to buy in stores soon (you can pre-order it on Amazon today).

I wrote the first chapter of the book – which is a 185 page end-to-end tutorial that walks-through building a small, but complete, ASP.NET MVC application from scratch.  The agreement I made with Wrox was that I’d write it for free in return for them also making it available as a free PDF download.

I’m excited to announce that you can now download this free end-to-end tutorial chapter (it is a 14mb PDF file). It’s licensed under a “Creative Commons Attribution No Derivatives” license – which means you can share, distribute, print, or hand it out to anyone.

Download Links

…”

 image

While I usually don’t link to partial eBooks, this one close enough…  ;)

BTW, you can preorder the complete on Amazon now…

(via Rob Conery - Nerddinner and a Free Book!)

CodeBox – A WPF chroma keying and simple formatting textbox

CodeProjectCodeBox

“A fast WPF textbox control with support for text coloring, highlighting, underlines, and strikethroughs.

CodeBox

This article presents an enhanced text box control that is designed to facilitate text coloring, highlighting, underlining, and striking. As it is derived from the TextBox control, rather than the RichTextBox, it is quite speedy.

Background

I was in the process of upgrading a Regular Expression generating tool of mine. For the nth time, I was considering moving it from WinForms to WPF. My problem was the painful slowness of the RichTextBox control. I had tried numerous times to somehow get performance that compared to the WinForms RichTextBox, but failed. This time, I tried something different. For the heck of it, I overrode the OnRender method, and wrote a little text to the TextBox. I was surprised to find that both the textbox’s text and my additional text were visible, as I expected only my overridden text to appear. It took a few moments to progress from Oh that’s odd to Wow, my problem is solved, as I could now do the following.

  • Recreate the same text as was in the textbox, but colorized and otherwise decorated
  • Since both sets of text are visible, I can make sure that they line up exactly
  • The original text's brush can be set to something transparent so it will not cover up the decorated text
  • Selecting and editing will be handled by the underling text box functionality

I figured that this couldn’t possibly be slower than the RichTextBox, so I gave it a try. It exceeded my expectations, so here it is.

Using the Code

This control can be used like a regular textbox with the following caveats. The background and foreground brushes should both be set to something transparent. This is done in the constructor so all one needs to do is not set them. In order to set the default text color, use the BaseForeground property. In order to set the background color, just wrap it in a border. Hopefully, I will be able to remove this nonstandard behavior soon. Text coloring rules are set through the Decorations property.

…”

I’ve been thinking about including chroma keying/text coloring in some of my apps (including color code SQL ;) so I keyed in on this…

How do you “close” a TFS Iteration? You can’t, but you can hack it to fake it… (and as a bonus, how to keep the root Iteration from being selected)

Teams WIT Tools - Work Item rules workaround: Closing down an iteration

“… Let’s take a look at another question: “How do I close an iteration so that no one can log new items against it?

image_6

For this example, let’s say we have completed Iteration 0 and don’t want users to log work items against this iteration. We also don’t want to allow work items against the root iteration path.

Since there is no direct way to enforce rules against iteration path, here’s how we can work around it:

  1. Create an IterationPathValidation field
  2. Create a tab on the work item form called “Validation Errors”, like the previous example on area path validation, and display the IterationPathValidation field
  3. Find the IDs for the restricted iteration paths
  4. Add the following rules to the IterationPathValidation field:

…”

Of the two suggestions here, how to keep a specific iteration from being selected and keeping the root from being selected, the second seems to be the most viable (and one I’m going to use right away).

The “closing” of an Iteration is very cool, but SO manual that I don’t see how viable it really is. I wonder if it could be tweaked to be a little more dynamic? Could a Closed iteration branch be created, old/closed iterations moved there and then the fact that the IterationPath contains \Closed\ be used in the validation? Will have to think about that, because I would really like to be able to “close” old iterations/Sprints but not have to tweak the validation every 30’ish days…

Tuesday, March 10, 2009

SQL Data Services, now a “real” SQL Server in the cloud – Change the connection string to point to SDS and “have it just work”

SQL Data Services Team Blog - The no spin details on the new SDS features

“Today we announced the details of our plans to accelerate the delivery of core relational database features as part of SDS. There has been quite a bit of buzz about SDS over the past couple weeks and it is great to be able to share the details more broadly.

…We are providing an experience where a developer can take an existing application and just change the connection string to point it to the cloud and have it just work.

How will we do it? Three letters TDS. TDS stands for Tabular Data Stream and it's the published protocol that clients use to communicate with SQL Server. From its inception, SDS has always been built on the SQL Server technology foundation and it just made sense to allow our users to access their data via TDS. Most importantly for developers, this means symmetric SQL Server functionality and behavior combined with compatibility with the existing tools you are familiar with.

Tables?...Check

Stored Procedures?...Check

Triggers?...Check

Views?...Check

Indexes?...Check

Visual Studio Compatibility?...Check

ADO.Net Compatibility?...Check

ODBC Compatibility?...Check

To be clear, the above is not a complete list of supported features. However, given the feature set we are planning to support in SDS v1, a majority of database applications will “just work”, allowing developers to target on and off-premises deployments with essentially the same code base.

What about the ACE (Authority, Container, Entity) data model and developer experience? Since Windows Azure storage has a similar data model (property bag) and developer experience, we will stop supporting the current ACE Model sometime in the future. Does this mean you can't access your relational data via internet friendly protocols like REST? Not at all. You can still access your relational data (located on premises or in the cloud) via HTTP/REST using the ADO.Net Data Services framework. The compatibility with existing tools and technologies is a really important point to drive home and a super important value add that Microsoft provides.

…”

Nice… I was kind of hoping that ACE might take off, but then again there was really no way I was going to be able to do anything in that space for forever. A total data layer rewrite is killer (not that I have to tell you guys that ;) and just not something I was looking forward too .

So in bowing to the real world (i.e. listening and acting on the tons of feedback they received) Microsoft is going to give us something we can really use out the gate. Lets hope though that we get the best of both worlds, the uber scalability of the ACE model with the familiarity of the traditional. If nothing else, this dramatically lowers the bar of entry into the SDS world.

PsTFS – PowerShell and TFS, better than peanut butter and chocolate? (Okay, maybe not, but it’s close… ;)

CodePlexPsTFS

“PsTFS is a set of PowerShell commands to manage and use Team Foundation Server. PowerShell effectiveness is combined with the power of TFS API to maximize TFS capabilities.

These CMDLETS provide support for :

  • Visualizing project(s) members
  • Adding a list of members to a group of projects
  • Listing projects
  • Viewing work items
  • Executing work items queries
  • Adding one or more file to a project
  • Adding folder recursively
  • Performing merges
  • And many more to come...

CmdLet list

CmdLetDescription
Add-BranchCreates a branch
Add-FilesAdds files
Add-MemberProjectAdds members to a project group
Add-ProjectCreates a new project on the server
Add-LabelCreates a label
Add-WI (NEW)Create a Workitem for a given type and project name
Get-AllProjectsRetrieves information about every project
Get-ChangesetRetrieves changesets from one or more projects
Get-ChangesetByWI (NEW)Retrieve all changesets for a given workitem
Get-Diff (NEW)See the difference between two server folders
Get-Files (NEW)Retrieve files from a server folder
Get-LogTFS (NEW)Save events in an object collection (Adding/Removing file, Check-in...)
Get-ProjectMembersRetrieves members of a project
Get-PendingStatusGet the pending changes
Get-TFSConnects to a Team Foundation Server
Get-WIGets a specific version of a work item by its id or URL
Get-WIQueriesRetrieves all work item queries from a project
Get-WIsRuns a work item query
Remove-Files (NEW)PERMANENTLY delete one file or more
Remove-ProjectMembersRemoves members from a project
Set-MergePerforms merge between branches

…”

PsTFS - PsTFS V0.2

“Released: Mar 8 2009

Updated: Mar 9 2009 by pc152

Dev status: Beta

Downloads & Files

Sample - CreateProject – EN
documentation, 3K…

Exemple - CreateProject – FR
documentation, 4K…

PsTFS V0.2
application, 129K…

PsTFS V0.2 (Source)
source code, 9205K…

…”

The merging of these two, PowerShell and TFS, seems like a no-brainer in hind sight doesn’t it?

How cool would it be to have a PS Provider/Namespace for TFS? DIR’ing and CD’ing into the different areas of a TFS server would be pretty interesting wouldn’t it? Hum…

[Starwars Humor] I want a pet AT-AT…

Gizmodo - Pet AT-AT (Probably) Won't Poop on Your Carpet

petatat

This made me laugh so I thought I’d share… ;)

Make sure you click through to the NickIsConfused’s Flickr album, AT-ATs: not just for xmas

image 

It’s official… I’m booth bound for TechEd US 2009

“Dear Microsoft Expert:

Congratulations!  You have been selected to participate in Tech·Ed North America 2009 as a Microsoft Expert in the Development Practices Track Area of the Technical Learning Center (TLC). 

…”

So it’s official, I’ll be working a Microsoft booth at TechEd… How cool is that!

I’ll post my schedule, etc, once I get that all worked out in the coming weeks. Huge thanks to Brian Keller of This Week on Channel 9 for recommending and vouching for me.

See you there!

Join Me at Tech·Ed Connect 2009!

Monday, March 09, 2009

“Effective PowerShell: The Free eBook” – Keith Hill’s Effective PowerShell blog posts as a living and growing (and free) eBook

Keith Hill's Blog - Effective PowerShell: The Free eBook

“I’ve gotten some requests to turn my Effective PowerShell blog posts into booklet form which I have done.  I expect that this document will grow over time as I add new items.  If you have feedback (typos, suggestions, etc) please drop me a line.

…” [GD: Click through for the download link]

image

 

Table of Contents
Introduction ...............................................................................................................................................................1
Item 1: Four Cmdlets that are the Keys to Discovery within PowerShell ..................................................................1
Key #1: Get-Command ..........................................................................................................................................1
Key #2: Get-Help ...................................................................................................................................................2
Key #3: Get-Member ............................................................................................................................................5
Key #4: Get-PSDrive ..............................................................................................................................................6
PowerShell 2.0 Update ..........................................................................................................................................7
Item 2: Understanding Output .................................................................................................................................8
Output is Always a .NET Object ..............................................................................................................................8
Function Output Consists of Everything That Isn't Captured .................................................................................9
Other Types of Output That Can't Be Captured .................................................................................................. 11
Item 3: Know What Objects Are Flowing Down the Pipeline ................................................................................. 12
Item 4: Output Cardinality - Scalars, Collections and Empty Sets - Oh My! ........................................................... 15
Working with Scalars .......................................................................................................................................... 15
Working with Collections ................................................................................................................................... 16
Working with Empty Sets ................................................................................................................................... 17
Item 5: Use the Objects, Luke. Use the Objects! ................................................................................................... 19
Item 6: Know Your Output Formatters ................................................................................................................... 22
Item 7: Understanding PowerShell Parsing Modes ................................................................................................ 31
Item 8: Understanding ByPropertyName Pipeline Bound Parameters .................................................................. 35
Item 9: Understanding ByValue Pipeline Bound Parameters ................................................................................. 38
Item 10: Regular Expressions - One of the Power Tools in PowerShell ................................................................. 42
PowerShell 2.0 Update ....................................................................................................................................... 43
Item 11: Comparing Arrays .................................................................................................................................... 43
Item 12: Use Set-PSDebug -Strict In Your Scripts - Religiously ............................................................................... 45
PowerShell 2.0 Update ....................................................................................................................................... 47
Item 13: Commenting Out Lines in a Script File ..................................................................................................... 47
PowerShell 2.0 Update ....................................................................................................................................... 48

Ah… Nothing starts the week off like a free eBook, especially when it’s on a cool topic like PowerShell.

(via Alvin Ashcraft’s Morning Dew - Dew Drop – March 9, 2009 –> Windows PowerShell Blog - Free PowerShell EBook)

Sunday, March 08, 2009

Command Line Parsing in .Net 4.0? – Um… Whoops!

InfoQ - .NET 4 Will Not Have a Command Line Parser

“…

We are not shipping System.Shell.CommandLine in .NET 4. This was based on an intern project from a couple of years back that was mistakenly public in the .NET Framework 4.0 CTP. It wasn't a design that we were happy with and has been removed and will not be present in the next preview release.

We have a *much better* command line parsing API, along the lines of Mono.Options, that we're planning to release on CodePlex later this year.

…”

This made me laugh (as one developer to another, as one who has made mistakes and am laughing with, not at, the team)… Doh!

You can almost hear the chatter from Microsoft, “Hey what’s this Command Line API in 4 that Miguel is jumping up and down about?”

“What command line API? There’s no Command line API in 4”

“Um… Yeah, there is… Right here…”

“Oh Crap! That’s So and So’s project, what the heck is THAT doing there?”

“You mean it’s not supposed to be there?”

“NO!”

“Oh”

 

Related Past Post XRef:
Command Line Parsing – A wheel we can finally stop reinventing with .Net 4.0