Как стать автором
Обновить
8
0
Александр @askeet

Пользователь

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

Отправляем SMS из .Net приложения на C#

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

Все что нам понадобится для отправки SMS это 3G USB модем, SIM карта, Visual Studio и немного времени. Моей целью не является описать все возможные настройки COM порта или формата PDU. Я хотел бы предоставить вам готовое решение, которое можно использовать в качестве сниппета в своих проектах.
В качестве примера рассмотрим 2 консольных приложения. Почему консольных? Да потому, что в них нет ничего лишнего и проще разобрать код. Почему два? Потому, что есть два распространенных варианта отправки сообщений. Самый простой вариант – это отправка сообщений в текстовом режиме. Минусом этого варианта является то, что он не поддерживает отправку кириллицы. Плюсом то, что возможна отправка 160-ти символов. Второй вариант, более сложный, позволяет отправлять текст длиной до 70-ти символов в формате Unicode.
Читать дальше →
Всего голосов 24: ↑20 и ↓4+16
Комментарии22

Google Chrome Extensions: быстрый переводчик своими руками

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

Недавно заметил, что пусть мой английский не так уж и плох, я всё равно довольно часто отвлекаюсь на перевод отдельных незнакомых слов. И так как мне надоело каждый раз тратить на это свое время я решил написать расширение-переводчик. Можно сказать:
Но такие уже есть!
Да, есть, но, во-первых, я раньше не писал расширения для браузеров и хотел попробовать, во-вторых, создавать что-то самому всегда веселее чем пользоваться готовым. Так что кому это интересно так же как и мне — добро пожаловать под кат.
Читать дальше →
Всего голосов 26: ↑21 и ↓5+16
Комментарии24

Программирование игровых приложений на Corona SDK: часть 1

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

Важно
Этот туториал рассчитан на людей, у которых есть опыт программирования на Lua, если нет, то отправляйтесь исправлять ситуацию. Но он отлично подойдет и для тех, кто никогда не программировал на Lua.

Что такое Corona SDK?


Corona SDK — это кроссплатформенный игровой движок, использующий Lua для описания игровой логики.

Позволяет экспортировать приложения под различные платформы, в том числе и мобильные.

Возможность экспорта под такие платформы:

  • Windows
  • Mac OS
  • iPhone/iPad
  • Android
  • tvOS
Читать дальше →
Всего голосов 32: ↑27 и ↓5+22
Комментарии12

Всё, что вы знали о холестерине, оказалось неправдой

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


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

Я не виню их за критику. В большинстве своём они, подобно мне, росли в 80-х и 90-х годах, когда считалось, что диеты с высоким содержанием холестерина и жира приведут к заболеваниям сердца и другим проблемам.

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

Г-н Холестерин – не злодей. Его просто неверно поняли. Сегодня мы поделимся всем, что нужно знать про г-на Холестерина и раскроем все секретные сведения по поводу этого хорошего парня.
Читать дальше →
Всего голосов 79: ↑70 и ↓9+61
Комментарии227

Возможности IBM Watson задействованы в онлайн-игре нового типа

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

Если вы когда-либо видели аниме Sword Art Online, вы, наверное, удивлялись, почему нет ММО-игры по мотивам серии. Герои, сюжет, окружение — все идеально подходит для создания такого рода приложения. Многие фанаты этого аниме неоднократно обращались к авторам проекта с просьбой разработать игрушку, но до некоторого момента просьбы оставались неуслышанными.

Но сейчас наступил момент истины — мало того, что по мотивам Sword Art Online создается огромный MMO-мир, так еще в создании этого мира принимает участие IBM Watson. Игра эта — одна из наиболее продвинутых технологически, и не только из-за участия в разработке и управлении игровым миром когнитивной системы, но и потому, что игровой мир — это виртуальная реальность.
Читать дальше →
Всего голосов 18: ↑15 и ↓3+12
Комментарии88

Немного размышлений и советов по оптимизации кода на С++

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


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

Как правило, язык C++ используют там, где требуется высокая скорость работы. Но на C++ без особых усилий можно получить код, работающий медленнее какого-нибудь Python/Ruby. Именно подобным кодом оперируют многочисленные сравнения Any-Lang vs C++.

Вообще, оптимизация бывает трех типов:

  1. Оптимизация уже готового, проверенного и работающего кода.
  2. Изначально написание оптимального кода.
  3. Просто использование оптимальных конструкций.

Специально заниматься оптимизацией готового кода следует только после того, как проект закончен и используется. Как правило, оптимизация потребуется только в небольшой части проекта. Поэтому сначала нужно найти места в коде, которые съедают большую часть процессорного времени. Ведь какой смысл ускорять код, пусть даже на 500%, если он отнимает только 1% машинного времени? И следует помнить, что, как правило, гораздо больший выигрыш в скорости дает оптимизация самих алгоритмов, а не кода. Именно про данный ее вид говорят: «преждевременная оптимизация — зло» (с).

