The suite job of power cloning: Coming to terms with SharePoint
By Peter Serzo
The breadth of technology packed into SharePoint 2013, the fifth iteration of the product, means there is a lot of terminology to assimilate. One of the benefits of being a consultant is that I get to see and put into practice many different facets of the technology. Others may hear words and phrases and not understand what they mean. The title of this article contains three terms that span technologies related to the Administrator, Business User and Developer. The terms and their associated technologies are things that all should be familiar with.Send in the clones!I ran headfirst into this term “cloning” when building out a SharePoint 2013 implementation for an airline a few weeks ago. I got to the Search scale-out, which can only be done via PowerShell (there is no GUI), and ran into my first cloning experience.When you create the Search default topology, there are several components: Admin, Crawler, Content Processing, Analytics Processing, Query Processing, and the Index Partition. You definitely do not want all of these to run on the same machine. Therefore you must scale out the active topology.In order to do this, you follow these steps:1. Create the Search Service application.2. Clone the active topology. The command is SSA.ActiveTopology.Clone().3. Create the search components (i.e., Query Processing).4. Activate the clone! (i.e., $clone.Activate()).(For the movie buffs out there, I could not get the voice of Austin Powers’ Frau Farbissina out of my head. Thankfully, the experience is not as painful as her voice.)Power everywhereBusiness users, Microsoft has given you PowerPivot and Power View. Now Power Query and Power Maps have joined the band, making it a fearsome foursome. PowerPivot’s name has been modified, and the four now comprise what has been termed Power BI (Business Intelligence). The band’s manager is one you know well: Excel. It has been christened the primary tool for Self-Service BI.What this really means is that SharePoint is the tool for delivering corporate BI, but now the business user with Excel can deliver complex BI solutions. Since PowerPivot and Power View already exist, I will briefly recap the other two components.• Power Query (formerly known as Data Explorer) is for data preparation. It will search for data online (internal or external) and import it into an Excel table. You will be able to “shape” the data and save the process. You can then bring this into your Power Pivot model and work on it further.• Power Maps is a visualization technology, formerly known as GeoFlow. Think 3D mapping. You have the ability to explore and interact with geographical data, which should elicit new insights.The catch to these technologies is that they will only be made available to Office 365. Cloud goes first. Customers who have on-premise SharePoint will not be able to take advantage of these technologies and the mobile application of Power BI on the tablet (Windows or iPad).Maybe Microsoft can name the next iteration of these applications for on-premise the Power Station, another popular four-person band. In any event, you can play with these technologies today via Microsoft downloads on your PC. (You must have Office Professional Plus 2013, though.)Pull up to the Suite BarFinally, the SharePoint 2013 Suite Bar. Why is it named this, I have no idea, but here it is:This is what it looks like out of the box. It is somewhat useful, but on a couple of installations I have been involved with, customers wanted to modify it. That is where the developers come into the picture. The caveat is that it must be done with a farm solution via Visual Studio. Sorry 365.The bar is a delegate control, which is a component on a page that is rendered at runtime in the .aspx page. Therefore, we cannot go into the design mode and change text such as “SkyDrive”. There are a few blogs out there that explain how to modify this control. There is even one blog I know of personally that put the actual code solution out there to do this. You might “Bing” the author of this article for that one.The Suite Bar, Cloning and PowerPivot/View/Query/Maps are just three components in a product that has thousands. While you might not have to know the how, it is critical that you understand the what. That is one of the items I love about this space; every day I am learning something new and striving to share it. Now that is Suite!Peter Serzo is a published author of the “SharePoint 2010 Administration Cookbook,” a founder of the SouthEastern SharePoint group, a speaker, and SharePoint Architect for High Monkey Consulting. Peter has been in the IT industry for 20 years. He has extensive experience with SharePoint implementing business solutions for several enterprise organizations over the past seven years.
|
Five steps for easing the migration to Office 365 or SharePoint Online
By Steve Marsh
When the dust began to settle after the rush to SharePoint 2010, Microsoft decided to throw in a new consideration for the SharePoint 2013 wave: how to make the transition from an on-premise SharePoint to a cloud-based SharePoint. While the underlying technology of SharePoint in Office 365 is broadly similar to the version that you can install on-premise, there are a few unique differences that could derail your migration. With that said, it’s worth bearing in mind a few things when considering the migration to Office 365 or SharePoint Online.1. Do you need to move SharePoint to the cloud? Just because SharePoint is now available in the cloud, you still must ensure it makes business sense for you to make the move. There is no doubt that there is pressure to embrace the cloud coming from a variety of sources. Regardless, you have to make sure it is the right move for your organization. It’s not solely Microsoft Office 365 that you should consider either, as SharePoint in a “Private Cloud” could also be the right option for you.2. Your move to the cloud is going to take much longer than you think it will. I’m not saying that you should estimate how long you think it will take, then double it, but the reality is the migration will take longer than you first thought. SharePoint is complex, things can go wrong and connections to the cloud can be slow or break. As some of the following points illustrate, there are ways to help mitigate these; however, it’s important that you realize that this is the case. 3. Identify what you need to migrate and what you should leave behind. There is no point spending time (and therefore money) migrating content that is no longer useful to your business. It’s important to work with the content owners and business users to identify the relevant content. It’s not just what content is new or being accessed; it is also important to understand how it is being used. This will help you to validate that cloud-based SharePoint is going to meet the business needs. You can then start to build a plan for an updated information architecture and carry out your move to the cloud. This is also the stage where you can identify any customizations that you made on your existing SharePoint and formulate a plan for how to deal with them.#!4. Test your migration. It sounds obvious, but you should test out migrating to your SharePoint in the cloud. Try to use content and a SharePoint structure that is as close to a representation as possible to your final planned environment. Once you have carried out one test, try another. And another. It’s important that you extensively test, as there are limitations with what can be moved to the cloud.If you are moving to Office 365, then you are probably using a third-party migration tool, which will have different capabilities for migrating; maintaining metadata, workflows and permissions are capabilities that often differ. These are likely important for your migration, and it is imperative that you understand any limitations related to these. Multiple tests will also verify an approximation of the speed to help you plan a migration schedule. Notice I said “approximation,” because it’s often a good idea to add some extra time to give yourself some additional wiggle room.5. Verify the results with the business. Once you are happy with your testing, you should show the results to some key business users. Remember that these are the people that ultimately need to be happy with the move. Make sure that the content has been migrated in the way that they expect, and that any new information architecture that made sense on the whiteboard or blueprint now makes sense in the real world.Steve Marsh is the SharePoint migration expert at Metalogix, where he has worked since 2010.
|
The SharePoint App Model
By Eric Riz
One of the biggest changes in the release of SharePoint 2013 was the shift toward the App Model. In short, the Cloud App Model enables the creation of self-contained pieces of functionality that extend the capabilities of a SharePoint site. These are greater in complexity than a Web Part; think of performing a particular business function through or with the aid of an app.Most are familiar with the conceptual model, given the advent of tablet devices such as the Surface. This sounds straightforward when I put it in that context, but in reality the App Model has provided more questions than answers for users, developers and businesses alike. Note, of course, that there is no App Model in place for previous versions of SharePoint.SharePoint 2013 apps are targeted, lightweight pieces of functionality, largely focused on addressing specific user needs or solving an existing and/or acknowledged gap. To me, SharePoint apps are small programs that have new and creative ways to extend comprehensive Web Parts.In the app store today, there are hundreds of SharePoint apps available for users that can be downloaded directly, ranging from free to US$350. These can be deployed across your farm and used to enhance single or multiple sites.However, there are many limitations that have been found with the model, and it is critical that organizations use the right development tools for the job. While there is a big push to go to the cloud, and Microsoft has given developers the ability to create customizations through the App Model, there are still limitations for what currently exists.An excellent article was recently published by a Microsoft employee who talked through the good, the bad and the ugly of the App Model, examining the misconception that farm solutions must be used for anything too complex. Some of the known limitations include the inability to deploy directly to the application page, a lack of delegate controls for master pages, and an app not being able to activate a Web template from the solution catalog. That said, remember that Microsoft is now releasing updates to functionality every three months, so look for an update in the near term if the limitations necessitate a change on your end. Whether you are a developer or end user, the impact of the App Model does not change the fact that functional needs and requirements must be created in a methodical way, taking into account the true needs of the end users and business. It will always be the responsibility of the business to define the functional requirements, as well as the role of the IT team to specify how the functionality is best built into the system. Regardless of the App Model, its limitations or the potential to create new functionality, focus on the true needs of the business and apply those needs to the technology appropriately.If you are looking to upgrade from a previous version of SharePoint, and are wondering how to get started with the App Model, don’t limit your focus on the impact of the cloud and how you may be able to change your business through new functionality. Many clients are confused by this change, and it is important to remember that an app can be limited to installation at the site level, meaning you can create functionality specifically for a particular group, such as a simple process for your HR team. You do not have to deploy an app to the entire organization. From an end-user perspective, an app isn’t necessarily “known,” and will be seen and used the same way a Web Part is experienced by users, such as incorporating menus in the SharePoint ribbon UI by providing embeddable parts for other pages. Eric Riz is the Executive Vice President of Concatenate, creator of the RealTime suite of products. You can reach Eric by e-mail at , or on Twitter at . Read his other SharePoint thoughts on his blog at www.ericriz.com.
|
Best practices for migrating custom code
By Benjamin Niaulin
You hear how easy it is to migrate your SharePoint 2010 to SharePoint 2013. Take the databases, back them up, and restore or attach them to the new 2013 infrastructure. Sounds easy enough right? But what about all the custom code solutions we had made in our site collections to get things working as desired?Start with the RMR StrategyDon’t try to Google or Bing it; I made up this strategy over time through my many SharePoint migrations. The RMR Strategy stands for “Rebuild, Migrate, Remove.” The first thing to do is to build an inventory of your SharePoint sites. There are various ways to achieve this, but the simplest would probably be a PowerShell with export to CSV file:Get-SPWebApplication http://intranet.contoso.com | Get-SPSite -Limit All | Get-SPWeb -Limit All | Select Title, URL, ID, ParentWebID | Export-CSV C:\siteinventory.csv –NoTypeInformationTake the list and add the columns that you want. Note that you can do this in SharePoint as well if you like. (I like to have the title of the site, the URL and the owner in my inventory.) Then add a column for the action you will take on these specific sites and mark with Rebuild, Migrate or Remove for each of them.Think of why you built these custom solutions; there is a good chance that either you do not need it anymore or it would be better to rebuild it using SharePoint 2013 features like the brand new Search.Assume your branding will need reworkingThe Master Page uses different DIV IDs and different classes, so if you had even some of the most basic CSS changes, you can expect them to no longer work. And let’s face it: The look has completely changed. It’s not just the look: It’s HTML5, Minimal Download Strategy, the Design Manager, and more. On the bright side, the Design Manager does offer the ability to edit and design Master Pages with any editor like Dreamweaver or Notepad, and to convert the HTML into a Master Page. My recommendation: Forget about what you had before and start building your HTML design today.Modifications will not upgradeRather then trying to convert your XSL code or ASP.NET modifications into SharePoint 2013, it will get carried over. What do I mean? Your SharePoint Designer Customizations are written in XSLT, but in SharePoint 2013 we are now using HTML, JavaScript and CSS to get things done. There is support for backward compatibility, but most modifications done with CSS or JavaScript will simply no longer work as their targets no longer exist.Big problems with the Content Editor if you have, like many others, hundreds of rogue bits of code that users have come to rely on that will no longer work. If it’s simple HTML, then you do not have to worry. But many used it to add CSS or JavaScript.I suggest you make a note during your inventory of these customizations and where they are, then make a decision to RMR.Run SharePoint 2010 site collections in SharePoint 2013Even if you choose to purchase a third-party tool to do the migration job, your custom code solutions will not magically work. You could definitely use the tools to get your structure moved over and fine-tune it as you go, but it won’t fix the code that doesn’t work anymore. As you may have heard already, a fun feature in SharePoint 2013 is the ability to run SharePoint Site Collections in “2010 mode.” Essentially, this means running in a 14 hive installed on your SharePoint 2013 server, which is meant to help gradually run your Database Attach upgrades.A good thing to do when planning to migrate sites with custom code is to let them run in 2010 mode in SharePoint 2013 and test the upgrade as a deferred site collection upgrade to see the impact and what needs to be fixed. This is a temporary copy in a 2013 model so that you can test the results.There aren’t any magic solutions, but there are some steps you can plan to make sure it does not become a nightmare. The RMR Strategy has proved to be very useful for me, and I am sure it will for you as well.Benjamin Niaulin is a SharePoint specialist at Sharegate. Follow him on Twitter at .
|
Shaping up images in SharePoint 2013
By Randy Drisgill
I see it all the time: SharePoint content owners create sites using images that are much too large for Web consumption. It’s easy to understand why this happens. Sally Site-Owner gets a photo or image from the marketing department that was created for print or some other high-resolution format. Sally uploads the image to SharePoint and simply resizes its height and width using the ribbon controls to make the page look nice. Of course, resizing an image in this way doesn’t actually make the file size any smaller, and now end users (potentially even users on slow or metered mobile connections) will have to patiently download the large image to see the page.SharePoint 2013 answers this problem with a SharePoint Server publishing feature known as image renditions. With image renditions, you can add images to a library and easily add them to pages using various predetermined widths and heights without downloading the full-sized image.To use image renditions, you need a few things:• A SharePoint Server site with the publishing features activated• A picture library to test in. You can use the default Images library, or you can create a new picture library from Settings > Site contents > Add an app• Blob Caching needs to be turned on in your web.config file (so you will need access to the server SharePoint is installed on)I’ll assume the first two are pretty easy to figure out without me going through the steps. To turn on Blob Caching, simply navigate to the web.config file for your SharePoint site on the physical server. It is usually located in a directory similar to C:\inetpub\wwwroot\wss\VirtualDirectories\80. You can use IIS to help find the directory if you want. Open web.config in an editor like Notepad (when you hit Save, IIS will reset the SharePoint site, so make sure not to do this on production during peak hours) and use Control-F to find the first instance of “enabled="false". Simply change this to “true” and hit save.#!Now you can create your own image-rendition sizes from Settings > Site settings > Look and Feel > Image Renditions. There should be a few predefined sizes you can use. To create your own, simply click Add new item, enter a name, width and height, then click Save. Now, when you add images to a picture library, you will have a rendition that matches that size that you can work with.To work with the image renditions, navigate to your picture library and upload a picture. Once the picture thumbnail shows in the library, hover over it, click the ellipsis in the bottom-right, and then click Edit Renditions. From here, you will see a list of all the renditions that are available, with images already created for each size. You can edit the sizing and cropping of a rendition from Click to change. This will show you a dashed box that is constrained to the size of the image rendition, and you can move and resize photo accordingly to show the image in the best possible way. This can be useful for showing faces or text in smaller sizes.With your image renditions set up and configured, now you can select from the different size options when you insert an image into a publishing page. After editing a page and inserting the image, from the ribbon you would just click the image tab and then choose from the Pick Rendition dropdown.Because an image rendition is being used, the image in my example is actually a 150px by 150px file and should download quicker than a full-sized image. Pretty cool, right? What if you want to reference the image rendition directly using code or without the ribbon? Well that’s pretty easy: You can pass URL parameters to the image for either the RenditionID (the number in the image rendition list order: 1, 2, 3, etc.), or for width and/or height.For example, in my sample above, the raw image URL in SharePoint was:http://sp15/PublishingImages/1012858_10152057897829676_916248115_n.jpgIf I want to load the image rendition for 304x100, I can reference the image like this:http://sp15/PublishingImages/1012858_10152057897829676_916248115_n.jpg?Width=304&Height=100You can reference an image with just the height or width also, but if there are multiple matching renditions, the first will be returned.Image rendition is a pretty handy feature for helping content authors create images that are sized appropriately for the Web. Oh hey, did I forget to mention that image renditions work with videos also? So be sure to try that out as well!Randy Drisgill is a consultant with SharePoint911, a Rackspace company.
|