Monday, November 16, 2009

TechEd Europe 2009

Well TechEd Europe 2009 held in Berlim, finished yesterday. It was another great experience, where I learned some stuff that I was eager to get my hands on (VS 2010 Architecture), contacted some Portuguese fellows and MS gurus, and discovered a little (not much time available, and at 4PM it’s completely dark) of Berlim. Also received a free copy of Win7 and some kits (SQL 2008, Win 2008), which will come handy.

There were also some missteps:

  • On arrival, all of the bags that came from Lisbon didn’t make it to the airplane and were left in Madrid. Not very pleasant, arriving at 22:45 at Berlim and not having any more clothes when the temperature is 2ºC.
  • The wireless/Internet on the hotel was not free, and very expensive: 9,95 €/hour, or 19,95 €/day.
  • The logistics around the event had some problems, namely with the check-in, and the cloakroom (huge lines). But, for a first event (for Berlim) and with > 7.000 people attending, it sould be expected. According to some powerpoints of the sessions, there will be no DVD with the sessions recordings and powerpoints available for the attendees (but the e-mail with the TechEd offers, mentions the MMS 2009 DVDs Breakout recordings and HOLs, so I don’t know what to make of it).
  • Almost nobody speaks English in Berlim, so we were on our own. The younger people speak a little English (but one person from the hotel confused “no problem” with “not possible”, making for a very strange conversation).
  • The flight back was at 7:30 AM so waking up and checking-out between 4:30 AM and 5:30 AM was a bit tough. Also some confusions with the credit card payment of the hotel (it was just reserved, apparently), made for a tought day (not over yet).
  • The connection flight is only at 15:45, so we have to wait out in the aeroport for more than 4 hours and are already very tired. Also the WI-FI at the airport is not free, so no Internet.

But back to the event. Microsoft grouped the IT sessions with the Developer sessions, which has its pros and cons. On the upside, I was able to assist some very good and on-time sessions on “Virtualization and Consolidation” (Gopal Ashok), “Upgrading to SQL 2008” (Dandy Wein), and two very good sessions from Russinovich (from SysInternals fame) “Pushing the limits of Windows”, “Windows Troubleshooting”.

On the downside, the keynote was more IT oriented (Exchange 2010, a new efficiency debate – which was a bit boring, and Windows 2008 R2 and Hyper-V).

For me, the best sessions on the Architecture Track were David Chappell “IT Innovation”, Rafal Lucawiecki “Predictive Programming”, and Don Smith “Application Architecture Guide”. On the Development Track, I really enjoyed the ones around VS2010 Architecture Tools: Peter Provost “Architecture Discovery and Validation”, and Doug Seven “TFS: Become productive in under 30 minutes”.

A bit of a let down were the sessions from Tess Fernandez “Debugging ASP.NET” and Brian Keller “SW Testing in VS 2010”. Not that they were bad, on the contrary, but I was expecting more (maybe it was the expectations).

Update:

The post was written on Saturday, 14 November on the airport, so the event finished 13 November. The post was done today because there was no free wireless on the airport and the remainder of the weekend was just family time.

Marcas Technorati: ,,,

SQL Tips/Tricks 2

Excel is an excellent tool for generating sql scripts of reference tables. Besides being easy to generate the scripts, it’s also easy for the client to manipulate and update the reference information (almost always, it’s the format used for database like information for clients).

So for an excel with the following structure

TableX      
ID Name Date1 UserId
1 Abc 10-01-2009 Alc
2 Def 10-01-2009 Xyz

where the $A$1 is the table name and the columns name are on row 2 (ID, Name, Date1, UserId), inserting the formula on column 6 (or bigger) without newlines:

=CONCATENATE("INSERT INTO ";$A$1;"(";A$2;",";B$2;",";C$2;",";D$2;") VALUES(";A3;", '";B3;"', '";TEXT(C3;"aaaa-mm-dd");"', '";D3;"')")

yields the following result:

INSERT INTO TableX(ID,Name,Date1,UserId) VALUES(1, 'Abc', '2009-01-10', 'Alc')

 

What the formula  is doing is concatenating “INSERT INTO”, the table name ($A$1), the parentesis, column names (A$2, B$2, …), the string VALUES, and the actual values separated by commas and delimited with ‘ when appropriate (string or date values).

So to generate the script is just a matter of copying the formula for all the rows with values (double clicking the cross symbol on the right lower corner of the cell, and it repeats itself according to the adjacent cell, or pulling down the intended number of rows):

image

And the end result is this:

image

And that’s it. A script ready for pasting in a SQL file and applying to a DB.

Marcas Technorati: ,