Friday, June 06, 2008

My buddy Dan Fernandez filmed me on Channel 9 showing Ranking and Windowing and Common Table Expressions from my TSQL talk this week at TechEd. Apparently our discussion of our partying together in Istanbul, Cairo and Las Vegas was censored by the Channel 9 staff. I guess you will have to just use your imagination on that one. :)

Friday, June 06, 2008 6:46:09 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0]Trackback
 Friday, March 07, 2008

Next week I will be in Lisbon, Portugal speaking at Techdays 2008.All my stuff is listed in Portuguese, I hope they realize I don’t speak Portuguese. :)

Will be doing three sessions:

Friday, March 07, 2008 5:43:57 PM (Eastern Standard Time, UTC-05:00)  #    Comments [1]Trackback
 Monday, October 22, 2007

Topic: Database Design Patterns: Architecting the Right Data Model for the Right Application

Architecting an application starts with the database. Different applications need different data models. Fifth normal form is great for an OLTP database, but reporting databases need more of a flat denormalized structure and different Web sites need several different types of data models: eCommerce sites need different data models than traditional publishing sites. You need to optimize your data model for your application's performance needs. Concurrent users, data load, transactions per minute, report rendering, and query seek time all determine the type of data model you will need. See how different applications and different parts of an application can use different data models and how you can architect your database to fit into your application's needs—not the other way around.  The presentation will include 5 demos that cover:

1.      A Slowly Changing Dimension

2.      Fact Tables

3.      Horizontal Partitioning

4.      Table and Index Partitioning

5.      Vertical Partitioning

To find out how to design the right database structure for the right situation come to the meeting.

Presenter: Stephen Forte.

Stephen is the Chief Technology Officer (CTO) and co-founder of Corzen, Inc, a Manhattan (USA) based provider of online market research data for Wall Street Firms. Corzen was recently acquired by Wanted Technologies (TXV: WAN).  Stephen is also the Microsoft Regional Director for the NY Metro region and speaks regularly at industry conferences around the world. He has written several books on database development including Programming SQL Server 2005 (MS Press) and is working on Programming SQL Server 2008 (MS Press).  Prior to Corzen, Stephen served as the CTO of Zagat Survey in New York City and also was co-founder and CTO of the New York based software consulting firm The Aurora Development Group. He currently is the co-moderator and founder of the NYC .NET Developer User Group. Stephen is also an MBA candidate (June 2008) at the City University of New York (Baruch College).  

Location: The meeting will be held at Microsoft, 1290 Avenue of the Americas on the 6th floor starting at 6PM. You must RSVP to wzack at microsoft.com in order to be admitted to the meeting and so that we will know how much pizza and soda to order. J 

Sponsor: Our sponsor for the meeting will be Sogeti USA. If you know of any other companies who would like to sponsor a meeting in the future please let us know.

Monday, October 22, 2007 7:12:09 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0]Trackback
 Monday, September 24, 2007

Next week I will be speaking at DevReach in Sofia, Bulgaria. This is the second year in a row that Bulgaria has put on this awesome event. I'll be speaking on:

TSQL

BizTalk Services (The Ineternet Service Bus)

Agile Development: Scrum

Monday, September 24, 2007 4:21:49 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0]Trackback
 Friday, June 22, 2007

The 2007 version of the Pakistan Developers Conference was great. I had an amazing time in both Lahore and Karachi.

In Lahore I presented:

TSQL Tips and Tricks. Code and Slides here.

Database Design Patterns. Code and Slides here. (I also presented this in Karachi and TechEd Orlando so you can download too.)

Agile Development: Introduction to Scrum. Slides here. (Karachi too.)

In Karachi there was also:

WCF Overview. Code and Slides here.

Building a Scalable Environment for ASP. NET. Slides here. (Don’t forget n+1!!!)

Thanks for all of the memories, especially doing the Punjabi dancing at the end of the sessions in Karachi!!!

Say cheese:

 

Friday, June 22, 2007 12:44:56 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0]Trackback
 Tuesday, February 06, 2007

The MDC is here!

The code and slides for SQL CLR In Action session are here. The code for Advanced TSQL is here.

Tuesday, February 06, 2007 4:43:13 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0]Trackback
 Thursday, January 25, 2007

Code for T_SQL kullanımını kolaylaştıran ve hızlandıran, bilinmeyen teknikler is here. Enjoy!

Thursday, January 25, 2007 9:16:48 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0]Trackback

You can download the code and slides for the ASP.NET Mobil Kontrolleri ile Gelişen Mobil Web Uygulamaları session. Enjoy!

Download the OpenWave Phone Emulator 7.0 here.

To view the application point your mobile browser here.

Thursday, January 25, 2007 6:34:24 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0]Trackback
 Thursday, November 09, 2006

