Go Programming Language

GO PROGRAMMING

Go is an open-source programming language supported by Google that's easy to learn and great for teams for building secure and scalable systems. Go supports built-in concurrency, a robust standard library, and enjoys a large ecosystem of partners, communities, and tools.

Fly high with Go

About this Course

Go is well suited for building infrastructure like networked servers, and tools & systems for programmers, but it is truly a general-purpose language and finds use in domains as diverse as graphics, mobile applications, start using Go effectively, and use it well, taking full advantage of Go’s language features and standard libraries to write clear, idiomatic, and efficient programs.

This course covers the latest stable release of Go.



  • Download Go

  • The origins of Go

  • Basic constructs of Go

  • Discussion on your Assignments, Hackathons, Cornerstone, Keystone, & Capstone Project

  • Namaskaram - Your first Go program

  • Command-Line Arguments

  • Finding duplicate lines

  • Animated GIFs

  • Fetching a URL

  • Fetching URLs concurrently

  • Building a basic Web Server with Go

  • Names

  • Declaration

  • Variables

  • Assignments

  • Type Declarations

  • Packages and Files

  • Scope

  • Integers

  • Floating Point numbers

  • Complex numbers

  • Booleans

  • Strings

  • Constants

  • Arrays

  • Slices

  • Maps

  • Structs

  • JSON

  • Text and HTML Templates

  • Function declarations

  • Recursion

  • Multiple return values

  • Anonymous Functions

  • Variadic Functions

  • Deferred Function calls

  • Panic

  • Recover

  • Method declarations

  • Methods with a pointer receiver

  • Composing Types by Struct Embedding

  • Method values and expressions

  • Bit Vector Type

  • Encapsulation

  • Interfaces as Contracts

  • Interface Types

  • Interface Satisfaction

  • Parsing flags with flag.value

  • Interface values

  • Sorting with sort.Interface

  • The http.Handler Interface

  • The error Interface

  • Example: Expression evaluator

  • Type assertions

  • Discriminating errors with Type assertions

  • Type Switches

  • Example: Token-based XML decoding

  • Proceed with caution!

  • Goroutines

  • Example: Concurrent Clock Server

  • Example: Concurrent Echo Server

  • Channels

  • Looping in parallel

  • Example: Concurrent Web Crawler

  • Multiplexing with select

  • Example: Concurrent Directory Traversal

  • Cancellation

  • Example: Chat Server

  • Race conditions

  • Mutual exclusion: sync.Mutex

  • Read/Write Mutexes: sync.RuMutex

  • Memory synchronization

  • Lazy initialization: sync.Once

  • The Race Detector

  • Example: Concurrent Non-Blocking Cache

  • Goroutines and Threads

  • Introduction

  • Import Paths

  • The Package declaration

  • Import declarations

  • Blank imports

  • Packages and Naming

  • The Go tool

  • The go test tool

  • Test Functions

  • Coverage

  • Benchmark Functions

  • Profiling

  • Example Functions

  • Why Reflections?

  • reflect.Type and reflect.Value

  • Display, a recursive value printer

  • Example: Encoding S-Expressions

  • Setting variables with reflect.Value

  • Example: Decoding S-Expressions

  • Accessing Struct Field tags

  • Displaying the Methods of a Type

  • Proceed with caution!

  • unsafe.Sizeof, Alignof, and Offsetof

  • unsafe.Pointer

  • Example: Deep Equivalence

  • Calling C code with cgo

  • Proceed with caution!

Learn Go

Choose a schedule that works best for you. Join from anywhere across the globe. Ace Hacker is a Hybrid / Hyflex Classroom learning environment. The classroom includes a mix of students who are present onsite and those who wish to join the class virtually.

Weekdays
Go Programming on Weekdays

Weekdays

Mon, Tue, Wed, Thu, Fri


Duration

Duration: 4 weeks


Timing

6:00 PM - 7:12 PM
India Time

(1 hr 12 mins per day)


