Thứ Tư, 27 tháng 8, 2014

Nhân hiệu SEOer

Dạo quanh các diễn đàn SEO, thỉnh thoảng vẫn thấy các bạn lập topic thảo luận về việc: ai là cao thủ trong giới SEOer. 

Một số bạn đưa ra một vài nhân vật, một vài đánh giá, đôi khi tranh cãi, “dìm hàng”, seeding…
Bản thân mình cũng chẳng muốn “chĩa mũi” vào mấy vụ nhạy cảm này làm gì, bởi khen chê gì rồi cũng sẽ có người ghét. Bởi vậy mình sẽ không khen, cũng chẳng chê, cũng chẳng quan tâm tới “nhân vật” này, không đánh giá một “sự kiện” cụ thể kia, chỉ là “rảnh rỗi sinh nông nổi”, lạm bàn về cái Nhân hiệu SEOer. Cũng mong góp một chút sôi nổi vào cái bầu không khí SEO đang nhợt nhạt gần đây.

Nhân hiệu SEOer

Nhân hiệu là gì ?


Hỏi câu hâm dở nhiều bạn lại cười, nhưng thôi cứ nói cho ai chưa biết. Nhiều bạn nhầm với Thương hiệu. Nhưng một cái dành cho sản phẩm, một cái dành cho con người, không lẫn lộn được. Túm lại Thương – Nhân gì thì cứ tạm vo vào là mức độ nổi tiếng của một con người, một sản phẩm (dịch vụ).

Nhân hiệu được hình thành dựa trên ba yếu tố chủ chốt là:


Trình độ chuyên môn – Khả năng chia sẻ - Tính cách thuần nhất

Ba yếu tố này có thể coi như một bộ tiêu chí đế đánh giá về một cá nhân, phân biệt họ với các cá nhân khác, tránh sự cảm tính khi nhìn nhận.

Trình độ chuyên môn


Áp dụng vào trong SEO, trình độ chuyên môn chính là khả năng của SEOer dựa trên kết quả làm SEO (lên top với từ khóa, thu hút truy cập, tăng chuyển đổi, bán được hàng). Nói thì ngắn, chứ tán ra lên top với từ khóa là khó khăn với bất cứ người làm SEO nào, từ khóa không lên top mà vẫn có traffic, chuyển đổi lại là chuyện khác, chưa nói tới nhắm đúng khách hàng mục tiêu, bán hàng.

Trong thời điểm hiện tại và có lẽ về sau này, bản thân việc làm SEO không thể giải quyết được nhu cầu của khách hàng. Vì thế người làm SEO cần phải hiểu về các lĩnh vực khác trong MO, và có khả năng làm việc nhóm.

Khả năng chia sẻ


Biết là một chuyện, nhưng làm cho người khác có khả năng hiểu như mình lại là chuyện khác. Ngoài trình độ chuyên môn thì người làm SEO muốn xây dựng nhân hiệu phải có tinh thần và khả năng truyền đạt.

Đến đây nảy ra một vấn đề: vậy những người không chia sẻ,những SEOer ở ẩn thì không có nhân hiệu à ? Đúng thế!

Rất nhiều SEOer có thu nhập khủng, họ không ra mặt, không chia sẻ, họ không phải là pro ? Đừng vội vàng qui chụp như thế !

Và cũng không cần phải đỏ mặt tía tai lào vào tranh cãi làm gì. Ở đây chúng ta đang nói về Nhân hiệu, và tình thần + khả năng chia sẻ là một tiêu chí đánh giá. Tất nhiên, những cao thủ ở ẩn họ có con đường và lý tưởng riêng của họ, cái họ sở hữu đôi khi không thể đem ra chia sẻ. Hoặc đôi khi có cái tốt nhưng không đúng người, không đúng thời điểm thì hại nhiều hơn lợi. Hoặc là tốt nhưng chia sẻ một thời gian lại thành xấu. Điều này lại hay đúng trong SEO, nhiều cách hay, chia sẻ ra lại bị áp dụng thái quá, trở thành spam.

Tất nhiên có sự chia sẻ vì cộng đồng, có sự chia sẻ để làm lợi cho bản thân, có người nhìn thấy ngay, có người cần có thời gian để nhìn ra câu trả lời.

Tính cách thuần nhất


Anh ấy nhiệt tình, chia sẻ vô tư; anh ấy hay cáu gắt nhưng không để bụng đâu; ông áy ấy nói một là một, hai là hai; lão ấy giỏi mà cái mặt nhìn cứ câng câng. Hay đơn giản: anh ấy thích dép tổ ong + mũ cối, anh ấy thích comple + quần đùi, anh ấy thích màu áo xanh tình nguyện…

Tất cả là để tạo ấn tượng, tạo nên sự khác biệt. Sự khác biệt có thể đến từ trang phục, phát ngôn, tính cách… điều quan trọng là thông qua đó người ta có thể phân biệt được anh – cô – lão ấy với số đông còn lại.

Vo lại cho tròn


Tất nhiên, những người đang là CEO, Manager, Leader trong các công ty SEO, các công ty lớn có phòng SEO, những người làm đào tạo SEO, dịch vụ SEO thì cần phải có Nhân hiệu cho bản thân, xây dựng Thương hiệu cho đơn vị. Được nhiều người biết tới sẽ thuận lợi hơn trong công việc.

Các bạn đang làm SEOer tự do, hoặc nhân viên trong các công ty nhỏ cũng nên có lộ trình để xây dựng uy tín cá nhân cho mình.

