Thursday, February 04, 2010

Prairie DevCon

The summer after I graduated high school, two friends and I set out on a two week, cross country trip. We left Salt Lake City and headed north into Canada, then took the Trans-Canada highway east. We came back into the US at Niagra Falls, made a stop in Boston, then across the US and back home.

One place I remember visiting is Regina, Saskatchawan. It sits out on the plains, north of Montana/North Dakota state line. I remember how beautiful it was there. I also remember visiting a museum.

Several years ago, I met Fox guru Doug Hennig at a FoxPro conference and learned he was from Regina. He was surprised to hear that not only did I know where Regina is, but that I had been there.

Now I get a chance to visit again. I will be speaking at the Prairie DevCon, June 2 & 3 in Regina. My topics are "Continuous Integration in .NET" and "Continuous Integration in .NET...the Next Steps". I've seen the list of speakers and topics. It looks like a great conference. Oh, and my friend Doug will be speaking too.

Wednesday, February 03, 2010

Rocky Mountain Tech Trifecta

Every February, Denver hosts a great mini conference, the Rocky Mountain Tech Trifecta. It's like a Code Camp with sessions on Windows, SQL, and .NET. This year it's on Saturday, Feb. 27. I've been confirmed as a speaker again this year. My topic is "Domain Driven Design in .NET'. I'm looking forward to being in Denver again this year. If you're anywhere in the Colorado area, I hope you can make it too.

Thursday, January 21, 2010

Free excerpts from CI in .NET

Our book, Continuous Integration in .NET is generating lots of interest around the Interwebs. If you're wondering about this book, you can get some free excerpts. The latest is a look at using TeamCity for your CI server. Check them all out, then go buy the book.

Chapter 1: Grokking Continuous Integration
Green Paper: Continuous Integration in .NET
dotNetSlackers.com: Continuous Integration with TeamCity

Labels: , ,


Wednesday, January 20, 2010

CI in .NET Chapters 3 and 4

Wow! Has it really been three months since my last post? Well, I have a good reason for it. I've been hard at work, along with Marcin, on our book, Continuous Integration in .NET. We've had some speed bumps along the way, but I think we're now working well together.

For those of you who don't know, Marcin is from Poland and I am from the US. We got to meet in person in November when I was in Germany for the German FoxPro DevCon.

So, what have we been busy doing? Writing and editing of course. The first eight chapters have been written, but not edited to the point we can MEAP them. However, earlier tonight Manning posted the first MEAP for Chapters 3 and 4. That means you now have access to 1/3 of the book!

Wondering what's new? Chapter 3 introduces MSBuild as an automation build platform for .NET Continuous Integration. The chapter begins with the basics, then takes you through the usage of community contributed functionality. By the end, you'll be developing your own custom build tasks.

Chapter 4 guides you through the process of choosing the right CI server for your needs. It covers CruiseControl.NET, TeamCity, and TFS 2010. After you finish reading Chapter 4, you should be able to navigate your way through the options of the CI world.

Keep an eye out for Chapter 5, which will look at diverse feedback mechanisms provided by CI servers.

Monday, October 19, 2009

Continuous Integration in .NET

The Agile movement has changed the way we develop software, even if you are solidly in the Waterfall methodology camp. Increased emphasis on customer involvement, working software, and more involved team work are great benefits to any development process. One addition that you can and should adopt in any size team is Continuous Integration, commonly called CI. With CI builds and unit tests are handled automatically when you check in code. This helps you create better quality software in less time.

For the past few months I?ve been hard at work co-authoring a new book, "Continuous Integration in .NET". There are many tools available to do this. The best know is probably Microsoft?s Visual Studio Team Suite with Team Foundation Server. It has lots of bells and whistles and is pretty easy to setup, but it?s also expensive.

My co-author, Marcin Kawalerowicz, and I are taking a different route. We?ll show you how to use free or low cost tools to get CI working in your environment. We?re focusing on two of the better known solutions, Cruise Control .NET and TeamCity. We walk you through the entire process, beginning to end and include areas that most teams don?t get into such at tessting with FitNesse, documenting with SandCastle, running code analysis, and many other things.

We?re a long way from seeing the book in print. We?re currently targeting July, 2010. But you can get started with the book now. Our publisher, Manning, has a great way to see the book progress and provide input to shape the book and make it a tremendous resource. It?s calling the Manning Early Access Program, or MEAP.

