Задачки на собеседованиях от Parallels

Сейчас мне на глаза попался журнал Хакер, в котором были задачки с собеседований от Parallels, и я удивился, на сколько они оказались простыми. 

Первая задачка - человек побежал через тунель и на 1/4 пути услышал гудок поезда. Известно, что если он побежит обратно, то встретит поезд на входе, а если побежит вперед, то на выходе. Вопрос, во сколько быстрее едет поезд, если все движутся с постоянной скоростью. 

Неизвестно, на каком расстоянии от входа в тунель находится поезд, да и не нужно. Главное, что человек находится на 1/4 пути. Если побежит обратно, то за эту 1/4 пути поезд как раз дойдет до входа. А если побежит в другую сторону? То через 1/4 пути человек окажется уже посередине туннеля, а поезд на входе. Включаем сложнейшие математические расчеты и смекалку и приходим к выводу, что поезд движется в два раза быстрее, ведь с этого момента за одно и то же время он пройдет весь туннель, а человек только оставшуюся половину, чтобы встретиться на выходе.

Миллиард установок на Windows 10

Во время Build 2015 несколько раз Microsoft давила на то, что через два года они планируют добиться миллиарда установленных Windows 10. Реальная эта цифра или нет? Я думаю, что да, ведь они считают не только компьютеры, а все устройства на этой платформе, куда входят планшеты, телефоны и даже Xbox One. И если планшетом и телефонов не много, то Xbox One уже продано около 15 миллионов. 

Через два года Xbox может быть продано до 50 миллионов, ведь консоль постепенно дешевеет и когда она упадет в цене до 300 баксов, ее будут покупать четь веселее. 

Остальную массу в установках конечно же займут компьютеры. Нужно всего лишь набрать 950 миллионов установок. Вполне реально. Microsoft планирует раздать на халяву эту ось даже обладателям пиратских версий, а эти версии точно никто не может предсказать. А если люди поставили нахаляву Windows 8, то уж Windows 10 они точно поставят. Да и старые компьютеры обновят. Лично я свой старый компьютер точно обновлю до Windows 10, особенно бесплатно.

Автопробег в Канаде

На прошлой неделе в Торонто прошел благотворительный автопробег, на котором собирались средства для празднования дня победы в Торонто. На него собралось около 150 машин. Фотографии некоторых из них можно увидеть здесь

А здесь можно увидеть видео с автопробега. На нем почти в самом начале засветилась и моя машина. 

О Канаде за рулем, часть 1

Меня уже давно просили записать какие-нибудь подкасты или открыть канал на Youtube. Уверен, что это не будет пользоваться популярностью, но сейчас у меня iPhone позволяет уже записывать видео, и я решил попробовать что-то такое. По субботам я часто езжу на футбол в Торонто и по дороге буду записывать видео, в которым для начала буду говорить о Канаде, а потом добавим различные ИТ темы. 

Microsoft становится добрым и OpenSource

Кто бы мог подумать, что Microsoft когда-то станет OpenSource компанией? Еще лет пять назад я бы в ответ на такое заявление сказал бы - да вы только что приехали из Казахстана и обкурились непонятно чем. 

Сейчас Microsoft уже делает достаточно много в пользу открытого исходного кода и большая часть .NET уже открыта для всех. Компания не так много принимает код от народа, но как я понял, идеи по улучшению воспринимает всегда хорошо. 

Начиная с Windows 10 вроде бы как появляется совместимость с Wndroid и iOS. Я такое мог представить себе только в самом страшном сне. Раньше Microsoft все делало свое. Появился JavaScript? Билл Гейтс создал VBScript. Появилась возможность запускать Java приложения в браузере? Получите ActiveX компоненты внутри IE. 

О Канаде за рулем, часть 2

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

.NET Native где же ты был раньше

С помощью компилятора .NET Native можно будет компилировать в машинный код под определенную платформу - x86 или x64 или ARM. И тут возникает вполне резонный вопрос - а где вы были раньше? 

До недавнего времени .NET хоть и был создан с возможностью поддерживать несколько платформ, но всё же официально работал только на x86 или x64 и только под Windows. Остальное поддерживалось только независимыми разработками. При таком раскладе я не понимаю, зачем Microsoft все это время компилировала .NET приложения в IL код, если никогда не планировали запускать его где-то, кроме Windows на Intel совместимых процессорах. Получается, они осознано и бессмысленно тормозили свои же программы на .NET и не получали от этого реальной выгоды.

Windows снова будет Windows

Скачал себе видео с конференции Build, которую я не смог посмотреть в онлайн из-за работы, и теперь смотрю видео на экране iPhone 6. А что, оно смотрится на этом экране так же прекрасно, как и на других платформах. Надеюсь, что это не грех в наше время. 

Зато я эту заметку пишу в Microsoft OneNote, так что можно меня простить. Правда OneNote установлен на iPad. 

Дальше идет мой немного вольный перевод отрывка презентации.

Почти в начале вступительного слова второго дня David Treadwell, рассказал, как он с корешками из Майкрософт взяли пива и завалились к Биллу Гейтсу, чтобы обсудить новую версию Windows. Ну ладно, я немного преувеличиваю, они завалились без пива. 

Когда закончил компиляцию

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

У меня два монитора и пока идет компиляция я часто что-то делаю на втором из них. Когда оборачиваюсь обратно через короткий промежуток времени, а сборка закончена, то прям аж теряюсь, а запускал ли я сборку или просто отвернулся от монитора. 

Было бы удобно выводить в окно Output в конце компиляции время окончания. Я эту проблему для себя решил добавлением в пост билд команду PowerShell для вывода текущего времени.

Мир переворачивается с .NET Native

Еще лет 7 назад (я еще тогда жил в России) я говорил, что в будущем мир может перевернуться и .NET станет основой для Windows. Вот это день настает, потому что скоро C# код можно будет компилировать в родные команды процессора. Никаких промежуточных IL. C# уже основной язык даже у самой MS.

Сегодня скачал с Channel9 видео о .NET Native, чтобы побольше узнать что и как будет работать и в этом видео менеджера проектов расспрашивали о преимуществах нового подхода. В основном говорили на примерах мобильных платформ, но я надеюсь, что это будет работать и на десктопных приложениях. 

Да, для телефонов и планшетов возможность запускать приложения сразу же из машинных инструкций является практически критичной, потому что не нужно компилировать  код налету и это сохранит батарею и увеличит скорость запуска. Но ведь уже сейчас все приложения для AppStore компилируются в дополнительно промежуточный код. Я не помню как он точно называется, но что-то типа Machine Dependancy IL. Для конечного железа остается работы совсем чуть чуть, чтобы только навести связи. 

О блоге

Программист, автор нескольких книг серии глазами хакера и просто блогер. Интересуюсь безопасностью, хотя хакером себя не считаю

Обратная связь

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

Пишите мне