2012年5月26日 星期六

2012年5月25日 星期五

Programming Working Journal

Check-in: tired, but look forward to the day of programming.

Planned 07:00-13:00 6h

- JS finish Steve's assignment
- JQuery finish Steve's assignment
- Re-build TEDxGongguuan

JS Steve's assignment

List of mistake:
- First append, and then change style.
- Get stuck because of typo of word
-> Use double click to check the variable
-> Must seriously think about getting it more compact

JS-> getElementById vs. directly calling the variable, needs the former to insert text node.

Attack:
1. http://www.w3schools.com/jsref/dom_obj_style.asp
2. Just refer to Steve's original assign.

a. Use table
b. Use border

2012年5月23日 星期三

Programming Working Journal

Check-in: Full and a bit tired.

Actual: 09:15- 11:30 2h15min
Get long time error because the clause wasn't within body.

Planned Schedule: 09:15-12:00. 2h 45.

Finish w3 school about Javascript part.

- difference between break and continue
-> continue break loop, for the next loop.

- Object; For...in statement
->var person={fname:"John",lname:"Doe",age:25};
var x;
for (x in person)
{
document.write(person[x] + " ");
}



2012年5月21日 星期一

Programming Working Journal

Check-in: Full. A bit tired.
attack plan 20 h DP.
- start with Steve's tutorial, and exercise.
- went through w3 school quickly
- rebuild TEDxGongguan.com

Actual
20:50-23:00 w3 school

Planned Schedule:
20:50-23:30 revisit Steve's tutorial



Goal:
JQuery/Java Script
Download HTML 5.


Steve's Tutorial week 6 JQuery

Steve's Assignment week 6

w3
- try .js, external javascript file 
- Case sensitive.
- document.getElementById('x').innerHTML="y"
->Change x to y.
- document.write(x)
-> seems to be how to echo something in JS
If you add a number and a string, the result will be a string!

-variable=(condition)?x:y
- a=[1, 2, 3, 4]
-> That's how to write array

- switch(){
 case 1:
 case 2: document.write("this is good");
 break;
}

Renny Gleeson: 404, the story of a page not found


Broken relationship is part of the customer experience. And if that is so, a good reason to make it nice as well.

Good lesson for programmer.


TED: Chris Jordan pictures some shocking stats



Data visualization for some feeling.

Can't this be an automated process?

If it were, what will be the most important component? 
- > Comparison, relative size.

-> Structure. If it is structural data.

-> Emotion trigger.

2012年5月20日 星期日

TEDxTaida: La vie est d'ailleurs

這一次的活動比我預期中的精采,也很幸運的可以跟遇到之前很啟發我英文老師 Benette Fu (社團指導老師)/ 還有機會跟講者聊到。可惜因為必須要先走,所以沒有機會把後面精采的講者聽完。

活動執行方面

(我其實有一點不喜歡寫這種東西,因為我以前辦完活動的第一件事就是回去 Google 觀眾今天的評論。然後我最討厭看到有人批評了。我其實很喜歡所有工作人員的熱情,我也非常認同這一個活動。謝謝 TEDxTaida 的所有人今天辦了這樣的活動,希望你們還可以繼續下去)。


我覺得有桌子的階梯教室的選擇沒有那麼理想,雖然只是兩百人的場子,可是感覺有相當的有距離。

就像所有活動一樣,開始前的等待有一點悶,或許有更多互動破冰應該不錯。仔細想想,我似乎只有在 Blue Man 的活動,體驗有趣味性的暖場做。演講剛開始有一點可惜,似乎硬體設備沒有完全準備好:影片的音效、講者麥可風的傳遞、簡報筆的測試都出了些小狀況。開場白,以及引言的部分,對我太新潮了:或許直接讓活動開始、介紹名字就好了。講者跟講者中間,有放一小段音樂沉澱大家的心情,巧思還不錯;可惜大家都很想要講話,上廁所,走來走去。


講者的部分

馬慶豐:

Baby Boomer,台大法律,畢業幾年後當外商總經理(月薪 2000 美金;1:44),開始一直到處跑。下半年決定開始自己的Bucket list。

在帝國大廈四十多層樓工作九年:"這麼多年在這裡工作,居然到現在才真的上到頂樓。我看到那裏的美景,淚流滿面,這麼多的遺憾。"

- 37/50 個聯合國的美術館、玉山、重機

