Давно еще, пока я учился в школе, меня постоянно мучили мысли о том, что я хоть и высыпаюсь, но встаю мучительно и ничего с утра не хочу. Глубоко в душе я знал, что можно иначе, но как сделать так, чтобы ты с утра буквально вскакивал с кровати и шел воротить горы? Начал во всем разбираться, и вот, что из этого вышло.
VEnis @VEnis
User
RFID от Tikitag — непаханное поле для самоделкиных
2 min
6.4KИнтересная новость обнаружилась на Engadget:
Компания Tikitag (подразделение Alcatel-Lucent) привлекла к себе внимание на конференции DemoFall, показав RFID-набор (ридер и RFID-метки), которые, как заявлено, должны будут появиться в продаже в течение месяца по весьма демократичной цене.

Компания Tikitag (подразделение Alcatel-Lucent) привлекла к себе внимание на конференции DemoFall, показав RFID-набор (ридер и RFID-метки), которые, как заявлено, должны будут появиться в продаже в течение месяца по весьма демократичной цене.

+65
16 очень дорогих гаджетов, подходящих роскошному образу жизни
9 min
14K1. Triton 1000 — люксовый батискаф, $1 690 000.

Triton 1000 — последнее творение компании U.S. Submarines. Это легкий, двухместный, практически минимально доступного водоизмещения батискаф, предназначенный специально для погружения с роскошных яхт. Высотой в 1.8 метра, длиной всего 3 метра и весом в 3.3 тонны, Triton 1000 может эксплуатироваться на практически любой лодке среднего класса.
Но кроме возможности возить батискаф с собой на личном кораблике, Triton предоставляет пасажирам практически небывалый комфорт для подобного устройства: кожаные сиденья с массажем не позволят отсидеть задницу (или что там у богатых), огромный «пузырь» стекла не препятствует обзору подводного мира. В этой мини-подлодке даже есть кондиционер.
Несмотря на то, что Triton 1000 задумывался, как очень легкий в управлении батискаф, где все контролируется джойстиками и компьютером, компания-производитель предоставляет курсы погружения и управления совершенно бесплатно, что делает покупку за чуть больше, чем полтора миллиона долларов, по-настоящему выгодной!

Triton 1000 — последнее творение компании U.S. Submarines. Это легкий, двухместный, практически минимально доступного водоизмещения батискаф, предназначенный специально для погружения с роскошных яхт. Высотой в 1.8 метра, длиной всего 3 метра и весом в 3.3 тонны, Triton 1000 может эксплуатироваться на практически любой лодке среднего класса.
Но кроме возможности возить батискаф с собой на личном кораблике, Triton предоставляет пасажирам практически небывалый комфорт для подобного устройства: кожаные сиденья с массажем не позволят отсидеть задницу (или что там у богатых), огромный «пузырь» стекла не препятствует обзору подводного мира. В этой мини-подлодке даже есть кондиционер.
Несмотря на то, что Triton 1000 задумывался, как очень легкий в управлении батискаф, где все контролируется джойстиками и компьютером, компания-производитель предоставляет курсы погружения и управления совершенно бесплатно, что делает покупку за чуть больше, чем полтора миллиона долларов, по-настоящему выгодной!
+71
Пишем расширения для PHP на C (Си)
7 min
3.7K Современному PHP разработчику это знание может понадобиться скорее для расширения сознания, чем непосредственное руководство к действию, но несмотря на то, что в PHP уже встроено практически все необходимое, а в разнообразных PEAR и PECL репозитариях можно найти пакет дополнений на любой вкус, многим думаю будет интересно, а некоторым и полезно узнать как и что работает внутри PHP.
И раз уж Zend предоставил нам такие удобные инструменты, почему бы ими не воспользоваться? Например для оптимизации каких-то процессов, сокрытия своего когда в коммерческих приложениях и встраивания механизма лицензий, реализации многопоточности или для чего-то еще…
И раз уж Zend предоставил нам такие удобные инструменты, почему бы ими не воспользоваться? Например для оптимизации каких-то процессов, сокрытия своего когда в коммерческих приложениях и встраивания механизма лицензий, реализации многопоточности или для чего-то еще…
+27
Augmented reality у вас дома
1 min
1.4KДля тех, кого поразил этот топик про виртуальную реальность, привязанную к объектам реального мира и называемую Augmented reality сейчас напишу, как это получить у вас дома за 5 минут.
+18
ТОП 10 самых раздражающих факторов для программиста
5 min
16KTranslation
Совсем недавно наткнулся в интернете на забавный "хит-парад" наиболее раздражающих вещей для программиста. Поскольку он был на английском — решил перевести текст и несколько адаптировать к нашим реалиям…
ТОП 10 самых раздражающих факторов для программиста
+275
Делаем сами простые часы за выходные
7 min
61KСтатья о том, как за выходные с нуля сделать простые электронные часы с использованием микроконтроллера. Показана только основа часов, количество программных и аппаратных фич ограничивается только вашей фантазией).


