Как стать автором
Обновить
22
0

lead posix sh developer >:)

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

Hello Ruby, или как научить ребенка программировать?

Время на прочтение1 мин
Количество просмотров19K
Добрый день,

Мы в издательстве «Питер» подумали, что в России катастрофически не хватает актуальных книг по обучению детей программированию. Хотим обратиться к сообществу за советами и рекомендациями по этому поводу.

Вопрос №1. Какой из языков, по вашему мнению, лучше других подходит для целей обучению детей программированию?
Читать дальше →
Всего голосов 24: ↑18 и ↓6+12
Комментарии77

Об особенностях внедрения СПО в малом бизнесе

Время на прочтение5 мин
Количество просмотров44K
Добрый день, уважаемое сообщество!

Существует большое количество малых и «маленьких, но гордых» организаций, которые при всей своей простоте вынуждены пользоваться определенной IT инфраструктурой. Хочу поделиться с вами некоторыми выводами по внедрению в них свободного ПО (СПО) и Линукса, которые я вынес для себя на базе многолетнего положительного опыта в этой области.

image


Слепок типичного заказчика



Обычно существовавшее изначально положение вещей характеризовалось следующим:

1. Организации с количеством компьютеров от 1 до 50 предпочитали использовать проприетарные решения для ОС одной хорошо всем известной заатлантической конторы.
2. Денег на покупку лицензий всегда не было. Предпочитали использовать «пиратчину».
Читать дальше →
Всего голосов 81: ↑58 и ↓23+35
Комментарии161

Именованные параметры Boost

Время на прочтение3 мин
Количество просмотров9.1K
Временами от C++ хочется более гибкого механизма параметризации функций. Например, есть у нас функция с двумя обязательными параметрами и большим количеством необязательных.

bool foo(int important, int& pOut, int sometimes = 1, int occasionally = 2, int rarely = 3)
{
//...
}

Проблемы здесь могут быть следующие

  1. Пользователи постоянно путают порядок параметров, тип их практически полностью совпадает, поэтому компилятор ничем помочь не может (разве что иногда со вторым параметром).
  2. Из необязательных параметров чаще всего нужен один, причем если это не sometimes, пользователи вынуждены вспоминать значения по умолчанию, чтобы задать их в вызове явно. Значения по умолчанию разные, так что ошибок снова много
  3. Нет никакой возможности выразить зависимость значений по умолчанию одних параметров от других.


Проблемы эти можно решить по-разному: передавать в качестве параметра структуру, использовать перегрузку функций или даже функции с разными именами… Boost предлагает еще один вариант решения.
Читать дальше →
Всего голосов 28: ↑26 и ↓2+24
Комментарии20

Жак Арсак. 1929-2014

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

image


Давно собирался почитать книгу «Программирование игр и головоломок». Уж очень часто на неё наталкивался на различных ресурсах, связанных с моими интересами (в частности, одно из моих хобби — ретро-компьютеры и программы для них). И вот начал читать. Стиль и некоторые задачи мне понравились, так что я решил почитать об авторе.

Информацию изначально искал на французском языке (как бы предчувствуя, что на русском найду гораздо меньше), и действительно оказалось, что её не так уж и много. Даже статья в Википедии достаточно лаконична.

Из этой статьи я узнал, что чуть более месяца назад, 14 января, Жак Арсак ушёл из жизни.
Читать дальше →
Всего голосов 62: ↑61 и ↓1+60
Комментарии15

Анализ производительности приложений как отдельное направление в IT

Время на прочтение13 мин
Количество просмотров12K
Добрый день, меня зовут Даниил, и я уже более пяти лет работаю в службе глобальной технической поддержки IT инфраструктуры крупной международной компании. Идея выделить анализ производительности приложений в отдельную область возникла у меня примерно два года назад и сейчас я нахожусь в той стадии, когда уже можно подводить первые итоги работы. Основная причина, побуждающая меня написать эту статью – желание получить конструктивные отзывы извне (в том числе и от уважаемых посетителей данного ресурса), чтобы в дальнейшем использовать их для корректировки курса развития этой области.
Читать дальше...
Всего голосов 8: ↑6 и ↓2+4
Комментарии4

За что конкретно я ненавижу некоторых отдельно взятых маркетологов — или как айтишник по магазинам ходил

Время на прочтение5 мин
Количество просмотров614K
Знакомьтесь, это обычный «литровый» пакет молока:

