Как стать автором
Обновить

Все потоки

Сначала показывать
  • Новые
  • Лучшие
Порог рейтинга
  • Все
  • ≥0
  • ≥10
  • ≥25
  • ≥50
  • ≥100

IE via WISE — WINE от Microsoft?

*nix *Internet Explorer Браузеры История IT Софт

Когда мы говорим про запуск Windows программ в Unix, первым в голову нам приходит свободный проект Wine, проект основанный в 1993 году.

Но, кто бы мог подумать, что Microsoft сама была автором ПО для запуска Windows-программ в UNIX.

В 1994 году Microsoft начала проект WISE - Windows Interface Source Environment - прибл. Исходная среда интерфейса Windows - программу лицензирования, которая позволяла разработчикам перекомпилировать и запускать приложения на базе Windows на других платформах.

Пакеты WISE SDK были основаны на эмуляции Windows API, который мог работать на платформах Unix и Macintosh.

SDK напрямую не поставлялись Microsoft. Вместо этого она установила партнерские отношения с несколькими поставщиками ПО (которым требовался доступ к внутреннему исходному коду Windows), которые, в свою очередь, продавали WISE SDK конечным пользователям.

Читать далее
Всего голосов 3: ↑3 и ↓0 +3
Просмотры 337
Комментарии 2

Новости

Дайджест свежих материалов из мира фронтенда за последнюю неделю №491 (25 — 31 октября 2021)

Разработка веб-сайтов *CSS *JavaScript *HTML *
Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него.

Читать дальше →
Всего голосов 4: ↑4 и ↓0 +4
Просмотры 323
Комментарии 0

Как один стартап от docker-compose до Kubernetes добирался

Проектирование и рефакторинг *DevOps *Google Cloud Platform *Kubernetes *
Из песочницы

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

Что мы имели и о чем вообще речь? А имели мы стартап-проект с примерно 2-летней историей разработки из advertisement  области. Проект изначально строился как микросервисный, и серверная его часть написана на Symfony + немного Laravel, Django и нативного NodeJs. Сервисы представляют из себя в основном API для мобильных клиентов (их в проекте 3) и нашего собственного SDK для IOS (встраивается в приложения наших кастомеров), а также веб-интерфейсы и разные дашборды этих самых кастомеров. Все сервисы были изначально докеризированы и работали под управлением docker-compose.

Правда, docker-compose использовался не везде, а только в локальном окружении у разработчиков, на тестовом сервере и внутри pipeline при сборке и тестировании сервисов. А вот в production окружении использовался Google Kubernetes Engine (GKE). Причем настройку GKE на старте проекта мы делали полностью через его web-интерфейс, что было довольно быстро и, как нам тогда казалось, удобно. Автоматизирован тут был только процесс сборки docker images для запуска сервисов в GKE.

Читать далее
Рейтинг 0
Просмотры 467
Комментарии 0

Математика и IT

Математика *Исследования и прогнозы в IT Учебный процесс в IT

Джорджо де Кирико. Великий метафизик (The Grand Metaphysician), 1917.

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


1) CS — создание подходов, имеющих научную новизну. Разработка новых алгоритмов. Основная цель: научная новизна, развитие CS, решение проблем CS.


2) Инженерно-конструкторская деятельность – комбинирование уже известных подходов (алгоритмов, ЯП, библиотек, технологий, исходных кодов), их адаптация под конкретную задачу. Основная цель: создание продукта для решения конкретной практической задачи.


3) Техническое обеспечение — решение типовых (зачастую тривиальных) проблем в ходе эксплуатации “железа” и софта. Обеспечение бесперебойной работы ПО и оборудования с учетом возникающих требований.


Очевидно, что в такой классификации риск неудачи убывает в каждом пункте. При работе над новым алгоритмом или устройством обычно невозможно полностью гарантировать успех. При использовании уже известных алгоритмов, языков, технологий, библиотек и готовых деталей машин – вероятность успешного исполнения работы возрастает. В последнем случае (обеспечение ) работник (должность может быть разная: инженер, системный программист, системный администратор и т.д.) исходит из минимизации замен по принципу: “не трогать то, что хорошо работает”.


Как видим цели противоположные: для научной новизны бывают нужны новые рискованные решения, а для обеспечения – наоборот. Для успешной разработки продукта, желательно применять уже опробованные зарекомендовавшие себя решения, хотя при их отсутствии может понадобится и эксперимент, как в CS.


