Pull to refresh
51
0
Иво Димитров @DarwinTenk

UX/UI Product Designer

Send message

Шаблонизатор GO text template для новичков

Level of difficultyEasy
Reading time4 min
Views5K

Шаблоны - это инструмент программирования, который позволяет создавать структурированный и повторно используемый контент или код. Они имеют много применений в различных областях, включая веб-разработку, генерацию отчетов, форматирование текста и многое другое. В целом, шаблоны предоставляют удобный способ создания структурированного и гибкого контента или кода, что упрощает создание контента для различных приложений и веб-сайтов.

Все инструкции шаблона заключаются в символы.

Читать далее
Total votes 19: ↑13 and ↓6+7
Comments4

GPT-4 добавляем новые знания: Git репозиторий

Level of difficultyEasy
Reading time11 min
Views15K

GPT-4 позволяет достаточно просто писать boilerplate код с использованием различных языков, технологий и библиотек. Но, есть небольшая проблема, данные GPT-4 не совсем актуальные и ограничены серединой 2021 года.

Проблема ясна, надо как то решать, потому что работать по-старому совсем не хочется. Уже привык, что можно достаточно просто попросить объяснить и сгенерировать код, пускай даже достаточно простого и можно сказать примитивного, но этого зачастую хватает, чтобы быстро понять как можно сделать задачу или найти нужную информацию.

Поехали
Total votes 15: ↑14 and ↓1+13
Comments8

Подключения Go shared library к Ruby

Reading time2 min
Views9.9K
С выходом Go 1.5 появилась возможность делать go library для сторонних программ на других языках. То есть можно написать package который делает что то интересное и тяжело или просто уже готовое решения и подключить его в другую не Go программу. Это может быть C, android, objective C and etc. Я покажу как это легко можно подключить к Ruby.
Для чего это надо?
Total votes 36: ↑34 and ↓2+32
Comments15

Лучшие книги по Golang: что стоит почитать как начинающему, так и опытному разработчику

Reading time6 min
Views64K

Мы в Quadcode любим Golang и можем рассказать о языке и его преимуществах много интересного. Все это неспроста - не так давно мы переписали некоторые наши продукты или отдельные их модули именно на Go, чему радуемся до сих пор. Подробности самых интересных кейсов вскоре планируем раскрыть на Хабре, а пока что поделимся подборкой любимых книг, которые посвящены этому языку. Некоторые из них подходят для начинающих разработчиков, другие - для программистов с опытом. Объединяет все представленные в подборке книги одно - они могут оказаться ну очень полезными для тех, кто так или иначе связан с Go. Подборка - под катом, и, кстати, если вы уже читали какую-то из рекомендованных нами книг, расскажите о своих впечатлениях в комментариях. Поехали!

Да, кстати, еще одна ремарка - некоторые книги переведены на русский, некоторые - нет. Если перевода (пока, как хотелось бы надеяться) нет, то мы об этом скажем.

Читать далее
Total votes 9: ↑8 and ↓1+7
Comments15

Левел-дизайн 101: язык разработки локаций

Reading time9 min
Views18K

Однажды, если мне не изменяет память, в Нью-Йоркском университете кто-то сформулировал определение геймдизайна как «мотивирование игрока на определенные действия». Хорошая формулировка. По аналогии с ней, про левел-дизайн я бы сказал так:

Левел-дизайн — это мотивирование игрока на определенные действия через окружение, в котором существует управляемый персонаж. 

Почему мы отталкиваемся от определения геймдизайна — хотя, казалось бы, я должен отстаивать левел-дизайн как самостоятельную нишу? Всё очень просто: наша первая и основная задача — подкреплять в пространстве механики, заложенные геймдизайном. Давать игроку возможность поиграть. А «душную» поправку про управляемого персонажа я добавил тогда, когда в очередной раз услышал в обсуждении левел-дизайна споры про интерфейс. Давайте забудем про него на время прочтения этой статьи: все-таки UI почти всегда существует вне игрового пространства и не является инструментом левел-дизайнера.