With MEAP, you get to read Chapter 1 for free. You can then purchase either the ebook or both the ebook and the printed book. Either way, you get access to every chapter as it?s available. Currently the first two chapters are online. None of the chapters we?ve written have been polished. Copy editing doesn?t happen until we?re done writing every chapter. Go here to get your MEAP.

By giving you early access to the book, you get access to the Author Forum. It?s on this forum that you can post comments, good and bad, about the book and make suggestions on additional content. You can access the forum here.

I hope you will check out our book and library. We?re working hard to make it a great resource for your library.


Thursday, October 01, 2009

Reawarded Microsoft MVP

The Microsoft MVP program is a great award given to people doing great things to support the community. You may speak at conferences, write books or magazine articles, provide support in forums, or many other areas. These are the things that can qualify you to be an MVP. I'm humbled to again be counted among the 4700 people worldwide that are current MVPs. It is a great honor to get this award again. After all, this award allows me to help you create better applications for your customers.


Tuesday, September 29, 2009

Tech Speaking.. The first steps

In my last post, I discussed ways to improve your PowerPoint when giving conference presentations. But before you even get to that point, you need to plan what you are going to present.

Step one is to know your audience. Are they experienced with the technology you're speaking on? Do they understand competing or parallel technologies? What do you think they are looking for in this presentation?

Next you need to define the technical level for your presentation. Is it a high-level, 30,000 foot view or will it be deep dive? If going deep dive, you need to define some prerequisites that attendees should know so you don't have to spend time covering the basics. This sets the attendees expectations on what they'll learn.

Now it's time to work up an outline. This is your guide to what you'll actually present and can be used for the Outline slide at the beginning of your session. The presentation should cover three main points:

WHAT am I going to show you?

WHY should it matter to you?

HOW can you do it?

If you've answered these three questions, the audience should go away satisfied.

One last thing?Pick out one key point and make it the "If you don't learn anything else in this session, learn this one thing" item. This should be the most important concept in your session. It's not often easy to find one key thing, but it's important that you do.

My next post in this series will cover session artifacts.


Friday, September 25, 2009

Speaking with PowerPoint

This post is the first in a series of how to be a better tech conference speaker.

I have presented at lots of geek events since my first conference presentation in 2000 and picked up several tips along the way. I have also done a presentation on speaking at a couple of Code Camps. At the last couple of events I saw presentations where the speaker clearly didn't understand how to use PowerPoint. Granted, PowerPoint should not be the focus for most tech conference sessions as the attendees want to see the code, but some concepts are just better addressed through PowerPoint. My Domain Driven Design session is one such example. It takes nearly 75 minutes just to explain the concepts. That leaves no time for code. PowerPoint is also very good for explaining complex concepts because you can explain a little bit at a time, then put it all together at the end so the attendee grasps the concept better. If you are a keynote presenter, then you will probably use all PowerPoint and no or little code. But the same PowerPoint rules will apply.

You may want to get a good book on using PowerPoint. I recently picked up Slideology and Presentation Zen and found them very useful to tweak my presentations.


Monday, August 31, 2009

Interview on Continuous Integration

While at DevLink, I was interviewed by David Giard for the webcast "Technology and Friends". The topic was Continuous Integration. You can see the interview here.


Wednesday, August 19, 2009

Alistair Cockburn at Utah Code Camp

Register now for Utah Code Camp, Sept. 19. One of the biggest names in the industry is the Keynote speaker. Dr. Alistair Cockburn, one of the guys behind the Agile Manifesto and Use Cases. There are some other heavy hitters coming from the local community: Pat Wright, Aaron Skonnard, Aaron Zupancic as well as nationally known presenters Aaron Skonnard (yeah, I know, he was on the local list because he lives here), Joe Mayo, and Jason Beres. There are many others with some great content. Oh yeah, I?ll be there too presenting ?Domain Driven Design for the Average Application?. We?ll have lots of stuff to give away. Best of all, it?s free! Register today and I?ll see you at camp.

Labels:


DevLink Day 3

The final day of DevLink started pretty much the same way as Day 2?a trip to McDonald?s for breakfast and a car full of attendees.

Pure T-SQL Code