image

  • Проверка на внимательность: там 900 грамм. Рядом несколько по 950. Но пакет может быть воспринят как литровый.
  • Проверка на знание физики. Рядом лежит похожий кефир. Объём измеряется в миллилитрах, масса — в граммах. Плотность кефира трагически выше плотности воды. То есть 900 грамм кефира 3,2% жирности — это примерно 874,5 миллилитров.

Второй пациент:



25 лет гарантии. Круто, правда? Есть одна проблема. Надо сохранять чек. Проверка, опять же, на знание физики. Чек у них печатается на обычной кассовой термоленте (я проверил на месте). У меня в офисе лежит много чеков. Мы их ксерокопируем, потому что через год-два они полностью выцветают. Самый старый чек, который видел коллега, держался 3 года в папке в архиве. UPD: смотрите самый низ топика, Икея ответила.

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

Осторожно, трафик: под катом много находок с фотографиями.
Читать дальше →
Всего голосов 814: ↑769 и ↓45+724
Комментарии778

Как бы повернулась история: Samsung мог купить Android первым

Время на прочтение2 мин
Количество просмотров49K
Вспомним 2005 год. Еще нет смартфонов (по крайней мере таких, какими мы их знаем сейчас), операторы контролируют весь контент, полная неразбериха с версиями операционных систем и то, что работает на Motorola вряд ли запустится на Samsung. Разработчики приложений бегут от смартфонов как от огня, а те, кто хочет этим заниматься, вынуждены в буквальном смысле писать новый код для каждой модели отдельно, зачастую более 100 вариантов разом.

Революция, однако, носится в воздухе. Энди Рубин начинает работать над операционной системой, которая сначала предназначалась для цифровых камер, но затем захватила и смартфоны. Он начинал как инженер в Carl Zeiss, но потом работал над операционными системами для карманных компьютеров. У него был опыт и поддержка еще нескольких инженеров. В октябре 2003 он запускает проект Android, но уже через год у стартапа кончаются деньги и начинаются поиски инвесторов.

Все мы теперь знаем, что в конце концов Рубин приходит в Google и все живут долго и счастливо. Но мало кто знает, что сперва Рубин ходил с новорожденным Android в Samsung. Вся команда из восьми инженеров Android летала в Сеул для встречи с крупнейшим уже тогда производителем телефонов.

Читать дальше →
Всего голосов 112: ↑102 и ↓10+92
Комментарии55

Отзыв о книге “Интроверты – как использовать особенности своего характера” или почему не стоит смотреть порно на рабочем месте

Время на прочтение8 мин
Количество просмотров311K
Автор книги – Сьюзан Кейн, в течении многих лет изучавшая феномен интроверсии. Впервые про неё я узнал из блога моей коллеги, Ольги Романовой. Книга та оказалась столь полезной, что я теперь просто не могу ею не поделиться. А уж читать её или нет, решайте сами.
Читать дальше →
Всего голосов 224: ↑198 и ↓26+172
Комментарии117

Заржавели мозги — перейди через мост. The Bridge by Ty Tailor

Время на прочтение3 мин
Количество просмотров49K
На Хабре полно математиков и физиков, которым будет интересно узнать об одной любопытной компьютерной игре «The Bridge». Она не вот чтобы прям свежая, я не ее автор и в тематику хабра она с трудом попадает, но я думаю что для этой инди-игры здесь найдутся почитатели. Уже минут 30 как я завершил прохождение зеркальной части игры — до сих пор под впечатлением, и хотел бы чтобы еще кто-то кроме меня остался доволен собой, математикой, Ньютоном и Эшером.

image

Читать дальше →
Всего голосов 54: ↑46 и ↓8+38
Комментарии25

Биржевой софт: Инструменты для создания торговых роботов

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

Мы довольно часто пишем об алгоритмической торговле и связанными с этой область технологиями, но еще ни разу мы не говорили о программном обеспечении, с помощью которого, собственно, можно создать собственную торговую программу. Под катом – обзор распространенных программных средств для создания механических торговых систем, адаптированных под российский фондовый рынок.
Читать дальше →
Всего голосов 36: ↑27 и ↓9+18
Комментарии26

Алгоритм Улучшенной Самоорганизующейся Растущей Нейронной Сети (ESOINN)

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

Введение


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

В этой статье будет рассмотрен алгоритм An Enhanced Self-Organizing Incremental Neural Network, являющийся расширением базовой модели SOINN и частично решающий озвученные проблемы.
Читать дальше →
Всего голосов 38: ↑36 и ↓2+34
Комментарии10

Просто о make

