Весной нам с другом захотелось чего то для души. Решили сделать какой то большой и полезный проект. Полазив по зарубежным обзорам стартапов, появилась идея написать сервис поиска работы с видео резюме.
Первоначальная идея была простая. Работодатель размещал вакансию и список вопросов к соискателю, соискатель с помощью web камеры на сайте отвечал на вакансию. Работодатель в удобное время просматривал видео ответы и связывался с понравившимся кандидатом.
Под катом — что вышло из простой идеи
Читать полностью »
Рубрика «ненормальное программирование» - 112
Тернистый путь стартапера
2012-11-07 в 21:56, admin, рубрики: ненормальное программирование, стартап, хождение по мукам, метки: стартап, хождение по мукамПрограммирование и марихуанна…
2012-10-31 в 17:48, admin, рубрики: c++, javascript, джигурда, конец света, мдк, ненормальное программирование, путин, сиськи, метки: джигурда, конец света, мдк, путин, сиськиВозможно для многих из вас неизвестна данная методика, но наши западные коллеги применяют ее уже порядка 5-ти лет. Несложно догадаться, что алгоритмы продумываются программистами под действием психотропных веществ, наибольшую популярность приобрела марихуанна (как известно лсд на 2ом месте по популярности), этот метод впервые был применен неким Алексеем Елизаровым (vk.com/alex.elizarov) aka beauty_free 30 февраля 2005 года. Он же описывал воздействие Читать полностью »
papagaj — GUI обертка для shell-скриптов. Yet another another *dialog
2012-10-24 в 8:46, admin, рубрики: gnustep, GUI, iup, shell, ненормальное программирование, Оболочки, метки: gnustep, gui, iup, shell
Когда я впервые узнал об утилитах dialog, xdialog, zenity я был поражен тем, что буквально из пары строк можно было создать графический интерфейс для скрипта.
Однако, когда я пошел дальше и захотел создать что-то более сложное, чем просто окошко со списком или диалог «Да/нет» — я был слегка разочарован, т.к. не смог найти требуемого. В итоге, мое знакомство с этой областью приостановилось на несколько лет.
Недавно я вспомнил о своем желании и попытался узнать о прогрессе в этом деле. Увы, и сейчас результат оказался не таким как ожидалось — я по-прежнему ничего не находил. По этой причине я и написал программу papagaj. Она позволяет из гов… и палок из xml-файла и пары скриптов построить несложный графический интерфейс для вашего консольного приложения.
Вычисляемые поля для любого LINQ-провайдера
2012-10-22 в 20:50, admin, рубрики: .net, linq, reflection, ненормальное программирование, Программирование, метки: .net, linq, reflectionПривет!
Сегодня я хочу рассказать, о маленькой библиотеки, которую я написал недавно на коленке всего за несколько часов. Эта библиотека может декомпилировать методы в их λ-представление.
Зачем это может понадобиться — под катом. Читать полностью »
Добавляем немного виртуальности в C
2012-10-20 в 9:52, admin, рубрики: c++, interface, интерфейс, ненормальное программирование, метки: c++, interface, интерфейс
Мне тут пришлось вспомнить, как же все таки надо писать на С, хотя работаю С++ программистом. И мне так не хватало классов и методов, что я стал думать, как можно приблизить С к С++. Зачем? Просто так, мозги размять.
Основное пожелание было следующим: хочется, чтобы в С работал примерно такой код
void print_name( Iface* ptr )
{
ptr->print_name();
}
void main()
{
A a;
B b;
print_name( &a ); // выдаст "This is A object"
print_name( &b ); // выдаст "This is B object"
}
По сути, A и В наследуют один и тот же (а может и несколько) интерфейс(ов). При этом можно на этих объектах вызывать виртуальные методы, действующие в зависимости от того, какой указатель был подан.
Кому интересно, что получилось в итоге (а в каком-то виде задача была решена) и кому интересно, как примерно в С++ реализуются виртуальные методы, прошу под кат.
Читать полностью »
Итоги 21-го конкурса IOCCC
2012-10-18 в 21:30, admin, рубрики: Brainfuck, IOCCC, ненормальное программирование, непонятный код, обфускация, метки: IOCCC, непонятный код, обфускацияОбъявлены победители 21-го международного конкурса обфусцированного кода на C. Как обычно, участники удивили способностью втиснуть совершенно невероятные вещи в программы до 4096 байт. Чтобы получить максимальное удовольствие, организаторы конкурса рекомендуют смотреть версию без спойлеров и пытаться понять по коду программы, что она делает.
Например, что делает такая программа?
main(l
,a,n,d)char**a;{
for(d=atoi(a[1])/10*80-
atoi(a[2])/5-596;n="@NKA
CLCCGZAAQBEAADAFaISADJABBA^
SNLGAQABDAXIMBAACTBATAHDBAN
ZcEMMCCCCAAhEIJFAEAAABAfHJE
TBdFLDAANEfDNBPHdBcBBBEA_AL
H E L L O, W O R L D! "
[l++-3];)for(;n-->64;)
putchar(!d+++33^
l&1);}
И не просто печатает, но ещё показывает на карте точку с заданными координатами, которые можно указать при запуске (символ "
или #).
Кстати, это «лучшая маленькая программа» на IOCCC 1992 года.
ELF — приложение на телефоне LG?
2012-10-18 в 17:39, admin, рубрики: elf, ненормальное программирование, Смартфоны и коммуникаторы, метки: elf, АРМПервоначальное мнение
Я всегда думал, что телефоны от компании LG для «домохозяек». И когда мне попал в руки аппарат LG KP500 я своё мнение особо не изменил, хотя в нём было много чего весьма интересного. Я имею ввиду это диспетчер задач (даже есть специальная кнопка), который может вызывать и закрывать другие свёрнутые родные и Java — приложения, в Java доступна работа с файловой системой (JSR — 75), хоть и не полностью, на этом функционал Java машины заканчивается. В этом телефоне (это я подчёркиваю, он позиционируется как «звонилка») даже есть свой формат исполнительных файлов — PXE (*.pxo), но правда он скрыт для пользователя и запускается из конкретной папки диска, имеющий атрибут только чтение. Данный аппарат имеет неплохое «железо». Это Nand Flash 256 Мб / SDRAM 128 Мб, TFT сенсорный резистивный дисплей c разрешением 400x240 и 262 тысяч цветов, 3-х осевой акселерометр и бейзбенд-процессор Infineon SGold-3 (PMB8878), ну и стандартный набор: камера, BlueTooth, радио и т.д. Операционной системы такой как Android, Windows, iOS — там нет, зато есть свой закрытый «велосипед» на ядре Nucleus RTOS древней версии. Такое железо, на мой взгляд, к подпольным «эльфописателям» не попадалось, что даёт определённый стимул.
Однажды на лекции друг рассказал мне, что существует язык программирования пони, (основанный на сериале, конечно). Он сказал, что видел его на reddit, но даже после продолжительного поиска я смог найти только пустой репозиторий на Google Code без деталей реализации. Я был очень этим разочарован, но только на несколько минут, пока не понял, что могу написать реализацию этого языка сам. Возможно, она не будет хороша или вообще используема в том смысле, что не каждый сможет написать к ней интерпретатор, но мне хотелось проверить свои умения. А ещё мне нравятся затянувшиеся шутки.
Читать полностью »
Шаблоны на C. Да! На чистом С. Не С++
2012-10-15 в 17:08, admin, рубрики: generic, template, ненормальное программирование, переводы, метки: c++, generic, templateЗачем?
Давайте представим себе, что нам нужно написать набор функций, которые отличаются друг от друга лишь парой ключевых слов (и, как правило, одно из них — название типа). Ну, вот, например, взгляните на функции, рассчитывающие суммы элементов массивов для разных типов Читать полностью »
Машина Тьюринга и ассемблер
2012-10-13 в 16:16, admin, рубрики: Алгоритмы, ассемблерная вставка, генератор кода, машина Тьюринга, ненормальное программирование, метки: ассемблерная вставка, генератор кода, машина ТьюрингаЕсть такая штука — машина Тьюринга. Представляет собой простейший компьютер, однако писать под него хуже, чем на brainfuck'е. Решил я тут на днях побаловаться, но делать интерпретатор — не спортивно, да интерпретаторов этих — вагон. Потом меня посетила еще более странная идея — а чего бы не сделать это на Асме? (я его знаю паршиво, как раз решил потренироваться, так что сильно не пинайтесь).