Có người thích hoa, người thích hoa thơm, người thích hoa thối (miễn là hoa), người thực dụng hơn lại thích thịt bò… tất cả đều do bản thân mỗi người lựa chọn.

Chúc các bạn chọn được hướng đi cho mình, và không phải gato với nhà hàng xóm!

Nam Định, ngày mưa rảnh rỗi…

Thứ Ba, 12 tháng 8, 2014

SEOer nên học thêm Google Adword

Về quê, rảnh rang chẳng có việc gì làm, học và đăng ký thi Adword chơi. Sau 02 tháng tìm hiểu cũng có được cái Giấy chứng nhận Adword.
Show hàng chút...

Cảm nhận về Google Adword


Trước đây mình có tư tưởng coi thường quảng cáo Adword, cho rằng chẳng qua là bỏ tiền ra mua. Còn SEO mới là đỉnh cao của trí tuệ.

Nhưng thật ra đó là chưa làm adword vì hiểu hời hợt về quảng cáo của Google.

Học sâu vào một chút thấy cực khó luôn, mình vừa tự học theo tài liệu của Google, tìm hiểu thêm trên mạng, tham gia tọa đàm trực tuyến, làm thẻ Visa chạy thử... mà thấy còn rất nhiều chỗ khó, chưa hiểu được.

Mình cũng không định học quá sâu, hay kiểm tiền từ công việc này. Mục đích là để hiểu hơn về MO. Ngoài ra tìm hiểu về Adword cũng rất có lợi cho SEO, nhất là về kĩ năng phân tích từ khóa.

Adword bổ trợ rất tốt cho SEO


Trước kia mình thường phân từ khóa thành dễ - trung bình - khó, tùy thuộc vào thị trường, mức độ cạnh tranh và khả năng thực tế của bản thân, điểu kiện của khách hàng để lựa chọn SEO từ đâu. Giờ thì phải phân là 4. Bên cạnh SEO luôn có Adword hỗ trợ. Một danh sách từ khóa tiềm năng: có traffic khá, giá bid thấp sẽ rất hiệu quả.

Trục trặc với Google Adword


Cái này là kinh nghiệm bản thân thôi. Lúc đầu mình tạo quảng cáo, mãi chẳng chạy, lại bảo do: Chính sách nội dung. Nghĩ chắc tại nội dung nghèo nàn, tháng sau làm lại, vẫn thế. Tức khí viết phản hồi thì có điện thoại từ Singapo (nhân viên của Google) gọi qua support. Đại ý bảo: không hiểu blog của mình mục đich là gì, rồi kêu thêm số điện thoại, rồi kêu bỏ câu thơ này đi.

Hỡi anh mê đắm thể thao
Em đây giữ giá làm cao chờ chàng
Blog show đủ thứ hàng
Ghế - xe - xà -tạ... chờ chàng qua chơi !

Mình thử nghiệm Google Adword trên một blog thể thao mà.

1. OK, thêm số điện thoại
2. "Thơ thì không bỏ được, đó là dạng thơ gần như bút tre, Google nên tôn trọng văn hóa địa phương."

sau 2 cuộc điện thoại nữa, cuối cùng Google cũng cho hiển thị, vậy là có cái để mà vọc. Adword mà còn thế chẳng trách gì Adsense lại khoai.

Google Adword - Thông tin thêm cho bạn nào chưa biết


Adword hiện có các kì thi chứng nhận sau:

- Cơ bản (cái này mình qua rồi, giờ ko cấp chứng chỉ cho cái này nữa)
- Tìm kiếm nâng cao (là cái chững chỉ của mình ở trên đó)
- Hiển thị nâng cao (đang ngâm cứu)
- Video Quảng cáo (đang ngâm cứu)

