Allow Me To Share My Toolset Choices for Developing In .NET





0/5 (0 vote)
My toolset choices for developing in .NET
There was a question in a tech Facebook group I co-manage about what tools you’d use if starting a new project today.
I don’t know for sure. It depends -of course- is the expected answer. For example, there’s some idea I had in mind I considered using MongoDB or CouchDB for, while still using .NET, and then I wasn’t sure if I go an extra mile in DB, I’d go for Node or Rails as well or would prefer .NET for my personal productivity. I also often use Node/Bower when checking libraries with many dependencies.
So, for this question, I thought about what tools I might use in a company project. Thinking back, I found that most tools I use now are good enough for what they do. So, I thought I’d list these.
These tools are my personal experience though. While some of them are widely adopted in Readify, some others may have been specific to some clients or Readify teams I worked with. Every team is free to choose the tools that work best for them and make it easier to deliver high quality deliverables in sensible time, so, even if you are at Readify, your mileage may vary…
The Tools
Server Side Web
- Latest ASP.NET MVC
- Sometimes hosted on Azure
Database
- SQL Server (or SQL Azure, although I don’t like SQL Azure, because it’s not compatible with some scripts generated from SSMS, which I sometimes use to generate migration scripts)
- DbUp for DB migrations (there are some other nice options now)
- Special SQL views + Web API OData + MS Excel for reporting
Client Side Web
- Angular.JS on the client when I have the choice, Knockout.JS and jQuery UI (being deprecated now) at some big client I keep going back to every few gigs
- LESS for CSS, or SASS (SCSS) when the CSS is handled by one of our favourite design agencies
- Chrome devtools for web debugging (obviously), unless it’s IE issue of course.
Mobile
- Phonegap (most just the open source part of it, Cordova) and Ratchet CSS framework (considering alternatives, like TopCoat) for mobile development, with Angular.JS
- Considering Xamarin as their work seems to be VERY cool, and I recently get access to their stuff via my company (OT: Also considering Neo4j DB for similar reasons)
IDEs and Text Editors
- Resharper and VS Web Essentials for productivity when using Visual Studio (often latest version). Considering buying NCrunch as well
- Sublime for ad hoc editing
Testing
- Whatever .NET testing framework the team ends up using
- Jasmine or QUnit for JS testing, often with Chutzpah test runner
- Selenium, often with Coypu and Chrome driver for functional tests
CI / ALM
- Either TFS (VCS+Build) or git + TeamCity, depending on gig (and when I have choice). When using TeamCity, the team often also uses TeamFlash and a physical build light
- TFS Scrum Work Item tracking, or Trello sometimes for Adhoc stuff. Some clients require Jira.
Internal Communication
- Several kinds of wikis used by different clients, often with OneNote
- HipChat for team communication, sometimes Skype and/or Lync as well
- AnswerHub (Stackoverflow clone) for internal questions forum where I can safely quote client sensitive information in my question
- Yammer for internal company social network
How About You?
What tools do you use when developing?
Let me know in the comments, via email, or on twitter!