nckma
0
Я в командировке: домой попаду через неделю, и еще впереди 4 самолета. Если бы можно было бы установить через USB кабель ПО для слепых, возможно оно бы мне помогло.
nckma
0
А у меня случай проще.
Я в командировке и на телефоне андроид внезапно перестал работать экран.
Сам телефон работает, я слышу приходящие смс или входящие звонки. Только не могу отреагировать — прочитать или даже снять трубку в слепую (хотя понимаю, что тач работает). Не знаю уровень заряда батареи или не знаю включен ли сейчас wifi или 4g.
Что делать? Есть ли способ запустить какое-то ПО на телефоне вслепую, чтобы пользоваться голосовым управлением?
nckma
0
Анекдот же. Или Москва.
nckma
0
Вот pick-and-place нашинка сделанная на коленках из старого принтера https://marsohod.org/projects/plata1/138-cloning
nckma
0
Ну а в принципе, как анимируются 3Д персонажи в играх и мультфильмах? Обвешивается реальный человек датчиками и бегает-прыгает. Снятые показания переносятся на персонаж. Что мешает обвешать рабочего датчиками и снять его перемещения?
nckma
–2
Да нет никакого доверия, пока нет достоверного способа фиксации фактов реального мира в системе цифрового мира.

Для виртуальных денег рожденных внутри системы это может работать. И да, тут мы можем им верить или не верить, как верят или не верят доллару.

Но для регистрации событий реального мира внутри системы цифрового мира уже обязательно понадобится уполномоченное доверенное лицо имеющее право вписывать транзакции в блокчейн.

Если уж выше заговорили про нотариальные заверения и кадастр… Если человек выстроил на участке земли трехэтажный дом, которого там раньше не было, то измерить этот дом может только БТИ и сведения затем подаются в юстицию. Возможно она и может сделать запись в общем реестре. У остальных участников сети нет никаких способов проверить истинное наличие дома и его площадь. А ведь недобросовестный чиновник может за взятку приуменьшить площадь дома, чтоб хозяин меньше платил налога на имущество или еще какую махинацию. Остальные не заметят и не проверят, хоть и блокчейн.
nckma
–2
Ну тогда не нужно акцентировать, что блокчейн «решает все проблемы» и «мир обойдется без посредников».
nckma
0
Ну может и хорошо, но очень не понятно.

Как раз этот момент нигде никакие маркетологи не описывают.
Передавать право собственности путем добавления новых записей в реестр — это более или менее понятно.
ОДНАКО, как система может знать у кого какая собственность есть? Эти данные первоначально должен в систему кто-то внести, правильно? А кто? Нотариус? Или служба юстиции? По какой процедуре вносятся первоначальные сведения о собственнике в систему? По какой процедуре удаляются сведения из системы (ну упал на дом метеорит, нет больше дома и нет собственности, а я тут собрался как они пишут со смартфона нажатием кнопки передать собственность 3-му лицу)?

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

nckma
–1
Причем, как мне кажется, эти маркетологи слегка лукавят в своих объяснениях превосходства блокчейна.

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

Я согласен, что можно доверять математическому аппарату, когда регистрируемое событие — это результат вычисления по некоторому алгоритму внутри системы, как биткоин или любая другая коин.

А вот когда говорят, что мол блокчейн заменит нотариусов, будет регистрировать сделки с имуществом и т.д., когда регистрирует внешнее к алгоритму событие — у участников сети нет никаких способов проверить его достоверность в момент регистрации.

Вот как раз этот момент никогда не раскрывается в подобных статьях.
nckma
+9
Я вот 25 лет работаю программистом C/C++ и не уверен пройду ли я собеседование хоть на какую-то должность программиста и смогу ли порешать их тестовые задачи. Вот даже тесты http://www.quizful.net/test для junior иногда не могу пройти.
nckma
+2
Как мне кажется, проблема в том, что в современный программист вынужден пользоваться высокоуровневыми средствами: языками и библиотеками. Изучить все тонкости происходящего «под капотом» не представляется возможным из-за скорости разработки.
Вот недавно столкнулся: проект использует библиотеки Qt. Все работает.
В классе QImage имеется две похожих функции с одинаковым именем для доступа к пикселям:
uchar * bits()
const uchar * bits() const

Первая, не всегда, но может вызвать «deep copy» — полное копирование пикселей всего изображения в другой буффер. Очень легко по невнимательности или по не знанию пропустить этот факт. Вот и получается — все вроде бы правильно и работает, но что-то где-то тормозит.

