Pull to refresh
147
0
Зубашев Степан @faiwer

frontend-программист

Send message
Для достижения взлётной скорости пилот прыгает с самолёта. Думаю какая-нибудь очень высокая скала, как те, с которых прыгают wing-suiter-ы тоже сгодится. Не думаю, что у вас поблизости от дома есть подходящие условия. А за 10 минут на скорости 200км\ч можно далеко улететь, конечно же. Ах да. Ещё нужны навыки профессионального парашютиста.
А ну да, вы правы, речь идёт о смертниках. Нуу… стоимость этой аппаратуры слишком велика. Проще купить мото-параплан, подняться над объектом на необходимую высоту с бомбой и отстегнуться от параплана. Тут главное чтобы никто не разбежался услышав вой мотора. По поводу лёгкую авиации. Собьют же. А если не собьют, то можно прямо с этой авиации и бомбить.
Мир ещё не встречал более нелепого оружия :)

Для полёта такого шахида потребуется поднимать в воздух самолёт и доставлять шахида как пассажира чуть ли не вплотную к цели. Сам же шахид не обладает в таком костюме выдающимися прицельными характеристиками. Тут нужная дорогостоящая электроника… Вооружения на себе он много не пронесёт. После «атаки» ему нужно как-то добраться до дома живым. Как-минимум потому, что оборудование сие жутко дорогое. Притом что на всё про всё топлива только на 10 минут. Залететь назад в самолёт тоже не получится. Разве что если цель его уничтожить :D

В общем, шахиды на мотодельтапланах и то видятся мне более реалистичным вариантом. К тому же подобное встречалось в мировой практике.
Я уже отправлял такой багрепорт. Месяца 3 назад. Как и все остальные он остался без ответа =(
Потому что надо было сразу нативный делать.
Полагаю, что тогда Vivaldi бы даже не родился. Ибо необходимое кол-во ресурсов для построения гибкого нативного UI, гораздо большее, чем в случае HTML+CSS+JS. Мне не понятны эти недовольства HTML интерфейсом.
Вопрос. А есть ли открытый roadmap?
Мы с вами как будто с разных планет. Большинство моих знакомых айтишников закончили такие же препоганые университеты, как и я. И придерживаются того же мнения по поводу образования. Даже не большинство, если честно, а вообще все.
И в айти конечно встречаются люди с очень разным образованием. Но как правило оно у всех высшее в хороших ВУЗ-ах.

Учитывая, что подавляющее большинство ВУЗов ужасное, просто шараги раздающие корочки бакалавров, я не знаю откуда могут взяться такое вот правило. Может быть мы с вами по разному трактуем слово «хороший ВУЗ»?
Сегодня без хотя бы незаконченного высшего образования устроиться в хорошую компанию, где вы бы смогли расти, а не штаны протирать (эй программист — почини мне принтер) очень сложно.
Я ни разу ни на одно собеседование не таскал диплом. Ни один работодатель не задавал мне вопрос о том, что я заканчивал. Никому из них не было интересно моё «образование». Всех интересовали навыки в профильной сфере, опыт работы, используемые мной технологии, результаты тестовых заданий. А вот на образование всем было попросту плевать. С моими знакомыми IT-ми точно такая же ситуация. Наверное можно встретить заведение, ищущее того же программиста, но интересующееся его дипломом. Но это скорее исключение от невежества в отделе кадров.

если бы не несколько лекций в университете по ООП и сиплюсплюсам.
У меня был семестр с C++ и ООП (это был 1 предмет). Мы на весь семестр растянули тему «наследование», «полиморфизм» и «инкапсуляция» и т.д… И из лекции в лекцию твердили одно и тоже. Весь семестр. Ужасно. Ещё был предмет по алгоритмам и структурам данных. Вершиной мастерства в этом семестре для нас было написание quicksort-а. Вот зачем посещать университеты, тратить там 4-5 лет, если в конечном счёте, всё сводится к этому?

По большому счёту единственные предметы которые вменяемо велись и учили нас чему то не тривиальному ― курс предметов по работе сетей. Во многом за счёт талантливого педагога. Ещё неплохо преподавались предметы по рисованию диаграмм.

Мы определённо с вами живём на разных планетах :D
Прошу прощения, а вы где учились? Мне кажется в СНГ ВУЗов, в которых, айтишников учат чему то дельному, ужасно мало. А профильные предметы часто ведут бывшие студенты троечники этих же ВУЗов. Сами учебные программы безнадёжно устаревают к моменту начала их написания, молчу уж про факт преподавания.

Существуют и толковые ВУЗы. Но среди общего кол-ва мусорных заведений их сложно разглядеть. Да и попасть туда. Соглашусь с Zibx по поводу образования.
В разных языках, библиотеках разные реализации но идея одна, посмотрите как работают файберы.
Года 3 назад я пытался использовать node-fibers. Работало оно крайне препогано. Часто падало с сегфолтами, существенные проблемы с отловом ошибок, практически невозможно было это дело как то дебажить. Может быть сейчас стало лучше.
Вы меня запутали :)

