Pull to refresh
0
0
Игорь @Fatkh

.NET

Send message

Как перестать бояться и полюбить системную биологию

Reading time6 min
Views13K

Об авторе


Автор нижеприведенной заметки родился в 1981-м году, чем поставил окончательный крест на секретной программе по евгенике в УССР, давшей миру так много тех, о ком он совершенно не просил. Родился в опасной близости от гидроэлектростанции Днепрогэс, ввиду чего одним из любимых занятий было писать на доске мелом слово «гидроэлектростанция». Другим любимым занятием автора был запуск самодельных ракет на основе сельскохозяйственной селитры, фольги и газет. Ввиду маниакальной склонности к доведению любого дела до конца автор продолжил заниматься своим хобби сначала на химическом факультете МГУ, а потом и в аспирантуре университета штата Мичиган. Получив степень Ph.D. в органической химии, автору неожиданно пришла в голову мысль, что не так интересна селитряная ракета, как та голова, которая ее придумала — или хотя бы то, что от нее осталось. Так автор увлекся биологией — сперва молекулярной динамикой протеинов, а потом и тем, что гордо зовется «системной биологией», чем и промышляет сейчас в медицинской школе Университета Вашингтона в Сент-Луисе.

Молекулярная биология на данный момент представляет из себя типичный фронтир, научный эквивалент Калифорнии времени Золотой Лихорадки (все же читали Джека Лондона, да? Нет, не «До Адама», там про программистов). А ведь как все мы усвоили из художественной литературы, Дикий Запад — это не только жуткие болезни, скальпы, беспорядочная стрельба, беспринципность, звериная жестокость, грязь, вонь и бескультурье, а еще и возможность заработать себе на жизнь несколько монет, показать свое беспримерное мужество, и, вообще, хорошо провести время. Надеюсь, эта заметка раззадорит вас, и вы тоже рискнете намыть немного золотишка.

Нижеследующий текст можно рассматривать как короткую и несерьезную зарисовку о современном положении дел в системной биологии.
Читать дальше →
Total votes 25: ↑22 and ↓3+19
Comments14

Как устроен ConcurrentBag в .Net

Reading time6 min
Views37K
Среди concurrent коллекций наибольшей популярностью пользуется ConcurrentDictionary. Также часто исползуются ConcurrentQueue и ConcurrentStack.

Вообще, решение локкирования частей коллекции для thread-safe хеш-таблицы является очень простым, логичным и оттого ещё более красивым.

Структура ConcurrentDictionary даже была описана в статье на хабре Под капотом у Dictionary и ConcurrentDictionary. ConcurrentBag же является не столь популярной, так как используется в основном там, где реализуется паттерн Producer-Consumer. Причем данная структура наиболее оптимально работает тогда, когда один и тот же поток занимается добавлением и изъятием данных из коллекции. Почему так происходит, будет рассказано далее.
Читать дальше →
Total votes 39: ↑37 and ↓2+35
Comments4

Преимущества Common Lisp

Reading time15 min
Views34K
Лисп часто рекламируют как язык, имеющий преимущества перед остальными из-за того, что он обладает некоторыми уникальными, хорошо интегрированными и полезными фичами.

Далее следует попытка выделить набор особенностей стандартного Common Lisp, кратко и с примерами.

Эта статья, вероятно, будет больше всего полезна тем, кто имеет какой-то опыт в программировании, заинтересован лиспом и хочет лучше понять, что делает его таким привлекательным.

Текст по большому счёту основан на списке особенностей CL и обзоре CL Роберта Стренда (Robert Strandh).
Читать дальше →
Total votes 83: ↑78 and ↓5+73
Comments120

Асинхронный удар

Reading time5 min
Views16K
imageКак уже наверное кто-то догадался, в этой статье речь пойдет о сокетах, и фреймфорках облегчающих работу с ними. Недавно я начал работу надо новым проектом, онлайн игрой. Для таких проектов довольно критично время ответа от сервера, если это конечно не пошаговая стратегия, хотя и в этом случае пожалуй тоже. Так как же этого добиться при суровой ограниченности ресурсов?
  • Облегчить сервер от ненужной работы, например отрисовки самой странички, используя вместо этого javascript шаблонизатор.
  • Использовать хороший front-end, например nginx, учитывая пункт первый, динамики у нас нет, и это нам вполне подходит.
  • Распределяя нагрузку на frontend, например используя Tornado.

Остался самый главный вопрос, что будет происходить когда пользователь совершает какое-либо действие? Обычные ajax запросы не подойдут, вполне понятно почему. Поэтому нам на помощь приходят сокеты.
Читать дальше →
Total votes 52: ↑47 and ↓5+42
Comments59

Использование Microsoft Bing Translator API в своем приложении

Reading time5 min
Views9.7K
Добрый день!

Иногда возникает потребность в переводе данных, введенных пользователем на сайте (для генерации ЧПУ на сайтах, при мультиязычном контенте и т.п.). Так как API Google Translate на данный момент доступен только за деньги, в качестве решения проблемы может использоваться Bing Translator API.
Читать дальше →
Total votes 25: ↑22 and ↓3+19
Comments6

Information

Rating
Does not participate
Location
Минск, Минская обл., Беларусь
Date of birth
Registered
Activity