Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Как правильно сделать лимит на использование какой-либо функции в бесплатной версии приложения?

Лучший ответ:
самое правильное хранить на сервере, но можно в sharedpreferences ... да при удаление приложения счетчик слетит, но елси пользователю так нужно ваше приложение что он согласен сносить его и ставить несколько раз в день радуйтесь)  это потенциальные покупаетли, пусть уж лучше ваше приложение снаоят/ставят чем конкурента

Худший ответ:
Поместить этот счетчик на сервер.
Вопрос: Две разные видеокарты в один системник?

Лучший ответ:
можно кучу мониторов наподключать

Худший ответ:
В зависимости от используемых графических драйверов рекомендую:
1) Для открытых дров - AMD
2) Если не против поставить проприетарные - Nvidia
Ставить две имеет смысл только в том случае, если у вас будет виртуальная машина, куда вы захотите пробросить физическую видеокарту для игр. В противном случае при рядовом использовании вторая будет совершенно бесполезна.
Вопрос: Как увеличить размер баджей в хроме?

Лучший ответ:
Следующее обновление должно разрешить проблему, т.к. в .518-ой канарейке уже всё нормально:



Обновление же должно быть близко, т.к. с последнего прошло 2 недели.

Худший ответ:
Это баг: code.google.com/p/chromium/issues/detail?id=50129
Причем только для Windows, вроде бы.
Вопрос: Какая связь между DHCP и Multicast?

Лучший ответ:
Не, серьезно, Вы у провайдера работаете?

Худший ответ:
зазеркалить порт и посмотреть что этот "кинетик" пытается спросить
сравнить с нормально получающими адреса мыльницами
Вопрос: Какие есть альтернативы питону для консольных приложений?

Лучший ответ:
На линуксе? Скрипты? Bash, все остальное от лукавого.

Худший ответ:
python. интерфейсы и абстрактные классы накатываются библиотеками, а приватные методы есть из коробки, просто не такие к которым привыкли в других языках.
Вопрос: Графики как в google analytics?

Лучший ответ:
Google Chart API: code.google.com/intl/en/apis/chart/ Конструктор: imagecharteditor.appspot.com/ Русское описание: code.google.com/intl/ru/apis/chart/

Худший ответ:
есть как в яндекс метрике.
они используют amcharts.com/, только видимо платную версию.
сам работал с ней, отличная вещь!
Вопрос: Как искать расширения к Chrome по категориям?

Лучший ответ:
Можно, если использовать английскую версию галереи расширений. Вероятно скоро это будет и на русском. Перейти на английскую версию можно ткнув «Google in english» на главной гугла. Либо в настройках найти переключение языка. Второй вариант — использовать сторонние сайты с расширениями вроде www.chromeextensions.org/

Худший ответ:
нет. Судя по всему, при добавлении расширений в каталог нет такого понятия, как категория. Возможно, появится в будущем
Вопрос: Ответственность за ошибку

Лучший ответ:
Искать другую работу. У вас проблемы с начальством.
Почитайте Трудовой Кодекс и вашу Должностную Инструкцию.
Чем выше начальник, тем выше ответственность.
Если у фирмы проблемы из-за вашей ошибки, ваша вина минимальна, максимум что можно - депремировать. Начальник же, не смог организовать работу отдела, не учел риски, не предпринял мер  по снижению последствий от ошибок, не организовало надежную работу инфраструктуры, не снизил вероятность ошибки увеличением числа работников и т.д.

Худший ответ:
Вы не угадаете. Задайте этот вопрос напрямую руководству.
Вопрос: "Сетевой кабель не подключен", периодически сообщает ПК, как исправить?

Лучший ответ:
А контакты в разъеме сетевой карты не проверяли на предмет целостности? И шнур не пережимается где-либо? Не подвержен ли кабель физическим воздействиям?

Худший ответ:
заменить два патчкорда от розетке к пк и от плинта к коммутатору , так же  прозвонить  линк к розетке
Вопрос: Как подключиться к Raspberry Pi?

Лучший ответ:
Что для первого, что для второго нужен внешний IP адрес или проброс портов в роутере (в часности 22й для ssh, удаленного управления)

Худший ответ:
Как вариант настроить VPN.
Вопрос: Что это за домен wap.slavtchena.ru.habrahabr.ru?

