Free Blackberry PlayBook for Android developers

Blackberry | Tuesday February 14 2012 22:21 | Comments (0) Tags: , , ,

I recently got an email from a tech magazine I’m subscribed too. Usually they have interesting articles, and all the news in the world of Computers and Technology, as would be expected. However, in last weeks magazine, there was an interesting article relating to Blackberry and their flagship tablet, the PlayBook.

With the imminent release (at time of writing) of their OS2.0 software, Blackberry have decided to give away free (yes, FREE) PlayBooks to any developer who submits an app specifically for the tablet before the deadline. Since the new OS contains its own implementation of Android, which allows Android Apps to run pretty much natively, the offer was originally open exclusively to Android developers. However, with a flood of complaints from existing Blackberry devs, and some noise from iOS and WP7 developers, Blackberry decided to open up the offer to any dev, of any platform, who submits an app before the deadline. Originally the deadline was Monday 13th Feb 2011, but since they’ve had an overwhelming response (over 6000 new devs submitting at least 1 app) since last week, they have extended the deadline. Developers have until Wednesday the 15th of Feb to register as a dev, and until March 2nd to submit an app.

Blackberry PlayBook

There is a bit of small print, however. Not every app will be accepted, and qualify for the free PlayBook. The app has to be of sufficient complexity, and be deemed (by a human tester) to be something that people will be interested in. Examples of apps that will be rejected are: Web Browsers, shortcuts, themes/wallpapers and web apps. They’ll also reject apps with a single function like a “Fart Button” or Buzzer app.

Since I stumbled across this offer, I have submitted my Lotto App, which has been accepted. I even got the email asking for my shipping address, and expect the tablet to be shipped any day now, all for the one time fee of ZERO!! :D

For anyone looking for info, here’s the latest link with info on the deadline extension:

Free PlayBook offer extended

Technical Specs of PlayBook:
1Ghz dual core processor
1GB RAM
HTML5 / Flash 10.2
Proper multitasking due to QNX
7 inch screen
Weight: 0.9lb/425g
Width: 7.6/194mm
Height: 5.1/130mm
Thickness: 0.4/10mm

1080p Playback
3MP front camera
5MP back camera

New Android app: Medical Student MCQ App

Android | Saturday October 22 2011 18:08 | Comments (0) Tags: , , ,

So, after being bitten by the Android Publishing bug with my first app, the Irish Lotto helper app, it’s no surprise that I jumped at the chance to create a 2nd app, when the opportunity came knocking.

My 2nd app, which has just been published, is called Medical Student MCQ App.

The purpose of this app is to aid Medical Students who are in their final year of med school, by asking them a difficult multiple choice question (MCQ) once per day, for the entire duration of their college year. The theory behind it is if they can learn that one piece of information each day, then by the end of the year they should fair much better in their exams!

The idea for the app came about when my brother, who is an experienced paediatrician, asked me if it would be possible to make such an app. I responded positively and we decided to take it from there, with me doing the technical side, and him writing the questions.

For this to be as efficient as possible, I had to write a basic web form in PHP, using a MySQL backend. He could simply fill in the form with a question, 5 possible answers, a radio button representing the correct answer, and a textarea at the bottom for him to fill in the “tip”. The tip pops up when the user gets the correct answer, and gives them an expanded explanation of why the answer is correct.

Anyway, due to time constraints, we had to enlist 2 other doctors to help with the questions. This worked out well as now we have a team of 3 doctors, each with their own specialised field, able to write relevant and helpful questions.

On the client side, I had to choose between including the full database, or forcing the user to download the database on first run. I chose the latter, and for good reason.

Due to the number of questions, it is possible that errors could sneak in somewhere. Rather than releasing a new app version for each spelling mistake, and hoping everyone upgrades promptly, I thought it would be better to have direct control over the content they see every day. To achieve this, I have put in an “update” button in the menu, whereby the user can download the latest database at the touch of a button. This will include all the updated/refined questions, without forcing an app update through the market. Also, if we want to add new questions, or remove questions completely (maybe due to curriculum changes) I can do so through my little web front end that I built for this.

