Framework usage in Consulting vs. Product Development

I’ve been working in classical product development environments and consulting as well. Actually, I think what developers do is often quite similar, regardless of the environment. Depending on the requirements, software will be developed for the customers. However, there are a few differences of course which include the whole project management. I do not want to talk about all the differences here. It is a complex topic.
Just to mention a few: Some product developers argue that because of budget consultants often write more dirty code in order to get the things done asap. Therefore they might use less software patterns, write more boiler plate code and so on. Also, in terms of project management it is still common in consulting to do things more in a classical way (defining all requirements, then design architecture, then start with implementation) instead of going an agile way (this is going to change soon, I am quite sure about this). As already said, this is not the focus here.

However, there is one important thing I experienced also several times and I am not sure if there is a gold standard way of how to handle it: External Frameworks! I just had a project to extend but there was no real documentation of course. The project contained many external libraries I did not used before. This made it a lot harder to get into it. I needed a lot more time to finish my tasks.

This leads to the question if usage of external libraries is recommended in consulting. If you have a product development team there is no problem because if you have a new developer in the team it is easier to introduce all the structures of the solutions. If you have a consulting project you must be aware that:

  • The solution might be maintained by someone else. This person needs not just a knowledge transfer for the solution but also for the frameworks you’ve used (=more costs for knowledge transfer)
  • The solution might be maintained by another company. This is important if you have a framework that is not free. Is it allowed to transfer the license between the companies? Will the customer pay another license?
  • Generally to keep in mind: After you leave the project or the project is finished, who cares about support for the external library? If it was not free: What about maintenance? If it was free or open source without support: Are you able to replace it or do you have an overview to change the source code if it might be necessary to do so?

These are just a few problems that could occur using external libraries and I personally tend to try to avoid them in consulting as much as possible. As I mentioned, it is a different thing if you have a team where always almost the same people work together. In consulting it might be a lot easier for everyone, if you try to use the standard frameworks which are most used by everyone. I am talking about frameworks like jQuery or AngularJS which can be expected to be a part of all main skills (or at least they are not completely special).


How to create multiple OneDrive folders on Office365 and how to use the new OneDrive experience on document libraries

Since a few months Microsoft has switched the Office 365 business OneDrive to a new user experience. The classical SharePoint list view was replaced with a new page that is similar to the consumers OneDrive.

This is the classical view (=SharePoint list view):

The new OneDrive.aspx:

This new fancy look and feel gives a much better experience. It is easier to drag and drop files, the picture thumbnails or slideshow is useful (compared to the useless picture library from SharePoint) and it is also possible to preview videos. Wouldn’t it be nice to use this new experience for your document libraries on other SharePoint sites? It is possible!

The technology behind it is still the same. Because of the extension aspx it is a webform which means we have still SharePoint online + SQL Server here. The real consumer OneDrive is using a complete different technology (I think it was ASP MVC and Azure File Storage).

However: This new OneDrive.aspx seems to be available only on OneDrive for Business (which is the default document library of the users mysite in your Office 365 tenant). It is still possible to sync document libraries as well, but they still look boring like SharePoint lists (because they are still SharePoint lists of course).

Our goal is to use the new OneDrive.aspx for the document libraries in other SharePoint sites as well. This gives a much better experience for users when accessing document libraries.

NOTE: This not dangerous or risky, but still kind of experimental. Microsoft might change things in future so this might not be necessary anymore.

If you go to your OneDrive for Business you will see the following pattern of url:


Now try to open this URL from a subsite by calling the same aspx in the layouts folder:


It won’t work and give you this error:


The reason for this is quite simple: OneDrive.aspx is searching for a library called “documents” but the url of the default documents library in a site is named “shared documents”. So just delete the default library and create a new one:



Now call the OneDrive.aspx again!



Et voilà: Your document library is opened with the new OneDrive experience!


As already said: Although this is just experimental it doesn’t bring any risk. You can still use the document library as you always did before in SharePoint. You have in fact just created a document library and call it a different way.

Maybe the aspx can be even called with a parameter to pass the document library url. I haven’t tested something like this.


Difference between Azure D and DS machines (or G and GS)

This post could also be titled “what is premium storage?”!

The reason is that Azure can be a little bit confusing when attaching discs to machines. After A-Machines have been the standard in Azure, the D-Machines came up at a later time. Many people (including me) thought they would have a SSD discs instead of classical HDD discs. Now there is a newer type again called DS which includes “premium storage” and people get confused again.

To keep it short and simple: D (or G) machines only contain TEMPORARY local SSD discs! Contents on those discs contain a warning that data is not permanently stored on the discs. This also means your system disc and installed applications are NOT on a SSD!

On the other side, DS (or GS) machines are what most really want: A permanent SSD storage disc for your machine. Below you can see a screenshot of explaining this quite clearly.


Interesting note: If you use DS or GS, you pay a fixed price for the whole storage disc, whereas on standard hdd discs you only pay what you need. The reason is that VHD images (used for virtual machine hard discs) belong to the pricing category “Page Blobs & Disks” which has a different pricing for premium storage (=SSD). See screenshots below:

Default hdd pricing:

SSD pricing:

Hope it helps!