Pull to refresh
-17
0
Send message

Принципы работы IQueryable и LINQ-провайдеров данных

Reading time8 min
Views80K
Средства LINQ позволяют .Net-разработчикам единообразно работать как с коллекциями объектов в памяти, так и с объектами, хранящимися в базе данных или ином удаленном источнике. Например, для запроса десяти красных яблок из списка в памяти и из БД средствами Entity Framework мы можем использовать абсолютно идентичный код:

List<Apple> appleList; 
DbSet<Apple> appleDbSet;
var applesFromList = appleList.Where(apple => apple.Color == “red”).Take(10);
var applesFromDb = appleDbSet.Where(apple => apple.Color == “red”).Take(10);

Однако, выполняются эти запросы по-разному. В первом случае при перечислении результата с помощью foreach яблоки будут отфильтрованы с помощью заданного предиката, после чего будут взяты первые 10 из них. Во втором случае синтаксическое дерево с выражением запроса будет передано специальному LINQ-провайдеру, который транслирует его в SQL-запрос к базе данных и выполнит, после чего сформирует для 10 найденных записей объекты С# и вернет их. Обеспечить такое поведение позволяет интерфейс IQueryable<T>, предназначенный для создания LINQ-провайдеров к внешним источникам данных. Ниже мы попробуем разобраться с принципами организации и использования этого интерфейса.
Читать дальше →

Эта гениальная карта объясняет, как всё в физике подогнано друг к другу

Reading time2 min
Views60K

Источник изображения: DominicWalliman/YouTube

От пространства-времени до теории хаоса


Физика — огромная и сложная область знаний. Но кроме того, она ещё одна из самых захватывающих наук, потому что имеет дело с «чёрными дырами», «червоточинами», квантовой телепортацией и гравитационными волнами.

RabbitMQ против Kafka: два разных подхода к обмену сообщениями

Reading time18 min
Views354K

В прошлых двух статьях мы рассказывали об IIoT — индустриальном интернете вещей — строили архитектуру, чтобы принимать данные от сенсоров, паяли сами сенсоры. Краеугольным камнем архитектур IIoT да и вообще любых архитектур работающих с BigData является потоковая обработка данных. В ее основе лежит концепция передачи сообщений и очередей. Стандартом работы с рассылкой сообщений сейчас стала Apache Kafka. Однако, для того, чтобы разобраться в ее преимуществах (и понять ее недостатки) было бы хорошо разобраться в основах работы систем очередей в целом, механизмах их работы, шаблонах использования и основной функциональности.



Мы нашли отличную серию статей, которая сравнивает функциональность Apache Kafka и другого (незаслуженно игнорируемого) гиганта среди систем очередей — RabbitMQ. Эту серию статей мы перевели, снабдили своими комментариями и дополнили. Хотя серия и написана в декабре 2017 года, мир систем обмена сообщениями (и особенно Apache Kafka) меняется так быстро, что уже к лету 2018-го года некоторые вещи изменились.

Читать дальше →

О работе в Германии

Reading time12 min
Views73K
В этой статье я расскажу о том как собственно работается в Германии, какие коллеги попадаются, какие комбинации проворачивают немецкие корпорации, для грамотного распиливания бабла. Комбинаций, которым многим нашим чиновникам стоило бы поучиться.

К сожалению я никогда не работал на маленьких фирмах, поэтому будем считать, что все это относится к большим компаниям. О себе могу сказать лишь то, что я работал уже на 6-ти различных AG и прошел в Германии абсолютно все стадии эволюции: полугодовая практика на Daimler, работа Werkstudent’ом(Студенческая работа программистом), Junior, Middle, Senior.

Также, когда закончится вода, я расскажу о реальных зарплатах, ожиданиях, а также затрону тему мусора, которое льется из многих статей и видео, о работе программистом в германии. Большинство из того что вы можете увидеть и найти на youtube о работе разработчиком в Германии это рассказы людей, которые или пару лет находятся здесь, или вообще здесь никогда не были, или просто находятся в каком-то сказочном неадеквате.

