Пока готовится первая статья в обучающей серии об языке Эрланг, решил сделать перевод одного интересного блог-поста. Пост об развитии виртуальной машины Эрланг и целях, которые пытаются достичь его авторы.
Ermak @Ermak
User
Удаленная работа: тим-лиду и программистам
4 min
26KДостоинства удаленной работы очевидны — меньше ограничений в поиске специалистов с нужной квалификацией, возможность нанимать людей за пределами МКАД, меньше расходов на ведение бизнеса. С другой стороны, есть и проблемы: наиболее значительные — со стороны организации работы. Последние 4 года я работаю тим лидом распределенной группы программистов (3-15 человек в разное время) для зарубежного заказчика, и хочу поделиться с хабрадевелоперами опытом такой работы :-)
Здесь и далее имеется ввиду следующая организация труда:
Здесь и далее имеется ввиду следующая организация труда:
- Заказчик (+on-site команда опционально) в офисе где-нибуть в Европе/США.
- Тим лид распределенной команды — где-то на бескрайних просторах exUSSR.
- Члены распределенной команды — также где-то на бескрайних просторах exUSSR.
+68
континуации и stateful веб-программирование (Updated!)
5 min
2.7KИдея совсем не нова. Идея древна.
Однако большинство наблюдаемых вокруг веб-фреймворков упорно игнорируют эту идею.
Она заключается в том, чтобы использовать континуации (continuations) для магического превращения RESTful (stateless) веб-приложений в более удобный и привычный stateful формат.
Однако большинство наблюдаемых вокруг веб-фреймворков упорно игнорируют эту идею.
Она заключается в том, чтобы использовать континуации (continuations) для магического превращения RESTful (stateless) веб-приложений в более удобный и привычный stateful формат.
+30
Домашний файлообменник на базе Sinatra и DataMapper. Часть 3 — Very Advanced features
10 min
4.1KПредыдущие две статьи (раз и два) оказались гораздо популярнее, чем я мог ожидать. А теперь пришла пора третьей, завершающей статьи о файлообменнике на базе Sinatra и DataMapper.
В этот раз мы рассмотрим:
В этот раз мы рассмотрим:
- Проблему с одинаковыми именами файлов
- Страницу ожидания перед загрузкой
- Создание CSS с помощью SASS
- Аутентификацию
- Запуск из под thin
- Тестирование с помощью RSpec
- Бенчмарки
+24
Личные финансы он-лайн
3 min
1.4KПредлагаю на суд хабрасообщества проект вКошельке.ру — он-лайн систему управления личными финансами. Изначально сервис планировался как личный финансовый консультант — простая в использовании, но вместе с тем мощная экспертная система для учета, контроля и управления личными финансами он-лайн.
+56
Атаки на беспроводные сети. Часть 2
3 min
21KЭто продолжение предыдущей статьи, об атаках на беспроводные точки доступа с WEP-защитой.
Во второй части цикла статей о безопасности беспроводных сетей мы рассмотрим некоторые нетрадиционные атаки на WEP.
Во второй части цикла статей о безопасности беспроводных сетей мы рассмотрим некоторые нетрадиционные атаки на WEP.
+48
Типы HTTP-запросов и философия REST
4 min
1MЭтот пост — ответ на вопрос, заданный в комментарии к одной из моих статей.
В статье я хочу рассказать, что же из себя представляют HTTP-методы GET/POST/PUT/DELETE и другие, для чего они были придуманы и как их использовать в соответствии с REST.
В статье я хочу рассказать, что же из себя представляют HTTP-методы GET/POST/PUT/DELETE и другие, для чего они были придуманы и как их использовать в соответствии с REST.
+72
Атаки на беспроводные сети. Часть 1
5 min
71KВ прошлой статье о беспроводных сетях мы рассмотрели первый этап — сбор информации, или wardriving. Сейчас же, продемонстрируем несколько способов получения несанкционированного доступа к беспроводным сетям, а также рекомендации по защите от них.
+113
Инструкция по воплощению
6 min
890Полезная статья в журнале «Деньги» о том, «можно ли создать универсальный рецепт извлечения денег из идей?». Особенна полезна, как информация к размышлению тем, кто, как говорится, берется за дело, чтобы понять сколько и на каких усливиях можно за него получить.
Полная версия доступна здесь.
Полная версия доступна здесь.
+14
Функциональное программирование для землян — функции
5 min
9.2K
В статье про Python пользователь Xronos попросил рассказать о функциональном программировании (ФП). Поскольку я одно время довольно плотно занимался с Lisp, я хотел бы немножко рассказать об этом. Сразу хочу сказать, что о чистом ФП речь не идет. Я расскажу о более простых и более применимых приемах на примере языка Python.
+67
Самый простой способ научиться печатать вслепую
2 min
111KПеренесено из персонального блога
Бесплатный совет:
Если вы до сих пор не умеете печатать вслепую обязательно научитесь.
Потратьте пару дней своего драгоценного времени. Это еще более выгодное вложение чем покупка акций Гугла в 2004 году. Экономить время будете всю жизнь, причем много, честно.

