Highly Likely
Так что конкретного ждут от луа миддла
Знания Lua, хотя бы поверхностное знание внутрянки Lua, знакомство с Житом и его устройством, умение работать с FFI/C API, умение быстро вникать в задачи и залатывать пробелы в знаниях, понимание процессов код-ревью и корпоративной работы, etc, etc
Highly Likely
Умение работать с ЦУ и другими людьми :)
Mikhail
Ясно
Serezha
вот это уже мясо да
Highly Likely
Ну и познания в сфере архитектуру в тч. TDD, DDD, Паттерны, всё вот это
Serezha
про джит туманно как то, в интернетах говорят что тока майк палл понимает как там работает
Highly Likely
про джит туманно как то, в интернетах говорят что тока майк палл понимает как там работает
Знаю лично аж 6 человек, которые точно-точно знают как работает жит :)
fgntfg
Странное говорят
Highly Likely
5 из них пишут свой на основе ЛуаЖИТа
Serezha
какой вклад внесли в 2.1 ?
Highly Likely
Что?
Serezha
я там код китайца вроде тока видел
Pavel
вообще - имхо, разница между мидлом и сенором - в самостоятельности. не только в ней, конечно же. но сеньор и мидл могут кодить одинаково и с одинаковой скоростью. но один может самостоятельно анализировать и вести продукт, а другой нет
Highly Likely
Никому неинтересно помогать пилить Луажит, учитывая позицию Майка
Highly Likely
Айпионвеб, Мылру и ряд других фирм уже давно пилят свой жит
Serezha
однако пилят а мы пользуемся
Serezha
у мейла видел тока зеркало
Highly Likely
IPONWEB обещали в этом году зарелизить свой жит
Snusmumriken
Так что конкретного ждут от луа миддла
Что бы я ждал от луа-миддла: 1. Примерное знание внутрянки луа + популярные либы (сокеты-жсоны-лфс-базы данных и специфичные для данной области, типа рести/ляписа/лувита), чтобы пользовался ими автоматически. 2. Умение калякать либы и биндинги к либам, соответственно умение в сишку. 3. Раз умение в сишку — значит нужен приличный уровень сишки, всякие указатели, не-текущая память, всякая такая лабуда. 4. Норм такой уровень знаний ОС: всякие сигналы-хендлеры-бла-бла-бла. 5. Сетевой стек (сейчас редко когда пишется что-то не сетевое), хттп-тсп-удп, опц. шифрования всякие 6. Базовый матан на уровне одиннадцати классов, если требуется больше (всякие дифуры и прочие функаны) — значит больше. 7. Ну и утилити-скиллы, всякие гиты, умения пользоваться командной строкой и прочая. И самый главный скилл: полное тотальное придерживание нашего внутреннего код-стайл-гайда.
Highly Likely
Но возрадуемся, что Снус - не HR :) Никто на позицию миддла не пойдет с требованиями 4 и 5 пункта
Highly Likely
Да и 3 тоже
Snusmumriken
Да не. Норм требования, правда я сам им не соответствую (как раз в области сишки, только базовая фигня на уровне простеньких биндингов к луям, память тичот!) => я джун ))
Serezha
чот судя по докладу апонвеб даже не догонит 2.1 по новым возможностям
fgntfg
Я раньше мог бы соответствовать мидлу снуса, но я уже все забыл
Serezha
Что бы я ждал от луа-миддла: 1. Примерное знание внутрянки луа + популярные либы (сокеты-жсоны-лфс-базы данных и специфичные для данной области, типа рести/ляписа/лувита), чтобы пользовался ими автоматически. 2. Умение калякать либы и биндинги к либам, соответственно умение в сишку. 3. Раз умение в сишку — значит нужен приличный уровень сишки, всякие указатели, не-текущая память, всякая такая лабуда. 4. Норм такой уровень знаний ОС: всякие сигналы-хендлеры-бла-бла-бла. 5. Сетевой стек (сейчас редко когда пишется что-то не сетевое), хттп-тсп-удп, опц. шифрования всякие 6. Базовый матан на уровне одиннадцати классов, если требуется больше (всякие дифуры и прочие функаны) — значит больше. 7. Ну и утилити-скиллы, всякие гиты, умения пользоваться командной строкой и прочая. И самый главный скилл: полное тотальное придерживание нашего внутреннего код-стайл-гайда.
Гхм. Ну тогда надо слишком уж любить Луа чтобы на это все подписываться 🙂
Highly Likely
Ну ОС стек, да
Highly Likely
Ну, вернее, как. Тут неясно, что именно он хочет :)
Snusmumriken
Гхм. Ну тогда надо слишком уж любить Луа чтобы на это все подписываться 🙂
Да не, всё норм. Почему именно такие штуки — потому что если луёвый кодер регулярно работает в (сишном/плюсовом) приложении, которое пишется в организации, ему крайне стоит уметь работать с сишкой, чтобы представлять где разрабы его луёвой рабочей среды. И, крайне желательна способность пофиксить это хотя бы в общих чертах. А то "усё упало, разбирайтесь" — довольно забавный способ сидеть и ничего не делать : )
fgntfg
А мне тут не хватает сетевого стека
Я прекрасно понимаю сеть. Что в чем живет. Но если не надо на низкий уровень прям идти и руками рвать пакеты. Туда только с документацией
fgntfg
Я скорей с современными реалими ос не знаком, что там куда. У меня это все на уровне года эдак 95-98
fgntfg
Как и в сишке, кстати
Serezha
А в 2.1 сняли ограничение по памяти? :)
Я не силен в матан, думал это оно и есть? https://www.freelists.org/post/luajit/LuaJIT210beta3
Serezha
>> This mode removes the 32 bit limitation for garbage collected memory on 64 bit systems.
Snusmumriken
А в 2.1 сняли ограничение по памяти? :)
Где-то тут (пару лет назад) был нотариально заверенный скриншот x64-luajit'а (под линексами), который отожрал 28гб оперативки.
fgntfg
Всего лишь
Snusmumriken
Сколько есть у сервера, столько и отожрано.
fgntfg
Прям как ява
Serezha
Да похоже тут не все в курсе что луаджит официальный живет и развивается
Serezha
Пишут на коленке свой причем не успевая за официальным. Ж)
fgntfg
Лично мне всё равно, я Lua не за это люблю.
Snusmumriken
Прям как ява
Там был чисто тест, сколько прожуёт луажыт, и не сломается ли он от разрастания на 1/4гб, но он пошёл немножко дальше.
Serezha
вот у Roblox была интересная вакансия они похоже хардкорно хотят джит пофейслифтить
Serezha
согласитесь - приятнее писать игровой движок для десятков миллионов подростков чем ковыряться в нутрях каких то плюсовых библиотек
Serezha
или что там от миддла требуют здесь
Serezha
репорты фигачить в визивиге
Snusmumriken
Складывается впечатление, что миллиард организаций (mail_ru, iponweb, roblox_corp etc) как можно быстрее пишут свой luajit для внутренних нужд сбиш. А могли бы объединиться : )
Serezha
нанять майка 🙂
Snusmumriken
согласитесь - приятнее писать игровой движок для десятков миллионов подростков чем ковыряться в нутрях каких то плюсовых библиотек
Этот игровой движок для десятков миллионов подростков — просто куча плюсовых либ, и, что характерно, у них внутре надо ковыряться!
Serezha
хотя его проект гарбадж коллектора уже устареть успел кмк. можно содрать у гошников или быстрых джвм машинок
Anonymous
Что устарело в его гц?
Snusmumriken
Ни один из изобретённых гц не устарел. Это концепция, которая хороша в одних условиях, и не очень хороша в других.
Snusmumriken
Иначе давно был бы один единственный алгоритм гц на все случаи жизни : )
Anonymous
Так он есть
Anonymous
Подсчет ссылок)))
Snusmumriken
А кто будет удалять ссылки? Другой ГЦ? )))
Anonymous
🐅🤦‍♂️
-- так работает local Foo = {} function Foo:doPress() print("doPress") end function Foo.new() local self = { x = 10, y = 10 } return setmetatable(self, {__index = Foo}) end -- а так - нет. Почему? local Foo = {__index = Foo} function Foo:doPress() print("doPress") end function Foo.new() local self = { x = 10, y = 10 } return setmetatable(self, Foo) end -- использую так local fo = Foo.new() fo:doPress()
Snusmumriken
Форматирование есть, это круто, но перед тем как запостить код попробуй или (пк) выделить его и нажать ctrl + shift + m, или (любая платформа) — обрамить тройными обратными апострофами (`). Не работает потому что local Foo = {__index = [Foo]} — сначала выполняется выражение, которое потом присваивается переменной Foo. В позиции [Foo], её пока не существует, фактически __index = nil. Давай вот так: local Foo = {} Foo.__index = Foo function Foo:new(...) self = setmetatable({}, self) self.x, self.y = ... return self end local obj = Foo:new(10, 20) Или local Foo = {} Foo.__index = Foo function Foo.new(...) local self = setmetatable({}, Foo) self.x, self.y = ... return self end local obj = Foo.new(10, 20)
🐅🤦‍♂️
Понял, спасибо.
Snusmumriken
Гхм. Ну тогда надо слишком уж любить Луа чтобы на это все подписываться 🙂
Кстати, на позиции жаваскрипт-миддла (который работает с нодой, например), требования были бы точно такие же, только вместо первого пункта было бы то же самое, но относящееся к жаваскрипту. К питону — та же фигня. У браузер-ориентированных жаваскриптовиков было бы попроще с точки зрения сишки, но гораздо, гораздо хуже по количеству досконально изученных фреймворков. Это особенности миддлов, они более-менее представляют с чем они работают.
fgntfg
Короче, мидл хорошо знает свою область.
fgntfg
И немного соседние
Snusmumriken
И несколько смежных.
Snusmumriken
Да
Serezha
Если вы умеете находить или готовить таких - красавчики 🙂
Snusmumriken
Такие сами готовятся, лет за пять-семь разнотиповых задач : ) Если человек сидит на одном месте и выполняет одинаковые таски — он не вырастет из ждуна (ждун, хе-хе).
Serezha
Ну просто сложно представить нормального программиста который пойдет вот это все кодить
fgntfg
По моему опыту нужно около 1000 часов чтоб выросло
Serezha
Вместо ML / AI / BigData / DataScience и что там на хайпе
Snusmumriken
Ну типа знаешь, ты встречаешься с какой-то проблемой и начинаешь её копать. У тебя свербит: ты вроде пишешь правильно, но оно почему-то неправильно! И спускаешься на более глубокий уровень, чтобы разобраться более-менее. Когда ты так уже сделал раз двести, в разных местах, затрагивая разные области — ты получил чуть-чуть опыта и стал примерно понимать с чем ты работаешь.
Serezha
И в каком же месте дата сайентист проваливается на уровень udp пакетов?
Snusmumriken
Ещё раз повторяю, это не джун. Для сеньора мало "очень хорошо знать свою область". А уж всяким "архитекторам" надо весьма неплохо знать сразу ВСЕ области, иначе будет косячить : )
Snusmumriken
+