Studay @ Digital October

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


И собственно сами участники мероприятия, которые в основном играли в XBox.




Метки:   Категории:microsoft


google plus search

Гугл анонсировал новый real-time search полностью скопированный с твиттера по функцилналу.

Для тех кро не верит информации, что гугл скопирует брендовые страницы с фейсбука, о чем я писал в предыдущем посте, то напомню, что информацию я почерпнул из личного разговора с AdewaleOshineye - представителем разработчиков google plus/

Метки:   Категории:Google


gdd2011

Небольшое видео мероприятия гугла ниже:

Из интересного расказали про goole plus, что скоро и там появятся страницы брендов. Также, что у них плотная интеграция с Chrome, поэтому если вы пользуетесь хромом, то вся информация о вас уже есть в Google plus хотите вы этого или нет.
На секции венчурных капиталистов "русские американцы" поделились, что основной минус ведения бизнеса в России - бюрократия, а основной плюс - можно легко людей увольнять.

Метки:   Категории:Google


bitl.y to T.CO

Сегодня Твиттер анонсировал, что скоро перейдет с Bit.ly на купленную ранее t.co, то есть 2 символа выигрыш. Смертью это Bitly не грозит, так как популярнейший сервис используется многими сайтами в том числе и под "выделенными" своими именами. Однако, видимо мне придется в т30п перейти тоже на t.co , чтобы более точно отслеживать количество кликов по топовому посту с учетом реакции микроблогов.
ЗЫ: следующим постом расскажу про google developers day 2011 и про google plus.

Метки:   Категории:Twitter


Аналитика по соц.сетям 2011

Свежий аналитический обзор за 2011 в PDF пользования соц.сетями в Америке.
Из интересного
1) Почти вся молодежь - 98% - сидит в соцсетях, то есть дальнейшего взрывного роста уже можно не ожидать?
2) Половина - сидят в фейсбуке.
3) При этом проводят в фейсбуке и твиттере заметно больше времени чем в GooglePlus. (непонятна методика подсчета, ибо в том же фейсбуке много перегрузок страниц, а в гугле и твиттере преобладают подгрузки через AJAX)
4) При этом из соц.сети 16%(в лидерах) трафика - это переход в поисковики. То есть люди имеют не все, что хотят в соц.сетях. При этом только 4% - переходы на медиа и новости, и 3% - на телевизионные каналы. Тут выводов не сделаешь.

Метки:   Категории:Analytics | Facebook


Azure news

Облачные вычисления микрософта продолжают идти в ногу со временем
Уже доступен AzureToolkit for Windows 8
Для стартапов сделана программа бесплатного Азура на год с экономией аж до 3500у.е., но не спешим радоваться, так как это как всегда не для России, а во вторых требуется оформление BizSpark и лицензионного MSVS+MSDN , что и есть дуриловом на примерно такие же деньги


Метки:   Категории:microsoft | news


bb AdSense

Выяснилась причина, по которой гугл втихаря крутил у меня в блоге рекламу 3 месяца, а показы незасчитывал. А вину этому стал пост http://t30p.livejournal.com/14701.html. В правилах гугла написано, что блокируются сайты, которые содержат либо 1) непристойные или провокационные изображения 2) материалы, содержащие грубую или ненормативную лексику, в том числе эротические рассказы 3) сексуальные советы или рекомендации 4) эротические игрушки и продукция и т.д. А именно этим наполнена блогосфера, особенно по пятницам. В общем 100 у.е. в год не стоят того, чтобы посетители видели объявления. Все, отключаю AdSense в блогах, а жаль, ведь планировал окупить платный аккаунт за год.

UPDATE: После публикации этой записи и отключения рекламы в AdSense, СУП тут же перевел мой блог t30p@lj в режим read-only за публикацию полгода назад поста про навального. Собственно текст разбирательства с конфликтной комиссией. И копия самого поста про навального.

Метки:   Категории:Blogs | Google


BE Themes contest

Разработчики BlogEngine заинтересованы в улучшении дизайна для BE и проводят конкурс на лучшую тему оформления для БЕ. В призах Xbox 360, да WP7. Если у кого есть желание поучавствовать, то пишите мне, подкину идей и просто денег на создание тем оформления блогов. А пока с верстальщиками шаблонов одни проблемы. Как только слышат ASP.Net, то сразу пропадают.

Метки:   


Amazon Browser

