I do not think learning C or C++ is necessary at all. You should be familiar with basic command line UNIX/LINUX, and knowing some basic shell scripting, or PERL, and/or PYTHON is certainly useful. One of the key areas to learn is file manipulation - parsing, searching and extracting data from files, converting file output formats for downstream analyses - all this can be done using simple shell or PERL/PYTHON scripts to manipulate files and this sort of thing comes up a lot as you work through a complete analysis pipeline.
R is strongly recommended as there are a host of tools available in R and you would be severely limiting your options if you cannot work with R.
Also, look into what software your Institution may have site licensed - Matlab, SAS (and/or JMP Genomics) and so forth can be very useful for analyses, but such statistics tools have their own scripting languages and syntax. But, if such tools are available to you under some sort of site license, then often that comes with the opportunity for professional instruction in those tools from the vendors themselves.
Also, you may have access to fully GUI tools like Partek or Agilent's NGS software packages. These require no command line knowledge to use, but they are also not simple nor simplistic tools and can have a steep learning curve as well. Again, if your Institution does site license such software, you should have access to professional training from the company's support people.
If you are carrying the analysis all the way through from raw reads to final, interpreted results, then be sure to not neglect learning the statistics of NGS data analysis. It is not enough to just be able to run code, you have to understand the analyses that the code is implementing as well so you can make informed choices of which tools to use.
You can start with some Linux, Perl/Python, and R. And I suggest this paper too: http://www.ploscompbiol.org/article/info%3Adoi%2F10.1371%2Fjournal.pcbi.1000589
I do not think learning C or C++ is necessary at all. You should be familiar with basic command line UNIX/LINUX, and knowing some basic shell scripting, or PERL, and/or PYTHON is certainly useful. One of the key areas to learn is file manipulation - parsing, searching and extracting data from files, converting file output formats for downstream analyses - all this can be done using simple shell or PERL/PYTHON scripts to manipulate files and this sort of thing comes up a lot as you work through a complete analysis pipeline.
R is strongly recommended as there are a host of tools available in R and you would be severely limiting your options if you cannot work with R.
Also, look into what software your Institution may have site licensed - Matlab, SAS (and/or JMP Genomics) and so forth can be very useful for analyses, but such statistics tools have their own scripting languages and syntax. But, if such tools are available to you under some sort of site license, then often that comes with the opportunity for professional instruction in those tools from the vendors themselves.
Also, you may have access to fully GUI tools like Partek or Agilent's NGS software packages. These require no command line knowledge to use, but they are also not simple nor simplistic tools and can have a steep learning curve as well. Again, if your Institution does site license such software, you should have access to professional training from the company's support people.
If you are carrying the analysis all the way through from raw reads to final, interpreted results, then be sure to not neglect learning the statistics of NGS data analysis. It is not enough to just be able to run code, you have to understand the analyses that the code is implementing as well so you can make informed choices of which tools to use.
Agree with Michael Black. There are numerous "bread and butter" tasks (parsing, format conversion, etc) that are usually project-specific and consequently that the individual winds up doing herself, so good scripting skills (e.g. Perl or Python) are an absolute must. The extremely sophisticated tools that are widely applicable (like for alignment, detection, etc) are written by experts in low-level, compiled languages. These areas area pretty far beyond the skill set of the average analyst and are more deeply set into computer science. So again, "power-user" skills are really all that is needed here: knowing the tools via their documentation and being able to string them together into a useful "pipeline" using command-line skills and a scripting language. The second major requirement is some level of understanding of statistics, especially hypothesis testing, because again, scientific hypotheses are project-dependent and you will find lots of ready-made tools that you will have to decide how to use and how to interpret their results. For economies of scale, a language like Perl also has all of the standard statistical infrastructure available as libraries, so you don't really have to learn lots of different task-specific languages. Hope that's helpful.
Thank you for the information. I know there is no shortcut to knowledge, but me having no background in programming is really affecting my work-progress. Hopefully, I'll get a headstart with the tips you have given.
I agree with previous replies that C+/++ wont help you. Best option as per my experience would be to go for R. If you don´t go for any basic R course, then just learn from internet (very nice you tube videos) and then after basics you can easily go for specific packages in R as per your need and you will have enough command lines and help through web.
Here are some free software tools that you can use. These point and click software that don't require any programming knowledge. Let me know if you find these useful.
C/C++ can be quite useful actually, especially if your concerned about memory allocation. Typically, people say perl / python / R because that's what other people use, and because they are conceptually easier (R is probably an exception to this rule) to use. In that sense, yes they are useful to know so that you can understand what other people are doing. But when it comes down to it, most NGS analysis programs are written with C/C++ and distributed as executables (e.g., blast, blowtie, trinity, etc). So what's really important, IMHO, is that you understand shell (e.g., bash). Once you understand how your shell works, you can use whatever programming language you like to invoke commands. Actually, I bet you can perform most if not all of these analyses with just shell scripting.