Trích dẫn




Only a person who risks is truly free.


Ảnh

Ảnh

Chủ Nhật, 15 tháng 5, 2016

Open Source for C++ Online Course

Hello everyone, we hope you will contribute for C++ Online Course that was initiated by daynhauhoc.com and free for everyone who need learn about C++. I am contributing to OOP C++ Lessons. That is community programming. :)
You can fork the project, contribute to it by yourself and pull request to submit your lesson :)
Thank you all!
https://github.com/daynhauhoc/cppoop

Thứ Hai, 2 tháng 5, 2016

Do more think less

Do more think less

My Autocomplete

Autocomplete on PC. Its GUI work very well but I disabled it :) It can "learn" user behavior to predict exacly the words that user want to type. I crawled a lot of paragraphs from wikipedia, pushed them into the program to train it automatically. I also referenced some solution from Unikey. (Unikey is an open source), thanks for Unikey dev team :)


The first time I implemented an AI :)

This is the first time I created a bot what can automatically play some games. Fortunately, my Bot worked better  a lot than I would. Mancala (called "Ô Ăn Quan") is the game I was choosen to implement an AI.
At first, I just wanted to make an simple solution for AI by minimax, alpha-beta prunning or ID3. Everything was OK and I collected a lot of data in every rounds between player and bot. So I think it can be used for training an ANN (Artificial Neural Network). I have been tried push all data that I collected into Weka that use to analysis data. My data involved 12 input, so I made an network with 12 input nodes and 1 output node. The package I used to create a neural network is MutilLayer Perceptron, that neural network is make by one hidden layer (include 6 sigmoid function nodes) and last layer (include a linear function node). As a result, I had all weight in neural network, and put them all on my BOT. After 100 tests, it not just worked very well but also beat all solution that I implemented. Proud of MY FIRST BOT :)).
This network is just a small neural network, a prediction system is common work with a neural network of over 500 nodes (handwriting recoginiton system also commonly works with such level).
Btw, it worked very well and made excited for my mentor.
my Mancala game
The neural network that I made for my bot

Thứ Hai, 18 tháng 4, 2016

New flat icon for my BikerMap and new update.

I love it. :D it's exactly the same as what I imagined.
I also fixed some bugs in BikerMap for 4.4 android version.
All android device from 4.1 and further could use this app for navigate.
Thank you all.

Thứ Hai, 14 tháng 3, 2016

BikerMap - Phần mềm chỉ đường hướng tới xe máy

Mình mới viết một phần mềm chỉ đường trên Android, sử dụng rung để chỉ đường. Các phần mềm chỉ đường hiện nay đa số dành cho xe hơi nên dùng âm thanh để thông báo, khi sử dụng với xe máy thì khá bất tiện. Phần mềm này xoay quanh người dùng xe máy và chủ yếu ở VN. Một số tính năng khác thú vị là chat group với những người cùng địa điểm đến, chia sẽ đường đi với mọi người, khoe chiến tích chạy xe,...
BikerMap là một ứng dụng chỉ đường cực kì thông minh và hữu ích:
- Tận dụng Vibrator để chỉ đường, giúp bạn không mất tập trung khi điều khiển phương tiện.
- Sử dụng rất ít dung lượng pin.
- Tán gẫu với những bạn bè có chung điểm đến.
- Chia sẻ những chuyến đi của bạn.
- Bạn có thể lắc thiết bị để gợi ý đường đi.
- Phát hiện tai nạn khi va chạm mạnh.
- Báo hiệu khi bạn đi sai đường.
***Đọc thêm chi tiết ở Guide***
Thank you all!

Android: BikerMap
iOS: Đang phát triển.



Chủ Nhật, 10 tháng 1, 2016

Gadfly

