Today’s post marks a bit of a leap into the unknown for me, as I explore using static analysis to improve my code with NDepend. I explain how it can be hard to know where to start, but also how valuable the insights can be. The actionable changes are demonstrated with commits from my development of ConTabs. Finally – in keeping with the expositionary style of this post – I close with some general observations (including an attempt to explain the difference between NDepend and ReSharper).
Series: Exploring modern .NET development with ConTabs
ConTabs end of 2017 review
It’s about to be a brand new year. As 2017 ticks over into 2018, it seems like a good time to look back and review what we’ve been up to. ConTabs only really got underway quite late in the year and it’s no way near finished, so let’s call this an interim review. Still, we can see where we are, how we got here, who we met along the way, and where we might go next.
When testing misses the mark
I’m hanging my head in shame right now. A part of me doesn’t want to have to write this blog post, but the lesson is too important not to share. When I published version 0.3 of ConTabs 4 days ago, a big chunk of a headline new feature didn’t work. Wanna see how I messed up? Read on…
Attracting contributors to ConTabs
Open source projects need contributors to stay healthy and develop. In this post, I want to discuss the methods I’ve tried (so far) to attract contributors to my open source project (ConTabs). I’ll describe what I’ve done, summarise what little data I have, and reflect on what it might tell us about open source contributors. And, in the middle of all that, I’ll indulge in a quick digression on the subject of project hygiene.
Automating NuGet deployment with AppVeyor
In the past, I’ve blogged about using AppVeyor for Continuous Integration (CI), but up to now, I’ve been manually uploading NuGet packages to NuGet.org. In this post – the 10th in the ConTabs series – I explain the steps I took to automate the packaging and deployment of ConTabs to NuGet.org. Or, in other words, how I’m using AppVeyor for my Continuous Deployment.