# Tuesday, February 6, 2007

The MDC is here!

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

posted on Tuesday, February 6, 2007 4:43:13 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Thursday, February 1, 2007

Do you believe that software can change the world?  How about the opportunity to work on an application that promises to help accelerate a cure for cancer? 

 

Microsoft is sponsoring a project to be built by InterKnowlogy for The Scripps Research Institute. And I am the hiring manager!

 

We are embarking on Release II of the application.  I have decided to include four developers from the community in the development team (working for Interknowlogy virtually).  Here’s what we are looking for in a software development engineer.

 

  • Well-rounded skills in software application development. 
  • One who has been working primarily with C# for at least the past two years, with an additional minimum three years of Microsoft .NET framework application development experience (and preferable some 2.0 and 3.0 experience).
  • Familiarity with Object Oriented design methodology.
  • A successful candidate will have experience with Windows client application development (.NET WinForms, preferably WPF) and web services. 
  • Desirable to have experience with SharePoint, preferable Office SharePoint Server 2007, Office Document XML, or other custom Office applications. You should also have experience working within a distributed development team.

 

Does this sound like you?  Tell me why we should consider you for this opportunity by replying to Calling all Developers with a one-page word document telling us what you are most proud of in your career and why you should be selected to work on this project as well as a link to your online presence (blog, home page, myspace profile, etc).  You can work from home, as long as you have a reliable internet connection!

 

We are going to move quickly on this so tell me now why you would be the right person for the team.  This is a paid position.  And you might even get some publicity for participating!  Thanks for considering being a part of this important project!

 

About InterKnowlogy:

InterKnowlogy, experts in Microsoft .NET Tools, Servers and Platforms, is a Microsoft Gold Certified Partner. InterKnowlogy, is a professional services organization specializing in custom application development and network services focused on Microsoft® .NET.  Having customers large and small around the world, InterKnowlogy is well known within the .NET ecosystem worldwide as one of the leaders in .NET application development. 

 

About Scripps:

The Scripps Research Institute in La Jolla, California, is one of the largest private, nonprofit biomedical research organizations in the US and a world leader in the structure of biological molecules.  Scientists at Scripps Research wanted a better way to organize biological research information and share it with their colleagues.  InterKnowlogy developed an application built on the Microsoft® .NET Framework 3.0 with Windows® Presentation Foundation, and Windows Vista™ giving scientists a powerful tool to visualize and annotate research results.  This application allowed for faster scientific collaboration, easier access to data and a dynamic development process.  You can read the full case study on Microsoft.com.

 

posted on Thursday, February 1, 2007 1:51:50 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback

As published 10 years ago in Advisor:

Forte’s Hierarchy of Technology Adoption

Whenever a new technology comes out it goes through phases of adoption.  When the new giga-wiz bang techno gadget comes out it follows a predictable pattern. The same is true for technologies such as XML and other Java.

The hierarchy is this:

·         Porn

·         Black-market

·         The Geeks

·         Gadget Men

·         Mainstream Society

·         Mom and Grandma

Porn

The Porn industry adopts technology first. If you are a uber geek, you need to get into porn. When I was CTO at Zagat during the .COM boom, a dirty little secret of all CTO’s was that we watched the Porn industry very carefully. Porn is responsible for every technical innovation on the internet in the last 10 years. Credit Card transactions, micropayments, high speed access, chat, video conferencing, just to name a few.

Black-market

Next (and sometimes simultaneously) comes the black market. They are the next to adopt. This is not just crime syndicates or terrorists like al Qaeda using the latest IP blocking technology, this is kids downloading movies on bit torrent as well.

The Geeks

After the porn and hackers cut their teeth, the Geeks pick up the new technology. These are the guys that understand the fundamentals of technologies and want the new toys and tools and are willing to risk the blue screen of death to get it.

Gadget Men

You know who you are, the early adopters. You must have the plasma TV or new Bluetooth PDA. You will spend anything to get it, no matter how much you are already in debt.

Mainstream Society

After the Gadget boys have worked through the kinks, Apple or Sony will make it easy for the rest of society. This is usually when the wives of Gadget men stop complaining. Prices come way down at this point as well.

Mom and Grandma

When technical neophytes adopt a new technology, or have even heard of it (my mom knows about RSS) then it has truly been adopted and is as standard as a telephone.

Let's follow MP3s.

MP3s are “motion pictures group level 3” files. Digital audio to go with digital video. Porn was first to adopt this over 10 years ago!.

Then came the illegal-Napster comes to mind!

Then the geeks like me, we encoded MP3 manually and had the first players. This was about 1999. A few years later with Creative and others we got the Gadget men on board.

When the iPod (with its mini, shuffles, etc) and ultimately iTunes the mainstream society adopted and the price points came down and the attention was huge. Lastly, my Dad has an MP3 player, so even Mom, Dad and Grandma have adopted!

 

posted on Thursday, February 1, 2007 1:48:23 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Wednesday, January 31, 2007

One of the smartest database computer scientiests, Jim Gray is missing at sea. Please have your thoughts and prayers with him.

posted on Wednesday, January 31, 2007 7:29:38 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Monday, January 29, 2007

The Call for Speakers for NYC Code Camp II (March 3rd) is here.

No registration up for about 2 more weeks. Stay tuned.

posted on Monday, January 29, 2007 7:41:48 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Sunday, January 28, 2007

 Microsoft, InterKnowlogy, Scripps Research Institute,and I will soon be looking for a few good developers around the world to help us with a project to cure cancer.

