Archive for the ‘Misc Tech’ Category

Dreamhost, we’re sorry we over billed you…

Thursday, January 17th, 2008

…to the tune of $7.5 million dollars. Guess that explains why I had a ginormous charge (~$158) from Dreamhost on my credit card statement this month. (mental note, guess I need to get some more referrals!) Being the software business I frequently have nightmares about fat fingered moments like the one that cause the snafu. Ouch.

They quickly sent out an email explaining the situation and saying it would be a day or two before erroneous charges would be cleaned up. How you be mad when they use Homer Simpson in their apology?

Handy New Firefox Plugin

Wednesday, December 20th, 2006

Meet PermaTabs, a little hack that allows you to have tabs that can’t be closed.  After installing it, just right click on the tab and turn on the Permanent Tab option.  It also persists across sessions, so next time you fire up Firefox, it brings back your permanent tabs automagically.  Sweet, now I won’t keep accidentally closing my Google Calendar 100 times a day.

MSDN Developer Event

Wednesday, December 6th, 2006

Yes, I’ve visited the dark side; I needed to see how the other half lives. I get invitations from Microsoft all the time to attend their Developer Events. The location (Carousel Mall) and pricing (free) made yesterday’s event too good to pass up.

After filling out my pre-seminar survey (with a chance to win Zune), I filed into a movie theater that had seats that were far too comfortable. The presenter for the day was Susan Wisowaty. She was fairly engaging, but had some curious Microsoft observations and a couple answers to gallery questions that were a little questionable.

The presentation was broken out in three parts:

  1. Take Control of the Database Development Lifecycle with Visual Studio Team Edition for Database Professionals

    I’m not 100% up on Microsoft development, but in their scheme they have different versions of Visual Studio for the different players in the software development team (architects, developers, testers, etc.) Until now, they didn’t have a dedicate interface for the database developers.This new gadget has some stuff that was kinda interesting. First, there’s some tools for diff’ing schema between different versions of your database (development vs. testing vs. production.) After showing you the diff results, you get a script that can be used to push the updates from server to server. The tool is fairly smart about tracking down table/field renames in ancillary database objects like indices, views, and stored procedures.

    Second, (while they didn’t show it specifically) was the ability to maintain version control on your database schema. I’m guessing what they just throw the sql create statements for the database objects in SCCI.

    Third, there’s a sample data generator. This was pretty interesting. You set up some rules for how the tables relate to each other (foreign keys, etc) and some rules for the individual fields in the tables (using regular expression, shocker!) You then save this as a data generation plan. You can then run it populate your database. Seems useful, but was kinda slow for the amount of data it actually ad libbed. They also said to make sure you’re applying the update script to right database (the interface makes it almost too easy to blast away your production data accidentally.)

    The demo started fairly smoothly, but got a little off track when they tried to demo adding a new field to table in development and pushing out to production. They tried to add a new field to a table with ‘NOT NULL’ to an existing table. The schema editor didn’t have a problem doing that (maybe it should have generated a warning?), the diff tool showed the change, but when you tried to run the update script in production, Visual Studio went down in flames (with a roar of laughter from the crowd.)

    To be fair, the version being demo’d is not the production version of Visual Studio. Hopefully, they’ve cleaned things up a little bit in the real version.

  2. Windows Workflow Foundation Exposed

    Workflow Foundation is a primary component of the .Net framework 3.0. Its a fancy workflow engine. The basic idea is that you manage the components of your application at new workflow abstraction level. Said another way, you can separate your functional code from the flow.The workflow rules are managed via XML, but they provide a slick graphical editor where you can drag and drop activities in and set their properties graphically. The associated code is just a click behind. I think this would be pretty useful after you’ve built up a good selection of components.

    Their example in the demo was setting tax and shipping rules by state in shopping cart type setting. They made a big point to say that the workflow is dynamic. That is, you can tweak the workflow model while its running in the engine. I think this would work fine for workflow additions, but it doesn’t seem to sanity check your changes against data in the field opening up the possibility of orphaning objects in obsolete workflow states.

    Another good question from the gallery was is it possible when changing workflow to have the existing dependent objects retain the original workflow, while newly create objects take the update workflow. They said currently, this isn’t possible. Man, that would be a killer feature.

  3. Create Cutting-Edge Web Designs with Expression Web

    This was actually the primary interest item for me. Unfortunately, it was the weakest part of the presentation. It only got about 40 minutes of time, and the presenter was a lot more developer than designer (complete with some designer focussed wise-cracks.) Oh well…The Expression Suite are tools based around graphics. Expression Design is graphics folks only and meant to be an alternative to Adobe Illustrator. Expression Blend is a little more programming oriented, and allows you to designs Windows Forms based interfaces (using XAML) and web interfaces. Express Web is the web interface only version of Blend.

    The presentation concentrated on Expression Web. To me, its basically an updated version of Frontpage that borrows a lot of ideas from Dreamweaver. It shares its coding backend with Visual Studio so you when you’re developing an application, you can start in one and switch to the other when appropriate, or hand off. Theoretically, the engineer to could do the general layout of the application in VS and hand off to a designer in Expression to add the look and feel with minimal complication. I’m not sure if source control is possible from the Experssion tool though.
    As a Dreamweaver fan, I didn’t see much that I hadn’t seen before. The only stuff I thought was cool was the ability to edit css padding and margins with drag and drop (if there’s a way to do that in Dreamweaver, I haven’t seen it) and the editing interface was pretty snappy. The CSS stuff the presenter that was so cool was pretty much old hat for Dreamweaver users.

