Задумывались ли вы когда-нибудь о том, как жилось веб-разработчикам 20+ лет назад, когда всемирная паутина была явлением совершенно новым, а чтобы войти в неё, приходилось некоторое время слушать специфические звуковые сигналы, JavaScript и CSS воспринимались скорее как диковинка, а не как привычные средства разработки веб-сайтов, а самым популярным браузером был Internet Explorer? Что ж, вероятнее всего, нет... Но, если у вас найдется несколько свободных минут и вы захотите разобраться в очередной бесполезной штуке — эта статья вас не разочарует!
User
Худшие практики разработки и архитектуры
Я собрал худшее из худшего! Оказалось, что хороших практик — море, и разбираться в них долго, а вот плохих, реально плохих, — считаные единицы.
Понятно, что плохие практики не отвечают на вопрос: «А как делать-то?» — но они помогают быстро разобраться в том, как не делать.
Мы часто спорим про архитектуру и хотим друг от друга знания разных правильных практик проектирования, лучшего мирового опыта и вот этого всего. Понятно, что в реальном мире это совсем-совсем не так. И худших практик часто достаточно, чтобы начать договариваться, как не надо.
Итак, мой любимый антишаблон — поток лавы. Начинается всё просто: в новый проект можно добавить код из старого проекта копипастой. Он там делал что-то полезное, пускай делает почти то же самое полезное в новом проекте. Вот только нужно закомментить один кусок, а в другом месте — чуть дописать. Примерно через три переноса без рефакторинга образуются большие закомментированные участки, функции, которые работают только с частью параметров, сложные обходы вроде «выльем воду из чайника, выключим газ, и это приведёт нас к уже известной задаче кипячения чайника» и так далее.
Это если команда одна. А если разработчики на пятом проекте новые, то начинается самое весёлое — этот сталактит надо ещё прочитать.
Очень часто я вижу лава-код в проектах аутсорсинговых компаний, потому что они используют свою кодовую базу по разным заказчикам как такой своеобразный иннерсорс. А «междисциплинарный» код как раз хорошо обрастает отключаемыми участками и переопределяемыми функциями.
Made at Intel. Молитвы, энтузиасты и разбитые лбы
Интел — это такая компания, которая все доводит до абсолюта. Или до абсурда. Что, как говаривал капитан Джек Воробей, есть две крайности одной и той же сущности. Надо понимать, что Интел — это огромная машина со своей бюрократией и внутренним пиаром, помноженным на американский энтузиазм. Любое начинание, пусть даже самое полезное, она разгоняет до невиданных масштабов. И, разогнавшись, уже не может остановиться. Иногда мне это напоминало слона, бегущего по джунглям, и сносящего все живое на своем пути. О некоторых примерах, иллюстрирующих известную русскую пословицу, я расскажу в этой главе.
Джон Кармак взялся за сильный ИИ — и у него особый подход. Список фундаментальной литературы для начала
В рубрике «Выдающиеся программисты 21 века» уже была статья про гения программирования Джона Кармака, создателя движков для Doom, Quake и других культовых игр. Потом он занялся разработкой ракет (они в Armadillo Aerospace реализовали вертикальную посадку раньше SpaceX), а затем — систем VR, софта для Oculus Rift и других устройств. Сейчас началась четвёртая фаза в его карьере.
В интервью изданию Dallas Innovates 52-летний Кармак рассказал о новом проекте — системе сильного ИИ (AGI), над которым он работает самостоятельно, без участия больших корпораций, как отшельник в своём особняке в Далласе.
Сильный ИИ общего назначения не будет уступать среднему человеку в понимании происходящего и решении проблем. По оценке Кармака, с вероятностью 60% такая система (альфа-версия) будет создана до 2030 года, с вероятностью 95% — до 2050 года. Это самая важная и интересная задача, которая сейчас стоит перед человечеством.
Создаем свой собственный язык программирования с использованием LLVM. Часть 1: Лексический и синтаксический анализ
Это первая статья из цикла о том, как создать свой собственный ООП язык программирования с использованием LLVM.
В данной статье мы начнем с введения в серию и начнем реализацию с написания лексического и синтаксического анализаторов для подмножества языка, который будет полностью реализован в заключительных частях серии.
Golang-дайджест № 18 (1 – 30 июня 2022)
Свежая подборка новостей и материалов
Интересное в этом выпуске
Выпущены версии 1.18.3 и 1.17.11, go 1.19 Beta 1 Released, обнаружен еще один ботнет на GO, собеседование Часть II что там с конкурентностью?
Приятного чтения!
Какой язык программирования учить в 2018 году и почему именно его?
Фронтенд как у сына маминой подруги
Привет. Я Катя. Я пишу фронтенд в Яндекс.Деньгах.
Я расскажу, как работа в большой компании помогла мне вырасти из верстальщика в программиста. О том, как я перестала бороться с особенностями браузеров и начала — с плохой архитектурой и низким rps. Пусть эта история сэкономит время талантливым разработчикам, которые штампуют лендинги вместо того, чтобы биться за настоящий фронтенд.
В этой статье я расскажу, что мы разрабатываем, как оптимизируем рабочие процессы и зачем развивать свои soft skills. На подходе вторая часть — она будет технической. В ней подробно расскажу про стек, почему их два и как мы дружили БЭМ с React (спойлер: будет много кода). Поехали!
upd. Вторая часть вышла.
Перестаньте делать обычные сайты. Адаптив — это не страшно
Сколько раз вы не могли найти на сайте компании карту с их офисом? Сколько раз вы кликали по экрану, в надежде попасть на нужную вам ссылку? Сколько раз вы проклинали владельцев сайтов за то, что невозможно прочесть текст? А всех этих проблем можно было бы избежать, если бы разработчики предусмотрели адаптивную версию сайта.
Сегодня я хочу рассказать, как посчитать адаптивный сайт, о чем важно не забыть, чтобы потом не было мучительно больно. Информация в основном для менеджеров и им сочувствующим.
Геймдизайнер предложил руку и сердце девушке, создав мини-платформер с предложением в финале
Современные технологии помогают не только запускать управляемые марсоходы и передавать данные с огромной скоростью с континента на континент. Давно и прочно обосновались те самые высокие технологии в нашей жизни. Не будем вспоминать о тефлоне, микроволновках и прочем. Лучше посмотрим, как современные технологии помогли 3D-дизайнеру Роберту Финку получить заветное «да» от своей девушки.
Google Play — работаем легально!
Сегодня, я хочу рассказать о том как сделать свое хобби по разработке Android-приложений пусть небольшим, но официальным бизнесом. О том, как легально получать деньги, заработанные на Google Play, о «страшном» валютном контроле и «таинственном» паспорте сделки.
Стив Возняк: вообще-то, в фильме была в основном ложь обо мне
Среди этих вещей, Apple I был ПЯТЫМ случаем, когда что-то, что я создал (а не собрал на основе чьей-то схемы), было превращено в деньги Джобсом.
Motorola представила «недорогую альтернативу флагманам»: смартфон Moto G
Да, сегодня
Как улучшить свой стиль программирования?
Исповедь 1
Я — разработчик. От своих работодателей я постоянно слышу, что работаю медленно и часто всё усложняю без веской причины. И что мне пора бы что-то с этим сделать. Во избежание.
Весь мой опыт программирования складывается из университетских работ и пары лет пребывания в различных компаниях. Критикующие меня люди неоднократно говорили мне, что в целом я разбираюсь в теме, так что я далеко не клинический случай, как можно было подумать. Однако, очевидно, я выработал совсем не те программистские привычки (как минимум, на взгляд работодателя) и мне нужно срочно изменить их. Везде, где бы я ни работал, мои решения, использующие иерархии мелких классов с делегированием поведения, признавались плохими. Говорят, будто так и надо писать, но это не так. Потому что всё это «как надо» может стоить мне работы.
Запрет хранения данных россиян на зарубежных серверах: что будет после 1 сентября 2016 года?
Сегодня состоялось событие которого все так долго ждали, теперь не будет никаких полумер, с 1 сентября 2016 запрещено хранение любых персональных данных за пределами РФ.
Что произошло?
Что попадает под запрет?
Что будет с интернетом?
Что всё это значит?
Что делать?
На эти вопросы я постараюсь ответить внутри поста.
Microsoft Research запустила браузерную игру-головоломку по обучению программированию
Microsoft Research в своем блоге анонсировала запуск браузерной игры-головоломки Code Hunt по обучению программированию на C# и Java.
Игроку даются фрагменты кода с заранее неизвестной функциональностью. Цель игры заключается в том, чтобы на основе входных данных и ожидаемого результата, изменить код метода или функции так, чтобы выходные данные соответствовали этому ожидаемому результату.
Как я учил английский в Африке
Мыс Доброй Надежды
С английским у меня беда. Дело в том, что учил я его по MS-DOS и Паскалю, а потом по фильмам. Поэтому читать и переводить в нашу сторону научился хорошо, а вот строить предложения на лету для разговора – нет. А оно сильно надо, потому что у Мосигры всё больше и больше партнёров в Европе. Думаю, у вас такие проблемы не возникают, но вот желание заправить трактор иногда появляется — и живой английский реально нужен почти каждому.
Мой заезд: Швейцария, Эмираты, Германия, Канада, Франция
Поэтому я недолго думая отправился в Южную Африку. Быстрых по визе вариантов с тёплой погодой было три: Мальта (где среди учеников сплошь китайцы, а сам остров можно обойти за два дня), Дублин (с очень интересным акцентом) и Кейптаун (колония Великобритании). Поэтому – вниз, за экватор, и на самый край обитаемого мира. В Африку, к пушистым слонам и пингвинам, копающим норы.
Ты не хочешь думать как программист
От переводчика:
Я технический руководитель Букмейта. Самое важное для меня — собрать таких парней, с которыми мне не придется выступать постоянными переводчиком с бизнеса на программистский. Жизнь слишком коротка для этого.
Эту статью скинул мне Леша Гусев — человек, у которого я многому научился и продолжаю учится каждый рабочий день. Спасибо тебе, Леша!
Он скинул ссылку в скайп со словами «ого, чувак написал мой манифест».
И я с ним совершенно согласен.
———————
Научить вас думать как программиста — часто вводные книги и курсы по программированию так обозначают свою цель. Конечно, это лучше, чем чересчур узкое «научить Java». Не стоит понимать это буквально. Более честной и точной формулировкой было бы «научить аналитически декомпозировать задачи». Но пусть эта начальная, кривая последовательность слов — «думать как программист» — послужит нам предостережением и напоминанием.
Ведь на самом деле вы не хотите думать как программист.
Рабочее место Попкорн: Как стать Супер-продуктивным работая на себя
Коллеги, представляю вам перевод статьи про Супер-продуктивность, которая меня сильно зацепила. Надеюсь, что перевод будет вам полезен для организации своего рабочего времени.
Я познакомился с этой идеей где-то на Hacker News несколько недель назад и адаптировал концепцию для моего собственного образа жизни, и это изменило мой подход к работе.
Супер-продуктивность — как начать работать больше, чем когда-либо
Анализ популярных теорий игровой зависимости
Из его беседы мы решили подготовить статью.
Взгляды на компьютерную зависимость современных психологов и психиатров, с моей точки зрения, разделяются на три типа.
В отечественной психиатрии и наркологии принято смотреть на компьютерную зависимость так же, как и на зависимость от психоактивных веществ – как на болезнь.
В качестве лечения предлагается запрет на компьютерные игры и «заместительная терапия» психотропными препаратами.
Второй взгляд – трактовка зависимости от виртуальных игр через примитивную биологическую систему. Создатели компьютерных игр… играют на человеческих слабостях и формируют у игрока рефлекторное поведение. В этой логике геймер – нечто вроде «собаки Павлова» за компьютером.
Information
- Rating
- Does not participate
- Location
- Зеленоград, Москва и Московская обл., Россия
- Date of birth
- Registered
- Activity