• ↓
  • ↑
  • ⇑
 
Записи с темой: компьютеры (список заголовков)
10:25 

Носи в кармане



Такая штучка стоит 500 рублей. Вставляете в любой компьютер, делаете:
netsh wlan set hostednetwork mode=allow ssid=[имя сети] key=[ключ] keyUsage=persistent
netsh wlan start hostednetwork
И у вас запущена беспроводная сетка. Можно расшарить быстрый интернет для мобильника, например.

@темы: Компьютеры

13:18 

Про Microsoft

У Майкрософт талант делать ПОЧТИ крутые вещи так, что все плюются.

Windows 8 - попытались объединить ПК и планшеты, сделать общий интерфейс, но на ПК в виде исключения оставили старый рабочий стол. Все плюются. А представьте, что MS объявила бы об этом по-другому: Мы сделали новую, крутую ОС для мобильных устройств. Бонус 1: Она основана на ядре Windows, так что переучиваться придётся мало! Бонус 2: Программы с мобильников можно запускать в специальной среде на обычном ПК!

Да это же прекрасно. А разница - только в подаче и в мелочах.

Провальный XBox One - DRM встроен в приставку, требуется постоянное подключение к интернету, игры всегда скачиваются. По сути это же Стим, который все любят, только оффлайн-режима нет. И если подумать, Sony со своим PS4 может сделать дурную услугу, поскольку DRM всё равно будет, но у каждого разработчика свой. И когда разработчик закрывается или закрывает сервера, его игра перестаёт работать. А при централизованном DRM нужно только чтобы работали сервера Майкрософт, чего добиться гораздо проще.

@темы: Компьютеры

22:39 

lock Доступ к записи ограничен

Закрытая запись, не предназначенная для публичного просмотра

URL
19:53 

2007 год

Для тех, кто был на сайте, который нельзя называть, в 2007 году, вот вам кусочек ностальгии: 2007.iichan.hk.

Как медленно текло тогда время! Я помню каждый тред, каждую картинку. Сейчас (даже если б я ещё заходил на ычан) треды летят с такой скорость, что через три дня уже старых не найдёшь.
Задача максимум: найти и вспомнить свой собственный пост. Мне кажется, я нашёл.

@темы: Будни, Компьютеры

02:11 

Организация личных данных

Ну вот, гугл закрывает XMPP. Я давно собирался написать пост об организации личных данных. Как защитить себя от таких внезапных закрытий и отключений? Ведь каждое - это потерянные контакты знакомых, логи разговоров (история!), сохранённые ссылки и записи.

Предложений семь:

1. Использовать только открытые протоколы.

2. Использовать только ПО, которое хранит файлы на вашем компьютере.

3. Скачивать всё.

4. Использовать свой сервер для централизации.

5. Использовать свой домен как identity.

6. Использовать шифрование.

7. Делать бэкапы.

@темы: Компьютеры

01:42 

Google отключает XMPP

Если кто не знал, ваш аккаунт в gmail до сих пор можно было использовать как логин в Jabber. Ваши контакты из gmail/google+ автоматически (с картинками) оказывались в списке мессенджера, а логи разговоров - в отдельной папке в gmail.

Недолго музыка играла. Гугл всё это дропает. Кто-то в шутку пишет - что дальше, Гугл? От SMTP откажешься? И возможно, что и откажутся. Потому, что зачем поддерживать SMTP, пусть люди веб-интерфейсом пользуются.

@темы: Будни, Компьютеры

23:35 

Так вот, о биткоинах

Вчера утром цена за биткоин была $210. Днём - $260. Вечером... $160, а сейчас $75. Как напоминает zHz, в японском звукоподражание "СКААААН" означает резкое уверенное падение чего-либо. Так вот, СКААААН.