Таким образом у нас получается много легковесных потоков в рамках одного системного потока, которые не жалко блокировать.
1. А как тут дело обстоит с гонками, дедлоками и пр.? Ведь если это легковесный поток, то это именно поток…
2. Что-то мне подсказывает, что заморозить кадр в async-методе, и, когда нужно, разморозить его обратно ― должно быть гораздо дешевле, нежели запуск отдельного потока, пусть и легковесного. Так ли это?

Или под «легковесным потоком» вы подразумеваете не настоящий поток, а его имитацию, которая только приостанавливает выполнение одного стека, возобновляя другой, стоящий в очереди? Если да, то чем это отличается от await?
например если в синхронном «дереве» вызова появится асинхронная ф-ия, то все дерево придется перепиливать на async/promise а так же все связанные части проекта, когда с корутинами этого ничего делать не нужно.
Правильно ли я вас понимаю, что синхронное «дерево» остаётся синхронным, но необходимая часть выполняется асинхронно? Если да, то как это может работать не блокируя текущий поток? В JS он 1, всё таки.
А ещё стоило бы добавить пункт позволяющий, выделив текстовую ссылку, перейти по ней. Т.е. если в тексте написано blabla…, но сий текст не обрамлён <a/>. В Chrome пункт в контекстном называется «Go To», в Opera тоже была такая возможность.
Чем-то жертвовать придется :)
Ага. Собственно об этом я и говорю. Так то да, await, async, yield это куда лучше, чем calback-hell или promise-hell :)
В идеале как то так:

return await list
      .filter(fn1)
      .map(fn2)
      //
      .invoke(fn3)
      .reduce(fn4)
      .groupBy(fn5)
      .map(fn6)
      .value();

Получится весьма не тривиально :) Хотя да, более, чем подъёмно.
А какие еще функции имеют смысл в асинхронном варианте?
Любые из тех, что принимают callback-и. А это половина библиотеки. Из самых часто используемых: .flatten (либо .flatMap), .reduce, .filter, .transform, .each. К примеру, в .filter может потребоваться некая проверка значения memcahed по ключу.

К тому же стоит учесть, что очень часто они применяются в цепочке, а не раздельно друг от друга.

А ещё вы ошибаетесь приравнивания .map, .each и Promise.all. Как минимум некоторые реализации .each-а умеют break-ать при return false.
так что тут я особой монструозности то и не вижу

return await list.asyncMap(fn1)
       .asyncFilter(fn2)
       .reduce(fn3)
       .some(fn4);

А так? :)
Спасибо. Возьму на заметку.
Ещё небольшой пример. Наверняка многие уже взяли за привычку использовать .forEach или _.each, для перебора массивов. Это удобнее, чем for-of потому, что мы не теряем индексы. В случае async-метода приходится использовать

for(let i = 0, n = list.length; i < n; ++ i)
{
  let el = list[i];
  // ...
}


Правда тут есть 1 решение. Дождаться пока node (я не использую babel) сможет вот так:

for(let [el, i] from iter(list))

Где iter будет костылём, который позволит перебирать массив массив на манер Map-а.

Честно говоря, я не слежу за ES6-7. В Array случаем уже не добавили возможность перебора for-of-м без потери индексов?
теперь понял вас. Логично, что затолкав в .map async-и мы получим промисы :) Но я имел ввиду что-то похожее на вот это:

return await list.asyncMap(someAsyncMethod);

Где asyncMap сам async-метод, который await-ми переберёт list someAsyncMethod-ом.

Но даже написав свой .asyncMap мы толком ничего не выиграем. Потому, что для того чтобы цепочка из вот таких вот async-монстро-функций заработала, придётся изрядно по… возиться. И всё равно получится что попало.

Information

Rating
Does not participate
Location
Алматы (Алма-Ата), Алма-Атинская обл., Казахстан
Date of birth
Registered
Activity