Лучший ответ:
Перед habrahabr.ru можно написать все что угодно, содержащее точку, например, http://habrahabr.ru.habrahabr.ru/ и редирект приведет на главную хабра. Скорее всего в гугл проиндексировал чью-то опечатку

Худший ответ:
Кто такой v.i.p.vanya?
Вопрос: Что означает ошибка 40: Too many levels of symbolic links?

Лучший ответ:
Что то мне подсказывает, что у вас nginx.
И возможно ISPmanager.
Уберите в конфиге хоста nginx: disable_symlinks if_not_owner

Худший ответ:
==как с ним бороться?
не делать symbolic links
Вопрос: Отзеркалить сайт?

Лучший ответ:
Вопрос неразрешим без указания точного и полного списка технологий, которые используются в работе сайта. А именно:
-платформа (windows, linux)
-сервер приложения (язык, веб сервер)
-сервер БД
-статика (заливается ли пользователями, как интенсивно)

От этого уже можно будет отталкиваться.

Второе от чего стоит отталкиваться, это задача. Что требуется?
1. Иметь горячую копию сайта, на случай падения основного
2. Увеличить производительность, за счет увеличения количества серверов.

В зависимости от задачи решение будет разным.

Краткий план решения такой:
1. поднять копию сервера с тем же окружением (сервер БД, веб сервер, интерпритатор)
2. скопировать данные приложения
3. Развернуть копию БД
4. сложный пункт обеспечить репликацию БД. Особенно сложно если требуется репликация мастер-мастер. Т.е. изменения на любом из сайтов, должны быть выгружены на второй. Во первых такое поддерживают далеко не все БД, во вторых это черевато потерей данных. Если требуется горячая копия, то нужно использовать мастер-слэйв в основном режиме и переводить слэйв в мастер при падении. Если требуется увеличение производительности, то нужно будет выделить одну master и несколько slave. Переписать сайт таким образом, чтобы для записи в БД он использовал только соединение с master БД, а для чтения одну из slave, таким образом будет сбалансирована нагрузка на БД (записи обычно на порядки меньше чем чтения)
5. тоже не очень простой пунтк обеспечить синхронизацию статики. Это можно сделать с помощью rsync. Но тоже могут быть разные проблемы.
6. специфические ресурсы (redis, mongo, memcache) и тому подобное тоже должы быть зеркалированы и при необходимости синхронизированы.

Чем больше будет уточнений, тем больше смогу еще посоветовать.

Худший ответ:
Мне кажется забыли еще упомянуть о том, как все запросы по домену перенаправить на другой сервер.
Round-robin, если я не ошибаюсь это называется.

Самому интересна данная тема, был бы признателен, если бы дали ссылочку на инструкцию как проще автоматически перенаправить трафик на другой IP в случае недоступности основного сервера.
Вопрос: Почему размер шрифта разный в локальном и сервере?

Лучший ответ:
Я единственный вижу что шрифты разные?
И сомтрите масштаб страницы. может в нем дело. ctrl +.

Худший ответ:
1. Убедитесь, что масштаб страницы в браузере в обоих случаях одинаковый и равен 100%
2. Проверьте, а не разные ли шрифты. Для этого во вкладке «Computed» в самом низу посмотрите какими глифами отрендерен текст.
3. Если разные, проверьте во вкладке «Networks», правильные ли подключены веб-шрифты. Грузятся ли.
4. Если пути у шрифтов правильные, но не грузятся, посмотрите этот ответ Почему могут слетать шрифты, после заливки на хостинг?
Вопрос: Куда поступить будущему айтишнику?

Лучший ответ:
учебное заведение никак не поможет вам устроиться в эти фирмы.

