<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.10.0">Jekyll</generator><link href="https://tomaszwisniewski.com/feed.xml" rel="self" type="application/atom+xml" /><link href="https://tomaszwisniewski.com/" rel="alternate" type="text/html" /><updated>2026-02-17T12:08:15+01:00</updated><id>https://tomaszwisniewski.com/feed.xml</id><title type="html">Tomasz Wiśniewski</title><subtitle>Tomasz Wiśniewski blog.</subtitle><author><name>Tomasz Wiśniewski</name></author><entry><title type="html">Spec2Cloud - Spec-Driven Development for Azure with GitHub Copilot Agents</title><link href="https://tomaszwisniewski.com/thoughts/azure/2026/02/17/spec2cloud-spec-driven-development-azure.html" rel="alternate" type="text/html" title="Spec2Cloud - Spec-Driven Development for Azure with GitHub Copilot Agents" /><published>2026-02-17T09:30:00+01:00</published><updated>2026-02-17T09:30:00+01:00</updated><id>https://tomaszwisniewski.com/thoughts/azure/2026/02/17/spec2cloud-spec-driven-development-azure</id><content type="html" xml:base="https://tomaszwisniewski.com/thoughts/azure/2026/02/17/spec2cloud-spec-driven-development-azure.html"><![CDATA[<p>Spec-driven development is having a moment right now. The idea is simple – instead of jumping straight into code (or “vibe coding” as the kids call it), you write structured specifications first and then let AI agents turn those specs into working software. I’ve been keeping an eye on this space for a while and recently stumbled upon <a href="https://github.com/EmeaAppGbb/spec2cloud">Spec2Cloud</a>, a framework coming from Microsoft’s EMEA App Innovation GBB team that takes this concept and wires it directly into Azure.</p>

<!--more-->

<p>So I spent some time poking around both the <a href="https://github.com/EmeaAppGbb/spec2cloud">framework repo</a> and the <a href="https://azure-samples.github.io/Spec2Cloud/">template catalog</a>, and here’s what I think.</p>

<p><img src="/assets/images/spec2cloud/spec2cloud-logo.png" alt="Spec2Cloud - Spec-Driven Development with GitHub Copilot and Azure" /></p>

<h3 id="what-is-spec2cloud">What is Spec2Cloud?</h3>

<p>At its core, Spec2Cloud is an agent-driven workflow that takes you from a product idea to a deployed application on Azure. It does this by orchestrating a team of specialized GitHub Copilot agents – think of it as a virtual dev team where each agent has a specific role.</p>

<p>There are six agents:</p>

<ul>
  <li><strong>PM Agent</strong> (<code class="language-plaintext highlighter-rouge">@pm</code>) – takes your product idea and turns it into a Product Requirements Document and Feature Requirements Documents</li>
  <li><strong>Dev Lead Agent</strong> (<code class="language-plaintext highlighter-rouge">@dev-lead</code>) – consolidates engineering standards and ensures architectural compliance</li>
  <li><strong>Dev Agent</strong> (<code class="language-plaintext highlighter-rouge">@dev</code>) – breaks features into tasks, writes code, or delegates work to GitHub Copilot coding agent</li>
  <li><strong>Azure Agent</strong> (<code class="language-plaintext highlighter-rouge">@azure</code>) – generates Bicep templates, GitHub Actions workflows, and handles deployment to Azure</li>
  <li><strong>Tech Analyst Agent</strong> (<code class="language-plaintext highlighter-rouge">@tech-analist</code>) – reverse-engineers existing codebases into specifications</li>
  <li><strong>Modernization Agent</strong> (<code class="language-plaintext highlighter-rouge">@modernize</code>) – assesses technical debt and creates modernization strategies</li>
</ul>

<p>The agents communicate through a set of slash commands: <code class="language-plaintext highlighter-rouge">/prd</code>, <code class="language-plaintext highlighter-rouge">/frd</code>, <code class="language-plaintext highlighter-rouge">/plan</code>, <code class="language-plaintext highlighter-rouge">/implement</code>, <code class="language-plaintext highlighter-rouge">/deploy</code>, and so on. You start by telling the PM agent what you want to build, and the system walks you through a structured pipeline all the way to deployment.</p>

<p>What’s interesting is that Spec2Cloud supports three distinct workflows. <strong>Greenfield</strong> is for new projects – idea to production. <strong>Greenfield Shell-Based</strong> starts from predefined architectural baselines (they have .NET and Python reference shells) and implements your requirements on top. <strong>Brownfield</strong> is for existing codebases – it reverse-engineers your code into specs and documentation, with optional modernization planning.</p>

<p>The whole thing installs into your repo with a one-liner curl script and adds agents, prompts, MCP server configuration, and optionally a dev container setup. It’s MIT licensed and not an official Microsoft product, though it clearly has Microsoft DNA all over it.</p>

<p>Here’s how the greenfield workflow looks end to end:</p>

<p><a href="/assets/images/spec2cloud/greenfield-workflow.svg" target="_blank"><img src="/assets/images/spec2cloud/greenfield-workflow.svg" alt="Spec2Cloud greenfield workflow - from user idea through PM, Dev Lead, Dev, and Azure agents to production" /></a></p>

<h3 id="real-world-potential--beyond-the-demos">Real-world potential – beyond the demos</h3>

<p>Ok, so the demos look cool. “From idea to production in minutes.” But let’s talk about where this could actually help in the real world.</p>

<p>The <strong>brownfield workflow</strong> is where I see the most immediate value. Every team I’ve worked with has at least one legacy app that nobody fully understands anymore. The original developer left three years ago, documentation is either nonexistent or hilariously outdated, and everyone is terrified to touch it. Running <code class="language-plaintext highlighter-rouge">/rev-eng</code> on that codebase to generate structured specs, feature docs, and technical task breakdowns – that’s genuinely useful. Even if the output isn’t perfect, having a starting point for documentation that links back to actual code files is better than what most teams have today, which is nothing.</p>

<p>The <strong>greenfield workflow</strong> is more interesting for rapid prototyping and proof-of-concept work. If you need to spin up a demo for a customer or validate an architectural approach quickly, having agents handle the scaffolding, infrastructure-as-code generation, and CI/CD pipeline setup saves real time. The fact that the Azure Agent generates Bicep templates and GitHub Actions workflows means you’re not starting from scratch on the infrastructure side.</p>

<p>For <strong>platform engineering teams</strong>, the standards integration through APM (Agent Prompt Management) is worth paying attention to. You can encode your organization’s engineering standards, security requirements, and architectural patterns into the system so that every generated project follows your guardrails. That’s the kind of thing that could scale well across larger organizations.</p>

<p>The <a href="https://azure-samples.github.io/Spec2Cloud/">template catalog</a> and the <a href="https://marketplace.visualstudio.com/items?itemName=ms-gbb-tools.spec2cloud-toolkit">VS Code extension</a> add another layer – curated, production-ready templates for common scenarios like AI apps, data solutions, and app modernization. Think of it as Azure quickstart templates but with the spec-driven workflow baked in.</p>

<h3 id="shortcomings--and-there-are-a-few">Shortcomings – and there are a few</h3>

<p>Let’s be honest about where Spec2Cloud falls short right now.</p>

<p><strong>It’s early.</strong> Very early. Several features are marked as “TODO” – including the VS Code extension installation method and the APM CLI. The template catalog showed zero templates when I checked the web interface. That’s not confidence-inspiring for anyone looking to adopt this in a production workflow today.</p>

<p><strong>The agent quality problem.</strong> This isn’t unique to Spec2Cloud, but it’s a real issue. AI agents frequently don’t follow all the instructions you give them. The spec-driven approach assumes that specifications will be faithfully translated into code, but in practice, the gap between what you specify and what gets generated can be significant. You still need someone reviewing every step of the pipeline.</p>

<p><strong>GitHub Copilot dependency.</strong> You need GitHub Copilot access, specifically the agent capabilities. That’s not free, and depending on your organization’s licensing situation, it might be a blocker. The agents themselves are configured to use specific models (o3-mini for PM, Claude Sonnet 4 for most others), which adds another dependency layer.</p>

<p><strong>Azure lock-in.</strong> This is by design – Spec2Cloud is an Azure-first framework. If you’re multi-cloud or not on Azure, this isn’t for you. The deployment workflow generates Bicep and targets Azure services specifically. There’s no Terraform option, no AWS or GCP path.</p>

<p><strong>Documentation gaps.</strong> While the repo has a decent structure with architecture docs, workflow guides, and examples, the actual depth of documentation is thin. The examples show two scenarios (elderly care AI agent for greenfield, marketing campaign app for brownfield) but don’t go deep enough to understand what the output actually looks like in practice.</p>

<p><strong>No versioning.</strong> There are no release artifacts or version numbers. You’re pulling from main. For a tool that’s supposed to help you build production applications, that’s a bit ironic.</p>