Время на прочтение6 мин
Количество просмотров454K
Меня всегда привлекал минимализм. Идея о том, что одна вещь должна выполнять одну функцию, но при этом выполнять ее как можно лучше, вылилась в создание UNIX. И хотя UNIX давно уже нельзя назвать простой системой, да и минимализм в ней узреть не так то просто, ее можно считать наглядным примером количество- качественной трансформации множества простых и понятных вещей в одну весьма непростую и не прозрачную. В своем развитии make прошел примерно такой же путь: простота и ясность, с ростом масштабов, превратилась в жуткого монстра (вспомните свои ощущения, когда впервые открыли мэйкфайл).

Мое упорное игнорирование make в течении долгого времени, было обусловлено удобством используемых IDE, и нежеланием разбираться в этом 'пережитке прошлого' (по сути — ленью). Однако, все эти надоедливые кнопочки, менюшки ит.п. атрибуты всевозможных студий, заставили меня искать альтернативу тому методу работы, который я практиковал до сих пор. Нет, я не стал гуру make, но полученных мною знаний вполне достаточно для моих небольших проектов. Данная статья предназначена для тех, кто так же как и я еще совсем недавно, желают вырваться из уютного оконного рабства в аскетичный, но свободный мир шелла.
Читать дальше →
Всего голосов 104: ↑98 и ↓6+92
Комментарии111

Генпрокуратура РФ провела заседание экспертной группы по вопросам Bitcoin

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


В этом заседании, которое имеет строгое название «Заседание экспертной группы при Межведомственной рабочей группе по противодействию преступлениям в сфере экономики», приняли участие представители Генпрокуратуры РФ, представители Центрального банка России, представители ФСБ и МВД. В общем, заседатели — достаточно серьезные лица, которые и принимают сейчас решение — быть или не быть криптовалюте в России.

Судя уже по названию заседания, криптовалюты, прежде всего, Bitcoin, рассматриваются в негативном ключе.

Читать дальше →
Всего голосов 122: ↑112 и ↓10+102
Комментарии416

Поверхностно об основах рыночной архитектуры и алготрейдинге

Время на прочтение37 мин
Количество просмотров106K
Многие знают, что одно из первых, что говорят в техническом ВУЗе — забыть все, что проходили в школе. Данная рекомендация актуальна и здесь. Полезно иногда с чистого листа начать.

На данный момент все рынки автоматизированы. По этой причине какие-то экономические объяснения ценообразования являются некими рудиментами. Рулят алгоритмы + некое ручное вмешательство.

Задача каждого торгового алгоритма всегда одна и та же — принести денег владельцу. Алгоритм тем лучше, чем больше денег он в состоянии принести.
Читать дальше →
Всего голосов 83: ↑72 и ↓11+61
Комментарии74

Настройка VPN-сервера SoftEtherVPN под Linux

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

      Как уже писалось на хабре, буквально в начале января сего года под лицензию GPL2 перешел очень интересный и, в своем роде, уникальный проект — SoftEther VPN. Написали его студенты японского University of Tsukuba. Данный продукт позиционирует себя как VPN-сервер с поддержкой огромного количества туннельных протоколов: L2TP, L2TP/IPsec, L2TPv3/IPsec, MS-SSTP, EtherIP/IPsec, OpenVPN, SSL-VPN (собственной разработки), L2VPN, а также такие хитрые штуки как туннелирование через ICMP и DNS. Поддерживает туннелирование как на третьем, так и на втором уровне, умеет VLAN и IPv6. Работает практически на всех известных платформах (даже ARM и MIPS) и к тому же не требует рутовых прав. С полной спецификацией можно ознакомиться вот тут. Если честно, когда я увидел список возможностей этой проги — я просто не поверил своим глазам и подумал: «Если ЭТО работает, то я ДОЛЖЕН это потестить!»
      Эта статья будет описывать процесс установки и настройки SoftEther VPN Server под Линукс. В следующей статье постараюсь нарисовать красивые сравнительные графики производительности.
Читать дальше →
Всего голосов 39: ↑38 и ↓1+37
Комментарии50

Обзор: Puppet, Chef, Ansible, Salt

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

Ведущие инструменты для управления конфигурацией по разному подходят к автоматизации серверов


От переводчика: в связи с грядущим внедрением одной из подобных описанным в статье систем, приходится изучать доселе неведомые продукты. Захотелось перевести, поскольку подобных обзорных статей на русском языке не нашлось (не исключаю, что плохо искал), и, надеюсь, кому-то и пригодится. За возможные ошибки и неточности перевода просьба ногами не бить.

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

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

