2016年12月30日 星期五

Wifi module的戰役

在IOT未流行前,就已在使用了。當時算貴的,大部分在10鎂以上。
也有很多廠商,記得當時用了一家很大的,公司主要在上海,接觸的是台灣分公司。
但在使用上有些問題,也問過問題。不幸的回應不如預期,也來來回回的用mail在除錯。
後來問題無法有效解決,就換另一家的Module,研發在台灣,有問題借出電路,很快的找出問題在那。
於是就用了Wifi Module成功了第一個案子。
過了三年,沒想到IOT紅了,又回來看資料。什麼?ESP8266是那個?一個剩不到3鎂!記得不是開放原碼的,怎麼如今也開放了!
三年內類似功能的Module價格剩不到1/3,還不只一家做,大家都改用開放原始碼的Module。

現在在做BLE應用,看著各廠商的Module資料,又遇到了不開放原始碼的廠商,讓我想到Wifi Module的故事。
生意不是不能做,但真的不能用硬體的方式去思考。
程式碼是重要,但開放標準的元件,去鎖軟體能擋多久?你不開放,一堆其他公司就開放和你搶。
要不然,價格戰,相信市場很快就爛掉,誰也不想見(客戶除外)。
現在是軟體主導時代,應以軟體的角度去看市場。因為硬體廠商真的太多了!

2016年12月21日 星期三

發明?還是發展成功?

看人類科技發展,再加上經濟上的發展。
可以確定科技發明,並不等於發展。
往往發展人會變成發明人,再加上以前文字沒有留下明確記錄。發展人就直接變成發明人。
但發展就和發明不是直接相關了。
以中國4大發明來說,指南針和火藥就給西方人有效的發展。
火藥最為明顯。
其實又和其經濟效益有關。

砲: 石字,在中國發射的都是石頭。
而且和投石器常常混在一起。
火藥一定會是中國人發明,主因是煉丹。
但發展一定在地中海,主因是海戰。

早期砲身極重,只能放在車上移動,用來破城。但投石器也可以破城。
所以只能算是破城器之一。在很多的攻城器中不算特別突出。
傳到歐洲就不同了,大砲在陸地上不算太有用,在海上就不同了。
平射砲可以擊中船的吃水線,造成船底破洞,很容易使船隻失去功能。
一但用在海戰,直接變成殺手級兵器,不易移動及瞄準等缺點在船上也不是大問題。
於是大砲開始進化。從石砲彈變成鐵砲彈,那個時代鐵是高級物資,若非效果有差,怎可能做成消耗品?
大砲改變了船的地位,也開啟了人類放胆去探險的心,於是大航海時代就此展開。

發明又如何?
到後來發展才是重點。火藥改變了西方世界,再回頭改變了東方。回到東方已是另一個不一樣的東西了。

2016年10月18日 星期二

又一次新電腦時代

還記得當兵前的電腦和當兵後是完全不同的時代,也花了很久才追上。沒想到又發現這二年又有變化了。
當兵前的電腦是DOS模式,寫程式算是簡單的,輸出入不多,這個模式到MCU也是一樣。

之後進入圖形化界面時代,顯示卡大更新,作業系統大換。面對視窗程式,真的不好理解。
花了數年才學到一點點概念。圖型化界面是PC的全盛時期。
最新受到智慧手機影響,重新評估電腦技術,發現又進入新時代:網路時代。
網路時代,作業系統不重要,瀏覽器才是重點。或是另一端的伺服器程式才是關鍵。

語言也產生很大的變化,直譯語言總算成為主流。
程式模組共用,程式重點全部轉到應用層。
寫程式有近一半的時間在找最接近需求的元件,然後改成自己的需求。
網路時代,開源很重要,作業系統開源,伺服器軟體開源。這對於上一個階段的軟體公司來說是很大的改變。
因為電腦要使用網路聯合產生服務,變成橫跨硬體。從伺服器,手機,到裝置,跨度很大。中間原本皆使用不同語言,造成統合困難。
所以電腦語言產生統合,如果可以,會統合成單一語言。