這裡倒是有一個遺憾,他在演講中間的時候,有提到:"完成夢想最大困難並不是時間,或著是錢。這個我等下會講"。不過他就沒講了。

李奕瑋:

宅食料理的廚師,之前在德國廚具公司工作,但心目中一直想著有一天要做不一樣的事情。中途去法國學法式料理。

我還蠻喜歡他的演講的地方,是他真的在論述一個題目,沒有流水帳跟題外話。他真的有花工夫在順他的主題我本來因為他帶了一張草稿上台而感到鬆懈,不過論述真的很享受:

- 今天的主題,"生活在他方",他方或許不是地域性的改變,而是身分的改變。
- 我們活在一個環境持續在改變的環境,當改變過於快速的時候。與其追尋,或許我們應該回過來省思"自己"
- 改變需要一段很長的過程;在期間,你的眼睛應該只專注在目標上;不然妳會浪費很多錢跟時間。
- 我經歷過一段很長的過程,一直不斷的測試我自己的動機
- 改變的自信格局;格局:從開始宅食開始,一律只接受預約,不接受臨時走進來的客人。

除了相當佩服他選擇用"論證"的方法闡述他的主題以外,我覺得"改變"的這一個主題,也真的很切重我現在所關心的主題。想法上沒有什麼新的東西,不過很高興跟講者的想法有一些共鳴,由其是"省思自己想要什麼"的部分。

連上賀:

不同世界不同的觀點。旅遊類的演講當然很多了,我喜歡是他留下反思的問題:"為什麼在臺灣不能享受太陽?"、"台灣的新蹟,可以供未來的觀光客檢視嘛?"、"冰河掉落的聲音"。

陳聖凱:

以立國際,B 91的農學院學長,從若水出來之後,決定要到柬埔塞蓋孤兒院,"柬單生活計畫"。這一個組織接受捐款的同時,也會要求捐款人到柬埔塞一起蓋房子,建立參與感與關懷。利用台灣的優勢(農業),去幫助其他地方的人。

- "其實你覺得我們所捐的衣服,為什麼那邊的人不敢穿?因為假如他們穿了,其他看到他們的外國人,就會覺得他們沒有那麼窮困,就不捐款了"。所以以立幫他們設計了農田,讓他們可以從另外一個面向解決問題。

我覺得這才是觀察到當地人所需要,然後真的參與協助的案例。我之前一直沒有辦法 appreciate 社會企業到底在做什麼,不過我覺得這一個例子真的改變了我的想法。

- 同樣世界,不同目地,不同解讀。
- "其實地上本沒有路,走的人多了,也便成了路"魯迅;講者好像自己在前面加了"希望是一條路",不得不說,原句還是比較通順一點。


兩次參加 TEDxTaida 的活動,都只能待半場,所以或許加起來,可以算是一場。這一個活動當然可以有兩個切入點,一個是以學生為觀眾,選擇適合的主題;這也是他們目前採取的方法。不過當然,這樣在主題的選擇是不是可以跟日益繁多的 TEDx 活動有所區隔,是值得思考。這裡的大問題是:"有什麼主題,是我們可以講,別的 TEDx,別的演講不能說的?"

或許另外一個切入點,是以學校的老師、學生為講者的來源:這是一個平台,讓學校最酷的老師/學生可以發表最驚人的思想。讓他們把一學期的課,濃縮為 18 min。








2012年5月19日 星期六

TEDxGG

More technology; such as 3D printing, gene.

Programming Working Journal

Check-in:

Actual 07:00-11:30 (- 1h breakfast+snakes)


Good job on nailing most of the function, and get a lot of practice. You know how to use the basics of them, add oil. Remember the joy of writing for($i=0, isset($a[$i]), $i++)!
 
add oil muyueh, one step at the time.
Be so good that they can't ignore you.



07:00-11:30 4h30
Need to finish all term, and practice practice practice.





Baptiste mentioned that a good programming, apart from the execution detail; should really be how one look at the big picture of the problem.
-> He is continued exposed to positive swarm effect.

Continue on the log in page problem:

- whether it is possible to write one empty check code for both password and name
-> Kind of a variable filed
- Do we/how to md5 the password before it is even it is send out?
-> might need to dis-activate the field.



2012年5月18日 星期五

Random Idea: agreement term

It said that is 70 something days to read through all license agreement of all web service one encounter a year.

