turtle graphics

ái này, ai chuyên về Computer Graphics sẽ biết gọi là: Đồ hoạ con rùa (turtle graphics), tập API chỉ có 2 lệnh căn bản: moveBy và rotateBy, ví dụ: tiến 3 bước, xoay 45°, lại tiến 5 bước, xoay tiếp 90°, etc… hệ toạ độ hoàn toàn tương đối. 🙂 Đây là kiểu API tự nhiên, phù hợp để vẽ Hình học Fractal.

Một thời, đám lưu manh cũng kiểu “ta đây biết rồi, chuyên đi đọc vị người khác”, đọc thấy trên blog tkxuyen.com được đúng 1 chữ Computer Graphics nên cũng bô lô bô la: ah, em cũng đồ hoạ máy tính nè, em xài Photoshop, Illustrator… Nhiều kiểu ngu đến mức không tự hiểu ra được ngu chỗ nào!

panorama

ồi đó, không nhớ là năm nào, xài cái iPhone 4S (dạng cũng rất hiện đại lúc đó) chụp ảnh panorama, thấy chất lượng tệ, không bằng lòng nên đi mua cái Sony NEX5R, chiếc máy ảnh không gương lật đầu tiên, chụp panorama khá tốt. Hôm nay thử dùng chỉ 1 cái iPhone 7 cũ rích chụp pano thử xem, cho ra 1 cái ảnh 15000 x 4000 pixel (chờ ảnh load hơi lâu), má ơi, đúng là mình lạc hậu về công nghệ thật rồi! Haiza, đúng là thời thế, công nghệ đi quá nhanh, đẹp hơn hẳn máy ảnh chuyên nghiệp ngày xưa…

P/S: làm nghề lập trình, nói có vẻ ngược đời, nhưng từ xưa giờ vẫn quan niệm rằng: tôi chẳng cần phải biết cái éo gì về công nghệ (technologies) cả! Tôi chỉ biết về kỹ thuật (techniques) thôi! Vâng, nói rõ ràng như vậy! Tôi chỉ biết những mánh mẹo, kỹ xảo lập trình xa xưa, những thủ pháp cấu trúc dữ liệu, tối ưu hoá li ti, thời của “programming pearls” – những viên ngọc lập trình ấy! Coder giờ toàn ở “trên trời”, công nghệ này kia, AI, Machine learning, Big data, nói như vẹt, chỉ có điều mấy cái “rất căn bản” lại không biết! 😢

Ảnh lớn, cuộn theo phương ngang để xem.

coastline paradox

enoit Mandelbrot xuất bản 1 bài báo trên tạp chí Science năm 1967, nhan đề: Đường bờ biển của nước Anh dài bao nhiêu? Giả sử ta dùng một cây thước dài 1 km để đo đường bờ biển, cộng lại với nhau thì được chiều dài ‘x’ km. Nhưng nếu dùng 1 cây thước khác, có chiều dài ví dụ như 100 m để đo thì lại được 1 chiều dài khác lớn hơn, ‘y’ km. Đơn giản vì cây thước 1km là 1 xấp xỉ rất “thô”, ở giữa khoảng cách 1km đó, đường bờ biển không phải là 1 đoạn thẳng. Dễ dàng nhận thấy rằng, nếu dùng cây thước càng ngắn, thì chiều dài đo được càng tăng, và nếu chiều dài cây thước tiến dần về 0 thì chiều dài đường bờ biển tiến dần về vô hạn.

Đó gọi là “nghịch lý đường bờ biển – coastline paradox”, và cũng từ đó (1967) chính thức xuất hiện 1 nhánh toán học mới, gọi là hình học fractal, nghiên cứu 1 loại đối tượng đặc biệt, ví dụ như ở đây là bản đồ nước Anh, một đối tượng hình học có diện tích hữu hạn, nhưng chu vi… vô hạn! Đây là chủ đề yêu thích của tôi những năm cấp 3 và ĐH, vì nó liên quan trực tiếp tới đồ hoạ máy tính (computer graphics). Gọi là “Nghịch lý” vì nó đi ngược với “trực quan” của chúng ta, qua đó nói lên rằng, những gì ta suy nghĩ bằng ngôn từ, đôi khi chỉ là 1 sự lừa dối, sự lừa dối khó nhận ra vì suốt bao nhiêu năm, cách suy nghĩ của chúng ta bị đóng trong 1 cái khuôn máy móc!

Riêng về đường bờ biển Việt Nam, nếu đo bằng phương pháp Việt Nam thì nó có chiều dài khoảng 2400 km, nếu đo bằng cách của Mỹ thì nó lại dài khoảng 3400 km, còn nếu đo bằng “toán học” thì nó dài… vô hạn! Có điều gì rất “Phật giáo” trong phép đo này, chiều dài của một đối tượng hình học không phải là một hằng số, không phụ thuộc vào “các định luật vật lý hiển nhiên”, mà ngược lại, chiều dài đó lại phụ thuộc vào cách chúng ta đo nó! Nói nôm na, phiên phiến là… “tâm” nó tới đâu thì “tầm” (chiều dài đối tượng) nó tới đó. Chiều dài của một “đối tượng hình học Euclide” đơn giản đôi khi nằm ngoài “nhận thức thông thường” của con người! 😀

