Wanna Play with
SQL Server 2016?

SQL Server 2016 Virtual Labs
Are you one of the folks that can’t wait to put his hands on the upcoming release of SQL Server 2016? Surprise, surprise! There already is a way for you to do that via the Microsoft Virtual Labs where you will find 7(currently) hands-on trainings covering some of the new things coming with 2016.

So what are you waiting for? Prepare your Microsoft account, click on the link above and play with the product for free!

Speaking at SQLSaturday #419, Bratislava


I am extremely happy to announce that I will be speaking at the first SQLSaturday conference in Bratislava, Slovakia on 20th of June. It’s just one week after SQLSaturday Rheinland, where I will be speaking too, but at the end of the day, there is no reason for me to not accept and speak for the community in Slovakia. I am going to share five(or probably more, we will see) of the hidden performance improvements in SQL Server 2014 which Microsoft almost did not mention to us about + I am going to be giving away some Pluralsight presents, so I expect this to be fun!

Can’t wait! See you there…

HP. The Still Broken Company.

HP. A company that I really enjoyed working for and a company that I still hope(I really do!) will try to figure out it’s way back to the top. A company that’s almost completely broken now, reminds us once again how broken it is with the video above. Yesterday this video showed up in my subscriptions tab on YouTube, so I decided to check out how are their new consumer products going. And while I was watching, I heard this from the person in the video:

We incorporated best-in-class keyboard, so not only is a traditional keyboard.

It has Num key built in.

It is… extremely hard for me to comment on that(except with a Gif) absolutely ridiculous, how can I say it, … thing. So the innovation is that you can have a … NUM key on your keyboard? Ammm… Okay.

What pisses me of are so many things…

  1. Why is HP trying to copy Apple so bad:
    • The designs of their products look similar(but are still really far away from Apple’s). Not only for this device.
    • The video itself is something that Apple is also doing in a similar and again better way.
    • Just because Apple announced a new keyboard for their device, it doesn’t mean HP must mention something about theirs(which turned out to be so bad that I am now writing that whole post)
  2. How can there be anyone from HP that thinks that saying that having a Num button is something revolutionary?
  3. Why is there no one from HP jumping into the conversation below the video where I and others are commenting this absurd? (Update – yesterday, someone did, but you can see for yourself their comment)
  4. When is HP going to find itself and do something that is not copied from anyone!? Microsoft did it with Surface. Lenovo is also being Lenovo with machines like Carbon.
  5. What needs to happen in order for HP to finally be able to create devices that have unique design (kind of related to the previous, but not the same). The latest products of HP (last 2 years) are just crap. Come on…!
  6. How can it be that HP’s products are most of the times more expensive than the ones of the competitors!?

I know that no one will care about my opinion and I know it because even as an employee – no one cared when I was saying those out loud. However, if HP wants to get back at the top, my beliefs are that they have to change their approach to a lot of things and fire a lot of people(no, I am serious here).

P.S. While writing this another great news -> HP’s cloud considered now too small for Gartner to include it in their quadrant. Congratulations, HP! I thought that you were focusing quite a lot on this. Oh, and yeah, if you believe that “The Cloud” is not important(because recently you said something about it), let me remind you once again that you are lost!

And it still hurts me that you are.

Multiple Emails in One SQL Agent Operator?

Yesterday I was asked by the SharePoint admins if they can receive e-mails confirming them that their backups ran successfully. They are using SQL Server Agent jobs in their environment, so I immediately replied to them – yeap, you can. Just configure Database Mail and an Operator. Of course what happened next is that they asked me to help them with that, so I sat down with them for 5 minutes (they had SMTP server ready for use) and we set everything up. However, while we were configuring the Operator, they asked whether or not it’s possible to add one more e-mail to receive those notifications. At that point it struck me that I have never tested(+I was not able to find it on the web and thus I am blogging it now) if I can add just one more e-mail in that same Operator? Guess what – it’s possible and it works like charm. Here is how simple it is – you just split the e-mail addresses by using ‘;


Below are the results of me generating an event for which I have a SQL Agent Alert configured to notify the Operator above. Email_Alert_GMail


Cool, huh?