Puppet, Chef, Ansible и Salt были задуманы чтобы упростить настройку и обслуживание десятков, сотен и джае тысяч серверов. Это не значит, что маленькие компании не получат выгоды от этих инструментов, так как автоматизация обычно делает жизнь проще в инфраструктуре любого размера.
Я пристально взглянул на каждый из этих четырех инструментов, исследовал их дизайн и функциональность, и убежден, что несмотря на то, что некоторые оценены выше, чем другие, для каждого есть свое место, в зависимости от целей внедрения. Здесь я подвожу итоги моих находок.

Читать дальше →
Всего голосов 25: ↑22 и ↓3+19
Комментарии17

Неистовые быки: как Wall Street попала в зависимость от «скоростных» торгов. Часть 1

Время на прочтение6 мин
Количество просмотров43K
Раньше Wall Street делала ставку на компании, производящие товары. Сейчас она ставит лишь на технологии, позволяющие совершать торговые операции как можно быстрее.

image

От редактора: один из наиболее примечательных моментов в катастрофе, произошедшей с Knight Capital Group – трейдинговой компанией, потерявшей на этой неделе $440 миллионов [статья была опубликована на сайте журнала Wired 08.03.12 — прим. переводчика] – скорость этого коллапса. Новостные сводки сообщили, что большая часть совершенных сделок, приведших к падению биржевых цен и колоссальным убыткам, произошла меньше, чем за час. И это падение, спровоцированное действиями ПО, в очередной раз заставило финансовое сообщество задуматься о том, что гонка за прибылью в итоге может обернуться выбором быстрых, но плохо управляемых и недостаточно «интеллектуальных» программных решений. Мы публикуем эту историю до ее официального выхода в печать в сентябрьском журнале Wired, поскольку она демонстрирует, насколько близко Wall Street подошла к точке, когда такие стремительные падения станут совершаться со все возрастающей частотой, и как далеко готовы зайти трейдеры в погоне за скоростью совершения торговых операций.
Читать дальше →
Всего голосов 48: ↑42 и ↓6+36
Комментарии31

Концепции Boost

Время на прочтение6 мин
Количество просмотров32K
От использования шаблонов в С++ лично меня всегда отпугивало отсутствие стандартных механизмов задания ограничений параметров. Другими словами, когда разработчик пишет функцию

template <class T>
bool someFunc(T t)
{
	if (t.someCheck()) {
		t.someAction(0);
	}
}

он делает различные допущения относительно функциональности объектов типа T, однако не имеет стандартной возможности донести их до пользователей. Так приведенный пример предполагает, как минимум, следующее
Читать дальше →
Всего голосов 80: ↑77 и ↓3+74
Комментарии30

Крайне простой способ создать мультизагрузочную флешку под Debian/Ubuntu

Время на прочтение4 мин
Количество просмотров263K
  • Под рукой есть лишняя флешка?
  • Есть желание заиметь удобный инструмент для борьбы с компьютерно-системными болезнями?
  • Не хочется таскать стопку дисков?
  • Пользуетесь Debian или его внучкой Ubuntu, или, может, они есть на виртуалке, заботливо созданой заранее?
  • Любите GUI там, где они действительно уместны?


Расскажу-ка я о LiveUSB Multiboot. Это опен-сорс программа (под GPLv3), которая даёт возможность легко и просто создать загрузочную флешку и кинуть пару образов со всем самым нужным, чтобы при случае запуститься с неё и не мучаться с ношением и записью дисков.
Читать дальше →
Всего голосов 29: ↑17 и ↓12+5
Комментарии22

Автоматизация OpenOffice: Начало

Время на прочтение14 мин
Количество просмотров21K
По работе мне необходимо было разработать механизм загрузки и выгрузки данных из Excel используя свободные механизмы работающие под разными ОС.
Т.к. необходимо было, чтобы сервис работал под Linux, то механизм взаимодействия через OLE не подходил.
Для реализации был выбран OpenOffice с прямым доступом к API через C++.

Open Office api на Linux

Документация оказалась весьма скудная, а примеров работы не через OLE почти не было. Так что я решил объединить все мои исследования в одной статье на хабре.

Примерный план статьи:
1. Начало работы с API OpenOffice через C++
  1.1. Генерация заголовочных файлов
  1.2. Генерация файла типов RDB
  1.3. Настройка Visual Studiо 2008
  1.4. Собираем динамическую DLL
2. Повторное использование DLL в своей программе
  2.1. Пример небольшой программы по выгрузке данных

В принципе, если возможностей DLL достаточно, то повторять действия п. 1 не обязательно.

Читать дальше →
Всего голосов 61: ↑53 и ↓8+45
Комментарии21

Информация

В рейтинге
Не участвует
Откуда
Россия
Зарегистрирован
Активность