I started my internship with a biological data analysis institute yesterday (i.e. have spent two full working days there), and I am very concerned that I am expected to have programming skills that I really don't have. My own background: I have just finished a theoretical physics degree and next year will be persuing a Masters in Mathematics. I have done some programming in my course (an intro to MATLAB, C++ and python in my 3 years respectively), but everything has been very geared towards physics applications. e.g. simulate many body collisions, plot a graph of the transmitted intensity for some funky aperature etc). What's worse, I now realise that we only really looked at very basic features of these programming languages, and basic packages. We never learned the fundamentals of 'how a computer thinks', which is why I am having difficulties now.
I did OK in our programming tasks, and this gave me a really skewed perspective of what it means to know a programming language. I put 'python, MATLAB, basic C++' on the 'skills' section of my CV, not really realising that my knowledge of python really is 'basic' at best. That's the paradox I guess. It feels like with computing, you only know how little you know after you reach a certain level of proficiency. I did not mean to deceive anyone with writing the skills I thought I had.
In any case, I have been struggling over the last couple of days. I realised that at the institute, everyone is basically a programming pro, and the interns are generally computer science students or statisticians. While my degree is numerical, I really have done pathetically little in the way of real data analysis and computing.
I didn't know about Anaconda for instance. I have only ever used simple python libraries like scipy and numpy, matplotlib. I was introduced to it today. But the thing I am struggling with most are things like: what folders does the (programming language? interface? Environment? I don't even know the right word to use here :() have access to? When I want to read/call a file, which folder does it have to be in? How can I check my path without exiting my working environment? etc. Today I wasted 2 hours simply because I called a file name by the name of a python module that I was later calling. I wish I could say t was 'by mistake'. In reality, I didn't think this would be a problem. The text file has an extension anyway?
As you can see these are small things that really require PROGRAMMING EXPERIENCE to be ok with. I don't think that cramming a python book will help.
I can tell that the other members of the team are getting annoyed. I don't ask too may questions (nor too little I think). But if I ask a question, it's often too basic. And if I don't I waste time.
The person who gave me a (long) skype interview- the head on my group- is returning tomorrow and we are meeting for the first time. I am quite embarrased, especially as I know they were considering other candidtaes.
Any advice on the best way to proceed, or how to learn what might be useful quickly, would be much appreciated.