Visual Basic was how I learn't to program. I then learn't C and C++. I have to admit that I was put off VB after Microsoft mashed .Net on top of it. I have not used VB now in 8 years so I have forgotten much of it. From my memory, it is an ok language that can be used to do many things but there are now better tools out there. c/c++ for high performance code, c# or java for applications, python for easy to use smaller programs. I doubt you will get any real performance gain from using custom math functions. Things like sqrt is actually reasonably fast and run on a sqrt register on the cpu ( for desktops at least). Trigonometric functions can be slow and some performance can be gained by using tables or a much much simpler algorithm. Now I don't know how complex the processing is so I am going to make some probably wrong assumptions. When it come's down to it, reading files from a hard drive, even a SSD is many factors slower then reading from ram. There is the possibility that the code spends a lot of wasted time waiting for the data to read. Other things that can greatly improve performance is trying to make the data cache friendly. A L1 cache read is much much faster than reading from ram. If you are working with genome data, then the data may already be fairly packed and relatively cache friendly as is, depending on how you are reading it. Other possible improvements would also include using multiple threads. For something that is more advanced, you could also use SMID (Single instruction multiple data) to process more data at once. Using SSE or AVX registers once can process 4 floats, ints or doubles at once. You will certainly want to use c/c++ for SMID. If the algorithm can be split up hundreds of times, then running the data through the graphics card could also speed things up. As your still learning, perhaps it would be better to start off using a c++ compiler to write C code and pick up on c++ as you progress. If you used something like github or bitbucket, it would allow us to look though and give advice as well. PB666, you also have me intrigued on what sort of processing you are doing. I don't really know much about genome sequencing/processing and I would love to understand what you are doing.