+135
Логика мышления. Часть 1. Нейрон
10 min
320K
Года полтора назад я выкладывал на Хабр цикл видеолекций с моим видением того как работает мозг и каковы возможные пути создания искусственного интеллекта. За прошедшее с тех пор время удалось существенно продвинуться вперед. Что-то получилось глубже понять, что-то удалось смоделировать на компьютере. Что приятно, появились единомышленники, активно участвующие в работе над проектом.
В настоящем цикле статей планируется рассказать о той концепции интеллекта над которой мы сейчас работаем и продемонстрировать некоторые решения, являющиеся принципиально новыми в сфере моделирования работы мозга. Но чтобы повествование было понятным и последовательным оно будет содержать не только описание новых идей, но и рассказ о работе мозга вообще. Какие-то вещи, особенно в начале, возможно покажутся простыми и общеизвестными, но я бы советовал не пропускать их, так как они во многом определяют общую доказательность повествования.
+44
Самодельная внешняя антенна для стандарта CDMA2000/EVDO (операторы Intertelecom, PeopleNet)
5 min
158KВступление и теория под катом. Внимательно прочитайте прежде, чем задавать вопросы и/или обвинять меня в некомпетентности.
+17
Качественный gps мониторинг за 150 долл
3 min
34K
В 2010 году в разделе «Я пиарюсь» мы рассказывали о нашем (на тот момент) флагмане – gps трекере «M2M-UA GPS». Примечательным было то, что модель имела встроенный интерпретатор языка Питон и позволяла конечному пользователю создавать свои собственные версии прошивок. В конце декабря 2011 года мы выпустили новую модель нашего устройства, уменьшив размер, оставив Питон, и разделив цену на 2. Кому интересно – под кат.
+34
Преподавательская практика
5 min
6.6KТак сложилось, что я на волонтерских началах захотел преподавать информатику в техническом лицее недалеко от своей работы.
Директриса долго отпинывалась, да и я со своим характером не сахар. Но тем не менее в сентябре мне вручили журнал 7а класса по предмету «Вводный курс информатики и программирования».
Ребята очень активные и веселые. Класс дружный, но при этом абсолютно отсутствует стадный инстинкт и иерархия как таковая.
Практически сразу я понял, что стандартный подход лекция-контрольная не будет здесь работать — это примут 2-3 человека, а остальные просто забьют на уроки. Пятерки для них не важны, а меня все равно заставят поставить нужные для медалей оценки, окончательно подкосив авторитет как учителя.
Как понимаете, мотивировать такой коллектив очень сложно, и я решил что нужно их заинтересовать.
Директриса долго отпинывалась, да и я со своим характером не сахар. Но тем не менее в сентябре мне вручили журнал 7а класса по предмету «Вводный курс информатики и программирования».
Ребята очень активные и веселые. Класс дружный, но при этом абсолютно отсутствует стадный инстинкт и иерархия как таковая.
Практически сразу я понял, что стандартный подход лекция-контрольная не будет здесь работать — это примут 2-3 человека, а остальные просто забьют на уроки. Пятерки для них не важны, а меня все равно заставят поставить нужные для медалей оценки, окончательно подкосив авторитет как учителя.
Как понимаете, мотивировать такой коллектив очень сложно, и я решил что нужно их заинтересовать.
+186
Знакомство с мнемоникой
6 min
99KВведение
Доброго времени суток! Сразу оговорюсь, что цель этой статьи — познакомить и, возможно, заинтересовать вас такой штукой, как мнемоника. Мнемоника — наука о запоминании. То бишь совокупность способов и уловок, которые помогут вам запомнить большие объёмы информации в правильной последовательности (Например, 100 случайных слов (чисел) можно запомнить последовательно с интервалом в среднем в 6 секунд). Некоторые умудряются запомнить несколько тысяч цифр после числа Пи. Так же мнемотехника помогает в освоении иностранного языка ). Но нам пока рано об этом думать. Вы спросите:«Зачем мне ета ваша мнемоника?». Я отвечу: вы можете использовать её не только как хобби (от простого облегчения жизни, до того, что можете удивлять друзей, предложив с ними поочерёдно запомнить N информации поочерёдно), но и участвовать в соревнованиях (да-да, есть соревнования по запоминанию, где участвуют не прирождённые гении, а люди, натренировавшие себе память).
+172
Functional thinking: Thinking functionally, Part 3
8 min
5.4KTranslation
В первой и второй частях “Функционального мышления” я рассмотрел некоторые вопросы функционального программирования а также то, как они относятся к Java и связанным с ней языкам. Эта часть продолжит мой обзор, в ней я покажу версию классификатора чисел из предыдущих частей на языке Scala и обсужу некоторые теоретические вопросы, такие как карринг, частичное применение и рекурсия.
+19
Functional thinking: Thinking functionally, Часть 2
9 min
5.7KTranslation

