Записи с темой: программирование (список заголовков)
13:03 

Threads

Североамериканский кролик зануда
Как-то решил я наладить общение с бэкендом своего плагина не через http запросы, а по вебсокетам. Написал модуль, оттестировал, всё работает, но есть одна проблема. В момент, когда доходило до слушания вебсокета, игровой сервер, внутри которого был запущен код, начинал считать, что всё зависло, требуется перезагрузка. Так я узнал по многопоточности. Разобрался в теории вопроса, даже прототип сделал. В итоге, решили оставить как есть.

Но это присказка.
10 октября была лекция по потокам в рамках AndroidAcademy. Вот тут у нас потоки, здесь локи, вот такие у нас гейзенбаги. Под конец, есть ещё такая мелочь, как RxJava.
На второй половине лекции докладчик оплавил мозговые предохранители трети аудитории шестью строчками кода. То есть, докладчик - про, тут вопросов нет, но 20 минут без картиночек было напряжно. Хотя, ближе к концу появилась ссылка на ресурс, где можно увидеть все эти взаибодействия абстракций блее наглядно. И ещё немного ссылок на материалы. В ходе повествования упомянули фабричные методы и сериализацию. Пришлось устраивать себе ликбез.
Короче, не зря сходил.

Теперь о моменте, который меня припёк.
Это была 5 лекция. Впервые докладчик - девушка. Нашлись же люди, которые вопросами не пытались узнать новое, а проверить уровень докладчика.

Короче, как всегда, сходил не зря.

@темы: программирование, Размышления, Люди, TIL

15:16 

Североамериканский кролик зануда
lulz.com/linux-devs-threaten-killswitch-coc-con...
Суть: ЛГБТ активисты принесли контрибуторам ядра линукса Code of Conduct и угрожают исключить из линукс сообщества несогласных с CoC. На что несогласные с CoC контрибуторы сказали, что лицензируют свой вклад в ядро линукса, и без их согласия использовать линукс с фрагментами кода таких контрибуторов будет нальзя.
По ссылке немного лулзов от попыток травли несогласных с кодексом.

ПОбежал за попоконом.

@темы: Люди, программирование

17:27 

Североамериканский кролик зануда
Вчера после лекции Android Academy мы уже закрепленными за менторами группами двинулись в бургерную.
Знакомились, говорили обо всём подряд. Очень не хотелось уходить, но добиратья было от Белорусской до Подольска всё-таки.
Группа подбиралась с разным уровнем скиллов участников. То есть, по словам ментора, по домашним заданиям кто-то ваяет почти продовый код, а кто-то только знакомится с гитом.
Как я и предполагал, джуны рынку неинтересны. Повезло тем, у кого есть опыт работы 1+ год в том или ином направлении. Тут по новому всплывает важность стажировок за 20+к в месяц. Самые лакомые куски - миддлы. Миддлу можно поставить задачу с минимумом объяснений, можно давать иногда задачи уровня сениор и платить как миддлу.
Прозвучала интересная история об оплате труда в Калифорнии. Зависит от ученой степени. По этой причине, работодатель не всегда заинтересован в в получении работником этих самых ученых степеней (магистра и выше).

@темы: Люди, Размышления, программирование

12:12 

Североамериканский кролик зануда
После года работы над проектом предложили стать лидером пересобранной команды из 4 человек.
Согласился, конечно, но есть один нюанс. Надо быстро стать fullstack py web dev, чтобы понимать, о чем будуть говорить будущие подчиненные.
Начал с udemy курсов.

@темы: программирование, Размышления

08:27 

Жизненный баян

Североамериканский кролик зануда
Она: я хочу, чтобы ты сделал мне больно!

Он: ты вливаешь ветку другого разработчика, а там 124 конфликта…

Она: погоди-ка, что?

Он: открываешь его код, а там переменные транслитом и ни одного комментария…

Она: *стоп слово*

@темы: Юмор, программирование

18:13 

Североамериканский кролик зануда
Собрать пайплайн, чтобы запустить контейнер со скриптом, который отсортирует файлы, забившие диск, чтобы на освободившемся месте затеять обновление игровой ноды, чтобы на её базе запустить игровые сервера.
На проде.
Время простоя - два с половиной часа.
Можно сказать, уложился в KPI одной большой компании.

@темы: программирование, Размышления

13:22 

if/else vs try/catch

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

С точки зрения структуры программы, ответ очевиден:
- if/else используется для инструкций согласно логике алгоритма.
- try/catch нужен для обработки событий, выходящих за рамки алгоритма.
То есть, ответ на мой вопрос зависит от того, предполагается ли в принципе обработка объекта, не принадлежащего списку объектов.
Но дальше начинаются нюансы:


- в языках типа Java, Python есть разные типы исключений, которые наследуются от некоего корневого исключения.
В аргумент catch можно сразу поместить тот вид исключения, который тебя интересует. По этой причине рекомендуют обрабатывать исключение. НО: если мы идём этим путём, что использовать просто Exception - прятать от себя ошибки.

- обработка исключений в Java до 7 версии жрет сильно больше if/else. (обсуждение на тему.)

- в Javasсript аргумент catch не может быть наследован от какого-то исключения. То есть, придётсся принимать сключение, потом явно его обрабатывать, плюс непредсказуемое поведение кода. Короче, такая фича признана устаревшей (вот тут подбробнее в разделе Conditional catch clauses). Так что лучше провести явную проверку вместо ловли исключений.


