Tag Info

Hot answers tagged

8

This is very possible. If you have defined an identical namespace and type name on different assemblies (or in your project and the added assembly), you will get a conflict with any code that tries to use one or another of these types. If you ensure you have unique namespaces, as do your references you wouldn't have this problem. Another possibility has ...


7

How about an introduction to functional programming? You could talk about: what functional programming is introduce F# show how to do functional programming in C#. A good book in this area is Real World Functional Programming: With Examples in F# and C#. There is a good presentation about functional programming in C# on InfoQ: Functional Programming with ...


6

This question is hard to answer without knowing the skill level of you and your coworkers. The fact that nothing has came to your mind yet, may be an indicator that you should alter your idea a bit. Instead of long monthly meetings, I would do short weekly informal talks about a topic that recently sparked the interest of you or a fellow co worker. For ...


4

Stepping through the code can be great at determining functionality. But I have found the more complex an application is, the more likely you are to be bounced around in the debugger and get completely lost. I would focus on understanding the business rules of a particular piece of functionality of the application. Ideally, focus on the simplest part. ...


4

A good starting point is the IEEE standard on Software Quality Assurance Plans. There are many factors to consider -- How do you manage the QA process? What standards and conventions will your team follow? What are you metrics? (That is, what items will you measure and how will you measure and report on them?) What audits will you perform to assure that ...


3

We do a similar thing where I work, a monthly "developers meeting" where people are encouraged to share new things - mostly in the C#/ASP.NET field, but we also have front-end developers talking about HTML and Javascript stuff. Anyway, here are a few tools that I have showed people in recent months. You might like to check out some of these, if you haven't ...


3

I would suggest bringing up topics that not only provide your co-workers with some new found knowledge but may also improve your code base. Is there anything that is going on that you're not too keen on? Talk about a better way to do these things. Some other things: LINQ: As was suggested, this the "latest toy". Beyond that, it can really clean up some ...


3

You're probably going to want at least one unit test assembly per assembly in the system. You could argue that it might be worth splitting business logic tests into multiple test assemblies, say "BllTests.Customer, CllTests.Product, BllTests.Basket" etc. The worst thing you can do is stick them all in one big assembly, it's the equivalent of having your ...


2

I would listen to suggestions on separating out testing assemblies from production code, and also splitting testing assemblies into seperate components or concerns. Also a Continuous Integration server will help run your unit tests for every build and will report to you when unit tests are failing so that the build or tests can be addressed. Just remember ...


2

Seeing as nobody else mentioned this, you asked: what are the possible ways to mitigate this There is a clean solution just for this case, without constraints, and without annoying workarounds. You can define Assembly alises so that the compiler would know which ones to refer to in the right place. Have a look at ...


2

Most overwhelming systems, in my experience, have at least a few key parts that seem scariest. I pick one and try to understand just that one. Knowing that key part makes it easier to understand its related parts. My favorite approach to doing this is to use a sequence diagram. To me, a sequence diagram provides me with the picture I need to understand how ...


1

How can I follow the code to low level functionality in order to get a better grasp of what is going on at a high level? Short answer: you can't. Longer answer: Any non-trivial application is going to be too big very soon for you to try and understand it in a bottom up manner. This gets worse as soon as a framework and/or patterns like observers are ...


1

Like you, I always step through the lines in the code base to get a basic feel. I know how you feel, one time I got hired in the 10th iteration of a large scale web project. Its architecture was one of the prototype's for http://webformsmvp.com/ . So it was totally new and we we're using commerce server 2007 too, no one in the country had experience with ...


1

Instead of diving into the details of security authentification too soon, I would strongly recommend to focus on the "real" or "business" use cases first, and what kind of application system you have in mind (in terms of number of expected users, expected lifetime of the application, general security requirements depending on the types of data available, ...


1

Yes, this is very possible. Let's say you added a reference to some DLL which uses the old version of Lucene.Net and you want to include the latest version. You could solve that problem by using extern aliases: http://msdn.microsoft.com/en-us/library/ms173212.aspx


1

You can put as many different versions of an assembly as you want in the Global Assembly Cache provided that they are strong-named. This may help you if you want different applications to use different versions of an assembly, machine-wise. However using different versions of an assembly in ONE application will still get you in trouble. What is the reason ...


1

An introduction to Code Contracts, what it is good for and why, could probably be a good idea. Even if you don't use Code Contracts, it might learn your programmers to think more about what a method exactly should do. This should give you cleaner methods. After covering Code Contracts, the next step could be Pex. Pex can create unit tests automatically, by ...



Only top voted, non community-wiki answers of a minimum length are eligible