Archive for the tag 'Firefox'

Firefox plugin wanted: Pretty-Printer for JSON

Hmm, when you start working with a bunch of webservices that spit out JSON (really, it’s inevitable; leave XML for interfacing with the Big Iron, especially since almost noone seems to understand when to use attributes, and so most docs are 95% elements), you’re going to want a nice way to look at the output for visual debugging. That’s one thing the current crop of browsers finally got right, is being able to pretty-print XML, even without a default stylesheet. For example, here’s what I get in Firefox for part of a sample document (cropped, the doc is valid!): Read more »

The agony of Firefox beta upgrades

Pretty much no extensions have been updatedPretty much no extensions have been updated for the Firefox 1.5 beta 1 release yet. That sux. I feel naked without my favorite extensions! Oh web developer toolbar, where art thou?! Greasmonkey! Sniff, sniff!

I am impressed that the Yahoo toolbar has been updated though! Way to go, guys!

Apps apps apps

I haven’t posted in forever. I know. I will start up again soon. But I just looked down and thought, hmm, this is kind of interesting and says something about my workflow… how many and what windows (applications) I have open. I’m currently working on the tail end of a lot of changes to prince.org 3.0, and thought it’s interesting. Here’s what’s currently open:

- Firebird (of course). A couple windows. One to work on the code for a popup, the other is the “main” one with right now, 7 tabs open (about average). The tabs are for: (1) another page I’m working on, (2) the live version of the site for comparison (3) mysqladmin on localhost (4) paypal IPN documentation, (5) google, (6) a page on mailman archives [I'm sending admin mails from the site to a qmail virtual domain to a mailman private list... oh, don't ask...] and (7) typepad.

- A couple folder windows (to the source base dir, and to the icons dir as I was tweaking some graphics with ImageReady earlier.)

- OpenOffice Writer, which has some moderation guidelines I’ve been hacking on, and list of new mods for the site.

- Cygwin bash (rxvt window). For grepping the source, running scripts, quick cvs stuff, etc.

- Cygwin bash (standard console shell). This is essentially my permanent “mysql client shell”. I would use the rxvt window for this (it’s much nicer) but the mysql client for windows does something strange to the std file descriptors and thus, gives no output in rxvt. So… the ugly console suffices.

- iTunes, for obvious reasons. Last played was Ani DiFranco ‘Little Plastic Castle’ and Paris’ new release of ‘Guerrilla Funk’. In case you’re curious, I have 7,738 songs (23days worth), according to the status line.

