Articles

Welcome to my blog dedicated to computers and technology. Although I try to focus on programming, statistics, and bioinformatics I sometimes stray to other topics on my mind. Below are several articles categorized by subject. If you are looking for something in particular, please use the search box in the upper right.

There is currently 93 articles available.

text mining

Bioinformatics

Molecular Surface Reconstruction using Marching Cubes

Constructing the surface of a molecule in 3-dimensions using the marching cubes algorithm.

Genome Browsers: 4 Free Bioinformatic Software Tools

An overview of four bioinformatics tools to visualize genomic data.

What is Bioinformatics: A Primer

What is Bioinformatics? A very broad field using computation to study biology: from protein structure analysis to writing production software for data storage and analysis. What are the requirements? Where does one start?

Bioinformatics: Sequence File Formats

A list of common file formats used in bioinformatics to store DNA and protein sequence information.

The Art of Sequence Alignment

Visualizing pairwise sequence alignments as spectrums of color and patterns.

GeneCoder - Command Line Utilities

GeneCoder provides a command line interface for automation. This tutorial introduces the command line interface for use in Molecular Biology.

GeneCoder: Common Sequence Manipulations

A tutorial on how to perform simple sequence manipulations using GeneCoder molecular biology software.

GeneCoder: Restriction Enzyme Sequence Analysis

A tutorial on performing restriction enzyme sequence analysis using GeneCoder molecular biology software.

GeneCoder: Access NCBI Remotely

A tutorial on how to access NCBI remotely using GeneCoder molecular biology software.

GeneCoder - Assembling Sequences

How to align and assemble Sanger DNA sequence trace files against a reference sequence using GeneCoder molecular biology software.

GeneCoder: Sequence Regions

How to annotate sequences using regions in GeneCoder molecular biology software.

GeneCoder Overview

Brief overview of GeneCoder molecular biology software.

GeneCoder - Common Sequences

Often one is given a DNA sequence with no annotation. This tutorial steps through the process of identifying common DNA sequences using GeneCoder Molecular Biology Software.

BLAST Alignment in Java

A tutorial for how to perform automated remove BLAST alignment using JeUtils.

JEeutils - Access NCBI from Java

A tutorial for using JeUtils to access NCBI using Java.

Books

Book Review - Ignorance: How it Drives Science

Review of Stuart Firestein's book Ignorance: How it Drives Science

Review - Big Data: A Revolution That Will Transform How We Live, Work, and Think

Book Review - Big Data: A Revolution That Will Transform How We Live, Work, and Think

Review: Doing Bayesian Data Analysis

Bayesian Statistics is a field of statistics based upon probabilities, or how much you believe a hypothesis. This article reviews the book Doing Bayesian Data Analysis by John Krushce

Review: Reinventing Discovery by Michael Nielsen

Having been a scientist for over ten years, I have seen different ends of the spectrum when it comes to sharing data and ideas. I review Reinventing Discovery by Michael Nielsen, a book describing the current state of the openess of the scientific co

Games and Graphics

Creating a Progress Dial

How to create an animated progress dial in java.

Identifying Strange Attractors

A method for identifying strange attractors.

Three Video Editing Techniques with ffmpeg

Three movie editing techniques using ffmpeg.

The Aizawa Attractor

The Aizawa Attractor

Strange Attractors: The De Jong Attractors

Strange Attractors: The De Jong Attractor

Drawing a Continuous Bezier Curve

How to draw a continuous Bezier curve from a set of points.

Programming the Lorenz Attractor

A Java, C, and Javascript implementation of the Lorenz Attractor

Modeling the Rubik's Cube with OpenGL

Visualizing a Rubik's Cube using OpenGL.

Rubiks Cube: Computer Simulation

How to computationally model the Rubik's Cube

Maze Generation Algorithm - Depth First Search

Generating Mazes using a backtracking algorithm.

Conway Game of Life in Java

Conway's Game of Life in java Swing

Evolutionary Art using a Genetic Algorithm

Creating art using computer simulations of evolution.

3-Dimensional Metaball Computer Graphics

Computer Graphics of Metaballs - Organic 3-Dimensional Objects

3-Dimensional Smoothing: Catmull-Clark Subdivision

Surface smoothing using Catmull Clark

Controlling Scalable Vector Graphics (SVG) using Javascript

Using Javascript to draw graphics dynamically on a webpage.

The Art of Sequence Alignment

Visualizing pairwise sequence alignments as spectrums of color and patterns.

Counting Sudoku Solutions in Java

How many possible sudoku solutions are there? In this article we use code and math to count the ways.

How To Create a Solved Sudoku

When I first started playing with writing a sudoku game, I took the long way to create sudoku templates. Here I provide a simple method to generate solved Sudoku puzzles.

Math

Discrete Categorical Random Sampling