結果發現以前所學的視窗程式架構又沒有什麼用了。因為現在改成網頁的方式做圖型界面描述。
單機執行程式也改成遠端支援型程式。
改變太大,才使我重新去判定又是一個新的電腦時代。
一切重頭來,已經浪費不少時間才弄清。還是丟掉以前的觀念,重新學習。

2016年10月3日 星期一

APP開發評估

這個月開始轉換,評估了新軟體生態。真的和以往認知有很大的不同。
PC環境式微,Web開發環境興起。主因還是在手機,因為web形式可以通吃。
主要語言也有轉型,看來JavaScript會是主流已經不用懷疑了。
看來學校教課也只剩下二個語言,不是教C,就是教JavaScript。
所以看看PC上的應用,就變成使用Node.js。
安裝好了Node.js試用,馬上發現我所想的另一個問題,巨量原始碼問題。
本來就有預估會遇到巨量原始碼這件事,因為PC程式一直很少用,所以沒有感覺到。
真的要用,大部分就用google找一下。但在npm下,我發現我的方法實在太原始了。
如何使用巨量原始碼這件事已經變成是新的程式技能,我卻沒有方法。

再來回到APP開發,本來想說用JS有機會弄好,結果不如所想。
Android Studio是不可能避開的,它是不好用。
所以公司又弄了BCB來,這個打開頭更大,它是以win32開發為主,又套上跨平台,複雜度加倍。
我想還是以可以網路找文件的方法為主,只能先回Android Studio。

然後中間先學了JavaScript,本想這個解譯語言應是不難,又錯。
Node.js和想像的不一樣,它是非同步語言,光是這個就可能弄倒一堆人。
非同步語言又是新的要學技術。

APP將軟體生態大改變,軟體和以往我所知的大大的不同了。
變成還要去補中間的段差,這個又變成是要追趕的技術。
因為手機環境至少十年內不會退,也還是只能痛苦吃下去了。

2016年8月25日 星期四

MCU軟體開發流程

Bee知道這是一個古老的題目。但現在開發流程和以前有佷大的不同!
Bee也將會釐清RTOS對專案進度的影響。這是和網友討論後,發現要說明的。

首先Bee在執行完專案後,粗估了一下原始碼來源,大約有70%不是Bee或公司人寫的,是外來的。
其中廠商驅動程式佔不到20%,超過50%是從網路抓來的,或由PC轉來的。

外來碼佔比很大,這是傳統MCU工師所無法理解的。但這招正是Bee快速開發的主因。
要統合如此大的程式碼,首先驗證是必須的。外來碼大部分是由PC執行來做驗證,再轉入MCU內使用。

這裏引發了網友很大的質疑,MCU程式碼無法和PC共用!
MCU結構和PC天差地遠,寫法大不同。這個Bee承認無誤,但Bee將MCU轉成和PC相似的程式環境,其中關鍵在使用RTOS。

PC軟體環境,退回到遠古時代,也只有DOS。它只是一個磁碟作業系統!如今的MCU能力並不比當時8086差,為何不能在MCU上建造相近環境?
要自己寫?別傻了,找別人的比較快,故Bee安裝了外來的RTOS。
然後PC程式中,有磁碟函式,例如file read/write等等,就使用SD卡及FatFs來補。於是磁碟系統也有了。
SD卡可以自由在PC及MCU中交換資料,因為格式相同,自然可以將PC上的程式往MCU上搬。

網路時代了,能利用開源就要利用。不管是在PC或在MCU上。若PC程式可以通MCU世界,可以引用的資源將會非常大。

不使用RTOS的人,會以沒有見過的程式就不能隨便用為由,繼續保持和PC世界的距離。
而對Bee來說,MCU和PC是互通的,有多少MCU的程式碼都是由PC做驗證,由MCU來執行。

網路時代,是軟體共同創作時代,已不是昔日單打獨鬥的時代了。

2016年8月19日 星期五

CPU,GPU再來的發展?

看到Intel去買ARM授權,這是好事。因為Intel已經認定無法以X86去追現在的市場。Intel將進行跳代的技術研發,不再做手機晶片。 那處理器仍是核心的Intel將轉成那一種處理器?

