Hours of Content: 10

  • Taught by a Stanford-educated, ex-Googler, husband-wife team
  • This course will use Java and an Integrated Development Environment (IDE). Never fear, we have a detailed video on how to get this downloaded and set up.
  • Hundreds of lines of source code, and hundreds of lines of comments - just download and open in your IDE!

A Java course for everyone - accessible yet serious, to take you from absolute beginner to an early intermediate level

Let’s parse that.

  • This is a Java course for everyone. Whether you are a complete beginner (a liberal arts major, an accountant, doctor, lawyer) or an engineer with some programming experience but looking to learn Java - this course is right for you.
  • The course is accessible because it assumes absolutely no programming knowledge, and quickly builds up using first principles alone
  • Even so, this is a serious Java programming class - the gradient is quite steep, and you will go from absolute beginner to an early intermediate level
  • The course is also quirky. The examples are irreverent. Lots of little touches: repetition, zooming out so we remember the big picture, active learning with plenty of quizzes. There’s also a peppy soundtrack, and art - all shown by studies to improve cognition and recall.

What's Covered:

  • Programming Basics: What programming is, and a carefully thought-through tour of the basics of any programming. Installing and setting up an IDE and writing your first program
  • The Object-Oriented Paradigm: Classes, Objects, Interfaces, Inheritance; how an OO mindset differs from a functional or imperative programming mindset; the mechanics of OO - access modifiers, dynamic dispatch, abstract base classes v interfaces. The underlying principles of OO: encapsulation, abstraction, polymorphism
  • Threading and Concurrency: A deep and thorough study of both old and new ways of doing threading in Java: Runnables, Callables, Threads, processes, Futures, Executors.
  • Reflection, Annotations: The how, what and why - also the good and bad
  • Lambda Functions: Functional constructs that have made the crossover into the mainstream of Java - lambda functions, aggregate operators.
  • Modern Java constructs: Interface default methods; properties and bindings too. Also detailed coverage of Futures and Callables, as well as of Lambda functions, aggregation operators. JavaFX as contrasted with Swing.
  • Packages and Jars: The plumbing is important to understand too.
  • Language Features: Serialisation; why the Cloneable interface sucks; exception handling; the immutability of Strings; the Object base class; primitive and object reference types; pass-by-value and pass-by-object-reference.
  • Design: The MVC Paradigm, Observer and Command Design Patterns.
  • Swing: Framework basics; JFrames, JPanels and JComponents; Menus and menu handling; Trees and their nuances; File choosers, buttons, browser controls. A very brief introduction to JavaFX.

Programming Drills (code-alongs, with source code included)

  • Serious stuff:
    • A daily stock quote summariser: scrapes the internet, does some calculations, and outputs a nice, formatted Excel spreadsheet.
    • A News Curation app to summarise newspaper articles into a concise email snippet using serious Swing programming
  • Simple stuff:
    • Support with choosing a programming environment; downloading and setting up IntelliJ.
    • Simple hello-world style programs in functional, imperative and object-oriented paradigms.
    • Maps, lists, arrays. Creating, instantiating and using objects, interfaces

What are the requirements?

  • No prior programming experience needed:)
  • The class will make use of Java and an IDE - never fear, we have a detailed video to walk you through the process of setting this up

What am I going to get from this course?

  • Write Java programs of moderate complexity and sophistication (at an early to middling intermediate level)
  • Understand Object-Oriented programming concepts at the level where you can have intelligent design conversations with an experienced software engineer
  • Manage concurrency and threading issues in a multi-threaded environment
  • Create and modify files (including Excel spreadsheets) and download content from the internet using Java
  • Use Reflection, Annotations, Lambda functions and other modern Java language features
  • Build serious UI applications in Swing
  • Understand the Model-View-Controller paradigm, the Observer and Command Design patterns that are at the heart of modern UI programming
  • Gain a superficial understanding of JavaFX and Properties and Bindings
  • Understand the nuances of Java specific constructs in serialisation, exception-handling, cloning, the immutability of strings, primitive and object reference types

What is the target audience?

  • Yep! Folks with zero programming experience - liberal arts majors, doctors, accountants, lawyers
  • Yep! Engineering students from non-CS majors looking to learn fairly serious programming
  • Nope! Experienced Java programmers - this class will be boring for you:)
  • Yep! Computer Science students or software engineers with no experience in Java, but experience in Python, C++ or even C#. You might need to skip over some bits, but in general the class will still have new learning to offer you :-)
Loony Corn

Your Instructor

Loony Corn

Loonycorn is us, Janani Ravi and Vitthal Srinivasan. Between us, we have studied at Stanford, been admitted to IIM Ahmedabad and have spent years working in tech, in the Bay Area, New York, Singapore and Bangalore.

Janani: 7 years at Google (New York, Singapore); Studied at Stanford; also worked at Flipkart and Microsoft

Vitthal: Also Google (Singapore) and studied at Stanford; Flipkart, Credit Suisse and INSEAD too

We think we might have hit upon a neat way of teaching complicated tech courses in a funny, practical, engaging way, which is why we are so excited to be here on Udemy!

We hope you will try our offerings, and think you'll like them :-)

Your Instructor


Loony Corn
Loony Corn

Loonycorn is us, Janani Ravi and Vitthal Srinivasan. Between us, we have studied at Stanford, been admitted to IIM Ahmedabad and have spent years working in tech, in the Bay Area, New York, Singapore and Bangalore.

Janani: 7 years at Google (New York, Singapore); Studied at Stanford; also worked at Flipkart and Microsoft

Vitthal: Also Google (Singapore) and studied at Stanford; Flipkart, Credit Suisse and INSEAD too

We think we might have hit upon a neat way of teaching complicated tech courses in a funny, practical, engaging way, which is why we are so excited to be here on Udemy!

We hope you will try our offerings, and think you'll like them :-)


Course Curriculum

  You, Us & This Course
Available in days
days after you enroll

Frequently Asked Questions

When does the course start and finish?
The course starts now and never ends! It is a completely self-paced online course - you decide when you start and when you finish.
How long do I have access to the course?
How does lifetime access sound? After enrolling, you have unlimited access to this course for as long as you like - across any and all devices you own.
What if I am unhappy with the course?
We would never want you to be unhappy! If you are unsatisfied with your purchase, contact us in the first 30 days and we will give you a full refund.

Get started now!