Home About Eric Topics SourceGear

Selected Blog Posts

Wednesday, 18 January 2023

.NET Native AOT

A series of posts about .NET Native AOT, which allows .NET code to be compiled directly to native

Thursday, 5 January 2023

SQLitePCLRaw and open source sustainability

Reflections on why I maintain an open source library

Tuesday, 21 September 2021

SourceGear Bridge preview: Swift with .NET in Xcode

A demo of a simple web app using Swift, ASP.NET Core 6, and Xcode

Monday, 26 July 2021

Alpaca Preview: Native Swift with ASP.NET Core

Alpaca is, er, Llama without Llama

Tuesday, 29 June 2021

Will deep understanding still be valuable?

Crabby old guy sees GitHub Copilot and says "get off my lawn", except with more words

Wednesday, 28 April 2021

Llama Preview: Swift Closures and Delegates

Support for converting Swift closures into .NET delegates, with callAsFunction syntax

Monday, 19 April 2021

Llama Preview: Swift on .NET

I see the potential for Swift to feel like a good fit for .NET.

Wednesday, 10 March 2021

Calling .NET APIs from Rust

This is, without a doubt, the worst implementation of 'grep' I've ever heard of.

Tuesday, 19 January 2021

Preview: The SQLite Llibrary as a .NET assembly

A preview release of SQLite compiled for .NET with Llama

Monday, 20 April 2020

SourceGear.Rust.NET preview 0.1.0

Don't even think about trying to use this for real work.

Tuesday, 10 March 2020

My exploration of Rust and .NET

A long yarn about some work I've been doing toward the ability to use Rust for .NET development.

Tuesday, 15 October 2019

.NET Core -- Choices

What happens when you reach the point where everything you want to do is too risky?

Wednesday, 14 August 2019

Nullable references in C# 8.0

There are a few aspects of C# 8.0 nullable references that may seem surprising, but I like my compiler to complain about potential problems, so I am enthusiastic about using this feature more.

Tuesday, 30 April 2019

Exploring wasm2cil performance

Very early and very rough comparisons against wasmtime and native

Tuesday, 23 April 2019

Running WebAssembly and WASI with .NET

A project that can take a WebAssembly/WASI module and convert it into a .NET assembly on disk.

Wednesday, 10 April 2019

Bringing 12-year-old WPF code to .NET Core 3

This code was developed on .NET 2.0 with Visual Studio 2005, but it required only minimal effort to bring it into the modern age.

Monday, 8 June 2015

My initial experience with Rust

I wrote a bunch of Rust code. I liked it.

Monday, 5 January 2015

Why your F# evangelism isn't working

Yes, F# has a seven year head start, but Swift will cross the chasm first. This has nothing to do with the relative merits of these two languages. The simple fact is that C# is kinda great and Objective-C is kinda dreadful.

Monday, 14 May 2007


But right after a spec is written, a document is usually the wrong form. It started out as a document only because that form was most convenient for the author. But a document is not the most convenient form for the people who are reading or using the spec, and those people have the author outnumbered. Most of those readers/users want that spec to be a database instead of a document.

Friday, 11 November 2005

My life as a Code Economist

So why would an ISV ever intentionally release a product with known bugs?

Tuesday, 19 August 2003

Career Calculus

I submit that worrying about how others perceive your C value is a waste of time. The key to a great career is to focus on L, the first derivative of the equation. L is the rate at which your cluefulness is changing over time. The actual value of C at any given moment is usually a distraction. Only one question matters: With each day that goes by, are you getting more clueful, or less clueful? Or are you just stuck?

Tuesday, 15 April 2003

Memoirs From the Browser Wars

We sold our browser technology to 120 companies, but one of them slaughtered the other 119.