Medical Student MCQ app, available for 4 euro from the Android Market

The app is available now, for a small price of €4, and is available for download from the Android Market here:
Medical Student MCQ App

-Eoin

New Android app: Lotto Helper IE

Android | Saturday October 22 2011 17:49 | Comments (1) Tags: , , , , , ,

So, after dipping my toes in the Android water over the summer, I began working on my own app.

I took me roughly one month to do it, from start to finish. Admittedly, I slowed down once college started, but that’s to be expected since I did have to learn Python, and Django, as well as how to parse websites!

So, what does my first app do exactly? Well, its called Lotto Helper IE. It is an app to show the user what the most common lotto numbers are in the Irish lottery since its inception in 1988. I basically parsed a website with all the numbers, put them into an XML file, and from there I counted each number and sorted them in order. The problem with this method is that, in 1992 the Irish Lottery Commission added some new numbers, extending them from 35 to 38. The Bonus ball was also added. A few years later, the numbers were then extended to 42. Now, based on frequency alone, this would lead to inaccuracies, since the draw began in 1988 and some numbers were only added 4-6 years later.
To counter-act this, I’ve made a few tweaks. Firstly, I counted how many draws were missed by each new number. Then I subtracted that from the total amount. I could then work out an accurate percentage and sort the numbers by this.

On top of this, I have also added in support for the Euromillions. Similarly, I parse the numbers, store in XML, and then do some calculations. The result gives me an ordered list of the monst common numbers, and how many times they’ve come out.

On the Irish Lotto website, there is a number checker. I’ve checked my predicted numbers and they seem to be doing well. Over the last month, anyone who had played these numbers would have netted themselves over €30! Not bad for a free app!

Apparently, there is big business in betting shops where people can bet on number pairs to come out in each lotto draw. I’m hoping to extend the app to include a feature like this. In the meantime, I’ve a “stats” screen, which displays the raw data for each number in both the Irish Lotto, and the euromillions. I’ve a few hundred downloads so far, which is cool, ranging from Ireland, the UK, and America to Eastern Europe, China and even Brazil!

Lotto Helper IE available for free from the Android Market

My first personally publish app can be download, for free, from the Android Market here:
Lotto Helper IE

-Eoin

So I havent written much lately, neither has Shakespeare!

college | Saturday October 22 2011 17:30 | Comments (0) Tags: , , , ,

I think the last time I put up a blog post was about 3 months ago. During this time, I was working for a small start up company in Dublin, next to the Guinness Brewery! I spent the summer working doing mobile development. I started off doing Blackberry (J2ME) and then went on to do Android (J2SE).

During that time, I worked on 2 different apps. The first one was the blackberry port of THIS, which is the company’s flagship app. Nearer the end of the summer, I was moved on to Android development and given the opportunity to pretty much write my first full app. I didn’t make 100% of the app, but I made most of it. I had obviously worked with Android before, and made a couple of small apps in college, but this was the first one that I would have published to the market (under the company’s name, of course). The result, was iamhere. It also simultaneously got released in China, but since China and Google aren’t getting along too well at the moment, the Android Market is blocked over there. As a result, other methods of distribution were used such as uploading to the many 3rd party Android app websites that have sprung up in China as a result of no Market access. Last I checked, it had at least a few thousand users in China. However, that was over a month ago so I’ve no idea how many users it has now. Still though, its nice to know there are people in a distant part of the globe using something that you’ve made.

Anyway, since the summer, I’ve come back to college to finish my Honours Bachelors of Science Degree in Software Engineering in IT Tallaght. Its pretty challening so far, but I suppose nobody ever said a Degree was easy!

