Some notes from SMWF 2012:
http://sentinelweb.co.uk/social-media-forum-wrapup-2012/
Wednesday, 4 April 2012
Tuesday, 3 April 2012
Tuesday, 24 January 2012
Tuesday, 6 December 2011
Not really Android related, but I just upgraded to ubuntu 11.10 and had the re-install gnome (I hate Unity). All was pretty good but I just couldn't figure out how to get gnome-panel settings to show. Every report I found on the web says it was <alt>+<right click> but for me it is
<winkey>+<alt>+<right click>.
Anyways, just though I'd add that, as I said, everywhere else says its <alt>+<right click>. Possibly the key binding was in use and it selected another.
On an Android note, if you are on Ubuntu 11.04 and having issues with eclipse (mouse not working!!) then do an upgrade to 11.10. All is good here.
Sunday, 9 October 2011
Notes from planet of the apps ...
The planet of the apps conference was a nice event, quite small but a good line-up of speaker (including yours truly). Though the speakers were a bit iPhone centric mostly, most of them seem to worried about 'fragmentation'. I still think there is a lot of misunderstanding about Android out there ...
Some highlights for me were:
Mobile apps dragons den (day1): Nerad Marovac (DN Capital) and Frederic Court Advent Ventures) represent angel investors and helped explain their investment strategies. It was interesting to see their perspective. Some like to go for early stage startups ( when they have have input on the product) and others go for growth stage (where the product is proven and the company needs to expand)
Magic solver: is a market platform that has had quite a lot of experience in building app downloads. The model involves giving free apps out and up selling. People sure do love free ...
App longevity: This was a panel discussion on factors surrounding an apps lifetime. There was a lot of concensus that utility apps would be longer lived, but probably wont attract the sales levels in a short that games do. As well as strategies for keeping people interested (e.g. regular updates, the need for UX).
And of course: Re-enabling the cloud: My Presentation about considerations when choosing a cloud provider. Mainly:
Here are some notes I made in Vectoroid for anyone interested (they are a bit unstructured): Day 1
Day 2&3
Some highlights for me were:
Mobile apps dragons den (day1): Nerad Marovac (DN Capital) and Frederic Court Advent Ventures) represent angel investors and helped explain their investment strategies. It was interesting to see their perspective. Some like to go for early stage startups ( when they have have input on the product) and others go for growth stage (where the product is proven and the company needs to expand)
Magic solver: is a market platform that has had quite a lot of experience in building app downloads. The model involves giving free apps out and up selling. People sure do love free ...
App longevity: This was a panel discussion on factors surrounding an apps lifetime. There was a lot of concensus that utility apps would be longer lived, but probably wont attract the sales levels in a short that games do. As well as strategies for keeping people interested (e.g. regular updates, the need for UX).
And of course: Re-enabling the cloud: My Presentation about considerations when choosing a cloud provider. Mainly:
- Make a decision early on the data you want to keep as storing it forever just leads to increasing costs.
- Be careful of lockin to a cloud API. Platform as a service (PAAS) providers (e.g. Azure, App-engine) generally have customised APIs, that will likely require significant recoding of you want to move. Though this is likely a function of their limited age and more are building support for standard APIs
- Here are the slides PPT, ODP
Here are some notes I made in Vectoroid for anyone interested (they are a bit unstructured): Day 1
Day 2&3
Sunday, 2 October 2011
Planet Of the Apps Presentation. R-enabling the cloud ...
I will be presenting at the "Planet of the Apps" Confrence (website) on 6th October. The topic is "R-enabling the cloud, continuing the natural migration from PC application to mobile app" (programme).
The conference has a great line-up speakers, and no doubt will be very informative. Hope to see you there. Bit of a shame about the overlap with DroidCon, but hey its mobile week (http://londonmobileweek.com/), so there bound to be some crossover with other events. Perhaps it should have been "mobile month".
The conference has a great line-up speakers, and no doubt will be very informative. Hope to see you there. Bit of a shame about the overlap with DroidCon, but hey its mobile week (http://londonmobileweek.com/), so there bound to be some crossover with other events. Perhaps it should have been "mobile month".
DroidCon UK, 6-7 October 2011
Looking forward to the upcoming DroidCon UK (6-7 October 2011) (http://uk.droidcon.com). It promises to be a must see for Android developers with loads of presentations from Google, HTC, SONY Erricson, and loads of community members. Hope to see you there:
Thursday, 28 July 2011
MyPOD reviews
There have been a couple of fair reviews of MyPOD recently and I just wanted to send a shout out to the authors, Thanks guys.
http://www.androidauthority.com/podcatcher-roundup-top-9-best-android-apps-for-playing-podcasts-16817/
http://rascallings.blogspot.com/2011/07/android-app-review-mypod.html
We all know that while being highly functional - there are some edges to smooth out in the MyPOD UI. Credit goes to these bloggers for taking the time to look at the functionality and give it a fair review.
http://www.androidauthority.com/podcatcher-roundup-top-9-best-android-apps-for-playing-podcasts-16817/
http://rascallings.blogspot.com/2011/07/android-app-review-mypod.html
We all know that while being highly functional - there are some edges to smooth out in the MyPOD UI. Credit goes to these bloggers for taking the time to look at the functionality and give it a fair review.
Labels:
appz
Tuesday, 28 June 2011
Using VectorPaint For VJing
While re-writing the VectorPaint library I have also been experimenting with using the library in a VJing application. The save drawings are sent via OSC to a processing sketch and render on the screen. This is a snapshot at MixedMedia - a monthly event in Sydney for VJing.
Labels:
funz
Friday, 27 May 2011
shortcuts script for common debug tasks
I have been using this script for a while, it allows me to make shortcuts for common android debug tasks (e.g. logcat, shell, installing/overwriting/removing apks). There are probably better ways of doing it for the shell script experts out there, but it suits my purposes... and it's pretty streamlined.
There are aliases for common devices and common apps so i can start stuff with a few characters
So the first parameter denotes the function.
The second parameter denots the device (which are configured in the first if statement):
Then there are app package name shortcuts ... (the 3rd if statement)
To start logcat on ny nexus 1, I type:
So without further ado, here is the script:
There are aliases for common devices and common apps so i can start stuff with a few characters
So the first parameter denotes the function.
l = logcat r = replace app (keeping data) s = shell i = install u = uninstall o = overwrite (uninstall then install) ks = kill-server ss = start-server
The second parameter denots the device (which are configured in the first if statement):
a = all connected devices (from 'adb devices') f = first device (in 'adb devices' list) e1 = emulator-5554 (the others are my hardware devices)
Then there are app package name shortcuts ... (the 3rd if statement)
To start logcat on ny nexus 1, I type:
ad l n1And to overwrite an apk on all connected usb devices - it type (the 2nd 'a' param stands for 'all connected devices'), really useful when testing before a release ...
ad r a /path/to/apkfile.apkBasically it's nothing too high tech, it just makes things much quicker and easier when i am debugging. If you have any suggestions then i am keen to hear them...
So without further ado, here is the script:
#!/bin/bash
# toggle this to test command output without execution 0=no exec
EXEC=1;
DEVICES='f'
if [ $2 ] && [ $2 = 'g1' ] ; then
DEVICES=("HT848KV04600")
elif [ $2 ] && [ $2 = 'hero' ] ; then
DEVICES=("HT9BSL901147")
elif [ $2 ] && [ $2 = 'arch' ] ; then
DEVICES=("A10-4BE40002-9FF80000-015F2F44-0D01601E")
elif [ $2 ] && [ $2 = 'n1' ] ; then
DEVICES=("HT018P805702")
elif [ $2 ] && [ $2 = 'e1' ] ; then
DEVICES=("emulator-5554")
elif [ $2 ] && [ $2 = 's' ] ; then
DEVICES=("I5500b2e40b3c")
elif [ ! $2 ] || [ $2 = 'a' ] ; then
DEVLIST=`adb devices`
DEVICES=()
for D in $DEVLIST; do
if [ $D = "device" ] ; then
DEVICES=(${DEVICES[@]} $PREV)
fi
PREV=$D
done
# take the first device if not specified otherwise take all
if [ ! $2 ] ; then
DEVICES=${DEVICES[0]}
else
DEVICES=${DEVICES[@]}
fi
fi
echo "using devices:" $DEVICES
OP=''
if [ $1 ] ; then
if [ $1 = 'u' ] ; then
OP="uninstall"
elif [ $1 = 'i' ] ; then
OP="install"
elif [ $1 = 'r' ] ; then
OP="install -r"
elif [ $1 = 'l' ] ; then
OP="logcat"
elif [ $1 = 's' ] ; then
OP="shell"
elif [ $1 = 'ks' ] ; then
OP="kill-server"
elif [ $1 = 'ss' ] ; then
OP="start-server"
elif [ $1 = 'z' ] ; then
OP=""
elif [ $1 = 'o' ] ; then
OP=""
fi
fi
PRG=$3;
if [ $3 ] ; then
if [ $3 = 'mpp' ] ; then
PRG="package.name.1"
elif [ $3 = 'st' ] ; then
PRG="package.name.2"
elif [ $3 = 'stp' ] ; then
PRG="package.name.3"
elif [ $3 = 'mp' ] ; then
PRG="package.name.4"
fi
fi
if [ ! $1 ] ; then
echo "ad extra"
echo "CMD = o (overwrite) extra=apk | l (logcat) | r (reinstall) extra=apk | i (install) extra=apk | s (shell) | u (uninstall) | ks (kill-server) | ss (start-server)"
echo "CMD = z (zipalign )"
echo "DEV = g1 hero arch n1 s a(all)"
echo "PRG = mp mpp st stp"
echo "------devices---------"
CMD="adb devices"
echo $CMD
if [ $EXEC = 1 ] ; then
$CMD
fi
else
if [ $1 = 'z' ] ; then
NEWFILE=`echo $2 | sed "s/.apk/_z.apk/"`
rm -fr $NEWFILE
CMD="zipalign -v 4 $2 $NEWFILE"
echo $CMD
if [ $EXEC = 1 ] ; then
$CMD
fi
else
for DEV in $DEVICES ; do
echo $DEV
if [ $1 = 'o' ] ; then
CMD="adb -s $DEV uninstall $PRG"
echo $CMD
if [ $EXEC = 1 ] ; then
$CMD
fi
CMD="adb -s $DEV install $4"
echo $CMD
if [ $EXEC = 1 ] ; then
$CMD
fi
else
CMD="adb -s $DEV $OP $PRG $4"
echo $CMD
if [ $EXEC = 1 ] ; then
$CMD
fi
fi
done;
fi
fi
Labels:
codez
Monday, 7 March 2011
Silent mode timer UI changes - review & lessons learnt
I have posted about the silent mode timer before - it's a small app to disable silent mode using a timer. It's useful for situations like meetings and going to the cinema when you just want to have silent mode on for a short period of time and not mess around with schedules or flipping upside down, etc.
After releasing a UI update recently I discovered how difficult it can be to convince users of the benefits of a new (better) UI. When your users know your product there is generally going to be some resistance when it gets changed. Eventually I have realised that if there is going to be change, then you have to make sure that all the features your existing users like should be the highest priority.
The goals of the UI re-write were to reduce the amount of buttons on screen while still enabling the fastest way to set a timer and just get out (that's all the app should do).
The features that were lost in this case were:
1. Some convenience buttons on the side of the time setting widget to increment/decrement the time by 15min. In the first version
2. 12 hour time.
These features have now been restored by popular demand ...
There were many features people had requested to be added in the first version (automatic prompting, calendar integration, set a timer by end time). Some of these were easy to integrate in the new interface (all except the calendar integration).
But with all the (new and old) features, does it still live up to the basic goal of simplicity? Well the users will be the judge. Some have left but more new ones have also come.
The moral of the story? Well i guess it's that no matter how well you try to make things better, the main thing you need to create is a sense of attachment to an application, and familiarity is key. Changes probably need to be made in transitional style, or if there is a complete overhaul, the option to revert to the old style while people get comfortable is highly important.
The new app can be found on the market here:
Free: https://market.android.com/details?id=co.uk.sentinelweb.silenttimer
Paid: https://market.android.com/details?id=co.uk.sentinelweb.silenttimerpaid
It would be great to know what YOU think too ;)
After releasing a UI update recently I discovered how difficult it can be to convince users of the benefits of a new (better) UI. When your users know your product there is generally going to be some resistance when it gets changed. Eventually I have realised that if there is going to be change, then you have to make sure that all the features your existing users like should be the highest priority.
The goals of the UI re-write were to reduce the amount of buttons on screen while still enabling the fastest way to set a timer and just get out (that's all the app should do).
The features that were lost in this case were:
1. Some convenience buttons on the side of the time setting widget to increment/decrement the time by 15min. In the first version
2. 12 hour time.
These features have now been restored by popular demand ...
There were many features people had requested to be added in the first version (automatic prompting, calendar integration, set a timer by end time). Some of these were easy to integrate in the new interface (all except the calendar integration).
But with all the (new and old) features, does it still live up to the basic goal of simplicity? Well the users will be the judge. Some have left but more new ones have also come.
The moral of the story? Well i guess it's that no matter how well you try to make things better, the main thing you need to create is a sense of attachment to an application, and familiarity is key. Changes probably need to be made in transitional style, or if there is a complete overhaul, the option to revert to the old style while people get comfortable is highly important.
The new app can be found on the market here:
Free: https://market.android.com/details?id=co.uk.sentinelweb.silenttimer
Paid: https://market.android.com/details?id=co.uk.sentinelweb.silenttimerpaid
It would be great to know what YOU think too ;)
Labels:
appz,
silent_timer
Friday, 4 March 2011
ADB with Acrhos 10i internet tablet on Ubuntu
I recently bought Archos 10i Internet tablet for testing the upcoming drawing software release (more soon on that) and there is an extra trick to getting it working with ADB:
1. Get the Vendor id by typing:
Bus 002 Device 007: ID 0e79:1411 Archos, Inc.
2. Add the vendor id (0e79) to /etc/udev/rules.d/51-android.rules as per normal
3. And the extra trick is as per this link: archoss-solution-to-adb-connection-bug.html
You also need to add the vendor id to ~/.android/adb_usb.ini (you need to check the file doesn't exist first).
4. Then we restart the ADB server and the device should be shown:
List of devices attached
A10-4BE4XXXX-9FF8XXXX-015FXXXX-0D01XXXX device
1. Get the Vendor id by typing:
lsusbThe line we are looking for is:
Bus 002 Device 007: ID 0e79:1411 Archos, Inc.
2. Add the vendor id (0e79) to /etc/udev/rules.d/51-android.rules as per normal
SUBSYSTEM=="usb", SYSFS{idVendor}=="0e79", MODE="0666"
3. And the extra trick is as per this link: archoss-solution-to-adb-connection-bug.html
You also need to add the vendor id to ~/.android/adb_usb.ini (you need to check the file doesn't exist first).
echo "0x0e79" >>~/.android/adb_usb.ini
4. Then we restart the ADB server and the device should be shown:
adb kill-server adb start-server adb devicesThe last line shows:
List of devices attached
A10-4BE4XXXX-9FF8XXXX-015FXXXX-0D01XXXX device
Labels:
phonez
Saturday, 27 November 2010
Top 20 nice market comments about MyPOD Podcast manager/player
It's always nice when people like your work, nice comments go a long way when you are trying to make something that is different, so I though I'd post the Top 20 nice comments about MyPOD, so here goes, thanks to everyone:-
- After long research, I eventually found a podcast client which can do everything what I wanted (and more). Awesome app, keep going!
- This app requires an IQ of at least 85 to use. If you like to smash big buttons like a monkey do not install it. Your fault if you can't use.
- I've tried a few podcast players, and this is by far my favourite. It is worth buying the full version for more than 6 feeds. Good job.
- Fantastic app. Evolving quickly and getting better every time. Most used app on my phone.
- Best most robust podcast app by far.
- The best thing is the independant volume controls. You can make it quieter than the phone would normally let you. Handy listening to podcasts at night
- Tried all podcats and this is by far the best. A lil confusing at first, but get used to it and youll see its AWESOME!
- Far and away the best android podplayer i'v ever used. Simple to use but extremely configurable. Unlocked, on samsung captivate.
- Best app I have bought! Easy to set up and no sync/account issues like listen. Could do with option to save favourite pods to media player
- Best podcatcher. It takes alittle to get used to the UI but once you do, it blows all others out of the water!!!!
- Easily the most used app on my phone. Avaulable features and responsive developer make MyPod the best podcast manager available. Well worth unlocking.
- Truly wonderful app. Great interface, easy to use, minimal learning curve and its very powerful. Well worth the price (I bought it twice)
- This is by far the best podcast app on the market.it takes about ten minutes to get the hang of how it works.
- An excellent podcast app. The first to make me begin shifting subscriptions from my ipod to my EVO. First app I excitedly bought an unlock key for.
- This app does it all! Huge thanks to the dev.
- Fantastic app. Manages all my podcasts perfectly in one place. Who needs an iPhone whilst this exists? ;-)
- The UI is intimidating the first time you use it, but it's easy to learn and the app is feature packed...worth taking a few minutes to get familiar w/
- One of the best podcast apps around. You can't do better for free. So good I wanted to pay for it.
- I've tried them all and was very frustrated with the confusing and shamefully poor podcast support till I found this gem!
- If you love to control how your phone works this is the perfect app; If you have trouble with complexity and want a predetermined path go for Listen.
Sunday, 14 November 2010
Android NDK Primer & Drawable Customiser presentation
I presented a primer on getting started with Android NDK at OpenLab OpenDay on the 13th November. The presentation consisted of the following parts:
I also gave a brief overview of the upcomping Drawable Customiser release and have released a basic version of the API under GPL (Available here). I will be posting some usage examples in the next couple of weeks ..
The NDK presentation is available as : OpenOffice and PowerPoint XML
- Basic introduction to the Android NDK (Building and development basics)
- Use of DirectBuffers
- Accessing java objects from the NDK (Getting and Setting data in Java Objects)
I also gave a brief overview of the upcomping Drawable Customiser release and have released a basic version of the API under GPL (Available here). I will be posting some usage examples in the next couple of weeks ..
The NDK presentation is available as : OpenOffice and PowerPoint XML
Labels:
prez
Monday, 25 October 2010
Filtering onTouch for light pressure
For the drawing program I am writing, there is a sensitivity problem when the pressure is light on the touchpad. When the finger is pressed down (like when you are in the middle of a drag operation) the touch point is stable as the area of the finger pressed to the touchpad is large and so the centroid of the area is quite stable.
However at the end of the drag operation, as the finger pulls away, the area on the touch sensor decreases and the actual touch point seems to vary a lot. This is a problem for me in my drawing program, as you make fine changes to the drawing, you don't want the changes to be affected by this noise as you pull up from the touchpad.
This solution uses a mean filter to combat the problem - noting new there. But we combine the mean value with the pressure value so as the pressure gets lighter, we us more of the mean value. It works best if the finger pulls off the surface slowly.
The filter class I have used is shown below:
To use it we create an instance - this is a mean filter length:7, pressure threshold:0.3
Then in onTouch, we can filter the value to be used like so:
We can note that the mean values arent calculated until the pressure drops below the threshold, thus being slightly more efficient than just mean filtering all the time, this also stops touchpoint lag as the mean filtered value will generally lay somewhere behind the current value.
This code is made open under the CC BY-SA licence
.
However at the end of the drag operation, as the finger pulls away, the area on the touch sensor decreases and the actual touch point seems to vary a lot. This is a problem for me in my drawing program, as you make fine changes to the drawing, you don't want the changes to be affected by this noise as you pull up from the touchpad.
This solution uses a mean filter to combat the problem - noting new there. But we combine the mean value with the pressure value so as the pressure gets lighter, we us more of the mean value. It works best if the finger pulls off the surface slowly.
The filter class I have used is shown below:
/*
* licensed under CC BY-SA : http://creativecommons.org/licenses/by-sa/3.0/legalcode
*/
class MeanFilter {
public static final int DEFAULT_LEN = 11;
float[][] points = new float[2][DEFAULT_LEN];
int currentPos=0;
int actualValues = 0;
int length = DEFAULT_LEN;
float pressureLimit = 0.2f;
public MeanFilter(int length,float pressureLimit) {
super();
this.length = length;
this.pressureLimit = pressureLimit;
}
public void add(float x,float y) {
points[0][currentPos]=x;
points[1][currentPos]=y;
currentPos++;
currentPos%=length;
if (actualValues<length) {
actualValues++;
actualValues=Math.min(actualValues, length);
}
}
public void clear() {currentPos=0;actualValues=0;}
public void get(PointF defaultPoint,float pressure){
if (actualValues==0) {return;}
if (pressure<pressureLimit) {
float xmean = getMean(points[0], actualValues);
float ymean = getMean(points[1], actualValues);
float pressureRatio = pressure/pressureLimit;
defaultPoint.x=(pressureRatio)*defaultPoint.x+(1-pressureRatio)*xmean;
defaultPoint.y=(pressureRatio)*defaultPoint.y+(1-pressureRatio)*ymean;
}
}
public void setLength(int i) {
length = i;
clear();
}
private float getMean(float[] arr,int ctr){
float accum = 0;
for (int i=0;i<ctr;i++) {
accum+=arr[i];
}
return accum/ctr;
}
}
To use it we create an instance - this is a mean filter length:7, pressure threshold:0.3
private MeanFilter touchFilter = new MeanFilter(7,0.3f);
Then in onTouch, we can filter the value to be used like so:
/*
* licensed under CC BY-SA : http://creativecommons.org/licenses/by-sa/3.0/legalcode
*/
public boolean onTouch(View v, MotionEvent event) {
PointF touchPointOnScreen = new PointF(event.getX(),event.getY());
switch (event.getAction() ) {
case MotionEvent.ACTION_DOWN: touchFilter.clear();
break;
case MotionEvent.ACTION_MOVE:
touchFilter.add(event.getX(),event.getY());
if (event.getPressure()<0.05) {return true;}
if (event.getPressure()<0.3) {
touchFilter.get(touchPointOnScreen,event.getPressure());
}
break;
case MotionEvent.ACTION_UP:
touchFilter.get(touchPointOnScreen,event.getPressure());
break;
}
// use touchPointOnScreen here...
return true;
}
So touchPointOnScreen contains the filtered value to use.
We can note that the mean values arent calculated until the pressure drops below the threshold, thus being slightly more efficient than just mean filtering all the time, this also stops touchpoint lag as the mean filtered value will generally lay somewhere behind the current value.
This code is made open under the CC BY-SA licence
Labels:
codez
Tuesday, 28 September 2010
Silent Timer Released
I have just yesterday released a (very) small app and widget called "Silent Timer". This a simple app to disable the silent mode after a certain time. I made it because I regularly forget to turn off silent mode after movies and meetings. There are plans to add some more features in the next few weeks.
There is a free ad supported version and a paid version. The free version has had 300 downloads so far - which isn't too shabby for absolutely no announcements or marketing (well, except this post).
There is a free ad supported version and a paid version. The free version has had 300 downloads so far - which isn't too shabby for absolutely no announcements or marketing (well, except this post).
Labels:
appz,
silent_timer
OTA Update 2.2.1
Just received an OTA update today to 2.2.1 - looks to be mostly security stuff, blocking one touch rooting and some WIFI issues. There are also some nice little improvements to Gmail, easier replying and forwarding buttons. Some people reported maps changes but they must be slight, as I can't see them.
The only issue being that Swype has the be re-installed (it works as keyboard but the Swype feature disables - I can only assume this is intentional as it happened on my 2.2 update as well). But who can can live without Swype?
Nexus one users have got the update first as usual, other are coming soon (Droid X tomorrow?).
The only issue being that Swype has the be re-installed (it works as keyboard but the Swype feature disables - I can only assume this is intentional as it happened on my 2.2 update as well). But who can can live without Swype?
Nexus one users have got the update first as usual, other are coming soon (Droid X tomorrow?).
Labels:
newz
Tuesday, 21 September 2010
HTC launch event - Desire HD and Z
HTC got friendly last week having a launch party for their yet unreleased Desire HD and Dersire Z phones. The phones are nice and light (maybe slightly too light) models with WVGA screens (the desire HD has a larger screen at 4.3").
The event was a bit misguided - the phones were in a separate room, in which only a few people were allowed to view them at a time. I think a better marketing technique would've been to have more phones so everyone that went could get a better look at them. It was quite annoying going to see new phones and not really being able to get a sense of what they feel like to use for a while. If you're going to spend all that money on marketing, then more actual phones definitely couldn't hurt, but who would say no to free food and beer anyway ...
The Desire HD borders on a mini-tablet device with such a large screen, though it is still very much a (big) phone. It also has the very nice feature of a built in DNLA server, which I am looking very forward to. Hopefully it will play nicely with MyPOD so you can easily have videocasts on your main TV. It is certainly a nice feature to have for a media device though, videos can be viewed without cables. I'm guessing more recent TVs have this DNLA client functionality built in, but I use my PlayStation which works fine (I haven't had a chance to test it with the device unfortunately).
The desire Z is slightly lower power (800MHz), and has a nice looking slide out keyboard.
The phone specs are available here:
HTC Desire HD
HTC Desire Z
The event was a bit misguided - the phones were in a separate room, in which only a few people were allowed to view them at a time. I think a better marketing technique would've been to have more phones so everyone that went could get a better look at them. It was quite annoying going to see new phones and not really being able to get a sense of what they feel like to use for a while. If you're going to spend all that money on marketing, then more actual phones definitely couldn't hurt, but who would say no to free food and beer anyway ...
The Desire HD borders on a mini-tablet device with such a large screen, though it is still very much a (big) phone. It also has the very nice feature of a built in DNLA server, which I am looking very forward to. Hopefully it will play nicely with MyPOD so you can easily have videocasts on your main TV. It is certainly a nice feature to have for a media device though, videos can be viewed without cables. I'm guessing more recent TVs have this DNLA client functionality built in, but I use my PlayStation which works fine (I haven't had a chance to test it with the device unfortunately).
The desire Z is slightly lower power (800MHz), and has a nice looking slide out keyboard.
The phone specs are available here:
HTC Desire HD
HTC Desire Z
Thursday, 16 September 2010
DroidCon London 28-29 Oct, 2010
The upcoming London DroidCon conference looks very promising, the people at Novoda (and others I'm sure ..) have put together an excellent programme of speakers and topics, especially in the user experience and business marketing side. I would highly recommend it for people who are looking to develop their ideas on Android.
These events are very important for the Android community to meet face-to-face and discuss ideas and strategies, and the Barcamp on the first day is a good way to incubate such ideas.
DroidCon events have been held in London and Berlin for the past two years and with the quickening pace of Android development and market penetration, it looks to continue as a premier event for the Android community.
http://www.droidcon.co.uk/
These events are very important for the Android community to meet face-to-face and discuss ideas and strategies, and the Barcamp on the first day is a good way to incubate such ideas.
DroidCon events have been held in London and Berlin for the past two years and with the quickening pace of Android development and market penetration, it looks to continue as a premier event for the Android community.
http://www.droidcon.co.uk/
Labels:
eventz
Saturday, 11 September 2010
Android vs Oracle contradictions
There has been a lot of talk in the tech world about Oracle's patent infringement claims against the Android operating system. Oracle have not disclosed the details of the claims, and are highly unlikely to do so before the case goes to court. While I respect the right of Oracle to protect it's intellectual property, it seems this non-disclosure is more aimed at scaring people away from Android, even though ultimately they will be seeking some form of licensing arrangement for whatever patents/copyrights have been infringed in Android.
The best thing Oracle can do at the moment is to disclose the basis of their claims, not only are they hurting Android but they are also hurting the open-source Java community in its entirety, and in doing so the value of arguably the biggest asset they acquired in their takeover of Sun (i.e. Java). One wonders how they can't see this, possibly they think Java is too big to fail now (sound familiar?).
The whole thing rings of the IBM vs SCO case of a few years ago. They made claims Linux infringed their patents, would not disclose any information about it and then when the case came to court, they didn't really have much to stand on. SCO eventually filed for chapter 11 bankruptcy protection and looks like it will go out of business. The lesson that could have been learnt is that these frivolous patent claims cost everyone money and to proceed you would want to be quite sure of wining, even though the lack of disclosure indicates they aren't really that sure.
It all adds a lot of weight to the argument that the patents system needs drastic reformation for use with software, which is re-used as a general development practice. Until this happens patents will be used as a tools for revenue generation and most likely result in mutually assured destruction for businesses looking to (mis)use them for revenue generation purposes.
The best thing Oracle can do at the moment is to disclose the basis of their claims, not only are they hurting Android but they are also hurting the open-source Java community in its entirety, and in doing so the value of arguably the biggest asset they acquired in their takeover of Sun (i.e. Java). One wonders how they can't see this, possibly they think Java is too big to fail now (sound familiar?).
The whole thing rings of the IBM vs SCO case of a few years ago. They made claims Linux infringed their patents, would not disclose any information about it and then when the case came to court, they didn't really have much to stand on. SCO eventually filed for chapter 11 bankruptcy protection and looks like it will go out of business. The lesson that could have been learnt is that these frivolous patent claims cost everyone money and to proceed you would want to be quite sure of wining, even though the lack of disclosure indicates they aren't really that sure.
It all adds a lot of weight to the argument that the patents system needs drastic reformation for use with software, which is re-used as a general development practice. Until this happens patents will be used as a tools for revenue generation and most likely result in mutually assured destruction for businesses looking to (mis)use them for revenue generation purposes.
Labels:
biz
Subscribe to:
Posts (Atom)