Pull to refresh
1
0
Юрий Тихоглаз @USeTi

User

Send message

Восьмибитные анекдоты 3

Reading time5 min
Views51K
Время летит быстро. После первых двух публикаций (раз и два) удалось восстановить несколько треков в памяти, казалось бы, навсегда потерянных. Ну, Вы знаете, так бывает. Поэтому и появилась третья часть, тем более три лучше, чем два и не только в зачетке. Итак, продолжим.


Читать дальше →
Total votes 107: ↑104 and ↓3+101
Comments83

Механические клавиатуры

Reading time17 min
Views761K
Все мы давно ждем массового появления всевозможных кибер-перчаток и виртуальной реальности на каждом шагу, но все равно каждый день в офисе и дома нам приходится работать за такой банальной вещью, как обычная клавиатура.

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

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

Механические клавиатуры. Путеводитель.

Читать дальше →
Total votes 323: ↑313 and ↓10+303
Comments331

Vizualization Challenge

Reading time1 min
Views585
Популярное издание National Geographic вместе с National Science Foundation и журналом Science ежегодно проводят «Vizualization Challenge 2008»: конкурс, выявляющий лучшие научные картинки (это могут быть фотографии, рисунки, моделирование) года. Основное условие: изображения должны быть созданы с использованием современных технологий для визуализации «сложных научных тем».
image
Этот рисунок был создан Марио Де Стефано из Second University of Naples, Италия. Маленькие зеленые диатомы создают иллюзию «леса», присоединяясь к морским беспозвоночным. Снимок сделан сканирующим электронным микроскопом в Средиземном Море. Первое место в «фотографической» категории мероприятия.
Читать дальше →
Total votes 57: ↑48 and ↓9+39
Comments22

IEnumerable<T> и IQueryable<T>, в чем разница?

Reading time2 min
Views47K
Уважаемые Хабровчане, решил поделиться одним не очевидным моментом использования LinqToSql, с которым столкнулся некоторое время назад. А именно, про особенности использования каскадных Linq запросов:

Работая над очередным ASP.NET MVC проектом, и проектируя уровень доступа к БД мне потребовалось проверить качество скриптов, генерируемых Framework-ом L2C.

Что имеем (упрощенный вариант модели):


class User {
  public long Id { get; set; }
  public string Name { get; set; }
  public IEnumerable<Parameter> Parameters { get; set; }
}

class Parameter {
  public long UserId { get; set; }
  public string Name { get; set; }
  public string Value { get; set; }
}

Для получения данных написан класс UserRepository:

class UserRepository: MyProjectDataContext {
  public IEnumerable GetUsers() {
    return this.Users.ToModelUsers();
  }
}

static class RepositoryHelper {
  public static IEnumerable<Model.User> ToModelUsers(this IEnumerable<DataAccess.User> users) {
    return users.Select(u => new Model.User { Id = u.Id, Name = u.Name, Parameters = u.Parameters.ToModelParameters() });
  }

  public static IEnumerable<Model.Parameter> ToModelParameters(this IEnumerable<DataAccess.Parameter> parameters) {
    return parameters.Select(u => new Model.Parameter {… });
  }
}

пишем
var users = userRepository.GetUsers().ToList();

смотрим профайлер, и с удивлением обнаруживаем что для загрузки 10 пользователей и их параметров было выполнено целых 11 запросов.
подробности
Total votes 64: ↑43 and ↓21+22
Comments35

LaTex: Упражнение

Reading time1 min
Views4.5K
Для того, чтобы старшему ребёнку давать примеры на сложение и вычитание в столбик, написал скрипт на Groovy, который генерирует LaTeX с примерами.
Цель была попрактиковаться в груви, ну и писать примеры от руки надоело.

Раньше на латехе ничего не писал, но что это и зачем нужен знал из Универа.
Часа два трахался с тем, как на LaTeX сделать нужный вид столбика.
Для работы с LaTeX поставил соответствующие пакеты из CygWin.

Вот скрипт, надеюсь кому нибудь пригодится:
Читать дальше →
Total votes 27: ↑21 and ↓6+15
Comments25

Асинхронное программирование и Computation Expressions

Reading time11 min
Views15K
В предыдущих заметках (часть I, часть II) об async/await в C# 5 я написал, что подобный подход реализован в таких языках, как Haskell, F# и Nemerle, но, в отличие от C#, эти языки поддерживают концепцию более высокого уровня, которая позволяет реализовать асинхронные вычисления в стиле async/await в виде библиотеки, а не на уровне языка. Забавно, что в Nemerle сама эта концепция реализована в виде библиотеки. Имя этой концепции — монада. Помимо асинхронных вычислений монады позволяют реализовать другие вкусности, такие как list comprehension, continuation, превращение грязных функций в чистый блок, через который неявно протаскивается состояние, и множество других.

Некоторые монады реализуют такие «хотелки» C# программистов, как yield коллекции или yield foreach и yield из лямбда выражения.

Цель этой заметки — введение в асинхронное программирование и computation expressions в Nemerle, но она так же может быть полезна тем, кто изучает F#, так так реализация асинхронного программирования в Nemerle была сделана с оглядкой на него в F#. С другой стороны, кому-нибудь может быть интересно, как некоторые задачи, которые являются проблемой в других языках (После всех асинхронных вызовов), решаются с помощью computation expressions в пару строк.
Читать дальше →
Total votes 32: ↑25 and ↓7+18
Comments19