<h3 id="spec2cloud-vs-github-spec-kit">Spec2Cloud vs GitHub Spec Kit</h3>

<p>The obvious comparison here is <a href="https://github.com/github/spec-kit">GitHub Spec Kit</a>, GitHub’s own spec-driven development toolkit. They’re both in the same space but take notably different approaches.</p>

<p><strong>Spec Kit is agent-agnostic, Spec2Cloud is not.</strong> Spec Kit works with 17+ AI coding environments – Claude Code, Cursor, Gemini, Windsurf, Copilot, you name it. Spec2Cloud is tightly coupled to GitHub Copilot agents. If you want flexibility in your tooling, Spec Kit wins here hands down.</p>

<p><strong>Spec Kit is cloud-agnostic, Spec2Cloud is not.</strong> Spec Kit doesn’t care where you deploy. It’s purely about the specification and planning workflow. Spec2Cloud goes all the way to Azure deployment with Bicep generation and GitHub Actions CI/CD. If you’re an Azure shop, that’s a feature. If you’re not, it’s a wall.</p>

<p><strong>Spec2Cloud has more structure.</strong> Six specialized agents with defined roles vs Spec Kit’s simpler slash command workflow (<code class="language-plaintext highlighter-rouge">/specify</code>, <code class="language-plaintext highlighter-rouge">/plan</code>, <code class="language-plaintext highlighter-rouge">/tasks</code>). Spec2Cloud’s multi-agent approach is more opinionated but also more automated – it tries to handle the entire lifecycle. Spec Kit is more of a planning tool that then hands off to whatever coding workflow you prefer.</p>

<p><strong>Maturity.</strong> Spec Kit has a Microsoft Learn training module and has been analyzed in depth by <a href="https://martinfowler.com/articles/exploring-gen-ai/sdd-3-tools.html">Martin Fowler’s team</a> and <a href="https://blog.scottlogic.com/2025/11/26/putting-spec-kit-through-its-paces-radical-idea-or-reinvented-waterfall.html">Scott Logic</a>. Spec2Cloud still has TODOs in its README. The gap in community validation is significant.</p>

<p><strong>The criticism applies to both.</strong> Independent reviews of Spec Kit found it generated excessive markdown (thousands of lines of specs for simple features), was significantly slower than iterative prompting, and didn’t result in better code or fewer bugs. Scott Logic’s review found traditional vibe coding was about ten times faster. These fundamental questions about whether the spec-driven approach actually delivers value apply equally to Spec2Cloud – maybe even more so, given that Spec2Cloud adds additional complexity with its multi-agent orchestration.</p>

<p>Here’s how they stack up side by side:</p>

<p><a href="/assets/images/spec2cloud/comparison-table.svg" target="_blank"><img src="/assets/images/spec2cloud/comparison-table.svg" alt="Spec2Cloud vs GitHub Spec Kit comparison" /></a></p>

<p>My take: if you just want to experiment with spec-driven development in general, start with Spec Kit. It’s more mature, more flexible, and has way more community feedback to learn from. If you’re specifically an Azure shop looking for an end-to-end framework that goes from idea to deployed infrastructure, Spec2Cloud is the more opinionated and Azure-native option – but you’re betting on a much earlier-stage project.</p>

<h3 id="where-this-is-going">Where this is going</h3>

<p>Spec-driven development as a concept isn’t going away. The idea of adding structure to AI-assisted coding makes sense, especially for teams where consistency and compliance matter. The question is whether dedicated frameworks like Spec2Cloud and Spec Kit are the right way to do it, or whether this functionality will just get absorbed into the AI coding tools themselves.</p>

<p>I think Spec2Cloud has potential, specifically because of its Azure-native approach. The brownfield reverse-engineering workflow solves a real pain point. The multi-agent architecture is ambitious and, if the agent quality improves (and it will – models are getting better fast), the idea of a coordinated virtual team handling different aspects of the SDLC could become genuinely practical. The fact that it comes from Microsoft’s GBB team and has landed in the Azure-Samples org suggests there’s organizational backing, even if it’s not an official product yet.</p>

<p>But right now? It’s a prototype. The TODO items, the empty template catalog, the lack of versioning – this is a framework that’s showing its vision more than its readiness. If you’re the kind of person who likes to get in early on tools and give feedback that shapes the direction, go for it. If you need something production-ready today, you’ll be disappointed.</p>

<p>My recommendation: bookmark it, try the brownfield workflow on one of your legacy apps to see what it generates, and keep an eye on the repo. Don’t build your team’s development process around it yet. The spec-driven development space is moving fast and Spec2Cloud’s tight Azure integration could make it the go-to choice for Azure teams – but it needs a few more months of baking.</p>

<p>Have you tried Spec2Cloud or Spec Kit? I’m curious what your experience has been. Drop a comment below :)</p>]]></content><author><name>Tomasz Wiśniewski</name></author><category term="thoughts" /><category term="azure" /><category term="azure" /><category term="github-copilot" /><category term="ai" /><category term="devops" /><category term="spec-driven-development" /><category term="github" /><summary type="html"><![CDATA[A look at Spec2Cloud, Microsoft's agent-driven spec-to-production framework for Azure, its real-world potential, shortcomings, and how it compares to GitHub Spec Kit]]></summary></entry><entry><title type="html">Why the Microsoft MVP program is broken</title><link href="https://tomaszwisniewski.com/thoughts/2020/09/15/why-the-microsoft-mvp-program-is-broken.html" rel="alternate" type="text/html" title="Why the Microsoft MVP program is broken" /><published>2020-09-15T10:00:00+02:00</published><updated>2020-09-15T10:00:00+02:00</updated><id>https://tomaszwisniewski.com/thoughts/2020/09/15/why-the-microsoft-mvp-program-is-broken</id><content type="html" xml:base="https://tomaszwisniewski.com/thoughts/2020/09/15/why-the-microsoft-mvp-program-is-broken.html"><![CDATA[<p>Microsoft Most Valuable Professional – a title which so many people want, desire and which once was a synonym of great technical expertise, but now… Times have changed, things have changed and so did the program and people in it, and finally how Microsoft hands out the reward. Here is why I think that.</p>

<!--more-->

<p>But before we begin let us get the obvious things out of the way which will surface for sure:</p>

<ul>
  <li>Tomasz – are you an MVP?</li>
  <li>No.</li>
  <li>Have you ever been an MVP?</li>
  <li>No.</li>
  <li>So how you can say anything valuable about this program and all of this?</li>
</ul>

<p>I have been actively taking part and engaging in Microsoft tech communities since more or less 2007 as a speaker, group leader, event organizer and many more. After joining Microsoft, I have been taking part in various communities as a speaker and was also supplying feedback to the MVP program about current and future MVPs. And now almost two years outside Microsoft I am also fully engaged in the Azure community in Poland in various aspects, so I strongly believe that I have a thing or two to say about what is going on and I can clearly see the bad things happening.</p>

<h3 id="cheating-the-system">Cheating the system</h3>

<p>No system is perfect, every system no matter what it does can be compromised, broken, “hacked” or however you want to call it, and the same thing happened to the MVP nomination and acceptance program. And what is the most common way to cheat the system nowadays to get your “dream MVP badge”? Online videos! Academies, schools, courses, online trainings. Especially now in “COVID times” it got super popular. But you may ask – what is the problem with that? It is a simple mechanism – people produced a whole bunch of usually shorter, sometimes a bit longer videos on a given subject – Azure, Office, Power Platform – you name it, they are usually well produced in terms quality but not in terms of content they try to show. But the main issue here is that always they are just a marketing campaign for fully paid courses of that author.
True community work was never in any way connected so much to commercial work as it is now. People were doing things after hours, sacrificing their evenings, nights, weekends to do something valuable for the community and it was not promoting any of their businesses. And now? You produce useless videos for a couple of months, promote your paid course/academy/school whatever thanks to that and boom – MVP badge awarded – sic!
IMHO all such activities should be banned from counting into the MVP recognition program – you either do something fully community based, or you do it commercially.</p>

<h3 id="forced-diversity">Forced diversity</h3>

<p>This is a super sensitive topic in today’s world but important to point out. And I am talking here about gender diversity. All big corporations - tech included - struggle with diversity. They have different approaches to how to change that – most of them unfortunately are completely stupid and this has also touched the MVP program. Microsoft wants to drive diversity in this program which is super cool – I also believe that there should be more woman in IT in general but that is another topic – but just do not force it! There are instances where Microsoft awards the title in a category in which the girl/woman does not specialize in! Yes, there are more and less important MVP categories for Microsoft according to current trends, marketing plans etc. It is both surprising for that person and for the community. Microsoft – get it together – this not the way to go.</p>

<p>[UPDATE 2020-09-16] This paragraph does not imply in any way that girls/woman don’t produce high quality community engagements. It says that MSFT is not recognizing them in the right category because they want to built diversity in the category which is more important to them from a business/marketing perspective.</p>

<h3 id="low-quality-content">Low quality content</h3>

<p>Back in the days – I sound old now – being an MVP meant to the other people, community, job market – wow! This person really knows their stuff. It was given to people with super in-depth knowledge about a particular piece of tech. You were THE person to go to. And now? Many of the MVPs produce entry level documentation-based content. Is that bad in itself? No, but it is time for Microsoft to change a bit the program, titles they give and for people who do basic stuff for communities which is valuable, get some other kind of award name. Also, the level of questions which are asked by MVPs on various forums, user groups etc. many times is just scary that they lack the basic knowledge about the technology that they are supposed to be experts in. Raise the quality not the quantity Microsoft!</p>

<h3 id="the-notorious-requests-for-nominations">The notorious requests for nominations</h3>

<p>There are people believe it or not, who notoriously ask for an MVP nomination. Like literally they go around other MVPs in a particular category and ask each and every one of them to put a nomination for them (FYI currently only an active MVP or a Microsoft employee can nominate someone for the award). The only effect they get besides being annoying is that they cancel themselves out of the potential MVP nominees. How weak must be your contributions to the community that you have to ask around for a nomination? Don’t you think that if you are doing a good, quality job you will not be noticed? How, after receiving such an award, you can look at yourself in the mirror and say – god job XYZ! 
And another thing regarding this point – getting an MVP award should never be your driver for community work. Why? Because you may not get one and then what? Disappointment? Anger? Community work should be done with a “community focused” mindset. I want to do stuff for other people, share my knowledge, give them my time in various ways. Don’t think about awards. This is not a competition. Remember that you are giving, but also receiving a lot from others. As mentioned before, I have been doing tech community related activities for many, many years, and the most valuable thing I ever got from that time is the community itself. I have developed many relationships, done super cool things with so many people. The three letters you can put on LinkedIn will never give you that. And I know that even after many years I have so many friends around the globe that if I have a problem with anything – I can just “pick up the phone” (does anyone do that anymore?) and ask for help. That is the true value of taking part in tech communities.</p>

<h3 id="the-community-leaders">The community leaders</h3>

<p>Another category of people who get an MVP award are not necessary technology experts in the area they get the award in. They do a lot of community activities, they run user groups, meetups, organize events. Should they be recognized and awarded? Sure! But it is time for Microsoft to modernize and acknowledge this and create some more MVP categories for such people – something in the lines of “Most Valuable Community Leader/Member” (not everyone needs and can be a leader) maybe?</p>

<h2 id="the-summary">The summary</h2>

<p>“Tomasz, why are you complaining about this? This is their [Microsoft] award. They can do with it whatever they want.”
Sure, I understand that, but the problem is that they are not giving it to their employees but to the community which they are not running, not creating etc. so people in those communities shouldn’t just blindly be bound and respect all the rules that someone has put in place many years ago and now for multiple reasons they are lowering the bar, quality and the meaning of the program. With so many bad MVPs “on the market” in a couple of years this title/award will lose its value completely – it will not mean that you know the tech, it will mean that you fell into corporate buckets, rules and you just fit with what is the vision of someone far away and your contributions are meaningless to the real community.</p>]]></content><author><name>Tomasz Wiśniewski</name></author><category term="thoughts" /><category term="mvp" /><category term="community" /><category term="usergroups" /><category term="awards" /><summary type="html"><![CDATA[This is why I think why the Microsoft MVP program is broken.]]></summary></entry><entry><title type="html">Architect or not an Architect - that is the question</title><link href="https://tomaszwisniewski.com/thoughts/2020/09/10/architect-or-not-an-architect.html" rel="alternate" type="text/html" title="Architect or not an Architect - that is the question" /><published>2020-09-10T10:00:00+02:00</published><updated>2020-09-10T10:00:00+02:00</updated><id>https://tomaszwisniewski.com/thoughts/2020/09/10/architect-or-not-an-architect</id><content type="html" xml:base="https://tomaszwisniewski.com/thoughts/2020/09/10/architect-or-not-an-architect.html"><![CDATA[<p>Architects… architects everywhere! The amount of job offers and people with this title is booming. The question is why and for what reason? I will try to go through some of the most common sins which can be found in the current market as this non-sense is getting out of hands and will only harm the way people perceive this role.</p>

