Tag Archives: Android

To Set Sail or Not

So I am getting the programming bug again big time… I’ve had it for nearly a year now. It’s always been a higher level interest of mine. I’ve long wanted to be a game programmer… ever since the early 80s and it really took off in the mid 80s when we finally had a home computer, an IBM PCjr. I remember collecting Compute Magazine, which had full programs you could program in the computer… they gave you the full source code that you had to type in, and entering the code in and then tracking down errors, which universally meant typing errors then… but it was fun. I learned a little IBM Basica… which I think I did on my Tandy PC… I made a couple programs, or more like, modifications of programs from those in the magazines back in those days. But I never learned enough to do anything complex from the ground up.

In college, for whatever reasons, I skipped computer courses and steered to other directions, but at Brown Mackie, I did eventually move to get a Programming and Applications degree. The problem of course, was Brown Mackie’s format, and lowering to the lowest common denominator. So you had one month to each class, but if the slowest people couldn’t go along, then the whole class seemed to stall out, and we just never got far into our programming lessons. I wouldn’t feel comfortable searching out a job as a programmer based on what I learned there… heck, I could teach most, if not all the computer related classes I took there just as well if not better than we learned them. This isn’t to say I didn’t have some really good teachers, but they were held back by the text the school used, the slowest students and the format.

Anyhow, time goes on. I teach myself a bit more Visual Basic, some C# and enough PHP to fix a few issues off and on with the blog. I goof around with them some, but then stop around 2006. More time goes on and around 2008 I start looking at the idea of mobile development. iOS development looks to be out as it comes with a few obstacles, a new language or two (Objective C and possibly some COCOA), but the bigger issue would be needing a Mac, which is a rather large investment, plus in 2008 I had more faith in Android. Come 2010 I start looking at the market again, and the job options look good, and I start thinking again about my future as a programmer, and again focus on mobile development. I start really looking at the options, start thinking about focusing on Java (for Android) and iOS.. By 2011 I start looking at Full Sail University Mobile Development program which would give me a Bachelor of Science degree… now a year later I am again considering it.

The problem is a few fold… First I was really burned by Brown Mackie and how they were a rip off, and fear the same thing. Continue reading To Set Sail or Not

Okay I Have a G1, but I Could Still Use a Good Handheld GPS

I love geocaching with my G1 using GeoBeagle. It is a great phone with GPS abilities, and of course GeoBeagle is the best program out there for the Android platform for geocaching (plus, it’s free). However, there are times when you exceed the ability to use the program, especially if you need a map to find where to drive to and you are in an area not serviced by T-Mobile. Such was the case the other day when at the family reunion in Minerva.
There was an additional problem, I loaded my G1 up with the 500 caches nearest me, and they stopped just outside of Minerva. This was no fault of the phone, the program or anything other than there being too many caches close to me to include Minerva. I have since ran a search for Minerva and will add those to the list soon.
The big issue while there was the lack of a signal. I couldn’t find places on Google Maps as it requires a good signal, and I couldn’t find new caches in the area to add manually as I didn’t have a signal. At the moment, GeoBeagle doesn’t support offline maps, though it is on the feature request list. Of course even if it did, my lack of foresight wouldn’t have solved the problem of not having caches for the area loaded up. Once again we see the value of the lesson of what happens when you assume something. I assumed that the area would be covered in my 100 mile search radius, but it is just the first 500 in that 100 miles that the query pulls, and in this case I wasn’t loaded in from my full database, which probably includes Minerva already.
Anyhow, the offline maps issue and some others show the value of still needing a good handled unit.
To that end here is the list of handheld units I want… Continue reading Okay I Have a G1, but I Could Still Use a Good Handheld GPS

I Found My First Geocache Using My G1

I got a G1 recently. Great phone with a built in GPS. So now I can go geocaching.
First I got GeoBeagle (available on the Android Market) and it’s required application Radar. Then I had a moment to run accross the street from work… well okay, I drived across the bridge to the other side of the freeway… and went looking for the 77 Cemetery cache. I found it all right. Along the way I saw a baby bunny right next to the cache location, but I didn’t change to camera mode quick enough before he scampered off.
I have to say GeoBeagle works really well. Can’t compare it to the paid apps, but it does the job admirable.
Now to take Sara out with me soon.

A Good Reason Why Your Android Phone Should Have a Keyboard

There are some really cool Android phones coming out soon. The HTC Magic, the Samsung i7500 which has tons of onboard storage and a really cool screen, but both of those lack one key thing, a physical keyboard, with which you could use:

Okay before people get too excited, per the guy’s website, you will need a rooted G1 and have installed Debain on it. So it isn’t running through the Android SDK. Still very impressive.

Cool Android Application, Sky Map

