
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 GoAbout 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
andreflect.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
, andOffsetof
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

Mon, Tue, Wed, Thu, Fri
Duration: 4 weeks
6:00 PM - 7:12 PM
India Time
(1 hr 12 mins per day)
+
Fee, excluding tax (in INR)
₹ 24,000
Convert
to USD
Next batch begins from:
June 27, 2024
Seat Availability
(Classroom full)
Weekends

Saturday & Sunday
Duration: 4 weeks
10:30 AM - 1:30 PM
India Time
(3 hours per day)
+
Fee, excluding tax (in INR)
₹ 24,000
Convert
to USD
Next batch begins from:
June 22, 2024
Seat Availability
(Classroom full)
Enterprise

Have a team of 25 or more team members and need a custom training plan?
Contact Us
or call
(+91) 988.011.2117
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 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

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

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 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

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
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
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
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
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?
Ace Hacker,
3rd Floor, No. 670,
RBI Layout Main Road,
J.P. Nagar 7th Phase,
Bengaluru - 560 078
Karnataka, India
BYOD
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
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 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.
Schedule
Next cohort begins as early as Apr 06, 2023. Applications are open.
Available on | Format | Timing | Starts on | Seat Availability | Fee (INR) | |
---|---|---|---|---|---|---|
Weekdays (Mon - Fri) | Hybrid | 6:00 PM - 7:12 PM India Time | June 17, 2024 |
(Classroom full) |
₹ 24,000 Convert to USD | NOTIFY ME |
Weekend (Sat, Sun) | Hybrid | 10:30 AM - 01:30 PM India Time | June 22, 2024 |
(Classroom full) |
₹ 24,000 Convert to USD | NOTIFY ME |

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.2117Questions?
- 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.
Write to us at connect@acehacker.com or call (+91) 988.011.2117
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.
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.
- 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.
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.
Reach out
If you are still left pondering at the mysteries of the Universe.

Email: connect@acehacker.com
Call: (+91) 988.011.2117