Tech*Ed here in Barcelona is progressing well. Richard and I did the TSQL session yesterday for 500 people as well as recording a .NET Rocks show on Agile Development with Roy Osherove and Kate Gregory.

After we went drinking at the Norway party. What happens at TechED Europe is that each country put on a party for their attendees. Since there is a TechEd in the USA there is no party for Americans. So the Norwegians took pity on us speakers and invited us. Thanks again!

After the party we went to Football!

Today was an XQuery session and now we do the last of the Speaker Idol contest, today at 12:30 pm we see:

Bart De Smet

Dennis Doomen

Luigi Crispo

At 14:45 we do the final round and name a winner!!!

Thursday, November 09, 2006 6:02:26 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0]Trackback
 Monday, November 06, 2006
Monday, November 06, 2006 8:06:17 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0]Trackback
 Sunday, October 29, 2006

Check us out in Bulgaria on .NET Rocks.

Check out Martin's great blog post here.

Sunday, October 29, 2006 7:54:40 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0]Trackback
 Tuesday, October 24, 2006

I will be speaking at the NY Metro SQL Server Users Group on Thursday at 6pm on XQuery in SQL Server. Hope to see you all there.

Topic:

Using XQuery to Retrieve and Manipulate XML Data with SQL Server 2005

Speaker:

Stephen Forte, Microsoft Regional Director

Date:

6:00 PM on October 26, 2006

Place:

Microsoft Office in Manhattan

 

The Axa Financial Building

 

1290 6th Avenue, NY, NY

Due to new security guidelines at the building, you will have an easier time getting in if you confirm your attendance via email to joelax@dbdirections.com. Otherwise you'll have to wait till someone comes downstairs to sign you in. Also remember to have a photo id with you.


Blogs, Web Services and general interoperability have proliferated the use of XML in recent years. With all of that XML out there, there needs to be an easy way to incorporate XML data with SQL Server relational data.

This session will look at how to use XQuery to retrieve and manipulate XML data inside the database. We'll start with a look at the new XML datatype in SQL Server 2005, then the ability to validate with XML Schema (XSD) and then creating XML indexes for use with XQuery statements. After a brief look at the W3C XQuery specification we quickly move to SQL Server’s implementation of XQuery 1.0. We'll incorporate XQuery in SELECT and WHERE clauses to retrieve information as well as see how to manipulate XML data with XQuery DML.

Pizza and refreshment will be served at the meeting, and there will be a drawing for several giveaways.   

Tuesday, October 24, 2006 7:29:58 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0]Trackback
 Tuesday, October 10, 2006

Bulgaria has great food, beautiful women, and great rakia. Learn more from Carl.

Tuesday, October 10, 2006 8:31:18 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0]Trackback
 Wednesday, July 05, 2006

The Pakistan Developers Conf code and slides are available here.

Wednesday, July 05, 2006 8:55:28 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0]Trackback
 Friday, June 30, 2006

The 2006 Pakistan Developers Conference is a smashing success! Today is Day 3, boy have they worked me hard, 3 sessions each day. The code downloads for my sessions will be available in about a week, the presentations are here for XML Part I, XML Part II (XQuery), SQL Everywhere, ASP .NET Design Patterns and Writing Secure ASP.NET Code (All user input is evil!).

I love Pakistan, I hope to be back next year. Tonight Richard and I do the closing keynote, we will be showing 3-D rendering and collaborating with WinFX (.NET 3.0), Vista, Office 2007 and Sharepoint Services 2007.

 

 

Friday, June 30, 2006 12:53:43 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0]Trackback
 Monday, June 05, 2006

See you in Karachi! You guys are making me do 6 sessions!

Writing Secure Code

ASP .NET Design Patterns

XML in SQL Server Part 1: XML Data Type

XML in SQL Server Part 2: XQuery

Merge Replication with SQL Server Everywhere Edition

The CLR in Action, A Query Governor (with Richard!)

Monday, June 05, 2006 5:12:15 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0]Trackback
 Tuesday, May 23, 2006

Whenever the Dutch put on a conference, things get a little crazy. Luckily you can listen in on some of the fun on .NET Rocks as well as Mondays.

My red light district story is 21 minutes in to the .NET Rocks, just don't tell my mom....

Tuesday, May 23, 2006 7:19:56 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0]Trackback
 Saturday, April 08, 2006

Speech Server Day: New York, NY
April 18th, 2006 8:30AM – 5:00PM

 

 Does your application have something to say? Show me the code!

Using the power of .NET, Microsoft Speech Server and Visual Studio 2003 can give your application its voice. Used in conjunction with the Microsoft Speech Application Software Development Kit (SASDK), this platform enables developers to write and deploy web-enabled speech applications to new and existing .NET applications.

