Pull to refresh
8
0.1

Пользователь

Send message

IT для неайтишников: Инженеры в заложниках у бизнеса

Reading time12 min
Views13K

Мы недавно рассмотрели интересную тему про «бизнес в заложниках у IT». Теперь для симметрии нужно рассмотреть обратную сторону: «IT в заложниках у бизнеса». Честно говоря, в эту игру всегда играют двое, а бизнес далеко не такой беззащитный, как это кому-то может показаться. Хороший бизнесмен обладает не менее развитым системным мышлением, нежели квалифицированный IT специалист. Кроме того, у бизнеса свои рычаги влияния, которыми он умеет хорошо пользоваться. Статья будет полезна обеим сторонам, чтобы лучше понять друг друга.

Читать далее

Пишем на С++ вектор, умеющий расширяться без копирования элементов

Reading time9 min
Views25K

В языке С есть функции malloc, free и realloc. При использовании последней вы можете написать этакий расширяющийся массив из примитивных типов или структур (классов-то нет), который, можно надеяться, не будет копировать все данные при каждом расширении. В С++ есть встроенный класс vector, который представляет из себя расщиряющийся массив, но он так не умеет: при каждом расширении вектора выделяется новый участок памяти и все элементы перемещаются на него (по возможности, с использованием move-семантики). Но ведь, если можно каждый раз не копировать все старые элементы на новое место, вектор должен работать быстрее? В этой статье я попробую написать вектор, который умеет расширяться без копирования элементов.

Код приведён здесь.

Сначала я покажу, что стандартный вектор не умеет расширяться без копирования/перемещения, потом обсужу придуманное решение, потом собственно приведу реализацию вектора, а в конце сравню производительность со стандартным вектором.

Читать далее

Работа c Doxygen в CMake

Reading time5 min
Views12K
Недавно задался вопросом ведения документации по исходному коду и сборки её используя Doxygen и CMake. Столкнулся сразу с неприятной проблемой. Дело в том, что в своих проектах я использую следующую структуру:
  build/
  src/
  CMakeLists.txt
  Doxyfile
Сборка, в моём случае, происходит в каталоге build. Но сборка может быть выполнена из любого места. Так вот, если изменить каталог сборки, документация не будет собрана, т.к. Doxygen не найдет исходников по которым нужно собрать эту самую документацию. Тогда то я и задумался, как же управлять процессом сборки документации в связке CMake и Doxygen? Что если мне нужно получить несколько видов документации: пользователя и разработчика? Держать два файла конфигурации для Doxygen? Мне такой вариант не нравится, т.к. файлы будут отличаться значением только одной переменной ENABLED_SECTIONS. Ниже я расскажу о там как можно управлять сборкой документации.
Читать дальше →

Путь к сердцу полупроводниковой фабрики: какие литографы доступны России?

Reading time9 min
Views48K

Введение санкций против России и, как следствие, отказ компании TSMC исполнять заказы отечественных дизайн-центров, привёли к ситуации, когда вопрос «где и как производить отечественные чипы» стал ребром. Самым передовым, потенциально доступным промышленным техпроцессом в России, является 90 нм, что в большинстве случаев не подходит для производства современной  микроэлектроники. Поэтому, постройка нового завода на территории России, способного создавать чипы на более современных техпроцессах, стала как никогда актуальной. Для осуществления такой задачи необходимо наличие множества специфичных компетенций, химии, оборудования. Но без преувелечения ключевым элементом любой полупроводниковой фабрики является литограф (вернее даже, литографЫ).  Именно характеристики литографа в первую очередь определяют размер техпроцесса, именно литографы являются самым дорогостоящим оборудованием, вокруг которого, по сути, строится завод. В данном обзоре хотелось бы рассмотреть текущую ситуацию с доступностью литографического оборудования в России – что имеется/разрабатывается у нас и что потенциально возможно купить на стороне.

Читать далее

Вредные заблуждения о нанометрах. Или почему наличие в России доступа только к 90нм – это катастрофа

Reading time10 min
Views88K