Why not:
1. design a pre-declare system; when one can declare what is/isn't appropriate in advance; and checked when things are not as expected.

2. design a standardize form, with the usual what is/isn't appropriate; and the site will have to say where does their form deviate from the standard form.

Hard question

Do music composition follow a rule?

How to determine a good piece of music?
What is the ultimate purpose of a piece of music?

-> Change music for novel, programming.

Programming Working Journal

Check-in: 6:10 am A bit hungry, but feeling great to be able to start the day that early.

Actual:
Good morning start, the effect was great. Just don't get distracted.
Spend 2 h on figure out how to send question on stock overflow, have not succeeded yet. 

06:30- 12:30 Continue to break the Thursday list ( 90 min)
Practice, practice and practice the skill
re-write the log-in system.


Question that remains unsolvable after 1 hour:
How add/remove quotation mark?

So that I can do the following:

echo substr('abcdef', 0, -3); // expecting output: abc
echo addquote(substr('abcdef', 0, -3)); // expecting output:substr('abcdef', 0, -3)

2012年5月17日 星期四

TED:David Kelley: How to build your creative confidence

It is nice to hear David Kelly speech, but nothing really new if one is already familiar with d school design thinking. Talking of design thinking, I have recently feel that something is seriously missing in the methodology. I don't where is wrong, I just feel that something is not right.

Feeling of doubt.

I think it is because in some of the data point I have recently gather, the result is false, while the process is right. So wondering about design thinking: whether there is some premise that was required but unmet?

Otherwise, how do you explain the gap?





Some note related to the speech:
Fear of judgement.
Albert Bandura; psychologist about phobia http://en.wikipedia.org/wiki/Albert_Bandura
Step by step process to get comfortable with snake.
-> Self-efficacy, sense that one can change the world.
Take people-> series of step -> transformation
Commit to this point, regain their creative confidence.


Programming Working Journal

Check-in: Tired, but fine.

Actually:
20:40-23:26 (-20 min nap) Great! Make some major progress with term you didn't know before : )
Schedule:
20:40-23:40 (3h) Google unknown term/method of the log in system, rewrite it.
Trim; md5; function, false-true variable

Reading https://github.com/simfatic/RegistrationForm/blob/master/source/include/fg_membersite.php

Need to understand the following, get a quick google search, and practice to use it to write code:
- define
 http://www.w3school.com.cn/php/func_misc_define.aspdefine("Aaaa", "Hello world")
echo "Aaaa";
-> appear Hello world
- array_push
-> add multiple things to the end of array
array_push($a, "tik", "nik");
-> $a([5]->tik, [6]->nik)
print_r($a)-> return everything of the $a array!
- print
To be exploredhttp://php.net/manual/en/function.print.php
- $bret?sometimes refer as $bRetMight be the same thing as boolean return ($breturn)
- $this->sitenamehttp://stackoverflow.com/questions/1523479/what-does-the-variable-this-mean-in-php"The pseudo-variable $this is available when a method is called from within an object context." from php.net
It is used under an object oriented environment.I guess my question was, why do we need $this.
Then, it make sense to use it as the following show: 
function a($x){ return $this->error_hash;}
As the function can be later been called within a class.
related: difference between self and $this http://stackoverflow.com/questions/151969/php-self-vs-this
more on object oriented programming:
http://www.phpfreaks.com/tutorial/oo-php-part-1-oop-in-full-effecthttp://www.phpfreaks.com/tutorial/oo-php-part-1-oop-in-full-effect
Otherhttp://en.wikipedia.org/wiki/Php#Release_historyhttp://us3.php.net/manual/en/language.oop5.basic.php

- !isset
isset is use to see whether a variable has been set
-> if it is "unset" or equal to "null" it will return with false
http://php.net/manual/en/function.isset.php
- empty
http://php.net/manual/en/function.empty.php
empty= isset+ "" + $a=0 +false
http://php.net/manual/en/function.empty.php

-----------------------------2012.5.19 --------------------------------------------------------------

- substr(md5(uniqid()),0,10)
-> substr is a difficult one.


- if(!result|| mysql_num_rows($rows)<=0)
-> mysql_num_rows() and mysq_affected_rows()
the former for counting the number we have last SHOW or SELECT;
and the later includes number for INSERT, DELETE and other.
http://php.net/manual/en/function.mysql-num-rows.phphttp://www.php.net/manual/en/function.mysql-affected-rows.php

