Search This Blog

Wednesday, November 12, 2014

Officer Meeting 2: November 7 2014

Things discussed for the app: App Engine & UI by Isaiah and Colin (Colin was absent), Data Scraping by Andrew and Lauren, Databases by Tyler & Eric, and Data Structures by Gianluca and Eero.

App Engine and UI

  • We wanted to use Google Endpoints and Google App Engine, but Google App Engine is not what we had originally thought it to be. It does not convert code from Android to iOS, which is the main feature that we wanted.
  • It was suggested that we use J2ObjC, which can convert code from Java to objective C, but it doesn't convert UI. So, we might have to end up developing the iOS code ourselves. A secondary option is App Furnace.


App Furnace

  • You code it in C and App Furnace converts the code to Android and iOS.
  • More info is needed.

App Layout

  • One idea for navigation would be to have fragments across the top of the app that contain the content of the different categories, but that's more suited for full websites on the internet.
  • Another idea would be to have a grid of tiles, similar to the iOS home screen.
  • More layout options will be discussed in our next meeting when we make final decisions.

Apple License

  • We do need an Apple license in order to post an app to the iOS store. It's $99/year for any year you want to publish or update an app, but if you want to keep apps that you've already published up and not publish any more, it's free.
  • So, we should decide every year if Byte Club wants to purchase an Apple license to be able to code iOS during that year.


Data Scraping

  • Chrome Developer Tools
    • -xhr shows all of the places a website went to in order to retrieve data, so you can get the data from it.
    • So, we could use this to get anything that would be hard to scrape (calendars, directories, etc.).
  • Hopefully, we can turn the rest of the website into RSS Feeds so it would be easy to scrape it
  • Beautiful Soup also is an option for web scraping. It's a Python library that allows you to input a website and it gives you a mess of tags (hence the name) that you can sort out with its built in methods to get whatever you want from the website.


Databases

  • Databases are what you use when you have user data/news data to store.
  • It's basically an excel sheet that you can use queries to get info from.
  • You use keywords (which query the information) and the database will give you all of the resulting information that you requested.
  • Google Cloud SQL/MySQL is an option, but Dr. Murray might have a database available for us to use as well.
  • We also will need to secure any databases we use so that we can't be hacked with SQL injection.


Data Structures

  • We don't need much more than the local data structures that objective C and Java have.
  • We might use B+ Trees, which are a storage structure that make it easier to sort through large pools of data by ID number.
  • We also will have usernames and passwords for users so that we will be able to get demographic information on our users and let them customize the app for their needs.
  • We could also use Geo-Fencing to have the user be alerted when another user of the app is near.


Our next meeting will be on Friday the 14th.



Wednesday, October 15, 2014

Officer Meeting 1: October 10 2014

Things Discussed:
  • Mission Statement for Byte Club
  • Possible changes to Skyward / school tech in general
  • Groups for development of the school app
Mission Statement:

We talked about various things that need to be included in our mission statement for Byte club. The main sentences that we want it to encompass are listed here, but we haven't decided exactly what the mission statement should be (if you have any suggestions for an elegant mission statement that has all of these points, talk to a Byte Club officer / Ms. Reed / Dr. Murray)
  • Furthering our education in computer science
  • Using new computer science information to help the community.
  • Mentoring people in computer science (community or in the club).
  • Working on team skills.
  • Promoting computer science in the community.

Possible changes to Skyward / school tech in general:

We also talked about a few things for how Skyward could be made better by making some additions and changes. We also lightly talked about making a few things for the freshman or the guidance office.
  • Automating scheduling for guidance office (you would be able to sign up for a time on Skyward, and could just arrive at your confirmed time to meet with them)
  • Skyward itself -- some students have complaints about the new system. The UI in general isn't very easy to check point values for assignments with, as Skyward now prefers to just list the percentages that you got from assignments. You need to do more work to see how those percentages were weighted (whether your 100% was a 50/50 test or a 5/5 homework assignment)
  • An alert system for the freshmen. Since the students in ~2 years or so will all have laptops, we should be able to make a windows alert app for them. This would revolve around all the laptops being Windows, so we could easily enough make an app that connects to a server that would display alerts on the freshmen's computers for if something happens (if they have school or not, when important events are, etc.), similar to the Skyward emailing system that is currently in place.
Groups for development of the school app:

Finally, we discussed logistics of creating the school app. We discussed in layman terms what the different parts of the app are and how they interact with each other, but we don't know enough to create the app itself. So we created these subgroups listed below and are choosing a few people to look each of these up, become an 'expert' on it, and create a mini-Powerpoint / Prezi / etc. to explain to the other groups more in-depth how their part of the app works.
  • Data Scraping / Analysis
  • Storage Structures (think SQL / MySQL / NoSQL)
  • App Engine (Endpoints)
  • Database Management
  • UI (within UI: Sound, Art, and Look)

After discussing this meeting, we promptly adjourned and haven't decided on the next time to meet (we're probably going to meet bi-weekly on Skype or in person).

Monday, October 13, 2014

Meeting 1: October 1st

     This meeting was held to relay the profits of our fundraiser, and to allow club members to break into teams and begin brainstorming on the projects they want to pursue during the year. We made $289 in profits from the gaming tournament we hosted at a school-hosted fair and it was announced that we were invited to hold another tournament at a school lock-in during the spring. After this, we broke into groups and began brainstorming. Each group had 3-5 members and some very creative ideas were thrown around. Some were games using Leap Motion technology, some were Android apps for practical or entertainment purposes, but all were unique and accomplishable. In our next meeting, we will start each group off with ways of planning their project out.