Search

4/30/2012

Emoji cheat sheet

Emoji cheat sheet

Emoji emoticons are supported on Campfire, GitHub, Basecamp Next and Turntable.fm. However some of the emoji codes are not super easy to remember, so here is a little cheat sheet.

4/24/2012

ssh keep alive


Host *
ForwardAgent yes
ServerAliveInterval 60

4/22/2012

The Top of My Todo List

The Top of My Todo List

Don't ignore your dreams; don't work too much; say what you think; cultivate friendships; be happy.

4/18/2012

Coding Horror: Learn to Read the Source, Luke

Coding Horror: Learn to Read the Source, Luke

I started working with Microsoft platforms professionally at age 15 or so. I worked for Microsoft as a software developer doing integration work on Visual Studio. More than ten years after I first wrote a line of Visual Basic, I wish I could never link against a closed library ever again.
Using software is different than building software. When you're using most software for its primary function, it's a well worn path. Others have encountered the problems and enough people have spoken up to prompt the core contributors to correct the issue. But when you're building software, you're doing something new. And there are so many ways to do it, you'll encounter unused bits, rusty corners, and unfinished experimental code paths. You'll encounter edge cases that have been known to be broken, but were worked around.
Sometimes, the documentation isn't complete. Sometimes, it's wrong. The source code never lies. For an experienced developer, reading the source can often be faster… especially if you're already familiar with the package's architecture. I'm in a medium-sized co-working space with several startups. A lot of the other CTOs and engineers come to our team for guidance and advice on occasion. When people report a problem with their stack, the first question I ask them is: "Well, did you read the source code?"
I encourage developers to git clone anything and everything they depend on. Initially, they are all afraid. "That project is too big, I'll never find it!" or "I'm not smart enough to understand it" or "That code is so ugly! I can't stand to look at it". But you don't have to search the whole thing, you just need to follow the trail. And if you can't understand the platform below you, how can you understand your own software? And most of the time, what inexperienced developers consider beautiful is superficial, and what they consider ugly, is battle-hardened production-ready code from master hackers. Now, a year or two later, I've had a couple of developers come up to me and thank me for forcing them to sink or swim in other people's code bases. They are better at their craft and they wonder how they ever got anything done without the source code in the past.
When you run a business, if your software has a bug, your customers don't care if it is your fault or Linus' or some random Rails developer's. They care that your software is bugged. Everyone's software becomes my software because all of their bugs are my bugs. When something goes wrong, you need to seek out what is broken, and you need to fix it. You fix it at the right spot in the stack to minimize risks, maintenance costs, and turnaround time. Sometimes, a quick workaround is best. Other times, you'll need to recompile your compiler. Often, you can ask someone else to fix it upstream, but just as often, you'll need to fix it yourself.
  • Closed-software shops have two choices: beg for generosity, or work around it.
  • Open source shops with weaker developers tend to act the same as closed-software shops.
  • Older shops tend to slowly build the muscles required to maintain their own forks and patches and whatnot.
True hackers have come to terms with a simple fact: If it runs on my machine, it's my software. I'm responsible for it. I must understand it. Building from source is the rule and not an exception. I must control my environment and I must control my dependencies.

2012 全台 賞螢 活動及地點大蒐集 | DIGIPHOTO-用鏡頭享受生命

2012 全台 賞螢 活動及地點大蒐集 | DIGIPHOTO-用鏡頭享受生命


北部

基隆市

  • 基隆海洋大學後方的龍崗步道

