It’s Summer holidays, Christmas was a few days ago, there’s sunny, warm weather on the forecast. Perfect days for lazing around home and reading a good book or two.
I happen to be passing Blackwood Books recently (we were actually visiting an adjacent shop but I thought I’d have a quick look). I asked to see their ‘local history’ section and was taken along some winding corridors to a couple of bookcases full of books. I didn’t have that long to browse, but two books looked interesting.
Not Only In Stone by Phyliss Somerville was first published way back in 1942. It tells the story of Mary (Polly) Thomas and her family, who emigrated to South Australia from Cornwall, England in 1865. It caught my attention as parts of the story are based in Wallaroo, Moonta and Kadina - towns on the Yorke Peninsula that I have some family connections of my own. It is a fascinating snapshot of early colonial life.
I’m two thirds through the book as I write this. So far Polly has endured numerous hardships, but is not deterred in providing for and making a home for her family. I’ll be interested to see how it ends.
At first glance a possibly unusual pick. I grew up in the Mitcham Hills area, and have been involved in the Methodist and then Uniting Church my entire life. This book, written by Rosemary Mitchell and published back in 2000, traces the history of the many Uniting Churches that were and continue to be in the Mitcham Hills area. I have a vague recollection of being aware of the book, possibly around the time it was launched, but I didn’t have a copy and a few people I’ve talked to since also had either forgotten or didn’t know about it.
The old history is fascinating, and just the effort (especially in the early days) that people put into ensuring that they had worship services was inspiring. Take this quote from page 6 (discussing the travelling preachers did in the 1850s)
Later Mr Illman who lived at Unley would walk to Cherry Gardens in the morning, walk on to Clarendon for the evening service and walk back to Unley
That’s a decent drive in a car today, let alone walking on foot. Google Maps suggests that’s around 50kms! Possibly in the 1850s you might have been able to take a more direct shortcut across the hills from Cherry Gardens to Clarendon, but that’s still astounding.
In the latter sections, there are lots of familiar names. Families and people I knew when I was growing up (and some I’m still connected to). Fun fact, I’m actually mentioned in the book too! (via my volunteering with the Blackwood Youth Project back in the 1990s). That was a pleasant surprise.
There’s a few passing mentions of indigenous people living in the area in the early days. It would be interesting to find out more about that - might need to see if there’s any other books that cover Aboriginal history of the area in more detail.
I don’t know if the book is still available anywhere. I’ll make some enquiries to see if it’s still for sale, otherwise I might have to lend my copy out to friends and family that found it interesting.
.NET 6 is the final area in this series. It encompasses changes to both the runtime and base class libraries. There is a lot going on here, so do let me know if I’ve missed something.
More details in https://github.com/dotnet/core/issues/5853
- On Windows, we’re adding support for Windows Forms and Windows Presentation Framework (WPF)
- Improve startup and throughput using runtime execution information (PGO)
- Response files are now supported
- New math APIs
- Improved support for Windows ACLs
- Portable thread pool
- Support for Apple Silicon (M1 Arm64), .NET Rosetta 2 Emulation
- Improving single file apps
- Single-file signing on macOS
- Dynamic PGO
- Arm64 performance
- Hardware-accelerating structs
More details in https://github.com/dotnet/core/issues/5889
- Improve .NET Inner Loop Performance
- .NET has a great client app development experience
- Better parsing of standard numeric formats
- SignalR – Nullable annotations
- Framework Assemblies are compiled with Crossgen2
- Profile guided optimization
- JIT improvements
More details in https://github.com/dotnet/core/issues/5890
- Faster handling of structs as Dictionary values
- Faster interface checking and casting
- Initial .NET Hot Reload support now available for web apps
More details in https://github.com/dotnet/core/issues/6098
- Hot Reload with the Visual Studio debugger and dotnet CLI
System.Text.Jsonsupport for IAsyncEnumerable
System.Text.JsonWriteable DOM Feature
Microsoft.Extensions.Loggingcompile-time source generator
- Significantly improved
FileStreamperformance on Windows
- Enhanced Date, Time and Time Zone support
- EventPipe for Mono and Improved EventPipe Performance
- IL trimming
- Single-file publishing
CLI install of .NET 6 SDK Optional Workloads
More details in https://github.com/dotnet/core/issues/6099
- Optional Workload improvements
- NuGet Package Validation
- more Roslyn Analyzers
- Enable custom guards for Platform Compatibility Analyzer
More detail in separate post
- default font
- More runtime designers
- Dropping support for older frameworks
- WebSocket Compression
- Socks proxy support
- Support for OpenTelemetry Metrics
- Support for OpenSSL 3
- Add support ChaCha20/Poly1305 cryptography algorithm
- Objective-C interoperability support
- (EventPipe/DiagnosticsServer) – MonoVM
More details in https://github.com/dotnet/core/issues/6325
x64 emulation update
- .NET SDK Optional Workload improvements
- Crossgen2 replaces crossgen
- TLS support for System.DirectoryServices.Protocols
- Improved sync-over-async performance
- W^X memory policy
More details in https://github.com/dotnet/core/issues/6444
- C# project templates modernized
- Reflection APIs for nullability information
ZipFileRespects Unix File Permissions
System.Text.Jsonserialization property ordering
- “write raw” JSON with
- Synchronous stream overloads on
System.Text.Json.Nodes.JsonNodesupport for dynamic is removed
- Simplified call patterns for cryptographic operations
- Full Case Mapping Support in Globalization Invariant Mode
- W^X (write xor execute) support for all platforms and architectures
Early .NET 7 Feature Preview
- Generic Math
More details in https://github.com/dotnet/core/issues/6569
- Source build
- Profile-guided optimization (PGO)
- Dynamic PGO
- Security mitigations
- SDK workloads
More details in https://github.com/dotnet/core/issues/6570
- C# 10
- .NET SDK: C# project templates modernized
- macOS and Windows Arm64 Update
In addition the following posts were made:
- What’s next for System.Text.Json?
- Loop alignment in .NET 6
- Date, Time, and Time Zone Enhancements in .NET 6
- Try the new System.Text.Json source generator
- String Interpolation in C# 10 and .NET 6
- Preview Features in .NET 6 – Generic Math
- Performance Improvements in .NET 6
- New .NET 6 APIs driven by the developer community
- File IO improvements in .NET 6
- .NET Hot Reload Support via CLI
.NET MAUI (Multi-platform App UI) was originally announced way back in May 2020 at BUILD 2020, and then updated in a blog post in February 2021. .NET MAUI is an evolution of the increasingly popular Xamarin.Forms toolkit.
We had to wait for preview 3 before more information about MAUI was forthcoming.
- Windows Desktop Now Supported
- Updates to Controls and Layouts
- Semantic Properties for Accessibility
- Splash Screen
- Raw Assets
- Visual Studio Productivity
- Ecosystem Readiness
- UI Components
- Single Project Templates Updates
- Workload Installation
- Native Alerts
- Single Project and Windows
- New Layouts
- Accessibility Changes and Improvements
- Font Scaling
Around this time a blog post was also published highlighting previews of the Community Toolkits.
Coinciding with the .NET 6 Release Candidate 1 releases. This is when the announcement was made that MAUI would not be shipping in November as originally planned. MAUI will stay in preview until into 2022.
Coinciding with .NET 6 Release Candidate 2
- Updated Controls
- Borders, Corners, and Shadows – Oh my!
- Quick Android Startup
- Ecosystem Controls (DevExpress, Syncfusion, Telerik)