Here's a summary of the talk I did at the Adelaide SQL Server User Group last week. Most of the talk was a demo (only a couple of PowerPoint slides) so hopefully this is a useful reference for those who attended.
Intro to SSDT
- Evolution of DataDude
- The new way of shipping BIDS
- Ships with SQL Server 2012 and Visual Studio 2012
- Replaces 'Database Projects' from previous versions
- Updates every 4-6 months (in time for SQL Azure updates)
- Ships with VS 2012 and with SQL 2012
- Free tool - use VS shell or integrate with existing
- Will update frequently to keep up with SQL Azure features
- SQL Server Object Explorer
- Connect to local or Azure
- Execution Plans
- Client stats
- Database projects
- Edition-aware targeting (project properties)
- Can switch to azure to check if database is compatible with azure
- Table designer/code view
- Demo deleting a column
- Can see errors (even before building) of related objects (eg. Views) that reference column
- Build creates a 'dacpac' (Data-tier Application Package)
- 'Upgrade data-tier application' from SMSS
- Declarative model
- 'Create New Project' via SQL Server Object Explorer
- F5 builds and deploys database to localdb
- Import .sql files
- Code analysis
- Connected, Project, dacpac or snapshot
- Update changes (defaults to not losing data)
- Expand wildcards to column names - SELECT *
- Semantic refactoring through model - not just find/replace
- Go to Reference, Find all references
- Via SQL script
- C:\Program Files (x86)\Microsoft SQL Server\110\DAC\bin\sqlpackage.exe
"c:\Program Files (x86)\Microsoft SQL Server\110\dac\bin\SqlPackage.exe" /action:driftreport /tsn:.\sql2012
- Right-click on stored proc to create unit tests
3rd Party Integration and extensions
- Red Gate SQL Compare (beta)
- Version control
- Laan SQL Formatter (soon)
I am blessed with a wonderful family and friends. It was my birthday this week, and Narelle cooked a very yummy birthday tea. Pasty slice (see below) followed by baked cheesecake if you were wondering.
My sister surprised me with a present that included jars of Spring Gully pickled onions and sweet spiced gherkin rounds. This is special because not only do I like gherkins (like pickles for American readers) and pickled onions, but the Spring Gully company has been in the news this week as they were placed under administration. I hope they can turn the business around and these jars don't become collectors items.
My friend Andrew also has a creative streak. The Star Wars storm trooper mug was part of his present. To top the night off we had two unexpected guests drop in just in time for the birthday cake, one of whom is on a flying visit from overseas.
On a sad note, I came home the next day from work to discover that one packet of Iced Vo Vo biscuits (also a present) had already been eaten by some little "mice". That's the trouble with having your birthday in the middle of school holidays I guess.
Nanna Jean's Pasty Slice
- 1lb mince
- 1lb potatoes
- 1 big carrot
- 2 onions
- Grate the vegies
Nanna Jean passed away in 2009, but a few years earlier I'd asked her for the recipe for her pasty slice that I enjoyed so much. The above notes are all that I wrote down. Not very complicated. The pastry ends up like a pie crust, with the filling in the middle. Yum.
Today just happens to be T-SQL Tuesday, and this month's question is "how did you come to love presenting?"
The first time I presented in front of a group? hmm that's a tough question. Actually now that I think about it, it might have been the first time I did the kids' story as a young teenager teaching Sunday School. Keeping the attention of 5 year olds is a tough gig, but I must have done ok as that's something I still enjoy doing to this day. Sunday school, youth groups, camps, church conferences – they all gave me opportunities to try out "being up the front".
Moving more to the IT-side of things, getting opportunities to present at local user groups and events has definitely been a highlight. The last couple of years I've also been able to work in and present at the hands-on-labs at Microsoft's TechEd conferences, which is great fun.
One great thing about presenting is that it can be a two-way street. Sometimes you end up learning just as much from those you're presenting to as you hope they did from you.
Speaking of presenting, it's nice to be able to get back to the Adelaide SQL User Group next week and present on SQL Server Data Tools. It's something I've been using a bit lately and thought it would be of interest to others too. I've been involved with this group since it first started years ago, but for the last 12 months or so I've been unable to make the Wednesday timeslot in person due to some family commitments, so I'll be looking forward to catching up with some old friends.
If you're free next Wednesday lunchtime, feel free to register and come along. It would be great to see you!
Earlier this year, Microsoft ran a new competition offering the first 10 developers to publish 5 new Windows Phone apps a new Nokia Lumia 920 phone (and Lumia 820 and 620s for 4 or 3 apps respectively). Getting 5 new apps developed and published in a relatively short time wasn't easy, but I figured the only way to have a chance at picking up a new phone was to have a go.
I was pleasantly surprised to find that I'd just managed to scrape through picking up a shiny new Lumia 920 handset, after initially thinking I'd missed the top 10.
The new phone arrived last Thursday – just in time for me to spend a bit of time over the Easter long weekend to get to know it a bit better (and for the kids to test out it's game-playing functionality!)
The phone came in a 'Developer' box. I think this is the same kind that the BUILD conference attendees would have received.
There's a nice bit of developer-humour inside the box too.
Just in case there's any doubt, the handset has 'Developer device' and 'Not for Sale' printed under the glass just below the buttons. This means it's also not tied to a particular network provider, which is handy.
Here's a side-by-side of my Lumia 800 next to the Lumia 920. You can see how much larger the 920 is.
The screen is nice and large with bright vibrant colours. Reminds me of my old Omnia 7's AMOLED display a bit, though according to the specs is not only a larger screen, it also has a higher DPI.
The case finish is quite slick. In fact maybe a little too so. The 800 came with a rubber/plastic shell that not only helped protect the phone, but also made it a bit 'grippier'. I think I might investigate getting something similar for the 920.
The 920 is a true quad-band phone, supporting 850, 900, 1900, 2100 MHz 3G frequencies. My unbranded Lumia 800 doesn't support 850, though Narelle's 800 (being Vodafone-branded) does. As a bonus, the 920 also supports LTE which will be handy when Vodafone rolls that out soon.
Ben had mentioned he's experienced some reliability issues with his 920, and unfortunately I'm seeing similar problems already. I've seen my 920 spontaneously restart while I was using it once, and seen evidence of it restarting a couple of other times already. That's not so encouraging and gives me cause to question whether to completely retire the 800 and use the 920.
Google is being a bit annoying with Microsoft at the moment – turning off Exchange ActiveSync access to GMail & Calendars in a few months. Interesting to see if the trick of browsing to https://m.google.com/sync/settings/iconfig/welcome?source=mobileproducts&hl=en (with a UserAgent set to iPhone) still works. It is making me seriously consider moving my email over to Outlook.com instead.
Battery life seems ok, but I have noticed that a serious bout of gaming by the kids takes it toll. One comment from our resident gamer was disappointment that his saved games weren't
I do like the Kid's Corner feature – you can set up some games and apps that kids can play (and nothing else).
The Wallet is also a good idea. I've enabled a separate PIN to ensure no one accidentally buys new games or apps on my phone.
I've just published Loaded Projects to the Visual Studio Gallery.
The inspiration for this extension was having to deal with solutions that contained a lot of projects (from 50 to 150 and beyond). Often you know that many of the projects aren't relevant to the particular feature or bug that you're working on and unloading those projects can give you a big performance win. Visual Studio will be more responsive and the time to build and debug will be shortened.
The problem comes when you need to move to a different area of the solution. You now need to reload some of the previously unloaded projects, but also unload some others that are now no longer significant. Wouldn't it be great if you could save a record of all the unloaded projects so that you could reuse it again later?
Enter Loaded Projects!
Click on the 'Loaded Projects' item in the context menu after right-clicking on a solution.
A dialog window appears, from which you can save the current set of loaded/unloaded projects as a new profile,
select an existing profile and load that, or choose to delete a profile you no longer need.
If you like the extension, please write up a review on the gallery page.
I've put the source code up on GitHub, so make use of the Issues page to submit any bugs or feature requests, and of course pull requests are always welcome.
The extension initially just supports Visual Studio 2012. If there is enough interest then it should be pretty straight-forward to back-port it to to 2010 too.