Thursday, November 30, 2006

Communications - The Next Decade

Ofcom has today published a series of essays by academics, politicians and regulators that examine the effect of convergence on the global communications sector. This can be bought (soon) from The Stationary Office or downloaded today direct from Ofcom: Communications – The Next Decade.pdf.

There's a mix of articles here from a number of people of differing backgrounds. One of the central themes that most seem to share is the convergence of telecoms, internet and television. All will converge around internet technologies with all IP networks.

I particularly enjoyed Peter Cochrane's essay: The Future of Regulation – Not. His view, which I agree with, is that a reduction in regulation of spectrum is now possible as new digital technologies replace analogue and networks become all IP based. Other technologies, such as MIMO and beam-steering antennas also reduce electromagnetic pollution making the spectrum lock-out of other service providers unnecessary. The internet is a perfect example of where we should be heading. However, we are not quite there yet. It will take another decade, but it will be essential if we are to achieve the most effective use of our spectrum. Unfortunately, due to political reasons and not technological reasons, I doubt this will happen. Ofcom themselves recently gave a reason why: Economic Impact of the Use of Radio Spectrum in the UK.pdf. This study estimates the net impact made by radio spectrum using firms to be in the range of £37 billion in contribution to UK GDP and 240,000 in contribution to employment. This represents 3 per cent of total UK GDP and 0.8 per cent of total workforce jobs. Of course, such spectrum costs are an effective tax on the consumer (e.g. UK 3G Mobile Auction of 2000) but it is unlikely that any government would have the political will to give up such a "tax".

Tuesday, November 28, 2006

XNA on Channel 9



Frank Savage demonstrates XNA on Channel 9: Looking at XNA - Part Two. One of the coolest things is watching him setting a breakpoint within Visual Studio 2005 whilst debugging a game running on an Xbox 360. It is also cool to see the demo game that comes with XNA Studio runs at 1080p. All of this from managed DirectX running on the .NET Compact Framework (the Compact version runs on the Xbox 360) running on an Xbox 360 (and only using a single core of the three available).

Note that XNA Game Studio Express will require Visual Studio 2005 Service Pack 1 and Visual Studio 2005 SP1 Update for Windows Vista to be applied to Visual C# Express if Xbox 360 games are to be developed on Windows Vista. (See the XNA Team Blog and "Soma" Somasegar's Blog for more information.)

Monday, November 27, 2006

Goggle Data Copyright

Is it me, or has a copyright message appeared on all the tiles downloaded from Google Maps? I've mainly been using Windows Live Search Maps, so could be mistaken.

Here is an example from Google Maps (this is a building near our Keima offices that shows up the copyright markings clearly):



and the same area from Windows Live Search Maps:



Perhaps it's always been there, but it is very distracting. Perhaps this is connected to the recent shutdown of the open source Gaia (see Ogle Earth: From Gaia with love)

Friday, November 24, 2006

Open Command Window Here

Here's a neat trick I just stumbled across: On Windows Vista, you can Shift/Right-click on a folder to get the Open Command Window Here:


This will open a Command Prompt window with the working directory set to that folder:

Visual Studio 2005 and Tracepoints

