Pull to refresh
  • by relevance
  • by date
  • by rating

Про новые Intel Core и музейные экспонаты

Intel corporate blog
Вчера, 19 января 2010 года, компания Intel официально представила в России новое семейство процессоров Core.

КДПВ ))

Неделю назад их анонсировали на мировом уровне, но и в этот раз не обошлось без интересного.
Читать дальше →
Total votes 103: ↑74 and ↓29 +45
Views 18K
Comments 95

Особенности моделирования предметной области с помощью ООП

Semantics *System Analysis and Design *ООP *


Введение


Хочу заметить, что тем, кто пользуется терминами ООП, будет очень трудно понять меня. Дело в том, что ООП подменил понятия. В ООП под классом понимается не множество, как обычно принято в математике, или лингвистике. В ООП классом называют тип объектов, как у Аристотеля. Было бы правильно в ООП вместо термина класс объектов использовать термин тип объекта. Однажды, съехав с правильной терминологии, вернуться в лоно правильных терминов оказывается очень трудно. В данной статье я попробую помочь тем, кто желает разобраться с терминологической кашей, заваренной ООП. В своих рассуждениях я буду использовать термины в их первоначальном смысле, а не в смысле ООП. Термин класс будет взят из логической парадигмы моделирования предметных областей, которая, в свою очередь, заимствовала этот термин из теории множеств. Термины тип и экземпляр будет взят из теории типов, построенной на парадигме Аристотеля о существовании типов.

Адепту ООП очень трудно понять, что термин экземпляр класса в русском языке указывает на класс объектов, а не на созвучный этому термину элемент класса – объект класса. Для многих, кто изучал ООП, термины экземпляр и элемент – неразличимы. Давайте разберемся с этими терминами внимательно.
Читать дальше →
Total votes 19: ↑10 and ↓9 +1
Views 31K
Comments 555

На тему моделирования предметной области в терминах ООП

Website development *Semantics *Programming *System Analysis and Design *ООP *

Эта замечательная статья подтолкнула меня опубликовать давние мысли, касающиеся моделирования предметной области с помощью объектно-ориентированного программирования.


К актуальности изложенных в статье идей, приходишь подспудно (не имея возможности выразить по причине того, что парадигме моделирования в терминах теории множеств не учат в вузах, будущих «программистов», по крайней мере), долго работая с ООП и реляционными базами данных:

Каждый раз при моделировании предметной области, оперируя терминами ООП (сейчас говорим не об этапе бизнес-анализа, а о последующем этапе реализации модели в коде), для всех сущностей предметной области приходится реализовывать в коде и схеме БД следующий паттерн, состоящий их «подсущностей», связанных между собой:
  • класс/таблицу вида «Машины» (здесь и далее класс употребляю в терминах ООП);
  • класс/таблицу вида «Список машин»;
  • класс/таблицу вида «Машина».

Далее с помощью механизмов ООП и реляционной модели «подсущности» связываются между собой.

Причем термины «сущность» и «подсущность» применимы именно к модели предметной области в терминах теории множеств,
а в терминах ООП/реляционной модели уместны термины «метасущность» и «сущность» соответственно.
Надеюсь, понятно, почему? — ООП/реляционная модель являются более низкоуровневыми механизмами, и сущность предметной области приходится конструировать, нет в них средств, которые нативными образом позволили бы отразить сущность предметной области.

А далее следуют ожидаемые проблемы:

Читать дальше →
Total votes 13: ↑8 and ↓5 +3
Views 14K
Comments 44

Двенадцать простых начальных шагов разработки модуля для Node.js

Node.JS *
Tutorial
[Аристотель]«Начало — более чем половина всего».

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

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

Обратите внимание на то, что каждый из этих шагов довольно прост и логичен.
Читать дальше →
Total votes 22: ↑19 and ↓3 +16
Views 20K
Comments 3

Математические обозначения: Прошлое и будущее

Wolfram Research corporate blog Entertaining tasks Programming *Mathematics *Professional literature
Translation


Перевод поста Стивена Вольфрама (Stephen Wolfram) "Mathematical Notation: Past and Future (2000)".
Выражаю огромную благодарность Кириллу Гузенко KirillGuzenko за помощь в переводе и подготовке публикации

Содержание


Резюме
Введение
История
Компьютеры
Будущее
Примечания
Эмпирические законы для математических обозначений
Печатные обозначения против экранных
Письменные обозначения
Шрифты и символы
Поиск математических формул
Невизуальные обозначения
Доказательства
Отбор символов
Частотное распределение символов
Части речи в математической нотации
Стенограмма речи, представленной на секции «MathML и математика в сети» первой Международной Конференции MathML в 2000-м году.

Резюме