Кому и насколько в IT нужна математика? — Попробуем ответить на этот вопрос (хотя бы частично).

Читать дальше →
Всего голосов 7: ↑5 и ↓2 +3
Просмотры 4.4K
Комментарии 7

(не) Безопасный дайджест Halloween Edition: «воскресшие» учётки, похититель душ и похороны Facebook

Блог компании SearchInform Информационная безопасность *

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

Читать далее
Всего голосов 3: ↑2 и ↓1 +1
Просмотры 555
Комментарии 0

Подключение энкодера к Ардуино и полнофункциональный код обработки для него

Программирование микроконтроллеров *Разработка под Arduino *Научно-популярное DIY или Сделай сам Электроника для начинающих

Энкодер - это устройство преобразования механического перемещения или угловых изменений положения в цифровой сигнал. В статье рассматривается самый популярный в DIY сообществе инкрементальный энкодер EC11 с кнопкой. При его вращении на выходах A и B формируются TTL сигналы в виде импульсов сдвинутые между собой по фазе на 90 градусов. Таким образом с его помощью, можно определить направление и скорость вращения, а так же рассчитать угол поворота. В отличие от потенциометров, KY-040 он надежный и долговечный.

Читать далее
Всего голосов 21: ↑15 и ↓6 +9
Просмотры 2.6K
Комментарии 45

Гидропоника. Персидская принцесса Сорая, или как из семян вырастить премиальную клубнику

Научно-популярное Биотехнологии DIY или Сделай сам Химия Биология
Из песочницы

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

Почему из семян? Проще не заморачиваться, а купить рассаду! - скажут некоторые. Но увы, с покупной рассадой не всё так просто, как может показаться с первого взгляда. Главная проблема покупной рассады - грибковые болезни и наличие яиц или личинок вредителей. Даже приобретая рассаду с известных европейских питомников Вы рискуете получить заражённые растения, и занести к себе на садовый участок нежеланных гостей в виде трипсов, паутинного клеща, цикадок, белокрылки и иже с ними.

Читать далее
Всего голосов 24: ↑19 и ↓5 +14
Просмотры 5.3K
Комментарии 15

FOSS News №94 — дайджест материалов о свободном и открытом ПО за 25—31 октября 2021 года

Open source **nix *

Всем привет!


Продолжаем дайджесты новостей и других материалов о свободном и открытом ПО и немного о железе. Всё самое главное про пингвинов и не только, в России и мире.


Главные темы нового выпуска:


  1. Microsoft удалил функциональность Hot Reload из открытого .NET для поставки только в Visual Studio 2022 и… вернул обратно.
  2. Astra Linux Special Edition для ARM сертифицирована по 2 уровню доверия.
  3. Основанный Яндексом стартап ClickHouse стал «единорогом».
  4. Intel Core i9 11900K: пять дистрибутивов Linux продемонстрировали значительное превосходство над Windows 11.
  5. 10 ноября, 2021 — Enterprise Open Source Summit: Взгляд со стороны бизнеса на открытый исходный код.
  6. Российская компания YADRO присоединилась к инициативе по защите Linux от патентных претензий.
  7. Какова цель Open Source Security Foundation. Интервью со старшим вице-президентом Linux Foundation Дереком Уиксом.
  8. На ММСО эксперты «Базальт СПО» показали педагогам: с ОС «Альт» работать просто, интересно и полезно для карьеры.
  9. Кураторы от «Базальт СПО» участвуют в проведении международного конкурса «Школа реальных дел 2021-2022» и приглашают к участию.
  10. Проект Kerla развивает Linux-совместимое ядро на языке Rust.
  11. Алексей Смирнов рассказал журналистам о том, что способствует и мешает широкому распространению российского свободного ПО.
  12. Обзор kubenav для управления Kubernetes-кластерами со смартфона.

И многое другое…




В составлении дайджеста мне помогали qark, invasy и 8 пользователей через нашего Telegram бота [→]


Ещё — мы не только составляем FOSS дайджесты, но и автоматизируем процесс, все 3 проекта автоматизации тоже являются FOSS, их можно посмотреть на GitHub [→]. На очереди ML и мы собираем средства на хакатоны [→], будем рады если читатели помогут, всё ведь для вас.


Читать дальше →
Всего голосов 3: ↑3 и ↓0 +3
Просмотры 885
Комментарии 2

Развёртывание в Kubernetes из GitLab

