Learn Geographic Information Systems with geodjango

Learn how to create location based applicatons like swarm, foursquare or tinder.
3.1 (12 ratings) Instead of using a simple lifetime average, Udemy calculates a
course's star rating by considering a number of different factors
such as the number of ratings, the age of ratings, and the
likelihood of fraudulent ratings.
57 students enrolled
$19
$20
5% off
Take This Course
  • Lectures 22
  • Length 3 hours
  • Skill Level Expert Level
  • Languages English
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion
Wishlisted Wishlist

How taking a course works

Discover

Find online courses made by experts from around the world.

Learn

Take your courses with you and learn anywhere, anytime.

Master

Learn and practice real-world skills and achieve your goals.

About This Course

Published 12/2015 English

Course Description

We can add anything onto our standard databases and then search up queries like listing them in a particular chronological order or for instance, showing people who has a name starting with the letter a. But have you ever thought about how we save a particular location, more precisely, their latitude and longitude information by using queries? What about listing these queries from the nearest to the most far, most far to the nearest and everything else like searching up within a particular kilometer?

If the subject is location, we also need to learn how to use other data types as well as customary databases like pointfield or polygonfield.

What is a PointField?

Simply put, it is a type of data that we use to save the coordinates (latitude and longitude) of the users.

What is a PolygonField?

This is the type of data that you would need to use if you want to plot a particular area instead of just plotting a point on the map. Examples include: land, patch of an area, country, city, the area of a house etc.

Where can I use PointField? Where would it benefit me?

For example, when you check-in using the swarm app, the app will receive your latitude and logitude information where you have checked in at that moment. This information will be sent to their server and will be saved into the pointfield after being transformed into a point. Then your location will be shared with everyone instantly.

What else does Swarm do?

For example, when you are checking in, it comes up with some suggestions. For example, if you are eating in London in Burger King, and you have a Starbucks nearby, it will be suggested to you.

Here is an example of what the suggestions may look like:

  1. Burger King
  2. Starbucks
  3. London
  4. Others...

... but how does swarm know that you are near these places?

Because these are actually saved into the database of Swarm as a pointfield. So it's listing these localities from the closest to the most far. After you have learnt from these lectures, you will find it's really easy make such filters.

Additionally, you will also learn how to add limitations within a chosen quantity of kilometer . So you could request to show people for instance only within 10km in distance and list those from the nearest to the farthest.

Let's talk a bit about Tinder.

What does Tinder do? It shows you the nearest opposite sex. If you are not interested in the users nearby, it will show you someone else that is farther and the distance will gradually become higher. For example, if you are not interested in the people within 0.3km away, the distance will gradually increase to like 2km, 5km, 10km but for example if you are using Tinder in Turkey, you obviously won't see people who are in Germany.

Basically, Tinder saves your location into their pointfield and lists people who are the nearest to the farthest to your location.

Tinder also shows your distance to other users.

With these lectures, you will also learn these and how to calculate the distance in between two users using km's or miles.

Congratulations, you can now create apps such as swarm, tinder or foursquare.

So what else can we do?

Find my friends: you can make an app where you can find all your friends over a map.

You can create a special app where people can follow their girlfriends over a map.

You can create an app for rent a car type of businesses to follow the location of the vehicle.

For example, you can create an app for an employer who has a business that is usually done outside by an employee like working as a taxi driver. Usually, you would need an expensive GPS device for such things but you can simply make them download an app for their mobile phone and constantly watch their current location.

Not only these.

If you have a website about selling property (real estate) and instead of writing just the km2 of the house, you can show the location of the property on the map including its area giving more details. Who wouldn't want that?

Not only all of these, after these lectures, you will also learn about all the basics of Google Maps.

You will be able to show the people you have previously saved over google maps too.

You will gain knowledge about map markers.

You will gain knowledge about complex map markers.

You will see the photos which you have taken from the database as a marker and be able to add links to them.

I have learnt everything about Geodjango, learnt about the types of data, I understand Google Maps too, yes, but you talk a lot about the latitude and logitude information. Where can I find that information?

This is a very smart question. If you want to do this on web, don't worry, I also talk about the usage of the html 5 geolocation feature.