- Komodo, editing source files. I have 13 tabs (files) open in that. I have to close it at least once a day, it leaks :-(

- EditPlus. Oh, I can close that now I guess. It’s my “old trusty, el quicko” editor. I was using it on a file that I needed to do regexp search-and-replace on. Komodo seems to be lacking that :-(

- Microsoft Virtual PC. Inside that, I’ve got a Win98 installation running IE 5.5. It’s for testing the CSS/DHTML stuff on an older browser. I don’t support anything below IE 5.5, and can test on XP IE6 and Firebird on the main environment. Only other thing I test on is a Mac browser, but that’s the machine next to me.

- Thunderbird. For e-mail of course, and a bunch of the code I’m working on today is relating to sending emails to moderators, etc…

- SecureCRT. Connected to the live machine, comparing some things in the database, etc. I prefer to do that within a completely different session and app (I could do it in a cygwin shell), because once I did that and forgot which database I was modifying and… bad things happened.

- Trillian. But it’s just doing its thing. I’m immersed in coding so I turned its sounds off, and I am only paying attention when someone from my ‘family’ group, my mom or grandparents, come online.

- At the moment I don’t have the PHP Winhelp reference opened, but I often fire it up for a minute, look something up, and kill it. It’s the fastest way to get an answer (for example, the format codes for date()…), often way faster than going to php.net/<query>.

Plenty of other stuff running, but that’s what’s actually open and getting interaction. I remember thinking when I built this machine “hey, 512M RAM will be more than enough!”. Riiiight. If I fire up PhotoShop, it goes into swap…

Anyhow, I though that was vaguely interesting. How different is your setup? I’m actually a little surprised at how much “free software” I heavily depend on; and even the commercial packages are pretty inexpensive. The Adobe stuff is the only really expensive thing, and I could probably get away with a cheaper alternative, but I own it, so I’m gonna use it. I’ll probably wean myself off SecureCRT when I next need to upgrade and pay, which seems to happen every 2-3 years with them. The rxvt shell is a decent enough ssh client.

Everyday tool roundup

I thought a good, non-personal-info-divulging post I could make would be about various tools I use, this way I can vent, and maybe someone can suggest improvements to my workflow, etc. I won’t get into the things I deploy on servers for apps, mostly because this tends to depend on the project more than any personal bias (I hope). In this post I’m just going to share the applications I use daily for my tasks, not the things I deploy. Maybe in the future I’ll do one for libraries I use a lot…

Email
Corporate: Outlook. It’s just the best windows-based reader, and I need the Exchange integration, so options are limited. I like it and am used to it, anyhow.
Personal: Yahoo business webmail. Yeah, it’s a little clunky, and the spam filters aren’t perfect, but it’s pretty damn good webmail, that works everywhere, it fairly light, and “reasonably” priced. Aside from a few weeks 1 year ago when they kept screwing up my mailbox, it’s been flawless from a reliability/stability standpoint. It’s my browser’s homepage.

Word processing, Spreadsheets
Microsoft Word & Excel: I give in, I’ve just been using them too damn long to use anything else. If I could convince my CEO to switch the whole company to openoffice, I’m sure I could live with OOWriter etc… but I sort of know where everything is in the MS apps, I have my little style-macros set up, blah blah. Anytime I use Word to write something longer than a few pages I run into the various ugly spots (list numbering, outline vs. normal text authoring, master document bugs, etc.) but I generally know the workarounds. I seem to remember loving AmiPro in a previous life, but M$ has the corporate world beholden at the moment. And Excel, well, it’s possibly the most polished app Microsoft makes, I think. An assload of features that actually work, and eminently useful for light- to medium-weight analysis. I’m going to ditch my pirated copy of office at home (well, technically I think I am covered by our corporate license somehow) one of these days, and really try StarOffice or OOO. Certainly on the Mac at home, I’ll give it a go–I have a no-pirate policy on the wife’s computer (whoo hoo licensed Adobe products!)

OS
To put it simply: If I want a desktop, I run Windows. If I want a server, I run Linux/FreeBSD/Solaris, depending on the purpose and pocketbook.

Coding
Ah, now we’re on to the serious stuff!
Editing/IDE
On unix-ish machines: Emacs, with my php-model.el and some other goodies. vi only when absolutely necessary. On windows, we get into a world of pain. Yes, I know I can get emacs for windows, but I just… well… hate it for some reason. It feels kludgy, and if I can drop files on a window to open them, I like to.
I’ve been trying out a few different editors. For C# of C++, no argument, I use work’s copy of VisualStudio… the Intellisense, and GUI builder integration, is so tight, I think it’s insanity to use anything else. But mostly I don’t do that kind of stuff these days. (Strangely enough I always got away without a “smart” IDE for Java when I did a lot of that… I typically just used Emacs. Probably these days I’d go for IDEA or Eclipse, though.)
Anyhow, I have purchased EditPlus in the past–it’s super small, light, fast, and basically pretty nice, but isn’t really IDE-ish–but a very strong text editor, and fits nicely on a floppy. I am glad I bought it, but only use it for lightweight stuff now.
Most of what I write these days is PHP and Perl, so I have been looking into IDEs that support that. I like the freeware-ish PHPEdit, but their release management is horrid, and each version seems to have different, but significant bugs, than the last. I was using a year-old version for quite a while, and it was 95% right. I don’t trust them to be able to support it in the future though. Editors are tough, for open source.
I also just bought the personal edition of ActiveState Komodo, and in the first 10 minutes of using it I found 2 bugs. Over the next few days, I’ve hit two distinct, important bugs–one is a crash, the other is a weird some-keys-no-longer-work thing. Also, it’s still pretty slow–faster than the previous releases, but 2.5 is still a bit of a dog. I don’t know if that NSPR library is really the right choice, but it would be comfortable to have it on both Linux and Windows. Right now I’m really just interested in Windows. The quality so far is making me wonder if anyone at ActiveState actually uses Komodo for coding tasks…! I’m hoping to get some use out of the Perl, XSLT and Python dev modes though, they look promising.

Revision control
For now, I’m a cvs man. I’m playing with Subversion for a new mini-project, I love the atomic aggregate commits (you know them as ‘changesets’), but the tool still seems a little rough around the edges, and the biggest thing is how happy I’ve become on TortoiseCVS. I still use cvs command-line on linux a ton, but more and more of my coding is done in windows, and Tortoise just kicks ass. I think they should start charging for it :-) It’s a shell extension that provides interface to CVS, and it’s really slick. Excellent piece of software, and they’ve just about got all the bugs worked out of it (for a long time it was in the “promising, but crashes explorer” phase). If they make a version of Tortoise that supports Subversion, I think I’m sold, that’s it, I’m done, source code control is a solved problem for me. (If you ever feel the need for entertainment, buy me a beer and I’ll tell you about my previous employer’s experiences with BitKeeper!)
I also use ViewCVS, and can’t live without CVSSpam (it’s in Ruby!).

Instant messaging
Trillian Pro. It rocks, especially now that it supports Jabber (which I honestly haven’t gotten working with it yet, but they claim it works.) Pro 2.0 adds nice polish. Seamlessly supports MSN, AOL, ICQ, Yahoo, and looks good doing it. That reminds me, I really need to start looking more seriously at the Jabber protocol/specs…

Password management
OK, I think there may be better (or cheaper) tools out there, but I use Eldos Keylord. It’s some shareware I bought for doing pw repository tasks. I keep the repository (apparently blowfish-encrypted based on the pw you enter every time you open or save), on my removable flashdisk key-thingamabob, so I always have it with me. It’s pretty small, and has some intelligent features, plus a pocketPC and palm version, if you’re into the PDA thing. A nice touch is that if you buy all 3 versions (it’s pretty cheap), you get the source… so you can audit it for security if you’re paranoid about that kind of thing. I love the “lock on minimize” and “timed minimize” features, just in case I forget to lock my notebook (ctrl-alt-del, enter) when I walk away.

Shell/misc
Gotta have Cygwin on windows–I can’t live without tail, grep, wget, rsync, etc. etc. from the command line. Also I bought PowerArchiver, a really nice windows zip tool. It’s not perfect, but really close, and understands .tgz .bz better than Winzip, it seems.

Web browser
Firebird all the way. I still use IE for final site testing and corporate Exchange webmail, but that’s about it. Firebird is just the cat’s meow. Must-have extensions: the Live HTTP Headers, Venkman JS debugger (amazing), and the Web Developer toolbar. These extensions, plus Firebird, make my life so much easier it’s ridiculous. I can’t honestly think of doing web development (especially the front-side stuff) without them.

RSS Aggregator
I used to be a big fan of Dare Obasanjo’s RSS Bandit, but now I’m leaning towards the web-based Bloglines. More on this as I get used to Bloglines… it’s just a huge hassle to only have one place with my feeds. The web is the obvious location for this kind of app, though, IMO. When they start charging for it (inevitable) I’m sure lots of imitators, probably even sourceforge projects, will pop up to duplicate it–it’s pretty simple. But a good idea.

Bug tracking
Bugzilla. I know it’s old, creaky, and the code isn’t great. But it works, and has a zillion features, and is free. You can’t beat that. Fairly easy to integrate into CVS with a little scripting, or do anything else you want with it… and scales to large projects and teams pretty nicely.

Remote access
ssh on windows: Well, I advocate other folks use PuTTY, because it’s free and good (and the key agent can be utilized for TortoiseCVS, which is sweet), but I usually use SecureCRT. Partially because I’ve paid for it, but also because I’m so comfortable with it, it’s copy-and-paste semantics, etc. It’s pretty solid, and pricey for a single home user compared to PuTTY, but I like it.
scp on windows: WinSCP, it rocks. And faster than the cygwin tools…
FTP on windows: I don’t do much of this. When I do, I use SecureFX (because I bought a license along with my SecureCRT one), but I don’t really like it. When I’ve been forced to do a bunch of ftp from windows, I’ve used LeechFTP, but it’s not being maintained and has some weird bugs that can corrupt transfers, it seems.
Xwindows on windows: I am a big fan of XWin32, although honestly I don’t have a legit license for it, and have stopped using it. I find it’s not really necessary, just nice to have. The cygwin xfree32 stuff will sort of do the job too, but it’s really painful–XWin32 is much nicer. But not nice enough to justify the cost, for me personally. If I can get an employer to pick up the tab, I’ll run it.

Database & other design stuff
Of course for SQL server, I use their tools; mostly Query Analyzer, less so Enterprise Manager (can do a lot of the DBA stuff from QA by calling stored procs, anyhow.) For Oracle work (I don’t do much of it…) I use an ancient copy of FreeTOAD. For mysql, I have tried a ton of GUI tools, and decided actually, I like phpMyAdmin (web-based) the best! They just continue to pile on the features for it, and it actually is really fast to use once you’re used to it, and it’s running on a box on the LAN.
For DB design, I like DeZign, although I’ve never bought enough copies for all the people that should really have it.
I’ve played with Rational Rose and a couple other UML tools, Visio was my favorite of the bunch, but basically all of them were too expensive/too formal/too restrictive for me. I am not a huge UML guy at the moment. We need the depth of thinking that is enforced by these tools, but I’m not convinced the notation itself is necessary to actually get most things done, or even the best way to communicate it, although a shared nomenclature for expressing functionality and interactions is a good goal. Most of the apps I’ve devloped didn’t require that level of “interaction management” if you will, though. <soapbox>We were usually successful with: Get a bunch of smart people together; hash it out on the whiteboard; everyone break for a few hours or days to have a good think, and while the project architect drafts up a proposal (and thinks about/creates a small prototypes); return to the discussion with proposal and clear heads, and repeat steps as necessary. At the end of that, document the decisions. You’ll almost certainly have a good solution, if you have quality people. </soapbox>

Project management and related
I’m forced to use MS Project, but I really don’t like it. It was a bastard stepchild for the longest time, with no updates from Project 98, and now the new version is bloated and heavy. I’ve actually started just using Excel and a few small macros for sorting, etc. I’m in search of a good web-based on, the most promising seems to be dotProject, but I’m not convinced about it either, yet. I’ve found a bunch of bugs, and the dev team seems a little on the green side. But, they are making progress, so I hope it becomes really usable soon… I’m unlikely to advise any org I work for to fork out the bucks required to run Project with ProjectServer, etc…!
PDF Generation: I’m actually using the free PDFCreator at work, due to lack of enough Acrobat licenses. It’s good enough for translating stuff to PDF; no editing, etc. For handing off specs, or excel files with data I don’t want messed with, it’s nice. Again, can’t beat the price.
Group documentation: TWiki. I don’t love it, but it works. I wish it worked properly with JGraph, which rocks.

Sysadmin/IT type stuff
I won’t get into all the junk we have installed, but here’s the ones that I actually “use” every day:
Performance monitoring: Cacti is the way to go for me. Small, free, decent, in PHP (hackable). Scales reasonably well…
System monitoring: Nagios with a bunch of custom plugins for application monitoring. Everything you need, but not much more. Scales well and the config language is worlds better than BigBrother.

Miscellaneous/Trivialities/Home-use stuff
Souds: Winamp lately, and when I’m entertaining, run MilkDrop on the projector for the Ibiza-club-in-your-livingroom vibe :-) I even have a MusicMatch license, and use Winamp, so whatever that says…
CDR: Nero. It came with my drive, and I’ve been happy with it, it just works.
Graphics: I’m no pro–but my wife has legit copies of Illustrator, Photoshop and InDesign–so on the rare occasion I need to toy with that kind of thing, I use this stuff on her PowerBook. Whee.
DVDs: WinDVD. The only thing that seems to work properly with my SP/DIF soundcard and both my LCD monitor and projector.
Remote control: uICE. It rocks with the remote that came with my soundcard (ATI remote wonder thingy)

Hmm, that’s about it I guess. Anyone have suggestions? Comments? Pointers to other useful tools I might need? I accomplish all the types of tasks I need to do, with the stuff above.