Another thing to mention is, in the final year, obviously, we have to do a project. IBM have an agreement with IT Tallaght that they’ll take the top 5 students every year and allow them to work in IBM for one day a week throughout the year. When I say “work in IBM”, I don’t mean that anyone is getting paid. Basically IBM have projects that need doing, and either they don’t want to do them themselves, or they see this as am early recruitment processes for the prospective graduates, but either way, each student gets assigned one of these projects. At the end of the year, if all goes well, the common thinking is that IBM will offer the new graduate a job. Since an interview is only roughly 30-60 mins, and this project last 8 months, I’m sure they’ll get a better idea of how good a worker the student is come graduation time. I’ve been lucky enough to be chosen for one of these projects.

For the next 8 months, every Wednesday, I’ll be out in IBM HQ in Dublin working on a project that will be used by everyone in IBM. I’ll be using Python, STAF/STAX, as well as some Database backend and other cutting edge technologies. I haven’t started yet, but I’m looking forward to it! Either way, if I don’t get a job after this, I’ll still have a few lines on my CV/Resume saying I worked in IBM for a year,and thats sure to get me any job I want! Or at least, I hope….

Blackberry CRC32 issues

Blackberry | Sunday July 3 2011 13:56 | Comments (0) Tags: , , ,

I’m currently a few weeks into my internship where I’m developing a new blackberry app for a small start-up company. One of the core features of this app is that it can communicate with a remote server. Anyone that knows anything about security will tell you that you simply cannot send these communications in plain text.

So, this week I’ve been working with encrypting strings and sending them to our server. The way we’re handling the encryption/decryption is by using a common method on both client and server side so that messages can be easily decrypted. Pretty common enough. But, in order for the client and server to tell if messages have been tampered with before the arrive at their destination, we also send a CRC of the string that we have encrypted. Once decrypted, we call the CRC method again and can tell if the data is as it should be.

Here’s where the problem arises.

Since the app is cross platform, we have to ensure that the CRC value gotten on a blackberry device matches that gotten on an Android device, not to mention the server will need to be working off the same algorithms. Initially you might think thats no problem because CRCs are universal. Incorrect. It took me a few days but I have realised that the Blackberry implementation of CRC32 is different to the Android and the Apache/PHP implementation. It was frustrating having the Android sending and receiving messages with ease, when my blackberry app was getting errors.

The Solution
Like all good programmers will tell you, there’s no point reinventing the wheel. It felt to me like that was going to be my only solution if I was to ever get this to work, but after spending way too long on this small piece of code, I decided to do what I should’ve done a long time ago….and that is to Google java.util.zip.CRC32 source (and java.util.zip.checksum) and copy and paste the source into a new .java file in my project! Basically the blackberry CRC32 code seems “broken” so why invent the wheel when I can just use the same “working” code that the others use!!!

After I did this, the code worked straight away. I didnt even have to rewrite the code too much because they all have pretty similar methods! Plus, my code is a little bit more “cross-platform” now for when we package all the common stuff into a JAR later.

Getting to grips with Blackberry

Blackberry | Monday June 20 2011 20:20 | Comments (0) Tags: , , ,

I mentioned previously that I’ve taken on an intern position with a company specialising in making child safety/security apps, and I’ve been given the role of developing the Blackberry version of the app. Well, after being in the job a few weeks now, theres some thing I’ve noticed.

The JRE version used to make Blackberry apps is JRE 1.3, which basically means no ArrayLists, no generics (the pointy braces , eg ArrayList) and no StringBuilder. The absence of StringBuilder isnt that big a deal since you can still use StringBuffer. There’s also no template classes, but I think thats more of a Java thing. Coming from a C++ background, I like to have Template classes instead of overloading where possible, but I suppose thats more of a preference, and not really a limitation.

I’ve also noticed that the simulators (not emulators ;) ) for blackberry can be very slow and memory intensive. Much like that Android emulators, they take forever to load up, but unlike that Android emulators, you can’t skip the boot animation to slightly speed things up. My laptop has 1GB of RAM, but I’ve ordered another 1GB off eBay so hopefully that speeds things up a bit. From what I’m told, RAM is more important than CPU speed here.