Худший ответ:
Самый простой способ попасть работать в такие компании - это стажировка.
Одно из основных требований стажеров - это высшее образование. Легко можно убедится, если почитать сайты этих компаний. 
Чаще всего в западные компании наличие ВО - это минимальные требования. Да и уезжать на ПМЖ проще с ВО. В том же ВК просто фетиш студенческое олимпиадное программирование.
Да, конечно, можно пройти квест на хард-моде:
1) Идти работать сразу после школы. Кстати кем? Много знаете компаний в ИТ, которым нужны 17-18 летние юноши? Предположим, что если озаботится, то можно уже после 9классных-ГИА летом начать работать фрилансером и набивать гитхаб-портфолио. Этобольшой плюс. К моменту сдачи ЕГЭ уже будет 2 года опыта.
2) Стать крутым специалистом.
3) Тебя заметят или ты заспамишь АйчЕров и будешь пробовать работать там.
4) Успех.
По времени это займет, как мне кажется, больше времени и потребует больших усилий, чем учеба в универе, стажировка и работа на последних курсах. 
Можно сказать, что универ - это потеря времени и пр., но это глупость. Хотя бы потому, что там происходит социализация и постепенное взросление + возможностей больше для развития. И не зря все с теплотой вспоминают именно студенческие годы.
Конкретно в какой ВУЗ идти. Тут все сложно. 
Если есть возможность - то надо пользоваться советом по стажировке Мейл.ру: Стажировка Mail.Ru это стажерская программа Mail.Ru Group, для студентов МГУ им. Ломоносова, МГТУ им. Баумана и МФТИ
Если нет возможности - то я бы взял международный рейтинг ВУЗов, который признают для оценки эмигрантов, и поступал бы в региональный сильный ВУЗ.
А так в любом случае выбор за вами.
Вопрос: Как монетизировать входящий bandwidth?

Лучший ответ:
На правах шутки: мини-сервис, вычисляющий хеши (sha, md5 и прочие) для исошек :)

Худший ответ:
Можно предоставлять услугу сжатия трафика, наподобие как Опера Турбо
Вопрос: Как преобразовать 1 байт и 0,5 байта в 1,5 байта(Более подробно в описании)?

Лучший ответ:
Во-первых, байт неделим, это вы чушь несёте.
Во-вторых, число хранится не в hex, а в бинарном виде:
2016 == 0b111_11100000
first = 0b111 == 7
second = 224 == 0b11100000
Собственно, вам надо first сдвинуть влево на 8 и прибавить к этому second.int year = (first << 8) + second;
Тут сложение эквивалентно "логическому или":int year = (first << 8) | second;

Худший ответ:
гуглить битовые поля. А еще погуглить про выравнивание структур данных.
Вопрос: Можно ли автоматизировать оптимизацию медленных запросов в Oracle?

Лучший ответ:
погуглите на тему AWR. классная штука. Тут вам и использование кэша, и I/O, и медленные запросы.
Если бы оптимизация запросов легко автоматизировалась, то Оракловым DBA не платили бы таких денег.

Худший ответ:
Узнал, что для выявления медленных запросов можно использовать представление v$sqlarea, а план выполнения запроса можно достать из v$sql_plan
Вопрос: Где в России разместить сервер?

Лучший ответ:
Не надо в России, не надо, неужели кто-то еще не понял?

Худший ответ:
М9, м9-вднх. Ещё в теленете пинги неплохие, но питание на моей памяти падало.
Вопрос: Motion tracking?

Лучший ответ:
Вы очень обобщенно сформулировали вопрос, в таком виде не получится ответить конкретно. За каким именно объектом вам нужно следить? Маркер/лицо/человек/2d-картинка?

Худший ответ:
Теннисные шарики и видеокамера. )
Вопрос: Стоит ли менять iPhone 4 на Nokia Lumia 900?

Лучший ответ:
Я голосую за айфон. Крутил эту «люмию», после айфона — не моё. Уж простите за личное мнение, а не обстоятельный ответ.

Худший ответ:
Спасибо всем. Жаль нет сервиса типа «Возьми телефон в аренду на неделю за 500 рублей». Кстати, идея, как вам кажется? ;)

Буду смотреть в магазине и щупать/тыкать. Кстати, 800 от 900 внешне/тактильно сильно отличается?
Вопрос: Какие есть сайты помимо 4pda чтобы выложить свое приложение?

Лучший ответ:
forum.xda-developers.com среди зарубежных пользователей очень популярен.
Для русского языка, можно выкладывать в группах вконтакте.

Худший ответ:
маркеты яндекса, самсунга и т.п.
Вопрос: Как привязать домены второго уровня к поддоменам (например, site2.ru к sub1.site.ru)?

Лучший ответ:
Вы делаете подобную запись:
site2.ru. IN CNAME sub1.site.ru.
И после этого все, кто зашел на site2.ru будут попадать на sub1.site.ru, где уже надо будет настроить веб-сервер или что-нибудь еще на прием этих клиентов.

Худший ответ:
Столкнулся вчера с похожей проблемой.

у меня есть 2 домена — site.ru и site.com
я хочу чтобы при запросе a.site.ru открывалось то, что лежит на a.site.com
site.com расположен на виртуальном хостинге.