CPU,GPU基本上都沒有市場,而MCU低門檻無利潤。 再來的產業應會走機器人產業,無人機是已發展成功的機器人產業之一,必成為分析重點。 Bee認為再來Intel將分成二個產品線。

原CPU處理器將會專精發展伺服器應用,機器學習專用處理器會是一條路。
另一個就是買下ARM授權的方面,機器人相關應用。Bee認為會是Vision Processor Unit(VPU),視覺處理晶片。用於無人機及機器人上。
 VPU上現在無多少廠商,現在投入等機器人產業成熟就會大量使用。且VPU又要整合一些檢知能力,和intel 的RealSense想要發展方向一致。

有了VPU也許世界又會改觀。

2016年8月3日 星期三

使用手機產生研討會筆記

昨天上了ST舉辦的研討會。
當我拿出藍牙鍵盤時,就有人覺得很奇怪。其實這個我用手機做記錄的方法,個人使用倉頡輸入法,中打沒有鍵盤速度差很多。
手機則會打開Evernote及Office Lens二個軟體備用。
主要是使用Evernote做紀錄,這也是換了好幾次才定下來的軟體。

然後就聽講,打字,除了研討講義外,講師說的重點也都會一併記入。其實這些非講義上的往往才是重點。
因為中打很少選字,其實低頭時間不太多。至少這點比以前低頭抄寫紙本要來得有效率,且遺漏重點狀況也少很多。
有時會有額外的加頁時,就拿起手機照像,但個人使用Office Lens做自動裁邊並轉正。不會因為座位限定,圖像歪斜。
因為課程時間甚長,已有一堆人精神不濟,我則因為很忙碌,並沒有一起和別人一樣做白日夢。

一般來說上課時間所打的字已經超過報告所需,所以回去整理成Power Point的時間很短。等於課堂上已經將報告素材都轉成數位化,且九成可用。
整理時間一般在一小時就可以完成,而自己在整理報告時,等於又上了一次復習。
而報告整理主要只有排版及美化工作,沒有花費很大的負担。
最後週報告要報告給同仁聽,等同又再復習一次。
上過一次課程,整理出好報告,又報出豐富的內容,自己又增強課程吸收力,才沒有浪費上課外出的花費。

自從發現手機取代上課筆記後,上課程的吸收率比以前學校的吸收率強了不少。
也許個人上課的記錄方法才是真正自己的能力,以前受限於科技未達到,才無法發揮個人所長。
記得大學同學經常說我是課堂姜太公,幾乎每堂課都在釣魚(瞌睡)。
當姜太公的時代總算過去了。

2016年7月28日 星期四

無條件基本收入和共產主義的不同

個人在提出無條件基本收入時,第一個被人說的是:共產主義再現。
我所知的共產主義,主要是反對獨佔及特權,利用社會分配使資源利用得以最佳化。
也就是要做到資源最佳化,其實管理能力很吃重。整個國家如此大的數據都要管理,還真的不是人可以做的。
也許沒有大數據科技,共產主義還真的很難做到成功。
但這個和無條件基本收入沒有關係,無條件基本收入是一種經濟體,目標和共產主義並不相同。
有像只有,人民資料管理。但目的不同,共產主義是為了資源分配;無條件基本收入只是保障收得到錢,不會餓死。
在經濟上更不同,共產主義要消滅獨佔;無條件基本收入是保障生存才以國家佔有部分糧食生產,其他經濟並不去干涉。

也有部分資料在說明,如何實現無條件基本收入,例如增加消費稅。但這個只會造成物價上漲,對生產力是不良的影響。
個人認為無條件基本收入,主要是要消耗過量的生產力,將過產之生產力轉成保障生存的方法。
也就是若生產能力不足,就不合適實施。在現在進入生產力過大的時代且有大數據科技支持下,這樣的經濟體才能解決生產力過剩影響經濟力問題。
過早實施,我想下場真的會如同共產主義,得到失敗的經濟。
不同的經濟主義都有必需的時代條件,隨著人類科技的改變,而去改變合適的經濟體制才是合宜的。
只是現在資本主義已經無法再帶來更多的經濟力,顯然的是要換了。而無條件基本收入只是符合現在科技的經濟體解法。

