Pull to refresh
56
0.3
Юрий @infund

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

Send message

Чем программисту заняться в 1990 году: осваиваем чёрную магию ассемблера

Reading time17 min
Views27K

Итак, DeLorean доставил вас в США 1990 года. Как и полагается в таких случаях, в машине что-то сломалось, так что вам предстоит задержаться на некоторое время. Пока Док Браун занимается ремонтом, вам тоже надо чем-то заняться. 

В этой статье давайте пофантазируем о том, как могло бы выглядеть программирование в 1990 году.

Вы вспоминаете, что вы ж программист – можно заняться программированием! 

Читать далее
Total votes 97: ↑96 and ↓1+113
Comments161

Bottom sheet: Custom transitioning

Reading time10 min
Views8.3K

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

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

Читать далее
Total votes 12: ↑12 and ↓0+12
Comments1

Разбираем tableHeaderView и viewForHeaderInSection на простом приложении

Reading time7 min
Views3.1K

Всем привет сегодня мы разработаем простое приложение для летней кафешки и добавим tableHeaderView и viewForHeaderInSection.

Для начала посмотрим как наше приложение должно выглядеть.

Читать далее
Total votes 2: ↑2 and ↓0+2
Comments3

Сертификаты Apple. Понимание. Что это и зачем вообще нужны?

Reading time5 min
Views10K

Сертификаты, ключи, доступы, безопасность - всё очень запутанно. Многие из нас просто знают, как решать большинство ошибок, связанных с этим, либо могут это быстро нагуглить. Сегодня хотелось бы постараться углубиться в данную тему в рамках Apple и понять, почему все так работает. Меня зовут Макс Нечаев, я Senior iOS-developer в крупном фуд-тех стартапе в Катаре - Snoonu. Очень надеюсь, что статья поможет вам немного лучше понять данную область разработки.

Сегодня поговорим о сертификатах и профилях подготовки в Swift.

Читать далее
Total votes 11: ↑5 and ↓60
Comments10

Старое железо СССР Часть 4. ЭВМ СМ-3, СМ-4

Reading time7 min
Views9.2K

Старое железо СССР часть 4. ЭВМ СМ-3 СМ-4.

Спасибо читателям и комментаторам за ваш интерес и исправление ошибок. Продолжаем. Формат все тот же. Воспоминания очевидца и участника начала всеобщей компьютеризации СССР. Если что-то кажется интересным, ищите по названиям дополнительную информацию в Сети, картинки и обстоятельные обзоры, они есть.

1979 год. В нашей лаборатории появилась ЭВМ СМ-3. Разработчик ИНЭУМ производство заводы министерства приборостроения. Прототип, скажем так аккуратно, PDP-11 модель 03. У нас был Заказчик, стоящий на ступеньку ближе к деньгам и фондам. Ему поставили ЭВМ СМ-3 и почти сразу же СМ-4. СМ-3 стала не нужна и ее передали нам. Крохи с барского стола. Через несколько лет Заказчик снова обновил технику и к нам приехала и СМ-4. Модели отличаются только процессором, у СМ-3 16 бит адреса, СМ-4 имеет 18 бит, диспетчер памяти и больше команд.

Читать далее
Total votes 39: ↑39 and ↓0+39
Comments50

Все способы легального вывода денег из России: детальный разбор со ссылками

Reading time12 min
Views116K

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

Читать далее
Total votes 86: ↑74 and ↓12+88
Comments87

Как уехать из России: расширенная подборка полезных ссылок для эмиграции

Reading time4 min
Views59K

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

Читать далее
Total votes 57: ↑34 and ↓23+24
Comments72

Количество Биткоинов не будет 21.000.000

Reading time6 min
Views35K

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

Докопаться до истины
Total votes 38: ↑33 and ↓5+39
Comments14

Стабилизированный блок питания для тёплых ламповых схем

Reading time9 min
Views20K

Привет, Хабр! Сегодня соберём трансформаторный источник питания с мостовым выпрямителем и рассмотрим два типа линейных стабилизаторов напряжения. На транзисторном повторителе напряжения и на специализированной микросхеме.

А самое главное, что будем не только паять, но и разбираться, как эти электронные цепи работают. Это нужно не только для того, чтобы найти и устранить неисправность в случае, если она есть, но и определить, какая схема годится для нашей цели, и что в схеме можно изменить, чтобы она работала так, как нам надо.
Читать дальше →
Total votes 45: ↑41 and ↓4+60
Comments38

