Как стать автором
Обновить
10
0
Александр @hasalex

Пользователь

Отправить сообщение

Виртуализация данных в WPF

Время на прочтение15 мин
Количество просмотров39K
Доброго времени суток.

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

Не нашел на хабре пост посвященный данной теме, поэтому представляю вам свой перевод статьи Пола МакКлина, которая стала отправной точкой в решении поставленных задач.
Читать дальше →
Всего голосов 31: ↑31 и ↓0+31
Комментарии14

Руководство по проектированию реляционных баз данных. Каскадное удаление данных

Время на прочтение6 мин
Количество просмотров92K
Дополнение к циклу переведенных статей.
Статьи: 1-3, 4-6, 7-9, 10-13, 14-15


Информация в статье относится к 5-й части руководства.

В комментариях один из пользователей небеспричинно упрекнул в отсутствии информации о каскадном удалении данных. Восполняю пробел. У автора статей нет информации на эту тему, поэтому я написал небольшую статью об этом. Она достаточно логично впишется в указанный цикл.
Для начала, чтобы не было путаницы, стоит сказать, что речь не столько и не только о каскадном удалении данных, а о теме ссылочной целостности и внешних ключах, частью которой и является каскадное удаление данных.


Введение.


Если отталкиваться от обывательской позиции человека, который разрабатывает базы данных, то внешние ключи – это удобно и упрощает жизнь (в большинстве случаев, всегда есть исключения.). Даже будучи невеждой в реляционной теории баз данных, к осознанной необходимости использования внешних ключей, на определенном этапе своего развития, приходит практически любой практик (утверждение — более относится к начинающим), который не стоит на месте в своем развитии и продолжает мыслить. Даже если он еще не знает, что то, что ему нужно называется связью по внешнему ключу, он начинает самостоятельно организовывать данные определенным образом, разбивать на отдельные таблицы и связывать их между собой. Настолько это становится очевидным.
Но при использовании внешних ключей, даже если не знать такого определения, возникает необходимость следить за связываемыми данными. Рассматриваемым объектом данной статьи является, если так можно сказать, своеобразный спутник, который следует за такой организацией данных. И в данном случае уже гораздо полезнее знать теорию, т.к. это может значительно упростить жизнь в процессе работы с базой данных.
Читать дальше →
Всего голосов 15: ↑12 и ↓3+9
Комментарии2

Я провёл более 600 технических интервью — и вот пять проблемных мест, которые я заметил у кандидатов

Время на прочтение9 мин
Количество просмотров49K
Недавно я провёл 600-е собеседование на interviewing.io (IIO). Хотелось бы поделиться опытом, рассказать, как я подхожу к интервью, и пролить свет на типичные проблемы у кандидатов. Каждый интервьюер на IIO индивидуален, поэтому ваши результаты могут отличаться. У нас на платформе сформировалось замечательное сообщество, где каждый работает над улучшением своих знаний, навыков и результатов интервью.

Пробное интервью на interviewing.io


Мы оцениваем людей по трём четырёхбалльным шкалам. Оценка «один» означает плохой результат, а «четыре» — очень хороший. Я обычно вначале даю кандидату три балла, а затем прибавляю/отнимаю очки по мере интервью.

Каждый интервьюер отдаёт предпочтение какому-то одному аспекту. Лично я проявляю некоторую предвзятость в сторону скиллов «общение» («коммуникация») и «решение проблем», которые мы обсудим ниже.
Читать дальше →
Всего голосов 62: ↑57 и ↓5+52
Комментарии47

Никто не умеет управлять программистами — и все придумывают костыли, вместо решений

Время на прочтение6 мин
Количество просмотров30K


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

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

Если коротко — все ещё хуже, чем выглядело со стороны.
Читать дальше →
Всего голосов 93: ↑65 и ↓28+37
Комментарии103

Исключительно быстрая валидация UTF-8

Время на прочтение4 мин
Количество просмотров9.1K
Текстовая строка — один из самых распространённых «типов данных» в программировании. Когда программисты думают о строке, то представляют список или массив символов. Это «достаточно хорошее» приближение, но реальность сложнее.

Символы должны быть каким-то образом закодированы в биты. Большинство строк в интернете, включая этот пост на Хабре, закодированы в UTF-8. Формат UTF-8 представляет «символы» в одном, двух, трёх или четырёх байтах. Это обобщение для стандарта ASCII, использующего только один байт на символ. То есть строка ASCII также является строкой UTF-8.

На самом деле всё немного сложнее, потому что технически UTF-8 описывает кодовые точки. Видимый символ типа эмодзи может состоять из нескольких кодовых точек… но большинству программистов эти педантичные формулировки не нужны.
Читать дальше →
Всего голосов 27: ↑27 и ↓0+27
Комментарии47