В первой части серии я начал обсуждение некоторых особенностей функционального программирования, показывая проявления этих идей в Java и других, более функциональных языках. В этой статье я продолжу свой обзор, обращая внимание на функции — объекты первого класса, оптимизации и замыкания. Но основная тема этой статьи — контроль: когда вы его хотите, когда он вам необходим и когда надо просто забить.
+36
Functional thinking: Thinking functionally, Часть 1
12 min
15KTranslation
Давайте на мгновение представим, что Вы — дровосек. И благодаря своему лучшему топору в округе, вы являетесь самым продуктивным дровосеком в лагере. Но однажды появляется некто, начинающий расхваливать достоинства новой парадигмы в рубке леса — бензопилы. В силу убедительности продавца, Вы покупаете бензопилу, но не знаете как она работает. Прилагая неимоверные усилия, пробуете вырвать или раскачать дерево, применяя на практике свою новую парадигму. И быстренько делая вывод, что эта самая новомодная бензопила — ерунда, возвращаетесь к привычному делу — рубить лес топором. А затем кто-то приходит и показывает как заводить бензопилу.
Эта история может показаться Вам знакомой, поставив функциональное программирование на место бензопилы. Проблема в совершенно новой парадигме программирования — не изучение нового языка. Более того, синтакс языка — это всего лишь детали. Вся тонкость же — научиться мыслить иначе. Это то, почему я оказался тут — заводящий бензопилы и “функциональный” программист.
Итак, добро пожаловать в Functional thinking. Эта серия исследует предмет функционального программирования, но не несет исключительной направленности описать функциональные языки. Как я покажу дальше, написание кода в функциональном стиле касается дизайна, компромиссов, разных повторно используемых кусков кода и служит основой для иных догадок. Насколько это окажется возможным, я попытаюсь показать концепции функционального программирования в Java (или близких к Java языках) и перейду к другим языкам, чтобы осветить возможности, отсутствующие на данный момент в Java. Я не полезу сразу в дебри, рассказывая о довольно необычных вещах, таких как монады (monads). Напротив, я постепенно проведу Вас через новый путь мышления.
Эта и пара следующих частей выступят в роли быстрой экскурсии по предметам, связанным с функциональным программированием, включая базовые концепции. Некоторые из этих концепций в дальнейшем будут рассмотрены более детально в то время, как я буду постепенно расширять контекст применения на протяжении всей серии. В качестве отправной точки нашей экскурсии я покажу Вам две разные реализации решения задачи. Одна написана в императивном стиле и другая — с некоторыми функциональными особенностями.
Эта история может показаться Вам знакомой, поставив функциональное программирование на место бензопилы. Проблема в совершенно новой парадигме программирования — не изучение нового языка. Более того, синтакс языка — это всего лишь детали. Вся тонкость же — научиться мыслить иначе. Это то, почему я оказался тут — заводящий бензопилы и “функциональный” программист.
Итак, добро пожаловать в Functional thinking. Эта серия исследует предмет функционального программирования, но не несет исключительной направленности описать функциональные языки. Как я покажу дальше, написание кода в функциональном стиле касается дизайна, компромиссов, разных повторно используемых кусков кода и служит основой для иных догадок. Насколько это окажется возможным, я попытаюсь показать концепции функционального программирования в Java (или близких к Java языках) и перейду к другим языкам, чтобы осветить возможности, отсутствующие на данный момент в Java. Я не полезу сразу в дебри, рассказывая о довольно необычных вещах, таких как монады (monads). Напротив, я постепенно проведу Вас через новый путь мышления.
Эта и пара следующих частей выступят в роли быстрой экскурсии по предметам, связанным с функциональным программированием, включая базовые концепции. Некоторые из этих концепций в дальнейшем будут рассмотрены более детально в то время, как я буду постепенно расширять контекст применения на протяжении всей серии. В качестве отправной точки нашей экскурсии я покажу Вам две разные реализации решения задачи. Одна написана в императивном стиле и другая — с некоторыми функциональными особенностями.
+58
Идеальный корпоративный почтовый клиент
26 min
179K
Хорошо, но что же использовать вместо них, ведь хочется такой же красивой и прозрачной для пользователя работы с почтой, которую обеспечивает протокол MAPI? Небольшая перетасовычка и на свет появляется вполне очевидное и на самом деле безальтернативное решение — IMAP. IMAP, слава Богу, в современном мире в той или иной степени поддерживают чуть ли не все почтовые клиенты, так что выбор у нас огромен. Но если присмотреться внимательней, то он сужается до весьма скромного множества из одного-двух наименований.
Итак, нам бы хотелось:
- Для начала — кросплатформенность. Глупо использовать стандартизированные технологии, но привязываться изначально к одной ОС, тогда уж проще сразу купить Exchange и навсегда забыть о какой-либо гибкости разворачиваемой инфраструктуры.
- Полная поддержка IMAP и IMAP ACL. Второй пункт важен, т.к. без него нельзя будет организовать ни общих папок, ни передачу прав на различные операции с ящиком другим пользователям, а без этого в корпоративной почтовой системе никак.
- Возможность централизованной настройки клиента через сервер.
- Гибкость настроек клиента и удобство в использовании.