А начну я с коллег которые вам будут встречаться везде — легкие русофобы.
Читать дальше →

Intel 8086 — процессор, открывший эпоху

Reading time8 min
Views46K

История создания легенды


Сегодня, в 2018 году, мы отмечаем сорокалетие, пожалуй, ключевого в истории персональных компьютеров процессора, а именно – Intel 8086.
image

Именно с него началась эпоха архитектуры x86, заложившей основы развития процессоров на многие годы и десятилетия вперед, именно ему мы обязаны взлету популярности компьютера как индивидуальной единицы, доступной каждому пользователю. В честь 40-летнего юбилея процессора, с которого началось превращение Intel в многомиллиардную корпорацию, компания представила небольшой символический подарок своим поклонникам — им стал юбилейный i7-8086K, первым процессором в истории Intel, способным работать на частоте 5 ГГц прямо из коробки.

image

Но сегодня мы не будем петь дифирамбы инженерам современных процессоров-лидеров, а вернемся в далекое прошлое, в 1976 год, где и началась история Intel 8086. И началась она с совершенно другого процессора.

Как стать дизайнером интерфейсов. Необходимые навыки и сильные инструменты, о которых нам не говорят

Reading time8 min
Views26K


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

Получив множество вопросов от молодых дизайнеров, я решил написать материал, который бы мечтал прочитать на старте своей карьеры. Он основан на личном опыте и уроках, полученных в общении с успешными дизайнерами из больших студий и продуктовых команд.

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

Тяжкое наследие прошлого. Проблемы командной строки Windows

Reading time28 min
Views79K
Предисловие от автора, Рича Тёрнера из Microsoft. Это статья о командной строке: от её появления и эволюции до планов капитального ремонта Windows Console и командной строки в будущих версиях Windows. Будь вы опытным профессионалом или новичком в IT, надеемся, что вы найдёте статью интересной.

Давным-давно в далёкой-далёкой серверной...


С первых дней развития информатики людям нужен был эффективный способ передавать компьютеру команды и данные и видеть результат выполнения этих команд/вычислений.

Одним из первых по-настоящему эффективных человеко-машинных интерфейсов стал Tele-Typewriter или «телетайп». Это электромеханическая машина с клавиатурой для ввода данных и каким-нибудь устройством вывода — сначала использовался принтер, позже экран.
Читать дальше →

То, чего еще никто не писал про Нокиа, Элопа и горящую платформу

Reading time40 min
Views551K
Взявшись за этот пост, автор полностью отдает себе отчет. И в том что «набило оскомину». И что «только ленивый не кинул камень». И про то что «хватит уже, достали». Однако, вдоволь начитавшись доморощенных и не очень аналитиков, автор решил все-таки выразить собственное мнение, которое отличается от того общепринятого, что с некоей мазохистской истомой доселе перепечатывалось здесь и тут различными авторами, интерпретаторами и переводчиками. Вероятно кому-то будет интересно его прочитать.

