Pull to refresh
5
0.1
Send message

CP/M: взлет и падение Гэри Килдалла

Reading time7 min
Views21K
История развития технологий полна неожиданностей, крутых поворотов. Побед и поражений, предательства и верности. Иногда, чтобы добиться успеха, нужно было всего лишь оказаться в нужном месте в нужное время. Или прислушаться к дружескому совету.

Сегодня мы расскажем вам о человеке, который мог быть мультимиллиардером, знаменитостью уровня Билла Гейтса, если бы в его жизни оказалось чуть больше везения. Этого человека звали Гэри Килдалл.

Возможно, вы не знаете это имя, но с большой долей вероятности видели или даже пользовались его детищем — операционной системой CP/M. Современному пользователю ПК она практически неизвестна, однако в свое время эта ОС получила широчайшее распространение на десятках различных машин, включая ZX Spectrum (и его СНГ-клоны), Robotron и «фирменный» Commodore 128 (благодаря Zilog Z80 в качестве бортового сопроцессора). Многие из тех, кто пользовался компьютером под управлением CP/M в те годы, даже не задумывались, откуда она взялась.


Онлайн-конференции: плюсы, минусы, подводные камни

Reading time9 min
Views12K


Этой весной я следил за кучей онлайн-мероприятий: от конференции Microsoft Build до круглого стола «Киберсекс и самоизоляция». Поскольку работаю в JUG Ru Group, также видел, как готовятся наши собственные 8 конференций. А ещё читал комментарии айтишников об онлайн-формате — и в итоге у меня накипело.


С одной стороны, вижу комментарии «онлайн никому не нужен», и у меня бомбит ощущаю острое несогласие. А с другой, встретил противоположное мнение «офлайн только портит экологию авиаперелётами» — и тоже ощутил острое несогласие! Почему мы вечно ударяемся в крайности и бинарно мыслим «хорошо/плохо», как будто под наше мнение отведён всего один бит? Давайте перейдём от бита к кубиту — ну то есть научимся признавать и хорошее, и плохое одновременно. Написал текст и о плюсах, и о минусах онлайн-конференций.

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

Интуиция как инструмент инженера, или чему нас учит опыт покорителей Севера

Reading time27 min
Views24K
image

Авторские права на фотографию принадлежат "Russian Travel Geek".

«Чтобы попасть на Территорию, вы должны сесть в самолет. Правда, летом вы можете добраться сюда и на пароходе — месячное плавание среди льда и тумана, когда кажется, что мир исчез и существуют лишь железная палуба, перекличка сирен каравана и ваша каюта. Через несколько дней именно в каюте вы и будете проводить почти всё свое время, ибо вам быстро осточертеет блеклая полярная вода, низкое небо и слово „навигация“, которое произносится тысячу раз на дню.… Рейс ваш окончится не на той планете, с которой начался. Вас ожидает прохладный и влажный воздух, черный и желтый пейзаж, если вы прилетели летом, и некая суровая снежная обнаженность, которую трудно передать словами, если вас затащило туда зимой.»
Олег Куваев, роман «Территория», 1978 г.

Чтобы поехать строить свою карьеру на Север, нужно быть сильным. Инфраструктура там и сейчас-то развита не очень, а лет 70 назад путь из Чукотки до Москвы даже на самолёте занимал четверо суток.
Читать дальше →

Запись видео UI автотестов, работающих в headless Chrome

Reading time7 min
Views6.1K
Всем привет!

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

Постановка задачи

  1. Тесты выполняются под Windows
  2. Тесты используют Selenium Web Driver + Headless Chrome
  3. Тесты запускаются в несколько потоков

Для упавших тестов нужно сохранить видео, при этом

  1. Время выполнения должно вырасти не более чем на 10%.
  2. Обойтись минимумом изменений в текущей имплементации

Если интересно решение, добро пожаловать под кат.
Читать дальше →

Инфографика средствами Excel и PowerPoint. Часть 2

Reading time12 min
Views27K
Не жди поездку в Гагры!
Давид Маркович, сериал «Ликвидация»

Всем привет!

За время карантина все, наверное, не по разу прочитали о том, как плодотворно А.С. Пушкин провел свой период «заточения», названный впоследствии «Болдинской осенью», поэтому не буду объяснять, что именно меня сподвигло написать следующую статью об инфографике средствами MS Office.

К тому же, мне есть что вам еще рассказать, ведь я более 10 лет преподаю и руковожу группой разработки учебных материалов в учебном центре «Сетевая Академия ЛАНИТ», а также являюсь автором курса по инфографике.

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

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

Продвинутый TypeScript

