Friday, January 20, 2017

Ionic Installation Issues Update

   After exploring the Github issues section of driftyco/ionic-cli, I found that many people were having the same issue (surprise). richardshergold suggested uninstalling cordova and ionic globally and then installing them again globally. Doesn't make any sense and there are still many deprivation warnings, but ultimately it worked. It really don't understand why a user would have to uninstall something they haven't even installed, but whatever. Nonetheless, the following commands fixed my problem:
   sudo npm uninstall -g cordova
   sudo npm uninstall -g ionic
   sudo npm install -g cordova ionic
I'm still not impressed with ionic's weird issues and all the scary depreciation warnings but one thing I love about it is the live reload emulators. ionic emulate ios -lr launches an emulator that can simply restart (r) extremely quickly whenever you alter your code and is so much faster than Android Studio's emulators ever were. Of course sass has to ruin everything because in order to compile the scss I've altered to css, I have to exit the program and run gulp sass then launch the emulator again which takes much longer than restarting it in the live reload. Me and ionic have a love/hate relationship but I still like it much more than anything I've ever used. I could explore Xamarin in the future, but I'll stay with ionic for now.

Ionic Installation Issues

   It's been a while since I've posted, but I am currently working on adding Ionic and all its dependencies to my new macbook. I have never had so many installation issues. I do remember ionic and cordova being a pain, but nowhere near as much as a pain as this is. Ionic currently lists these steps for installation:

Everything I do seems to have been deprecated since I first installed Ionic last summer. That being said, they have not updated their documentation in the slightest. I'm currently trying to write a read-me for CHRONI's Github page so users can download ionic and emulate CHRONI. I might as well be righting Ionic's documentation for them since nothing of theirs make any since. Even the deprecation messages make no sense. I'll try to post new information if I make any progress at all.

Tuesday, June 21, 2016

C4P Community Development Workshop

     Back in April, I was asked to attend a development workshop in Colorado. I had no idea what it was about, but my professor was going and he really wanted me to get this experience so I said yes. On Saturday the 18th, the day before I was to leave for Boulder, I get a call from Dr. Bowring telling me he could not go; however he still really wanted me to attend this workshop. I flew by myself from Myrtle Beach to Charlotte to Denver and then found my shuttle that would take me to Boulder and there I got checked in to the apartment style inn.
     At first I was pretty anxious about the whole thing because we were to split up into teams and create our own project. I had no idea what I was doing, but finally figured it out by 1pm. A small group of app developers sat next to me (who created Fly Overcounty check it out) so we formed a team together. We started building our project with Ionic, a cross platform app development framework which makes things much easier than separately making an Android Studio project and Xcode project.
     Because we've been having so much trouble developing CHRONI with Xcode lately, we've decided to switch over to Ionic. We will have the same issues with getting up to speed on how things work, but it has much better documentation. The other added bonus is that it has a MVC style work environment and is very similar to some of the work we did last semester in Server Side. Needless to say, this change will be easier to manage and won't make our heads explode.


Here is the article the department posted about C4P: Where in the World is CS Faculty

Sunday, May 8, 2016

Official App Release

     I'd like to announce that version one of CHRONI has officially been released on Github. I can't believe how far the app has come since I started developing it and I'm so excited to start developing it for iOS. It is not yet on the google play store, but hopefully will be soon in the next couple of days. Here is what the home screen of CHRONI now looks like:

Thursday, April 28, 2016

As Sophomore Year Closes...

     As of today, at 9:36, I am official done with my second year of college. Looking back over the semester, I have learned an immense amount of information. My programming style and thoughts on attacking problems has improved significantly. This semester I joined our computer science department's ACM club and started attending their programming jam sessions where my team, camel_case, won first place for a majority of the sessions. While this has helped me get better at my planned attack on problems, I owe a majority of my programming improvements to my Data Structures and Algorithms class led by Bill Manaris. These improvements include error handling, my stylistic choices for programs, and abstract data types. For one homework, I had to make a DNA molecule where I implemented a conjoined linked-list. Each index of the left helix had to point to the right helix and vice versa to form the bond between the nucleotides. While the exams for this class were very hard, they improved my knowledge even further. I was able to expand my knowledge while taking an exam which is not very common. Exams are designed to test what you know, but these exams challenged us to go even further. One question on my final exam was to reverse the items of a queue by using a stack. I definitely didn't understand what the question was asking on the test (it was worded very strange), but now it makes so much sense. Stacks have a method pop() that gets rid of top element and returns it's value. I could have simply populated the stack by dequeuing the queue (FIFO) and then setting the stacks values (LIFO). I could then repopulate the queue by setting each item to what is returned by pop() (the last one in is the first one out making it in reverse order once added back into the queue). I couldn't imagine being able to write ADTs for binary search trees, linked-lists, trees, stacks, queues before this class. There's much more information we didn't even get to cover in just a semester such as hash-tables, heaps, and others I don't even know exist yet. This is only the end of my second year at the College of Charleston and there's so much more I'll learn because of our great department.

Sunday, December 20, 2015


     I've started to work on developing the Chroni section of with Jekyll hosted by Github and it's been rather fun. I haven't done website development since my first year of high school (basic development at that) and Jekyll provides an easy way to do it. I am considering using Jekyll for my blog and will post if I do switch over to a new blog and its address, but for now it will remain the same.
     The Android version of Chroni is coming closer to a more complete version and I am hoping that by February I can start developing the iOS version. My next project after I finish adding the help section on the website is to start adding test cases. When I start with the iOS version, I will begin with adding testing so I can start with test driven development.

Monday, November 2, 2015

Major Academic Year Support (MAYS)

     Currently, I am working on a grant to fund my research with CIRDLES. Never in my life have I thought that I would eventually have to write a grant. My most brainiac brother would write grant proposals and get them and I thought, man he's so smart, look at his life. It never occurred to me that I might one day also apply for one. Even if it's not accepted, I think it's a big step in my life and could lead me in the right direction. I'm very excited to see how things will progress until my graduation. 
     Sometimes I think it was just luck. I came to college, a semester in started with a research team, and then another semester later took over the project I was working on. I constantly think of these things as luck, but in actuality, it was just me trying to do something for myself. I sought out research because I had mentors that assured me it was possible. These mentors have led me to want to mentor people myself. I want to do what they did for me. In the spring I'll be a peer facilitator for the Android App and Development FYE and I hope I can inspire them. I hope that I'll do for them what my peer facilitator did for me.