AJAX, Silverlight, WPF & More

Sierra Wireless Voq Professional Phone Demo

Thursday, November 27, 2003 6:07:00 AM (Eastern Standard Time, UTC-05:00)

Sierra Wireless, makers of fine products such as the Wireless Data 1x Aircards  now has information online about their new "VOQ Professional Phone" running Windows Mobile™ 2003 for Smartphone software as it's OS.

It has a flip-open QWERTY "thumb-pad". Their site www.voq.com features a cool 3d view of the product and feature information. According to the site the phone will be available in the first half of 2004.

The design appears more phone-like that some of of Pocket-PC with phone cabilities but provides more input options that products like the Motorola MPx200 Smart Phone.

2004 is going to be a very exciting year for mobile devices like TabletPCs and Smart Phones taking advantage of increasing levels of network access. With development tools already existing in Visual Studio .NET the development possibilities are endless! Now what will be "The Killer App?"

Posted in  | Comments [0] 


What could Microsoft do to make the experience a better one?

Wednesday, November 19, 2003 7:28:59 PM (Eastern Standard Time, UTC-05:00)

Robert Scoble recently asked the question “why don't you attend a user group on a regular basis? If you do, what could Microsoft do to make the experience a better one?” and I thought should share my thoughts.

User groups are a great thing and I encourage everybody to get out and support your local group. If there isn’t one, start one. They are a great source of information, social contacts, and inspiration to grow your skills and try new things. I’m new to the area (geographically) and have really enjoyed my experiences so far with the TRIangle Dot Net Users Group in North Carolina. (Raleigh, Durham, Chapel Hill). It is a very active, continually improving group that has helped me increase my skills, meet new people, and have fun at a great social event.

As for Robert’s question, here’s what I think.

Support INETA - Microsoft should continue to provide INETA with whatever support they can, including resources (Money, speakers, content) and promotion. They doing a great job helping users groups already and with more support, can do even more.

Participate – It’s great to hear about Microsoft staff attending user group meetings, not just as speakers, but as active participating members of the community. I highly encourage this and invite any members of Microsoft that happen to be in our area to stop by.

Information – Keep us in the loop. Tell us the development stories and progress. Involve us in the process. Tell MS research that we’re a great sample of the market to involve in their cool projects! The hands on labs at PDC were great and I think that MS could easily build on the concept by creating hands on demo’s for user groups. We know MS can’t send Don Box to every user group (Or could you?), but why not send a Don Box demo with slides and a workbook similar to the hands on labs to teach the teachers and provide good content for the user groups. Don could even send a music video intro.

Free Stuff – Ok, not just free, but special offers to user groups would be good and would both promote MS technology as well as add value to group membership. Things like discounts on Conference Registration (PDC, Tech Ed), MSDN subscriptions, and MS-Press books. NFR software and other marketing SWAG for prizes would also be great.

Posted in  | Comments [0] 


TRINUG Special Interest Groups

Wednesday, November 19, 2003 6:42:58 PM (Eastern Standard Time, UTC-05:00)

On the 3rd Tuesday of the month two very interesting Special Interest Groups (SIGS) from the TRIangle .Net Users Group meet. Both sessions were excellent tonight and here are some of the highlights:

 

The Web Development SIG lead by Chris Love of Extreme Web Works took a code level look at exception handling. Chris walked us through some code examples and shared some best practices that he has developed based on real world experiences. Some things we covered were: 

  • What are “Exceptions”?
  • How can Exceptions be handled gracefully?
  • How can we create our own Exceptions?
  • How can we extend our Exception Handling to include error logging and notifications?

One of the things Chris shared was the following code that he uses to programmatically capture the contents of all control on a form to include in an error report.

Dim _control As Control
Dim ErrorDescription As New System.Text.StringBuilder
For Each _control In Page.Controls
    'Find the HTML Form Control
    If _control.GetType.FullName = "System.Web.UI.HtmlControls.HtmlForm" Then
        Dim _ctr As Control
        ErrorDescription.Append("Controls -------------" & vbCrLf)
       
For Each _ctr In _control.Controls
            'For each control on the form, pull the appropriate content for
            'it's defined type.
            Select Case _ctr.GetType.FullName
                Case "System.Web.UI.WebControls.TextBox"
                    Dim tb As TextBox = CType(_ctr, TextBox)
                    ErrorDescription.Append(tb.ID & " - " & tb.Text & vbCrLf)
                Case "System.Web.UI.WebControls.Literal"
                    Dim ltl As Literal = CType(_ctr, Literal)
                    ErrorDescription.Append(ltl.ID & " - " & ltl.Text & vbCrLf)
                Case "System.Web.UI.WebControls.Label"
                    Dim lbl As Label = CType(_ctr, Label)
                    ErrorDescription.Append(lbl.ID & " - " & lbl.Text & vbCrLf)
                Case "System.Web.UI.WebControls.RadioButtonList"
                    Dim rb As RadioButtonList = CType(_ctr, RadioButtonList)
                    ErrorDescription.Append(rb.ID & " - " & rb.SelectedItem.Value & vbCrLf)
            End Select 
        Next
    End If