I wasn?t sure which session to attend first thing. Nothing really jumped out at me. I finally decided on ?Pure T-SQL Code? by Paul Nielsen for a couple of reasons. First, I had been following Paul on Twitter for a while. Second, I met him this past Spring at the MVP Summit. Third, my session followed his in the same room.

Paul is a very personable speaker. Right away he makes you feel like an old friend. I don?t write much TSQL in my job and some of the stuff he was doing was more complex than the simple scripts I write, but he was using real world examples that he?s written in his own applications. And you can get the same info. Pick up Paul?s book, SQL Server Bible. It?s all in there?and then some.

I also talked to Paul about coming to Salt Lake City next month for the Utah Code Camp. I hope he does. Great session.

Architecting Modern Distributed Applications

After Paul?s session, I did my ?Domain Driven Design for the Average Application? session, then it was lunch. The first session of the afternoon was ?Architecting Modern Distributed Applications? by Clint Edmondson.

There are a number of trends in distributed applications

Each one of these has different strengths and weaknesses. How we choose one over another depends on what we need to accomplish. Clint then showed a number of slides that showed a path from one technology to another to show how we choose the technologies to use.

Understanding User Experience Design Patterns

Jason Beres of Infragistics did the next session, ?Understanding User Experience Design Patterns?. Working for a company that creates user interface controls gives him a unique perspective into how users work and what Ux they expect.

We can look at everyday things to figure out how usable they are. Jason showed some examples of good and bad Ux of both software and real things.

He showed some Ux patterns that we used based on how the user will use the software. These are all listed on a great patterns site called Quince.

.NET Rocks, Live!

One of the great .NET podcasts is .NET Rocks. Carl Franklin and Richard Campbell do an incredible job of getting guests, asking them the right questions, and entertaining us at the same time. The closing session of the conference was a panel discussion on the topic of ?Is Software Development Getting Too Complex?. On the panel was Billy Hollis, Kathleen Dollard, Josh Holmes, and Jim Holmes. The discussion was recorded for a future episode of .NET Rocks. Watch for it to be available soon.

Epilogue

This was my first time at DevLink, but I hope it?s not my last. It was simply one of the best conferences I?ve attended. The content was second-to-none. The venue was superb. The food was tasty and healthy. The networking was great. The price was even better. Three days of geek goodness for $100. The preliminary dates for DevLink 2010 are August 5-7. After the conference, Paul Nielsen Tweeted, ?DevLink is the best tech conference in North America. Period.? That?s a great endorsement. I hope to see you at DevLink next year.


DevLink Day 2

Day Two started off with loading attendees in my rental car and stopping at McDonalds for breakfast on the way to the venue. Meeting up with old friends is one of my favorite things at a conference. In the car were Rod Paddock and John V. Peterson, who I have known for a very long time.

Beyond the Core Concepts of OOP

When the DevLink sessions were announced, there were two sessions that jumped to the top of my ?Must See List?, both presented by Claudio Lassala. One was ?Design Patterns?, which unfortunately was scheduled at the same time as my ?Domain Driven Design for the Average Application? session. The other was ?Beyond the Core Concepts of OOP?. Claudio is another old friend and I knew his session would be great. He did not disappoint.

Claudio started out with a review of the core concepts of OOP. These are the things we all have heard about many times and should know.

When creating classes, we need to remember the ?ilities?

But wait, there?s more! To really use OOP properly we need to use the SOLID principles

This was a session that lots of meat and lots to think about afterwards, but the topic is so important to use as developers.

JQuery 101

The second session of the day was ?JQuery 101? by Rod Paddock. I?d heard alot about JQuery, but because I don?t do web development I?d never looked into it. If you do web development and aren?t using JQuery, you should be.

JQuery makes Javascript easy to use. It goes hand-in-hand with CSS. JQuery is a way to easily implement Javascript using CSS. Because it?s really powerful, it?s difficult to explain and show in a session summary. My best advice is to run, do not walk to your local bookstore and pick up book about JQuery.

Being More Than a Code Monkey

After Rod?s session, I did my session on ?Continuous Integration in .NET?, then it was time for lunch. Then I did some networking before the next session, ?Being More Than a Code Monkey? by Michael Wood. Because of the networking, I got to the session late. Too bad because Michael had some great points.

