I want to increase the efficiency of my work. I noticed that I often do this:

  1. I am writing code in the IDE
  2. I open Notepad ++ for writing cmd-script or python-script
  3. I open cmd.exe
  4. I watch the results in the console and repeat the cycle

I note that the scripts are different and each time custom. Scripts solve various tasks from collecting any statistics and analyzing logs to testing and generating test data. And returning to work in the next. since these scripts can lose relevance and others are being written.

Can this be improved?

I agree that tests can be issued in the form of unit-tests or tools with a connection in the form of post-build-events, but not all tests need to be made out in this form. Sometimes it is just a necessity for this “session of work” and after it is finished, then after returning to the next time they (tests), as a rule, lose their relevance.

UPD: Now I miss the console in NetBeans. Because of its absence, I have to press Win-R -> cmd.exe. This "breaks" the entire session , because distracted.

PS: How to create tags, but I do not know how and therefore I can not relate the question to the desired subject

Closed due to the fact that it is necessary to reformulate the question so that you can give an objectively correct answer to the participants Dmitriy Simushev , Suvitruf ♦ , Mike , aleksandr barakin , Nick Volynkin ♦ 18 December '15 at 8:02 .

The question gives rise to endless debates and discussions based not on knowledge, but on opinions. To get an answer, rephrase your question so that it can be given an unambiguously correct answer, or delete the question altogether. If the question can be reformulated according to the rules set out in the certificate , edit it .

  • > How to create tags, but I don’t know how and therefore I can’t relate the question to the right subject. Just enter them in the Метки field when you create a question. - Nofate ♦
  • one
    For starters, try to summarize the available code. If some script (or part of the script) is used in several projects, perhaps with some modifications, try to isolate the general code in the function, and put them into a separate library. And try to use further. Then, I would advise to go to unix shell instead of cmd.exe. For example, try cygwin . Writing scripts on bash is a million orders of magnitude more convenient than cmd.exe. Another alternative would be Perl. - VladD
  • @VladD well, there are quite native-win implementations of bash, zsh, ksh ... As for the competition perl vs python - so it’s hard to advise. For single-liners, perl is definitely better, but if there are more lines, then other considerations are added. And why add more pearls to python? - alexlz
  • one
    @alexlz: cygwin is good because the whole package goes with it at once: sed, grep, awk, bc, sort (and even gcc and flex / bison, if necessary). Pearl in addition to the python, it seems to me, is needed as an advanced shell: for scripts. A new good language does not hurt, and in general, "Let thousands of flowers bloom." So not vs , but ad . - VladD
  • @VladD: Yours: >> To begin with, try to summarize the existing code. I pointed out. Will not work! Every time the tasks are different! ;) Today, for example, I write virus detection, but tomorrow it may be a project of a specific notebook for some client. And after two days in general, the virtualized code optimizer in the executable file. And after three days ... This is of course all abstract, but I want to try to convey the idea that projects are different and generalize will not work - sys_dev

3 answers 3

I will do the answer, or something.

Will not work! Every time the tasks are different!

It turns out checked. At the same time I will try to answer the question "what kind of IDE" is better (yes, in fact, see below).

I solve all "one-time" tasks in a simple text editor (mooedit, if you're interested). Several external utilities are hung to it that do all the dirty work: syntax checking, source formatting, debag-release build, launch with output to the console, launch of the debugger. Of course, depending on the language, the set of actions may differ (what a debag build in perl, for example; and in c / c ++ syntax checking and compilation are one and the same). But the meaning is the same: first, you debug the “one-page” code (and maybe the algorithm in general, and not in the language that is needed ultimately), then you attach it to a large project.

So here. Such "small" code simply accumulate mountains. And small in the literal sense, from a couple to ten lines. Once you throw it out, you throw it out two, and on the tenth (or the hundredth, if you’re really stupid) you’ll think about it and take it into a separate snippet. At the same time do not be lazy, and write a couple of lines of comments: what, why, why.

The conclusion is this. If you do not need this one-time code - yes, and figs with it, throw it away and write again. It is necessary - look for the means to save and use it, and not blame the "wrong" IDE. When all the work initially goes to the garbage, then there is nothing to be soared about in principle.

  • Well ... as if ... I’ll give the metaphor "We started to play the wedding, and finished singing for the dead." You are all too mixed up and thoughts from different sides of the programmer kitchen are mixed in one pile. Let's not confuse warm with soft ?! There is a clearly marked situation in my post. If the situation is not clear ask clarifying questions, ok? This is the first. Second: I do not recommend to speak for someone else what he did not say! I mean that your "don't blame the" wrong "IDEs" are not consistent since I didn’t scold any of the IDEs! If you want to help me understand the essence of the question, otherwise follow me - sys_dev
  • one
    I understood the essence of the question as follows: you want to master some kind of advanced technique (which, in fact, described and is). But something in the organization of work bothers you. What exactly - described in the main post. So for me this is quite a typical case: you must first put things in order "at the bottom", then it will be easier to move upward. And not vice versa. - user6550
  • Yours: "I understood the essence of the question as follows." No, not even close to understanding. Read again or get enough sleep :) Anything can happen, maybe you worked a lot today. - sys_dev
  • Try re-reading your post again. You describe the problems. I guess their causes. No wonder there is no understanding - you cling to something else and don’t want to let it go :) - user6550

well, at least I can advise you on the place Notepad ++ used Geany wrote there a year, clicked on the button and he started it himself where you need it and output the result (in particular for Python, launched the console, launched the script, showed you how it all looks.)

And then you will have 2 steps left.

  1. run the IDE
  2. launched Geany

Good luck to you.

    I can recommend Hunt Andrew’s book The Pragmatic Programmer. There in the third chapter is about tools. Even if you don’t find new tools, it’s not a waste of time, one of the best ones I’ve ever met.