Join Microsoft and Brooktrout for a one day special developer session designed to teach you how to architect, develop and implement speech enabled applications using Visual Studio 2003 and the Speech Server platform. We will show how this combination provides all the components necessary for building and deploying telephony (voice-only) and multimodal (voice/visual) applications. Additionally, we will show how the Speech Server platform builds upon the work of the open industry standard Speech Application Language Tags (SALT) specification to extend existing Web markup languages by adding speech recognition and prompt functionality to your Web applications. Using a practical code oriented approach we will cover how to architect, build and deploy applications that performs speech recognition and speech synthesis that can be accessed by telephone, cell phone, Pocket PC, Tablet PC and other devices.

Click Here to Register Today:  

-Or- 

Call 1-877-MSEVENT, code 1032292184 

 

Saturday, April 08, 2006 5:04:14 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0]Trackback
 Friday, March 03, 2006

Not George Bush, me! Its official, I was invited to speak at the Pakistani Developers Conference 2006 this June. Nothing is official yet, but of course I said yes. See you all there...

Richard and I will be doing another duet this year at TechEd in Boston. We will be doing a session on building a query governor in SQL Server 2005 with TSQL, C#, XML Showplan and XQuery.

I'll also do a session titled: Database Design Patterns. It is an attempt to bridge the gap between all of the design patterns out there for code but not databases.

Friday, March 03, 2006 3:03:28 PM (Eastern Standard Time, UTC-05:00)  #    Comments [4]Trackback
 Wednesday, February 22, 2006

The matrix of sessions for this weekend's NYC Code Camp is final. You can get it here. Registration is full, put yourself on the waitlist!

Wednesday, February 22, 2006 5:03:33 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0]Trackback
 Tuesday, February 14, 2006

Hear me as a guest on .NET rocks.

Tuesday, February 14, 2006 4:59:11 AM (Eastern Standard Time, UTC-05:00)  #    Comments [3]Trackback
 Saturday, February 04, 2006

I have to hand it to Microsoft. Just when I get pissed off at them for Office Service Pack 2 (don’t ask) they remind me why I am in their camp.

 

I am in Cairo, Egypt at the moment with the anti-suck gang (the four founders are all here: me, Goksin, Malek, and Clemens) preparing for the 2006 Middle East Developers Conference. What is amazing is that we have 5,000 developers turn out for this event.

 

Why I give Microsoft so much kudos for putting on this event is that the developing world needs to build a rock solid technology based economy and Microsoft is right there leading the way. The charge for this conference is very low (about $8.75 USD) and the entire amount of money collected won’t even cover Clemens’ mini-bar bill. Microsoft has made such a commitment to the developing world, it is quite impressive.

 

I’ll be giving 4 talks:

 

XML in SQL Server 2005: The XML Data Type

Ranking and Windowing Functions in SQL Server 2005

Building Enterprise Applications with SQL Server Mobile 2005

Writing Secure ASP .NET Code

 

Saturday, February 04, 2006 11:05:02 AM (Eastern Standard Time, UTC-05:00)  #    Comments [3]Trackback
 Wednesday, October 12, 2005

I have a wonderful VPS of Yukon and Whidbey with all of my conference demos. I my first TSQL session and it went well but the VPC was slow. Then I had my next session “Ranking and Windowing” functions, 15 minutes later in another room. I suspended my PC and went on. VPC was dead in the water.

I had to do a song and a dance. A delegate named Harold lent me his computer so I can demo code. I decided to reboot my machine while I was working on Harold's PC. Once back, life was good.

So lesson learned, do not suspend your computer with a VPC. However another speaker, Walt Ritscher, let me know that there is a hotfix for this craziness. Installed and life is good. 

 

 

Wednesday, October 12, 2005 1:24:41 PM (Eastern Standard Time, UTC-05:00)  #    Comments [6]Trackback
 Monday, October 10, 2005

Speaking at VSLive again down in Orlando, Florida. Should be a great show. I am speaking on SQL Server 2005 topics, hope to see you there.

TSQL Enhancements
Stephen Forte, Corzen, Inc.
10:30 a.m.

By now you have heard that you can write stored procedures in C# and VB . NET for SQL Server 2005. Does that mean TSQL is dead? NO! A lot has changed in the world of TSQL with the next version of SQL Server. See how efficient you can become with the new TSQL enhancements. You can crosstab in seconds with the PIVOT statement, perform recursive queries much easier with Common Table Expressions, manipulate XML data easier with the XML datatype and aggregate with ease using the new TOP functions. Report with ease with ranking functions. We’ll take a look at the new TSQL enhancements, data types, and the like. We’ll also look at how to choose between CLR Stored Procedures and TSQL.

Data Analysis Using Ranking and Windowing Functions
Stephen Forte, Corzen, Inc.
11:45 a.m.