Also, there are 2 IDEs that are commonly used for Blackberry. There’s the Eclipse plugin, and then there’s RIMs own Blackberry JDE, built in Java. Both work fine but the one thing its missing is the ability to filter the console. In Android, you can filter by a tag or app name. In blackberry there is no such option, so your console outputs get lost in a sea of scrolling lines! The best workaround I’ve found is to get a plugin for eclipse, called grep console that highlights lines in a specificed colour based on text matching. So if you output to the console something like: MyApp::Error with database then the plugin can match MyApp:: and highlight it red, or whatever colour you choose.

Anyway, that’s just my initial observations and a newbie to the Blackberry world. Will keep updating here as I find out more.

I got my results!

college | Thursday June 16 2011 20:50 | Comments (0) Tags: , ,

After a long year of basically learning a brand new (to me) technology, I’ve finally gotten my results back for this project, and my other subjects too.

In my last post, I had finished off the geolocation code on the backend, which was basically all that was left to do on that side. The rest of the work was done on the front-end.

The complete list of features are as follows:

    Get the nearest 3 Dublin Bikes stations, with live info
    Get the nearest 3 bicycle lockup areas in the city
    Get the nearest 3 LUAS stops, with live arrival times
    Add favourite bike/LUAS stations

Now that I list them out like that, it doesnt really seem like there is a lot to the app, but I can assure you, there was a lot of work put into it! Honest!

My intention now is to create an Android equivalent now. Also, I’ve managed to get my hands on the coordinates of every Dublin Bus station in the city, so I might add buses to the app as well, since I can get live info off the Dublin Bus website. Clicking on a bus stop would mean it will display live Bus times, which could come in really handy. I might even release it to the market after that.

OH ye, and in case you’re wondering what result I got for this…..

I got an A!! :D

I now have my bachelor of science degree, which apparently makes me a scientist. My plan now is to go on and do the honours bachelors degree, and presumably become an “honours scientist”(?).

I’ve also a few projects I want to get done over the summer so I’ll continue with this blog, updating it with what I’ve learned from them.

See ya soon!

I got a job

Blackberry | Thursday June 2 2011 21:16 | Comments (0) Tags: ,

So I started a new job on Monday. Its an intern role with a startup company based in Dublin. Obviously my intention is to go back to college in late September/early October so its really only a summer job.
Anyway, the company deals with making apps. They’re making a security app for keeping children safe. Basically the phone uploads their coordinates to a server and the parents can see where their children are, as well as who they’ve been in contact with via phone or text.

There are 2 versions of the app, the android version and the blackberry version. I have been given the responsibility of making the Blackberry app. There’s an existing codebase there with bits of functionality but I’ll have to add most of it myself.

I’ll keep you updated on how the job goes.

Exam time

college | Tuesday May 10 2011 20:55 | Comments (0) Tags:

My exams start next week. I’m a little nervous to be honest. I don’t expect to fail anything and I’m pretty sure I’m guaranteed at least a bare bones pass degree based on my results from last semester and in-class tests during this semester, but still, its exam time! It always makes me nervous!

I’ve to go and get back to study now. I’ll update this blog after my exams, or when I get my results. wish me luck!

All finished!

college | Friday May 6 2011 21:04 | Comments (0) Tags: , ,

So I handed up the project the other day and I had my presentation today.
The lecturers seemed impressed with the idea and commented on the marketability of it.I’m not sure if any other app exists with this type of functionality, but I’m sure thats just because I havent looked hard enough!! In terms of marketing the app, I don’t think thats going to happen. JC Decaux have their own official app, and I saw an article where someone nearly got sued for just releasing a similar app, so I don’t want that hassle. I might change my mind in the future, especially if I bother with the android version!

The presentation went well anyway. I’ve to wait a month or so now for the results, but with my exams about to start next week, I’m focusing more on them for the moment!

Next Page »