Antti K. Koskela - Microsoft MVP, M365 and Azure Solutions Architect, and the person behind Koskila.net
Welcome to Koskila.net. I am a Finnish software developer entrepreneur living in the countryside, and this is my personal professional blog for documenting solutions that are genuinely useful in real work.
The focus is Microsoft technology, cloud architecture, and enterprise software development, but the spirit is broader than any single stack.
The blog has been online since 2009 and in its current shape since 2015. Over the years, it has grown into a long-running notebook of lessons from consulting projects, architecture work, product implementation, and practical troubleshooting that teams can apply quickly.
Latest posts from the workshop
Start here for the freshest articles. Every post is written to be practical, specific, and immediately useful for teams building and operating real software.

- Published on
- Authors
- Koskila
Where did Copilot disappear in my PowerPoint on Mac?
This article explains how I discovered where the Copilot button went in PowerPoint on my Mac. Sounds dumb (and it is), but hey - I've ran into it twice, I've had to google it twice, so the next time it happens, I wanted to have a record of where to look. Let's get to it. Background So, I opened PowerPoint today. And like probably nobody else in the room, I wanted to access Copilot. But there was no Copilot. Nowhere I could see, anyway.
- Published on
- Authors
- Koskila
How to install the VS Code wiqd extension?
After getting back to consulting, I've been in the lucky/unlucky situation where I get to create and maintain different agent setups for various clients, each with their own unique requirements and challenges. That means I get to build agents with M365 Agents Toolkit, Foundry and even (ewww) Copilot Studio. One of the recurring challenges I've faced is dealing with the quirks and unexpected behaviors of various development tools, particularly when trying to install extensions in VS Code that seem determined to resist my efforts.
- Published on
- Authors
- koskila
How to modify the M365 Copilot Brand Kit?
This article explains how to modify the Microsoft 365 Copilot Brand Kit. Because apparently, YES, you DO in fact need an article explaining how to do it! Especially so since Microsoft is retiring public contributions to their documentation, because AI can update the docs so much faster than a collective of half a billion human contributors. Does anyone else swear at their little AI helpers? I've found myself getting quite irate with every single one of them - perhaps the only one that I rarely swear at is, surprisingly, Siri...
- Published on
- Authors
- koskila
Grounding Copilot agents: files or connectors?
This is part 2 of Baby Steps to Copilot Mastery , my multi-part series on useful declarative Microsoft 365 Copilot agents. In part 1 , we looked at why you might choose to build one instead of using Copilot Studio or going all-in with a "real" custom code solution. This time, let's give the agent something useful to talk about 😆 We'll look at SharePoint and files, when to use a Copilot Connector, and what our support-ticket demo actually puts into the index.
- Published on
- Authors
- koskila
Declarative Copilot agents without custom agent code
Coming down from the highs of this year's awesome HELish summit, I figured I'd visit the topic of my talk one more time! We've now presented multiple sessions on the topic with my friend and former colleague Gautam Sheth, and figured I'd address some of the questions and feedback we've gotten in a couple of blog posts. In this first post, I'll explain why declarative Microsoft 365 Copilot agents can take you surprisingly far without you having to write custom agent code or maintaining an agent backend.

- Published on
- Authors
- Koskila
Where did Copilot disappear in my PowerPoint on Mac?
This article explains how I discovered where the Copilot button went in PowerPoint on my Mac.
- Published on
- Authors
- Koskila
How to install the VS Code wiqd extension?
After getting back to consulting, I've been in the lucky/unlucky situation where I get to create and maintain different agent setups for various clients, each with their own unique requirements and challenges.
- Published on
- Authors
- koskila
How to modify the M365 Copilot Brand Kit?
This article explains how to modify the Microsoft 365 Copilot Brand Kit. Because apparently, YES, you DO in fact need an article explaining how to do it!
- Published on
- Authors
- koskila
Grounding Copilot agents: files or connectors?
This is part 2 of Baby Steps to Copilot Mastery , my multi-part series on useful declarative Microsoft 365 Copilot agents.
- Published on
- Authors
- koskila
Declarative Copilot agents without custom agent code
Coming down from the highs of this year's awesome HELish summit, I figured I'd visit the topic of my talk one more time!
The person behind the posts
I started freelancing as a web developer at 14, and the fascination never stopped. Today I work as a Lead Technical Consultant, helping customers tackle complex Microsoft 365 challenges.
This site exists to document what works, what fails, and what can be improved in Microsoft-focused engineering work. It is intentionally broad because real-world software problems do not arrive in neat categories.
If you value direct examples, tested fixes, and practical patterns over polished theory, this is the right place to browse.
Elsewhere on the web
This is the main home for Microsoft-focused writing, while ThoughtsOnTech.net covers gadgets and consumer-tech observations. The split keeps each stream focused and easy to follow.
Follow along on the channels below for updates, talks, demos, and engineering notes across different formats.