Как стать автором
Обновить
2
0
Кирилл Пополов @ezhikov

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

Отправить сообщение

Шишки об матрешку

Время на прочтение5 мин
Количество просмотров13K
Недавно вышла новая версия Matreshka.js.

image

В документации на первой же странице написано, что разобраться сможет даже новичок, фреймворк очень простой.

Так гласит документация, но на деле подводные камни присутствуют, особенно учитывая «для новичков» и примеры в документации, которые сбивают с толку.
Читать дальше →
Всего голосов 18: ↑16 и ↓2+14
Комментарии11

Японские учёные, возможно, нашли выключатель старения клеток человека

Время на прочтение2 мин
Количество просмотров44K
image
Профессор Хаяши / University of Tsukuba

Учёные из Цукубского Университета обнаружили, что старение человеческих клеток можно замедлить или даже обратить. Они установили два гена, функционирование которых связано с механизмами старения.

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

Популярная теория старения состоит в том, что из-за постоянного деления митохондрий в клетках происходит постепенное накопление мутаций митохондриальной ДНК. Митохондрии «портятся» и их энергетические свойства сходят на нет.

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

Но учёные из г. Цукуба считают, что, возможно, дело не том, что ДНК митохондрий портится, а в том, что со временем начинают включаться и выключаться определённые гены. Под руководством профессора Джун-Ичи Хаяши исследователи смогли переключить некоторые гены в положение «молодость» и таким образом обратить процесс старения.
Читать дальше →
Всего голосов 48: ↑41 и ↓7+34
Комментарии46

Несколько полезных ruby-трюков, которые (возможно) улучшат ваш код

Время на прочтение3 мин
Количество просмотров31K
Скучая в эту дождливую праздничную погоду, наткнулся на занимательную статейку в блоге с говорящим названием Samurails, в которой описываются некоторые интересные ruby-трюки, которые наверняка будут интересны новичкам.

Итак, приступим.

Создаем хэш из массива


Проще простого. Ставим команду Hash перед любым массивом и получаем готовые пары ключ/значение:

Hash['key1', 'value1', 'key2', 'value2']

# => {"key1"=>"value1", "key2"=>"value2"}

Читать дальше →
Всего голосов 34: ↑26 и ↓8+18
Комментарии34

Американские власти прячут от народа 7854 картин с фруктами и орехами

Время на прочтение2 мин
Количество просмотров18K


Очень ценным пополнением public domain по закону должна стать уникальная коллекция Pomological Watercolor, которую американские власти долгие годы хранили под замком, а потом стали продавать цифровые копии по $10 за штуку.

Коллекция с работами 1886-1942 гг представляет собой уникальное сочетание художественной и научной ценности. С одной стороны, написанные акварелью рисунки сами по себе напоминают произведения искусства. С другой стороны, это научная работа для каталогизации фруктов и орехов. В частности, она содержит рисунки тысяч сортов яблок, исчезнувших с лица земли.
Читать дальше →
Всего голосов 38: ↑34 и ↓4+30
Комментарии16

JavaScript для профессиональных веб-разработчиков

Время на прочтение6 мин
Количество просмотров44K
Доброго времени!
У нас вышла книга Закаса «JavaScript для профессиональных веб-разработчиков»

image

Эта книга ориентирована на три группы читателей:
— профессиональные разработчики, имеющие опыт объектно-ориентированного программирования и желающие изучить JavaScript в контексте традиционных объектно-ориентированных языков, таких как Java и C++;
‰‰- разработчики веб-приложений, которым нужно сделать свои веб-сайты и веб-приложения более удобными в использовании;
— ‰‰начинающие разработчики на JavaScript, желающие лучше понять этот язык.
Читать дальше →
Всего голосов 19: ↑15 и ↓4+11
Комментарии16

Дорогой веб-дизайнер, давай перестанем нарушать возможность скроллить

Время на прочтение3 мин
Количество просмотров64K


Мы все это видели. Вы заходите на веб-сайт — и вот она: большая, красивая фотография во весь экран. Сейчас это огромный (каламбур) тренд в веб-дизайне, и похоже, что людям это нравится.
Но так ли это?
Всего голосов 64: ↑53 и ↓11+42
Комментарии57

(Архив) 10 причин попробовать Матрешку

Время на прочтение3 мин
Количество просмотров27K
image

1. Чистый JavaScript и HTML


