My first JavaScript application: Translating a nucleotide sequence

Hello folks,

As you can see I've finally gotten around to fixing the look and feel of the page, taking it back to 90's era self-styled CSS. Perhaps in some distant future I will give in to the allure of Bootstrap, but for now I enjoy putting things together from scratch. It is the best way to learn, though occasionally frustrating. Before I go any further I would like to thank my friend Oliver for helping me get started with this website, both with advice and with the painful process of hosting static files (man what a pain!). For loads of really well put together information on getting started with web development, I highly recommend his blog

Now that I have the infrastructure set up I can go ahead and put together web applications, which has been a goal of mine for quite a while. With my current busy schedule it took some time, finding an hour or two here and there to spare, but my first bioinformatics app is complete. It is a very basic tool for nucleotide sequence translation, with additional functionality for reversing and reverse complementing the sequences. It can process both input from a web form and a fasta file upload. I'm rather proud of it!

Then again, I've reinvented the wheel. But that's ok. Wheels have never stopped being useful. The purpose was to immerse myself into Javascript and get a feel for front end programming beyond the onclick event. Working with the DOM is unlike any other sort of programming I have done and came with quite a few hair pulling errors. I must thank John ( for helping me through the worst of it. And I do hope someone besides me finds this tool useful. Having control over every detail I was able to incorporate a number of functions that I felt were either missing or not well organized on other websites. Reversing and reverse complementing a collection of sequences can be done with one-liners in Unix, but the intent is to have this available to people who do not know the concept of a shell. And of course I can improve and make changes based on user feedback.

On that note, in the coming weeks/months I will put together a way to get in touch with me directly. It's a simple task but someone has to do it and this isn't my day job. I will also update this blog to accept user comments (and do some other things). If you already have a way to contact me and have feedback, I would love to hear it.

Thanks for reading!