Thứ Ba, 17 tháng 4, 2012

Phía sau "Lá trầu" là.. lá chuối

Bảo tàng dân tộc học, sáng thứ bảy cuối cùng của tháng 3. MC đứng trước cổng khu nhà của người Kinh, tay cầm micro, giọng nồng nhiệt: “Mời nhà thơ Tạ Vũ vào…”; “A, xin chào nhà văn Trung Trung Đỉnh. Anh không nên đứng đó, hãy vào đây ngồi. Hôm nay trông anh rất… bảnh chọe”.

Không khí buổi trao giải thưởng thơ nữ mang tên “Lá trầu” đã chính thức bắt đầu, rất tự nhiên và hóm hỉnh, dù không cần “miếng trầu là đầu câu chuyện” vì phần đông là các bạn trẻ đến từ mấy trường Đại học ở Hà Nội, và TP. HCM. Sau 383 ngày kể từ khi Quỹ Lời vàng Eva ra mắt với dự án tổ chức giải thưởng “Lá trầu” dành cho các nhà thơ nữ Việt Nam, ban thẩm định gồm những nhà thơ có nam có nữ, có trẻ có già như: Giáng Vân, Nguyễn Quang Thiều, Ý Nhi, Trúc Thông, Đỗ Doãn Phương… đã bỏ phiếu để chọn ra tác phẩm xứng đáng nhất. “Giải thưởng đã thành công ngoài mong đợi” – trưởng ban thẩm định, nhà thơ Giáng Vân - người duy nhất trong ban thẩm định có mặt tại lễ trao giải, nhận xét. Nhưng theo chị, thực ra với 6 tập thơ được ra mắt năm 2007, chưa có tập thơ nào thực sự xuất sắc, khiến người ta phải trầm trồ thán phục. Nhưng ban thẩn định đã mạnh dạn trao giải cho tập thơ “Bay lặng im” của tác giả trẻ Trang Thanh, vì đây là tác phẩm có số phiều bầu cao nhất: 4/7 phiếu.

Cuối cùng thì “Lá trầu” cũng đã/ phải có Eva. Thỏa đáng và chính xác hay chưa cũng chẳng cần rạch ròi mà làm gì. Bởi dẫu sao, đây cũng là một giải thưởng thơ do một công ty Nam dược tài trợ, mang tính khích lệ hồn thơ phái nữ. Tui ngồi phía dưới cứ xuýt xoa về trị giá tiền thưởng 25 triệu đồng, xuýt xoa cái nữa cho những chiếc đèn lồng do cha con nghệ sĩ Hữu Thanh thiết kế kỳ công mà không có bóng tối để tỏa sáng; cái xuýt xoa thứ 3 là giá như không có 3 tàu lá chuối được cắm điệu đàng trong chiếc bình gốm phía trên sân khấu, thì có lẽ không gian thơ mùa xuân của giải thưởng thơ “Lá trầu” sẽ ý nghĩa và thi vị hơn rất nhiều.(xem ảnh của H.H.S).


Comments:
Unregistered user Friday, July 18, 2008 10:18:56 AM
Anonymous writes: Khoan không nhắc đến Lá trầu và cách thức tổ chức của nó, nhưng tôi thấy bạn viết thế chứng tỏ bạn chả hiểu cái gì về thơ ca cả (kể cả về cội nguồn, thế mà blog dám chình ình "slogan" "Quê. Phố. Thị" àh ^...^, khà khà!). Thi ca VN nhắc rất nhiều đến mùa xuân với biểu tượng cây chuối, lá chuối - đặc trưng của làng quê, nông thôn Việt Nam. Giá trị giải thưởng là "hòn đá thử vàng" của nền văn học, nên dù nó có 500 ngàn hay 25 triệu cũng như nhau, cái chính là hiệu quả tác động, khích lệ đến tác giả như thế nào...?! Ngôn ngữ của 8x, 9x và 0x bi giờ thì là: "Biết thì giơ tay, không biết thì giơ chân", còn ngôn ngữ của phim Tàu khựa, tác phẩm Bao Thanh Thiên ý, có cái câu trong bài hát phần cuối khá hay nhé: "Xưa nay chỉ có thể nói biết nhiều, biết ít, làm sao biết cho đủ!" ^...^
 
(http://my.opera.com/nguyenthanhbynh/blog/show.dml/1871151)

Đọc bài thấy có lý, đọc tới comment cũng thấy có lý!

"Cây cơm nguội" không còn "vàng" (Phần... cuối)

Sáng cuối tuần, tôi thường có thói quen ghé vào sạp báo, chọn mua mấy tờ báo tuần quen thuộc. Trước đây thì ngày nào cũng mua báo. Nhưng gần đây, tin tức trong ngày thì báo mạng nhanh, tiện, sạch hơn, lại không... mất tiền, nên thôi đi một thói quen có “hại” cho ví tiền có lẽ bạn cũng nên... ủng hộ tôi. Số báo cuối tuần thường in đẹp, bài vở không nhiều thông tin, có cái để đọc trong mấy ngày cuối tuần - bạn có nghĩ như tôi k?

Trong những tờ báo cuối tuần tôi hay mua có DNSG. Tuần này, tờ báo có một bài viết về Hà Nội, nhân kỷ niệm ngày giải phóng Thủ đô, nhân... mùa thu Hà Nội.

Ừ. Hà Nội mùa thu thường là thời điểm đẹp nhất. Ai cũng nói thế. Ai cũng tin thế. Ai cũng tưởng tượng thế. Sự khiến người ta hay tưởng tượng này có lẽ tại/bởi mấy ông/bà... văn nghệ sĩ. Chả biết sao, nhưng thường cứ nói về mùa thu là “hoa sữa đường Nguyễn Du”, là “Sáng chớm lạnh trong lòng Hà Nội/ Những phố dài xao xác hơi may/ Người ra đi đầu không ngoảnh lại/ Sau lưng thềm nắng lá rơi đầy…”. Nói mãi đâm thành quen thuộc, thành ấn tượng, thành ra reo rắc một… đức tin. Thành thử, nhiều người, xa Hà Nội thì đã đành nhớ thế, tin thế (một cách rất đáng yêu); chứ còn ngày nào cũng sống ngập tràn 24h không thiếu 1 giây ở Hà Nội như tôi, thì quả tình, tự nhủ lòng mình dù khó cũng nên tìm ra nét khác mà yêu, mà thích mùa thu Hà Nội. Và bạn biết đấy, khi tôi viết “Cây cơm nguội không còn vàng”, thì cũng có nghĩa là tôi đang cố yêu Hà Nội, hoặc cố tìm cách để yêu lại Hà Nội, theo một cách khác. Chứ một khi ai đó đã sống và làm việc ở Hà Nội mà còn hồn nhiên “ghi chép” về mùa thu Hà Nội với những dòng chữ đơn giản, những địa danh đến cũ mòn, không có dù chỉ một kỷ niệm riêng của tác giả và đính kèm những bức ảnh với góc nhìn không điển hình về thu Hà Nội (nhưng chú thích thì rất… xôn xao), tôi cứ thấy… thế nào ấy.

Nhưng mà thôi. Đành lòng vậy, cầm lòng vậy. Vì dẫu sao tờ báo trình bày cực đẹp này cũng đã ra rạp. Và tôi thì không nên kéo dài cái “ấm ức” trong entry này, vì sáng nay, Hà Nội lại mưa rập rình, gió heo may không còn se sẽ như chiều qua, nếu chọn một góc phố quen thuộc có quán nhỏ nhìn ra Hồ Gươm, uống một ly café thì cũng… đáng.
Uh, cũng phải “trả thù” ai đó chiều qua không cho tôi đi uống café tí cho bõ nhỉ? (N.T.B)

Nhưng trước khi đi, tôi muốn bạn cùng xem bức ảnh này.




Nếu tôi bảo mùa thu lá vàng là “biểu tượng”của Hà Nội bạn có tin không? Đừng tin. Tôi khuyên thật lòng đấy. Vì bức ảnh này tôi chụp vào một ngày mưa đầu… mùa hạ. Khoảng tháng tư là thời điểm những hàng sấu ven phố Trần Hưng Đạo, Phan Đình Phùng thay lá. Còn mùa này, những hàng cây Hà Nội rất xanh!.



(http://my.opera.com/nguyenthanhbynh/blog/show.dml/1386523)

Thứ Tư, 4 tháng 4, 2012

Browser detect

Copy this script into your JavaScript files. It works immediately, and you can query three properties of the BrowserDetect object:
  • Browser name: BrowserDetect.browser
  • Browser version: BrowserDetect.version
  • OS name: BrowserDetect.OS

var BrowserDetect = {
 init: function () {
  this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
  this.version = this.searchVersion(navigator.userAgent)
   || this.searchVersion(navigator.appVersion)
   || "an unknown version";
  this.OS = this.searchString(this.dataOS) || "an unknown OS";
 },
 searchString: function (data) {
  for (var i=0;i
   var dataString = data[i].string;
   var dataProp = data[i].prop;
   this.versionSearchString = data[i].versionSearch || data[i].identity;
   if (dataString) {
    if (dataString.indexOf(data[i].subString) != -1)
     return data[i].identity;
   }
   else if (dataProp)
    return data[i].identity;
  }
 },
 searchVersion: function (dataString) {
  var index = dataString.indexOf(this.versionSearchString);
  if (index == -1) return;
  return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
 },
 dataBrowser: [
  {
   string: navigator.userAgent,
   subString: "Chrome",
   identity: "Chrome"
  },
  {  string: navigator.userAgent,
   subString: "OmniWeb",
   versionSearch: "OmniWeb/",
   identity: "OmniWeb"
  },
  {
   string: navigator.vendor,
   subString: "Apple",
   identity: "Safari",
   versionSearch: "Version"
  },
  {
   prop: window.opera,
   identity: "Opera",
   versionSearch: "Version"
  },
  {
   string: navigator.vendor,
   subString: "iCab",
   identity: "iCab"
  },
  {
   string: navigator.vendor,
   subString: "KDE",
   identity: "Konqueror"
  },
  {
   string: navigator.userAgent,
   subString: "Firefox",
   identity: "Firefox"
  },
  {
   string: navigator.vendor,
   subString: "Camino",
   identity: "Camino"
  },
  {  // for newer Netscapes (6+)
   string: navigator.userAgent,
   subString: "Netscape",
   identity: "Netscape"
  },
  {
   string: navigator.userAgent,
   subString: "MSIE",
   identity: "Explorer",
   versionSearch: "MSIE"
  },
  {
   string: navigator.userAgent,
   subString: "Gecko",
   identity: "Mozilla",
   versionSearch: "rv"
  },
  {   // for older Netscapes (4-)
   string: navigator.userAgent,
   subString: "Mozilla",
   identity: "Netscape",
   versionSearch: "Mozilla"
  }
 ],
 dataOS : [
  {
   string: navigator.platform,
   subString: "Win",
   identity: "Windows"
  },
  {
   string: navigator.platform,
   subString: "Mac",
   identity: "Mac"
  },
  {
      string: navigator.userAgent,
      subString: "iPhone",
      identity: "iPhone/iPod"
     },
  {
   string: navigator.platform,
   subString: "Linux",
   identity: "Linux"
  }
 ]

};
BrowserDetect.init();
 
(http://www.quirksmode.org/js/detect.html) 

Thứ Ba, 3 tháng 4, 2012

WITH (NOLOCK) table hint equivalent for MySQL

I don’t remember how many times I was asked about an equivalent term of the infamous “NOLOCK” hint for mysql database server, hence I thought it was worth to write about it here. “WITH (NOLOCK)” is a transaction isolation levels that defines how data is available during an update, or with other words it is a property that defines at what point changes made by an update operation will become available in a row, table or database to other processes.
The official SQL standard defines four isolation levels:
READ COMMITTED
READ UNCOMMITTED
REPEATABLE READ
SERIALIZABLE
Oracle, SQL Server and MySQL support isolation levels. During an operation, the database engine places certain locks to maintain data integrity. Different types of locking apply to different databases (Oracle vs. MySQL), or table types (eg. MyISAM vs. InnoDB).
When WITH (NOLOCK) is used with SQL Server, the statement does not place a lock nor honor exclusive locks on table. The MySQL equivalent is READ UNCOMMITTED, also known as “dirty read” because it is the lowest level of isolation. If we specify a table hint then it will override the current default isolation level. MySQL default isolation level is REPEATABLE READ which means locks will be placed for each operation, but multiple connections can read data concurrently.
SQL Server WITH (NOLOCK) looks like this:
SELECT * FROM TABLE WITH (nolock)
To achieve the same with MySQL, we change the session isolation mode using the SET SESSION command.
SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED ;
SELECT * FROM TABLE_NAME ;
SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ ;

This statement will work similar to WITH (NOLOCK) i.e READ UNCOMMITTED data. We can also set the isolation level for all connections globally:
SET GLOBAL TRANSACTION ISOLATION LEVEL READ UNCOMMITTED ;
In addition, two system variables related to isolation also level exist in MySQL server:
SELECT @@global.tx_isolation; (global isolation level)
SELECT @@tx_isolation; (session isolation level)
Or set the isolation level inside a transaction:
SET TRANSACTION ISOLATION LEVEL REPEATABLE READ
GO


(http://www.itecsoftware.com/with-nolock-table-hint-equivalent-for-mysql)