Ngoài ra các bạn nên đăng ký Google partner ( https://www.google.com/partners/ ) để được nhận thông tin, tài liệu của Google thường xuyên. 

Hiện 01 tháng Google Adword tổ chức 2 lần tọa đàm trực tiếp về Adword vào giữa và cuối tháng, từ 11 - 12h cho Google Partner.

Các bạn cũng lên làm một thẻ Visa để vừa học vừa thực hành, sẽ cho hiệu quả cao hơn.

Chủ Nhật, 10 tháng 8, 2014

12 thói quen mà các CEO thường làm trước bữa sáng

12 thói quen mà các CEO thường làm trước bữa sáng  

1. Thức dậy sớm
Một cuộc thăm dò được thực hiện bởi nhóm nghiên cứu Vanderkam, thuộc học Florida, Mỹ với 20 giám đốc điều hành đã nhận được câu trả lời rằng 90% trong số họ thức dậy trước 6 giờ sáng các ngày trong tuần.
Giám đốc điều hành PepsiCo Indra Nooyi thường thức dậy lúc 4 giờ sáng và luôn đến văn phòng trước 7 giờ. Trong khi đó, Giám đốc điều hành Disney Bob Iger dậy lúc 4 giờ 30 sáng để đọc và Giám đốc điều hành Square Jack Dorsey dậy lúc 5 giờ 30 để chạy bộ .
2. Tập thể dục buổi sáng
Theo Vanderkam, Giám đốc điều hành Xerox Ursula Burns thường có hai buổi tập thể dục cá nhân một tuần, mỗi buổi kéo dài một giờ bắt đầu từ lúc 6 giờ sáng. Giám đốc điều hành Christies Steve Murphy thường tập yoga vào buổi sáng.
Họ thường tập thể dục vào buổi sáng vì hầu hết thời gian trong ngày họ rất bận, đồng thời, tập luyện trước bữa ăn sáng sẽ giúp giảm bớt căng thẳng trong ngày, phòng chống sự ảnh hưởng của chế độ ăn uống nhiều chất béo và cải thiện giấc ngủ.
3. Tập trung vào một dự án quan trọng
Giờ yên tĩnh của buổi sáng có thể là thời gian lý tưởng để tập trung vào một dự án công việc quan trọng mà không bị gián đoạn vì chắc chắn không có đồng nghiệp nào có thể làm phiền họ vào giờ đó.
4. Dành thời gian cho niềm đam mê cá nhân
Những sở thích cá nhân tốt như đọc sách, viết hay nghe nhạc… rất dễ bị bỏ qua khi bạn đã ở trong cuộc họp cả ngày, mệt mỏi và đói. Đó là lý do tại sao nhiều người thành công thường dành một giờ hoặc lâu hơn cho các sở thích cá nhân của họ trước khi họ chính thức bắt đầu ngày làm việc.
5. Dành thời gian cho gia đình
Một số người thành công sử dụng thời gian buổi sáng cho gia đình, cho dù đó chỉ là đọc truyện cho trẻ em hoặc cùng ăn bữa sáng với nhau.
Judi Rosenthal, một chuyên viên tài chính ở New York, nói rằng buổi sáng là thời gian đặc biệt cô ấy dành cho con gái nhỏ. Cô giúp con gái mặc quần áo, gấp chăn ... Họ cũng cùng ngồi ăn sáng và trò chuyện với nhau. Cô gọi 45 phút đó là "thời gian quý báu nhất mà tôi có trong một ngày".
6. Dành thời gian cho bạn đời
Vào buổi tối, nhiều khả năng bạn sẽ bị mệt mỏi vì công việc trong ngày và thời gian sau đó có thể dễ dàng bị lãng phí với bữa ăn tối và xem TV. Đó là lý do tại sao nhiều người thành công thường dành thời gian cho bạn đời của họ như một thói quen trước bữa sáng.
7. Thưởng thức một cốc cà phê
Christopher Colvin, một doanh nhân và luật sư ở New York cho biết, ngày nào ông cũng thức dậy lúc 5 giờ 30 và thường uống một cốc cà phê để đầu óc tỉnh táo và tăng thêm tinh thần sáng tạo cho ngày làm việc.
8. Ngồi thiền
Manisha Thakor, người sáng lập và hiện đang điều hành MoneyZen Wealth Management, thực hành thiền định siêu việt 20 phút một ngày vào trước bữa ăn sáng và vào buổi tối để giúp tinh thần thoải mái và tăng sự tập trung.
9. Viết ra những điều biết ơn
Viết ra tên những người, địa điểm và cơ hội mà bạn biết ơn chỉ mất một vài phút nhưng có thể tạo nên sự khác biệt thực sự trong quan điểm của bạn.
10. Vạch ra kế hoạch và chiến lược trong thời gian tỉnh táo nhất
Kế hoạch trong ngày, tuần hoặc tháng trước là một công cụ quản lý thời gian quan trọng để giữ cho bạn đi đúng hướng. Vì vậy, hãy sử dụng thời gian trước buổi sáng để suy nghĩ và thiết lập danh sách công việc phải làm trong ngày là một việc hết sức cần thiết.
11. Kiểm tra email
Nhiều người thành công bắt đầu một ngày với email. Họ có thể nhanh chóng lướt qua hộp thư đến để xử lý các thư khẩn cấp mà cần một phản ứng ngay lập tức hoặc phác thảo một vài email quan trọng khi tâm trí đang còn tỉnh táo nhất.
12. Đọc tin tức
Cho dù đang ngồi ở đâu với một tờ báo giấy hay một chiếc điện thoại, laptop, ưu tiên hàng đầu của những người thành đạt cũng là lướt qua những tin tức mới và quan trọng.
Ví dụ, Giám đốc điều hành GE Jeff Immelt bắt đầu ngày của mình với việc tập thể dục và sau đó đọc bài báo và xem tin tức của CNBC. Trong khi đó, Giám đốc điều hành Virgin America David Cush sử dụng buổi sáng của mình để nghe đài phát thanh thể thao và đọc báo trong khi tập thể dục tại phòng tập...
Bạn thấy mình có nhiều nhân tố để trở thành CEO chưa? Hãy để "10 điều khác biệt nhất giữa kẻ làm chủ & người làm thuê" của Keith Cameron Smith trả lời giúp bạn nhé.

Thứ Sáu, 8 tháng 8, 2014

Code C/C++: Thuật toán Kruskal tìm cây bao trùm tối thiểu


Mô tả bài toán: Cho đồ thị vô hướng có trọng số G=(V,E) hãy tìm đường đi sao cho tất cả các đỉnh điều có đường đi với nhau và tổng trọng số của đường đi là nhỏ nhất. Tức là tìm đồ thị con liên thông  G'  G sao cho tổng trọng số của G’ là nhỏ nhất.
Ý tưởng thuật toán:
Bước 0: khởi tạo tập cạnh tìm được là rỗng và chuyển sang Bước 1.
Bước 1: chọn một cạnh có trọng số nhỏ nhất sao cho khi đưa cạnh này vào tập cạnh tìm được không tạo thành chu trình. Tăng số cạnh tìm được lên 1  và chuyển sang Bước 2.

Bước 2: nếu số cạnh tìm được bằng n-1 thuật toán kết thúc, ngược lại quay về Bước 1.

Mô tả dữ liệu đầu vào và đầu ra của bài toán:
Dữ liệu vào: lưu trong tập tin Bai8.inp
-  Dòng đầu ghi số n là số đỉnh của một đồ thị (0<n<100)
-  Dòng i+1 (1<=i <=n) lưu ma trận kề của đồ thị với n số A[i,1],A[i,2]…A[i,n] mỗi số cách nhau bởi một khoảng trắng.
Dữ liệu ra: lưu trong file Kruskal.out
-  Dòng đầu ghi trọng số nhỏ nhất của cây bao trùm.

-  Các dòng còn lại lưu đường đi giữa đỉnh i nối với đỉnh j.
Ví dụ:
Cài đặt chương trình:
#include <stdio.h>
#include <values.h>
#define FileInt "Bai8.inp"
#define FileOut "Bai8.out"
typedef structEgde {
      int x,y;
};
//đọc dữ liệu từ tập tin
void Doc_File(int **A,int &n)  {
    FILE*f = fopen(FileInt,"rb");
    fscanf(f,"%d",&n);
    *A = new int [n];
    for(int i =0;i<n;i++) {
       A[i] = new int [n];
       for(int j =0;j<n;j++) {
           fscanf(f,"%d",&A[i][j]);
       }
    }
    fclose(f);
}
//ghi dữ liệu ra tập tin
void Ghi_File(Egde*L,int n,int Sum) {
    FILE*f = fopen(FileOut,"wb");
    fprintf(f,"%d\n",Sum);
    for(int i =0; i<n-1; i++)
    fprintf(f,"%d -%d\n",L[i].x+1,L[i].y+1);
    fclose(f);
}
void Kruskal(int **A, int n) {
    int *D = new int[n];

    Egde *L = new Egde[n-1]; 
    int min = MAXINT, Dem = 0, Sum = 0, T = 0, Temp;
    for(int i=0; i<n; i++)
        D[i] = 0;
        do{
            min = MAXINT;
            for( i=0; i<n; i++)
                 for(int j=0; j<n; j++)
                      if(A[i][j]>0 && min>A[i][j]&& !(D[i]!=0 && D[i]==D[j])) {
                          min = A[i][j];
                          L[Dem].x = i;
                          L[Dem].y = j;
                      }
                      if(D[L[Dem].x] ==0 && D[L[Dem].y] == 0){
                          T++;
                          D[L[Dem].x] = D[L[Dem].y] = T;
                      }
                      if(D[L[Dem].x] == 0 && D[L[Dem].y] != 0){
                          D[L[Dem].x] = D[L[Dem].y];
                      }
                      if(D[L[Dem].x] != 0 && D[L[Dem].y] == 0){
                          D[L[Dem].y] = D[L[Dem].x];
                      }
                      if(D[L[Dem].x] != D[L[Dem].y] && D[L[Dem].y]!=0) {
                          Temp = D[L[Dem].x];
                          for( i=0; i<n; i++)
                             if(Temp==D[i])
                                   D[i]=D[L[Dem].y];
                      }
                   Sum+=min;
                   Dem++;
      } while(Dem<n-1);
      Ghi_File(L,n,Sum);
}
//chương trình chính
int main() {
         int **A,n;
         Doc_File(A,n);
         Kruskal(A,n);
         delete *A;
         return 0;
}
Từ khóa: ky thuat lap trinh, kỹ thuật lập trình, Kruskal, cây bao trùm tối thiểu, programming, algorithm, toán rời rạc, cây, cau truc du lieu, giai thuat.

Thứ Tư, 6 tháng 8, 2014

Bài 30: Học làm game thứ 5 - Space Ship ( Part 2 - End )


Hi, Rảnh rỗi tranh thủ viết cho xong game Space Ship này.
Bài trước chúng ta đã thiết kế sơ bộ xong phần màn chơi, song còn thiếu một số phần quan trọng trong game nên có mà chúng ta sẽ bổ sung ngay sau đây:

+ Bắn đạn khi Touch màn hình
+ Bắt sự kiện va chạm giữa đạn và thiên thạch
+ Tính điểm
+ Game Over

Đơn giản có thế thôi, chúng ta sẽ lướt nhanh!

B1: Bắn đạn khi Touch màn hình

Bạn mở file HelloWorldScene.h thêm vào dòng lệnh sau, trong public

// Hàm bắt sự kiện touch, dùng multiTouch, hoặc Touch thôi cũng được
void HelloWorld::onTouchesBegan(const std::vector<Touch*>& touches, Event *event)

Tiếp đó trong HelloWorldScene.cpp ta thiết kế hàm này như sau

void HelloWorld::onTouchesBegan(const std::vector<Touch*>& touches, Event *event)
{
SimpleAudioEngine::getInstance()->playEffect("laser_ship.wav"); // Âm thanh

Size winSize = Director::getInstance()->getWinSize();

// Lấy sprite Laser từ bộ lưu trữ Vector
Sprite *shipLaser = (Sprite *) _shipLasers->at(_nextShipLaser++);

if ( _nextShipLaser >=_shipLasers->size())   // Reset index laser
_nextShipLaser = 0;
// Đặt vị trí ở phía mũi tàu, và cho hiện lên
shipLaser->setPosition(Point(_ship->getPosition().x + shipLaser->getContentSize().width/2, _ship->getPosition().y));
shipLaser->setVisible(true);
// set body
auto laserbody = PhysicsBody::createBox(shipLaser->getContentSize()/2);  

laserbody->setContactTestBitmask(0xf);  
laserbody->setDynamic(true);
shipLaser->setPhysicsBody(laserbody);

// Di chuyển đạn, gọi tới hàm setInvisible để xử lý
shipLaser->stopAllActions();
shipLaser->runAction(Sequence::create( 
MoveBy::create(0.5,Point(winSize.width, 0)),
CallFuncN::create(this, callfuncN_selector(HelloWorld::setInvisible)), 
NULL 
));
}

B2: Bắt sự kiện va chạm

Thêm hàm sau vào file HelloWorldScene.h

bool onContactBegin(const PhysicsContact &contact);

Và xây dựng nó trong file HelloWorldScene.cpp như sau

bool HelloWorld::onContactBegin(const PhysicsContact& contact)    
{
auto laser = (Sprite*)contact.getShapeA()->getBody()->getNode();
int Tag1 = -1;
if(laser) 
Tag1 = laser->getTag();
auto asteroid = (Sprite*)contact.getShapeB()->getBody()->getNode();
int Tag2 = -1;
if(asteroid) Tag2 =  asteroid->getTag();

//Va chạm giữa đạn và Thiên Thạch
if((Tag1==KLASER&Tag2==KASTEROID)||(Tag2==KLASER&Tag1==KASTEROID))
{
SimpleAudioEngine::sharedEngine()->playEffect("explosion_large.wav"); 
_world->removeBody(laser->getPhysicsBody());
laser->setVisible(false);
_world->removeBody(asteroid->getPhysicsBody());
asteroid->setVisible(false); 
}
// Va chạm giữa thiên thạch và Ship
if((Tag1==KSHIP&Tag2==KASTEROID)||(Tag2==KSHIP&Tag1==KASTEROID))

{
_lives--;

}

return true; 
}

Và không được quên đoạn code Listener ở init()

auto contactListener = EventListenerPhysicsContact::create();
contactListener->onContactBegin = CC_CALLBACK_1(HelloWorld::onContactBegin, this);
_eventDispatcher->addEventListenerWithSceneGraphPriority(contactListener, this);

OK, giờ là tới phần Tính điểm và GameOver

B3: Tính điểm và GameOver

Trong hàm update() bạn thêm vào 1 đoạn sau đây

if (_lives <= 0) { // Kiểm tra không còn mạng nào thì game Over
_ship->stopAllActions();
_ship->setVisible(false);
_world->removeBody(_ship->getPhysicsBody());
this->endScene(KENDREASONLOSE);   // Game Over

Hàm endScene xây dựng như sau

void HelloWorld::endScene( EndReason endReason ) {

if (_gameOver) // trạng thái game
return;
_gameOver = true;

Size winSize = Director::getInstance()->getWinSize();

char message[10] = "";
if ( endReason == KENDREASONLOSE)
strcpy(message,"You Lose"); 

// Tạo 2 Label để làm thông báo
LabelBMFont * label ;
label = LabelBMFont::create(message, "Arial.fnt");
label->setScale(0.1);
label->setPosition(Point(winSize.width/2 , winSize.height*0.6));
this->addChild(label);


// Tạo 1 nút reset game là 1 label
LabelBMFont * restartLabel;
strcpy(message,"Restart");
restartLabel = LabelBMFont::create(message, "Arial.fnt");

MenuItemLabel *restartItem =  MenuItemLabel::create(restartLabel,CC_CALLBACK_1(HelloWorld::resetGame,this));

restartItem->setScale(0.1);
restartItem->setPosition( Point(winSize.width/2, winSize.height*0.4));

Menu *menu = Menu::create(restartItem, NULL);
menu->setPosition(Point::ZERO);
this->addChild(menu);

restartItem->runAction(ScaleTo::create(0.5, 1.0));
label ->runAction(ScaleTo::create(0.5, 1.0));
this->unscheduleUpdate(); // dừng update Scene
}

Và nhớ phải thêm thuộc tính bool _gameOver vào phần public của HelloWorldScene.h, đồng thời trong hàm init() phải khởi tạo nó với giá trị false

Bổ sung hàm endScene() và resetGame() vào trong lớp HelloWorld, và hàm resetGame như sau

void HelloWorld::resetGame(Ref* pSender) {
auto scene = HelloWorld::createScene();
Director::getInstance()->replaceScene(TransitionZoomFlipY::create(0.5, scene));  

Size winSize = Director::getInstance()->getVisibleSize();

}

Giờ ta thêm 1 chút phần tính điểm. Khi bắn mỗi thiên thạch ta được 10 điểm.

Bạn thêm 1 thuộc tính int score, LabelBMFont * _scoreDisplay;vào lớp HelloWorldScene, và khi khởi tạo thêm đoạn code này

_scoreDisplay = LabelBMFont::create("Score: 0", "Arial.fnt", 
visibaleSize.width * 0.3f);
_scoreDisplay->setAnchorPoint(Point(1, 0.5));
_scoreDisplay->setPosition(
Point(visibaleSize.width * 0.8f, visibaleSize.height * 0.94f));
this->addChild(_scoreDisplay);

Trong hàm kiểm tra va chạm chúng ta sẽ tính điểm bằng đoạn code nhỏ như thế này

score+=10;
char szValue[100] = { 0 }; // Lấy ra điểm qua mảng đệm char
sprintf(szValue, "Score: %i", score); // Chuyển sang chuỗi => chuỗi
_scoreDisplay->setString(szValue); // Hiện điểm lên

Bạn có thể làm thế với Live để theo dõi số mạng của Ship

OK, Build thử xem kết quả thế nào nhé, cũng không tệ với 1 game "tự tui".

Và sau đây mình làm thêm 1 bước Bonus nữa là 

Bonus: Điều khiển Ship bằng Accelerometer - gia tốc kế

Trước hết bạn copy 2 file VisibleRect.h, .cpp trong bài cpp-tests vào Class của chúng ta. sau đó trong phần init() thêm đoạn code này vào

#define FIX_POS(_pos, _min, _max) \
if (_pos < _min)        \
_pos = _min;        \
else if (_pos > _max)   \
_pos = _max; 

auto listener = EventListenerAcceleration::create([=](Acceleration* acc, Event* event){
auto shipSize  = _ship->getContentSize();

auto ptNow  = _ship->getPosition();

log("acc: x = %lf, y = %lf", acc->x, acc->y);

ptNow.x += acc->x * 9.81f;
ptNow.y += acc->y * 9.81f;

FIX_POS(ptNow.x, (VisibleRect::left().x+shipSize.width / 2.0), (VisibleRect::right().x - shipSize.width / 2.0));
FIX_POS(ptNow.y, (VisibleRect::bottom().y+shipSize.height / 2.0), (VisibleRect::top().y - shipSize.height / 2.0));
_ship->setPosition(ptNow);
});

auto dispathcher = Director::getInstance()->getEventDispatcher();

dispathcher->addEventListenerWithSceneGraphPriority(listener, this);

Vậy thôi, hãy build lại và thử trên ĐT thật, khi nghiêng xem Ship có di chuyển không nhé, nếu di chuyển là đã thành công

Kết thúc bài này, chúng ta cùng nghiên cứu 1 số vấn đề sau

+ Bắn đạn = Touche, duyệt vector
+ Va chạm
+ Tính điểm, game Over
+ Di chuyển Ship bằng gia tốc kế

Download Code

Mình dừng bài học ở đây nhé

Bài 31: Làm game gì bây giờ?

Thứ Ba, 5 tháng 8, 2014

Mua Chung - Groupon

Thời gian vừa qua tại Việt Nam hình thành rất nhiều website hoạt động theo hình thức Mua Chung - Groupon. Tuy nhiên chỉ có vài site phát triển mạnh.

Theo quan điểm cá nhân của người viết, các đơn vị bán hàng theo hình thức này hoặc là có nguồn vốn lớn để xây dựng thương hiệu; hoặc là phát triển một số ngành hàng có thế mạnh, kết hợp với SEO, xây dựng hệ thống MO.

Bài viết này phân tích về cách SEO của một số website Groupon tại Việt Nam. Và thử định hướng SEO cho một website mới - http://banre123.vn/

I. KHÁI QUÁT HÌNH THỨC MUA CHUNG (GROUPON)


MUA CHUNG bắt nguồn từ GROUPON (Groupon = Group + Coupon), ra đời đầu tiên ở Mỹ năm 2009, với rất nhiều phiên bản khác nhau tại mỗi quốc gia. Groupon du nhập vào Việt Nam khoảng cuối 2010.


1. Groupon


Groupon không đơn thuần là một đại lý phân phối, nó chính xác là một trung gian môi giới. Các Groupon cam kết mang đến cho đối tác bán hàng một số lượng lớn người dùng, qua đó thuyết phục nhà cung cấp đưa ra mức giá ưu đãi nhất, 30 – 50% so với giá thông thường.

Đối với người mua, khi có một số lượng khách hàng nhất định, cùng chung sở thích, nhu cầu… cùng đặt mua một sản phẩm cụ thể thì hành động mua hàng sẽ được thực hiện.

Với số lượng khách hàng đông, người bán hàng thu lợi nhỏ trên số lượng khách hàng lớn, cả ba: người bán, người mua, người cung cấp dịch vụ Groupon đều có lợi.

- Đối với người bán, Groupon là một kênh bán hàng + quảng cáo
- Đối với người mua Groupon là một kênh mua hàng giá rẻ
- Đối với bản thân mỗi Groupon có thể là bán hàng, cũng có thể là nơi giới thiệu sản phẩm, dịch vụ.

2. Môi trường thuận lợi cho Groupon phát triển


- Thị trường có nhu cầu lớn về hàng hóa giá rẻ
- Mức giảm giá “sâu”
- Hàng hóa phù hợp nhu cầu người mua, có chất lượng
- Giao hàng thuận tiện, nhanh chóng
- Nội dung thuyết phục

3. Thuận lợi khi xây dựng Group tại Việt Nam


- Thị trường lớn, số người sử dụng internet cao, tăng nhanh
- Người dân nói chung thích hàng giá rẻ, thích khuyến mãi
- Cơ sở hạ tầng viễn thông đang được xây dựng và củng cố

Các hình thức thanh toán của các Groupon Việt Nam hiện tại
    Tiền mặt/Chuyển khoản
    Thẻ mua hàng (Groupon VN phát hành)
    Điểm/Tiền ảo
    Thẻ ATM
    Thẻ tín dụng


4. Khó khăn của hình thức Gruoup tại Việt Nam


Nhà cung cấp

- Không cung cấp sản phẩm, dịch vụ như đã hứa hẹn
- Nâng giá trước khi hạ xuống
- Có thái độ phân biệt với khách sử dụng phiếu mua hàng

Groupon

 
- Thiếu nhà cung cấp
- Chi phí tăng cao do hoạt động tìm kiếm đối tác, tìm kiếm khách hàng
- Không kiểm soát được nguồn hàng, chất lượng, dịch vụ của nhà cung cấp
- Không đủ khách hàng để Group có hiệu lực
- Nhân viên thiếu chuyên nghiệp

Khách hàng

- Thiếu niềm tin với sản phẩm, dịch vụ
- Thiếu niềm tin với Groupon
- Coi internet là kênh tham khảo chứ không phải mua hàng
- Thói quen sử dụng tiền mặt
- Việc nhận lại tiền khi giao dịch không thành công khá khó khăn

Môi trường

Hạ tầng công nghệ vẫn chưa đáp ứng được nhu cầu phát triển.

II. MỘT SỐ GROUPON TẠI VIỆT NAM

 

Website
Đơn vị chủ quan
Hệ thống
Nhommua.com
Rebate Network - Đức
DiaDiem.com, tích hợp với hệ thống địa điểm tốt – (Cùng chủ)
Muachung.vn
Cty CP truyền thông Việt Nam – VC Corp
Được hỗ trợ rất nhiều từ các site cùng hệ thống như muare, rongbay, enbac …
Hotdeal.vn
Vinabook
Kinh nghiệm + hệ thống bán sách online
Cungmua.com
Tichluydiem.com
Tích hợp với tichluydiem
Vndoan.com
Chicilon Media - Trung Quốc
Chuyên bán quảng cáo tại các bảng cầu thang máy tại các tòa nhà.
Deal.zing.vn
Zing
Dựa trên hệ thống zing.vn và mạng xã hội zing.me
Runhau.vn
Cartel Vietnam
Quảng cáo nhiều trên các trang báo điện tử
Phagia.com.vn
Phununet
Kinh nghiệm tổ chức online shopping biz với YouShop của Phununet
Cucre.vn
Cty TNHH Bán Lẻ Nhanh
(vatgia)

Kinh nghiệm tổ chức kinh doanh tương tự của Vatgia
Cộng đồng người mua/người bán có sẵn của Vatgia

 Khuyenmaivang.vn | Uudaigia.com | remoingay.vn | Necdeal.com | Directdeals.vn | 51deal.vn | Cungmuasam.vn | Dealtravel.vn | Muale.vn | Supersale.com.vn | Gooddeal.vn | Kenhgia.com | Hatde.com.vn | Vngiare.com | Giamua.com| Mua24h.us …


1. Muachung.vn


Muachung là một trong những website đi đầu với hình thức Mua theo nhóm ở Việt Nam.

Website có lượng backlink khá lớn, lượng referring domanins cao.


Nội dung SEO review: Mua Chung Groupon 

Trong năm vừa qua đã có sự điều chỉnh: giảm số lượng liên kết (30%), tăng cường sự đa dạng hóa backlink (50%).


Nội dung SEO review: Mua Chung Groupon

Phát tán qua mạng xã hội của muachung.vn ở mức thấp so với khả năng thực.


Nội dung SEO review: Mua Chung Groupon

Tuy nhiên, nếu nhìn ở góc độ người dẫn đầu thị trường, muachung.vn không tập trung vào SEO. Họ tập trung vào giải pháp marketing – truyền thông tổng thể. Mua quảng cáo, banner trên các website chất, lượng truy cập lớn:


Nội dung SEO review: Mua Chung Groupon


Nội dung SEO review: Mua Chung Groupon


Nội dung SEO review: Mua Chung Groupon

Bản thân việc khiến nhiều người biết tới hình thức mua theo nhóm cũng là một lợi thế. Vì khi biết tới hình thức này thì thông qua rất nhiều kênh truyền họ sẽ biết tới muachung.

Muachung.vn tập trung vào brandname


Nội dung SEO review: Mua Chung Groupon

Đặt liên kết trên các website lớn



Nội dung SEO review: Mua Chung Groupon

 

2. www.nhommua.com/

 

Tương tự như muachung.vn, nhommua.com có hệ thống backlink khá lớn, lượng refering domains khá cao. Trong năm vừa qua website cũng có sự biến đổi về backlink theo hướng giảm tổng số link, tăng đa dạng hóa liên kết.


Nội dung SEO review: Mua Chung Groupon

Nhommua.com làm khá tốt trên G+ nhưng dường như bỏ qua các mạng xã hội khác.


Nội dung SEO review: Mua Chung Groupon

Nhommua.com cũng SEO cho brandname là chính


Nội dung SEO review: Mua Chung Groupon

 

3. cungmua.com

 

Là website có hệ thống backlink lớn, đa dạng hóa tốt.


Nội dung SEO review: Mua Chung Groupon

Áp dụng triệt để mạng xã hội.



Phát triển Fanpage, G+ tốt (cho tới thời điểm hiện tại).


Nội dung SEO review: Mua Chung Groupon

Backlink giảm về số lượng và tăng cường sự đa dạng hóa trong nửa năm đổ lại đây.


Nội dung SEO review: Mua Chung Groupon

Cungmua.com chủ yếu đặt banner quảng cáo, SEO brandname, kêt hợp với SEO một số từ khóa ngành thời trang.

Nội dung SEO review: Mua Chung Groupon

 

4. http://www.hotdeal.vn/

 

Khác với 3 website trên, hotdeal là trang có sử dụng SEO và SEO khá tốt.

Hotdeal.vn có lượng backlink lớn: 1,1 triệu, tới từ 3.300 tên miền khác nhau



Nội dung SEO review: Mua Chung Groupon

trong đó sử dụng blog vệ tinh. Các blog vệ tinh tổng hợp bài từ nhiều nguồn khác nhau, với 4000 – 6000 index, cùng trỏ về trang chính qua tag.


http://lamtrangdamat.net/
Vệ tinh
http://chamsocsacdep.org/
Vệ tinh
http://lamdepchoda.net/
Vệ tinh
http://lamdeptunhien.org/
Vệ tinh
http://www.giamua.com/
Mua banner

Hotdeal cũng áp dụng hình thức mua banner tại trang chuyên mục của một số website.
Nội dung SEO review: Mua Chung Groupon

Khác với các website trên Hotdeal.vn rất chú trọng phát triển mạng xã hội. Với số lượng like, +1 nhiều. Tuy nhiên từ cuối 2013 thì cả fanpage và G+ đều “bỏ hoang”.




Vì là một website có SEO nên hotdeal.vn tập trung và các từ khóa có liên quan tới lĩnh vực thế mạnh của mình: thời trang
 
Nội dung SEO review: Mua Chung GrouponNội dung SEO review: Mua Chung Groupon

Nội dung SEO review: Mua Chung Groupon

Lượng backlink giảm, nhưng sau đó tăng cả về lượng và sự đa dạng. Tuy nhiên không ổn định, cho thấy xu hướng xây dựng backlink ồ ạt, khó kiểm soát.


NỘI DUNG

 

Khác với các trang khác, hotdeal.vn có nội dung, bài viết hoàn chỉnh, không đơn thuần là tin quảng cáo. Ví dụ: Bài viết về Đầm đuôi cá

http://www.hotdeal.vn/ha-noi/thoi-trang-nu/dam-duoi-ca-xinh-xan-cho-ban-gai-61375.html

- URL chứa từ khóa
- Tiêu đề chứa từ khóa
- Miêu tả chứa từ khóa
- Thẻ H1 + H2 chứa từ khóa



Nội dung SEO review: Mua Chung Groupon

Tiêu đề chứa từ khóa, từ khóa nằm ngay đầu bài viết


Nội dung SEO review: Mua Chung Groupon

Title và Description chứa từ khóa

Nội dung SEO review: Mua Chung Groupon

Thẻ H1 + H2 chứa từ khóa

III. VỀ WEBSITE http://banre123.vn/

 

Là một website mới, đi theo hướng Groupon, lượng sản phẩm còn ít, chưa có tên tuổi trên thị trường.

- Chưa tối ưu SEO
- Chưa build link
- Chưa phát tán qua MXH
- Có ý thức trong việc tổ chức nội dung


1. Định hướng chung

 

- Xác định lại mục tiêu chiến lược: nhiều nhóm sản phẩm hay chỉ 1 nhóm sản phẩm
 - Tăng cường độ tin cậy của banre123 trong mắt khách hàng thông qua việc cung cấp sản phẩm, dịch vụ uy tín, chất lượng.
- Tìm kiếm các nhà cung cấp cơ thương hiệu
- Đưa ra các cam kết bán hàng ưu đãi, chuẩn.
- Sử dụng truyền thông để phát tán thông tin, xây dựng hình ảnh.
- Sử dụng SEO và các biện pháp Marketing Online khác để hỗ trợ website.
- Xây dựng đội ngũ nhân viên có khả năng duy trì hệ thống.

2. Định hướng SEO, SEM


2.1 Tối ưu lại cấu trúc web chuẩn SEO
2.2 Viết lại nội dung chuẩn SEO
2.3 Xây dựng hệ thống blog vệ tinh
3.4 Phát tán nội dung qua MXH
3.5 Mua một cách vừa phải banner quảng cáo

3.6 Mua adword trong 3 tháng đầu để hỗ trợ SEO


3. Nhân lực



Cần 3 nhân viên:
- 1 làm nội dung và viết quảng cáo
- 1 xây hệ thống vệ tình và build link
- 1 lo mạng xã hội

IV. THỜI GIAN THỰC HIỆN

 

Nội dung SEO review: Mua Chung Groupon

 

V. KẾT LUẬN

 

Để xây dựng website http://banre123.vn/ thành một sàn thương mại điện tử theo mô hình Groupon cần thời gian tối thiểu là 03 tháng – Đây là thơi gian để hình thành và xây dựng hệ thống (bao gồm nhân viên và hệ thống online) – chưa đặt ra vân đề lợi nhuận thu về.

Mục tiêu là sau 03 tháng http://banre123.vn/ là:

-        Một website cấu trúc chuẩn SEO hoạt động theo mô hình Sàn thương mại điện tử
-        Có hệ thống hỗ trợ: vệ tinh, mạng xã hội đủ mạnh
-        Các hình thức hỗ trợ: email, banner được áp dụng hiệu quả
-        Đội ngũ nhân viên có chuyên môn và hoàn thành tốt công việc được giao:
+ Có khả năng hiểu sản phẩm, viết bài chuẩn SEO + hướng khách hàng, viết được quảng cáo ngắn
+ Sử dụng tốt các công cụ SEO và marketing
+ Phát triển được mạng xã hội
+ Quản lý được hệ thống blog vệ tinh
 

--- END ---