All in all, it was interesting and useful to see this stuff, and get some perspective on how the other side does all the fun stuff that I normally do in LAMP.

Project FC5 Update: 0 for 2

Thursday, October 19th, 2006

Last night, I had two tasks for my FC5 project:

  1. Get a Parallels VM machine for Windows XP rolling.Seemed to kick off OK after having to remember how to use Parallels’ VM setup utility. A false start or two later, and the XP installed seemed to start fine. It did all the normal setup stuff, got right to the point where it starts up for the first time and blam Parallels craps out with a kernel panic.

    No biggie. Lemme just restart Parallels and that virtual machine. Doh, unfortunately, I didn’t save the VM profile before I started the XP install. Crap, gonna have to start over. I blew away the VM file and used the wizard to make the profile and was sure to save it before starting the XP install.

    The XP install went pretty uneventfully. After a some time, I was sitting at the XP desktop. Figured it was time to start patching things up with Windows Update. So I started Internet Explorer. Kaboom, Parallels goes down in flames.

    Was too tired to mess with that any more, so I left it alone. Hopefully, I can just fire up Parallels again and restart the VM and pickup where I left off. Not quite sure what I’ll do if Paralllels turns out not to be that reliable.

  2. Get Printing Working Locally.Normally, I usually have a windows box that’s my primary machine that has printing capability. This has been working pretty nice; I can share the printer and Sandy can print wirelessly from her laptop in the living room. I’d like to try to have the same arrangement from Linux land. So, step 1 is getting my hp lj1000 to print locally.

    Hmm. Good signs. I went to the printer queue setup applet and the wizard found the printer (connected via USB) and seemed to have drivers for it. Cool.

    So, I try to print a test page. Hmm, nothin’. The printer config gadget asked if the page printed. I said no and it gave a me a tail of the last few lines of the CUPS error log. Something about foomatic-rip terminating abnormally.

    I googled around a bit and found a bunch of folks with similar problems, but none of the solutions they found seemed to help. Gonna take some more messing around to get this figured out I guess.

    One theory is I may have a conflict between Parallels and USB. Parallels has an AutoConnect option for USB which I assume means that when you plug in a device and Parallels is running it forks it over to the VM (rather than the host OS). I had that turned when I was trying to install XP and was goofing around with the printer stuff in the meanwhile. A long shot, but its something to check.

More Fun with FC5

Wednesday, October 18th, 2006

I’d love to ditch XP completely, but I still have a few things that I need windows for. My master plan is to run FC5 as the primary OS and use XP in a Parallels virtual machine. I’ve messed around with Parallels before on ancient history PC hardware (400MHz PIII, 384Mb) and found it pretty impressive. I’m keeping my fingers crossed that it will be pretty snappy on my newer (but not brand new…) 2.8Ghz 1Gb machine.

FC5 doesn’t happen to be on the Parallels supported host OS list. But, I’ve conquered that problem before. All it took on my last attempt was using yum to grab kernel source (and update QT, I think) and using rpm with some arguments to skip some spurious dependencies.

I tried the same recipe again on this new FC5 install and ran into some problems. First, I couldn’t remember the exact yum command line to grab the kernel source. I thought I had a bookmark for some details along these lines, but I couldn’t track it down either. After some fervent Googling, and messing around, I figured out that the yum already grabbed the kernel source I wanted, but it was the latest version and not the stuff for the older kernel I was actually running (I can probably elaborate on the versions, if any one actually cares).

So, I yum updated the kernel. That was pretty straight forward. I restarted and picked the new kernel option. Nuts, it appears to go down in flames about 10 lines in to the boot process. Something about ata1 not responding. My guess is that some other kernel related dependencies are now out of whack. So, I reboot back into the old kernel and do the mother update ‘yum update’. Yikes, 929Mb of stuff to download. Gonna let that one go over night.

I checked in this morning and the update completed successfully; that’s pretty impressive in it self. I can’t recall ever updating that much at one time and not having something minor blow up along the way. So, I restarted again and picked the new kernel option.

Grr. Same ata1 not responding message. I walked away from the computer for a few minutes and was pleasantly surprised to see the Fedora login page when I returned. Guess it was a recoverable time out issue, despite all the scary messages.

As my last action in this session, I ran the parallels config script again. This time, it find the kernel source no problem and went on about its merry way compiling.

This evening, I’ll finish setting it and try to get XP installed. I’m sure that it’ll be another 4 hour affair. But, as soon as I get it up to date, I’m gonna burn its associated virtual machine file to dvd. So, in the future, I don’t need to reinstall from scratch. That’ll be heaven if I work out all the details…