Большинство математических обозначений существуют уже более пятисот лет. Я рассмотрю, как они разрабатывались, что было в античные и средневековые времена, какие обозначения вводили Лейбниц, Эйлер, Пеано и другие, как они получили распространение в 19 и 20 веках. Будет рассмотрен вопрос о схожести математических обозначений с тем, что объединяет обычные человеческие языки. Я расскажу об основных принципах, которые были обнаружены для обычных человеческих языков, какие из них применяются в математических обозначениях и какие нет.

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

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

Традиционная математическая нотация представляет математические объекты, а не математические процессы. Я расскажу о попытках разработать нотацию для алгоритмов, об опыте реализации этого в APL, Mathematica, в программах для автоматических доказательств и других системах.

Обычный язык состоит их строк текста; математическая нотация часто также содержит двумерные структуры. Будет обсуждён вопрос о применении в математической нотации более общих структур и как они соотносятся с пределом познавательных возможностей людей.

Сфера приложения конкретного естественного языка обычно ограничивает сферу мышления тех, кто его использует. Я рассмотрю то, как традиционная математическая нотация ограничивает возможности математики, а также то, на что могут быть похожи обобщения математики.
Читать дальше о математической нотации, её прошлом и будущем...
Total votes 52: ↑51 and ↓1 +50
Views 47K
Comments 9

Величайшая ошибка в истории физики

Golovanov.net corporate blog Popular science Physics
Translation

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

Все мы любим наши наиболее ценные идеи по поводу устройства мира и Вселенной. Наша концепция реальности часто неразрывно связана с нашим представлением о самих себе. Но быть учёным – значит, быть готовым подвергать сомнению все эти представления при каждой их проверке. Всего лишь одного наблюдения, измерения или эксперимента, противоречащего теории, бывает достаточно для того, чтобы пересмотреть или полностью отказаться от нашего представления о реальности. Если мы можем воспроизвести эту научную проверку и убедительно показать, что она не совпадает с преобладающей теорией, мы закладываем основы научной революции. Но если кто-то не хочет подвергать теорию или предположения проверкам, он, возможно, совершает величайшую ошибку в истории физики.
Читать дальше →
Total votes 61: ↑47 and ↓14 +33
Views 91K
Comments 268

Этика: научный подход к изучению морали. Исходный код политкорректности

Community management *Research and forecasts in IT Reading room Popular science Biotechnologies
Этика — наука о морали, придуманная Аристотелем. Впрочем, репутация как этики, так и морали, тяжело переносят груз веков, всё больше ассоциируясь с чем-то ненужным и неважным. И всё же этика не желает спокойно уходить в ночную тишину по примеру прочих — скажем, астрология содержит корень «логос» и появилась для изучения связи положения небесных фигур с судьбой человека. Правда, с начала применения научного подхода никаких следов подобной связи — а значит, и причин считать астрологию наукой — обнаружить так и не удалось. «Всё невещественное — несущественно». И биологи не ждут нужного положения планет для того, чтобы разрезать лаборатную крысу. Но то, как и кого они могут резать — по-прежнему регулирует биоэтика.

image
Уж что-что, а верно поставить вопрос Аристотель умел

Почему же учёные не прислушиваются к астрологам, но позволяют себя ограничивать требованиями морали? На западе, по традиции, винят религию — Католическая церковь только рада взять на себя эту ответственность: «Да-да, это мы запрещаем вам делать вот такие эксперименты».

Но это не останавливало науку в эпоху Возрождения, когда раскапывание свежих трупов для изучения анатомии человека было страшнее экспериментов над людьми — живых-то людей церковь в те времена потрошить не стеснялась. У науки большой опыт в преодолении препятствий — она вся в этом заключается. Ни инквизиция, ни суеверия, ни костры, ни гонения никогда не могли её остановить. А теперь, когда всё это позади — наука вдруг наткнулась на стеклянную стену.
Читать дальше →
Total votes 43: ↑38 and ↓5 +33
Views 10K
Comments 135

Как профессор MIT доказал существование Бога с помощью математики

Reading room Popular science

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

На этот счет мнения расходятся. Многие считают этот вопрос некорректным, так как до Большого Взрыва не существовало самого времени. Некоторые считают нашу Вселенную внутренностями черной дыры, образовавшейся в некой "внешней" Вселенной. А кто-то считает, что все сущее - это симуляция, запущенная на мощном компьютере в "настоящем" мире. Кто знает, может быть действительно весь наш мир - это всего-лишь навсего школьный проект по программированию шестиклассника из развитой цивилизации. Но даже если наш мир находится внутри "сверхвселенной" или "настоящей вселенной" , то почему существует сама это внешняя Вселенная? Что ее породило? Почему вообще существует все сущее?

Читать далее
Total votes 98: ↑31 and ↓67 -36
Views 21K
Comments 256