Did you ever want to build a web application? Perhaps you even started down that path in a language like Java or C#, when you realized that there was so much “climbing the mountain” that you had to do? Maybe you have heard about web services being all the rage, but thought they were too complicated to integrate into your web application. Or maybe you wondered how deploying web applications to the cloud works, but there was too much to set up just to get going. In this course, we will explore how to build web applications with the Ruby on Rails web application framework, which is geared towards rapid prototyping. Yes, that means building quickly! At the conclusion of this course, you will be able to build a meaningful web application and deploy it to the “cloud” using a Heroku PaaS (Platform as a Service). Best of all, it will almost feel effortless… Really! “But wait”, you will say, “there is no way that we can build a useful application if there is no database involved. You need the data for an application to be useful.” Great point! But what if… instead of getting the data from the database, we get it from the internet by tapping into one of the web services out there that readily provides data needed by our application? “Ok, but that’s probably very complicated”, you will say. Take this course and you will be pleasantly surprised at just how easy it is!
A collection of data is often represented in an app in some sort of list. In this course we will learn about the popular Android component called ListView to display and interact with a list of items. We will also learn about RecyclerView, a newer, more efficient version of ListView. We will see how to use some default components as well as building custom lists with our own layouts and adapters.
In this course we will learn about a very common and important element of Android development: downloading data from the Internet! We will request weather forecast data from a free API provided by forecast.io. We will then parse that data (in JSON format) and display it in a single-page app. We will also see how to handle errors and situations when the network is unavailable.
In this course we will build a simple choose-your-own-adventure story app, complete with fantastic illustrations. We will model our story and introduce the Model-View-Controller pattern, and we will learn about getting input from users, displaying images, and using more than one Activity.
Being able to save or persist data within our apps is an important fundamental skill. It enables our users to save their work, remember their preferences, store all types of files for reuse, and more. These features are evident to some degree in almost every application. In this course, we will be learning about the different ways in which we can persist data in our apps. We will be creating an app which can make memes in order to learn about these different concepts. By the end, we will know what types of considerations come into play when developing an app with data persistence features.
Publishing your app on Google Play allows you to share it with users around the world, and maybe even make some money. Publishing your first app can be a little overwhelming, so this course will walk you through preparing an app and then publishing it on Google Play.
This project covers the very basics of Android development. We will build a simple app that will serve up some fun facts when you tap on a button. We introduce the Java programming language, a tool for Android development called Android Studio, and some very basic concepts of the Android Software Development Kit, or SDK. By the end you will have a good idea of how a basic app works, and you will be armed with the knowledge to start building more.
In this project we will see how to implement a clean and refreshing flat design for the Ribbit app from Build a Self-Destructing Message Android App. We will start out by implementing custom login and sign up screens, and then we will heavily customize the ListViews and the rest of the app, including using a custom theme and styles. Finally we'll add a few improvements to the app like pull-to-refresh in the Inbox and getting Gravatar images for users.
In the Self-Destructing Message app we will build on the concepts learned in previous Android projects to create an app that will allow users to send photo or video messages to other users that will be deleted once viewed. The app will be tab-based, meaning we will cover Fragments, and we'll dive further into layouts, list views, and the Activity lifecycle. The backend of the app will be built on Parse.com's popular cloud storage services, which will handle user accounts and file and message storage.
Using the right tools can make an Android developer's life so much easier. At Google I/O in 2013, a new Android IDE was announced named Android Studio. Currently available as a beta release, we will see how to get started and learn some helpful features that make it powerful and fun to use. Then we will take a look at a 3rd party emulator called Genymotion that is much faster and more responsive than the default Android emulator. And lastly, every developer should be using some sort of version control, even on small projects. We will show you how to set up and make changes to an Android project on GitHub.
These days, just about every software team says they are “Agile.” You will even find many job openings declare familiarity with Agile software development as a prerequisite. What can you do to become familiar with, and knowledgeable in Agile practices so you can hit the ground running with your next team? In this course, we will cover the Scrum model, a commonly-used flavor of Agile which is well known for its clear definition of team members’ roles and the activities carried out by the team. This course will give you an understanding of Scrum and how it is used by teams in the process of building software.
People want to use websites that load quickly, and every second counts. If a website takes more than 3 seconds to load, you can lose 40% of your audience. Every additional second in page response can result in a 7% reduction in conversions. In these lessons, we're going to take a slow website and make it load faster using front end performance optimization. By the end, you'll know many practical techniques that can speed up any website.
If you’re serious about pursuing a career as a software developer or designer, at some point, you will need to learn a version control system. A VCS is an important, but sometimes overlooked, tool that is essential for keeping all but the most trivial projects on track. In this course we'll talk about what version control is and how it works before covering the basics of one of the most popular version control systems available today - Git. By the time you’re finished with the course, you’ll be ready to start using Git on your next project.