Khi được hỏi về lý do tại sao lại tham gia Hội, Arthur đã nói với Padre:
"Những lời thế phỏng có ích gì? Ràng buộc con người không phải là lời thề. Nếu mình có một cảm nhận nhất định đối với một điều gì, chính cái đó nó gắn bó mình với điều ấy. Nếu mình không có một cảm nhận như vậy thì chẳng có gì ràng buộc được mình cả."
---
"Sợ bóng tối [...] Không, không đâu! Không phải cái bóng tối ấy đâu, cái thứ ấy chỉ là hỏa ngục đồ chơi ba xu dọa trẻ... Cái tôi sợ là bóng tối bên trong, ở đó không có tiếng khúc lóc hoặc tiếng nghiến răng, mà chỉ có im lăng... im lăng..."
---
Gadfly: "[...] Đối với tôi, mối quan hệ giữa đàn ông và đàn bà chẳng qua chỉ là vấn đề sở thích cá nhân, vấn đề thích hay không thích từng người..."
Zita: "Và là vấn đề tiền tài nữa."
Gadfly: "Cái đó, dĩ nhiên là phần xấu xa của vấn đề. Nhưng cô hãy tin rằng, nếu tôi đã nghĩ là cô không thích tôi hoặc đã có phần chán ghét mối quan hệ đó, thì sẽ chẳng bao giờ tôi khêu gợi hay lợi dụng hoàn cảnh của cô để quyến rũ cô. Trong đời tôi, chưa bao giờ tôi đối xử như thế với một người phụ nữ nào, và chưa bao giờ tôi nói dối một người phụ nữ về tình cảm của tôi đối với họ. Cô có thể tin là tôi thật lòng đấy."
Gadfly: "Tôi nghĩ nếu một người đàn ông sống cô đơn trên đời này và cảm thấy cần có... cần có sự hiện diện của một người đàn bà bên cạnh mình, và nếu anh ta tìm được một người đàn bà aasp dẫn đối với anh ta và nếu người ấy cũng không ghét bỏ anh ta, thì anh ta có quyền nhận lấy, với tâm tình biết ơn và thân ái, mọi niềm vui mà người đàn bà ấy thuận lòng đem lại cho anh ta, mà không cần phải bước vào một cam kết nào mật thiết hơn."
---
"Còn bây giờ thì tôi lại hôn tờ giấy tôi đã viết tên Gemma. Như thế là tôi đã hôn Gemma hai lần mà cả hai lần đề không được Gemma cho phép. Tất cả chỉ có thế thôi. Gemma thân yêu, vĩnh biệt nhé!"
---
"Then am I
A happy fly,
If I live,
Or if I die" - The Fly, William Blake (1757-1827)
---
Một sự kết hợp giữa hùng tráng, âm mưu, lãng mạn.

Chủ Nhật, 25 tháng 10, 2015

Thứ Năm, 3 tháng 9, 2015

Một vấn đề được giải quyết

Rất hay coi show này. Jimmy và khán giả đều tin rằng mình được "decision" nhưng thực ra là không :))
https://www.youtube.com/watch?v=gHEOFx9YWKU&list=RDiuBtCLg4BJg&index=4

Chủ Nhật, 30 tháng 8, 2015

Định lý Dirichlet và bữa cơm tối

Ví dụ bạn chịu trách nhiệm phải dọn cơm tối cho gia đình. Nhiệm vụ của bạn chỉ là lấy đũa cho các thành viên của gia đình. Trời thì lại bị cúp điện, chả nhìn ra cây đũa nào với cây đũa nào. Hôm qua có một buổi tiệc mừng bạn vào đại học, thế là có rất nhiều loại đũa được đưa vào trong kệ bát đĩa mà chưa phân loại (giả sử số đôi đũa mỗi loại đều nhiều hơn số người). Vậy làm thế nào để lấy đủ đũa cho đình mà mỗi chiếc trong đôi ko khác loại. :D yes, Dirichlet theorem. 
Có thể thấy là tùy vào số loại đũa mà bạn cần lấy số đũa cần thiết. Ví dụ gia đình 4 người, có 1 loại đũa thì hẳn là lấy 8 cây, 2 loại đũa thì lấy 9 cây, 3 loại thì lấy 10 cây. 
Một ứng dụng vui vẻ của định lý Dirichlet. 

Thứ Tư, 19 tháng 8, 2015

Google trên command line


Lập trình viên thì nên hạn chế sử dụng chuột :D đang sài cmd mà cứ phải chuyển tab qua trình duyệt để tìm kiếm thì "mệt" quá, nhất là những vẫn đề chỉ cần xem ví dụ là hiểu hoặc chỉ cần liếc sơ qua google là được, thì làm ngay trên cmd là quá tiện. Mình mới viết cái script trên python 2.7 để "google".
Có một số lỗi nhỏ nhưng không ảnh hưởng gì, lần sau có cập nhật thì mình sẽ tìm cách sửa luôn và update thêm tính năng qua trang và truy cập link, cũng đơn giản nhưng đang bận quá :D đồng thời thêm một số option.
Các bạn có thể build thành exe và tạo biến môi trường cho nó, mình thì build thành go.exe, giờ chỉ cần "go Vu Ngoc Minh Hoang" là xong. Rất tiện.
Trên terminal cũng tương tự.
---------------------------
# -*- coding: utf8 -*-