Вы не можете сделать всё, и это нормально

Время на прочтение6 мин
Количество просмотров4.6K

Вы ответственный человек — человек, на которого можно положиться, который сделает всё, что от него ожидается и даже больше. Поздравляю! Тут есть ещё кое-какая работа для вас.

Читать дальше →
Всего голосов 13: ↑12 и ↓1+11
Комментарии5

Как общаться с заказчиками и договариваться о проектной работе

Время на прочтение26 мин
Количество просмотров39K
Я занимаюсь мобильной разработкой в статусе ИП вот уже полтора года. За это время пришлось поработать с разными людьми. После одного досадного случая, я решил, что мне необходимо усилить навыки общения с заказчиками и отстаивания своих интересов. Я попытался собрать свой опыт и опыт своих коллег. В результате получилось что-то вроде методических указаний для фрилансеров. Начинающих и не только.
Читать дальше →
Всего голосов 29: ↑21 и ↓8+13
Комментарии10

Как мы проектируем и прототипируем всякую фигню

Время на прочтение8 мин
Количество просмотров37K


Главный враг раздолбайства — план.

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

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

Подобный подход рождает несколько довольно странных выводов. Например, если речь идёт о новом сайте – явно, что все тексты должны быть готовы до начала работ по дизайну. При работе с игрой виртуальные прототипы (в симуляциях) работают только на последних этапах балансировки, вначале же куда важнее быстро собрать на бумаге. Если уж говорить шире, то мы знаем, что новый XCOM (и XCOM2) тестировали и тестируются как настолки, а потом уже гонятся на компьютер.

Может показаться, что прототипировать — это вроде как не очень нужно. Херак-херак — и в продакшн. На самом деле, это чертовски важно в любом процессе; например, по заветам юзабелистов — это 70% работы. Вопрос только в том, как это можно делать.

Я не претендую на истину в этом вопросе, и мне очень интересен ваш опыт. Давайте сначала расскажу, какие мы вывели для себя вещи в прототипировании, а потом попрошу вас рассказать о своих прототипах и процессах проектирования.
Читать дальше →
Всего голосов 46: ↑43 и ↓3+40
Комментарии49

Подборка бесплатных инструментов для разработчиков

Время на прочтение28 мин
Количество просмотров186K
Сегодня мы представляем вашему вниманию адаптированную подборку инструментов (в том числе облачных) для разработчиков, которые позволяют создавать по-настоящему качественные проекты. Здесь представлены исключительно SaaS, PaaS и IaaS сервисы, предоставляющие бесплатные пакеты для разработчиков инфраструктурного ПО.

Читать дальше →
Всего голосов 96: ↑89 и ↓7+82
Комментарии38

Развёртывание приложений Qt в Windows

Время на прочтение6 мин
Количество просмотров94K

Вступление


Добрый день, уважаемые читатели! Совсем недавно я завершил разработку одного своего приложения на Qt, и мне захотелось создать профессиональную программу установки, чтобы всё было «как у взрослых». Как оказалось, сделать это непросто, учитывая, что на официальном сайте инструментария информации по развёртыванию почти нет. В данной статье рассмотрены некоторые этапы подготовки программ на Qt версии 5.2 или выше для распространения на компьютеры других пользователей. Итак, вот план руководства:

  1. Подготовка проекта Qt к развёртыванию
  2. Компоновка дистрибутива программы
  3. Подписание кода и создание установщика

Не будем терять времени и приступим к работе.
Читать дальше →
Всего голосов 35: ↑32 и ↓3+29
Комментарии11

Большой Адронный Коллайдер своими глазами

Время на прочтение4 мин
Количество просмотров147K
Большинство, конечно, знают о существовании Большого Адронного Коллайдера и видели его фотографии, но вот вероятность посмотреть на него своими глазами для обыкновенного человека, я думаю, меньше, чем вероятность появления бозона Хиггса на этом самом коллайдере. Поэтому, когда летом на элементах.ру появилась маленькая заметка о том, что CERN (Центр Европейских Ядерных Исследований) в конце сентября проводит день открытых дверей, у меня не было сомнений — надо ехать.
Читать дальше →
Всего голосов 178: ↑176 и ↓2+174
Комментарии65

Советские персональные компьютеры

Время на прочтение8 мин
Количество просмотров267K
Привет, Хабр!