- return true/falsePracticing.
- explodehttp://php.net/manual/en/function.explode.phpcut down string into array of substring.
explode(" ", $sting)
<?
$strin="This is a wonderfull day ";
$strin2= array(3, 4, 5, 6, 9);
$strin3=315634223233233;
$strin4="Taiwan (i/?ta??w??n/ ty-wahn; Chinese: 臺灣 or 台灣; pinyin: Taiw?n; see below), officially the Republic of China (ROC; Chinese: 中華民國; pinyin: Zh?nghua Minguo), is a state in East Asia. Originally based in mainland China, the Republic of China now governs the island of Taiwan (formerly known as Formosa), which forms over 99% of its current territory,[f] as well as Penghu, Kinmen, Matsu, and other minor islands. Neighboring states include the People's Republic of China to the west, Japan to the east and northeast, and the Philippines to the south. Taipei is the capital city and economic and cultural centre of the country,[1] and New Taipei is the most populous city.";
$tran_space=explode(" ",$strin);
print_r($tran_space);
echo "</br></br></br>";
//$tran _null=explode("",$strin);
//print_r($tran_space);
//echo "</br></br></br>";
$tran_array=explode(",", $strin2);
print_r($tran_array);
echo "</br></br></br>";
$tran_3=explode("3", $strin3);
print_r($tran_3);
echo "</br></br></br>";
$tran4=explode("Taiwan", $strin4);
print_r($tran4);
echo "</br></br></br>";
$tran5=explode(".", $strin4);
print_r($tran5);
?> 

- strlen()
http://php.net/manual/en/function.strlen.phplength of string;
"Null"=0
"-2"= 2
"Hello world"=12
- Difference between 'apostrophe' and "Quotation"
->Can use variable ($a->7) in the Quotation, while within apostrophe, variable remains the same($a->$a)
http://bytes.com/topic/php/answers/750143-difference-between-quotation-apostrophe-php
 - preg_match
search for a regular expression http://php.net/manual/en/function.preg-match.phpI am still not familiar with regular expression; this will help me to write filter; and e-mail related function.related: in_array() search an array for a specific value.
-is_numerichttp://php.net/manual/en/function.is-numeric.php

-require_once("class,phpmailer.php");




There is something interesting about this expression, study it more: 


<?php
$tests 
= array(
    
"42",
    
1337,
    
"1e4",
    
"not numeric",
    array(),
    
9.1);

foreach (
$tests as $element) {
    if (
is_numeric($element)) {
        echo 
"'{$element}' is numeric"PHP_EOL;
    } else {
        echo 
"'{$element}' is NOT numeric"PHP_EOL;
    }
}
?>






2012年5月15日 星期二

Programming Working Journal

Difference between isset, empty and null.
http://hi.baidu.com/cpuyz/blog/item/e18780ef1aabb4e8cf1b3e6e.html
http://seanphpbook.blogspot.com/2009/10/php-empty-isset-php.html

TED: Gary Kovacs: Tracking the trackers

因為這一個演講實在太震撼了,我覺得絕對有義務把訊息重覆一遍:Firefox 在TED 2012 開放一個實驗性的工具,讓你可以知道什麼網站在跟蹤你什麼動作,然後不同的網站怎麼樣交叉比對你的資料。這一個工具帶給我相當大的震撼,我用了還不到半個小時,就覺得可怕的想吐。
良心建議可以實驗看看,你最多只會浪費十幾分鐘,對我來講,這次體驗徹底改變了我對網路的看法。

步驟一,去下載 Firefox http://www.mozilla.org/zh-TW/firefox/new/
(三分鐘,Firefox 是一個開源系統的瀏覽器,就像 IE,Chrome一樣)

步驟二, 去下載 Collusion 套件 http://www.mozilla.org/en-US/collusion/
(三分鐘,安裝後,瀏覽器的右下方會出現一個黑體小紅圓圈;假如沒有的話,
你可以在檢視>工具列>附加元件工具列;按"Ctrl+/"就會出現了)

步驟三,把這一個附加元件的全功能開啟,如此一來,每一次你的動作被瀏覽器紀錄的時候,他就會發出聲音。當你的資料發給第三方的時候,就會有頁面跳出。有一點煩人,但是絕對值得開啟試試看。
 (一分鐘;到工具>附加元件>點選Collusion> 勾選"Check to hear sound"及"Always Show Graph")

 步驟四,開啟你的音箱,把頁面右下方的小紅圈叫出來,在Firefox上做任何你習慣的事情;寫部落格,收 E-mail,看一個 TED 影片。