JavaScript *Git *Управление разработкой *DevOps *Google Cloud Platform *
Перевод
Tutorial

Развёртывание в Kubernetes из GitLab


Развёртывание в Kubernetes из GitLab


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


А именно мы возьмём максимально простое но достаточно содержательное приложение на React.js, докеризуем его, затем развернём в Kubernetes локально при помощи Docker Desktop. После этого развернём его уже на Google Cloud Platform (GCP), и завершим разработкой CI/CD конвейера в GitLab для публикации нашего приложения в Google Kubernetes Engine.


Желательны но необязательны базовые знания


  • Docker;
  • Kubernetes;
  • Git;
  • Node.js;
  • React;
  • Bash.

В дальнейшем мы сделаем следующее.


  • 🧱 Познакомимся c нашим приложением, обсудим из чего оно состоит.
  • 🐳 Докеризуем наше приложение.
  • ☸️ Развернём наше приложение в Kubernetes локально на Docker Desktop.
  • ☁️ Обсудим особенности GCP и как нужно изменить наше приложение, а затем ещё раз развернём наше приложение в Kubernetes но уже в GCP.
  • 🦊 Завершим наш туториал созданием конвейера для развертывания приложения в GCP при помощи GitLab.

Разные этапы от докеризации до Kubernetes на Google Cloud Platform

Читать дальше →
Всего голосов 4: ↑4 и ↓0 +4
Просмотры 1.6K
Комментарии 4

#AcronisCyberFitSummit: день второй

Блог компании Acronis Информационная безопасность *Антивирусная защита *Резервное копирование *Конференции

Привет, Хабр! В прошлом посте мы уже рассказывали о том, что происходило на первом дне Acronis #CyberFit Summit в Майами. Сегодня пришло время подвести итоги второго дня, в ходе которого проходил завтрак Woman in Tech, обсуждение прибыльности работы провайдеров, беседа с бывшим переговорщиком ФБР Крисом Воссом, а также круглый стол по вопросам перспектив отрасли киберзащиты. Если вы принимали участие в нашем гибридном мероприятии или хотели бы это сделать, добро пожаловать под кат.

Читать далее
Всего голосов 6: ↑6 и ↓0 +6
Просмотры 132
Комментарии 0

Дайджест интересных материалов для мобильного разработчика #417 (25 — 31 октября)

Блог компании Productivity Inside Разработка под iOS *Разработка мобильных приложений *Разработка под Android *
В этой подборке креши на старте и идеальный наблюдатель, новые MacBook Pro в компиляции проектов и эволюция CI, боты в мультиплеере, проблема разлогинов, вопросы удаления функций, фейковые приложения и многое другое!

Читать дальше →
Рейтинг 0
Просмотры 567
Комментарии 0

[iOS] Создание статической библиотеки Static Library с использованием Cocoapods

Разработка под iOS *Swift *
Из песочницы

В свое время мне понадобилось обернуть написанный модуль в библиотеку. Порядочно погуглив, я нашел кучу туториалов, суть которых - создается библиотека с одним-двумя .swift - файлами. У меня же был целый проект, да еще с подами (а ля Alamofire, Moya, EasyPeasy и др), и создание библиотеки именно этим и усложнялось, было непонятно как переносить поды, нужно ли их вообще переносить и как в целом правильно сбилдить такую библиотеку.

Читать далее
Рейтинг 0
Просмотры 172
Комментарии 0

Как сделать что-то вечное, или как построить Зиккурат

JavaScript *HTML *Node.JS *

Всем доброго времени суток.