Reading time12 min
Views25K
Фридайвинг — ныряние на глубину без акваланга. Ныряльщик ощущает на себе закон Архимеда: он вытесняет некоторый объём воды, который выталкивает его обратно. Поэтому первые несколько метров даются тяжелее всего, но потом сила давления толщи воды над тобой начинает помогать двигаться глубже. Этот процесс напоминает изучение и погружение в системы типов TypeScript — по мере погружения становится немного легче. Но надо не забыть вовремя вынырнуть.


Фотография с сайта One Ocean One Breath.

Михаил Башуров (saitonakamura) — Senior Frontend Engineer в компании WiseBits, фанат TypeScript и фридайвер-любитель. Аналогии изучения TypeScript и ныряния на глубину не случайны. Михаил расскажет, что такое discriminated unions, как использовать вывод типов, зачем нужна номинальная совместимость и брендирование. Задержите дыхание и погружайтесь.

Developing a symbolic-expression library with C#. Differentiation, simplification, equation solving and many more

Reading time15 min
Views8.2K
Hello!

[UPD from 12.06.2021: if you're looking for a symbolic algebra library, AngouriMath is actively developed. It's on Github and has a website. Discord for questions]

Why does programming a calculator seem to be a task, which every beginner undertakes? History might have the answer — computers were created for this exact purpose. Unlike the beginners, we will develop a smart calculator, which, although won't reach the complexity of SymPy, will be able to perform such algebraic operations as differentiation, simplification, and equations solving, will have built-in latex support, and have implemented features such as compilation to speed up the computations.

What are the articles about?
It will superficially tell about assembling an expression, parsing from a string, variable substitution, analytic derivative, equation numerical solving, and definite integration, rendering to LaTeX format, complex numbers, compiling functions, simplifying, expanding brackets, and blah blah blah.
For those who urgently need to clone something, repository link.

Let's do it!
Read more →

Найти порядок в хаосе ИТ: полезные ресурсы

Reading time6 min
Views12K


В предыдущей статье я поделился своим видением процесса построения базовой системы для организации собственного развития (применимой к сфере ИТ).


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


Так что всех заинтересованных прошу под кат!

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

Повысьте производительность SPA, разбив ваши библиотеки Angular на несколько частей

Reading time7 min
Views8.6K

Привет, Хабр! Представляю Вашему вниманию перевод статьи «Improve SPA performance by splitting your Angular libraries in multiple chunks» автора Kevin Kreuzer.


Angular — отличный фреймворк. Мы все его любим <3.


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


Сегодня благодаря Angular CLI библиотеки легко создать. Они прекрасно подходят для того, чтобы делиться кодом между несколькими приложениями.


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


В Frontend есть разные типы производительности. runtime — производительность и initial load. В этой статье мы сосредоточимся на initial load.


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

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

5 вещей, которые я бы хотел знать, когда начинал использовать Angular

Reading time14 min
Views41K

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


С этой же проблемой столкнулся и я, когда примерно два года назад пришел в Тинькофф на позицию Junior Frontend Developer и погрузился в мир Angular. Поэтому предлагаю вам короткий рассказ о пяти вещах, понимание которых очень облегчило бы мою работу на первых порах.


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

Свойства вертикали корпоративной власти

Reading time7 min
Views68K
В Яндексе – идеальные для ИТ отцы-основатели… а какую позитивную книгу о них и об идеологии Яндекса Соколов-Митрич написал… Но что в Яндексе сложилось за несколько лет «внизу»? В этом посте последняя ссылка показывает – полный мрак.
Второй пример – Магнитом управляет такой умный и правильный Сергей Галицкий (почитайте его интервью), но «внизу» творится какой-то ад: «Мы не рабы» кричат его сотрудники.

Почему так? Что же за злой рок преследует большие компании?

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

Даже в этом идеальном случае у неё имеются, причем со временем усиливаются, следующие негативные свойства:

1. Усиление строгости при движении приказов сверху-вниз.
2. Положительная обратная связь и искажение отчетности при движении информации снизу-вверх.
3. Уменьшение взаимопонимания с ростом количества промежуточных звеньев между сотрудниками.

Далее рассмотрим их подробнее и сформулируем:

4. Советы сотрудникам, идущим работать в большие компании.
5. Своё собственное скромное мнение, почему Яндекс всё ещё хорош на фоне многих других.


Движение сверху-вниз приказов и всего прочего. Вы же не ожидали увидеть здесь другую картинку?
Читать дальше...

Шесть рецептов для начинающего тимлида: как всё успевать и развивать команду

Reading time14 min
Views54K


Привет! Меня зовут Дмитрий Ли, я тимлид одной из команд разработки бэкенда в Badoo.

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

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