<!--more-->

<p>For a lot of people being an architect is a step in their career… for some it is an end goal. There is nothing bad about this but most of the people which are “architects” are not Architects and only got lucky, where taken advantage of by some companies for many different reasons.</p>

<p>Let us start with <em>consulting</em> - this is the biggest pool of pseudo architects. Why you ask? Super simple - it is always better to send to a client or potential client an architect than a senior /software developer/engineer/IT specialist because:</p>

<ol>
  <li>
    <p>it just looks better - “look - we have given you AN ARCHITECT”. Omg what a blessing I got form this amazing consulting company. No, you did not. You got scammed!</p>
  </li>
  <li>
    <p>and the second reason which comes out of the first one is money - you can easily charge more for that kind person on a project.</p>
  </li>
</ol>

<p>The problem companies get with this kind of architects is that usually they do not do the actual job an architect should do… Many times, they are “just” senior (in terms of technical knowledge) employees which is also important part of being an architect role but lacking all the other skills. And the projects even when are done (can a project ever be done? ;) )… suck. They deliver, they code but nothing more what is needed from an architect.</p>

<p><em>Wanna be</em> architects are another of my favorite “architect” type. People who have that title may even have the right experience, skills etc. but still… day to day delivery, coding/delivering solutions. Or on the other hand they do not have the right experience to be an architect and the things they propose, suggest, enforce is just full of non-sense. But “the architect has decided, we need to deliver this now…”.</p>

<p>All of this is not without the fault of recruiters. The amount of “architect” offers I get weekly is just insane. First of all, the required skill set… this goes both ways - it is either junior or so vast that it is impossible for a single person to have in-depth experience and knowledge about so many different technologies, products, solutions. Second issue is the money they offer for that kind of role. Having required experience to be an architect will not allow you to earn 15k PLN / month… c’mon people (yes, recruiters are also people) be serious and do not waste people time.</p>

<p>Ok… I have ranted a bit on bad architects on the market so what I would suggest for an architect to be? Here are some (not all) skills required from an architect IMHO:</p>

<ul>
  <li>deep technical experience - only with that you can have success, you need to understand the technology you are going to work with, no matter if its software, cloud, solutions, infrastructure - you need to know your game!</li>
  <li>able to see the dots, lego bricks or puzzle pieces (however you want to call it) from a higher level - deep tech is super important but without the ability to step back and look at the big picture, the tradeoffs you need to make, sacrifice sometimes your beliefs in things that need to be “done by the book” in order to satisfy stakeholders is crucial</li>
  <li>this segways nice to the next point which is interpersonal skills and working with stakeholders. This part most of “architects” lack - you need to be able to talk to people, write to people, manage their expectations and satisfy them. If you cannot play “politics” in an organization - you will not succeed.</li>
  <li>not only do tech - some people are super hyped about doing tech all the time - the “sad” reality is that an architect needs to work in PowerPoint, Word documents, multiple charting solutions and more, and more…</li>
</ul>

<p>And a general remark for those who are senior dev/IT pros who are trying to make that final “jump” to be an architect - seriously - do not force it! You may not have the required skills. You want more money? Architect role is not the way to go. There are plenty of companies which think in the proper way and will pay a good senior employee the money they deserve. If your company does not see that in you - <strong>change it!</strong> You want more recognition? Start doing extra stuff, showing in the team, organization that you think out of the box and it will be valued and respected.</p>

<p>Agree/disagree - feel free to leave a comment down below! :)</p>]]></content><author><name>Tomasz Wiśniewski</name></author><category term="thoughts" /><category term="architect" /><category term="role" /><category term="career" /><summary type="html"><![CDATA[Thoughts on the Architect role in various companies]]></summary></entry><entry><title type="html">Top 5 Azure DevOps extensions everyone should install</title><link href="https://tomaszwisniewski.com/tipsandtricks/2020/09/01/top-5-azure-devops-extensions-everyone-should-install.html" rel="alternate" type="text/html" title="Top 5 Azure DevOps extensions everyone should install" /><published>2020-09-01T10:00:00+02:00</published><updated>2020-09-01T10:00:00+02:00</updated><id>https://tomaszwisniewski.com/tipsandtricks/2020/09/01/top-5-azure-devops-extensions-everyone-should-install</id><content type="html" xml:base="https://tomaszwisniewski.com/tipsandtricks/2020/09/01/top-5-azure-devops-extensions-everyone-should-install.html"><![CDATA[<p><a href="https://docs.microsoft.com/en-us/azure/devops/?view=azure-devops" target="_blank">Azure DevOps</a> is an amazing tool to run your project from start to finish. But did you know you can make it even better by installing additional extensions written by Microsoft or the community?</p>