В данной статье я решил поделиться опытом, накопленным за многие годы работы во front-end`е. Как и все вы, я был молод и мечтал создать что-то бессмертное. Ах, как я был молод, и как же я был глуп. Ничего вечного не существует и всё рано или поздно умирает. Однако, можно создать то, что протянет гораздо дольше обычного и даже будет адаптироваться к изменениям какое-то время. Поэтому сегодня предлагаю поговорить о паттернах проектирования для front-end приложений, выборе технологий и о том, чего делать не стоит. В этой статье буду проводить много аналогий со строительной тематикой и причиной тому небезызвестная история: «Если бы программисты строили дома».

Из чего строить? 

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

Посмотрим и на обратную сторону медали: беря сверхнадежное решение, которому много лет, вы обрекаете проект на скорый апдейт или умирание. Знавал я одну крупную компанию, которая использовала java 8. Мотивация звучала так: она надежна как швейцарский нож.  На минуточку, на дворе 2021 год и она устарела не только морально, но и технически (на момент написания, актуальной версией является java 17). 

Читать далее
Всего голосов 1: ↑0 и ↓1 -1
Просмотры 1.3K
Комментарии 8

Написание скриптов для tmux

Блог компании RUVDS.com Настройка Linux *Разработка под Linux *
Перевод
Мне, когда я пользуюсь tmux, часто надо открывать похожие рабочие пространства. Например, мне всегда нужно выводить последние строки пары файлов журналов в панели, или мне нужно открывать и vim, и mysql. Бывает, что мне нужно и что-то другое.



Если вы попробуете найти сведения об открытии рабочих пространств tmux, то почти гарантированно обнаружите советы по использованию программы-обёртки вроде tmuxinator, tmux-resurrect или tmux-continuum. Эти программы, возможно, хороши, но я предпочитаю что-нибудь попроще.
Читать дальше →
Всего голосов 15: ↑13 и ↓2 +11
Просмотры 1.9K
Комментарии 0

Руководство Google по стилю в C++. Часть 7

C++ *
Перевод
Часть 1. Вступление

Часть 6. Специфика Google
Часть 7. Ещё возможности C++
Часть 8. Именование


Это последняя переведённая часть руководства Google по стилю в C++.
Спасибо за замечания и комментарии к переводу.
Надеюсь это руководство будет полезным подспорьем для программистов на C++.
Исходная статья (fork на github), обновляемый перевод.
И ещё здесь много букв.
Читать дальше →
Всего голосов 3: ↑2 и ↓1 +1
Просмотры 1K
Комментарии 0

Кто все эти люди?

Управление проектами *Управление персоналом *

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

Интересно, жми..
Всего голосов 8: ↑7 и ↓1 +6
Просмотры 2.4K
Комментарии 1

Как энтузиасты возвращают «старый» интернет

Блог компании VAS Experts Разработка веб-сайтов *

На этой неделе сценарист фильма «Дюна» Дени Вильнёв рассказал, что писал сценарий в программе Movie Master на MS-DOS — так как не любит перемен. И пока такие энтузиасты используют старое программное обеспечение в силу привычки, другие идут гораздо дальше в своих начинаниях и возвращают интернет во времена, когда страницы были минималистичны, а протоколы — проще сегодняшних.

Читать далее
Всего голосов 23: ↑16 и ↓7 +9
Просмотры 10K
Комментарии 26

Кто и зачем воссоздает старинные музыкальные инструменты

Блог компании Аудиомания Старое железо Биографии гиков Звук

Оригиналы многих музыкальных инструментов не дожили до наших дней. Однако это не останавливает энтузиастов, восстанавливающих их по описаниям в книгах, по изображениям на монетах и фресках. Расскажем о таких проектах — индийской арфе и боевом горне, который отметили в комиксах про «Астерикса и Обеликса».

Читать далее
Всего голосов 5: ↑4 и ↓1 +3
Просмотры 744
Комментарии 0

Вирусы как сборочные комплекты живой природы: репликация и мутация, но ещё не поведение

Блог компании RUVDS.com Научно-популярное Биология
Размножение оказалось другим выходом из тупика устойчивости неживой природы — компенсировав недостаток неубиваемости атомных связей металлов и минералов способностью к размножению и широкой распространённостью новых строительных материалов устойчивых форм организации материи — водорода и углерода, из которых древние океаны Земли практически и состояли. И металлическое ядро Земли и первые вирусы решили одну и ту же задачу организации материи в устойчивые структуры, но если структуры неживой природы были закономерным развитием свойств образующих их материи, то первые вирусы — первое же явление формы материи, к которой применимо, хоть и с оговоркой, понятие смысла существования: структура вируса — это структура, не возникшая «в результате», а ориентированная на результат: раз возникнув — не исчезать.


Фактически, вирус, не являясь формой жизни, оказался формулировкой смысла жизни — стремление к жизни, умножение жизни. Как в смысле умножения времени индивидуальной жизни, так и в смысле умножения жизни её репродукцией. В диапазоне от выживания любой ценой до экспансии — увеличения продолжительности жизни, числа форм жизни и количества живых существ. Не прекращаться несмотря ни на что, продолжать существование в любых обстоятельствах.
Читать дальше →
Всего голосов 33: ↑27 и ↓6 +21
Просмотры 3.2K
Комментарии 17