Git Product home page Git Product logo

go-course-2017's Introduction

Go Course 2017

Masters Academy Go courses project for season 2017/2018

Terms and conditions

  • Цей документ визначає та декларує чим є курси з Go які проводить Masters Academy в 2017-2018 рр.
  • Курси проводяться Masters Academy, на безоплатній добровільній основі.
  • Метою проведення курсів є допомога зацікавленим особам у вивченні основ мови програмування Go.
  • Курси є добровільною освітньою ініціативою, метою якої є донесення корисної інформації у зручний для обох сторін спосіб, із орієнтацією на самомотивованість відвідувачів, обопільну цікавість процессу та взаємне збагачення та обмін досвідом.
  • Курси не є засобом отримання сертифікату будь-якого вигляду, студентам які особливо відзначились можуть бути виписані рекомендаційні листи від викладачів, за підписом викладача.
  • На курсах особа, яка їх проводить, по окремих питаннях подає суб’єктивно забарвлену інформацію на власний розсуд, користуючись здоровим глуздом та власним досвідом.
  • Кінцевою метою курсів є максимально можлива передача досвіду студентам для їх подальшого професійного зростання та розвитку. У якості втілення досвіду приймається проект, програмний код якого написаний студентом, самостійно чи в групі, дозволить будь-кому скласти враження про опанування студентом мови програмування Go та відпоівідного інструментарія.
  • Курси не передбачають проведення заліків, іспитів та вручення дипломів. Нашою метою є не виконання студентом формальних процедур, а досягнення ними певного рівня професійності.
  • Доступ до курсів можуть отримати всі бажаючі, адекватні та розсудливі особи, із мінімальними навичками програмування. Від студентів очікується мотивованість, готовність задавати питання та самостійно визначати яка саме допомога може бути надана викладачами.
  • Ми не дитячий садочок та не школа, викладачам не цікаво чути відмовки, чому студент не зробив домашнє завдання, і тому метою студента є зацікавити викладача у передачі досвіду, ми всі дорослі люди )
  • Заняття проводитимуться згідно із графіком, про зміни в графіку повідомлятимемо ASAP, але можливі перенесення занять через об’єктивні обставини.
  • Студент має з самого початку усвідомити, що все, що він отримає від курсів на 99% залежить від нього.
  • Приходьте налаштовані конструктивно, невимушено та зацікавлено. Вчитися - весело.
  • Для отримання оновлень кожен слухач має слідкувати за даним репозиторієм, через розсилку будуть повідомлятися тільки найбільш загальні речі.
  • Завдання мають надаватися на перевірку:
    • в кодуванні UTF-8
    • мова коментарів - виключно англійська
    • перевід строки - Unix (LF)
  • Всі запитання, які стосуються курсів, задавати у групі Facebook.

Project structure

  • homeworks - Папка із результатами виконання домашніх завдань. В цій папці у кожного відвідувача має бути створена своя папка, із результатами. Папка має бути створена за допомогою засилання в цей проект pull request. Ім'я папки має бути створене за шаблоном типу name.surname_githubusername.

Useful links

go-course-2017's People

Contributors

alexkillgur avatar andrews-moc avatar andrewsdv avatar artemkenko avatar cambojist avatar chioshinu avatar dmitriy-sanitskiy avatar drhihi avatar fritzvl avatar irasmalko avatar misham1 avatar mnilko avatar nowiko avatar olenaza avatar olhabezpalchuk avatar s0nerik avatar sashok15 avatar vcoolish avatar vitalii-ovcharenko avatar vitalii-z8i avatar vitaliihurin avatar vlasiliy avatar volfor avatar walkline avatar yana-tsylinska avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

go-course-2017's Issues

homework_2

Setup environment for your OS by installing Go language from here and compile simple console "Hello World" application featuring name of your homework folder (using same template name.surname_githubusername).
Example of application output:
Hello World from vitalii.hurin_VitaliiHurin
This homework should contain source code and compiled binary file sent to repo via pull request until 29.10.2017 15:00.

homework_1

Create own homework directory using described template and add it to the repo via pull request.

homework_4

Домашка со звездочкой (не обязательная к выполнению).
Реализовать однонапрвленый список со следующими операциями:

  • подсчет размера списка;
  • добавление елемента в начало, конец и в середину списка;
  • удаление елемента из списка.

homework_6

Как и говорил на занятии - вот вам необязательная домашка.

На этот раз у вас есть шаблон - https://github.com/MastersAcademy/go-course-2017/tree/master/templates/homework6 . Скопируйте эту папку в свою и начинайте работать с этими файлами.
В шаблоне есть функция - BrutSha256, вам нужно ее реализовать.
Кроме того, скорость выполнения этой реализации будет измеряться, и вы сможете посоревноваться(у кого самый быстрый алгоритм 🙂)
Всю реализацию не обязательно писать в мейн файле, можете создавать свои пакеты и их вызывать с функции BrutSha256.

Детали. Есть такое понятие хеш функция и конкретная ее реализация SHA256. Ее реализация есть в стандартной библиотеке go (crypto/sha256).
SHA256 используют только в одну сторону (нельзя просто взять и получить данные, которые были использованы для получения хешсуммы).
Вам необходимо найти те данные, которые были использованы для получения хешсуммы, имея при этом длину этих данных и символы которые могут содержаться в этих данных.
Одна из реализаций (единственная?) - это просто перебрать все возможные варианты.

homework_3

Mario problem

Implement a program for printing two half-pyramids made of special symbol (for example, #) of a defined height with two spaces between them. For example, for height 4 it should print this:
example
The height should be defined as a variable in the program source code. By default it can be 4, but program has to work with any positive integer >=2 as a height.
The console output of the program should print the value of the height and these half-pyramids.
This time your pull request should contain only source code of your implementation and has to be sent to repo until 05.11.2017 15:00.


mario

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.