Архив за 03 июня 2013

Прототип «цифровой тетради» Sony стал первым устройством, в основе которого использовался новый гибкий экран E Ink Mobius. А вот первым продуктом на рынке с подобным экраном, скорее всего, станут часы Sonostar Smartwatch, заказать которые можно уже сейчас по цене $180. Поставки же часов должны начаться к концу лета.

E Ink Mobius

Компания "Биглион" собирается не только продавать товары со скидками, но и сделала шаг к созданию "обычного" интернет-магазина - с постоянной номенклатурой товаров, о чём говорится на сайте самого "Биглиона":

Биглион пытается стать обычным магазином

Читать полностью »

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

Например, такую:

generated melodyЧитать полностью »

Система управления данными на базе ASP.NET Dynamic Data

Концепция

Я работаю с ASP.NET достаточно давно. При разработке многих проектов я часто сталкивался с тем, что однотипные операции по управлению данными занимают слишком много времени. Естественно для сайтов существуют CMS системы, а для более сложных систем различные генераторы шаблонных страниц, которые создают заготовки для форм редактирования и просмотра информации. Но мне хотелось получить более универсальный инструмент, который в тоже время не накладывал бы ограничений на процесс построения архитектуры приложения.
Читать полностью »

Софтверные компании, как Microsoft или Google, публикуют миллионы статей для разработчиков с описанием программных интерфейсов, сервисов и платформ. Они вкладывают огромные усилия в создание документации.

В то же время сами разработчики всё меньше читают официальную документацию, а всё чаще получают информацию на профильных сайтах, показало исследование Ninlabs Research. Выяснилось, что около 50% времени разработчики проводят на специализированных сайтах для программистов, в том числе Stack Overflow, а вовсе не на порталах с официальной документацией.
Читать полностью »

Компания Gigabyte привезла на выставку Computex 2013 большое количество новых моделей своих портативных компьютеров. Среди новинок оказалась и модель U35F, изображение и спецификации которой приводит источник.

Читать полностью »

Самый простой способ обойти запрет на просмотр сайта из списка Единого реестра запрещённых ресурсовНа Хабре уже написано не мало статей на эту тему:

  1. АнтиЗапрет — Скажи цензуре нет!
  2. Простой личный анонимайзер
  3. VPN? Суперпросто! Я гарантирую это
  4. Создание «островка сетевой свободы» на основе VPS за 30 минут

и т.д.

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

Предлагаемый мною способ потребует у вас не более нескольких минут настроек даже у неопытного пользователя. Всё что нам нужно — это скачать один из 2-х браузеров: Yandex.browser или OperaЧитать полностью »

image

На кикстартере начата кампания по сбору средств на игровой костюм, который позволит игроку получать от игры не только визуальные и звуковые, но и тактильные ощущения. До конца кампании осталось 26 дней, и разработчики планируют за это время собрать сумму в $900 000.
Читать полностью »

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

Самый простой класс

local MyClass = {} -- the table representing the class, which will double as the metatable for the instances
MyClass.__index = MyClass -- failed table lookups on the instances should fallback to the class table, to get methods

-- syntax equivalent to "MyClass.new = function..."
function MyClass.new(init)
  local self = setmetatable({}, MyClass)
  self.value = init
  return self
end

function MyClass.set_value(self, newval)
  self.value = newval
end

function MyClass.get_value(self)
  return self.value
end

local i = MyClass.new(5)
-- tbl:name(arg) is a shortcut for tbl.name(tbl, arg), except tbl is evaluated only once
print(i:get_value()) --> 5
i:set_value(6)
print(i:get_value()) --> 6

(взято с lua-users.org/wiki/ObjectOrientationTutorial)

Всё это конечно хорошо, даже при определённой сноровке можно реализовать наследование…
Но где public и private члены класса? Дефакто в этом примере они все public. Да ещё и надо помнить, где использовать двоеточие:

MyClass:myFunc()

а где просто одну точку:

MyClass.myOtherFunc()

А статические члены класса? Неужели придётся отказываться?
Читать полностью »

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

Читать полностью »