Pull to refresh
2
0
Кирилл Пополов @ezhikov

User

Send message

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

Reading time5 min
Views13K
Недавно вышла новая версия Matreshka.js.

image

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

Так гласит документация, но на деле подводные камни присутствуют, особенно учитывая «для новичков» и примеры в документации, которые сбивают с толку.
Читать дальше →

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

Reading time2 min
Views44K
image
Профессор Хаяши / University of Tsukuba

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

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

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

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

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

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

Reading time3 min
Views31K
Скучая в эту дождливую праздничную погоду, наткнулся на занимательную статейку в блоге с говорящим названием Samurails, в которой описываются некоторые интересные ruby-трюки, которые наверняка будут интересны новичкам.

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

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


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

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

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

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

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

Reading time2 min
Views18K


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

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

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

Reading time6 min
Views44K
Доброго времени!
У нас вышла книга Закаса «JavaScript для профессиональных веб-разработчиков»

image

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

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

Reading time3 min
Views64K


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

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

Reading time3 min
Views27K
image

1. Чистый JavaScript и HTML


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

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


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

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


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

С Матрешкой всё намного проще. Вам нужно лишь однажды объявить привязку (в одном месте, а не в двух), затем работать с данными (как с обычными JavaScript объектами), забыв, что у нас вообще есть представление.
Читать дальше →

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

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


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

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

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

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

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

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



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



Итак, если вам интересно продолжение про интерфейсы в реальном мире – заходите в пост. Осторожно, трафик.
Читать дальше →

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

Reading time4 min
Views32K
Программисты делают ошибки в коде. Некоторые просто раздражают (ошибки, не программисты – прим. переводчика), другие могут быть действительно опасными для приложения.
Представляю вам свою подборку из 10 распространенных ошибок разработчиков Ruby/RoR и советов о том, как их избегать. Надеюсь, они помогут сократить вам время отладки кода.
Читать дальше →

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

Reading time3 min
Views28K
Пишущую машинку я расчехляю нечасто, но сегодня есть повод.

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

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

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

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

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

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

Здесь перечислены самые лучшие, на нашвзгляд, игрушки 2015 года, разбитые на категории по развиваемым навыкам:
Читать дальше →

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

Reading time1 min
Views25K


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

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

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



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

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

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


Динамика посещаемости Geektimes с момента запуска (уникальные пользователи за сутки)
Читать дальше →

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

Reading time3 min
Views13K

Идея


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


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

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

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

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

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

Самое оно для заманухи новичков в мир микроконтроллеров.
Читаем дальше?

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

Reading time6 min
Views17K


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

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

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

Reading time2 min
Views18K
Как говорят специалисты по общему искусственному интеллекту (AGI): «Если человеку нечего сказать по существу проблемы AGI, он говорит о проблеме его (без)опасности». Данная проблема гораздо понятнее и ближе широкой аудитории, чем тонкие технические вопросы. По этому вопросу свое мнение может заявить, хоть известный физик, хоть неизвесный хаброжитель. Недавно на эту тему промелькнуло и высказывание Илона Маска об опасности ИИ, пресс-секретарь которого сказал, что вскоре Маск опубликует более подробное мнение об искусственном интеллекте.. И этот ответ оказался не просто словесным, но подкрепленным 10 миллионами долларов.
Читать дальше →

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

Reading time4 min
Views92K
Я веду занятия по программированию для школьников. И наблюдаю проблему, в общем-то, очевидно, стандартную для всех школьников, особенно средних классов — у многих очень низкая скорость набора программного текста на клавиатуре.

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

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

Information

Rating
Does not participate
Location
Химки, Москва и Московская обл., Россия
Date of birth
Registered
Activity