Online Classes + Online Classes

Hybrid Classes


Fee

Fee, excluding tax (in INR)

₹ 24,000
Convert to USD


Applications are open

Next batch begins from:

May 13, 2024

BOOK YOUR SEAT

Weekends
Go Programming on Weekends

Weekends

Saturday & Sunday


Duration

Duration: 4 weeks


Timing

10:30 AM - 1:30 PM
India Time

(3 hours per day)


Online Classes + Online Classes

Hybrid Classes


Fee

Fee, excluding tax (in INR)

₹ 24,000
Convert to USD


Applications are open

Next batch begins from:

May 18, 2024

BOOK YOUR SEAT

Enterprise
Enterprise Plan for Go Programming

Custom training plan for Go Programming

Have a team of 25 or more team members and need a custom training plan?

Contact Us
or call

(+91) 988.011.2117

Who uses Go?

Organizations in every industry use Go to power their software and services.

Google uses Go Microsoft uses Go Netflix uses Go American Express uses Go Riot Games uses Go
Twitter uses Go Uber uses Go Meta uses Go Salesforce uses Go Paypal uses Go
Twitch uses Go Cloudflare uses Go Dropbox uses Go Capital One uses Go Bitly uses Go

Certificate in Go Programming

Based on your performance you either get a Certificate of Completion or Certificate of Excellence after successful completion of the course. Choose your Schedule.

Certificate of Excellence in Go Programming

Certificate of Excellence in Go Programming

Certificate of Completion in Go Programming

Certificate of Completion in Go Programming

Sharpen your Axe

Use Lab Exercises, Projects, Coding Competitions, and Hackathons as opportunities to practice and apply your programming skills in real-world scenarios. Monitor and share your performance with Ace Hacker Dashboard.

Exercises
Exercises in Go

To augment your proficiency in Go programming, you will be regularly challenged with various assignments like coding challenges, algorithmic puzzles, trick logical, analytical, and mathematical problems - designed to enable you to think creatively and outside the box.

Expect 4 levels of difficulty in these assignments:

  • Beginner: Exercises that test your understanding of the subject.
  • Intermediate: Exercises that add new and thought-provoking information to the subject.
  • Advanced: Exercises that are intended to challenge you.
  • Expert: Exercises that are extremely difficult by comparison with most others.

Projects
Projects in Go

The projects are designed to ensure that you not only understand the theoretical concepts of Go Programming but also gain hands-on experience in applying those concepts to real-world scenarios. You’ll be required to collaborate as a team to attempt some projects while working as a Lone Wolf / individual contributor on others.

  • Four Cornerstone projects that will reinforce in you the strong foundational knowledge of Go Programming Language.
  • Two Keystone projects will be more challenging, building on the knowledge you have gained through the Cornerstone projects.
  • One Capstone project, which will be the culmination of your learning experience in this course.

Competitions
Competitions in Go

Competitions and Hackathons are a great way to reinforce your learning and to challenge you to apply your skills to real-world scenarios. By participating in these events, you will gain practical experience and develop your problem-solving skills. You will be participating in a variety of events, including but not limited to:

  • Sprint Coding Competitions
  • Marathon Hackathons
  • Catch-the-Flag (CTF) challenges
  • War Games

In some competitions, you will collaborate as a team, which will aid you in developing your teamwork skills. In other competitions, you will participate as a Lone Wolf, which will challenge you to think independently and to rely on your own skills and knowledge.

Ace that Coding Interview

Crack the Coding Interview with Go

