How to Develop Python in Visual Studio... and Mix it Up with the .NET Framework!

I’ve been learning about the Raspberry Pi for a few months, occasionally writing about it. I usually start on a laptop using JetBrains’ PyCharm IDE, which is much faster than the Pi, then move everything over when it’s done and I need to run it against the GPIO pins. But Visual Studio was my main coding environment for years, and I got really comfortable with it (well, when they weren’t moving my cheese), so when I realized it could support Python I had to check it out. If you’re doing dev in Python, and are familiar »

An Introduction to NDepend

No single person (or team) can know everything about a large codebase. Developers come and go, taking knowledge with them. Legacy code grows and mutates, as bugs are fixed and new features reluctantly touch old code. Deadlines loom, and changes aren’t adequately tested. Eventually, even when the code appears to be running okay, you’re never completely *sure where the land mines are. Experience has taught you that someone *will step on one… it’s just a matter of time. That’s why we have certain tools and practices, like unit tests, regression testing, load testing, continuous build servers… »

How to get old extensions to work in newer versions of Visual Studio (specifically, how to use the "Visual Studio 2013 Color Theme Editor" in VS "14")

I’ve been playing around with VS “14” and the new C# 6 features, but the default theme is burning my eyes out. I tried to install the Visual Studio 2013 Color Theme Editor, but it threw the following error: You can get around this by modifying the manifest file. Open “ColorThemeEditor.vsix” using a program like 7-Zip (the file is just a zip file). Extract the “extension.vsixmanifest” file and open it in a text editor (Notepad is fine). Look for the following section: Note the left square bracket, but the right parenthesis. Here’s the meaning (you can »

Visual Studio - Add File As Link

We have a particular project in our solution at work, serving as a data access layer. It contains classes with two purposes: A few generic classes that can accept a few interfaces and actually handle retrieving any requested data Many other classes implementing those few interfaces, which request specific data (employees, customers, etc) Then someone on the team created separate projects with new classes to request data. They needed access to the more general classes in the first project, but simply referencing that project would pull in all kinds of references to other projects along with it… references the new »