Miguel A. Castro's Blog

# Friday, April 30, 2010

This is certainly worth blogging about.  DevExpress, whom we all know are famous for their component suites and of course CodeRush, is working with Habitat for Humanity in New Orleans.  Rather than regurgitate their description on this posting, go here to read all about it.

Way to go guys !

Friday, April 30, 2010 12:55:31 PM (Eastern Daylight Time, UTC-04:00)  #    Comments [0] - - Follow me on Twitter
Speaking Events
# Friday, April 16, 2010

The user group in New York City last night was great.  The turn out was around 85 people and the response, attentiveness, and questions were very good.  This talk is a hell of a memory dump since I cover so many things.

The name of the session was “Integrating Search: An Adventure in Dependency Injection” and I cover not only the APIs of the three major search engines, Bing, Google, and Yahoo (soon to use Bing), but also some provider design, dependency injection, and custom controls (both windows and web).

I also showed off my new FluentSearch DSL which I’ll have on this site very soon.  I talked about this session and the FluentSearch DSL in a previous posting regarding the Philly Code Camp, so you can go there to read more.

I want to cover an answer to one of the questions last night since I wasn’t able to answer it off the cuff and gave the attendee an honest, “I’m not sure”.  The question was regarding the WebGet attribute that I used to decorate the operations in my service contracts in order to consume the REST APIs of both Google and Bing.  The ResponseFormat argument of this attribute had the optional settings of either XML or JSON.  This determined the format for the data that the search engine API would return and instruct WCF how to decode it.  The exact question was regarding the RequestFormat argument of the attribute and what it would be used for in this scenario.  The answer is that it wouldn’t be used so its value wouldn’t matter.  The RequestFormat argument determines the format used when the operation is used to expose a service, not to consume it.  In all my usage for this talk, I was using this service contract for consumption of the external API so ResponseFormat is all that was important.  If I was actually writing a service to implement my service contract and would provide my own implementation of that operation, then the RequestFormat would determine what format of data I would expose through that operation.  But once again, I was only using my service contract to map to a REST URL that was exposed by another API so it was only in the context of a proxy-based consumption.

My sincere apologies for not having the answer to this question off the top of my head.  This talk covered so much that when the question was asked, I guess my head was elsewhere.  Thank you to whoever it was that asked it because it is definitely information that I should have covered in more detail.

As always, kudos to Andrew Brust for running a great group and inviting me to once again be a part of it.

You can get the session material from the Downloads section of this site.

Until next time…

Friday, April 16, 2010 6:14:34 PM (Eastern Daylight Time, UTC-04:00)  #    Comments [1] - - Follow me on Twitter
Speaking Events
# Tuesday, April 13, 2010

The Philly Code Camp this last weekend was awesome as always.  The talk I did was “Integrating Search: Adventure In Dependency Injection”, and I was extremely pleased by the turnout.  I was a bit nervous about this one because I gave it in DevConnections last year and had a very small turnout.  Though the people that did show up loved it, I set out to make some modifications here and there and tried again in Philly.  I think there were over 75 people in the room and the response and feedback was awesome.

The material for the session can be found in the Downloads section of this site.

I’m looking forward to doing this talk again this Thursday in the NYC .NET User Group.  The New York group is run by Andrew Brust, Stephen Forte, and William Zack and has been around for a very long time.  It’s at this group where I first met my friend Carl Franklin (host of .NET Rocks!), and the group was also the second .NET user group in which I ever spoke.  Though I’ve remained an active attendee at this group, I’m looking forward to returning this Thursday as a speaker once again.

If you want to see a brief on the upcoming talk, see my posting prior to the Philly Code Camp.

Until next time…

Tuesday, April 13, 2010 12:25:30 PM (Eastern Daylight Time, UTC-04:00)  #    Comments [1] - - Follow me on Twitter
Speaking Events
# Wednesday, April 07, 2010

I’m sure many of you out there have either known for a while or have at least heard of the very popular site Russ’ Toolshed.  The creator of that site, Russ Fustino was a long time evangelist for Microsoft and also someone I’m proud to call a personal friend.  Russ has some great news for us in the introduction of what many of us hope to be a very successful startup, Russ’ Toolshed Network.

Put simply, RTN is going to be an Internet TV network where not only will Russ host programs and videos but more to the point, will be able to host your channels with your own content.  The business model is still being finalized and anyone interested should contact Russ on that site (no emails here, sorry spammers).

RTN just published its fist professional production in the way of a video on the Speaker Idol Florida Finals.

Congratulation to Russ on his new venture.  He tells me that business is picking up and things look like they’re going in a great direction.

I for one hope to one day host a channel with RTN.  On what?  Well, that would be the topic for a future posting.

Until next time…

Wednesday, April 07, 2010 10:48:14 PM (Eastern Daylight Time, UTC-04:00)  #    Comments [0] - - Follow me on Twitter

# Saturday, April 03, 2010

The first 2010 Code Camp for the Philly.NET community is going on this coming Saturday, April 10th.

I’ll be doing a session called “Integrating Search: An Adventure In Dependency Injection”.  This one covers quite a bit so hopefully attendees will leave with their heads ready to explode.  I’ll be covering an intro to the search engine APIs of all three major search engines: Bing, Google, and Yahoo.  I’ll be showing how to use WCF to access each API, each being different from the other.  The Bing API will be using SOAP, the Google and Yahoo ones, REST.  Google’s API however will use JSON while Yahoo will use POX.

Afterwards I’ll be using a small makeshift DI container to put everything together so a common API is exposed to the consumer.

Finally, I’ll show off some drag-and-drop custom controls that will give you search capability in your applications.  And I have both Windows and Web versions of these.

Time permitting, I’ll be showing off a freeware product I’m working on called FluentSearch.  This will let you perform searches against any search engine using a fluent interface, like this:

private void btnBingSearch_Click(object sender, EventArgs e)
{ 
    var request = FluentSearch.CreateRequest().SearchEngine("bing")
        .SearchFor("Miguel A. Castro").PageSize(5).PageNumber(1)
        .Web.UseKey("{your API key goes here}")
        .CallbackTo(ResponseCallback, SynchronizationContext.Current);
IAsyncResult asyncResult = request.ExecuteAsync();
} private void ResponseCallback(SearchResponse response) { DisplayResults(response); }

This tool is not quite completed but will hopefully be far enough to share by the time of this code camp.

All the slides and code from the presentation will be available in the Downloads section of this site.  Also, I’m told that this will be one of a selected few sessions that will be professionally filmed for airing on Microsoft’s Channel 9.

See you there.

Saturday, April 03, 2010 6:17:08 PM (Eastern Daylight Time, UTC-04:00)  #    Comments [0] - - Follow me on Twitter
Speaking Events
Search
Me & My Flair

Read all about me here.
Download my Resume here.

Check out where I am here.
 
Click on logos above for profiles.
Archive
<April 2010>
SunMonTueWedThuFriSat
28293031123
45678910
11121314151617
18192021222324
2526272829301
2345678
Statistics
Total Posts: 36
This Year: 1
This Month: 1
This Week: 0
Comments: 80