/bin/tim

November 27, 2007

OLPC - One Laptop Per (British) Child ?

Filed under: Tech — tim CARMICHAEL @ 10:12 pm

Tonight on the news Vicky and I were watching a clip on the news about the deployment of the OLPC XO laptop into a school in Abuja, Nigeria (http://news.bbc.co.uk/1/hi/technology/7115348.stm ).  Whilst I think this is a great social scheme run by the UN, Vicky pointed out that we don’t even have that level of technology adoption in the UK.  That got me thinking about why we can’t provide a £100 OLPC type device to every schoolkid in the UK.   I undestand that lots of kids do have laptops, and indeed at Vicky’s school their  adoption level of Tablet PCs is 80%, but there are plenty of schools where kids only have access to a PC at home, if at all.

The great thing about the OLPC is that its robust and has some good basic features like a 1200 x 900 sunlight readable display, a webcam, 256MB RAM, 1GB NAND storage (no disk) and WiFi.  This is ideal for schoolkids as it can do basic office tasks like word processing, presentaions and spreadsheet and of course internet connectivity. 

In this country we should really be able to provide an OLPC for every schoolkid for universal access to basic services and capabilities. I wish I could think of some way I could help make this happen, but I don’t have any way to influence a way forward.  One intersting scheme run only in the US is a buy one - give one program where wealthier people can pay double and give one free to a needy child.  Bizarrely this scheme is only running for 3 weeks, how short sighted is that? Perhaps we could do a similar scheme in the UK?

OLPC

November 26, 2007

Where Android may stumble …

Filed under: Android, Dev, Linux, Mobile — tim CARMICHAEL @ 11:02 pm

One of the great things about WindowsMobile is the fact the the OS is signed and sealed by MS before it goes onto an OEM device which means that an app which runs on the emulator sholuld run on any physical device (of same version at least).  I applauded Android’s entry into the market because I feel it will open up devices in a way netither WindowsMobile or Symbian can, becuase of their limited market penetration, price and technology.  I believe Android drives a simliar standard down to devices that would never be able to run WindowsMobile or Symbian due to cost or power.  However, I’m slightly worried that implementations by manufacturers may lead to a uneven ISV playing field because of what and how is delivered to be an ‘Android’ device.  This leads me to think that the compatibiltiy and capability problems that have plagued Symbian may turn up in Android.  To a certain degree its inevitable because certain ‘Android’ phones will be below the ideal feature quality bar, but I would have liked to have seen more plans for certification of the OS platform so ISV’s can actually write once and run everywhere.  If only Microsoft could have generated the critical mass to have WindowsMobile on bog standard (featureless) phones as well as high end devices.  Trouble is, I think that particular train has left the station now, and after 5 years of pushing water uphill as an ISV,  I see that most of the water got away.  If half of Samsung, Motorola and LG phones ran WindowsMobile it would be a wildly different story.

So, I now watch with interest to see some real implementations ie not on the emulator.  Of course I’m referring to deep device system stuff as opposed to fluffy graphics for a game. Anyway, we’ll see….

November 23, 2007

PowerShell 2.0

Filed under: Dev, Microsoft, Vista, Windows XP — tim CARMICHAEL @ 11:23 pm

I have just been trying out the CTP of PowerShell 2.0 to see whats new, and there are good signs of how it really is maturing into a super admin environment.  Interestingly, as someone who still see’s the roots of CMD.EXE in its first ancestor, CP/M’s Command Console Processor (remember the back to front logic copying files with PIP?), I still have an issue weaning myself off it and permamently onto PwoerShell.  I think that perhaps because of the DCL like structure of the commands it seems more effort to perform a task than in CMD, no matter how much more powerful it is.  But with V2 I’m going to make it my default console becuause its so seductive to just be able to CD ENV: into environment variables or CD HKLM: into the registry and then just do a DIR!  Try this:

cd HKCU:\software\microsoft\windows\CurrentVersion\run

Get-Acl

… and you will see the permissions for this key!  How useful is that, wish this existed back in ‘96.

I love the fact that I can just create a registry key and add values, or grab BIOS data info into a variable with $x = Get-WmiObject Win32_BIOS and then $x.manufacturer contains the BIOS manufacturer name like “American Megatrends Inc.”. Ten years ago we were writing Win32 apps to call from scripts to get this sort of info,  all credit to Jeffrey Snover for pulling it all together and making a shell that is flecible enough to leverage and be leveraged.

http://www.microsoft.com/downloads/details.aspx?FamilyID=60deac2b-975b-41e6-9fa0-c2fd6aa6bc89&displaylang=en

November 21, 2007

MS Device Emulator 3

Filed under: Dev, Microsoft, Mobile, WindowsMobile — tim CARMICHAEL @ 11:03 pm

Although VS2008 ships with WM5 R2 SDK, it does have the new emulator which continues the great pedigree of this component.  It really is a class developer tool and because it runs a real image from a device yours apps are true to life performance.  Even better, the cellular emulator makes allows the device to communicate with a fake network so you can send and receive data.  This is Microsoft at its best producing a quality development toolset to make our lives easier.

Device Emulator

Vista SP1 RC1 performance

Filed under: Microsoft, Vista — tim CARMICHAEL @ 10:29 pm

Sadly, the latest drop of Service Pack 1 (SP1) for Vista doesn’t seem to have addressed the latent performance issues that continue to dog this version for me.  One of the interesting aspects is that performace loss for me is not just about the sluggish performance but also the (un)usability of some of some of the Vista ‘enhancements’.  The biggest problem I have is the Explorer window where I end up constant renaming files or selecting files or changing columns!   One odd thing I have noticed is that Vista generally seems to perform better on 512MB systems as opposed to 1 or 2GB.  Scarily, I knocked up a quick app via which I can do bulk copying faster than explorer, I’ll try and do some timings but despite my fiendishly clever code, Explorer should be faster.

November 20, 2007

Data Safety

Filed under: General — tim CARMICHAEL @ 9:34 pm

The lamentable, if not unexpected breach of data protection by HMRC todaay raises different issues for me than the headline grabbing loss reported by the media.  For me the issue is how any one single person is allowed to download data on to CD without multiple signoffs.  In my opinion there is no way this kind of data, let alone the quantity should be just downloadable by any member of staff below a very serious rank, and even then only with sign off by one or more other independent data guardians thereby re-inforcing the seriousness with which this data should be handled.

Really the government should use this disaster as a way to really shake up data protection mechanisms re-inforced by law.  I also believe that this data, wherever held, is my possesion and not someone elses to give away.  Sepcifically I believe that this data should not be aggregated in this way either by government or other third parties.  If you take out any of the services from experian, equifax etc to look at your credit profile online you will see that these ‘aggregations’ have all sorts of data including credit limits, balances and payment history.  This should just not be available in this format, its a recipe for disaster.  The government should enable all citizens, especially those who really care to be the custodian of their data and not an unaccountable third party.

I’m sure the government won’t do anything as helpful  as this, and I fully expect another damaging leak to happen not far down the road because personal data is just not being protected properly.

November 19, 2007

VS2008 RTM

Filed under: Dev, Microsoft, Mobile, Visual Studio, WindowsMobile — tim CARMICHAEL @ 9:23 pm

VS2008 finally hit RTM tonight which is good news as the betas have been so much more stable than VS2005 was at the same point.  One of the best features (from an ISV perspective) is multi-targetting where each project can specify which version of the .NET Framework to work with (although not to SP level).  This means we can just upgrade the IDE without converting existing project files until we’re ready.  Overall the IDE and packaging tidy up a lot of loose ends and I think this is a very worthwhile update nowithstanding any language enhancements there are. 

One decidedly bad ommission is the lack of the WindowsMobile 6.0 SDK, with 5.0 R2 included instead.  This is a terrible ommission considering how close the 6.1 SDK is now.  Its easily if irritatingly fixed by downloading the 6.0 SDK’s (~700MB) but beware, make sure you get the latest refresh and not the original, get the refresh here http://www.microsoft.com/downloads/details.aspx?familyid=06111a3a-a651-4745-88ef-3d48091a390b&displaylang=en

November 12, 2007

Android SMS namespace

Filed under: Android, Dev, Mobile — tim CARMICHAEL @ 7:21 pm

Here’s an example of how the Android team are on the right track for developers.  (OK I’m no Java fan boy, but it works and there are plenty of knowledgeable devs out there)  For example, the android.telephony.gsm.SmsMessage class has lots of usefull functionality thats easy to access and use, look at these methods for example; (now I really want a real device)

 

      static  int[]  calculateLength(String messageBody)
Calculates the number of SMS’s required to encode the message body and the number of characters remaining until the next message, given the current encoding.
      static  SmsMessage  createFromPdu(byte[] pdu)
Create an SmsMessage from a raw PDU.
        String  getDisplayMessageBody()
Returns the message body, or email message body if this message was from an email gateway.
        String  getDisplayOriginatingAddress()
Returns the originating address, or email from address if this message was from an email gateway.
        String  getEmailBody()
        String  getEmailFrom()
        int  getIndexOnSim()
Returns the record index of the message on the SIM (1-based index).
        String  getMessageBody()
Returns the message body as a String, if it exists and is text based.
        MessageClass  getMessageClass()
Returns the class of this message.
        String  getOriginatingAddress()
Returns the originating address (sender) of this SMS message in String form or null if unavailable
        byte[]  getPdu()
Returns the raw PDU for the message.
        String  getPseudoSubject()
Unofficial convention of a subject line enclosed in parens empty string if not present
        String  getServiceCenterAddress()
Returns the address of the SMS service center that relayed this message or null if there is none.
        int  getStatus()
For an SMS-STATUS-REPORT message, this returns the status field from the status report.
        int  getStatusOnSim()
Returns the status of the message on the SIM (read, unread, sent, unsent).
      static  SubmitPdu  getSubmitPdu(String scAddress, String destinationAddress, short destinationPort, byte[] data, boolean statusReportRequested)
Get an SMS-SUBMIT PDU for a data message to a destination address & port
      static  SubmitPdu  getSubmitPdu(String scAddress, String destinationAddress, String message, boolean statusReportRequested)
Get an SMS-SUBMIT PDU for a destination address and a message
      static  int  getTPLayerLengthForPDU(String pdu)
Get the TP-Layer-Length for the given SMS-SUBMIT PDU Basically, the length in bytes (not hex chars) less the SMSC header
        long  getTimestampMillis()
Returns the service centre timestamp in currentTimeMillis() format
        byte[]  getUserData()
returns the user data section minus the user data header if one was present.
        SmsHeader  getUserDataHeader()
Returns an object representing the user data header
        boolean  isCphsMwiMessage()
Returns true for CPHS MWI toggle message.
        boolean  isEmail()
Returns true if message is an email.
        boolean  isMWIClearMessage()
returns true if this message is a CPHS voicemail / message waiting indicator (MWI) clear message
        boolean  isMWISetMessage()
returns true if this message is a CPHS voicemail / message waiting indicator (MWI) set message
        boolean  isMwiDontStore()
returns true if this message is a “Message Waiting Indication Group: Discard Message” notification and should not be stored.
        boolean  isReplace()
See TS 23.040 9.2.3.9 returns true if this is a “replace short message” SMS
        boolean  isReplyPathPresent()
Returns true iff the TP-Reply-Path bit is set in this message.

Why Android is going to be big

Filed under: Android, Mobile — tim CARMICHAEL @ 7:07 pm

IMHO, Android is going to be big, no make that huge.  I say this from the perspective of a developer and I can actually feel the Android initiative accelerating under my feet.  I have to say that Google have followed the Microsoft approach to developers (embracing) rather than the Symbian model (which involves a barge pole).  Google are aggresively targeting the developer community which will drive content for devices which will attract manufacturers and operators and ultimately combined with sexy devices, gets end users.  I predict a race occuring amongst handset manufacturers to be first to market with the ‘G-Phone’.

The Linux core makes for a solid foundation, and Google have built a compelling and architecturily comprehensive developer stack. Looks real good. My only concern is the security model which I haven’t had a chance to examine yet, especially around the XMPP android to android data protocol.

I downloaded and installed the SDK and ran up the emulator, and I was very impressed with its performance and integration.  Obviously it can’t make a call, but the data services are hooked up so that the internet is available as if it were a real phone for app testing.  At first glance the emulator works as well as it looks!

Can’t wait to receive my first real test device!

Android Home ScreenAndroid on my blog page liveCalling me on Android

November 8, 2007

The simplest ideas …

Filed under: General — tim CARMICHAEL @ 11:09 pm

How many times have I wished for something like this ?  Something so simple to stop my big fat fingers from dropiing tiny components in unaccessible places! Such a good idea, now I just need to find out where to buy it in the UK.

Finger Wrench

November 7, 2007

TechEd 2007 Europe Keynote

Filed under: Microsoft, Tech, Visual Studio — tim CARMICHAEL @ 10:18 pm

Microsoft have published the keynote from TechEd Europe 2007 … for me it wasn’t that excting compared to previous years and isnt exactly action packed with new products.  Anyway, here it is …

http://www.microsoft.com/emea/msdnshowtime/sessionh.aspx?videoid=705

November 6, 2007

Loony Laws

Filed under: General — tim CARMICHAEL @ 7:56 pm

The BBC have published a list of ludicrous laws here http://news.bbc.co.uk/1/hi/uk/7081038.stm which I casually perused today.  My two personal  favourites from the top ten are;

In third place, with 6%, a law stating that It is illegal for a woman to be topless in Liverpool except as a clerk in a tropical fish store…

In tenth, It is legal to murder a Scotsman within the ancient city walls of York, but only if he is carrying a bow and arrow (2%).

Internationally I was tickled by the notion that In Florida, it is a jailable offence for unmarried women who parachute on a Sunday (6%). 

November 5, 2007

G Phone on the horizon

Filed under: Microsoft, Mobile, WindowsMobile — tim CARMICHAEL @ 9:21 pm

Google’s announcement of the Open Handset Alliance (OHA) has firmly placed a cat among the pigeons, the fatted pigeons being Microsoft WindowsMobile, Symbian, RIM, Apple and less importantly PalmOS.  This brings the G Phone closer to reality if actually only as a concept realised through OHA members.  I don’t see any of the pigeons wanting to belong to the OHA since they could not sacrifice their own OS investments.

I think there are two irresistable facors why this will be a success;  firstly the lure of the free ‘Android’ OS so the manufacturers/operators can reduce costs bit still have a supported industrial strength OS;  Secondly the Google development community, which will create the wealth of apps to drive end user adoption. 

Combining sexy hardware with Android OS could quickly lead to a tidal wave of end user adoption with users being able to swap devices without losing functionality and data.  Very exciting! and its happening quickly;  SDK for developers this month and first compliant devices next year.  Scary times for the pigeons!

Older Posts »

Blog at WordPress.com.