Амазон изобрел Opera Turbo и продвигает под брендом Silk. Перво-предшественником всего этого является простой RDP(удаленный десктоп) на VPS(виртуальный выделенный сервер) с мобильного телефона. И уже на сервере открывается браузер с сайтом. Так как амазон крупнейший поставщик виртуальных EC2 (считай тоже VPS), то он решил найти им применение через мобильный интернет.

Метки:   Категории:news


asp.net 4.5

Уже много хорошего было сказано про следующую версию asp.net , которая выйдет вместе с windows server 8.
Для тех кто пропустил. Вот видео про минимизацию и заметное ускорение открытия страниц. И вот еще общая концепция улучшений. Можно видеть, что большой упор сделан на асинхронные операции. В частности по получению ответов из WebResponse. Сейчас же приходится использовать много второстепенного кода для реализации асинхронного сичтывания. Ниже приведу фрагмент, который используется для асинхронной обработки ответов получаемых из ЖЖ. После нескольких ДДОС атак они стали параноидальными и включили в ответах chuncked, чтобы контролировать загруженность канала, поэтому синхронное считывание очень часто проваливается. Выход из этой проблемы реализуется следующим классом, который надеюсь станет неактуальным в 4.5:
Copy Source | Copy HTML
  1. #region Ассинхронное чтение из документации
  2.     public class RequestState
  3.     {
  4.         // This class stores the State of the request.
  5.         const int BUFFER_SIZE = 1024 * 256;
  6.         public StringBuilder requestData;
  7.         public byte[] BufferRead;
  8.         public HttpWebRequest request;
  9.         public HttpWebResponse response;
  10.         public Stream streamResponse;
  11.         public Encoding encoding;
  12.         public FileStream FileToWrite;
  13.         public RequestState()
  14.         {
  15.             BufferRead = new byte[BUFFER_SIZE];
  16.             requestData = new StringBuilder("");
  17.             request = null;
  18.             streamResponse = null;
  19.             encoding = Encoding.UTF8;
  20.             FileToWrite = null;
  21.         }
  22.     }
  23.  
  24.     class HttpWebRequest_BeginGetResponse
  25.     {
  26.         public ManualResetEvent allDone;
  27.         const int BUFFER_SIZE = 1024 * 256;
  28.         const int DefaultTimeout = 2 * 60 * 1000; // 2 minutes timeout
  29.  
  30.         // Abort the request if the timer fires.
  31.         private static void TimeoutCallback(object state, bool timedOut)
  32.         {
  33.             if (timedOut)
  34.             {
  35.                 HttpWebRequest request = state as HttpWebRequest;
  36.                 if (request != null)
  37.                 {
  38.                     request.Abort();
  39.                 }
  40.             }
  41.         }
  42.  
  43.         public RequestState ReadAsyncWebResp(HttpWebRequest myHttpWebRequest, string filepath)
  44.         {
  45.             // Create an instance of the RequestState and assign the previous myHttpWebRequest
  46.             // object to its request field.  
  47.             RequestState myRequestState = new RequestState();
  48.             allDone = new ManualResetEvent(false);
  49.             myRequestState.request = myHttpWebRequest;
  50.             //Open a file to write if needed
  51.             if (!String.IsNullOrEmpty(filepath))
  52.             {
  53.                 myRequestState.FileToWrite = File.Open(filepath, FileMode.OpenOrCreate);
  54.             }
  55.  
  56.             // Start the asynchronous request.
  57.             IAsyncResult result =
  58.               myHttpWebRequest.BeginGetResponse(RespCallback, myRequestState);
  59.  
  60.             // this line implements the timeout, if there is a timeout, the callback fires and the request becomes aborted
  61.             ThreadPool.RegisterWaitForSingleObject(result.AsyncWaitHandle, TimeoutCallback, myHttpWebRequest, DefaultTimeout, true);
  62.  
  63.             // The response came in the allowed time. The work processing will happen in the 
  64.             // callback function.
  65.             allDone.WaitOne();
  66.  
  67.             // Release the HttpWebResponse resource.
  68.             myRequestState.response.Close();
  69.             if (myRequestState.FileToWrite != null)
  70.             {
  71.                 myRequestState.FileToWrite.Close();
  72.             }
  73.             allDone.Close();
  74.             return myRequestState;
  75.         }
  76.  
  77.         private void RespCallback(IAsyncResult asynchronousResult)
  78.         {
  79.             try
  80.             {
  81.                 // State of request is asynchronous.
  82.                 RequestState myRequestState = (RequestState)asynchronousResult.AsyncState;
  83.                 HttpWebRequest myHttpWebRequest = myRequestState.request;
  84.                 myRequestState.response = (HttpWebResponse)myHttpWebRequest.EndGetResponse(asynchronousResult);
  85.  
  86.                 // Read the response into a Stream object.
  87.                 Stream responseStream = myRequestState.response.GetResponseStream();
  88.                 myRequestState.streamResponse = responseStream;
  89.  
  90.                 // Begin the Reading of the contents of the HTML page and print it to the console.
  91.                 IAsyncResult asynchronousInputRead = responseStream.BeginRead(myRequestState.BufferRead,  0, BUFFER_SIZE, new AsyncCallback(ReadCallBack), myRequestState);
  92.                 return;
  93.             }
  94.             catch (WebException e)
  95.             {
  96.             }
  97.             allDone.Set();
  98.         }
  99.         private void ReadCallBack(IAsyncResult asyncResult)
  100.         {
  101.             try
  102.             {
  103.  
  104.                 RequestState myRequestState = (RequestState)asyncResult.AsyncState;
  105.                 Stream responseStream = myRequestState.streamResponse;
  106.                 int read = responseStream.EndRead(asyncResult);
  107.                 // Read the HTML page and then print it to the console.
  108.                 if (read >  0)
  109.                 {
  110.                     if (myRequestState.FileToWrite != null)
  111.                     {
  112.                         myRequestState.FileToWrite.Write(myRequestState.BufferRead,  0, read);
  113.                     }
  114.                     myRequestState.requestData.Append(myRequestState.encoding.GetString(myRequestState.BufferRead,  0, read));
  115.                     IAsyncResult asynchronousResult = responseStream.BeginRead(myRequestState.BufferRead,  0, BUFFER_SIZE, new AsyncCallback(ReadCallBack), myRequestState);
  116.                     return;
  117.                 }
  118.                 else
  119.                 {
  120.                     responseStream.Close();
  121.                 }
  122.  
  123.             }
  124.             catch (WebException e)
  125.             {
  126.             }
  127.             catch (IOException eio)
  128.             {
  129.             }
  130.             //пофиг на ошибки. что скачалось, то скачалось
  131.             allDone.Set();
  132.         }
  133.     }
  134.     #endregion