А теперь, когда у нас есть определение, разберемся в сущности левел-дизайна. 

Откуда возникла эта ниша? Что левел-дизайнер отдаёт в результате работы над локациями? В этом мы и будем разбираться дальше в этой статье. А вообще их будет целый цикл, в котором я постараюсь охватить всю базу этой области геймдизайна от самых основ до приемов AAA-сегмента.

Читать далее
Total votes 29: ↑29 and ↓0+29
Comments3

Создаем легальные NFT в 3 шага, и защищаем как объект интеллектуальной собственности

Reading time4 min
Views61K

Давайте немедленно упорядочим хаос и остановим скам. Текущая ситуация и международное право.

Взрыв интереса и рост рынка NFT токенов поднял на поверхность ключевые вопросы токенизации. Мы разработали юридически значимую модель создания NFT на основе Парижской Конвенции по охране промышленной собственности и нового инструмента Всемирной организации интеллектуальной собственности (ВОИС) при ООН. Данный метод имеет надгосударственный правовой статус и не требует дополнительной легализации в 177 странах мира. А еще это занимает всего 15 минут…

Читать далее
Total votes 21: ↑14 and ↓7+7
Comments38

Что нам стоит Blockchain-игру построить: 10 пунктов, которые нужно учесть команде проекта

Reading time6 min
Views12K

Блокчейн-технологии постепенно проникают в разные (все еще относительно немногие) направления бизнеса, включая логистику, страхование, финансы и т.п. В России с блокчейном связаны, например, М.Видео, Альфа-Банк и СберФакторинг — эти компании используют открытую блокчейн-платформу на основе Ethereum для факторинговых операций. В основном, это сверка документов.

Есть и еще одно интересное направление - это блокчейн-игры, которые стали активно развиваться в 2021 году. Они базируются на блокчейн-технологиях, используя элементы криптографии. Криптовалюта в таких играх - основной внутриигровой инструмент. Пример - игра Axie Infinity, которая получила немало положительных отзывов — ее можно назвать реально успешным проектом на базе блокчейна. Еще один такой проект - Clash of Coins, тоже достаточно известный. Что нужно учитывать при создании Blockchain-игры? Об этом поговорим под катом.

Читать далее
Total votes 11: ↑10 and ↓1+9
Comments7

Golang-дайджест № 14 (1 – 28 февраля  2022)

Reading time4 min
Views8.4K

Свежая подборка новостей и материалов

Интересное в этом выпуске

Выпущены Go 1.17.7 и 1.16.14, Go 1.18 Release Candidate 1: Заметки, Самомодифицирующийся исполняемый файл на Go, Go Workspaces в Go 1.18, Gambit - шахматы в терминале, Подкаст - обсуждаем дженерики от Go Get Podcast, FQ - Инструмент для работы с бинарными данными

Приятного чтения!

Читать далее
Total votes 22: ↑21 and ↓1+20
Comments1

Облегчаем работу с SQL в go и при этом не отстреливаем себе ноги

Reading time8 min
Views16K

Продолжаю серию статей по программированию на Golang, в которой буду рассказывать о том, как упростить себе жизнь. В то же время я уделю достаточно большое количество внимания тому, как при этом не утонуть в бесконечном количестве ненужных делу фреймворков.
Читать дальше →
Total votes 17: ↑14 and ↓3+11
Comments21

Анализ финансовых ботов, можно ли заработать?

Reading time10 min
Views58K

Разбираю разные подходы к созданию ботов и смотрю на их эффективность

Заработает ли бот достаточно денег?
Будет ли стабильный заработок?
Достигнет ли он когда-нибудь годового дохода в $100,000?

В этом посте я отвечу на эти вопросы и дам вам несколько советов, как двигаться дальше.

Читать далее
Total votes 14: ↑12 and ↓2+10
Comments18

Golang-дайджест № 2  (1 – 28 февраля 2021)

Reading time5 min
Views8.2K

Свежая подборка новостей и материалов

Интересное в этом выпуске

