Pull to refresh
10
Karma
0
Rating
Александр @hasalex

User

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

Reading time 15 min
Views 38K
.NET *C# *
Sandbox
Доброго времени суток.

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

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

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

Reading time 6 min
Views 83K
MySQL *SQL *
Дополнение к циклу переведенных статей.
Статьи: 1-3, 4-6, 7-9, 10-13, 14-15


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

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


Введение.


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

FFmpeg. Трюки и хитрости

Reading time 3 min
Views 26K
Working with video *
Sandbox

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

Читать далее
Total votes 97: ↑94 and ↓3 +91
Comments 60

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

Reading time 9 min
Views 48K
Personnel Management *IT career
Translation
Недавно я провёл 600-е собеседование на interviewing.io (IIO). Хотелось бы поделиться опытом, рассказать, как я подхожу к интервью, и пролить свет на типичные проблемы у кандидатов. Каждый интервьюер на IIO индивидуален, поэтому ваши результаты могут отличаться. У нас на платформе сформировалось замечательное сообщество, где каждый работает над улучшением своих знаний, навыков и результатов интервью.

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


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

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

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

Reading time 6 min
Views 30K
VDSina.ru corporate blog Development Management *Personnel Management *IT career


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

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

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

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

Reading time 4 min
Views 8.4K
Website development *Programming *C++ *Algorithms *CPU
Translation
Текстовая строка — один из самых распространённых «типов данных» в программировании. Когда программисты думают о строке, то представляют список или массив символов. Это «достаточно хорошее» приближение, но реальность сложнее.

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

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

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

Reading time 6 min
Views 4.4K
Health
Translation

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

Читать дальше →
Total votes 13: ↑12 and ↓1 +11
Comments 4

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

Reading time 26 min
Views 37K
Development Management *Project management *Freelance
Я занимаюсь мобильной разработкой в статусе ИП вот уже полтора года. За это время пришлось поработать с разными людьми. После одного досадного случая, я решил, что мне необходимо усилить навыки общения с заказчиками и отстаивания своих интересов. Я попытался собрать свой опыт и опыт своих коллег. В результате получилось что-то вроде методических указаний для фрилансеров. Начинающих и не только.
Читать дальше →
Total votes 29: ↑21 and ↓8 +13
Comments 10

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

Reading time 8 min
Views 37K
Мосигра corporate blog System Analysis and Design *Game development *


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

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

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

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

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

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

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

Reading time 28 min
Views 183K
CloudMTS corporate blog Website development *Programming *Game development *Development for e-commerce *
Translation
Сегодня мы представляем вашему вниманию адаптированную подборку инструментов (в том числе облачных) для разработчиков, которые позволяют создавать по-настоящему качественные проекты. Здесь представлены исключительно SaaS, PaaS и IaaS сервисы, предоставляющие бесплатные пакеты для разработчиков инфраструктурного ПО.

Читать дальше →
Total votes 96: ↑89 and ↓7 +82
Comments 38

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

Reading time 6 min
Views 87K
Open source *Programming *Qt *

Вступление


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

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

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

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

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

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

Reading time 8 min
Views 254K
Design Computer hardware History of IT Old hardware Desktop PC's
Привет, Хабр!

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

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

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


image image image

Читать дальше →
Total votes 140: ↑130 and ↓10 +120
Comments 213

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

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



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

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

Reading time 4 min
Views 402K
Health

Предисловие


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

«Воскрешаем» HDD

Reading time 3 min
Views 605K
Computer hardware Data storaging
Sandbox
Хочу поделиться опытом восстановления жесткого диска Seagate Barracuda 7200.11 ST3500320AS после сбоя. Короткая предыстория: один мой друг решил сделать полное форматирование своему жесткому диску, после чего тот больше не определялся в BIOS. Выкидывать 500-гигабайтный винчестер было жалко, и он отдал жесткий диск мне на растерзание. Забегая наперед, скажу, что прокачанные навыки «гугление» и «очумелые ручки» позволили добиться отличных результатов.
Читать дальше →
Total votes 107: ↑102 and ↓5 +97
Comments 55

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

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

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

Reading time 11 min
Views 287K
History of IT Games and game consoles
Случилось это в городе, закрытом от шпионов, цыган и бед социалистической экономики. В Советском Союзе было ровно 10 таких городов, повязанных атомным секретом.

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

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

Pole Chudes для iPhone

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

Читать дальше →
Total votes 933: ↑923 and ↓10 +913
Comments 311

Обрабатываем картинки средствами Photoshop и ExtendScript Toolkit

Reading time 11 min
Views 40K
IT-companies
Часто нам бывает надо сделать что-то с пачкой картинок. Есть несколько способов добиться этого:
  • используя ImageMagick – очень удобная консольная утилита, много чего умеющая
  • на The GIMP – там есть Scheme (диалект lisp-а) и Python
  • штатными средствами: PHP+gd / Powershell+System.Drawing / Python + PIL
  • в photoshop-е на JScript, VBScript или AppleScript
Плюсы минусы последнего способа рассмотрим под катом. В качестве бонуса посмотрим на недокументированное API Photoshop-а.
Читать дальше →
Total votes 42: ↑34 and ↓8 +26
Comments 36

Information

Rating
Does not participate
Location
Чапаевск, Самарская обл., Россия
Registered
Activity