Pull to refresh
78
0
Сергей Дымченко @kit

Программист

Send message

Решение задачи «AAAAAA» с Facebook Hacker Cup методом динамического программирования на B-Prolog

Reading time 4 min
Views 11K
Есть много материала по решению запутанных задачек на Прологе (например, страница Hakan Kjellerstrand о B-Prolog). Однако часто приводятся задачи, которые либо создавались для решения вручную (имеют маленькое пространство поиска), либо изначально ориентированы на решение при помощи логического программирования.

Я хочу показать мое решение на Прологе задачи AAAAAA с первого раунда Facebook Hacker Cup 2014. Задача имеет достаточно большое пространство поиска и создана с прицелом на решение опытными спортивными программистами на распространенных языках программирования.
Читать дальше →
Total votes 16: ↑15 and ↓1 +14
Comments 2

Свободная энциклопедия языков программирования Прогопедия: 3 года спустя

Reading time 2 min
Views 1.3K
Ровно три года назад я опубликовал на Хабре заметку об энциклопедии языков программирования Прогопедия.

Выглядела Прогопедия тогда примерно так. Сейчас — вот так: progopedia.ru
Проект развивается не так быстро, как хотелось бы, но прогресс налицо.

Немного подробнее о Прогопедии и изменениях за три года.
Читать дальше →
Total votes 75: ↑49 and ↓26 +23
Comments 31

"\" в конце строки в C/C++

Reading time 1 min
Views 1.1K
Покажет ли ваш редактор/IDE, что «a++;» в этом C/C++ коде — часть комментария?
int a=1;
//some comment \
a++;
printf("%d\n",a);


А такой вариант?
int a=1;
//some comment ??/
a++;
printf("%d\n",a);
Total votes 27: ↑13 and ↓14 -1
Comments 17

Учет затраченного времени с Emacs и org-mode

Reading time 3 min
Views 15K
Если вам, как и мне, платят почасово, то наверняка заказчик захочет знать, на что именно ушло время и сколько.
Да и в любом случае, полезно знать это, даже если только для себя.

В этой статье я расскажу об одном из способов учета затраченного времени — org-mode в Emacs.
Этот способ хорош тем, что он очень гибок и при желании все настраивается под себя, работает практически на всех операционных системах и платформах, и довольно прост в использовании.

image
Читать дальше →
Total votes 25: ↑24 and ↓1 +23
Comments 17

Почему фриланс является чертовски трудным занятием

Reading time 4 min
Views 2.9K
Несмотря на то, какой замечательно может быть работа на себя, есть во фрилансе и просто отстойные моменты. И не важно, какова ваша специализация — эти недостатки фриланса найдут, как проявить себя.
О каких недостатках я говорю?
Читать дальше →
Total votes 77: ↑59 and ↓18 +41
Comments 61

Рекурсия в авторском праве

Reading time 1 min
Views 725
Если бы знак защиты авторского права использовался для защиты самого знака защиты авторского права:

© ©©©©©©©© 1790 U.S. Congress 1790 U.S. Congress 1790 U.S. Congress 1790 U.S. Congress 1790 U.S. Congress 1790 U.S. Congress 1790 U.S. Congress 1790 U.S. Congress
Total votes 98: ↑70 and ↓28 +42
Comments 31

Установка и настройка Django на «боевом» сервере с CentOS 5

Reading time 6 min
Views 12K
Я делаю на Django Энциклопедию языков программирования, о которой уже писал на Хабре. За время работы сайта выяснилось, что нужен свой выделенный сервер для большей производительности и стабильности. Пока что взял дешевый сервер с 1.8 ГГц процессором и 512 Мб памяти.

В этой статье я расскажу об установке и настройке на этом сервере Django с mod_python для Apache, с кэшированием memcached и lighttpd для статических файлов.
Читать дальше →
Total votes 23: ↑18 and ↓5 +13
Comments 14

30 советов, как эффективно трудиться и не сойти с ума, работая дома

Reading time 5 min
Views 16K
Тем, кому знакомы прелести работы дома (на себя, фрилансером или удаленно на ставку), также знаком соблазн поваляться на диване и затягивание сроков.

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

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

Так как же работать эффективно и в то же время не довести себя до нервного истощения? Я недавно уволился с постоянной работы и поэтому спросил совета у читателей своего блога. Они, как и всегда, откликнулись на мою просьбу, и я отобрал наиболее понравившиеся мне рекомендации, чтобы люди могли использовать их как руководство (ну, я тоже собираюсь руководствоваться этими советами).
Читать дальше →
Total votes 125: ↑123 and ↓2 +121
Comments 198

Apturl в Ubuntu: установка программ одним кликом по ссылке