Let me know if it was just me that haven’t tested that till now. I am curious! :) 

Speaking at SQLSaturday #409, Rheinland, Germany

SQLSaturday_409_Rheinland_2015Last year I spoke at one of the local SQLSaturdays in Germany – the one in Rheinland and to be honest – I had great time(except for the “Business Hotel” – that was how the receptionist was calling it, which did not have Wi-Fi)! It’s 2015 already and I am pleased to share that on 13th of June, I will be visiting Germany for second time this year and I believe it’s obvious why – I will be one of the speakers at the 2015 edition of SQLSaturday Rheinland! I am going to be brave and speak about 2 topics(mixed together in one session) that Germany is quite serious about – security and the cloud, so I expect it to be a really interesting experience(don’t worry, DBAs, I am all with you on this, so don’t expect any marketing stuff!) and yeap, I am looking forward to it!

Speaking about Presentation Skills at SoftUni


I love the Software University! This place is just one of my favourite places to speak and it’s not because of something else, but because of the students there! If you want to see motivated to succeed people, you just have to go and surround yourself with those guys! Now, I have already delivered some talks in SoftUni, but all of them were on SQL Server related topics. Last year I talked about what SQL Server is and then, earlier this year I crushed the course for Relational Databases with the advanced topics of transactional concurrency and performance tuning. All of those were REAAAALY highly rated –  you will be amazed by the feedback(only if you were able to read in Bulgarian…)!

On 21st of May at 19:00 I am again looking forward to seeing a full room of students! This time we decided I need to talk about how to deliver successful technical presentations because as Svetlin Nakov, who is the owner of the university, said to me at SoftUni Conf 2015 recently, it should not be us speaking and training the others after 10 years. We should teach the young guys to start taking over now! The seminar is opened for anyone, so even if you are not a student at SoftUni, but you are interested in the topic, come, learn, ask whatever interests you and why not say “Hi” after the presentation?

So… do you want to become trainer, speaker or probably both? Because if so, you have no excuses to not show up!

See you all there!

Update: No surprises. No surprises at all! Once again I had great time at SoftUni and I seriously believe the audience had such too. That was also one of the most interactive sessions I have delivered there and I am quite happy I saw around 50 – 60 people that want to learn more about how to deliver technical presentations. That’s a huge number if you think about it. Again – thanks to everyone who came and stayed even after the event ended to ask more questions! My slide deck and the video recording (in Bulgarian) is are below!

T-SQL Tuesday #66: Monitoring


T-SQL Tuesday is here once again and I need to be quick this time(I believe this is the second time I have to write a T-SQL Tuesday blog post in a 30 minute period). However, that does not mean that the message I am going to deliver to you is not important. It’s completely the opposite(or at least, I think so) and if I have to be honest, the post itself is not that technical. It’s more or less touching on the business side of supporting a service and should be read by IT managers and decision makers and not only by you, SQLFamily :) . Let me tell you what I mean… Read More

Yet Again I was on RunAs Radio


More than one year ago I joined Richard Campbell(b|t) for my first RunAs Radio podcast ever. It was a ton of fun and we talked about one of my favourite topics – Distributed Replay. You can listen to that show here. Now, more than 12 month laster I joined Richard for another podcast and once again we talked about a favourite topic of mine – Policy-Based Management. A topic that I love so much, I recorded a course on. I am amazed that still a ton of DBAs nowadays don’t know about this feature and not to mention they haven’t heard how it can be combined with CMS and the EPM Framework because that’s one of the biggest time saver a DBA can have and use. So if you are a podcast fan or just want to listen to and learn more about all of those things that I mentioned above, go to the website, download the show and enjoy! It’s free at the end of the day! :)

+ 1 more thing – the first 2 people who listen to the podcast and ping me on twitter with a sincere interest for learning more about the subject(I will decide what sincere means :)) will get a Pluralsight voucher for one month allowing them to watch the almost 6-hour course I recorded on the subject + every other course on the website! So are you ready to learn how to make your life easier with Policy-Based Management?

Speaking at SQLSaturday #384, Varna, Bulgaria

SQLSaturday384_Varna_ 2015_Boris_Hristov_SpeakingIn the last few years the SQL Server community in Bulgaria grew dramatically. The SQLSaturday event in Sofia is just one proof for this – we already had 3 really successful events behind our back. This year Mihail Mateev, who is the organizer of dozens of events in our country including SQLSat Sofia, is doing one additional event for all database professionals, but this time in Varna – the second biggest IT city in the country. The event will be held on 30th of May and many international(and great!) speakers are coming here in Bulgaria to speak at the event. I am also happy to be one of the selected speakers and even more happy to deliver one of my favourite presentations – the one on SQL Server Concurrency!

So everything you need to have a great time – a beautiful city, the Black Sea, amazing speakers and an event that is free! Coming? Let me know in the comments! (putting just “+1″ is more than enough!)

Teaching and Learning.
The NOEXEC Thing.


The year 2015 started in a crazy, but good way. I was engaged to deliver more than 7 courses just in the first half of the year and for those of you who are trainers, you guys know that every single time when you teach a class you always learn something new. Most of the times it’s because your students have some specific case that they want to ask for or it may be because of a weird thought they have and just want to check what’s your opinion of it. This is where the inspiration, let’s call it, for this blog post is also coming from – we have the “teach something new” idea and I was teaching when I learned this and now I again will, in a way, teach it. So here’s the thing… Read More

Speaking at Global Azure Bootcamp Bulgaria


Global Azure Bootcamp. An event that’s being held all over the world is again in Sofia for second year in a row. I am extremely pleased to share I will be speaking at our local event on 25th of April. I will be talking about how we can secure the data in our SQL Azure databases with the help of some new features – Dynamic Data Masking and Row-Level Security. However, please be absolutely sure that those will not be marketing talks – I will demo what works and what doesn’t(and not just the first one!) and where you can face some serious problems. So, if you want to learn more about the topic of securing your data and see what is the current state of the SQL Azure DB technology, I hope to see you at the event!

By the way, the event is free, so you have no excuses for not stopping by!

… just wanted to mention it… :)

Update: Even though it was Saturday morning and even though my presentation was the first one, I really want to say a huge “Thank you” to all the people that showed up and were sooooo active during the session! Here are the scripts that I used and below is my slide deck and soon a recording from my session. By the way, the only three questions we did not have the time to cover are answered below too.

Q: What will happen if we create a mask on the column and we reference it in a query via Alias. Do we need to create a mask for the alias too or will it be masked?
A: No, there is no need for additional mask being created. If there is a mask for the column, no matter how you reference the column (directly or with Alias) the data is masked.
Q: Can I add a mask based on a column in a view:
A: Noup. Even though when you put in the view’s name in the Table field it checks and says it’s OK.
Q: Can I add a view and see the data masked if the columns are masked only on table level?
A: Yeap.
Q: Can we create a view in which there is an alias to a column and mask that column as an alias from the portal?
A: No. It doesn’t work.

Speaking for the Swedish SQL Server User Group


I haven’t started the post yet and I am already feeling honoured that I am writing this. On 1st of September I will have to fly to Stockholm to speak for one of the best SQL Server User Groups in the world – the one in Sweden(if you doubt that – just check their YouTube channel). I am extremely happy that I will finally be able to be part of and see the community there as I have worked for companies that operate from Sweden and because I have heard so much about those guys! What I am going to deliver during the meeting is a session that will stress and go quite deep in one of the most complex subjects in SQL Server – concurrency and more concretely isolation levels – one of my favourite topics!

I am already looking forward to this one and of course – thank you Johan(b|t) for inviting me!

MVP. Awarded Again.


So it’s a day after 1st of April and that’s the date when I get to know whether or not I will be an MVP for the upcoming year. Last year Microsoft awarded me for first time with this prestigious award and now I am really, really happy to share that once again I was chosen to be SQL Server MVP!

It was a rough year. It really was. And I am speaking from community perspective only. However, I really enjoyed it! Travelling and speaking at more than 10 countries at events large and small, delivering webcasts, continuing the SQLHangouts, helping online almost every single day – everything pays off at this single moment when one sees the e-mail from Microsoft stating that he/she is awarded again and that’s true because of the value that this program has to both the MVPs and Microsoft itself. It’s just priceless to be able to speak with the Product Group and brainstorm with them on upcoming features and products. It’s also amazing to be able to share/ask/help to fellow MVPs, but of course that’s not all…

So congratulations to everyone who got this e-mail today and for all of you who want to become an MVP – get involved. Go out there. Go the extra mile and help the community. It’s worth it.

Surprises and a Bug with
SQL Azure DB

So let’s say you have a project to move one of your databases to Azure and “convert” it to a SQL Azure Database. Our company did this just recently and I was the one involved for the database part. Now, that’s all cool and I was really happy to give SQL Azure Database a try, but once we successfully reconnected the application and it was living it’s new “cloudy” life, I decided to check something. Let me tell you what was that and why it surprised me.

I was recently at the SQLBits Conference in London and way back, when I was selected to speak about SQL Server concurrency, I decided I want to do something that’s completely focused on isolation levels. So knowing that I will be doing that at an event of SQLBits size, I figured why not test SQL Azure Database too and see whether or not there is something interesting there. Guess what! There is…  Read More

Speaking at Tarabica
#IT Conference, Serbia

I am extremely happy to share that I was selected to speak at the Tarabica IT Conference in Belgrade, Serbia, which will be held on 28th of March! This is one of the best (if not the best) community events in Serbia and what makes it special is the fact that presentations that are level 100 or 200 are not even considered by the team that organizer’s team. That’s a good way to say to the audience that they can expect only hardcore IT training and no marketing messages during the day and I really love that!

Already looking forward to 28th of March, seeing and meeting a ton of new people! I think it will be a great day there in Belgrade where I will spent 4 days actually as I will also be speaking on 30th of March too, but this time at the Microsoft’s MVP gathering event.

Hope to see you all at Tarabica! :)

Update: If I have to be honest, I did not expected to see more than 300 people at Tarabica IT 2015. However, I am sitting here, listening to Sergey Olontsev(t|b) speaking about corruption and I can see around 70 – 80 people just in this room. Surprising or not the attendees of the conference are more than 600(yes, seriously!), so it’s easy for me to say that this event is one of the biggest in the country and I feel even more privileged to be part of it(not to mention how much are the organisers taking care of us as speakers!). Sharing my slides and code as many people asked about those already!

T-SQL Tuesday #64 Partitioning and the
Serializable Isolation Level


I am just coming back from SQLBits where I delivered a 75 minute session on isolation levels and one of the things that I thought about during my preparation which I figured may be interesting for the audience is a perfect fit for number 64 of our favourite T-SQL Tuesdays. This “thing” involves table partitioning and the serializable isolation level. Let’s me show you what I mean…

Serializable isolation level makes sure that no concurrency phenomenons like dirty reads, non-repeatable reads and even phantom records are possible. The latter are the ones that we want to stop at for a sec and the reason for that is because I want to spend a moment talking about how serializable makes it possible that phantom records will not happen. In serializable isolation level SQL Server takes the so called Key-Range locks in order to not only lock the already read records(as it’s doing in Repeatable Read), but to actually lock the whole range of values preventing the chances of a concurrent transaction to actually insert a record that may be returned once you run that same SELECT query as part of your transaction. OK. Sounds reasonable. Is that… true though? Or if it is, can there be something that can worry us here? Let’s take a look an example.  Read More

Microsoft Certified Trainer. Yet again.

Microsoft Certified Trainer

Microsoft Certified Trainer. Forth year in a row. And the first time I am blogging about it. Why?

In the last few years my personal opinion on the value of the MCT certificate was, let’s say, mixed. It was strange for me how one can become MCT(yes, anyone could have became MCT if he pays a fee!?). It was also strange to me that the training materials that Microsoft was providing to the MCTs (at least to the SQL Server trainers) were with really poor quality, sometimes even full of errors! What’s more, I seriously doubted the overall value of the certification – there was almost nothing that you, as an MCT, get from that program which is somehow… not fair. Now, for first time since 3 – 4 years, I feel like this certification is something one should again be proud of. It’s again something that is worth mentioning when you say what you do and who you are (and that’s not because the fee was raised dramatically). Microsoft has strengthened the requirements for one to become MCT and they actually started requiring things like training experience(kinda important, right?) + feedback from the students to be higher than X. In return they provide MSDN and Office 365 subscription(+ some other cool things), but again – that’s a step in the right direction and I am really happy to finally see it because training, teaching and education in general are really, really important things and I want to see only capable people involved there.