How to randomly sample from a discrete list of categories, each with a different probability of being selected.

PCA For 3-dimensional Point Cloud

Principal Component Analysis for 3-dimensional Data

Identifying Strange Attractors

A method for identifying strange attractors.

The Aizawa Attractor

The Aizawa Attractor

Strange Attractors: The De Jong Attractors

Strange Attractors: The De Jong Attractor

Programming the Lorenz Attractor

A Java, C, and Javascript implementation of the Lorenz Attractor

Evolutionary Art using a Genetic Algorithm

Creating art using computer simulations of evolution.

Reaction Diffusion in 3-Dimensions

Simulating Reaction Diffusion in 3-dimensions

The Julia Set Fractal

Creating images and movies with Julia Set Fractals.

Optical Character Recognition using PCA

Optical character recognition (OCR) using principle component analysis.

Reaction Diffusion: The Gray-Scott Algorithm

Reaction diffusion represents a type of reaction and, when modeled with a computer, can be used to create elaborate shapes and patterns.

Counting Sudoku Solutions in Java

How many possible sudoku solutions are there? In this article we use code and math to count the ways.

How To Create a Solved Sudoku

When I first started playing with writing a sudoku game, I took the long way to create sudoku templates. Here I provide a simple method to generate solved Sudoku puzzles.

Programming

Preventing Hash Collisions

Steps to Prevent Hash Code Collisions

The Java Javascript Engine

Running the Javascript from a Java Application

Creating a Progress Dial

How to create an animated progress dial in java.

Discrete Categorical Random Sampling

How to randomly sample from a discrete list of categories, each with a different probability of being selected.

LinkedList versus ArrayList

Java: LinkedList versus ArrayList

GUI Builders Pitfalls

Why avoid using a GUI Builder? This article explains the downsides.

Identifying Strange Attractors

A method for identifying strange attractors.

Custom Serialization in Java

How to customize java object serialization.

Drawing a Continuous Bezier Curve

How to draw a continuous Bezier curve from a set of points.

Programming the Lorenz Attractor

A Java, C, and Javascript implementation of the Lorenz Attractor

Modeling the Rubik's Cube with OpenGL

Visualizing a Rubik's Cube using OpenGL.

Rubiks Cube: Computer Simulation

How to computationally model the Rubik's Cube

Sorting the Indexes of an Array

How to sort the indexes of an array based upon the values of the array.

Maze Generation Algorithm - Depth First Search

Generating Mazes using a backtracking algorithm.

Conway Game of Life in Java

Conway's Game of Life in java Swing

Autocomplete Drop Down in a Java JComboBox

How to program a Java Swing JComboBox for autocompletion

Enable/Disable JComboBox Items in Java Swing

How to use Java to enable/disable items in a Swing JComboBox

Line Numbers in Java Swing

How to draw line numbers in a JComponent such as a JTextArea or JTable

Evolutionary Art using a Genetic Algorithm

Creating art using computer simulations of evolution.

3-Dimensional Metaball Computer Graphics

Computer Graphics of Metaballs - Organic 3-Dimensional Objects

3-Dimensional Smoothing: Catmull-Clark Subdivision

Surface smoothing using Catmull Clark

Molecular Surface Reconstruction using Marching Cubes

Constructing the surface of a molecule in 3-dimensions using the marching cubes algorithm.

Reaction Diffusion in 3-Dimensions

Simulating Reaction Diffusion in 3-dimensions

Google's ReCaptcha Service

An overview of Google's ReCaptcha Web Service.

How to Sort a Large File

How to sort a file too large to be held in memory.

The Julia Set Fractal

Creating images and movies with Julia Set Fractals.

When to Construct a new String Object in Java

When is it necessary to construct a new String in Java?

Java: The Misuse of a TreeSet

An example for how a TreeSet in java can be misused in the context of sorting objects.

Optical Character Recognition using PCA

Optical character recognition (OCR) using principle component analysis.

Reaction Diffusion: The Gray-Scott Algorithm

Reaction diffusion represents a type of reaction and, when modeled with a computer, can be used to create elaborate shapes and patterns.

Controlling Scalable Vector Graphics (SVG) using Javascript

Using Javascript to draw graphics dynamically on a webpage.

Java and Swing: an iPhone-like JScrollpane Component

A demonstration of programatic iPhone drag capability using Java Swing.

R Programming Through Java

How to run R code through a java application

The Future of Java Applets

Java applets have been around for almost twenty years. What does the future hold for Java based Applet technology?

Technical Forums: What Not to Do

Online technical forums can be a great resource to overcome a problem or answer a question in the context of school, hobby, profession, or research and can be a great supplement to learning a new skill

Finding Similar Webpages by Text Mining

While creating this website, I thought it would be useful to implement a related webpages feature. In this article I step through this process in detail.