Традиционно, для тех кто не любит много буков, краткие (более-менее) тезисы:

  • Будучи долгое время лидером на рынке, Нокиа сильно расслабилась и загадила свою внутреннюю инфраструктуру бюрократией, чрезмерным аутсорсингом и огромным количеством бесполезной «менеджерской прослойки».
  • Будучи долгое время лидером, Нокиа просрала потратила много денег на ненужные операционные расходы, поглощения никому не нужных фирм и на невменяемую модель аутсорсинга.
  • Полностью оторвавшись от реальности с уходом Йормы Оллилла, Нокиа, под управлением гениального юриста CEO Олли-Пекки Каласвуо, потратила кучу денег и усилий на создание бесполезной и неконкурентоспособной сервисной инфраструктуры Ovi. В результате этого, помимо денег, Нокиа потеряла уйму полезного времени, которое можно и нужно было потратить на развитие основного бизнеса — телефонов, софта и т.д.
  • Бюрократия и непотопляемая менеджерская прослойка в Нокиа, последовательно мигрировала из одного передового проекта в другой, в составе одних и тех же групп лиц, самореплицируясь в виде кучи формальных дебилопроцессов комитетов и управленческих групп, немного перетасовываемых с учетом специфики. В итоге именно эта бюрократия убила и Symbian, и Ovi, и MeeGo и остальные попытки догнать уходящий поезд своими силами.
  • Борьба с бюрократией и прослойкой в Нокиа зашла в полный тупик.
  • У великого CEO Элопа просто не было другого выхода кроме как прибить всю старую, неповоротливую и прогнившую организацию, путем создания альянса с Майкрософтом и переходом на Windows Phone. Тем самым все старые процессы, компетенции, технологии и самое главное — люди резко стали, что называется, «не в тему». И следовательно тем самым можно было под благовидным предлогом прибить этот табун менеджеров, бесконечно рисующих фэнтезийные роадмапы с единорогами и перекладывающих бумаги с левого края стола на правый.
  • Новая Нокиа, после 2011 года и старая Нокиа до 2011 года – это две РАЗНЫЕ организации. Их объединяет только общее название и операционка S40 для телефонов Asha.
  • Горящая платформа, это не Symbian и не MeeGo. Горящая платформа, это то состояние в которое Нокиа загнали годы расслабленного лидерства и тупоголовые амбиции предыдущего CEO – Олли-Пекки Каласвуо с кликой подкаркивающих вице-президентов.
  • С бюрократией и бизнес процессами, имеющимися на 2010 год, Нокиа не спас бы ни Андроид, ни половина населения Бангалора, пишущих на Qt под MeeGo. Даже если бы Apple бесплатно передал Нокиа iOS и все сервисы, то они бы выродились руками всяких Requirement Managerов в типичные Нокийские дизайн-химеры и в итоге загнулись через какое-то время.
  • То, что сделал великий CEO Элоп – было единственно возможным разумным решением, дающим хоть какие-то шансы на выживание. Вопрос «каким образом он это сделал?», остается открытым, равно как и вопрос «поможет ли это Нокиа?» в итоге. Не следует забывать, что нынешняя Нокиа — это совершенно новая организация, поэтому глупо предполагать, что она разом вернет себе лидерство. Как и всем новым организациям ей придется за это лидерство долго бороться.
  • Без ошибок и побед Нокиа никогда не было бы ни Андроида, ни Айфона. И Google и Apple тщательно проанализировали достоинства и недостатки более старших конкурентов перед тем как шагнуть вперед.

Все это в деталях — под катом. Предупреждаю что клевых картинок там нет. Сплошное графоманство и ёрничанье.
Читать дальше →

Путеводитель по Швейцарии

Reading time42 min
Views93K
Приветствую, товарищи!

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

Пост будет очень объемный, потому что я хотел сделать эдакий мини-гайд по жизни в Швейцарии, по которому потенциальный тракторист сможет оценить страну. А тем, кто уже тут или собирается в ближайшее время, статья может помочь разобраться с местными особенностями — не всегда можно легко найти ответы на вопросы, особенно не зная язык.

Я решил не делить его на отдельные куски — так информацию искать будет проще. Надеюсь что не сильно нарушу тематику ресурса, пусть НЛО нас рассудит.


Flumserberg. Здесь и далее — обычно мои фотографии, которые мне показались более или менее приличными :)
Читать дальше →

Предсказания будущего в фильме «Космическая одиссея 2001 года»: 50 лет спустя

Reading time38 min
Views39K

Здесь и далее ссылки с кадров фильма ведут на видео с соответствующими сценами

Мимолётное видение будущего


