MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.
Starting from basic distributed concepts presented during our first Udacity-Twitter Storm Hackathon, link Storm concepts to Storm syntax to scalably drive Word Cloud visualizations with Vagrant, Ubuntu, Maven, Flask, Redis, and d3. Link to the public Twitter gardenhose stream to process live tweets, parse embedded URLs, and calculate Top worldwide hashtags. Extend beyond Storm basics by exploring multi-language capabilities in Python, integrate open source components, and implement real-time streaming joins.
In your final project, follow real-time trending topics by implementing the data pipeline to visualize only tweets that contain Top worldwide hashtags. Extend your project by exploring the Twitter API, or any data source, alongside Hackathon participants as they design their own ideas, receive feedback from Karthik, and open source a final project calculating real-time tweet sentiment and geolocation to drive a U.S. Map.
Learn by doing! The world is going real time. Batch processing, popularized by Hadoop, has latency exceeding required real-time demands of modern mobile, connected, always-on users. Stream processing with seconds-required response time is necessary to meet this demand. Twitter is a world leader in real-time processing at scale. Learn the future from the company defining it.
What You Will Learn
Lesson 1
Basic Storm Topologies
- Link to a real-time d3 Word Cloud Visualization using Redis Flask and d3
Lesson 2
Storm Basics
- Program Bolts link Spouts and connect to the live Twitter API to process real-time tweets
- Explore open source components by connecting a Rolling Count Bolt to your topology to visualize Rolling Top Tweeted Words
Lesson 3
Beyond Storm Basics
- Explore multi-language capabilities to download and parse real-time Tweeted URLs in Python using Beautiful Soup
- Integrate complex open source bolts to calculate Top-N words to visualize real-time Top-N Hashtags
- Use stream grouping concepts to easily create streaming join to connect and dynamically process multiple streams
Lesson 4
Final Project
- Work on your final project and we cover additional questions and topics brought up by Hackathon participants
- Explore Vagrant
- VirtualBox
- Redis
- Flask
- and d3 further if you are interested!
Lesson 5
Final Project: Construct a Storm Topology
- Design a Storm Topology and new bolt that uses streaming joins to dynamically calculate Top-N Hashtags and display real-time tweets that contain trending Top Hashtags
- Post your visualization to the forum and tweet them to your Twitter followers
Lesson 6
Project Extensions
- Use additional features of the real-time Twitter sample stream or use any data source to drive your real-time d3 visualization
Prerequisites and Requirements
Programming language required: JavaTo be successful, you'll need intermediate knowledge of Java. Specifically, this is defined by experience and comfort with Java syntax, compile & run-time error diagnostics and debugging, ability to use javadocs as needed, and intermediate data structures including Arrays, HashMaps, and LinkedLists. If you need to build these skills, a good starting point is Udacity’s Introduction to Java with additional comfortability needed identifying and debugging compile & run-time errors. No prior experience is assumed in Ubuntu, git, Maven, Redis, Flask (Python) or d3 (Javascript). Python is useful, but optional. A basic course such as CS101 or OO in Python would be helpful.
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.