Pull to refresh
5
0

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

Send message

Система типов — лучший друг программиста

Reading time8 min
Views31K

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

Значение в string не лучший тип для записи адреса электронной почты или страны проживания пользователя. Эти значения заслуживают гораздо более богатых и специализированных типов. Мне нужно, чтобы существовал тип данных EmailAddress, который не может быть null. Мне нужна единая точка входа для создания нового объекта этого типа. Он должен валидироваться и нормализироваться перед возвратом нового значения. Мне нужно, чтобы этот тип данных имел полезные методы наподобие .Domain() или .NonAliasValue(), которые бы возвращали для введённого foo+bar@gmail.com значения gmail.com и foo@gmail.com. Эта полезная функциональность должна быть встроена в эти типы. Это обеспечивает безопасность, помогает предотвращать баги и существенно повышает удобство поддержки.
Читать дальше →
Total votes 120: ↑118 and ↓2+116
Comments90

Где скачать научную статью легко и доступно?

Reading time1 min
Views78K

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

Однако стоимость одной статьи от платных издателей может составлять 150 долларов, что не так уж и мало по сравнению с размером стипендии студента.

Здесь собраны совершенно бесплатные ресурсы, где вы можете найти интересующую Вас научную статью.

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

Сделайте ваши QR-коды более красивыми

Reading time3 min
Views97K
imageГамильтон Чан является генеральным директором и основателем Paperlinks.
Используя свободное приложение для iPhone от Paperlinks, рекомендованное Apple как одно из самых нужных и важных приложений, пользователи могут сканировать и просматривать содержимое QR-кодов. Paperlinks также обеспечивает мощную платформу для создания QR-кодов, хранения и отслеживания их посещаемости.

Читать дальше →
Total votes 113: ↑108 and ↓5+103
Comments91

Алгоритм генерации QR-кода

Reading time18 min
Views183K


QR код — это монохромная картинка, на которой некоторые устройства (например смартфон со специальным приложением) распознают текст. Этим текстом может быть не только простая фраза, но и, хоть это и не входит в официальную спецификацию, ссылка, номер телефона или визитная карточка. Такие коды чаще всего используют, чтобы закодировать ссылку и распечатать её на плакате или визитке.

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

За основу этой статьи взят цикл статей «QR Code Demystified» Джейсона Брауна (Jason Brown). В этих статьях опущено много нюансов, что вызвало у меня некоторые проблемы. Все эти нюансы учтены и упомянуты здесь.

Читать дальше →
Total votes 106: ↑99 and ↓7+92
Comments23

Безопасность домохозяйки

Reading time20 min
Views10K

Лет 15 назад, когда интернет выдавался по карточкам и измерялся в часах для нас было обыденным делом ходить в гости за играми, книгами и фильмами. У многих был один единственный диск, обязательно разбитый на c: и d:

Но никто не думал о том, какие именно файлы, валяющиеся на жёстком диске, были доступны на компьютере подключения. Конечно, ведь ты приходил к другу и думал, что наконец-то получишь свежие антивирусные базы, т.к. человек выписывал upgrade special, да и цель визита – фильмец в переводе гоблина. А он от тебя получал подборку нужных тулов вирусов с универа или фоток с зачётов.

Как бы полное доверие, ведь так? Никто не копировал файлы cookies или переписку icq и пр. Да и секретов тогда ещё не было. Всё это выглядит так, словно наши жесткие диски – большие флешки. А так и есть! Подобно флешке ты можешь забыть или потерять свои винчестер/телефон/ноутбук.

В студенчестве это было бы страшным событием, но больше финансово.
А если сегодня попадут в чужие руки твои устройства или облачная учётка, за что ты будешь переживать?

Я уже не студент, и буду переживать не только за пропажу своих девайсов, но и за корпоративные секреты, доступы, переписку и контакты. Если кто-то воспользуется моей учёткой и напишет самым частым контактам типичную, для некоторых соц. сетей, просьбу «переведи до пятницы» или «выдай временный доступ», то кто-то может повестись, и это большая печаль.

Думаю дальнейший мой текст для большинства людей из IT (и не только) не является актуальным, но кому-то будет полезным, я надеюсь

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

Интересные факты про некоторые старые игровые картриджи

Reading time6 min
Views26K

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