Как научиться печатать вслепую
Курсы стенографисток и клавиатурные тренажеры ни к чему. На Шахиджаняна тоже не ведитесь, психотерапия для неуверенных в себе неудачников. Есть способ гораздо более простой и быстрый: смело выбрасывайте свою клавиатуру на помойку, идите в магазин и купите там новую, такую же, только без русских букв. Ломка продлится один день, обучение займет еще день. Через неделю вы будете смотреться за клавиатурой как Рихтер за роялем.
Я купил себе пару лет назад ноутбук без русской клавиатуры. Все эти два года (минус неделя на обучение) я печатаю примерно с той же скоростью, с которой разговариваю. Чего и вам желаю.
P. S. Как экономите время вы? Поделитесь рецептами.
См. так же обсуждение в ЖЖ
Добавка: а вот и подоспевшие мнения уважаемых комментаторов:
SteelappleНаучился печатать вслепую очень легко — купил в Малайзии ноутбук без русских букв на клавиатуре. Наклеить русские буквы было невозможно, т.к. клавиши были меньше стандартных, а вырезать наклейки мне не хотелось. За неделю выучил наизусть раскладку и больше не задумываюсь о том, есть русские буквы или нет на клавиатуре.
В знание русской раскладки есть очень большой плюс. Представьте ситуацию: вы приезжаете заграницу, садитесь за чужой компьютер и… пишите транслитом. Я же добавляю русский язык в настройках и свободно пишу по-русски без всяких сложностей.
Ag47Как-то попробовал не смотреть на клаву, оказалось, что практически всё помню, поэтому заклеил все клавиши бумажками, чтобы не было соблазна на неё смотреть.
В общем, я думаю каждый кто не первый год печатает может печать в слепую, главное себя пересилить и на клаву не смотреть.
clopsВсё было очень просто — я купил себе Mac (давно, тогда он ещё назывался PowerBook G3) и не посмел портить идеальный комп русскими буквами. через пару дней уже совершенно без каких-либо проблем печатал слепо по-русски!
Есть и противоположные мнения, вообще, дискуссия получается интересная.
Бесплатный совет:
Если вы до сих пор не умеете печатать вслепую обязательно научитесь.
Потратьте пару дней своего драгоценного времени. Это еще более выгодное вложение чем покупка акций Гугла в 2004 году. Экономить время будете всю жизнь, причем много, честно.

