
Learn the fundamentals of Julia to write your first programs and gain fluency in the language, equipping you to pick up other programming languages quickly.
Explore how Julia delivers high performance and dynamic typing for scientific programming. See how its open source, just-in-time compilation, type inference, and multiple dispatch enable fast prototyping and scalable computing.
Set up the Atom or Juno based Julia environment and begin the introduction to Julia programming.
Install Julia from the official site, set up with Jupyter notebooks or Julia prompt, and authenticate to download packages; this leads to organizing a project folder for the course.
Organize your study with a simple folder structure after installing software and setting up environments for quick access to the Julia programming course; download the full structure from Google Drive.
Launch your journey into Julia programming by learning variables and data types, and write your first functional program as a complete beginner.
Open Julia and tour the IDE: navigate the toolbar and menu bar, save or create files, use the debugger, access documentation, and explore data visualization and the outline.
start Julia, write and run your first program that prints hello world, and save it as a .jl file with optional semicolons.
Discover how variables act as labels for data in Julia, with examples like x=2, y=3 and c=a+b, and learn naming rules, case sensitivity, and in-place mutating functions.
Explore Julia's type system, static and dynamic typing, and primitive, composite, and parametric types. Understand integers and floats, hex literals, wraparound, big floats, infinity, NaN, and use convert and promote.
Explore Julia's arithmetic, bitwise, logical, and relational operators, learn unary and binary forms, and use the dot operator for element-wise array operations.
Explore strings in Julia, focusing on characters and key operations like concatenation, interpolation, extraction, and regular expressions.
Explore how Julia represents characters with a 32-bit Unicode primitive and define characters with single quotes, then work with immutable strings using indexing, ranges, and code units.
Learn common string operations in Julia, including concatenation, interpolation, comparison, searching, substring, repeat, join, length and size, reverse, split, and replace, plus an introduction to regular expressions.
Explore regular expressions in Julia, using the R prefix to define patterns, and learn to use occursin, match, and captures to extract substrings and indices from strings.
Explore how Julia's data structures organize fast, grouped data for efficient storage and use. Learn to leverage these structures to replace scattered variables.
Explore arrays in Julia, including vectors and matrices, learn one-based indexing and slicing, and understand memory locations with copies using the copy method.
Explore Julia array methods and broadcasting to perform vectorized and element wise operations, manipulate arrays with push, insert, delete, and splice, and inspect dimensions and indices.
Explore sets in Julia, an unordered collection of unique elements; learn to create sets with the set constructor, remove duplicates, and perform union, intersection, difference, subset, and equality checks.
Explore tuples as fixed-size groups of values, where types may differ; define them with or without brackets, then unpack to assign a, b, and c, and access values by name.
Explore how dictionaries store key-value pairs in Julia, create dictionaries with pair constructors or assignments, and access, merge, and delete mappings while noting dictionaries are unordered.
Master control flow by exploring five varieties of code flow mechanisms essential to any programming language and common in most programs, building on data structures from previous sections.
Explore Julia's compound expressions using begin and end blocks and semicolon chains to evaluate multiple subexpressions as one, initialize variables, and combine both constructs.
Explore conditional evaluation in Julia using if else branches driven by boolean expressions. Understand variable scope within if blocks and the ternary operator for inline conditions.
Explore how Julia uses short-circuit evaluation for boolean expressions with and and or operators, see truth-table behavior and practical performance benefits.
Master repeated evaluation in Julia with while and for loops, ranges, and comprehensions. Understand scope, break and continue, and iterating over multiple iterables.
Learn iteration across arrays, sets, and dictionaries with for-in loops to print items and key-value pairs. Note that set order may vary and dictionaries expose keys and values separately.
Learn to throw and catch exceptions in Julia using try catch finally, handle domain errors from sqrt of negative numbers, and perform cleanup with finally blocks.
Master variables, data storage, and control constructs like if conditions and loops in Julia. Learn to avoid duplicating code by writing your own functions and methods.
Explore how in Julia every operation is a function, define and call functions with a name and parameters, and return values with default or explicit returns, using end to close.
Explore Julia function arguments, including variable-length parameters with ellipsis, optional defaults, and keyword forms, then improve readability with do-blocks and functional mapping.
Discover function composition in Julia by using circ operator, map, piping, and dot broadcasting to transform arrays and strings, with examples of f(x)=x+1 and g(x)=x-1.
Learn how Julia treats a function as multiple methods, enabling polymorphism and method overloading by selecting a method based on parameter type or count, with errors raised for undefined methods.
Explore variable scope in Julia, distinguishing local scope from global scope, and build on core structures, data storage, and control and code flow to write programs.
Explore how local scope confines variables to loops, functions, and blocks in Julia. See inner scopes hide variables from outer scopes, with global scope available but best used sparingly.
Learn how the global scope makes variables accessible from anywhere and modifiable, but avoid global variables due to debugging and performance overhead, favoring local variables.
Explore the let construct to create a local scope, compare begin blocks and their scope, and learn how Julia handles immutable constants with const, including redefinition rules and error behavior.
Master Julia programming fundamentals by building practical tools, starting with a temperature converter between Celsius, Fahrenheit, and Kelvin, then tackling a classic Sudoku puzzle.
Learn to build a Julia temperature converter that switches between Fahrenheit, Celsius, and Kelvin. Parse input, use a convert temperature function with unit-based if logic, and return results.
This lecture guides you through implementing a sudoku solver in Julia using backtracking and recursion, with checks for rows, columns, and 3x3 boxes on a nine by nine board.
Data science, machine learning, Python, R are the buzzwords of the new decade! Do you aspire to become the next programming wizard and be a cut above the rest? The Julia programming language is the programming language of the future that is as easy to learn as python and as fast as C! Truly a best of both worlds!
About Julia
Julia was designed to have the following features:
· Open Source
· Easy to use, read, learn
· Computational performance like no other. Near C – like performance
· Abstraction and parallel programming capabilities.
Julia has
· Flexibility of dynamic untyped and interpreted languages like python and R
· Speed of statically typed and compiled languages like C or C++
Learn Julia Fundamentals
This Julia programming course will teach you the basics of Julia and the basics of computer programming You will be guided to install and setup your Julia environment using JuliaPro. You will learn the basics all the way from how to use the IDE, to variables, to functions all the way to writing your own computer programs in Julia from scratch!
Anyone who has a handle on typing on a computer will get through this course with flying colors. You don’t need any previous experience. This course is equally useful for those of you who are pros at programming and want to pick up a new language.
Data science, machine learning, Python, R are the buzzwords of the new decade! Do you aspire to become the next programming wizard and be a cut above the rest? The Julia programming language is the programming language of the future that is as easy to learn as python and as fast as C! Truly a best of both worlds!
Learn the next-generation of fast scientific computing with this Julia Fundamentals 2020 course and flaunt your talent to the computer science industry!
We cover the following in this course:
· Introduction and Installation of Julia
· Julia Programming Fundamentals
· Strings in Julia
· Data Structures in Julia
· Control flow mechanisms in Julia
· Variables and scope in the Julia programming language
· HANDS ON CODING in Julia!
What are you waiting for? Enroll Now!
About the Instructor
Ayush Hate is a professional software developer with experience in many different programming languages, often in combination. Ayush Hate has worked in C, C++, C#, Java, Python and R on large scale industry projects with experience in Machine Learning, Data Science and scalable application development. Teaching and giving back to the computer science community is his main aim as he continues to work to create courses for the future of programming!
Happy Programming!