Многие фреймворки пытаются починить веб, создавая собственный язык программирования. Идея Матрешки проста: с вебом всё в порядке. Вся логика, которую пишет программист, находится, как и должна, в JavaScript файлах, а HTML остаётся языком разметки гипертекста. Шутка об HTML программисте должна остаться шуткой.

2. Минимум сущностей


Матрешка не требует создания избыточных сущностей. Благодаря простому синтаксису привязок, связь между JavaScript и HTML может быть описана там же, где и логика. Программисту не требуется задумываться сразу о нескольких вещах, размышляя о балансе полномочий объектов. Вопрос где прописать обработчик: во “вьюхе” или в контроллере отпадает сам по себе. Хотя, никто не запрещает разделить данные и контроллер, разместив их в разных JS файлах.

3. Работай с данными, забудь о представлении


Попробовав популярный (но уступающий под натиском более современных продуктов) фреймворк Backbone, сталкиваешься с серьезным неудобством: объявляя данные, зависящие от UI и UI, зависящий от данных, вам, как правило, требуется создать два обработчика события. Один ловит изменения данных, второй ловит пользовательские действия. Проблема подкрепляется еще тем, что HTML элементы, как правило, совершенно идентичны в рамках приложения: input, select, кастомные виджеты из jQuery UI могут многократно встречаться на странице. Программисту, который реализует еще одну “единицу” приложения (например, форму), приходится пользоваться “копипастой”.

С Матрешкой всё намного проще. Вам нужно лишь однажды объявить привязку (в одном месте, а не в двух), затем работать с данными (как с обычными JavaScript объектами), забыв, что у нас вообще есть представление.
Читать дальше →
Всего голосов 43: ↑31 и ↓12+19
Комментарии37

Вы неправильно пишете животных

Время на прочтение5 мин
Количество просмотров381K
Животные – это платформы с очень ограниченной памятью, вычислительными способностями и возможностями модификаций. Разработчикам энимал-сцены приходится выдавать практически гениальные низкоуровневые алгоритмы. Правда, большое количество хардкода вызывает характерные проблемы с отсутствием проверки в экзотических условиях. Та же фильтрация входных данных делается очень и очень криво.


Уязвимость рекурсивных алгоритмов навигации муравья: спираль смерти

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

Но пойдём далее. Я не знаю, кто разрабатывал архитектуру ящериц, но они бегают в одном процессе, а дышат в другом. При этом платформа не поддерживает многозадачность, поэтому костыль с максимальной длиной бега в 4-6 секунд просто эпичен.
Читать дальше →
Всего голосов 442: ↑438 и ↓4+434
Комментарии352

Интерфейсы в реальном мире (ещё примеры)

Время на прочтение10 мин
Количество просмотров140K
Обычный кран с горячей и холодной водой очень жесток к пользователю. В идеале его интерфейс решает три основные задачи:
  • Позволяет выбрать напор воды.
  • Позволяет выбрать температуру воды.
  • И защищает систему от гидравлического удара.

Вот тут вы можете узнать пару своих знакомых кранов:



А это — очень страшный автомобильный диод, по нему только вперёд:



Итак, если вам интересно продолжение про интерфейсы в реальном мире – заходите в пост. Осторожно, трафик.
Читать дальше →
Всего голосов 110: ↑105 и ↓5+100
Комментарии227

10 ошибок в Ruby / Ruby on Rails, которые легко исправить

Время на прочтение4 мин
Количество просмотров31K
Программисты делают ошибки в коде. Некоторые просто раздражают (ошибки, не программисты – прим. переводчика), другие могут быть действительно опасными для приложения.
Представляю вам свою подборку из 10 распространенных ошибок разработчиков Ruby/RoR и советов о том, как их избегать. Надеюсь, они помогут сократить вам время отладки кода.
Читать дальше →
Всего голосов 27: ↑23 и ↓4+19
Комментарии38

Wallaby.js — маленький зверь с большим будущим

Время на прочтение3 мин
Количество просмотров28K
Пишущую машинку я расчехляю нечасто, но сегодня есть повод.

Тесты для JavaScript пишут многие, некоторые пишут много тестов. Есть несколько популярных тестовых фреймворков, таких как Jasmine, Mocha, QUnit, а также инструменты для автоматического запуска тестов. Некоторые из них даже интегрированы в некоторые редакторы кода. Например, Karma runner и Mocha прекрасно интегрированы моими коллегами в WebStorm. Словом, существуют разные способы запускать тесты автоматически и получать результаты в течении одной или нескольких секунд. Впрочем, время зависит от количества и характера тестов.