<p>As Azure DevOps consists of 5 major buckets of features (<a href="https://docs.microsoft.com/en-us/azure/devops/boards/get-started/what-is-azure-boards?view=azure-devops&amp;tabs=agile-process" target="_blank">Boards</a>, <a href="https://docs.microsoft.com/en-us/azure/devops/repos/get-started/what-is-repos?view=azure-devops" target="_blank">Repos</a>, <a href="https://docs.microsoft.com/en-us/azure/devops/pipelines/get-started/what-is-azure-pipelines?view=azure-devops" target="_blank">Pipelines</a>, <a href="https://docs.microsoft.com/en-us/azure/devops/artifacts/overview?view=azure-devops" target="_blank">Artifacts</a> and <a href="https://docs.microsoft.com/en-us/azure/devops/test/overview?view=azure-devops" target="_blank">Tests</a>) I’ve put on a list of the 5 most useful extensions that everyone using Azure DevOps should install in their organization.</p>

<!--more-->

<h4 id="boards">Boards</h4>

<p>Ok… I will start by cheating a bit. Currently the most valuable extension for Azure Boards is <a href="https://marketplace.visualstudio.com/items?itemName=ms.vss-plans" target="_blank">Delivery Plans</a> but as Microsoft <a href="https://devblogs.microsoft.com/devops/azure-devops-roadmap-update-for-2020-q3/" target="_blank">announced</a> some time ago this is going to become a full GA feature of Azure DevOps soon so you are getting an extra recommendation for now ;)</p>

<p>So the main extension I would recommend in in this section is <a href="https://marketplace.visualstudio.com/items?itemName=blueprint.vsts-open-work-items-in-excel&amp;ssr=false#overview" target="_blank">Azure DevOps Open in Excel</a>.
Seems pretty obvious to have that functionality especially when you are a project manager / scrum master and you need to quickly work with a lot of work items for the team as this is a bidirectional feature so after making changes to the work items you just click_Save_ and it’s saves the changes back to the service.</p>

<p><img src="/assets/images/adoextensions/extab.png" alt="Azure DevOps Open in Excel" /></p>

<p>The only problem with that extensions is that Microsoft claims it’s experimental and hasn’t been updated in some time now so use it at your own risk but for now - it gets the job done! :)</p>

<h4 id="repos">Repos</h4>

<p>I think I had the biggest problem choosing a single extensions for this part of Azure DevOps but after long thinking it just has to be <a href="https://marketplace.visualstudio.com/items?itemName=ms.vss-code-search" target="_blank">Code Search</a>.</p>

<p><img src="/assets/images/adoextensions/extrepos.png" alt="Code Search" /></p>

<p>The way this extensions enhances your search experiences vs “not having” it is just amazing. No matter if you have a single project in your organization or hundreds of projects this is so great being integrated into various parts of the UI/UX experience and in addition giving you features like <em>semantic ranking</em> or <em>filtering</em>  - you just can’t live without it after you’ve tried it!</p>

<h4 id="pipelines">Pipelines</h4>

<p>Azure Pipelines is also pretty hard to choose just a single extension because it really depends on what you are developing so your needs may be different. But at the same time the amount of different extensions for this part of Azure DevOps is super impressive.</p>

<p>So as I mostly do Azure related stuff my pick goes to an extension which is currently in <em>Private Preview</em> and that is <a href="https://marketplace.visualstudio.com/items?itemName=azure-cosmosdb.emulator-public-preview" target="_blank">Azure Cosmos DB Emulator</a>.</p>

<p><img src="/assets/images/adoextensions/extacdb.png" alt="Azure Cosmos DB Emulator" /></p>

<p><a href="https://azure.microsoft.com/en-us/services/cosmos-db/" target="_blank">Azure Cosmos DB</a> is a great non-relational cloud database with a bunch of amazing features (to put it lightly). It can also be run <a href="https://docs.microsoft.com/en-us/azure/cosmos-db/local-emulator?tabs=ssl-netstd21" target="_blank">locally</a> for you development purposes but with this extension you can incorporate it into your pipelines and for example execute tests during those pipeline runs and report back the results.
This of course this runs in the most popular (and sometimes overheaped) technology these days which are containers but in this case it makes sense as it’s light and efficient :)</p>

<h4 id="artifacts">Artifacts</h4>

<p>With this I will bend the rules a bit again. Why? Because Azure Artifacts is the youngest of the bunch and to be honest there are not that many extensions for this part of Azure DevOps. So I want to take this opportunity and recommend something which allows you (amongst many other things) interact with Azure Artifacts - <a href="https://marketplace.visualstudio.com/items?itemName=ms-vsts.cli" target="_blank">Azure DevOps CLI</a>.</p>

<p><img src="/assets/images/adoextensions/extart.png" alt="Azure DevOps CLI" /></p>

<p>This <em>command line interface</em> is great if you need/want to interact with Azure DevOps in a programmatic way and you don’t want to fiddle around with REST calls to the <a href="https://docs.microsoft.com/en-us/rest/api/azure/devops/?view=azure-devops-rest-6.1" target="_blank">Azure DevOps API</a> - which you can always do if needed or something is missing in the <em>cli</em>.</p>

<h4 id="tests">Tests</h4>

<p>Here I had no doubts which extension it will be and the final one for today is <a href="https://marketplace.visualstudio.com/items?itemName=ms.vss-exploratorytesting-web" target="_blank">Test &amp; Feedback</a>.</p>

<p><img src="/assets/images/adoextensions/exttaf.png" alt="Test &amp; Feedback" /></p>

<p>This is a great tool to give to your stakeholders/testers to test out what you have created, provide them with an easy way to create bugs/issues or other work item types directly in your project and tied to your test cases. The extension has two cool features:</p>

<ol>
  <li>First is that people with a <em>Stakeholder</em> license in Azure DevOps can do almost all the same things as people with paid licenses so this can cut down your cost quite a bit if you have a lot of non-developer people who need to test your solution</li>
  <li>And the second part is that it also has a disconnected mode which means that you can use it not being even connected to a project in Azure DevOps and just export and share your feedback session.</li>
</ol>

<h3 id="summary">Summary</h3>

<p>So those are my Top 5 Azure DevOps extensions you should install. What are your favorites and recommendations? Feel free to leave a comment bellow the post :)</p>]]></content><author><name>Tomasz Wiśniewski</name></author><category term="tipsandtricks" /><category term="azure" /><category term="devops" /><category term="extensions" /><summary type="html"><![CDATA[These are my top 5 picks to install in your Azure DevOps account]]></summary></entry><entry><title type="html">Girls in Tech - AZ-203 exam prep training</title><link href="https://tomaszwisniewski.com/exam/training/2019/12/09/girls-in-tech-az203.html" rel="alternate" type="text/html" title="Girls in Tech - AZ-203 exam prep training" /><published>2019-12-09T10:00:00+01:00</published><updated>2019-12-09T10:00:00+01:00</updated><id>https://tomaszwisniewski.com/exam/training/2019/12/09/girls-in-tech-az203</id><content type="html" xml:base="https://tomaszwisniewski.com/exam/training/2019/12/09/girls-in-tech-az203.html"><![CDATA[<p>AZ-203 training day for free - come and join us!</p>

<!--more-->

<figure><a href="https://www.eventbrite.com/e/girls-in-cloud-przygotowanie-do-az-203-developing-solutions-for-azure-registration-84716329823" target="_blank"><img src="/assets/images/gitaz203/gitaz203.jpg" /></a></figure>

<p>Girls in Tech - together with <a href="https://twitter.com/MarczakIO" target="_blank">Adam</a> and <a href="https://twitter.com/mmisztal1980" target="_blank">Maciek</a> we have are super happy to invite you for an all day training which will prepare you for the <strong>AZ-203: Developing Solutions for Microsoft Azure</strong> exam. We will focus on the most important aspects of the exam, you will have a chance to do some hands-on-labs and ask us questions about the exam itself, technology it covers and learn Azure in general :)</p>

<p>If you are interested please register <a href="https://www.eventbrite.com/e/girls-in-cloud-przygotowanie-do-az-203-developing-solutions-for-azure-registration-84716329823" target="_blank">here</a> and hope to see you on the <strong>16th of December</strong>!</p>]]></content><author><name>Tomasz Wiśniewski</name></author><category term="exam" /><category term="training" /><category term="azure" /><category term="az-203" /><category term="prep" /><category term="azure solutions" /><category term="development" /><category term="girls in tech" /><summary type="html"><![CDATA[Girls in Tech - full day training which will prepare you for the AZ-203 exam]]></summary></entry><entry><title type="html">Azure API Management and multiple Application Insights</title><link href="https://tomaszwisniewski.com/howto/tutorials/2019/11/19/apim-appins.html" rel="alternate" type="text/html" title="Azure API Management and multiple Application Insights" /><published>2019-11-19T10:00:00+01:00</published><updated>2019-11-19T10:00:00+01:00</updated><id>https://tomaszwisniewski.com/howto/tutorials/2019/11/19/apim-appins</id><content type="html" xml:base="https://tomaszwisniewski.com/howto/tutorials/2019/11/19/apim-appins.html"><![CDATA[<p>Monitoring your applications or APIs is one of the most crucial elements of the DevOps world.</p>

<p><img src="https://docs.microsoft.com/en-us/azure/devops/learn/_img/devops-cycle.png" alt="DevOps cycle" /></p>

<p>If you don’t do it you basically can’t solve errors properly or make new development decision based on your users behaviors, problems and needs. The easiest way to deploy APIs in Azure is to use <a href="https://azure.microsoft.com/en-us/services/api-management/">API Management</a> and the easiest way to monitor apps and APIs is <a href="https://docs.microsoft.com/en-us/azure/azure-monitor/app/app-insights-overview">Application Insights</a>. One of the cool features of APIM is that you can have multiple Application Insights instances connected to it and assign them to specific APIs.</p>

<!--more-->

<p>When you go to your APIM instance click on the <strong>Application Insights</strong> section in the menu in the <strong>Monitoring section</strong>. There you will find an option to add Application Insights instances to your APIM:</p>

<p><img src="/assets/images/apimappins/addmasterappins.png" alt="Master Application Insights in API Management" /></p>

<p>When you check the <strong>“User as default…“</strong> this Application Insights instance will log requests and traffic for all of your APIs.</p>

<p>Now let’s add another Application Insights instance to our API Management</p>

<p><img src="/assets/images/apimappins/addechoapiappins.png" alt="Second Application Insights instance added to API Management" /></p>

<p>As you can see there is no option to have all APIs use this instance. Now what we need to do is go the <strong>API of interest -&gt; Click on it -&gt;</strong> go to <strong>Settings</strong> tab -&gt; <strong>Scroll down</strong>. In the Application Insights section click <strong>Enabled</strong> and from the drop down section select the Application Insights instance of interest:</p>

<p><img src="/assets/images/apimappins/addappinstoapi.png" alt="Add Application Insights into specific API" /></p>

<p><strong><em>IMPORTANT:</em></strong>  As the documentation <a href="https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-app-insights">states</a> - <strong>using 100%</strong> sampling on production scenarios is not recommended as there is a potential of performance decreases.</p>

<p>I would recommend a <strong>trial&amp;test</strong> approach for this to find the sweet spot for your logging needs and the performance impact on your environment.</p>

<p><strong>Scenarios</strong>
You can think of many but one of the most common ones is having an Application Insights instance per environment like <strong>Dev/Test(UAT/Staging)/Prod</strong>. Thanks to this you can use all the great features of Application Insights like bulging maps, handling request start to finish and tracing down any issues while te request reaches your API and/or backend.</p>]]></content><author><name>Tomasz Wiśniewski</name></author><category term="howto" /><category term="tutorials" /><category term="azure" /><category term="devops" /><category term="apim" /><category term="application insights" /><category term="monitoring" /><summary type="html"><![CDATA[How to connect multiple Application Insight instances to Azure API Management]]></summary></entry><entry><title type="html">Azure Training Day - join me</title><link href="https://tomaszwisniewski.com/information/workshop/2019/11/12/azure-training-day.html" rel="alternate" type="text/html" title="Azure Training Day - join me" /><published>2019-11-12T10:00:00+01:00</published><updated>2019-11-12T10:00:00+01:00</updated><id>https://tomaszwisniewski.com/information/workshop/2019/11/12/azure-training-day</id><content type="html" xml:base="https://tomaszwisniewski.com/information/workshop/2019/11/12/azure-training-day.html"><![CDATA[<p>Microsoft Tech Series is coming back and this time with a lot hands-on learning from various Microsoft technologies.</p>

<!--more-->

<figure><a href="https://www.microsoftevents.com/profile/form/index.cfm?PKformID=0x8365872abcd&amp;_lrsc=f140ac11-b52c-4e30-80e2-5e5508be3559" target="_blank"><img src="/assets/images/mts19/devops/mtsbanner.png" /></a></figure>

<p>This time with <a href="https://www.linkedin.com/in/kamil-mrzyg%C5%82%C3%B3d-31470376/" target="_blank">Kamil</a> and <a href="https://www.linkedin.com/in/rogalapiotr/" target="_blank">Piotr</a> we are pleased to invite you to a great all day workshop which will take place during Microsoft Tech Series 2019 - <strong>Microsoft Azure Training Day: Modernizing Data, Applications &amp; APIs to the Cloud</strong>. If you want to learn how to utilize the DevOps approach for developing, deploying and maintaining modern applications this workshop is for you.</p>

<p>The whole day workshop will take place on the 22nd of November 2019 in Warsaw, it’s <strong>FREE</strong> so hurry and register on the event <a href="https://www.microsoftevents.com/profile/form/index.cfm?PKformID=0x8365872abcd&amp;_lrsc=f140ac11-b52c-4e30-80e2-5e5508be3559" target="_blank">website</a>!</p>]]></content><author><name>Tomasz Wiśniewski</name></author><category term="[&quot;information&quot;, &quot;workshop&quot;]" /><category term="azure" /><category term="devops" /><category term="training" /><category term="workshop" /><category term="microsoft tech series" /><category term="conference" /><summary type="html"><![CDATA[Don't miss the opportunity to learn new things.]]></summary></entry><entry><title type="html">Microsoft Tech Series 2019 Warsaw - recap</title><link href="https://tomaszwisniewski.com/mts/conference/event/2019/05/17/mts19-recap.html" rel="alternate" type="text/html" title="Microsoft Tech Series 2019 Warsaw - recap" /><published>2019-05-17T10:00:00+02:00</published><updated>2019-05-17T10:00:00+02:00</updated><id>https://tomaszwisniewski.com/mts/conference/event/2019/05/17/mts19-recap</id><content type="html" xml:base="https://tomaszwisniewski.com/mts/conference/event/2019/05/17/mts19-recap.html"><![CDATA[<p>Just came back from <a href="https://tomaszwisniewski.com/2019-05-13-build-2019-recap/" target="_blank">Build 2019</a> and it was already time to attend another event. This time it was Microsoft Tech Series 2019 here in Warsaw. Let’s see what happened during this event.</p>

<!--more-->

<h3 id="sessions">Sessions</h3>

<p>The conference was divided into multiple tracks:</p>

<ul>
  <li>Dynamics 365</li>
  <li>Modern Desktop</li>
  <li>Optimize Your Teamwork</li>
  <li>Azure development</li>
</ul>

<p>As you can imagine I went for the Azure track ;)</p>

<h4 id="zarzadzanie-tozsamoscia-w-chmurze-hybrydowej-managing-identity-in-hybrid-cloud-by-michal-smereczynski">“Zarzadzanie tozsamoscia w chmurze hybrydowej (<em>Managing identity in hybrid cloud</em>)” by Michal Smereczynski</h4>

<p>First session of the day and <a href="https://www.linkedin.com/in/smereczynski/" target="_blank">Michal</a>  did a great job as always despite the problems he had. What was the problem you ask? Well… I don’t who is to blame here but there was no cable prepared for the speaker to connect his/hers laptop (sic!). I don’t know if it was the fault of the organizers or tech crew but on a tech conference done by Microsoft which they do in Poland all year around this is so obvious… and when they finally got the cable to the speaker the cable didn’t work… Well… Too bad as Michal couldn’t do any demos but as I said - he did a great job anyway! :)</p>
<figure><img src="/assets/images/mts19/ms.jpg" /></figure>

<ul>
  <li><a href="https://azure.microsoft.com/en-us/product-categories/identity/" target="_blank">IAM in Azure</a></li>
  <li><a href="https://docs.microsoft.com/en-us/azure/active-directory/hybrid/" target="_blank">Hybrid identity</a></li>
  <li><a href="https://azure.microsoft.com/en-us/solutions/architecture/hybrid-identity/" target="_blank">Hybrid identity with Azure Stack</a></li>
</ul>

<h4 id="nowa-odslona-azure-time-series-insights-the-new-edition-of-azure-time-series-insights-by-dawid-detko">“Nowa odslona Azure Time Series Insights (<em>The new edition of Azure Time Series Insights</em>)” by Dawid Detko</h4>

<p>This was a session I was super interested in as I didn’t have much chance to play with this part of Azure. <a href="https://www.linkedin.com/in/dawiddetko/" target="_blank">Dawid</a> did a great job of explaining the basics, scenarios where it can be used and showed a good demo for this with many new features on the plate. Fortunately the cable was working here so demos could happen ;)</p>
<figure><img src="/assets/images/mts19/dd.jpg" /></figure>

<ul>
  <li><a href="https://docs.microsoft.com/en-us/azure/time-series-insights/" target="_blank">Azure Time Series Insights</a></li>
</ul>

<h4 id="zarzadzanie-urzadzeniami-iot-oraz-iot-edge-z-uzyciem-uslugi-iot-hub-managing-iot-devices-and-iot-edge-using-the-iot-hub-service-by-kamil-mrzyglod-daniel-krzyczkowski">“Zarzadzanie urzadzeniami IoT oraz IoT Edge z uzyciem uslugi IoT Hub (<em>Managing IoT devices and IoT Edge using the IoT Hub service</em>) by Kamil Mrzyglod, Daniel Krzyczkowski</h4>

<p><a href="https://www.linkedin.com/in/kamil-mrzyg%C5%82%C3%B3d-31470376/" target="_blank">Kamil</a> and <a href="https://www.linkedin.com/in/daniel-krzyczkowski/" target="_blank">Daniel</a> have some cool experience with this subject especially while working on the famous <a href="https://twitter.com/AzureTruck" target="_blank">AzureTruck</a> :) The session was again the type of “zero to hero” session where the guys showed some theory of IoT, how it is layed down in Azure, what is possible and went through a scenario showing some IoT devices and Azure Sphere on stage connecting to Azure and looking at the data that they pump there and how it can be aggregated, viewed. Good job guys!</p>
<figure><img src="/assets/images/mts19/kmdk.jpg" /></figure>

<ul>
  <li><a href="https://azure.microsoft.com/en-us/overview/iot/" target="_blank">Azure IoT</a></li>
  <li><a href="https://docs.microsoft.com/en-us/azure/iot-hub/" target="_blank">Azure IoT Hub</a></li>
  <li><a href="https://azure.microsoft.com/en-us/services/iot-central/" target="_blank">Azure IoT Central</a></li>
  <li><a href="https://azure.microsoft.com/en-us/services/azure-sphere/" target="_blank">Azure Sphere</a></li>
</ul>

<h4 id="modern-computing-in-azure-by-marek-grabarz-lukasz-kaluzny">“Modern computing in Azure” by Marek Grabarz, Lukasz Kaluzny</h4>

<p>The last session of the day (must say that i didn’t even noticed how fast all of it went). <a href="https://www.linkedin.com/in/grabarz/" target="_blank">Marek</a> and <a href="https://www.linkedin.com/in/lukaszkaluzny/" target="_blank">Lukasz</a> basically did a recap of new things in terms of computing which where announced at Build so Virtual Nodes in AKS, new things in Azure App Service, Service Fabric and the “Atlas” project and where it’s going into the future and some new API management goodness. Very good ending session for the day!</p>
<figure><img src="/assets/images/mts19/mglk.jpg" /></figure>

<ul>
  <li><a href="https://docs.microsoft.com/en-us/azure/aks/virtual-kubelet" target="_blank">Azure Kubernetes Service Virtual Kubelet</a></li>
  <li><a href="https://mybuild.techcommunity.microsoft.com/sessions/77069" target="_blank">Project Atlas</a> - jump to <em>0:47:20</em></li>
  <li><a href="https://mybuild.techcommunity.microsoft.com/sessions/77064" target="_blank">API Management new features</a> - jump to <em>45:30</em></li>
</ul>

<h3 id="logistics">Logistics</h3>

<h4 id="venue">Venue</h4>

<p>Let’s start with the place where the conference took place - <a href="http://www.malawarszawa.pl/" target="_blank">Mala Warszawa</a>. A very climatic place but I think not the best choice for this kind of conference. A pretty outer location in Warsaw which made a lot of travel in the morning for many people. Of course - many people on that side of Wisla were happy but still not an easy place to get to.</p>

<p>The second thing was the organization and guidance at the venue. The registration was super slow as the different tracks were not labeled so clearly. Second thing was that the rooms were all over the place - which is fine - as there were lines on the floor guiding to them and even more - they were in color! But…
We had this badges for the conference</p>
<figure><img src="/assets/images/mts19/id.jpg" /></figure>

<p>Why did no one thought about corelating the line colors with some color on the badge? It would be so much easier for starters to have a yellow indicator (that was the Azure track line color) on the badge and it would be clear were to go.</p>

<p>Also the rooms had pillars all over them so comfortable viewing was not possible from all seats.</p>

<h4 id="lunch">Lunch</h4>

<p>Lunch was served in a form of foodtrucks which I’m all in for! Great idea to spread people around, it’s always better tasting then the catering lunch provided by different companies and gives interesting options. The only issue this time was that we are having some heavy rains recently in Warsaw but fortunately after heavy rains in the morning it stopped so we could enjoy the food outside or just take it into the venue as there was space to eat comfortably standing or sitting. Good job organizers!</p>
<figure><img src="/assets/images/mts19/lunch.jpg" /></figure>

<p>Also outside we could explore the Azure Truck mentioned already in this blog post :)</p>
<figure><img src="/assets/images/mts19/azuretruck.jpg" /></figure>

<h4 id="expo">Expo</h4>

<p>There was also a small expo section where you could visit booths of some Microsoft partners, Microsoft hardware so a nice addition to the whole experience.</p>

<h3 id="summary">Summary</h3>

<p>Overall it was a good event to attend. A lot of familiar faces, a lot of possibilities to network and interact which is also a very crucial part of such events besides the sessions which are presented.</p>

<p>I think that the overall conference score would be <strong>7/10</strong> so there is a place for improvement for the organizers next time ;)</p>]]></content><author><name>Tomasz Wiśniewski</name></author><category term="[&quot;mts&quot;, &quot;conference&quot;, &quot;event&quot;]" /><category term="conference" /><category term="microsoft" /><category term="sessions" /><category term="azure" /><category term="azure time series insights" /><category term="identity" /><category term="azure stack" /><category term="aks" /><category term="k8" /><category term="kubernetes" /><category term="api management" /><category term="iam" /><category term="pim" /><category term="iot" /><category term="iot hub" /><category term="azure sphere" /><summary type="html"><![CDATA[My MTS 2019 conference recap from the show floor]]></summary></entry><entry><title type="html">Microsoft Build 2019 recap</title><link href="https://tomaszwisniewski.com/build/conference/event/2019/05/13/build-2019-recap.html" rel="alternate" type="text/html" title="Microsoft Build 2019 recap" /><published>2019-05-13T10:00:00+02:00</published><updated>2019-05-13T10:00:00+02:00</updated><id>https://tomaszwisniewski.com/build/conference/event/2019/05/13/build-2019-recap</id><content type="html" xml:base="https://tomaszwisniewski.com/build/conference/event/2019/05/13/build-2019-recap.html"><![CDATA[<p>Microsoft Build 2019 is over! It has been a good conference. It had it’s upsides and flaws and being on the floor of the conference here is my short (hopefully) recap of what I have seen, what I recommend and not recommend to watch :)</p>

<!--more-->

<h3 id="sessions">Sessions</h3>
<p>The most important thing of every conference are the sessions for sure. So here is what I have attended and what I have observed and my recommendations.</p>

<h4 id="keynotes">Keynotes</h4>
<p>Microsoft has evolved the way it does keynotes from the last year which is splitting them into more keynotes.
The first keynote is <a href="https://mybuild.techcommunity.microsoft.com/sessions/77571" target="_blank">Satya Nadella Vision Keynote</a>. The keynote started with a massive failure of a Holo Lens 2 demo… it was so awkward… I really don’t remember a bigger failure ever on such an important session… but well… things happen and “demo gods” are not always with you.
The session itself had it “Satya’s” level which is always good and inspiring but unfortunately after so many years it seems always the same thing :/ And the biggest con of this session was logistic. There were only like 300 seats to watch the keynote live! Rest off the people had to go to the overflow rooms to watch the stream on screens. Well… that would be fine on a free event where by the way you can see Satya but when you pay a lot of money and many times travel a lot of kilometers you expect to watch it live so it was a big no-go for me from this conference. I hope next year they will not continue this approach.</p>
<figure><img src="/assets/images/build2019/satya.jpg" /></figure>

<p><br />
The second keynotes were split into two Tech Keynotes: <a href="https://mybuild.techcommunity.microsoft.com/sessions/77572" target="_blank">Microsoft Azure Empowering every Developer</a> by Scott Guthrie and <a href="https://mybuild.techcommunity.microsoft.com/sessions/77573" target="_blank">The Microsoft 365 Platform: A Vision for Windows and Office Developers</a> by Rajesh Jha. As you can imagine I went to the Azure one ;)
And again - “ScottGu’s” level as always good session with some new features in Azure announced. The problem with it is that a lot of features are announced but with very few demos :( They mostly focus on case studies from clients/partners who already have used those features and the videos they play are always the same: a client/partner -&gt; problem/issue -&gt; new feature in Azure -&gt; problem solved. No details, no specifics - it’s just always great and fun to use. I would like to see the new features at least in a short demo on the stage because watching “the same” video over and over again becomes a bit boring. Nevertheless a good session to watch and again a funny moment with “two Scott’s” having some technical problems and solving them on the fly - you need to watch to see what I’m talking about ;)
This session fortunately was available live - but also not for everyone.</p>
<figure><img src="/assets/images/build2019/scottgu.jpg" /></figure>

