The Coding Journal of a Cyberfox

[> recent entries]
> entry calendar
> friends
> profile
> Technorati Profile
> Technorati Profile
> JBidwatcher - an eBay tool

> previous 20 entries

Friday, March 27th, 2009
7:27 pm - Coalescing my blogs...
There has long been an uncertainty about this blog; is it my way of communicating with JBidwatcher users?  Is it where I post my coding snippets and opinions?  Or is it just like the two others I have.  :)

Not that I've posted much in the first place, but I'm going to stop posting to this one at all, even as a mirror of my main blog.  The domain ( will be redirected to my self-hosted blog shortly, where hopefully I'll be more active.

I have no way of knowing how many people subscribe (if any!), but if you are subscribing through a feed reader, it probably points to the LiveJournal feed, which will go silent(er).  You'll want to go to and subscribe to the feed there.

Thanks muchly!

--  Morgan Schweers, CyberFOX!

current mood: geeky

(comment on this)

Wednesday, January 2nd, 2008
3:33 am - A son.

I have an important personal announcement!

My wife and I have a baby on the way; he is due in early May!

(The linked post also includes details on what I'm working on for JBidwatcher2.)

As I say in the post, we're incredibly excited, and a bit scared. It's going to be an amazing journey.

I'll post more about it later, but it's...well, it's been incredible and wonderful, and terrifying and astonishing.

I'm not entirely sure I'll know how to be a good father, having lacked that particular role model in my own life, but I'm sure going to try.

The joy and thankfulness of a new year is upon me, and the vast majority of it surrounds my wonderful wife and our growing baby-to-be.

Happy New Year to all, and best wishes for a great 2008!

-- Morgan Schweers, CyberFOX!

View this post on my main blog.

current mood: joyous

(5 comments | comment on this)

Friday, October 5th, 2007
8:09 pm - TDD: The 'Logans Run' of Software Development...

I want to start by making it clear that I know why testing is good, and that it's really important, but I think that the TDD proponents are glossing over the most difficult part of a project.

I would very much like someone to address the issue of modifying code that is not new, and not already perfectly tested (or even completely specified!).  That is to say, the vast majority of actual code out there.

TDD is intensely focused on the early development phase (or at least TDD proponents are), and on writing new code, as opposed to what the majority of software developers actually do; maintain and update existing code.

It's really straightforward (and fun!) to write entirely new code in the TDD fashion.  I've done it for about 3 decent sized projects now (one Java and two Rails), and it can be really pleasant, and a great focusing tool.  No arguments there; when you do it from the start, it's really wonderful.

On the other hand, when you're making incremental changes here and there throughout a very large, pre-existing, only partially tested codebase, it's vastly less pleasant to try and do it test-first.

The Ruby Autotest tool is not such a pleasant tool at that point.  You stop wanting to write failing tests, because fixing it means autotest is going to try to do a full retest, which sucks for developer flow...  Even if your tests take 'only' 5 minutes to run, breaking a test makes you wince, and writing a failing test and then fixing it is for masochists only (and ones who want to miss the project milestones at that).

The focus of every presentation (this one included) I've seen on TDD being on the start of a project makes me wonder why nobody's talking about later in projects...

Nearly every developer out there is going to face a large codebase with poor testing coverage, and will have to make changes that aren't entirely new code, to existing code that isn't entirely tested.  Does TDD have a solution for the 'large, crufty codebase', or is it suited only for 1.0 versions, small projects, and projects that were TDD from the start?

This isn't really a rhetorical question for me.  I really want to get my organization's culture more oriented towards testing.  I've got buy-in from lots of people that when they're writing new modules and services, they'll do it test-first (or at least 'test around the same time as the code', which is all I can ask for at this point), and that's great.  But has anybody developed any tools to make TDD better suited to maintenance and improving existing code?

--  Morgan

p.s.  I'm skipping BDD entirely, because BDD is so hardcore in the 'only for already very well specified solutions' camp, that it's meaningless for this question.  I'm also using 'TDD' and 'test-first' interchangeably, and I probably shouldn't be.

p.p.s.  The title refers to how in Logans Run, everybody was destroyed at 30, so there weren't any old people. In the world of TDD (or at least TDD presentations), there are no old projects, every one is fresh and new, so the issues that come with an old code base are never addressed.

View this post on my blog

(2 comments | comment on this)

Friday, May 18th, 2007
8:37 pm - My response to eBay's Bid Assistant...

eBay recently launched their Bid Assistant, which acts similarly to JBidwatcher's Multisniping feature, except without the sniping.

None the less, it's good to see them adding features JBidwatcher had six years ago. ;)

Being serious for a moment, I'm actually really happy to see them do this. It's a straightforward feature, and one they should have had long since. If they make it easy to use it'll increase bid volumes, and thereby their end revenue. Speaking as an ex-employee, and a shareholder, this is great!

I always considered multisniping a 'good for eBay' feature, because it meant one bid could get applied to a number of items, without the user really intervening after the initial setup.

It's also a hint that they might still be putting new ideas into their platform, which I'm very happy to see. It also ups the ante for programs like mine, to add more extensive algorithmic bidding. (e.g., 'If I win this, THEN put a snipe on that, because if I can combine shipping I'd want them both...')

What it is not, is sniping. Specifically:
You cannot schedule bids to be placed at a specific time.

The first version of JBidwatcher that included Multisniping was December 16, 2001, and is the earliest implementation of bid groups / multisniping / bid assistant functionality that I know of. It's not world changing, but I'm proud of it. :)

Best of luck with your auctions!

-- Morgan Schweers, CyberFOX!

View this post on my main blog.

current mood: amused
Sunday, April 29th, 2007
6:26 pm - JBidwatcher 1.0.1 is released

I've put up the latest version, 1.0.1 of JBidwatcher.  It's mainly a bug fix release.  It includes a few new features towards better documentation, error messages, and recognition of eBay states, and a new (still completely optional) approach to the eBay affiliate idea.

One of the important fixes has to do with a wording change; eBay changed 'You have been outbid' to 'You've been outbid', and JBidwatcher didn't handle the wording change, reporting it as an 'unknown error'.  Also eBay changed the text on their captcha pages, so JBidwatcher was failing logins for unknown reasons.  Now it should be better at recognizing those situations.

There was a sporadic startup failure when sorting by a currency-based column with unknown values in it, and saving and restarting.  I hope to have addressed that as well.

Very little UI has changed, although the internal FAQ has been enhanced a little, and a whole new FAQ has been put on the web site.  There is also a new community forum area that's much better than the old SourceForge forums.  In fact, SourceForge is deprecated for everything except bug reports, feature requests, and CVS access to the source.

More information is available at the JBidwatcher 1.0.1 changelog.

  • Windows users can download a Windows executable!  (No installation required, it just runs!)

  • Mac OS X users can download an app.tar.gz.
    Download (it'll automatically decompress) and double-click the .tar file to extract the Application!

  • You can also download the Java binary for any other platform, including Linux and Solaris.
    Launch with: java -Xmx512m -jar JBidWatcher-1.0.1.jar

  • As always, you can download the source and build it for yourself.

Best of luck with your auctions!

--  Morgan Schweers, CyberFOX!

View this post on my main blog

current mood: elated

(1 comment | comment on this)

Tuesday, February 13th, 2007
6:29 pm - JBidwatcher and CyberFOX status update

A concerned user recently asked me how I was doing in the aftermath of the issue with eBay sales of JBidwatcher, specifically:
You seemed pretty depressed about it in your post to the website.

I was.

There was a really bad week there, while I was dealing with all of it, back and forth, and just feeling like crap. I got a lot of user feedback, from a LOT of people, that reminded me, as the concerned user put it, not to let the few jerks make me give up.

I took some time to work on other projects, and I've been fiddling with the next major rev of JBidwatcher, mostly cleaning up the code, improving the source layout, fixing small things that nobody else will likely ever see, and writing silly features just for the fun of it. (Like making the internal webserver take 'events' to be posted to the various subsystems, so you can add an item, do a bid, or even tell it to fire off a sound effect through a REST-ish interface. You could theoretically 'script' JBidwatcher through that.)

I've also mostly moved the code base of JBidwatcher to Java 1.5 (mmmm, tasty generics!), since 1.6 is now out. I've also been experimenting with including 'Derby', an embeddable (in the 'ship with program' sense) tiny SQL-based database, so that JBidwatcher's memory usage doesn't grow at the same rate as the number of auctions. Also so that it can offload completed auctions, so they're not kept in memory anymore at all. Yet another thing I've been playing with is including a scripting language (something simple) which would get run on certain events, which would allow for making some of the complex rules people have requested as features. I've also written up an FAQ I need to publish on the site. (The first question addresses my inability to answer emails consistently, in fact!)

Anyway, all told I (and work!) have been keeping myself busy, albeit quiet. It all helps me get past the issue with the people selling JBidwatcher. Future versions will probably not be open source, however. :( I may expose the source, or open certain sections, but almost all open source licenses explicitly allow what those folks were doing, and I've determined that it's beyond what I'm comfortable with. One of the things people repeatedly said in private emails was that the open source nature of JBidwatcher was not critical to their appreciation of JBidwatcher. This means I'll need to extricate myself from Sourceforge in various ways, and cover my own purchase of IntelliJ IDEA, but I think donations will have covered that.

I don't want to charge for JBidwatcher; I prefer people using it and deciding for themselves what it's worth to them. Plus, because it's scraping eBay, I feel bad about asking for money for something that could break the next day. So I expect the program will continue to be no cost. I'm thrilled to get donations, of course, but I don't build JBidwatcher to make money; I have a day job for that. :)

At the same time I'm working on building other projects so my morale won't get torpedoed so badly when someone messes with the sole project I've been working on.

One of the other projects I'm working on are a health tracking tool (weight, blood pressure, hours slept, water drank, steps taken, foods eaten with nutrition information, and more stuff like that, with pretty graphs and sparklines (my weight trend: Weight Trend Sparkline)). The other major one is a comprehensive multi-user outliner tool. Both are entirely web based applications, unlike JBidwatcher, and both are in Ruby on Rails.

I'm sorry that I haven't been dedicating more time to JBidwatcher, but it's been fundamentally working okay recently, and I needed to blow off steam by doing cool new stuff. So I've been letting it percolate, and rekindling my coding passion by working on other interesting problems.

That's the status as of now; I hope that this sheds some light on my thought processes, and what I see in the future for JBidwatcher. One important thing to take away is that YES, there is a future for JBidwatcher. :)

Thank you, every one, who wrote me, donated, or just thought well of me during all this. I appreciate it a great deal more than I can express.

-- Morgan Schweers, CyberFOX!

View this post on my main blog.

current mood: calm

(11 comments | comment on this)

Monday, January 15th, 2007
3:00 pm - Firefox2 + GMail == Memory Leak

Just noting that I closed my 'gmail' window, and my Firefox process went from 883M to 585M.
I guarantee that 300M weren't being used by the gmail page as it stood. Perhaps Google's Javascript foo is not as powerful as they'd like, and it's holding onto old AJAX results?

I can guess a few other things about what might be going wrong (caching AJAX requests in the browser, for instance), but one way or another, if you have memory problems with Firefox 2 and you keep a gmail tab open, try closing your gmail tab now and then.

I have to wonder if it's a general AJAXy problem with Firefox, or specific to gmail...

One way to test (which I'm going to try soon) is to try a 'reload page' instead of a 'close tab', to see if it's the browser/page-renderer/caching keeping the memory occupied, or the JavaScript on the page that is abusing memory.

There are limits to how much CPU we allow any given page of JavaScript to have; I'm surprised there aren't any limits to how much memory it can have.

-- Morgan Schweers, CyberFOX!

View this post on my blog

current mood: idle

(1 comment | comment on this)

Tuesday, January 9th, 2007
7:25 pm - Pick your need, pick your tool.

I had a friend recently who asked about what programming languages they should learn. He primarily works as a system and network administrator, and had been bombarded by 'Learn Ruby!' from a bunch of evangelists recently. I assured him it wasn't necessary, and came up with this interesting list.

What language you work in really depends on what you need to do. In my definitely not so humble opinion, here are the best of breed languages/platforms for each of a set of needs, if you just want to Get Stuff Done.

Applications - Java. It's cross platform with rich libraries, and 1.6 makes it even better.

Glue - Perl and bash are best for gluing things together. On Windows this category doesn't really exist.

Web - Ruby on Rails is the best tool out there right now. You also need Javascript, CSS and HTML.

Speed - C++ is best when it must be fast, but usually in service to another language, except for...

Video Games - C++, because speed often trumps other considerations.

Database - If you touch a database, you need to know SQL.

Applet - Flash/ActionScript is the best applet language right now.

Embedded - I believe C is still the gold standard, but I haven't done embedded development in a while.

Mobile - Java ME appears to be the only platform-agnostic answer currently, but again, not my field.

The above is based on my knowledge, as of right now. I can make a strong argument for each of them, but that would require being negative in various ways about other languages for comparison. Instead I prefer to note that other languages or platforms may still be good for each need, but these are the best.

Just like Ruby on Rails exploded onto the scene, this list may not hold true in a week, so it's more a 'snapshot' than a 'bible'. It's also based on my knowledge of what makes for good software development, balancing (depending on the need) features that make development less error-prone, speed, cross platform capabilities, maturity, match between the development (and mental) model and the need, available tools, etc...

Hope it's an interesting view into my development mindset.

-- Morgan Schweers, CyberFOX!

View this post on my blog

current mood: thoughtful

(comment on this)

Tuesday, September 5th, 2006
1:13 am - It's done. JBidwatcher 1.0 is released upon the world.

JBidwatcher 1.0 is released after 6 years, 5 months of development.

-- Morgan Schweers, CyberFOX!

current mood: accomplished

(26 comments | comment on this)

Thursday, August 24th, 2006
8:27 pm - Like a car knows when you have money...
Software knows when you have time.

I recently made the comment to a user and developer that it was particularly good fortune that I'd gone this long without an eBay breakage. It let me spend some time improving my other technical skills, and coming up with a plan to take JBidwatcher forward, as well as recently lent me the time to figure out some of the longer-standing bugs.

Sadly, that comment must have been 'heard' by the PTB. (I'm really just kidding, I'm not that superstitious. Any timing would have been bad, but it's always something...)

Unfortunately, yes, JBidwatcher is currently non-functioning for the majority of eBay auctions. It will likely still place snipes, but if you can't add new items, that doesn't help much.

I'm working on a fix. Happily, I *just* got my new desktop (my old one's motherboard died, so I punted and went with a completely new build, instead of repairing 'one more time' my old frankenbox). I've got the source up and building, and I've seen the bugs relating to the XML exception and Shipping failures. I've got one fixed (the XML exception) and have gotten a patch from a friendly and helpful user for the shipping issue. I'm checking to see if it fixes it reasonably right now.

As usual, this fix will also incorporate a few other changes I've made since the last release. Hopefully they should all be for the better, though.

Screen location and height should be preserved better now.
Tab removals should stick better now.

I'm looking into a set of bugs reported by another user that stops QUIT from working. (Not the out of memory issues; that's something else, and requires an architectural change, which is post-1.0.) Similar bugs also afflict startup, sometimes making it fail.

All told I'm hoping to do a release this weekend to fix all of this at once.

-- Morgan Schweers, CyberFOX!

current mood: focused

(13 comments | comment on this)

Friday, March 31st, 2006
4:18 am - It's 'official', 1.0pre6.
1.0pre6 has been released, with the few minor issues that were reported mostly fixed.

Not everything is perfect, there's still some cosmetic issues, but we've been without an official release for TOO long.

All the download information is on the homepage at:


-- Morgan Schweers, CyberFOX!

current mood: tired

(30 comments | comment on this)

Wednesday, March 29th, 2006
5:52 am - Letting 1.0pre5 peek out the door...
I've put up 1.0pre5, a new interim release, that fixes the majority of issues that I've been seeing (get selling, get my ebay, multisniping, etc.), and has some other changes that are more subtle.

This is, as always, a pre-release. Please be careful about using it, and please let me know how it behaves. If nothing is glaringly wrong, I'll be releasing it 'officially' in a few days.

For Linux and other platforms:
remember to run it with:
java -Xmx512m -Xms256m -jar JBidWatcher-1.0pre5.jar

For Windows, download from:
It's self-contained, doesn't require installation, just run it!

For Mac OS X (10.2 and later), including Intel-based:
It may download as a '.tar' file, and you'll have to double-click that to extract the actual app. Be sure to toss your old copy first, though, otherwise the new one will get a name like 'JBidWatcher.1'.

Please everyone, the most important thing is to get more feedback, so that I can know whether it's safe to release it to the general public (as opposed to the small percentage who read my blog).

Thanks very much, and best of luck with your auctions!

-- Morgan Schweers, CyberFOX!

current mood: tired

(19 comments | comment on this)

Thursday, March 9th, 2006
5:46 am - Quickie beta version to fix current eBay breakage.
Normally, if I could, I'd address this on a weekend, but that hasn't been an option this time, as the breakage was severe enough to require an emergency release.

I'm asking you to test this version, so that I know it works... I've pushed up a new version of JBidwatcher for download, which SHOULD fix the adding/updating issues. Please check this version out first, so that I can feel comfortable pushing it to a larger community. Responses will be best noticed if they include 'BETA' in all caps in the subject line someplace.

The versions are as follows...

For the Macintosh, download from:

For Windows, download:

For Linux, or any other platform that can run Java .jar files, download:

I hope these versions work cleanly and perfectly out of the box for you. If not, as I said above, please report to me anything at ALL that you find not working quite right.

Best of luck with your auctions!

-- Morgan Schweers, CyberFOX!

current mood: tired

(83 comments | comment on this)

Wednesday, January 18th, 2006
3:24 am - eBay Italy issues and Mac OS X 10.3.9 launch issues.
As I've just put on the home page, there are two currently outstanding issues.
  1. eBay Italy has put up an interestitial 'continue' page on many auctions, which breaks JBidwatcher's ability to snipe and bid.  There is a beta for this available based on your operating system.  THESE ARE NOT OFFICIAL RELEASES.  Do not propagate these, or announce them, or anything like that.  They are solutions for users who are having issues with eBay Italy.
    1. JBidwatcher 1.0pre1 for Windows
    2. JBidwatcher 1.0pre1 for Mac OS X
    3. JBidwatcher 1.0pre1 for everything else
  2. Mac OS X 10.3.9 and QuickTime 7.0.4 combine to break JBidwatcher's launch process.  You have a number of options:
    1. Downgrade to QuickTime 7.0.1
    2. Upgrade to Mac OS X 10.4.4
    3. Download the Mac OS X JBidwatcher above.
      1. Please note that the above link is for a very, very beta version of the next release.  Lots of things are changing, and some things may not even work.  It is for those used to bleeding-edge software only.
Best of luck with your auctions!

--  Morgan Schweers, CyberFOX!

current mood: tired

(4 comments | comment on this)

Wednesday, August 17th, 2005
11:25 pm - Calling strong-stomached beta testers...
I'm testing a new sniping core. The goal is to extract a LOT of the behavior which takes time to a period prior to the actual auction completion, including logging in, getting the item page via the affiliate link, and submitting the initial bid getting to the confirmation screen. It leaves off there, and then exactly when the snipe is supposed to fire, it sends the confirmation form to eBay.

Yes, folks have suggested something like this for a while, but I had to build a framework around it that supports the concept of sandboxing every snipe into its own little world.

Some example problems that could be run into due to the new core include:
  • Multiple snipes too close together could cause eBay to behave strangely, because each one is an entirely separate logged-in session. If eBay has trouble with the same user logged in multiple times from the same machine this might not work. Untested!
  • I don't know how long the confirmation page's form is 'good for', so too much lead time will expire it, and too little ends up in the same state we're already in. I believe it should be good for 5 minutes at least, and I'm shooting for a 2 minute lead time, so it should be okay. Untested!
  • My code may just fubar. ;) It's a seriously major change for the sniping process, and I may not have moved all the logging, and other details, over. It's brand new code, too, so it might just not work right for everyone.
  • The 'updating' context doesn't share a cookie with the sniping context, so if the sniping invalidates the updating cookie because of doing another login, then it's possible the updating thread will fail to load user-specific data, and/or stop working with items in the Mature Audiences category. This would be a side-effect of eBay's code not being happy with multiple independant logins from a single machine. (It would be as if you were logged into eBay from Firefox, Internet Explorer, and Opera all at once, and doing different things in each browser. I don't actually know if they support this.)
Snipes may just fail with this version.

If you're okay with that, and really want to test, please drop me a line, or reply here with contact info.

-- Morgan Schweers, CyberFOX!

current mood: adventuresome

(10 comments | comment on this)

Monday, August 8th, 2005
5:11 pm - And the crowd goes wild...
*sigh* So eBay, taking note of the imminent release of JBidwatcher, changed their adult login process. I kid, I kid... They did, however, make a rather annoying change to the final page of the adult login process, which broke JBidwatcher uncomfortably.

So adult logins are broken again... It's one of the more touchy parts of the program, unfortunately.

THIS time, though, I don't have to repeat myself to everybody and their brother, letting them know it's changed, and what to do. I've pushed a new configuration (recognizable by as just an update, recognizable by 0.9.8 as an update + configuration changes), which sets '' to false, and puts up a message explaining what happened.

As soon as the configuration is checked and loaded (some 10 seconds after launch) everybody will be updated with the newest changes. It doesn't FIX the problem, because the change is a bit more convoluted than can be handled via the automatic string update, but it does make it so that anybody currently running into it will not be running into it anymore, unless they are trying to bid on mature audiences items.

If they ARE trying to bid, snipe, or monitor mature audiences items, then they'll need an interim version, while I work on putting together 0.9.9.

-- Morgan Schweers, CyberFOX!

current mood: relieved

(2 comments | comment on this)

1:35 am - JBidwatcher 0.9.8 is released (Fly! Be Free!)
...and it's away!

JBidwatcher 0.9.8 is released, with fixes for the Search and Drag-and-Drop problem (eBay's URL change), and more...

Straight out of the changelog, here's the latest...
  • Fixed eBay's URL format change that broke search & drag-and-drop
  • HTTPS Proxy support in the Configuration Manager
  • System Tray support on Windows
  • New customizable columns: Location, Feedback, Feedback %
  • Speedups for bidding and sniping
  • PayPal Icon for auctions which appear to support PayPal payments
  • Some fixes for eBay changes can be done w/o having to download a new version.
  • Time is synchronized on a more consistent schedule
  • Sign-in failures are recognized during bid attempts
  • Much more detail on each step of bid/snipe attempts
  • You can place bids/snipes over the BIN price if you really want to
  • You can disable .html.gz archival of the auctions you've monitored
  • Several other minor bug fixes and code improvements
From a coding perspective, I'm starting to seriously use the TQM (TimeQueueManager) code I put together several versions ago, which uses a heap to manage a queue of items that will occur in the future, and instead of doing them itself, it requeues the events onto their appropriate queue. It's so cool that I named it 'SuperQueue' in the thread names. (One of the code changes this version is that I actually named all the threads, so debugging and such, tools will see names that make sense instead of 'Thread 5'.)

I eliminated the hackish way time was being synchronized; every time the 'time data' was being checked, it was checking if it needed to update, which put logic all OVER the place, and made it non-deterministic when the time would update. Instead the time is now synchronized every half hour, firmly. This stripped out a bunch of code, which always makes me feel happy.

The System Tray feature, a benny for Windows users who have been feeling neglected as I focused on making JBidwatcher work especially well on the Mac, works in a particularly hackish way. It actually extracts, via homemade code, a .DLL from the .JAR that it ships in, and puts it into ${user.home}/.jbidwatcher/platform/tray.dll and then loads it as an external library.

So JBidwatcher kind of acts as its own installer, now. I think one of the next things I'm going to have to do is provide an 'Uninstall' menu item, that gets rid of all the cruft in ~/.jbidwatcher.

With this version, and the way things appear to be cleaning up a whole lot. I need to rebuild the screenshots on the homepage, including multi-platform shots, and document everything that's shown, and turn that into a PDF or something that can act as a manual, and then maybe I can think about calling it a 1.0.

For all those who want to know what's coming, here's the list of things that I put off as potentially being '0.9.9':
  • Allow direct machine-to-machine synchronization
  • When network fails after waking (sleep wakeup), pause the network-related threads for 10-15 seconds, so it doesn't spam the logs with network failures and mark items as unreadable
  • A 'Properties' sheet for tabs, which allows setting the tab completed items are moved to, the background color, and anything else I can think of.
  • Document how to use a USB pen-drive with JBidwatcher. (One of my ingenious users figured this out, and I think it should be shared...)
  • Synchronize auctions.xml to a 'known location' on the filesystem, so tools which can't find it in .jbidwatcher can do their own network synchronization, and potentially allow loading from that location too.
  • Show how many bids you've made through JBidwatcher, either under the affiliate program or not. (Some users were curious, and I think it's a cool stat.)
  • Save search window location and size, and maybe the same for the config window and which tab is open.
Several people have recommended recently using JNLP. I plan to do that, using the extremely nice collection of JNLP fixes supplied by Nick Minutello, but it will have to wait until I go to my own server for web hosting, instead of being on Sourceforge. I've paid for the new hosting already, and am configuring it as I find time. The switchover to the new '' server should be completely transparent, and will allow me to do a few tricks I've always wanted to do, like allow '' to go straight to the bug list. I will still be using Sourceforge's bug and feature tracking, and forums, etc., of course, I just feel the need for more control over my own web server (and it's necessary for JNLP hosting, imo).

I'm also going to admit something, since I've been testing timing heavily lately. The affiliate program loading code does slow down bids a bit. Specifically, in recent tests, doing a snipe/bid with the affiliate program turned on took 3-4 seconds to pre-load the item, another 1-2 seconds to do the bidding, and then 4-5 seconds to load the post-bid data. Now the post-bid data is important, but by that point the snipe is already done. So the actual snipe takes 5 seconds, but it feels like 10. Now, with the affiliate program off, it takes roughly 1-2 seconds to place the bid and check the status, and it's done. So sniping and bidding via affiliate program feels a lot slower, but in truth it's only a few seconds slower for the critical part. (If you're shooting for the mythical 1-second snipe, I hate to admit this, but I've never gotten a 1-second snipe out of JBidwatcher, although I haven't tried in around a year.) Anyhow, JBidwatcher tries to adjust for the extra load time, but don't try for 1-3 second snipes. Leave at least 5-7 seconds of buffer, and I recommend 10 seconds for those on the fastest connections. I use 10 myself, usually, and have never had it fail to bid in time, and really rarely with enough time for anyone to respond. I'll see if there isn't some way I can asynchronously post-back the result of the snipe, while it's loading the post-bid page in the background.

All this is with the new speed changes I made in this version. The primary fix was to make it so JBidwatcher doesn't try to update any other items during a bid, so there's no network conflict with itself.

Anyhow, that's the news, and I'm outta here... Enjoy the new version, the new features, and as usual let me know ASAP if there's anything wrong!

-- Morgan Schweers, CyberFOX!

current mood: happy
Monday, August 1st, 2005
2:47 am - JBidwatcher 0.9.8
Just a note; I believe you're in for a treat with 0.9.8. It's got a LOT of cool new features, this time even some for the Windows users out there. Hmmm, could it be the single most requested platform-specific feature ever...? I'm really ratcheting in on 1.0, and if I can crank out some good documentation, I might be there before the end of the year. :)

Some noticable new features in 0.9.8 include:
  • The ability for me to put up 'fixes' that JBidwatcher automatically consumes, for when eBay changes something that can be fixed with just a config or string change.
  • I can also put up one-time messages to alert of problems w/o putting out a new version.
  • Updates are put on hold while sniping or bidding is being performed, which should speed up sniping/bidding some.
  • There's a 'PayPal' icon for auctions which appear to support payment or deposits via PayPal.
  • We have some new custom columns: 'Location', 'Feedback %' and 'Feedback' (of the item/seller, of course).
...and obviously, the fix for searching and drag-and-drop.

Unfortunately, due to some issues with Sourceforge, I didn't get the version out tonight. It'll take me a bit, because my time management sucks during the week, so it might be Monday or Tuesday night before I get to release it. It's not an emergency, since bidding and sniping still work.

-- Morgan Schweers, CyberFOX!

current mood: accomplished

(4 comments | comment on this)

Thursday, July 28th, 2005
4:17 pm - eBay's changed the URL format their search and browse pages generate.

eBay changed the actual URL format. It's encoded a little bit, changing things like '&' to QQ and = to Z, for instance. The number is still in the URL, but for some ungodly reason so is the title.

This seems a really silly thing to do, but they've gone ahead and done it, so I've got to work up a new version to fix it.

In the mean time, adding items by item # works. SO FAR it appears that adding items to my Watch List, and then synching with eBay, then clearing my watch list, also works.

Seller Search also appears to be unharmed yet, but it's only a matter of time for both of those workarounds. Normal searches and URL searches are both broken, and drag-and-drop from eBay's URLs is likely to also not work.

Bidding appears to still be working fine, so sniping should also be working.

It's the summer months; things are slow at eBay, so they take advantage of that and make a lot of changes. Some years their changes don't affect JBidwatcher that much. This year, it looks like it'll be a little less easy-going.

I'll try to get this resolved this weekend. Until then, add auctions by item #, mainly.

-- Morgan Schweers, CyberFOX!

current mood: annoyed

(2 comments | comment on this)

Wednesday, July 13th, 2005
2:17 am - JBidwatcher - Fixing the latest eBay changes...
Amidst the deep thoughts comes a cry; 'Release the Code!'

eBay changed their title format for the first time in a VERY long time, and because some of the data is extracted from their title, that broke JBidwatcher's ability to load and update auctions.

JBidwatcher's home page for more information.

It's a mandatory upgrade; by the end of the week, 100% of eBay's servers will be running the new code.

-- Morgan Schweers, CyberFOX!

current mood: tired

(comment on this)

> previous 20 entries
> top of page