Archive for July, 2009

Published by Kenneth on 31 Jul 2009

Software safety

This afternoon a user on the Puzzle Pirates forum posted an interesting question:

Im [sic] sorry to ask this question, but how do we know this software is safe from account hackings and such?

It is certainly an interesting question, and while my response likely won’t quell concerns much, it did get me thinking about safety in regards to software. How do you know that every piece of software running on your computer is safe? Even if you examine the source code, is there a way to know for sure? In actuality, not really.

Now I know that there likely will be some open source advocates who will say that open source software is safer than closed-source software, statistics don’t really support that. Any application on your computer can be used as a conduit for compromising your computer’s security.

In my response to this concern, there wasn’t much I could say, but I finished with this statement:

The Trade Profiteer will not harvest any information about you and, to the best of my knowledge as the sole and principal developer of this application, cannot be used to compromise someone’s account.

About all I could provide are verbal assurances. And this was not the first time this concern was raised. Not long after the initial beta release and the announcement on the forum, forum user hugnam posted this:

Sounds pretty good for an application, but unless it’s proven to be safe, i’m not gonna use it.

Software safety is certainly an issue. Any data you enter into any application has the potential to be harvested and sent somewhere. An application may hook into the system to capture keystrokes. Unless you have an application to detect applications like these, you can’t know entirely.

To help quell fears a little, I responded to the most recent concern on the forum with this:

If you are concerned that my application might harvest data about you, your computer, or your installation of Y!PP, you can certainly configure your firewall software to block the Trade Profiteer from accessing the Internet. Unlike with the Pirate Commodity Trader with Bleach, you will not be interfering with the Trade Profiteer by doing that. If you configure your firewall to block the Trade Profiteer, the only functionality you will be blocking is its ability to check my web site for a new version, which is the only reason it will ever connect to the Internet.

Further, I added this, which may give a little more assurance:

I have also been playing Puzzle Pirates since late 2005, I’ve built up considerable wealth in the game, and I’m not about to risk all of that.

Creating an application that can be used to harvest account information is an offense that will get you banned from Puzzle Pirates and likely reported to applicable government agencies. It’s not something I’m going to risk.

Published by Kenneth on 26 Jul 2009

Is a landline necessary?

News Article: “How to Cut the Beastly Cost of Digital Services

Right now I live in the Kansas City metro area. My internet services is currently through Time Warner Cable, and I love the service we receive. It’s much better than the DSL service I had previously through Qwest while living in the Des Moines metro area.

While with Qwest, I was paying about $43/month for a 7Mb down/896K up DSL service bundled with DirecTV with DVR and a home phone line. The total package came to about $130/month, plus I had a family cell phone plan covering my phone and my fiancée’s phone.

Since moving to Kansas City, we have Internet through Time Warner, we don’t have any advanced television service (cable or satellite), and we don’t have a landline. We only have our cell phones (through AT&T wireless). One thing that worried me with only having our cell phones was 911 service – as anyone should be.

But after securing an apartment in Kansas City and starting some essential services, like power, I held off on starting landline service because a basic landline couldn’t be ordered online through AT&T’s web site. I would have to stop into an AT&T store or call in to start service. So I held off. We were still in the middle of a move, I had my cell phone, so I wasn’t worried.

I’ve had to call 911 from my cell phone before. On December 2, 2005, I was involved in a minor traffic accident in downtown Des Moines, and I was the one who summoned police. No injuries in that accident – well just injuries to wallets…

But the one event that told me that going with a landline was likely not going to be necessary occurred during the early morning hours of March 22, 2009, on Interstate 35 southbound toward Kansas City outside Cameron, Missouri. I witnessed a car roll over into the median and stopped to offer assistance. My fiancée pulled out her cell phone and summoned emergency services.

Now being on a cellular phone, 911 might be a little flaky depending on where you are. AT&T’s Terms of Service includes a disclaimer that connection to a 911 service in a timely manner cannot be guaranteed. My parents live in the country, so I would not be trusting 911 on my cell phone out there, let alone trusting my cell phone at all.

Being on the Interstate, if 911 could not be connected through anyone’s service, someone would have to drive into town and find a phone. Since we were only a mile out from a reasonable size city, not connecting to 911 would’ve definitely said something about AT&T’s service.

But since my fiancée was able to connect through to 911, and sirens were within hearing distance within 5 minutes later, lights not long after that, my only reservation about not going with a landline was settled and I opted against the landline.