<p>My favorite announcements were (not all of them were during the keynote but I’ll put them here):</p>
<ul>
  <li><strong>ML.NET 1.0</strong> which allows developers which no experience with AL/ML to add models to their solutions, train those models and them to the application they are building in a super easy way. <a href="https://dotnet.microsoft.com/apps/machinelearning-ai/ml-dotnet" target="_blank">Read more</a></li>
  <li><strong>Azure Cosmos DB API for Spark and etcd</strong> - new API layers for already great product which allow you to do more interesting things with Spark and also kubernetes with the etcd support. <a href="https://azure.microsoft.com/en-us/blog/planet-scale-operational-analytics-and-ai-with-azure-cosmos-db/" target="_blank">Read more</a></li>
  <li><strong>Azure Kubernetes Service virtual nodes</strong> features goes GA so in many cases you can move with this easy approach to spinning up new containers into production. <a href="https://azure.microsoft.com/en-us/blog/partnering-with-the-community-to-make-kubernetes-easier/" target="_blank">Read more</a></li>
  <li><strong>KEDA: Kubernetes-based event-driven autoscaling</strong> which is a lot of buzz words like serverless, containers, kubernetes but in it looks like a very interesting piece of tech which is event-driven scaling for containers! <a href="https://azure.microsoft.com/en-us/blog/partnering-with-the-community-to-make-kubernetes-easier/" target="_blank">Read more</a></li>
  <li><strong>Azure SQL Database Edge</strong> a subset of the full Azure SQL DB which you can run on your edge and even on ARM64 processors! Super cool for many scenarios when you need such a DB closer to your solution. <a href="https://azure.microsoft.com/en-us/blog/intelligent-edge-innovation-across-data-iot-and-mixed-reality/" target="_blank">Read more</a></li>
  <li><strong>Azure SQL Database serverless</strong> which allows you to optimize your Azure costs in times of smaller activity with the database. I already see a lot of places where this could be introduced in my company in many projects. <a href="https://docs.microsoft.com/en-us/azure/sql-database/sql-database-serverless" target="_blank">Read more</a></li>
  <li><strong>.NET 5 arrives in 2020</strong> which means that FINALLY we will get one .NET platform which will be able to run on multiplatform. This is an epic move from MSFT and I’, so happy to see it. <a href="https://devblogs.microsoft.com/dotnet/" target="_blank">Read more</a></li>
  <li><strong>Unified pipelines</strong> in Azure Devops which means you can have a single YAML file which defines your CI and CD pipeline. Much better approach. <a href="https://azure.microsoft.com/en-us/blog/accelerating-devops-with-github-and-azure/" target="_blank">Read more</a></li>
  <li><strong>GitHub Identity support for Azure</strong> so now you can use your GH account to log into the Azure Portal. <a href="https://azure.microsoft.com/en-us/blog/accelerating-devops-with-github-and-azure/" target="_blank">Read more</a></li>
</ul>

<h4 id="breakout-sessions">Breakout sessions</h4>
<p>The breakout sessions are the main sessions during every Build Conference. This year they were an hour long which I believe is optimal for such an event. So the sessions which I have attended were:</p>

<ul>
  <li><a href="https://mybuild.techcommunity.microsoft.com/sessions/77031" target="_blank">.NET Platform Overview and Roadmap</a> - and this was a very good, informative and entertaining session as always done by Scott Hanselman and Scott Hunter. They explained really good about .NET 5 mentioned above and why, how and where all of this is going. They have also mentioned about .NET for Spark which from the diagrams shown beets other languages supported in Spark… Let’s see how it does in the real world ;) The session also briefly touched upon C# 8.0 byt that was another session which I have attended later.</li>
</ul>

<p>I <strong>highly recommend</strong> this session.</p>
<figure><img src="/assets/images/build2019/scotts.jpg" /></figure>

<ul>
  <li><a href="https://mybuild.techcommunity.microsoft.com/sessions/77059" target="_blank">Fundamentals of Kubernetes on Microsoft Azure and the road ahead</a> - then came a time for the “theme” of the conference and the subject which everyone is talking about which are containers and AKS. A good session showing the basics of AKS for people who are maybe not so familiar with it and announcing new things like for example <strong>API Server authorized IP ranges</strong>, <strong>Limiting egress traffic</strong>, <strong>Kubernetes network policies</strong> (GA), <strong>Azure Policy for AKS</strong> and also showing more about <strong>KEDA</strong> and of course the future roadmap for AKS.</li>
</ul>

<p>Again I <strong>recommend</strong> this session.</p>
<figure><img src="/assets/images/build2019/akssession.jpg" /></figure>

<ul>
  <li><a href="https://mybuild.techcommunity.microsoft.com/sessions/77045" target="_blank">From Zero to DevOps Superhero: The Container Edition</a> - wow… this was a fast train. Overall a pretty good session, really demo focused but I think in many way way to fast not explaining a lot of things. If you have no experience in Azure DevOps - get some first as you will get lost after 5 minutes, you need to a bit about Java development because it was Java based so again if you don’t know how Java apps are developed you will get lost after next 5 minutes. But when you overcome those two elements it’s a good session to watch and learn how to setup Azure DevOps for containers and the whole CI/CD pipeline.</li>
</ul>

<p>I <strong>recommend</strong> this session if you know the basics.</p>
<figure><img src="/assets/images/build2019/devopscontainers.jpg" /></figure>

<ul>
  <li><a href="https://mybuild.techcommunity.microsoft.com/sessions/77032" target="_blank">The Future of C#</a> - Mads and Dustin always to do a great job with those sessions. They showed the stuff which was already known in C# 8.0 like <strong>Nullable Reference Types</strong> or <strong>Asynchronous Streams</strong> but they also have spent some time showing what they are thinking about in an undefined future with C# and there are some wild ideas which would be awesome to have like <strong>records</strong> or many improvements to <strong>interfaces</strong> they would like to introduce.</li>
</ul>

<p>This is a <strong>must see</strong> session if you are interested in the language design, inner workings itself.</p>
<figure><img src="/assets/images/build2019/csharp.jpg" /></figure>

<ul>
  <li><a href="https://mybuild.techcommunity.microsoft.com/sessions/77138" target="_blank">Architecting Cloud-Native Apps with AKS and Cosmos DB</a> - this session was basically intro information on Azure Cosmos DB itself and how you can exchange Mongo DB to use Cosmos and it’s Mongo API so no rocket science and nothing interesting in my opinion. I was hoping for more specific use cases, some elements to watch out for but non if this was in this session.</li>
</ul>

<p>I <strong>don’t recommend</strong> this session at all.</p>

<ul>
  <li><a href="https://mybuild.techcommunity.microsoft.com/sessions/77172" target="_blank">Service Mesh on AKS, the future is now</a> - a very chaotic, basic session on a case study from a company in Taiwan as I recall. Nothing interesting to watch and find in this session… and unfortunately English of the speakers was super weak making it hard to understand :(</li>
</ul>

<p>I <strong>don’t recommend</strong> this session.</p>

<ul>
  <li><a href="https://mybuild.techcommunity.microsoft.com/sessions/77085" target="_blank">Building Azure Apps using the Common Data Service</a> - I went to this session with high hopes as I wanted to learn more about CDS as I don’t have a lot experience in it. unfortunately it was a disappointment. Very little information on CDS itself and the speaker was explaining for 10+ minutes, line by line a piece of code in an Azure Function which was extracting exif information for a picture… Seriously? It had no significant relation to the CDS itself so it could have been just two/three sentences about what this code does and that’s it. No one will remember this anyway, you can always look it up on GitHub and it wasn’t related to the core topic itself. Waste of time.</li>
</ul>

<p>I <strong>don’t recommend</strong> this session.</p>

<ul>
  <li><a href="https://mybuild.techcommunity.microsoft.com/sessions/77061" target="_blank">Enterprise security in the era of containers and Kubernetes</a> - as I mentioned before AKS was a “theme” during the conference so having in mind introducing in at my company which is an “enterprise” I though I would be a good idea to go to this session and learn how this all should be done… This session so marked 300 level. So in summary the information was very basic and nothing “special” about this security in AKS. in addition the speakers were using a script which was auto-typing commands in bash and they were fairly complicated commands in terms of amount of parameters. Again - it took time, didn’t add any value to the presentation itself as no one will remember those command anyway and you will have to look to the documentation to get them right.</li>
</ul>

<p>I <strong>mildly recommend</strong> this session if you don’t have any working knowledge about cloud security so maybe then you will learn something new.</p>

<ul>
  <li><a href="https://mybuild.techcommunity.microsoft.com/sessions/77002" target="_blank">Inside Azure datacenter architecture with Mark Russinovich</a> - going to any big Microsoft conference and not going to Mark Russinovich session should be punished ;) This session was expected to be great and it didn’t disappoint in anything. mark as always was informative, funny, showed some of the current state of Azure Datacenters, why some things are the way they are and also showed a couple of things new in Azure like for example <strong>ARM Custom Providers</strong>, <strong>Azure Blob Index</strong>, <strong>Azure Blob Quick Query</strong> or <strong>Cosmos DB Multi-model</strong> approach to data manipulation.</li>