你會發現在 Collusion 的監視頁面中,有一大堆的圈圈會冒出來,這就是正在收集你的動作的第三方網站。背景音,你會聽到很多"喀嚓,喀嚓"的聲音,那是你每次被設置一個 Cookie 之後所造成的聲音。

可以試試看開啟色情網站,你絕對可以體會這些網站有多少個外掛系統。

試試看開啟 TED.com 的頁面,會有一大堆的第三方程式,才發現這裡的監控 Cookie 可能還比色情網站還更多。在表中,你還可以看到這些網站,與其他的網站正在共同分享你的資料。而這一個頁面,就算閒置的時候,也還是會持續的設置 Cookie。



必須要澄清的,是並非所有的 Cookie 都是壞事。Gary Kovacs 也提到,是因為這些 Cookie 才讓很多服務變的更客製化。只是,底線就是:我們應該知道我們被曝露什麼。





I actually recommend everyone to give this a trial:

1. Go install Firefox http://www.mozilla.org/zh-TW/firefox/new/
2. Install collusion http://www.mozilla.org/en-US/collusion/
3. Click on the bottom right to see the monitoring page, or go to option to enable the voice and pop-up window.

4. Try to perform a web activity, such as posting an article, and just see what happens.



2012年5月14日 星期一

TED:JP Rangaswami: Information is food



