Wednesday, October 23, 2013

San Antonio SharePoint User Group Presentation - 5 Stages of SharePoint Grief: Coming to Terms with the Rebuilt Workflow Platform in SharePoint 2013

I presented last night (10/22/13) at the San Antonio SharePoint User Group (SASUG) on SharePoint 2013 Workflow.  I tried to record it with Camtasia, but it stopped at some point.  I'm going to attempt to record it again and I'll share that link.  Here's the links to the slides and the related AIS blog post.


Redesigning a SharePoint 2010 Workflow Project for SharePoint 2013:

Wednesday, June 26, 2013

Contributing Author: SharePoint 2013 Inside Out

I'm happy to announce that my first book has been released!  Well, to clarify, I'm a contributing author on SharePoint 2013 Inside Out.  I contributed a chapter on Document Management.  The title authors are veterans of the craft: Penny Coventry, Darvish Shadravan, Tom Resing, and Christina Wheeler.  Also, Javier Barrera was a fellow contributing author on this book.

Authoring a book is always something I wanted to do since I was in high school (although, at that point I thought it would be fiction).  I figured it would have been easier to write a single chapter than it was.  I had the first draft done in two weeks, but that left me with very little sleep over that time.  Granted, this book is more geared towards the experienced power user and not the developer, but I greatly underestimated how easy it would be to write 20-30 pages on Document Management.  While I do hope to become a title author in the future, I now know that there isn't much life outside of writing during that process and that I need to plan accordingly.

I'd like to thank my family for my mental absence, if not physical absence, while I worked on this.  I typically sat in the living room, but I was in my own world while writing.  My wife really was great during the process as I did practically nothing around the house during those two weeks.  Also, Tom Resing deserves a thanks for calling me in on this project.  He vouched for me with the publisher allowing me to get my foot in the door.

SharePoint 2013 Inside Out is published by Microsoft Press and is available through all of the normal outlets as an ebook or physical text.  Buy a copy or ten.  If you're in the San Antonio area, you can find me at the SharePoint User Group most months and I'd be happy to sign it if that matters to you.

Tuesday, April 23, 2013

Road to Certifiability Exam #1 Completed - 70-480: Programming in HTML5 with JavaScript and CSS3

I took this exam in January because there was a promo code offer to take it for free.  My experience with HTML5, JavaScript, and CSS3 very limited.  I've always tended to favor C# (or VB prior to late 2007) to manipulate the UI.  This has put me behind the ball as we move into all of these new-fangled web methodologies like MVC, Responsive Design, etc.  I've incorporated JavaScript rarely and have only used CSS and HTML as needed.  Needless to say, that's going to change whether I want it to or not.

How I Prepared

When I heard about the exam, it was also linked to the Microsoft Virtual Academy Jump Start on the same topic.  The development in this video series is done on Windows 8, but it applies to standard web development.  It was a great way to get introduced to the three languages.  In fact, I'll probably refer back to it when I need a refresher on some of the more complex CSS selectors or JavaScript promises.

One of the things the Jump Start didn't cover well was web sockets.  I just did some web searches for explanations and examples to try to commit more to memory.  It turns out that wasn't really needed once I saw the exam questions.

Finally, I read through several sections at W3Schools on JavaScript.  I focused on Web Workers, AJAX queries, and Prototypes.  I really don't think there's a better place to get started than W3Schools.  The examples are good and well explained.

Exam Result and Review

I took the exam about two weeks after I scheduled it.  I was thinking that I would just scrape by, at best, as I figured everything I studied seemed rather basic.  Well, that's what this test was...basic.  I walked out in less than 30 minutes with a mid-900s score.  The Jump Start alone was enough to pass (700 or better to pass) and the W3Schools put me over the top.

On one hand, I was floored because I didn't expect it to be that easy.  On the other hand, it seemed like such a "gimme" to the point I wonder if it was a way to make Windows 8 development more relevant by flooding the market with more certified people.  I don't think anyone who's done even a couple of small HTML5/CSS3/JavaScript project would have any issue passing this without studying.

There's definitely a part of me that would like at least the MVC exam to be as easy, but I really want to feel like I earned the MCSD.  My ideal situation is that I can study harder than I did for this exam, but still pass and walk away with a few questions that I'll research.

What's Next

As mentioned in the intro post to this series, I'm scheduled to take the two SharePoint 2013 beta exams in May.  I'm assuming these will follow suit with other beta exams where the results won't be immediate.  I will likely get the results in a few months once the exams go live.  I'll draft the posts, but they won't be published until I get the results back.