I?ve long expounded the importance of code standards and keep source code easy to read. After all, you?ll write it once but read it many times. I?ve used the book Code Complete by Steve McConnell as a guide. I recently picked up Clean Code by Robert Martin and have slowly been working through it. And, it seems it was used as the basis for Michael?s session.

Concepts such as what kinds of comments and how many are important. It turns out that most comments in code aren?t needed. If you write self-documenting code, even fewer are needed.

There are many more, but like I said, I got to the session late. Pick up Robert Martin?s book. I highly recommend it.

Nashville Sounds

After Michael Wood?s session I did a bit more networking, then left a bit early to drop off stuff at the hotel before going to the conference party at the Nashville Sounds baseball game. It?s a AAA team affiliated with the Milwaukee Brewers. I actually saw Nashville play in Salt Lake City a few days before DevLink started. This time they were at home facing Fresno.

A party patio at the stadium had been reserved for us and a great spread of hotdogs, hamburgers, and pulled pork was provided. The game was lots of fun. A great way to wind down from fantastic sessions.

After the game, I headed back to the hotel to do a run through of my Saturday session, then off to bed.


Tuesday, August 18, 2009

DevLink Day 1

Thursday was the first official day of DevLink. Each session was three hours today, instead of the usual 75 minutes.

Configuration Management with Team Foundation Server

I attended "Configuration Management with Team Foundation Server" presented by VSTS MVP Steve Andrews. He started with a discussion of an MS Build file. MS Build is Microsoft's build engine. It ships as part of the .NET Framework. MS Build files have an extension of .proj. Both .csproj and .vbproj are already MS Build files, you just may not know that. MS Build files are XML, so they're easy to edit. In the Solution Explorer, right-click on the file and select Unload Project. Right-click again and select Edit. The project file will open in Visual Studio's XML editor.

But, Visual Studio doesn't know about .proj files, so you need to add in that support.

  1. Select Tools –> Options from the Visual Studio menu.
  2. Expand Text Editor and select File Extension.

  3. Enter proj as the file extension then map it to the XML Editor.

MS Build files have four main tags:

If you add MS Build to the External Tools dialog, then you can call it from Visual Studio.

He talked about T4, a templating engine from Microsoft. I'll admit, T4 was entirely new to me. I've added it to my "need to look at" list, but admittedly, it will be awhile before I get to it.

Steve talked a bit about "Data Dude", which is Visual Studio for SQL guys. Since its release, it's been pulled into other VS editions. If you have VS Professional, you can get "Data Dude" for free. Why do you want it? Because it makes writing stored procs and designing and maintaining your database easier.

Steve also talked about Team Build, the team version of MSBuild. If you're working on a using TFS, you want to use Team Build.

This was a really good session that gave a great overview of working with MSBuild and Team Build.

Thursday Afternoon

I had planned to attend WPF 101 by Michael Eaton, but the room was packed. There wasn't even very much standing room. By the time I found out the session had been moved to a bigger room, it was really too late to go. So, I spent the afternoon networking…an often overlooked benefit of going to a conference. If you attend a conference and don't network, I think you've wasted your money.

Keynote

Thursday evening was the DevLink Keynote, given by Josh Holmes. The topic was "The Lost Art of Simplicity". Josh started by providing a definition of and discussion of what simplicity is. There are a several reasons why we've lost simplicity:

If we can simplify how we do things and make things simpler for our customers, it's a win all around.

Labels:


Monday, August 17, 2009

DevLink Day 0

Never heard of DevLink? Too bad. It's a small developer conference held in Nashville and it's fantastic! I had heard about it in the past, but never been there until this year. It's three days of jam packed geek goodness. I met lots of great people, connected with old friends, and learned lots, lots, lots. I also hope my sessions were interesting and informative. I'm always looking for input, good and bad. If you were in my sessions and have feedback, email me craig at craigberntson dot com.

Day 0 started off early. I took a red eye from Salt Lake City to Atlanta then a short jump to Nashville. I arrived Wednesday morning so I could attend the Community Summit that Microsoft was holding. I was at Pat's Bar-B-Que in downtown Nashville. This place is reported to be the best in the country and I have to say it was pretty dang good.

We started off playing a game. Sheets that contained the letters of the alphabet were handed out. The trick was that each letter was from the logo of some company. We had to figure out the company it came from without using the Internet. I still haven't figured them all out. The idea was to get us to meet other people and start talking to them.

