Sign up ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free.

Well, the question is in the subject, but I would repeat - what is the best programming/developer productivity tool you have coded yourself.

A small console application or a script you hacked in a day or two, and then wondering why have you waited for so long and haven't coded it earlier.

Something that automated the (now only a 10 seconds long) process which was a mundane 20 minute manual task before. Something that not only made you a day, but continued to do so for another month or even longer. A pinnacle of a DRY principle, even though it was just comparing a two xml files which could not be easily compared with a Beyond Compare. A small living piece of software that makes proud of.

So, what it was for you?

share|improve this question

closed as not constructive by Adam Lear Oct 15 '11 at 15:12

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

Man I am so tired of threads like this getting closed. – zhenka Oct 15 '11 at 18:20
@zhenka Posts like this would find a great home on a site like Reddit or in our Programmers Chat. They are not a good fit for our Q&A format. – Adam Lear Oct 15 '11 at 22:15
@anna-lear how should I re-formulate the question to fit into your Q&A format? – user18404 Oct 15 '11 at 23:36
@zhenka no worries mate, I will reformulate it to fit into Q&A format and will repost. – user18404 Oct 15 '11 at 23:37
@Andrew Poll questions don't fit well on Stack Exchange and I'm not sure what you were asking for beyond a list of stuff that other users here have done, so I don't know how to approach reformulating this question. Check out the faq section that describes problematic questions and see if your question can be turned into one that doesn't hit those issues. – Adam Lear Oct 15 '11 at 23:54

3 Answers 3

An Emacs function that would complete names based on an abbreviation, rather than a prefix. That let me type F I S Control-; and get `FileInputStream'. Has saved thousands of keystrokes per day for many years now. Much better than simple completion; there are often dozens of names starting with the same words.

share|improve this answer
I love that ReSharper does this. Nice one. – anaximander Apr 19 '13 at 11:11
Yes! very useful. Abbreviation expansion is also available in vim :abbr omg ermagerd!! – valbaca Apr 19 '13 at 18:00

I'm mainly programming in the languages I've implemented myself - in domain specific languages built on top of the mainstream languages. This approach increases my productivity dramatically. And, of course, over years of practice I've built a number of tools and libraries I'm using to simplify the implementation of such languages - parsing engines, compiler components, virtual machines, ready to use language building blocks. Now I'm free from writing any kind of boilerplate code.

Another very useful thing was a set of tiny tools built on top of Elsa C++ parser (later switched to the Clang front-end) for analysing the legacy C++ code base. Saved me a lot of time with semantically rich searches and such.

share|improve this answer
Steve Yeggie would be proud of you. – Job Oct 15 '11 at 14:03
I've done a fair bit of the same - particularly a program that was originally comparable with treecc but specifically targetting C++ and with some more sophisticated tricks, and which gained a lot of related tricks in the few years since I first started it. I wouldn't say it has the potential to dramatically improve my productivity, though - it's mostly only useful when implementing DSLs anyway - it's good for working with flexible data structures in general, but mostly that means ASTs. It's a home project, and I've been teetering on whether to release it and, if so, how for some time. – Steve314 Oct 15 '11 at 15:11

I created a swing application that allowed me to draw the ER in the notation we learned in college (a bit different notation that what used now in workplace). After drawing the ER, a click of button and it is turned into 3rd normalized form of DB on MYSQL. Used it while in college :) :p

share|improve this answer