Monday, October 31, 2011

Quick update

In case anyone is here looking for a new article, my grandma passed away two days ago and as a result I will be back to blogging only tomorrow :). In the mean time feel free to keep an eye out on my Twitter account @area51research since that'll be going live again.

Saturday, October 29, 2011

Android Developer Tutorial is Deprecated?

I've dabbled in Android development for some time having created a few homebrew apps for my personal usage including a small password en/decrypter. But I'm finally taking the plunge into pro development to expand my skill set. As I was going through the Notepad Tutorial on the Android SDK I noticed something strange in the final step for Notepad Exercise 1.

The code given in the Android Tutorial is

private void fillData() {
        // Get all of the notes from the database and create the item list
        Cursor c = mDbHelper.fetchAllNotes();

        String[] from = new String[] { NotesDbAdapter.KEY_TITLE };
        int[] to = new int[] { };
        // Now create an array adapter and set it to display using our row
        SimpleCursorAdapter notes =
            new SimpleCursorAdapter(this, R.layout.notes_row, c, from, to);

But when you check the documentation you find this.

public SimpleCursorAdapter (Context context, int layout, Cursor c, String[] from, int[] to)

This constructor is deprecated.
This option is discouraged, as it results in Cursor queries being performed on the application's UI thread and thus can cause poor responsiveness or even Application Not Responding errors. As an alternative, use LoaderManager with a CursorLoader.

The documentation for the LoaderManager isn't exactly the easiest thing to understand for someone who really is on their first day of Android (even if they have a decent enough a Java background) so maybe it would have been better to at least include a Notepadv4 exercise to cover this? Anyway I'm going to redo the Notepad exercise once I'm done up to v3 and I'll post the redone version using a LoaderManager.

edit - Upon checking again I realized the SDK version this applies to is actually one that is higher up than what I am using currently. Version 11 to be precise. Regardless of that they really need to update the tutorial. Maybe we'll see a tutorial fragmentation now.

Friday, October 28, 2011

Generating and Selling a Tech Business Idea

This is the recording of the presentation I delivered at Refresh Colombo where I discussed how to generate and sell a tech business idea. For those of you who may be reading this from abroad some of the views may seem overly simple but bear in mind that the crowd at Refresh Colombo is a very diverse one. It isn't just a geek community but it also includes a lot of people who just have an interest in how technology is finding its way into every facet of life today. If you are looking into how to sell the idea my suggestion would be to skip to the second video but as I say right at the start, generating and selling are not two concepts that live apart from each other. They are interconnected and move together.

The essence of my talk revolves around these key concepts

Stanford's AI Class: Unit 2 - Problem Solving (search)

Well it's mostly the absolute foundation of search algorithms but I still think it would be useful anytime as a refresher course for a lot of people. Stanford university lecturers have an odd habit of jumping about 5 chapters ahead into a topic yet to be discussed so you need to have some major patience to hang in there at times. Not so much in this unit but in the latter units you feel it a bit. Anyway. Here's the playlist compiled from the 2011 Stanford AI course (ongoing) Unit 2.

To keep up with more tech updates you can follow me on Twitter @area51research

Thursday, October 27, 2011

Apple Opens Up Lossless Audio Codec Under Apache License

Apple Lossless Audio Codec

From the welcome page

"The Apple Lossless Audio Codec (ALAC) is an audio codec developed by Apple and supported on iPhone, iPad, most iPods, Mac and iTunes. ALAC is a data compression method which reduces the size of audio files with no loss of information. A decoded ALAC stream is bit-for-bit identical to the original uncompressed audio file.

The Apple Lossless Audio Codec project contains the sources for the ALAC encoder and decoder. Also included is an example command line utility, called alacconvert, to read and write audio data to/from Core Audio Format (CAF) and WAVE files. A description of a 'magic cookie' for use with files based on the ISO base media file format (e.g. MP4 and M4A) is included as well.

The Apple Lossless Audio Codec sources are available under the Apache license."

Wednesday, October 26, 2011

Collection of inspiring videos to get you 'started up'

Need motivation on working on your startup? Been sitting around for weeks not able to ship that last feature out? Can't get started on shipping your first feature out???

There's an interesting thread over at Hackers News asking for some inspiring videos to get the thread starter motivated to work on his/her startup. Even Paul Graham took some time to leave a quick response to and others have left responses to some really good stuff I didn't know was out there on the internet.

I'll take the time to watch them and when I find interesting stuff I'll probably push it over to my techstopmuse tumblr and let you guys know. If you want to stay update follow me on @area51research for the latest in tech and science updates.

Oracle vs Google goes way past Halloween

Looks like I'll have to put the pop corn away as the trial between Oracle and Google gets postponed to a date that would be next year. NEXT YEAR! And I was hoping for a treat this Halloween. To be honest, having seen the charges and the documents I can't say I am in favour of Google and have been watching this trial intently because just like the solar flare activity a lot of people seem to be pretending these damages caused to Android by the patent battles don't exist.

The main point of this particular announcement is that the plan for the trial has to be presented in the following three stages.

1) Trial of copyright issues