Как работает неточное сравнение строк

Reading time7 min
Views28K

https://fakt309.github.io/thisisthewall/

В языках программирования строки сравниваются очень просто, если строка отличается хотя бы на один символ, то возвращает false.

Но вот что если мы хотим не просто получать дискретное значение (true / false), а дифференцированное, например в процентах. Ведь согласитесь строки test и testing гораздо ближе к друг другу, чем test и abcd. Для данной проблемы существует множество решений, мы поговорим о самый популярных алгоритмах (также об их модификациях):

Расстояние Хэмминга

Расстояние Левенштейна

Сходство Джаро — Винклера

Коэффициент Сёренсена

Читать далее
Total votes 45: ↑42 and ↓3+44
Comments43

Вычисляем π на первом процессоре от Intel — 4004

Reading time10 min
Views18K

Как-то мне пришла в голову мысль о том, насколько же быстрее современные процессоры по сравнению с ранними экземплярами. Да, можно размышлять об этом эмпирически - зная тактовую частоту и особенности микроархитектуры (как устроен конвейер, сколько есть ALU, и т.д.), можно прикинуть производительность Intel 4004. Пусть и не в FLOPS'ах, ибо нативная поддержка чисел с плавающей запятой появилась позже. Но это будет весьма грубая прикидка, так как у этого процессора есть несколько интересных черт: разрядность только 4 бита (а не 64, как у большинства современных машин), очень скудный набор инструкций (нет даже AND'a и XOR'a!) и ограничения переферии (в частности памяти не так уж и много).

Поэтому я решил исследовать вопрос на практике. В качестве бенчмарка выбор пал на вычисления числа π. В конце-то концов, даже ENIAC в дремучем 1949 году справился с этой задачей! [2]

Читать далее
Total votes 78: ↑77 and ↓1+107
Comments25

Взлет и падение карманных ПК

Reading time17 min
Views52K
В начале 2000-х годов пределом мечтаний для многих был карманный персональный компьютер — сокращенно КПК. Мимо меня это веяние тоже не прошло. Я долго присматривался и выбирал между Windows Mobile и Palm OS, но все казалось слишком дорогим. Наконец в 2004 году я раскошелился и купил свой первый КПК на базе Palm OS — Zire 31. Тогда он стоил что-то в районе 150 долларов. Работал довольно шустро, имел цветной экран, но надо признать, довольно посредственный. У друга была Sony SJ30, с намного более приятной картинкой. А еще разряжалась моя Зирка (как я ее называл) ужас как быстро. Но в целом, КПК был кайфовым.

Не прошло и пары лет, как Зирка благополучно навернулась. Уже не помню причину, но я тупо убрал ее в шкаф и продолжил пользоваться мобильным телефоном. Недавно я полез перебирать вещи в шкафу и наткнулся на этого зверя. Признаюсь честно, справиться с потоком ностальгии я не смог. Дошло до того, что я решил разобраться с историей КПК и поделиться этим на Хабре — получилась вот такая статья. Осторожно, следующая информация может вызвать слезы по безвозвратно ушедшим временам.


Приятного чтения!
Total votes 73: ↑72 and ↓1+91
Comments150

Копия по мотивам «ячейки звукового синтеза Агат» для IBM PC/XT — «музыкальная ячейка»

Reading time8 min
Views6.1K

ЯЗС - Ячейка Звукового Синтеза - дополнительная плата расширения для компьютера "Агат", нечто вроде примитивной звуковой карты, имеющая пять тональных и два ударных канала. Подробнее про нее можно почитать здесь: http://agatcomp.ru/agat/Hardware/SoundNCL/jzs52.shtml. Когда-то давно мне очень понравилась видео-демонстрация работы ЯЗС, и особенно понравился звук, издаваемый этим устройством. Так, как ПЭВМ Агат у меня нет, и никогда не было, а побаловаться с извлечением звуков и таймером КР580ВИ53 хотелось, появилась мысль повторить устройство, только на более доступную для меня (да наверное, и не только для меня) шину ISA-8 от компьютеров IBM PC - благо на барахолках купить любую плату с ISA шиной пока еще представляется возможным. 

Читать далее
Total votes 78: ↑78 and ↓0+78
Comments11

О Thread и ThreadPool в .NET подробно (часть 1)

Reading time15 min
Views42K