Reading time 1 min
Views 12K
Представьте, что вы в очередной раз читаете обзор программ для Ubuntu. Одна из программ привлекла ваше внимание, и возникло желание установить и попробовать ее. И вместо того, чтобы открыть менеджер пакетов или терминал, вы просто кликаете на ссылку. Появляется окно с вопросом, хотите ли вы установить эту программу, а после — запрос пароля. На установку ушло меньше времени, чем вы потратили бы только на поиск программы в списке менеджера пакетов! Теперь, с Apturl, это все возможно.
Читать дальше →
Total votes 35: ↑33 and ↓2 +31
Comments 79

Вопрос классификации: диалект или новый язык?

Reading time 1 min
Views 2.2K
Есть такой вопрос, что считать отдельным языком программирования, а что — диалектом?
Можно ли по каким-то формальным критериям отличать одно от другого?

Например, Object Pascal (Delphi) вроде как диалект паскаля, но отличия от паскаля примерно как отличия C++ от C, а это отдельные языки…

Может можно провести параллели с лингвистикой, с классификацией естественных языков…

Зачем мне нужна эта классификация? Для энциклопедии.

Кто что думает по этому поводу?
Total votes 10: ↑7 and ↓3 +4
Comments 22

Музей компьютерной техники: идея-мечта

Reading time 1 min
Views 1.6K
Уже давно у меня такая задумка.
Собрать много-много всяких старых компьютерных и околокомпьютерных железяк (советских и зарубежных), починить, отмыть, собрать по ним информацию, ну и, собственно, сделать музей.
Главная фишка — все работает и с максимальным доступом для посетителей. Т.е. можно будет попрограммировать на каком-нибудь старючем Макинтоше, посчитать на советском калькуляторе или поиграть с другом на приставке Dendy :-) Книжки компьютерные старые тоже можно собрать.

Ну и можно сделать отдельный зал, в котором проводить разные мероприятия, типа чемпионата по какой-нибудь древней компьютерной игрушке или конференцию по demo, intro и т.п.

Кто что думает поэтому поводу? Реально ли, при каких вложениях? Главный вопрос в помещении, насколько я понимаю… Получится ли в итоге выйти на прибыль или хотя бы самоокупаемость? Можно ли рассчитывать на хотя бы небольшую помощь властей (музей, все-таки)?

Пока подробно план не разрабатывал и реализовывать идею пока что не собираюсь, просто потихоньку собираю компьютерное старье.
Читать дальше →
Total votes 39: ↑36 and ↓3 +33
Comments 57

Советы и подсказки по bash

Reading time 2 min
Views 35K
Для непосвященных, bash — командная оболочка по умолчанию во многих Linux-дистрибутивах, включая Fedora, Ubuntu, Redhat и др. Используя операционную систему Linux-семейства, вы, вероятно, используете и bash. По этой причине ниже я собрал несколько часто возникающих проблем с bash и простые способы их решения.

1. Потеря истории команд

Если открыть окно терминала и ввести несколько команд, а после открыть второе окно, то история команд bash во втором окне не будет содержать команд из первого. К тому же, если закрыть первый терминал, а затем второй, то история команд из первого терминала будет перезаписана вторым. Вдвойне неприятно!

Так происходит из-за того, что история команд записывается только при закрытии терминала, а не после каждой команды. Это можно исправить.
Читать дальше →
Total votes 76: ↑75 and ↓1 +74
Comments 23

5 моих самых больших ошибок во фрилансе

Reading time 3 min
Views 2.6K
Часто говорят, что мы больше учимся на ошибках, чем на удачах. Но все же лучше учиться на чужих промахах, чем на своих собственных.

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

1. Занижение цены
Большинство из нас когда-либо грешили этим, многие делают это до сих пор. Деньги – это проблемная тема для большинства людей. Несмотря на то, что теперь я могу свободнее, чем раньше, говорить о деньгах, я все равно считаю эту тему несколько неудобной. Хотя говорить об этом нелегко, это крайне важно.
У вас есть право получать справедливую плату за работу, особенно, если вы хорошо ее выполняете и имеете большой опыт. Как понять, что цена занижена? Если вы выполняете работу хорошо, и предложения заказчиков идут неиссякаемым потоком, то цены слишком низкие.
Также будьте осторожны, оценивая стоимость своей работы на почасовой основе, когда от вас этого не требуется. Если вы назначаете цену за час работы, то, выполнив работу быстрее, чем предполагалось, вы фактически сами себя накажете. Кроме того, многие работы требуют немалого опыта и специальных знаний, при том, что их выполнение занимает мало времени. Как говорил старый плотник, когда его клиент жаловался на цену за закрепление скрипучей доски в полу: вы платите 1$ за гвоздь и 999$ за то, что я знаю, куда его нужно забить.
Читать дальше →
Total votes 29: ↑21 and ↓8 +13
Comments 16

Как пережить digg-эффект с wordpress

Reading time 3 min
Views 796
Поскольку вы добрались до этой страницы, я предполагаю, что ваш сайт расположен на публичном сервере и уже стал жертвой дигг-эффекта (или вы, по крайней мере, знаете, что это такое) – и теперь вам необходимо как-то разрешить эту проблему.