Мой первый компьютер был довольно мощным – процессор AMD Athlon 64X, 512 мегабайт оперативной памяти, видеокарта GeForce. И я никогда не прикасался к компьютерам времён СССР, и я был очень удивлён, когда узнал, сколько их было. В этом посте я собрал персональные компьютеры, разработанные и выпускавшиеся в странах социалистического блока в 1980-1990-х годах

У вас были компьютеры из представленных ниже? Пожалуйста, расскажите о своём опыте!

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


image image image

Читать дальше →
Всего голосов 140: ↑130 и ↓10+120
Комментарии213

Почти настоящий трансформер в масштабе 1:12

Время на прочтение1 мин
Количество просмотров103K
Японская компания Brave Robotics, которая говорит о себе, что она не компания, а «hobby robot researcher» выпустила почти настоящий трансформер. Только маленький.



Робот умеет трансформироваться из машины в антропоморфного робота и обратно, стрелять из рук и передавать то, что он видит, на планшет.
Видео работы
Всего голосов 83: ↑77 и ↓6+71
Комментарии52

Очень быстрый и эффективный способ расслабления глаз

Время на прочтение4 мин
Количество просмотров412K

Предисловие


imageНе знаю, все ли программисты всесторонне любознательные люди, но я всегда пытаюсь получить фундаментальные знания во всех областях, которые могут быть практически полезны. В то время, когда мне в голову пришла эта идея я изучал анатомию и физиологию по журналам «Тело человека. Снаружи и внутри», ну а по работе я занимался стерео-варио фотографиями (для тех кто не знает — были такие советские календарики с ребристой поверхностью, где картинка либо казалась объемной, либо менялась). Так вот, в один из вечеров мне пришла в голову замечательная идея, которую я на протяжении уже 4х лет использую для поддержания своего зрения.
Обещаю, что эффект почувствуете сразу!
Читать дальше →
Всего голосов 246: ↑238 и ↓8+230
Комментарии207

Открытые прошивки для DSLR Canon

Время на прочтение3 мин
Количество просмотров89K
Уже давно фотоаппараты являются, по сути, специализированными компьютерами. Например, в устройствах фирмы Canon используется процессор ARM и операционная система DRYOS. Естественно, у энтузиастов возникла идея модификации программной части этих фотоаппаратов. Хочу обрадовать обладателей устройств фирмы Canon серий 1100D, 500D, 550D, 600D, 50D, 60D, 5D Mark II. Теперь вы можете прошить свой аппарат, улучшив его функциональность. Получить устройство, которое обладает возможностями, включаемыми только в дорогую профессиональную фото и видеотехнику. А может быть, вооружившись ARM-Toolchain, разработать новые функции.
Читать дальше →
Всего голосов 74: ↑73 и ↓1+72
Комментарии88

История игрушки. Поле Чудес

Время на прочтение11 мин
Количество просмотров298K
Случилось это в городе, закрытом от шпионов, цыган и бед социалистической экономики. В Советском Союзе было ровно 10 таких городов, повязанных атомным секретом.

Жизнь мальчиков с математическими способностями в атомных городах была предопределена — школа с пятерками по алгебре и геометрии, мех-мат столичного университета, возвращение в систему, квартира через год, кандидатская степень в 40 лет, ВАЗ 2103 к пятидесяти годам, звание доктора, гараж, шесть соток, четыре квадратных метра.

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

Pole Chudes для iPhone

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

Читать дальше →
Всего голосов 933: ↑923 и ↓10+913
Комментарии311

Делаем веб-клиент GMail удобным

Время на прочтение3 мин
Количество просмотров52K
Если очень постараться, веб-клиент GMail-а можно довести до состояния, когда им более-менее приятно пользоваться. Вот как он выглядит у меня сейчас:



Под катом рассказ о том, какие особенности и как я использую.
Читать дальше →
Всего голосов 102: ↑86 и ↓16+70
Комментарии110

100 статей про разработку для Windows на русском языке

Время на прочтение4 мин
Количество просмотров11K
image

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

Полный список под катом
Читать дальше →
Всего голосов 112: ↑81 и ↓31+50
Комментарии72

Android x86 на Asus Eee PC 900

Время на прочтение2 мин
Количество просмотров94K

Зачем?


Принесла мне тётя с работы розовый нетбук, подаренный её дочкой, с проблемой «всё тормозит и не работает». А хочется, чтобы можно было и в интернете полазить, и фильмы посмотреть, и в простенькие игрушки поиграть. И так уж получилось, что нетбук был укомплектован уж очень медленным SSD. А так как Android у тёти есть на телефоне, то решено было ставить именно его — для интернета хватит.
Читать дальше →
Всего голосов 78: ↑73 и ↓5+68
Комментарии68
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Чапаевск, Самарская обл., Россия
Зарегистрирован
Активность