After enjoying lunch, the discussions got started. First, it was important to define community. Three important items came up:

Jon Keller, who runs DevLink, then talked about how to build events:

We heard a brief overview of GiveCamp. There have been GiveCamps going on around the country. Basically, it's a weekend of coding and sharing, where the goal is to create an app, website, etc for a non-profit?and do it free of charge. Sounds like a great time and a better cause.

We then suggested topics for small open spaces groups and broke up into those groups. I chose a discussion on alternative user group formats. Unfortunately, the red eye caught up to me and I left early to get some sleep. But, here's what I gleaned from the discussion:

Microsoft said they will be aggregating all the discussions and posting them online. Once I get a link to them, I'll pass it along. A big thanks to Microsoft for putting this together.


Thursday, August 13, 2009

Speaking gigs scheduled

I'm currently at DevLink in Nashville where I am speaking tomorrow on Continuous Integration in .NET and Saturday on Domain Driven Design for the Average Application. I have three other speaking gigs scheduled before the end of the year:

Utah Code Camp, South Jordan, UT, Sept 19, Domain Driven Design for the Average Application
German DevCon, Frankfurt, Germany, Nov 12-14, Data Access Smackdown, Getting Started with Azure Services, Domain Driven Design for the Average Application
SoCal Code Camp, Los Angeles, CA, Nov 21-22, Domain Driven Design for the Average Application, Continuous Integration in .NET

Friday, April 24, 2009

What is the MVP Program?

Have you ever wondered what the Microsoft MVP program is about or how MVPs are selected? Toby Richards, who runs the MVP program at Microsoft, talks about. http://cli.gs/9MU5Hr


Three Strikes and I'm Out

Speaking a conferences is a very time consuming prospect. You need to put great effort into the material to ensure it matches the expectations of the audience. Code needs to be tested. And then there are the practice sessions, preferable in front of a live audience.

But conference preparation starts long before any of that. You need to first come up with several topics because conference organizers generally ask potential speakers for more than one topic. A catchy title helps. Several years ago, I had one called "OOP, I Did it Again", that was an introduction to Object Oriented Programming. You then have to come up with a description, bullet points that hit the highlights of the presentation, figure out if it's a 100, 200, 300, or 400 level talk, and what pre-requisites are needed. Then, you need to put your proposal into the format needed by the conference organizers. So, by the time you've done this for three or four topics, you have easily spent several hours.

For the past three years, I've done this for Southwest Fox, but have not been accepted as a speaker there. So, I've decided to no longer submit proposals for the conference. I have no doubt there will be great presentations and it will be a fantastic conference, but it's no longer an effective use of my time.

I probably won't be there as an attendee either. My company has no training budget this year and it really is cost prohibitive for me to foot the bill myself.

I wish the Rick, Doug, and Tamar all the best for this year?s Southwest Fox and for many years to come.


Tuesday, April 21, 2009

Functions and Procedures in VFP 101

When working in Visual FoxPro, functions are procedures are almost the same thing. Look at the following code:

FUNCTION DoSomething
LPARAMETERS Param1, Param2
? "Param 1= " + Param1
? "Param 2= " + Param2

PROCEDURE DoSomethingElse
LPARAMETERS Param1, Param2
? "Param 1= " + Param1
? "Param 2= " + Param2

The function and procedure are actually identical. The difference to determine whether you have a function or procedure is not how they are defined, but how they are called. You can even call them the same way.

DO DoSomething WITH "Hello", "Procedure"

DoSomething("Hello", "Procedure")

You'll notice that DoSomething was defined as a procedure, but we can call it as either a procedure or a function. We can do the same thing with DoSomethingElse.

The difference is how the parameters are passed. When called as a procedure, the parameters are passed by reference. When called as a function, the parameters are passed by value. You can change how they?re passed in a function with SET UDFPARMS TO REFERENCE but you can?t change how parameters are passed when calling the routine as a procedure.

So, which should you use? I think you should always call the routine as a function because the routine cannot accidently change the value of the parameter. This is the kind of nasty side effect that can be difficult to track down.

Labels:


Tuesday, April 07, 2009

Two Microsoft Events Coming to Salt Lake City

Microsoft has scheduled two events in Salt Lake City in May.

