Хабрахабр:
Хабы: C#, .NET, Песочница Приветствую Вас, Хабралюди! Многие из Вас знают такой замечательный сервис, как Last.fm. Коротко для тех, кто не в курсе: Last.fm ? это интернет-проект музыкальной направленности, основными сервисами которого является сбор информации о музыке, которую слушает пользователь, и её каталогизация в индивидуальных и общих чартах, выдача рекомендаций на основе собранных данных. Более подробно в этом посте. Сначала я зарегистрировался на этом сайте по совету друга без особого энтузиазма, только для того, чтобы смотреть, какие песни популярны у того или иного исполнителя. Но потом, когда началась нормальная поддержка скробблера для плеера AIMP, я начал использовать сервис как нужно. Всё бы хорошо, но меня расстраивал тот факт, что в статистику добавлялись только те песни, которые я прослушиваю в AIMP'е (тогда ещё у меня был обычный телефон, песни из машины и плеера, естественно, не поскробблишь, да и скробблеры для ВКонтакте работали очень нестабильно). И тогда я решил поковырять API Last.fm для общего развития и решения этой проблемы. В итоге получилась программа, написанная на C#, которую я незамысловато назвал Автономный Last.fm скробблер, которая позволяет скробблить треки без непосредственного прослушивания в плеере. Это позволит заносить в статистику все треки, которые Вы слушаете (естественно, если Вы знаете их названия). Читать дальше →
Хабы: JAVA Сегодня я расскажу про дизайн тривиального concurrent-класса в Java. Может быть, это будет удобнее, чем абстрактно объяснять разные концепции из JMM и concurrent-кода. Все продвинутые парни знают, что такое Future ? это обещание предоставить результат типа V. Future'ы удобны, чтобы предоставлять результат асинхронных задач. Например, ExecutorService возвращает Future для описания результата задачи, которая когда-нибудь выполнится в thread pool'е. Частенько при написании хардкорного concurrent-кода требуется такой примитив, как SettableFuture, который будет выполнять все функции Future, но в который можно будет также выставить значение из другого потока. Эдакий асинхронный mailbox. За свою недолгую жизнь я видел несколько вариантов реализации такого SettableFuture, рассмотрим некоторые из них, и заботливо разложенные в них грабли. Большинство примеров реально существовали, некоторые из них были домыслены ради плавности изложения. Чтобы вам не было сильно скучно, попробуйте не читать объяснение после каждого примера, а найти грабли самостоятельно. Для уменьшения простыни мы реализуем только методы set() и get(), кое-какие исключения также игнорируются. Все персонажи вымышлены, хотя пост и основан на реальных событиях. Achtung: пост-простыня под катом. Читать дальше →
Хабы: Инфосфера - мысли вслух, Будущее здесь Все мы много раз задумывались над тем, откуда берётся то самое электричество, благодаря которому возможна работа твоего компьютера, Интернета, огромного количества всевозможного оборудования, и, конечно, Хабрахабра. Сейчас у нас есть ТЭЦ, АЭС, ГЭС и довольно большое количество других технологий получения энергии. У большей части из этих технологий есть очень существенные недостатки ? это либо значительный вред окружающей среде, либо расход медленно возобновляемых природных ресурсов, либо низкая эффективность. Некоторые технологии кажутся почти идеальными, но только до того момента, пока не знаешь их стоимость. Но что, если бы у нас появилась возможность найти такой способ получения энергии, который не имел бы всех этих недостатков? И что, если бы он также давал дополнительные преимущества, такие как, например, чистая питьевая вода? И если бы он стоил около ста долларов (около трёх тысяч рублей) на человека и всё необходимое оборудование при этом имело бы очень длительный срок эксплуатации (то есть заплатив единожды $100 можно было бы много лет не задумываться о счетах за электричество и воду), а установить такой комплекс можно было бы в любом месте на Земле? У нас есть этот способ. И мы скоро будем готовы к производству. Поэтому, если вам интересно, читайте дальше. (Девочка на картинке неодобрительно смотрит на тех, кто не хочет ничего слышать.) Читать дальше →
Хабы: Windows, Python, Django Пару лет назад посчастливилось мне иметь блог на WordPress. До наших дней блог, как и вся база постов к моему сожалению не дожила, но рассказать я хочу не о самом блоге, а о том с помощью чего вся информация публиковалась. В то время Microsoft не так давно запустила Windows 7, а вместе с ней и пакет приложений Windows Live. Вот и я решил взглянуть ? чего в этом пакете вкусного? Больше всего мне приглянулось приложение Windows Live Writer ? программа позволяющая набирать и форматировать тексты, и публиковать их в блог. Удобный интерфейс, множество инструментов для форматирования, возможность хранить черновики локально, и многое другое ? я влюбился. Спустя некоторое время свой блог без Windows Live Writer я уже не представлял. И чего же было дальше?
Хабы: Arduino, Python В организации, где я тружусь в свободное от отдыха время, очень высокие требования к безопасности. Везде, где только можно, для аутентификации пользователей используются токены. Мне выдали вот такую вот штуку: и сказали: жмёшь кнопку, смотришь цифры, вводишь пароль и радуешься. ?Безопасность, конечно, превыше всего, но и о комфорте забывать не следует? ? примерно так подумал я и провёл ревизию имеющегося у меня электронного хлама. Читать дальше →
Хабы: Я пиарюсь С чего начинается сервис, как ни странно, не с идеи, а с поиска решения проблемы. Я искал простой сервис, в котором можно было бы назначать моим сотрудникам задачи и отслеживать их выполнение. Но все что находил в интернете, было громоздким. Для того, чтоб начать планировать и назначать задачи, нужно было ввести в эти сервисы много информации, обучить персонал, как ими правильно пользоваться, но не было в них самого главного, простоты. Читать дальше →
Хабы: Копирайт, Dura Lex Предисловие переводчика После запуска Google Drive по интернету прокатилась очередная волна недовольства условиями использования сервисов Google. На самом деле проблема TOS присуща практически всему современному интернету. Мне показалась интересной статья, пусть не бесспорная и не слишком глубокая, но доступно описывающая ситуацию. Вам больше ничего не принадлежит Не переживайте об условиях использования Google Drive, посмотрите на условия использования у всех сервисов. В интернете мы с вами ? товары на распродаже. Вдумчиво ли вы читали условия использования (TOS) на сайтах вроде Google или Facebook? Или спрошу по-другому: читали ли вы условия использования на достаточном количестве сайтов? Если да, вы легко узнаете пример: после более или менее длительного предисловия, напоминающего прочистку горла, большинство условий подходят к печальному пункту: Загружая или иным образом добавляя материалы в наши Службы, вы предоставляете нам действующую во всем мире лицензию, которая позволяет нам использовать это содержание, размещать его, хранить, воспроизводить, изменять, создавать на его основе производные работы, обмениваться им, публиковать его, открыто воспроизводить, отображать, а также распространять. Для большинства людей этот пункт ? самый значимый. Это как раз то место, где каждая компания, с которой вы общаетесь в онлайне ? Facebook, Pinterest, Microsoft или, как в вышеприведенном случае, Google ? объясняет вам, прямо в ваше простоватое лицо, что загружая ваш контент, вы его отдаете. И хотя этот отрывок написан наиболее ясно, вас не покидает чувство, что вы стали жертвой мошенничества. Именно он ?достает? вас в интернете. Читать дальше →
Хабы: Веб-дизайн Большинство из нас проходили русский язык. Но, так как это происходило в переходном возрасте, мы проходили его мимо. Кто-то в это время работал, кто-то занимал первые места на спортивных соревнованиях, кто-то играл на приставках, а большинство вкладывали всё своё доступное время в общение с компьютером. Именно поэтому мы не всегда грамотно пишем, показывая себя не с лучшей стороны. Несмотря на то, что я умею программировать, мне с трудом удаётся понять алгоритм расстановки запятых (такое ощущение, что эти правила специально запутали). Недавно, я решил изучить все правила и набить руку на практике. Для этого я сделал сайт, на котором можно поупражняться определять места расстановки запятых. Суть сайта проста. Вам представляется текст без единой запятой. Вы можете расставлять запятые по своему желанию, а сайт будет подсказывать ? правильно ли вы делаете. Правила русского языка в части ?запятой? прилагаются. Читать дальше →
Отписаться от этой рассылки