I read The Connect Effect: Building Strong Personal, Professional, and Virtual Networks by Michael Dulworth ($16 @ Amazon) months ago, forgot to write up the review and finally getting back to it. The emphasis of this book – to me – is on the value of networks, and that was something I needed to read at the time. It’s interesting to read success stories about networking to know that somewhere and sometime it does pay off. If you’re just starting on networking you may find it useful just for that.
The more interesting idea he proposes is of having a ‘personal board of directors’, a team of people that you look to for advice, guidance, etc. That’s an interesting idea. I’m not terribly good at taking advice, but I do a lot better when I can just talk through something with someone that will be thoughtful about it. Making that group tangible seems worthwhile, if maybe more complex than just the adhoc ‘hey, what do you think I should do…’ kind of conversation.
Not a must read, but not a bad book either.
I was doing some maintenance on the SQLSaturday web site recently and one request kinda low on the list was to try using Bing Maps. We’ve been using Google Maps (see SQLSaturday #17 for an example) because it’s easy to use. Just enter the address and make sure it’s the one you want, then click “Link” in the upper right hand menu and copy the HTML, giving you something like this:
<iframe width="425" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://maps.google.com/maps?f=q&source=s_q&hl=en&geocode=&q=225+S+Westmonte+Dr,+Altamonte+Springs,+FL+32714&sll=37.0625,-95.677068&sspn=46.764446,78.662109&ie=UTF8&z=14&iwloc=A&ll=28.671085,-81.388779&output=embed"></iframe><br /><small><a href="http://maps.google.com/maps?f=q&source=embed&hl=en&geocode=&q=225+S+Westmonte+Dr,+Altamonte+Springs,+FL+32714&sll=37.0625,-95.677068&sspn=46.764446,78.662109&ie=UTF8&z=14&iwloc=A&ll=28.671085,-81.388779" style="color:#0000FF;text-align:left">View Larger Map</a></small>
Not much to look at but it works, no code. We’ve got a column in event table where it’s stored, making it easily and nicely data driven. When I added the task my thought was it only going to consist of changing the prompt in the setup to “bing”. No…..
Turns out that Bing doesn’t provide that same kind of support, that I could find at least. Putting a link to the map is easy, but a live working map seemed to require code. I found a couple of blog posts like this one and groaned, didn’t really want to put time into it. Finally convince myself on a Sunday morning that it would be a good learning opportunity and off I go.
If you look at the code in the post I just referenced they are calling a JavaScript function in the Body OnLoad event. That’s easy enough to copy, except – I’m using master pages (a easy way to apply consistent elements to each page) and the master page has the BODY tag. I don’t really want this function running on every page when it only applies to one. Finally I ask the right question and end up with this in the Page load event:
'only run map code if we have the data If Me.lblLatitude.Text <> "" And Me.lblLongitude.Text <> "" Then Me.ClientScript.RegisterStartupScript(Page.GetType, "Startup", "<script language='javascript'>try { GetMap();} catch (error) {}</script>") Else Me.BingMap.Visible = False Me.litMap.Text = oEvent.MapURL End If
For those less code inclined by the time this runs I’ve already loaded and displayed the lat/long from the database (stored as varchar if you’re wondering) and now I’m branching based on whether those values exist. That is to avoid breaking all the old events that have the Google code stored. The meat of it is the RegisterStartupScript that ultimately adds the call to the GetMap function in the Body OnLoad event.
Then, I need to add some JavaScript to the location page. I think this can be injected at runtime as well, but since it won’t change much, saw no reason not to embed it:
<script type="text/javascript" src="http://dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=6.2"></script> <script type="text/javascript"> var map = null; myBingZoom = 14; function GetMap() { try { var myBingLat = document.getElementById('<%=lblLatitude.ClientID%>').outerText; var myBingLng = document.getElementById('<%=lblLongitude.ClientID%>').outerText; var divtag = document.getElementById('<%=BingMap.ClientID%>'); var mybirdWaypoint = new VELatLong(myBingLat, myBingLng); map = new VEMap(divtag.id); map.LoadMap(mybirdWaypoint, myBingZoom); map.AddPushpin(mybirdWaypoint); } catch (Error) { } } </script>
<script type="text/javascript" src="http://dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=6.2"></script>
<script type="text/javascript"> var map = null; myBingZoom = 14;
function GetMap() {
try { var myBingLat = document.getElementById('<%=lblLatitude.ClientID%>').outerText; var myBingLng = document.getElementById('<%=lblLongitude.ClientID%>').outerText; var divtag = document.getElementById('<%=BingMap.ClientID%>'); var mybirdWaypoint = new VELatLong(myBingLat, myBingLng); map = new VEMap(divtag.id); map.LoadMap(mybirdWaypoint, myBingZoom); map.AddPushpin(mybirdWaypoint); } catch (Error) { } } </script>
And then in the page where I wanted the map, added this:
<div id="BingMap" style="position:relative; width:400px; height:285px;" runat="server" visible="true"></div>
Now if you know what you’re doing that’s about 10 minutes worth of work. Took me 2 hours to get it all done. If you decide to try this remember that JavaScript is case sensitive. Case Sensitive. CASE sensitive. Next, Visual Studio 2008 will debug client side JS if you enable debugging – which strangely enough is a browser setting and not in VS – but a real help, very cool feature.
You’ll see two lines that get the lat and long from the controls. Maybe there is an easier way, but this was the example I found and went with it. The “getelemementbyID” exists to translate what I called the lat/long controls at design time to what they were finally called by asp.net when the entire page was rendered.
One other note. In my case I only wanted to show the map if I had lat/long, but originally it still took up space on the page. The answer was to add “runat=Server” to the div tag so that I could flip the visible property to false in code as needed, eliminating the white space it was reserving.
I haven’t found a solid way of getting the event lat/long yet, though I can’t say I’ve looked deeply. Sometimes it shows up in the Bing URL (I think). Found this site that provides them using a few difference sources, but none of them seemed to be quite right when I plugged in values for SQLSaturday #16 (example here).
It was an interesting project and while not necessarily the best use of my time when I look at now versus then, it may lead to something more interesting like being able to map all of the SQLSaturday events easily on one map. But that’s on the list for another day!
Just in case you don’t read the Connector today, here’s a link to an interview that PASS HQ did with Don Gabor that focuses on his upcoming seminar at the Summit. If you’re on the fence (or definitely not going), I’d be interested to hear what you think about his answers.
I currently write the editorial for the PASS Connector which is published every two weeks as part of my role on the Board of Directors. I'm cross posting those editorials here as well as to the main PASS blog.
How good are you at meeting new people at a user group meeting or a conference? Do you remember names? Do you follow up, or the business cards wind up being discarded without looking at them? Do you wish you were better at networking?
This year at the PASS Summit we’re trying to do more than just have ‘networking events’, for the first time we have real training available to help you learn to network. Noted author Don Gabor will be presenting a 2 hour seminar the afternoon of Nov 2nd where you may not learn it all, but you’ll get a good start! It’s $60 for the two hour seminar and includes a signed copy of his book. Go to the seminar, learn some skills, and then move right into the opening night reception to give them a try in the real world.
You might go because you need to grow your networking skills, but it also represents a great networking opportunity itself. Author and speaker Grant Fritchey will be there and blogged about why he plans to attend. So did PASS Board member Tom Larock. Summit speaker Kendal Van Dyke and PASS volunteer Jack Corbett will be attending. Past President Kevin Kline will be there and so will Steve Jones from SQLServerCentral.com. I’ll be attending and blogged about why as well.
We’re going to try for a group photo of all 100 attendees together, and invite them all to join an attendee only LinkedIn group to make sure everyone has a chance to decide who they want to meet and has a way to save the connections they make.
Networking is a vital career skill. It doesn’t mean you need a job or have something to sell, often having that connection means you can help someone else, often in unexpected ways. More practically, attending an event like the PASS Summit is a lot more fun when you connect with people.
Have a question about the networking seminar, the PASS Summit, or PASS in general? Email me at andy.warren@sqlpass.org and we’ll get you an answer.
Steve Jones sent me this link on time management that discusses two things – getting ‘ambushed’ at the start of the day with unexpected tasks and the power of ritual. It was timely (as it were) because I’d just had a miserable day where I had some goals to hit and spent most of the day reacting to calls and requests.
The article puts the emphasis on making your list first, and then reading email. I like that, but I’m not sure it’s always possible depending on the job and situation. In the case of this particular day I elected to prioritize things that I felt would benefit from immediate attention at the expense of my planned agenda. Good decision or bad? It felt bad at the time because it wasn’t what I wanted to do – I wanted to finish the final 2% of something I’d been on for longer than planned and put it away for good.
Ritual, aka patterns, are definitely one of the ways that most people win, including me. They aren’t inherently good or bad, they just are. I don’t think you get the big wins by never changing from the pattern, but you don’t get the big wins by deviating a lot either.
Not sure I’ve learned a lesson though I know it’s there to be learned. One thought that does come to mind is that I think this is marginally easier when you work on or with a team because you can get some feedback - ‘should I change course for this?’. I usually work solo and just have to make the call on day to day stuff.
I ran across this a while back and it’s been on my ‘to blog about’ list for too long. Open networkers (LION’s) are those that actively seek and accept networking connections on LinkedIn. It’s a controversial strategy, both to LinkedIn itself and to those of us building networks, but it’s definitely interesting.
This article from CIO Magazine talks about Steve Burda having more than 34,000 connections on LI. That’s direct connections, not six layers down. That’s a LOT of people, though no where near the kind of counts of followers that some of the celebs get on Twitter. Maybe that’s good!
I’d call myself a relaxed networker. If you use SQL or read my blog, I’m happy to connect with you. We don’t have to meet in person three times or become blood brothers, but I do want my network to be relevant. Everyone gets to decide for themselves and I think no wrong answers, just pick a strategy that fits you.
Imagine though, that you’re out of work tomorrow. Which would you rather have, a network of 360or so (me, right now)m, or Steven Burda with 34k? Worth thinking about how you plan to use your network, and equally, how you plan to help your network. If you had to start looking for an employee tomorrow, better to tell 360 people or 34,000?
I’m not convinced yet that I should change to the open network strategy, but it’s interesting, and worth thinking about.
I had hoped to announce this much sooner, sometimes the wheels turn slowly. But turn they do! We’re back at Seminole Community College this time and looking forward to a great event. We’re going to try to feature some longer sessions in Part 1/Part 2 format, a block of 15 minute sessions to give first time speakers a chance to get their feet wet, and we’re working on a couple ‘pre-con’ seminars for Thursday and Friday before the event. I’m also pleased to see the volunteer list growing this year – Jack Corbett, Kendal Van Dyke, Terrence Tully, Bob Blaydes, and David Caylor will be taking an active role in making it happen.
Bill Graziano just made the announcement about the changes to the bylaws being published. No sweeping changes, for the most part intended to clarify things. The remaining document that is still in progress is defining who can vote – a challenge to solve with free members and concerns about how to reasonably prevent election fraud, more on that soon.
We (Brian, Steve, and I) provided hosting for SQL chapters going way back…maybe 2002 or 2003, on behalf of PASS. When we sold our interest in SQLServerCentral.com to Red Gate we had to move them off the SSC domain, and we just grabbed SQLGroups.com. We didn’t do much with it besides that, it was an ‘interim’ solution that lasted a long time. But PASS has matured and now has a free hosting solution (using DNN again) that works, so we’ve notified the few remaining chapters that they have until Sep 15 to relocate.
Hopefully many will host with PASS, it’s good for both sides. Groups get the tools and the proximity to PASS and other groups, PASS gets more chapters in a place where it’s easy to share news and logins and more. It’s not perfect of course. DNN is powerful and flexible – if you know your way around. Brian has been looking at other solutions for his Jacksonville group and I’ve been doing the same – not out of any problem with PASS, more because we just like to tinker! More on that soon I hope.
It’s interesting that the number one thing I’ve heard from chapters over the years has been that they just want an easy way to email to their list. Many groups out run the limits of a single Outlook message, and they also need a way to manage subscribers. Lots of ways to do that of course, just give them one that works! Some of those conversations lead to the features we’ve implemented in SQLSaturday – making it easy to email to a subset of the list, making it easy to inject the list of sponsors or the schedule. I’d like to see PASS put more effort into their hosting solution with that regard – work on the things chapter leaders use most.
So it’s the end of a small quiet era for us, but I’d like to think we earned some karma from it.
Sometime in the next couple weeks will mark the beginning of the 30 day period where we accept nominations for the PASS Board of Directors, see www.sqlpass.org for the details. I thought I’d write just a little bit about what it’s like to be on the Board, what qualities I think I would look for in candidates, and call out a few names of people that I know well enough to believe they would be a great fit.
First, I’d say that 6 months into it I consider it a positive experience. I think I’ve been able to make a difference in a few areas to help move PASS forward, and really that is the key – everyone making small but significant contributions. I see it as great experience for those looking to move into C level jobs or to run their own company with more than few employees. It’s at least 2 hours per week, and I think I’m averaging closer to 5 hours per week. We typically have three two day board meetings, most are held in Seattle, so remember to add travel time because you really need to be there the full 2 days. It has it’s frustrations, but none that have made me regret participating!
As far as qualities in nominees, things I’d suggest that lead to success are:
Now to the hard part. I’m a little reluctant to call people out because I’ll probably miss more than few that I should have listed, but I’m going to do it anyway. Here’s the list:
Write to those if you know them and agree, or give someone else you know and value a push. The first step is to build a good set of candidates and then we can have the interesting task of picking the best four come late October.
Steve Lane and team from Tallahassee are hosting their annual Code Camp on Sep 5, 2009, and have asked if we could also run a SQLSaturday at the same time, probably a 1-2 track event. There is not currently a SQL user group in Tallahassee which makes it an interesting opportunity for PASS as well. The challenge – or opportunity – is that that Sep 5th falls on Labor Day weekend. That could present an interesting way to mix vacation and work!
So, consider this to be an almost call for speakers – if you’re a SQL person and would be willing to present 1-2 sessions on the 5th drop me an email by August 1st. I’m sure Steve will try to squeeze in as many presentations as possible, the only question is whether we can build enough interest to run a solid SQLSaturday or not.
Stuart Ainsworth is launching SQLSaturday #24 & #25, both in Gainesville, GA on October 9th and 10th respectively, and yes, one of them is on a Friday. Greg Larsen has just started SQLSaturday #26 in Redmond, WA on October 3rd. This is the second time out for both of them so we expect things to go well. Registration and call for speakers is open for all three events.
Found The Candy Bombers: The Untold Story of the Berlin Airlift and America's Finest Hour by Andrei Cherny ($20 @ Amazon) at the library and it caught my eye. It turned out to be an interesting story with some very interesting characters. It covers the end of WW II and how Berlin was governed by a multi nation council and how the people of Berlin were barely surviving for several years after the war even with the US providing some food – averaging about 1000 calories were day. Some of the behavior attributed to the Soviets in Berlin is pretty horrid, almost routine rape of women, killing children, and more. Eventually relations break down and the Soviets stop all resupply coming in to Berlin.
This was a huge problem, because the American military had been drawn down sharply after the war and just did not have the power to fight toe to toe with the Soviets, the only equalizer was the atomic bomb. That’s right, the beginning of the cold war. You get to meet the key Americans trying to convert Germany to democracy (trying to avoid the mistakes that lead to WW II from WW I), see Truman, Marshall, and Forrestal in DC, and more. Nothing smooth or elegant about the course of changes, but it feels real – life rarely feels elegant.
Flying in supplies isn’t very efficient compared to truck and train. They struggled in the beginning and once they got the right guy, they were landing planes every 3 minutes 24 hours a day.
All of that makes for good reading and a good story, but the author poses that one other guy changed everything about how Americans felt about Germans and vice versa. You can imagine post war there was a lot of residual ill will, you’re trying to convert them to democracy, and you’ve got communism in the mix too. Airlift pilot Gail Halvorson decides to give some German children his two sticks of gum (against orders to give away food) and then starts dropping candy bars tied to handkerchief parachutes. He keeps going, then word leaks out and other pilots start bring him candy. Then the boss finds out, he does some interviews (instead of getting canned), and pretty soon he has TONS of candy to drop, school kinds making parachutes, and more pilots dropping candy.
It doesn’t sound like much, but imagine the impact on kids with nothing, barely surviving for food, and then this guy shows up and promises that he’ll return the next day and drop candy from the sky. And then does it. Over and over again. The book has quite a few letters from the children in the book saying thank you – the best part of the book.
I don’t know if I’d call it our finest hour, though we did come through when even many of our people wanted to abandon Berlin and we did in a way that was – to me – uniquely American, 1 plane every 3 minutes…for months! Col Halvorson though, with a simple idea and the courage to do something good even if not ‘by the book’ made a unique difference in the world. Well done Colonel!
This month I’m featuring Glenn Berry, a Denver based MVP that writes Glenn Berry's SQL Server Performance blog. He blogs at least once a week and often more frequently on topics about performance, and one thing I like is the posts are direct, clear, and often include well formatted source code to go along with it. If you’re interested in performance (aren’t we all?) you’ll pick up some nice tips here from time to time.
Time for another update on all things PASS. I’ve been struggling to find time for PASS activities and having to prioritize the time I do have towards things that have to be done rather than things I want to get done. Frustrating because I want to do more, but probably realistic to know and share that it’s just not always possible. Sometimes life just gives you more than you have time to do.
Last week we had our July board meeting and it was fairly routine, about 25 minutes total. We voted to approve the previous minutes and a couple other small issues. The meetings are necessary and usually pretty efficient as far as voting, but that’s not to say they are fun. For example, this time we were discussion a document and it’s revisions, and we spent a lot of time trying to explain what page/paragraph we were talking about. We do conference calls to make it easy to participate, but I think using Live Meeting would make a lot of different for this type of discussion. The other thing I don’t like about these meetings is very little collaboration – just not the right time, enough time, etc, to make it work, and we rarely have calls outside of the meeting that involved more than one other person. Not to say we don’t collaborate, but to me you have to put the people in the room if you can and if not a targeted group on the phone and spend same time.
I just finished working with Tom Larock and Kevin Kline on recommendations back to the board on how to qualify voters for the upcoming election. This is an interesting – and frustrating – problem. In the past we had paid members so it was easy, no one cared enough about trying to tilt the election to spend $70 per vote. With it only being an electronic vote and no financial hurdle, how do you qualify members? We came up with about 7 different options, none of which are great. I’ll share more on that once the Board has a chance to review and decide.
Speaking of the recommendations, one thing I like to see (and try to do) is a range of options. We all have favorite solutions and biases, so to help others make a good decision you have to show them a range – what I call good, better, and best. Not to say that there still won’t be a bias, but just trying to find options helps you better understand the problem and whether the proposed solution really works.
PASS HQ has circulated a draft plan for managing content and ultimately there will be one person on HQ staff that will review and monitor content. That’s long overdue, as I took over the content portfolio I was struck how hard it is to walk the line between empowering people to make changes and total chaos (and if you have SharePoint, you’ll be familiar with the problem!). HQ is also going to make a pass through the site to clean up and standardize, tedious but needed to maintain a professional look. That reduces my stake in things to trying to provide some guidance about what content we publish. For example, we don’t use our blog very well, and when we do I’m fairly picky up the tone of the posts – should be semi-formal, and we often hit casual.
I’ve also just finished a review of the election process document, 20+ pages put together by HQ, and sent back comments and changes. The election last year definitely had some points I wasn’t happy with as a candidate, so Tom and I are trying to make sure that we at least fix the things we saw wrong from last year. It’s also fair to call it an evolutionary process, each year we learn lessons and fold them back in, all with the goal of providing nominees and voters with a fun and fair election.
I’m also continuing to participate in other parts of PASS such as the networking seminar. I’ll be tailoring my editorial for next week to talk about the seminar, and I just had a call with Craig at HQ to try to give him answers he was waiting for on marketing (I’m just helping there because I know Don and the topic), and I talked to Blythe about how we handle scenarios where we have an existing chapter in a city and a new one wants to form (no simple answers there) to share some thoughts I had – Blythe and Greg Low ultimately set the policy.
I’m way behind on two projects. publishing some SQL injection guidance and getting the rules for paid articles published. Details the content plan will be out early next week, the SQL injection stuff…not sure. Guilty of owning too much of the deliverables there, though it’s easier than you know to make that mistake! I need to get those going so I can review my goals and set new ones to carry me through the Summit.
I’ll post more on this separately, but the call for nominations will open July 27th (approx) and we’re hoping to build a slate of great candidates. We want a lot when it comes to candidates – leadership, vision, experience, financial and budgeting savvy, PASS participation, great communications skills, SQL expertise. Start thinking about whether you’re interested, or someone you know is.