Три часа, за которые вчера биткоин потерял 100 долларов, были на реддите блокбастером и триллером. За тредами "Держимся! Не продаём!" следовали "Плакала моя новая приставка" или "Дураки! А я сейчас покупаю!" Кто-то клялся, что завтра снова будет 250, кричал "Это не обвал, это DDOS! Биржу атакуют!", и были даже грустные треды "Я уже потерял $40 000, это сбережения за всю мою жизнь. Пошло всё к чёрту, прощайте".

Советую научную статью про биткоины, простым языком рассказывающую, как они устроены. Когда-нибудь я напишу об этом пост. У биткоинов куча слабых мест, как у валюты, но технологически и математически они волшебная офигительная вещь.
Ещё где-то в интернете есть срывающая покровы статья "Как программисты вообразили, что они разбираются в экономике".

@темы: Будни, Компьютеры

21:20 

О биткоинах и том, как забываются очевидные истины

Для тех, кто не знает: биткоины в последние несколько недель взлетели в цене. Полтора года назад один коин стоил меньше доллара, три месяца назад он стоит 15 баксов, три дня назад стоил 90, а сейчас торгуется по 140.

Очевидно, что это пузырь. У биткоинов есть некоторый закономерный потенциал, и до 15 баксов они выросли более-менее справедливо. Но за последние три месяца почти никто не покупал их ради того, чтобы использовать, т.е. оставить ликвидность в системе. Все хотят вовремя их продать.

Любопытно наблюдать за сообществом /r/banana на реддите. Биткоинами в основном пользуются - и будут пользоваться - технически подкованные люди, компьютерщики. И те из них, кто вложился, проходят там все стадии одержимости и принимают все возможные роли. То прославляют биткоин как валюту будущего, безупречную, недооценённую, которая - разумеется! - с каждым днём будет только расти до тысяч, десятков тысяч долларов. Делятся историями будущего успеха, смеются над обывателями, которые не способны поверить в цифровую революцию. Прыгают в восторге, обнимая друг друга, когда цена за коин берёт очередную высоту.

То здравый смысл, страхи и подозрения, которые они заглушали в себе, берут верх, и появляются треды "If we can all stop circlejerking for a second, let's acknowledge one truth: This is a bubble. It is driven by speculation, and it will pop." И внезапно многие соглашаются, как будто это совсем другой субреддит - спорящих минусуют, трезво мыслящих плюсуют, и вообще дует ветерок паники. А кто-то всё равно доказывает, что ему и на тридцати баксах то же самое говорили, и где бы он сейчас был, если бы продал?

Я мало знаю о людях, играющих на бирже. Они кажутся посторонними, глупыми созданиями, но вот здесь можно видеть, как в те же ошибки впадают и те же слова произносят, и точно так же не замечают этого за собой знакомые и понятные компьютерщики. Как будто нам с детства рассказывали простые истины: что наркотики вредны, что возникает зависимость, что на бирже играть глупо, а вслепую, поддавшись оптимизму - тем более. И все мы кивали головами и думали: ну как такие люди вообще могут быть? Ведь это же глупо, со стороны видно, что глупо. А потом - но у меня же нет зависимости, но я же не играю на бирже, но тут же всё совершенно по другому, как вы не понимаете?

I cant sleep right now. I am so tired I am crying. I don't know why I am crying. I am currently standing to make more in a minute than I have had in my entire 10 years in the work force. I am planning on contacting an adviser tomorrow. I am too young to know what to do with all of this.

@темы: Будни, Компьютеры

11:33 

Почему клавиша бэкспейс называется бэкспейс

Дайте угадаю: потому, что прежде символы не "вставлялись" и "удалялись", а "печатались на фиксированных позициях". Space печатал пробел на позиции спереди курсора, а BackSpace - на позиции сзади.

@темы: Компьютеры

21:12 

Prototype


Игра про то, как Нью-Йорк заражают зомби-вирусом, а главный герой вместо этого получает возможность:
1. Пожирать людей и принимать их облик
2. Получать их воспоминания
3. Как угодно трансформировать своё тело
4. Бегать по стенам, летать и швыряться танками

Сюжет незатейливый, зато играть интереснее, чем в GTA. Как-то соблюдён баланс между тем, что военные за тобой вроде и охотятся, но и скрыться от них можно (не нужно перезагружаться, если всех разозлил, как в GTA), хотя и напарываться попусту не хочется. И оружия много клёвого - руки-хлысты, руки-клинки, руки-молоты, всё как в книжках Лукьяненко о метаморфах.

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

@темы: Компьютеры

12:28 

Биткоины

Прочитав кучу историй на реддите, я теперь убеждён, что биткоины - самое быстро дорожающее средство где-нибудь ошибиться и потерять все свои деньги :)

У человека был brainwallet (кошелёк, который генерируется из одной фразы). Он вбил пароль, скачал кошелёк, перевёл из него 12 коинов кому-то, а файлы затем удалил. Потерял 88 биткоинов: транзакции в BTC совершаются с блоками, и в его случае блок был 100 коинов. Сдача в 88 коинов ради безопасности идёт на новый адрес, приватный ключ к которому создаётся в файле кошелька. Который был удалён.

Другой человек знал об этой проблеме и заранее создал 100 адресов для сдачи. Приватные ключи ко всем забэкапил, кошелёк зашифровал. В какой-то момент гипс снимают, клиент уезжает, кошелёк полетел и ему нужны данные из бэкапа, он лезет туда, и выясняется, что в момент шифрования кошелёк заново генерирует ключи для сдачи. То есть, сохранённые ключи недействительны.

Третья история вообще грустная. Человек решил купить наушники на крейгслисте. Нашёл продавца в своём районе, договорились встретиться, купить за наличку, и тут он видит у него внизу подписано "также принимаю биткоины". Решает купить за них.
Приходят в кафе, садятся, продавец даёт наушники посмотреть, человек доволен, спрашивает адрес кошелька, переводит на него 80 баксов (0.8 биткоина). Как только сеть подтверждает транзакцию, продавец встаёт, забирает наушники и идёт к выходу.
"Стой, а наушники?"
"Моя цена - $80, не хочешь платить - не надо."
"Ах ты... Я в полицию обращусь!" - хочет сказать покупатель, и тут понимает. Что записали камеры наблюдения? Двое пришли, сели, один дал другому посмотреть наушники, потом забрал и ушёл. 80 баксов? Какие 80 баксов? "Товарищ полицейский, я заплатил ему 0.8 виртуальных монет, за которые не отвечает ни одно государство и ни одна фирма"?
Ну хорошо, пусть полицейский готов поверить в виртуальные монеты. Где доказательства, что эти монеты были уплочены? "Вот, я перевёл их на адрес 1b3674e8cd..." - "А это правда его адрес?" И ничего не докажешь, сеть же анонимная.

@темы: Компьютеры

00:50 

О ненадёжности сервисов в интернете и о собственном сервере

В последнее время от программ, которые хранят файлы на локальном компьютере, все понемногу переходят к т.н. "облачным сервисам", когда данные хранятся в интернет и доступны отовсюду через браузер. С одной стороны, это удобно - за каждым компьютером работаешь как за домашним, всё под рукой. С другой стороны, смерть Google Reader ещё раз напомнила, что даже крупная всеми любимая компания не обязательно будет хранить наши файлы вечно.

А это значит - нет ощущения надёжности. Файлами на своём компьютере я могу распоряжаться как захочу: захочется - так и всю жизнь буду хранить. А в интернете всё устаревает и удаляется. Хостеры картинок закрываются, удаляют картинки, к которым не было обращений месяц, сервисы сворачиваются, прогорают. Блоги закрываются, их содержимое остаётся только в моих фидах в Google Reader, потом закрывается сам ридер, и содержимое теряется навсегда - его даже скачать неоткуда.

Мне это не нравится. Я люблю настроить один раз - и чтобы работало столько, сколько мне нужно.