algorithms

ột phần quan trọng của 4 năm ĐH nằm trong cuốn này. Sách ngoại văn bìa cứng (hard cover), giấy tốt, đồng giá 50K/cuốn. Những năm 199x, FAHASA nhập sách ngoại về, bán chẳng ai mua, canh me đi qua lúc nó sale off, xúc luôn 1 lúc 20 cuốn, từ Algorithms, Data structure, Database… Algebra cho đến Mathematical Analysis, etc… Cũng là lý do tại sao thuật ngữ Toán, Tin… ko hề biết tiếng Việt. Cũng chưa thấy cuốn sách Tin học nào hay và bổ ích như cuốn này.

Nói cho đúng là cái cách hành văn khoa học tiếng Anh của nó ám ảnh mình, ít khi thấy được một cách hành văn hay, súc tích, dể hiểu đến như thế, cộng thêm minh hoạ cực kỳ xinh đẹp. Nếu nói mức độ hiểu 1 vấn đề nó thể hiện qua cái khả năng diễn đạt, trình bày lại để cho người khác cũng hiểu vấn đề đó thì tác giả cuốn này đúng là siêu đẳng !!! Về sau phát hiện ra, cả thư viện ĐH KHTN có đúng 1 cuốn này, mình có riêng 1 cuốn! Không có thói quen đọc nhiều sách, theo mình, cả ĐH chỉ cần đọc chừng 3, 4 cuốn, và cả cuộc đời chắc không cần đến 20 cuốn. Đọc nhiều quá phí hoài… tuổi xanh đi!

Dự định sau này mình sẽ đóng 1 cái kệ sách cao đến sát trần nhà, lý do là bỏ bớt những cuốn không đọc lên trên cao để không phải đụng đến chúng :D Sách thực sự hay ít như sao buổi sớm, mà sách lôm côm nhiều như… lá rụng mùa thu! Sau bác nào đó thấy sách ngon, mượn ko trả, tiếc đứt ruột! 😥

lés travailleurs de la mer

Nơi nghĩa trang chật hẹp, tiếng vọng âm vang,
Chẳng một nhánh liễu xanh mùa thu trút lá,
Không một khúc hát ngây thơ buồn bã,
Góc cầu xưa người hành khất thường ca.

ritten with a Pencil stylus on an iPad using our own home – brew inking technology. Excerpt from the famous novel Lés travailleurs de la mer (Toilers of the Sea), Victor Hugo, and my literal, clumsy English translation: Navigation, it is education, sea is the brave school… The voyageur Ulysse had done lots more deeds then the Achille combatant. The sea quenches man, if soldiers are made of iron, then the mariners must have been made of steel. Look at them, in the ports, those tranquil martyrs, the silent winners, man figures with a religious look in their eyes as they’ve come out of the abyss…

the man of wisdom delights in water…

text=仁者乐山&font=1&size=18&color=0000FF
text=智者乐水&font=1&size=18&color=0000FF

ritten with a Bamboo stylus on iPad, using my inking mentioned earlier! A quote from Confucius’ Analects, and its partial, literal equivalence in English on this post’s title… Looks like there’s still lots of space for improvements on creating real, good — looking strokes (for Chinese round brush and other kinds of brushes). Really discontent with my Chinese handwriting ever since, it’s never been good enough for me, it’s been degrading greatly over time without practicing! My handwriting reflects my messy, chronically — undisciplined character! 😢

inking

y proudly – announced achievement for the last 6 working months, now is a registering (pending) patent in the U.S. It’s about create inking effect to handwriting on iPad (ideally with a stylus): you can apply many pen styles: ball pen, fountain pen, calligraphy pen, Chinese round brush, and different levels of ink wetness. You may have seen my handwriting in severalpreviousposts, but this is completely different, a big step forward, much more a realistic look like ink on paper. You need to see it in action to witness how interesting the “beautification effect” it is!

Different pen styles:

Different ink wetness:

Another writing example, a poem in both Vietnamese and Chinese:

And now, a real world application, my new year greeting card, hand – written on iPad, printed on paper, with my signature and personal seal on it. Old vintage things are not to be perished, they just come back in new neoclassical forms, to have “inflated”, “degraded” contemporary values reprimanded! 😀

styli

was playing around with some iPad’s styli lately and here they’re: the Wacom Bamboo stylus, TruGlide, Adonit Jot, Adonit Jot Touch, Jaja, Cregle’s iPen and ByZero. I’ve been loving the smoothness of Bamboo, but TruGlide is really an excellent one! The new Adonit Jot Touch seems to be promissing, and on the second position is Jaja (for pressure sensitive styli).

wwdc 2012

t would start within a week from now, the well – expected event of Apple’s world – wide developers conference of 2012 – WWDC 2012. To welcome the tech fair 😛😛, on the left is a screen capture of what I’ve been working hard on for the whole last month (the video is not really clear since it’s shot with my phone), a photo browser UI like iPad’s Photos app. It takes time to learn insights into Core Graphics, Core Animation, and I’m still learning. For all those years of graphics I’ve been through, Apple UI and its graphics sysem are still sooo… brilliant and amazing to me! (and “our love has just begun”!) Keep heading North!