About Jonathan

The platform’s rookie. I spend my days honing my machine learning skills, coding in Python and rock climbing (in no particular order).

Generating Synthetic Genomic Data

Applying statistical methods is a large part of the work of a bioinformatician. Apart from some more classical techniques, machine learning algorithms are also regularly applied to clinical and biological data (notably, clustering techniques such as k-means). Some techniques such as artificial neural networks have recently found great success in areas such as image recognition and natural language processing. However, these techniques do not perform as well on small datasets with high dimensionality, a problem known as "the curse of dimensionality". [...]

By |2017-04-29T23:00:58-04:00January 7, 2016|Categories: Bioinformatics, Python|Tags: , |0 Comments

Mutable Default Arguments in Python

A member of the platform recently stumbled upon a bug in his python code. Once we got to the bottom of it, we were surprised to find that the bug in question had been caused by a peculiar behavior of Python. Let's take the following code as example : def foo(bar=[]):     bar.append('a') return bar Intuitively, this piece of code might seem like it ought to return the list ['a'] whenever it is run. In practice, it is not quite so. >>>foo() [...]

By |2017-05-01T09:53:39-04:00August 7, 2015|Categories: Python|0 Comments

Client-side storage on the web

Web applications can provide users with cross platform tools which can easily be maintained and updated. It is therefore little wonder why bioinformatic tools are often published as web applications. However, some legal as well as computer security considerations can arise while operating on certain types of data  (e.g. medical or proprietary). In such cases, it may be preferable to store some of this data locally on the client's browser. Local data storage options are plentiful but can quickly become a little disorientating. Here's a small rundown [...]

By |2017-04-29T15:47:47-04:00January 28, 2015|Categories: Computer science|Tags: |0 Comments