9 мифов и фактов о Google AdSense…

Несоригинальничал:

  • Миф: формат рекламных блоков (336×280, 300×250 и 250×250) приносит самые эффективные результаты. На своем сайте стоит придерживаться того же самого.
  • Факт: не совсем. Каждый сайт имеет свою структуру, дизайн. Поэтому стоит экспериментировать с блоками, их расположением, поскольку самую большую прибыль могут приносить блоки на которые вы и «не рассчитывали».

Миф: самыми прибыльными являются сайты с дорогими «ключевиками».

Факт: ну так то оно так, но не вы одни такие умные. И сделать и раскрутить такой сайт ох как не просто. Про тачки, манимейкинг и адалт пишут все кому не лень. Так что может быть лучше найти свою нишу в «низких» частотах и пробовать заработать там. К тому же раскрутиться легче и попасть в серп (SERPS - Search Engine Result Pages).

  • Миф: высокий CTR + высокий трафик = высокий доход
  • Факт: это уравнение работает, но не забывайте про smart pricing. Еще можно воспользоваться этим советом.

Миф: будьте осторожны, если траф на ваш стал активно идти из качественного контента – гугл может подумать что вы спамите.

Факт: бред =)

  • Миф: если Гугл забанил ваш аккаунт, то восстановить его не реально.
  • Факт: не факт. По идее Гугл должен предупреждать владельца сайта пару раз, но жизнь все делает иначе -). Теоретически аккаунт можно восстановить, но практически…я о таком не слышал

Миф: Google AdSense сделает Вас миллионером за несколько дней

Факт: бред =)

  • Миф: единственный способ получать деньги с АдСенса – это установить рекламные блоки на своем сайте
  • Факт: нет, не единственный. В Америке существует фича с помощью которой можно размещать объявления на форумах, в своих мессаджах. Не знаю как дела обстоят с этим в рунете

Миф: постоянные посетители – залог постоянного дохода

Факт: заблуждение. Постоянные мемберы сайта знают где у вас реклама и куда надо кликать. Они обеспечивают лишь посещаемость ресурсу. Доход идет все же с новичков.

  • Миф: те, кто рубит бабло миллионами имеют один суперпосещаемый сайт.
  • Факт: рубить только с одного сайта тяжело. Продвинутые строят сетки (для блогов это особенно актуально). Да и иметь набор всегда лучше, поскольку поисковики создания «ветреные» =)

Многое здесь пахнет баяном, но я думаю статья претендует хотя бы на то, чтобы разбить ваши иллюзии и начать хоть что-то делать =). Буду рад комментам и дополнительным «развеяниям» мифов об АдСенсе. Директ-то круче? =)

PS: что за мудаки ведут комментирование матча по второй. Как они уже заеба… где Уткин? Челси должен выиграть потому что я поставил, и проиграть потому что МЮ в сердце =) + никогда не забуду 2-1 с Баварией с двух угловых Бэкхама =)…пойду смотреть дальше…

PPS: ну просто охуенно даже денег не жалко, ради штанги Терри. А Абрамович видали? Когда тусня пошла и Дрогба удалили, он такой - Ну, сука, бля….=))) по-моему он так выразился….Отличный финал и все-таки жаль Терри, Челси был по-сильнее….а Роналдо все-таки на очко еще слабенький =)))

Опубликовано в SEO. 6 Comments »

Полезные CSharp сниппеты…

до этого были: http://seregaborzov.wordpress.com/2008/01/26/quick-samples-csharp/

http://seregaborzov.wordpress.com/2008/01/01/links-prichem-useful/

http://seregaborzov.wordpress.com/2007/12/05/quick-samples-in-csharp/

http://seregaborzov.wordpress.com/2007/10/24/csharp-links/

Эксепшн одной строкой:

string GetSingleLineExceptionText(Exception ex)
{
    if (ex != null)
    {
        return ex.Message + ” — ” + ex.StackTrace.Replace(”\r”, ” “).Replace(”\n”, ” “);
    }
    return string.Empty;
}

Одиночка (а вы еще хотите про паттерны?)

using System;

        namespace DoFactory.GangOfFour.Singleton.Structural
                  {
        // MainApp test application

        class MainApp
        {
            static void Main()
            {
                // Constructor is protected — cannot use new
                Singleton s1 = Singleton.Instance();
                Singleton s2 = Singleton.Instance();

                if (s1 == s2)
                {
                    Console.WriteLine(”Objects are the same instance”);
                }

                // Wait for user
                Console.Read();
            }
        }

        // “Singleton”

        class Singleton
        {
            private static Singleton instance;

            // Note: Constructor is ‘protected’
            protected Singleton()
            {
            }

            public static Singleton Instance()
            {
                // Use ‘Lazy initialization’
                if (instance == null)
                {
                    instance = new Singleton();
                }

                return instance;
            }
        }
    }

Сохранение байтного массива