я прописываю a.site.ru IN CNAME a.site.com

по логике вещей оно должно работать, НО поскольку site.com расположен на виртуальном хостинге с распознаванием по имени и он получает запрос показать «a.site.ru» — а он такого не знает, то вся схема не работает.

не хватает записи vhost для a.site.ru на моём виртуальном хостинге. в этом вся проблема, способов решения я лично не вижу, кроме как просить провайдера прописать это, но скорее всего они не станут с таким заморачиваться.
Вопрос: Правильный frontend?

Лучший ответ:
Сначала поработай с нативным css,html,js - 1 годик так точно
Потом поработай с bootstrap, сначала научись переопределять стили, потом изменять стили в исходном файле bootstrap.css. После этого научись пользоваться файлами bootstrap.js ну и конечно тут не обойтись без фундаментальных знаний Jquery - 15-30 дней и ты уже в теме
Потом установи sass, и поработай с ним через командную строку
Потом попробуй расширить sass, например установи susy, breakpoint-sass
Опять поработай с командной строкой - 14-30 дней
Потом установи интерпритатор sass, например compass
Разузнай все тут, поработай с командной строкой, установи config для compass`a
7-10 дней на это все, многое узнаешь.. - 2 дня макс.
->
Потом чтобы это все говно сжать у себя в мозгу как раз придумали gulp
Вот с этих пор, ты познаешь истинное удовольствие с gulp`ом
Тут то и понадобятся навыки работы с консолькой
Понимание глобального и локального нахождения плагинов и не только
Установишь node.js, выберешь себе консольку по-красивее и по-краше, прочитаешь туториалы, просмотрешь видосы и ты уже спец по gulp - 12-15 дней макс
материал:
1)  sass - sass-lang.com
2) sass-playground: www.sassmeister.com (поддерживает susy,breakpoint-sass)
3) susy - susy.oddbird.net (любые сетки, полный контроль)
4) bootstrap - dedushka.org (неплохие уроки по css),  www.w3schools.com/bootstrap/default.asp (неплохие уроки по css и js бутстрапа)
5) gulp - https://www.youtube.com/watch?v=9zwwmjGz1Vs&list=P... (неплохие уроки по gulp)
Ты все еще хочешь стать фронтенщиком? :)

Худший ответ:
канал logtblog - https://www.youtube.com/playlist?list=PLY4rE9dstrJ...
Вопрос: Как организовать хранение и передачу данных в приложении между Activity?

Лучший ответ:
1) Можно сделать 1 активити и 4 фрагмента.
2) Можно получаемые данные представить в виде класса, и при каждом интенте на новое активити передавать seriazable объект.

Худший ответ:
Вполне можно гонять один и тот же Bundle. Это не трудозатратно и защитит от выгрузки, так как приложение запустится с того же места с тем же Intent.Bundle data = getIntent.getExtras();
data.putString( "param100500", "ДЖИГУРДА" );
Intent intent = new Intent( this, Activity100501.class );
intent.putExtras( data );
В дополнение к этому для надёжности можно унаследовать все Activity от родителя, где в методе onPause() ваш Bundle будет сохраняться в Preferences, а в onCreate восстанавливаться при savedInstanceState == null.
Вопрос: Что изучить закоренелому PHP-шнику?

Лучший ответ:
Я зарабатываю, работая с CMS 1C-Bitrix
Работая с CMS можно стать закоренелым PHP-шником ??
Вы многое упустили, разрабатывая под 1C-Bitrix.
Сейчас уже 2014 год, а не 2003
Используйте Symfony, чтобы понять как должен быть устроен фреймворк.
Потом напишите свой.
Возможно закоренелось приобретете)

Худший ответ:
Попробуйте Lua. Весь фронтэнд можно делать на луа, по моему опыту он работает гораздо лучше пхп и держит большую нагрузку.
Админку я делаю на пхп, а всю внешнюю часть на луа.
Вопрос: Virtualmin настройка дефолтного ящика для mail() в php?

Лучший ответ:
Боюсь, связи между «ящиком» для mail() и Virtualmin-ом нет вообще никакой. Когда вызывается mail(), php достаточно тупо вызывает /usr/sbin/sendmail и передает ему заголовки и сообщение. Максимум что знает sendmail — это UID процесса его вызвавшего (поэтому адрес получается @).

Другое дело, что посредством заголовков можно указать обратный адрес и поле From: исходящего письма и это делается очень просто приблизительно таким вызовом mail():