И вот что я думаю. Любой хороший сервис должен поставляться не в виде "одного сайта на всех", а как веб-движок. Чтобы любой мог установить его на свой сервер и пользоваться - хоть один, хоть с товарищами. Вот какими должны быть приложения будущего.

  • Отличный пример - Википедия. Хотя у неё существует "главный сайт", но любой может скачать исходный код, запустить на своём личном сервере и держать его там, пока не надоест.

  • Другой отличный пример - WordPress. Сайт Diary.ru, на котором я пишу эти строки, однажды закроется или благодаря дурацким решениям станет неудобным - например, знали вы, что теперь u-mail за прошлый год нельзя прочесть, нужно заказывать его возврат из архива? Однажды так будет и с записями. Но копия моего блога у меня на сайте будет доступна столько, сколько я захочу.

  • Третий отличный пример - системы контроля версий: свн, меркуриал, гит. Да, полно сайтов, которые предоставляют хостинг для СВН, но если такой сайт однажды закроется - не составляет никаких проблем поднять сервер меркуриала у себя на хостинге и закачать всю историю разработки программы туда. Вы ничего не потеряете.

Поэтому любому человеку, который разбирается в компьютерах и хочет устроить свою электронную жизнь надёжным образом, обязательно надо купить или собрать сервер или заказать виртуальный хостинг, и старательно переносить все важные для себя данные в интернете на него.

Например, нужен открытый движок наподобие Google Reader. Очень нужен сервер синхронизации вроде Dropbox или, ещё лучше, SpiderOak (с шифрованием). Нужно взять за правило никогда не хостить картинки на стороне, даже на удобном imgur, а всегда класть их на своём сервере. Нужны стандарты предоставления профиля и обмена друзяшечками (кажется, это кто-то разрабатывал), чтобы вбив свой сайт и введя пароль в сотовом телефоне, можно было оттуда, а не из фейсбука или вконтакта, получить список своих друзей с их телефонами и свежими аватарками.

Вот над чем надо работать, а появлению новых фич в Google Plus я отныне официально прекращаю радоваться. Долой централизацию, даёшь личные сервера.

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

@темы: Будни, Компьютеры

11:50 

Гугл закрывает Google Reader.

У меня только одна реакция:
"What the fuck? Why?"

"Бла-бла им пользуется слишком мало людей. Сложно поддерживать".

1. Мало? Посмотрите, какой поднялся шум.
2. Офигительно сложно поддерживать продукт, в котором ничего не меняют уже несколько лет и который ни с чем не связан. Работает себе и работает.
3. И как же "свободная и открытая инфраструктура", а, Гугл? Мало людей пользуются RSS - отлично, так мы его вообще похороним. Пусть через Фейсбук новости смотрят, там всё свободно и открыто.

Ад и отчаяние.

Петиция не закрывать ридер, на которую никто не обратит внимания.
Лучшие альтернативы Google Reader, которые всё равно уже будут не такими удобными.


UPD. Вот самая полная статья, перечисляющая замены Гугл-ридеру. В том числе несколько движков для установки на собственном сервере.
См. также соседний пост о таких движках.

@темы: Будни, Компьютеры

18:47 

RIP Opera. Your html rendering was too beautiful for this world.

Опера отказывается от движка Престо, переходит на Вебкит (движок Хром), и по слухам, не только на движок, а вообще на сборку Хромиум в другом скине, вот и всё.

Все существующие расширения продолжат работать, сообщает Opera Software, они будут автоматически конвертированы. Слово "конвертированы" выдаёт, насколько Опера перестанет быть Оперой. Если бы менялся только движок, не составляло бы труда добавить поддержку десятка нужных объектов, чтобы расширения работали как прежде. Но Опера, похоже, выпустит под старым названием совершенно посторонний браузер.

Мне тут говорили, что померла - и пофигу.