Эта текст покрывает ответы на некоторые совсем базовые вопросы и вместе с тем сразу погружает в проблематику получения ответа на вопрос: "как работать лучше? однопоточно, многопоточно или многопоточно, но на ThreadPool?". Ответ на этот вопрос может изначально показаться очень простым и понятным, однако реальность совершенно иная: всё как и везде сильно зависит от ситуации: от типа задачи, от её размера, от прочих условий, которые так просто в голову сами собой не придут.

А потому мы пройдёмся в первую очередь по IO-/CPU-bound операциям, стоимости создания потока, базовым основам работы пула потоков (но только основы), а далее -- углубимся в анализ чёрного ящика: от чего зависит производительность пула потоков? Каков объём работы приемлим для того чтобы в него планировать?

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

Также отмечу, что материал постепенно переходит от начального уровня сложности ? через ⚠️ средний уровень к ☠️ высокому, о чём вы сможете узнать по пиктограммам.

Погрузиться в знания
Total votes 25: ↑24 and ↓1+34
Comments11

О Thread и ThreadPool в .NET подробно (часть 2)

Reading time13 min
Views18K

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

⚠️ Материал средней сложности

С другой стороны, показанные примеры доказывают, что на производительность сильно влияет гранулярность элементов работы. Имеется ввиду, конечно же, длительность работы делегатов. Чтобы достичь хороших показателей, гранулярность работы не может быть абы какой: она должна быть правильной. И помимо планирования задач на ThreadPool, планировать их можно также как через TPL так и через какой-либо свой собственный пул потоков. Например, если взять обычный ThreadPool, то можно примерно измерить издержки алгоритмов ThreadPool в тактах Time Stamp Counter счётчика времени (можно, конечно и в чём-то более привычном типа микросекунд, но там на многих сценариях вполне могут быть нули)

Читать далее
Total votes 37: ↑37 and ↓0+37
Comments2

Физика двоичной логики

Reading time13 min
Views34K

Вопрос «Как работает компьютер?» чрезвычайно многогранен и ответ на него зависит от выбранного уровня абстракции. Рассказ о компьютере может строиться вокруг прикладного ПО, операционной системы или архитектуры. Эта статья — попытка дать ответ на этот вопрос с точки зрения нижних уровней абстракции: логических схем и принципа их работы.
Читать дальше →
Total votes 35: ↑30 and ↓5+34
Comments16

Погружение в Combine: последовательные и объединяющие операторы для улучшения процесса разработки iOS приложений

Reading time8 min
Views7.4K

Добрый день! Я — Иваев Зафар, iOS разработчик в компании Usetech. В этой статье мы узнаем как фреймворк Combine помогает нам разрабатывать функционал приложения с помощью встроенных функций — операторов. В этой статье, мы покроем следующие типы операторов:

1. Последовательные операторы

2. Объединяющие операторы

Читать далее
Total votes 4: ↑4 and ↓0+4
Comments0

Гильоши

Reading time11 min
Views41K
Гильоши — это характерные узоры на деньгах и ценных бумагах. Они красивы, и сочетают в себе одновременно заметную сложность с внутренней простотой — когда кажется, что ты вот-вот уловишь принцип, но он каждый раз от тебя ускользает. Возможно, именно это и есть определение красоты.
Читать дальше →
Total votes 123: ↑123 and ↓0+123
Comments56

Гильоши другим манером

Reading time5 min
Views3.7K
Гильоши — это характерные узоры на бумажных деньгах и других ценных бумагах. Подробный рассказ о них с отступлением в историю можно найти в предыдущей статье. Там же приводился и алгоритм рисования, строящий гильоши по точкам.

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

Поэтому пришло время подумать о другом алгоритме — который давал бы сразу вектора. Поскольку в распространенных редакторах для кривых линий предлагается только интерполяция кривыми Безье, на них и будем ориентироваться.
Читать дальше →
Total votes 18: ↑18 and ↓0+18
Comments2

ADOBE Systems — история удивительного успеха

Reading time25 min
Views13K

Из этой статьи вы узнаете:

- Как двое немолодых людей взяли себя в руки, ушли из крупной компании и основали свою.
- Как Стив Джобс стал их первым и самым значимым клиентом, а годы спустя объявил им войну.
- Как одного из них похитили и 4 дня держали в заложниках.
- И какую роль играло Министерство Обороны США не только в становлении компании, а во всей компьютерной отрасли.

Читать далее
Total votes 29: ↑27 and ↓2+27
Comments35

Information

Rating
2,499-th
Registered
Activity