Сегодня 19 марта, четверг ГлавнаяНовостиО проектеЛичный кабинетПомощьКонтакты Сделать стартовойКарта сайтаНаписать администрации
Поиск по сайту
 
Ваше мнение
Какой рейтинг вас больше интересует?
 
 
 
 
 
Проголосовало: 7283
Кнопка
BlogRider.ru - Каталог блогов Рунета
получить код
Заметки - Блог о web-разработке. Сервисы для блоггеров. Блоговое
Заметки - Блог о web-разработке. Сервисы для блоггеров. Блоговое
Голосов: 1
Адрес блога: http://www.blogovoe.ru/blog/
Добавлен: 2013-12-27 23:28:54 блограйдером panevin
 

Twitter — особенности ботоведения

2017-04-18 12:03:25 (читать в оригинале)

Вчера я делился первыми успехами ботоведения: Twitter-бот и зачем он жизненно необходим и хотел бы описать все особенности ботоведения в Twitter — очевидные и не очень.

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

Крайне желательно, чтобы у бота уже были твиты и именно той тематики, которую планируется развивать в дальнейшем. Тут есть нюанс: твитторские с подозрением относятся к тем, кто много ретвитит. Это касается и живых людей. Когда я вижу подобные аккаунты живых людей, напрашивается вопрос: «Дебил штоле?» Не злоупотребляйте ретвитами и в дальнейшем. Сложно советовать какие-то пропорции, но, как мне кажется, твитов от первого лица должно быть больше, чем ретвитов (хотя бы 2:1).

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

При фолловинге можно посылать ЛС с каким-нибудь приветственным текстом и, наверняка, тогда вероятность обрести фолловера увеличивается, но я эту возможность не использую. Может буду в будущем, но вообще, это немного раздражающая тема, бесящая обычных пользователей, но, как я заметил, активно используемая разными ботами.

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

А мой бот продолжает жатву фолловеров, по итогам месяца его жизны будет понятен гешефт :) но я уже вполне доволен предварительными результатами.

Узбеков в ботоведении!


PHP: Отсечение дробной части без округления

2017-03-19 15:56:00 (читать в оригинале)

Возникла задача обрезать географические координаты до 3-х цифр после запятой. Штатными средствами это не сделать, т.к. в некоторых случаях срабатывает ненужное округление последней цифры. Тупо обрезать так же не катит, т.к. длина строки неизвестна (можно посчитать, но это дрочево; неизвестно сколько знаков перед запятой).

Решение: регулярка
$lat = '59.871556';
$reg = "|([d]+)+(.)+([d]+){3}|Uis";
preg_match_all($reg,$lat,$outlat);

if (!empty($outlat[0][0])) $lat_tmp = $outlat[0][0];
else $lat_tmp = $lat;
echo $lat.' - '.$lat_tmp;
echo '
'.round($lat,3);

round использован для примера, распечатывается такой результат:
59.871556(исходное значение) - 59.871(то что нам нужно)
59.872 (неверный результат работы round. как бы верны, но нам надо другое, без округления)
Всё!

Почему тормозит софт?

2017-02-06 13:22:23 (читать в оригинале)

Вроде бы все уже привыкли, что каждая новая версия программы, ОС медленнее предыдущей. Выделю основные причины:

1. Сговор разработчиков ПО и производителей железа
Для меня это очевидно — производителям железа надо продавать новые ноутбуки/телефоны. Технологии программирования совершенствуются, а софт всё медленнее и умудряется выжирать всю доступную оперативку.

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

3. Усложнение функционала
Я ещё могу понять развитие фотошопа, но никак не могу понять как браузеры умудряются выжирать больше гектара памяти. Что вы, блять, делаете, зачем вам столько ОЗУ?!

P.S.
Я разрабатываю сайты и у меня жёсткие лимиты: 30 секунд на выполнение скрипта. Но страница сайта должна сгенерироваться меньше чем за секунду. Больше 10 секунд считается моветоном, а увеличивание лимита — пиздецким моветоном (только в крайних случаях и только для закадровых скриптов). А разработчикам ПО для компьютеров похуй. Запускается браузер 3 минуты — да и насрать, юзер подождёт.

Лучи добра!

Цены на АГЗС

2016-11-17 09:42:47 (читать в оригинале)

Наконец-то дошли руки и к ценам на бензин и ДТ добавил цены на газ на АГЗС.

По регионам:
  • Московская область
  • Ленинградская область
  • Новгородская область
  • Калужская область
  • Кемеровская область
  • Костромская область
  • Псковская область
  • Свердловская область
  • Тверская область
  • Тюменская область
  • Ярославская область


Цены на ГазПромНефть, другие будут постепенно добавляться.

Простейшее модальное окно jQuery+CSS

2016-11-05 15:43:29 (читать в оригинале)

Типовая задача - сделать всплывающее модальное окно. Погнали!

