Давно-давно, когда я ещё учился в школе, папенька где-то раздобыл для меня коробку с резисторами. По всей видимости, это была какая-то выбраковка — номиналы были странные и не слишком часто попадали в то, что написано на корпусе. Выводы были окислившиеся, но всё равно, это было гораздо лучше, чем ничего. Резисторы из этой коробки я и использовал во всех своих поделках. (далее...)
Набрел тут на задачки по программированию на сайте Interviewstreet, и уже два часа зависаю над одной из самых простых, за которую дают всего 25 очков. (далее...)
Результат вчерашних посиделок с паяльником и программатором. Часы стали ещё немного ближе к своей окончательной, завершённой форме. Теперь в комплекте уже есть законченный модуль точных энергонезависимых часов на микросхеме DS1307 и модуль с индикаторами на двух регистрах 74HC595. (далее...)
Последний раз самостоятельно печатные платы я делал ну никак не меньше 12 лет назад. Процесс был весьма трудоёмок — рисунок дорожек на меди нужно было нарисовать от руки зубочистками или заточенными спичками. Процесс с лазерным принтером и утюгом, кажется, уже существовал, но мне не был доступен — лазерного принтера не было.
Занимаясь часами для дома я прошерстил интернет в поисках более продвинутых технологий и, оказывается, техника за это время «шагнула».
В качестве отдыха от забот в эти длинные выходные решил посвятить себя старому хобби — радиолюбительству. Изучение интернетов выявило, что техника за прошедшие годы в очередной раз шагнула. При помощи микроконтроллеров — специализированных микрокомпьютеров — можно с удивительной лёгкостью создавать довольно сложные устройства. Программы для них пишутся на давно знакомом С и прошиваются очень простым программатором.
Так как в комнате у нас часов нету, было решено использовать новые технологии во благо. Были закуплены индикаторы, макетная плата, микроконтроллер. Вечер с паяльником — и вот уже тикают циферки. Действительно, очень очень просто. Программа — всего пару десятков строк.
Теперь осталось соорудить приличный корпус и собрать ту же схему уже не на макетке, а на нормальной печатной плате. Ну и в программе выставить делитель, чтобы секунды были действительно равны секундам.
Не люблю писать про политику, ибо в этом вопросе сколько людей, столько и мнений, и буквально каждый — эксперт. Но послезавтра у нас выборы и, я считаю, необходимо черкнуть несколько строк.
Раньше большинство моих знакомых да и вообще людей примерно моего круга выборы просто игнорировали. Какой смысл на них ходить, если всё равно решат всё за нас? И за нас прекрасно решили. Собрали марионеточный парламент, изменили законы под себя, посадили на трон президента-пустышку.
Сегодня ситуация другая. Моё поколение идёт на выборы. Я даже знаю, что некоторые едут за сотни километров в родной город только для того, чтобы проголосовать. Сходите и вы.
Я не буду агитировать за какую-нибудь партию или против какой-нибудь партии. Я скажу одно — просто оторвите жопу от стула и сходите проголосуйте. Проголосуйте так, как считаете правильным для себя любимого.
Да, лично ваш единственный голос ничего не решает. Да, в понедельник объявят результаты и всем будет мерзко и стыдно, потому что опять обманули. Но! У вас будет морально право спросить — а какого, собственно, хрена? И миллион таких спросивших — это уже миллион небезразличных голосов.
Иногда нужно существующий сайт сделать мультиязычным, а с мутным плагином WPML заморачиваться не хочется. Для этого хорошо подходит возможность WordPress делать мультисайты.
Если сайты будут размещаться в поддоменах основного сайта (например ru.example.com, en.example.com) то проблем никаких — в конфиге просто прописывается метка и всё остальное делает сам Wordpress.
А вот если сайты для разных языков нужно разместить в поддиректориях — придётся сделать несколько дополнительных шагов.
1. Обязательно делаем бэкап — темы, плагины, загруженные файлы.
2. Делаем полный дамп базы данных:
mysqldump > wordpress.sql
3. Удаляем из базы все таблицы, удаляем wp_config.php
4. Запускаем установку.
5. Дальше настраиваем по инструкции для sub-directory multisite
Теперь нам надо восстановить предыдущий сайт в поддиректорию.
6. Создаём подсайт для существующего языка, например /en/. Так как это первый созданный подсайт, то он получит индекс 2, этот индекс будет использоваться для таблиц и директории с файлами.
7. Перемещаем содержимое wp-content/uploads в директорию blogs.dir/2/files.
8. Восстанавливаем из бэкапа темы и плагины.
9. В дампе базы данных меняем префикс таблиц с wp_ на wp_2_:
sed -i 's/wp_/wp_2_/' wordpress.sql
10. Восстанавливаем базу данных из этого дампа.
Всё, теперь сайт работает в поддиректории и можно создать подсайты для остальных языков. В корневом сайте нужно разместить заглушку со ссылками на языковые разделы.
Повадились ко мне ходить индийские программисты с предложением «outsource project». «Very good develpers», «affordable price», всё такое. Говорить «нет» — бесполезно, через месяц-два появляются снова с вопросом не изменил ли я своё мнение.
Попробовал прособесдовать их разработчика по скайпу — полный мрак и отсутствие вообще каких-то вменяемых знаний по предмету. Не, говорят, просто наши разработчики не привыкли давать интервью. А так они очень, очень хорошие!
Решил дать им несложную тестовую задачку, от силы на час размышлений. Мол, сделаете — поговорим уже о проектах. Делают уже два месяца и, похоже, всей Индией.
Потребовалось мне перекодировать несколько .wav файлов в mp3. Файлы оказались закодированы в DTS, поэтому LAME на выходе давал только белый шум. Попробовал экспортировать из VLC, но тот почему-то создавал пустой файл нулевой длины. Пришлось искать решение на просторах интернета.