---
title: "Introducing…"
date: 2009-12-12T09:17:00.9744-06:00
slug: introducing
published: true
---

Hi, I’m James Kolpack, and I’m a code-aholic. 
#### Where I’m from
 

Ever since I was a kid I’ve been programming at various degrees of sophistication.  Being a child of the 80’s, I started with Basic (of the [GW variety](http://en.wikipedia.org/wiki/GW-BASIC) on a [8086 based IBM](http://en.wikipedia.org/wiki/IBM_Personal_System/2)) with a dash of [Logo](http://en.wikipedia.org/wiki/Logo_%28programming_language%29) and [batch scripting](http://en.wikipedia.org/wiki/Batch_file).  Later in college I became learned in [Pascal](http://en.wikipedia.org/wiki/Pascal) and then [C](http://en.wikipedia.org/wiki/C_%28programming_language%29) and the trials and tribulations of [memory management](http://en.wikipedia.org/wiki/Malloc) and [complex data structures](http://en.wikipedia.org/wiki/Tree_%28data_structure%29).  I loved the ability to solve interesting problems by the clever assembly of instructions to be executed on a computer.  It was a bit of a power trip, really - “Pow, I just made a program that can find the optimal combination of items to fill a [knapsack in psuedo-polynomial time](http://en.wikipedia.org/wiki/Knapsack_problem#Dynamic_programming_solution).”  This capability does not, I discovered, transcend one-to-one to “real-world” power – but you’ve got to [![LegoMan_bigger](http://popcyclical.com/content/binary/WindowsLiveWriter/Introducing_90B9/LegoMan_bigger_thumb.png)](http://popcyclical.com/content/binary/WindowsLiveWriter/Introducing_90B9/LegoMan_bigger_2.png)do what you can with what you’ve got.  

As for the name of the blog, “popcyclical”, it’s a dual homage to my interest in cyclical relationships and, of course, popsicles.  It also references my moniker “poprhythm” which I was given many years ago for my ever-loving devotion to excellent music. 
#### Where I’m going
 

On this blog I will be exploring ideas and issues that are relevant to me at the given time.  As a developer employed at a small shop, [![100px-Directed_graph_with_back_edge.svg](http://popcyclical.com/content/binary/WindowsLiveWriter/Introducing_90B9/100px-Directed_graph_with_back_edge.svg_thumb_1.png)](http://popcyclical.com/content/binary/WindowsLiveWriter/Introducing_90B9/100px-Directed_graph_with_back_edge.svg_4.png)the focus is guaranteed to wander over time.  For any given week, I may be highly invested in any number of   topics.  This may include : [upcoming features](http://msdn.microsoft.com/en-us/library/dd264736%28VS.100%29.aspx) of programming languages, [graph algorithm design and application](http://www.codeplex.com/quickgraph/), [development tooling](http://www.jetbrains.com/resharper/), [data mining](http://en.wikipedia.org/wiki/Data_mining), [system architecture](http://martinfowler.com/books.html), [user experience](http://mitpress.mit.edu/catalog/item/default.asp?tid=5393&ttype=2), [natural language processing](http://opennlp.sourceforge.net/), [semantic web](http://en.wikipedia.org/wiki/Semantic_Web), [test driven development](http://en.wikipedia.org/wiki/Test-driven_development), [statistics](http://www.r-project.org/), [data management](http://en.wikipedia.org/wiki/Database), … these and many others are all fair game.  As of today, the technologies I’m working in from day to day are [C#](http://msdn.microsoft.com/en-us/vcsharp/aa336809.aspx) on the [.NET](http://www.microsoft.com/NET/) framework, [ASP.NET MVC](http://www.asp.net/%28S%28d35rmemuuono1wvm1gsp2n45%29%29/mvc/) and [jQuery](http://jquery.com/), [WCF](http://msdn.microsoft.com/en-us/netframework/aa663324.aspx), and a [variety](http://www.microsoft.com/sqlserver/2008/en/us/default.aspx) of [database](http://www.oracle.com/database/berkeley-db/xml/index.html) [engines](http://www.mysql.com/). 
#### I can use your help
 

When pointing the finger of blame for a problem I’m faced with, more often than not, that finger will eventually turn back to point at myself.  To err is human, and for software creators, this is repeatedly beaten into our skulls. Every time a compile fails, a stack overflows, a user is confused with our design, an out of memory exception is thrown, and every other time we’ve had a slip of the finger or a misconception about the problem or a technology. To combat this, we must flock together to overcome our individual weakness.  I welcome all relevant comments, suggestions, and criticism.