The ONLY place to apply for the jobs will be this blog. Stay tuned.

posted on Sunday, January 28, 2007 1:21:14 PM (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!

posted on 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.

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

You can download the Sorgu Yöneticisi - SQL CLR in Action code and powerpoint session here. Enjoy!

posted on Thursday, January 25, 2007 6:25:05 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Tuesday, January 9, 2007

I've been tagged so I have to tell you 5 things you might not know about me. 

1)  I have suffered hearing loss as a child.   

2)  When I was a small boy my parents took me to the circus at Madison Square Garden. They bought the special seats so I would be chosen to ride around in the rings. I loved it, I was waving to everyone inside the world’s most famous arena-I remember it like it was yesterday.  When I got back to my seat my mom asked me: “Did you like it?” Little 5 year old me replied: “It was ok. I am surprised they did not give me a speaking part.”

3)  When I was 17, I was riding my bike and I was hit by a car and left for dead on the side of the road where I broke all my ribs. When I got up my first words were “where’s my bike?”

4)  I do not have a daughter in Australia, nor did I ever date Britney Spears.

5)  I actually get more pleasure when the Yankees lose then when the Mets win.

In order to keep the "chain" going I tag Richard Campbell, Clemens Vasters, Carl Franklin, Fahad Majeed, and Hans Verbeeck.

posted on Tuesday, January 9, 2007 3:02:42 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Tuesday, December 12, 2006

We are hiring a DBA at my company Corzen and instead of looking at resumes/cvs we are looking at how people solve particular SQL problems-not just the solution but the approach they take. (Do you use temp tables, (nolock), CTEs, table alias, etc.)

Here are the five test questions we ask. (If you want to come work here, just email me the answers.)

Here are three TSQL problems that can judge how you approach a SQL problem. There are no real wrong answers, but the more efficient and bulletproof the query is the better. No cheating and no cursors! Don't cheat and don't google the answers (we'll know.)

 

Step 1: run SetupTSQLProblems.sql in any database.

 

Problem 1.

Finding Duplicate Products in the Product table. Write a query to list only the duplicated products in the Products table. Assume that the dupe is the product with the highest Product_ID. The results of your SQL statement should be:

 

Dupe_Product_ID

Dupe_Product_Name

Dupe_Price

Parent_Product_ID

Parent_Product_Name

7

Widgets

88

1

Widgets

 

 

Problem 2.

Assign rooms to classes based on capacity using the Classes and Rooms tables. Rules: each class should have a room (and NULL if a room is not available). No class can be in a room where there are more students than capacity. No room can be used twice.

 

The results of your SQL statement should be:

class

students

room

capacity

Advanced SQL Queries

65

225

70

Introduction to C#

52

224

60

XQuery Deep Dive

35

222

40

 

 

Problem 3.

Make the following static pivot dynamic in AdventureWorks, assume that the orderyear can increment to 2005 and 2006. Assume that order years can skip.

 

SELECT *

FROM (SELECT CustomerID, YEAR(OrderDate) AS orderyear, TotalDue

      FROM Sales.SalesOrderHeader) as Header

PIVOT(SUM(TotalDue) FOR orderyear IN([2002],[2003],[2004])) as Piv

 

Problem 4.

You have a piece of XML:

<office id="NYC">

  <Employees>

    <employee num="1">Steveemployee>

    <employee num="2">Alemployee>

    <employee num="3">Mikeemployee>

    <employee num="4">Malishaemployee>

  Employees>

office>

<office id="Cairo">

  <Employees>

    <employee num="1">Remonemployee>

    <employee num="2">Lameesemployee>

    <employee num="3">Bassmaemployee>

  Employees>

office>

<office id="Pune">

  <Employees>

    <employee num="1">Vinayemployee>

    <employee num="2">Pradeepemployee>

    <employee num="3">Rashmiemployee>

    <employee num="4">Sujataemployee>

    <employee num="5">Ajitemployee>

  Employees>

office>

<office id="Karachi">

  <Employees>

    <employee num="1">Amratemployee>

  Employees>

office>

 

A. Using the XML datatype, write an XQuery to return the 3rd employee in the NYC office. Your results should look like:

 

EmployeeName

Mike

 

B. Using the XML datatype, write an XQuery to return the 3rd employee in each office. Your results should look like:

EmployeeName

Mike

Bassma

Rashmi

 

Problem 5.

Using adventureworks, rank each salesperson by total sales in 2004 with the rank starting over for each country. Do not use temp tables, self joins, or cursors.

 

CountryName

SalesPersonID

TotalSales

SalesRank

Australia

290

955311.5851

1

Australia

288

35006.4385

2

Canada

285

2411105.152

1

Canada

278

755593.2997

2

Canada

268

15655.2241

3

France

286

1832662.467

1

France

284

2278.3269

2

Germany

289

1121896.781

1

Germany

284

74363.4408

2

United Kingdom

282

1648152.541

1

United Kingdom

284

54036.9765

2

United States

276

2534645.3

1

United States

275

2053782.757

2

United States

277

1824701.882

3

United States

279

1446386.797

4

United States

281

1429353.893

5

United States

287

1114278.877

6

United States

283

901142.2512

7

United States

280

871513.6294

8

United States

268

318200.2683

9

 

Enjoy!

posted on Tuesday, December 12, 2006 7:08:14 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback