Sat, 25 Apr 2009
On... Cupcake
Or Android 1.5, as it's properly known
About 20 minutes ago, jbq (aka Jean-Baptiste Queru, Android engineer and community friend par excellence) announced on the #android IRC channel that Android 1.5 - the release formerly known as Cupcake - was done, tagged and released. And that being done, he was going on vacation...
There's a somewhat full feature list here, but the things I'm really interested in are:
- A2DP, or stereo Bluetooth support, coupled with AVCRP for remote control. To be honest, I'm not hugely bothered about it being stereo as such, since I mainly listen to podcasts and other spoken content, but without A2DP, only calls can go over Bluetooth, regardless of the number of channels in your audio. I had A2DP on my Treo years ago, thanks to Softick Audio Gateway, a third-party shareware A2DP driver, and it's good to know that Android has caught up a bit.
- On-screen keyboard. The G1 is the first phone I've ever owned which slides, flips, rotates or otherwise isn't a single block with a keyboard on the front, and while the slide keyboard is pretty decent for a phone, it's pretty annoying to have to flip the phone open to enter a URL, a search term, or some other short text - and it's almost unusable one-handed, say when holding onto something in order not to fall over on a moving vehicle. I've had a fiddle with the soft keyboard in the 1.5 preview SDK, and it seems pretty usable, at least for short things. Not sure I'd want to type an email, blog post, IM, etc. on it, but we'll see
- Widgets. One of the most-requested features for the home screen - apart from not taking a few seconds to rebuild itself after being kicked out of RAM to make use for something else - widget support appeared as somewhat of a surprise a couple of months back, and not quite in the expected way. Rather than being HTML/CSS/Javascript widgets, they are implemented as an application interface, so they are richer (and probably faster), but a little harder to write. There are already lots of ideas floating around, and at least one community widget competition which should hopefully produce some interesting things. I wonder how long until the 3-screen home screen becomes limiting?
- Browser performance. Not that the existing browser is particularly slow, but it'll be nice to see it faster.
- General polish and performance. There's been a bunch of screenshots floating around recently, and thing are looking a little more form-over-function. Not that it really really matters, of course, but prettier phones sell more units, and I want Android to sell as many units as possible - both because I think it's a good platform and good for the mobile market, and because, selfishly, I hope to release some Android software soon, and more users (customers?) would be better
The interesting question, of course, is when it'll get shipped or pushed to users. The HTC Magic should be the first device shipping with 1.5 out-of-the-box, and it's expected to be released on May 5th, which really isn't far away. For the G1, T-Mobile Germany have already announced that they expect to push a 1.5 update to users in May, so it's not unfair to expect T-Mobile in other countries to do something similar - I have a US G1, so I should get the push whenever T-Mobile US gets round to it. I suspect Dream (same device, but not T-Mobile branded/released) users might have to wait slightly longer, but hopefully not too long.
Roll on donut!
[
04:31] | [
] |
#
Tue, 21 Apr 2009
On... Android Top Tip!
Just a little thing
I got a T-Mobile G1 (aka HTC Dream) back in November, the first Android device to hit the market. There's a partially-done full writeup somewhere in my draft folder, but for now, I wanted to get down a little tip I discovered today:
I've been trying to sign up with the new PCCW Wifi 'Single Device Plan', which is a very cheap ($28, around US$3.50 per month) unlimited wifi plan which uses the MAC address of the device for authentication. You have to manually login once, entering the activation code you got by SMS, and from then on it'll recognise your device and log you straight in. Their regular wifi service is virtually unusable on a regular basis with Android, since you have to connect to the service, then login before you can get to the internet, but as soon as you connect the device tries to reconnect to gmail, IM, etc. over wifi and fails. Very annoying... One limitation of the single device plan is that the $28 rate is only applicable to mobile phones, not laptops, and they use server-side user-agent sniffing to make sure you're activating a supported device. Android is, of course, no supported.
No problem, says I, since the webkit rendering engine in Android has support for choosing an Android user-agent, a 'desktop' user-agent, or an iPhone user-agent. I knocked together a simple web browser which pretends to be an iPhone, and went to register. Problem, says I - there's something a little funky about the SSL setup used on the activation form, and I can't get it to work with my toy browser. The built-in browser uses undocumented APIs to handle SSL errors, and while I probably could hack something up to work, I really can't be bothered.
I originally discovered that webkit had optional user-agent strings from the famous Mr. Romain Guy - author of the Android Home application - who mentioned something about a debug mode in the browser. Unfortunately, this debug mode is, while not exactly secret, also not well-known, and I went off on a wild goose chase to make my own browser. Today, while randomly browsing the bug list for the best-known Cupcake-on-G1 build, I see a mention of the debug mode, complete with instructions on how to enable it. In short, what you need to do is load the URL "about:debug" - this won't load a page, but will enable debug mode, which adds a bunch of options to the bottom of the 'Settings' panel, including a User-Agent picker.
As soon as I found it, and tested it on this site, I popped down to the PCCW shop in my building, loaded up the activation page, and bang! working fine. I haven't tested it, but according to original instructions, the setting doesn't persist (across a restart of the Browser, or a reboot, I don't know), but it's very useful to know if you just need to access a page behind a stupid iPhone-only user-agent check.
For the record, the other toggleable options which show up are:
- Single column rendering
- Use wide viewport
- Normal rendering
- Enable tracing
- Enable light touch
- Enable nav cache dump
Don't really know what any of them do, but I'm sure there are one or two people out there who might want to play around with it...
[
09:49] | [
] |
#
Thu, 03 Jul 2008
On... New phone - Sony Ericsson G900
I've abandoned PalmOS for the second time
This is a bit of a placeholder, since I linked to this post from another post before I'd actually written this one. There should be a longer review along soon - no more than a few days.
Like most people, I've been through a bunch of mobile phones in the past few years, keeping at least somewhat up with technology - when I was in the UK, it was funded by subsidies from the operator once I signed a contract, but I've been buying phones retail in HK and been quite happy on a no-minimum-term contract, in particular one which gives me a decent amount of included voice minutes and unlimited GPRS. I don't actually talk on the phone that much, since most of my communication is either online or face-to-face nowadays, but having an always-on connection terminating at a smart device in my pocket is quite nice.
It's small, it's sleek, it's got a smaller but brighter screen than my Treo 680. The interface is a little slow, but the individual programs are fine. The world of UIQ3 software seems very small, even compared with the sadly shrinking PalmOS world. The built-in email software is usable, even if it behaves slightly strangely - Chatter Email for PalmOS is nicer, but that's a dead end now anyway since the author was hired by Palm. The signing thing complicates things a bit and probably contributes to the shortage of third-party software, as does the UIQ/S60 split. The built-in media player is quite nice, even if it doesn't do Ogg - or for that matter, AVI. Getting used to handwriting recognition and a phone-type keyboard rather than a qwerty keyboard is taking a bit of time. The battery life is almost certainly longer than the Treo, but I haven't really stress-tested that yet. I wish they'd just use a USB connector. Full Java support is nice, and makes the software situation a little less disastrous. I'm waiting for the first OS update for what is a pretty recently-released phone, which will apparently have some Flash support - I don't care too much for Flash, but it would be nice if it gets delivered with a newer version of the Opera Mobile browser. Alternatively, there is some work going on to put together a webkit-based browser, which should be able to handle most/all iPhone-targeted sites, which would be nice. I might do some hacking at some point to remove the Chinese support, which might make some of the input quicker. I wish it had the hard soft buttons of the G700, rather than the soft soft ones, but I think the wifi and better camera are fair exchange. Wifi on a phone is nice, but I haven't really had a chance to use it on a public network yet, rather than at home. My mobile network are offering access to their affiliated wifi network for almost nothing if you are already paying for a data plan, so I've signed up and will try it out sometime soon. It's a 3G phone, but my (current) phone network is 2G-only, so I can't comment on 3G at all. It cost me $3780, standard Hong Kong retail price, but I've got a year's interest free credit so I'm paying around $315 per month and the shop threw in: (deep breath) spare battery and charger, screen protector, SE gym-sized bag, a voucher to get some crappy stickers for the phone, a 2GB memory card, a couple of pads and fridge magnets in the shape of the phone, two cans of Coke Zero and a large metal retro-style Coke thermometer. They call it dark brown, but it's really just a slightly 'warm' black.
How's about that for a brain dump then?
[
08:12] | [
] |
#
On... Home networking
Homeplug and wireless and airport, oh my!
I live in a medium-sized apartment, in Hong Kong terms. We've got a reasonably large living room, two comfortable-but-not-roomy bedrooms and smallish kitchen and bathroom. During the change of flatmate, I moved from one bedroom into the other, because the new one is slightly larger and has more storage. Our broadband connection comes into the living room, where there's a file server in the corner and an 802.11n wireless router box thingy, but unfortunately, that puts the bathroom between the wireless box thingy and my bedroom. The bathroom which has thick concrete walls which do a pretty good job of blocking 2.4GHz signals, apparently. In the bedroom, there's a weak, slow and unreliable signal from the wifi box which is only really a few meters away. I'm not entirely happy about this - I've got quite used to having wireless in my bedroom for things like watching TV in bed, late-night IM and so forth, particularly with the EeePC and my new wifi-enabled phone thrown into the mix. Incidentally, a little testing shows that my GSM signal strength also drops significantly between the living room and the bathroom.
So how to solve this problem? I tried moving the wifi router box thingy around a bit, which didn't make much difference, so I decided to throw a bit of money at the problem. I went down to Wanchai and bought a couple of no-name cheap Homeplug boxes for $500 the pair (approximately £32 or US$64). There are more expensive brands and more expensive standards - there are three generations of the technology in use, analogous to 802.11b, 802.11g and 802.11n for wifi. There are strict warnings in the short documentation for the homeplug boxes saying that you must only ever plug them directly into the wall, not into power strips, but that simply wasn't going to happen - I'm a techie living in a flat with a real paucity of power sockets and it would be impossible to dedicate two of them to networking. So, I plugged the boxes in and they work - really not that much more to say that that. They are pretty slow, comparable to 802.11b, but that's okay because that's all I paid for. They have some support for on-the-wire encryption, but you need to load up some Windows management tool to do that, so I'm running them unencrypted.
Phase 1 complete - I have a working network connection in my bedroom.
Unfortunately, I'm greedy. I don't just want a working wired connection, I want a working wireless connection. The next thing I tried was to repurpose my old Dell laptop, which has been almost completely replaced by the Eee, as an access point. That was... not a great success. Without a wifi card and driver which supports running in Master mode, you're stuck with an ad-hoc network, which is a lot less reliable than Infrastructure mode, particularly in a dense urban environment where any channel is going to get interference from other wifi devices, not to mention microwaves, TV signal senders and so forth. One notable thing I did find while trying to get this to work was parprouted which does virtual bridging between networks using ARP, rather than actual bridging which doesn't work with wifi interfaces. Parprouted does seem to work, but the network itself let it down.
I finally (?) solved the problem last night. One thing which most techies have is a drawer/box/room/large warehouse filled with spare bits and pieces which were useful in the past and might be useful again in the future, and which are being stored against that possible future use. Deep in one of my storage vats was an old Apple Airport Express, possibly the first 'travel router' designed for use in places like hotels, which might provide a wired connection but not wifi, or would charge extra for it. It can also do streaming audio and run as a printer server, but I've never used those - I have used the wireless bridge before, however. After a lot of faffing around trying to get a copy of Windows XP running under kvm/qemu to see the little AE box on the physical wired network, I configured it up, plugged it all in, and I seem to have a nice reliable wireless network in the corner of my room now. It is even happily acting like a real bridge and routing between the networks, over the virtual cable supplied by the homeplug boxes, rather than doing NAT and running its own DHCP server, which is the usual mode. In the end, I've got two little boxes lying on the floor in the corner of my room, and all is well!
There's also a bright blue network cable running right across the middle of my living room, but there are always sacrifices...
[
06:33] | [
] |
#
Thu, 31 Jan 2008
On... Answering LUGradio questions
Even if nobody has actually asked me
There have been a couple of interesting questions asked recently on LUGRadio, and I thought I'd make a quick stab at answering them for myself. No, nobody has shown any interest in my answers - and I don't really expect them to - but I'm going to inflict them on you anyway!
LUGRadio Top Trumps
For this segment, the LUGRadio blokes scored themselves on a number of attributes, representing the factors which bring them into the free software arena, and showing each of their biases towards certain benefits or features of free software. For me, the scores are:
Freedom crusading: 7
I care quite a lot about freedom, but in a practical way. Over the past 12 years or so, I've got used to having complete control over my environment, to doing things the way I want to do them. As an example - I choose to use neither GNOME nor KDE, sticking with Afterstep, which I've been using for something like 10 years now. Also, and this will come up again below, I'm very used to not worrying about buying licenses for software, to just assuming it works. In my current project, we have some complication because the tools being used were purchased as a bundle - which ends up meaning we can't use one tool unless we also install the others on the same machine. That's just alien to me.
Cheapness: 6
I don't care about paying for software, as such. What bothers me is the idea of saying "I can't use tool X because my company won't pay for a copy". Again, I've got very used to the idea that if there is a tool I need, and someone has already created it, I can use it - I don't have to worry about buying a copy, about time limits on trial licenses, anything like that. One way to look at it is that I'd be reasonably happy in a world where all development tools were free of charge, but it was necessary to pay for deployment - because then the cost of software gets bundled in with the cost of actually providing a product or service, rather than the cost of creating it.
Supporting the underdog: 5
I think this was a lot more important a while ago, but frankly, Linux isn't really the underdog in my world. I just assume that Linux (or possibly another Unix-ish system) would be the normal thing for networked servers, and even in the end-user world, I think Linux is pretty much up to parity now. My flatmate and I have approximately 7 x86-type computers between us (don't ask!), all but two are running Linux, and one of the Windows PCs is almost unused, because it's almost unusably slow and overloaded with crap. She is not a techie, even if she is happy with gadgets, but owns one Linux machine herself, and quite happily uses my home fileserver and both my xbox, running freevo, and her Windows laptop to play entirely legal video files from it.
Community: 5
Again, I used to be a lot more interested in community stuff, but to some extent I think I've grown out of it. I work with computers all day, I tinker a bit at home, and use them a lot, and I'm getting less interested in hanging out with computer people for fun, if being computer people is all we have in common. Honourable mention goes to #Python on Freenode, which is a relatively smart community, and even, sometimes, has smart newbies. One problem I have with community events is that I am relatively advanced, and if I'm not going to learn anything in an event, I find it boring - I want to be a student as well as a teacher. I find I have less patience with dumb newbies than I used to, and I often can't be bothered to answer simple questions where a simple Google search would have saved both their time and ours. I should admit that this also has something to do with having moved to HK, where the community is not as strong as in the UK, and having managed to get somewhat of a real life instead...
Tinkering: 7
This is a slight cheat. I don't really tinker as much as I used to - see above about growing out of stuff, getting a life, etc. - but that's partly because I have done my tinkering and I have a system and a setup I'm really comfortable with. On my work laptop, on my home PC and laptop - I am running a very similar configuration, which I've worked out over years and, while it does change if something better comes along than I have now, that hasn't actually happened for a while. One sign of this is that I've done very little tinkering with the Eee PC - that's partly because it comes pretty well setup out of the box, but partly because I can't be bothered tinkering and just want to use the thing!
So, them's my scores. I didn't really know what scores I was going to give myself until I started writing this, and I suspect I'd have given quite different scores a couple of years ago. The other interesting question was what would cause someone to leave the community, which can be interpreted as switching to proprietary software, or just stopping any active participation in the community. I can think of two reasons why I would leave:
- Because some of the choice in the community was lessened - the particular examples I'm thinking of would be if one distribution, one desktop environment, something like that, got so entrenched that people who chose not to use it were effectively excluded. At the moment, I am not using the most 'mainstream' of free software technologies - by choice - but that doesn't mean I miss out on much. In general, I can do whatever anyone using, say, GNOME on Ubuntu can do, even if it takes me slightly more work. If that ceased to be the case, I'm not sure I'd stick around. This is quite unlikely...
- Much more likely would be because some new, widespread technology was completely unusable with free software. An example would be something like DVD decoding, or 802.11n support - if someone managed to get such a technology widely adopted, and also managed to completely exclude the free software world, that might be a deal-breaker for me. There have been times over the past few years where things like that looked possible, with things like DVD decoding, 3D graphics support and so on, although thankfully it looks a lot less likely now as Linux has become more mainstream.
Anyone else want to answer?
[
05:14] | [
] |
#