The first is XAMLFest, coming up on May 1
Are you excited about the WPF but concerned about the learning curve? Have you seen Silverlight but don’t know where to get started? Or are you curious about how tools like Visual Studio and Expression Blend help designers and developers work together to deliver great user experiences? If so, join us at XamlFest! XamlFest is an interactive event where you’ll learn about the platforms, tools, and processes used to deliver differentiated user experiences. It’s a chance for you to mingle with UX-minded Microsoft folks. To register, please send an e-mail with the names and e-mail addresses of your attendees to xamlfest-slc@live.com. Come as you are - leave xamlized!

The second is MDSN Unleashed Presents: The Best of MIX is scheduled for May 6. It will be three different topics offered in two sessions. You only need to sign up for one session and get all three topics for the price of one!

What’s New in Silverlight 3?
Are you interested in building business-focused Rich Internet Applications (RIAs)? Would you like to take advantage of 3D in the browser, but assume it is too hard? Have you wanted to take a Silverlight application offline? Then this session is for you. We will explore and illustrate the new features of Silverlight 3, including the following:

Building Web Applications with Windows Azure
This session will begin with a brief overview of Azure and discuss some of the announcements made at MIX. We will then illustrate through demo how to build a Windows Azure application from the ground up. We will illustrate how to consume Azure Table Storage, how to host services, web pages and Silverlight components, as well as how to deploy your solution to the cloud.


MVC 1.0 vs ASP.Net Webforms
Have you heard about the new ASP.NET MVC framework from Microsoft and wondered what it was all about? Are you curious whether this replaces ASP.Net WebForms? Well in this session you will learn how to use the model-view-controller (MVC) pattern to take advantage of your favorite .NET Framework language for writing business logic in a way that is de-coupled from the views of the data. In addition, we will talk about the pros and cons of both MVC and Web Forms, how to determine the best choice for a specific project, various techniques and patterns used to build MVC applications vs. Web Forms applications, and the implications for using each approach.

The morning session is from 8:00 am to 12:00 pm. Register here.
The afternoon session runs from 1:00 pm to 5:00 pm. Register here.

All events are free and will be held at the Microsoft office in the International Center, 123 Wright Brothers Drive, Suite 100.

Labels: ,


Monday, March 30, 2009

Speaking at DevLink

I will be speaking at DevLink, August 13-15. I've heard great things about this conference and Nashville and am excited to be going. I have two presentations:

Domain Driven Design for the Average Application: Domain Driven Design is a way to design and develop enterprise applications so that they are easier to maintain, enhance, and extend. DDD is overkill for many of the applications we develop today, but still has principles that can be applied to most of the apps we write. In this session, you will learn to apply these concepts.

Continuous Integration in .NET Continuous Integration is a development practice where code changes are continuously checked in to source control and then automatically checked out, built, and tested. Whether you are a one person shop or have many developers, by using Continuous Integration you will improve the quality of your software and increase your productivity. This session will show you how to use Continuous Integration in your daily development by integrating several free tools.

The DDD session is all new. I have been presenting the CI session for about a year and a half, but it will be updated for DevLink. Registration opens April 1. The conference is a bargain at $75. See you there!

Wednesday, March 04, 2009

VFP DDEX Provider Sample Updated

Microsoft today posted an update to the VFP DDEX Provider sample. From Milind's post, "The original VFPDDEX sample did not include a license ID for Visual Studio. This required the user to register with Visual Studio Extensibity program, get a package load key (PLK) and update the provider with the new key.This download fixes this problem. The sample includes the PLK in the resource of the provider. The dowload also contains source code for registering the provider."
Download the update

Thursday, February 05, 2009

MSDN Event in Salt Lake City

I just learned of an MSDN event coming to Salt Lake City on Thursday, Feb. 12 from 1-5. It will be at the Century Theater at 3300 South and State. Three topics will be presented:

Register here.


Wednesday, January 21, 2009

Two speaking gigs scheduled

I have two upcoming speaking gigs scheduled. The first is Saturday, Feb. 21 in Denver at the Rocky Mountain Tech Trifecta. My topic is Continuous Integtration in .NET.

The second is Saturday, March 28 at the Boise Code Camp and Techfest. I have two topics scheduled, Windows Azure and Microsoft Entity Framework.