nckma
0
Тогда объясните в каких именно случаях предполагается использовать std::byte, а в каких unsigned char.
nckma
0
Что вы используете вместо OpenSSL?
nckma
+2
Самое смешное, что обычно бывает вот так: тим лид заставит всех писать единообразно, например, иерархия наследования, венгерская нотация, правильное число отступов на табуляции, и т.д. и т.п. Потом проходит время мода меняется. Теперь ОН ЖЕ заставляет google code rules, а венгерская нотация запрещена. Наследование c++ — не глубже 2, приветствуются только шаблоны. В код глянуть — это тихий ужас и кошмар: смесь старого и нового кода — это выглядит интересно.
И ведь известно, что благими намерениями выстлана дорога в ад.

nckma
0
если когда-то набирал команду, но не очень помнишь детали или синтаксис (например как установить vpn соединение), то
history | grep openconn
nckma
0
А почему вы думаете, что в нативном коде легко сделать защиту? Или по другому, почему вы думаете, что в нативном коде трудно разобраться?
nckma
+1
У меня просто по возникает такое ощущение, что есть языки, где время бежит не так быстро.
Например,
1) у железячников
Verilog/VHDL — все более или менее стабильно годами. Ну появился SystemVerilog, но как-то не быстро народ его берет на вооружение.
2) У микроконтрольщиков, там вообще только C редко C++. Микроконтроллеры плюс-минус одинаковые. То же время не быстро бежит. Ну наверное побыстрее, чем у ASIC-WORLD
3) C++ да появляются новые стандарты C++11, C++14, C++17 ну тут побыстрее жизнь идет, уже трудно идти в ногу со временем и приходится стараться.
4) Ну и апофеоз — это веб программирование JS/HTML/CSS и все эти фреймворки. Вот тут мне кажется началась полная вакханалия. Все бегут со скоростью ракеты изобретать новые фреймворки и мета языки.
nckma
0
Так а где же тут лень?
Знал бы только JS и радовался, но нет, нужно еще понять, что такое React, Vue, Angular, JQuery.
Получается работы по изучению в 5-10 раз больше. И можно ли стать хорошим специалистом если единая в общем веб технология растаскивается на разные подмножества языков, библиотек, компиляторов из мета-языков в другие языки…
nckma
–3
А кто компилирует такое? Это какие-то php скрипты или что?
Я честно говоря не программирую веб, вот такие статьи читаю и пытаюсь понять что это вообще такое.
Такое впечатление, что чистого языка мало и придумывают язык в языке, как какое-то мета-программирование…
Но в чем смысл? Почему не написать просто на JS? Это что сильно труднее?
nckma
0
Ладно с деньгами. А если это нотариальная сделка. Я сдаю свой дом в аренду, но никто не знает есть ли у меня дом. Я вступаю в сговор с майнером и он подписывает сделку с арендой.
nckma
+5
Вот вроде бы и понятно написано, но все равно не понятно.
Алиса передает 10$ Бобу и Чарли => оба факта пока недостоверны. И что дальше?
Два узла соревнуются в скорости создания блока — это я понимаю. Первый узел вписал свой блок сделав факт передачи Бобу 10$ проверенным. Но когда эта информация дойдет до других узлов, которые все еще пытаются вписать свой блок о передаче 10$ Чарли?

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

Еще, насчет избавиться от посредников.
Теперь посредниками становятся майнеры, ведь «Вот почему вы должны платить, чтобы записывать факты в блокчейн».
nckma
0
Да я тоже не юрист.
Но мне как-то странно, что вот строится целая законодательная глыба по лицензированию, криптографии, все строго и серьезно и тот вдруг раз «https» — можно. Хотя тот же https — это серьезное шифрование с серьезными целями и т.д.
Строгость российских законов компенсируется необязательностью их исполнения.
nckma
+4
Пожалуй это надо заскринить, распечатать и повесить на стену…
nckma
+3
Так и делаю. Но есть большая разница между понятно «хоть что-то» и «все понятно».
Когда понятно все, то можно сделать красивое решение. Когда понятно что-то, то можно сделать решение, но скорее всего будет костыль.
nckma
+5
Как насчет писать код в программе, которую вообще мало понимаешь?
Если смотришь на программу и она кажется абсурдом, нагромождением хаоса, спагетти?
А нужно развить или дополнить ее функционал.
nckma
0
Нет. Например, если требуются специальные аппаратные ускорители и платы, то виртуалки не подходят.
nckma
0
Нет, в количестве мониторов и системных блоков измеряется возможность удаленно работать или возможность часто перезжать.
nckma
0
Я думаю, что дело не в «россиюшке».
Я этот подход прямо сейчас наблюдаю в международной компании, где выполняю некоторые работы. Проблема с программистами (в отличии от шахтеров) — их работу трудно проверить и трудно оценить. Одна и та же задача может быть вылолнена бесчисленным числом способов, разными алгоритмами и с применением разных библиотек и технологий. Качество исполнения так же может быть разным. Вот тут вступает в дело роль языка: уговорить, уболтать, внушить доверие или скрыть свою промашку. Я вижу, как люди делают это. То есть да, на словах все герои и проповедуют чистоту кода, покрытие тестами, и всякие передовые технологии. Менеджеры слушают классных специалистов и тают и млеют. Разрешают им к 12ти приходить, они же ценные кадры, должны выспаться. А на деле посмотришь код этих специалистов и от ужаса волосы дыбом встают.
nckma
–3
Главный инструмент программиста — это не мозг. Главный инструмент — это язык.
Грамотный программист всегда может убедить, что
1) для выполнения этой задачи нужна неделя времени (хотя он сам знает, что и дня хватит)
2) его алгоритм самый лучший (хотя он и сам знает, что там костыль на костыле)
3) для выполнения задачи его мозг должен отдыхать, поэтому прийти в 12:00 — это правильно, только так он сможет быть эффективным
4) иногда, если особо сложная задача, то нужно обязательно пройтись по улице среди рабочего дня
5) для эффективной работы нужно обновить парк ПК, а лучше персональный игровой ноутбук
6) работа программиста сложнее, чем работа шахтера
и т.д.

