I’m receiving, almost weekly, emails from undergraduate students, PhD students, or young researchers, who seek dialogue on some of my previous, or even ongoing, work: clarifications, or explanations of hypotheses, or of applicability of conclusions, for example, or (excitingly) occasionally discussion of proposed extensions of optimizations. From time to time, I also get a request for help explaining some observation/result, which may go contrary to published results (especially if it is results that I have published).
That is the very nature of science: to develop, and publish, results such that others can be inspired, can extend, can offer criticism, or can refute results and hypotheses. The Internet has enabled that form of interaction to be continuous and not just on the occasion of presenting results at a conference or a workshop, and should be vividly encouraged. As any self-respecting researcher or engineer, I love discussing my work … And in any intelligent exchange, I end up learning something.
However, I also get a non-trivial amount of emails which can be summarised into “please write my thesis for me”. These fall into a few different categories.
One very common request is “please send me your implementation of …” typically a protocol or an algorithm, which I have developed:
I’m Dr. BOUKLI HACENE Sofiane a scientific reseacher at Djillali liabes university (Algeria).
i’ve read you technical report “Multipoint to Point and Breadcast in RPL”.
I’m intreseted to simulate RPL under NS2 simulator; and i ‘ve notice that you have done simulation studies on it. So, I kindly ask you send me materials (source code , web links, papers ….) to simulate RPL in NS2.in waiting for a favorable reply
While I am always glad to share web links and paper references (although, I wonder why this “Dr. Hacene” doesn’t manage to find so on his own, but see later), I do tend to answer “no” to requests for source code, for a couple of pragmatic reasons:
- Research is competitive: nobody remembers “the second person to invent the telephone”, and being “first to publish” is important. Having a (complete, performant) implementation of a given protocol can thus be part of a competitive advantage – and developing such an implementation is a real investment. Thus, for projects where I believe that we still have contributions to make, I am reluctant to share source code.
- Often, while the implementation of a protocol (in this case, RPL) is not trivial, it is also not the hardest part: integration into the simulation framework and the whole surrounding tool-chain requires real skills (and, access to the whole tool-chain). Providing the necessary support is a real time-drain: about 15 years ago a patch to ns2 (implementing OLSR – RFC3626) was released, with which I was affiliated, and I still get, almost weekly, requests from people who have a hard time applying it. That’s the reason why I’m reluctant to release source-code for even “old” projects where we’ve made all the contributions we wanted.
Another kind of (common) requests is more of a fishing expedition:
Hi M. Thomas.
I am looking for an example of signature(MD5, SHA, …) implementation, in C++, on manet message/packet control (HELLO, TC, …) routing protocol(OLSR, AODV, …), or any cryptosystem(AES, RSA, …).
I work with inetmanet framework (windows 10).
Thanks in advance.
Best regards.
I would suspect that this is a (Phd?) student who has “MANET security” as his or her topic, and who is looking for somebody who’s already done the work in his or her place. Part of why I suspect that is that he/she indicates using the inetmanet framework, which has been abandoned for quite some time, and carries a “Please DO NOT use it with new projects” disclaimer:
Then, there’s the sort of requests that makes me wonder if “search engines” are a closely guarded secret, and that I somehow am part of a secret fellowship of those who know both that they exist, and how to use them….I got an email from a certain Abhinesh Parihar, which went (this is the entirety of the email, see screen-shot below):
sir,
loop may create in aodv if yes so please explain
I felt generous, typed “AODV Loop” into google – which returned the usual AODV loop freedom claims, as well as, as the 4th result on the first page, a link to a paper explaining how sequence numbers does not guarantee loop freedom in AODV – and sent the URL to “Abhinesh Parihar”…who promptly responded (again, this is the entirety of the email, see screen-shot below):
sir any other paper rather than this paper..:) please.
No, Abhinesh Parihar, it is not my job to do your resarch for you …
I started this text by writing:
The Internet has enabled that form of interaction to be continuous and not just on the occasion of presenting results at a conference or a workshop, and should be vividly encouraged. As any self-respecting researcher or engineer, I love discussing my work …
The emphasis is on “discussing” – an exchange, with contributions from both sides. And not, as the emails quoted above, one-sided requests or demands that I do your job for you, that I “write your thesis for you”.