41554 blogs · [ { "id": "01a0c542-d321-73ff-bdd7-eeb140268e83", "title": "What does it mean when the bottom bit of my HMODULE is set?", "url": "https://devblogs.microsoft.com/oldnewthing/20260619-00/?p=112447", "published_at": "2026-06-19T14:00:00+00:00" }, { "id": "01a0876b-bd2a-7260-bc69-8af4d0324f2f", "title": "Announcing TypeScript 7.0 RC", "url": "https://devblogs.microsoft.com/typescript/announcing-typescript-7-0-rc/", "published_at": "2026-06-18T14:31:17+00:00" }, { "id": "01a0c542-d321-73ff-bdd7-eeb140b7adc0", "title": "Why doesn’t Get­Last­Input­Info() return info for the user I’m impersonating?", "url": "https://devblogs.microsoft.com/oldnewthing/20260618-00/?p=112444", "published_at": "2026-06-18T14:00:00+00:00" }, { "id": "01a0c54b-b8f6-738d-a394-aac5d1630437", "title": "Windows stack limit checking retrospective, follow-up", "url": "https://devblogs.microsoft.com/oldnewthing/20260617-00/?p=112436", "published_at": "2026-06-17T14:00:00+00:00" }, { "id": "01a0c54b-b8f6-738d-a394-aac5d250f4b3", "title": "Retrofitting the WM_COPY­DATA message onto Windows 3.1", "url": "https://devblogs.microsoft.com/oldnewthing/20260616-00/?p=112430", "published_at": "2026-06-16T14:00:00+00:00" }, { "id": "01a0c54b-b8f6-738d-a394-aac5d311d2f3", "title": "The time the x86 emulator team found code so bad that they fixed it during emulation", "url": "https://devblogs.microsoft.com/oldnewthing/20260615-00/?p=112419", "published_at": "2026-06-15T14:00:00+00:00" }, { "id": "01a0c54b-b8f6-738d-a394-aac5d34d256f", "title": "How can I schedule work on a thread pool with low latency?", "url": "https://devblogs.microsoft.com/oldnewthing/20260612-00/?p=112417", "published_at": "2026-06-12T14:00:00+00:00" }, { "id": "01a0c54b-b8f6-738d-a394-aac5d3709a9b", "title": "Understanding the rationale behind a rule when trying to circumvent it", "url": "https://devblogs.microsoft.com/oldnewthing/20260611-00/?p=112415", "published_at": "2026-06-11T14:00:00+00:00" }, { "id": "01a0c54b-b8f6-738d-a394-aac5d443206f", "title": "What’s the opposite of Clip­Cursor that lets me exclude the cursor from a region?", "url": "https://devblogs.microsoft.com/oldnewthing/20260610-00/?p=112412", "published_at": "2026-06-10T14:00:00+00:00" }, { "id": "01a0c54b-b8f6-738d-a394-aac5d4ebcac3", "title": "The Microsoft Company Party where everybody played name tag swap", "url": "https://devblogs.microsoft.com/oldnewthing/20260609-00/?p=112409", "published_at": "2026-06-09T14:00:00+00:00" }, { "id": "01a0c54b-b8f6-738d-a394-aac5d5e00c55", "title": "Rotation revisited: Shuffling more than three blocks, and other small notes", "url": "https://devblogs.microsoft.com/oldnewthing/20260608-00/?p=112407", "published_at": "2026-06-08T14:00:00+00:00" }, { "id": "01a0c54b-b8f6-738d-a394-aac5d6a42b96", "title": "The back cover of C++: The Programming Language also raises questions not answered by the front cover", "url": "https://devblogs.microsoft.com/oldnewthing/20260605-01/?p=112391", "published_at": "2026-06-05T14:00:01+00:00" }, { "id": "01a0c54b-b8f6-738d-a394-aac5d7642e7b", "title": "Rotation revisited: Avoiding having to calculate the gcd when doing cycle decomposition", "url": "https://devblogs.microsoft.com/oldnewthing/20260605-00/?p=112389", "published_at": "2026-06-05T14:00:00+00:00" }, { "id": "01a0c554-0626-723d-af05-8c122c77028f", "title": "Rotation revisited: Cycle decomposition in clang’s libcxx", "url": "https://devblogs.microsoft.com/oldnewthing/20260604-00/?p=112384", "published_at": "2026-06-04T14:00:00+00:00" }, { "id": "01a0c554-0626-723d-af05-8c122d5dc566", "title": "Rotation revisited: A shocking discovery about gcc’s unidirectional rotation algorithm", "url": "https://devblogs.microsoft.com/oldnewthing/20260603-00/?p=112378", "published_at": "2026-06-03T14:00:00+00:00" }, { "id": "01a0c554-0626-723d-af05-8c122db90db9", "title": "Rotation revisited: Another unidirectional algorithm", "url": "https://devblogs.microsoft.com/oldnewthing/20260602-00/?p=112376", "published_at": "2026-06-02T14:00:00+00:00" }, { "id": "01a0c554-0626-723d-af05-8c122e577d72", "title": "The placeholder name for the Windows 8 experience was “modern”", "url": "https://devblogs.microsoft.com/oldnewthing/20260601-00/?p=112373", "published_at": "2026-06-01T14:00:00+00:00" }, { "id": "01a0c554-0626-723d-af05-8c122f007f94", "title": "Sharing the result of a single Windows Runtime IAsyncOperation among multiple coroutines, part 3", "url": "https://devblogs.microsoft.com/oldnewthing/20260529-00/?p=112368", "published_at": "2026-05-29T14:00:00+00:00" }, { "id": "01a0c554-0626-723d-af05-8c122f5242b6", "title": "Sharing the result of a single Windows Runtime IAsyncOperation among multiple coroutines, part 2", "url": "https://devblogs.microsoft.com/oldnewthing/20260528-00/?p=112365", "published_at": "2026-05-28T14:00:00+00:00" }, { "id": "01a0c554-0626-723d-af05-8c12303b8c24", "title": "Sharing the result of a single Windows Runtime IAsyncOperation among multiple coroutines, part 1", "url": "https://devblogs.microsoft.com/oldnewthing/20260527-00/?p=112361", "published_at": "2026-05-27T14:00:00+00:00" }, { "id": "01a0c554-0626-723d-af05-8c12313a95f2", "title": "If C# and JavaScript lets me await a Windows Runtime asynchronous operation more than once, why not C++/WinRT?", "url": "https://devblogs.microsoft.com/oldnewthing/20260526-00/?p=112354", "published_at": "2026-05-26T14:00:00+00:00" }, { "id": "01a0c554-0626-723d-af05-8c1231c49d90", "title": "A hypothetical redesign of System.Diagnostics.Process to avoid confusion over properties that are valid only when you are the one who called Start", "url": "https://devblogs.microsoft.com/oldnewthing/20260525-00/?p=112351", "published_at": "2026-05-25T14:00:00+00:00" }, { "id": "01a0c554-0626-723d-af05-8c12323bbc01", "title": "Why do you say that a COM STA thread must pump messages if I see sample code creating STA threads and not pumping messages?", "url": "https://devblogs.microsoft.com/oldnewthing/20260522-00/?p=112348", "published_at": "2026-05-22T14:00:00+00:00" }, { "id": "01a0c55c-6d67-7355-9f24-202fb9339b9c", "title": "How do I use Win32 structures from the Windows Runtime?", "url": "https://devblogs.microsoft.com/oldnewthing/20260521-00/?p=112345", "published_at": "2026-05-21T14:00:00+00:00" }, { "id": "01a0c55c-6d67-7355-9f24-202fb9c7d353", "title": "The classic TreeView control lets me sort by name or by lParam, but why not both?", "url": "https://devblogs.microsoft.com/oldnewthing/20260520-00/?p=112343", "published_at": "2026-05-20T14:00:00+00:00" }, { "id": "01a0c55c-6d67-7355-9f24-202fba3f2eab", "title": "What is the history of the ERROR_ARENA_TRASHED error code?", "url": "https://devblogs.microsoft.com/oldnewthing/20260519-00/?p=112339", "published_at": "2026-05-19T14:00:00+00:00" }, { "id": "01a0c55c-6d67-7355-9f24-202fbb1fac43", "title": "Just shows that nobody cares about debugging the parity flag any more", "url": "https://devblogs.microsoft.com/oldnewthing/20260518-00/?p=112334", "published_at": "2026-05-18T14:00:00+00:00" }, { "id": "01a0c55c-6d67-7355-9f24-202fbbc5fddf", "title": "The case of the Create­File­Mapping that always reported ERROR_ALREADY_EXISTS", "url": "https://devblogs.microsoft.com/oldnewthing/20260515-00/?p=112327", "published_at": "2026-05-15T14:00:00+00:00" }, { "id": "01a0c55c-6d67-7355-9f24-202fbca85ab8", "title": "A constant-space linear-time algorithm for deleting all but the 10 most recent files in a directory", "url": "https://devblogs.microsoft.com/oldnewthing/20260514-00/?p=112322", "published_at": "2026-05-14T14:00:00+00:00" }, { "id": "01a0821b-83c1-7265-9de9-e06fb41bc6be", "title": "PyCon US 2026", "url": "https://devblogs.microsoft.com/python/pycon-us-2026/", "published_at": "2026-05-14T00:18:13+00:00" }, { "id": "01a0c55c-6d67-7355-9f24-202fbcaefb12", "title": "The case of the hang when the user changed keyboard layouts", "url": "https://devblogs.microsoft.com/oldnewthing/20260513-00/?p=112318", "published_at": "2026-05-13T14:00:00+00:00" }, { "id": "01a0c55c-6d67-7355-9f24-202fbd48d89c", "title": "Why do Windows client editions on 32-bit x86 systems artificially limit RAM to 4 GB?", "url": "https://devblogs.microsoft.com/oldnewthing/20260512-00/?p=112316", "published_at": "2026-05-12T14:00:00+00:00" }, { "id": "01a0c55c-6d67-7355-9f24-202fbe0d8783", "title": "Additional notes on controlling which handles are inherited by Create­Process", "url": "https://devblogs.microsoft.com/oldnewthing/20260511-00/?p=112313", "published_at": "2026-05-11T14:00:00+00:00" }, { "id": "01a0c55c-6d67-7355-9f24-202fbe2778cc", "title": "Developing more confidence when tracking renames via Read­Directory­ChangesW", "url": "https://devblogs.microsoft.com/oldnewthing/20260508-00/?p=112310", "published_at": "2026-05-08T14:00:00+00:00" }, { "id": "01a0c565-0ad2-7395-b58f-5bd859910c31", "title": "When you upgrade your resource strings to Unicode, don’t forget to specify the L prefix", "url": "https://devblogs.microsoft.com/oldnewthing/20260507-00/?p=112307", "published_at": "2026-05-07T14:00:00+00:00" }, { "id": "01a0c565-0ad2-7395-b58f-5bd85a361a8f", "title": "Why not have changes in API behavior depend on the SDK you link against?", "url": "https://devblogs.microsoft.com/oldnewthing/20260506-00/?p=112303", "published_at": "2026-05-06T14:00:00+00:00" }, { "id": "01a0c565-0ad2-7395-b58f-5bd85b1386a6", "title": "A dispute over the TAB key highlights a mismatch between Microsoft and IBM organizational structures", "url": "https://devblogs.microsoft.com/oldnewthing/20260505-00/?p=112298", "published_at": "2026-05-05T14:00:00+00:00" }, { "id": "01a0c565-0ad2-7395-b58f-5bd85b25ea47", "title": "How do I inform Windows that I’m writing a binary file?", "url": "https://devblogs.microsoft.com/oldnewthing/20260504-00/?p=112296", "published_at": "2026-05-04T14:00:00+00:00" }, { "id": "01a0821b-83c1-7265-9de9-e06fb41fca66", "title": "Introducing Apache Arrow Support in mssql-python", "url": "https://devblogs.microsoft.com/python/introducing-apache-arrow-support-in-mssql-python/", "published_at": "2026-05-04T04:33:00+00:00" }, { "id": "01a0c565-0ad2-7395-b58f-5bd85b63ec21", "title": "Developing a cross-process reader/writer lock with limited readers, part 4: Abandonment", "url": "https://devblogs.microsoft.com/oldnewthing/20260501-00/?p=112291", "published_at": "2026-05-01T14:00:00+00:00" }, { "id": "01a0c565-0ad2-7395-b58f-5bd85c06d96a", "title": "Developing a cross-process reader/writer lock with limited readers, part 3: Fairness", "url": "https://devblogs.microsoft.com/oldnewthing/20260430-00/?p=112288", "published_at": "2026-04-30T14:00:00+00:00" }, { "id": "01a0c565-0ad2-7395-b58f-5bd85c4fabe4", "title": "Developing a cross-process reader/writer lock with limited readers, part 2: Taking turns when being grabby", "url": "https://devblogs.microsoft.com/oldnewthing/20260429-00/?p=112286", "published_at": "2026-04-29T14:00:00+00:00" }, { "id": "01a0c565-0ad2-7395-b58f-5bd85caa02b6", "title": "Developing a cross-process reader/writer lock with limited readers, part 1: A semaphore", "url": "https://devblogs.microsoft.com/oldnewthing/20260428-00/?p=112278", "published_at": "2026-04-28T14:00:00+00:00" }, { "id": "01a0821b-83c1-7265-9de9-e06fb48f4218", "title": "Python Environments Extension for VS Code- April Update", "url": "https://devblogs.microsoft.com/python/python-in-visual-studio-code-april-2026-release/", "published_at": "2026-04-27T20:07:30+00:00" }, { "id": "01a0c565-0ad2-7395-b58f-5bd85d3b0faa", "title": "Looking at consequences of passing too few register parameters to a C function on various architectures", "url": "https://devblogs.microsoft.com/oldnewthing/20260427-00/?p=112271", "published_at": "2026-04-27T14:00:00+00:00" }, { "id": "01a0c565-0ad2-7395-b58f-5bd85dcfcd28", "title": "Defending against exceptions in a scope_exit RAII type", "url": "https://devblogs.microsoft.com/oldnewthing/20260424-00/?p=112266", "published_at": "2026-04-24T14:00:00+00:00" }, { "id": "01a0c56c-26b0-7360-8fad-31f086039851", "title": "Another crash caused by uninstaller code injection into Explorer", "url": "https://devblogs.microsoft.com/oldnewthing/20260423-00/?p=112261", "published_at": "2026-04-23T14:00:00+00:00" }, { "id": "01a0c56c-26b0-7360-8fad-31f086fc1f20", "title": "Mapping the page tables into memory via the page tables", "url": "https://devblogs.microsoft.com/oldnewthing/20260422-00/?p=112255", "published_at": "2026-04-22T14:00:00+00:00" }, { "id": "01a0876b-bd2a-7260-bc69-8af4d0cda624", "title": "Announcing TypeScript 7.0 Beta", "url": "https://devblogs.microsoft.com/typescript/announcing-typescript-7-0-beta/", "published_at": "2026-04-21T18:24:17+00:00" }, { "id": "01a0c56c-26b0-7360-8fad-31f087a6281b", "title": "Sure, xor’ing a register with itself is the idiom for zeroing it out, but why not sub?", "url": "https://devblogs.microsoft.com/oldnewthing/20260421-00/?p=112247", "published_at": "2026-04-21T14:00:00+00:00" }, { "id": "01a0c56c-26b0-7360-8fad-31f087dc24c0", "title": "How did code handle 24-bit-per-pixel formats when using video cards with bank-switched memory?", "url": "https://devblogs.microsoft.com/oldnewthing/20260420-00/?p=112245", "published_at": "2026-04-20T14:00:00+00:00" }, { "id": "01a0c56c-26b0-7360-8fad-31f087f91cac", "title": "Forgotten message from the past: LB_INIT­STORAGE", "url": "https://devblogs.microsoft.com/oldnewthing/20260417-00/?p=112243", "published_at": "2026-04-17T14:00:00+00:00" }, { "id": "01a0c56c-26b0-7360-8fad-31f0885f2ae0", "title": "What’s up with window message 0x0091? We’re getting it with unexpected parameters", "url": "https://devblogs.microsoft.com/oldnewthing/20260416-00/?p=112240", "published_at": "2026-04-16T14:00:00+00:00" }, { "id": "01a0c56c-26b0-7360-8fad-31f0889e79e6", "title": "Why is there a long delay between a thread exiting and the Wait­For­Single­Object returning?", "url": "https://devblogs.microsoft.com/oldnewthing/20260415-00/?p=112235", "published_at": "2026-04-15T14:00:00+00:00" }, { "id": "01a0c56c-26b0-7360-8fad-31f0898247f8", "title": "Why was there a red telephone at every receptionist desk?", "url": "https://devblogs.microsoft.com/oldnewthing/20260414-00/?p=112231", "published_at": "2026-04-14T14:00:00+00:00" }, { "id": "01a0c56c-26b0-7360-8fad-31f08986d1bc", "title": "Finding a duplicated item in an array of N integers in the range 1 to N − 1", "url": "https://devblogs.microsoft.com/oldnewthing/20260413-00/?p=112227", "published_at": "2026-04-13T14:00:00+00:00" }, { "id": "01a0c56c-26b0-7360-8fad-31f08a419fb3", "title": "How do you add or remove a handle from an active Wait­For­Multiple­Objects?, part 2", "url": "https://devblogs.microsoft.com/oldnewthing/20260410-00/?p=112223", "published_at": "2026-04-10T14:00:00+00:00" }, { "id": "01a0c576-56db-73fa-9e34-f694dab2d4d4", "title": "How do you add or remove a handle from an active Wait­For­Multiple­Objects?", "url": "https://devblogs.microsoft.com/oldnewthing/20260409-00/?p=112220", "published_at": "2026-04-09T14:00:00+00:00" }, { "id": "01a0c576-56db-73fa-9e34-f694db39c3e2", "title": "How do you add or remove a handle from an active Msg­Wait­For­Multiple­Objects?", "url": "https://devblogs.microsoft.com/oldnewthing/20260408-00/?p=112218", "published_at": "2026-04-08T14:00:00+00:00" }, { "id": "01a0821b-83c1-7265-9de9-e06fb4f819df", "title": "Write SQL Your Way: Dual Parameter Style Benefits in mssql-python", "url": "https://devblogs.microsoft.com/python/write-sql-your-way-dual-parameter-style-benefits-in-mssql-python/", "published_at": "2026-04-07T16:12:05+00:00" }, { "id": "01a0c576-56db-73fa-9e34-f694db5b7cf6", "title": "Were there any Windows 3.1 programs that were so incompatible with Windows 95 that there was no point trying to patch them?", "url": "https://devblogs.microsoft.com/oldnewthing/20260407-00/?p=112213", "published_at": "2026-04-07T14:00:00+00:00" }, { "id": "01a0c576-56db-73fa-9e34-f694dbf74b80", "title": "Learning to read C++ compiler errors: Illegal use of -> when there is no -> in sight", "url": "https://devblogs.microsoft.com/oldnewthing/20260406-00/?p=112208", "published_at": "2026-04-06T14:00:00+00:00" }, { "id": "01a0c576-56db-73fa-9e34-f694dc8e1eaf", "title": "How can I use Read­Directory­ChangesW to know when someone is copying a file out of the directory?", "url": "https://devblogs.microsoft.com/oldnewthing/20260403-00/?p=112202", "published_at": "2026-04-03T14:00:00+00:00" }, { "id": "01a0c576-56db-73fa-9e34-f694dd4761ff", "title": "Why doesn’t the system let you declare your own messages to have the same semantics as WM_COPY­DATA?", "url": "https://devblogs.microsoft.com/oldnewthing/20260402-00/?p=112196", "published_at": "2026-04-02T14:00:00+00:00" }, { "id": "01a0821b-83c1-7265-9de9-e06fb5243b3d", "title": "Python in Visual Studio Code – March 2026 Release", "url": "https://devblogs.microsoft.com/python/python-in-visual-studio-code-march-2026-release/", "published_at": "2026-04-02T00:27:15+00:00" }, { "id": "01a0c576-56db-73fa-9e34-f694de144f3a", "title": "The cover of C++: The Programming Language raises questions not answered by the cover", "url": "https://devblogs.microsoft.com/oldnewthing/20260401-00/?p=112180", "published_at": "2026-04-01T14:00:00+00:00" }, { "id": "01a0c576-56db-73fa-9e34-f694de58e90e", "title": "Before you check if an update caused your problem, check that it wasn’t a problem before the update", "url": "https://devblogs.microsoft.com/oldnewthing/20260331-00/?p=112177", "published_at": "2026-03-31T14:00:00+00:00" }, { "id": "01a0c576-56db-73fa-9e34-f694de59aa28", "title": "A question about the maximimum number of values in a registry key raises questions about the question", "url": "https://devblogs.microsoft.com/oldnewthing/20260330-00/?p=112175", "published_at": "2026-03-30T14:00:00+00:00" }, { "id": "01a0c576-56db-73fa-9e34-f694df4de1bb", "title": "What if a dialog wants to intercept its own message loop?", "url": "https://devblogs.microsoft.com/oldnewthing/20260327-00/?p=112172", "published_at": "2026-03-27T14:00:00+00:00" }, { "id": "01a0c584-2188-7134-adec-990b44fd680e", "title": "Why doesn’t WM_ENTER­IDLE work if the dialog box is a Message­Box?", "url": "https://devblogs.microsoft.com/oldnewthing/20260326-00/?p=112167", "published_at": "2026-03-26T14:00:00+00:00" }, { "id": "01a0c584-2188-7134-adec-990b451b849c", "title": "How can I change a dialog box’s message loop to do a Msg­Wait­For­Multiple­Objects instead of Get­Message?", "url": "https://devblogs.microsoft.com/oldnewthing/20260325-00/?p=112165", "published_at": "2026-03-25T14:00:00+00:00" }, { "id": "01a0c584-2188-7134-adec-990b4587707e", "title": "Windows 95 defenses against installers that overwrite a file with an older version", "url": "https://devblogs.microsoft.com/oldnewthing/20260324-00/?p=112159", "published_at": "2026-03-24T14:00:00+00:00" }, { "id": "01a0876b-bd2a-7260-bc69-8af4d159c559", "title": "Announcing TypeScript 6.0", "url": "https://devblogs.microsoft.com/typescript/announcing-typescript-6-0/", "published_at": "2026-03-23T16:34:10+00:00" }, { "id": "01a0c584-2188-7134-adec-990b4633a6cf", "title": "How can I make sure the anti-malware software doesn’t terminate my custom service?", "url": "https://devblogs.microsoft.com/oldnewthing/20260323-00/?p=112157", "published_at": "2026-03-23T14:00:00+00:00" }, { "id": "01a0c584-2188-7134-adec-990b466a097d", "title": "Windows stack limit checking retrospective: arm64, also known as AArch64", "url": "https://devblogs.microsoft.com/oldnewthing/20260320-00/?p=112154", "published_at": "2026-03-20T14:00:00+00:00" }, { "id": "01a0c584-2188-7134-adec-990b46eb076e", "title": "Windows stack limit checking retrospective: amd64, also known as x86-64", "url": "https://devblogs.microsoft.com/oldnewthing/20260319-00/?p=112152", "published_at": "2026-03-19T14:00:00+00:00" }, { "id": "01a0c584-2188-7134-adec-990b47e19c9f", "title": "Windows stack limit checking retrospective: Alpha AXP", "url": "https://devblogs.microsoft.com/oldnewthing/20260318-00/?p=112146", "published_at": "2026-03-18T14:00:00+00:00" }, { "id": "01a0c584-2188-7134-adec-990b48d8415f", "title": "Windows stack limit checking retrospective: x86-32 also known as i386, second try", "url": "https://devblogs.microsoft.com/oldnewthing/20260317-00/?p=112144", "published_at": "2026-03-17T14:00:00+00:00" }, { "id": "01a0c584-2188-7134-adec-990b49d7ae13", "title": "Windows stack limit checking retrospective: PowerPC", "url": "https://devblogs.microsoft.com/oldnewthing/20260316-00/?p=112140", "published_at": "2026-03-16T14:00:00+00:00" }, { "id": "01a0c584-2188-7134-adec-990b49f776ee", "title": "Windows stack limit checking retrospective: MIPS", "url": "https://devblogs.microsoft.com/oldnewthing/20260313-00/?p=112138", "published_at": "2026-03-13T14:00:00+00:00" }, { "id": "01a0c592-66ff-7378-a926-6ff65eb2b2b4", "title": "Windows stack limit checking retrospective: x86-32, also known as i386", "url": "https://devblogs.microsoft.com/oldnewthing/20260312-00/?p=112136", "published_at": "2026-03-12T14:00:00+00:00" }, { "id": "01a0c592-66ff-7378-a926-6ff65f117e74", "title": "How do compilers ensure that large stack allocations do not skip over the guard page?", "url": "https://devblogs.microsoft.com/oldnewthing/20260311-00/?p=112134", "published_at": "2026-03-11T14:00:00+00:00" }, { "id": "01a0c592-66ff-7378-a926-6ff65f6c49c7", "title": "A snappy answer when asked about dressing casually at IBM", "url": "https://devblogs.microsoft.com/oldnewthing/20260310-00/?p=112131", "published_at": "2026-03-10T14:00:00+00:00" }, { "id": "01a0c592-66ff-7378-a926-6ff65f8490d5", "title": "The fine print giveth and the bold print taketh away: The countdown timer", "url": "https://devblogs.microsoft.com/oldnewthing/20260309-01/?p=112120", "published_at": "2026-03-09T14:00:01+00:00" }, { "id": "01a0c592-66ff-7378-a926-6ff6600e3883", "title": "Learning to read C++ compiler errors: Ambiguous overloaded operator", "url": "https://devblogs.microsoft.com/oldnewthing/20260309-00/?p=112118", "published_at": "2026-03-09T14:00:00+00:00" }, { "id": "01a0876b-bd2a-7260-bc69-8af4d1951770", "title": "Announcing TypeScript 6.0 RC", "url": "https://devblogs.microsoft.com/typescript/announcing-typescript-6-0-rc/", "published_at": "2026-03-06T19:13:14+00:00" }, { "id": "01a0c592-66ff-7378-a926-6ff66084f8a8", "title": "When Read­Directory­ChangesW reports that a deletion occurred, how can I learn more about the deleted thing?", "url": "https://devblogs.microsoft.com/oldnewthing/20260306-00/?p=112116", "published_at": "2026-03-06T15:00:00+00:00" }, { "id": "01a0c592-66ff-7378-a926-6ff6616e962c", "title": "The mystery of the posted message that was dispatched before reaching the main message loop", "url": "https://devblogs.microsoft.com/oldnewthing/20260305-00/?p=112114", "published_at": "2026-03-05T15:00:00+00:00" }, { "id": "01a0c592-66ff-7378-a926-6ff661e5aaf8", "title": "Aha, I found a counterexample to the documentation that says that Query­Performance­Counter never fails", "url": "https://devblogs.microsoft.com/oldnewthing/20260304-00/?p=112110", "published_at": "2026-03-04T15:00:00+00:00" }, { "id": "01a0c592-66ff-7378-a926-6ff662a11a3a", "title": "Just for fun: A survey of write protect notches on floppy disks and other media", "url": "https://devblogs.microsoft.com/oldnewthing/20260303-00/?p=112104", "published_at": "2026-03-03T15:00:00+00:00" }, { "id": "01a0c592-66ff-7378-a926-6ff662dddb9f", "title": "What sort of horrible things happen if my dialog has a non-button with the control ID of IDCANCEL?", "url": "https://devblogs.microsoft.com/oldnewthing/20260302-53/?p=112098", "published_at": "2026-03-02T20:55:53+00:00" }, { "id": "01a0821b-83c1-7265-9de9-e06fb615e3fb", "title": "Python Environments Extension for VS Code", "url": "https://devblogs.microsoft.com/python/python-in-visual-studio-code-february-2026-release/", "published_at": "2026-02-18T22:00:22+00:00" }, { "id": "01a0876b-bd2a-7260-bc69-8af4d209eae1", "title": "Announcing TypeScript 6.0 Beta", "url": "https://devblogs.microsoft.com/typescript/announcing-typescript-6-0-beta/", "published_at": "2026-02-11T18:50:26+00:00" }, { "id": "01a08c64-363c-71f8-9e1a-88768cdad95e", "title": "Swapping two blocks of memory that reside inside a larger block, in constant memory", "url": "https://devblogs.microsoft.com/oldnewthing/20260101-00/?p=111955", "published_at": "2025-12-31T23:00:00+00:00" }, { "id": "01a0876b-bd2a-7260-bc69-8af4d2876ae2", "title": "Progress on TypeScript 7 – December 2025", "url": "https://devblogs.microsoft.com/typescript/progress-on-typescript-7-december-2025/", "published_at": "2025-12-02T17:31:32+00:00" }, { "id": "01a0821b-83c1-7265-9de9-e06fb66685a8", "title": "Python in Visual Studio Code – November 2025 Release", "url": "https://devblogs.microsoft.com/python/python-in-visual-studio-code-november-2025-release/", "published_at": "2025-11-13T18:41:50+00:00" }, { "id": "01a0821b-83c1-7265-9de9-e06fb753a5ba", "title": "Python in Visual Studio Code – October 2025 Release", "url": "https://devblogs.microsoft.com/python/python-in-visual-studio-code-october-2025-release/", "published_at": "2025-10-10T17:55:26+00:00" }, { "id": "01a0821b-83c1-7265-9de9-e06fb8256515", "title": "Simplifying Resource Management in mssql-python through Context Manager", "url": "https://devblogs.microsoft.com/python/simplifying-resource-management-in-mssql-python-through-context-manager/", "published_at": "2025-09-26T09:49:51+00:00" }, { "id": "01a0821b-83c1-7265-9de9-e06fb86675e9", "title": "Python in Visual Studio Code – September 2025 Release", "url": "https://devblogs.microsoft.com/python/python-in-visual-studio-code-september-2025-release/", "published_at": "2025-09-15T18:22:18+00:00" }, { "id": "01a0c507-98ec-716b-993a-a28028bc6374", "title": "Announcing the Data Wrangler powered Notebook Results Table", "url": "https://devblogs.microsoft.com/python/data-wrangler-results-table/", "published_at": "2025-08-19T19:08:23+00:00" } ] posts Claim your blog
Back to Microsoft Developer Blogs
Blog · corpus.blog/blogs/devblogs.microsoft.com/posts

Microsoft Developer Blogs

devblogs.microsoft.com

2026

2025