KnitTrack -- The Needle Information Database
Most of this week I've been trying to crank away on the knitting needle database component of my KnitTrack software. I'm starting with the knitting needle info component of the program because it's one of the simplest parts of the project. Once I work through this part, it should be a good prototype for the other two databases that I have to build.
Like most programming projects I have embarked upon, I've underestimated the challenge of doing something new, even if it is simple. I am actually considering setting the knitting needle information database tool up to be an independent component for the first release, and seeing if I can do enough things with it to make it an acceptable final project for my class.
The knitting needle database tool has two primary "viewers". The first viewer displays all the needle records in the database, with the records viewed and their display order specified by the user. The second viewer displays the details of individual needle records. Here's a set of screen shots for the first viewer:


The Entry Screen to the Needle Database in KnitTrack
The screen shot on the left demonstrates what the user will see when the program is launched. The category indicator at the top says "All" so all the records are displayed. The Palm screen is too narrow for me to display all the information in each needle record, so I've selected what I think is the most useful information:
Needle Maker US/UK Size/Length Composition Category
If you click down on the category selector, you see the screen in the middle. The default categories are Circular, Double Point, Straight and Unfiled. You can work with these categories, or you can change them to suit your needs or add your own categories just by clicking on "Edit Categories". You can have up to 15 total categories.
After selecting a category, the listing box is updated to display only the records from the category selected. In this case, I selected the "Circular" category, for which there are only two records.
The next thing I need to do is set up some general sort types so that the user can see the records in an order that is useful. Here are the sorts that I think would be useful:
- By Category, then by Size, Length and Maker
- By Category, then by Size, Length and Composition
- By Category, then by Composition, Size and Length
- By Category, then by Maker, Size and Length
Are there other orders that might be beneficial? See below for a description of the available fields. I will have an option for the user to filter the records for all the needles that are not already in projects.
When you click on the "new" button in the bottom left corner, you pull up a screen that looks like this:

The Record Editing Screen in KnitTrack
There are 8 basic fields in the database: Type of Needle ("Type"), the US or UK size ("Size"), the metric size ("Size (mm)"), length ("Length"), the manufacturer of the needle ("Maker"), the composition ("Composition"), notes and there will be a place to indicate whether the needle is in use or not via a check box. You can indicate the current project via the notes field, if you wish, or use it for other purposes (this is just for the needle database only version of the program, when I integrate it with the tracker, I'll change how this works so that the two databases are connected).
In the three screen shots above, you can see the pulldowns for the Type, Size and Length fields. I added the pulldowns for Size and Length so that the program would be workable outside of the US.

Needle Manufacturer Selections
For the Manufacturer field, you can see a selection of the options I've set as defaults: Bryspun, Clover, Crystal Palace, Inox, Pony, Skacel, Susan Bates and Swallow (I'll be adding Brittany as well). This list will also be editable so that those of you who have other types you wish to include can add them. Are there other "big name" manufacturers that I've left out? (Note: AddiTurbos are made by Skacel).

Needle Composition Selections
For the Composition field, you can see a selection of the options I've set as defaults: Aluminum, Bamboo, Birch, Brass, Casein, Ebony, Plastic, Rosewood, Steel, and Teflon Coated. As with the manufacturer list, this list will be editable to allow more options. Are there other defaults that I should have included?
Finally, there are three buttons on the bottom. "OK" saves the record. "Cancel" deletes the record if it's a new record or just ignores changes if it is an existing record. And "Delete" deletes the record. After any of the buttons are clicked, the user is returned to the main listing.
So that's the basic tour of the first component. Scary to think I can write more words about the beginning of a programming project than I do about most knitting projects. I think the basic screens are mostly done. What I have left to implement is the sorting, (and the on-screen mechanisms for dealing with sorting), dealing with scrolling (when you have more records than list box space) and setting an option for whether you want to see the US/UK or metric size in the record listing.
So tell me what you think!

