I've created an improved textual parsing algorithm, as a part of my hobby project. In comparison to existing ones, it provides better performance and memory efficiency. I haven't published my project yet. The question is, is there any way I can convert this research to a PhD? Or anything else I can do to improve my scientific karma? (I'm not a professional scientist, just a programmer with bachelor's degree). How much bureaucracy does this involve?
What you should do right now depends on the nature of the improvements that you have made:
- If your new algorithm achieves its improvement due to some shift in how you represent or think about the problem, then it's probably worth publishing. You don't need to be in any special position to publish: anybody can write a paper. Look at where the competing algorithms that you outperform are published, and how they are presented and evaluated in those papers, and you've got a good template to start from.
- If your new algorithm is mainly an improvement because of a whole bunch of little tweaks and optimizations, or because of how you've coded it, then it's probably not worth publishing, but definitely worth sharing as a software engineering artifact. It may not be scientific karma, but it's definitely computer programmer karma.
Getting a Ph.D. is a whole different matter, which involves a lot more than just doing a piece of research (though that's certainly part of it). If you want to pursue a Ph.D., it will be a multi-year process with a lot more scientific contributions involved. This work that you have done, however, could definitely be helpful evidence of research ability and help you get admitted to a program.
I'm also "just a programmer with bachelor's degree".
I've been having a hobby project for several years. Some time ago I realized that my project could be interesting from the scientific point of view (it's not a groundbreaking result, but it has some novelty and it's somewhat surprising).
I wrote a paper as an independent researcher and submitted it to a relevant conference. The paper was rejected, but I got very meaningful and valuable feedback from the reviewers.
After a lot of work I had the second version of the paper. This version was much better and it was accepted to a good ACM conference.
I'm not sure if I'm going to pursue a PhD, but as far as I understand, a published paper is definitely a plus for a PhD admission. I didn't encounter too much bureaucracy (nobody was concerned about my lack of academic affiliation), but writing a paper is a lot of work. Also be prepared to pay $$$ for a conference ticket if your paper is accepted.
The short answer is that you may be able to, but it's unlikely.
In more detail, performing academic research requires much more than an interesting finding. Researchers requires domain-specific expertise, familiarity with past research (both successful and unsuccessful), ability to actually perform the research at hand, knowledge of how to write, submit, edit, and respond to comments for an academic journal, among other skills.
From your post, it appears that you may have found an interesting text parsing approach. How does that fit in to the current approaches described in academic literature? Are others doing work similar to it? Has it already been proposed? What are the pros and cons relative to other work, both past and current?
From the perspective of a PhD thesis, you would have to not only be interested in the algorithm itself, but finding the answers to most of the questions listed above. At that point, you could see whether your algorithm may be able to lead to a thesis. If that's the case, then you'd have to go through the trouble of getting accepted to a graduate program which is host to a professor doing similar research, getting into said professor's lab, and working through related coursework, yadda yadda yadda.
Basically, it's possible, but it would be a long haul.
Is it really novel and useful?
A big issue is if the contribution (algorithm in this case) is actually academically novel and useful. This is a nontrivial question to answer and requires an expert in the field or a serious review of academic literature to find out what exactly is the state of art for this problem.
When people have made an improvement "in comparison to existing ones" then usually, sadly, it means "in comparison to widely used existing ones". The criteria that matters is "in comparison to the best results ever published anywhere" - for research to be publishable you'd have to reasonably claim that you already know everything that has been tried before for this problem and are comparing against the best approaches known to other academic experts in the field.
If you haven't verified this, then it is quite likely that the same thing or something offering much better results have already been published elsewhere Common knowledge, textbooks, widely used toolkits, etc usually lag the 'bleeding edge' by years or even decades.
If someone else has done and published this before (doesn't matter if you knew this), then it's not novel research relevant to a PhD thesis even if most people are not aware of it and are using something inferior.
If it is novel and useful, and you want academic credit for it, then this credit is measured in citable publications. Blog posts and public source code don't really count as that. In Computer Science, the usual venue is respectable academic conferences and publication in their proceedings (for an 'improved textual parsing algorithm' http://idibon.com/top-nlp-conferences-journals/ may be relevant). Respected venues tend to be rather competive with low acceptance percentages. As an alternative, a solid academic-style paper on arxiv.org may be appropriate.
If you think you have done some research, just show your work to a professor in your department who has similar research interest to your research project and ask him your questions about your research. That professor can tell you whether you really have done some valuable research, whether it can be published or you can work more on your research and improve it.
There are some Master's Program, like Concordia, that call themselves "life experience" Master's Programs. I think they lean towards documenting professional experiences, but if your hobby experiences are sufficiently documented, perhaps that will count.
For the first time, I've seen such degrees on a CV for a very special kind of instructor's position. I think it got the person through the door, and the person got the offer. When we found out it was a life experience Master's nobody on the search committee-- including me -- seemed to mind. Human Resources is having an interesting time with it, but I think that correctly used such degrees can have value.
Rather than aiming at a Ph.D you might do better to look for a suitable M. Phil programme. It may be possible to achieve an M.Phil purely on the basis of a dissertation, but even if there are other requirements, it may be possible to enrol in a distance learning scheme which would give you access to mentoring etc. and allow you to focus what was previously your hobby in a more academic direction.