Как научиться печатать вслепую
Курсы стенографисток и клавиатурные тренажеры ни к чему. На Шахиджаняна тоже не ведитесь, психотерапия для неуверенных в себе неудачников. Есть способ гораздо более простой и быстрый: смело выбрасывайте свою клавиатуру на помойку, идите в магазин и купите там новую, такую же, только без русских букв. Ломка продлится один день, обучение займет еще день. Через неделю вы будете смотреться за клавиатурой как Рихтер за роялем.
Я купил себе пару лет назад ноутбук без русской клавиатуры. Все эти два года (минус неделя на обучение) я печатаю примерно с той же скоростью, с которой разговариваю. Чего и вам желаю.
P. S. Как экономите время вы? Поделитесь рецептами.
См. так же обсуждение в ЖЖ
Добавка: а вот и подоспевшие мнения уважаемых комментаторов:
SteelappleНаучился печатать вслепую очень легко — купил в Малайзии ноутбук без русских букв на клавиатуре. Наклеить русские буквы было невозможно, т.к. клавиши были меньше стандартных, а вырезать наклейки мне не хотелось. За неделю выучил наизусть раскладку и больше не задумываюсь о том, есть русские буквы или нет на клавиатуре.
В знание русской раскладки есть очень большой плюс. Представьте ситуацию: вы приезжаете заграницу, садитесь за чужой компьютер и… пишите транслитом. Я же добавляю русский язык в настройках и свободно пишу по-русски без всяких сложностей.
Ag47Как-то попробовал не смотреть на клаву, оказалось, что практически всё помню, поэтому заклеил все клавиши бумажками, чтобы не было соблазна на неё смотреть.
В общем, я думаю каждый кто не первый год печатает может печать в слепую, главное себя пересилить и на клаву не смотреть.
clopsВсё было очень просто — я купил себе Mac (давно, тогда он ещё назывался PowerBook G3) и не посмел портить идеальный комп русскими буквами. через пару дней уже совершенно без каких-либо проблем печатал слепо по-русски!
Есть и противоположные мнения, вообще, дискуссия получается интересная.
+101
Осваиваем Python. Унция 1. Типы данных.
6 min
82K
Продолжаю своё начинание. Данная статья является логическим продолжением первой. Было приятно читать ваши комментарии. Я надеялся, что данный цикл статей окажется для кого-то полезным, но совершенно не предполагал, что заинтересовавшихся будет довольно большое количество. Это заставляет относится к делу серьёзнее и ответственнее.
Без лишних слов, сразу к делу.
+36
Ruby on Rails шаг за шагом. #1 Теория
5 min
55KНенадолго отставив серию статей о ЯП Ruby в сторону (1, 2, 3, 4, 5, 6, 7, 8, 9, 10), решил презентовать вам новый цикл о фрэймворке Rails. Набравшись некоторого опыта в «обучении» попробую вывести эту серию на уровень качества и продуманности несколько выше, чем прежде.
Целью первой части уроков по Ruby on Rails будет создание некоторого многопользовательского блога (аля Хабр). Также хочется отметить, что для этой первой части желательно иметь познание о Руби хотя бы на уровне трех-четырех капель. Хочется поскорей приступить к кодингу, но начинать все равно придется с теории.
Что такое Ruby on Rails (далее RoR)? Самый распространненый ответ – это базирующийся на ЯП Ruby (далее Руби) фрэймворк, который реализует шаблон (далее паттерн) MVC. Выделим два главных пункта из ответа:
Целью первой части уроков по Ruby on Rails будет создание некоторого многопользовательского блога (аля Хабр). Также хочется отметить, что для этой первой части желательно иметь познание о Руби хотя бы на уровне трех-четырех капель. Хочется поскорей приступить к кодингу, но начинать все равно придется с теории.
Что такое Ruby on Rails (далее RoR)? Самый распространненый ответ – это базирующийся на ЯП Ruby (далее Руби) фрэймворк, который реализует шаблон (далее паттерн) MVC. Выделим два главных пункта из ответа:
- Это фрэймворк на базе Ruby
- Он реализует паттерн MVC
+46
Познаём Java. Третья чашка: примитивные типы, и объекты. Базовые конструкции
7 min
236KТипа реальные типы
Думаю, после краткого экскурса в возможности Java и прочитывания пары десятков строк кода примеров, вам захотелось узнать, чем должен уметь оперировать каждый Java-программист. Что ж, давайте поговорим о примитивных типах, классах (в том числе нескольких основных), сравнении, передаче параметров и простых структурах в Java.
+24
JavaFX — «пластилиновая ворона»
2 min
3.4KКак уже известно Java программистам (и не только) на днях состоялся официальный релиз JavaFX. Я периодически проявлял интерес к данному направлению. Пришло время конкретно пощупать что ж это за «зверь» такой с модными буквами FX. Программировать что попало (т.е. тренироваться на кошках) конечно не интересно. Соответственно с пользой для дела написал компонент для веб сервиса загрузки файлов
+35
Prolog, введение
13 min
103KДовольно оживленное обсуждение предыдущей стати (http://habrahabr.ru/blogs/programming/47416/) показало, что тема пролога оказалась интересна сообществу.
Чтобы заинтересовать еще более читателя и вместе с тем облегчить ему начало работы с этим языком, я решил написать немного начальных данных о прологе.
Кратко основные особенности.
Чтобы заинтересовать еще более читателя и вместе с тем облегчить ему начало работы с этим языком, я решил написать немного начальных данных о прологе.
Кратко основные особенности.
+50
Кузявые ли бутявки, т.е. пишем морфологический анализатор на Python
8 min
54KМорфологический анализатор для русского языка — это что-то заумное? Программа, которая приводит слово к начальной форме, определяет падеж, находит словоформы — непонятно, как и подступиться? А на самом деле все не так и сложно. В статье — как я писал аналог mystem, lemmatizer и phpmorphy на Python, и что из этого получилось.
+103
Покорим Ruby вместе! Капля пятая
4 min
35KПродолжаем (1, 2, 3, 4) штудировать Руби. На этот раз дело коснётся массивов. Но начнем с диапазонов.
Иногда полезно иметь возможность сохранить «концепт» простого списка, причём хочется, чтобы объявить его мы могли бы максимально просто, например: список из букв от A до Z, или числа от 1 до 25. С помощью диапазонов это возможно, они в Руби максимально интуитивно понятны. Вот простые числовые диапазоны:
Диапазоны значений
Иногда полезно иметь возможность сохранить «концепт» простого списка, причём хочется, чтобы объявить его мы могли бы максимально просто, например: список из букв от A до Z, или числа от 1 до 25. С помощью диапазонов это возможно, они в Руби максимально интуитивно понятны. Вот простые числовые диапазоны:
digits = 0..9
scale1 = 0..10
scale2 = 0...10 #digits = scale2
+42
DSL и динамические вкусности Ruby
5 min
13KВ этой статье я проиллюстрирую основные возможности Ruby для построения Domain Specific Languages(DSL). DSL, это небольшие, узкоспециализированные языки для решения конкретных задач. В отличие от языков общего назначения, таких как C++ или Java, DSL обычно очень компактны, и обладают высокой выразительностью в контексте решаемой задачи.
Различные DSL широко распространены в библиотеках и фреймворках для Ruby. Например в Rails DSL используются для создания миграций.
А теперь, давайте посмотрим какие возможности Ruby предоставляет для построения DSL
Различные DSL широко распространены в библиотеках и фреймворках для Ruby. Например в Rails DSL используются для создания миграций.
А теперь, давайте посмотрим какие возможности Ruby предоставляет для построения DSL
+40
Работа с get-запросами в JSF
4 min
3.7KКак известно JSF умеет работать только с post-запросами, однако существет метод, который позволяет разбирать и get.
+5
Information
- Rating
- Does not participate
- Location
- Герцлия, Тель-Авив, Израиль
- Registered
- Activity