Конечно, хорошо размещать свои статьи на Дигге – так ваш голос наверняка будет услышан. Все идет хорошо, пока ваша статья не попадает на главную страницу Дигга. С этого момента вы уже не можете контролировать свой сайт, не можете открыть панель управления или получить доступ к своим файлам по FTP. Огромный трафик с Дигга просто завалит сервер, на котором расположен ваш сайт.
Если администратор сервера следит за ним, не сомневайтесь, что ваш аккаунт будет заблокирован. Если же администратор невнимателен, то ваш сайт все равно не выживет – сервер не в состоянии справиться с таким трафиком. У вас нет другого выхода, кроме как беспомощно смотреть и ждать, пока трафик не уменьшится до нормального уровня.
Читать дальше →
Total votes 35: ↑30 and ↓5 +25
Comments 41

10 безусловных «Нет!» для фрилансера

Reading time 6 min
Views 2.5K
Впервые я начал заниматься фрилансом еще будучи студентом, тогда я ужасно хотел создавать веб-сайты и ответил бы «Да» на абсолютно любое предложение, независимо от уровня моих способностей и требуемого времени. Мне просто нравилось знать, что кто-то нуждается во мне для выполнения задания, которое требует опыта и определенных навыков. К сожалению, очень быстро оказалось, что я все время в работе, питаюсь полуфабрикатами и вечно не успеваю рассчитаться с университетскими долгами. Ситуация становилась еще хуже от того, что мои заказчики передавали мои контактные данные своим знакомым (например, даме, которая хотела заниматься продажей свитеров для собак он-лайн, но при этом имела для целей электронной коммерции бюджет в 100$; и это все за создание сайта, 1000 брошюр, гарантированный результат №1 в Google по запросам «собака», «свитер» и «любовь»).

В любом случае, теперь, спустя 4 года, мое мировоззрение (и мой финансовый успех) свидетельствуют в пользу более частого использования ответа «Нет». Ниже приведены десять вопросов, на которые теперь я почти всегда отвечаю «Нет»:
Читать дальше →
Total votes 94: ↑89 and ↓5 +84
Comments 162

Дневник фрилансера

Reading time 1 min
Views 1.1K
Сегодня я анонсирую небольшой эксперимент. На блоге getafreelancer-daily.ru начиная с 1 ноября 2007 года в течение месяца каждый день я буду честно, подробно, ничего не скрывая, рассказывать о своем опыте удаленной работы. Вплоть до того, сколько мне заплатили за проект, сколько времени я потратил на поиск, выдержки из переписки с заказчиком и т.д. Все предельно конкретно с цифрами и ссылками.
Читать дальше →
Total votes 60: ↑53 and ↓7 +46
Comments 67

Опыт использования PDFedit в Kubuntu

Reading time 2 min
Views 2.2K
Я сейчас где-то за орбитой Луны. Да что там Луна, тут Нептун где-то рядом.

Понимаете, я люблю читать книги. Давным-давно я понял, что PDF — это лучший цифровой эквивалент бумажной книги, и с тех пор в моей электронной библиотеке скопились десятки тысяч общедоступных изданий. Едва ли не единственное проприетарное приложение на моем компьютере — это Adobe Reader, просто потому, что это лучшая программа такого рода.
Читать дальше →
Total votes 5: ↑4 and ↓1 +3
Comments 3

Пять наиболее распространенных заблуждений в отношении Linux

Reading time 6 min
Views 14K
Пользуясь исключительно Linux на протяжении почти четырёх лет, я могу уверенно судить о том, что Linux может, а чего — не может. Ни в коем случае не претендуя на решение всех проблем, несколько самых распространённых заблуждений я все-таки постараюсь рассеять.
Читать дальше →
Total votes 76: ↑63 and ↓13 +50
Comments 481

Free Pascal 2.2.0

Reading time 1 min
Views 2.2K
На этой неделе вышла новая версия Free Pascal 2.2.0 (FPC) — open-source компилятора для языка Pascal (Object Pascal). С момента выпуска предыдущей версии прошло два года.

Среди новых возможностей, представленных в этом релизе:
* Поддержка новых архитектур: PowerPC/64 и ARM
* Новые платформы: Windows x64, Windows CE, Mac OS X/Intel, Game Boy Advance, и Game Boy DS
* Компоновщик: быстрый внутренний компоновщик для Windows-платформ
* Отладка: поддержка Dwarf
* Язык: поддержка делегирования интерфейсов
* Инфраструктура: улучшена поддержка variant, поддержка нескольких файлов ресурсов, улучшенная поддержка баз данных

Есть подробный список изменений в Free Pascal 2.2.0 на русском языке.

Скачать Free Pascal 2.2.0 можно с официального сайта сайта www.freepascal.org.
Total votes 13: ↑8 and ↓5 +3
Comments 9
1

Information

Rating
Does not participate
Location
Bellevue, Washington, США
Date of birth
Registered
Activity