Был 1968 год. Мне было 8 лет. «Космическая гонка» была в самом разгаре. Недавно в первый раз космический зонд опустился на поверхность другой планеты (Венеры [это была советская автоматическая межпланетная станция "Венера-3" / прим. перев.]). Я жадно изучал всё, что было связано с космосом.

Затем 3 апреля 1968 года (в Британии – 15 мая) вышел фильм "Космическая одиссея 2001 года", и мне очень хотелось его увидеть. Поэтому в начале лета 1968 я впервые в жизни попал в кинотеатр. Меня привезли посмотреть дневной показ, и я был практически единственным зрителем в зале. По сей день я помню, как сидел на плюшевом кресле и с нетерпением ожидал, когда поднимут занавес и начнётся кино.

Измерение vs Иллюзии

Reading time11 min
Views11K
Статья написана как для руководителей, так и для программистов, т.к. описанные методы применимы и для подчиненных, и для себя.

Сначала кратко методику (не все с ней работали), потом – главное, зачем ее применять.

Методика измерения


Сама методика известна давно, никакого секрета собой не представляет – это покер планирования из Scrum. Чтобы ее применять, не нужно применять весь Scrum.
Читать дальше →

tldr — альтернатива man с названием, говорящим за себя

Reading time4 min
Views28K
Все мы любим --help и man. Несмотря на появление многочисленных форумов, Stack Exchange и прочих ресурсов, хорошим тоном в начале решения своих проблем по-прежнему остаётся самостоятельный поиск ответа в официальной документации (и на этих ресурсах вам скорее всего об этом сразу напомнят). Однако лень продолжает двигать прогресс даже там, где не всегда того ожидаешь. Впрочем, это не только лень — бывают и другие аргументы в пользу «упрощений»…

В общем, оказалось, что классический man устраивает не всех. Поэтому появился проект tldr, который, следуя своей расшифровке «Too long; didn't read», решил принести в консоль лаконичную документацию, содержащую только самое главное. Проекту tldr уже больше 3 лет, но про него ещё почему-то не писали на хабре.

Читать дальше →

GraphQL — новый взгляд на API. Ч.1

Reading time4 min
Views44K
Всем привет, хочу поделиться накопленными знаниями по GraphQL, которые сформировались на основе около сотни прочитанных статей/доков и месяца построения API используя GraphQL.

Ну что ж, начнем с того, что такое GraphQL?


GraphQL — это стандарт декларирования структуры данных и способов получения данных, который выступает дополнительным слоем между клиентом и сервером.

Одной из основных фичей GraphQL является то, что структура и обьем данных определяется клиентским приложением.

Рассмотрим пример простого запроса пользователя.



Клиент точно указывает, какие данные он хочет получить, используя декларативную, графо-подобную структуру, которая очень напоминает формат JSON.
Читать дальше →

Энергонезависимое решение

Reading time10 min
Views123K


Понедельник. Постановка задачи


Девять часов тридцать одна минута утра — я на работе. Вообще-то мы работаем с десяти до семи, но по понедельникам я предпочитаю приходить пораньше — мне нравится наш офис, пока в нём нет людей. Я медленно иду мимо столов — одни завалены распечатками спецификаций и каких-то диаграмм, другие совсем пустые. На одних столах стоят компьютеры, другие пустые. Под некоторыми столами стоит сменная обувь, перед другими нет даже кресла. Да, у нас больше половины столов пустые — это на случай приёма новых сотрудников, или командировки кого-то из других городов и стран. Ведь у нас крупная международная компания с офисами разработки в Омске и Калачинске и головным офисом на Кипре. Мы занимаем четыре этажа в современном офисном центре. Правда, сразу за нашим зданием начинаются руины какого-то авиационного завода, и в день зарплаты мы стараемся там не ходить.
Читать дальше →

Привет из мезозоя

Reading time11 min
Views35K
image

Парадный портрет автора, заодно иллюстрирующий идею современной веб-разработки


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


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