</ul>

<p>I <strong>recommend</strong> this session.</p>
<figure><img src="/assets/images/build2019/mark.jpg" /></figure>

<ul>
  <li><a href="https://mybuild.techcommunity.microsoft.com/sessions/76995" target="_blank">Best practices for Azure Cosmos DB: Data modeling, Partitioning and RUs</a> - again a session marked as 300 level and the information was basically going through the Cosmos DB documentation regarding this topics in an artificial scenario which didn’t bring any value and was awkward at moments. Just read the docs on this subject and you will know everything needed for this. I was expecting more interesting thins with this topics.</li>
</ul>

<p>I <strong>don’t recommend</strong> this session.</p>

<ul>
  <li><a href="https://mybuild.techcommunity.microsoft.com/sessions/77069" target="_blank">Build Mission Critical .NET microservices</a> - this was one of the most anticipated sessions in the conference. The topic maybe didn’t suggest it but it was focused on Service Fabric. There were some basics information on it, case studies which did not have a “wow” factor to them, some roadmap announcements and what is already done and what will be available soon with Service Fabric. But the most important an interesting part was the future of Service Fabric or even more Service Fabric Mesh and this was done by introducing project <strong>Atlas</strong> which in general in my opinion puts SF as a very specific technology when you need things which are delivered by SF itself, you are a .NET shop. In any other case you should go with AKS - which simplifying very much - will run on top off SFM.</li>
</ul>

<p>I <strong>highly recommend</strong> this session.</p>
<figure><img src="/assets/images/build2019/sf.jpg" /></figure>

<ul>
  <li><a href="https://mybuild.techcommunity.microsoft.com/sessions/77073" target="_blank">Azure Security: Can you keep a secret?</a> - the last session of the conference which I have attended. I had high hopes for this session but have mixed feeling. The first part which was about discovering secrets in code, managing secrets, app auth was super basic and not level 300 again how it was marketed. The most interesting thing from this session were two private previews announced for Azure KeyVault which were <strong>integration with Azure Event Grid</strong> which allows you to subscribe to events from Key Vault like for example certificate about to expire so then you can take an action on it and the second one was <strong>Azure Policies for Azure Key Vault</strong> so now you can set multiple policies for artifacts which are going to be in your vault for example the expiration length of a certificate.</li>
</ul>

<p>I <strong>mildly recommend</strong> this session.</p>
<figure><img src="/assets/images/build2019/keyvault.jpg" /></figure>

<h4 id="theater-sneek-peak-tech-talk-sessions">Theater, sneek peak, tech talk sessions</h4>
<p>During the whole conference presentation on the expo floor also took place. I had a chance to partially or in full see those sessions:</p>

<ul>
  <li><a href="https://mybuild.techcommunity.microsoft.com/sessions/77411" target="_blank">Talk Tech with Damian Edwards &amp; David Fowler</a> - as always guys are super fun to listen too and very informative but they have spent a lot, like a lot of time on performance and why it’s so great in .NET right now. Well fine but not really my thing to spent so much time discussing this.</li>
  <li><a href="https://mybuild.techcommunity.microsoft.com/sessions/77416" target="_blank">Talk Tech with Brendan Burns</a> - Brendan of course talked about AKS, it’s basics, some architecture and answered some questions.</li>
  <li><a href="https://mybuild.techcommunity.microsoft.com/sessions/77491" target="_blank">A preview of the next evolution in Microsoft SEAL - our homomorphic encryption library</a> - a pretty nice short session on the SEAL library which allows you to do homomorphic encryption which is a super interesting subject in itself and opens a lot of new scenarios but at this point it’s still in a phase which wouldn’t be “doable” in a production environment without substantial computing power - its getting there but still some time needs to fly for it to be usable.</li>
</ul>

<h3 id="logistics">Logistics</h3>

<h4 id="expo">Expo</h4>
<p>As always there were a lot of booths for multiple Microsoft and partners/sponsors products. You could basically talk to any team you wanted and ask questions which you wanted to ask directly and get some answers.</p>
<figure><img src="/assets/images/build2019/floor/floor01.jpg" /></figure>
<figure><img src="/assets/images/build2019/floor/floor02.jpg" /></figure>
<figure><img src="/assets/images/build2019/floor/floor03.jpg" /></figure>
<figure><img src="/assets/images/build2019/floor/floor04.jpg" /></figure>
<figure><img src="/assets/images/build2019/floor/floor05.jpg" /></figure>
<figure><img src="/assets/images/build2019/floor/floor06.jpg" /></figure>

<p>You could also see some Azure Hardware</p>
<figure><img src="/assets/images/build2019/hw/hw01.jpg" /></figure>
<figure><img src="/assets/images/build2019/hw/hw02.jpg" /></figure>
<figure><img src="/assets/images/build2019/hw/hw03.jpg" /></figure>
<figure><img src="/assets/images/build2019/hw/hw04.jpg" /></figure>
<figure><img src="/assets/images/build2019/hw/hw05.jpg" /></figure>

<h4 id="lunch">Lunch</h4>
<p>This was one the weakest points of the conference.First of all it wasn’t very good and second of all i don’t why the organizers were distributing it in only 2-3 places which made all the people during lunch group at once at only 2-3 locations. The way that food was distributed during the attendee reception of Monday evening was much better. There were food station all over the place so you could walk all around, grab something to eat, talk to people etc. and the food was much better than when comparing to the lunches. I hope that this will improve because when you pay like 2300 USD for the conference food shouldn’t be such a bad element of the conference.</p>

<h4 id="conference-party">Conference party</h4>
<p>There had to be a party and it was good as always. it took place on the Century Link stadium with many attractions, food and beverages so we all could have a great time together and meet new people in a more informal situation.</p>
<figure><img src="/assets/images/build2019/party/party01.jpg" /></figure>
<figure><img src="/assets/images/build2019/party/party02.jpg" /></figure>
<figure><img src="/assets/images/build2019/party/party03.jpg" /></figure>

<h3 id="summary">Summary</h3>
<p>It’s time to summarize all of this which I wrote. In general the conference was good. The overall score would be <strong>7/10</strong>. It gave a lot of inspiration on new things coming in Azure and not only. Location is good because Seattle is always fun to visit. 
I just hope that for the future Microsoft will focus more on deeper sessions so they are not so basic in many cases and just are a “live act” of the documentation which you can find <a href="http://docs.microsoft.com" target="_blank">docs.microsoft.com</a></p>

<h4 id="materials">Materials</h4>
<p>If you would like to learn more about what happened at Build here is a bunch of materials for you:</p>
<ul>
  <li><a href="https://mybuild.techcommunity.microsoft.com/sessions" target="_blank">Sessions on demand</a></li>
  <li><a href="https://azure.microsoft.com/en-us/build-2019/announcements/" target="_blank">Build 2019 announcements blog post</a></li>
  <li><a href="https://news.microsoft.com/wp-content/uploads/prod/sites/558/2019/05/FINAL-Book-of-News-Build-2019-5.6.19-2.pdf" target="_blank">Book of News Build 2019</a></li>
</ul>

<p>Hope to see you at Build next year! :)</p>]]></content><author><name>Tomasz Wiśniewski</name></author><category term="[&quot;build&quot;, &quot;conference&quot;, &quot;event&quot;]" /><category term="build" /><category term="conference" /><category term="microsoft" /><category term="sessions" /><category term="azure" /><category term=".net" /><category term="c#" /><summary type="html"><![CDATA[My Build 2019 conference recap from the show floor]]></summary></entry><entry><title type="html">DJ TWW - House Mix #02</title><link href="https://tomaszwisniewski.com/music/dj/2019/05/01/house-mix-02.html" rel="alternate" type="text/html" title="DJ TWW - House Mix #02" /><published>2019-05-01T10:00:00+02:00</published><updated>2019-05-01T10:00:00+02:00</updated><id>https://tomaszwisniewski.com/music/dj/2019/05/01/house-mix-02</id><content type="html" xml:base="https://tomaszwisniewski.com/music/dj/2019/05/01/house-mix-02.html"><![CDATA[<p>Let’s start the new month with some energy boost! :)</p>

<iframe width="100%" height="120" src="https://www.mixcloud.com/widget/iframe/?hide_cover=1&amp;light=1&amp;feed=%2Fdj_tww%2Fdj-tww-house-mix-02%2F" frameborder="0"></iframe>]]></content><author><name>Tomasz Wiśniewski</name></author><category term="[&quot;music&quot;, &quot;dj&quot;]" /><category term="music" /><category term="dj" /><category term="house" /><category term="house mix" /><category term="club mix" /><category term="dance" /><summary type="html"><![CDATA[New House Mix for May 2019]]></summary></entry></feed>