Перейти к содержимому

Лидеры


Популярный контент

Показан контент с высокой репутацией 28.03.2021 во всех областях

  1. 2 балла
    Принято делать так, как удобно автору приложений. Если приложение большое, то удобно создать для него отдельный репозиторий. Небольшие приложения, объединённые одной тематикой, бывает удобно хранить в одном репозитории. Это как с папками на компьютере. В одной папке можно хранить и сотню файлов. А иногда и ради трёх файлов удобнее создать отдельную папку. Насколько я помню, приватные репозитории на гитхабе доступны лишь платно. Но существует, например, гитлаб, не имеющий такого ограничения.
  2. 1 балл
    Простая программа, дающая возможность наглядно управлять файлами, которые будут поставлены в очередь автозагрузки при включении компьютера. Команда для скачивания: pastebin run Tg2YLrcc Пример выполнения скриптов: Структура файла autorun.lua:
  3. 1 балл
    А вот это зашибись, да. Даже с картиночками! Прости за резкость, мяу
  4. 1 балл
    Странно... Просто я считал, что этот курс - мой единственный источник знаний по Git. Сейчас я его тоже перечитал, и понял, что теории там действительно нет, вообще. Похоже, уровень у меня был ни разу не "околонулевой", как я считал, и где-то до этого я добирался знаниями. В любом случае, думаю, в качестве курса-компаньона для закрепления знаний, полученных из вышеупомянутой книги, сойдет
  5. 1 балл
    Если нужно сохранить резервную копию проекта / работать совместно с кем-то / работать на нескольких ПК, то да, смысл имеется. Если все вышеперечисленное неважно, и работа не ведется с помощью Git уже сейчас, то это просто лишняя трата времени на создание, настройку и поддержку репозитория. Если локальный репозиторий уже есть - он загружается в пару кликов, то тогда почему бы и не загрузить?
  6. 1 балл
    Нет, на гитхабе приватные репозитории уже давно бесплатные и без ограничения на кол-во)) Кстати, ещё вопрос про организации. В моём случае есть смысл их создавать там? Или они вообще для другого?
  7. 1 балл
    Проблема: мы с друзьями живём в различных измерениях или на огромном расстоянии друг от друга, из-за чего беспроводные модемы использовать невозможно. При этом нам нужна система, позволяющая отправлять приватные сообщения конкретному человеку, зная адрес получателя. Очевидным решением будет использование связанных плат, но что если нужно работать более чем с 1 получателем? Связанные платы, увы, лимитированы. Что если мы играем с GalactiCraft, имеем базу на Земле, и кровь из носу хочется контролировать добычу камня на Луне, реакторы на Марсе и ферму урана на Венере с одного компьютера? Решение: объединить множество связанных плат в кластер! Принцип работы системы проще пареной репы: каждый новый клиент, подключаемый к сети, должен предоставить 1 из 2 скрафченных связанных плат. Первую мы вставляем в кластер, а вторую - в компьютер клиента. Чтобы отослать сообщение другому клиенту кластера, нужно знать имя канала его связанной платы. Далее - дело техники: если сервер получает сообщение от связанной платы, то осуществляется поиск платы-получателя в нём же. Если плата-получатель не найдена, то сообщение перенаправляется через широковещательный пакет проводного модема всем серверам кластера, чтобы те в свою очередь попытались найти получателя. Если получатель найден - ему отсылается имя канала отправителя и само сообщение. Теперь подумаем, как лучше объединить связанные платы. Каждая плата может быть вставлена только в Tier 3 слот компьютера или сервера. Оптимальным решением для экономии пространства будет использование серверных стоек, т.к. каждый Tier 3 сервер имеет целых 2 Tier 3 слота. Поэтому каждый сервер сможет обслуживать максимум 2 клиента сети. В итоге схема расположения стоек и конфигурация серверов должна быть примерно такой: Процессор не важен, память не важна, и требования если не нулевые, то минимальные. Разумеется, каждый сервер будет работать на микропрограмме EEPROM, ибо крафтить для этого жёсткие диски было бы нецелесообразно. Берем код и прошиваем столько EEPPROM'ов, сколько требуется: https://gist.github.com/IgorTimofeev/15b75915caa93a344c2be25dac308138 После включения сервер будет доступен для взаимодействия. Как же отправить сообщение получателю? Используем функцию tunnel.send(), и первым аргументом указываем имя канала получателя. Его можно получить через tunnel.getChannel(): local tunnel = require("component").tunnel local receiver = "867a85de-ae4c-4359-b06f-0d30c5dad6f1" tunnel.send(receiver, "Привет") Это всё замечательно - но где же практический пример? Давайте запустим чат! Да простят меня боги, старые и новые, но я буду использовать MineOS, т.к. общаться через GUI мне банально удобнее. Во всех компьютерах сети создаем новое приложение, открываем файл Main.lua для редактирования: Берём исходник чата: https://gist.github.com/IgorTimofeev/724992e8641245a51cef57ac883f541f Вставляем его содержимое вместо имеющегося в Main.lua и запускаем приложение. Для отсылки сообщения необходимо ввести канал связанной платы получателя, а также отправляемый текст. Вот пример интеллектуальной беседы двух величайших умов современности: Кроме того, каждый сервер кластера поддерживает протокол для обновления прошивки по сети, а также удаленного отключения и запуска всех серверов. Для этого вам потребуется отдельный компьютер, находящийся в локальной сети с кластером. Для удобства я также накатал мини-приложение: https://gist.github.com/IgorTimofeev/0fe93bd4549aa32161b9dbbba59425e8 Подытоживая, хотелось бы отметить, что этот софт находится в разделе "программы новичков", он не преследует никаких глобальных целей и не реализует "киллер-фич", ориентируясь больше на прикладное использование. Разумеется, серверную часть можно улучшить по своему вкусу, добавив поддержку широковещательных пакетов, PING-систему и системные события по типу дисконнекта/доступности серверов, а для клинетского чата можно реализовать систему контактов и отсылку медиа-файлов. Было бы время и желание... Однако в своё время даже такой функционал неплохо сохранил нам нервы во время войн с серверной цензурой, а также экономил время, которое потребовалось для длительных полётов на разбросанные по уголкам вселенной базы. Надеюсь, для кого-нибудь эта схема будет так же полезна, как и для нас c:
  8. 1 балл
    Простое решение для дистрибутивов, основанных на Debain:
  9. 1 балл
    В Ubuntu, Debaian и других подобных системах для запуска лаунчеров Майнкрафта требуется установить JavaFX: # apt install openjfx Больше ничего не требуется. JRE подтянется через зависимости.
  10. 1 балл
    Какой именно лаунчер? В некоторых лаунчерах используется JavaFX. У тебя стоит OpenJDK, есть шанс, что JavaFX придётся ставить отдельно, в виде штуки под названием OpenJFX. https://openjfx.io/ Ну и это, текст ошибки бы.
  11. 0 баллов
    Новичковая, ага. Как человек, несколько лет использующий гит по цыганскому принципу "версионной файлопомойки", открыл линк ради общего развития - надо же когда-то начинать! Ни пояснения терминологии (что вообще такое репозиторий, коммит, индексация, ветки, мерж конфликты?), ни реальных примеров, ради которых осуществляется <действие> - тупо конспект для зазубривания вместо практического обучения. На пункте ниже закрыл статью как "нечитабельную". Что за теги, откуда они взялись? Для чего они? Я вижу, что "для использования в будущем", но почему мне нужно знать о них именно сейчас? Гении, блин, с 10к IQ статью писали. В чем отличие тегов от имён веток? Можно ли назначить несколько тегов одной ветке? Зачем? А ведь мы ещё даже rebase не дошли
Эта таблица лидеров рассчитана в Москва/GMT+03:00
×
×
  • Создать...