Метки:   Категории:Code


WinAzure and PnP2011

На последней конференции микрософта PnP2011 пожалуй самым интересным было EntLib и WASABi для динамического масштабирования и вообще все что может потребоваться для логирования. Пока не пользовался, но выглядит внушительно.
В тему Windows Azure - выяснилось что есть важный параметр upgradeDomainCount в CSDEF, позволяющий поочередно обновлять инстансы, не пользуясь VIP опцией.
Другой важный параметр - <LocalStorage cleanOnRoleRecycle="true" sizeInMB="15000" /> - позволяющий выделить произольную папку для записи данных. Открытием стало, что пользоваться в asp.net, портированной в Azure папкой App_Data более нельзя, так как любая Role в Windows Azure имеет ограничение на 100Мб и это ограничение никак не поменять. Получить же путь к созданной папке, можно следующим образом:
Copy Source | Copy HTML
  1. if (RoleEnvironment.IsAvailable)
  2. {
  3.     return RoleEnvironment.GetLocalResource("MyStorage").RootPath;
  4. }

Метки:   Категории:microsoft


Like LJ?

По многочисленным просьбам убираю из блога ЖЖ (topbloger) в начале поста кнопки лайка (lj-like). Во-первых, ЖЖ не смогла за 2 месяца починить RSS выдачу, чтобы дурацкое слово Tweet не появлялося. Во-вторых, размещение рекламных блоков AdSense в блоге провалилось и мне рельно безразницы в денежном отношении расшаривают ТОПы или нет и растет посещаемость или нет. Проблема рекламных блоков AdSense в том, как я упомянал ранее, что после включения их в интерфейсе ЖЖ они успешно прокрутились 3 месяца, однако, ничего не было отражено в аккаунте AdSense по показам. Включение-выключение не помогло. Техподдержка Ж ответила, что ничем помочь не может. Ждем ответа гугла.

Но самая главная причина - это то, что эти дурацкие кнопки лайков действительно тормозят загрузку страницы. Ниже пример для кнопки гугла, которая добавляет 3 секунды. Прежде всего из-за того, что лезет к себе по httpS , но несмотря на все оптимизации обещанные гуглом, защищенное соединение нельзя закэшировать и оно заметно медленнее простого HTTP.