If you have a mobile app (objective-c for iOS and java for android) it is extremely easy to receive the latitude and longitude information. What you do with mobile applications is the same as posting the latitude and longtitude information to the server.

Wow, the amount of information in the lectures are unbelievable! I think that's all we learn.

No. Lastly, let's talk about GEOIP. Basically, GEOIP works by receiving the IP adress to receive information such as the country, county, city, district, adress. And yes, with these lectures, you would be able to learn how to use the GEOIP library.

More info on geodjango . tumblr address.

What are the requirements?

  • Python
  • Django
  • Postgresql

What am I going to get from this course?

  • You will gain knowledge about apps such as swarm, tinder and foursquare.
  • If you are thinking about creating a location-based product, you will be able to do this easily.
  • For example, you will be able to find and list users who are the nearest to the farthest to the London eye.
  • If you have a website about real estates like where you sell property, you can save the limits of the land/property into your database and will be clearly shown on the map.
  • You will be able to search and match up other people who are near eachother and you will be able to show the amount of distance in between the two users. App examples: instamessage and wechat.
  • For example, if you want only the people in a particular area to chat to each other for example people who are in the beach, you can set km limits and people outside that km limit will not be able to use the chat. After this lecture, you will learn these.
  • Learn how to using geospatial databases
  • Learn how yo using postGis with postgreSQL
  • Learn why you need PROJ4 and GEOS
  • Learn how yo using geodjango

What is the target audience?

  • People who want to develop mobile apps that are check-in based such as Tinder, Swarm and Foursquare
  • People who have an idea about a location based idea
  • People who study about the geography knowledge system
  • Social network developers
  • Game developers
  • Real estate or location based web site developers

What you get with this course?

Not for you? No problem.
30 day money back guarantee.

Forever yours.
Lifetime access.

Learn on the go.
Desktop, iOS and Android.

Get rewarded.
Certificate of completion.

Curriculum

Section 1: GeoDjango Installation
Creation of an ubuntu server for geodjango
Preview
03:34
Creation of needed media for geodjango in an ubuntu server
Preview
09:22
Let's download GEOS - (Geometry Engine Open Source)
05:48
Installing PROJ4 - Cartographic Projections Library
03:13
Installing PostgreSQL for Ubuntu
06:58
Installing PostGIS - Spatial extensions for PostgreSQL
08:54
Section 2: Geograpgycal data bases and installitation
Geodjango postgresql and postgis database setup.
11:15
Gis database types (PolygonField , MultipolygonField, PointField)
11:31
Learning about geographic database types and geograpy informations systems GIS
03:35
Section 3: Lets make an app similar to the swarm app.
How to create a database that is needed for checking in.
05:27
How to create a Html page for checking in.
10:56
How to add form into the checkin page to receive the latitude and longtitude in
09:20
How to Save the latitude and longtitude information into pointfield using GEOS.
07:45
How to list users according to their distance to a specific location.
12:23
How to list the users listed from shell.html to the show.html page.
07:00
How to calculate and show the distance of the users to a specific location.
06:57
Section 4: GOOGLE MAPS javascript API
How to show people within a certain distance and logging into google maps.
09:51
How to show photos on the markers.
10:24
How to add links into the markers using rich map marker.
07:28
How to use Multiple rich marker.
03:30
Section 5: Whats GEOIP and Using Geolocation
How to receive information coming from the IP of the user such as their country.
11:10
How to receive the latitude and longitude info of the users by using geolocation
08:54

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

Yasin Aktimur, Serial Entrepreneur and Python developer of soundweet

I was born in 1992. I have created projects such as meeting other people via bluetooth, location based anonymous chats, messaging over a map.

Also, I am the producer of the first listenable dictionary. Basically, soundweet is an app where people talk under specific subjects which they have knowledge about to inform others who are interested.

The reason why I have made the dictionary vocal is because I want people to be informed while they are busy doing things like cooking, busy doing something or maybe even while running.

For instance, what is udemy? If you are curious about the topic you may find 10 people who have spoken about the topic. When the first recording of the person stops, the second one starts automatically and so on. This way, you will learn everything about udemy.

If you have an iphone you can talk under a topic using the voice recorder in the app because we are searching for such people.

Ready to start learning?
Take This Course