Итого, python, Java 7+ - try/catch, Javasсript - if/else.
Выше изложил своё мнение, давайте обсуждать.

@темы: программирование, Размышления

11:10 

Североамериканский кролик зануда
На работе пока тишь.
Вспомнил, что много курсов на Udemy взял в своё время. НЕспешно осваиваю. Расширяю кругозор.
Скоро, наверное, грянет гром. Бизнес придёт с идеями, я буду рвать кудряшки и вопрошать "как это делать". Но сейчас тииихо.
Из возможных проектов - кастомный сервер майнкрафта в виде компетитивного шутера. Понятно, что уже есть законченные проекты на эту тему, но в нашем случае видится мне велосипед.

@темы: Размышления, программирование

06:37 

motd

Североамериканский кролик зануда
Valve как всегда. Сделали очень правильную вещь: запретили вызов motd (Message of the Day) окна от слова совсем в любом месте кроме приветствия игрока при подсоединении к серверу. Дело в том, что это окно экплуатировалось как единственный годный vgui элемент внутри каунтерстрайка. Но теперь недобросовестным рекламщикам на кастомных серверах конец! А заодно и нашему проекту, поскольку это была единственная возможность не выходя из клиента каунтерстрайка начать новый матч (работать с броузером оверлея стима со стороны сервера нельзя). И вот уже неделю я пытаюсь обойти это нововведение. Безуспешно. Бесит.
Честно: я ещё от весенних недельных кулдаунов на трейды не отошел.

@темы: программирование, Размышления

10:52 

Оттого, что в кузнице не было гвоздя.

Североамериканский кролик зануда
На удаленном сервере minio кончилось место. Скрипт, который отгружал в minio мегабайты логов, словил ошибку и свернул свою деятельность. Буфер на сервере, куда скидывались логи для отправки в minio разросся до нескольких гигабайт. Количество игровых серверов, которые можно запустить одновременно, сократилось на 70%.
Короче, надо было почистить minio. Оказалось, что у них довольно милый API. За час был накидан скрипт, который решил проблему.

@темы: программирование, Размышления

11:14 

Североамериканский кролик зануда
Интересно, если спарить синего слоника и желтого слоника, у них получится зелёный слоник?

@темы: Размышления, программирование

13:11 

П - Прокрастинация

Североамериканский кролик зануда
Родилась идея для геймплея. Могу рассказать, показать, но собрать даже Proof of concept не хватит скила. Хотя, как раз замечательный пет проект, чтобы уже переключаться на геймдев.
И что я делаю для продвижения проекта? Отвисаю в манга читалке и мобильных РПГ.
Хотя все условия для "бери и делай".

@темы: Размышления, программирование

15:05 

Североамериканский кролик зануда
Видимо, все мечтатели о геймдеве рано или поздно доходят до размещения баннеров рекламы внутри продукта.

@темы: Размышления, программирование

00:29 

Североамериканский кролик зануда
Переделывая один стишок:
Мои мысли по поводу конфигурирования Elasticsearch/Logstash/Kibana
Чую, придет ещё синий кит, тогда вешаться можно.

@темы: программирование, Юмор, Размышления

12:31 

Rocketchat

Североамериканский кролик зануда
Пересели со слака.
Тестим.
Функционал тот же, но не надо доплачивать за дополнительные функции.
Все плюсы и минусы опенсорса в наличии.
Сам rocketchat это серверная часть Meteor/Mongo/Node.js и проксирование через любой понравившийся сервер. У меня это Caddy из-за https из коробки.
Сопобы установки: руками, docker, snap.
Пробую через snap на ubuntu.
Придется много чего настраивать в опциях. Например, подгрузка файлов по дефолту через GridFS(Mongo) не работала. Сделал просто папку на сервере.
Ещё разбираться с красивой аутентификацией.
Багов что на мобильной, что на десктопной пока не заметил.

@темы: Размышления, программирование

15:27 

Североамериканский кролик зануда
Раскориваю Docker. Забористо. Unity/Godot туториалы пылятся. Про Blender вообще молчу.
Тигр, что ты делаешь в космосе?

UPD: собираем контейнер из образа-надстройки над другим образом и запускаем трехстрочной командой. Работает.
Это странное ощущение, когда сознание не может охватить все детали гладко работающего процесса.

@темы: программирование, Размышления

12:11 

Source 2 engine editor

Североамериканский кролик зануда
Очень много клевых фишек по сравнению и спервой версией. Надо будет поиграться на досуге.


Очень надеюсь, что Вальв не профукает комьюнити на этой разработке.

@темы: программирование, Размышления

11:56 

Североамериканский кролик зануда
Провел занятие по java для школьников на английском с их согласия.
Я говорил на английском, только в половине случаев индивидуальных багов переходил на русский.
От детей такого не требовалось.
Надо будет подучить название разных знаков типа скобок, равно и прочее и как будет "присваивать" в разрезе оператора программирования. А так, интересный опыт!

@темы: программирование, Люди

11:41 

Минутка разочарования в соственных интеллектуальных способностях.

Североамериканский кролик зануда
class Warmup_handle:
def __init__(self):

def players_increment(self):

def players_decrement(self):

w_h = Warmup_handle
w_h.players_increment
и error.

Правильно так

@темы: Размышления, программирование

14:35 

Североамериканский кролик зануда
Если я программист, что на моем компе делают Gimp и Blender?

@темы: Размышления, программирование

25 сантиметров. В секунду.

главная