What I think? That you're a genius! Awesome program.
Wow! Well done. You're so clever.
I think you've covered everything I want to keep track of regarding my needles. Well done!
Are you trying to tempt me into getting a Palm. Don't you know how attached I am to my old-school paper appointment book?
It looks fantastic so far! I can relate to underestimating the amount of work - somehow my masters' project took about 4 times as long as planned to finish. ;)
The only suggestion I have is to somehow - either through preferences or as a button - make the main screen toggle between displaying the US/UK sizes and the sizes in mm. This way, if I need to know whether I have a pair of 4mm needles available, I don't have to look up which US size that is (some patterns only give the needle sizes in mm).
Useful tool! Thank you for both attempting this, and for showing us the noodle-work behind the finished product.
Other knitting needle makers...
I have a ton of needles that are unmarked and unlike easily recognizable standard types. I'd find the category "unmarked" to be very useful as a one of the default set.
There are also vintage/discontinued needle makers/distributors . I've got lots of these, mostly inherited or found at yard sales. About a third of my needle collection is Boye; Bernat; Bernat Aero (different from plain Bernat); or original British Aero. I've also got needles from Plymouth; Grants; and Sears. Finally there are other contemporary makers of exotic needles: Lantern Moon; Suzanne's.
Other thoughts:
If you're constraining fields on the sizing, please make sure they can take two decimal places. There are metric needles sized by the quater mm, so people should be able to enter (for example) 3.25 mm.
If "Double Pointed" is chosen, can there be an additional field for number of needles? I've got 4 and 5 needle sets, plus partial sets. It would be useful for me to know that the set of #6s in inventory is a 4-needle set, and that if I want to do something that requires 5 needles, I'll need to either alter plans or buy some more.
I think what you've done is fantastic! At the moment every time I start a new project I usually end up buying the needles simply because I haven't a clue if I have the right size or not. (This isn't so bad since I'm a chronic starter, not finisher, so most of my needles are already stuck into something :)
The one thing I'd suggest is this - could there be a field somewhere for info about who you might have lent needles to and when? I'm forever forgetting who has my spare 4mm and usually end up losing them as a result.
Heidi
Thanks for the feedback so far!
1) I will definitely be adding a toggle that switches between US/UK and metric in the record display.
2) I won't be including any "special" fields for any needle types (the reason is a technical one, it wastes space in memory because all the other records, even if they don't need the field have to have space for the information). However, you can put that information in the "Notes" field.
3) In fact, you can put any information in the notes field that you want! Including what project the needles are being used in and who you loaned them to, etc. Even though it's only three lines on screen you can fill it up with 255 characters.
4) I will be adding a few of those names to the needle list. But I will also definitely make the list editable so that you can add your own or delete categories that you never use.
5) The length fields actually take "string" type information, so you can have two decimal places if you need them. I made the size limit on the field 5 characters. But I can make it wider if the general consensus is that there would need to be more characters than that.
Sorry to come in late into your discussion. Is this software that you are programming for a PDA?
It is looking good. It will be fun to use when it is available. I can see myself spending some time entering all my info in.
The program looks really great. I've been looking for knitting programs for my Palm. I have a Denise kit, so I use them most of the time. I don't know if you'll want to include them in the manufacturer list or not.
I have some gold-plated Addi's for the needle composition category -- but maybe those are brass underneath the gold? Dunno.
It's looking great. Very functional and useful. I have no additional suggestions besides what's been mentioned.
I hope you follow through and make it a complete program since you are off to such a great start. I know you'll get an A+++ on your project. (Or the teacher will be hearing from a lot of irate knitters!) ;-)
WoW! This is such a neat project and so incredibly well thought out. I had two thoughts as I was reading - I agree that Denise and Boyes might be worth adding to the list of needlemakers (but I'm probably just biased because I have a kit of interchangables). My other idea was that I could see wanting to sort needles by size over category -- for instance, I might not care whether it's a straight needle or a circular for a scarf or there are occassions when a pattern calls for two different types of needles (such as some hats). Hope that helps and thanks for the great read!
Looks wonderful - anything to consolidate the amazing amount of information I need to carry with me. Let us know when you're ready to distribute - I'll buy it!
The software looks great. Can't wait to see what else you do. I use KnitAble now but this is even better.