веб-браузер, мониторинг почтовых служб, сканер уязвимостей, зашифрованная файловая система

Приятного чтения!

Читать далее
Total votes 12: ↑11 and ↓1+10
Comments1

Пишем Slack бота для Scrum покера на Go

Reading time30 min
Views5K

Здравствуйте! Сегодня мы напишем Slack Scrum покер бота на языке Go. Писать будем по возможности без фреймворков и внешних библиотек, так как наша цель – разобраться с языком программирования Go и проверить, насколько этот язык удобен для разработки подобных проектов. Прошу под кат!

Читать далее
Total votes 12: ↑10 and ↓2+8
Comments5

Фантастические книги, которые вы могли пропустить в 2020 году

Reading time7 min
Views65K

Что делать, когда хочется писать о книгах, но рубеж года уже пройден, а 2021 пока не радует новинками? Можно еще раз вспомнить достойные фантастические романы, которые вышли на русском в 2020, и заслуживают внимания, хотя их авторы, по крайней мере пока, не могут похвастаться большой популярностью в России. Поэтому хочу рассказать о нескольких фантастических книгах прошлого года, которые произвели на меня хорошее впечатление. 

Буду рад, если в комментариях поделитесь своими фантастическими находками.

Читать далее
Total votes 57: ↑54 and ↓3+51
Comments63

Шаблоны проектирования в Go — Абстрактная Фабрика

Reading time3 min
Views8.9K

Привет, Хабр! Представляю вашему вниманию перевод очередной статьи «Design Patterns: Abstract Factory Pattern» автора Shubham Zanwar.

Абстрактная фабрика - это конструктивный шаблон проектирования. Он используется, когда нам нужно создать семейство похожих продуктов. Давайте для понимания возьмем пример сети пиццерий.

Читать далее
Total votes 16: ↑9 and ↓7+2
Comments11

RubyGems Digest 2020·10

Reading time5 min
Views2.2K
Большая подборка информации о библиотеках языка Ruby за октябрь 2020 года. Новости, включая русскоязычные источники. А также полезные мнения и опыт разработки.


Читать дальше →
Total votes 10: ↑10 and ↓0+10
Comments2

Хостинг статических сайтов на AWS

Reading time7 min
Views12K
В данной статье я хочу подробно разобрать тему хостинга статических сайтов на AWS. Тему нельзя назвать сильно сложной, но нюансов хватает. Для настройки вручную потребуется организовать взаимодействие 4-5 сервисов, а по дороге порой можно встретить весьма интересные грабли.

Некоторое время назад существовал официальный туториал по такой ручной настройке. Местами он мог показаться сложным, местами странным. Скорее всего, это была дань универсальности и необходимости продемонстрировать разные варианты хостинга. Однако сейчас туториал кардинально обновлен, и предлагает использовать сервис AWS Amplify для решения такой задачи. С одной стороны, это удобно, но с другой стороны, иногда необходимо разобраться, что же именно происходит “под капотом”. Поэтому здесь мы разберем, как все настроить руками.
Читать дальше →
Total votes 36: ↑36 and ↓0+36
Comments9

Краш-курс по интерфейсам в Go

Reading time9 min
Views90K
Интерфейсы в Go представляют собой одну из отличительных особенностей языка, формирующих способ решения задач. При схожести с интерфейсами в других языках, интерфейсы Go всё же имеют важные отличия и это поначалу приводит к избыточному переиспользованию интерфейсов и путанице в том, как и когда их использовать. Это нормально, но давайте попробуем разобраться, в чем же особенность интерфейсов в Go, как они устроены, почему так важны и что значит ортогональность интерфейсных типов и структурных типов в Go.

В этой статье вы узнаете:

  • в чем отличие от интерфейсов в Java
  • важные и неочевидные последствия этих отличий
  • как устроены интерфейсы под капотом
  • вспомним про пустой интерфейс (interface{})
  • затронем сакральную тему про дженерики
  • разберемся, кто и зачем должен создавать интерфейс
  • и постараемся научиться не абьюзить интерфейсы и начать жить