mail('Кому <aaa@example.com>', 'Тема', 'Сообщение', "From: От кого <bbb@example.com>\nReply-To: Кому ответить <ccc@example.com>");


Или можно еще указать дополнительные параметры для sendmail посредством пятого параметра mail():

mail('nobody@example.com', 'the subject', 'the message', null, '-fwebmaster@example.com');


но это не такое гибкое решение на мой вкус.

В гугле встречаются советы поменять параметр sendmail_from в php.ini, но они ошибочны — этот параметр работает только в винде.

Худший ответ:
Как написал dmiceman, при отправки почты скриптом - нет отправителя, но можно указать поле FROM.
Для этого в файле php.ini укажите:
sendmail_path = "/usr/sbin/sendmail -t -i -f mail@domain.tld"
Заменив mail@domain.tld нужным адресом.
Вопрос: Добавлять класс именно тому элементу на который навели?

Лучший ответ:
Пардоньте, но вы решаете крайне простую задачу через задницу..item:hover .basket {
	display: block;
}

Худший ответ:
Попробуйте вот так$(document).ready(function() {
	$('.item').hover(function(){
		// найдите Ваш .basket только у конкретного элемента, который получил hover
		$(this).find('.basket')
			.toggleClass('animated bounceInDown')
			.css({'display': 'block'});
	});
});
Вопрос: Рефакторинг PHP кода

Лучший ответ:
Почитайте экстримальное программирование Кента Бэка, там хорошо описаны основные паттерны для рефакторинга. Правда там больше в контексте TDD, но рефакторинг без тестов это всегда боль.
Что до приведенного кода:
введите отдельные сущьности вместо StdClass. Для клониварония можно использовать clone.
А так нужно разбираться в бизнес логике. Но у вас сейчас слишком много кода, можно легко запутаться.

Худший ответ:
Да тут просто непаханное поле для рефакторинга как внутри метода, так и за его пределами.
"makeDay" тут не при чём.
Вопрос: Методы парсинга BBCode?

Лучший ответ:
> Регулярки, как известно, не предназначены для парсинга вложенных конструкций.

Действительно, теория нам подсказывает, что одной могучей регуляркой грамматику ббкодов не одолеть.
Но это не значит, что регулярки в данной задаче вообще применять нельзя.
(загляните в парсеры популярных форумов, например)

Вкратце — одним проходом матчим самую глубоко вложенную пару тегов и заменяем на нечто, их не содержащее, повторяем в цикле, пока находится совпадение.

Худший ответ:
Смотря какой язык используете. Если PHP — то есть PECL модуль bbcode. Пользуюсь — удобно, быстро, функционально за счёт callbacks и никаких извращений :)
Вопрос: Как уменьшать и адаптировать текст, когда он не помещается в блок?

Лучший ответ:
Думаю вам подойдет использование vh. Например:.some-text {
    font-size: 100vh;
    line-height: 100vh;
}Вот статья на хабре

Худший ответ:
Такой вариант не подойдёт?
htmlbook.ru/css/text-overflow
Вопрос: Сколько осталось жить php?

Лучший ответ:
Потом будет пенсия. Если Вы 6 лет работали с PHP и больше ничего не трогали, не знаете, не развивались - то я вам могу только посочувствовать. 
Важен не сам по себе язык. Язык - это инструмент которым вы решаете текущие задачи. Что касается, PHP или чего-то другого -- безусловно гарантировать актуальность данной технологии через 20 лет никто не будет. Но думаю в ближайшие 5-8 лет PHP останется там где он есть - в вебе. Ему в конкуренты придут новые языки, и потеснят его. Соответственно спрос будет только падать.

Худший ответ:
Пока поддерживается и развивается - он никуда не денется.  Так что лучше этот вопрос адресовать команде разработчиков
Вопрос: Как лучше хранить данные в БД?

Лучший ответ:
Удивляют и вопросы и ответы. Особенно про «опросил бы клиентов». Это ж ух!..
ru.wikipedia.org/wiki/%D0%9D%D0%BE%D1%80%D0%BC%D0%B0%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F_%D1%84%D0%BE%D1%80%D0%BC%D0%B0 — читайте это.

Худший ответ:
Вариант 2 — если вам надо часто добавлять поля, то учтите, что добавление поля — это фактически создание второй копии таблицы (т.е. долго). Также, при большом числе полей растет объем таблицы, ухудшается время доступа.