public static bool BytesToFile(byte[] pData, string pFilePath)
{

    System.IO.FileStream oStream;
    System.IO.BinaryWriter oWriter;

    oStream = new System.IO.FileStream(pFilePath, System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.Write);
    oWriter = new System.IO.BinaryWriter(oStream);

    try
    {
        for (int i = 0; i <= pData.GetLength(0) - 1; i++)
        {
            oWriter.Write(pData[i]);
            if ((i % 1000) == 0) { oWriter.Flush(); } //Flush every 1000 bytes
        }

        oWriter.Flush(); //Perform final flush

        return true;
    }
    catch (Exception oE)
    {
        return false;
    }
    finally
    {
        //Make sure to do house keeping
        oWriter.Close();
        oStream.Close();
    }
}

 

Шлем мыло с SMTP аутентификацией

using System.Net.Mail;

MailMessage oMsg = new MailMessage();

// Set the message sender
oMsg.From = new MailAddress(”xavier@devel.oping.net”, “Xavier Larrea”);

// The .To property is a generic collection,
// so we can add as many recipients as we like.
oMsg.To.Add(new MailAddress(”fox@foxcorp.org”,”John Doe”));

// Set the content
oMsg.Subject = “My First .NET email”;
oMsg.Body = “Test body - .NET Rocks!”;
oMsg.IsBodyHtml = true;

SmtpClient oSmtp = new SmtpClient(”smtp.myserver.com”);

//You can choose several delivery methods.
//Here we will use direct network delivery.
oSmtp.DeliveryMethod = SmtpDeliveryMethod.Network;

//Some SMTP server will require that you first
//authenticate against the server.

NetworkCredential oCredential = new NetworkCredential(”myusername”,”mypassword”);
oSmtp.UseDefaultCredentials = false;
oSmtp.Credentials = oCredential;

//Let’s send it already
oSmtp.Send(oMsg);

Сравнить две даты:

DateTime startDate = new DateTime (2008, 1, 1);
DateTime endDate = new DateTime (2008, 1, 5);
TimeSpan ts = endDate - startDate;

long days = ts.Days;
long hours = ts.TotalHours;
long mins = ts.TotalMinutes;
long secs = ts.TotalSeconds;

Небольшой примерчик коллекции с событиями:

using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Text;

public class NotificationList<T> : Collection<T>{
    public event EventHandler<ItemInsertedArgs<T>> ItemAdded;

    protected override void InsertItem(int index, T item){
        EventHandler<ItemInsertedArgs<T>> handler = ItemAdded;
        if (handler != null){
            handler(this, new ItemInsertedArgs<T>(index, item));
        }
        base.InsertItem(index, item);
    }
}

public class ItemInsertedArgs<T> : EventArgs{
    public int Index;
    public T Item;

    public ItemInsertedArgs(int index, T item)
    {
        this.Index = index;
        this.Item = item;
    }
}

public class MainClass
{
    public static void Main()
    {

        NotificationList<int> list = new NotificationList<int>();

        list.ItemAdded += delegate(object o, ItemInsertedArgs<int> args) {
            Console.WriteLine(”A new item was added to the list: {0} at index {1}”,args.Item, args.Index);
        };

        for (int i = 0; i < 10; i++)
        {
            list.Add(i);
        }

    }
}

Обработчик горячих клавиш на CSharp:

private void Any_KeyDownPreview(object sender, PreviewKeyDownEventArgs e)
       {
           #region KEY = Right Arrow (Rotate Right)
           if (e.KeyCode == Keys.Right)
               ShiftLCDRightWithRotate();
           #endregion
           #region KEY = Left Arrow (Rotate Left)
           else if (e.KeyCode == Keys.Left)
               ShiftLCDLeftWithRotate();
           #endregion
           #region KEY = Up Arrow (Rotate Up)
           else if (e.KeyCode == Keys.Up)
               ShiftLCDUpWithRotate();
           #endregion
           #region KEY = Down Arrow (Rotate Down)
           else if (e.KeyCode == Keys.Down)
               ShiftLCDDownWithRotate();
           #endregion
           #region Key = Enter || ESC (Editing Frame Flag==true) Finish Editing
           else if (MainForm.EditingFrameFlag == true)
           {
               #region Key = ENTER (Accept Edit)
               if (e.KeyCode == Keys.Enter) //Finish Editing-Save it
               {
                   int[][] mfCCnList = new int[8][];

                   for (int index = 0; index < 8; index++)
                       mfCCnList[index] = MainForm.CC[index].GetCharacterArray();

                   LF.Enabled = true;
                   LF.FinishEditingFrame(8, MainForm.EditFrameNumber, mfCCnList);
                   LF.label1.Visible = false;
                   this.Text = FormTextHeader;

                   MainForm.EditingFrameFlag = false;
               }
               #endregion
               #region Key = ESC (Cancel Edit)
               else if (MainForm.EditingFrameFlag == true)
                   if (e.KeyCode == Keys.Escape) //Finish Editing-Esape it
                   {
                       LF.Enabled = true;
                       LF.label1.Visible = false;
                       this.Text = FormTextHeader;

                       MainForm.EditingFrameFlag = false;
                   }
               #endregion
           }
           #endregion
           #region Key = CTRL+< (Mainform Zooming Out)
           else if (e.Control == true & e.KeyCode == Keys.Oemcomma)
           {
               MainForm.CurrentZoomLevel–;
               if (CurrentZoomLevel < 1)
                   CurrentZoomLevel = 4;

               ZoomTo();
           }
           #endregion
           #region Key = CTRL+> (Mainform Zooming In)
           else if (e.Control == true & e.KeyCode == Keys.OemPeriod)
           {
               MainForm.CurrentZoomLevel++;
               if (CurrentZoomLevel > 4)
                   CurrentZoomLevel = 1;

               ZoomTo();
           }
           #endregion
           #region Key = CTRL+A (Save Library As)
           else if (e.Control == true & e.KeyCode == Keys.A)
               LibraryForm.SaveAsFlag = true;
           #endregion
           #region Key = CTRL+N (New Library)
           else if (e.Control == true & e.KeyCode == Keys.N)
               LibraryForm.NewLibraryFlag = true;
           #endregion
           #region Key = CTRL+O (Open Library)
           else if (e.Control == true & e.KeyCode == Keys.O)
               LibraryForm.OpenLibraryFlag = true;
           #endregion
           #region Key = CTRL+S (Save Mainform to Library)
           else if (e.Control == true & e.KeyCode == Keys.S)
               CopyFrameToLibrary();
           #endregion
           #region Key = CTRL+I (Invert All CCs)
           else if (e.Control == true & e.KeyCode == Keys.I)
               MainForm_InvertAll();
           #endregion
           #region Key = CTRL+C (Clear All CCs)
           else if (e.Control == true & e.KeyCode == Keys.C)
               MainForm_ClearAll();
           #endregion
           #region Key = CTRL+1 (4×2 LCD Configuration)
           else if (e.Control == true & e.KeyCode == Keys.D1)
               MainForm_MiddleBottomConfig_Click();
           #endregion
           #region Key = CTRL+2 (2×4 LCD Configuration)
           else if (e.Control == true & e.KeyCode == Keys.D2)
               MainForm_MiddleTopConfig_Click();
           #endregion
           #region Key = CTRL+3 (1×8 LCD Configuration)
           else if (e.Control == true & e.KeyCode == Keys.D3)
               MainForm_TopConfig_Click();
           #endregion
       }

Опубликовано в CSharp. Нет комментариев »

PSPFAQS.ru…

Эх Денди денди, где же ты теперь? =))). Но сейчас поговорим о Sony PSP, а точнее о сайте на котором Вы можете найти всякие полезные фичи, ходы, дополнительные кармы и юзабельные факи. И сайт этот - PSPFAQS.ru!!!

Так же на нем вы можете найти все от прошивка PSP, инструкции, программы, обзоры до аксессуаров, новостей и тюнинговых фичей для Ваших приставок. Организован портал довольно просто и понятно. Чем-то даже смахивает на блог, который ведет основатель и админ SeeD:

psp, игровые приставки, советы, инструкции по играм PSP

Кроме этого Сид ведет интересную рубрику Инструкции, где можно найти прикольные мануалы не только для геймеров, но и для программеров. Меня прикольнула статейка - Создание волн, а также полезный мануал по скрещиванию приставки и Wi-Fi. Так что сайт оправдывает свой слоган…

Кстати на сайте объявлен конкурс. Так что геймеры должны спешить ведь призом на этот раз будет GPS приемник, совместимый с Толстой и Тонкой PSP!

Удачи и в боях с ботами!

Опубликовано в Life. Нет комментариев »

Где купить компьютерную технику в Интернете?

Компьютерная техника для офиса товар давно не дефицитный и все знают где ее можно приобрести - если не в ближайшем магазине оргтехники, так в одном из Интернет-магазинов. Я вам хочу рассказать о новом  сайте про компьютерную технику - Офисная техника и компьютеры. Чем примечателен данный ресурс, так это пожалуй удобным каталогом. Каталог ресурсов по офисной технике имеет четки рубрикатор:

каталог, компьютеры, техника

а также расширенный поиск в котором не найти нужную вещь просто не реально.

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

компьютерная техника, магазин, офисная техника

Ну а на главной страничке самые топовые модели и мечта некоторых =))). Еще очень радует шапка сайта со стеклянными иконками - путеводителями по каталогу товаров:

компьютеры, техника, интернет-магазин

Так что нужная Вам техника всегда рядом с Вами, осталось только зарегистрироваться и бросить в корзину несколько девайсов!

Удачи и приятных покупок!

Опубликовано в Life. Нет комментариев »