-
Notifications
You must be signed in to change notification settings - Fork 876
Frequently Asked Questions
-
Why aren't the MOOC in the MoCCA Specialization identical wrt programming testing procedures?
The MobileCloud course covers very different material from the two Android courses and thus has a completely different set of test infrastructure.
-
Why are the videos arranged in descending order by week on the POSA MOOC Coursera site?
The videos on the POSA MOOC Coursera site are arranged in descending order (i.e. latest week first) so that students who are following along week-by-week can quickly find the latest videos to watch. If you want to watch the videos in ascending order (i.e., from first to last) please go to my YouTube MobileCloud MOOC 2014 playlist, which has the same content in a different order.
-
What is the naming scheme for the videos?
The videos are named in order according to the Section, Module, and Part they appear, which corresponds to the Course Syllabus rather than to the week in which they appear (since each new offering of the MobileCloud MOOC will likely have a different mapping onto weeks, so that information shouldn't be encoded into the names). The optional lectures may not correspond to this naming scheme since they aren't officially part of the MobileCloud MOOC. If you want to store the videos locally on your computer in a different order (e.g., by week) feel free to rename them when you download them.
-
Who will define the projects implemented in the Capstone Projects Course?
These projects will be defined by the instructors. There will be 2-4 projects that students can choose from. The reasons for this approach are to (1) enhance the consistency of the projects with respect to their difficulty, (2) ensure a critical mass of students for each project who can serve as peer assessors, and (3) avoid complex legal issues associated with intellectual property. Please note that students will own the copyright on their solutions, but their solutions must be available in open-source format to enable peer assessment.
-
What are the expectations and policies for postings on the online discussion forums?
It's important to read, understand, and follow the Coursera Forum Code of Conduct. Rants and flames (such as "Android sucks," "Language X is better than Java," "Patterns are bad," or "I hate these lectures") will be ignored and/or removed since they generate much more heat than light and disrupt the learning process. Moreover, insulting, condescending, disrespectful, or abusive postings will not be tolerated and may result in students being removed from the course.
-
Can students do extra assignments to improve their grade?
No, there will be no extra assignments.
<LI> <B> What are the course objectives?</b>
<P>Upon completing this course, students should be able to:
<ul>
<li><p>Understand the HTTP protocols and understand how to build applications that leverage it.</p></li>
<li><p>Build cloud applications that allow mobile clients to interact with them via HTTP.</p></li>
<li><p>Demonstrate basic knowledge of the security issues surrounding cloud applications and key considerations to build more secure cloud applications.</p></li>
<li><p>Create mobile applications that interact with cloud applications through HTTP.</p></li>
</ul></P>
</li>
<li><b>How does this MOOC compare/contrast with courses at
Vanderbilt?</b>
<p>The material in this MOOC is based on senior-level
undergraduate courses we teach at Vanderbilt, such as the
CS
278</a> course, which focuses on teaching software engineering
through mobile cloud computing. Students in
this course are expected to be (1) familiar with Java, Eclipse, and source code control systems,
and (2) capable of learning new material without significant
hand-holding by the teachers and course staff. The quizzes, programming assignments, and degree
of feedback for the Vanderbilt courses are different, however,
since the courses at Vanderbilt only have several dozen students (instead of ~50,000 students), so
the assignments are much more challenging and there's significantly more personalized guidance and in-depth assessments from the
teachers and course staff that can't be replicated in a MOOC (yet).</p>
</li>
<li><b>What are your assumptions about--and expectations
for--students taking this MOOC?</b>
<p>As mentioned in FAQ item #2 above, this MOOC is based on material we teach to
senior-level undergraduate students at Vanderbilt. This
material is intended for self-motivated students who
<ul>
<li> Know Java, Eclipse, and Git (or can learn them quickly on
their own)
<li> Want to understand both the concepts and
practice of developing cloud applications with Java
<li> Are willing/able to carefully read/follow the instructions in the course assignments and
announcements.
</ul><p>
Students who are just interested in vocational training (e.g., having an instructor walk through application code projects step-by-step and line-by-line in the development environment) may not find this MOOC suitable for their needs since our goal is to help students learn techniques and methods for finding solutions, not simply spoon-feeding the solutions . Moreover, this MOOC covers certain topics associated with engineering quality software development that may not be of interest to students who just want training on the Java APIs.
Likewise, students who don't have time/interest in following the instructions/announcements carefully are welcome to take this MOOC, but they will need to adjust their expectations since the course is not designed for them.<p>
</li>
<li> <b>What is the most effective way to learn material covered
in the course and to successfully complete the programming
assignments?</b>
<p>We recommend watching the videos multiple times, looking for
different levels of meaning in the diagrams and the
examples. It's particularly important to carefully watch all the
videos referenced in the programming assignment descriptions
since they provide many relevant tips and insights. Likewise, we
recommend reading the material pointed to by links in the
slides, as well as material from the (optional) recommended
reading. Naturally, participating in the online discussion forum
(and ideally, a meetup group if one is available in your area)
will help make the course material more engaging and
personalized. Additional discussions of the programming
assignment goals, requirements, and (ultimately) their solutions
will be covered in "Virtual Office Hours" (see the FAQ entry on
this topic below).</p>
</li>
<li> <b>Can students take this course if they have little/no prior
experience programming Android and/or Java in Eclipse?</b>
<p>Our course assumes that students are comfortable programming
in Java and have some experience using
Eclipse. If you don't have any Java programming background you
might consider taking the course <a
href="https://www.udemy.com/java-tutorial/">Java for Complete
Beginners</a>. Likewise, you might also benefit from the <a
href="https://www.coursera.org/course/androidapps101">Creative,
Serious and Playful Science of Android Apps</a> MOOC, which is
a novice-friendly introduction to computer science and
programming Android-apps for smart-phones and tablets. No
prior programming knowledge is necessary for that MOOC. We
also recommend that you take Professor Adam Porter's MOOC <a
href="https://www.coursera.org/course/android">Programming
Mobile Applications for Android Handheld Systems</a> since his
course provides important coverage of Android app programming
that will be useful in our course. We encourage you to apply
the <a
href="http://kircher-schwanninger.de/michael/publications/LazyAcquisition.pdf">Lazy
Acquisition</a> pattern in these MOOCs, i.e., watch the
videos, keep track of what you know understand, and then use
the resources available to you (e.g., via the web and the
discussion forums) to fill in the gaps in your knowledge. One
of the best things about MOOCs is that you can go through this
material at your own pace, and there's really no penalty for
retaking a MOOC if you struggle with it the first time
through!
</p>
</li>
<li> <b>What is the course staff policy for monitoring and
answering discussion forum threads and questions?</b>
<p>The course staff will endeavor to reply to thoughtful
technical questions or constructive suggestions for improving
the course. Often, the responses will point to other resources
(such as this FAQ or to video lectures) so that students can
learn the details of the solutions on their own, which is more
effective pedagogically. Questions posted anonymously will
receive less attention since we want to get to know the
students in the MOOC so the learning environment will be more
like a face-to-face course. Due to extremely limited course
staffing resources, questions about installing or using
Eclipse, GitHub, the Android emulator, debugger, etc. will need to be
addressed by the community of other students taking this
MOOC. Step-by-step instructions on how to setup a
development environment using Eclipse, Java, Gradle, and GitHub are
available <a
href="https://class.coursera.org/mobilecloud-001/wiki/Installing_Eclipse%2C_Git%2C_and_Gradle">here</a>.
</p>
</li>
<li> <b>How many and what types of programming assignments will
there be in this MOOC?</b>
<P>We'll have 2
programming assignments in this MOOC. The
assignments will give students experience building web applications using Java
that can communicate with mobile devices. The assignments will emphasize the
use of data formats, such as JSON, server-side frameworks, such as Spring Boot,
and mobile HTTP client frameworks, such as Square's Retrofit. Later assignments
will require building secure software that supports multiple user accounts.
</p>
</li>
<li> <b>How can students understand and learn the material in the
videos most effectively?</b>
<P>There is no one rate of speaking that's appropriate for all
students. For students whose native language is not
English--or for any students who find the rate at which the
material is presented in the videos too fast to comprehend--we
recommend that you decrease the rate at which you play the
videos to 0.8x or slower (naturally, for material that you're
already familiar with, you might want to increase the rate at
which the video plays!). If you need instructions on how to
change the rate of playback speed for YouTube videos please do
a google search for information about the browser that you're
using. Once the MobileCloud MOOC starts you'll also be
able to download the videos and use the media player on your
computer to obtain fine-grained control over the playback
speed. The Coursera platform also provides English subtitles
for all the videos based on the scripts we used to record them
originally. In addition, downloading the code samples that are designed to accompany the lectures and reviewing them prior to watching the videos may aid
with comprehension. Finally, students might also consider
watching the videos multiple times, focusing on different
aspects of the material each time (e.g., listening to the
voice track, looking at the code and diagrams,
etc.).
</p>
</li>
<li><b>Will there be a Statement of Accomplishment for students
who complete this class?</b>
<p>Yes. Students who successfully complete the quizzes and
assignments in this class <u>prior to the completion of the
MOOC</u> will receive a Statement of Accomplishment signed by
the instructor. There will be two levels of Statements of
Accomplishment: Normal Track and Distinction Track. The
difference between the work performed in each of these tracks
is covered at the Coursera website <a
href="https://class.coursera.org/mobilecloud-001/wiki/Statements_of_Accomplishment">here</a>. You
needn't be in the Signature Track to get a Statement of
Accomplishment with Distinction, though you do need to be in
the Signature Track if you want to be eligible to take the
Capstone project course, as described in the next FAQ entry
below.
</p>
</li>
<li> <b>Who is eligible to take the Capstone project course?</b>
<p>Like all Coursera Specializations, the Capstone project
course is only available to students who take the Signature
Track for the preceding three MOOCs in the
Specialization. Moreover, for this first offering of the
Mobile Cloud Computing with Android (MoCCA) Specialization
only students in the Signature Track who receive a "Verified
Certificate with Distinction" in all preceding MOOCs are
eligible to enroll in the Capstone project course. We may
remove this restriction in future offerings of the MoCCA
Specialization, after we have a better understanding of what's
required to successfully complete the Capstone project
course. Even if you didn't attain a Verified Certificate with
Distinction in Professor Porter's 1st MOOC in the
Specialization, you are still welcome to attempt a Verified
Certificate with Distinction in the 2nd and 3rd MOOCs in the
Specialization. If you succeed in attaining the Verified
Certificates with Distinction in these two MOOC all you'll need
to do is take Professor Porter's 1st MOOC when it's offered
next, at which point you'll be eligible to take the next
offering of the Capstone project course (i.e., not the one
that's starts in October 2014, but the next one after that)
once you'll successfully attain a Verified Certificate with
Distinction in all three MOOCs.
</p>
</li>
<li> <b>What is a "trans-institutional MOOC Specialization"?</b>
<p>This MOOC and two other MOOCs (<a
href="https://www.coursera.org/course/android" title="Link:
https://www.coursera.org/course/android">Programming Mobile
Applications for Android Handheld Systems</a> taught by <a
href="http://www.cs.umd.edu/~aporter">Professor Adam
Porter</a> from the University of Maryland and <a
href="http://www.coursera.org/course/posa" title="Link:
http://www.coursera.org/course/posa">Programming Mobile
Services for Android Handheld Systems</a> taught by Douglas C.
Schmdit from Vanderbilt University) have been designed to
complement each other as part of the Coursera Specialization
on <a
href="https://www.coursera.org/specialization/mobilecloudcomputing/2"
title="Link:
https://www.coursera.org/specialization/mobilecloudcomputing/2">Mobile
Cloud Computing with Android</a>. In particular, the
programming assignments and the course project for all the
courses will be coordinated. Additional information on our
trans-institutional MOOC Specialization is available <a
href="http://www.youtube.com/watch?v=JSkvChTSanM" title="Link:
http://www.youtube.com/watch?v=JSkvChTSanM">here</a>.
</p>
</li>
<li> <b>Is it necessary to take Prof. Adam Porter's or Doug Schmidt's MOOCs prior to
the MobileCloud MOOC or can students take the MobileCloud MOOC without
taking his course?</b>
<p> It's not required to have taken the other MOOCs. If you
just want to take some of the courses in this sequence--or
take them all in different order--you're certainly welcome to
do so, and you'll still learn a lot. You do need to be
familiar with core Java topics or you'll be lost (see FAQ item #5 about for
suggestions on what you'll need to know and how to learn
it). Naturally, if you take all
the courses in this sequence in the order presented you'll
gain a deeper, end-to-end understanding of handheld systems,
their applications and services, as well as their integration
into the cloud.
</p>
</li>
<li> <b>When will the course material be made available each
week?</b>
<p>All the course material (e.g., video lectures, quizzes,
programming assignments, etc.), for each week will be made
available at least three days early (i.e., by Fridays) by 9am eastern
time (2pm UTC/GMT) so that students can watch and read the
material over the weekend prior to the beginning of the next
week.
</P>
</li>
<li>
<b>Is there a required textbook?</b>
<p>There is no required textbook, per se. There's lots of
information available in the videos and the URLs
in the course wiki pages that will help you learn the material
we cover in this class.
</p>
</li>
<li><b>Where can students learn about how to configure their
Android and Java environment to run the examples and complete
the programming assignments?</b>
<P>The MobileCloud MOOC will use an Eclipse-based
development environment with Gradle. Detailed step-by-step
setup instructions and screencasts are available <a href="https://class.coursera.org/mobilecloud-001/wiki/Installing_Eclipse%2C_Git%2C_and_Gradle">here</a>.
If you're using a non-Eclipse development environment (such as
<a
href="http://www.jetbrains.com/idea/features/android.html">Intellij
IDEA</a>, a different version of one of the tools other than the official one,
or want to use a different build tool (such as <a
href="https://code.google.com/p/maven-android-plugin/">Maven</a>)
you'll need to enlist the help of other students on the online
discussion forum and/or the MobileCloud MOOC <a
href="https://share.coursera.org/wiki/index.php/Posa-002:Main">Wiki</a>. We expect
all of the code examples and assignments to work with other tools, but we have
not tested them with them and thus they are not officially supported in the course.
</p>
</li>
<li><b>Which web browsers are recommended</b>
<p>Coursera recommends using the Chrome and Firefox
browsers. There's also a <a
href="http://help.coursera.org/customer/portal/articles/1364448-mobile-faq">mobile
app</a> for Coursera MOOC, as well.
</p>
</li>
<li><b>Can students use programming language [X] or framework [y] for the
course?</b>
<p>The programming assignments and autograding infrastructure are
designed for the Java programming language.
If you stray from Java you'll have more work to
do to map what we're covering in the videos and projects to
the languages you want to use.
</p>
</li>
<li> <b>Where can students download the slides and source code
that are presented in the videos and the skeletons that are
provided for the programming assignments?</b>
<p>Since I use a lightboard, there are no slides for the course. All the
source code examples and skeletons for the programming
assignments will be available in this <a
href="https://github.com/juleswhite/mobilecloud-14">GitHub
repository</a> once the Coursera MobileCloud MOOC
starts. A "cheat sheet" for using Git is available <A HREF="https://training.github.com/kit/downloads/github-git-cheat-sheet.pdf
">here and step-by-step instructions for using GitHub are available here and a video explaining the basics of Git and GitHub is available here.
<li><b>What is the schedule for the course?</b>
<p>This MOOC, like all Coursera MOOCs, uses pre-recorded videos
for all the lecture material. As a result, there's no set time
when the class occurs, e.g., you can watch the videos at a
time and a pace that is most convenient for you. There will be
periodic programming assignments that will have a deadline,
which will be clearly marked on the <a
href="https://class.coursera.org/mobilecloud-001">MobileCloud MOOC
website</a> in the <a
href="https://class.coursera.org/mobilecloud-001/api/course/calendar"
title="Link:
https://class.coursera.org/mobilecloud-001/api/course/calendar">course
calendar</a> by clicking on the calendar icon next to the
"Upcoming Deadlines" label. This calendar is automatically
updated as the material is released. For the required material, there will be
weekly quizzes, released by the beginning of each week, though
their due dates will all be the last day of class so you can
take them as time permits (naturally, there won't be any "late
dates" for quizzes since they are due the last day of
class). Finally, we'll have periodic "virtual office hours,"
where I'll answer questions from students and lead impromptu
discussions with students live via Google Hangout and
YouTube. All these virtual office hours will also be recorded
and uploaded to the Coursera website so you can watch them at
your convenience.
</p>
</li>
<li> <b>What are the plans for
offering the MoCCA Specialization again in the future?</b>
<P>We are planning to re-offer the MoCCA Specialization starting
with Prof. Porter's MOOC on <a
href="https://www.coursera.org/course/android">Programming
Mobile Applications for Android Handheld Systems</a> towards the end of September
of 2014. For those
students who haven't yet achieved a Verified Certificate with
Distinction in Prof. Porter's MOOC, this will be your next
chance to become eligible for the next Capstone project course. The other MOOCs in the Specialization will most likely be offered again in the Spring of 2015, though we may split them up into smaller MOOCs focusing on targeted topics related to (1) Java Concurrency, (2) Android Concurrency and Communication, (3) Android and Cloud Security, and (4) Cloud Computing. As soon as these plans are finalized we'll post
an announcement with the start dates and detailed schedule.
</p>
</li>
<li> <b>How long will the course material be available online
after the MOOC ends?</b>
<P>We plan to keep the videos, presentations, discussion forum
postings and responses, etc. available indefinitely. Future offerings of the MOOC will use different locations for the videos and source code, so the existing material should still be available at the existing locations.
</p>
</li>
<li><b>Will there be much flexibility in the schedule of deadlines
for programming assignments in the MobileCloud MOOC?</b>
<p>All assignments are autograded and can be turned in any time before the end of the course.
</p>
</li>
<li><b>How closely aligned will the
programming assignments be between MOOCs in the MoCCA
Specialization?</b>
<p>A project in each MOOC in the
MoCCA Specialization will involve adding capabilities to the
iRemember app. The instructors for all the MOOCs are working
together to ensure the iRemember project is properly aligned,
though it won't be necessary to have completed the previous
iRemember project(s) in a given MOOC. Moreover, the other
programming assignments in their MOOCs will reflect the focus
of their respective MOOCs since (1) the topics are largely
different in each MOOC and (2) there's no requirement that
students must take the MOOCs in a particular sequence, so
inter-MOOC dependencies will be minimized.
</p>
</li>
<li><b>How will the programming assignments be submitted and
assessed?</b>
<p>All of the assignments will be autograded. Each assignment will include a Java application that can be run to locally autograde your solution and estimate your score on the assignment. The application will also create a submission package with your code that can be uploaded to Coursera. The submission package (a zip file with the correct source files) must be uploaded to Coursera -- running the local application only estimates your score and does not submit it. Each assignment will include detailed submission instructions that must be followed in order to receive credit for assignments.
</p>
</li>
<li><b>How can students help improve the
form and content of the video lectures?</b>
<p>Please leave your constructive comments and suggestions for
improving the content of the video lectures in the discussion
forum entitled <a
href="https://class.coursera.org/mobilecloud-001/forum/list?forum_id=8">Lectures</a>. The most useful
suggestions are ones that help us improve the technical
accuracy and quality of the material, rather than just
commenting on the presentation format and style. Although
there may not be time to address these comments for this
offering of the MobileCloud MOOC, we'll consider them for future
offerings. Also, if you spot any typos or
problems with subtitles for the videos please note them <a
href="https://class.coursera.org/mobilecloud-001/forum/list?forum_id=10005">here</a>
so we can fix them.
</p>
</li>
<li><b>How can students keep
informed about important due dates for assignments?</b>
<p>Once the 2014 MobileCloud MOOC has officially begun (in late-July),
there will be a calendar of events listing the due dates,
etc. Likewise, reminders will be posted periodically to the
Announcements page (and thus disseminated via email to all
enrolled students). Ultimately, however, students are
responsible for keeping track of the deadlines and procedures
related to properly submitting the MOOC assignments. Given
the large number of students enrolled in the MOOC, there will
be little/no support for individual extensions or special
handling of late or improperly submitted solutions to the
assignments.
</p>
</li>
<li><b>How many hours per week will be required for the MobileCloud
MOOC?</b>
<p>There's no 100% accurate way to estimate how long any given
student will require to watch the videos and complete the
quizzes and assignments each week since each person has
different background, aptitude, motivation, learning style,
etc. Moreover, some students are doing the "normal track" and
others are doing the "distinction track". With that caveat in
mind, please see <a
href="https://class.coursera.org/mobilecloud-001/wiki/Statements_of_Accomplishment">this
link</a> for rough estimates of how much time <i>may</i> be
required, depending on which track a student is
doing. Cloud services are not an easy topic to master, however, so
if doing the material assigned for the "distinction track"
consumes an excessive amount of time please consider switching
to the "normal track", which requires much less work since
there are no programming assignments.
</p>
</li>
<li><b>What are some consequences of the "massiveness" of a MOOC?</b>
<p>The massive number of students in the POSA MOOC (50,000+)
impacts some aspects of the course that differentiate it from
a traditional face-to-face courses, such as the courses the
instructors teach at Vanderbilt and the University of
Maryland. In particular:
</p>
<ul>
<li><p>The POSA MOOC course staff will not be able to provide
individual feedback on student assignments, though we will
present our solutions to the assignments in the weekly
"virtual office hours". If
you run into problems feel free to post your buggy code to the
appropriate <a
href="https://class.coursera.org/mobilecloud-001/forum/list?forum_id=3">assignment
discussion forum</a> so that other students can provide you
tips on fixing your bugs. Please don't post working solutions
to the discussion forum, however, since that violates the
Coursera Code of Conduct. </p></li>
<li><p>Some things will inevitably go awry, e.g., unit tests
will need to change, students will forget to add their source
code when they submit their solutions, important deadlines
will be missed due to unforeseen circumstances, assignments
will be modified after they are released, etc.</li></ul><p>Due
to the massive number of students--coupled with the very
limited course staff--it's unfortunately sometimes the case
that the instructors won't be able to "make it right" in a
manner that makes everyone happy. In these situations, our
goal is to maximize the opportunity for as many students as
possible to gain access to a world-class education. Other
considerations (such as consistency, fairness, and
accountability) are also relevant, but our first priority is
to help empower students with an education that will improve
their lives.
</p>
</li>
<li><b>What are "Virtual Office Hours"?</b>
<p>"Virtual Office Hours" provide an opportunity for instructors
to interact in real-time with students once a week on
questions about material covered in the video lectures,
quizzes, and programming assignments. Google Hangout on the
Air and YouTube are used as
the means to engage with students. Google Hangout
automatically records the office hour discussions, which are
then uploaded to the MobileCloud MOOC website so students can view
them offline if they can't make it to the live
events. Likewise, any questions post to the discussion forum
on <a
href="https://class.coursera.org/mobilecloud-001/forum/list?forum_id=10006"
title="Link:
https://class.coursera.org/mobilecloud-001/forum/list?forum_id=10006">Virtual
Office Hours</a> will be answered during the session.
</p>
</li>
<li><b>Can students use public source code repositories to store
their solutions to the programming assignments?</b>
<p>Please do not use public source code repositories (e.g., the
freely available GitHub accounts) to store your solutions to
the programming assignments. Publicly available repositories
encourage students to copy each others work, which is a
violation of the Coursera code of conduct that does not allow
students to share work unless explicitly instructed by course
policies.
</p>
</li>
<li><b>Why are there lecture
videos on YouTube and on the MobileCloud Coursera website?</b>
<p>The videos on YouTube and the videos on the Coursera site
should be nearly identical, but all videos must be approved by
Vanderbilt before they can be uploaded and published on the
MobileCloud Coursera website. We therefore release them first on
YouTube as we complete them so that interested students can
preview them and provide feedback so that any mistakes can be
fixed before they are released to the MobileCloud Coursera website.
</p>
</li>
<li><b>How can we fix the warning "There are no JREs installed in
the workspace that are strictly compatible with this
environment"?</b>
<p>First, check what version of JRE you have installed or you
have set as an environment variable JAVA_HOME or JAVA_JRE. If
you find out that you have installed java version 7 then you
right click on the project folder in Eclipse. Then
Properties->Java Build Path -> Libraries. You click on
JRE System Library and then the button Edit where you select
Execution Environment similar to the one you have installed on
your PC. Although you are welcome to use whatever version of
Java you'd like for your programming assignments, you need to
make sure that whatever you submit to be graded works with
Java version 7 since otherwise your solution may not work and
the autograder will deduct points.
</p>
</li>
<li><b>Since many of the assignments have been posted to GitHub
can we work on them prior to their official release?</b>
<p>You're welcome to work ahead on these assignments, which is
one of the reasons why we've put many of them out early.
However, some things are likely to change based on a number of
factors, such as feedback from students, improved JUnit tests,
bug fixes, etc. Although it's unlikely you'll need to do a
wholesale rewrite of your solution (mostly the JUnit tests
should get more thorough) until the assignment is officially
posted via the "Programming Assignments and Assessments" tab
you'll need to be prepare for some changes.
</p>
</li>
<li><b>How can I prepare in advance for the
Programming Cloud Services for Android Handheld Systems
course?</b>
<p>The course will cover a number of topics on HTTP
communication in Android and HTTP-based cloud services with
the Java Spring Framework. Before you start preparing for the
cloud course, ensure that you understand the concurrency
material from the POSA course, particularly AsyncTasks and
Handlers. Some helpful resources to get a jumpstart on the
cloud course are:
<ul>
<li><p>Spring's Building a RESTful Web Service guide (<a
href="http://spring.io/guides/gs/rest-service"
title="Link:
http://spring.io/guides/gs/rest-service">http://spring.io/guides/gs/rest-service</a>)
</p>
</li>
<li><p>Android's Connecting to the Network guide (<a
href="http://developer.android.com/training/basics/network-ops/connecting.html"
title="Link:
http://developer.android.com/training/basics/network-ops/connecting.html">http://developer.android.com/training/basics/network-ops/connecting.html</a>)</p></li>
<li><p>The basic components of HTTP (<a
href="http://www.jmarshall.com/easy/http/" title="Link:
http://www.jmarshall.com/easy/http/">http://www.jmarshall.com/easy/http/</a>)
</p>
</li>
<li><p>For other more advanced topics that are both within and
beyond the scope of the cloud course, Spring has a
comprehensive set of guides (<a href="http://spring.io/guides"
title="Link:
http://spring.io/guides">http://spring.io/guides</a>)
</p>
</li>
</ul>
</li>
<li><b>What resources can be used for the weekly quizzes?</b>
<p>You are welcome to use videos or presentation material when
answering the weekly quiz questions.
</p>
</li>
<li><b>What can we do if the audio is out of sync with the video
stream when viewed from the course website on Coursera?</b>
<p>You might try playing the videos at a lower resolution if
your browser supports this or downloading the to your computer
and watching them locally. Apparently, the videos on my <a
href="https://www.youtube.com/watch?v=ov4jGPYWp5U&list=PLyUlngzGzkztgTizxM6_zqiw8sRj7vBm0"
title="Link:
https://www.youtube.com/watch?v=ov4jGPYWp5U&list=PLyUlngzGzkztgTizxM6_zqiw8sRj7vBm0">YouTube
playlist</a> are synchronized better, so you might try watching
them (they are identical to what's on the Coursera website).
</P>
</li>
<li><b>What is an "Optional Lecture"?</b>
<p>Certain lectures are not counted towards your grade in the course
but may be useful to readers who want
to know more about cloud services. These lectures are marked optional,
which means that they may not be "quizzified" and questions
pertaining to them won't appear on the required weekly quizzes. Feel free
to watch them if you're interested and skip them if you're
not.
</p>
</li>