As a part of this course, you’ll learn to crack a coding interview with Go Lang. You’ll be thoroughly trained using:

  • Mock Interviews: We’ll simulate the pressure and format of a real coding interview, allowing you to practice and improve you technical, communication, and presentation skills under similar conditions.
  • Through Whiteboarding, you’ll learn to visually represent your thought process on a physical or a digital whiteboard.
  • We put a lot of emphasis on you having a strong understanding of Data Structures, Algorithms, and Algorithm Analysis to efficiently solve complex problems and optimize solutions during a coding interview. which are key factors that interviewers evaluate to assess a candidate’s technical competence.
  • You’ll learn how to handle Impossible Questions & Kobayashi Maru situations which are essential in a coding interview to show adaptability, creativity, and resilience under pressure.
  • Learn to solve Algorithmic, and Mathematical and Puzzles using Go Programming Language and develop a creative and analytical mindset, logical reasoning, and problem-solving skills that are crucial in cracking a coding interview.

Who can apply?

Eligibility Criteria.

Age Group

Age Group

For people between the age group 14 - 114 years! Although there is no right age to start learning, the batches may be segregated based on age range or number of years of work experience, if required.

Edu. Qualification

Educational Qualification

The course requires no prior programming experience or academic qualification. Starting from basics, this course provides a strong foundation in programming fundamentals & advanced topics using GoLang.

Gender

Gender

Ace Hacker is a gender-neutral learning (and working) environment. Participants may choose any gender they identify with (male/female/non-binary) or choose not to disclose their gender at the time of registration.

Location

Location

Join from anywhere across the globe. Ace Hacker is a Hybrid / Hyflex Classroom learning environment. The classroom includes a mix of students who are present onsite and those who wish to join the class virtually.

Ace Hacker Classroom

What to expect.

Looking for us?

Searching for Ace Hacker?

Ace Hacker,
3rd Floor, No. 670,
RBI Layout Main Road,
J.P. Nagar 7th Phase,
Bengaluru - 560 078
Karnataka, India


Google Maps


connect@acehacker.com


(+91) 988.011.2117

BYOD

Bring Your Own Device

Bring your own device. Click here for instructions to download and install Go on your machine. You will have access to a fast internet connection, an amazing teacher, and yummy snacks with chai & coffee in the class.

Your Teacher

Amazing Teacher for Go Programming Language

Your teacher’s enthusiasm is infectious, and you can’t help but feel the same passion for programming as he does. Under his guidance, you will not only learn the technical skills you need to succeed, but you will also develop a love for the subject that will stay with you for years to come.

Be punctual

Be punctual

Be on time or before time if you’d like to start your class with some light snacks and beverages (in case you are attending an onsite session). The door closes sharp on time and entry into the class after the class commences may not be allowed.

Applications close on:

May 11, 2024

Schedule

Next cohort begins as early as Apr 06, 2023. Applications are open.

Available on Format Timing Starts on Ends on Seat Availability Fee (INR)
Weekdays  (Mon - Fri) Hybrid 6:00 PM - 7:12 PM  India Time May 13, 2024 Jun 07, 2023

 (10 seats left)
₹ 24,000  Convert to USD Book your seat
Weekend  (Sat, Sun) Hybrid 10:30 AM - 01:30 PM  India Time May 18, 2024 Jun 22, 2024

 (10 seats left)
₹ 24,000  Convert to USD Book your seat
Hire Go Programmers

Hire Go Hackers

Hacker is someone who enjoys exploring the details of computers and how to stretch their capabilities, as opposed to most users who prefer to learn the minimum necessary. ‘Hacker’ is a term of respect, used among computer programmers, designers, and engineers. A hacker is someone who creates original and ingenious programs.

Need GoLang Hackers for your team?

Email Us   or call   (+91) 988.011.2117

Questions?

