Wednesday, December 14, 2011
Subnet
First subnet: 151.151.0.128 ! why not 151.151.0.0? Because it assigned to Host(ISP) it is not a subnet.
2nd: 151.151.1.0
...
Host range: 1st: 151.151.0.129 - 151.151.0.254 (255 is Broadcast)
151.151.0.1-151.151.0.126 are belong to 151.151.0.0.
Tuesday, December 13, 2011
Schedule tasks on Linux using crontab
If you've got a website that's heavy on your web server, you might want to run some processes like generating thumbnails or enriching data in the background. This way it can not interfere with the user interface. Linux has a great program for this called cron. It allows tasks to be automatically run in the background at regular intervals. You could also use it to automatically create backups, synchronize files, schedule updates, and much more. Welcome to the wonderful world of crontab.
Crontab
The crontab (cron derives from chronos, Greek for time; tab stands for table) command, found in Unix and Unix-like operating systems, is used to schedule commands to be executed periodically. To see what crontabs are currently running on your system, you can open a terminal and run:sudo crontab -lTo edit the list of cronjobs you can run:
sudo crontab -eThis wil open a the default editor (could be vi or pico, if you want you can change the default editor) to let us manipulate the crontab. If you save and exit the editor, all your cronjobs are saved into crontab. Cronjobs are written in the following format:
* * * * * /bin/execute/this/script.sh
Sunday, December 11, 2011
Fixbug ko mở được biểu tượng "computer"
bạn tạo một thư mục /usr/local mới rồi khởi động lại máy. Câu lệnh dưới backup thư mục cũ vào tạo thư mục mới:
Friday, December 2, 2011
Because It’s Fun!
I learned how to download Linux and install it myself for free — then, FreeBSD and OpenBSD. Then, I was building my own servers. Now, the whole web server/Internet thing was less of a mystery. This was, again, fascinating and empowering.
Ten years ago, I was the founder/owner/CEO of a music distribution company that grew from just me to 85 employees.
As the company grew, I enjoyed building all of the office PCs and web servers myself. I enjoyed setting up the same FreeBSD distribution for everyone, and writing shell scripts to automate the installation of everything. It was a fun challenge, and I’d often stay until midnight setting these things up, totally “in the zone” and loving it.
Friday, November 18, 2011
Stay hungry, stay foolish!
muốn mình không tầm thường, muốn mình đam mê mà khó tìm ra sự thật...
chọn cái gì trong web-desk-mobile, lập trình hay quản lý, IT hay not IT...
con người ta do dự, đắn đo lựa chọn chỉ vì họ không dũng cảm đi đến cùng lựa chọn của mình. Sao phải nghĩ nếu là web/desk/mobile lập trình hay quản lý, IT hay NOTIT mà ở đó mình đều là chuyên gia? lo lắng điều gì? Mình vẫn lo lắng nó không hợp với mình => thật là vớ vẩn. Việc gì cũng có cái hay của nó, cứ đứng ngoài nhìn vào cái hay thì ai mà chả thich...
Nếu như kiến thức học ở các thầy không nhiều thì những câu chuyện cuộc đời thầy kể lại khơi nguồn cảm hứng mạnh mẽ cho sinh viên. GS ngày còn trẻ, ông muốn học ĐTVT, nhưng rồi bị bắt đi học Toán. Và giờ thì ông là GS Toán. Không cần biết bạn làm gì, chỉ cần làm điều đó 1 cách say mê và đến cùng thì ngôi sẽ ra ngô, khoai sẽ ra khoai , củ nào ra củ nấy.
Đơn giản chỉ là pick 1 cái và "just go with it", đến tận cuối con đường.
Mãi đắn đo chẳng tới đâu xa được.
IT or notIT
Web-Desktop-Mobile
Programming - Sysadmin - Multimedia
Windows or Linux
cắt giảm reading-list, force to main task!
Stay hungry, stay foolish!
Pragmatic Thinking: Novice vs Expert
The Book
Pragmatic Thinking and Learning is a different type of book, however. It explores the human mind and how it relates to learning and cognitive thought. To my surprise, it is very well researched and touches on psychology and neuroscience. Hunt brings the concepts home by relating them to the software industry and the toils and travails of an agile developer.
Tuesday, November 15, 2011
Sunday, November 13, 2011
Vim as hex editor
:set binary
:set display=uhex
g CTRL-G
234go
:%!xxd
:%!xxd -r
List of tools for developing on Linux
make | Utility to maintain groups of programs with compiling/linker directives |
imake | Utility to generate Makefiles from a template. |
GNU autoconf | Tool used to generate configure script. Requires GNU m4. |
gHex | Binary Editor and Viewer |
beav | Binary Editor and Viewer |
od | dump files in octal and other formats. od -c will try to dump everthing as ascii. |
xxd | make a hexdump or do the reverse |
strings | Print the strings of printable characters found in a file. |
install | copy files and set attributes (ginstall) |
m4 | Macro language for builing configuration files |
objdump | display assembler information from object files |
nm | display symbol table from an object file |
readelf | Displays information about ELF format object files. |
ar | Create, modify, and extract from archives |
ranlib | Generate index to archive |
ldconfig | determine run-time link bindings |
ldd | Print shared library dependencies for an executable (i.e.: ldd `which xpdf`) |
GNU libtool | Used to generate shared libraries. |
ipcs | Report interprocess communication facility status for queues, shared memory, semaphores |
iprm | Remove queues, shared memory, or semaphores |
more
http://www.yolinux.com/TUTORIALS/LinuxTutorialSoftwareDevelopment.html
Saturday, November 12, 2011
PyGTK and WxPython
GTK+ 2.0 work well but it will end of support soon.
GTK+ 3.0 use GObject) is a painful tookit when you try to install it.
May be it will be easier with higher Ubuntu version (I'm using 10.10)
Leave GTK+. Start to hate GNOME
2. WxPython
trying...
Cannot find install-sh, install.sh, or shtool ...
Painful GTK+3.0 =.=
fix title error when configure py2cairo
$ libtoolize --force
$ aclocal
$ autoheader
$ automake --force-missing --add-missing
$ autoconf
$ ./configure
Friday, November 11, 2011
Why so lazy?
But why I hadn't done that before?
So lazy!
2 days ago, XML looks like some alien-thing to me, after 30 minutes, it's easier than HTML
30 minutes ago, 'make' is some mystical thing to me, now it's so simple and useful tool.
Just give 1-2 hours to learn a tool, it worth your time!
Thursday, November 10, 2011
XML
XML is designed to transport and store data.
I learn this to understand glade file created by Glade3, when writing a GUI for Python app
Some notices:
< < less than
> > greater than
& & ampersand
' ' apostrophe
" " quotation mark
White-space is Preserved in XML
carriage return (CR) and line feed (LF)
XML stores a new line as LF
An XML element is everything from (including) the element's start tag to (including) the element's end tag.
no words are reserved.
Attributes are handy in HTML. In XML my advice is to avoid them. Use elements instead.
metadata (data about data) should be stored as attributes, and the data itself should be stored as elements.
Document Type Definition (DTD)
Formatting XML with CSS is not the most common method.
W3C recommends using XSLT instead
XSLT is the recommended style sheet language of XML.
XSLT (eXtensible Stylesheet Language Transformations) is far more sophisticated than CSS.
XSLT can be used to transform XML into HTML, before it is displayed by a browser:
http://www.w3schools.com/xml/xml_summary.asp
Saturday, November 5, 2011
Tôi đọc "Suối nguồn"
Từ ngày quyết định "read less, think more", đọc sách theo 1 kiểu khác. Đọc nhiều chưa chắc hay bằng đọc ít mà nắm được những gì người ta nói, suy được ra những cái hay mà người ta chả nói... Đọc nhiều lấy vội lấy được ngẫm ra cũng như cưỡi ngựa xem hoa, sao biết hoa đẹp, hoa thơm... hoa có lông có lá :))
Với một cuốn sách thiên về tư tưởng và tôn vinh sự sáng tạo như Suối nguồn - "The fountainhead" ~1200 trang, chẳng thể nhớ được nhiều nếu chỉ đọc 1 lần tác phẩm kinh điển này.
"Suối nguồn" lên án mạnh mẽ "xu hướng đám đông" - chỉ vì không có chính kiến, hùa theo số đông mà người ta đánh mất chân lý. Càng ngày, càng thấy rằng chân lý dường như không thuộc về số đông - ngay tại các tập thể mà tôi đang sống. Số đông là những kẻ đam mê hời hợt, nói chuyện tầm phào và giỏi đưa ra nhận xét thằng này hơn thằng kia...
238 - [Bà Keating] Peter, nếu như con đang thực sự hướng đến mục tiêu cao. Con không được phép để cho bản thân mình thỏa mãn bất kỳ ý thích nhất thời nào như bao nhiêu người khác có thể làm, bởi vì đối với họ, đằng nào thì cũng chẳng ích gì.
.....
cont
Tuesday, November 1, 2011
I Try - Ben Taylor
Thursday, October 27, 2011
x86, 386, 486, 686... @@
x86 = extension of 86.
x86_64 là các dòng CPU 64 bit.
Còn lại là các loai CPU 32 bit:
i386 - kiến trúc cơ bản của intel dựa trên 80386
i486 - các vi xử lí dựa trên 80486
i586 - thiết kế cho Pentiums
i686 - Từ Pentium Pro trở lên.
các dòng CPU có khả năng tương thích ngược, tức là có thể chạy 1 hệ điều hành viết cho i386 trên máy i686 ngon lành, điều ngược lại không đúng :D
PS: x86 nếu viết đầy đủ ra phải là x86-32, bởi nó là 1 phiên bản mở rộng của vi xử lí 16bit 8086.
Friday, October 21, 2011
Are You Reading Too Much?
I ran across and interesting quote by Albert Einstein the other day.
Reading, after a certain age, diverts the mind too much from its creative pursuits. Any man who reads too much and uses his own brain too little falls into lazy habits of thinking.
~ Albert Einstein
This isn’t exactly the best known quote by Einstein and I doubt many teachers quote this to their students. Reading is generally a good thing, but if it starts becoming a substitute for thinking on your own it can hold you back from reaching your potential.
This quote touches on a problem that holds many people back from actually accomplishing things. It is easy to spend so much time researching that you never actually execute. That doesn’t mean you shouldn’t read, do research and try to learn from others, but at some point you have to decide that you’ve gather enough data and the time has come to do something. That may be starting your own business, writing a book or even repainting your living room. You have a very finite lifespan. Some people send their life preparing for what they want to do without ever actually doing what they want to do.
Sometimes the most helpful situations are the ones that force you to go ahead and do something by removing the option to try to collect more information.
Business minded? Subscribe to Mark Shead’s business consulting blog.
Saturday, October 8, 2011
Sunday, October 2, 2011
Auto mount a partition with fstab
Mình đang dùng Ubuntu 10.10, bản này đã sử dụng UUID để chỉ định device được mount trong file fstab.
0. sda sdb..
sda là thiết bị đĩa cứng trên máy của bạn.
nếu cắm usb vào, nó sẽ nhận thiết bị là sdb. Cắm cái nữa sẽ là sdc...
Trên mỗi thiết bị có nhiểu phân vùng (partition) và được đánh số sda1,sda2...
Để xem các phân vùng đã mount ta dùng:
famihug@hvn:/media/Dale$ sudo df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 70G 19G 49G 28% /
none 1.7G 276K 1.7G 1% /dev
none 1.7G 168K 1.7G 1% /dev/shm
none 1.7G 308K 1.7G 1% /var/run
none 1.7G 0 1.7G 0% /var/lock
/dev/sda5 149G 61G 88G 42% /media/data
Saturday, October 1, 2011
[Bash] cd around the world
cd thu_muc_dichlà sẽ đến được ngay, nhưng việc nhỏ bé này sẽ nhiều lúc gây khó chịu đến nỗi khiến ta bật nautilus lên và browse bằng chuột :D.
Tip1: trở về thư mục mà bạn vừa rời khỏi
dùng lệnh cd -
hvnsweeting@hvnbox:/media/data/HVNSweeting$ cd ~
hvnsweeting@hvnbox:~$ cd -
/media/data/HVNSweeting
hvnsweeting@hvnbox:/media/data/HVNSweeting$
Tip2: trở về một thư mục nào đó sau khi đi khắp nơi.
Ví dụ bạn đang ở ~/a/b/c/d/e/f , chạy đi khắp nơi và giờ muốn trở về nơi này. Việc gõ cd ~/a/b/c/d/e/f là cực kì nhàm chán. Hãy sử dụng biến(variable) của bash:
gán biến cur=$(pwd) #kết quả trả về của lệnh pwd = thư mục hiện tại.
hvnsweeting@hvnbox:/media/data/HVNSweeting$ cur=$(pwd)
hvnsweeting@hvnbox:/media/data/HVNSweeting$ cd /home/hvnsweeting/Dropbox/DIC/
hvnsweeting@hvnbox:~/Dropbox/DIC$ cd /home/hvnsweeting/.config/awesome/
hvnsweeting@hvnbox:~/.config/awesome$ cd $cur
hvnsweeting@hvnbox:/media/data/HVNSweeting$
Tip3: đặt tên cho những thu mục thường xuyên ghé thăm.
đặt các biến gắn với các địa chỉ bạn thường sử dụng trong file ~/.bashrc để dễ dàng di chuyển đến đó:
jlab=~/Dropbox/DIC/Java
clab=~/Dropbox/DIC/C
khi cần, bạn chỉ việc cd $jlab hay cd $clab là teleport đến luôn :D
Happy Linux!
Written by HVNSweeting (a.k.a FamiHug) at http://www.familug.com
vui lòng ghi rõ nguồn khi post lại ở chỗ khác, thanks!
Friday, September 30, 2011
Kernel và vấn đề tương thích với từng máy
Vấn đề lớn nhất xảy ra là kernel của bản 10.10 (2.6.35.x đổ về sau) đều không nhận em LCD DELL của mình như các tiền bối nó đã làm. Nó liên tục spam ra console (và chắc chắn là cả log) những dòng báo lỗi
[drm:radeon_dvi_detect] *ERROR* HDMI Type A-1: probed a monitor but no|invalid EDID
search khắp nơi nhưng cũng ko chỗ nào fix được lỗi này triệt để. Vậy là quyết định thọc vào bên trong em nó: kernel :ss
Thử với các ver sau như 2.6.38.x cũng vẫn có lỗi y hệt. Thế nên giải pháp ngon lành nhất là dùng lại kernel của bản 10.04: 2.6.34
remove tất cả đống kernel đã cài đi sau khi cài 2.6.34 down từ đây :
http://kernel.ubuntu.com/~kernel-ppa/mainline/
Dòng spam đã biến mất, console (TTYx) đã chạy bình thường nuột nà :x
Làm việc với console năng suất hơn là ngồi onl với Firefox :-ss ko thể tập trung nổi
PS: Thêm một vấn đề bị vướng phải là không hiện grub menu lúc khởi động.
Lí do là với Grub2 nếu nó không tự hiện menu thì giữ ESC hoặc Shift một lúc là nó hiện :D
Tuesday, September 27, 2011
Sentences
- Loving one doesn't require hating the other.
Sunday, September 25, 2011
Console based system
For a long time now I have been trying to get the “perfect” working environment on my desktop (in this case, Ubuntu). My requirements for this are simple:
- Everything (well, almost everything) should be grep-able (documents, presentations, tasks, mails, chats)
- A tiling window manager – as screens on desktops tend to be large and wide, I find no reason for having windows stacked
- Multiple desktop support in the window manager (each one customized for a specialized task)
- The ability to start all my applications after login and to place each of them on predefined desktop
- Have unitary settings between home desktop, work desktop, laptops, etc
- Dropbox for sync-ing configurations, logs, to-do lists and the sorts
- The awesome window manager
- Emacs as text editor
- Org-mode in Emacs for tasks, to-do lists and presentations (yes, I write all my slides in org-mode)
- Auctex mode in Emacs LaTeX for documents
- Urxvt as terminal
- Finch for communication (Pidgin tends to be ugly to manage in a tiling window manager, and really – I just want to write text in my messages – why all the useless UI?)
- Elinks for command line browsing (yes, you can open GMail in elinks without any problem)
Saturday, September 24, 2011
Be better...
Lots things to think
Lots things to do
To win this contest, must solve 3 complicated problems in 180 minutes.
2 ways to go:
1. Solve as much as possible, got EXP
2. Create a model process to follow.
I choose 2.
Solved 82 ProjectEuler problems, but I didn't get many as it should be. Cos just solve and go. I learned almost nothing :(
To do list:
- Resolve all 82 problems by Java (vim/API only - no IDE)
- Essential all techniques: backtracking, brute force, memoization, recursive, dynamic programming.
- Create form to solve problem.
No matter how much I learn, but how much I get @@
Friday, September 23, 2011
Thursday, September 22, 2011
[Linux] First pain with awesome window manager (can't set wallpaper)
Bản awesome mình đang dùng : awesome v3.4.5 (Close To You)
Làm đẹp, một nhu cầu tất yếu của con người nên việc đầu tiên là chọc vào thay theme, wallpaper. Nhưng lúc vừa mới cài mình đã để ý wallpaper ko được set sẵn như lần cài trong máy ảo. Chỉ là một màu xám ngoét mà đã cố chịu đựng trong mấy ngày :)). Fix it now!
trước hết là thay theme khá dễ dàng với việc edit 1 dòng trong file ~/.config/awesome/rc.lua. Thay link trong dấu “” bằng một link đến file theme.lua khác:
beautiful.init("/home/hvnsweeting/.config/awesome/themes/zenburn/theme.lua")nếu số ai không đen như mình thì nó sẽ đổi cả wallpaper mặc định với mỗi theme sau khi đổi theme. Còn nếu màn hình bạn đã xám ngoét từ đầu thì phải sửa em nó thôi :
mở file theme.lua đã dùng ở trên ra sẽ thấy dòng
theme.wallpaper_cmd = { "awsetbg /home/hvnsweeting/.config/awesome/themes/zenburn/zenburn-background.png" }bản thân awesome không tự thay đổi wallpaper được, nó phải sử dụng một phần mềm nhỏ có trên máy bạn là awsetbg. Bình thường cái awsetbg sẽ hoạt động ngon lành (gõ awsetbg link/to/wallpaper.jpg sẽ thay wallpaper luôn), thế nhưng ta đang trong trường hợp không bình thường :( gõ vào terminal:
hvnsweeting@hvnbox:~/.config/awesome/themes/zenburn$ awsetbg -inhư vậy awsetbg lại dùng 1 app khác để set wallpaper. Như ở trên thông báo, nó sẽ dùng feh (một wallpaper setter). Gõ check xem đã cài chưa
I can't find an app to set the wallpaper with. Using xsetroot to set a solid background. If you want to have a background image you should install Esetroot or feh.
hvnsweeting@hvnbox:~$ feh -vnếu chưa thì bạn dùng dòng lệnh dưới để cài feh:
feh version 1.7
sudo apt-get install fehbây giờ ta thay dòng lệnh trong file theme.lua để có thể đổi wallpaper:
theme.wallpaper_cmd = { "awsetbg -u feh /home/hvnsweeting/.config/awesome/themes/zenburn/zenburn-background.png" }màn hình đã không còn xám ngoét mà giờ đả đỏ choét :x. Sự sống lại đến với em desktop awesome!
Tuesday, September 20, 2011
[Python] Ma trận chuyển vị và cách lấy cột của 1 ma trận
Cần lấy 1 cột trong 2D list để cho vào 1 list khác.
Cách làm là dùng hàm zip() để trả về ma trận chuyển vị rồi lấy dòng (tương ứng với cột ) cần lấy. (hoặc đơn giản hơn là tạo 1 list mới chứa các phần tử của cột cần lấy)
>>> ls = [[1,2,3],[4,5,6],[7,8,9]]
>>> for i in ls: print i
...
[1, 2, 3]
[4, 5, 6]
[7, 8, 9]
>>> print ls[2][:]
[7, 8, 9]
>>> for row in zip(*ls): print row
...
(1, 4, 7)
(2, 5, 8)
(3, 6, 9)
>>> print zip(*ls)[2]
(3, 6, 9)
>>> print zip(*ls)[1]
(2, 5, 8)
>>> [row[1] for row in ls]
[2, 5, 8]
Python cung cấp nhiều thư viện giành riêng cho mục đích tính tóan và khoa học vd như scipy, pynum... Nhưng khi không cần nhiều như thế thì cứ zip mà xoay :x
Love Python ! :x Solved PE82
(Mình ham chơi quá :“> )
Friday, September 16, 2011
[Python] Nhập file chứa ma trận vào chương trình
làm mình tìm tung lên và chửi nó một lúc :">
Nhưng python thật quá tuyệt trong khoản này :p. Mò một lúc là có thể đọc dữ liệu (các hệ số) từ file:
Trước tiên dùng readline() để đọc một dòng, nó sẽ trả về 1 str. Sau đó split str này thành 1 list các str con rồi map lại thành 1 list int
hvnsweeting@hvnbox:/media/Paradise/DIC/pyhvn$ pythonNgày càng yêu python :x
Python 2.6.6 (r266:84292, Sep 15 2010, 15:52:39)
[GCC 4.4.5] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> fin = open("matrix.txt","r")
>>> matrix = []
>>> for i in range(5):
... arow = map(int, fin.readline().split(','))
... matrix.append(arow)
...
>>> matrix
[[4445, 2697, 5115, 718, 2209], [1096, 20, 1318, 7586, 5167], [9607, 7385, 521, 6084, 1364], [7206, 3114, 7760, 1094, 615], [3620, 8024, 577, 9997, 7377]]
>>> for i in matrix: print i
...
[4445, 2697, 5115, 718, 2209]
[1096, 20, 1318, 7586, 5167]
[9607, 7385, 521, 6084, 1364]
[7206, 3114, 7760, 1094, 615]
[3620, 8024, 577, 9997, 7377]
>>>
Thursday, September 15, 2011
[Java] Thay đổi kích thước heap
java.lang.OutOfMemoryError: Java heap space
Có thể thay đổi kích thước heap để chương trình có thể chạy ngon lành :D
Eclipse
eclipse [normal arguments] -vmargs -Xmx256M [more VM args]http://wiki.eclipse.org/FAQ_How_do_I_increase_the_heap_size_available_to_Eclipse%3F
Command (terminal - linux)
java -Xss20m PE81Dijkstra
java -Xss[kích thước heap] program
Đây là một cách chữa cháy khi chương trình báo lỗi ko đủ bộ nhớ, nhưng điều thực sự nên làm là thay đổi chương trình, sử dụng thuật tóan tốt hơn để chạy tốn ít bộ nhớ hơn.
Tuesday, September 13, 2011
Phrases We Owe to Shakespeare
Becky, a 20-year-old English Lit geek living in London, scribbled out this list in a Moleskine notebook at 3 am
a couple nights ago. She posted it on her Tumblr page,
and within 24 hours, more than 11,000 people had saved it in their favorites file.
She was astonished. “I still don’t know how something I scribbled in a hurry at 3am got so many notes in the space of a day? Shakespeare is clearly too awesome,” Becky said in an update on the post today. “I spelt “bated” wrong, awk … Someone said this looks like a serial killer’s notebook, which made me laugh a lot. They’re not wrong, I’ve been a sleep deprived zombie lately.”
She certainly is a girl on a mission.
On her birthday on August 30th, she set a challenge for herself: Read a book every week until she turns 21. “Lately, I’ve gotten into the terrible habit of buying books but never reading them.
Gradually I’ve been reading less and less,” she said.
She put together a list of 52 books (heavy on Palahniuk, Murakami and Hemingway) and posted it here.
“I thought it would be a good way to encourage others to read more too.”
Want to take the challenge? The details are here.
She’s also giving away the books she reads.
Awesome.
[Python] One-liner prints square triangle
>>> for i in range(1,11): print i*'*'
*
**
***
****
*****
******
*******
********
*********
**********
>>>
Nhờ tính năng “nhân” string của Python
Love :x
Friday, September 9, 2011
Everyday English 20110909
fork : chia nhánh
perceive : lĩnh hội, nắm đc
perspectives : phối cảnh, viễn cảnh
arrogant (a): kiêu ngạo
ignorant (a): ngu dốt, dốt nát
convinced : tin chắc
Embrace : ôm, nắm lấy
I would advice you to think twice about if software development is for you (nghĩ 2 chiều - nghĩ đi nghĩ lại)
see my job board for evidence(bằng chứng)
nanosecond is one billionth of a second (1/tỷ)
The Truly Educated Never Graduate
Science can be very complex in theory and people failing to think in these abstract terms probably get cold feet prematurely in their choice of education. Other people have a hard time to apply theory in practice even though they are all very smart people! Indeed, having a university degree is far from an insurance of being intelligent.
Alan Kay, the father of object-oriented programming, shares some very interesting ideas around teaching and understanding. James Bach also touches on the subject in Secrets of a Buccaneer-Scholar. Noam Chomsky and Sir Ken Robinson further acknowledge the failure of modern education in a very deep and interesting analysis.
I think this is very unfortunate, because it means that we (the people) are somewhat mislead in a system that does not encourage individuals to pursue our their inner passion.
Thursday, September 1, 2011
Conclude for this week
Transfer files between 2 linux computer using vsftpd & ftp
Learn basic concept about Functional Programming
http://www.joelonsoftware.com/items/2006/08/01.html
Nice question
http://stackoverflow.com/questions/7267760/how-can-a-time-function-exist-in-functional-programming
Wiki
http://en.wikipedia.org/wiki/Functional_programming
Ten Things Everyone Should Know About Time
“Time” is the most used noun in the English language, yet it remains a mystery. We’ve just completed an amazingly intense and rewarding multidisciplinary conference on the nature of time, and my brain is swimming with ideas and new questions. Rather than trying a summary (the talks will be online soon), here’s my stab at a top ten list partly inspired by our discussions: the things everyone should know about time. [Update: all of these are things I think are true, after quite a bit of deliberation. Not everyone agrees, although of course they should.]
1. Time exists. Might as well get this common question out of the way. Of course time exists — otherwise how would we set our alarm clocks? Time organizes the universe into an ordered series of moments, and thank goodness; what a mess it would be if reality were complete different from moment to moment. The real question is whether or not time is fundamental, or perhaps emergent. We used to think that “temperature” was a basic category of nature, but now we know it emerges from the motion of atoms. When it comes to whether time is fundamental, the answer is: nobody knows. My bet is “yes,” but we’ll need to understand quantum gravity much better before we can say for sure.
2. The past and future are equally real. This isn’t completely accepted, but it should be. Intuitively we think that the “now” is real, while the past is fixed and in the books, and the future hasn’t yet occurred. But physics teaches us something remarkable: every event in the past and future is implicit in the current moment. This is hard to see in our everyday lives, since we’re nowhere close to knowing everything about the universe at any moment, nor will we ever be — but the equations don’t lie. As Einstein put it, “It appears therefore more natural to think of physical reality as a four dimensional existence, instead of, as hitherto, the evolution of a three dimensional existence.”
3. Everyone experiences time differently. This is true at the level of both physics and biology. Within physics, we used to have Sir Isaac Newton’s view of time, which was universal and shared by everyone. But then Einstein came along and explained that how much time elapses for a person depends on how they travel through space (especially near the speed of light) as well as the gravitational field (especially if its near a black hole). From a biological or psychological perspective, the time measured by atomic clocks isn’t as important as the time measured by our internal rhythms and the accumulation of memories. That happens differently depending on who we are and what we are experiencing; there’s a real sense in which time moves more quickly when we’re older.
4. You live in the past. About 80 milliseconds in the past, to be precise. Use one hand to touch your nose, and the other to touch one of your feet, at exactly the same time. You will experience them as simultaneous acts. But that’s mysterious — clearly it takes more time for the signal to travel up your nerves from your feet to your brain than from your nose. The reconciliation is simple: our conscious experience takes time to assemble, and your brain waits for all the relevant input before it experiences the “now.” Experiments have shown that the lag between things happening and us experiencing them is about 80 milliseconds. (Via conference participant David Eagleman.)
5. Your memory isn’t as good as you think. When you remember an event in the past, your brain uses a very similar technique to imagining the future. The process is less like “replaying a video” than “putting on a play from a script.” If the script is wrong for whatever reason, you can have a false memory that is just as vivid as a true one. Eyewitness testimony, it turns out, is one of the least reliable forms of evidence allowed into courtrooms. (Via conference participants Kathleen McDermott and Henry Roediger.)
6. Consciousness depends on manipulating time. Many cognitive abilities are important for consciousness, and we don’t yet have a complete picture. But it’s clear that the ability to manipulate time and possibility is a crucial feature. In contrast to aquatic life, land-based animals, whose vision-based sensory field extends for hundreds of meters, have time to contemplate a variety of actions and pick the best one. The origin of grammar allowed us to talk about such hypothetical futures with each other. Consciousness wouldn’t be possible without the ability to imagine other times. (Via conference participant Malcolm MacIver.)
7. Disorder increases as time passes. At the heart of every difference between the past and future — memory, aging, causality, free will — is the fact that the universe is evolving from order to disorder. Entropy is increasing, as we physicists say. There are more ways to be disorderly (high entropy) than orderly (low entropy), so the increase of entropy seems natural. But to explain the lower entropy of past times we need to go all the way back to the Big Bang. We still haven’t answered the hard questions: why was entropy low near the Big Bang, and how does increasing entropy account for memory and causality and all the rest? (We heard great talks by David Albert and David Wallace, among others.)
8. Complexity comes and goes. Other than creationists, most people have no trouble appreciating the difference between “orderly” (low entropy) and “complex.” Entropy increases, but complexity is ephemeral; it increases and decreases in complex ways, unsurprisingly enough. Part of the “job” of complex structures is to increase entropy, e.g. in the origin of life. But we’re far from having a complete understanding of this crucial phenomenon. (Talks by Mike Russell, Richard Lenski, Raissa D’Souza.)
9. Aging can be reversed. We all grow old, part of the general trend toward growing disorder. But it’s only the universe as a whole that must increase in entropy, not every individual piece of it. (Otherwise it would be impossible to build a refrigerator.) Reversing the arrow of time for living organisms is a technological challenge, not a physical impossibility. And we’re making progress on a few fronts: stem cells, yeast, and even (with caveats) mice and human muscle tissue. As one biologist told me: “You and I won’t live forever. But as for our grandkids, I’m not placing any bets.”
10. A lifespan is a billion heartbeats. Complex organisms die. Sad though it is in individual cases, it’s a necessary part of the bigger picture; life pushes out the old to make way for the new. Remarkably, there exist simple scaling laws relating animal metabolism to body mass. Larger animals live longer; but they also metabolize slower, as manifested in slower heart rates. These effects cancel out, so that animals from shrews to blue whales have lifespans with just about equal number of heartbeats — about one and a half billion, if you simply must be precise. In that very real sense, all animal species experience “the same amount of time.” At least, until we master #9 and become immortal. (Amazing talk by Geoffrey West.)
Monday, August 15, 2011
Sunday, August 14, 2011
Java for Android programming
A complete understanding of the basics would be desirable.
Specifically the following topics:
- Declarations and Access Control
- ObjectOrientation
- Assignments
- Operators
- Flow Control, Exceptions, and Assertions
- Strings, I/O, Formatting, and Parsing
- Generics and Collections
- InnerClasses
- Threads
You don't need to learn specific libraries ( like swing, or others ) because you won't use them in Android.
http://stackoverflow.com/questions/2981495/how-much-java-should-i-have-learnt-before-trying-android-programming
Weekly plan 15/08/11 - 21/08/11
http://www.cs.swarthmore.edu/~newhall/unixhelp/howto_makefiles.html
http://www.cs.swarthmore.edu/~newhall/unixhelp/javamakefiles.html
Java IO
Maven
http://maven.apache.org/what-is-maven.html
Cmake
OpenCV
Virii
Conclude for this week
Euler transforming
Partition Function
generating function
Write loop instead of recursive
Pentagonal numbers: n*(3*n - 1)/2 where n = 0, +-1, ...
Project Euler is a game, stop playing game to do large work
Doing PE is fun, useful. I love to do some ProjectEuler problems, learn some new technique. But PE just a game. Now, must stop playing game and do real work.
Play PE in spare time :x
Test some new FF extensions
Has many nice features but not lightweight =.=
Tile view - Tile the browser
Bad shortcut, difficult
Wednesday, August 10, 2011
Programming Achievements: How to Level Up as a Developer
Forget greatness for a moment: How does a decent developer become a good developer?
There is no definitive path from Step 1 to Step n. Heck, it's not even clear what Step n is. And as logically-minded developer types, the lack of a well-defined route can make for a daunting journey from novice to master.
I've spent a fair bit of time over the last few years bumping up against this conundrum. What's next? How do I go from being a good developer to a being really good developer?
Triết lý mì tôm
1. Thuyết tương đối:
Một bát mì chẳng là gì so với cơm ngon , thịt gà , cá gỡ nhưng còn hơn là nhịn đói. Giá trị của gói mì tôm là tương đối, không có gì là tuyệt đối.
2. Nắm bắt thời cơ:
Thời điểm tốt nhất để ăn một bát mì là sau khi nó vừa chín. Ăn sớm thì sống, ăn muộn thì nát. Hãy nắm bắt thời điểm thích hợp nhất để làm việc cần làm :-" (BTW: vẫn có những đứa thích ăn mì tôm sống và mì tôm nát =.= )
3. Lòng tốt:
Thời điểm tốt nhất để rửa bát là sau khi ăn mì tôm. Để lâu mỡ sẽ đóng lại rửa rất khó chịu, đặc biệt là vào mùa đông. Hãy rửa bát ngay sau khi ăn, hoặc tráng qua nước nếu bạn không phải là người rửa. Ai đó sẽ nói "Cám ơn!"
4. Kết hợp:
Chẳng có ai thích ăn mì không cả, trừ khi bắt buộc phải thế. Ăn mì với trứng, thịt bò, hành lá thật là tuyệt vời. Khi đi một mình, mì tôm có thể chí đáng giá 3k nhưng thêm thị bò vào là lên 15 nghìn ngay, thậm chí còn đắt hơn. Đừng sống một mình!
5. Nguyên tắc chia nhỏ:
Ai nấu mì tôm cũng bẻ ra cả, để cả miếng lúc chín rất khó ăn. Việc lớn khó thì xé nhỏ ra mà làm.
Ai tài trợ mình thêm thùng mì nữa cái :">
Tuesday, August 2, 2011
Top 5 regrets people make on their deathbed
By Bronnie Ware (who worked for years nursing the dying)
For many years I worked in palliative care. My patients were those who had gone home to die. Some incredibly special times were shared. I was with them for the last three to twelve weeks of their lives.
People grow a lot when they are faced with their own mortality. I learnt never to underestimate someone’s capacity for growth. Some changes were phenomenal. Each experienced a variety of emotions, as expected, denial, fear, anger, remorse, more denial and eventually acceptance. Every single patient found their peace before they departed though, every one of them.
When questioned about any regrets they had or anything they would do differently, common themes surfaced again and again. Here are the most common five:
1. I wish I’d had the courage to live a life true to myself, not the life others expected of me.
Saturday, July 30, 2011
Text Editors in The Lord of the Rings
TextMate: Minas Tirith
A once-great but now decaying city. Only the King has the power to renew it, but he is a long absent, indeed half-legendary figure—though there are persistent rumors that he is alive still in some distant land. In his stead, the city slowly falls in upon itself, kept in some sort of working order by its melancholy people. They can repair but not truly rebuild it, and they pray daily for the Return of the King.
Monday, July 25, 2011
Sunday, July 24, 2011
Hash passwords
Q:
Well, please tell me, what's wrong with this code
$password = "hello";;
$password = md5($password);
for($i=1;$i<20;$i++){
$password = md5($password);
}
Test-Driven Development Is Not Slower
NOTE: This post is an extended version of a comment I left in reply to an anonymous commenter on Mike Hadlow’s “I Don’t Have Time For Unit Tests” post. I encourage you to go read his post, because Mike has some good insights that I won’t repeat here.
Thursday, July 21, 2011
Java note
Which one is faster in Java ?
1 | for ( int i = 100000 ; i > 0 ; i--) {} |
2 | for ( int i = 1 ; i < 100001 ; i++) {} |
Wednesday, July 20, 2011
Funny Source Code Comments
As you might have guessed, it is a collection of funny source code comments, provided by developers all over the world. Take a look at it, it could definitely make your day.
I am reposting here my personal favorites from that long long collection:
// sometimes I believe compiler ignores all my comments
Exception up = new Exception("Something is really wrong.");
throw up; //ha ha
Monday, July 18, 2011
21 Google Plus circles you can actually use.
This infographic on 21 Google Plus circles you can actually use made me chuckle.
(via David Pogue)
"
Test your vocabulary
Dạo này lười thế :D
Weekly post
Last week:
Basic PHP
Normalize SQL database - 3 steps
MD5 hash, little things in cryptography.
TTD, PHP simpletest , JUnit
This week:
PHP & HTML form
MD5Hasher v1.0
http://www.mediafire.com/?lzi4t158c4z5phc
run on both Windows and Linux. You have to preinstall JRE.
Just a toy software make to use some interesting things that I've learned about cryptography and Java GUI.
Nice try ;)
(If you would like the source, plz comment) :D
Thursday, July 7, 2011
A physics joke
Einstein closes his eyes and starts counting.
Pascal goes and hides behind a cloud.
Newton stays where he is, and draws a 1mx1m square on the floor around him.
Einstein finishes counting and turns around.
'Ah ha, Newton! I found you!'
'No you haven't, you've found one Newton over 1m2 . . . You found Pascal.'
Monday, June 20, 2011
Infographic of the Day
Infographic of the Day: The future ain’t what it used to be. I don’t see a flying car anywhere on this chart!
Infographic of the Day
Infographic of the Day: The future ain’t what it used to be. I don’t see a flying car anywhere on this chart!
[reddit]
Tagged: computers, Infographic, the future "
Tuesday, June 14, 2011
Fibonacci number in O(1) time!
takes O(n) if you use loop with two variable
can it be solved in O(log(n))?
More better, it can be solved in O(1) time ?!!!
#includestdio.h
#include math.h //please add smaller and larger symbol
unsigned long long fib(int n)
{
double x = sqrt(5)/5;
double f1 = x * pow((1 + sqrt(5)) / 2, n);
double f2 = -x * pow((1 - sqrt(5)) / 2, n);
return (unsigned long long)(f1 + f2);
}
int main()
{
int n;
printf("Find nth Fibonacci number, n = ");
scanf("%d",&n);
printf("%dth Fibonacci number: %llu\n",n,fib(n));
return 0;
}
Unsigned long long type can represent largest number which has <=20 digits. For larger number, use gmp library or use higher level language.
This algorithm use golden ratio.
Thursday, June 9, 2011
ToStudyList
http://zung.zetamu.net/Files/XSTK2010_2chapters.pdf
Tuesday, June 7, 2011
Every year
What does a developer do?
Q
After graduating college I was hired as a Junior Programmer a little over a year ago. I quickly noticed that I was degrees of magnitude faster than all the other programmers; this seems to be because I simply don't waste time "in general".. The majority of other people however seem to enjoy staring the ceiling, browsing youtube/facebook/random websites, and in general doing in a day the work I usually do in an hour. I'm 100% sure they would be able to do that work in an hour too if they focused.
I've been quickly promoted to Senior Developer and more recently to Team Leader and now I replaced a lot of those people with new hires (still a couple to go).. The situation is now more acceptable, but still I think it could be much better.
I can't help to notice though that everyone seems to behave like this is "normal".. All my bosses aren't concerned about this and they too seem to work little to nothing. I always have a very hard time finding them, they arrive much later than they are supposed to and leave early.. Obviously there is nothing I can do in this case since they're above me, but I'm now wondering if this is the "norm" in all companies or I simply ended up in a very bad one (this is my first work experience). Also I'm wondering if in a few years I'll "become like them".
Sunday, June 5, 2011
How to become a Linux system administrator
Here are things I think that anyone in the college right now and looking to become a sys admin can do. Note that I am focussing here mostly on the technical skills required.
Sunday, May 29, 2011
Buffalo Buffalo and Mathematical Induction
I think Hand wins the Internet...
Hoisted from Comments:
Buffalo Buffalo Buffalo Buffalo Buffalo Buffalo Buffalo Buffalo: Hand writes: No, you needn't posit anything about a Buffalo type of buffalo.
Wednesday, May 25, 2011
tar -xzf
http://qdb.us/305221
Tuesday, May 24, 2011
KiB vs kB
- Trước đây, mình cứ nghĩ KiB và kB giống nhau, = 1024 B. Thế nhưng sự thật thì lại không phải thế :
- KiB là Kibi Byte = 1024 Bytes = 2^10
- MiB là Mibi Byte = 1024 KiB= (2^10)^10
- Hệ đơn vị KiB MiB này là do người Mỹ nghĩ ra. Dựa trên hệ số 2
- Còn kB, MB, GB... là đơn vị thuộc hệ SI ( Système international d'unités )
- 1 kB = 1000 B, 1 MB = 1000 MB.
- => 1 kB < 1 KiB, 1 MB < 1 MiB
- Vậy chữ "i" kí hiệu cho hệ binary.
- PS: bit là viết tắt của "binary digit"
- 2008
- The US National Institute of Standards and Technology guidelines require use of IEC prefixes KiB, MiB ... (and not kB, MB) for binary byte multiples[83]
- p29, “The names and symbols for the prefixes corresponding to 2 10 , 2 20 , 2 30 , 2 40 , 2 50 , and 2 60 are, respectively: kibi, Ki; mebi, Mi; gibi, Gi; tebi, Ti; pebi, Pi; and exbi, Ei. Thus, for example, one kibibyte is also written as 1 KiB = 2 10 B = 1024 B, where B denotes the unit byte. Although these prefixes are not part of the SI, they should be used in the field of information technology to avoid the non-standard usage of the SI prefixes.”
- The US National Institute of Standards and Technology guidelines require use of IEC prefixes KiB, MiB ... (and not kB, MB) for binary byte multiples[83]
- 2009
- Apple Inc. uses the SI decimal definitions for capacity (e.g., 1 kilobyte = 1000 bytes) in the Mac OS X v10.6 operating system to conform with standards body recommendations and avoid conflict with hard drive manufacturers' specifications.
http://en.wikipedia.org/wiki/Timeline_of_binary_prefixes http://superuser.com/questions/287375/what-is-the-origin-of-k-1024
Saturday, May 21, 2011
Something changed!
Thanks!
chắc mình sẽ sớm nghỉ làm thêm, có quá nhiều thứ muốn học!!!
sung sướng gì việc đi làm mấy thứ vớ vẩn.
lòng tham con người, cái gì cũng muốn...
sao không cho tôi, những gì tôi đáng được hưởng, đâu cần hơn?
Thơ thẩn hơ hơ...
Đi chơi về ngồi vào máy làm thơ ... hơ hơ :))
"yêu em có đôi khi anh dại
chót nhận mình chẳng biết luộc khoai..."
câu 1 sinh ra từ cảm xúc, lúc đầu là thương em, lúc sau đổi thành yêu cho nó sướng :>
câu 2 bịa ra tại em đang xem dạy luộc khoai :))
đi hóng các Hutter chém gió về chả muốn học, lại tóan :-<
Friday, May 20, 2011
Develop a firefox extension
Admit that you have always wanted to know how to develop a Firefox extension but never had the time to learn. Here I will walk you through and at the end of the article we will have created a fully functional Firefox extension!
Our objective
We will create a Firefox extension to find all links in the current web page, highlight those which have atarget
attribute and alert you how many links it found. The good part is that once you have done this, you have both an understanding of Firefox extension development as well as a blueprint for any extension you would want to develop in the future.Những điều không quan trọng
..............~~~~~~~~~~~~~~~................
Những điều không quan trọng
(Bài viết này áp dụng với những thứ liên quan đến đời sống hàng ngày và không liên quan đến việc KIẾM TIỀN!)
Trong cuộc đời này, bạn luôn phải đối mặt với sự lựa chọn. Đôi khi năng lượng bạn dùng để quyết định điều gì đó còn nhiều hơn là bạn dùng để thực hiện nó!
Why so serious?
- Không quan trọng bạn dùng Window(Cracked) hay Linux(Ubuntu) miễn là bạn cảm thấy thoải mái và làm việc hiệu quả nhất với nó.
- Không quan trọng bạn dùng C, Cpp, C#, Java hay Python mà quan trọng là bạn làm được những gì với nó...
- Không quan trọng bạn chơi violin hay guitar, chỉ cần bạn cảm thấy thoải mái, phiêu nhất với nó....
- Không quan trọng bạn học khoa nào, mà quan trọng là bạn đứng chỗ nào trong khoa ấy?
- Không quan trọng bạn dùng Iphone hay Blackberry thậm chí là 1100i, quan trọng là bạn sử dụng nó để làm gì? (thằng dùng Iphone chỉ để nghe gọi đú sao được với thằng dùng 1100i biết đặt cả báo thức :)) )
....
và còn rất nhiều điều không quan trọng nhiều khi khiến bạn bối rối. Hãy nhận ra đâu mới là giá trị thực sự!
Tuesday, May 17, 2011
Gameboy Programming
Wednesday, May 11, 2011
Monday, May 9, 2011
Design pattern
Why is MVC more popular than PAC?
http://programmers.stackexchange.com/questions/74799/why-is-mvc-more-popular-than-pac
MVC Wiki
http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller
PAC Wiki
http://en.wikipedia.org/wiki/Presentation-abstraction-control
Saturday, May 7, 2011
Why Successful People Leave Work Early
According to a study published in the Psychological Review conducted by Dr. K. Anders Ericcson, the key to great success is working harder in short bursts of time. Then give yourself a break before getting back to work.
The trick is staying focused. Ericsson and his team evaluated a group of musicians to find out what the 'excellent' players were doing differently. They found that violinists who practiced more deliberately, say for 4 hours, accomplished more than others who slaved away for 7 hours. The best performers set goals for their practice sessions and required themselves to take breaks.
Looking at the chart, you can see that the best violin students practiced with greater intensity just before the lunch hour and then took a break before starting up again at 4 p.m. -- whereas the other students practiced more steadily throughout the entire day.
The researchers found that successful people in other professions had similar habits:
Timothy Ferriss gives similar advice in his New York Times bestseller, The 4-Hour Workweek. He stresses the Pareto principle, or the 80/20 law, which is that 80 percent of outputs come from 20 percent of inputs. So stay focused, and you'll do more in less time.
For more productivity tips check out 9 Ways to Work Less and Do More >
For the latest career news, visit War Room. Follow us on Twitter and Facebook.
Join the conversation about this story »
See Also:
Saturday, April 30, 2011
Google Reader Keyboard Shortcuts
space/
n/p: scan down/up (list only)
o/enter: expand/collapse (list only)
s: star item
v: view original
t: tag item
m: mark item as read
r: refresh
u: toggle full screen mode
1: switch to expanded view
2: switch to list view
g then h: go home
g then a: go to all items
g then s: go to starred items
g then t: open tag selector
g then u: open subscription selector
Friday, April 29, 2011
If programming languages were religions...
http://www.itu.dk/courses/BPRD/E2010/religion.txt
Monday, December 15, 2008 If programming languages were religions... By amz at 14:52 C would be Judaism - it's old and restrictive, but most of the world is familiar with its laws and respects them. The catch is, you can't convert into it - you're either into it from the start, or you will think that it's insanity. Also, when things go wrong, many people are willing to blame the problems of the world on it. Java would be Fundamentalist Christianity - it's theoretically based on C, but it voids so many of the old laws that it doesn't feel like the original at all. Instead, it adds its own set of rigid rules, which its followers believe to be far superior to the original. Not only are they certain that it's the best language in the world, but they're willing to burn those who disagree at the stake.
Saturday, April 23, 2011
When you wake up in the morning…
Go back to sleep and dream
or
Get up and chase those dreams
Friday, April 15, 2011
Bruce Lee’s Top 20 Tips for Living a Successful Life
When I grew up, Bruce Lee was one of my biggest role models, and he still is.
He accomplished more during ten years than most people do in a lifetime. So I decided to gather Bruce Lee’s most impactful quotes in one place.
The quotes below are what I believe it takes to live a successful life and have success in life. These quotes will inspire, motivate, and encourage to go after your dreams.
With all that said here are Bruce Lee’s top 20 tips for living a successful life.
1. Apply What You Learn
“Knowing is not enough, we must apply. Willing is not enough, we must do.”How many people do you know that read a lot of books and spend a lot of time buying courses, but never apply the knowledge they learn?
You may even notice these tendencies in your life. It’s hard to take action and apply what you learn, because we’re all afraid of failure, and taking action can be paralyzing from time to time.
However, success in life doesn’t happens until you use the knowledge that you have inside of you. Most of us have exactly what we need to get to our goals, but we make excuses not to even get started.
2. Learn, Simplify, and Use
“Absorb what is useful, Discard what is not, Add what is uniquely your own.”It’s all well and good to learn from others, but it’s not until you take action that you discover what works and doesn’t.
When you discover what doesn’t work, you simply discard it and keep going. When you keep moving forward, you will create your own path.
Living a successful life is all about experimenting and trying new things. The more things you try, the closer you will get to true success.
Thursday, April 14, 2011
Farey sequence
http://www.cut-the-knot.org/blue/Farey.shtml
Autocompletetion in the Python console
"
It is handy to be able to tab-complete properties of python objects at the python prompt. Nowadays, I am always using IPython, a significantly enhanced interactive python console which is really worth the installation. (It helps you with completion, indentation, syntax highlighting, macros, input/output caching, session management, improved history, debugger, and tracebacks. And more. ;-) )However, I find it interesting to note that it is possible to have completion in the standard python console (if compiled with readline, which it really should be)! The following code can be used to activate it:
# .pythonrc.py import readline, rlcompleter readline.parse_and_bind("tab: complete")Put this code in a file ~/.pythonrc.py or similar, and use the variable PYTHONSTARTUP to point python to it! (I.e., I put "export PYTHONSTARTUP=$HOME/.pythonrc.py" into my shell environment setup.)
Now, go check out IPython. ;-)
"
http://kogs-www.informatik.uni-hamburg.de/~meine/python_tricks
Saturday, April 9, 2011
Friday, April 8, 2011
[IMG] Beautiful Dance Moves
Beautiful Dance Moves
"The first 20 years of Linux [video]
As someone who is still “relatively” new to Linux compared to many - having jumped aboard the Tux train at Ubuntu 7.10 – it’s all-to-easy for me to remain unaware of the history and legacy upon which the operating system I spend my days writing about builds upon.
That’s why I love following video from the Linux Foundation which distils 20 years of Linux history into 3 short minutes. It melds the interesting and informational, starting at how Linux came to be and arriving at today where the virtual dominance of Linux in computing – both seen and unseen – is utterly impressive in light of its humble beginnings from a bedroom in Helsinki, Finland.
Gushing aside, brew a coffee, grab a (preferably chocolate) biscuit and prepare to want to punch the air…
Tính căn bậc 2 và số e
2 = 1 + | 1 | |||
2 + | 1 | |||
2 + | 1 | |||
2 + | 1 | |||
2 + ... |
tương tự sqrt(23) = [4;(1,3,1,8)]
Đặc biệt hơn, số e = [2; 1,2,1, 1,4,1, 1,6,1 , ... , 1,2k,1, ...]
hay
Research when try to slove PE65