Tracepoints in Visual Studio 2005 are such a great debugging tool. Here's a summary of some of the useful things I've picked up relating to tracepoints. (At the moment, I've only used tracepoints in C#. Some points I bring up below relate to the .NET Framework, so will not work with unmanaged C++.)


Inserting a tracepoint

Two methods I know of:

  • Right-click the source line and select Breakpoint / Insert Tracepoint
  • Right-click an existing breakpoint and select When Hit and check Print a message when the dialog is displayed.

Either way, you'll see the following dialog (click for a better view):

Once you press OK, you'll see a diamond marker in the code:


Messages

Information added to the Print a message textbox is shown in the Output window. You could do this with in-code trace messages of course, but the beauty of using tracepoints is the code does not need to be edited (requiring a re-compile and possibly introducing a bug) and the message can be changed at any time during a debugging session.

Text entered directly into the message textbox can be a simple text message ("I've entered MyMethod"), contains special keywords ("Function: $FUNCTION") or expressions ("MyVariable = { MyVariable }").

The special keywords are (most shown in the explanatory text on the dialog):

  • $ADDRESS – the current instruction
  • $CALLER – previous function name
  • $CALLSTACK – the call stack
  • $FUNCTION – the name of the current function
  • $PID – the process ID
  • $PNAME – the process name
  • $TID – the thread ID
  • $TNAME – the thread name

There are two additional keywords not shown in the dialog

  • $FILEPOS – the current file position
  • $TICK – the CPU tick count in hexadecimal

There is no control over the output, so $FUNCTION contains the full signature including the namespace, classname and the types of any parameters.

Text in braces ('{' and '}') is evaluated. This can contain any code, so you can have something like:

  • Time: { DateTime.Now.ToLongTimeString() }

Yes, you can reference various classes from the .NET Framework. Or you could call a function or method:

  • Function returns: { MyMethod() }

So, using something like:

Func: $FUNCTION, Time: { DateTime.Now.ToLongTimeString() }, zoom: { zoom }

Will show up in the Output window every time this code is encountered:

Func: Keima.SetZoomLevel(int), Time: "16:31:55", zoom: 1
Func: Keima.SetZoomLevel(int), Time: "16:31:59", zoom: 3
Func: Keima.SetZoomLevel(int), Time: "16:32:02", zoom: 5
Func: Keima.SetZoomLevel(int), Time: "16:32:17", zoom: 9
Func: Keima.SetZoomLevel(int), Time: "16:32:20", zoom: 11

I've found a few restrictions:

  • Everything is output to a single line in the Output window (although $CALLSTACK outputs to multiple lines – adding '\n' etc doesn't help).
  • The messages only go to the Output window. It would have been nice to output to a file.

Managing tracepoints

The best way to manage tracepoint is to use the normal Breakpoints window (chord: Ctrl-D, B).

You can right-click a tracepoint to disable it or convert a breakpoint into a tracepoint (by selecting When Hit).

Thursday, November 23, 2006

Low power FM transmitters soon to be Legal in UK

Ofcom today confirmed that low power FM transmitters that help "connect" audio devices such as MP3 players will become legal in the UK from 08 Dec 2006. Just in time for Christmas!

Wednesday, November 22, 2006

Microsoft XML Notepad 2007



Microsoft has released XML Notepad 2007.

Features include:

  • Tree View synchronized with Node Text View for quick editing of node names and values.
  • Incremental search (Ctrl+I) in both tree and text views, so as you type it navigates to matching nodes.
  • Cut/copy/paste with full namespace support.
  • Drag/drop support for easy manipulation of the tree, even across different instances of XML Notepad and from the file system.
  • Infinite undo/redo for all edit operations.
  • In place popup multi-line editing of large text node values.
  • Configurable fonts and colors via the options dialog.
  • Full find/replace dialog with support for regex and XPath.
  • Good performance on large XML documents, loading a 3mb document in about one second.
  • Instant XML schema validation while you edit with errors and warnings shown in the task list window.
  • Intellisense based on expected elements and attributes and enumerated simple type values.
  • Support for custom editors for date, dateTime and time datatypes and other types like color.
  • Handy nudge tool bar buttons for quick movement of nodes up and down the tree.
  • Inplace HTML viewer for processing <?xml-stylesheets instructions.
  • Built-in XML Diff tool.

Tuesday, November 21, 2006

Improved KML Handling for Google Maps

James Fee points out that the latest updates to Google Maps have improved KML handling. Amongst other things, Google Maps now supports image overlays. Here is a Google example:

http://kml.lover.googlepages.com/etna_ground_overlay.kml

As James mentions, this is good for commercial organisations without a license for Google Earth. They can still view the results of applications that export KML.

Power Increases for UK Wi-Fi Rejected

In July 2006 Ofcom initiated a consultation on higher power limits for license exempt devices. One idea was that rural devices could have higher power limits. I'm not sure what Ofcom were thinking here, but I thought this was clearly unworkable:

  1. The increased interference on Bluetooth would make rural areas no-go regions for hands-free users;
  2. Wi-Fi devices would have to be location aware in order to meet standards.
  3. Consumers in rural areas don't need higher power. Current power restrictions allow standard Wi-Fi devices to cover a standard house and even larger houses can be covered by WDS compatible APs.
  4. Wi-Fi hotspot providers can use mesh.

Thankfully common sense has prevailed and they have rejected increasing the power limits for 2.4 GHz.

R32 Adverts

I own a fifth generation Volkswagen R32 :



so was amused to see these adverts appear recently:





I was not so amused to see that what is supposed to be the most powerful production Golf has a potential rival, the R GTI:

Whereas the R32 has 250 bhp, the R GTI has 400 bhp! Mine does 0 - 62mph (0 - 100 km/h) in 5.8 seconds, this beast can do it in 3.8 seconds. The biggest problem with the R GTI will be grip. The R32 solves this over the GTI by having larger, wider wheels driven through all four wheels (with an adaptive Haldex differential). With "only" 250 bhp, the R32's power-to-weight ratio is at the limit of what can practically be kept on the road. Often, with a quick start, the fronts will start to lose grip before the electronics throw all the power to the rears. So I'm not sure I'll be tempted by the R GTI. (Having said that, Volkswagen solved the problem with the most powerful production car, the 1000+ bhp Bugatti Veyron.) Perhaps, I'll be tempted by the other Golf-based car due in 2008, the Scirocco:

MapCruncher 3.01

There's been a minor update to MapCruncher to fix a bug with handling PDF transparencies. The updated version is here.

Update: it's now been updated to MapCruncher 3.02 to fix a bug in computing the default zoom render level for very small source images.

US EV-DO Approaches 100%

Chetan Sharma reports that Sprint and Verizon have completed their EV-DO Rev. 0 rollout and now have national coverage in the US. This is remarkable for two reasons:

  1. They only stared the upgrade a year ago;
  2. Sprint's plans to have 100 million users covered by Q4 2008 with WiMAX needs to occur at a similar, if not faster, pace.

Note that Sprint claims a similar rate for EV-DO Rev. A with initial rollout beginning end of October 2006 and being completed by Q4 2007. That's pretty good going.

Saturday, November 18, 2006

Virtual Earth 3D 1.1 Update

Virtual Earth 3D has been updated to 1.1 (download here). I'm not sure if I'm imagining it, but it seems faster. I don't think the SDK or iSDK has been updated. Note that Microsoft's maps team have produced Virtual Earth MapControl 3.2, Virtual Earth MapControl 4.0, Virtual Earth 3D 1.0 and Virtual Earth 3D 1.1 in two weeks. That's pretty good going!

MapCruncher 3.00

MapCruncher has been updated to version 3.00 (MapCruncher-3.00.zip - see this changelog). The main changes include: improvements to the stability; support for Virtual Earth 3D; projection fix for maps that covered large areas; and fixes for the stale tiles that would accumulate within the cache.

Thursday, November 16, 2006

Keima Wavecall Partnership

Keima is pleased to announce a partnership with the industry leading ray-tracing vendor, Wavecall. See the announcement on our webpage: Keima Wavecall Partnership.

Early mobile WiMAX (IEEE 802.16e) deployments will concentrate on major cities (see Sprint's announcement). Accurate modelling is essential for mobile WiMAX operators if they want to achieve an effective rollout and urban models should be used. Keima will implement Wavecall's industry leading WaveSight propagation model within our Overture network optimisation platform. We will also collaborate on consultancy services and training.