+159
Разработка настольной игры на примере Starcraft
6 min
58KСамая знаковая в IT-среде настольная игра — это, скорее всего, Старкрафт.
Когда компьютерная версия набрала достаточную популярность, ребята из Близзарда поделились правами на марку с известным американским издателем Fantasy Flight Games. В топике — обзор факторов, которые привели к успеху настольной версии.

Кроме всего прочего, информация будет полезна разработчикам игр, которым интересен простой и достаточно красивый дополнительный путь монетизации через «портирование» своей игры в физическую форму.
Когда компьютерная версия набрала достаточную популярность, ребята из Близзарда поделились правами на марку с известным американским издателем Fantasy Flight Games. В топике — обзор факторов, которые привели к успеху настольной версии.

Кроме всего прочего, информация будет полезна разработчикам игр, которым интересен простой и достаточно красивый дополнительный путь монетизации через «портирование» своей игры в физическую форму.
+70
Selenium: ожидание завершения всех AJAX-запросов
5 min
37KВ последнее время развелось очень много различных AJAX-приложений. По сути автоматизация тестирования такого приложения не отличается от автоматизации тестирования обычного WEB-приложения, но есть несколько тонкостей. Одна из тонкостей — это как раз ожидание завершения всех AJAX-запросов. Например, если отметка некого checkbox'а на странице вызывает обновление какого-нибудь select'a по AJAX-запросу, то тест, который сразу после отметки выбирает конкретный option, свалится, т.к. этого option'a там не будет. А всё потому, что сам тест выполняется намного быстрее чем AJAX-запрос на обновление списка.
В данном случае у автоматизатора есть несколько выходов.
В данном случае у автоматизатора есть несколько выходов.
+40
Как проектировать программы и их интерфейсы под пользователя, или теория DISC для «нечайников»
6 min
8.5KКак часто программист сталкивается с вопросом выбора целевой аудитории? Я, если честно, не могу особенно назвать себя программистом, но с этим связан очень тесно. Я заказчик, и по сути менеджер проектов. Как правило, этот вопрос возникает в момент, когда проектируешь новое приложение. Будь это модуль для 1С, веб сайт или приложение для iPhone – задача очевидна. Необходимо чтобы пользователю было удобно.
Как правило мы примеряем всё под себя – если мне понятно, мне удобно, значит и пользователю будет удобно. И на практике сталкиваемся с «нормальной» ситуацией, когда пользователь не может найти кнопку или функцию, которая для Вас, находится в очевидном месте. Итак давайте разберемся, откуда возникают такие недоразумения?
Как правило мы примеряем всё под себя – если мне понятно, мне удобно, значит и пользователю будет удобно. И на практике сталкиваемся с «нормальной» ситуацией, когда пользователь не может найти кнопку или функцию, которая для Вас, находится в очевидном месте. Итак давайте разберемся, откуда возникают такие недоразумения?
+42
Знаешь ли ты JAVA, %username%?
11 min
150K
Итак, ниже представлен десяток наиболее, на мой взгляд, интересных задач по Java SE из более чем 1000, проработанных мной. Сложность варьируется от средней до ооооооочень сложной. Решение большинства задач практически не требует знания API, достаточно логики и фундаментальных основ Java.
К слову, сложность экзамена Oracle Certified Professional Java Programmer гораздо ниже чем сложность данного теста, поэтому все, кто правильно ответит хотя бы на половину этих вопросов, может смело сдавать этот экзамен без всякой подготовки.
На самом деле количество очень понравившихся мне вопросов в несколько раз больше, поэтому через недельку я планирую написать продолжение данной темы. Если вопросы показались вам слишком легкими или наоборот, слишком сложными — дайте мне знать, внесем коррективы.
ВНИМАНИЕ: во второй половине статьи — ответы и подробные пояснения по соответствующим нюансам JAVA.
+112
Information
- Rating
- Does not participate
- Location
- Украина
- Registered
- Activity