Monday, January 19, 2009

Nothing Express About SQL Server 2008 Express

Express - adjective
- clearly indicated; distinctly stated; definite; explicit; plain: He defied my express command.
- special; definite: We have an express purpose in being here.
- direct or fast, esp. making few or no intermediate stops: an express train; an express elevator.
- used for direct or high-speed travel: an express highway.
- duly or exactly formed or represented: an express image.

That's the definition of express from dictionary.com. But there is nothing express about SQL Server Express. I have been attempting to install it on a VPC image of Vista Ulitimate, SP1. Here's what I went through:

Express is supposed to lite weight and easy to setup and use. Nothing about this was easy to setup. Install process FAIL. In the end, the install was successful.

Labels:


Saturday, January 10, 2009

Installing Windows 7 and First Impressions

Yesterday I finished downloading Windows 7 Beta. It took over 14 hours. The best speed I could get was less than 50KB/sec. Apparently the Microsoft servers were hammered. After debating if I should install on a virtual machine or install it over the Vista install on my laptop, I went for the direct approach and installed over Vista. I finally chose the latter option. Here's what I did:
  1. Backup Vista hard drive.
  2. Launch Windows 7 install.
  3. Select to get updates. 862K was downloaded.
  4. Chose Custom install. This created a Windows.old folder on the drive that contained the old Vista Windows folder, Perflogs, Users, Program Files, etc. Other folders that I had created were untouched.
  5. Setup then copied files and began to expand them.
  6. Setup rebooted the PC.
  7. After startup, setup continued to expand the files.
  8. Another reboot.
  9. Setup continued, updating the registry and started services. New Windows files were installed.
  10. I was prompted for international settings, country, time zone, etc, for computer name, username, and password. The password hint was required. Why was this required? IMO, it shouldn't be.
  11. I then entered the product key. This step is far too late in the process. Windows should ask me for this before I select any of the previous options.
  12. I then had the option to set the time, which was already correct.
  13. Setup detected the wireless networks available and I selected mine. I was then asked if I wanted to create a Home Group. I chose not to do so.
  14. Setup completed soon after. Total time after I did backup was less than an hour.

Overall, the setup process was very clean and easy. Here are my first impressions:

Overall, Windows 7 seems to be faster and snappier than Vista and I'm happy with it so far. I'm still installing software, so that may change. If you've been debating/waiting to go to Vista, I say wait for Windows 7.

Labels:


Monday, January 05, 2009

Microsoft Event in Salt Lake City

Microsoft is offering an MSDN Unleashed event in Salt Lake City next week, Thursday, January 15. Rob Bagby will be presenting "The Best of the PDC". There will be two sessions. The same material will be presented at each one, so you only need to sign up for one session.

Morning: 8:00 - 12:30 Register at http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032399782&culture=en-US

Afternoon: 1:00 - 5:30 Register at http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032399784&culture=en-US

Both sessions will be at the Microsoft offices in the International Center.

Wednesday, October 29, 2008

Maintaining state in VFP COM+ components

Today I got the following email from a VFP developer:
We are looking to a way to distrubute the application server load (FoxPro MTDLL) by using a COM+ clustering configuration. Question: How FoxPro COM+ state will replicated through all cluster members? The COM+ are mainly to access MS SQL DB.

The answer is:

You can never count on state being replicated across servers. COM+ itself is designed to be stateless. You'll need to keep state information in a central location, for example SQL Server, or send all the state information every time you CREATEOBJECT() on a COM+ object.

Tuesday, October 28, 2008

Windows 7 Debuts

Today at Microsoft's Professional Developer's Conference (PDC) in Los Angeles, Windows 7 was shown for the first time. It appears the main emphasis is to fix some perceived issues with Vista and add more fit and finish. What Microsoft showed is in the product and will be included in the release. In other words, no pie in the sky features. The demo was run on a new laptop with 1Gig RAM, but Win7 only requires 512. Here are some things you'll see in Win7:

Microsoft promised a beta early next year. It will be feature complete but will not be ready for performance testing. The beta will be public and available on microsoft.com. It will be followed by on Release Candidate, then RTM. While Microsoft did not give a date for release, the press is reporting it will be available late 2009.

More Win7 details are expected at the WinHEC conference in about 10 days.

Here are some links to screen shots and more info on Win7 and Office 14.

