September 2004 - Posts
I just found out by reading this post about enclosures in RSS feeds
that the father of RSS and co-father of SOAP is a Deadhead. Yep. For the uninformed, a Deadhead is a word for a diehard fan of the now reformed quintessential hippie rock band, Grateful Dead
Now, this says a lot about how much I've been paying attention, because the article is from 2001! Anyway, I wouldn't call myself a Deadhead but I love them and their music. I just never got into the take millions of hits of acid, listen to the music, sway around with your hands in the air, and urinate on yourself kind of activity that many of their fans have enjoyed. I love Bluegrass, and Jerry Garcia's Old and In the Way
is a favorite as is Reckoning
, both acoustic albums. I have been to Dead shows and have enjoyed thier music immensely since just after I was introduced by a friend in my teens.
I guess you could say that I had to warm up to their live music. It's very laid back. At first I didn't like the fact that they were so "relaxed" and even a bit sloppy during their live shows. I was brought up on music where a big goal was to be technically impressive. These guys seemed to throw all that away and that took some getting used to. They are all accomplished musicians who value experimentation and improvisation over technical accuracy. To that end, they tended to meander a bit during live shows. You either let go and follow along or you hate it. Once you realize that none of the musicians are trying to out-do the others, and that they are truly playing off one another with an ear for the big picture, you get it and it's wonderful. Like nothing else.
Anyway, that's my story and I'm sticking to it. You may hear a little Jerry Garcia (now passed) influence in my playing, but my music is certainly not like live Dead. It's polished, and in some ways a bit sterile, as is all music when compared to live Dead music. heh.
So, Dave, I feel like I know you better now. Let me do the cliche' thing and quote some Robert Hunter when I say "You wake up to find out that you are the eyes of the world"
Industry guru Richard Hale Shaw talks to the guys about what's on his mind. Namely, patterns, practices, anti-practices and anti-patterns, best practices, patterns in .NET, the future of C++ and managed code, VB6 as the ultimate anti-pattern, lack of OOP in ASP.NET 1.1, and looking forward to ASP.NET 2.0. We also listened to a bit of one of Richard's favorite tunes, What is Hip by Tower of Power. Mail, News, New music from Rory Blyth, Weird Wide Webb, and Richard the Toy Boy.
This Friday night our guest will be Richard Hale Shaw who always has great things to talk about. We don't know exactly what he'll talk about yet.
Joe Stagner stopped by to talk about his recent experiences at BorCon, experiences with the Open Source community, Java, and Delphi. In the second half we talked about Rory joining the MSDN evangelism team, VB.NET 2005, the CLR 2.0, XP Service Pack 2 and website security. Joe did a session at TechEd 2004 called "How Hackers Hack" which was the number two highest-attended session! This was a great talk with a very talented developer turned evangelist who keeps it real every day. Also, Mail, News of the Week, Weird Wide Webb, Ask Rory, and Richard the Toy Boy.
The next show will be broadcast on Friday, September 17th at 9PM Eastern Time. Our guest will be Joe Stagner, a Technical Evangelist of Developer Technologies with Microsoft New England. Joe has been developing Microsoft software since DOS 1.0. He'll be talking about whatever is on his mind, which is always interesting and entertaining.
Mark Miller talks about his experiences developing for Delphi, developing the motion control system for the Teenage Mutant Ninja Turtles stage show, and his masterpiece, CodeRush. Mark is a big advocate of good design. He talks about plug-in architecture, another area of strong expertise, making the case for using plug-ins in everyday software. He also talks about Programmer Ergonomics- keeping fit in a sedentary job, his ideas about the future of software development interfaces, and other interesting topics.
I met Ray a few years ago at the Oddfellow Theater in Buckfield, ME. He and that theater's owner Mike Miclon went to high school together, and Ray was a guest performer on Mike's weekly live "Early Evening Show" which is like watching David Letterman live. Small stage and Big Talent. Your truly was doing the Clementine bit on the show and I was really digging Ray's music. He blew everyone away, including me.
Anyway, his story is all true. He asked me to record a demo for him and I was very very excited to say the least, only I didn't want to just record a demo. I wanted to record a complete album that he could shop around. For the next year or so we worked on what turned out to be an incredible set of recordings. I played lead, Jay, my brother played keys, we got some local musicians to help out including a great steel player. I tracked it all with Cool Edit Pro and produced it. It was great but it turned out to be just a demo. He got signed with RCA, recorded a whole new set of songs with them, and the rest is history.
This man is great. Just listen to him sing and you'll know what I'm talking about. He's the real deal.
OK, so I know you'll like this because the information does not exist ANYWHERE except for here at this moment. I know. I checked. All the samples are for searching for stuff. OK. Done that. Now how do I order it???
Backstory: I'm making a page for people to register as guests on the show. As part of the deal we're asking guests to pick up a $30 telephone headset amplifier. The reason is that the more signal we send to the guest, the more feedback comes back and the worse it sounds on the recording. So, we typically do several minutes of tweaking before each show where we find audio level Nirvana. Still, sometimes the guest has a hard time hearing us. So, if they crank up their headset, we can send less signal and get a clean recording.
So, what I wanted before trying this (what I'm going to show you took only a couple hours hacking around) was to automatically send in an order using their shipping address and our billing address and login info so they would automagically get the goods via amazon in the mail before the show. Turns out that's not possible, but it IS possible to create a shopping cart, add the item to it, and redirect them to the amazon checkout page where they can complete the transaction themselves. OK, not bad. Since it's only 30 bucks I'm sure nobody will object.
I'm using version 3 of the Amazon Web Services SDK because version 4 is in beta. Here are the steps to getting going with this in .NET.
1) Register as a developer of amazon web services. They email you an ID which you use in all your transactions. Great
2) Download the SDK and unzip it.
3) Create a new Windows Application and add a web reference to the following URL:
4) Check your email for your Developer ID, also called the developer tag. Add it as a constant:
Private Const TagName As String = "XXXXXXXXXX"
5) Assume you already know the product ID (or ASIN) of the item you wish to add to the cart. Add a constant for it. (there are plenty of examples of searching). This is the ASIN for the telephone amplifier I want to order.
Private Const ASIN As String = "B00007IFM4"
6) Here is the code to create a shopping cart, add the item to it, and produce the URL for purchasing. '-- This is where we start
Dim amz As New com.amazon.soap.AmazonSearchService
'-- This creates the shopping cart
Dim acr As New com.amazon.soap.AddShoppingCartItemsRequest
'-- The tag means you are a developer/partner
acr.tag = "webservices-20"
acr.devtag = TagName '-- your developer ID
'-- Get the cart
Dim cart As com.amazon.soap.ShoppingCart = amz.AddShoppingCartItemsRequest(acr)
'-- Create a shopping cart item with one telephone amplifier
Dim item As New com.amazon.soap.AddItem
item.Asin = asin '-- ASIN is the product id
item.Quantity = "1"
'-- Add the item to the request
acr.Items(0) = item
'-- The HMAC is an id required for security
acr.HMAC = cart.HMAC
'-- The cartID identifies your shopping cart
acr.CartId = cart.CartId
'-- Add the item to the cart
cart = amz.AddShoppingCartItemsRequest(acr)
'-- Show the URL (useful, eh?) for completing the purchase
And there you go. More to follow, I'm sure.
I just got one of those nifty NEC dual-layer 8.5 gig DVD burners and have been struggling with a way to burn a long DVD-video on it. Adobe Encore DVD 1.5 doesn't yet burn to dual-layer discs, but Nero Burning Rom does.
I used Adobe Premeire Pro 1.5 to create the DNR movie, and with the built in Media Encoder, mixed it down to a .m2v file for DVD video (as well as a single .wav file for audio) Then I imported those items into Encore, added menus and graphics, and saved it as a DVD folder containing all the files required to create a DVD-video. Then I just added those files to a Nero DVD-Video project and it worked!
That said, I'm going to be sending the movie to the manufacturer on a hard drive, because the consumer media is too prone to error. It's still very cool that I could burn it.
This week's show is an interesting conversation with Dave Wecker, a brilliant (we think) architect in the Mobile Platforms Division who is constantly looking for the next thing in mobility, and how to make the mobile platforms better. The conversation spans from his experiences with speech recognition systems, the Tablet PC, microphone arrays, and neural networks to toys, home automation, books, and toys. Did we mention toys? Dave is a Toy Boy like us! It's people like Dave that make Microsoft the leader in software innovation.
The next show will be broadcast on Friday, September 10th at 9PM Eastern Time. Our guest will be Mark Miller, author of (among many other things) CodeRush, a productivity add-in for VS.NET that you can't live without! Mark is Cheif Architect for the IDE Tools Division of DeveloperExpress