According to Bloomberg, the deal was for $7.4 Billon in cash. This should prove interesting, especially since Oracle now owns two major database platforms (Oracle and MySQL). On one hand this means (arguably) a single competitor for Microsoft’s SQL Server, but yet a company that has an alternate operating system (Solaris) and a major database component, so potentially a competitor to Windows. It will be interesting to watch this. Here are the details on Sun’s site and Oracle’s site.
I met up with Steve Smith at PDC last week, as well as Rick Strahl and Jeffrey Palermo (of Party with Palermo). It seems that these guys along with some other respected technologists (Hanselman, Guthrie, Osherove, and Howard) are aggregating over at DevMavens. The term Maven means an expert, connoisseur, or a person with special knowledge, which these guys have plenty of. 
The Seattle developer community is holding Seattle Code Camp November 15-16, 2008 at the DigiPen campus in Redmond, Washington (close to Seattle). Please pass this notice on to folks you think are interested in either attending or speaking. Speaking of speaking, they are looking for speakers. If you hit the code camp site, you will see that they don't have sessions or tracks listed at this point. This 'camp is a blank page at this point that needs to be colored in - which is a great venue for presentations. If you have something you are passionate about but have never done any public speaking I encourage you to give it a try. If you are an experienced speaker, this is your time to get involved in your local community and share some of your experience. What types of topics are they looking for? Pretty much anything goes as long as (A) it involves code, and )B) It isn't a direct advertisement for a product or service. This means that this isn't limited to .NET or even Microsoft technologies. Past 'camps have included sessions on XBOX 360 development, Java, PHP, Delphi, and Rails. Submit your sessions here. Alternatively if you have no desire to get up in front of a bunch of developers and impart your wisdom, they could still use your help. Please promote this code camp at your user group meetings, post it on your blog (like I did), email it to interested locals and encourage your friends and coworkers to submit sessions. Finally if you plan on attending please register so that we can get some idea of the required space and food needs.
Whether you're attending Microsoft's PDC or not, The Underground is the place to be!
Microsoft and INETA have joined forces to bring you a truly amazing experience in downtown Los Angeles on the Wednesday during PDC. They've got a fantastic speakeasy evening lined up, one that's sure to leave a lasting impression. It'll be a great night of vignettes, networking, music, dancing, food and drinks! Check it out. See you there!
Thanks to those who attended the second meeting of the Boise SQL Server User Group. We had a good turnout of around 30 people and I hope everyone enjoyed my presentation of SQL Server 2008 Integration Services (SSIS). I tried to balance the presentation between those who hadn't used SSIS and those who have. If you are interested in the sample projects, packages, and data files from the talk, here they are.
I got an email this morning, as I'm sure many of you did, from Lutz Roeder ... After more than eight years of working on .NET Reflector, I have decided it is time to move on and explore some new opportunities. I have reached an agreement to have Red Gate Software continue the development of .NET Reflector. Red Gate has a lot of experience creating development tools for both .NET and SQL Server. They have the resources necessary to work on new features, and Reflector fits nicely with other .NET tools the company offers. Red Gate will continue to provide the free community version and is looking for your feedback and ideas for future versions. Here is the new page for .NET Reflector.
Wow, two great speakers in less than a month. Last month, we had Kalen Delaney speaking at Boise's inaugural SQL Server User Group and tonight at the Idaho .NET User Group, Kathleen Dollard an INETA speaker is sharing her "Twelve Gems and Eight Dragons talk." Here are the Twelve Gems - System.AddIn - one of two new features in 3.5 that are getting overlooked; allows you to let other people provide customization to your application; wraps everything about managing app domains; check out the Pipeline Builder tool on CodePlex
- HashSet - sets = groups and very high performance, and sets are mutable; LINQ allows set-type functions, but is missing some features and always returns copies
- WPF Async Data Loading - Asynchronous behavior offered for instance loading and (sometimes) property retrieval, by leveraging the ObjectDataProvider IsAsynchronous property in XAML
- Generic Classes C# - Generic classes encapsulate operations that are not specific to a particular data type; the most common use for generic classes is with collections like linked lists, hash tables, stacks, queues, trees, and so on. Operations such as adding and removing items from the collection are performed in basically the same way regardless of the type of data being stored; Why generics? improve performance, enhanced behavior with 3.5, improve robustness by catching typing errors at compile time, reduce amount of code via generic refactoring; Kathleen's guidance is to stop using System.Collections and replace it with System.Collections.Generic
- Refactor/Rename - in her opinion the most commonly used refactoring; now available in Visual Basic as well
- Snippets (your own) - Microsoft's provided snippets are marginal; Kathleen says not to use Microsoft's snippet editor, but rather Bill McCarthy's Snippet Editor 2008 instead
- Understanding Your Code - static analysis (FxCop, VSTS Code Analysis - but custom rules are hard), code-based analysis (CodeIt.Right and StyleCop), and VSTS Code Metrics (maintainability index, cyclomatic complexity, depth of inheritance, class coupling, and lines of code) - cool and (some parts) are useful, unit test code coverage, and performance
- Data Driven Unit Testing - data sources define conditions, can be Excel, quality team can be included and expand the list, consider naming classes by condition, do not demand 1:1 class correspondence, and anticipate n:1 test correspondence
- Extension Methods - Extension methods enable you to "add" methods to existing types without creating a new derived type, recompiling, or otherwise modifying the original type so you don't have to wait for Microsoft to provide functionality you've been waiting for;
- System.Exception.Data - a key/value pair collection to provide additional, user-defined information about the exception
- Partial Methods - separate responsibility, pretty useless unless they can interact; partial methods allow interaction between partial classes; they required definition of clear extensibility points and are a replacement for intra-object dependency
- Document Outline - provides an outline view of elements and scripts in the current document (Web or Windows forms)
Here are the Eight Dragons - VB vs. C# nullable operators - be careful here because a lot of combinations of =, <, >, etc. may give unexpected results
- Inheriting from Collections. Generic.List - Microsoft decided List should have max performance so they sealed everything to avoid virtual table calls, so you can't modify, add events, anything;
- Interface versioning - everything implementing the interface is broken, so create a new interface or consider using a base class
- Immutability in anonymous types - once you place something in a dictionary, its hash must not change; anonymous types are used most in LINQ; in C#, all instances of anonymous types are immutable, but VB uses a key to define a immutable fields of anonymous types and if the key is missing, it will use reference semantics so for LINQ consistency, uses full value semantics in LINQ
- The New constraint - the most useless piece of junk related to generics; generics provide 3 constraints: base, interface, and new; the "New" constraint requires public parameterless constructor and this is not consistent with most good development; instead you should use reflection to instantiate
- Unexpected LINQ evaluation
Landscape Complexity - if we are feeling overwhelmed (and we should be given the complexity of .NET 3.5) with so many languages, data bases, server solutions, data access, presentation
- There is a frightening pace of change, which is a generally a good thing, but we are losing hobbyists, one man shops
- No one is competent anymore
- You cannot know it all
- Code for change - assemblies (n-tier and beyond, wrap XML, wrap communication, wrap office automation, wrap special library access) , class design (interface coding, partial classes, generics), code design (lambdas, LINQ core), big picture (source control, CI, reluctant polyglot programming, code generation, testing, metadata - DRY4D - don't repeat yourself in the 4th dimension (time)
Other terms overheard this evening - Polyglot Programming - using the best language for the job; in this case, C# or VB
 - CTRL + Shift + V - Cycle through the clipboard in Visual Studio
- CTRL + A + C - Copy the text out of a dialog window
I got an opportunity to attend the LA C# User Group tonight, and listen to Mike Vincent speak on this subject. I'm familiar with the concepts and capabilities of dynamic languages, but looked forward to getting my questions answered. The behaviors of a dynamic language include several cool behaviors: - Extend the program by adding new code
- Extend objects and definitions
- Modify the type system
The downside: - No compiler safety net
- IDE maturity such as Intellisence
- TDD becomes very important
The Dynamic Language Runtime (DLR) adds a set of services on top of the CLR to support dynamic languages. It will be distributed with Silverlight, IronPython, and IronRuby. Here's a cool graphic Scott Hanselman posted last year that explains the roadmap past, present, and future:  Other notes: - The Silverlight CLR 2.0 won't support CodeDOM, so the need for a dynamic language really becomes evident.
- Django is a high-level framework for Python comparable to Ruby on Rails, and at PyCon 2008 (March 2008) Microsoft demonstrated Django's use on Iron Python
- John Lam demonstrated Ruby on Rails running on IronRuby at RailsConf (May 2008)
On a side note, one of the attendees told me about the Google App Engine, allowing you to run your application on Google's infrastructure. You can download Mike's presentation here.
Tonight is the maiden voyage of the Idaho SQL Server User Group and what a way to send it off - with Kalen talking about SQL Server 2005. Counting heads in the room, it looks like we have about 33 people, including Kalen and Cindy Gross (Microsoft). That's a nice sized group for an evening gathering of a user group in Boise. After enlightening us with her background, and deep history working with SQL Server, Kalen jumped right into the nuts and bolts of SQL Server 2005: The Costs of Concurrency.
Elegant Code is hosting an Open Spaces session. An Open Spaces session is a discussion where the attendees generate the topics. There will be no presentation, no lecture, no PowerPoint slides, etc. The main point of this is a discussion were all the attendees can grow and learn from each other. The topics for discussion will be created by the group. The discussion will be facilitated, but just to keep the conversation going, not to drive it in any direction. The first one will be held on June 3rd, at the Casa Mexico Restaurant in the Hyde Park section of Boise. They offer beer and wine in addition to the great "South of the Border" food. If you would like to attend, please RSVP at scott.schimanski@gmail.com. Location Casa Mexico Restaurant 1605 N. 13th St. (Hyde Park), Boise, Idaho (Downstairs in the brick building) When Tuesday evening, June 3rd, 6:30-8:30.
Can someone please help them? While traveling through PHX today, on my way to Houston, I logged on to their "Sky Harbor Public WLAN" and actually got connected. They must have upgraded their gear, because a year ago it was not so friendly. Also, all of the US Airways clubs have ditched their private wireless networks and gone with using the general Sky Harbor Public WLAN network, which means even more travelers will see this embarrassing error:  Maybe I can convince my friends in the Phoenix web-dev community to give them a call at (602) 273-3300 and help them out!
The newly formed Boise SQL Server User Group kicks off its first meeting with Kalen Delaney on June 25, 2008. I'm happy to see a Microsoft SQL Server user group in Boise. It will fit nicely with the other development and SharePoint groups in town. For more information, contact Cindy Gross of Microsoft.
I had to show off my three amigos here. In 2007, as in 2006, I logged enough Global Impact activities to achieve the gold status award. Along with it came the bronze and silver awards as well. This time, they are mounted to more easily sit on a shelf ... or so that the RDs don't try to use them in a car wash or something. ... and I'm already hard at work in 2008 working to link companies and the community with Microsoft. Congrats to some of my fellow RDs who also achieved the gold award: Tomislav Bronzin (Croatia), Damir Tomicic (Germany), Jonathan Goodyear (US), Tedeusz Golonka (Poland), Vinod Unny (India), and 40 others. Learn more about the Microsoft Regional Director (RD) program here.
I just got sent this announcement from AppDev . I was about to delete it when I noticed a familiar looking face of my friend (and second-time, new dad) Scott Cate!
Time flies. It's been a year since Dr. Gray, a Microsoft research fellow and Turing Award-winner, went missing while sailing off San Francisco. A year ago, at Boise Code Camp 2.0, I hosted a session on finding Jim Gray, using Amazon's Mechanical Turk.
Now, a year after Dr. Gray went missing, the Association of Computing Machinery (the organization that holds the Turing Awards), the IEEE Computer Society and the University of California-Berkeley have joined to announce a tribute to Gray, planned for May 31 at the UC Berkeley campus. Jim Gray attended UC Berkeley from 1961 to 1969 and earned the school's very first Ph.D. in computer science. Fittingly enough, the tribute will also feature technical sessions for registered participants.
You can find more information about the tribute here:
One is an award winning anti-virus writer, and the other is an expert in .NET architecture and ALM tools ...
Do you know your geeks?
Last week I had a chance to meet some of the brains behind gridGISTICS - a .NET development company in Atlanta that gets it. Not only are they up to speed on the latest .NET 3.x technologies, but they have some killer products as well. The one that struck me as the coolest was their Aware Server product, which is a grid-computing based deployment and management environment. In other words, the missing pieces to Team Foundation Server's build and (ahem) deploy automation. Packaging up applications by system and version into manifests, these binaries can be automatically deployed, registered, launched, and monitored by various Aware Agents installed around a company's environment. From the development side, they provide many Visual Studio 2008 templates and add-ins to help generate Aware-compatible applications very quickly. Follow their story here.
This month’s meeting topic is Blogs and Wikis in SharePoint - what’s available out of the box and interesting ways to extend and use Blogs and Wikis presented by Ben Hickman of Microsoft. They will also be having a presentation by Certeon around their S-Series Application Acceleration Appliances, which provides the industry’s only solution with Application Intelligent Networking to deliver application acceleration, security and scalability from the desktop to the data center. Meeting Date: Wednesday, December 19th, 2007, 11 am – 2 pm Meeting Place: 250 S. 5th Street, Boise, ID 83702 Meeting Agenda: 11:00 - 11:15 - Arrive at the meeting...visit with other users. 11:15 - 11:20 - Announcements and other group administrative topics by group coordinator 11:20 – 1:45 - Presentation by Ben Hickman and Certeon (Lunch will be ready at about 12:00 so help yourself when it arrives). Find more meeting information on their web site.
Come chat with the Visual Studio Team System group on Wednesday, December 5th. Join members of the Visual Studio Team System product group to discuss features available in Team Foundation Server, Team Suite, Architecture Edition, Development Edition, Database Edition, and Test Edition. In addition, discuss what's new for these editions for Visual Studio 2008. There will be two sessions that day:
Microsoft's Patterns & Practices group recently released the final version of the “Team Development with Team Foundation Server” Guide. This guide has been in beta for the last couple of months. It shows you how to get the most out of Team Foundation Server to help improve the effectiveness of your team-based software development. Whether you are already using Team Foundation Server or adopting from scratch, you’ll find guidance and insights you can tailor for your specific scenarios. It's a collaborative effort between patterns & practices, Team System team members, and industry experts.
Some quick facts: - 496 – Total number of pages
- 18 – Total number of chapters in this guide
- 11392 – Total number of downloads of the Beta version of this guide
- 8 – Number of attempts to get the Adobe build to work to generate the guide in .pdf format
- 60 – Number of external and MSFT contributors and reviewers
Download the guide from CodePlex.
Microsoft's Patterns & Practices group recently released the final version of the “Team Development with Team Foundation Server” Guide. This guide has been in beta for the last couple of months. It shows you how to get the most out of Team Foundation Server to help improve the effectiveness of your team-based software development. Whether you are already using Team Foundation Server or adopting from scratch, you’ll find guidance and insights you can tailor for your specific scenarios. It's a collaborative effort between patterns & practices, Team System team members, and industry experts. Some quick facts: - 496 – Total number of pages
- 18 – Total number of chapters in this guide
- 11392 – Total number of downloads of the Beta version of this guide
- 8 – Number of attempts to get the Adobe build to work to generate the guide in .pdf format
- 60 – Number of external and MSFT contributors and reviewers
Download the guide from CodePlex.
My students this week told me about the new version. I remember using the original XML Notepad, and it was great, very simple. For the longest time, I couldn't find it on Microsoft's site to download, and then a newer version showed up on CodePlex.
Plant to attend the MSDN event on October 4, 2007 (a Thursday). Products to be discussed: ASP.NET, Office, Visual Studio, and Windows Vista. - times: 1:00 to 5:00 (welcome Time: 12:00 PM)
- Theater - Edwards Boise Stadium 21, 7701 Overland Road, Boise Idaho 83709
You can find out more, and register here. MSDN Events are free, live sessions designed to enhance your coding skills and make your life a little easier. By attending you'll get up-to-the-minute technology delivered by seasoned developers and have lots of time to network and ask questions. Chat with your fellow developers get the latest coding tools and tips and learn how to create rich new applications.
Ah yes, late August, time to go back to school - even for us adult geeks. Fortunately, David Starr has provided us an exhaustive list of must-read books, organized by developer, tester, project manager, and executives. ... nothing specifically on VSTS however. I'll have to bug him about that.
The next Ask An Expert Live Chat is scheduled for Thursday, August 23, 2007. Join Microsoft MVPs, ASP Insiders, Regional Directors, and other industry experts - all on hand to answer your tough .NET- and Visual Studio-related questions. This chat is not being hosted by Microsoft and as such questions regarding upcoming products and future product specs may not be answered. Details: Thursday, August 23, 2007, 5:00 - 6:00 P.M. Pacific Time / 8:00 - 9:00 P.M. Eastern Time / 00:00 - 01:00 GMT Click here for an ICS file to update your calendar, and click here for more information on Microsoft technical chats.
Next week, August 2nd, hundreds of middle and senior-level IT Managers from SMB, corporate, academic and government organizations as well as line of business managers will be attending the 1-day forum known as Interface. Although it's not a software/developer event, the schedule looks pretty interesting, and so does the impressive hall of vendors. The Interface forum runs from 9:30 AM to 4:00 PM at the Boise Center on the Grove.
Computers for Kids is currently accepting computers (both working and non-working units) for refurbishment and distribution to K-14 in Idaho. Donations are tax deductible. Computers for Kids is a Microsoft Authorized Refurbisher (MAR) , which means Microsoft provides a good deal on Windows 2000 and sometimes Windows XP operating systems. The Community MAR program was created to increase the number of usable PCs available to non-profits, schools, and low-income families across the globe by reducing the cost of software to refurbishers. The MAR program also benefits the environment by giving new life to a significant number of computers that may otherwise be destined for landfills. Contact Computers for Kids at 8540 W. Elisa Street, Boise, Idaho or by calling them at (208) 345-0346.
Ok, I finally got fed up with all of the spam in my historical dasBlog postings. It's really embarrassing to send a link to a a colleague, only to have them snicker at all of the spam comments and trackbacks.
For those of you who don't know what a trackback is, it's basically an acknowledgement that enables authors to keep track of who is linking to, or referring to their articles. When used properly, trackbacks form a communication link between the two blogs, so that new comments on one blog can basically ping the other, allowing readers to easily follow discussions on both. The problem is that spammers have abused this mechanism and bloggers end up with trackbacks and pingbacks to various gambling, herbal medication, and adult sites.
Earlier this year I joined the ranks, and disabled my trackback and pingback services in dasBlog. I then followed Scott Hanselman's advice on using Akismet spam blocking service.
The big effort was then how to cleanup the <Comment> and <Trackback> elements that were spam, so, like others before me, I built a tool to assist with this.
- Download ScrubDasBlog.zip or ScrubDasBlogSource.zip to your hard drive
- Edit the blacklist.txt to include your own blacklisted URLs *
- Backup your existing feedback files: \content\*.dayentry.xml
- Run the ScrubDasBlog utility, specifying the path to your \content folder and the path to your blacklist.txt file, for example:
scrubdasblog c:\inetpub\wwwroot\mydasblog\content c:\scrubdasblog\blacklist.txt
* If you have predominately more SPAM comments and trackbacks in your dasBlog history, then you can generate a starter blacklist by going into your \content sub-folder and typing the following:
type *.xml | find "AuthorHomepage" > blacklist.txt
After you generate the blacklist.txt file, you should remove any good sites and remove any duplicates, before running the ScrubDasBlog utility.
I would recommend downloading the Source code version and reading through my code. Please comment on any improvements you might make.
While enjoying the fireworks yesterday in Oceanside, California with my friend Scott Cate, he let me know about a CodePlex project called Terminals. Terminals is simply a wrapper, around the Terminal Services ActiveX Client (mstscax.dll) and provides multi-tab interface - which can be very handy when remoted-in to multiple servers at once. Also, it supports screen resolution up to 4096x2048, clipboard, drag & drop into the session, and some other nice features.
Yet another Architect MVP has bitten the dust, to join the cooler crowd over here under the Team System MVP banner. Martin Danner is an experienced developer, project manager, and consultant in the software and information technology field, Danner has an extensive history in the software engineering field. He worked as a senior software engineer at Micron Technology, where he developed applications for the Web and PC, and he managed a group responsible for configuration management and software quality for all corporate software systems. Danner has also worked as a software engineer, developer, and consultant for Northrop Corporation and Price Waterhouse. Danner earned a bachelor's degree in engineering from California Polytechnic State University at San Luis Obispo. He is a Microsoft Solution Architect MVP, a Microsoft Certified Solution Developer for the .NET Framework (MCSD.NET), as well as a PMI Project Management Professional (PMP). It wasn't too long ago that Jeff Levinson defected from the Architect MVP camp. What is going on over there?
Talk about "community-driven", Lorin Thwaits and the other coordinators of the Desert Code Camp are wanting your input on when 'camp should be held this next year. You can choose between dates in September and October.
This week Microsoft released the Visual Studio Team Foundation Server – Project Server 2007 connector as a CodePlex project. The project has been up for a few weeks, but is now being broadly advertised. The TFS-PS2007 connector is designed to integrate the project management capabilities of TFS with Project Server 2007. It's been developed by the Visual Studio Team System Rangers in response to significant customer demand for a connector solution. Future versions of Team System will have native integration with Project Server, in the meantime this Connector solution is the best way to integrate the two Microsoft products. This solution builds on the previous PS2003 VSTS Connector, published on GotDotNet.
Please plan on attending the 14 June meeting of the Greater Idaho SharePoint User Group.
This month’s topic is Workflow in SharePoint. We will be having a presentation by Ben Hickman of Microsoft on the built in WorkFlow functionality and then some presentations by K2 around using K2 Workflow in SharePoint and more specifically about Administrative enhancements in the latest K2 release as it applies to MOSS 2007. They will also be highlighting the administrative aspects of their new product BlackPearl. There will be more in depth developer discussions after the main block for those interested in diving deeper into workflow development concepts, as interest merits.
Visit the Meetings page for the agenda and other logistic details.
If you go, be sure to say hi to Scott Shepherd and thank him for coordinating the user group!
|