My Developer Resolutions for 2017

It’s a new year, and with that comes new opportunities for growth, change, and all the other type of things that you read on motivational posters. In the past, I’ve been pretty good about keeping resolutions, so I thought I would jot down a few and see how many of


My Developer Resolutions for 2017It’s a new year, and with that comes new opportunities for growth, change, and all the other type of things that you read on motivational posters. In the past, I’ve been pretty good about keeping resolutions, so I thought I would jot down a few and see how many of them stick.

As the title mentions, these are developer resolutions, so this is certainly not all I’ll be focusing on this year, but I’m sure it’ll still be a major part of my year.

My Developer Resolutions for 2017

Reading, Writing, but Not Arithmetic

Resolutions are about becoming better.

Quite often these changes are physical ones like losing weight and eating right, and while these are great things to focus on, it’s important not to neglect the mental side of things. As a developer, there are countless big name books out there that folks commonly recommend as the seminal works to become a great developer and for the most part, they are great.

Last year, I managed to knock a few of these off my lists:

Most were extremely easy and enjoyable (as far as technical books go) reads, and often provided a great deal of insight that I believe that will provide value to just about any developer. Note the asterisk next to Design Patterns will indicate that there was some jumping around, as the book is an extremely dense, dry read and will likely serve better as reference than anything.

So this year, again, I’ll make an endeavor to read a few more of these development classics and may chime in with some reviews as well :

In addition to these, I’m hoping to just read more in general, both technical and non-technical books.

Screens fill too much time of our everyday lives as developers, so it’s nice to grab a book by the cover and spend some time letting your mind fill in all those blanks. Again – it’s not for everyone, but it’s something than I plan to do.

Resolution: Read at least one book a month, and aim for an even split between technical and non-technical books. Maybe consider writing reviews or summaries and becoming a total sell-out?

My Developer Resolutions for 2017

Tu Parle F#? Learning a Language or Two

As a developer that has spent the majority of his career within the .NET stack, it’s easy to become spoiled with C#. It’s an incredibly useful and well-designed general purpose language, but sometimes, you just need to spice it up.

For years, the following languages have summed up 90%+ of my everyday development activities:

  • C#
  • JavaScript / TypeScript
  • SQL

While I don’t really count things like HTML or CSS in there, and the occasional legacy sprinklings of Visual Basic, or at worst VB6, it’s safe to say that things don’t change too much. So I thought, why not mix it up and either knock the rust off of something that I learned long ago, like C or Python, or learn something new entirely, like F#?

F# is a fairly safe language to learn as it still falls within the Microsoft umbrella and would likely see a bit of play in my day-to-day work. So if I was going to learn a functional one, why not F#? But then I figured, let’s break the mold entirely and learn something else like Go, which as a concurrent language might shake things up.

Resolution: Learn at least one new programming language, preferably two that are quite different from what I normally use.

My Developer Resolutions for 2017

Community is Key

The development community is still extremely important to me, and it has given me far more than I could ever reciprocate. Despite this, I’m still going to try and make my best effort to keep helping my fellow developers in any way that I can.

Regardless of the medium; blog posts, discussions on Slack, answering questions on sites like Stack Overflow or the ASP.NET Forums, or even talking to developers locally, I want to continue to help developers succeed and continue to learn along the way.

For the past few years, I have done this with a ridiculous level of vigor, however last year quite a few things changed with the birth of my son. While I may not spend as many late nights as I used to answering questions or having discussions about application architectures, I’m still there always willing to lend a helping hand.

Resolution: Blog at least once or twice a month, and continue to heavily participate in forums, user-groups, and other events. All done while my son goes through his terrible twos.


There are a ton of other “small” things that I’d like to focus on during the year, which didn’t quite deserve a larger section within this post, but include:

  • Taking advantage of Pluralsight and watching more courses. They are always so well-done and generally you can get quite a lot out of them.
  • Consider furthering my education and enrolling in a Master’s program, in case I ever wanted to do a bit of teaching on the side (or just to see how some of those Computer Science courses look with some experience behind them).
  • Giving a little TLC to some of my open-source projects and being a bit more mindful of just how many people actually use them. Basically, just updating them more frequently…
  • Maybe settle on a god-damn JavaScript framework? Maybe? I mean I don’t know, this could be an entire blog post and there will probably be three frameworks released by the time I publish this…


Founder DesignBold: “Chúng tôi có thể đạt được doanh thu như Flappy Bird vào cuối năm nay”

Theo như dự tính, cuối năm nay DesignBold có thể đạt được mốc doanh thu 50.000 USD/ngày như game của Nguyễn Hà Đông và có thể duy trì mức này lâu hơn nhiều so với Flappy Bird.

Anh Hùng Đinh, CEO JoomlArt – founder của ứng dụng DesignBold.

Chỉ chưa đến 7 ngày ra mắt, DesignBold – một ứng dụng thiết kế của người Việt đã đạt được doanh thu hơn 80.000 USD.

Theo tính toán của founder startup này, dự tính đến cuối năm 2016, DesignBold sẽ phá kỷ lục của Flappy Bird Nguyễn Hà Đông – game Việt từng một thời làm đảo lộn cuộc sống người chơi trên thế giới.

Cha đẻ của dự án, Hùng Đinh – CEO JoomlArt cho biết, DesignBold không phải là hiện tượng mà được xây dựng để đem lại giá trị lâu dài:

– Chào anh. Những ngày qua, cái tên DesignBold không chỉ khiến cộng đồng startup Việt mà cả cộng đồng design thế giới xôn xao khi được so sánh với Flappybird của Nguyễn Hà Đông. Anh có thể chia sẻ ý tưởng làm nên sản phẩm đặc biệt này?

– Đầu năm 2015, tôi tham gia một khóa học kéo dài 1 tháng ở Israel. Giảng viên yêu cầu 5 người từ các nước khác nhau vào một nhóm và đưa ra những ý tưởng khởi nghiệp của nhóm mình.

Vốn có ý tưởng về một nền tảng công nghệ thiết kế từ trước, tôi đề xuất và được các thành viên rất ủng hộ. Cùng với kinh nghiệm trong ngành đang khởi nghiệp, tôi tiến hành làm luôn. Chỉ trong vòng một tháng, bản thử nghiệm đã được chạy thử tại Israel và được đánh giá rất cao.

Trở về nước, sau hơn 1 năm trời ròng rã, tôi và đội ngũ ở Việt Nam đã dồn toàn tâm toàn lực xây dựng sản phẩm để DesignBold chính thức ra mắt thị trường vào ngày 25/10/2016.

– Sau hơn 1 tuần ra mắt, đến nay Designbold đã có kết quả như thế nào?

– DesignBold không đơn giản chỉ một phút huy hoàng rồi chợt tắt như Flappy Bird, chúng tôi đang tham gia một cuộc cách mạng lâu dài và bền vững nhằm góp phần thay đổi hoàn toàn trải nghiệm thiết kế đồ họa truyền thống.

Chưa đến 7 ngày tung ra thị trường, Designbold đã nhận được sự chào đón của người dùng với 20.336 lượt đăng kí, tham gia hệ thống, hơn 2026 khách hàng trả tiền với trên 80.000 USD.

– Anh có thể lý giải về ý tưởng xây dựng DesignBold?

– DesignBold xuất phát từ ý tưởng của tôi nhằm thay đổi hoàn toàn trải nghiệm thiết kế đồ họa truyền thống.

Với cách làm cũ, cả 2 bên khách hàng và thiết kế có một khoảng cách rất lớn, làm việc trao đổi chủ yếu qua điện thoại, email. Quá trình hoàn thiện sản phẩm phải kéo dài từ 7-10 ngày, thậm chí còn lâu hơn rất nhiều khi có yêu cầu thay đổi từ các bên. Người dùng lại thường không đủ thời gian và khả năng để sử dụng được các phần mềm thiết kế chuyên dụng nếu muốn có chỉnh sửa nhỏ.

Tham vọng của chúng tôi là thay đổi cách thiết kế sao cho nhanh, gọn và hiệu quả. Chúng tôi cũng muốn mở rộng chuỗi giá trị cho nền tảng này khi hợp tác cùng các đơn vị in ấn chuyên nghiệp. Việc hợp tác sẽ là một cuộc cách mạng lâu dài và bền vững nhằm góp phần thay đổi hoàn toàn trải nghiệm thiết kế đồ họa truyền thống.

– Anh nói sao khi có ý kiến cho rằng DesignBold giống Canva?

– Mới bắt đầu bạn sẽ cảm thấy mô hình này từa tựa với Canva. Tuy nhiên, ngoài việc phát triển Tool (công cụ) thiết kế, chúng tôi tạo ra 1 Platform (nền tảng) kết nối các bạn làm về thiết kế, marketing với các khách hàng (chủ yếu là các doanh nghiệp nhỏ, khởi nghiệp không có nhân viên thiết kế) trên toàn thế giới, giúp có được các sản phẩm thiết kế trong thời gian ngắn hơn, hiệu quả hơn.

DesignBold còn hỗ trợ khách hàng đưa sản phẩm đến nhà in mà họ lựa chọn. Tùy thuộc vào dự án, song nền tảng này sẽ rút ngắn thời gian hoàn tất cả quá trình nhanh gấp khoảng 6-7 lần.

Còn về ý kiến cho rằng giống Canva, bạn có thể nhìn đó, những sản phẩm như Uber hay Grab cũng tương tự nhau nhưng cách thức hoạt động thì khác hẳn.

Tôi quan niệm, cùng với một vấn đề, quan trọng là cách giải quyết đột phá và mang tính chiến lược. Bất kỳ một sản phẩm nào cũng có các sản phẩm thay thế, điểm vượt trội là anh phải làm nó tốt hơn hẳn, mà trọng trách này nằm ở đội phát triển sản phẩm. Khi sản phẩm đã tốt rồi thì khách hàng sẽ tự tìm dến mình.

– Anh có lo ngại về tình trạng nhiều designer có chiều hướng liên kết với khách hàng để làm freelancer trong quá trình từng cộng tác với DesignBold?

– DesignBold khác với freelancer, vì có 1 hệ thống chuyên nghiệp, cung cấp cho 2 bên công cụ hỗ trợ tốt hơn. Chúng tôi cung cấp cho người dùng một nền tảng hoàn chỉnh, qua đó, khách hàng và cả designer sẽ hoàn thiện công việc một cách tốt nhất.

– Với quy mô toàn cầu như hiện tại, thị trường lớn nhất của DesignBold là khu vực nào?

– 99% là thị trường Mỹ.

– Ở Việt Nam, mọi người đều chuộng sản phẩm miễn phí trong khi giá phần mềm này được cho là hơi cao. Liệu người Việt có tiếp cận được với sản phẩm này?

– Tôi cũng không kỳ vọng nhiều vào thị trường Việt Nam. Thực tế, thị trường software của Việt Nam khá thiệt thòi. Nền công nghệ của Việt Nam chưa thực sự được chú trọng. Việc trả lương cho IT và cho người làm về sáng tạo chưa thực sự xứng với công sức họ bỏ ra.

Bên cạnh đó, với thói quen tiêu dùng hiện tại của người Việt, họ chưa sẵn sàng bỏ ra mấy triệu để mua một sản phẩm dù sản phẩm sẽ đảm bảo tiệt kiệm được thời gian và mang lại hiệu quả.

Mở ra hướng đi mới về ngành in ấn có thể là một cách tiếp cận khá hợp lý.

Chi phí của một xưởng in không hề rẻ, khoảng 2-3 tỷ nếu đầu tư một xưởng cực kỳ bé. Nếu mình đặt một đơn hàng chỉ 100.000 đến vài trăm nghìn đồng thì họ chắc chắn lỗ vì công nghệ còn rất truyền thống. Thị trường cứ phân mảnh và chính người dùng cũng khó nắm bắt được giá cả cũng như chất lượng in.

Nhưng khi được kết hợp với DesignBold, thị trường này sẽ trở nên rõ ràng và minh bạch và người tiêu dùng cũng dễ dàng lựa chọn hơn.

– Đâu là khó khăn trong quá trình hoàn thiện và phát triển DesignBold?

– Chúng tôi gặp rất nhiều khó khăn, vấn đề bản quyền cũng khiến tôi đau đầu. Bản quyền về hình ảnh, tài liệu sáng tạo, cho đến những sản phẩm có giá trị trí tuệ còn khá trôi nổi, đặc biệt chưa được quản lý tốt ở Việt Nam.

DesignBold minh bạch hóa vấn đề này, hiện tại chúng tôi đang tuân thủ mặt bản quyền toàn bộ theo quy chuẩn quốc tế. Vì chúng tôi không public sản phẩm mà phải thông qua một hệ thống có tính bảo mật 100%. Khách hàng và thiết kế cũng được hướng dẫn để cẩn thận với việc sản phẩm bị thoát ra ngoài, vượt tầm kiểm soát cũng như trách nhiệm của DesignBold

– Anh cũng từng ví sự thành công của dự án này với Flappy Bird, đến khi nào DesignBold sẽ đạt được 50.000 USD/1 ngày như game của Nguyễn Hà Đông?

– Theo như dự tính, cuối năm nay chúng tôi có thể đạt được mốc doanh thu này.

Tuy nhiên, DesignBold không phải là game, game thường có nhiều người yêu nhưng mai có thể bỏ, chỉ mang tính giải trí, thường có hiệu ứng trong khoảng thời gian ngắn. Trong khi ứng dụng của chúng tôi hỗ trợ liên tục và mang giá trị lâu dài.

Với khả năng tương tác cao và chia sẻ, sản phẩm còn tạo hiệu ứng lâu dài về tư duy thiết kế và xây dựng các bộ nhận diện mang tầm quốc tế.


NFC là gì? Sử dụng như thế nào?

NFC là gì?


NFC (Near-Field Communications) là công nghệ kết nối không dây phạm vi tầm ngắn trong khoảng cách 4 cm, sử dụng cảm ứng từ trường để thực hiện kết nối giữa các thiết bị khi có sự tiếp xúc trực tiếp hay để gần nhau. NFC được phát triển dựa trên nguyên lý nhận dạng bằng tín hiệu tần số vô tuyến (Radio-frequency identification – RFID), hoạt động ở dải băng tần 13.56 MHz và tốc độ truyền tải dữ liệu tối đa 424 Kbps.

Do khoảng cách truyền dữ liệu khá ngắn nên giao dịch qua công nghệ NFC được xem là an toàn.Thiết bị được trang bị NFC thường là điện thoại di động, có thể giao tiếp với các thẻ thông minh, đầu đọc thẻ hoặc thiết bị NFC tương thích khác. Ngoài ra, NFC còn được kết hợp nhiều công nghệ sử dụng trong các hệ thống công cộng như bán vé, thanh toán hóa đơn…

Lịch sử của NFC?

Phát minh đầu tiên gắn liền với công nghệ RFID được cấp cho Charles Walton vào năm 1983. Năm 2004, Nokia, Philips và Sony thành lập Diễn đàn NFC (NFC Forum). NFC Forum đóng vai trò rất lớn trong sự phát triển của công nghệ NFC, khuyến khích người dùng chia sẻ, kết hợp và thực hiện giao dịch giữa các thiết bị NFC. Đối với các nhà sản xuất, NFC Forum là tổ chức khuyến khích phát triển và cấp chứng nhận cho những thiết bị tuân thủ tiêu chuẩn NFC. Hiện tại, NFC Forum có 140 thành viên trong đó bao gồm rất nhiều thương hiệu lớn như LG, Nokia, HTC, Motorola, RIM, Samsung, Sony Ericsson, Google, Microsoft, PayPal, Visa, Mastercard, American Express, Intel, Qualcomm…

Năm 2006, NFC Forum bắt đầu thiết lập cấu hình cho các thẻ nhận dạng NFC (NFC tag) và cũng trong năm này, Nokia đã cho ra đời chiếc điện thoại hỗ trợ NFC đầu tiên là Nokia 6131. Tháng 1/2009, NFC công bố tiêu chuẩn Peer-to-Peer để truyền tải các dữ liệu như danh bạ, địa chỉ URL, kích hoạt Bluetooth, v.v…

Với sự phát triển thành công của hệ điều hành Android, năm 2010, chiếc smartphone thế hệ 2 của Google là Nexus S đã trở thành chiếc điện thoại Android đầu tiên hỗ trợ NFC. Cuối cùng, tại sự kiện Google I/O năm 2011, NFC một lần nữa chứng tỏ tiềm năng của mình với khả năng chia sẻ không chỉ danh bạ, địa chỉ URL mà còn là các ứng dụng, video và game.

Thêm vào đó, công nghệ NFC cũng đang được định hướng để trở thành một công cụ thanh toán trên di động hiệu quả. Một chiếc smartphone hay máy tính bảng gắn chip NFC có thể thực hiện giao dịch qua thẻ tín dụng hoặc đóng vai trò như một chìa khóa hoặc thẻ ID. Vào thời điểm hiện tại, NFC được tích hợp vào rất nhiều thiết bị chạy trên nhiều nền tảng hệ điều hành khác nhau, gồm Android (Nexus 4, Galaxy Nexus, Nexus S, Galaxy S III và HTC One); Windows Phone (các máy Nokia Lumia và HTC Windows Phone 8X) và nhiều thiết bị BlackBerry cũng tích hợp NFC. Tuy nhiên, iPhone của Apple vẫn chưa tích hợp phần cứng NFC.

Nhật Bản là quốc gia đã áp dụng NFC rất sớm. Vào tháng 7/2004, chiếc điện thoại đầu tiên hỗ trợ NFC để thanh toán di động đã được ra mắt ở Nhật Bản và đến thời điểm này đã có khoảng 100 triệu người đăng ký dịch vụ thanh toán di động qua công nghệ NFC. Công nghệ Nhật Bản sử dụng gọi là “FeliCaoh yeah”, một công nghệ riêng nhưng nó cũng được xây dựng trên nền của NFC. Dù vậy, Nhật Bản cũng đang cố gắng tiêu chuẩn hóa công nghệ của họ để phù hợp hơn với thế giới.

Trong khi ứng dụng thanh toán di động ở Nhật Bản đã phát triển từ rất lâu, ở những nơi khác trên thế giới mới chỉ thử nghiệm trong thời gian gần đây, đặc biệt là ở các quốc gia châu Âu và một vài vùng ở Mỹ.

NFC hoạt động như thế nào? Sử dụng ra sao?


Để NFC hoạt động, chúng ta buộc phải có 2 thiết bị, 1 là thiết bị khởi tạo (initiator) và thiết bị thứ 2 là mục tiêu (target). Bí mật của NFC nằm ở đây, initiator sẽ chủ động tạo ra những trường sóng radio (bản chất là bức xạ điện từ) đủ để cung cấp năng lượng cho target vốn hoạt động ở chế độ bị động. Target của NFC sẽ không cần điện năng, năng lượng để nó hoạt động lấy từ thiết bị initiator. Đây là một đặc điểm cực kỳ có ý nghĩa vì nó cho phép người ta chế tạo những thẻ tag, miếng dán, chìa khóa hay thẻ NFC nhỏ gọn hơn do không phải dùng pin.

Bạn muốn một ví dụ về ứng dụng của NFC trong thực tế? Hãy tượng tượng bạn đến rạp chiếu phim, tại rạp có tấm poster giới thiệu phim mới rất thú vị, chúng ta chỉ việc chạm điện thoại vào poster, tất cả các thông tin về phim đó sẽ hiện lên trên điện thoại, link dẫn tới trailer, đánh giá, lịch chiếu phim ở rạp gần nhất hay trang web mua vé online….

Bên cạnh việc chế tạo các thiết bị đơn giản trên, NFC còn có thể dùng được trong các thiết bị phức tạp hơn do tính linh hoạt của nó. Chẳng hạn như điện thoại vừa có thể đóng vai trò initiator hay target hay hoạt động ở chế độ ngang hàng (peer to peer). Tiếp tục ví dụ ở trên, sau khi mua vé thông qua tờ poster thì bạn có thể đi vào rạp chiếu phim, chạm điện thoại vào máy đọc (khi này điện thoại đóng vai trò target) và thế là xong!

Ứng dụng của NFC

Hiện tại chúng ta thấy có quá nhiều đồn thổi về việc sử dụng NFC, đặc biệt là trong việc thanh toán, biến điện thoại thành ví điện tử. NFC có tiềm năng để thực hiện việc đó, loại bỏ thẻ tín dụng, séc (cheque) và các phương tiện thanh toán khác. Nhưng liệu NFC có được sử dụng làm gì khác nữa hay không?

Tuy có nhiều tác dụng nhưng việc sử dụng NFC được chia làm 4 nhóm: Touch and Go (ví dụ như chạm vào để mở cửa), Touch and Confirm (bổ sung thêm một lớp bảo mật cho thanh toán di động, chẳng hạn như nhập mã PIN để xác nhận thanh toán) hay Touch and Connect (chia sẻ dữ liệu với một thiết bị khác) và Touch and Explore (khám phá những dịch vụ được cung cấp)

Mạng xã hội: Mạng xã hội đã bùng nổ trên toàn thế giới và trên các thiết bị di động, mạng xã hội đã trở thành một yếu tố không thể thiếu song song với những tính năng cơ bản khác. Với sự hỗ trợ của NFC, người dùng có thể mở rộng và khai thác hiệu quả các tính năng như:

Chia sẻ tập tin: với việc kết nối 1 chạm giữa 2 thiết bị hỗ trợ NFC, người dùng có thể ngay lập tức chia sẻ danh bạ, hình ảnh, bài hát, video, ứng dụng hoặc địa chỉ URL. Ví dụ như với một chiếc điện thoại chạy hệ điều hành Windows Phone 8, bạn có thể sử dụng công nghệ NFC để chia sẻ hình ảnh hoặc sử dụng các thiết bị có tương thích với NFC – ví dụ như bộ loa Nokia Play 360 để thưởng thức âm thanh chất lượng cao qua loa mà không cần dây nối.


Điện thoại và Loa NFC

Tiền điện tử (electronic money): người dùng chỉ việc kết nối và nhập số tiền cần chi trả;

Chơi game trên di động: kết nối giữa 2 hay nhiều thiết bị để cùng chơi game, đặc biệt là các game đối kháng hoặc đua xe.


Chạm để chơi Angry Birds

Kết nối Bluetooth và WiFi: NFC có thể được dùng để kích hoạt các kết nối không dây tốc độ cao để mở rộng khả năng chia sẻ nội dung. NFC có thể thay thế quy trình ghép nối khá rắc rối giữa các thiết bị Bluetooth hay quy trình thiết lập kết nối WiFi với mã PIN, chỉ với việc để 2 thiết bị gần nhau để ghép nối hoặc kết nối vào mạng không dây.

Thương mại điện tử


Ứng dụng của NFC trong thương mại điện tử

– Vận chuyển công cộng: Có thể coi đây là 1 phần của thanh toán di động nhưng nó cũng nên được đề cập riêng. Các phương tiện vận chuyển công cộng ở các thành phố lớn rất cần những phương thức thanh toán tiện lợi như NFC, thực tế thì một số thành phố như Nice ở Pháp đã cho khách hàng trả tiền xe bus, tàu điện ngầm hay xe điện qua điện thoại NFC.

– Mua vé: Bạn có thể mua bất cứ loại vé nào với điện thoại NFC, từ vé phim, vé ca nhạc, các sân vận động hay thậm chí thay cho việc làm thủ tục ở sân bay.

– Chìa khóa: Hãy tưởng tượng đến việc vứt bỏ toàn bộ chìa khóa của bạn ở nhà mà thay vào đó là 1 chiếc điện thoại di động thôi. Với việc sử dụng NFC, tất cả những gì bạn cần làm là chạm nhẹ vào cửa nhà, văn phòng hay khách sạn, khởi động xe…..

– So sánh sản phẩm khi mua sắm: Bất cứ khi nào mua gì, bạn chỉ việc vẫy nhẹ điện thoại là đã có thể xem thông tin, đánh giá hay giá của sản phẩm đó từ các cửa hàng khác. Hiện tại chúng ta thường dùng mã vạch (barcode) để làm việc này nhưng NFC giúp mọi thứ nhanh hơn rất nhiều.

– Check-in và đánh giá về một địa điểm nào đó: Gần đây, Google đã bắt đầu dán những nhãn NFC trên một số cửa hàng và nhà hàng tại Mỹ. Với điện thoại NFC, bạn chỉ cần chạm nhẹ vào là đã tham khảo được thông tin, đánh giá, thức ăn hay hàng hóa bên trong. Những bạn hay sử dụng Foursquare để checkin cũng được lợi, không cần mạng hay GPS nữa mà chỉ cần chạm vào thẻ để checkin.

– Nhận diện hàng giả: Đây là công dụng mới nhất của NFC, một công ty có tên gọi Inside Secure vừa cho ra mắt những tag nhằm xác thực sản phẩm là hàng giả hay hàng thật. Ví dụ, bạn nhìn thấy một chiếc túi xách Prada mắc tiền trên người ngôi sao X nào đó, không biết là hàng thật hay hàng giả, chỉ việc đưa điện thoại đến sát chiếc túi xách thì nó sẽ nhận được ngay (tất nhiên là việc này chỉ thực hiện được trong tương lai, khi mà các túi xách đều có chip NFC được nhúng sẵn).

NFC có khác biệt gì so với các công nghệ không dây khác?


NFC so với các mạng không dây khác

– Bluetooth: NFC có thể giống Bluetooth ở một vài mặt nào đó, chẳng hạn như chúng đều là giao tiếp không dây với phạm vi ngắn, nó cũng giống RFID (Radio Frequency ID) trong việc sử dụng các sóng radio để nhận diện. Tuy nhiên, NFC lại sở hữu những đặc tính rất riêng tách biệt hẳn với Bluetooth và RFID.

NFC truyền tải dữ liệu ở những khoảng cách rất nhỏ so với phạm vi của Bluetooth, chẳng hạn như tối đa chỉ từ 4-10cm so với 10m từ Bluetooth, trong khi công nghệ RFID thậm chí còn có thể đạt đến mức độ nhận sóng tính bằng km trong một số trường hợp. Nhiều người cho rằng khoảng cách này quá nhỏ và là hạn chế của NFC nhưng đây chính là ưu điểm của nó, giới hạn 4-10cm được đặt ra nhằm tránh trình trạng chống chéo sóng trong khu vực đông đúc cũng như hạn chế các tương tác mà người dùng không mong muốn.

Một nhân tố khác làm cho NFC khác biệt so với Bluetooth là nó kết nối với các thiết bị khác nhanh hơn rất nhiều, kể cả Bluetooth 3.0 và 4.0 mới nhất. Thay vì phải thiết lập tay để nhận diện 2 máy Bluetooth với nhau, 2 thiết bị NFC tự động hiểu và kết nối chỉ trong 1/10 giây. Trong thực tế, NFC cũng thường dùng để loại bỏ quá trình kết nối phức tạp giữa 2 thiết bị Bluetooth.

Cuối cùng, tốc độ cũng là điểm khác biệt giữa NFC và Bluetooth. NFC hoạt động ở tần số radio băng tần ISM 13,56MHz và tốc độ chạy từ 106-424Kbps trong khi bằng tần của Bluetooth là 2,4GHz nên tốc độ đạt 2.1Mb/s ở phiên bản 2.1 EDR. Đối với bản 3.0+HS thì tốc độ tối đa Bluetooth lên tới 24Mbps.

– Công nghệ Wi-Fi: dành cho mạng nội bộ (LAN) cho phép mở rộng hệ thống mạng hay thay thế cho mạng có dây trong phạm vi khoảng 100 mét.

– ZigBee: là công nghệ không dây có khả năng kiểm soát và giám sát các ứng dụng trong ngành công nghiệp và khu nhà ở trong phạm vi hơn 100 mét.

– IrDA: là chuẩn liên lạc không dây tầm ngắn (<1 mét), truyền dữ liệu qua tia hồng ngoại. Giao diện IrDA thường được dùng ở các máy tính và ĐTDĐ.

– Thẻ thông minh không tiếp xúc (contactless smart card) tích hợp trong chip để truyền dữ liệu đến đầu đọc nhờ công nghệ RFID. Ví dụ, thẻ thông minh truyền dữ liệu qua chuẩn ISO/IEC 14443 và FeliCa trong phạm vi khoảng 10cm.

Nguy cơ bảo mật


NFC có mức độ bảo mật không cao

Mặc dù cự ly giao tiếp của NFC chỉ giới hạn trong một vài cm nhưng bản thân NFC không mang tính bảo mật cao. Năm 2006, hai nhà nghiên cứu Ernst Haselsteiner và Klemens Breitfuss đã mô tả những hình thức tấn công khác nhau nhằm vào NFC cũng như cách thức khai thác khả năng phản khán của NFC trước các hành vi tấn công nhằm thiết lập mã bảo mật riêng.

Để bảo vệ, NFC buộc phải sử dụng các giao thức mã hóa lớp cao như SSL nhằm thiết lập một kênh giao tiếp an toàn giữa các thiết bị hỗ trợ. Để bảo mật, dữ liệu NFC sẽ cần phải có sự kết hợp từ nhiều phía gồm nhà cung cấp dịch vụ – họ cần phải bảo vệ các thiết bị hỗ trợ NFC với các giao thức mã hóa và xác thực; người dùng – họ cũng cần bảo vệ thiết bị và dữ liệu cá nhân với mật khẩu hay chương trình chống virus; các nhà cung cấp ứng dụng và hỗ trợ giao dịch – họ cần phải sử dụng các chương trình chống virus hay các giải pháp bảo mật khác để ngăn chặn phần mềm gián điệp và mã độc từ các hệ thống phát tán.

Nghe trộm NFC: Tín hiệu RF dành cho quy trình truyền tải dữ liệu không dây có thể bắt được bởi ăng-ten. Khoảng cách mà kẻ tấn công có thể khai thác và đánh cắp tín hiệu RF phụ thuộc vào rất nhiều tham số nhưng thông thường nằm trong phạm vi vài m trở lại. Tuy nhiên, NFC hỗ trợ 2 chế độ hoạt động là chủ động (active) và bị động (passive). Vì vậy, khả năng hacker có thể “nghe lén” tín hiệu RF bị tác động rất lớn bởi 2 chế độ này. Nếu một thiết bị bị động không tạo ra trường RF của riêng nó thì sẽ khó có cơ hội cho hacker bắt được tín hiệu RF hơn là một thiết bị chủ động.

Thay đổi dữ liệu NFC: Dữ liệu NFC có thể bị phá hủy dễ dàng bởi các thiết bị gây nhiễu sóng RIFD. Hiện tại vẫn không có cách nào ngăn chặn hình thức tấn công này. Tuy nhiên, nếu các thiết bị hỗ trợ NFC có thể kiểm tra trường tín hiệu RF khi đang gửi dữ liệu đi thì chúng có thể phát hiện ra cuộc tấn công. Liệu hacker có cơ hội chỉnh sửa dữ liệu hay không? Câu trả lời là rất khó. Để thay đổi dữ liệu đã truyền dẫn, hacker phải xử lý từng bit đơn của tín hiệu RF.

Nguy cơ thất lạc: Nếu người dùng làm mất thẻ NFC hoặc điện thoại hỗ trợ NFC thì họ đã “mở đường” cho người nhặt được khai thác chức năng của nó. Ví dụ, bạn sử dụng điện thoại để giao dịch qua NFC, nếu bạn làm mất, người nhặt được có thể dùng điện thoại của bạn để mua mọi thứ họ muốn. Như đã nói ở trên, bản thân NFC không có khả năng bảo mật và nếu điện thoại của bạn được bảo vệ bởi mã PIN thì đây được xem như một yếu tố xác nhận duy nhất. Vì vậy, để ngăn ngữa những nguy cơ khi làm mất thiết bị, người dùng phải sử dụng những tính năng bảo mật nâng cao chứ không chỉ đơn thuần là mật mã mở khóa máy hay mã PIN.

NFC Tag (Thẻ NFC)



Loại hình NFC đang được ứng dụng hiện nay là thẻ nhận dạng NFC (NFC tag). Thẻ nhận dạng NFC có vai trò tương tự mã vạch hay mã QR. Thẻ NFC thường chứa dữ liệu chỉ đọc nhưng cũng có thể ghi đè được. Chúng có thể được tùy biến, mã hóa bởi nhà sản xuất hoặc sử dụng những thông số riêng do NFC Forum cung cấp. Thẻ NFC có thể lưu trữ an toàn các dữ liệu cá nhân như thông tin tài khoản tín dụng, tài khoản ghi nợ, dữ liệu ứng dụng, mã số PIN, mạng lưới danh bạ, v.v.. NFC Forum đã phân ra 4 loại thẻ NFC trong đó mỗi loại lại có tốc độ giao tiếp và khả năng được tùy biến, bộ nhớ, bảo mật và thời hạn sử dụng khác nhau.

Thông số kỹ thuật của các thiết bị được hỗ trợ

NFC được phát triển dựa trên nhiều công nghệ không dây cự ly ngắn, khoảng cách thường dưới 4 cm. NFC hoạt động theo tần số 13.56 MHz và tốc độ truyền tải khoảng từ 106 kbit/s đến 848 kbit/s. NFC luôn yêu cầu một đối tượng khởi động và một đối tượng làm mục tiêu, chúng ta có thể hiểu nôm na là một máy sẽ đóng vai trò chủ động và máy còn lại bị động. Máy chủ động sẽ tạo ra một trường tần số vô tuyến (RF) để giao tiếp với máy bị động. Vì vậy, đối tượng bị động của NFC rất đa dạng về hình thái từ các thẻ nhận dạng NFC, miếng dán, card, v.v… Ngoài ra, NFC cũng cho phép kết nối giữa các thiết bị theo giao thức peer-to-peer.

– Loại thẻ nhận dạng NFC hiện đang được cung cấp có bộ nhớ từ 96 đến 512 byte;

– NFC sử dụng cảm ứng từ giữa 2 ăng-ten lặp đặt trên mỗi mặt tiếp xúc và hoạt động trên tần số 13.56 MHz;

– Trên lý thuyết thì cự ly hoạt động giữa 2 ăng-ten tối đa là 20 cm nhưng trên thực tế chỉ khoảng 4 cm;

– NFC hỗ trợ tốc độ truyền tải dữ liệu theo các mức từ 106, 212, 424 đến 848 kbit/s;

Thiết bị hỗ trợ NFC có thể nhận và truyền dữ liệu trong cùng 1 lúc. Vì vậy, thiết bị có thể nhận biết nhiễu loạn nếu tần số tín hiệu đầu thu không khớp với tần số tín hiệu đầu phát.

Tiến độ phát triển của NFC

Cuối năm 2012, tại Mỹ, một số công ty đã chấp nhận hình thức thanh toán sử dụng NFC. Trong lúc đợi nhiều công ty nữa chấp nhận hình thức thanh toán qua NFC, tất nhiên công nghệ này vẫn chưa thể giúp người sử dụng rời xa chiếc ví của mình.

Yossi Yarkoni, CEO của Digimo, cho rằng lý do khiến các nhà bán lẻ chưa sử dụng NFC rộng rãi có liên quan đến vấn đề an ninh. Họ lo ngại rằng nhà cung cấp ví điện tử NFC và các công ty  tín dụng hữu quan có thể sẽ lấy các thông tin quan trọng của người sử dụng. Ngoài ra, có rất ít người dùng những smartphone có tích hợp NFC, nên số người sử dụng công nghệ này sẽ không nhiều. Cho đến khi các thiết bị có thể tích hợp NFC được tung ra thị trường và những câu hỏi về vấn đề sở hữu thông tin được giải thích rõ ràng thì NFC vẫn còn rất ít cơ hội thâm nhập sâu vào các hệ thống thanh toán.

Các công ty công nghệ di động đang đánh cuộc rất lớn vào công nghệ giao tiếp gần NFC, đến nỗi Google đã phát triển một ứng dụng có tên Wallet có thể tích hợp với NFC còn Microsoft thì thúc giục các nhà sản xuất thiết bị Windows Phone 8 sử dụng chip NFC như một phần cơ bản của sản phẩm. Chỉ mới được bắt đầu nhưng các hệ thống thanh toán “không phải chạm” ứng dụng NFC có thể sẽ khiến bạn không cần đến ví trong một tương lai không xa!


Money Lover : Thành công nhờ theo sát bước chân người dùng

Trong bối cảnh nhà nhà làm ứng dụng, người người làm ứng dụng thì thành công của Money Lover – một trong top các ứng dụng quản lý tài chính cá nhân trên thế giới của một nhà sáng lập Việt Nam là những kinh nghiệm quý báu cho các nhà phát triển ứng dụng độc lập trong nước.

Cũng như nhiều nhà phát triển ứng dụng độc lập khác tại Việt Nam, anh Ngô Xuân Huy bắt đầu với nền tảng về Công nghệ thông tin. Vào thời điểm làm Money Lover, tuy có nhiều kinh nghiệm lập trình nhưng kinh nghiệm về thiết kế giao diện hay làm cách nào để tiếp thị một ứng dụng tốt đều không phải là điểm mạnh của Huy. Mặc dù vậy, Money Lover đã đạt 600,000 lượt tải trên kho ứng dụng Google Play sau 1,5 năm và khoảng hơn 40,000 lượt tải trên iOS sau một năm. Đâu là bí quyết thành công của Huy ?


Muốn tạo ra sản phẩm, trước hết phải là người dùng

Huy cho rằng, mình phải là người dùng, trước khi mình là người tạo ra sản phẩm. Money Lover được sinh ra với mục đích ban đầu là phục vụ nhu cầu của chính tác giả.

Gặp vấn đề trong việc quản lý tài chính cá nhân, Huy thử dùng các ứng dụng khác nhau để giải quyết vấn đề của mình. Tuy nhiên, anh không thể dùng được các ứng dụng đang có trên thị trường, do hầu hết các ứng dụng này đều được kết nối với thẻ tín dụng, hình thức giao dịch hàng ngày ở nước ngoài nhưng lại chưa phổ biến tại Việt Nam. Vì vậy, mong muốn tạo ra một ứng dụng dùng để ghi lại những khoản chi tiêu nhỏ nhất và phù hợp với thị trường Việt Nam ra đời.

Triết lý phải là người dùng của chính sản phẩm của mình, luôn được áp dụng trong mọi sản phẩm của Huy. Anh cho biết, mỗi lần có ý tưởng về sản phẩm mới, anh luôn tìm hiểu trên thị trường, đã có sản phẩm nào tương tự với ý tưởng của mình chưa ? Nếu có rồi thì điểm mạnh, điểm yếu của từng sản phẩm là gì ? Mình có làm nó tốt hơn được không ?

“Người tạo nên sản phẩm phải hiểu rõ sản phẩm của mình, hiểu rõ các sản phẩm tương tự chứ không nên sao chép tính năng mà không rõ bản chất”, Huy nói.

Tuy không có kinh nghiệm về thiết kế giao diện cho ứng dụng nhưng với kinh nghiệm lập trình và dùng thử nhiều sản phẩm trong quá trình làm founder (nhà sáng lập) hai diễn đàn và,  Huy  hiểu rõ làm thế nào để người dùng dễ sử dụng và cảm thấy thoải mái khi dùng Money Lover đó là “giao diện có thể xấu nhưng phải dễ dùng”.

Một tuần sau khi ra đời, Money Lover được giới thiệu lên XDA, diễn đàn hàng đầu cho dân lập trình Android và nhận được nhiều ý kiến phản hồi từ người dùng trên toàn thế giới. Không bỏ qua bất cứ ý kiến nào, Huy trả lời hết các lời bình luận góp ý và mail anh nhận được.


Nhờ các ý kiến đóng góp từ người dùng, anh liên tục thử nghiệm, kể cả những thử nghiệm nhỏ như vị trí đặt thanh menu, để mang lại sự thoải mái và tiện dụng cho người dùng. Ngoài các ý kiến đóng góp về sản phẩm, anh Huy còn nhận được sự giúp đỡ của người dùng khi giúp anh thiết kế các biểu tượng phù hợp với văn hóa, tiền tệ của đất nước họ, giúp Money Lover có hơn 35 ngôn ngữ khác nhau.


Vì vậy, từng có thời điểm gần 1000 lượt gỡ bỏ ứng dụng trên 2000 lượt tải mỗi ngày nhưng do luôn hướng đến người dùng nên Money Lover dần xây dựng được những khách hàng trung thành. Nhờ vậy mà đầu năm 2013, Money Lover đạt lượng người dùng trả tiền khá cao là 2%, ước tính mang lại doanh thu khoảng 35,000 đô-la Mỹ sau 1,5 năm ra đời.

Tiếp tục phục vụ người dùng ngay cả khi sản phẩm đã hoàn thiện

Hiểu rõ điểm yếu của sản phẩm như Money Lover là bắt buộc người phải nhập dữ liệu hàng ngày, Huy đang cố gắng kết nối với các merchant (bên bán) để họ cùng tham gia vào hệ thống của Money Lover, giúp tự động ghi lại chi tiêu khi người dùng thanh toán tiền khi mua sắm ở phía bên bán.

Tự nhận mình là người không giỏi về thiết kế cũng như tiếp thị nhưng Money Lover đã thành công bằng việc đặt người dùng là trung tâm của sản phẩm. Trong mọi giai đoạn của sản phẩm, từ quá trình lên ý tưởng, lập trình đến khâu hoàn thiện, nhà sáng lập Money Lover luôn lắng nghe để hiểu mong muốn của người dùng từ đó mang lại một sản phẩm đáp ứng đúng nhu cầu của họ với những trải nghiệm tốt nhất.


Câu chuyện khởi nghiệp – Hành trình từ đến

Khi làn sóng khởi nghiệp nhân rộng kéo theo nhiều câu chuyện gọi vốn thành công của một số công ty công nghệ tiêu biểu; song ít ai biết rằng có một số rất ít công ty trong số đông ấy từ lâu đã bắt đầu hành trình của mình trên đôi chân của chính mình, họ vẫn tăng trưởng và có lợi nhuận tốt sau nhiều năm phát triển.

Hành trình từ đến là một câu chuyện dài thú vị của những người sáng lập “không thích sống nhờ tiền của nhà đầu tư”. – Sự lựa chọn liều lĩnh

Ngày 01/06/2005, website việc làm được quỹ đầu tư mạo hiểm IDG Việt Nam đầu tư, ước tính thương vụ đầu tư lúc đó khoảng 2 triệu đô-la. Năm 2007, quỹ đầu tư DFJ VinaCapital đầu tư vào VON chủ sở hữu, HRVietnam, và với số tiền tương đương khoảng 2 triệu đô-la. Cũng trong năm 2007, vào tháng 5 ra đời. Không lâu sau đó, vào tháng 08 năm 2008, chính thức vượt mặt Kiemviec về lượng truy cập tại Việt Nam. là một sự lựa chọn liều lĩnh của hai nhà sáng lập “cứng đầu” lần đầu thử sức với lĩnh vực Internet: Trương Võ Tuấn và Lâm Quang Vinh. Được tiếp xúc cá nhân với Võ Tuấn và Quang Vinh từ những ngày đầu tiên thành lập công ty, tác giả bài viết vẫn còn nhớ như in câu nói của Võ Tuấn vào thời điểm đó: “Ngày trước, người ta cần 30 – 40 năm để có thể xây dựng sự nghiệp và trở nên giàu có trong lĩnh vực bất động sản; nhưng ngày nay với tốc độ phát triển của công nghệ, chắc chắn khoảng thời gian ấy sẽ được rút ngắn ít nhiều, có thể chỉ từ 5 – 10 năm để tạo lập doanh nghiệp có nguồn thu bền vững”.

Nhận thấy Vietnamworks và Kiemviec đang tập trung vào phân khúc nhân sự cao cấp – đây cũng là phân khúc mang đến doanh thu tốt cho những công ty ấy khi đó, tự tách mình và lựa chọn một phân khúc khác biệt: từ sinh viên mới ra trường cho đến quản lý cấp trung. Mọi việc không hề dễ dàng bởi vì một khi lựa chọn phân khúc này, đã lựa chọn cho mình một con đường hẹp hơn về doanh thu, bắt buộc phải liên tục cải tổ bộ máy hoạt động sao cho nhẹ nhàng nhất để tối ưu hoá chi phí.

Những năm đầu tiên trôi qua, tất cả tin đăng tuyển dụng đều theo đúng tiêu chí của TimViecNhanh là miễn phí dành cho doanh nghiệp. Không phí phạm ngân sách marketing bằng nhiều hoạt động quảng cáo đơn thuần, TimViecNhanh tập trung vào tối ưu hoá nội dung trên các công cụ tìm kiếm, xây dựng cộng đồng dành cho sinh viên, cung cấp kiến thức dành cho nhóm đối tượng sinh viên đi làm bán thời gian và những người chưa có nhiều kinh nghiệm làm việc. Trong khi hai đối thủ của mình vẫn mải mê đánh chiến với nhau ở thị trường nhân sự cấp cao khó nhằng, văn phòng được xây dựng đẹp đẽ và hoành tráng, thì tại TimViecNhanh vẫn khiêm tốn với một đội ngũ nhân sự dưới 20 người nhưng luôn làm việc ở cường độ tập trung cao nhất, phục vụ người dùng không kể ngày đêm, mang đến sự hài lòng cao nhất với người dùng.

Khi bắt đầu đưa mô hình kinh doanh để thương mại hoá TimViecNhanh, Võ Tuấn và Quang Vinh cũng phải thử và chấp nhận sai ở nhiều lần khác nhau. Cuối cùng, cả hai cùng kiếm ra được cách thu tiền ít nhưng thu nhiều trên số đông thay vì thu tiền nhiều chỉ ở vài khách hàng ít ỏi và cách thức kinh doanh này bắt đầu phát huy tác dụng, TimViecNhanh chính thức có lãi sau 02 năm hoạt động và mức độ tăng trưởng hơn 200% mỗi năm. Từ thời điểm TimViecNhanh chính thức được xây dựng và phát triển cho đến giai đoạn có lợi nhuận, TimViecNhanh chưa từng có bất kỳ nhà đầu tư nào tham gia vào công ty của mình.

Vào cuối năm 2013, Công ty Cổ phần 24H nhận thấy tiềm năng và sự phát triển ấn tượng của đã chính thức mua phần lớn cổ phần và sát nhập trang Việc Làm 24H vào Công ty Cổ phần Tìm Việc Nhanh theo mô hình quản lý tinh gọn như hai nhà sáng lập đã kiến trúc từ ban đầu. Việt Nam có 93 triệu dân tính đến hết năm 2014, dân số Việt Nam là đặc thù dân số trẻ, vì vậy các nhu cầu cơ bản như học hành – việc làm và y tế là những nhu cầu thiết yếu hàng đầu. Sự liều lĩnh của TimViecNhanh ban đầu lại là một sự liều lĩnh đáng giá của cả hai nhà sáng lập – lần – đầu – khởi – nghiệp.

Tiếp tục cuộc phiêu lưu với

Sau khi bán phần lớn công ty của mình, Võ Tuấn và Quang Vinh dành nhiều thời gian cho các hoạt động xã hội từ thiện bên cạnh công việc. Thỉnh thoảng nhìn lại TimViecNhanh, cả hai đều khiêm tốn nhìn nhận: do bản thân mình may mắn hơn người khác thôi. Dự định rằng sẽ chỉ tiếp tục duy trì công việc ổn định hiện tại và tham gia các hội nhóm từ thiện, thế nhưng Võ Tuấn và Quang Vinh đều cảm thấy thiếu một cái gì đó trong cuộc sống của mình: một động lực lớn lao để thoát khỏi bẫy nhàm chán và tự mãn trong sự nghiệp. là một ý tưởng khởi nghiệp bất chợt đến khi cả hai quyết định sẽ tiếp tục cuộc phiêu lưu của mình trong thế giới công nghệ. Làn sóng di động rộ lên trong vài năm trở lại đây đã thực sự ảnh hưởng sâu sắc đến cuộc sống xung quanh, từ giải trí, học hành cho đến thương mại, buôn bán; từ doanh nghiệp lớn hay cửa hàng tạp hoá nhỏ lẻ đến cá nhân, bất kỳ ai, dù ở bất kỳ đâu cũng không thể nào thoát khỏi vòng vây của các thiết bị di động. Mua bán trên nền tảng di động, một ý tưởng không hề tồi, nhưng làm sao để khác biệt với các đối thủ mạnh hiện nay trên thị trường, lại là một bài toán khó khăn.

Xác định cuộc chơi lần này khác với câu chuyện của chính mình cách đây 08 năm về trước, khi thị trường của ngày xưa vẫn còn nhiều cơ hội bỏ ngỏ, trong khi đó, hiện nay đã có nhiều tay chơi có nguồn vốn lớn trong và ngoài nước. Cả hai vẫn chưa quyết định mời một số nhà đầu tư trong nước tham gia cùng mình cho đến khi mô hình kinh doanh sáng rõ trước mắt và lộ trình phát triển được vẽ ra chi tiết, hai nhà sáng lập mới mở cửa chào đón nhà đầu tư khi đã có sản phẩm và cách thương mại hoá sản phẩm cụ thể.


Thật khó để nói trước được tương lai, thế nhưng khi nhìn lại quá khứ khởi nghiệp của hai kẻ “cứng đầu” này, có thể thấy rằng điều quan trọng nhất trong quá trình xây dựng công ty và lập nghiệp đó chính là không nên phụ thuộc vào người khác quá nhiều ở giai đoạn ban đầu. Theo Võ Tuấn và Quang Vinh, cả hai đều không thích việc xem nguồn tiền đầu tư từ nhà đầu tư là “doanh thu” của mình, mà phải luôn tìm thấy được mô hình kinh doanh trước khi bắt đầu xây dựng sản phẩm.

Để là người độc lập tài chính thì phải xác định mô hình kinh doanh đúng đắn và quan trọng hơn hết là dám thử – dám sửa và dám làm lại, không nhất thiết phải đi theo người dẫn đầu, chính mình sẽ tự tìm ra được một con đường khác biệt khi bản thân đủ hiểu sâu sắc bản chất của vấn đề. Ngày nay, các nhóm khởi nghiệp mới non trẻ thường bắt đầu với “ý tưởng sáng tạo” hay “ý tưởng độc quyền”, hoặc thậm chí là “vì bản thân yêu thích”, thế nên gặp lúng túng khi chuyển từ ý tưởng ban đầu sang mô hình kinh doanh bền vững.


Load testing web sites with StresStimulus: Part 1 – Getting started

Editorial Note

This article appears in the Third Party Product Reviews section. Articles in this section are for the members only and must not be used by tool vendors to promote or advertise products in any way, shape or form. Please report any spam or advertising.

This series


It is a good idea to load test your web site before taking it live, to make sure it won’t break or perform poorly under load. Fairly recently, a new load tester called StresStimulus was introduced. It is affordable and has some unique features that make it well suited to load test ASP.NET web sites, hence this article to discuss its features. You’ll also find a (far from exhaustive) list with other popular load testers, to make it easier to make up your own mind which load tester you want to use.

This article first lists the features of StresStimulus, and then shows how to get started with your first load test.Part 2 goes into more advanced topics such as parameterization.


If you like this article, please vote for it.

Other popular load testers

A simple Google search will give you lots of load testing tools besides StresStimulus. In the table below, you’ll find some of the more popular load testers available.

WCat Simple and fast load tester. Free, but lacks some basic features, such as support for ViewState.
Apache JMeter Open Source Java based load tester. Steep learning curve.
WAPT Reasonably affordable load tester. Easy to use.
Load tester built into Visual Studio 2010 Ultimate Excellent full featured product, powerful yet easy to use. Very expensive though.

StresStimulus requirements

To run StresStimulus, you need:

  • Fiddler or later (free download).
  • Windows 2000 to 2008 / XP / Vista / 7, with Microsoft .NET Framework 2.0 or later.
  • 5 megabytes of available disk space / 800 MHz processor / 256 megabytes RAM.


StresStimulus comes in these versions:

The rest of this article will make it clear when a particular feature is only available in a Pro version (that is, not in the free version).

  • Free version– Allows you to do real load testing. No time limit, use as long as you want. Limited in key areas, including:
    • Reduced reporting of test results. Only summary information available. No reporting on performance counters.
    • No ability to save or load a test case. Next time you run StresStimulus, you need to recreate your test case.
    • Number of virtual users limited to 100.
    • Test duration limited to 10 minutes or 999 iterations.
    • Reduced think time options.
  • Pro evaluation version– All features enabled, but only suitable for very light load testing:
    • No time limit – use as long as you want.
    • Number of virtual users limited to 10.
    • Reduced think time options.
  • Pro trial version– 14 day trial with all features enabled.
  • Pro paid version – All features enabled. Maximum number of virtual users depends on your license.


  • An extension of Fiddler, the popular HTTP debugging proxy.
  • Very easy to create simple tests.
  • Allows you to record a test case with your browser and then have that test case repeated by multiple virtual users.
  • Shows test results in graphs and in text based reports (restricted in free version).
  • Supports parameterization, allowing you to load form field values from input files.
  • Supports Basic and NTML authentication, allowing simulated users to login to your site using Windows accounts (Pro versions only).
  • Simulates thousands of virtual users (capped at 10 in Pro evaluation version, 100 in free version).
  • Lets you increase the load in steps, to find the breaking point of your site.
  • Virtual users keep track of cookies and hidden fields, such as ViewState.
  • Set think times of virtual users.
  • Lets you set simulated browser (IE version, Firefox version, Chrome, etc.) and network (LAN, dial-up, etc.)
  • Lets you set warm up time, to allow web site caches to fill before testing starts.
  • Keeps track of performance counters (Pro versions only).
  • Able to save test cases to file (Pro versions only).


Because of its tight integration with Fiddler, StresStimulus lacks some features available in more complex load testers:

  • No ability to mix different scenarios in the same test case (browsing, purchasing, searching, etc.)
  • You can’t have multiple load generating machines controlled by a single controller. Obviously you can run StresStimulus on multiple computers at the same time, but you would have to coordinate them manually.
  • No easy way to compare test runs, for example of different versions of your site.

Load testing basics

Before creating your first load test, let’s do a quick overview of Fiddler and StresStimulus.

One of the challenges in developing web sites is that they get used by many users at the same time. Unfortunately, when you’re testing your site, there is only one user – you. Your site may be fine with just one or a few users, but break or perform badly with dozens or hundreds of users. You want to find out about any problems before you go live, not after you go live.

How do you get lots of users to hit your new site before it even has gone live? You could ask co-workers or friends to hit your site, but that requires a lot of effort. Much easier to use a program such as StresStimulus that unleashes dozens or hundreds (or thousands) of virtual users hitting the new version of your site. Additionally, you need to tell those virtual users which pages to visit. And if you have forms on your site, you need to tell them what values to fill in those forms.

Here is how Fiddler and StresStimulus allow you to make this happen:

  • When you run Fiddler, all requests you send from your browser to a web site and all responses back to your browser are recorded by Fiddler. A request might be simply asking for a web page, or sending values you entered into a form to the web site.
  • Each request/response pair is called a session. When you run Fiddler, they turn up one by one in the left hand pane in Fiddler.
  • This means you can record sessions by simply visiting pages in your site yourself with your browser, and by submitting forms to the site.
  • You can then select one or more sessions within Fiddler and tell StresStimulus to make those into a test case. This tells the virtual users what pages to request and what form values to send.
  • You’ll probably want each virtual user to go through the test case more than once. So in addition to setting the number of virtual users, you can also set the number of iterations – that is, the number of times you want the test case to be repeated.
  • To make the test more realistic, you can have StresStimulus use new form values for each iteration using the parameterization feature, set think times, etc. You can see how well your site performed by looking at the test results.

Creating a simple load test

To create your first load test:

If you have been using the test site in the download, there is an Open trace log link on the bottom of the page. Click that to see a trace of all traffic to the site, both yours and that generated by StresStimulus.

  1. First close all web sites you have open, so they don’t interfere when you record your first session.
  2. Run Fiddler.
  3. To toggle between the free version and the Pro evaluation version, open the StresStimulus menu in the top left of the Fiddler window and click Use free edition or Use Pro Edition.
  4. Run the test site in the download with this article. Or run your own site. You can run the site locally, from within Visual Studio if you want. Press some buttons to generate page loads.
  5. If you now switch back to Fiddler, you will see that the requests you generated and their responses now show up in the left hand pane..
  6. Click the Inspectors tab in the right hand pane, and then click one of the sessions in the left hand pane. This shows the headers and content of the request and its response.
  7. Select the requests to play back:
    1. Click the StresStimulus tab.
    2. In the left hand pane, click those requests you want to play back while holding down the Ctrl button.
    3. Click the dropdown arrow on the Set Test Case button and select Set Test Case with Selected sessions. Option Set Test Case with All sessions would simply select all sessions in the left hand pane.
  8. Now play back the selected requests once by clicking the Run Test Case Once button. You’ll see the requests generated by StresStimulus appear in the left hand pane.
  9. In the top left of the Fiddler window, open the StresStimulus menu and click Save Test to save your test settings (Pro versions only).

Increasing the load

Playing back a test case once doesn’t really qualify as a load test. Let’s increase the number of times the test case is executed. While at it, we’ll increase the number of virtual users as well:

Debug tests are just load tests except that they show generated sessions during the test. When the rest of this article refers to load tests, it refers to debug tests as well.

  1. Expand the Test Configuration tree and click Load Pattern.
  2. Select Constant Load and set Number of Virtual Users to 10. This gives you 10 virtual users sending requests to your site.
  3. With the Test Configuration tree still expanded, click Test Duration.
  4. Set Test completion criteria to Number of Iterations and set the number of iterations to 20.
  5. Click the Start Test button to start the load test.
  6. If you’re using the test site that came in the download with this article, and you still have the trace pageopen, you can see the requests and responses as they happen by refreshing the page.
  7. You can also see the requests generated by StresStimulus in the Fiddler window itself, but to do this, you have to run a debug test instead of a load test. After the previous test has finished, click the drop down button on the Start Test button and select Debug Test. Then click the button to start the test again:
  8. After a load test or debug test has completed, you can get rid of all the requests in the left hand pane except for the ones making up your load test by clicking the Reset button.

Test results

StresStimulus provides these types of test results:

Graphs while a test is running

As soon as you start a load test, StresStimulus switches to the graphs pane, showing graphs of requests per second, average response times, etc.

A second set of graphs in the same pane shows the values of performance counters, such as % Processor Time(Pro versions only). StresStimulus allows you to add performance counters to this graph (how).

After the load test has finished, the graphs stay in place until you run another test. To navigate back to the graphs, expand Test Results and click Graphs.

Detailed reports

After the load test has finished, more detailed reports become available. These are accessible by clicking options under Test Results:

  • Test Summary – detailed summary of how well your site performed, and details of the load test itself (duration, number of virtual users, etc.)
  • Page Details (Pro versions only) – details on how well each individual .aspx page performed, such as minimum, maximum, and average response times.
  • Request Details (Pro versions only) – shows details for all requested files, rather than only the .aspx files. Not as detailed as Page Details. Shows how quickly your site serves up images, etc.
  • Iteration Details (Pro versions only) – fairly sparse summary of the iterations executed during the test.

Saving test results to a file

There are two ways to save test results to a file. Firstly, by clicking Test Results and then clicking the Create Reportbutton (Pro version only). This gives you an HTML file you can open in your browser.

Secondly, you can simply copy and paste the results to a file. The Test Summary view can be copied into a text file – just select the text with your mouse and copy and paste. The grids in the Graphs, Page Details, Request Details, and Iteration Details views can be copied to a spreadsheet. If you don’t have Microsoft Excel, try the spreadsheet in the free Open Office suite.

Requests generated by StresStimulus

During a load test (as opposed to a debug test), StresStimulus doesn’t show the generated requests in the left hand pane for performance reasons – there could be many thousands. To see them in the left hand pane after a load test has finished, click the drop down on the Results button:

  • Errors and Timeouts – requests where things went wrong.
  • Primary Requests – only requests for .aspx files, not for images, etc.
  • All Requests – all requests, including those for images, etc.
  • User’s Iteration – shows a particular iteration by a particular virtual user.

One issue here is that when you run a normal load test (as opposed to a debug test), StresStimulus doesn’t store details for the generated requests beyond the fact that they actually happened. That makes sense, given the space required by possibly tens of thousands of generated requests. But it doesn’t help much when you want to know the contents or headers of the requests and their responses from the server.

You can overcome this by running a Debug Test (how). This stores the details of all generated requests and their responses. This allows you to inspect the contents, headers, etc., of all generated requests and their responses (how).

Part 2 of this series goes into more advanced features of StresStimulus, such as NTLM authorization and parameterization.



Hướng dẫn sử dụng đồng hồ đeo tay (Một số lưu ý đặc biệt khác)

– Không nên thử độ cứng và chống xước của kính đồng hồ (Sapphire glass) bằng các vật có tính chất cứng hơn Sapphire như dao cắt kính, kim cương… vì như vậy sẽ làm hư hại kính đồng hồ.- Không sử dụng hoặc để đồng hồ ở nơi có nhiều từ trường như TV, Tủ lạnh, Máy tính, Lò vi sóng vv…

– Luôn rửa đồng hồ bằng nước ấm (chú ý không dùng nước nóng bốc hơi tại vòi) ngay sau khi bơi biển (đối với đồng hồ được phép bơi lặn)

– Luôn kiểm tra tình trạng của núm vặn, vị trí đúng là ở nấc trong cùng. Trong quá trình sử dụng núm rất dễ bị mắc vào chỉ áo hoặc những tác động khác mà bị kéo ra ngoài hoặc sau khi chỉnh lại Ngày/Giờ, để tránh nước có thể thẩm thấu vào bên trong đồng hồ.

– Hàng tuần nên chùi rửa đồng hồ với nước ấm với xà-phòng để chải sạch bụi bẩn và muối đọng do mồ hôi tiết ra. Những bụi bẩn và mồ hôi muối chính là tác nhân gây ra nước vào trong đồng hồ.

– Không để đồng hồ ở nơi có nhiệt độ cao quá 60 độ C (tương đương 140 độ F) hoặc những nơi thấp hơn 0 độ C (tương đương 32 độ F).

– Không sử dụng các nút bấm khi ở dưới nước đối với những đồng hồ nhiều chức năng.

– Không nên đeo đồng hồ khi tắm nước nóng hoặc xông hơi vì sẽ làm suy giảm khả năng chống thấm nước của đồng hồ.

– Không nên đeo đồng hồ khi làm các công việc nặng, công việc có nhiều động tác va chạm với các vật dụng bên ngoài như: sửa chữa máy móc, khuân vác… vì vỏ đồng hồ, kính, dây đeo dễ bị trầy xước hư hại.

– Bộ máy của đồng hồ được chế tạo rất tinh vi, với các bộ phận nhỏ xíu kết hợp với nhau và để đồng hồ hoạt động ổn định, bền lâu không nên đeo đồng hồ khi tham gia các hoạt động vận động mạnh như: Bơi lội, Bóng đá, Bóng chuyền, Quần vợt (Tennis)…ngoại trừ đồng hồ chuyên dụng dành riêng cho thể thao.
– Luôn đảm bảo có đủ năng lượng cho bộ máy của đồng hồ, thay Pin định kỳ và đúng chủng loại Pin tại đại lý ủy quyền chính hãng để chiếc đồng hồ của bạn luôn chạy chính xác, giữ được hình thức đẹp lâu bền.

– Cũng cần lưu ý rằng việc thường xuyên để đồng hồ tiếp xúc với hóa chất: (Xà phòng, nước biển, các chất tẩy rửa, axít) có thể làm hỏng dây đồng hồ, các lớp vỏ mạ, vòng tay. Mỹ phẩm và nước hoa cũng có thể làm hỏng đồng hồ nếu để tiếp xúc trực tiếp với các mặt đồng hồ mạ và dây đeo.

Hướng dẫn sử dụng đồng hồ dây kim loại

– Đối với đồng hồ dây kim loại trong quá trình sử dụng bị mồ hôi, ghét, bụi làm cáu bẩn có thể sử dụng Kem đánh răng hoặc Nước rửa tay để làm sạch.
– Dùng bàn chải đánh răng cọ rửa nhẹ nhàng sau đó rửa lại kỹ bằng nước sạch, lau khô bằng khăn mềm.
– Điều này sẽ gia tăng tuổi thọ của đồng hồ.
– Không sử dụng bất kì dung môi, chất làm sạch, chất tẩy công nghiệp, chất dính, sơn hoặc các chất xịt lên bề mặt đồng hồ. (Đóng chặt núm điều chỉnh để trách bị nước thẩm thấu vào đồng hồ trước khi cọ rửa).

Hướng dẫn đồng hồ sử dụng máy tự động (Automatic movement)

– Đối với các đồng hồ sử dụng bộ máy tự động (Automatic movement) hoặc lên dây (Handwinding movement), thì việc chỉnh giờ,
lịch hay lên dây tránh thực hiện trong khoảng thời gian từ 21h00 – 03h00 hàng ngày. Bởi nếu thực hiện các thao tác trên trong khoảng thời gian này sẽ gây hư hại ngoài ý muốn cho hệ thống bánh xe của đồng hồ.
– Giống như Xe hơi, đồng hồ Automatic cũng cần được bảo dưỡng thường xuyên để các bộ phận nhỏ xíu, các chi tiết tinh vi kết hợp với nhau tốt nhất giúp đồng hồ hoạt động luôn chính xác và tăng thêm tuổi thọ của đồng hồ. Định kỳ hằng năm hãy mang đồng hồ Automatic của bạn tới Đại lý ủy quyền chính hãng để kỹ thuật viên chuyên nghiệp về đồng hồ giúp bạn lau dầu và bảo dưỡng.
– Vào ban đêm, khi tháo đồng hồ ra, bạn hãy đặt úp mặt của đồng hồ xuống, nhớ là lót ở dưới bằng một miếng vải hoặc giấy mềm để đồng hồ không bị xước. Khi mặt của đồng hồ úp xuống các bộ phận máy của đồng hồ chia đều lực và không đè lên nhau giảm lực ma sát giữa các linh kiện bên trong đồng hồ, giúp kéo dài tuổi thọ của đồng hồ.

Ứng dụng giải pháp replicate database để cân bằng tải các ứng dụng

Do nhu cầu thực tiễn của các doanh nghiệp và các nhân viên IT  đang tìm một giải pháp để đáp ứng nhu cầu truy cập Website ngày càng tăng , ngoài việc trang bị cấu hình Server khủng nhiều người đã nghĩ tới vấn đề tách nhiều Server Web , nhưng vấn đề đặt ra làm sao để các Web Server này tự động đồng bộ dữ liệu khi có sự thay đổi .

Kênh Giải Pháp VN xin giới thiệu với các bạn giải pháp Replicate Database để đồng bộ các ứng dụng Webserver tạo điều kiện cho việc Backup sao lưu dự phòng cũng như tăng cường khả năng cân bằng tải cho các ứng dụng Web

Ngay lúc đầu triển khai hệ thống Website các doanh nghiệp thường hay chọn giải pháp Webserver và Database Server trên cùng một Server , giải pháp này giúp các doanh nghiệp tiết kiệm được khá nhiều chi phí đầu tư thiết bị phần cứng , nhưng sau thời gian đưa vào vận hành số lượng truy cập trang Web tăng nhanh , server hiện tại không đáp ứng nổi nhu cầu truy cập hoặc quá trình truy cập chậm hơn so với bình thường .

Doanh nghiệp đã nghĩ đến giải pháp trang bị thêm một Server cứng và cũng tận dụng hệ thống Server này để triển khai Web và Database nhằm tăng cường khả năng cân bằng tải cho Webserver hiện có . Nhưng vấn đề nảy sinh khi các thông tin dữ liệu Web được cập nhật liên tục từng ngày từng giờ , việc đưa ra giải pháp Backup Restore trở nên không khả thi thì giải pháp Replicate được ưu tiên hàng đầu cho các doanh nghiệp .

Tính hiểu quả của giải pháp này :
– Doanh nghiệp tiết kiệm được chi phí  đầu tư ban đầu với hình thức trang bị theo từng giai đoạn cụ thể 
– Khả năng cân bằng tải của Website được nâng cao 
Nhược điểm :
– Khả năng mở rộng hệ thống Database không cao 
– Tính bảo mật hệ thống dữ liệu chưa thật đảm bảo
– Giới hạn số lượng mở rộng Server 

Với những doanh nghiệp đã thấy được tầm phát triển của hệ thống sẻ tìm cách đầu tư có chiều sâu cho hệ thống Webserver , việc trang bị các Webserver riêng tách biệt với hệ thống Database là một giải pháp hữu hiệu tạo tiền đề cho việc nâng cấp phát triển dịch vụ sau này .
Với giải pháp tách riêng hệ thống Database không những tăng cường khả năng hoạt động của hệ thống máy chủ Webserver mà còn đảm bảo sự ổn định của mỗi dịch vụ trên Webserver .

Ưu điểm của giải pháp này :
– Tăng cường khả năng cân bằng và dịch vụ trên các máy chủ 
– Khả năng mở rộng được nhiều hệ thống Webserver 
– Nâng cấp hệ thống Database dễ dàng
Nhược điểm 
– Chi phí đầu tư ban đầu cao hơn 
– Khả năng sao lưu phục hồi của dữ liệu chưa cao

Trước khi doanh nghiệp đầu tư một cơ sở hạ tầng mạng cần phân tích các yêu tố con người , tài chính , hiệu quả , rủi ro .. Đứng trước những phân tích mang tính chất công nghệ giải pháp hệ thống lâu dài bền vững của hệ thống CNTT  doanh nghiệp là khả năng chịu lỗi bảo mật , tăng cường khả năng hoạt động , khả năng mở rộng được sau này 

Đứng trước những thách thức đó doanh nghiệp cần đầu tư cơ bản về hạ tầng các các yếu tố cót lõi của hệ thống đi theo , ngoài khả năng về năng lực nhân sự khai thác và vận hành , doanh nghiệp còn phải cân nhắc các vấn đề tài chính theo khả năng của mình và sẻ đầu tư theo hình thức trọn gói hay chia theo giai đoạn .

Tính hiệu quả của giải pháp này :
– Khả năng câng bằng tải cao 
– Khả năng mở rộng về sau lớn 
– Độ bảo mật và sao lưu dự phòng được đảm bảo
Nhược điểm :
– Chi phí đầu tư ban đầu lớn 

Với nhiều doanh nghiệp và công ty có nhiều chi nhánh , việc quản lý tập trung dữ liệu sẻ mang lại sự an toàn cao nhưng điều đó đôi khi lại gây sự nghẻn mạch trong hệ thống và phụ thuộc nhiều vào yếu tố đường truyền do ISP cung cấp , do vậy để giải quyết các vấn đề đó doanh nghiệp lại chọn giải pháp trang bị Database Server cho các chi nhánh và thực hiện việc đồng bộ dữ liệu theo lịch lập sẵng .

Việc đồng bộ dữ liệu qua mạng mang tính chất công nghệ cao giải quyết được những vấn đề nhanh chóng và hiệu quả , tăng năng suất làm việc của các chi nhánh nhưng điều đó cũng đi đôi với những thách thức về mặt bảo mật khi các thông tin của doanh nghiệp được đưa ra ngoài Internet . 

Tính hiệu quả của giải pháp :
– Khả năng mở rộng cao
– Khả năng cân bằng tải các ứng dụng được nâng lên
– Tăng cường hiệu quả giải quyết công việc tại các chi nhánh 
Nhược điểm :
– Còn phụ thuộc vào ISP
– Chi phí đầu tư cũng còn cao 
– Khả năng bảo mật chưa được đảm bảo