Яваскрипт (файл jquery.modalwindow.js, 2 Кб в несжатом виде):
jQuery.fn.modalwindow = function(options){

  var options = jQuery.extend({
    //height: '270', // высота всплывающего окна
    //width: '690', // ширина всплывающего окна
    title: '' //заголовок всплывающего окна
  },options);

	this.makeCenter = function() {
            if (jQuery(this).height() <100) var a = ( (($(window).height() / 2) - ( 500 ) )) + ($(document).scrollTop());
			//else var a = ( (($(window).height() / 2) - ( (jQuery(this).height()) / 2 ) )) + ($(document).scrollTop());
			else var a = ($(document).scrollTop()) + 200;
            if (a<0)
                a = 0;
				//alert(($(window).height() / 2));
            jQuery(this).css ({
                top: a + 'px',
                //top: '165px',
                left: ( (($(window).width() / 2) - ( (jQuery(this).width()) / 2 ) )) + ($(document).scrollLeft()) + 'px'
            });
	};
        this.setTop = function (){
            jQuery(this).css ({
                top: ( (($(window).height() / 2) - ( (jQuery(this).height()) / 2 ) )) + ($(document).scrollTop()) + 'px'
            });
        };
        this.setParamsToOverflow = function(id) {
                $('#'+id+'_overflow').css({
                    height:$(document).height()+'px',
                    width:$(document).width()+'px'
                });
	};
	this.maintainPosition = function() {
		$(window).scroll( function() {
			this.makeCenter();
		} );

	}

	//________
	this.init = function() {
	var _id = jQuery(this).attr('id');
	//alert(_id);
            $(window).keypress(function(event) {
              if (event.keyCode == '27') {
                $('.'+_id+'_overflow').fadeOut("fast");
                $("."+_id).fadeOut("fast");
                //$("#"+_id).html('');
               }
            });

            //Изменение размеров главного окна
            $(window).resize(function() {
                _this.setParamsToOverflow(_id);
                _this.makeCenter();
            });

            /*$(window).scroll(function() {
                _this.setTop();
            });*/
            this.makeCenter();
	};
      return this.init();
};


вызов окна и остальное (в общем файле яваскриптов, например):

if (window.jQuery) {
$(document).ready(
  function()
  {
var wh = $(window).height();
var dh = $(document).height();
// подгон высоты подложки
if ($("#podlogka").length) {
	if ($("#podlogka").height() < dh) $("#podlogka").height(dh);
}


if ($("#podlogka").length) {if ($("#podlogka").height() < dh) $("#podlogka").height(dh + 25);}
$(".cities_list_lnk").live("click", function(){
	$(".emptyModalWindow").fadeIn("fast");
	$('.new_window_empty').modalwindow();
	

	// у меня внутреннее содержимое модального окна заполняется из переменной html, следующую строку можно прибить, тогда содержимое окна будет таким, как пропишете в html
		$('.emptyModalWindow .c').html(html);
		$('.emptyModalWindow').fadeIn("slow");
		$('.new_window_empty').modalwindow();
	
	return false;
});

//закрытие окна
$(".close_window, #podlogka").click(function(){
	if ($(this).parent().parent().is(".hidden")) $(this).parent().parent().fadeOut("fast");
	return false;
});

});
}


скрипт модернизируем под ваши задачи.

Стили:
#podlogka{position: absolute;z-index: 8888;background-color:#000000;top:0px;left:0px;display: block;ms-filter: 'Alpha(Opacity=50)';opacity: 0.5;-moz-opacity: 0.5;filter:
alpha(opacity=50);-khtml-opacity: 0.5;/*height:11000px;*/overflow:hidden;/*height:100%;*/min-height:100%;width:100%;}
.new_window{position: absolute;z-index: 9000;display: block;background-color: #FFF;border-bottom: 1px solid #a3a3a4;/*margin-top:30%;margin-left:30%;*/background: #fff url(/img/new_window_bg.png) 0px 0px repeat-x;
-webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.53);
-moz-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.53);
box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.53);
behavior: url(/js/PIE.htc);
}
.new_window .c{padding:26px;padding-top: 45px;}
.new_window .close_window{position: absolute;background: url(/img/sprite.png) -102px 0px no-repeat;width:17px;height:17px;right: 16px;top:10px;}
.new_window .rc{float:right;width:272px;margin-left:33px;}
.new_window .lc{float:left;width:305px;border-right:1px solid #efefef;}
.new_window .inner ul {padding:0px; margin:0px;}
.new_window .inner ul li {padding:0px; margin:0px; list-style-type:none; width:33%; position:relative; float:left; min-width:100px; line-height:26px;}
.new_window .inner ul li a {color:#666; font-size:16px;}

html:
<div class="hidden emptyModalWindow new_window3_overflow">
<div id="podlogka" class="podlogka"></div>
<div id="new_window3" class="new_window_empty new_window">
<a href="#" class="close_window"></a>
<div class="c"></div>
</div>
</div>

И не забудьте пару картинок: подложка, крестик и спрайт.
Всё!


Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 

 


Самый-самый блог
Блогер ЖЖ все стерпит
ЖЖ все стерпит
по количеству голосов (152) в категории «Истории»


Загрузка...Загрузка...
BlogRider.ru не имеет отношения к публикуемым в записях блогов материалам. Все записи
взяты из открытых общедоступных источников и являются собственностью их авторов.