http://blogs.zdnet.com/microsoft/?p=1675
http://www.techflash.com/microsoft/Microsoft_taking_Office_to_the_browser.html
http://content.zdnet.com/2346-12354_22-244222.html
http://blogs.zdnet.com/Bott/?p=575
http://www.flickr.com/photos/longzheng
http://www.neowin.net/news/live/08/10/28/introducing-the-windows-7-ui
http://www.winsupersite.com/win7/
http://blogs.zdnet.com/microsoft/?p=1676
http://news.cnet.com/8301-10805_3-10074795-75.html?tag=newsLeadStoriesArea.0
http://news.cnet.com/8301-13860_3-10076864-56.html?tag=newsLeadStoriesArea.0
http://news.cnet.com/8301-10805_3-10076883-75.html?tag=newsLeadStoriesArea.0
http://www.winsupersite.com/office/office14_web_preview.asp

Labels:


Friday, October 17, 2008

Winforms, ActiveX, WPF, and VFP

Do you need to create an ActiveX control for you VFP app? Are you adding functionality to your VFP app though .Net? Are you migrating your VFP app to .Net, but can't move the entire app at one time? The Forms Interop Toolkit was developed to assist you in all these scenarios. I've just published a new paper, Integrating .Net Winforms with Visual FoxPro that show how to use the Toolkit to do all this. As an added bonus, the paper also shows how to COM-enable a WPF control and use it on a VFP form.

Labels: , , , ,


Tuesday, October 14, 2008

Windows 7 to be called....

It's official. Windows 7 will be called Windows 7. I applaud this decision. In the past, Windows has used version numbers (3.1, 3.11), years (2000), and even other names (XP, Vista). But I have always preferred version numbers. It goes back to when I was a Clipper developer using the version "Summer '87". Because of updates, you had to check the time stamp on the compiler exe to make sure you had the 2:00 am version. It's so much easier to just check the version number. So hooray to Microsoft for going back to version numbers. I hope other Microsoft teams and other vendors follow.

Friday, October 03, 2008

Utah Most Digital State

"Utah topped the Center for Digital Government's (CDG) 2008 Digital States Survey after delivering the clearest evidence yet that electronic delivery of government services has matured.

To reduce energy costs and carbon emissions, Utah Gov. Jon Huntsman Jr. announced in June that most state offices would be closed on Fridays. With more than 800 state government services online -- many boasting high user adoption rates -- Utah could close physical offices statewide without inconveniencing citizens." http://www.govtech.com/gt/418945?topic=117673

Thursday, October 02, 2008

Finally! An MSDN Event in Utah

After a long absence, an MSDN event has been scheduled in Utah! "MSDN Events Unleashed: Demystifying WPF, Silverlight 2 and Visual Studio 2008 SP1" is scheduled for Thursday, October 23 from 1:00 - 5:00 at the Microsoft offices in the International Center.

The first 50 people to register will get a free copy of the book "Applications = Code + Markup" by Charles Petzold.

The event overview states:
Today’s applications need to do more than simply work. They need to draw
in the user, and provide a differentiated experience. This means moving beyond
battleship gray forms boxy UIs and simple HTML forms, and providing a positive
user experience. Windows Presentation Foundation (WPF) and Silverlight 2
provide powerful capabilities to develop compelling user interfaces, on the
client and in the browser, respectively.

At the heart of
these rich applications is data. There are a growing number of choices of
technologies available to access data, create database abstraction layers and
expose data as services. Visual Studio 2008 (and .NET Framework 3.5) SP1
include the production release of the ADO.NET Entity Framework, ADO.NET Data
Services, as well as some enhancements to the Web Programming model
(REST-Friendly) in WCF.

In this session, Rob Bagby will
examine the core concepts of WPF and Silverlight such as layout panels, data
binding, styles and control templates, and will use them to develop an
application UI from the ground up. Rob will further examine and demystify
the options available to you to expose data to your rich applications.
Register here.

Wednesday, October 01, 2008

Microsoft MVP Award

I am honored to again have been named a Microsoft Most Valuable Professional. The award is given for providing community support in both online and in-person venues. I look forward continue to helping you understand Microsoft technologies and develop outstanding applications for your customers.

This page is powered by Blogger. Isn't yours?

Subscribe to Posts [Atom]