So unless you have problems connecting to 911 on your cell phone – your provider can probably help you assess this without you potentially breaking the law by dialing 911 “just to check” – you can probably do without a landline. And for those of you on pre-paid plans, calls to 911 do not use your minutes.

Published by Kenneth on 25 Jul 2009

Developer’s notebook

Every developer, programmer, engineer, whatever title you wish to use, should have a notebook of some kind. How can you progress without having the ability to jot down what’s on your mind?

Oh what’s that you said? You’ll just open a word processor or OneNote and jot down your ideas that way? Oh you fool!

A notebook on every engineer’s cubicle desk with a pen to go with it! That should be the chant of the modern activist programmer, more so than “Free that software from the confines of its proprietary masters” for those of you who are almost religiously loyal to the GPL…

What? You prefer pencil over pen? Oh dear God, I’ve got my work cut out for me…

So why the emphasis on a notebook? Well because I use one, and like any good person with a blog as an outlet for that occasional thought or rant… I’m going to rant a little.

Now if you don’t have a notebook, what have you been using to jot down ideas?

On my first day at Cerner, I was given a Mead two-subject, spiral bound, ruled notebook. Not the standard size notebook, but a medium sized notebook. About my only complaint with this notebook is that its cover is… pink. How did I get unlucky in that lottery?

But it has been with me since that day, and it has collected a lot of ink. Most engineers probably use their notebooks to jot down little quips, tiny notes, things to remember. They don’t necessarily write what’s important.

At home, I’ve become a Moleskine convert, and I like it much better than the sketchbook I had been using previously. And currently it’s being used only for ideas, notes, and the like. I’m not writing down what’s “important”.

So what is important if you’re keeping a developer’s notebook? Well, everything. Any idea, any question, comment, criticism, whatever is on your mind about whatever you’re working on is important. Details for test plans, awkward observations while running the application, anything that could be remotely considered important should be considered important enough to not only note in your notebook but also commentary.

Basically your developer’s notebook should be a very detailed developer’s journal. Now I know some will be apprehensive because that notebook would likely have to be turned over to the company if you’re laid off or decide to leave of your own will, meaning it then becomes bedside reading for someone higher up in the company, and that is certainly a valid concern, which is why you shouldn’t sound off about your coworkers in your notebook, only your projects.

Or make sure you drop it in the shred bin on your way out the door.

Just something to think about next time you look at your notebook. Could you be doing more with it?

Published by Kenneth on 19 Jul 2009

Quick update release for Trade Profiteer

A quick update release was provided for the Trade Profiteer today. The new version is 1.0.1219. There was an issue reported that the Trade Profiteer was reporting that the large font setting was enabled when it wasn’t. That issue has been addressed in this release.

Published by Kenneth on 18 Jul 2009

New beta released – Puzzle Pirates Trade Profiteer

New version: 1.0.1218

A new release of the Trade Profiteer has been stamped and made available on the Colony West Software company download repository.


  • New option to automatically check for a new version once per day. If a new version is discovered, it will show a message box.
  • Messages now displayed if options in Puzzle Pirates are enabled that may interfere with the ability to scan in data. Those options include:
    • Large fonts
    • Anti-aliased fonts

Download and give this new version a try. Be sure to report any issues you find.

Published by Kenneth on 14 Jul 2009

About 10 days out and all seems well, so far…

The beta release of the Trade Profiteer has been available for about 10 days now and there hasn’t been much feedback from users. Of course at the time of this writing, it’s been downloaded less than 20 times, and who knows how many of them are active users.

I am planning to stamp another beta release here soon that will address an issue that has been reported, and that is in regard to the Puzzle Pirates settings. Previously these were not detected because I didn’t know where to find them. A little detective work and I now know how to detect the current Y!PP settings, such as for the anti-aliased font and large font settings.

Along with this I’m considering taking the “Check for updates” menu item and turn it into an automatic check feature. Shouldn’t be too difficult to implement, I don’t think. It just shouldn’t interfere with the rest of the application.

Along with this, I’ve been working to re-engineer the OCR component – the part of the program that “reads” the Puzzle Pirates screen and gathers useful information. Now why re-engineer something that already works? Well the trouble is that it only works under certain conditions, and I’m working to correct that. And the key is that I’m trying to avoid using many of the tricks and gimmicks the Bleach developers opted to include – a program should not muck with system settings unless that is the intended purpose of the application (i.e. system configuration tools, not game helper applications).