或許每個人都有想要實現的理想主義,但要實施,真的要想好限制條件以及好壞影響。
沒有方法是最佳解,有的是限定條件下的最佳解。但在全面考量下,一般也只能找到破壞最小的解。


這只是一位專案工程師做產品多年來的心得。

2016年7月26日 星期二

為何自動化引發經濟萎縮

Pepper引入台灣,月薪26888元。算起來和請一位22K的員工月支出差不多。
但使用量越大,經濟不但無法成長,還會倒退,為何?

在上個世紀,生產能力就是代表經濟力,這點是沒有錯。進入21世紀,此公式無效,為何?
回到經濟學基本,經濟活動是基於生產:消費二者交易產生出來。
若是生產能力小於消費能力,經濟主要限制就在生產力身上,這就是20世紀以前的經濟法則。
但此法則到1980年就開始失效,原因在於生產能力已大於消費能力。但當時並沒有產生出任何徵狀,因為還有全球化經濟在走,經濟仍成長。
全球化經濟在2000年時到底,之後現象就出來了。以往政府的經濟政策開始失效,有國家還在做生產擴張,而導致國家級破產。
在近幾次經濟衰退中,各國家使用各式經濟手段在刺激經濟,其成效不如以往。比較有效的反而是刺激消費,像是發消費卷還比較有效。
已有許多現象在說明,增加生產能力無法增加經濟力。因為經濟的限制已經轉到另一側,也就是消費。

自動化會影響經濟,這並不是直接性影響,而是間接性影響。
自動化直接影響的是生產能力。其實生產能力之所以大於消費能力,也是自動化帶來的。
即然自動化將生產能力推到極限,經濟應是極大化,何來退化之說?
問題出在失業率。經濟學告訴我們,近代經濟的失業率,大約以2%失業率會產生1%的GDP下降。
就以Pepper引入為例,公司引入一台Pepper,差不多就是少一個低階員工需求。間接造成一個失業人口。
其他自動化機器也是,但因自動化程度不一,造成的不是直接一比一換算。
另外Pepper具生產能力(產生服務能力),但產生之消費很低。若Pepper每20台需求一個維護人員,也就是20台才產生一份消費。
但20台Pepper間接產生20個失業人口。以公司來看,生產力及支出並沒有下降。但從國家的角度來看,每台Pepper產生了19/20的失業人口。
失業人口的消費能力會縮減到基本生存所需,不會再擴大,失業人口越多,總體消費也會縮減,反應出來的,就是整體經濟退化。

其他自動化機器也一樣,自動化機器的核心就是電腦。
當我們生產的電腦/MCU越多,就代表自動化程度越高。不管是機械加工,或是資訊整理/計算,其實已經是離不開電腦了。
自動化程度只會不斷增加,間接其失業率也不斷增加。不幸的,自動化無法帶來太多的新職業,反而消減職業的速度更快。
這看來是一種惡性循環,除非我們轉成新的經濟模式。這也是"無條件基本收入"的背後推動主因。
但新經濟運作機制和現行經濟差異過大,有些還是反向而行,根本無法被人民接受。
短期內,只能看著經濟在扭曲的型式中運行。還是有太多人抱持生產力就等於經濟力的觀念在運作現代經濟。

2016年7月20日 星期三

CubeMX使用

正式使用CubeMX,在設定上很容易,通信也很好寫。FreeRTOS 變成內建,對電子工程師來說實在很方便,IO很快就可以產生所需信號。
但很多先進設備卻打不開來。加上HAL設定隔一層,實在不易追問題出在那。最後證明少了部分啟動。
不知是沒有做完,還是沒有說明。
看來一些高階設備,還是用傳統的方法做。

CubeMX真正的目的,是將MCU開發的目標轉成是軟體元件。這點和以前的DOS/Windows混合時代很像。
當時DOS程式工程師要寫很多暫存器動作程式。但在Windows時代,軟體元件才是開發的主要工作。
MCU設計,除了"效能"及"價格",現在能驅動多少裝置,能否很快使用也變成重點。
軟體元件除了附送原始碼,現已感到不足。因為太多電子工程師對軟體並不是很熟。
所以CubeMX成為中間的軟體元件整合,電子工程師不用再寫底層,拉元件就可以完成設定。
而RTOS也順勢進入,就算不懂,也很容易使用。
FatFs也是基本元件。
早期Bee說過RTOS+FatFs使MCU進入完整32位元世界並和PC程式互通。
這個願景在CubeMX中完整實現。
所以MCU工程師真正要做的是找出應用函式庫。而不需花時間做暫存器設定工作。
就如同DOS轉成Windows程式,這個趨勢是不可逆。

也如同過去時代一樣,有大量工程師轉不過來。沒有辦法,這是時代,沒跟上就是淘汰。

2016年7月11日 星期一

無條件基本收入第一步:全自動化農業政府

無條件基本收入為何無法實施?除了人的心理問題外,還有什麼條件未達成的?
查了維基"無條件基本收入"內容的條件為:
一、確保生存,允許人們參與社會
二、提供個人權益保障
三、無須任何條件即可獲得,自然也不排富
四、無對應的工作勞務付出
看來出在條件一上面。也就是發錢也不能保障到的話也是破功。
人的基本生存權,不外乎是吃及住二件事。
住的需求不比吃重要,所以首要解決吃飯問題。
以全國家來看,要所有人都有得吃,也就是糧食生產能力要大於人口,且不能私人擁有。
這個解法很簡單:全自動化國有農業生產。
全自動化農業,生產過程全自動化。目標在供應全國人口糧食。國家化經營。

再來是分配問題:這個需要身份證明。
先讓身份證有電子錢包功能。
每個月政府發薪水到身份證所在帳戶,然後人民再領錢買食物。

以國家來說,是有多發的薪水。
但會以國家產生之糧食回收多發的錢。
控制好發出的錢等於買回糧食的錢,淨效果等於沒有多發錢,所以不會影響現在經濟。

全自動化的原因是:科技需求,反正我們已是無法離開自動化,所以就直接推到底。
另外又可以解決人害怕自動化,直接看到自動化帶來的社會進步。

2016年6月29日 星期三

使用電腦習慣看積極度

有報導,從瀏覽器看員工積極度。
看完後,我發現人有習慣性。

積極的人會找工具。瀏覽器只是最常用的電腦軟體工具。
可以擴大來看,其他電腦工具也會有一樣的狀況。
有不少人從來就不會想去調整自己的工具。
而積極的人會去調整自己使用的工具。

不調整的狀況,並不是不調,而是沒有找到。事實上是有去找。
而不積極的人,根本就不去找,所以就沒有想到去做調整,就延用,不去想改善。

我除了找電腦輔助工具外,也安裝電腦使用率監視軟體。因為我要分析自己的使用狀況。
人都是被動的,往往不知自己在做什麼。安裝之後才知道原來自己是如何使用電腦。
除了自省外,也可以去追蹤自己做過那些事。
除了電腦,智慧手機也有安裝,很多電腦上沒記錄到的,其實是花在手機上。
至於隱私問題,我認為自己知道就好,因為不去面對,就不可能有改善,這確實是要克服。
若是自己都無法克服,更不可能去面對敵手。世界上多的是看不見的敵手。還是先克服自己為要。

經濟模式改變

1.工業社會轉成資訊社會
  資訊透明化
  代理消失
2.線性經濟轉成指數經濟
  免費是必然
  機器累積經驗
3.模式探索轉成創造模式
  產品規劃包括軟體
  市場模型以創造市場為主
  經濟模式模擬
  平台經濟

2016年6月17日 星期五

思考等級

0.有新知,看了就好:
沒有思考。對許多人來說思考是一件累人的事。因為沒有思考,所以記不住它的樣子。

1.有新知,只想它的好處或是只想它的壞處:
算是一種單方向思考,依自己喜好朝單向去思考。有思考,可以回想新知內容。至少有吸收。

2.有新知,想它的好處及壞處:
已知所有事都有二個面向。會去推估正反相效益。算是有比較全面性思考。可以推估出和新知相關的事,可以更深入去研究,取得完整的知識。

