January 2012
2 posts
Adventures in Maintenance
Here’s the short version: more than a year ago I made a huge mistake in how Dress to Impress handles information. Today I fixed it.
Here’s the longer version:
Thursday night, we brought the main Dress to Impress server down for about an hour and a half, temporarily sending visitors the old server. The “enter a pet name” feature on the homepage was also spotty for the...
December 2011
1 post
Image converters back online - and everything's...
UPDATE: Wow! The converters cleared the backlog much faster than expected. Everything should be smooth sailing now :)
So, as it happens, the Image Mode converters have been down for a while now, and finals week prevented me from looking into it too closely. However, I’ve since managed to track down the issue, and the converters are now back online and gleefully plowing through a backlog of...
November 2011
1 post
Stop American Censorship →
The internet as we know it is under attack. Today, November 16, Congress is holding hearings on the first American Internet censorship bill, which would give the American government and the entertainment industry unprecedented power. This includes the power to block websites for infringing content posted by its users, even if the site didn’t know about it. The bill also makes it...
August 2011
3 posts
Botox round two
Sigh. Just like last week, Dreamhost started pointing impress.openneo.net to another customer’s website.
We emailed them asking them to both resolve the issue immediately, and find a more permanent solution. The Dreamhost staff implemented a short-term solution within minutes, though we haven’t heard back yet about why this seems to keep happening. In the meantime,...
Sorry for the Botox downtime!
Well, that was odd. I woke up this morning and found that at some point while I was sleeping http://impress.openneo.net/ started forwarding to some cosmetic consultants website. Umm, weird.
To be clear: this was not any sort of attack against DTI, and the Botox site was totally unrelated to Neopets. Dreamhost had some internal trouble, and started pointing that domain to another customer’s...
Your Items is released! →
While waiting for the server upgrade for the most requested DTI feature ever, we’ve been working hard on the second most requested feature: the ability to track the items you own and want. We did it, and did it pretty darn well. Here’s the scoop:
Track your items: If you’re logged in, you should see on any item’s page the “I own this” and “I want...
July 2011
1 post
June 2011
1 post
Upgrade successful!
Today we had some downtime here and there, but it was for a worthy cause :) In short, we swapped out some of the technology that runs Dress to Impress in order to reduce memory usage (that’s how much RAM the site is using) so that we can do more things at once.
Note that these changes involved moving to a different version of Ruby. I think I caught all of the major compatibility issues, but...
May 2011
5 posts
Weekend updates :)
We’ve had some fun this weekend fixing some minor issues around the site. Yay!
The first gender/emotion state for the Tyrannian Uni no longer has a big, fat White Koi sticking out of it. Please report any other glitched combinations you see, and note that, usually, a good temporary fix is to click one of the other numbered gender/emotion buttons.
Entries in the Infinite Closet items...
XSS vulnerability closed
Just a quick notice that Dress to Impress had an XSS vulnerability in the Infinite Closet section, which has since been resolved. We have no evidence of anyone abusing this vulnerability, nor would they would have been able to access sensitive account data, regardless.
If you’re interested, here’s the source code change that fixed the security issue. Short and sweet one-liner,...
FEATURE: Infinite Closet supports Baby, Maraquan,... →
First off, sorry for the downtime. This quick feature is to make up for it :)
The Infinite Closet is our lovely wearables database, and it has a neat little feature for previewing items by species. However, that feature was flawed: some items only fit Baby, Maraquan, Mutant, 8-bit, etc., pets, some because they were just plain special (Baby Pajamas, Maraquan Dress, Elegant Mutant Cape) and some...
Error Postmortem: Database write issues
Exciting things happened over the weekend. Namely, the beta server ran out of disk space. Oops. This caused any request that wrote to the database at all to just plain cut off.
Fortunately, the biggest offender wasn’t all those SWFs we downloaded (that’s at about 1.6GB right now) or even the MySQL database (nowhere near that). It was our server logs, that have been tracking each HTTP...
ERROR: Database write issues
The server is having trouble writing to the database. Since I just got home from being out of town for, heh, days, I can’t investigate right now, but I bet we’re out of disk space. Looks like we’ll have to reevaluate our current strategy of downloading all the SWFs in order to handle cross-domain policy issues.
We’ll be working on a fix very, very soon. Thanks!
April 2011
3 posts
Outfit saving all fixed :)
There was an issue with saving outfits in non-Chrome browsers. It has since been resolved.
It was kinda silly, really. I left in a line of code for debugging that tried to log a message to Chrome’s debug console every time an outfit saved. In browsers that didn’t support the console, the code would throw an error and never save the outfit.
This took me longer to resolve than most...
Happy April Fool's! →
Hope you enjoyed my superb acting skills. *takes a bow as Lilia, Avast, Suzie, Jerry, etc.*
I know absolutely nothing about how restocking actually works; I just threw together an algorithm, said it was the official one, and watched the show :) Here’s hoping you didn’t waste too many hours on getting those hundreds of Draik Eggs that “restocked” yesterday!
Anyway. Shop...
[NEW PROJECT] Shop Warlock →
OpenNeo now reveals its latest major project: Shop Warlock, an app that, by fancy mathematics—whoops, magic—can tell you when an item will restock before it even happens! Tired of wasting time restocking? Now you only need to press F5 like crazy juuuust before the Draik Egg is scheduled to wander in—though, as always, you’ll still need to be pretty darn fast to snatch it up, or, if...
March 2011
5 posts
[All clear?] SunnyNeo was hacked
This is a safety announcement regarding a website that is totally unaffiliated with Dress to Impress. We just thought you should know.
Update: Sunnyneo seems to be back up, but the Twitter account is permanently lost to the hacker. Unfollow. Also, the question mark after “all clear” is due to the fact that, after SN’s first announcement that the problems were solved, the site...
Quick feature: "Share outfit" for logged-in folk,...
Got a quick e-mail today asking about if logged-in users could have that quick-and-nifty Share Outfit button, too. Put it in. Awesome :)
I’m a bit worried about how it will interact with the existing Save Outfit button. Everything looks good and working as expected, but lemme know if something seems off.
Nifty, less-quick features in the works :) Thanks for using Dress to Impress! —Matchu
Quick feature: Outfits page →
So today Ataliah reminded me of a feature request from a while ago: a way to get straight to an outfit you’ve made rather than having to make a dummy outfit from the home page first. I was feeling in a particularly codey mood, so wrote it right up :) When logged in, you’ll now see a neat link up in the top right corner that says “Outfits,” pointing to a page that lists all...
Jellyneo releases wearables previews →
The Lenny Wizard has finally finished initial prep and has released Jellyneo’s Previews to the world :) Right now, the app has similar functionality to the Infinite Closet, though the staff has been hinting that the project will be expanding in the near future.
My current experience with Jellyneo’s Previews is that, since they have staffies dedicated to spending hours collecting SWFs,...
Dress to Impress (beta) works on my Droid
Got a new phone today (Droid X, woot!), and was pleasantly surprised to see that the beta version of Dress to Impress works totally as expected. Awesome. (impress.openneo.net doesn’t handle small screens well, whereas the beta app has that functionality :D)
That’s all. I just thought it was neat. Obviously, it wasn’t blazing fast, but it wasn’t super-slow, either. Awesome.
February 2011
4 posts
Happy pets! And converted by default
Just about every day I get an e-mail about how all the pets are sad and how some are unconverted. Well, no more! Thanks to some clever database magic, the default gender/emotion state on the beta server will always be happy (that’s in the item database, too), and the unconverted state will always be the last in the list.
In short: no more sad pets by default! Yay!
As always, this new...
Bundle of beta bug fixes
A few minor bug fixes today to make the beta server more stable :)
Gracefully handle connection errors when loading in pet data (if any of the Neopets servers are experiencing temporary outages)
Support pet names with some illegal characters (for instance, names with spaces that were created before the current restrictions)
There’s still an issue that’s difficult to track down...
Outfits interface prettier, no login required
Just another feature on the lovely beta server :) Outfit saving has been made distinctly prettier and easier, and, as a totally new feature, users who don’t log in can now easily share outfits with others, à la the main server’s “Short URL” button. (They still can’t save them and edit them later, since that doesn’t really make sense without an account to save...
Memory leak solved—finally!
If you use the beta app at all, you’ve probably noticed very serious slowness and downtime. It hasn’t been fun. However, after weeks of investigating, we’ve finally managed to iron out the memory leak and things are good to go :)
What that means to you is that the beta version of Dress to Impress, where all the latest features go (including outfit saving), is now up and running,...
January 2011
6 posts
Customisation Roulette (new feature!) →
Earlier today, TNT posted on their Facebook page a few photos of “Customisation Roulette,” where they chose a random species and color and proceeded to fill all of the zones. Naturally, I was inspired, and decided to quickly throw together a similar feature for our open-source customisation site, Dress to Impress :)
Go to http://newimpress.openneo.net/roulette or type in the pet name...
Beta server downtime: workin' on it
After setting up Monit to keep an eye on the beta server, we noticed that Monit would often restart the app for taking up too much memory, and restart so often that it would just give up and leave it off. That’s not good.
It looks like the beta app has a memory leak, meaning that, on each hit, the application consumes more and more memory, slowing things down on the whole system. We already...
New login server goes live: finally, password... →
This has been a while in the making, but at least one major bit of Dress to Impress has now entirely moved to the new server: accounts. Both the main server and beta server now run through the new OpenNeo ID server to log in.
This new server brings in all of the features that login should have had in the first place: password resets, changing password/e-mail, etc. Plus, it’s prettier, and...
Beta server gets auto repair for downtime
Wow. So apparently the beta server was down for three days and, since I was working on my local copy of the site, I never checked the beta server. Sorry about that; that’s an indicator of a problem if I ever saw one.
Therefore, the Dress to Impress beta server now comes fitted with an installation of Monit that constantly tracks the web server (nginx), the application server (thin), and the...
Happy New Year!
2011! Woot, woot! Hope the holidays went well, and I’m looking forward to another year with one of the most awesome communities I’ve ever seen.
December was a busy time, and work on the beta server kinda slowed down in the past few weeks. Thankfully, college apps are alllllmost done, so here’s hoping that January is full of opportunity to polish off the beta site, add a few bits and bobs here...
December 2010
2 posts
Small API policy change
Small update that I doubt really affects anyone, but here it is, regardless.
Way back when, I announced that anyone and everyone could store copies of DTI’s database pretty much without limit. No real cap on requests, and no real restrictions on use.
Now, however, there has been semi-regular downtime due to too many users accessing the site at a time, which is why we’re moving to the...
Small API policy change
Small update that I doubt really affects anyone, but here it is, regardless.
Way back when, I announced that anyone and everyone could store copies of DTI’s database pretty much without limit. No real cap on requests, and no real restrictions on use.
Now, however, there has been semi-regular downtime due to too many users accessing the site at a time, which is why we’re moving to the...
November 2010
2 posts
Contribution fixes :)
Was doing a few changes to the contributions section to make it work with some future plans, and fixed a number of bugs while I was there. First off, all pet type contributions were breaking the contribution page they were on, due to a really stupid mistake that I can’t imagine how I actually made. Second, dates older than a week old no longer show “December 31, 1969” (computers...
October 2010
3 posts
DNS issues :(
Our host seems to be having trouble today. Dress to Impress was down for about ten minutes at about 11:30am NST, and the forum still seems to be down at time of posting, 2pm NST.
Nothing serious, no big issues. Just thought we’d keep you in the loop :) Dress to Impress resolved itself fairly quickly, so the forum should hopefully follow suit later today. If not, we’ll keep you...
is:pb filter helps sort out deluxe paint brush...
Short and sweet: is:pb only includes paint brush items in search results, and -is:pb removes them. Vicki pointed out via the feedback forum that all paint brush items have the same description, which I didn’t actually know, so I got to building that feature pretty quickly. Woot, woot.
Also, in the process, I moved the Infinite Closet to the latest version of Rails 3, the one that’s...
Nox Transfabulator — model this brand new stuff!
Part of today’s plot step release was the release of the Hubrid Nox Corridor of Chance, and the “Transfabulator” within, that grants your pet brand new, exclusive wearables. Here’s the official FAQ on the subject.
This is a great chance to earn points, since it would seem that there are a significant amount of totally brand new items that are species-specific. We like...
September 2010
6 posts
Trying bug fix again. Resubmit MMEs!
Well, I found the stupid mistake behind that last bug “fix”. And it really was stupid.
We’re trying this stability upgrade again, and things should hopefully be good to go this time around. Just in case, though, please be on the lookout for data going missing or error messages popping up, since they’re likely associated with this particular update. Also, be aware that we...
Time travel successful: database rewound by 24...
A good recovery, eh? :)
Yesterday we pushed out a bug fix that, unsurprisingly, turned out to be a bit buggy itself. At 2:30 PM NST today, we went down for about 15 minutes to move the site back to its previous version, including undoing that “fix” for the moment. Phew.
The “fix” seemed to cause issues with saving new data to the server, resulting in contributions being...
Bug fixes for the bug fix?
Hmm. Something happened today. Interesting.
The main wardrobe feature was having some serious issues, but a rollback on the Javascript file seems to have taken care of that.
The contributions list seems to have taken a hit, though, and it will be difficult to debug until I can get back to my home computer. We’ll see how that works out.
Thanks for bearing with us, and thanks for using...
Experimental bug fix just got pushed out
Yet another fancy-pants tech bug fix, to make Impress more stable. Woot woot :)
This time, we finally tackle the messiness of MMEs, and how they change what they are, and therefore change what SWF assets should be associated with them.
It’s really just one big, fancy, very specific DELETE message sent to the database every time you upload a pet… but it is a DELETE message, so I’m...
Bug fix regarding missing contributions
Found it! :D There have been reports for a while now of people modeling items on their pets and not getting credit. The bug has been tracked down and resolved.
Technical explanation for those who care: we were deciding whether or not an SWF asset was a new contribution by checking if an asset with that ID already existed. The thing is, object assets (a Gormball Necklace for a Kacheek) and biology...
August 2010
2 posts
Now an open API, woo!
I hear things. I know of at least five other sites that were at one point working on big fancy things that involve wearables data. And it feels odd to be open enough to offer the code, but not open enough to offer the data. After all, I’m just one guy—a wearables app run by a whole staff is much more likely to keep up with all the latest data and be able to take care of the nonsense that is...
All is well
It was lovely to see that Dress to Impress was able to stand on its own for the two weeks I was out without so much as a hiccup. Looks like the site is stable.
We’re getting 1k+ visits a day, and no issues, which to me indicates that DTI is ready to fly on its own. As such, there probably won’t be any new features for quite some time, since everything seems okay and my time is...
July 2010
11 posts
I'll be out until August 9th
It’s finally time! I’m so excited!
Each summer, I go on a mission trip with my church, and this year is the year we go international :) Mission England! Woot woot! (Yep, there’s poverty there. For real.)
I’m really psyched to get to go out of the country, clean up yards, and play with kids who need just need someone to play with :)
However, everything involves sacrifice....
Say hello to the "is:nc" filter! →
Today I learned that NC mall items all have a rarity index of 500. And Impress already has the rarity index of each item it’s ever seen. As such, the “is:nc” and “-is:nc” queries now work as expected to either restrict to NC-only or NP-only items, respectively.
Well, that feature was distinctly easier than I could have ended up making it.
Thanks for using Dress to...
The Uni bug is... on TNT's side?
We’ve investigated the infamous Uni bug that shows you Uni SWFs in addition to the correct ones, and it looks like, umm, it’s a bug on Neopets.com.
When a pet is wearing clothes, then is zapped into something like a Mutant Mynci, it’s technically still wearing those clothes - you just don’t see them. When we download the data on what the pet is wearing, though, even though...