Читать далее
Total votes 47: ↑46 and ↓1+45
Comments67

Карта гулябельности Санкт-Петербурга

Reading time10 min
Views36K

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

Читать далее
Total votes 90: ↑87 and ↓3+84
Comments106

Почему HeadHunter это Tinder

Reading time11 min
Views27K

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

Cервис для поиска работы это не место для романтических знакомств и речь в статье не о том, как завести оношения с HR. Последние две недели я искал работу и мне иногда казалось, что я сижу в Tinder. Не вьетнамские флешбеки, но похожие ощущения, что и 2-3 года назад, когда я пользовался сервисом онлайн знакомств.

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

Читать далее
Total votes 42: ↑30 and ↓12+18
Comments50

1000 тонн регенерированного урана из Франции везут в Россию. Что это значит?

Reading time9 min
Views112K

Похоже в Россию снова ввозят ядерные материалы из Европы. Позавчера в Париже Гринпис Франции провел акцию протеста против отправки в Россию 1000 тонн регенерированного урана. Увидев в их твиттере новость об этом я понял, что скоро и в наших СМИ начнется шум. И вот он начался. Попытался на скорую руку разобраться с тем о чем идет речь, что же к нам везут, насколько это похоже на историю с ввозом ОГФУ из Германии, с которой я подробно разбирался ранее, и при чем тут выступление президента Франции Макрона.

Читать далее
Total votes 118: ↑109 and ↓9+100
Comments307

Печать и воспроизведение звука на бумаге

Reading time3 min
Views102K
Можно ли закодировать звук в виде изображения, которое считывается камерой и проигрывается в реальном времени?

На ум сразу приходит QR-код или некие его аналоги. В такой код можно записать ссылку на mp3, или даже совсем маленький звуковой файл. Но в первом случае требуется выход в сеть, а во втором — большая плотность кода и повышенные требования к качеству изображения. Кроме того, ни тот ни другой способ не обеспечит мгновенное воспроизведение.

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


Читать дальше →
Total votes 207: ↑204 and ↓3+201
Comments124

Как сделать 240 килобайт исходников на ПЛК для управления одними рольставнями

Reading time49 min
Views6.7K

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

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

Безопасность ПЛК: 1) Модульность программы

Reading time3 min
Views4.7K

Разделите код на модули, рационально используйте программные организационные единицы. Тестируйте модули независимо.

Разбираем рекомендации по безопасному программироваю ПЛК, формируем список своих рекомендаций. Всех неравнодушных прошу под кат.

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

Демистификация принципов квантовых вычислений

Reading time11 min
Views24K

«Думаю, я смело могу сказать, что квантовую механику никто не понимает», — Ричард Фейнман


Тема квантовых вычислений всегда привлекала технических писателей и журналистов. Ее потенциал в области вычислений и сложность придали ей некий мистический ореол. Слишком уж часто тематические статьи и инфографика подробно описывают всевозможные перспективы этой отрасли, при этом едва затрагивая вопросы ее практического применения: это может ввести в заблуждение не слишком внимательного читателя.
Читать дальше →
Total votes 81: ↑79 and ↓2+77
Comments35

Что вам надо знать, прежде чем вы рискнёте отбеливать зубы

Reading time10 min
Views43K

На самом деле, почти никому не надо отбеливать зубы.

Понятие красоты крайне условное. Кому-то нравятся стройные волейболистки, кому-то ближе стандарты граций Рубенса. Но у красоты есть всё же общая идея. Здоровый человек воспринимается более красивым, чем болезненный, с нездоровой кожей и гнилыми зубами. Это эволюционно разумно — все хотят здорового партнёра для размножения.

Отбеливание зубов пошло отчасти из этой области. Светлые ровные зубы — признак молодости и здоровья, так как с возрастом эмаль постепенно истончается, а зуб меняет оттенок. К сожалению, отбеливание зубов довольно специфичная штука и даётся вашему организму совсем не бесплатно. И если для реальных патологий цвета вроде оранжевых от тетрациклина зубов этот размен может быть оправдан, то в случаях «хочу красиво» надо хорошо подумать. Почти всегда лучше делать профессиональную гигиену и не пытаться изменить родной оттенок. Если вы всё-таки решили это сделать, то лучше заранее узнать про побочки в виде гиперчувствительности и другие сложности. Иногда процесс может быть болезненным, хотя это частично компенсируется правильным составом геля.

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