Sunday, April 21, 2013

Road to Certifiability

Welcome back, avid readers (okay, that's probably just my wife)! I've been deep in a project and most of my blogging has been on the AIS blog recently. However, I'm going to chronicle my certification path on this site. I had my annual review back in February and the big growth goal that was asked of me was to earn a Microsoft Certified Solutions Developer (MCSD) and Microsoft Certified Solutions Expert (MCSE) on SharePoint 2013 by the end of the year. This was already a goal of mine as a bit of a New Year resolution, but this makes it a bit easier to not let it slide.


Over the last couple of years, I've become very interested in earning the Microsoft Certified Solutions Master (MCSM...Formerly MCM - Microsoft Certified Master). Since I've committed myself to the SharePoint Asylum, it makes sense that I go for that particular one. If you're not familiar with the MCSM, it's not your run-of-the-mill certification. It sounds like one of the most grueling programs I've heard of. A recent post by Kirk Evans only further supports this statement.  

I won't go into too much detail, but the qualifications for acceptance to the program starts with the MCSD and MCSE.  After that, you have to interview with some of the smartest people on the technology (likely other MCMs).  Then there's the actual program.  There are now two program options: a 3-week program in Redmond or a hybrid program that consists on 1 week in Redmond and 9 weeks remote.  At the end of this comes two exams.  The first is the written exam, which sounds like it really is a WRITTEN exam and not a multiple guess exam like the other Microsoft exams.  Second, is the qualification lab which actually tests what you know (and probably a lot of what you just learned in the 3 or 10 week program).  As Kirk describes it, it's 8.5 hours of work that would normally be billed at a month.  Easy, right?  To top it all off, you only get 3 shots at each test before you have to retake the entire course...which comes in at a modest $18,500 + $125 application fee.  Don't forget, that doesn't cover room, board, and airfare, either.

If you actually survive all of this, I imagine it pretty much assures job security in SharePoint as anyone who succeeds really KNOWS SharePoint.  That's the main reason I'm interested as that means that I'll have no problem providing for my family.  Admittedly, I hope it also helps me work my way into the big conference speaking, too.  Another goal of mine is to speak at a SharePoint Conference, Tech Ed, or a similar venue.

What's that mean for this series?

I'm going to use this series as a way to share my thoughts on the exams and how I prepared.  Hopefully, there won't be many instances of exam retakes, but I figure I'll need my fair share of Second Shot offers.

I've already finished 70-480: Programming in HTML5 with JavaScript and CSS3.  I'll follow up with a post on that soon.  I'm registered for 71 70-488: Developing Microsoft SharePoint Server 2013 Core Solutions and 71 70-489: Developing Microsoft SharePoint Server 2013 Advanced Solutions.  These are the Beta exams for the MCSD.  While I'm waiting to get those results back, I'm going to prepare for 70-486: Developing ASP.NET MVC 4 Web Applications.  That's 4 exams for the MCSD: SharePoint 2013.

The MCSE: SharePoint 2013 consists of 5 exams.  Three of these exams will earn a Microsoft Certified Solutions Associate (MCSA) on Windows Server 2012.  Only two will be directly related to SharePoint 2013.  It's obvious that SharePoint, and thus its related certifications, is placing more importance on other Microsoft technologies, such as Windows Server and ASP.Net MVC, than before.  I'll try to share my thoughts on this as I cover the exams, as well.

Links to the rest of the series

Road to Certifiability Exam #1 Completed - 70-480: Programming in HTML5 with JavaScript and CSS3

Monday, March 4, 2013

SharePoint Saturday Austin 2013

For those that didn't know, I presented this past weekend at SharePoint Saturday Austin.  My session was "PowerShell for Developers: IT Pros need to share."  It was an introduction to PowerShell and followed the first two of my three part series on the AIS corporate blog.

I felt the slides went well, but the demos that worked the night before didn't.  I'm going to provide a video later showing the demos actually working.  I hope to have that up by the end of the month.

If you'd like to know more about the presentation or the topic, follow the links below.

Slides on SlideShare

AIS Blog Series
PowerShell for SharePoint Developers, Part One: The Basics
PowerShell for SharePoint Developers, Part Two: SharePoint Integration
PowerShell for SharePoint Developers, Part Three: SharePoint 2013 Development VM

Friday, December 7, 2012

SharePoint Saturday San Antonio

This has been a LONG time coming, but I finally have my wrap uppost from about 2 months ago when SharePoint Saturday San Antonio actually took place.

My presentation was less than stellar due to buggy RC code, network issues, and my inability to adapt on the fly during the presentation.  However, I have great news!  I've recreated the presentation between a blog post on the AIS Blog and a video hosted through the AIS YouTube account (the video is also embedded in the post).

In addition, I've uploaded my slide deck to SlideShare.  Feel free to grab it.

AIS Blog Post
AIS YouTube Video
SlideShare Deck

Monday, December 3, 2012

Converting VMWare Workstation Machines to VirtualBox Machines

I had installed the VMWare Workstation 8 demo several months ago.  When it expired, I tried to remove it and the uninstall failed.  Since then, I haven’t been able to reinstall or remove it with several different methods I found online.  I ended up using Oracle’s VirtualBox instead.  However, most of the VMs I’ve been given have been built in VMWare.  I haven’t been able to directly import the vmdk files into a VM because when I do, I get a startup loop.

This loop gives me the VirtualBox screen, then goes to the Windows loading screen, and then I get the Blue Screen of Death.  It does this in an infinite loop.  So, I’ve found that I can use VMWare’s OVF Tool to convert the images to an Open Virtualization Format VM then import into VirtualBox.

Unfortunately, even that isn’t completely straight forward.  Let’s take a look at the issues and solutions.

Issue #1 – How to use the OVF Tool             

First off, it’s a command line tool.  Run the command prompt as administrator.  Then navigate to the folder where the tool is installed.  For me, this is C:\Program Files\VMWare\VMWare OVF Tool.  Next is the actual command.  Here’s my example:
Ovftool.exe “C:\users\me\VMs\SP2013\SP2013.vmdk” C:\users\me\VMs\SP2013\SP2013.ovf”
The first parameter is the path to the existing vmdk.  The second is the file name/path for the ovf file that you want to create.  Seems simple enough, right?  Well, I tried to drop it in another folder, but when I went to import it, it failed.  Apparently the tool doesn’t update paths when creating the file.  Once I settled on using the same folder, it worked.  Unfortunately, it took 1.5-2 hours for each of the VMs I just converted to complete.  They were both under 60 GB.

Issue #2 – Device is already attached

When I went to import the OVF into VirtualBox, I received the follow error:
Device is already attached to port 1, device 0 of controller 'IDE Controller' of this virtual machine.
Result Code: VBOX_E_OBJECT_IN_USE (0x80BB000C)
Component: SessionMachine
Interface: IMachine {22781af3-1c96-4126-9edf-67a020e0e858}
I opened the OVF file in Notepad++ and found that I had two IDE controllers for hard drives.  There was only one drive for the machine.  I removed the markup for the port 1, device 0 controller.  Save the file and attempt to import the OVF again.

Issue #3 – SHA1 mismatch

After resolving Issue #2, I received this message:
The SHA1 digest of 'SP2013.ovf' does not match the one in '' (VERR_MANIFEST_DIGEST_MISMATCH).
Result Code: VBOX_E_FILE_ERROR (0x80BB0004)
Component: Appliance
Interface: IAppliance {3059cf9e-25c7-4f0b-9fa5-3c42e441670b}
I tried to modify the OVF again to update the SHA1, but I never found the value.  Instead, I removed the file completely.  Once I did this, the first machine was able to successfully import and start up.

Issue #4 – Unknown Element Config

When trying to import the second VM, I received this error:
Error reading "C:\Users\me\VMs\SP2010\SP2010.ovf": unknown element "Config" under Item element, line 47.
Result Code: VBOX_E_FILE_ERROR (0x80BB0004)
Component: Appliance
Interface: IAppliance {3059cf9e-25c7-4f0b-9fa5-3c42e441670b}
It seems that when I created this OVF, additional configuration came through that isn’t supported by VirtualBox.  I removed 3 or 4 instances of Config elements in the OVF XML and this error stopped appearing.


So, I realized that I’m overcomplicating this whole process.  I started down the OVF track because I thought I couldn’t just mount the VMDK directly.  That was completely wrong.  What seems to be the issue was when I was trying to mount the drive, it was mounting as a SATA drive, not IDE.  Once I mounted as IDE, everything worked just fine.  So, maybe the above will be useful for someone down the road, but the true moral of the story is that VirtualBox doesn’t like SATA drives.  IDE is the way to go.