Второй тип оптимизации — это изначальное проектирование кода с учетом требований к производительности. Такое проектирование не является ранней оптимизацией.

Третий тип даже не совсем оптимизация. Скорее это избегание неоптимальных языковых конструкций. Язык C++ довольно сложный, при его использовании частенько нужно знать, как реализован используемый код. Он достаточно низкоуровневый, чтобы программисту пришлось учитывать особенности работы процессоров и операционных систем.
Читать дальше →
Всего голосов 81: ↑68 и ↓13+55
Комментарии89

Топ-10 торрент-трекеров за бугром

Время на прочтение4 мин
Количество просмотров224K
Ниже будет представлен список самых посещаемых торрент-сайтов за 2016 год. В начале 2016 года лидировал KickassTorrents, за ним следовал торрент-трекер The Pirate Bay. Многое случилось за последнее время, некоторые торрент-сайты исчезли, другие заняли их место «под солнцем».



Пользователи конечно же привыкают к тому или иному сайту, но в случае его исчезновения/ блокировки с удовольствием, не брезгуя, перепрыгивают на другие. Эта тенденция прослеживается и согласно данным нового списка топ торрентов. Первые позиции занимают всем известные старые игроки, но также появилась парочка торрент-новичков. После 10 лет работы, популярный торрент-ресурс EZTV был закрыт в мае прошлого года.
читать дальше
Всего голосов 23: ↑21 и ↓2+19
Комментарии52

Объектная гимнастика

Время на прочтение7 мин
Количество просмотров36K
В первых двух абзацах оригинального текста автор описывает как он пил пиво с друзьями. Я заменил их пятничной картинкой о гимнастике из детства.

Объектная гимнастика (англ. Object Calisthenics) — это упражнения в программировании, которые состоят из 9 правил, которые Джефф Бей описал в своей книге «The ThoughWorks Anthology». Пытаясь как можно точней следовать этим правилам, вы измените свои привычки написания кода. Это не значит, что вы должны постоянно соблюдать все эти правила. Найдите баланс и используйте только те, которые вам удобны.

Эти правила сфокусированы на читаемости, тестируемости, понятности и поддерживаемости вашего кода. Если вы уже пишите код, который читаем, тестируем, понятен и поддерживаем, тогда эти правила помогут сделать его более читаемым, тестируемым. Понятным и поддерживаемым.

Ниже я прокомментирую этих 9 правил:
  1. Только один уровень отступа в методе
  2. Не используйте Else
  3. Оберните все примитивные типы и строки
  4. Коллекции первого класса
  5. Одна точка на строку
  6. Не используйте сокращения
  7. Сохраняйте сущности короткими
  8. Никаких классов с более чем 2 атрибутами
  9. Никаких геттеров, сеттеров и свойств

Читать дальше →
Всего голосов 53: ↑26 и ↓27-1
Комментарии23

Тяготы офисной жизни

Время на прочтение1 мин
Количество просмотров26K
Наш иллюстратор провел сравнительный анализ преимуществ и недостатков надомной и офисной работы.

image
Читать дальше →
Всего голосов 20: ↑17 и ↓3+14
Комментарии58

Создание архитектуры программы или как проектировать табуретку

Время на прочтение25 мин
Количество просмотров681K
Взявшись за написание небольшого, но реального и растущего проекта, мы «на собственной шкуре» убедились, насколько важно то, чтобы программа не только хорошо работала, но и была хорошо организована. Не верьте, что продуманная архитектура нужна только большим проектам (просто для больших проектов «смертельность» отсутствия архитектуры очевидна). Сложность, как правило, растет гораздо быстрее размеров программы. И если не позаботиться об этом заранее, то довольно быстро наступает момент, когда ты перестаешь ее контролировать. Правильная архитектура экономит очень много сил, времени и денег. А нередко вообще определяет то, выживет ваш проект или нет. И даже если речь идет всего лишь о «построении табуретки» все равно вначале очень полезно ее спроектировать.

К моему удивлению оказалось, что на вроде бы актуальный вопрос: «Как построить хорошую/красивую архитектуру ПО?» — не так легко найти ответ. Не смотря на то, что есть много книг и статей, посвященных и шаблонам проектирования и принципам проектирования, например, принципам SOLID (кратко описаны тут, подробно и с примерами можно посмотреть тут, тут и тут) и тому, как правильно оформлять код, все равно оставалось чувство, что чего-то важного не хватает. Это было похоже на то, как если бы вам дали множество замечательных и полезных инструментов, но забыли главное — объяснить, а как же «проектировать табуретку».