Уходящий 2022-ой год, стал, безусловно, межевым для отечественной микроэлектроники. Введенные санкции лишили российские дизайн-центры доступа к заводам по производству разрабатываемой ими продукции, в первую очередь, к мощностям флагмана отрасли в лице тайваньской компании TSMC. Фактически, это означает, что на данный момент в России становится невозможным производить сколь либо современную кремниевую микроэлектронику, особенно в части высокопроизводительных решений. Краткий профессиональный разбор ситуации с обзором наших текущих возможностей ещё в марте этого года сделал уважаемый @CorneliusAgrippa. Если резюмировать – на данный момент Россия имеет возможность промышленно производить чипы по технологии 180 нм на заводе Микрон, с перспективой наладить 90 нм в ближайшее время (правительство поставило задачу сделать это до конца 2022-го года). Создание на имеющейся на Микроне линии промышленной технологии на 65 нм и ниже фактически невозможно. Причина в том, что завод Микрон работает на пластинах диаметра 200 мм, а технология производства на 65 нм сопровождалась параллельным переходом на пластины диаметром 300 мм. Поэтому, для такого перехода требуется, по сути, постройка нового завода, хотя имеющееся на Микроне литографическое оборудование потенциально позволяет создание 65 нм техпроцесса.

Читать далее

135 книг, повлиявших на российских проектных менеджеров

Reading time9 min
Views7.7K

Привет! Меня зовут Дмитрий Ирешев, я руководитель проектного офиса СберМаркета и автор Telegram-канала «Управление проектами и продуктами в IT». В этом году я провёл самое полное исследование проектного менеджмента в России, в котором приняли участие 405 респондентов из 46 городов и 198 организаций. Я исследовал, какими практиками, методологиям и инструментам российские проджекты пользуются не в теории, а на практике. Одним из результатов стал ТОП книг, которые оказали влияние на российских менеджеров.

Вопрос, который я задал в исследовании, звучал так: «Лучшая книга, которую вы прочитали и которая помогла вам в профессиональном развитии?» На базе ответов я и составил этот рейтинг — книги расположены по убыванию количества упоминаний. 

Читать далее

VIM и редактирование файлов на удаленных серверах

Reading time3 min
Views15K

Статья о том, как настроить vim в одном месте, а все файлы, которые находятся на других серверах, подгружать и работать локально. Понятно, что можно поставить vim на каждый удаленный сервер, настроить и работать по ssh, но не всегда есть такая возможность, хотя бы потому, что все быстро устаревает и чтобы использовать супер-современный vim со всеми плагинами и наворотами порой надо заменить OS на удалённом хосте.

Я здесь собрал кое-какие способы (не все), с помощью которых можно редактировать файлы, находящиеся на удаленных машинах, при этом используя свой локально настроенный и причесанный vim со всеми плюшками.

Читать далее

Релокация в Турцию: получение международной карты и перевод денег из России

Reading time5 min
Views26K

Это вторая статья из серии статей о релокации. Первая была здесь. В этой статье я расскажу как получить международную карту MasterCard и наладить перевод денег из России.

Читать далее

Как россиянину открыть банковский счет и карту в Турции в 2024 году?

Reading time12 min
Views70K

Турция наряду с Арменией стала одним из самых посещаемых стран в 2022 году. Многие фрилансеры, самозанятые IT-сферы, рантье выбрали Турцию в качестве места для удаленной работы. Среди главных преимуществ: близко к РФ, море, возможность прямых и бюджетных перелетов в любую точку мира, и самое главное, возможность перевода денежных средств в том числе рублей.

В Турции работает более 30 иностранных банков, а общее количество банков превышает полсотни. Многие из них открывают счета нерезидентам РФ, однако условия часто зависят от многих факторов, это не только банк, но и офис и даже конкретный сотрудник. Также банк заинтересован в состоятельных клиентах, поэтому многие выставляют требование размещения депозита при открытии счета.

На практике большинство предпринимателей переехавших в Турцию открывают ИП в соседней Грузии, стране с самыми приятными в мире налогами для бизнеса. В Турции же более актуально иметь расчетную карту в банку. К потоку фрилансеров добавляется поток туристов, большинство из которых пользуется туристической поездкой чтобы открыть счет. В связи с этим банки Турции постоянно завышают требования. Удаленное открытие счета в Турции невозможно, так как везде потребуется ИНН а ИНН можно сделать только после пересечения границы.

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