2) Trial of patents

3) All remaining issues including damages and willfulness will be tried.

For a much more detailed look at how it will work do take a look at @fosspatents blog. (Oracle-Google trial postponed beyond the end of the year -

And pop over to Twitter and consider giving me a follow @area51research

Tuesday, October 25, 2011

Mild disappointment at Refresh Colombo

A little less than a week ago I was standing before the tech community of Sri Lanka at refresh colombo having just delivered my first public product demo of Project MADA and was feeling exhilarated. This product demo was the result of me having opened my big mouth at the previous meetup and suggesting that we have one person come forward every month to showcase their product. And of course I said as the person to suggest it that I would do the first product demo. Giving everyone else an extra month to get ready for their chance to demo.

So there I was standing in front of the crowd holding a mars bar in my hand and telling them that the mars bar would go to the first person to say they would step up to take the challenge next month. I knew we had plenty of web developers in there. I know we had plenty of people fresh from their degree with final year projects having been completed and could easily step up to demo them. But as I stood there almost pleading with someone to step up and take the challenge I realised even before I started the auction style count down that no one was going to come forward. And I said, "going once... Going twice... Remember what Steve said people.. real artists ship.. aaanndd... gone!"

The mars bar remained with me. I couldn't get myself to eat it since I so wanted to see someone take it. So I gave it to the newly married man in the house and asked him to share it with his wife. Something put to good use at least.

How about we have an idea session?

Looking back at it I suppose I should have seen it coming but we still got a suggestion on Twitter to give room for people with ideas to come present those as well. So I thought about it and it made sense. Two ideas being presented on the days where one product wasn't set to be present. And it makes sense because having worked with a lot of Sri Lankans on idea generation and refining I know a lot of us miss the point in designing solutions because we keep addressing the surface problems instead of the root cause. So it makes sense for people to come forward and get some serious step ups in creating viable business models that don't revolve around just an abstract concept.

That said... I'm still not entirely happy. And I wont be until I see someone creating something and actually showing it in front of the audience and even releasing it there. Let's look at the problems I want to see solved by this session.

Being able to give and accept direct constructive criticism

There's a big cultural barrier that needs to be broken down to get a silicon valley created in Sri Lanka and ons of the hardest factors to out is our inability to accept failure as something that can be respected. Especially after someone attempts something brand new. Even worse, the critics are happy when whatever they said would go wrong does go wrong. They berate people. And in many communities it becomes something that defines that persons future with him/her being considered unsuitable and far too unstable for a marriage. This is reality.

As a result we've ended up as a community that simply deals in services. Why do services match this attitude? Because in the case of services you let the client dictate the scope to you giving you the assurance that you are building something that will be used. Products on the other hand are one size fits all and are high risk along with the risk of being easier to compete against. The returns on being successful are immense and can be much more rewarding at a personal level. And of course products are what can really spur innovation on since it is the maker of the product that determines the direction that it should take.

The problem is that taking this risk is tough in our society so one should jump at taking the opportunity when there is a community just waiting to support you. At the same time we in the community aren't fully aligned towards respecting failure after serious attempts either. Maybe that's why people didn't jump at the opportunity either. Because that trust isn't there yet. Which is why I took up the first step and the community support feels awesome. More awesome than a lot of things have felt in a while. And I'm urging people to take a step forward. Chicken and egg be darned just get your act together in front of that crowd. You'll already be one step ahead.

The problem of all talk

I'm being realistic here. As a nation we have a fantastic environment of people who talk. Less people who talk sense but we have enough people who talk. We don't have enough action. I'm looking forward to people finally taking steps towards proving they aren't just critiques of ideas but people who can actually do. It's a serious cultural barrier that needs to be broken down.

Like I said. Having an idea session is excellent towards building problem solving skills. But if we are going to just stand there proposing ideas while the people with the idea don't get down to working on them it'll have all been for nothing. I speak from experience here with my only saving grace being that I insist that I am just an idea guy. But I'm doing something now right? That brings me to the final piece I wanted to fix using this session at Refresh Colombo.

Commit or be silent

Committing to something means that that's it. You are in it for the long run. Sure, maybe you won't succeed but committing ensures you won't go easy on yourself. This weekend thanks to work I've been a bit lax on my preparation towards making Project MADA ready to be taken online. And I'm sweating thinking omg. What am I doing? The only reason I'm taking time to write this blog post is that I feel its important to ask people to come forward. But back to committing.

The first step is always the hardest. The first bucket of ice water is always the hardest. Assuming one is sober the first of anything is always the hardest. Even if it's losing your virginity. And coming forward in front of a crowd and saying this is what I'm doing here's my plan and here's when you can expect to see this throws your subconscious into the deep end leaving you no choice but to either finish the product or just not
show your face around the community for a while.

Why this all upsets me so much

My dream is to help build Silicon Valley Sri Lanka someday. I have in fact spoken about this idea to several people including a potential investor and I've been told that the time isn't right. And I was upset about being told that. For me I saw things like Refresh Colombo happening and I wanted to believe that we are on the brink of disruption here. I was sadly proven wrong last week when I ended my presentation with no one taking the challenge. So here's my call out to people. You've been blessed with an opportunity that you've been pining for for years. It's very easy to say "great idea.. great initiative.. can't wait to see what comes out of this" but it takes guts to get up there and actually demo. Even more than an idea, demoing is tough. It's an incredible amount of pressure and most of Refresh Colombo that day is a haze for me because I was just thinking of what would happen when I present. Will my system throw that one exception error I know is still hanging around in the code? Will I click the wrong demo file and come up with a result I don't expect? You need to go through that for yourselves.

Please don't leave me with that Mars Bar again. You want to be somebody in this tech world? Quit reading the blogs of how some 21 year old is now worth oodles of dollars. It really is never too late to get a move on. But first you've got to start moving.

"Real artists ship" - Steve Jobs

Thursday, October 13, 2011


Do not ever edit a draft using Blogger for Android, press the home key without saving and then turn the phone off.

Imagine my surprise when I discovered it had deleted my previously saved draft as well :(

Edit - after publishing this post my 'deleted' post has reappeared :S

Tuesday, October 11, 2011

Change of plan.... Again

Along with some serious time management. As well as some division in purpose. My tumbr will be my musing about future technology. Mostly along the lines of what doesn't exist already. I'll be publishing more on that in the tumblr but do expect even sci fi stuff of nanobot battles.

This will be dedicated to both formal and informal tech posts on news and and just observations. So hope this works out. I've got some other news in the pipeline but I want to take this piece by piece. I keep getting overwhelmed otherwise.

In other news. I took on a guy from Google head on in a Q&A session. And he disappointed me. Very badly. Significant lack of innovation displayed. More on that soon.

Toodles till later.