Для фейсбука проблема в том, что когда кнопок много на страницу, то все обращения идут по одному IP адресу , а браузер как мы знаем имеет ограничение на число парраллельных обращений к одному адресу. Что тоже дает потерю на 3 секунды, если у нас 10 кнопок рекомендовать на главной странице.


Метки:   Категории:topbot | Google | Facebook | t30p


f8 conference

Прошла конференция f8, где мы узнали, что профили переделали, добавили кучу новых кнопок для приложений и что теперь вся активность в приложениях будет появляться в ленте активностей ваших друзей. Концентрируются на 4х типах приложений - музыка, видео, новости, игры.
Некоторые моменты, которые стоит отметить:
1) Фейсбук еще плотнее влезает в данные, которые есть у других интернет бизнесов. Когда это была кнопка like - это казалось нормальным, а теперь бизнесы будут выгружать все ленту событий по пользователю.
2) CTO facebook'a сказал, что для приложений будет также считаться GraphRank по отношению к каждому пользователю. Этот ранк нужен , чтобы определять как часто информация этого приложения будет появляться в списке активностей твоих друзей. Иными словами, теперь надо будет ботами не только френдить друзей чела, но и использовать такие же приложения, что и разводимый аккаунт.
3) В списке партнеров фейсбука, показанных Марком была показана афиша.ру - видимо самый социальный сайт по фильмам в СНГ.

Метки:   Категории:Facebook | news


Видео про Yac2011

Парочка видео из Яндекса. Позже напишу про PnP.


Робот на YAC2011 from Flashr on Vimeo.


Метки:   


Про YAC2011

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

Единственное, что интересное, так это ЯндексБлоги. Удалось узнать, что последнее время они решают технические вопросы связанные с выросшей нагрузкой, поэтому и не выкладывают новых фишек. И видимо до нового года ничего не будет. Сейчас яндекс индексирует около 7 млн. постов в блогах в сутки, из них около 80% - это микроблоги на mail.ru, а еще 70% оставшегося - спам.

Метки:   Категории:Blogs | Yandex


Internet Explorer 10

Благодаря HTML5 следующий Internet Explorer 10 не будет поддерживать Flash, то есть будет запускаться по умолчанию без поддержки плагинов.
Как бы страшно это не звучало, но я достаточно долго пользуюсь Оперой с выключенными плагинами и надо сказать, что это не мешает, а наоборот, почти вся реклама получается заблокированной. Что же качательно видео на ютубе, то достаточно кликнуть раз по заблокированной области, чтобы видео (или Flash) начал играть.

PS: По телеку крутят адский ад, И НТВ и первый канал начали дружно мочить Ройзмана и Прохорова. Рекомендую вместо юмористических вечерних передачь.

Метки:   Категории:life


MSVS 11 , TFS 11 , .Net 4.5

По итогам конференции BUILD, где как многие знают была представлена новая Windows 8. Также были аннонсированы следующие инструменты разработки (MSVS 11 , TFS 11 , .Net 4.5), которые можно будет загрузить уже в пятницу. Статус у них пока DeveloperPreview. В общем читайте тут с картинками. Также завтра можно будет послушать, и надеюсь почитать-посомтреть доклад Mads'a "ASP.NET optimization talk". PS: все ссылки на новости по теме включая видео

Метки:   Категории:microsoft


Agava tango down

Только что упали все win VDS агавы. Пока новостей нет, но в месте с ними недоступны и t30p.ru . UPD: Были перебои электричества, где-то 3 часа потеряли.

Метки:   Категории:Blogs | bugs


СуперЗемля2

Европейцы объявили, что обнаружили вторую СуперЗемлю, а именно планету, на которой по всей видимости возможна жизнь ("life may be present"). HD 85512 b находится на расстоянии 35 световых года, обращается вокруг звезды за 60 дней и т.д. Предыдущее открытие было сделано 3 года назад. Это была Gliese 581 C в 20,5 световых годах от нас с периодом обращения в 16 суток. Как видно из описания основной механизм нахождения таких планет - изучение преломленного света при закрытии планетой от нас своей звезды. Поэтому вначале обнаруживаются планеты с малым периодом обращения. Утверждается, что в ближайшие 20 лет нас ждет еще несколько открытий подобных планет.

Метки:   Категории:news


Power Shell from Windows Service

Некоторые особенности с организацией вызова PowerShell на WindowsServer 2008R2, для выполнения произвольного скрипта

1) Ставим PowerShell, через стандартную установку Features для WindowsServer, далее пишем примерно такую функцию
2) Важно, что ей можно передовать разовые команды, а можно имя файла, который нужно исполнить, для этого useScript ставим в true.
3) Вторая особенность неочевидна, так как PS выполняется в отдельном потоке под .Net 2.0 , а у вас .Net 4.0, то все токены прав потеряются, во избежание этого вы в приведенной выше функции указываем исполнять PS в том же потоке, что и текущий код (runspace.ThreadOptions = PSThreadOptions.UseCurrentThread;).
4) Следующей командой важно разрешить выполнение скриптов в отдельном файле. Так как по умолчанию это запрещено (scriptInvoker.Invoke("Set-ExecutionPolicy Unrestricted");).
5) И в завершение важно помнить, что PS выполняется с рабочей директорией System, которая отлична от вашей текущей, поэтому все относительные пути в файле скрипта могут не работать.


Метки:   Категории:microsoft | Code


Кто я?

Программист. Я слежу за блогосферой и знаю, как будет развиваться интернет. Когда у меня есть время я даже прилагаю для этого усилия. Подробнее

Последние комментарии

Не отображать

Topbot at FeedsBurner

Мои Твиты

Twitter августа 20, 10:35
Где искать инопланетян или как зародилась жизнь http://dlvr.it/PgKlxl https://twitter.com/f1ashr/status/899218224268451842/photo/1

Twitter августа 16, 13:24
Меч короля Артура установили в Киеве http://dlvr.it/PfStTW https://twitter.com/f1ashr/status/897811213312114688/photo/1

Twitter августа 13, 10:22
The Samsung Galaxy S8 Giveaway | TNW Deals https://deals.thenextweb.com/giveaways/samsung-galaxy-s8?gid=1541200 via @TNWDeals

Twitter августа 9, 12:32
По игре престолов небольшая схема http://dlvr.it/Pcs9BD https://twitter.com/f1ashr/status/895261436863168512/photo/1

Twitter июля 28, 13:19
Мир Дикого Запада 2-й сезон http://dlvr.it/PZ8Pb8 https://twitter.com/f1ashr/status/890924587562565632/photo/1

Twitter июля 28, 12:54
Рутин тутин Путин http://dlvr.it/PZ8860

Twitter июля 28, 12:21
Лайков ноль - один репост - Голос Омерики http://dlvr.it/PZ7r42 https://twitter.com/f1ashr/status/890909982220099584/photo/1

Twitter июля 28, 11:47
Что смотрят на Youtube http://dlvr.it/PZ7WN6

Twitter июля 28, 10:47
Идеальное решение для Курильских островов http://dlvr.it/PZ6z7t

Twitter июля 28, 10:47
Instagram закрывает API http://dlvr.it/PZ6z6g

Twitter июля 21, 09:02
Новости Америки - смерть Честера и посол Лесник http://dlvr.it/PXJD32

Twitter июля 19, 21:14
☠Разбор сериала Американские боги (1й сезон) http://dlvr.it/PWtYJ2 https://twitter.com/f1ashr/status/887782628924968960/photo/1

Twitter июля 16, 17:11
Давай же оторвемся, как в 1986 http://dlvr.it/PW1Dfj

Twitter июля 12, 21:05
читать спутник и погром бесплатно http://dlvr.it/PV81Dt

Twitter июля 10, 20:44
Разбор сериала Кремниевая долина (Silicon Valley) http://dlvr.it/PTdGJk https://twitter.com/f1ashr/status/884513586814439424/photo/1

Twitter июля 9, 15:34
Heineken 0 0 http://dlvr.it/PTLNKG

Twitter июля 7, 11:13
Роскомнадзор планирует заблокировать IP сайта t30p http://dlvr.it/PSsvCq

Twitter июля 2, 10:35
Добродел обновился http://dlvr.it/PRdlv1 https://twitter.com/f1ashr/status/881461233085366272/photo/1

Twitter июня 28, 09:48
Самоуправляемые ездящие картошки http://dlvr.it/PQfwZc

Twitter июня 28, 06:20
коломенский кремль: альтернативная история 2 http://dlvr.it/PQd671 https://twitter.com/f1ashr/status/879947652816814080/photo/1

Мой твиттер

Копирайт

Все мысли, высказанные в блоге, являются моим мнением и за это мнение меня никто не забанит! Кроме того, никто не имеет право копировать материалы блога без использования ctrl+C/V!

© Copyright 2008