Но не обижайтесь на правду.
Все программисты такие, и я такой, и Вы.

nckma
–2
У Вас видимо очень простая работа, если Вам нужен только один компьютер.
Мне вот одному нужно
1) физический сервер виртуальных машин
2) рабочее место программиста с двумя мониторами.
3) одно (но желательно два) клиентское рабочее место с двумя мониторами.
nckma
+5
Почему-то вспомнился демотиватор с шахтерами и подписью «Расскажи им как ты устал в офисе».
nckma
+4
Если бы такой эффект удалось экстраполировать до масштабов планеты и заменить весь код, занимающийся ресайзом картинок, на более эффективный, польза была бы огромной. Десятки тысяч сэкономленных серверов, сотни киловатт электричества. А это уже одна миллионная от мирового потребления. Да можно было бы спасти планету!

Почему-то сразу вспоминаю про сервера, которые майнят биткоин.
nckma
0
Хм… а по моему, при передаче кодом грея в метастабильном состоянии может оказаться только один бит, тот который в данный момент меняется. Остальные же изменились раньше и всегда верные.
nckma
+5
Хм… а почему Вы не стали использовать код грея для передачи указателей фифо через домен? Я думал это стандартное, проверенное временем решение, которое используют все.
nckma
+4
Интересный подход, но мне кажется, что он размывает мысленную связь между написанным кодом и представлением, как это будет выглядеть в RTL viewer.
Когда я пишу always @(posedge clk) if(a) b<= data; то я мысленно представляю, что это будет регистр с сигналом разрешения записи.
Когда я пишу always @(posedge clk) if(a) b<= data else b<=data2; то для меня это мультиплексор данных на входе регистра. Я так пишу и представляю. С вашим подходом такое мысленное представление не получится (или его труднее увидеть).

Причем я заметил, что громоздкие конструкции, где много if-else как правило выглядят в RTL viewer ужасно (много мультиплексоров) и схема в ПЛИС становится медленной, Fmax падает.

То есть, громоздкие конструкции с многими if-else, которые выбирают приоритет выполнения операций есть проблемы. Желательно их избегать, желательно не более 2х последовательных if-else. Синтезатор то их синтезирует — вроде бы проблем нет. Но будет ли удачно все потом упаковано фитером?

В вашем подходе так же присутствуют «незримые if-else» на которые вы предлагаете не обращать внимания, мол синтезатор справится. Эдакое движение в сторону высокоуровневых языков программирования.
Ну не знаю… не уверен…
nckma
+8
Собственно вопрос: как блокчейн технически работает?
Если база есть у всех одновременно, то как транзакция вписывается сразу всем?
Как несколько одновременных транзакций вписываются в базу?
nckma
0
Немного не по теме…
А подскажите, где можно найти процессоры или материнки с FPGA бывшей «Альтера»?
nckma
0
Как по мне «кремниевая» — это когда разрабатывают чипы, софт — это немного другое.
nckma
+4
И чем вам это слово не нравится?
Появилась российская фал-лесс компания и сделала свою SoC — чем плохо?
Ценный опыт. Жалко только, что в такой стране как Россия фаб-лесс компаний должно быть несколько сотен.
nckma
0
Как я понимаю, основное предназначение Байкала — это построение сетевых устройств типа роутеров. На малинке как роутер сделать? Портов маловато.