Как мы используем наши JavaScript тесты

Читать дальше →
Всего голосов 38: ↑37 и ↓1+36
Комментарии24

Интеллектуальные игрушки: Инструкция для родителей

Время на прочтение3 мин
Количество просмотров13K
Хотите, чтобы ваш ребенок вырос инженером-механиком или инженером-электриком? А как насчет профессии программиста или разработчика приложений? В современном мире каждый старается смотреть в будущее. В то время как многие родители ощущают острую необходимость нанять своему ребенку репетитора по математике перед тем, как отдать его в детский сад, существует альтернатива: игрушки! Однако некоторые игрушки лучше других в том, что касается стимулирования детского любопытства.

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

Здесь перечислены самые лучшие, на нашвзгляд, игрушки 2015 года, разбитые на категории по развиваемым навыкам:
Читать дальше →
Всего голосов 20: ↑17 и ↓3+14
Комментарии6

Электрическая батарея питает звонок уже 175 лет подряд

Время на прочтение1 мин
Количество просмотров25K


В лаборатории Кларендон оксфордского университета находится удивительная диковинка: электрический звонок, который работает уже 175 лет подряд. Источником электроэнергии для него служит т.н. «сухая батарея». Это ранняя форма батарей, действующих на электростатическом принципе, была изобретена Джузеппе Замбони в 1812 году.
Читать дальше →
Всего голосов 51: ↑46 и ↓5+41
Комментарии20

Смартфоны 2015 года: новые технологии по версии MediaTek

Время на прочтение6 мин
Количество просмотров21K
У каждой компании – разработчика чипсетов для мобильных устройств есть свой фирменный набор технологий, выделяющий их продукты на фоне конкурентов. Это вполне логично: всем разработчикам доступны одни и те же вычислительные ядра ARM и графические ускорители; если не вкладывать ресурсы в создание собственных технических фишек, то чипсеты у всех игроков рынка были бы практически одинаковыми. И в плане энергопотребления, и в области производительности.



В этом материале я расскажу о фишках, реализованных в топовых чипсетах тайваньской MediaTek, – MT6595 (обзор на Geektimes) и всех более новых восьмиядерных решениях. Но во главу угла, разумеется, поставим именно MT6595: на основе этого чипсета уже существует несколько смартфонов. Например, Meizu MX4, Lenovo Vibe X2, Zopo ZP999, Alcatel One Touch D820 и так далее. MediaTek MT6595 будет актуальным на протяжении всего 2015 года, и на его основе наверняка будет выпущено еще несколько аппаратов среднего и верхнего ценового уровня. Плюс со дня на день эстафету подхватят 64-битный восьмиядерный MT6795 (анонс на Хабре) и другие новейшие разработки тайваньского чипмейкера.
Читать дальше →
Всего голосов 29: ↑26 и ↓3+23
Комментарии17

«Хабрахабр» представляет «Мегамозг»

Время на прочтение4 мин
Количество просмотров80K
После выделения «Geektimes» из «Хабрахабра» мы активно наблюдали за происходящим как на каждом из ресурсов в отдельности, так и во всей экосистеме наших сообществ. Смотрели, как изменилась активность, что стало с посещаемостью, рейтингами и другими показателями. И хотя не всё пошло так, как было запланировано, в целом мы довольны результатом. «Хабрахабр» стал более цельным и понятным для IT-специалистов, мы убрали с ресурса темы, которые мешали позиционировать проект как исключительно профессиональный ресурс, а «Geektimes» довольно быстро привлёк внимание аудитории и активно развивается усилиями редакции и пользователей.


Динамика посещаемости Geektimes с момента запуска (уникальные пользователи за сутки)
Читать дальше →
Всего голосов 205: ↑105 и ↓100+5
Комментарии318

Адаптация субтитров на основе словарного запаса

Время на прочтение3 мин
Количество просмотров13K

Идея


Я смотрю большое количество фильмов.После того как уровень английского стал достаточным, чтобы смотреть их с субтитрами на языке оригинала (в 99% случаев это английские), я начал постоянно сталкиваться с проблемой что одно-два слова всплывет которые я не знаю, приходилось лезть в словарь либо переключаться на русские субтитры, что омрачало просмотр. Сначала я подумал что было бы не плохо заранее узнать какие неизвестные мне слова попадутся и заучить их, но впоследствии выяснилось что таких слов для каждого фильма набиралось около 200, что существенно усложняло процесс заучивания. Так я пришел к идее подставления переведенного слова непосредственно во время просмотра фильма. Вышло как-то так:


Читать дальше →
Всего голосов 28: ↑27 и ↓1+26
Комментарии19

MicroView: крохотный Arduino-совместимый микроконтроллер с OLED-дисплеем в корпусе

Время на прочтение3 мин
Количество просмотров18K
imageПроект стартовавший на KickStarter в апреле 2014, собрал более 600 тыс. долларов (вместо запрашиваемых 25 тыс.), и в сентябре 2014 наконец вышел в большой мир при участии знакомой многим компании SparkFun.

Что же это за зверь такой?

А это OLED-дисплей + корпус + сердце на AVR и Arduino внутри. И всё это в компакт-факторе и стильной форме.

Самое оно для заманухи новичков в мир микроконтроллеров.
Читаем дальше?
Всего голосов 26: ↑25 и ↓1+24
Комментарии11

Моральные дилеммы роботизированного будущего

Время на прочтение6 мин
Количество просмотров17K


Экосистема окружающих нас гаджетов становится всё «умнее». Несмотря на очевидные сложности с созданием полноценного искусственного интеллекта, успехи на этом поприще довольно заметны. И кого-то это уже пугает. Всё чаще мы слышим от разных экспертов, что нас, вероятно, ждёт восстание машин. Не избежал этого поветрия даже Стивен Хокинг, впечатлённый способностями своего нового электронного ассистента предугадывать, что он хотел сказать. На подобные опасения другие резонно возражают, что компьютерам нужно стать не просто умными, но ещё и изобретательными. А создавать что-то новое, не компилируя уже известные элементы, компьютеры пока не способны даже на самом примитивном уровне. Так что можно не волноваться насчёт сценариев а-ля «Матрица» и «Терминатор», в ближайшие много десятилетий нам это точно не грозит.

С другой стороны, умные машины, роботы всех видов, будут активно проникать в нашу жизнь, и тенденции к этом очевидны. Сначала простенькие роботы-уборщики, способные самостоятельно выбирать программу уборки и строить свой маршрут. Потом в наши смартфоны проникли голосовые помощники разной степени сообразительности, понимающие нашу речь и даже некоторые эмоции. И независимо от то, радует вас это или пугает, развитие робототехники и искусственного интеллекта со временем поднимет ряд морально-этических, социальных и законодательных дилемм. Например, в праве ли полиция использовать оснащённых тазерами дронов? Или должны ли гуманоидные роботы, крайне похожие на людей, иметь какие-то права?
Читать дальше →
Всего голосов 28: ↑25 и ↓3+22
Комментарии66

Илон Маск подкрепляет свое мнение об опасности ИИ с помощью $10M

Время на прочтение2 мин
Количество просмотров18K
Как говорят специалисты по общему искусственному интеллекту (AGI): «Если человеку нечего сказать по существу проблемы AGI, он говорит о проблеме его (без)опасности». Данная проблема гораздо понятнее и ближе широкой аудитории, чем тонкие технические вопросы. По этому вопросу свое мнение может заявить, хоть известный физик, хоть неизвесный хаброжитель. Недавно на эту тему промелькнуло и высказывание Илона Маска об опасности ИИ, пресс-секретарь которого сказал, что вскоре Маск опубликует более подробное мнение об искусственном интеллекте.. И этот ответ оказался не просто словесным, но подкрепленным 10 миллионами долларов.
Читать дальше →
Всего голосов 26: ↑23 и ↓3+20
Комментарии100

Простой клавиатурный тренажер для программистов

Время на прочтение4 мин
Количество просмотров92K
Я веду занятия по программированию для школьников. И наблюдаю проблему, в общем-то, очевидно, стандартную для всех школьников, особенно средних классов — у многих очень низкая скорость набора программного текста на клавиатуре.

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

Когда я сам был школьником, у нас на занятиях по программированию была специальная (самописная) программа-тренажер, которая в качестве словаря использовала реальный словарь языка программирования (выдернутый из справки, насколько я помню). Я решил, что нынешним школьникам надо тоже сделать что-то подобное — чтобы они тренировались на фрагментах, которые реально будут встречаться в программах. При этом они не только будут увеличивать свою скорость набора, но еще и учить собственно программные конструкции.
Читать дальше →
Всего голосов 36: ↑36 и ↓0+36
Комментарии31

Информация

В рейтинге
Не участвует
Откуда
Химки, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность