background preloader

Interesting

Facebook Twitter

Thread Synchronization - UI Thread and Worker Thread. Introduction Have you ever faced any problem with your UI based application when you are making a long database operation or calling a long running service or making any network connections like connecting your CD drive, etc.? I think, your answer to this would be 'Yes' whereas you would have wanted your UI application to continue to respond to your actions while the above like operations going in the background, and to display the results on the UI as soon the background operations are completed.

I would like to have this, wouldn't you? Background The simple answer to this, is to create a multithreaded application and have different threads to manage different operations. People like to use the word “multithreading” when they talk in the context of software programming but it is not a simple task to write multithreaded programs. Till this point, it is not something new that I said, every one of us knows this . Worker Thread Taking the Control of UI MethodInvoker delegate: Conclusion History. C# - Background worker hangs whole application. C# - Calling synchronous methods asynchronously on the UI thread. C# - Using BackgroundWorker to update the UI without freezes... C# - method on backgroundworker - freezing GUI. C# - BackgroundWorker might be causing my application to hang. Блог на Exler.RU | Авторский проект Алекса Экслера.

С 7-й версии iOS только "хозяин" (то есть введенная учетная запись) может разблокировать планшет (айфон), если он объявлен утерянным/украденным. Это даже на презентации iOS7 преподносилось как новая ценная возможность: мол, теперь воровать айпэды нет никакого смысла. Возможность эта повернулась несколько неожиданной стороной. Некие мошенники в социальных сетях ищут пользователей айпэдов (по возможности - детей, как наиболее наивных) и предлагают им поделиться учетной записью, под которой, мол, можно скачивать платные приложения из AppStore совершенно бесплатно.

Кстати, такие учетки и в самом деле гуляют в социальных сетях: платишь небольшие деньги и получаешь учетку, под которой есть кучи купленных программ - и эта учетка ходит по различным пользователям. Но в данном случае как только ребенок выходит из своей учетки и входит с учеткой мошенника, тот тут же меняет пароль и удаленно вводит айпэд в заблокированное состояние как украденный. Подключение сторонних инструментов в IntelliJ IDEA на примере pylint.

В этом посте я хочу рассказать про довольно интересную фичу IntelliJ IDEA — подключение сторонних утилит, а также продемонстрировать её на довольно типичном примере: я подключу pylint — анализатор кода для python проектов. External Tools В IDEA есть интересная возможность использовать сторонние утилиты из интерфейса самой IDE. Добавлять таким образом можно всё что угодно — скрипты, анализаторы кода, средства рендеринга ресурсов и подсчета статистики. И IDEA предоставляет несколько крутых решений, обеспечивающих комфорт использования утилит, которые вы подключите. Ну что, попробуем подключить какой-нибудь тул? Pylint pylint — статический анализатор кода для python. Обычно pylint используют либо через консоль, либо через плагины, но вот для IDEA плагина нет. Если посмотреть на вывод программы, можно заметить, что каждое замечание относится к конкретной строчке кода и хотелось бы иметь удобную навигацию по файлам и строчкам.

Подключаем pylint к IDEA Посмотрим на результат запуска: It works! Символьная регрессия. При решении задач с применением методов машинного обучения, как правило, мы выбираем наиболее подходящий алгоритм в контексте задачи, а также способ настройки его параметров. Давайте рассмотрим несколько иной подход: вместо того, чтобы самостоятельно выбирать алгоритм, разработаем программу, которая способна автоматически генерировать алгоритмы для решения задач. Стохастический метод конструирования программ, основанный на использовании генетического алгоритма — называется генетическим программированием.

Несколько слов о генетическом алгоритме Генетический алгоритм – это метод оптимизации, в основе которого лежит идея естественного отбора как средства достижения наилучшего результата. Обобщённость формулировки предоставляет возможность использовать этот алгоритм для решения разнообразных задач. Генетическое программирование и символьная регрессия Достаточно удобным вариантом представления программы является синтаксическое дерево. Пример синтаксического дерева: Оптимизации Искомая формула. Dropbox: взгляд изнутри. В этой статье я расскажу о внутреннем устройстве популярного сервиса облачного хранения Dropbox.

В частности, будет затронуто устройство протокола Dropbox, а также показана статистика его использования в некоторых странах Европы. Кроме этого, я сравню его с другими сервисами, такими как iCloud, Google Drive и SkyDrive. Статья сугубо техническая. Не будет никаких сводных таблиц со стоимостью за Гб и анализом того, сколько еще можно получить за приглашенных «друзей». Текст основан на научной статье “Dropbox изнутри: Изучаем сервисы облачного хранения” (Inside Dropbox: Understanding Personal Cloud Storage Services). PDF В последние несколько лет произошел огромный скачок популярности сервисов облачного хранения данных. Вступление Dropbox клиент разработан в основном на языке Python с использованием сторонних библиотек, таких как librsync.

Основной элемент системы — это блок (chunk) размером до 4 Mb. Dropbox использует два типа серверов: управляющий (control) и сервер данных (data storage). ListView with Item-Hover Event. Download source - 12.2 Kb Introduction The ListView used by Microsoft Windows Explorer shows tool tips when a particular item is partly visible, saving the user the task of scrolling or resizing. Keeping this as my goal, I set out to achieve the same effect. All controls that derive from System.Windows.Forms.Control have a MouseHover event.

While there are events like ItemCheck, ItemActivate, ItemDrag, there isn't any event like the ItemHover. However, I quickly found out that it is very distracting after a while to see a series of tool tips flickering around on the screen. Armed with this information, the client can intelligently display more information about the partially hidden item, as seems fit. Longer lines of text wouldn't wrap around to display in the tool tip. Using the code A small example of how to use the control has been included in the form. Points The ListView can also be made to display its internal tool tip by setting its style to LVS_EX_INFOTIP. Ignoring the Wisdom of Crowds. Let’s start with some fascinating, unassailable facts.

Then we’ll assail them. Jellybeans In 2007 Michael Mauboussin presented a big jar of jelly beans to his seventy-three Columbia Business School students. How many beans did they think it contained? Guesses ranged from 250 to 4,100; the actual number was 1,116. Now here comes the weird part. So although individually everyone was woefully inaccurate, collectively the group was incredibly accurate.

Was this a fluke? This eerie effect goes beyond jelly beans; it’s also a big help when you’re trying to make money on TV. The best multiple-choice test, ever A contestant on the game show Who Wants to be a Millionaire can win a million dollars if she answers fifteen consecutive multiple-choice questions. The TV studio audience predicts the correct answer an astonishing 91% of the time.

To quantify how amazing that is, compare with the accuracy of the “phone a friend” life-line where the contestant gets 30 seconds with a pre-determined person.