台北市

  • 台北市虎山親山步道(N25° 1' 52.08",E121° 35' 2.32")
  • 台北市象山公園
  • 台北市陽明山:天溪園、竹子湖、大屯自然公園、千蝶谷生態農場
  • 台北市大安區六張梨富陽自然生態公園(N25° 1' 3.78",E121° 33' 30.01")
  • 台北市四獸山步道(N25° 2' 17.56",E121° 35' 5.72")
  • 台北市銀河洞(N24° 57' 33.17",E121° 34' 58.14")
  • 台北市士林千蝶谷昆蟲生態農場(Tel:0928-627-121)(N25° 7' 30.57",E121° 35' 13.44")

新北市

  • 坪林映象會館(Tel:02-2665-7674)
  • 坪林氧森谷(N24° 55’27.7”,E121° 41’29.0”)
  • 坪林北勢溪、坪林生態園區、九芎根親水公園
  • 石碇─原碇田園咖啡餐廳(餐廳外果園、路旁)
  • 石碇的二格山
  • 平溪地區
  • 平溪台灣煤礦博物館(Tel:02-2495-8606)
  • 平溪藍鵲谷農莊(Tel:02-2495-2818、02-2495-2660)
  • 平溪菁桐車站、平溪國小
  • 平湖森林遊樂區,省道2丙11公里處左轉
  • 石門鄉阿里磅生態農場(Tel:02-2638-2745)
  • 雲仙樂園烏來生態農場(N24° 51' 41.19",E121° 32' 24.73")
  • 烏來西雅圖的天空(Tel:02-2661-6679)
  • 烏來內洞森林遊樂區(N24° 49' 47.07",E121° 31' 42.09")
  • 土城承天賞桐賞螢步道、桐花公園、承天禪寺
  • 土城青雲路(N24° 57' 55.09",E121° 28' 33.14")
  • 汐止汐碇路3公里處
  • 汐止翠湖
  • 三芝乾淨的梯田
  • 三峽鳶山生態步道
  • 三峽皇后鎮森林園區(Tel:02-2668-2591)
  • 三峽珍園螢火蟲花園(Tel:02-2672 6838)(N24° 55' 54.27",E121° 28' 8.12")
  • 三峽滿月圓國家森林遊樂區(N24° 50' 6.14",E121° 26' 44.84")
  • 三峽有木國小(N24° 51' 14.27",E121° 26' 13.02")
  • 三峽鳶尾山
  • 三峽建安國小(Tel:02-2672-6783)
  • 新店碧潭屈尺岐山嚴
  • 新店文山農場園區(Tel:02-2666-7512)
  • 新店安坑牛伯伯蝴蝶生態園區
  • 新店和美山步道、和美山,又稱碧潭山
  • 新店直潭國小
  • 深坑黃阿舍生態體驗農園(N24° 59' 48.00",E121° 36' 43.86")

桃、竹、苗

桃園縣

  • 桃園龜山小精靈螢火蟲館
  • 桃園復興桃源仙谷
  • 桃園大溪富田花園農場,近慈湖(N24° 50' 43.99",E121° 17' 19.16")
  • 桃園復興東眼山森林遊樂區(Tel:03-382-1506)(N24° 50' 4.45",E121° 24' 25.18")

新竹縣

  • 新竹內灣賞螢民宿
  • 東窩溪螢火蟲生態區、騎龍古道、可多摩農莊間
  • 新竹橫山鄉內灣東窩野溪
  • 新竹大山背
  • 新竹觀霧地區
  • 新竹竹東景園山莊,民宿周遭道路(Tel:03-580-4951)(N24° 38’ 51.5” E121° 5’ 59.5”)
  • 芎林濕地農場
  • 五峰觀霧森林遊樂區(N24° 30' 50.46",E121° 7' 0.17")
  • 五峰山銀絲瀑布(N24° 38' 22.30",E 121° 7' 53.94")
  • 關西關西農場(Tel:035-868-306)(N24° 47' 57.41",E121° 8' 26.07")
  • 峨眉十二寮雲雀山庄(Tel:037-601-136)(N24° 40' 20.81",E120° 59' 16.68")

苗栗縣

  • 南庄星宿民宿(Tel:0932-614-242、037-821-626)
  • 卓蘭岩川民宿
  • 庄春谷休閒農場
  • 南庄山芙蓉咖啡民宿
  • 三義喆娟夢田
  • 三義卓也小屋(Tel:037-879-198)(N24° 23' 28",E120° 47' 43")
  • 泰安鄉司馬限部落
  • 勝興車站(N24° 23' 19.15",E120° 46' 54.80")
  • 錫益古道
  • 山板樵休閒農場
  • 雪見遊憩區大窩地區
  • 獅潭永興村(N24° 33' 28.01",E120° 56' 5.88")
  • 通霄飛螢農場(N24° 24' 39.06",E120° 44' 36.02")

中部

南投縣

  • 鹿谷內湖村的「三生緣區」
  • 鹿谷麒麟潭賞螢步道
  • 鹿谷鳳凰谷山區(N23° 43' 50.13",E120° 47' 23.85")
  • 鹿谷小半天
  • 仁愛奧萬大森林遊樂區(Tel:04-9297-4511)(N23° 58' 47.36",E121° 10' 58.71")
  • 仁愛惠蓀林場(Tel:049-294-2268)
  • 鹿谷溪頭森林遊樂區(Tel:049-261-2111)(N23° 40' 21.40",E120° 47' 52.27")
  • 國姓、惠蓀林場賞螢
  • 日月潭星光螢季
  • 埔里鎮桃米生態村草湳濕地(Tel:049-291-0938)(N23° 57' 1.76",E120° 55' 47.81")
  • 魚池鄉蓮花池森林區螢火蟲棲地(N23° 55' 37.32",E120° 53' 24.44")
  • 中寮下水堀生態農場(Tel:049-2601-747、049-2602-747)(N23° 54' 47.33",E120° 46' 48.93")

台中市

  • 和平區大雪山林道及大雪山社區
  • 東勢東勢林場(N24° 17' 10.48",E120° 52' 3.33")
  • 東勢軟埤坑休閒農業區,往谷關方向台8線8公里處
  • 東勢四角林林場(N24° 17' 51.60",E120° 53' 12.08")
  • 和平八仙山森林遊樂區(Tel:04-2595-1214)(N24° 11' 35.20",E120° 54' 2.13")
  • 和平武陵農場
  • 新社區中和里、福興里、東興村
  • 新社東籬居
  • 公老坪流星花園
  • 太平翠谷休閒農場(Tel:04-2278-6934)(N24° 6'35.2",E120° 48'18.3")
  • 北屯大坑風景區中正露營區(N24° 11' 50.98",E120° 45' 5.11")

彰化縣

  • 八卦山
  • 西螺果菜市場(台灣窗螢)

南部

雲林縣

  • 古坑華山民宿
  • 古坑荷苞村山峰社區,賞螢兼賞桐
  • 古坑石壁風景區(N23° 36' 37.43",E120° 42' 31.85")
  • 古坑草嶺風景區(N23° 35' 16.45",E120° 41' 49.83")
  • 山峰螢火蟲季,山峰國小旁螢火蟲步道

嘉義縣

  • 阿里山鄉里佳村里佳親水步道
  • 阿里山光華賞螢步道,頂笨仔的福華步道與牛山產業道路
  • 阿里山森林遊樂區
  • 梅山圓潭生態風景區
  • 梅山鄉瑞里若蘭山莊(Tel:05-250-1210)(N23° 32' 22.55",E120° 40' 46.79")
  • 瑞里國小、三華民宿
  • 跳跳休閒農場
  • 嘉義奮起湖火車站往土地公廟沿線
  • 光華村驛馬溪休閒農場
  • 嘉義豐山村落至觀景台沿線
  • 太和花石溪生態保護區
  • 娜巴阿生態步道

台南市

  • 楠西梅嶺
  • 楠西曾文青年活動中心
  • 楠西曾文水庫山區(以山窗螢為主)
  • 楠西曾文水庫大壩出水口(N23° 15' 18.24",E120° 32' 18.19")
  • 新化虎頭埤
  • 玉井走馬瀨農場(N23° 8' 32.11",E 120° 23' 54.54")
  • 官田烏山頭水庫山區(N23° 11' 12.34",E 120° 22' 40.69")
  • 柏奕休閒農園
  • 白河崎內螢火蟲復育區
  • 關子嶺山區與東山仙公廟山區(黑翅螢為主)
  • 烏山頭水庫山區(水生螢為主)
  • 新化林場(台灣窗螢為主)
  • 新化林場(台灣窗螢為主)
  • 中華東路巴克禮公園
  • 南化關山

高雄市

  • 桃源藤枝森林遊樂區(Tel:07-689-1002)(N23° 4' 33.39",E 120° 45' 15.00")
  • 原生植物園
  • 那馬夏民權村馬雅部落拉比尼亞山
  • 舊民權部落
  • 民族平台
  • 美濃黃蝶翠谷(N22° 56' 8.55",E 120° 35' 43.36")

屏東縣

  • 恆春生態休閒農場(N21° 59' 37.78",E 120° 45' 35.70")
  • 墾丁社頂公園(N21° 57' 52.92",E120° 49' 4.89")
  • 屏東科技大學的後山
  • 九如玉泉村
  • 新埤鄉怡然居螢火蟲生態休閒農場(N22° 28' 33.88",E120° 32' 44.53")
  • 牡丹水庫一帶
  • 滿州南仁山生態保護區(N22° 5' 43.81",E 120° 51' 49.27")
  • 獅子雙流森林遊樂區(Tel:08-870-1394)(N22° 13' 16.53",E 120° 47' 45.78")

東部、離島

宜蘭縣

  • 三星鄉天山農場
  • 頭城鎮頭城休閒農場(N24° 54' 57.67",E 121° 50' 57.71")
  • 頭城藏酒酒莊休閒農場(Tel:03-977-8555)(N24° 56' 41.91",E 121° 51' 12.55")
  • 頭城鎮北關休閒農場
  • 冬山鄉三富花園農場
  • 冬山鄉香格里拉休閒農場
  • 員山鄉八甲休閒魚場
  • 太平山森林遊樂區(N24° 31' 15.20",E 121° 31' 40.85")
  • 大同明池森林遊樂區(Tel:03-989-4106)(N24° 39' 6.11",E 121° 28' 23.10”)
  • 大同棲蘭森林遊樂區(Tel:03-980-9606)(N24° 34' 54.98",E121° 29' 35.71")
  • 花蓮鯉魚潭環潭步道(N23° 56' 10.08",E 121° 30' 30.25")

花蓮縣

  • 富源森林遊樂區富源蝴蝶谷(N 23° 35' 34.57",E 121° 21' 15.46")
  • 池南國家森林遊樂區
  • 林田山林業文化園區
  • 理想大地
  • 白鮑溪
  • 佐倉步道
  • 七星潭四八高地
  • 玉山國家公園瓦拉米步道
  • 馬太鞍溼地
  • 秀林神秘谷步道(N 24° 09' 44.6",E121° 36' 52.9")
  • 美崙山區(N23° 59' 37.33",E 121° 36' 50.62")
  • 太麻里金針山青山農場
  • 關山親山農園民宿

台東縣

  • 關山向陽森林遊樂區(Tel:089-814-321)(N23° 16' 58.73",E 120° 58' 58.15")
  • 知本知本森林遊樂區(N22° 41' 40.15",E 120° 59' 21.94")
  • 卑南太平生態農場(Tel:089-380-389)(N22° 49' 20.60",E 121° 2' 52.98")
  • 卑南利嘉林道(N22° 48' 28.20",E 121° 2' 31.04")