We offer placement assistance through four channels:

  • Challenge Ready: A thorough interview preparation module is built into every level of this course. Over and above your regular lab exercises, assignments, quizzes, tests, research paper submissions, and mock interviews, you will sharpen your skills via sprint coding competitions, marathon hackathons, war games, cyber warfare simulations, catch-the-flag (CTF) challenges and more. You will be required to compete as individuals in some format of the challenges while collaborating & competing as a team in other formats.

  • Partner Connect: This program provides companies with the opportunity to hire students from Ace Hacker based on their performance in the course, which are shared with authorized companies via Ace Hacker Dashboards. Students are notified when a company expresses interest to recruit from Ace Hacker. After the students share their scorecard via Ace Hacker Dashboard, the company’s recruitment team then takes the process forward with the applicants.

  • Demo Weeks: Demo Weeks are exciting tech hiring events organized by Ace Hacker, where tech organizations and startups gather to discover talent. During this event, students have the opportunity to showcase their work and demonstrate their capabilities to the visiting companies. The event creates a platform for students to interact directly with recruitment teams, enabling them to discuss their projects, skills, and aspirations. If a company finds a student particularly intriguing, they may invite them to attend a technical interview. Fortunately, Ace Hacker thoroughly prepares students for coding interviews, equipping them with the necessary skills and knowledge to succeed. This event acts as a stepping stone in the recruitment process, leading to potential employment opportunities for the students.

  • Job Board: Students have access to an Ace Hacker alumni platform on an internal Slack channel and a Discord server. This platform serves as a hub for Ace Hacker students seeking job opportunities in the tech industry. Within these channels, regular job openings from various tech companies and startups are posted, providing students with a range of options to choose from. The platform not only offers job listings but also fosters a supportive community by connecting students with mentors - professionals from the companies posting the job offers, alumni of the institute, and career coaches from Ace Hacker. The mentors provide invaluable guidance to students, offering insights on the application process and addressing any queries they may have.

Wish to hire from Ace Hacker?
Write to us at connect@acehacker.com or call (+91) 988.011.2117

This option is not yet available for the course - The Art of Programming in Go. We currently require payment for the course in advance, prior to the commencement of classes.

We continuously evaluate and consider various payment options, including the possibility of offering Equated Monthly Instalments (EMI) in the future. Any updates or changes to our payment methods will be communicated to all prospective and enrolled students promptly.

Yes, you do. Based on your performance, you’ll either receive a Certificate of Completion or a Certificate of Excellence at the end of the course.

The course - The Art of Programming in Go - requires no prior programming experience or academic qualification. Starting from basics, this course provides a strong foundation in programming fundamentals & advanced topics using GoLang.

You are expected to bring your own device to the classroom - online or onsite. Instructions to download and install Go are available here. We will help you troubleshoot should you face any difficulties with the installation once you register for the course.

These are live classes that gives you the opportunity for real-time interaction with the instructor and fellow classmates. Here are some highlights of the class:

  • Personalized Interaction: This course offers a dynamic learning environment where questions are asked, discussions takes place, and personalized feedback is provided.
  • Synchronous Learning Experience: All students attend the sessions simultaneously. We create a sense of community to foster collaborative learning. We believe that being in-sync with fellow classmates will enhance your learning experience and also allow for active participation.
  • Quality and Timeliness: Receive up-to-date information, get immediate clarification of doubts in Q&A section of the live class, in AMA (Ask Me Anything) sessions, and during Office Hours. Office hours are times when you can meet with your instructor to discuss the material being presented in class or other related interests you have. Engage in real-time discussions through these live sessions.

We have a No-Question-Asked fee refund policy for students who request a refund before or immediately after attending the first class. We’ll refund the full amount of the paid fees, excluding any non-refundable fees or charges (for example, GST, or any other tax component) specified in the fee structure. Refunds are processed within 14 working days from the receipt of the refund request.

In case the student has received any learning materials or resources, the student must return them in good condition within 5 working days of the refund request. Failure to return the learning materials or resources within the specified time frame may result in a deduction from the refund amount to cover the cost of those materials.

Yes, scholarships are available for this course - The Art of Programming in Go under the Ekalavya Scholarship program.

Please send us an email at connect@acehacker.com or call us at (+91).988.011.2117 if you’d like to book a class for 25 or more students.

No, these are live classes and each session is an interactive learning experience. Recording of the class is not available in case you miss a session.

Reach out

If you are still left pondering at the mysteries of the Universe.

Contact Ace Hacker