Без названия и без подзаголовка

Порядок соединения – Часть 1

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

[Read more →]

Простые числа. Часть первая. Неверный путь.

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

[Read more →]

Вероятно RAC вам не нужен

Перевод статьи Моанса Нургарда (Moans Noorgard) «You Probably Don`t Need RAC» 2003 года.

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

Oracle очень активно продвигает RAC. Вы получите высокий уровень доступности, невероятную масштабируемость, возможности распределения нагрузки, покупки дешевых Linux-серверов, улучшения в личной жизни и все в таком духе.

Звучит все очень здорово. Как можно ответить отказом на такое предложение?

[Read more →]

Дом учености в Армянском переулке

Больше двух веков стоит в Москве в Армянском переулке дом Лазаревых. В его стенах размещался знаменитый Лазаревский институт восточных языков, являвший собой один из крупнейший центров науки и армянской культуры. Сейчас в его помещениях находится посольство Республики Армении.

[Read more →]

Повышение производительности PL/SQL приложений

Every day, in every way, I am getting better and better.
Emile Coue *

Со временем производительность даже хорошо спроектированных приложений может ухудшаться. Поэтому периодическая настройка является важной частью поддержки приложения. Эта глава научит вас простым приемам, позволяющим улучшить производительность. Настраивая приложения, вы можете быть уверены в том, что они будут по-прежнему поддерживать требуемые время отклика и производительность.
[Read more →]

Препятствия – скрытые и все остальные

В комментарии к моей заметке «Три варианта проведения совещаний стоя» был задан вопрос: «Вы можете привести примеры ’скрытых’ препятствий?». Отвечаю, вот они родимые.

Первое: необходимо понимать разницу между блокировкой и затруднением. Блокировки останавливают всю работу. Они редко скрыты, поэтому люди не могут вернуться к тому чем они занимались. Препятствие — это что-то, что мешает работе, замедляет вас, разрушает вашу мораль.

[Read more →]

История Python. Краткая хронология.

Разработка Python велась в то время, когда многие динамические языки программирования с открытыми исходными кодами, такие как Tcl, Perl, и (гораздо позже) Ruby также активно разрабатывались и завоевывали популярность. Чтобы помочь взглянуть на Python в исторической перспективе, ниже приведен список релизов Python. Самые ранние даты приблизительные, так как я не делал последовательные записи всех событий.

[Read more →]

История Python. Принципы проектирования

Дальнейшие записи в этом блоге опустятся в окровавленные пучины истории Python. Однако, прежде чем это сделать, я хотел бы остановиться на философских принципах которые помогали мне проектировать и реализовывать Python.

Прежде всего, Python изначально задумывался как персональный проект «опытной мастерской» — без официального бюджета. Плюс я хотел получить результаты быстро, в частности для того, чтобы убедить руководство поддержать проект (в чем я преуспел). Это привело меня к нескольким, экономящим время правилам:

[Read more →]

История Python. Введение и обзор

Введение

Python, наряду с Perl, Tcl, PHP и новичком Ruby, является одним из самых популярных динамических языков программирования. Несмотря на то что его часто рассматривают язык сценариев, на самом деле это язык программирования общего назначения, как Lisp или Smalltalk (и как все остальные). Сегодня Python применяется очень широко, начиная от скриптов «написал-забыл» до больших масштабируемых веб-серверов, которые предоставляют бесперебойные сервисы 24 часа 7 дней в неделю. Он используется для программирования GUI, баз данных, клиентского и серверного веб-программирования, а также для тестирования приложений. Он используется учеными, пишущими приложения для самых быстрых суперкомпьютеров и детьми для обучения программированию.

[Read more →]

Закон Бенфорда

Когда число случайным образом берется из большого объема данных, например из котировок акций, данных переписи, или научных данных, то какова вероятность того что первой цифрой этого числа будет «1»? Исключив возможность появления нуля, логично предположить что вероятность будет 1/9, или около 11.1%.

Если вы проверите эту гипотезу на реальных данных, то заметите, что вероятность первой «1» будет, как ни странно, около 30.1%, вероятность первой «2» составит около 17.6%, вероятность первой «3» около 12.4%, и далее вероятности будут уменьшаться, так что вероятность первой «9» составит всего 4.5%. Это иллюстрирует нижеследующий график:

[Read more →]

← Before