What’s really wrong with VSTS (Visual Studio Team Services)

First I have to say, that I use VSTS daily and I don’t hate it. It has really cool features like great support for deployment options. However there are few big things that really screws the whole user experience. I hope raising these problems will push the development into right track.

My build definitions

SHOW ME THE BUILDS | image tagged in angry homer | made w/ Imgflip meme maker

When you click a huge Builds link from top navigation bar. What would you think its going to show you? Builds, what is currently under build, build history, build statistics etc., but no. What it shows you is an unbelievably list of build definitions. Yes, your build definitions. Worst part is that if someone else triggers a build, it’s not shown in this page

Release is not a deployment

VSTS have split things into three big categories. Build, release and deployment. Build and release is  split into build definition and release definition. The funny thing is that release definition defines where your software is deployed. 
– Deployment settings are defined in release definition, but release is not a deployment. Why don’t just create a deployment definition?

– When you click that huge Releases link from top menu, you are taken into page which shows topic ”All release definitions” and smaller topic ”Releases”(???) and under that is list of releases.

I understand the separation between release and deployment, but what really boggers me here is the way how release and deployment are coupled. They are not independent like build and release are, but they are not coupled totally.

How to design complex UI

RELEASE & DEPLOY | image tagged in big red button | made w/ Imgflip meme maker
I will go through one more example to summaries what is really wrong with VSTS. Creating new release, and deploy that into test/prod environment. This should be like number one feature in VSTS. There should be big red button with text RELEASE AND DEPLOY, which does this. Well it’s surprisingly hard. 
First click Build And Release. (1)
It shows that useless Builds page. Click Releases (2)
Click (3) … button next to release definition name.
Click (4) + Release
When dialog opens, click (5) Release.
So 5 clicks, two page loads and one dialog to create a new release & deployment. It might not sound much, but when all the major features are hidden like this, its starts to frustrate.