Android, is a cool mobile phone (and laptop, etc.) platform. T-Mobile has the G1 out right now, and there are a couple more phones coming out soon from them, and we should see some coming from other carriers this year as well (probably not AT&T and Verizon as they don’t like not controlling the market, and Android opens things up too much, but they will support it if their customers demand it enough). Anyhow, I want one to do geocaching with… and add to the fact that my phone is 4 or so years old, it all adds to the fact it is time to start looking at a new phone.
I learned about a new application for the G1 and other Android devices. It is called SkyMap and you point you phone at a star and it will tell you what it is and more about it. If you want to find a star/planet it will tell you where to look for it. Video demo:

A MySpace, Facebook Application for the Google Android Phone

I talked how I was wanting to learn Java, so I could start making programs for the Android mobile phone platform.
A project that I thought of, but is perhaps beyond my ability for any time soon, is an application that will tie in with MySpace, Facebook and expendable to other social network websites.
Basically, it searches your friends lists, and if they have an Android phone as well and the location tracking feature turned on, you can see which of your MySpace/Facebook friends are nearby by using the Android’s built in GPS. There are variants I saw of this out there, but none I know tie in directly with the current social network, rather they setup their own networks.
Bes I can figure it, each user who has an Android device, sets up an application on their MySpace/Facebook page that detects when they enable the location feature on their Android. For privacy reasons, all it shows on the webpage itself is that location tracking is on. The back end of the application that the Friends can’t see, but the user can, allows them to block certain friends, or allow only certain friends to see their location.
If two friends have their location tacking enabled, then when they look at the application on their Android, it shows where they are via Google Maps. You can see in an instant if your friends are running late to meet you at the movie theater, or see when a friend arrives in town and a host of other cool features.
At the same time, there are the normal security concerns if some pervert is using a fake MySpace account to find young girls or something like that. I haven’t figured a way around that, but in all honesty I don’t know as if one does need to, since if they already got friended, they are already in, and as I said, the back end allows you to add only select friends to the location tracking, so hopefully that added level of security will be enough. Still the end user license would need to be written in a way so that the developer would assume no responsibility for abuse of the system. Personally, I would add a warning when they add friends to the location tracking that reminds them to be extra careful of whom they allow to track their location (this would be a dialog box that pops up each time, but would probably have a check mark so you could avoid the message next time). By default, it wouldn’t have any friends listed in the allow column.
Anyhow, that is the basics of it. I have more details floating around in my head.
Some of the variations out there currently (well, currently may not be the right word since Android itself isn’t out yet, but these are the ones that I know of in active development) that I know of:
Continue reading A MySpace, Facebook Application for the Google Android Phone

Learning Java

There is a phone platform coming out called Android, which is a project of the Open Handset Alliance. A number phone manufacturers are going to be making mobile phones based on the Open Handset Alliance specification, all of which use Android. To program for Android, you need to know Java, and so I am starting on a path of learning Java. I chose C# over Java eons ago as I was mostly interested in Windows programming, so Java’s ability to compile on one machine and run on many others, even if they weren’t Windows machines, be they Linux, Mac or whatever, wasn’t a concern. Most mobile phones use Java for their games and applications. Apple’s iPhone is cool, but to program for it, you have to have a Mac, so no programming for the iPhone. Plus the iPhone’s market is limited right now do to the exclusive AT&T deal (you can unlock the phone and run it on T-Mobile for example, but most people won’t go through that much trouble). nVidia has a chipset coming out, but for the moment, none of the Tegra based phones are for Android, but Windows Mobile based phones (and other handheld devices). nVidia is a member of the Open Handset Alliance, so they may support somebody making a Tegra based phone that conforms to the Open Handset Alliance and Android. This will be cool since they seem to have the best graphics of the phones.
There are a couple of caveats however as I embark on learning Java. First, while most Java programs can be ran on many platforms, this doesn’t seem to be the case with Android’s implementation. While the language itself is the same, you can’t compile a program that will run on both Android and say a Windows machine, another cell phone, or something like that, and vica-versa. The problem is they apparently use a different virtual machine to run on than all other implementations. They did this so it would run better on a mobile platform as I understand it. It isn’t clear to me, but it looks like since the language is the same, you could do two compiles, one for Android and one for everything else, but I may be wrong on that part… of course if you use Android specific APIs, then it won’t work on anything else.
Anyhow, I am presently staring on reading Head First Java, 2nd Edition (I am just borrowing that copy, so I don’t have a good hardcopy of my own yet…). Early into the first chapter we do an exercise where we do the “99 Bottle of Beer on the Wall”. The program compiles and runs fine, but, as they note, the output isn’t 100% correct. It took me a while, but I found it.
Continue reading Learning Java