Android Calendar API

Reading time5 min
Views43K

В этой статье речь пойдет об использовании недокументированного API для работы со стандартным календарем Android. Статей на русском по данной теме не нашел, да и на английском лишь несколько постов с устаревшими данными. Кто заинтересовался – под кат.
Читать дальше →
Total votes 66: ↑58 and ↓8+50
Comments50

«Живой» концерт Хацунэ Мику

Reading time1 min
Views92K
Японию захлестнула очередная волна любви к синтетической поп-звезде. Имя Хацунэ Мику, как и её голос, собран из нескольких составляющих — хацу (первый), нэ (звук) и мику (будущее).



Хацунэ Мику была создана ещё в 2007 году и быстро завоевала популярность, в Японии. Но сейчас, когда о ней стали потихоньку забывать, её создатели — Crypton Future Media решили пойти на беспрецедентный шаг – организовать её «живой» концерт при помощи анимированной 3D-голографии. Статья на Gizmodo частично объясняет, как это было осуществлено. На заглавном видео эпизод этого концерта.

Родитель первой синтетической поп-звезды — программное обеспечение Vocaloid небезызвестной фирмы Yamaha, имитирующее поющий голос человека на основе заданной мелодии и текста. Любую программу на основе неё можно условно поделить на две части: систему синтеза голоса (пения) и библиотеки исполнителей. Голос певца разбивается на небольшие отрывки и записывается в базу данных. Далее, пользователь набирает текст нового произведения, вводит ноты, задаёт ритм, а Vocaloid автоматически формирует песню, подбирая соответствующие тексту фонемы и звуки.
Total votes 162: ↑108 and ↓54+54
Comments151

Программа HP для выпускников

Reading time2 min
Views1.3K
«Если ты молод и полон сил...» Так обращаются к нам патриотические плакаты, зовущие защищать рубежи Родины в составе вооруженных сил, ну или, на худой конец, таможни. Но, к счастью, не только там нужны энергичные и способные молодые люди. HP, будучи очень большой и динамичной компанией, всегда нуждается в талантах. Для их привлечения у нас была запущена программа содействия выпускникам вузов Graduate Development Program (GDP). Она действует по всему миру, в том числе и в России. Андрей из Санкт-Петербурга попросил рассказать о ней подробнее, а я попросил помочь нам в этом Бориса Ястребова, который руководит GDP во всех странах Центральной и Восточной Европы.
Читать дальше →
Total votes 29: ↑24 and ↓5+19
Comments4

MemcacheDB и MemcacheQ — ключевые компоненты высокопроизводительной инфраструктуры

Reading time5 min
Views7.5K
Cегодня мы поговорим о компонентах для высокопроизводительной и масштабируемой архитектуре на основе сервера memcached, а именно — распределённой базе для хранения данных MemcacheDB и системы очередей сообщений MemcacheQ.



Сначала рассмотрим, а что у нас есть в распоряжении для создания распределённой инфраструктуры хранения данных для веб-приложения. Ну, первое, что приходит в голову — кластеризация базы данных, это теперь поддерживается во всех распространённых системах, а также различные технологии репликации. Например, самая популярная СУБД для веб-проектов, MySQL поддерживает как репликации так и кластеризацию. Ещё можно обратится к традиционным файловым система и хранить данные в файловой системе, к примеру, Apache Hadoop. Но часто это слишком высокоуровневое решение, обычно же требуется гораздо проще варианты — когда нужно хранить и оперировать просто парами ключ-значение. Если серьёзно посмотреть, такая функциональность позволит покрыть потребности 90% веб-приложений. А если мы прибавим к этому возможность очень и очень быстро оперировать данными, хранить их в виде распределённой многосерверной системе и возможность постоянного хранения, устойчивого к сбоям — получим очень привлекательную платформу.

Читать дальше →
Total votes 50: ↑50 and ↓0+50
Comments23

Самое большое простое число

Reading time1 min
Views4.1K
image

Его размер умопомрачителен! Длиной около 13 млн символов, это 45-е простое число Мерсенна делает количество атомов в известной вселенной ничтожной величиной, с их «всего 80-значной цифрой». Форма простого числа Мерсенна красива и подтянута: 2n-1, где n — простое число. Последовательность чисел Мерсенна начинается так: 1, 3, 7, 15, 31, 63, 127, 255, 511, 1023,… (последовательность A000225 в OEIS).

Простые числа Мерсенна являются самыми большими простыми числами, известными науке. Предыдущий мировой рекорд принадлежал числу 232582657-1, имеющему 9.808.358 разрядов.

Последнее, 44-е число было найдено два года назад, а нынешнее — в начале осени. Нет надежды на написание этого числа: 243,112,609-1 заняло бы в длину много километров. Я думаю вы можете себе представить, что такое 13 мб одних только цифр.

via Science News
Total votes 125: ↑95 and ↓30+65
Comments116

Information

Rating
Does not participate
Location
Москва и Московская обл., Россия
Date of birth
Registered
Activity