Читать дальше →

Где логика? Учимся мыслить системно. Часть 1

Reading time10 min
Views33K

I Вступление


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

Эдгар Аллан По
Для людей, активно завоевывающих свое место в обществе, в помощь сейчас доступно достаточное количество литературы об ораторском искусстве, о проведении переговоров, о лидерстве и т.п. Но львиную долю этих трудов объединяет то, что в них во всех, авторы учат облюбованным ими методикам человеческих отношений, приемам влияния на людей и т.п. Это напоминает рецепты из поваренной книги: «отмерьте полстакана теории, сдобрите щепоткой логики, смешайте со смелостью по вкусу … подавать себя лучше слегка подогретым».

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

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

Итак, поехали…

Для проведения любого анализа, необходимо какая-то точка отсчета. А поскольку, на мой взгляд, стрежнем в отношениях людей все же является взаимопонимание, ну по крайней мере для успешных взаимоотношений, то давайте попробуем зацепиться именно за эту тему.
Читать дальше →

Почему хорошие люди покидают крупные IT-компании?

Reading time6 min
Views57K

Если ты хочешь построить корабль, не надо созывать людей,
планировать, делить работу, доставать инструменты.
Надо заразить людей стремлением к бесконечному морю.
Антуан де Сент-Экзюпери

Я встретился со своим бывшим студентом, который сейчас работает финдиректором в крупной IT-компании.  Эта компания все еще является одним из самых желанных мест работы в сфере IT.  Она производит железо со значительной долей инноваций во встроенном ПО и службах.

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

Лучше бы я этого не делал.

Переведено в Alconost
Читать дальше →

Вы ни черта не понимаете в цветах

Reading time3 min
Views72K

Это все розовый

Я думаю многие сталкивались с ситуацией, девушки пытаются убедить нас, что совершенно очевидно, что цвет ее белья вовсе не черный, а очевидно ониксовый или обсидианово-дымчатый. При том, что там явно #000000ff или максимум #080808d5, если белье слегка прозрачное. Или вдруг та же девушка внезапно решает перекрасить стены и начинает мечтательно описывать всю красоту оттенков, которые она хотела бы получить. И вы погружаетесь вместе с ней в чудесный мир лавандовых стен и пытаетесь определиться со шторами. То ли цвет пенящейся морской волны, то ли кораллово-бирюзовый. Где-то на этом этапе вы начинаете тоскливо смотреть на стену, размышляя о том, какой оттенок придаст ей ваш мозг после хорошего разбега.



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

Разбираем магнитно-резонансный томограф

Reading time14 min
Views218K

Квантовая физика, математика, биология, криогеника, химия и электроника сплелись единым узором, чтобы воплотиться в железе и показать настоящий внутренний мир человека, и даже, ни много ни мало, прочитать его мысли. Электроника таких аппаратов, по надежности и сложности может сравниться разве что с космической. Эта статья посвящается оборудованию и принципам работы магнитно-резонансных томографов.
Start Scan

Стандартная модель элементарных частиц для начинающих

Reading time5 min
Views81K
«Мы задаёмся вопросом, почему группа талантливых и преданных своему делу людей готова посвятит жизнь погоне за такими малюсенькими объектами, которые даже невозможно увидеть? На самом деле, в занятиях физиков элементарных частиц проявляется человеческое любопытство и желание узнать, как устроен мир, в котором мы живём» Шон Кэрролл

Если вы всё ещё боитесь фразы квантовая механика и до сих пор не знаете, что такое стандартная модель — добро пожаловать под кат. В своей публикации я попытаюсь максимально просто и наглядно объяснить азы квантового мира, а так же физики элементарных частиц. Мы попробуем разобраться, в чём основные отличия фермионов и бозонов, почему кварки имеют такие странные названия, и наконец, почему все так хотели найти Бозон Хиггса.
Читать дальше →

Information

Rating
6,116-th
Registered
Activity