How to encourage positive developer behavior using the IDE?

The goal of the IDE is to increase productivity. They do a great job of this. Refactoring, navigation, built-in documentation, automatic completion help to significantly increase productivity.

But: Every tool is a weapon . The IDE itself helps to create fragment code. Some features of the IDE are an invitation to create bad code: code creation, code formatting tools, refactoring tools.

Using a redundant IDE tends to isolate developers from the necessary details. It’s good that you can start working , but at some point in your career you must figure out how to start the process. You can ignore this detail for some time, after all, they are important for writing a working product (together with bolts together, which works in 90% of cases).

How do you encourage the positive behavior of other developers working with the IDE? . This is an old question, how to copy and paste.

To get the right impression: developers must have maximum freedom to mobilize their maximum creativity and motivation . They can use the IDE and all related tools as they see fit. No one should impose draconian measures on them. I do not want to demotivate and force someone to do something. Good behavior should be encouraged. It should scratch a little if you do wrong. On the same line as the “take speed” SO indicator (and reputation). You can ignore it, but life is better if you follow the rules .

(The solution should work in the given setting. You can ignore reviews, change personnel or additional education as potential solutions.)

+4
source share
5 answers

Train your IDE, not train with it.

Customize the code by formatting the way you (or your team) want it. Heck, even turn it off when it makes sense. I have never seen an IDE align something like this with a reasonable combination of tabs and spaces (where \t is obviously a tab character):

 { \tcout << "Hello " \t << (some + long + expression + \t to_produce_the_word(world)) \t << endl; } 

In languages ​​like Java, you cannot escape patterns. The best option you have is to check the generated code, ensuring that it will be the same as what you wrote manually. Change it as needed. Configure your IDE to generate the exact code you need, if possible. Eclipse is pretty good at that.

+3
source

Know what is happening under the hood.

Be aware that your IDE does indeed call the compiler. Have some idea of ​​the checkboxes that it passes. Be able to call the compiler from the command line.

Know about the runtime system. Remember the checkboxes that are used or necessary to run your program. Be able to run the program from the command line.

+1
source

I think, before anyone uses the RAD tool of any type, they should be able to write an application from scratch (scrambling that connects the components of the structure) in a notebook, potentially on a computer that is 10 years older than the current technology: P. Not knowing that the paradigm / framework leads to the wrong code, novice developers who are just learning something at a mile see the platforms for which they are developed. Perhaps they should do this in several technologies - i.e. GTK programming is completely different from MVC, which is also different from SWING and .NET.

I think that the end result should be a developer who thinks about the smallest details of the problem before moving on to thinking about how they will write the interface to it in a specific RAD environment.

+1
source

his open-ended question, but ...

We have an Eclipse format file that everyone shares, so we all format the code in the same estate. (Except for one lonely InteliJ guy we have).

Everyone uses a dictionary file. This helps to remove all red lines from the code. Make it cleaner and more readable.

I run EMMA over the code to find out who is not testing their code, and then moans on them.

The main problems that we face are that most of the team does not know all the features / capabilities of the IDE (eclipse). He did not know about CTRL + O (twice) or autocode. All I can do as a “hotkey master” is continuing to share my knowledge with them to help them become more productive.

I look forward to the day when my problem is that they automatically generate as much as possible. Instead of finding errors when the wrong value is returned from the getter method due to a typo.

0
source

An attempt to develop (at least sometimes) using only a text editor and starting compilation, testing, etc. from the command line.

Entering commands will be very tedious, so create scripts or (even better), study the rake, ant, msbuild.

If the IDE generates code for you, and code generation is really important (for example, generating classes from xsd or proxy classes from wsdl), try to figure out how to start code generation from the command line and then connect the code generation to the assembly (so that you never want to edit the generated code).

The idea of ​​auto-formatting code is great, but usually it turns your code into a mess. If you have less code, minor formatting inconsistencies are simply not a big problem.

Adding code quality tools to your build style checks, class and method sizes, complexity, code duplication, test coverage, etc. (complexian, simian, flog, flay, ndepend, ncover, etc.) will prevent the creation of the code generated by the IDE.

0
source

All Articles