Читать далее
Total votes 66: ↑61 and ↓5+56
Comments40

10 советов схемотехнику

Reading time20 min
Views116K
Недавно один мой знакомый, начавший интересоваться электроникой и схемотехникой, обратился ко мне с просьбой дать ему какие-то практические советы по разработке электронных устройств. Поначалу этот вопрос немного озадачил меня: как-то так получилось, что для себя я никогда не выделял какие-то перечни обязательных правил проектирования, всё это было у меня где-то на уровне подсознания. Но этот вопрос послужил хорошим толчком для того, чтобы сесть и сформулировать хотя бы небольшой список таких рекомендаций. Когда все было готово, я подумал, что, возможно, это будет интересно почитать кому-то еще, таким образом и получилась данная статья.


Читать дальше →
Total votes 212: ↑210 and ↓2+208
Comments244

Операционные усилители: 10 схем на (почти) все случаи жизни

Reading time15 min
Views454K
Всем привет!

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


Читать дальше →
Total votes 139: ↑137 and ↓2+135
Comments54

Вирус и антибиотики: нежный ликбез для паникующих

Reading time12 min
Views109K

Эта няшка — пушистый мимивирус с размером кода 2,5 Мегабазы (бит четвертичной системы)

Мы тут мониторили каналы, чатики и форумы по поводу текущей обстановки в разных странах. Я просто офигевал от того, что люди могут придумать в панике и безграмотности. Поэтому ликбез. Не про коронавирус. Просто про вирусы. Маленьких «нанороботов». И антибиотики. Которые не надо кушать просто так.

Ликбез мы подготовили вместе с инфекционистом Викторией Валиковой, руководящей клиниками в Гватемале и Никарагуа. Естественно, он полон грубых упрощений.

Кто такие вирусы?


Это такая офигеть какая маленькая форма жизни. Они повсюду, и их очень много. В литре обычной морской воды их примерно 250.000.000.000 штук. И каждый из них занят двумя вещами:

  1. Переработкой клеток на свои копии.
  2. Путешествиями в поиске новых клеток.

Про «форму жизни» есть холивар, потому что вирион (транспортное состояние вируса, частица без клетки) — это просто кусок кода ДНК или РНК + оболочки + некий аналог порта-коннектора. В этом состоянии вирус почти ничем не напоминает жизнь, а, скорее, похож на набор инструкций. И ведёт себя именно, как распечатка инструкций: пока не найдётся кто-то, кто их выполнит, они неактивны.

Если инструкция говорит вам, как использовать ксерокс, чтобы самоскопироваться, можно ли считать её живой?
Читать дальше →
Total votes 251: ↑243 and ↓8+235
Comments291

Как не оконфузиться при выборе автоматического выключателя

Reading time10 min
Views152K

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

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

25 микрочипов, потрясших мир

Reading time23 min
Views52K
image

В разработке микрочипов, как и в жизни, мелочи иногда складываются в значительные явления. Выдумайте хитрую микросхему, создайте её из полоски кремния, и ваше маленькое создание может привести к технологической революции. Так произошло с микропроцессором Intel 8088. И с Mostek MK4096 4-килобитной DRAM. И с Texas Instruments TMS32010 цифровым процессором сигналов.

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

Мы подготовили список из 25 ИС, заслуживающих, по нашему мнению, почётное место на каминной полке дома, который построили Джек Килби и Роберт Нойс [изобретатели интегральной схемы – прим. перев.]. Некоторые из них превратились в долгоиграющую икону поклонения любителей чипов: к примеру, таймер Signetics 555. Другие, например, операционный усилитель Fairchild 741, стали азбучными примерами схем. Некоторые, к примеру, микроконтроллеры PIC от Microchip Technology, продавались миллиардами, и до сих пор продаются. Несколько особых чипов, таких, как флэш-память от Toshiba, создали новые рынки. А по меньшей мере один стал символом гиков в поп-культуре. Вопрос: на каком процессоре работает Бендер, алкоголик, курильщик и достойный порицания робот из «Футурамы»? Ответ: MOS Technology 6502.
Читать дальше →
Total votes 47: ↑43 and ↓4+39
Comments56
1
23 ...

Information

Rating
Does not participate
Location
Россия
Registered
Activity