Хотелось разобраться, что вообще в себя включает процесс создания архитектуры программы, какие задачи при этом решаются, какие критерии используются (чтобы правила и принципы перестали быть всего лишь догмами, а стали бы понятны их логика и назначение). Тогда будет понятнее и какие инструменты лучше использовать в том или ином случае.

Данная статья является попыткой ответить на эти вопросы хотя бы в первом приближении.
Читать дальше →
Всего голосов 88: ↑85 и ↓3+82
Комментарии45

.NET/Mono в Java? Легко!

Время на прочтение11 мин
Количество просмотров20K
Здравствуйте. Хочу представить свой проект – компилятор .NET/Mono в Java. Целью проекта является создание компилятора, и набора стандартных библиотек позволяющих переносить написанные приложения и библиотеки на платформу Java, версии 1.6 и выше. Из аналогичных проектов мне известен лишь проект dot42. Но он заточен под Android и имеет собственную стандартную библиотеку не совсем совместимую с .NET/Mono.

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

Исходные коды на github.com: https://github.com/zebraxxl/CIL2Java

Подробнее о том, что не поддерживается, что поддерживается и как это все работает.
Всего голосов 74: ↑71 и ↓3+68
Комментарии36

1000+ часов видео по Java на русском

Время на прочтение7 мин
Количество просмотров1.3M
Добрый день.
Меня зовут Головач Иван, я руковожу небольшой образовательной компанией и преподаю сам:
  1. Java Core
  2. Junior Java Developer: Servlet API, JDBC, Maven, JUnit, Mockito, Log4J, основы Spring/SpringMVC, основы JPA/Hibernate, шаблоны/архитектуры MVC/IoC/DAO.
  3. Multicore programming in Java.


Также я веду курс «Scala for Java Developers» на платформе для онлайн-образования udemy.com (аналог Coursera/EdX).

В следствии этого у меня скопилось значительно количество ссылок на видео на русском языке по Java как моего авторства, так и моих коллег.

(GolovachCourses.com)


Здесь собраны несколько вариантов записи моего курса Java Core.
Модуль #1 (Procedural Java):
Набор июль 2013: #1, #2, #3, #4
Набор апрель 2013: #1, #2, #3, #4
Набор февраль 2013: #1, #2, #3, #4
Набор январь 2013: #1, #2, #3, #4
Набор октябрь 2012: #1, #2, #3, #4.
Читать дальше →
Всего голосов 120: ↑111 и ↓9+102
Комментарии38

Haxe: конвертируем исходный код

Время на прочтение5 мин
Количество просмотров24K
Haxe — очень удобный и практичный язык, но маленькое сообщество и, как результат, небольшое количество библиотек заставляют меня немало времени тратить на подготовку «заголовочных файлов» для интеграции open source библиотек в haxe. Немного об этом языке и о путях преобразования исходного кода на разных языках мне бы и хотелось рассказать ниже.
Читать дальше →
Всего голосов 36: ↑33 и ↓3+30
Комментарии24

Забанили Google

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


В данный момент в черном списке находятся следующие записи:

  • URL: http_s://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcRl46XKUh5… (ДП)
  • Домен: encrypted-tbn1.gstatic.com
  • IP: 173.194.32.227

Проверить наличие адресов в списке можно тут. В сочетании с недоделанным законом это должно парализовать работу картинок Google у доброй половины пользователей рунета.

UPD: Адреса из реестра удалены, хотя картинка на месте. Интересно было бы посмотреть на комментарии представителей Google.
Всего голосов 166: ↑155 и ↓11+144
Комментарии222

FAQ по программированию под Android от новичка, и для новичков

Время на прочтение16 мин
Количество просмотров158K
Предисловие к FAQ.

Программирование является моим хобби уже давно (правда на других языках и платформах), но до андроида руки дотянулись совсем недавно. Прошло несколько этапов, прежде чем я добрался до написания программ.
Сначала была пара месяцев посвященных Java, на сайте с «Сгибателем».
После, долгие попытки подружится с Eclipse, закончившиеся побегом на Android Studio.
На данный момент выпущено 7 программ и две находятся в разработке.
Данная подборка возникла как попытка структурирования и оптимизации полученной в процессе информации.
Заранее извиняюсь за возможно некорректную терминологию – так как практикую обучение через создание, и в теоретической части есть пробелы.

Надеюсь, что приведенные примеры окажутся полезными.
Читать дальше →
Всего голосов 114: ↑98 и ↓16+82
Комментарии23

Работа для программиста в США: 5 простых шагов

Время на прочтение5 мин
Количество просмотров291K
image Статья про то, что делать тем, кто хочет переехать работать в США. Я предполагаю инженерные позиции, на которые проще всего получить визы, но, возможно, статья окажется полезна и другим специалистам.