So you can expect another build of the Trade Profiteer to be released within the next couple days. As for the full final first release version, I’m still holding to the “start of August” target I mentioned before. We’ll see how it goes. I’m likely not going to include the new OCR code in the first full release – it’ll need a lot of testing and a lot of exposure. While I’ll be giving it quite a bit, I’ll need other eyes to have a look at it to weed out anomalies and defects.

Otherwise, stay tuned to stay abreast of the updates.

Published by Kenneth on 07 Jul 2009

Good press for the Trade Profiteer

Well the Trade Profiteer has gotten its first bit of good press. Puzzle Pirates forum user JimTheFly has downloaded and tried out the application and so far appears to like it. He’s offered some suggestions for future enhancements as well, one of which is planned.

We hope there will be more good press to come as well.

So what is coming up? Well right now I’m working on re-engineering the OCR components. The reason is that allowing the OCR to support Java 6 without jumping through hoops is the top priority right now. I’m also working to add support for large fonts. I’m hoping how I’ve decided to engineer the new code will allow for both without much difficulty. This’ll take some time to implement and likely won’t be in the first full release of the Trade Profiteer. We’ll see…

I’ve also managed to get a bug tracker up as well, running Bugzilla, one of the better systems out there. I wouldn’t say it’s the best because it is a pain to install on a shared server. It’s also a little intimidating to use, so for the time being I’m going to limit full access to just myself. Any bugs that are reported and enhancements requested will be posted the bug tracker.

Well that’s it for now. I’ll do my best to keep things updated here. If you try the Trade Profiteer and run into issues or have suggestions, use the contact form to report it and I’ll respond as quickly as possible.

Fair winds, everyone.

Published by Kenneth on 06 Jul 2009

Comparing the Trade Profiteer with Bleach!

If you’ve come across the Trade Profiteer, chances are you’ve heard of or used the Pirate Commodity Trader with Bleach! application. So how exactly does the Trade Profiteer compare with Bleach? Well in many ways they are both similar: both are intended to import commodity data and display a comparison between two islands, but that is, well fortunately for me, where the similarities end.

Because the Trade Profiteer is a standalone application, there is plenty more that can be offered that the Bleach application cannot. Many of the benefits of this application are listed on the page for this project.

Self-contained, standalone application

The first main benefit of the Trade Profiteer is the fact that it is an entirely self-contained, standalone desktop application. This means that there is only one thing to worry about. It also means that when the data comes to your computer, it stays there. Like the Bleach application, the data is read out of the Puzzle Pirates window and saved into a database. With Bleach, however, the data must first be sent to a remote server over which you have no control before you can receive any information – assuming the server or your Internet connection doesn’t crap out along the way.

But there’s more: on the server are multiple, and I do mean, multiple points of failure. This standalone application creates only one point of failure: if the application decides to crap out, you kill the application, restart it, and go. If the server craps out, you’re out of luck. Just check Bleach’s forum thread to see how often complaints have been posted about the server being down or inaccessible for some reason, sometimes for days on end.

So what are the multiple points of failure? There are three main points of failure, among other: the service software that actually delivers the data to your browser, the separate database service that keeps track of the data, and the scripts (both on the server and those fed to your browser) that drive the whole thing. Plus there’s the separate uploader application that must collect the data and upload it to the server. Multiple, multiple points of failure.

If you’re an experienced merchant on your ocean, you know that the fewer ways something can go wrong, the better. And if it does go wrong, the fewer steps and less time needed to get things relatively back to normal, the better. For that reason alone you shouldn’t trust the Bleach service.

Everything stays local

You will likely note that I’ve mentioned the separate uploader application a few times… and I just did again. It’s an important point to emphasize, and when I set out to create the Trade Profiteer, it was something I set out to eliminate.

Everything stays local with the Trade Profiteer. The commodity market data stores off quick; there is no wait while it uploads because it doesn’t go anywhere. Plus because everything stays local, you don’t have to worry about conflicting data from other sources screwing you up. The data is also stored off automatically – you don’t have to do anything to make it happen.

On the off-chance, however, that building names change or a new island is colonized, you might have to tell the application what island you’re on, but that should be relatively rare. However with younger oceans like the Crimson Ocean, this could be somewhat common as islands are opened up and flags compete for the islands that are open.

But it’s still simple: the Trade Profiteer will ask you which island you’re on and prompt you to specify what building name it should use to recognize that island in the future.

Store off frequently-traveled routes

This is something that the Bleach tool cannot provide without implementing user-logins, and I doubt they’d want to complicate an already horrendously-complicated mess even further.

This is one feature I feel you’ll like the best, and this is the first tool to provide this feature: you can store off routes you frequently travel. And making use of your stored routes is easy.