Вы, ламеры, пользующиеся медленным и неудобным Файрфоксом! Я же вас же теперь задолбаю жалобами на то, какое это изделие добра. Ни нормальных вкладок, ни боковых панелей, ни управляемых панелек Speed Dial. Как вы живёте без того, чтобы видеть на Speed Dial свою карму с различных сайтов? Как обходитесь без встроенного почтового клиента? На веб-интерфейс гмыла ходите, лол, как секретарши? В Фоксе, в расширяемом Фоксе, где "есть всё, что захочешь", почтовый плагин всего один, и тот - огрызок по сравнению с M2, а ведь М2 никогда не казался таким уж функциональным.

А уж если сравнивать отзывчивость и лёгкость Оперы и тягучесть, непроворотливость Фокса - плакать хочется. На кого ты нас покидаешь, Опера? Где теперь взять такой браузер, который бы был удобным?

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

@темы: Компьютеры

14:21 

Про паскаль

Если считать, что паскаль вымирает, то вымирать он умудряется с огоньком. У нас есть Delphi, который при всех проблемах управления постоянно вводит крутые возможности в язык. Он компилируется под win-x32, win-x64 и маки. Есть FreePascal, которые поддерживает большую часть вводимых Дельфи фич и компилируется подо всё на свете, в том числе под linux-x32, linux-x64 и native-android (с помощью этой штуки компилятор FPC можно встроить в интерфейс дельфи, если не нравится Lazarus). И есть Oxygene, который компилируется под .NET, Android и iPhone, и тоже вводит в язык много крутого. (И в нём вместо VCL используются нативные формы каждой платформы, типа Windows Forms).

То есть, в общем-то, покрыта вся мыслимая разработка для локальных компилируемых языков. Кроме интерпретируемых языков, единственный язык с таким покрытием - это C/C++. И кстати, если пользоваться только паскалём уровня Delphi 7, стандартной библиотекой вместо винапи, и ограничиться консольным или сервисным приложением, то программу можно будет скомпилить на любом из этих компиляторов. Интересно, пробовал ли кто-нибудь?

@темы: Компьютеры

17:29 

Про регэксы

Регэксы - это офигенное средство, не только потому, что с их помощью легко записывать формат строки. Его легко преобразовывать и быстро парсить!

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

Но регэксы ужасны - стоит попытаться написать что-нибудь достаточно сложное, как выясняется, что:
- повторяющийся набор групп матчится только один раз
- наоборот, два одинаковых набора подряд матчатся как разные группы (следовало бы ожидать...)
- группам можно задать имена, но они должны быть уникальными (нафига тогда имена?)
- указать "если есть блок А, должен быть блок Б" крайне сложно, а уж "должен быть блок Б здесь либо чуть позже" вообще нельзя
И так далее.

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

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

@темы: Компьютеры

15:30 

Приватный hg-репозиторий в интернете

Задача: поднять для личного hg-репозитория постоянный (приватный) адрес в интернете.

Для публичных репозиториев это легко сделать на Google Code или github или SourceForge. Как быть, если кодом делиться не хочется?

UPD. Инструкция верна, но есть путь проще - см. в конце.

1. Регистрируемся на BitBucket (можно зайти через гугл-аккаунт). Подтверждаем почту, выбираем пароль для доступа к репозиториям.
BitBucket позволяет сделать сколько угодно частных репозиториев, но к каждому доступ не больше пяти человек. Бесплатно.

2. Запускаем командную строчку. Если меркуриал не в %PATH%, делаем cd C:\Program Files\TortoiseHg (например) и set PATH=%CD%;%PATH%.

3. Переходим в папку с репозиторием cd C:\Path\Repo и запускаем hg serve.

Приложение А. Если у компа нет постоянного адреса в интернете, регистрируйтесь на DynDNS и полученные логин с паролем засуньте в рутер - почти все рутеры сейчас умеют сами обновлять DynDNS.

4. Пробросьте порт 8000 на рутере на свой компьютер. Убедитесь, что http://your-pc-name:8000 открывается.

5. В BitBucket сделайте "Импорт репозитория" и укажите этот адрес. Подождите немного. Ура, репозиторий со всеми правками сдублирован на битбакет.