SQL Server 2005 adds the functionality of a ranking expression that can be added to your resultset that is based on a ranking algorithm being applied to a column that you specify. This will come in handy for reporting and in .NET applications for paging and sorting in a grid as well as many other scenarios. We’ll explore the ROW_NUMBER() function, which assigns a running count to each row and compare it to RANK() and DENSE_RANK(). Use these functions to solve complex SQL Problems. Then we’ll look at custom percentile ranking using NTILE() and look at business and academic applications of NTILE. Lastly, we’ll apply windowing functions to all of the four ranking functions with PARTITION BY to perform hard code aggregate functions. 

 

 Mobile Enterprise Applications with SQL Server 2005 Mobile Edition
Stephen Forte, Corzen, Inc.
4:30 p.m.

Using SQL Server 2005 Mobile Edition and Visual Studio 2005, Microsoft has made developing applications for the Windows SmartPhone and Pocket PC devices as easy as developing conventional Windows and Web applications. The .NET Compact Framework and SQL Server Mobile give you full functionality on the device with the ability to perform Merge Replication with a back-end SQL Server. This session will help you leverage your existing .NET and SQL Server to build mobile enterprise applications from scratch that can dynamically update a backend SQL Server or work offline and synchronize later.

Monday, October 10, 2005 9:40:26 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0]Trackback
 Tuesday, June 14, 2005

I just got home from Karachi and have discovered several warm messages in my inbox from people who went to the PDC and saw me speak. To all of you, THANK YOU for the kind words. My time in Pakistan was only 3 days, but it was very special. I have my plaque on my desk in my office.

And to all of you who left comments in my blog about Mr. Clemens, thanks, I would have paid a few hundred rupees to see the look on his face. :)

If there is another PDC next year I will be back, my experience was great.

I encourage people to visit to Pakistan, it is a wonderful country with very warm people.

Tuesday, June 14, 2005 4:22:19 PM (Eastern Standard Time, UTC-05:00)  #    Comments [3]Trackback
 Monday, June 13, 2005

The 3rd Annual Pakistan Developers Conference is under way here in Karachi! I had a free day in Karachi to enjoy the city and weather. Went and purchased a carpet and visited the unique Chawkandi Tombs outside of Karachi. The tombs are from the 15th to 18th century and very elaborate. The photos do not do they justice, they span for over 3 km.

The first Grok Talks are published, check them out here!

 

Monday, June 13, 2005 2:17:26 AM (Eastern Standard Time, UTC-05:00)  #    Comments [8]Trackback
 Friday, June 10, 2005

 I will be speaking at the 3rd Annual Pakistan developers Conference in Karachi, Pakistan next week. This is a great event with usually 5,000+ developers. I will be speaking on security, and new SQL Server 2005 features.

 

My friends question my sanity when I tell them that I am headed to Pakistan, a potentially dangerous place with Al-Qaeda cells running around. They say “Why bother, why not speak somewhere safe, like the USA or Europe?”

 

Microsoft makes a statement by holding a conference in a developing country, a country that many westerns are willing to write it off. I am making the same statement; I believe the only way for Pakistan to beat back Al-Qaeda and make peace with India is to get on board with globalization and to create economic opportunity for its citizens. The way to do this is with jobs. The road to jobs starts with training and conferences. Give someone a chance to get a job, give them hope.  If India can be an outsourcing center for the West, why can’t Pakistan? I am traveling to Pakistan to help them get there. Al-Qaeda can’t recruit an employed .NET developer

 

Peace through .NET. Go figure.

Friday, June 10, 2005 4:06:45 PM (Eastern Standard Time, UTC-05:00)  #    Comments [3]Trackback
 Wednesday, June 01, 2005

In the Netherlands today for the final day of the SDC and the NO vote to the EU charter was not a surprise after several long conversations with locals. after the vote they took us to play some paintball. Somehow I managed to get shot a lot. :)

Wednesday, June 01, 2005 6:02:42 PM (Eastern Standard Time, UTC-05:00)  #    Comments [1]Trackback
 Tuesday, May 31, 2005

 

So last night during the geek night session at the SDC, the Dutch, inspired by Richard Campbell called me on my SMO Backup and Restore GUI that had a progress meter. They thought I was hacking it, not that I was actually providing a true representation of the progress made by the status of the backup. Here is the progress meter in action, as the database backup makes progress we update the progress meter:

 

 

 

To do a backup programmatically you can to use SMO (see yesterday). Begin by setting the variables to get started.

 

Server svr = new Server();//assuming local server

Backup bkp = new Backup();

 

Cursor = Cursors.WaitCursor;

 

Then you have to set the device to backup to and what database to backup. Notice in the comments the code to the progress meter

 

try

{

      string strFileName = txtFileName.Text.ToString();

      string strDatabaseName = txtDatabase.Text.ToString();

                       

      bkp.Action = BackupActionType.Database;

      bkp.Database = strDatabaseName;