Header
(artwork by Svitlana Agudova)
Читать дальше →
Total votes 39: ↑32 and ↓7+25
Comments19

Знакомство с Go — пишем граббер веб страниц с многопоточностью и блудницами

Reading time11 min
Views70K
Про язык Go от команды Google слышали, наверное, все. А вот пробовали далеко не все, и очень зря — общение с сусликами Go это море удовольствия, в чем я недавно убедился на собственном опыте.
Начинать знакомство с новым языком забавнее всего на жизненном примере, поэтому я, не долго думая, взял первую попавшуюся задачу “из жизни, самой первостепенной важности”:

Есть в интернете сайт http://vpustotu.ru на котором любой желающий может анонимно высказаться о наболевшем. Все высказывания (в дальнейшем буду называть их “цитатами”) сначала попадают в модерацию (аналог “бездны” башорга), где посетители могут оценить полет мысли и проголосовать за цитату в стиле “Ого!” или “Ерунда!”. На странице модерации (http://vpustotu.ru/moderation/) нам показывают случайную цитату, ссылки голосования и ссылку “Еще”, которая ведет на эту же страницу. Пощелкайте, это все очень просто.

И вот возникла задача – срочно, под покровом темноты, загрузить себе полный дамп всех цитат на модерации для дальнейшего секретного исследования. Не будем оценивать житейскую ценность и степень идиотизма задачи, а рассмотрим её с технической точки зрения:

В разделе модерации нет прямых ссылок на определенную цитату, единственный способ получить новую цитату – обновить страницу (или перейти по ссылке “еще”, что одно и тоже). Причем вполне возможны повторы, что легко обнаруживается после пары минут агрессивного кликинга.

Таким образом нужна программа, которая:

  • Должна последовательно обновлять и парсить (разбирать) страницу, записывая цитату.
  • Должна уметь отбрасывать дубликаты.


Логично, что мы понятия не имеем все ли цитаты загружены, но об этом можно косвенно догадаться по большому количеству повторно полученных цитат подряд. Поэтому дополним:

  • Должна останавливаться не только по команде, но и по достижению определенного числа “повторов”, например 500!
  • Так как это, скорее всего, займет некоторое время: необходимо уметь продолжить “с места на котором остановились” после закрытия.
  • Ну и раз уж все-таки это надолго – пусть делает свое грязное дело в несколько потоков. Хорошо-бы в целых 4 потока (или даже 5!).
  • И отчитывается об успехах в консоль каждые, скажем, 10 секунд.
  • А все эти параметры пускай принимает из аргументов командной строки!


Ну, вроде все понятно. Пусть программа ведет два файла – с цитатами и с некими хешами этих цитат, чтобы не повторяться, и перечитывает файл в начале каждого запуска. Ну а дальше в цикле разбирает страницу, выдергивая все новые и новые откровения, пока не получит ctrl-c по лбу или же не встретит определенное количество повторов. Задача ясна, план есть – поехали!
Читать дальше →
Total votes 78: ↑74 and ↓4+70
Comments30

Пишем движок полнотекстового поиска на Go

Reading time8 min
Views18K
Полнотекстовый поиск — один из тех инструментов, которые мы используем практически каждый день, когда ищем какую-то информацию в интернете. Full-Text Search (FTS) — это метод поиска текста в коллекции документов. Документ может ссылаться на веб-страницу, газетную статью, сообщение электронной почты или любой структурированный текст.

Сегодня мы собираемся написать собственный движок FTS. К концу этой статьи он сможет выполнять поиск по миллионам документов менее чем за миллисекунду. Начнём с простых поисковых запросов, таких как «Выдать все документы со словом cat», а потом расширим движок для поддержки более сложных логических запросов.

Примечание: самым известным движком полнотекстового поиска является Lucene (а также Elasticsearch и Solr, построенные на его основе).
Читать дальше →
Total votes 47: ↑46 and ↓1+45
Comments23
1
23 ...

Information

Rating
Does not participate
Location
Berlin, Berlin, Германия
Date of birth
Registered
Activity