Мой опыт несколько отличается от нижеописанного (я попала на работу в США после стажировки). Но за 4 года в США пообщалась с людьми, которые попали сюда разными путями и набрала кое-какой опыт. Так что если бы я очень хотела найти работу в США сегодня, то я бы действовала примерно так, как описано ниже.

Заранее извиняюсь, если мой тон кому-то покажется наставническим — я не имею амбиций учить других жизни, просто иногда у меня получается такой стиль.
Читать дальше →
Всего голосов 166: ↑152 и ↓14+138
Комментарии138

Нейробиология и искусственный интеллект: часть вторая – интеллект и представление информации в мозгу

Время на прочтение7 мин
Количество просмотров76K
Продолжение.

Начало здесь: Нейробиология и искусственный интеллект: часть первая — ликбез,
и здесь: Нейробиология и искусственный интеллект: часть полуторная – новости от Blue Brain Project.

Теперь, вооружившись новым знанем, можно порассуждать о том, каким образом транспорт ионов через мембраны приводит к интеллекту и сознанию. Правильного, полного и четкого ответа пока никто дать не может, так что будем рассматривать текущую ситуацию на примерах.

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

И как же интеллект связан с деятельностью нейронов?





Читать дальше →
Всего голосов 57: ↑55 и ↓2+53
Комментарии39

Нейробиология и искусственный интеллект: часть полуторная – новости от Blue Brain Project

Время на прочтение2 мин
Количество просмотров54K
Пока писал вторую часть, наткнулся на новость и решил что это будет интересно многим в этом хабе.

Итак, есть такой великий проект, который спонсируется IBM, называемый Blue Brain Project. Основная идея сего предприятия – взять и оцифровать мозг. Вплоть до молекулярного уровня, дабы изучать все происходящие в нем процессы in silico. Ну и комп там соответствующий – Blue Gene Supercomputer.

По состоянию на август сего года, они могут симулировать порядка 100 кортикальных колонн, состоящих из 1 миллиона нейронов и миллиарда синапсов.

Так вот новость заключается в том, что они вбросили в симуляцию порядка 10000 нейронов в случайном порядке в 3D пространстве (с учетом общей плотности и местной морфологии нейронов), и проследили, как они будут строить связи между собой, и потом сравнили с данными о реальном мозге млекопитающего. В итоге они получили 75-95% сходство в позиционировании синапсов.

Таки что это значит для нас?
Читать дальше →
Всего голосов 53: ↑53 и ↓0+53
Комментарии93

Нейробиология и искусственный интеллект: часть первая — ликбез

Время на прочтение6 мин
Количество просмотров126K
Так уж получилось, что я уже давненько читаю Хабр и особенно раздел про искусственный интеллект, однако до сих пор так и не отважился внести свою лепту в общий уровень энтропии.

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

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

А в следующей (-щих):
— как интеллект и сознание связаны с активностью нейронов? (здесь же про то, как информация обрабатывается мозгом, нейропластичность, квантовую теорию сознания, сон и т.д.)
Читать дальше →
Всего голосов 68: ↑64 и ↓4+60
Комментарии43

Изменение часовых поясов и перевод стрелок 2014

Время на прочтение32 мин
Количество просмотров151K
Несколько лет назад я у себя в блоге публиковал статью об отмене перехода на зимнее время, которая в это время года пользуется популярностью. В статье шла речь о том, каким образом можно вручную изменить свой часовой пояс для компьютера, находящегося в рабочей группе или в домене Active Directory. Иначе говоря, там я описывал параметры системного реестра, позволяющие вносить изменения в эту функциональную возможность операционных систем Windows.

В этом году, согласно федеральному закону Российской Федерации от 21 июля 2014 г. N 248-ФЗ, в закон об истечении времени под номером N 107-ФЗ от 3-го июня 2011 года, были внесены некоторые изменения (о самих изменениях немного ниже), в связи с которыми 26 октября 2014 года осуществляется перевод часов и устанавливаются соответствующие часовые зоны и значения времени.

Следовательно, корпорация Microsoft не заставила себя ждать и 23-го сентября этого года выпустила очередной патч, предназначенный для учета текущих изменений в порядке исчисления времени, благодаря которому в операционные системы Windows будут внесены соответствующие правки. Этот патч (под номером KB2998527) можно проинсталлировать практически на все актуальные операционные системы Windows.

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

Начнем мы с
Читать дальше →
Всего голосов 56: ↑53 и ↓3+50
Комментарии33

Информация

В рейтинге
Не участвует
Откуда
Новочеркасск, Ростовская обл., Россия
Дата рождения
Зарегистрирован
Активность