# Dev: Vu Ngoc Minh Hoang  
# Public: 19-08-2015
# Version: 1.0
# Example: go Vu Ngoc Minh Hoang
from urllib2 import urlopen
from urllib2 import HTTPError
import urllib2
import sys
import re
import string
def mergerURL():
url = 'https://www.google.com/search?q='
for i in range(1,len(sys.argv)):
url = url + str(sys.argv[i]) + '+'
return url

if __name__ ==  '__main__':
#fake the mozilla headers
header = {'User-Agent' : 'Mozilla/5.0 (X11; U; Linux i686; en-US)AppleWebKit/533.2(KHTML, like Gecko) Chrome/5.0.342.7 Safari/533.2'}

#merger url
url = mergerURL()

#make request
req = urllib2.Request(url, headers=header)

#creat streamreader
try:
fpage = urlopen(req);
except HTTPError, e:
print "Error: ", e.code, e.reason

print "Read data complete"
#regex
ftitle = re.compile(r'<!--m-->.*?\)">(.*?)</a></h3>.*?<!--n-->')
flink = re.compile(r'<h3 class="r"><a href="(.*?)"')
fcontent = re.compile(r'<span class="st">(.*?)</span><')
###ftitle = re.compile(r'<!--m-->(.*?)<!--n-->')
#fix content
fix = re.compile('(<em>)|(</em>)|(&nbsp)|(</span>)|(<span class="f">)|(<wbr>)')

while True:
lnk = fpage.readline();
#print lnk
if not lnk:
break
else:
rtitle = ftitle.findall(lnk)
rlink = flink.findall(lnk)
rcontent = fcontent.findall(lnk)
if rtitle:
for i in range(len(rtitle)):
print u"[*]", rtitle[i],'\n|', rlink[i], '\n|', fix.sub('',rcontent[i]), '\n'
fpage.close()

#Mình đã update một số option và ngôn ngữ tiếng việt, trên cmd có vẻ như không hiển thị được tiếng việt, tạm thời sử dụng trên powershell nhé :D nhớ chọn font Consolas để hỗ trợ unicode
#Lần update tiếp theo không biết làm gì nhỉ? Truy cập link?
#Mình đã update phần setup cho nó, có vẻ hơi khó chịu khi nó đòi chạy với quyền Admin, nhưng để mình tìm cách fix đã
Chờ feedback của các bạn, các update mới nhất đều có trên github
Link GitHub: https://github.com/RokHoang/Google

Thứ Năm, 9 tháng 7, 2015

Project dịch video hướng dẫn lập trình Android

Các bạn có thể tham gia tự do, sử dụng Slack để trao đổi với nhau trong Project. (daynhauhoc.slack.com)
Project dịch phụ đề khóa học Android trên Youtube:
http://daynhauhoc.com/t/project-dich-phu-de-khoa-hoc-android-tren-youtube-grin/9248 
https://www.youtube.com/playlist?list=PLAwxTw4SYaPnMwH5-FNkErnnq_aSy706S

Thứ Sáu, 26 tháng 6, 2015

Chơi microcorruption.com

Một dạng CTF chơi khá vui
"Mở tung chương trình ra và hiểu nó hơn cả người viết nó"
microcorruption.com
Hiện mình đang đứng cứng ngắc ở level whitehorse :(( có lẽ chỉ cần ghi đè lên bộ nhớ thôi nhưng sao không pass qua được.

Thứ Tư, 17 tháng 6, 2015

Thứ Ba, 16 tháng 6, 2015

Thứ Hai, 15 tháng 6, 2015

Some applications of Linear Tranformation

I have found some links of Linear Tranformation. What is image and kernel of LT?
Mathinsight
HMC
and I also have solution for "Fibonanci". It uses LT and mutiple of vector.
Phd_NQH
how did they found the matrix to solve the problem?

Thứ Bảy, 13 tháng 6, 2015

Quine

I will show you a script that prints itself. The scripts like this is called "Quine". It is useful for writing a virus or doing something...

#include <stdio.h>
int main()
{
char *c="#include <stdio.h>%cint main(){%c%cchar *c=%c%s%c;%c%cprintf(c,10,34,c,34,10,10,10);%c%creturn 0;%c}";
printf(c,10,10,9,34,c,34,10,9,10,9,10);
return 0;
}

It is not complicated but you may need some trick to write Quine-script. You can write a program that rewrite any script to the Quine-Script.



Dọn phòng học

Cũng không bày biện nhiều :D rất thích nghe nhạc




Thứ Sáu, 12 tháng 6, 2015

Obfuscated C code

Tránh reverse-engineering (RE) mà lại còn được luyện mắt.
Bài của TS Ngô Quang Hưng: Thuật toán tồi tệ nhất