Very interesting comparison, first that our brain tissue are as valuable as our digestion tissue (Though I don't fully get why).  And then, the idea that information can absorb information as absorbing food. This is related to the talk by Eli Pariser; comparing good information and bad information as to vegetable and junk food.

So, if information is nutrition, what can be what? Following is my short list:

  • Gossip is like fat.
  • Provocative thought is like ?.
  • ? is like vegetable. 
  • ? is like water. 
  • Poem is like  ?  
  • Essay is like  ?
  • News is like  ?
  • Bloomberg is like  ?
  • Myth is like  ?
  • Story is like  ?


2012年5月13日 星期日

Programming Working Journal

To be understood: 
$formvars seems to have all data, what is it?

TED: Eli Pariser The Filter Bubble


A short but interesting talk about the filter bubble problem. We will keep seeing what we like, not what is important to us. We don't get to see the edit out, and we can't get to know what we don't know. Think of this as an office setting, nobody want to deliver the bad but important news to the boss.

But what is the solution? One should make it a rule to select random things to read every each period of time? Add one stranger friend every month or so?

This result won't be filter out, but we will have a lot of noise.

We should get important result that is un-filtered. Then the question lies on, how to you define what is important? If you think of it, my running list of possible assumption of what importance consist of:

  1. What you like. Define as your past preference.
  2. What is most popular. Define as the most viewed, or the most mailed article.
  3. The probability that the event is going to affect you. Define by language you are using, and the location where you are.

And after this list, I find an interesting fact: all this metrics are already built in to the current algorithm. And if we consider that the engineers of search engine have done their work, so should it be already built-in. So either there is something else in the def. of importance.

If  I phase the problem in another way. Assuming that I am head of office at Microsoft, all my colleague are senior people who have very similar mindset than mine. My junior internet is writing to me, to tell me the importance of internet. My problem will be: how can I know that this memo is important?

If I can constantly advice my future self, asking him about what I wished I know now. How can I replicate this process?

Somehow I feel this problem is related to what Kevin Kelly post about why young people know how to use the internet:
The Web is being run by 20-year-olds because they can afford to waste the 56 hours it takes to become proficient explorers. While 45-year-old boomers can't take a vacation without thinking how they'll justify the trip as being productive in some sense, the young can follow hunches and create seemingly mindless novelties on the web without worrying about whether they are being efficient. Out of these inefficient tinkerings will come the future.

Alternative:

  1. Finding people/friend who strongly disagree with you; offer you an alternative view of things. 
  2. A filter with good content that only feed you with vegetable, but not garbage. 
  3. People that you admired.
  4. People who risk something to tell you this message. People who strongly disagree with you. People that are willing to bet on it. People who put their name on it.
  5. Follow industry/society early adopter, defined as elite, or young people. 

Possible action item.

  1. Join other people's activity. 
  2. Take advice from 10 un-related people about major decision.
  3. Keep a very vast network of friend.

More following on failure

It is interesting that these people were criticized exactly were they are outstanding.

http://www.creativitypost.com/psychology/famous_failures

TED: David McCandless: The beauty of data visualization

Further follow up
- Check Blog: "Information is beatiful"
- Check about the Google interactive tool he has published.
- Book: "Information is Beautiful/The Visual Miscellaneum"
- Guardian Data Blog
-> Designing Visualization tool for Telephone bill

Thought:
He has been an programmer.
"Data is the new soil"
Information design is all about knowledge compression. (Can the process be replaced by computer?)

Question: Whether it is possible to scale the process of data visualization; like a template? Such as visual.ly http://create.visual.ly/




Read and Reflection: random.org



They use environment stimulus to generate random number. It is so fun! 

I had similar idea using a bad optical camera to capture some light. 

But idea doesn't count, execution does. It is great to see that someone has already think that, makes you feel that you are not alone. 

What about building a random generator using the result of the stock market?


2012年5月12日 星期六

Programming Working Journal

2012.5.13

Reflection: Reading new code is actually complex, get to distracted about every detail. Spend a lot of time learning what "class" is (still not sure how to use private class). Need to have higher ratio of omission.

Current step for learning new part:
Get Broad picture first(Neglect everything unless you are stuck. )-> Look at line of code from the most important part-> List down what you don't understand-> Break and Conquer 

List of outstanding:
- Understand $this
- Understand private and public class
- Practice the above mentioned.

Check-in:
7:40 am wake up
08:00-09:20 Writing about KK and thoughts about programming. Actual.
09:20-12:30 Deliberate Practice on:
  1. log-in system;  Actual.(But is still there.)
  2. think about how to reproduce Market Intelligence Platform
    a. log-in system
    b. what you see is what you can change (Google Site superficial)
    c. Newsletter Form
    d. automatically generate new page
    e. tag; crossed-tag analytic
    f. RSS feed auto-capture
Afternoon: Read, Get some sport and write. Actual(walk 90 min, write, watch TED).
18:00-22:00 Deliberate Practice  Actual(21:00-23:00) 

Resource:
Using 'this' and '$this'
http://stackoverflow.com/questions/7234282/what-is-the-reason-for-var-this-this

Random String
Random String-> Usually created with a string+timestamp
Use random string to md5 hash with password


http://www.random.org/strings/?num=1&len=15&digits=on&upperalpha=on&loweralpha=on&unique=on&format=html&rnd=new


Watch later:
http://www.netmagazine.com/features/2011-review-15-web-conference-talks-you-need-watch

Reading and Reflection- KK and computer eco-system

Reading Kevin Kelly out of control, and thinking about computer programming. The concept is that the system we designed will become so complicated that we will have to turn to biology to maintain the system.

If we separate software into internet and desktop based, I think that internet base software will do better in the long run. Because it has a more powerful feedback loop.

This morning, when I started my computer, some warning pop up, it seems that some of the item on my desktop has remained unused for a while, and some program suggest me to take it off of my desktop. This must be a code invent by MS programmers, that count the number of time that you have open each item. The underlining assumption is that, I will need to clean it.

The ultimate problem is, how do we know whether we need this line of code? How do we test the assumption of whether we want to have this function?

Maybe there is another master program that is counting the number of the program being used: if the clear the desktop program is not being used enough time, it will be wiped out. But this rule itself can't be guarantee to be a good one, as it is assessing the usefulness based on the frequency of the usage. Think of an extinguisher that is useful in case of incident, but is not been used as often.

And MS window does have a feedback system: it is the error message that it will send out to MS, when the computer crashed. But given the time that these message appears, it doesn't seem to be very efficient. Or it might be just the fact, that computer system is too complicated, and the whole network turn out to send out all kind of errors that is just impossible to deal with.

Or it might be the fact that the whole program is just too big. And it is not possible to just change one part of the program.

It might be possible to design the ultimate algorithm to emulate the feedback function on nature. When you think at the internet system, it is much closer: it let some line of program dies, they are replaced by more efficient-friendly one. The piece are smaller, and if they are not interdependent, you can easily change part of the program with something else. The system has the ultimate feedback loop, and that's why it can succeed.

Another point worth mentioning, I doubt that all software will be more open in the future: people are different, and when more people understand how programming works, they won't be satisfied with the level of control they have now. I am thinking about customization that are fundamentally different, not just the ones that allows you to change the size of the font.

When we talked about evolution, we often implies that all evolution are advancement, and that human  are, by far, the latest process of the evolution. Which might sound good, but think of this: can we said we are better than cockroach in surviving disaster?

The process of evolution just let new creature that can better take advantage of the current environment to prosper. Environment varies, and that is the reason why there are many different dominant species in different places.

If you think of this, you won't have version control that goes from v. 1.3-> v. 2.0. Instead, you will have multiple spin-off of version, that are all up-to-date.

And that may just the reason why Google has a android system that runs on smartphone is different than its desktop OS system. And that MS who try to just transfer its desktop based OS to mobile phone won't work: at the end, they have to create a totally new system instead.

Blackberry has similar problem when smartphone are changed from business to entertainment usage: they just can't make the change.



One last note on cockroach and human's comparison, if you only compare one cockroach to one human. Given the incredible things that one human can do vs. one cockroach can do, you probably won't feel intimated. But what about comparing all cockroach on earth to all human on earth?

And if you think of it, it is interesting, if human were to be defined as some biological program, we might be a very LARGE program. While if cockroach is to be a program, it might just have two line of code:  eat-> reproduce.

And in programming, the shorter the better, no?

2012年5月8日 星期二

Programming Reading and Reflection

Outstanding Idea:

Find a fixed day in the week in a fix place to program with fix people?

Focus. Reserve your morning time. Sleep early.

Study the basic.

Read Pinterst and visual.ly everyday, it is important to keep absorbing beautiful graph, understand what machine can do and human cannot.

Always produce.

Need to be more focus, deliberate practice is what it count. Hard work, not hard to do work.
- Facebook COO leaves work at 17:00
http://mashable.com/2012/04/05/sheryl-sandberg-leaves-work-at-530/
- 4 to 6 hours hard focus
http://calnewport.com/blog/2009/06/22/on-the-value-of-hard-focus/
- Considering Start-up, think again.
http://blogs.hbr.org/cs/2012/04/considering_a_start-up_think_a.html?cm_sp=blog_flyout-_-cs-_-considering_a_start-up_think_a
I am glad that I didn't get disprove by this start-up. 

- How genius think
http://www.creativitypost.com/create/how_geniuses_think
Look at things at many different way. Blank of the mind, don't think immediately. Let your flow guide you first. Remember to breath.



If ruby on wheels is as powerful than php, but it takes much less time to learn as php. It won't be what you already know, but the speed where you are learning. Learning plan, the working journal that I am keeping now is very important.

Winner takes all at programming, people who only new some basic will be quickly replace by cheap platform( think as platform tool that kills a lot of people: Google site, iBook authoring).


Discussion Yenling's advice:
Needs to have the basic at one language before moving on. Build at least the MI platform.
Programming Language:  Learn about different type of programming language. Lisp, C/C++, and others.





2012年5月6日 星期日

Programming Working Journal

2012.5.6

Target:
- Need log in to see content.
- Practice AJAX

Read "我是亞桑傑" (Julian Assange: The Unauthorised Autobiography)
Information helps to form multi-narrative, and this is important.
Needs to be a great hacker to build a secure mechanism. He has been hacking since he was 16, reaching  10 years/10,000 hours of practice very early.

Interested to know that he doesn't seem to have any interaction with the Chinese internet, given that he seems to have hacked many major network, this seems very strange.

Wikileaks had a lot of information, and he seems to have a way to proceed through 70,000 entries. The way of how he organized the data might be very interesting.

List of absorbing:
Complete package about login on github.
https://github.com/simfatic/RegistrationForm#readme

Read Getting Real
https://gettingreal.37signals.com/

Read out of control
http://www.kk.org/outofcontrol/


Trim: a php function that removes white space.
Usually used for password so that white space can be removed.
http://www.w3schools.com/php/func_string_trim.asp

Form and check box best practice
http://www.html-form-guide.com/php-form/php-form-checkbox.html
- Dynamics form
- Hide password
- Multiple Check box
- Check whether a sample is checked

Login form using PHP
http://www.html-form-guide.com/php-form/php-login-form.html
Complete package about it on github:
https://github.com/simfatic/RegistrationForm


Passing php variable
http://www.html-form-guide.com/php-form/php-form-variables.html

Session Best Practice
http://www.html-form-guide.com/php-form/php-order-form.html