Deploying a Java Application As a Native Mac

Java is known for its cross-platform performance. However, native applications often have unique look and feels not provided by java. I introduce ways to customize a java application towards the look and feel of apple macintosh operating system nativ

Analyzing Apache Weblogs In R

Although many web hosts and utilities such as google analytics provide statistics for website usage, it can sometimes be enlightening to drill deeper into the traffic of a website. This tutorial breaks d

BLAST Alignment in Java

A tutorial for how to perform automated remove BLAST alignment using JeUtils.

JEeutils - Access NCBI from Java

A tutorial for using JeUtils to access NCBI using Java.

Constructing Builder Set Methods in Java

There are occasions in programming when one must build a very complex class, whose construction is dependent upon a great number of parameters - parameters which vary in both value and number. This article presents a technique for readily building cl

Creating Editable Google Maps

Several months ago I was approached and asked to write a framework that allows multiple users to add and edit markers to a google maps user interface. This article summarizes that work.

J2EE: Changing Objects with Remote Interfaces

An experience in changing object using Java.

Saving Objects in Java

A tutorial for how to save objects in XML using Java.

The Importance of Access Modifiers

Introduces the importance of access modifiers through examples.

Knowing When a Thread Stops

Java code for how to determine if a Thread has finished.

Counting Sudoku Solutions in Java

How many possible sudoku solutions are there? In this article we use code and math to count the ways.

Custom Undo/Redo Solution in Java

Quite often I wish to implement undo and redo features in an application. I provide java examples for how to implement this in a java application.

Statistics

Discrete Categorical Random Sampling

How to randomly sample from a discrete list of categories, each with a different probability of being selected.

PCA For 3-dimensional Point Cloud

Principal Component Analysis for 3-dimensional Data

Dummy Variable Trap in Regression Models

The Dummy Variable Trap: using categorical data properly in a regression model.

Optical Character Recognition using PCA

Optical character recognition (OCR) using principle component analysis.

The Monty Hall Problem

Choose one door of three, hoping there's a prize behind the door you choose. If another door is opened without a prize, should you change your original choice to the other remaining door?

Review: Doing Bayesian Data Analysis

Bayesian Statistics is a field of statistics based upon probabilities, or how much you believe a hypothesis. This article reviews the book Doing Bayesian Data Analysis by John Krushce

Finding Similar Webpages by Text Mining

While creating this website, I thought it would be useful to implement a related webpages feature. In this article I step through this process in detail.

Technology

3-Dimensional Smoothing: Catmull-Clark Subdivision

Surface smoothing using Catmull Clark

Reaction Diffusion in 3-Dimensions

Simulating Reaction Diffusion in 3-dimensions

Review - Big Data: A Revolution That Will Transform How We Live, Work, and Think

Book Review - Big Data: A Revolution That Will Transform How We Live, Work, and Think

Google's ReCaptcha Service

An overview of Google's ReCaptcha Web Service.

The Anatomy of a URL: Understanding the elements of a Web Address

The anatomy of a website URL. What elements a URL is composed of, and how those elements are used by a browser and web server.

The Future of Java Applets

Java applets have been around for almost twenty years. What does the future hold for Java based Applet technology?

Electric Vehicles Emissions

When I think about electric vehicles, I think zero emission 'green' transportation. Here I breakdown the how efficient, based upon current statistics, electric vehicles truly are.

Review: Reinventing Discovery by Michael Nielsen

Having been a scientist for over ten years, I have seen different ends of the spectrum when it comes to sharing data and ideas. I review Reinventing Discovery by Michael Nielsen, a book describing the current state of the openess of the scientific co

Linux Command Line: Beginner Tools and Commands

A list of important linux command line commands for the beginning linux user.

Website Design

Creating a Progress Dial

How to create an animated progress dial in java.

Google's ReCaptcha Service

An overview of Google's ReCaptcha Web Service.

Controlling Scalable Vector Graphics (SVG) using Javascript

Using Javascript to draw graphics dynamically on a webpage.

The Anatomy of a URL: Understanding the elements of a Web Address

The anatomy of a website URL. What elements a URL is composed of, and how those elements are used by a browser and web server.

The Future of Java Applets

Java applets have been around for almost twenty years. What does the future hold for Java based Applet technology?

Create Your Website in Five Steps

Creating a website may be daunting, but breaking down the problem and tackling each step individually makes the process that much easier.

Analyzing Apache Weblogs In R

Although many web hosts and utilities such as google analytics provide statistics for website usage, it can sometimes be enlightening to drill deeper into the traffic of a website. This tutorial breaks d

Creating Editable Google Maps

Several months ago I was approached and asked to write a framework that allows multiple users to add and edit markers to a google maps user interface. This article summarizes that work.


© 2008-2022 Greg Cope