Рецепты, которыми я хочу поделиться, в большей степени пригодятся начинающим тимлидам: я записал их как своеобразное наставление себе самому несколько лет назад. Эта статья написана по мотивам моего доклада на TeamLeads Conf.

Девелопишь на .NET Core? Го в Ubuntu, я создал

Reading time3 min
Views36K
image
Photo by Kevin Horvat
Все 12 лет своей карьеры я работал с .NET и был крепко привязан к Windows и проприетарным инструментам разработки. Но, спасибо Microsoft, .NET Core все изменил и теперь разрабатывать для .NET можно почти на чем угодно и в чем угодно. Дело за малым — перетащить на Core свои проекты. Не так давно я решил и этот вопрос и завел трактор для полного переезда на Ubuntu.

Результат очень понравился — все взлетело, разрабатывать легко, а Docker и Kubernetes сделали процесс переезда намного легче. Но из-за слабого знания ОС, bash и запутанности вариантов установки некоторых инструментов (например, того же Docker) изначальная настройка заняла больше дня. То есть процесс довольно долгий и местами запутанный.

Дабы сэкономить время будущему себе и тем, кто также планирует попробовать разработку под Linux, я оформил все в виде скриптов. Их можно запустить на чистой Ubuntu и они все настроят пока ты сидишь и пьешь чаек. Также, при желании, их легко допилить под свои нужды.

Если для вас это звучит полезно — добро пожаловать под кат.
Читать дальше →

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

Reading time4 min
Views5.4K
В нашем новом выпуске разработка для Авроры, Дубай Молл в смартфоне, тренды UX-дизайна, инструменты HTML5-разработки, доходы 1% топовых издателей, которые получают 93% денег всего рынка приложений. Интересный дайджест у нас получился!

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

Низкая связанность, архитектура и организация команд

Reading time10 min
Views12K
Перевод статьи подготовлен специально для студентов курса «DevOps практики и инструменты».




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

Async/await и механизм реализации в C# 5.0

Reading time20 min
Views81K

Подробно о преобразовании асинхронного кода, осуществляемого компилятором


Механизм async реализован в компиляторе C# при поддержке со стороны библиотек базовых классов .NET. В саму исполняющую среду не пришлось вносить никаких изменений. Это означает, что ключевое слово await реализовано путем преобразования к виду, который мы могли бы написать и сами в предыдущих версиях C#. Для изучения генерируемого кода можно воспользоваться декомпилятором .NET Reflector или ILSpy. Это не только интересно, но и полезно для отладки, анализа производительности и других видов диагностики асинхронного кода.
Подробности

Советские супергерои, чешские козявки и австралийский клон

Reading time7 min
Views18K
В статье «Как фантаст Артур Кларк чуть не закрыл журнал «Техника — молодежи»» я пообещал как-нибудь в пятницу рассказать о том, как главный редактор «Веселых картинок» чуть не погорел на букашках — в самом прямом смысле слова.

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

image

У журнала есть четко фиксированный день рождения — 24 сентября 1956 года. В этот день увидел свет первый номер журнала «Веселые картинки» — первого советского журнала для дошкольников.

Счастливым (и многодетным) отцом было постановление партии и правительства «О развитии детской литературы и детской периодики», вышедшее в начале 1956 года. Через несколько месяцев после его появления количество детских журналов в стране удвоилось — уже в сентябре в компанию к «Мурзилке», «Пионеру» и «Костру» добавились «Юный техник», «Юный натуралист» и «Веселые картинки», выпустившие свои первые номера.
Читать дальше →

Deploy SonarQube Server

Reading time5 min
Views11K

Привет, хаброжители!


В данном руководстве хочу изложить пошаговую настройку по развёртыванию платформы для непрерывного анализа и измерения качества кода. Подобных статей в сети достаточно много, но я хочу выделить лишь главное, чтобы все новички с первого раза смогли с ней разобраться. Ставить будем SonarQube 7.9 с PostgreSQL 10.

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

Лайфхак – пишем и бесплатно хостим в облаке вебсайт с гостевой книгой

Reading time6 min
Views12K

Хостим в облаке вебсайт с гостевой книгой бесплатно


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


Предлагаю вам разобрать то, как можно создать гостевую книгу на ASP.NET Core (с reCAPTCHA) и захостить ее бесплатно на довольно известном облачном хостинге (да, с ограничениями, но для персонального вебсайта с не особо большим трафиком годится вполне)

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

Пост про кучу хлама на рабочем столе

Reading time2 min
Views47K

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


Потому что ну как же выкинуть тот красивый блокнот с логотипом компании (пятый в очереди на использование) или наконец-то унести домой давно забытый квадрокоптер. В итоге всё начинает выглядеть так:



Рабочее место редактора


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

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

Information

Rating
3,118-th
Registered
Activity