UPD. Как показал в комментариях korrshun, гораздо проще создать пустой репозиторий и сделать из домашнего туда push. Оказывается, в репозиторий меркуриала можно пушить сколько угодно независимых веток 0__0, то есть, можно в один репозиторий слить несколько.

@темы: Компьютеры

14:45 

Tell me what I'm going to use it for

For those who didn't know, there's a new pascal-based compiler on a market for a while, and a pretty cool one at that. Enter RemObjects Oxygene.

It's Visual Studio-based, compiles to .NET, Android Java and iPhone Cocoa, resembles Pascal and implements the majority of its cool features like generics. Parts of language are redesigned, some for better, some for worse.

Cool feature. Even the main unit now has the interface/implementation sections.
namespace Application1;
interface
implementation
begin
Console.WriteLine("The magic happens here.");
end.

Uncool feature. initialization/finalization sections are no more. I guess you can kinda replace them with class constructors, but they were so much better.

Anyway.

The language is indeed pretty fresh, with support even for WinRT while Delphi has yet to convince Microsoft to let everyone else have a part of the cake. Turns out, the only way to do native WinRT applications is through using Microsoft Visual C++ Runtime. Ha-ha, funny joke Microsoft, you.

So I thought about playing with it for a change.
No, I'm not betraying Delphi just yet. It's still pretty cool, compiling to 64 bit and not being afraid of anything.

But sitting before the empty Oxygene project, I have found myself at loss at what to do.
Okay, it runs. It compiles Hello World, alright.
What next?

Turns out, when you encounter a new language, you have to have a few use cases for it. And since you usually don't know what this langage can do, it's better if someone suggests those for you.

@темы: Компьютеры

22:49 

Inc(i)

Все знают, что когда перебираешь null-terminated строки, то нужно останавливаться по нулю:
while pc^<>#00 do Inc(pc); //ищем конец строки
Все знают, что когда перебираешь дельфийские строки, нужно останавливаться, когда индекс превысит длину строки:
while (i<Length(s)) and (s[i]=' ') do Inc(i); //пропускаем пробелы
Все знают, что у дельфийских строк в конце всё равно ноль.
 74 00 65 00 73 00 74 00 00 00
Но не всем и не сразу приходит в голову, что длину дельфийской строки тоже часто можно не проверять!
Второй пример можно записать так:
while s[i]=' ' do Inc(i); //пропускаем пробелы
В конце строки ноль, а ноль - это не пробел, поэтому цикл сам собой прервётся.

Где надо быть осторожным - так это при промотке строки назад. В начале строки нуля нет:
while (i>0) and (s[i]=' ') do Dec(i); //пропускаем пробелы в обратную сторону

@темы: Компьютеры

13:36 

type и class

В Delphi можно написать:
type HexString = string;
Так мы отметим специальный тип строк, который хранит в себе hex. Но для компилятора они ничем не отличаются от обычных. Вот это скомпилируется нормально:
var a: HexString;
b: string;
begin
a := b;
end;
Что, если мы не хотим разрешать такое копирование? (А обычно мы должны не хотеть! Разные по смыслу вещи нельзя присваивать, это опасно). Компилятор можно попросить создать "независимый тип":
type HexString = type string;
Теперь строку типа HexString нельзя присвоить строке типа string, и наоборот.

Похожий приём работает с классами, только чуть иначе.
type
HexStringList = TStringList; //можно присваивать HexStringList -> StringList и обратно!
HexStringList = class(TStringList); //можно присваивать только HexStringList -> StringList, но не обратно!
Классы, в отличие от простых типов, поддерживают наследование. Более "частный" класс можно положить в переменную более общего, но не наоборот. Если мы объявляем тип без "class", то мы просто создаём для него другое имя: оба типа на самом деле одно и то же. А с помощью "class(TStringList)" мы говорим компилятору "HexStringList - это частный случай StringList, он от него наследует".

Но что, если мы напишем так?
type HexStringList = type TStringList;
Или так?
type HexStringList = type class(TStringList);
Ответы на это в следующий раз!

@темы: Компьютеры

void

главная