Tóm tắt sách: Từ không thành có!

Tôi thường ghét đọc sách dạy làm giàu, vì những “thằng” viết sách thường chỉ làm giàu cho …chính nó từ tiền bán sách.

Nên tôi chỉ đọc sách của các tác giả đã giàu nứt đố đổ vách, viết sách như là “ân huệ” cho những người khác học theo thay vì phải trả lời những câu hỏi lặp đi lặp lại hoài ở các buổi nói chuyện.

Và đây, ladies and gentlemen (and others), “Zero To One” bởi Peter Thiel.

Cho ai không biết Thiel, cha này nằm trong league của các ông trùm Mafia như Elon Musk, Jeff Bezos.

Trong sách, có bảy câu hỏi quyết định thành công Peter Thiel đưa ra cho các founder, thứ tự có thể không giống như dưới đây, nhưng tôi nhớ nhất cái gì thì liệt kê trước, và các ví dụ có cái là của tôi tự rút ra.

Team: team ngon thực sự là “đầu gấu” chưa? bao gồm các kỹ năng bổ sung nhau chưa?

Cái này chắc anh em startup ít nhất cũng trải nghiệm rồi. Một team toàn engineer không, làm mấy cái hack chơi thì được, chứ làm product ra ma nó xài. Team toàn business không thì kế hoạch rất hoành tráng, xong rồi…để đó vì có ai biết code đâu mà thực thi, outsource hả, good luck! Tốt nhất là đi tìm co-founder kỹ thuật.

Còn độ ‘đầu gấu’, có làm mới biết, tuy nhiên tốt nhất lúc phỏng vấn hỏi cho kỹ, thà giết lầm còn hơn bỏ sót, đó là cách Google làm. Về phỏng vấn lập trình viên, nếu bạn không biết có thể nhờ người khác phỏng vấn giùm, có thể mời người ta lại ly cafe 🙂

Monopoly (độc quyền): ok, start game tốt rồi, vậy end game đâu?  Giống như chess master, muốn thắng ván cờ phải luyện đi luyện lại các thế cờ tàn. Đừng để tương lai (của startup) bất định, dẹp bỏ cái suy nghĩ “không biết tương lai sao, cứ làm xong để xem thử, hông được thì bỏ làm lại”. Khi start nên tính trước, giả sử có thành công, thì mức thành công sẽ đến đâu, chiếm trọn được thị trường nào (monopoly)? Hoặc khi thành công đến mức nào thì nên bán lại (để thành công hơn, Youtube, Instagram)

Cái tư tưởng trên mới nghe hơi ngược với “Lean Startup” chút xíu, là phải build MVP (minimum viable product) xong, đem test, thay đổi theo người dùng. Tuy nhiên ngẫm kỹ thì không, tất cả các pivot (thay đổi) nhỏ dọc đường cũng chỉ là các nước tiếp theo sau ‘start game’ mà thôi, luôn luôn hướng đến ‘end game’.

Technology: có hàm lượng ‘chất xám’ gì trong product không? Vì nếu không có chất xám thì sẽ rất dễ bị copy (China, anyone?)

Timing: đúng thời điểm để làm cái việc đó chưa, too early, too late? Ví dụ: Microsoft từng ra máy tính bảng hồi đầu những năm 2000, sao không thành công? hay là bây giờ mà đi start mấy cái như Youtube thì sao.

Distribution:  Phân phối sản phẩm bằng cách nào? Ví dụ: có cái công ty Israel tên Better Place làm ra pin cho xe điện, có lúc value của công ty lên đến 800 triệu đô la, nhưng vẫn phá sản vì không có trạm để phân phối pin, và việc thay pin xe phiền toái quá.

Durability: công ty có thể tự vệ được hay không trước làn sóng mới trong 10, 20 năm tới? Câu này liên quan đến team, technology và cái ‘end game’ ở trên. Nếu ngừng sáng tạo, công ty sẽ không trụ được.

Kodak, tiên phong trong lĩnh vực phim ảnh, nhưng “sụm bà chè” vì không ra được business model mới trong thời đại Internet. Hay Blockbuster, từng chiếm trọn thị trường cho thuê phim ảnh qua shop, nhưng giờ thì người ta chỉ biết Netflix. Netflix rất thức thời, từ mô hình thuê đĩa CD gửi về nhà, giờ chuyển qua streaming. Netflix không đổi mới rồi thì cũng sẽ có Hulu hay…Piped Piper (j/k).

– [Nước sốt] bí mật: bí mật nào làm cho món phở của bạn ngon gấp 10 lần…cơm? thuốc bắc hay trùng chỉ, :-p? Cái này thiệt ra là cái nên để đầu tiên, nhưng tôi thấy nó quá quan trọng nên để cuối, hy vọng đọng lại được.

Câu hỏi quan trọng nhất mà các founder phải tự hỏi, nguyên văn từ Thiel: “Sự thật nào ít người đồng ý với bạn nhất?”. Đó, bí mật nằm ở đó. Vì nếu sự thật mà nhiều người biết đến và đồng ý với bạn nhất thì ai thèm trả tiền cho bạn, ví dụ: “trái đất quay quanh mặt trời”, bạn có thu được đồng nào từ sự thật đó không?

Một số sự thật mới nghe như điên rồ làm nên các gã khổng lồ: “máy tính sẽ thay đổi toàn bộ thế giới”, câu này giờ ai chả đồng ý, đúng không? Nhưng có chuyện vầy: có một thằng hói, đang học master in business ở Stanford năm 1980, trước khi quyết định nghỉ ngang để tham gia một công ty phần mềm máy tính, gọi điện cho mẹ, mẹ hắn hỏi “máy tính là cái gì? sao con không đi tìm việc làm?”. Đấy những năm 80 thử đi mà thuyết phục số đông về phần mềm (software) đi. À, thằng hói đó là Steve Ballmer. Và hắn cũng không cần nhiều người đồng ý về sự thật ở trên.

Sự thật gần đây nhất ..éo ai tin. (Đừng đọc câu trả lời trước khi bạn thử trả lời câu hỏi sau:) Giá của một tên lửa để đưa người vào trạm không gian ISS là bao nhiêu? 1 tỷ đô, hay vài trăm triệu đô?

Có một thằng điên phát hiện ra sự thật “giá chỉ khoản 2-3 triệu/cái”. Thằng điên đó bay qua Nga hỏi mua, bị mấy thằng Nga ngố xỉn vodka nhổ nước bọt, cười khẩy “ủa mày là thằng nào mà đòi mua tên lửa, mà muốn mua thiệt hả, 10 triệu/cái”, bực quá, thằng điên về nhà tự học tự build luôn, mất 2 năm là ra. Nếu thằng điên đó mà phải đi thuyết phục đám đông về sự thật kia, chắc chẳng bao giờ ra SpaceX [1]

Thiel có hẳn một chương nói tại sao ít người chịu đi tìm cái bí mật đó, tựu trung lại là do hai lý do chính:

Bản năng: con người thường hạn chế rủi ro, để đi tìm cái điều bí mật mất thời gian, công sức. Không thôi thì còn gì là bí mật nữa.

Giáo dục: người ta đã quá quen với cách giáo dục được sắp đặt sẵn, nên người ta thường ít chịu tìm tòi suy nghĩ (ê, cái này quen không, mà Thiel nói là giáo dục Mỹ á nhe).

Rồi, các founder, ai mà đọc tới đây, nếu tìm ra ‘bí mật’ gì thì đi làm đi, mỏ vàng đó! Không thì báo tôi một tiếng nha, tôi confirm rồi làm luôn giùm bạn, dĩ nhiên tôi hưởng hết, hehe.

Nói nhỏ: trong sách của Thiel còn có một bí mật khác rất ẩn ý, mà bạn muốn thì tự đi tìm nha. Tôi để giành để làm giàu cho tôi nữa chứ.

[1] Elon Musk’s Space Dream Almost Killed Tesla

The ‘Don’t Drive Sleepy’ Ad That Hits Home Hard

Nice poster

zamarketinginsider

Road safety advertising campaigns too often rely on shock tactics to make their point. We’ve all seen them before – the blue flashing lights, the loud bang, the blood and tears. That’s why I really love this campaign from Thai Health, which relies on a clever visual to communicate convincingly that driving when tired is a really bad idea.

All it takes is one glance to understand the point that’s been made, which means this strong, visual ad is equally perfect for the Web, print or for billboards.

Sleepiness is stronger than you. Thai Health Don't Drive Sleepy Project Sleepiness is stronger than you.
ThaiHealth
Don’t Drive Sleepy Project

This isn’t by any means a new ad, but it’s a perennial, which goes to show that great ads should work well regardless of how long they’ve been around.

Advertising Agnency: BBDO Bangkok, Thailand
Chief Creative Officer: Suthisak Sucharittanonta
Executive Creative Director: Subun KhowVasan Wangpaitoon
Creative Director: Taewit Jariyanukulpun
Copywriter: Pattarapong Lapjarupong

View original post 16 more words

[Quyết định ngẫu nhiên] Học gì cũng được.

Cuộc đời tôi cũng bình thường như bức tường…đóng rêu, nhưng có những quyết định khá ngẫu nhiên (ra quyết định dưới…5 giây), lại đem lại những lợi ích không ngờ. Tôi sẽ note lại, như là một excercise để tập connect the dots, hay đơn giản là dùng blog này như một SD card (bộ nhớ ngoài) để sau này khỏi quên. Những quyết định này được kể ra không theo thứ tự thời gian, mà theo thứ tự…ngẫu nhiên giống khi nó được đưa ra vậy. Quyết định đầu tiên: “học gì cũng được”

Năm lớp sáu, tôi học ở một trường cấp hai rất nhỏ, ở một thị xã rất nhỏ có tên là Phan Rang. Cái miền đất được thiên nhiên ưu đãi cái “gió như Phan”, “nắng như Rang”, mỗi ngày tôi đạp xe năm cây số đi học, không ít lần té xe vì…gió bạt. Cuối năm lớp sáu đó, vì lý do kinh tế gia đình, ba má tôi tính gửi tôi lên Đà Lạt học, ở với nhà nội hoặc nhà bác. Để dễ dàng thuyết phục bà nội và bác tôi, ba tôi bí mật chuẩn bị cho tôi một cú stun là thì vào trường chuyên Thăng Long ở Đà Lạt, đậu thì mới báo, rớt thì thôi. Nghĩ tới chuyện thi cử là mệt rồi, nhất là hồi năm cuối cấp lớp năm tôi không đủ điểm để vào trường chuyên ở Phan Rang. Nhưng có một điểm rất thu hút tôi ở cái trường ở Đà Lạt, đó là học sinh được nhận học bổng bằng tiền tươi thóc thật! Lúc đó nhà khá nghèo, nên học mà có tiền thì còn gì sướng hơn. Vậy là chị tôi lúc này đã ở Đà Lạt đăng ký cho tôi thi vô chuyên Toán, còn tôi ở quê nhà dợt lại vài bài thi chuyên hay ra (Toán là môn ruột của tôi, hồi lớp năm đi thi thị xã được giải Nhất). Ôn đã đời, ngày đăng ký, chị tôi gọi điện báo: lớp bảy Thăng Long năm nay không cho thi vô chuyên Toán. Lý do là vì lớp Toán mở từ lớp sáu, học sinh đã thi tuyển vô từ năm ngoái, và năm nay không đứa nào rớt ra (!). Lớp chuyên Văn thì có trống vài chỗ do năm ngoái tuyển không đủ. Và có lớp chuyên Anh mới mở. Vào thời đó (1995) có một chính sách là từ lớp sáu học sinh mới học Anh văn, nên lớp bảy mới có lớp chuyên Anh để đảm bảo công bằng thi đầu vào. Chị tôi phân tích: chuyên Văn ít chỗ quá, sợ thi khó, thi vô chuyên Anh trước, vô đó chờ năm sau đứa nào lớp Toán rớt ra thì tôi thi vô trám chỗ. Lúc đó chắc sợ tốn tiền điện thoại đường dài (?), tôi trả lời gọn lỏn: “cũng được”.

Cái chuyện thi cử cũng lắm gian truân, nếu không may mắn nhờ một tờ đề thi mẫu mà tôi được dịp nhìn qua 10 phút trước khi vô phòng thi thì chắc tôi cũng rớt đài rồi. Nhưng tua nhanh một chút, sau này tôi theo lớp chuyên Anh, kể cả đến cấp ba ở Lê Hồng Phong. Có nhiều cái lợi Anh văn đem lại cho riêng tôi rất…đã:
– Học chung với lớp rất nhiều bạn nữ rất xinh, và đến khi tốt nghiệp cấp 3, các mối tình học trò vắt qua …gần hết 2 bàn tay.
– Đến khi vô đại học, học Công nghệ thông tin, ban đầu tôi không biết 1 tí gì lập trình, trong khi bạn tôi biết Pascal, C đủ kiểu, có các tay “đầu gấu” còn thi quốc gia chuyên tin. Nhưng đến năm 3, khi bắt đầu phải tự học nhiều, đọc tài liệu trên Internet, cái vũ khí tưởng chừng mục ruỗng khá lâu không dùng là Anh văn cho tôi một head-start (đi trước) so với bạn tôi. Bài báo khoa học tôi hiểu khá dễ và làm theo nhanh, còn bạn tôi thường phải đọc đi đọc lại khá lâu, mặc dù có người thông minh hơn tôi.
– Cũng thời học đại học, tôi lại đi dạy Anh văn ở các trung tâm, lại gặp gỡ những người thú vị khác ngoài cái nerdy circle của mình, kể cá giáo viên lẫn học viên. Tôi còn nhớ có lần tôi đi máy bay ra Hà Nội, lên máy bay Pacific Airlines, anh tiếp viên đến chào tôi làm bất ngờ: chào Thầy. Té ra ảnh học Anh văn lớp tôi. Chỉ vậy thôi cũng đủ vui.
– Xin việc làm: tôi có thời gian ngắn đi làm quản trị viên tập sự cho hãng tàu biển Maersk, tôi qua 6 vòng phỏng vấn để trở thành 1 trong 6 người được chọn từ khoản 600 ứng viên khác. Dĩ nhiên có nhiều yếu tố khác, nhưng điều tôi impress họ nhất là tiếng Anh rất tốt của tôi.
– Du học: khỏi phải nói, trong khi các bạn tôi struggle với khoản đi thi GRE hay TOEFL để nộp hồ sơ, tôi cứ tới ngày vô thi không ôn gì cả vẫn được điểm cao hơn yêu cầu.
– Đi làm: khoản này thì tôi không còn lợi thế nữa vì tôi đang làm tại Úc, đến con Kangaroo cũng hiểu tiếng Anh! Nhưng để đến được bước này thì phải có các bước trước.

Nếu hè năm đó, nếu tôi đắn đo lâu quá, không buông đại câu “cũng được” đó thì chắc tôi vẫn mãi ở Phan Rang. Nên sau này, tôi sẵn sàng làm bất cứ thứ gì, từ vô hại trở lên là làm được rồi! Nhưng biết đâu, nếu tôi vào lớp chuyên Văn, chắc giờ tôi cũng xuất bản được vài quyển sách! Ha ha

(Bài blog này được inspire bởi câu hỏi trên Quora How did one small decision change your entire life?)

Java, automatically change file name if file exists

If you want to save a file to a certain directory, but don’t want to overwrite existing file. You want to append the file name with an index. Say, you want your file as “myFile.txt”. If “myFile.txt” exists already, you want to change your file name to “myFile1.txt”.

Here is the solution.


String fileName = "myFile";
String extension = ".txt";
String fixedPrefix = fileName;
Integer i=1;

boolean oldFileExist = true;
while (oldFileExist)
{
try {
FileInputStream inputStream = new FileInputStream(fileName + extension);
try {
inputStream.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
fileName = fixedPrefix + i.toString();
i++;

} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
oldFileExist = false;
}
}

fileName = fileName + extenstion; //fileName now should be like myFile1.txt

//now continue to create a file with fileName as name, then write to it as normal

BufferedWriter fileBuff = new BufferedWriter(new FileWriter(fileName , false));
//write your content here
//bla bla
//.....

fileBuff.close()

ideas Mar 07

07/03:

State:

  1. Green, car start moving, leading part of the queue  with speed significantly > 0, trailing part still 0
  2. Green, cars well into moving stage, no cars with speed = 0, we can reach this stage without previous green stage (new oncoming cars hit green light timely)
  3. Green, but green is about to expire soon, and cars going to make stops (the closest cars will hit the red light)
  4. Red, new red, with a bunch of cars coming (cars still moving, and making stops soon)
  5. Red, well into red, with leading part queuing, later part still moving
  6. Red, all cars stopped.
  7. Red, but red going to expire, some coming cars don’t have to stop.

Some thoughts: to capture case 1 and 2, just use car features (with corresponding weight components of weight vector): moving queue, still queue. Again, to capture cases 4, 5, 6, just need moving queue and still queue.

Case 3, case 7: do I need more feature for it?