Читать далее

Леньхаки. Так лень, что не лень

Reading time6 min
Views34K

Миша – удивительный чувак. Поразительный и заразительный. Лучший руководитель в региональной IT-компании. Ещё и офигенный программист.

Мы разговаривали всего полчаса, а он успел меня заразить. Вот вы сейчас о чём подумали? Ну, явно не о насморке… Наверное, что он увлечённо рассказывает о повышении эффективности? Новых технологиях? Цифровизации? И я прям такой наслушался и кинулся статью писать?

Нет. Миша – самый ленивый руководитель на свете. Всё, что он любит – программировать. Остальное ему лень. Настолько лень, что он готов на всё, лишь бы побыстрее вернуться к программированию. Похоже, потому и эффективный, без кавычек.

И его лень заразительна. Так заразительна, что мне лень писать много букв. В кои-то веки буду краток.

Читать далее

Обфускация строк на этапе компиляции

Reading time2 min
Views26K
Возник на днях у нас вопрос: «Как спрятать от любителей hex-редаторов строчки текста в скомпилированном приложении?». Но спрятать так, чтобы это не требовало особых усилий, так, между прочим…
Задача состоит в том, что бы использовать в коде строки как обычно, но при этом в исполняемом файле эти строки в явном виде не хранились, возможности сторонних утилит, которые работают с уже скомпилированными бинарными файлами, задействовать так же не хочется, все нужно делать из обычного C++ кода.
Читать дальше →

Обфускация строк C++ в Visual Studio

Reading time8 min
Views25K
Бинарная защита своих программ — дело часто нелёгкое и неблагодарное, ведь если продукт кому-то нужен, его всё равно сломают, как ни старайся. При этом самая лучшая защита всегда должна писаться, ну или по крайней мере настраиваться, вручную, а всякие там пакеры/кодировщики/виртуальные машины тоже конечно помогают, но чем более автоматически работает защита, тем легче она потом ломается, к тому же если использовать какой-то известный пакер, то кракеры его уже 10 раз ломали в других продуктах, и знают что в нём к чему. К тому же все более-менее удачные пакеты защит стоят немалых денег.

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

Вот и встаёт вопрос в том чтобы найти компромис между уровнем защиты/затраченным временем/удобочитаемостью кода/стоимостью и т. д.

Хочу поделиться с вами моим собственным решением для обфускации строк в программе, которое хоть и даёт лишь минимальную защиту, но является 1) бесплатным 2) лёгким 3) почти не портящим внешний вид кода 4) новым, которое кракер скорее всего в данной конкретной конфигурации ещё не видел.

Сразу хочу сказать что это решение лишь ненадолго замедлит уверенного хакера со стажем, но является очень простым и занимает лишь от силы минут 15 в начальной настройке. Оно призвано скорее дать минимальную защиту от нубо-хакеров и скорее натолкнуть вас на более защищённый тип мышления в кодинге, и дать вам шанс самим развить этот метод и реализовать другие типы защит.
Читать дальше →

Железо на службе у алгоритма

Reading time14 min
Views199K
Борис Бабаян о прошлом, настоящем и будущем вычислительной техники

Борис Бабаян
Каким представляется развитие вычислительной техники человеку, который уже более полувека занимается разработкой компьютерных технологий?

Мне удалось побеседовать на эту тему с Борисом Арташесовичем Бабаяном, директором по архитектуре компании «Интел».

Борис Бабаян известен как главный архитектор компьютерных вычислительных систем «Эльбрус-1», «Эльбрус-2» и «Эльбрус-3». Некоторые из его идей использованы в архитектуре Transmeta. В настоящее время Борис возглавляет разработку новой микропроцессорной архитектуры в компании «Интел».

Чтобы совсем покончить с формальностями, перечислю звания, степени и должности Бориса: член-корреспондент РАН, доктор технических наук, профессор, заведующий кафедрой «Микропроцессорные технологии» МФТИ, Intel Fellow, лауреат Государственной и Ленинской премий.