Next
 

This was one of those great informative sessions that made us all think of things we could do better in our code.

The second group is the newly created Architecture And Patterns SIG lead by John Brady of Organelle.  This group is very interesting because it is still in the process of defining it’s scope. The simple question of “What is architecture?” has turned into a very interesting topic. We quickly discovered that this term can mean a lot of different things to a lot of different people.

 

Part of the conversation led us to try and compare Software Architecture with more traditional Building Architecture. While some interesting parallels were drawn, it was very clear how unique software development can be from other “building’ projects. Another key issue was how far should architecture go before it becomes something else? And what is that something else officially, design? Implementation? Plumbing?

 

It was good to look back at some of the different models including the initial move to Object Oriented Development, Client/Server and Web based, to the current visions of a Service Oriented Architecture. In the end we decided to do a little research for next month about how Industry, Open Source, and Academics define SOA. Hopefully some comparisons will allow us to see their views on architecture and compare the differences.

 

I really enjoyed this session and look forward to seeing where things take us as we proceed through architecture and make our way through patterns. This is a fun, code neutral group and encourage anybody interested in this area to make it out and join in. More information about the TRINUG SIGS can be found on the group website. 

Posted in  | Comments [1] 


Things NOT to do with Longhorn

Tuesday, November 18, 2003 2:33:07 AM (Eastern Standard Time, UTC-05:00)

If anbody decides to play with System.Net.NetworkInformation and write a sample program that monitors changes in IP addresses, DO NOT start manually changing the IP address to see if the program picks up the events. (Which it does did quite niceley)

What happened to me was that each time I changed the address the system created another new interface for the new IP address. At first I though this was just something minor since a reboot removed all of the duplicate entires, but then it happened. First I the defautl gateway stopped working, then the system would crash and reboot when changes were made, and then it simply would not boot anymore.

MS verified that "There are problems with the new IP stack" in my newsgroup bug post.

I'm now re-installing from scratch so I can continue to play with all the great new additions to System.Net...

 

Posted in  | Comments [0] 


NetworkInterface.Type vs. NetworkInterface.InterfaceType

Monday, November 17, 2003 4:25:09 AM (Eastern Standard Time, UTC-05:00)

While working on a sample I plan to share in the near future I have been playing with the System.Net.NetworkInformation classes. There are some nice additions here giving us easy access to a lot of network related information and ability to monitor and properly react to changes.

During this I noticed that the NetworkInterface.Type property specifies the InterfaceType as an InterfaceType enum. Would it not make sense to expose this property as NetworkInterface.InterfaceType in the same way that NetworkInterface.OperationalStatus is setup with the OperationalStatus enum? Using "Type" alone seems a little too generic and a little confusing in my humble opinion.

Thoughts?

Posted in  | Comments [0] 


Triangle .Net Users Group (TRINUG)

Thursday, November 13, 2003 9:19:12 PM (Eastern Standard Time, UTC-05:00)

Last night was the November General Meeting of the Triangle .Net Users Group (TRINUG). I strongly encourage anybody living in the Raleigh, Durham, Chapel Hill area of North Carolina that has an interest in .Net software development to come check things out.

Last night we enjoyed a presentation by Paul Ballard of The Rochester Consulting Partnership on Data Access Application Blocks. His talk took a look at the Microsoft Data Access Application Block as well as the one updated and modified by the GotDotNet community. Along with looking at the code, Paul took some time to go through some of the reasons why to actually use a DAAB within your Data Access Layer and the importance of a separate DAL within your.

As well, Chris Love and I somehow ended up in front of the group discussing his trip to Tech Ed and my trip to PDC. For those interested, here are some on the links that I mentioned regarding sources of news and info from PDC

PDCBloggers.Net
LonghornBlogs.Com
Longhorn.MSDN.Microsoft.com

www.msdn.microsoft.com/longhorn/

Following the meeting there were many great conversations about things people like about the group and changes that they would like to see. It’s great to see so much excitement right now noth within the group as well as the overall Microsoft Developer community.

Posted in  | Comments [0] 


Upgrade to Microsoft Pocket PC 2003

Friday, November 07, 2003 10:17:20 PM (Eastern Standard Time, UTC-05:00)

Upgrades are now available for Viewsonic V35 and V37 Pocket PC devices here. Orders can be placed online or printed and sent in. There appears to be a free upgrade available for a limited time for devices recently purchased.

On the note of Viewsonic and the PPC devices, I need to use the opportunity to say how happy I am with the 802.11 SDIO wireless network card that I recnetly purchased. The card is amazingly small, easy to install, and works remarkably well. It performs way better that a similar compact flash card that I have for another device. If you're looking to network a V37 or similar device, this card is highly recommended.