Multiple island pick-up and delivery

How could I not include this feature? You want a way to maximize profits, that’s the way to go. It does carry with it greater risk, though, so be forewarned. But you can select multiple start and destination islands.

And this is a feature also introduced first with the Trade Profiteer.

Doesn’t interfere with your work

I tried dropping several hints to get the Bleach developers to realize that there is a better way to do the window auto-scrolling. I’m sure after they’ve had a go at this application, they’ll find a way to reverse-engineer how I’m doing it and finally see the light.

Sorry to the Bleach developers, but you didn’t do your research properly if you never found out how to scroll the window without interfering with the user. It didn’t take me long to find it.

With the Trade Profiteer, you can still talk and do other things within the Puzzle Pirates window while the window is auto-scrolling. Something get in the way? No problem. It’ll pause the scrolling so you can take care of the interference and continue.

What is the Trade Profiteer missing?

Of the features provided by the Bleach application, there is only one that I have determined is not available (yet) in the Trade Profiteer, that being the ability to take the list of items and quantities to purchase and figure out what can fit into a particular ship. While this feature is certainly useful, it was put on the back burner for now, but there are plans to implement something similar. I have a couple other things I’d like to implement first.


So there you have it, a few ways in which the Trade Profiteer excels beyond the Bleach application. If you’ve made use of the Trade Profiteer, I’m sure you’ve found more.

As usual, any questions or concerns can be e-mailed to me through the contact form on the web site.

Published by Kenneth on 05 Jul 2009

Trade Profiteer reaches open beta

It is with great pleasure that Colony West Software Company announces the release of the Puzzle Pirates Trade Profiteer into open beta. The software has been through much development and a lot of testing through the many months since the project first started. The time has come to give others the opportunity to use the tool and report back on any bugs they find.

Now one thing you’ll notice right away is that this tool is much different from anything else out there, and is certainly different from the Bleach tool, and that is intentional.

Many of the tricks that the developers of the Bleach site tried to use are avoided in this application. For example when scrolling the commodity data list, you are free to move the mouse around. This allows you to respond to chat channels, and you won’t be interfering with the data read either.

Further this application is entirely standalone. There isn’t any server to which this application talks except when you select the “Check for updates” option on the help menu, in which case it’s talking to my web server to retrieve a version number. Nothing more.

So what happens next?

The application will be in open beta for, hopefully, only one month, but that can vary depending on how many bugs and enhancement suggestions are reported. If there is a high amount of feedback or bug reports, the open beta may be extended. If there aren’t many bugs or issues reported, then the open beta period may be shortened and a full release provided sooner.

Right now the aim is to release a full version sometime in early August 2009. I also aim to have some semblance of a manual put together by that time, too. Right now I don’t have a bug tracking site up and running, but I’m experimenting with a few systems and will set one up when I’ve settled on one.

Fair winds, everyone.

Published by Kenneth on 03 Jul 2009

Open beta approaches for Trade Profiteer

It brings me great pleasure to announce that the Trade Profiteer will be released into open beta within the next few days. We are finishing up a few details with the application along with drafting an announcement for the Puzzle Pirates forums. The application likely would’ve been released sooner, but Three Rings opened two new oceans recently: Crimson (family ocean, English primarily) and Jade (Spanish ocean). This caused only a slight delay.

The Trade Profiteer supports eight (8) of the ten (10) available oceans. The only oceans not supported are Jade and Opal. Jade is the new Spanish ocean while Opal is a German ocean that has been open for about two years. Information for the Ice ocean is distributed with the Trade Profiteer, but it has not been tested with the Ice client. Feedback will certainly be welcome, but problems are not anticipated.

Now it will be possible to add support for Jade and Opal, as you can merely change the option for Puzzle Pirates on those oceans to use English as the interface language, but we did not think it fair to German and Spanish players. Those oceans were opened to target native German and Spanish speakers. However we do aim to globalize the Trade Profiteer to make it more friendly to the widely diverse group of players on all oceans. As globalization was not originally considered when the project began a year ago, the application will need to be adjusted to allow for this. It is one of the planned enhancements and, like adapting the application for Java 6, it is also a priority.

If you wish to assist with the globalization effort, let me know either by sending an e-mail using the contact page on the web site or enter a reply to this post. I would prefer native speakers where possible.

So otherwise, keep an eye out over the coming 4th of July weekend for the announcement. Again, finishing touches for release are underway and we hope to have this finished up and released into open beta hopefully before Monday.

Fair winds.