Что касается вариата 1, рассмотрите также вариант выбирать записи без JOIN, а 2 запросами — MySQL на джойнах может неэффективно работать (к сожалению, точнее сказать не могу, это надо проверять на практике).

Я бы лично сделал вариант 1, но с кешированием в каком нибудь key-value storage.
Вопрос: В чём разница между проектированием и архитектурой?

Лучший ответ:
Если коротко, то архитектура - это смесь науки и искусства, а проектирование - это смесь технологий и дизайна.
Поясняю: здание сначала должно получить архитектурное решение, в результате которого будет определена форма, концепция, эстетика, принцип, а потом уже можно приступать к проектированию - созданию планов этажей, отдельных схем подсистем (вентиляции, коммуникации, эвакуации и т.д.). Для программного обеспечения, архитектура заключается в том, чтобы: разделять, называть и связывать.
Что есть архитектура?Это архитектурная задача:Выделить и назвать модули, построить связиСкомпоновать подсистемы в системуВыбор идей и инструментов:Парадигмы, стандарты, модели данныхТехнологии, фреймворки, паттерныМодели взаимодействия модулейВыбор топологииПротоколы и форматы данныхЗадача интеграции:Стыковка модулей еще до их разработкиОпределить внешние интерфейсы (связи)
Что есть проектирование?Инженерная задача:Планирование и детализация модулейСпецификация модулей, компонентов, вплоть до классов, методов и функцийМоделирование данных (ООП или структуры памяти)Разрабока ER-моделей и структур БДОптимизацияЗадача моделирования:Сделать прототип, макет, пилотный или пробный экземплярМатематическое моделированиеТестирование и апробация моделейПроверка идей и алгоритмовНагрузочное тестированиеЗадачи эксплуатации:Подготовка системы к эксплуатацииВнедрениеИнженерная поддержка

Худший ответ:
Если рассматривать проектирование как процесс, то архитектура - это результат проектирования.
Вопрос: Как заказчику научиться грамотно формулировать технические требования к интернет-проекту?

Лучший ответ:
> Как заказчику научиться грамотно формулировать технические требования к интернет-проекту?
Бить не пробовали?

Худший ответ:
как заказчику постичь разницу в технологиях и критерии их выбора для конкретного проекта
Для этого заказчику пришлось бы изучить существующие технологии и тогда ему будет очевидна разница. Т.е., уважаемый заказчик не сможет постичь разницу, если не изучит предметную область. Если же вопрос сводится к тому, "как изучить предметную область?", то вариантов два: идти обучаться по соответствующим курсам и т.п. или заниматься самообразованием. Но, на мой взгляд, быстро (1-2 месяца) в этой области заказчик вряд ли сможет уверенно ориентироваться, т.к. всё-таки, нужен некоторый опыт взаимодействия непосредственно с разработчиками и/или администраторами систем, реализованных на соответствующих технологиях.
Кроме того, на мой взгляд, нет нужды заказчику постигать разницу в технологиях для того, чтобы достичь своих бизнес-задач. Дело в том, что существует весьма значимое количество факторов, которые влияют на выбор той или иной технологии. Для того чтобы достичь целей разработки, их нужно правильно сформулировать, оценить условия интеграции, сложность и стоимость поддержки уже реализованной системы, особенности процесса ввода в эксплуатацию, бюджет в целом, разумеется... По-хорошему, заказчику нужен IT-консультант с понимаем бизнес-процессов и задач предприятия заказчика.
Лучше обратиться к специалисту. Поиск специалиста же и критерии доверия - это уже другая история.
Вопрос: Почему в char (C++) записывается лишняя информация?

Лучший ответ:
В зыбыли место под терминальный ноль. Прибавьте по одному символу каждой строке.

Худший ответ:
На самом деле, функции "strcpy(ui.uCardNum,CN);    strcpy(ui.uPIN,PIN);" у тебя работают не правильно и могут приводить к краху программы из-за порчи стэка. В дебаге даже ругнуться компилятор на это может.  Эти строки копируют символы из одной строки в другую, пока не встретится нуль-терминант в строке источнике, а у тебя нуль-терминанта нигде нет. Теоретически, в этих местах могут хоть гигабайты мусора скопироваться...
Как уже сказали, нужно либо нуль-терминант в конце строк делать (но это увеличит размер каждой строки на один символ), либо выводить эти строки не как строку, а через форматную строку, посимвольно.