Java 8 for C# Programmers

My overview article Java for C# Programmers has been updated for Java SE 8. You can find many links to the new features in the announcement and follow-up post at Oracle’s Java Tutorials Blog. I also once again recommend Cay S. Horstmann’s book, Java SE 8 for the Really Impatient. That said, here’s a quick … Continue reading “Java 8 for C# Programmers”

Struct Performance 2014

Once again and probably for the last time, I’ve updated my .NET Struct Performance article with results for the latest batch of compilers and runtimes. Microsoft’s and Mono’s current CLRs are unchanged as expected, and so is the excellent MinGW gcc. Visual C++ 2013 gave a nasty shock with massive optimizer failures for user-defined types … Continue reading “Struct Performance 2014”

Programming Languages in 2013

Andrew Binstock’s annual Rise And Fall of Languages analyzes Google Trends, the TIOBE index, and Ohloh’s coverage of 600,000 open-source projects to discover… that there wasn’t much to discover. Java and C++ continue their slow long-term decline, but as Daniel Lemire notes that decline is so slow that any year-over-year movement might as well be … Continue reading “Programming Languages in 2013”

Overview: Java versus C#

Today every programmer learns Java at school, but my university (where I walked uphill, both ways, barefoot, in the snow) had used C, Pascal, and Ada of all things. Later I went straight from C/C++ to C# when Microsoft released the .NET Framework. Eventually I also picked up Java on the side, after it had … Continue reading “Overview: Java versus C#”

Comparison of DPI Scaling in GUI Frameworks

My new article DPI Scaling in Windows GUIs illustrates how four popular Windows GUI frameworks deal with High DPI Settings in Windows. The candidates include: Windows Presentation Foundation (WPF) – scales automatically and perfectly Windows Forms – can match WPF with some effort, but can also fail spectacularly JavaFX – scales well, unless using explicit … Continue reading “Comparison of DPI Scaling in GUI Frameworks”

Struct Performance 2013

After a long hiatus I’ve updated my .NET Struct Performance benchmarks with results for the latest batch of C#, C++, Java, and JavaScript compilers. As expected I needn’t have bothered with the first three – C++ and Java are as fast as ever, and C# is sadly as slow as ever, even in this test … Continue reading “Struct Performance 2013”

Programming .NET 4.5 without VS2012

Back in the good old days, when the Windows start menu wasn’t designed for smartphones, the free Windows SDK 7.1 shipped with all .NET 4.0 compilers and even Visual C++. As noted previously, Microsoft decided to stop this generosity and removed all compilers from the new Windows SDK 8.0 for .NET 4.5. In the case … Continue reading “Programming .NET 4.5 without VS2012”

.NET Platform Targeting &c

Platform targeting in .NET applications employs a confusing jumble of project and solution settings that look identical but are actually independent. The AnyCPU Versus Any CPU spelling hack is a relatively harmless example. Much more serious is the possibility of mismatched explicit target platforms after repeated editing of project and solution settings. Galaktor’s thorough article … Continue reading “.NET Platform Targeting &c”

Comment Reflower for Visual Studio 2012

Shane Tolmie has just notified me that my Comment Reflower port for Visual Studio 2010 also works in VS 2012 – all you need to do is adjust two version numbers in the add-in control file. That’s great news, and I’ve updated the download package and ReadMe file accordingly. Thanks to Shane, and let me … Continue reading “Comment Reflower for Visual Studio 2012”

Added .NET Archive Section

The Development section on my website was bursting at the seams, so I combined all resources related to .NET Framework programming into a new section, the .NET Archive. Four pages were moved, and .NET Books was split off from Developer Books. I’m not creating a corresponding weblog category for the new section since I don’t … Continue reading “Added .NET Archive Section”