 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, 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 dont speak Portuguese. :) Will be doing three sessions:
 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, September 24, 2007
 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:
 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.
 Thursday, January 25, 2007
Code for T_SQL kullanımını kolaylaştıran ve hızlandıran, bilinmeyen teknikler is here. Enjoy!
 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!!!
 Monday, November 06, 2006
 Sunday, October 29, 2006
Check us out in Bulgaria on .NET Rocks.
Check out Martin's great blog post here.
 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 10, 2006
Bulgaria has great food, beautiful women, and great rakia. Learn more from Carl.
 Wednesday, July 05, 2006
The Pakistan Developers Conf code and slides are available here.
 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.
 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!)

 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....
 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.
 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.
 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!
 Tuesday, February 14, 2006
 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
 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.
 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.
 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.
 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!
 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.

 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. :)
 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;
|