Version 1.1.1 of jsmin-php is now available. The only change in this release is a fix for an issue that caused excessive memory allocation when minifying very large JavaScript files.
- jsmin-1.1.1.php (7.8KB)
Displaying posts 21 - 30 of 566
Version 1.1.1 of jsmin-php is now available. The only change in this release is a fix for an issue that caused excessive memory allocation when minifying very large JavaScript files.
Even before the whole Microsoft thing, Yahoo! was a prime target for recruiters. A recruiter will find someone’s website or LinkedIn profile, discover that they work for Yahoo!, then call one of the main Yahoo! numbers and either drill through the directory to find the person’s extension or simply ask a receptionist to transfer them. The end result is that whenever my desk phone rings, there’s a 90% chance it’s a recruiter.
On the whole, I don’t mind being pinged by recruiters via email or on LinkedIn. If they’ve actually seen my résumé, then they know my cell number, which they’re welcome to call as well. But my work number isn’t published anywhere, so when I get recruiting calls there, it’s extra annoying and doesn’t do much to establish a feeling of trust.
So, to avoid these annoying interruptions, I’ve simply stopped answering calls from numbers I don’t recognize, and I’ve updated my outgoing voicemail greeting thusly:
Hi, this is Ryan. I’m not at my desk right now, but if you leave a message I’ll try to get back to you. If you’re a recruiter, please hang up now.
Even so, I still get voicemails from recruiters. The ones who actually hear the message usually say, “I know your message said to hang up, but…” Some of them stoop to really sketchy levels, like giving only their first name (to imply that I should know them) and saying that “some important papers” have recently come across their desk and that I should call them right away. One woman left several messages like this and I eventually had to call her back just to tell her to stop.
But none of these comes close to a voicemail I got a few weeks ago from a guy who appears to have seen this site and thought (correctly) that talking about pie would get my attention. Unfortunately, he made the mistake of talking about pie while sounding like a creepy-ass pedophile:
I didn’t call him back.
When a new employee joins Yahoo!, they get to choose whether they want a PC laptop or a MacBook Pro. Unfortunately, if you choose a PC and then later decide you want to switch to a MacBook, there’s a huge waiting list (unsurprisingly, there’s no wait to switch from a MacBook to a PC).
Way back in November, my coworker Brett filed an IT request to switch to a MacBook. About a week later I filed one as well. We each got responses letting us know that we’d been added to the queue, that we could expect our MacBooks in Q1 ‘08, and that we’d get a status update in January.
When January rolled around and no status update appeared, I added a comment to my ticket requesting an update, but never got a response. In early February, I again requested an update. Still no response. Yesterday I decided to pull out the big guns. I resolved to post a poem to the ticket once a week until IT responded.
At 11am on Thursday, I posted the following limerick:
I filed an IT request
A response was promised with zest
When layoffs occurred
And Microsoft merged,
My ticket was lost in the mess.
By 11:13 the ticket had been assigned, and this morning I had a shiny new MacBook Pro.
Needless to say, Brett wasn’t too happy, since he’d filed his ticket before mine and should have been earlier in the queue. Luckily I had already written a haiku (having anticipated that the limerick would be ignored), so I suggested he post it to his ticket:
A MacBook request
filed in winter, long ago;
spring is drawing near
He posted it this morning and IT contacted him this afternoon to let him know his MacBook was being set up.
Result!
I got a mass email this morning from Dash CEO Paul Lego. It was sent to everyone who pre-ordered a Dash Express (which Dash had promised would ship by the end of February). As you might have guessed, the email contained a last-minute announcement that the units won’t actually be shipping in February:
We’ve spent the past few weeks conducting extensive product testing to assess our readiness to ship. While we’ve made a tremendous amount of progress on the product, we have a few remaining items we would like to address before we release it. We’d like to ask you to hang on for a bit longer as we complete this development work. We’re setting a firm ship date of March 27th, 2008, and are committed to doing whatever it takes to meet this goal.
Obviously I’m disappointed, since I’ve really been looking forward to the Dash Express. But I understand that they want to get things right, especially since this is their first product. I’m willing to wait a little longer for a higher-quality device.
That said, I’m angry. I’m not angry because the Dash Express was delayed or because there was no communication about the delay until the last minute; I’m angry because, in an obvious attempt to appease the disappointed masses, Dash has made the ridiculously stupid mistake of “setting a firm ship date of March 27th, 2008”.
You can’t have it both ways, guys. Either you’re committed to quality and you’re going to delay this product until you’ve got all the kinks worked out, or you’re committed to a date and you’re going to ship it—kinks and all—when that date hits. I’m willing to wait until Christmas if it means I’ll get a bug-free device, but I’m not willing to wait until March for a device that will be slightly less buggy than it would have been in February.
Netflix just pounded another nail into HD DVD’s coffin. Here’s hoping it’s the final nail. This nonsense needs to end.
I have both a PlayStation 3 (which plays Blu-ray disks) and an Xbox 360 with the HD DVD addon drive, so I’ve been sampling both formats for a while now. It seems like the HD DVD camp wasn’t even trying. Even the biggest HD DVD releases seem like they were shoved carelessly out the door, much like those horrible first-gen DVD titles I remember watching back in the late 90’s.
I can’t actually think of a single HD DVD title I’ve rented or bought that didn’t use a hideous default menu template with generic music and a rotating studio logo, whereas most of the Blu-ray titles I’ve watched (even the ones that were released in both formats) had the well-designed custom menus I’ve come to expect from quality releases.
It also doesn’t help that some of the more recent HD DVD releases are “Web enabled”, which just means they’ll lock up your player for 10 minutes (or sometimes crash it entirely) in order to download “exciting Web-enabled content” before allowing you to watch the movie. Fuck that.
According to Steve Yegge’s latest epic blog rant, I’m a n00b because I like pretty code. But apparently my love for dynamically-typed languages makes me less of a n00b. I’m so confused!
Joking aside, I couldn’t agree more with his main point, which is:
I think we can learn some lessons from code-commenting: don’t try to model everything! You need to step back and let the code speak for itself.
Hear, hear!
Update (2008-03-12): Riposte has been renamed Thoth to avoid a trademark conflict. This post has been edited accordingly. Sorry for the confusion.
Aphyr asked for some technical details about Thoth, so here they are.
One of the lovely things about Ramaze, the young (but rapidly maturing) Ruby web framework I used to build Thoth, is that it provides lots of nice features to help you get things done quickly and cleanly, yet it does so without dictating that you build your application a particular way. In fact, it’s so modular and so customizable that it’ll happily allow you to use just about any template engine or ORM you prefer.
I initially chose DataMapper as my ORM layer, largely (I confess) due to its pretty website. Unfortunately, it turns out you can’t judge an ORM by its cover. I quickly became frustrated with the lack of documentation, and when the source code itself proved difficult to understand due to a severe lack of useful comments, I decided to drop it in favor of Sequel, which has much better documentation and a more mature (and better-commented) codebase. So far I’ve been very happy with that choice.
I chose Erubis as my template engine primarily due to its maturity and speed. Ezamar, Ramaze’s native (and default) template engine, was also appealing, but it can’t compete with Erubis in the performance department. In addition, Ezamar evaluates its templates as Ruby strings in order to use Ruby’s native string interpolation features. This means that # characters must be escaped when displaying user-supplied content to prevent the user from executing arbitrary Ruby code like "#{File.read('/etc/passwd')}". Ramaze now includes a helper method to do this, but at the time it didn’t, which was a factor in my decision to use Erubis.
Since Ramaze is still young, the documentation isn’t quite as complete as I would have liked. However, the source code is well-commented and very clean, and when I had learned everything I could from the documentation on the Ramaze wiki, I found that it wasn’t hard at all to figure things out by poking through the source. On the few occasions when even the source didn’t answer all my questions, manveru and the other folks in #ramaze were happy to help.
Thoth is now feature complete and ready for release. I’m just waiting on Ramaze 0.3.6 (which contains a few features Thoth uses) before I push it out the door. In the meantime, if you’d like to try it out, you can follow these instructions to install a nightly build of Ramaze and the latest Thoth code. Let me know what you think.
After stumbling across Ramaze a few weeks ago, I knew I had finally found the Ruby web framework I’d been waiting for. It’s still young and the documentation is still sparse, but the code is so clear and well-commented (and the folks in #ramaze on freenode were so helpful) that it only took me a week or so of frenzied hacking to completely rebuild wonko.com in Ruby. You’re looking at the result.
The only significant user-visible change is that the search feature is now powered by the Yahoo! Search developer API. Try it out; I think you’ll be pleasantly surprised by how well it works.
I’ll post more about Ramaze and Thoth (my new blog engine) later. In the meantime, if you’re curious, you can find the code here.
Beginning February 12th, Microsoft will make IE7 an automatic update for all Windows XP users except those who manually opt out. This is the best news I've heard all week. Good riddance, IE6. Burn in hell.
Apart from a few games, Quicken is the last piece of Windows software that I just haven't been able to replace since switching to Mac OS X. The Mac version of Quicken is pretty much universally hated and is, from all accounts, a buggy piece of crap, and I have no desire to boot up a Windows VM in order to run the Windows version.
I tried a few other OS X finance apps and wasn't happy with most of them. MoneyWell was nice enough that I actually ended up buying a copy, but after a few weeks of use I discovered that it's just not as convenient as Quicken was (it also suffers from a few annoying bugs).
In terms of web apps, Mint is okay, but pretty limited, occasionally glitchy, and spammy. Buxfer is nicer, but often frustratingly slow, and still not as advanced (or as automated) as I'd like.
Somehow, while searching high and low for a Quicken replacement, I completely failed to discover Quicken Online until today. I was blown away. It doesn't have the full featureset of desktop Quicken, but it's got all the stuff I care about, wrapped in a gorgeous, responsive UI. They even officially support my new favorite browser, Safari, and there's an awesome iPhone interface for when I'm not near a computer. Within five minutes of signing up I had imported all my accounts and was ready to go.
If you haven't taken a look at Quicken Online yet, I recommend checking it out.