Wednesday, January 28, 2015

Android Developer or iOS?

     I can start off by saying that I am an big Apple user. It's funny because I use to fight with my brother about which was better, Apple's iOS or Google's Android. This was before I started developing for Android and I still fight with him about it, but I actually have the knowledge now to come up with factual arguments. At the time, I had never had an Android device so I guess you could say I was pretty ignorant, but after selling my iPad to get a Samsung tablet so I could be more "diverse", I still discovered that I was in favor of iOS.
     That being said, in the future I want to research more about developing for Apple. Currently, CHRONI only works for Android platforms and maybe if I can find blogs or articles about the "big switch" I can go about it more easily. We're still working out bugs in the app for Android, but there will also still be another person working with CHRONI once Joye graduates in May. Maybe by that time, CHRONI will work more efficiently with less bugs. 
     Someone did mention to me that there was a program that made writing for multiple operating systems so much easier. Upon more research I discovered Xamarin's cross-platform development tools. Still being new to the computer science field, I have much to learn, and most of the big chunks are programming languages. Android operates in Java, iOS in Objective-C (switching to Swift), and Xamarin's developing tools in C#. The question is, now that these tools make coding for apps so much easier, would it be better to just learn C#? I want to learn both regardless, but for timing, I want to learn what I will use most often right now. I honestly need more information, but I think I will start off with Objective-C or Swift. If CHRONI has already been made with Android Studio then there really isn't a huge purpose to remake it with Xamarin. I'm definitely going to look into Xamarin in the future because the whole cross platform thing is just super innovative. 

Thursday, January 22, 2015

Android Development Issues

     I have recently been having many issues with virtual devices and adding my own device for testing. Joye, the leader of our project CHRONI has been developing using her Nexus 7 for testing with API 19. Her tablet is working wonderfully with running CHRONI, but I have been having issues with running the program with anything besides her device. I currently have a Samsung Galaxy Tab S 8.4 and have been trying to test with it, but the program keeps crashing. What I am trying to work on is getting the program to work on different platforms. Currently, CHRONI only works on 7'' and 10'' devices. The program always crashes with virtual devices whether they are the right size, the right API or what. It's quite irritating to say the least. I need to figure out why these virtual devices keep breaking because I am not going to be able to test real devices. I don't have the ability to do so. At first I was using Nexus 7, Nexus 10, and other virtual devices in API 21. So then I thought, well maybe it's the API. So I checked the manifest and sure enough, the target SDK version was 20. I created more virtual devices with API 19 (there wasn't a 20) and tested them and they still failed. I'll figure out the problem soon enough, but I'm eager to see them running now.

Wednesday, January 14, 2015

Software Installation Can Be Tiring

     Today, I have been setting up my workspaces in the CIRDLES Lab. I've been trying to install Android Studio on two machines, but one gave me the biggest issues. It was saying that my login didn't have permissions nor space to download Android Studio (an IDE for Android development). After trying to work with this machine for three days (it had crashed the first day) I can finally say that it now works. I ended up having to delete my login account and create another one.
     Another problem I encountered downloading Android Studio yesterday was that it was saying that there was no JVM found, which I had no idea what it was talking about. I figured that it meant that my version of Java was out of date, but when I opened the terminal and entered the javac -version command, it said I had the correct version. So of course I hit stack overflow, checked out links related to the problem and users were saying that I had to go into the package contents of the program and edit a text document called Info.plist, but on further inspection I found that it might end up breaking my IDE and cause issues with updates. I'm not sure how I found the solution, but Apple support recommended installing another Java program. It worked and now I got it to download!
     I find it funny that I was having problems with the JVM message yesterday because in my java class this morning the professor went on about Java Virtual Machines and why they were important and more about IDEs (Integrated Development Environment) and JREs (Java Runtime Environment). It's just really awesome to see how all of this is connecting because I was using all of these thing last semester when I was taking Android App and Development, but I didn't really know the connections. I feel like I will learn a lot from my professor this semester in CSCI 221.

Tuesday, January 13, 2015

Oooh... The dreaded first post.

      Happy New Year! I am thrilled to say that I have started working as an undergraduate research assistant with CIRDLES at the College of Charleston. Yesterday was the very first meeting for me and I'm excited to be working with fellow students at CofC. Because it is only my second semester of freshman year, I don't know too much, but I am doing everything I can to learn more. Can I say something honestly? I am so nervous that I am going to do everything wrong.
     I do know though that it is really only my nerves. I am a good student who works hard to accomplish things so I'm sure I'll adjust and work fine with CIRDLES. At the moment I am working with two fellow students with CIRDLES to develop CHRONI, a mobile application that presents archived data downloaded from the Geochron database and is then put in a customizable format for use by geologists. For now I just have to keep on working hard.