As of me, I have already delivered my first course for 2015 (LINK) and I have 6 more (yes, 6) already arranged and booked till the end of May! So, I am busy, but with a smile on my face and already looking forward to meeting so many new people.

MCTs, wishing you a successful year and a I hope you will be having an amazing time with your students!

Another Group of DBAs Trained


Last Saturday the 4rd group of DBA students (and 5th group just from New Bulgarian University) completed their 40-hour DBA training. I have to say(once again) that I am extremely proud of the group! Their motivation for learning(during some of the days we were working for more than 7 hours – they were just not going home…) was almost second to none. Those guys are all actually database professionals – some of them are system engineers who also work with SQL Server, some of them are reporting specialists and some of them are doing both Oracle and SQL Server on a day-to-day basis. It’s always a fun experience for me as trainer to have such a wide variety of skills because it’s not only them that learn a lot. I do too! So huge congratulations to them for taking the course. I feel privileged that I was their trainer and what’s more I am happy that I made them join our SQL community in Bulgaria. That’s 5 more seriously knowledgable people who are going to participate in the user group meetings, come to events and probably decide to speak at some one day! So much great things, huh? :)

Speaking at
MVP Open Days 2015

MVP Open Days 2015 CEEFirst of all, I have to say that being a Microsoft MVP is a huge honour! Since I got this award last year, many things changed for me for the better and so that’s one more reason why I am really looking forward to 1st of April when Microsoft will announce whether or not I will continue to be part of that elite group of people for one more year(so everyone wish me luck!). In the mean time, however, the MVPs from our region(CEE – Central and Eastern Europe) will gather in wonderful Belgrade on 29th and 30rd of March for a 2 day conference and I am really pleased to say that I will be one of the speakers of the event! What I am going to talk about is one of my favourite topics – Presentation Skills and the title of my session is “Deliver Better Presentations. The Next Level!”. In the 50 minute slot that the conference organisers are giving every speaker, I will simply share my algorithm of how to create and deliver presentations/talks/sessions (whatever you wanna call it) in a way that the audience just does not have any other option, but to rate your session as the best one. I am really looking forward to this event already! The bar is raised high, but I have some serious experience in delivering amazing talks, so I would love to share some of the things I know with the other MVP folks!

See you there and I am sure we will all have great time!

Update: A few hours after the end of the event and just a few more before I get the news on whether I will be MVP for one more year or not, I am attaching my slides from the talk that I delivered at the event. It was a  really nice experience to see so many new people and talk about(even under NDA) for the things we care about – SQL Server and even more interestingly about soft skills and their importance(that was not under NDA though :D). Ending it here with one last huge “THANK YOU” to Yulia Belyanina for everything she did for so many MVPs during her stay in Microsoft! Thanks, Yulia!

Speaking at SoftUni Conf

SoftUni-Conf-MugSoftUni Conf. A conference held in Bulgaria. A conference that’s not organized by Microsoft. A conference that is not organized by any other huge company or corporation. However, a conference that gathers really important group of people together – the people who are going to rule the IT industry in the upcoming years – the students of Software University. I am extremely honored to be able to join that conference as a speaker and I am already looking forward to meet, chat and have fun with those guys this time not for 4 hours though, but for a whole weekend!

Update: When SoftUni was founded, I knew that it was going to be the best place in Bulgaria for young people to become software engineers. Now, however, after being part of their annual conference – SoftUni Conf and actually speaking at the event, I am 100% sure that this is indeed the case! Those students and the people who actually teach, mentor and guide them in their future careers(and many of those students actually already started their careers now!) are simply one of the best in the industry! I am extremely honoured that I was part of this weekend and I am already looking forward to meeting all of them again soon(together with the founder of the university, we have some interesting plans). Here are some of the photos that we(with my girlfriend) took during our stay in Pamporovo and here are the scripts and my slide deck that I used for my presentation.