Дальнейшее повествование построено от лица Бабаяна. Мои скупые комментарии оформлены в виде врезок либо ссылок на интернет-страницы.

Поехали!

Sun против Intel: Питерское противостояние 2004-го года

Reading time11 min
Views18K

Эта история произошла 18 лет назад. Все сроки давности уже прошли, так что можно рассказать о тех событиях и как так получилось, что две огромных технологических компании буквально дрались за коллектив из 150 человек. Но прежде надо немного объяснить, что же это был за коллектив и чем он был примечателен.


Прежде, чем начать, хочу отметить, что на протяжении всего изложения мои симпатии будут с Sun.

Читать дальше →

Реверс-хантинг

Reading time5 min
Views63K

Случился тут конфуз. Обычно я не провожу собеседования с кандидатами в свой отдел – есть специально обученный человек. Но всяко бывает – человек приболел. И я, по старинке, попёрся сам.

Кандидат оказался знакомым – очень давно работали вместе, были почти друзьями, но несколько лет особо не общались. Увидев меня, парень, почему-то, сильно сконфузился. Даже побледнел. Я не старая страшная обезьяна, и такую реакцию на свой фейс увидел впервые. Что особенно удивительно – это ведь опытный программист, не впервой собес проходить.

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

Расспросил. Рассказал. Удивился.

Читать далее

Made at Intel. Acquisitions

Reading time7 min
Views16K

Всем привет. С восстановленными в отпуске силами приступаю к продолжению саги Made at Intel (начало -1,2,3,4,5). Cегодня речь пойдет об М&A активности компании, которую ваш покорный наблюдал в течение 20ти с хвостиком лет. Тема поглощений неисчерпаема, и если рассматривать ее досконально, получился бы многотомный труд. Я все же сосредоточусь на событиях в которых мне непосредственно приходилось принимать участие. Даже несмотря на это материал получился довольно большой и пришлось разбить его на две части. Сегодня мы поговорим о “теоретических основах M&A”, а в следующий раз разберем конкретные знаковые для России и Интел примеры. Будучи внутри я был склонен считать, что в плане приобретения компаний Intel – худшая корпорация в мире. Сейчас радикализма поубавилось, но в-целом отношение не поменялось. Из нескольких десятков попыток удачными я могу назвать считанные единицы. Почему так получилось – попытаемся сейчас разобраться.

Читать далее

Типовые ошибки менеджера при расширении команды. Гайд – как делать не стоит. Часть I

Reading time11 min
Views4.5K

Сталкивались ли вы с потребностью в расширении команды? В жизни менеджера или тимлида часто возникает такая потребность, так как разрастается скоуп, сжимаются сроки, открывается новый проект или новое направление. Такие ситуации обычно сопровождаются страхом допустить ошибку: ведь если с самого начала что-то пойдет не так, ком проблем может «снести» проект в дальнейшем.

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

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

Читать далее

Моя жизнь с Boost Graph Library

Reading time25 min
Views11K
Статья, первая часть которой здесь представлена, содержит различные соображения автора, накопившиеся в ходе длительной разработки специализированной системы поиска социальных связей, базирующейся на библиотеке Boost Graph Library (BGL). В этом (техническом) разделе суммируются впечатления автора от работы с этой библиотекой, поднимаются вопросы инструментовки при создании графовых приложений и затрагиваются некоторые практические проблемы метапрограммирования на C++.
Читать дальше →

Кто они, тормоза прогресса?

Reading time6 min
Views47K

Компьютерные технологии дали нам возможность, которая была недоступная предыдущим поколениям - обновление функционала. Раньше нельзя было сделать из лошади автомобиль с двигателем внутреннего. Да, можно было поставить на автомобиль более мощный двигатель внутреннего сгорания, но это было долго, дорого и доступно не всем.

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

Читать далее

Есть ли в вашей IT команде саботажник?

Reading time8 min
Views65K

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

Если вам всё это знакомо, то почти наверняка в вашей команде есть скрытый саботажник.

Читать далее

Information

Rating
4,547-th
Location
Россия
Registered
Activity