3.有新知,想它的系統長成怎樣:
知道事情皆不是只是外顯的樣子,外顯的只是系統的一部分。而外顯都是有目的,依據真正的目的,才可以推出系統的長像。推出系統後,再去抽取系統特性。除了完整了解新知外,可以利用來架構成新應用。也有可能利用取得之系統骨架模型套用於其他領域知識。

例子,對弈:
0. 只是玩
1. 我有什麼牌,開始了解牌的好壞
2. 對方有什麼牌?我要如何應對
2.5 對方以為我有什麼牌?我要如何處理比較弱的牌
3. 對方以為我以為他有什麼牌?將對方設定為具有思考等級2的人,再去套他的行為模式。每個人都有習慣性思考,利用其思考盲點去佈局以取得最大勝利。

2016年5月27日 星期五

回歸:無條件基本收入,是未來的希望

0. 離開
  身為自動化工程師,我的內心一直都很掙扎。我做的越多,失業的人越多。最後我也會失業,我到底還要做,還是不做。我就算不做,別人也會做我的工作,結果還是一樣。
  從我的專業角度找不到解,那換一個角度看呢?於是在一個偶然的機會,我可以轉到行銷工作,那就去看看,不知能有新的看法可以解。於是轉往行銷之路。
1. 問題仍無解
  行銷專業和工程差很多,看了不少書,其實我不是很喜行銷,倒是經濟學更感興趣。但我才發現,原來“錢”和我原先認知的差很多,也可以說現代經濟很危險很脆弱。
  但經濟無法解決自動化帶來的危機。我看到更差的未來。
2. 最差狀況?
  高度自動化下的社會,帶來高失業率。現在已經是負利率,還會更差到出現負稅率?我推估了最差狀況失業率可能到60%以上,所有失業者都領救濟金的狀況下,對政府來說,差不多等於是負稅率,超過一半以上的人口是要政府支出去養,其實差不多是負稅率的狀況了。
  高失業,引來高犯罪,因為人總要吃飯,沒有收入只好用非正當手段,常常就是犯罪。
  “機器戰警“電影就是描述這樣的世界,現在已經快要變成現實了,就在20年到30年的未來。
3. UBI(Unconditional Basic Income)出現
  近來北歐,英國及德國開始有經濟學家提出無條件基本收入,就是所有人都由政府發放基本薪水,要人民自我管理。因為政府在高失業/高犯罪下,反過來發放基本收入,人民自我管理可降低犯罪,另外還可以投入教育下一代,其實有助於人民水準提升。
4. UBI(Unconditional Basic Income)下的社會
  UBI主要是利用社會福利,將工業社會下的“錢奴”解放。工業社會,之所以失業人口易轉成犯罪人口,因為無法維持基本生存權。UBI則是提供基本生存權。失業人口有基本生存權,就沒有必要成為犯罪人口,多的時間可以投入教育,社會運動或是環境改善。而另有多的錢的需求者才會去上班。因為原先公司有基本薪資則是取消,因為本來這就是取代基本生存權。取而代之的是時薪工作者。因為本來國家稅收來自人民收入,變成轉成高公司稅。但這也合理,因為公司高度自動化,以機器取代人力,變成要反過來交出稅來。這對公司不利,因為工作者不是為了生存來上班,公司管理原則完全不同。
5. 即將到來的革命
  高度自動化科技推展,全球經濟皆衰退,高度開發國家只能實施UBI轉成新社會型態。但UBI下的社會有太多觀念和現在社會是反相的作法。不管是政客,企業都受到很大的衝擊,會造成革命。但時間並不允許,因為失業率提升下帶來的負效應,所有人民都受害。何時用,如何過度,變成政府的難題。
6. 收拾,回歸
  我所担心的事,有了解法。總算放下心中黑暗的大石。我本來就不是很合適做行銷,再下來就是收拾一下現在的工作,重新回到工程來。工程才是符合我的個性。
不過再來的是調整新的方向,往下個新社會做準備。

經濟衰退原因

個人整理原因有三:
1. 自動化:人力需求下降
2. 指數型經濟:公司數目下降
3. 軟體整合型硬體:產品種類下降

破壞性科技:人工智慧
 使用之場合人類無法再去做相同工作。部分能力,如資料收集等超越人類。成長能力為指數,而人類則是線性。取代大部分單調性工作。