Posted in  |   | Comments [0] 


PNL08: Computing on the Beach: Visions of Mobility (A general overview)

Thursday, November 06, 2003 9:46:48 PM (Eastern Standard Time, UTC-05:00)

PNL08: Computing on the Beach: Visions of Mobility (A general overview)

This last panel, on the last day of PDC was definitely one of the most interesting sessions that attended. It was interesting not so much because of any specific content, (Although there was definitely some great content!) but rather because the panel did not agree. Unlike the other panels (that I attended) that included experts with slightly different interests and views that were pretty much already heading in the same direction, these folks were all headed in different directions.

 I think that this lack of agreement was very representative of the current mobile device market. There was a lot of discussion about what the ideal combination of functionality, form factor, and price should be to expand the market. Each panel member seemed to have an interesting view on which were the major devices and which were simply “Tweeners”, or devices that were between device A and device B. While nobody came right and said it, the event appeared give a really good unscripted look into some of the competing arguments that take place between the different product development groups trying to win support for their ideas and concepts.

If you didn’t know better you would never have thought everybody on stage was from a totally different company. While I can certainly see this looked upon poorly by the marketing folks, I think it was excellent for the developers forum. There was a lot of two-way conversation between the audience and the panel with some questions submitted through PDC Bloggers thrown it. There were many great comments and if definitely shows that this is a rapidly evolving market that is definitely being influenced by not only those that develop the OS and hardware, but those that write and make use of applications as well.

Otto Berkes, Senior Platform Strategist, Microsoft Research talked a lot about small form factor devices with full computing power. His “goody bag” included a small industrial prototype design of a small screen device with that featured a split design allowing for a thumb keyboard to slide forward. He also had a Sony Vaio U101 sub-notebook.

Arif Maskatia, Chief Technology Officer with Acer America Corporation shared the manufacturer’s viewpoint about the Tablet PC market. It sounds like there are some very good things in the works as companies understand that a Tablet PC is not simply a notebook with a special screen. The next generations of devices will really be the first designed to be Tablets and not simply modifications to laptop designs. Discussions also included display and battery life issues and solutions in the works. I’m looking forward to seeing some of the things (including biometrics) he hinted at possibly coming to market in 1Q 2004.

Donald Thompson, Software Architect, Smart Personal Object Technology, Microsoft, gave some very interesting viewpoints about trying to engineer the extremely low power, low cost, small footprint (Fingerprint?) size devices that are being used in Microsoft’s Smart Personal Objects Technology. These devices initially are initially starting as watches that can receive content specific data broadcast over the airwaves.

David Groom,  Lead Program Manager (Hardware), Mobile Devices Product Group Microsoft shared how Microsoft is working with the OEM hardware manufacturers to bring the best possible products to market to take advantage of the Microsoft platforms. Microsoft has a small number of hardware people that design next generation prototypes to show where they feel the market is heading.

Some of the mot interesting points brought up from the audience were:

Why can’t we have tablets with smaller screens (say 4x6) to reduce the power consumption, reduce the cost, and reduce the processing?

Will we be able to buy devices and displays separately?

Durability was another major issue that received a lot of discussion.

For being the last session slot of the conference it was a surprisingly active and energetic session that I wish could have gone on even longer. A big thanks to all of those involved.

The full BIOS of all the speakers are available here.

Posted in  | Comments [0] 


The Longhorn SDK

Sunday, November 02, 2003 9:20:05 PM (Eastern Standard Time, UTC-05:00)

For those that now are able to install and use an early version of Longhorn and for others that just want to learn more about what all the talk is about, start by taking a close look at the Longhorn SDK. The information both including on the Longhorn DVD as well as available on the web at http://longhorn.msdn.microsoft.com. The information is divided into 5 main categories:

    • Technologies – Provides an overview of the main technology areas of Longhorn
    • Reference – A reference for the Class Libraries, Schema, Compiler and Languages
    • How do I …? – Provides a list of “How do I ..?” topics grouped by technology area
    • Samples – A number of Sample applications and code demonstrations
    • Communities – Longhorn development community information

The format makes it easy to gain an overall understanding of a topic as well as to drill down into a specific piece of information and to see what it can be implemented. A very innovative addition is that through the entire SDK users are able to provide their comments or “Annotations” to assist in refining and improving that documentation. Users are encourage to comment on bugs, errors, and requests for additional information or details. The Longhorn SDK Documentation is a great resource that everybody should make some time to go through.

While still a work in progress, the SDK is an excellent example of how much work has already been done and the importance that Microsoft appears to be placing on working with the development community to shape and improve the continued development of Longhorn.

For the latest information on Longhorn check out:

LonghornBlogs.com
PDCBloggers.net

Msdn.microsoft.com/longhorn

Posted in  | Comments [1]