Skip to content

BracketCove/AndroidOpenCurriculum

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Android Open Curriculum (Beta)

Table of Contents

Part 1: Preliminaries
Part 2: Android Project And Application Structure
Part 3: In Progress
Part 4: In Progress
Part 4: In Progress

Project Overview

AOC is an open source curriculum intended to provide Android Teachers and Students alike with a high quality learning resource for the platform.

Currently, this project has to primary goals:

  1. Create a concise but comprehensive curriculum which can be used by anyone to learn and teach Android Application Development.
  2. Translate this curriculum in to as many languages as possible, to support individuals who do not have such resources available in their native languages.

As for secondary goals:

  1. Avoid biases for particular languages, approaches, and APIs when possible; while still giving students/teachers relevant details in order to make a well-reasoned decision.
  2. Avoid explaining new concepts and technical terms, by using other concepts and technical terms that beginners are not likely to be familiar worth.
  3. Prioritize simple and clear explanations, backed up with simple and clear code examples.

Although avoiding biased explanations is a goal, you can be certain that contributors have their own preferences concerning topics such as Java versus Kotlin, or preferred API selections. Feel free to contact them for their opinions and knowledge on these topics.

Modules

There are currently three primary modules for this project:

  • curriculum contains the curriculum material
  • javaexamples contains Android/Java examples discussed in the curriculum
  • kotlinexamples contains Android/Kotlin examples discussed in the curriculum

Frequently Asked Questions (FAQ):

I really have no idea whether I should learn Java or Kotlin; what should I do?

As mentioned before, it is unreasonable to make absolute statements about which language is the best choice for a particular individual. The short answer is that both languages will provide you with opportunities to improve your skill set as a developer, get hired, and to build great applications. If you really intend on being a developer for any significant length of time, then you don't need to worry so much about which language you pick; go with what personally interests you (interest is tied to motivation and learning capacity).

With that being said, there is one very pragmatic concern for those of you who are looking to get hired as quickly as possible: What do the companies you would like to work for use? This information can often be gathered by looking at job postings for those companies, or even just politely asking via email what technologies and languages they prefer.

Can I use the material in this curriculum for teaching purposes?

Yes; that's kind of the whole point.

Project Administrator Note: If you create free educational content based on this guide, then I would be happy to feature this work for FREE via my Social Media Networks. If you are found to be repackaging this FREE educational content in order to sell it for your personal gain, understand that your actions will be met with the kind of response that is deserving of an immoral and selfish individual.

Contributing to the Project (How to help):

What kind of contributions can be made?

For more specific information of formatting, style, and content, please review the Contribution Guide

Translations:

While the educational content of this project will be monitored closely by core contributors, this project is in need of translators. If you are able to demonstrate basic competency in the subject matter, and you are capable of rendering this content in your native language, please do consider contributing in this way. Upon acceptance of your translation of at least one lesson full, you will be eligible to be featured in the contributors section of this repository. Contributors may submit a short personal bio, provide one link external link to a company/personal website, and provide as many links to approved Social Media accounts as desired.

Project Administrator Note: I would be happy to provide a personal reference for anyone who contributes successfully. References can be provided via email or Linkedin.

Lesson Content:

Before being considered as a contributor for the primary lesson content, you will be expected to possess:

  • At least one of: publicly viewable repositories which demonstrate your knowledge of the Android Platform and your respective language(s); and or published applications where you can explain and prove your contributions.
  • An ability to explain abstract and technical topics in a manner which does not require extensive jargon or nested technical definitions (or at least the foresight to point students to where they can find such details).

Proofreading:

Those who contribute a number of approved fixes for typing errors may also be eligible to be featured in the contributors section. It will take more than spotting a typo or two, but not much more than that.

Current Contributors are listed on the Contributors page.

About

Android Open Curriculum.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published