i-Shanghai 2.0 – 早报

上海公共WiFi上网将不限时 – 早报 俞凯 姜丽钧 2015-03-06

上海i-Shanghai免费Wi-Fi全面升级到2.0,公共场所覆盖将由原来9类提升到15类,并取消原2小时使用限制。

■ i-Shanghai 升级后无需每次获得密码

■ 覆盖范围增公交站、社区服务中心等

上海i-Shanghai免费Wi-Fi全面升级到2.0,公共场所覆盖将由原来9类提升到15类,并取消原2小时使用限制。这是早报记者从昨天下午召开的上海市推进无线城市建设联席(扩大)会议上获得的信息。

通过 App 登录将提速

目前累计用过i-Shanghai的人次为330万,平均每10个上海人中就有一人用过。

据上海市经信委介绍,实施优化升级后,i-Shanghai将从原有的9类公共场所覆盖增加到15类场所,包括公共交通、商业街圈、公园绿地、旅游景点、会展中心、文化场馆、医疗机构、体育场馆、行政窗口、民政服务、科研院所、教育机构、公用事业、智慧城市地标及信息服务和文化创意产业集聚区等。今年的重点是扩大在本市社区文化、卫生、事务受理中心,公交车站以及公用事业服务网点的覆盖。到今年底将在原有450余处基础上再新增450处公共场所覆盖。预计到2020年底,覆盖规模将达约4000处,基本实现全市主要公共场所全覆盖。

早报记者从联席会议上了解到,i-Shanghai优化升级后带来的一大利好就是,用户每天免费上网将不限时长,原只能使用2小时的限制将被取消,还可同时支持手机、PC和平板电脑等多设备上网。为做好用户数据集中管理和客户服务工作,新建的第三方服务平台和400客服热线电话已与三大运营商服务系统实现对接,保证所有i-Shanghai场所服务界面统一和客户服务统一响应。

此外,i-Shanghai优化升级后,登录认证也更加便捷,在保留原有手机短信验证网页登录这一基本上网方式的基础上,新的i-Shanghai服务将增加手机App一键登录,注册用户无需每次获取密码,大约只需原来认证登录时间的1/10。

i-Shanghai推生活信息

早报记者从上海市经信委获悉,升级后的i-Shanghai不再仅仅是提供上网服务的链接窗口,而是被打造成了一个为市民生活服务的新门户。用户在使用i-Shanghai客户端登录成功后,即可看到i-Shanghai门户界面提供的三部分服务:

一是上海主要即时指标性信息汇聚与资讯查询,展示城市生活指数,涵盖天气、空气质量等生活指数及车牌警示价、油价等价格指数;

二是衣食住行商旅文等线上线下预订查询与购买,提供即时促销、游玩、会展、文艺活动等信息;

三是围绕生态圈提供各种增值服务,如购物、电影、交通、旅游、家政、健康及财经等。市经信委表示,i-Shanghai应用门户服务将不断丰富市民体验,努力打造成为上海市民必备的生活服务平台。

联席会议上透露,在宽带发展联盟已发布的6期《中国宽带速率状况报告》中,上海始终保持全国首位。截至2014年年底,4G网络已基本覆盖本市中心城区和郊区主要城镇中心区域,3G/4G用户总量超过了1400万。预计到今年年底,上海将基本实现4G网络全市域覆盖,3G/4G用户将达到1800万。

沪社保移动平台上线

早报记者近日从上海市人社局获悉,“上海社保移动服务平台”手机客户端已经上线。市民可通过下载客户端,查询个人权益记录(账户)、养老待遇,随时随地了解社会保险经办服务、政策法规等资讯。

该手机客户端由上海市人力资源和社会保障局所属上海市社会保险事业管理中心推出。具有个人权益记录(账户)查询、养老待遇查询、个人联系地址变更、服务网点查询和模拟计算等服务功能。

录入编辑:李琪


东非发现最古人属化石 可能改写人类进化时间表 可追溯至275万年至280万年前 – 南方都市报 2015-03-06

摘要:科学家4日在美国《科学》杂志上报告说,他们在东非发现了一块带着5颗完整牙齿的不完整下颌骨,这是迄今发现的最古老的人属化石,有可能改写人类的进化时间表。

带着5颗完整牙齿的不完整下颌骨。新华社

据新华社电记者林小春 科学家4日在美国《科学》杂志上报告说,他们在东非发现了一块带着5颗完整牙齿的不完整下颌骨,这是迄今发现的最古老的人属化石,有可能改写人类的进化时间表。

这块下颌骨2013年出土于埃塞俄比亚阿法尔州。分析表明,该化石可追溯至275万年至280万年前,比此前发现的最早的人属化石早了约40万年。由于有关化石极度缺乏,考古学家此前认为,人属可能直到230万年前或240万年前才从南方古猿中分化出来。

科学界认为人类与其他动物的分化发生在500万年至700万年前,此后的人类进化史又分为南方古猿与人属阶段。而人属又包括智人、能人等物种,但最终只有智人幸存,现在的人类属于晚期智人。而最具代表性的南方古猿化石是在埃塞俄比亚同一地区发现的“露西”,它生活在距今320万年前。

参与研究的亚利桑那州立大学人类起源研究所所长威廉·金贝尔当天在电话记者会上说:“了解我们的进化分支——— 人属出现的最重要时间段是300万年至200万年前。”

据金贝尔介绍,这块下颌骨化石只保存有左侧部分和5颗完整的牙齿,其牙齿与下巴的形状更像人属而不是同时期或更古老的南方古猿,说明它应该属于人属物种,但尚不清楚它属于一个已知人属物种,还是代表一个新的人属物种。

论文共同作者、宾夕法尼亚州立大学的埃琳·迪马乔说:“280万年前,人属物种生活在埃塞俄比亚阿法尔地区的开阔草原上,附近有湖泊、河流、活火山,可能还有活断层。”


广西“三狂厅长”陈秋华廉政会议上被带走 – 2015年03月06日 中国新闻网

http://news.ifeng.com/a/20150306/43285290_0.shtml

原标题:广西林业厅长陈秋华涉嫌严重违纪被调查

中新网南宁3月6日电(钟建珊)广西纪律监察网6日通报:广西壮族自治区林业厅厅长、党组书记陈秋华因涉嫌严重违纪,正在接受组织调查。

未经证实的消息透露,陈秋华于3月2日在广西壮族自治区政府召开的第三次廉政工作会议上,被纪委工作人员当场带走。随后,广西林业厅官方网站领导简介栏目上,关于陈秋华的简介被撤下。

此前,民间有多次关于陈秋华被调查的传言,陈被坊间一些人称为“三狂厅长”。

陈秋华,男,汉族,1964年7月出生,湖南娄底人,1996年11月加入中国共产党,1991年7月参加工作,国家财政部财政科学研究所财政学专业毕业,研究生学历,经济学博士,硕士生导师、教授

2009年,陈秋华担任广西壮族自治区林业厅厅长、党组书记。他历任广西自治区财政厅预算处副处长、处长,财政厅党组成员、副厅长,自治区审计厅党组书记、厅长,防城港市委副书记、防城港市人民政府代市长、市长。


中国漫画家作品为何在日获得好评 – 野岛刚 南方都市报 2015-03-06

去年,我翻译的第一本书出版了。书的名字叫做《中国人的人生》,是一部漫画,作者是云南昆明的漫画家李昆武。此书在中国也已出版,名为《从小李到老李》。当初,日本的出版社拜托我翻译它时,我本没打算接下这个任务。我从没有过想做笔译的愿望,而且自己的出书计划也已满满地排到了3年之后。平日的创作已经占据了绝大部分时间,令我无暇顾及其他工作。

但试着读了原著之后,我马上沉浸在了书中有趣的世界之中。这部漫画像是一本传记,回顾了生于1955年的作者从少年时代至今的丰富经历,大跃进、“文化大革命”、改革开放、过热经济等历史节点都贯穿在了作品之中。李昆武的父亲是一名党干部,但在“文革”时期被下放,与家人无法团聚。由于祖父与国民党有牵连,李昆武本人被划为了“黑五类”,导致他虽然加入了人民解放军,却迟迟无法成为党员。本书真实地描写了改革开放给中国带来的巨变。

我们平时所能读到的中国人传记,写的一般都是在经历了波澜壮阔的人生之后来到国外,面向欧美或日本读者撰写的作品,讲的并不是老百姓的故事。但是,出现在本书中的中国人与中国十分贴近真实。在这个日中两国间的相互理解十分必要的时代,我认为它非常值得日本人一读。

本书出版于2014年1月,日本多家杂志与报纸都对其进行了报道,获得了一定的好评。目前,日本的反华图书泛滥,其中大多数都是在进行表面层次的批判,很少能看到真正深入探寻中国社会真实状况的作品。我陆续收到了一些读过本书的读者来信,其内容如下。

“我第一次了解到了中国人的真实人生。与日本人不同,普通中国人的一生会经历许多重大变化。通过这本书我也开始理解,为什么中国政府一直在强调稳定的重要性,也明白了中国人支持这种观点的原因。”

“在‘文革’之前从同一条路走来的中国人,在改革开放之后,分成了顺应、想顺应却未能顺应,以及不愿顺应开放潮流的几类人。日本当时是‘一亿总中产’社会,人们不需要去思考这样的事情。而对中国人来说,一生中会面对很多次能够决定命运的选择。能知道这一点,是我读此书的巨大收获。”

看到读者发出这种感慨,我感到非常欣慰。因为在此之前,我自己也没有认真思考过“中国人的人生”,而这本书成为了我理解这一课题的契机。

日本政府每年都会举办“媒体艺术节”,这部作品被评为漫画作品优秀奖。接到邀请之后,李昆武从云南来到了日本。自从我在翻译本书时和他在云南见面以来,已经过去了2年时间,这次我又见到了他。

李昆武的作品在中国出版之后,在欧美也获得了极高评价。《从小李到老李》已被译为14种语言,获得了诸多奖项。他的其他作品也在法国大受欢迎。现在,李昆武已经成为了“国外知名度最高的中国漫画家”。

日中两国关系依然严峻,民众之间的相互感情也没有处在良好状态。在这种情况下,讲述“中国人的人生”的这部作品能在日本获得如此高的评价,从日本人对中国的理解与两国文化交流的角度来看,实在是一件可喜可贺的事情。

.END

Leave a comment

Filed under Electronics DIY Project

5 Nanodegree Programs Now Open – Udacity

5 Nanodegree Programs Now Open – Udacity

This month, choose your weapon to launch a new career: iOS, Front End, Full Stack, Data Analyst or Intro to Programming. But hurry! Enrollment closes on March 10.

iOS DeveloperPilot this brand new Nanodegree program.• Get prepared for a career as an iOS developer

• Create a mobile app from scratch to App Store

• Envision & create sophisticated iOS user interfacesEnrollment closes on March 10!

Intro to ProgrammingZero programming experience? Start right here. • Learn the absolute basics of programming

• Build your very own web page

• Develop a portfolio of programsEnrollment closes on March 10!

Data Analyst

Get career-ready for the booming data science field.• Learn to obtain, analyze, and report on data insights

• Obtain the most fundamental data science skills

Full Stack Web Dev

Transform yourself into a user-experience expert.• Build complex server-side web applications

• Write code to store your favorite movies on a movie trailer website Front-End Web Dev

Get career-ready to become a front-end web developer.

• Learn to build beautiful, responsive websites

• Become a force in HTML, CSS, and JavaScript

“The Nanodegree is the perfect balance between theory and application.”- Allan, Nanodegree graduate & entrepreneur

Learn how a built-by-industry Nanodegree can launch a new career in tech. Find out more.

.END

Leave a comment

Filed under Electronics DIY Project

Can Science Explain the Origin of Life? – Georgia Tech

Can Science Explain the Origin of Life? – Published on Mar 31, 2014


Darwin’s theory of biological evolution helps us understand how simple life forms can give rise to complex lifeforms, but how did the first reproducing creatures come about? The origin of life needs its own explanation.

Scientists don’t currently have a complete explanation for life’s origins, but different labs around the globe are looking into the idea that life may have emerged from chemistry. In this animation you will learn why they are studying this idea, and you’ll get to see a few of the fascinating things they have discovered.

Here are some links for further learning (organized by topic):

OVERVIEW OF CURRENT RESEARCH

Here David Deamer gives a wonderful overview of our current understanding of the origin of life. This hour long lecture is presented in clear language for all to follow:

SELF-ASSEMBLY

News article on the self assembly of gene-like columns: http://www.huffingtonpost.com/2013/02…

Video series on the self assembly of primitive cell membranes:

http://exploringorigins.org/fattyacid…

Video interview with chemist Jack Szostak. In it he goes over his work on self-assembling membranes and genes.

Scientific journal exploring molecules with self-assembly properties. (You need a subscription to the journal to get past the abstract)

http://www.ncbi.nlm.nih.gov/pubmed/19…

RNA SYNTHESIS

Video on John Sutherland’s production of RNA nucleotides

EARLY FOSSILS

David Attenborough explores the lives of early organisms found in the fossil record. This video explores the evolution of early organisms but does not go over the origin of the first living things.

METABOLIC PATHWAYS

This research explores a primitive metabolic pathway which could have easily formed through chemical evolution on the ancient earth (you need a subscription to the journal to get past the abstract) http://link.springer.com/article/10.1…

Websites for further learning:

This Interactive website outlines many of the discoveries made by life origin researchers.

http://exploringorigins.org/

This website explains the research goals and findings of the Center for Chemical Evolution at Georgia Tech:

http://centerforchemicalevolution.com/

.END

Leave a comment

Filed under Electronics DIY Project

FongDigiControl03 tdd notes

// *** testFongDuino03v2015mar06hkt1310.ino ****
// ********************************************************************
// FongDuino03 tlfong01.com 201feb07
// ********************************************************************
#include “Arduino.h”
#include “HardwareSerial.h”
#include <SPI.h>
#include <FongDigiOut03.h>
#include <FongDigiControl03.h>
#include <FongHardSerial03.h>
#include <FongBlueToothBase03.h>
#include <FongSpi03.h>8
#include <FongAdc03.h>
#include <FongIox03.h>
#include <FongKeyPad03.h>

/*
#include <Wire.h>
#include <FongAnaIn02.h>
#include <FongEeprom02.h>
#include <FongI2c02.h>
#include <FongBlueToothConnect02.h>
#include <FongTest02.h>
*/

enum InitNum {InitNum0 = 0, InitNum1 = 1, InitNum2 = 2, InitNum3 = 3};
enum TestNum {TestNum0 = 0, TestNum1 = 1, TestNum2 = 2, TestNum3 = 3, \
TestNum4 = 4, TestNum5 = 5, TestNum6 = 6, TestNum7 = 7};

void setup()
{
Serial.begin(9600);
}

void loop()
{

// FongDigiOut03 fdo1(InitNum0, TestNum0); // 2015mar05 OK

FongDigiControl03 fdc1(InitNum0, TestNum1); // 2015mar06 testing

// FongHardSerial03 fhs1(InitNum0, TestNum3); // 2015feb12 OK
// FongBlueToothBase03 fbtb1(InitNum0, TestNum4); // 2015feb26 OK
// FongSpi03 fspi1(InitNum0, TestNum4); // 2015feb27 OK
// FongAdc03 fadc1(InitNum0, TestNum5); // 2015feb21 OK
// FongIox03 fiox1(InitNum0, TestNum6); // 2015feb OK
// FongKeyPad03 fkp1(InitNum0, TestNum7); // 2015feb28 testing

// FongAnaIn02 fai1(InitNum0, TestNum0); // OK 2015jan22
// FongI2c02 fi2c1(InitNum0, TestNum7); // testing
// FongEeprom02 feep1(InitNum0, TestNum5); //To test later
// FongBlueToothConnect02 fbtc1(InitNum0, TestNum2); // To test later
// FongTest02 ft1(Init0, Test0); // To test later

while (true) { };
}

// *** End ***


Begin FongDigiControl03::testDigiControl(), … >>>>

+++ DigiControl Test Select Menu +++
+++ Current Psu Num = 0 +++
+++ Current Btm Num = 0 +++
+++ Current Spi Select Pin Num = 0 +++
0 = FongDigiOut03::testDigiOut(). >>>>
1 = Change Psu num. >>>>
2 = Change Btm num. >>>>
3 = Change Spi Select Pin num. >>>>
4 = Switch Off PSU. >>>>
5 = Switch On PSU >>>>
6 = Enable BlueTooth AT command mode. >>>>
7 = Enable BlueTooth wireless command mode.. >>>>
8 = Enable Spi Select Pin. >>>>
9 = Disable Spi Select Pin. >>>>
a = Reserved. >>>>
m = Menu. >>>>
h = Help. >>>>
x = Exit. >>>>

DigitalControl Test Select = ? >>>>
DigitalControl Test Select = 1 >>>>

*** Select PSU num, …
0 = PSU 0
1 = PSU 1
2 = PSU 2
Enter PSU Num, …
PSU number = 2

DigitalControl Test Select = ? >>>>
DigitalControl Test Select = >>>>

DigitalControl Test Select = ? >>>>
DigitalControl Test Select = m >>>>

+++ DigiControl Test Select Menu +++
+++ Current Psu Num = 2 +++
+++ Current Btm Num = 0 +++
+++ Current Spi Select Pin Num = 0 +++
0 = FongDigiOut03::testDigiOut(). >>>>
1 = Change Psu num. >>>>
2 = Change Btm num. >>>>
3 = Change Spi Select Pin num. >>>>
4 = Switch Off PSU. >>>>
5 = Switch On PSU >>>>
6 = Enable BlueTooth AT command mode. >>>>
7 = Enable BlueTooth wireless command mode.. >>>>
8 = Enable Spi Select Pin. >>>>
9 = Disable Spi Select Pin. >>>>
a = Reserved. >>>>
m = Menu. >>>>
h = Help. >>>>
x = Exit. >>>>

DigitalControl Test Select = ? >>>>
DigitalControl Test Select = 5 >>>>

DigitalControl Test Select = ? >>>>
DigitalControl Test Select = 4 >>>>

DigitalControl Test Select = ? >>>>
DigitalControl Test Select = 5 >>>>

DigitalControl Test Select = ? >>>>
DigitalControl Test Select = 4 >>>>

DigitalControl Test Select = ? >>>>
DigitalControl Test Select = 5 >>>>

DigitalControl Test Select = ? >>>>
DigitalControl Test Select = m >>>>

+++ DigiControl Test Select Menu +++
+++ Current Psu Num = 2 +++
+++ Current Btm Num = 0 +++
+++ Current Spi Select Pin Num = 0 +++
0 = FongDigiOut03::testDigiOut(). >>>>
1 = Change Psu num. >>>>
2 = Change Btm num. >>>>
3 = Change Spi Select Pin num. >>>>
4 = Switch Off PSU. >>>>
5 = Switch On PSU >>>>
6 = Enable BlueTooth AT command mode. >>>>
7 = Enable BlueTooth wireless command mode.. >>>>
8 = Enable Spi Select Pin. >>>>
9 = Disable Spi Select Pin. >>>>
a = Reserved. >>>>
m = Menu. >>>>
h = Help. >>>>
x = Exit. >>>>

DigitalControl Test Select = ? >>>>
DigitalControl Test Select = 6 >>>>

DigitalControl Test Select = ? >>>>
DigitalControl Test Select = 7 >>>>

DigitalControl Test Select = ? >>>>
DigitalControl Test Select = 6 >>>>

DigitalControl Test Select = ? >>>>
DigitalControl Test Select = 7 >>>>

DigitalControl Test Select = ? >>>>
DigitalControl Test Select = m >>>>

+++ DigiControl Test Select Menu +++
+++ Current Psu Num = 2 +++
+++ Current Btm Num = 0 +++
+++ Current Spi Select Pin Num = 0 +++
0 = FongDigiOut03::testDigiOut(). >>>>
1 = Change Psu num. >>>>
2 = Change Btm num. >>>>
3 = Change Spi Select Pin num. >>>>
4 = Switch Off PSU. >>>>
5 = Switch On PSU >>>>
6 = Enable BlueTooth AT command mode. >>>>
7 = Enable BlueTooth wireless command mode.. >>>>
8 = Enable Spi Select Pin. >>>>
9 = Disable Spi Select Pin. >>>>
a = Reserved. >>>>
m = Menu. >>>>
h = Help. >>>>
x = Exit. >>>>

DigitalControl Test Select = ? >>>>
DigitalControl Test Select = 2 >>>>

*** Select BlueTooth Device num, …
0 = Btm 0
1 = Btm 1
2 = Btm 2
Enter BlueTooth Device Num, …
Btm number = 1

DigitalControl Test Select = ? >>>>
DigitalControl Test Select = >>>>

DigitalControl Test Select = ? >>>>
DigitalControl Test Select = 6 >>>>

DigitalControl Test Select = ? >>>>
DigitalControl Test Select = 7 >>>>

DigitalControl Test Select = ? >>>>
DigitalControl Test Select = 6 >>>>

DigitalControl Test Select = ? >>>>
DigitalControl Test Select = 7 >>>>

DigitalControl Test Select = ? >>>>
DigitalControl Test Select = 2 >>>>

*** Select BlueTooth Device num, …
0 = Btm 0
1 = Btm 1
2 = Btm 2
Enter BlueTooth Device Num, …
Btm number = 2

DigitalControl Test Select = ? >>>>
DigitalControl Test Select = >>>>

DigitalControl Test Select = ? >>>>
DigitalControl Test Select = 6 >>>>

DigitalControl Test Select = ? >>>>
DigitalControl Test Select = 7 >>>>

DigitalControl Test Select = ? >>>>
DigitalControl Test Select = x >>>>

End FongDigiControl03::testDigiControl(), … >>>>


// *** FongDigiControl03.h ***

// ********************************************************************
// FongDigiControl03 tlfong01.com 2015feb21hkt1728
// ********************************************************************

#ifndef FongDigiControl03_h
#define FongDigiControl03_h

#include “Arduino.h”
#include <FongDigiOut03.h>

class FongDigiControl03 : public FongDigiOut03

{
public:

// *** Constructor ********************************************************

FongDigiControl03(int8_t initNum, int8_t testNum);

int8_t _initNum;
int8_t _testNum;

enum InitNum {InitNum0 = 0, InitNum1 = 1, InitNum2 = 2, InitNum3 = 3};
enum TestNum {TestNum0 = 0, TestNum1 = 1, TestNum2 = 2, TestNum3 = 3};

// *** Config enum ********************************************************

enum PsuDigiOutPinNum {DigiOutPinPsu0 = DigiOutPinNum0, DigiOutPinPsu1 = DigiOutPinNum1, \
DigiOutPinPsu2 = DigiOutPinNum2};

enum BtmDigiOutPinNum {DigiOutPinBtm0 = DigiOutPinNum3, DigiOutPinBtm1 = DigiOutPinNum4, \
DigiOutPinBtm2 = DigiOutPinNum5};

enum SpiDigiOutPinNum { DigiOutPinSpiSs0 = DigiOutPinNum8, DigiOutPinSpiSs1 = DigiOutPinNum9, \
DigiOutPinSpiSs2 = DigiOutPinNum10, DigiOutPinSpiSs3 = DigiOutPinNum11, \
DigiOutPinSpiSs4 = DigiOutPinNum12, DigiOutPinSpiSs5 = DigiOutPinNum13, \
DigiOutPinSpiSs6 = DigiOutPinNum14, DigiOutPinSpiSs7 = DigiOutPinNum15, \
DigiOutPinSpiSs8 = DigiOutPinNum16, DigiOutPinSpiSs9 = DigiOutPinNum17, \
DigiOutPinSpiSs10 = DigiOutPinNum18};

// *** Univerasl enum *****************************************************

enum PauseTime {MilliSec10 = 10, MilliSec100 = 100, MilliSec500 = 500, MilliSec1000 = 1000, \
MilliSec2000 = 2000, MilliSec4000 = 4000};

// *** Init and Test functions *****************************************************

void initDigiControl();
void testDigiControl();

// *** Menu functions *****************************************************

enum MenuNum {FirstSelectNum = 0, LastSelectNum = 13, TotalSelectNum = 14};
void printDigiControlSelectMenu(int8_t firstSelectNum, int8_t lastSelectNum);
void printDigiControlSelectMenu();

char selectChar;
char askDigiControlSelectChar(String askString);

void exeDigiControlSelectFunction();

// *** Blink LED and buzzer functions *************************************

void blinkLed(unsigned long highTime, unsigned long lowTime, unsigned long repeatCount);
void blinkLed();
void beep();

// *** PSU (Power Supply Unit) functions **********************************

enum PsuNum {PsuNum0 = 0, PsuNum1 = 1, PsuNum2 = 2, TotalPsuNum = 3};

int8_t psuNum;
int8_t askPsuNum();
int8_t psuNumToDigiOutPinNumArray[TotalPsuNum];

void switchOnPsu(int8_t psuNum);
void switchOffPsu(int8_t psuNum);
void resetPsu(int8_t psuNum);
void testPsu(int8_t psuNum);

// *** BTM (BlueTooth Module) functions **********************************

enum BtmNum {BtmNum0 = 0, BtmNum1 = 1, BtmNum2 = 2, TotalBtmNum = 3};

int8_t btmNum;
int8_t askBtmNum();
int8_t btmNumToDigiOutPinNumArray[TotalPsuNum];
void enableBlueToothDeviceAtCommandMode(int8_t btmNum);
void enableBlueToothDeviceWirelessCommunicationMode(int8_t btmNum);

// *** SPI ***

enum SpiSsNum { SpiSsPinNum0 = 0, SpiSsPinNum1 = 1, SpiSsPinNum2 = 2, SpiSsPinNum3 = 3, \
SpiSsPinNum4 = 4, SpiSsPinNum5 = 5, SpiSsPinNum6 = 6, SpiSsPinNum7 = 7, \
SpiSsPinNum8 = 8, SpiSsPinNum9 = 9, SpiSsPinNum10 = 10, TotalSpiSsPinNum = 11};

int8_t spiSsPinNum;
int8_t askSpiSsPinNum();
int8_t spiSsPinNumToDigiOutPinNumArray[TotalSpiSsPinNum];
void enableSpiSlaveSelectPin(int8_t spiSsPinNum);
void disableSpiSlaveSelectPin(int8_t spiSsPinNum);
private:
};

#endif

// *** End ***


// *** FongDigiControl03.cpp ***

// ********************************************************************
// FongDigiControl03 tlfong01.com 2015feb21hkt1728
// ********************************************************************

#include “Arduino.h”
#include <FongDigiControl03.h>

// *** Constructor ***

FongDigiControl03::FongDigiControl03(int8_t initNum, int8_t testNum) : FongDigiOut03(initNum, testNum)

{
_initNum = initNum;
_testNum = testNum;

// Serial.println(F(“Begin FongDigiControl03::FongDigiControl03(), … >>>>>>>>>”));

if (initNum <= 0)
initDigiControl();

if (testNum <= TestNum1)
{
blinkLed();
testDigiControl();
}

// Serial.println(F(“End FongDigiControl03::FongDigiControl03(), … >>>>>>>>>”));
}

// *** Menu and Select test functions *****************************************

// *** Init and Test function ***

void FongDigiControl03::initDigiControl()
{
psuNum = 0;
btmNum = 0;
spiSsPinNum = 0;

psuNumToDigiOutPinNumArray[PsuNum0] = DigiOutPinPsu0;
psuNumToDigiOutPinNumArray[PsuNum1] = DigiOutPinPsu1;
psuNumToDigiOutPinNumArray[PsuNum2] = DigiOutPinPsu2;

btmNumToDigiOutPinNumArray[BtmNum0] = DigiOutPinBtm0;
btmNumToDigiOutPinNumArray[BtmNum1] = DigiOutPinBtm1;
btmNumToDigiOutPinNumArray[BtmNum2] = DigiOutPinBtm2;

spiSsPinNumToDigiOutPinNumArray[SpiSsPinNum0] = DigiOutPinSpiSs0;
spiSsPinNumToDigiOutPinNumArray[SpiSsPinNum1] = DigiOutPinSpiSs1;
spiSsPinNumToDigiOutPinNumArray[SpiSsPinNum2] = DigiOutPinSpiSs2;
spiSsPinNumToDigiOutPinNumArray[SpiSsPinNum3] = DigiOutPinSpiSs3;
spiSsPinNumToDigiOutPinNumArray[SpiSsPinNum4] = DigiOutPinSpiSs4;
spiSsPinNumToDigiOutPinNumArray[SpiSsPinNum5] = DigiOutPinSpiSs5;
spiSsPinNumToDigiOutPinNumArray[SpiSsPinNum6] = DigiOutPinSpiSs6;
spiSsPinNumToDigiOutPinNumArray[SpiSsPinNum7] = DigiOutPinSpiSs7;
spiSsPinNumToDigiOutPinNumArray[SpiSsPinNum8] = DigiOutPinSpiSs8;
spiSsPinNumToDigiOutPinNumArray[SpiSsPinNum9] = DigiOutPinSpiSs9;
spiSsPinNumToDigiOutPinNumArray[SpiSsPinNum10] = DigiOutPinSpiSs10;

testPsu(PsuNum0);
testPsu(PsuNum1);
testPsu(PsuNum2);
}

void FongDigiControl03::testDigiControl()
{
Serial.println(F(“\nBegin FongDigiControl03::testDigiControl(), … >>>>”));

selectChar = ‘m';
while (selectChar != ‘x’)
{
exeDigiControlSelectFunction();
selectChar = askDigiControlSelectChar(“DigitalControl Test Select”);
}
Serial.println(F(“\nEnd FongDigiControl03::testDigiControl(), … >>>>”));
}

// *** print select menu, execute selection ***

void FongDigiControl03::printDigiControlSelectMenu()
{
printDigiControlSelectMenu(FirstSelectNum, LastSelectNum);
}

char FongDigiControl03::askDigiControlSelectChar(String askString)
{
char selectChar;
char dummyChar;

// *** flush read buffer ***
while (Serial.available() > 0) {dummyChar = Serial.read();} // flush

// *** get user selection ***
Serial.print(F(“\n”));
Serial.print(askString);
Serial.println(F(” = ? >>>> “));

while (Serial.available() == false) {} // wait for char
selectChar = Serial.read();
Serial.print(F(“”));
Serial.print(askString);
Serial.print(F(” = “));
Serial.print(selectChar);
Serial.println(F(” >>>>”));
return selectChar;
}

int8_t FongDigiControl03::askPsuNum()
{
char dummyReadChar;
char psuNumChar;
int psuNum;

Serial.print(F(“\n*** Select PSU num, …”));
Serial.print(F(“\n 0 = PSU 0″));
Serial.print(F(“\n 1 = PSU 1″));
Serial.print(F(“\n 2 = PSU 2″));

// *** flush read buffer ***
while (Serial.available() > 0) {dummyReadChar = Serial.read();} // flush
Serial.print(F(“\nEnter PSU Num, … \n”));
while (Serial.available() == false) { };
psuNumChar = Serial.read();
psuNum = psuNumChar – ‘0’;
return psuNum;
}

int8_t FongDigiControl03::askBtmNum()
{
char dummyReadChar;
char btmNumChar;
int btmNum;

Serial.print(F(“\n*** Select BlueTooth Device num, …”));
Serial.print(F(“\n 0 = Btm 0″));
Serial.print(F(“\n 1 = Btm 1″));
Serial.print(F(“\n 2 = Btm 2″));

// *** flush read buffer ***
while (Serial.available() > 0) {dummyReadChar = Serial.read();} // flush
Serial.print(F(“\nEnter BlueTooth Device Num, … \n”));
while (Serial.available() == false) { };
btmNumChar = Serial.read();
btmNum = btmNumChar – ‘0’;
return btmNum;
}

int8_t FongDigiControl03::askSpiSsPinNum()
{
char dummyReadChar;
char spiSsPinNumChar;
int spiSelectPinNum;

Serial.print(F(“\n*** Select SPI Select pin num, …”));
Serial.print(F(“\n 0 = SpiSsPin 0″));
Serial.print(F(“\n 1 = SpiSsPin 1″));
Serial.print(F(“\n 2 = SpiSsPin 2″));
Serial.print(F(“\n 3 = SpiSsPin 3″));
Serial.print(F(“\n 4 = SpiSsPin 4″));
Serial.print(F(“\n 5 = SpiSsPin 5″));
Serial.print(F(“\n 6 = SpiSsPin 6″));
Serial.print(F(“\n 7 = SpiSsPin 7″));
Serial.print(F(“\n 8 = SpiSsPin 8″));
Serial.print(F(“\n 9 = SpiSsPin 9″));
Serial.print(F(“\n a = SpiSsPin 10″));

// *** flush read buffer ***
while (Serial.available() > 0) {dummyReadChar = Serial.read();} // flush
Serial.print(F(“\nEnter SPI Select pin num, … \n”));
while (Serial.available() == false) { };

spiSsPinNumChar = Serial.read();

if ((spiSsPinNumChar == ‘0’) || (spiSsPinNumChar <= ‘9’))
spiSelectPinNum = spiSsPinNumChar – ‘0’;
else if ((spiSsPinNumChar == ‘a’) || (spiSsPinNumChar <= ‘z’))
spiSelectPinNum = (spiSsPinNumChar – ‘a’) + 10;
else
spiSelectPinNum = 0;
return spiSelectPinNum;
}

// *** Psu functions ********************************************************

void FongDigiControl03::switchOnPsu(int8_t psuNum)
{
int8_t digiOutPinNum = psuNumToDigiOutPinNumArray[psuNum];
// Serial.print(F(“digiOutPinNum = “));
// Serial.print(digiOutPinNum);
setDigiOutPinLow(digiOutPinNum);
delay(MilliSec100);
}

void FongDigiControl03::switchOffPsu(int8_t psuNum)
{
int8_t digiOutPinNum = psuNumToDigiOutPinNumArray[psuNum];
// Serial.print(F(“digiOutPinNum = “));
// Serial.print(digiOutPinNum);
setDigiOutPinHigh(digiOutPinNum);
delay(MilliSec100);
}

void FongDigiControl03::resetPsu(int8_t psuNum)
{
switchOffPsu(psuNum);
delay(MilliSec500);
switchOnPsu(psuNum);
delay(MilliSec500);

switchOffPsu(psuNum);
delay(MilliSec500);
switchOnPsu(psuNum);
delay(MilliSec500);
}

void FongDigiControl03::testPsu(int8_t psuNum)
{
//Serial.print(F(“Power off, … “));
switchOffPsu(psuNum);
delay(MilliSec200);
//Serial.print(F(“Power on, … “));
switchOnPsu(psuNum);
delay(MilliSec200);
// Serial.print(F(“Power off, … “));
switchOffPsu(psuNum);
delay(MilliSec200);
}

// *** BlueTooth Functions ****************************************************

void FongDigiControl03::enableBlueToothDeviceAtCommandMode(int8_t btmNum)
{
int8_t digiOutPinNum = btmNumToDigiOutPinNumArray[btmNum];
setDigiOutPinHigh(digiOutPinNum);
delay(MilliSec100);
}

void FongDigiControl03::enableBlueToothDeviceWirelessCommunicationMode(int8_t btmNum)
{
int8_t digiOutPinNum = btmNumToDigiOutPinNumArray[btmNum];
setDigiOutPinLow(digiOutPinNum);
delay(MilliSec100);
}

// *** SPI Select Pin Functions ****************************************************

void FongDigiControl03::enableSpiSlaveSelectPin(int8_t spiSsPinNum)
{
int8_t digiOutPinNum = spiSsPinNumToDigiOutPinNumArray[spiSsPinNum];
setDigiOutPinLow(digiOutPinNum);
// delay(MilliSec100);
}

void FongDigiControl03::disableSpiSlaveSelectPin(int8_t spiSsPinNum)
{
int8_t digiOutPinNum = spiSsPinNumToDigiOutPinNumArray[spiSsPinNum];
setDigiOutPinHigh(digiOutPinNum);
// delay(MilliSec100);
}

// *** Blink LED **************************************************************

void FongDigiControl03::blinkLed(unsigned long highTime, unsigned long lowTime, unsigned long repeatCount)
{
repeatPulseDigiOutPinSingle(DigiOutPinNumLed, highTime, lowTime, repeatCount);
}

void FongDigiControl03::blinkLed()
{
repeatPulseDigiOutPinSingle(DigiOutPinNumLed, MilliSec125, MilliSec250, Twice);
}

void FongDigiControl03::beep()
{
blinkLed();
}

// *** Print select menu ******************************************************
void FongDigiControl03::printDigiControlSelectMenu(int8_t firstSelectNum, int8_t lastSelectNum)
{
String selectMenuTitle = “DigiControl Test Select Menu”;

const char menu0[] PROGMEM = “0 = FongDigiOut03::testDigiOut(). >>>>”;
const char menu1[] PROGMEM = “1 = Change Psu num. >>>>”;
const char menu2[] PROGMEM = “2 = Change Btm num. >>>>”;
const char menu3[] PROGMEM = “3 = Change Spi Select Pin num. >>>>”;
const char menu4[] PROGMEM = “4 = Switch Off PSU. >>>>”;
const char menu5[] PROGMEM = “5 = Switch On PSU >>>>”;
const char menu6[] PROGMEM = “6 = Enable BlueTooth AT command mode. >>>>”;
const char menu7[] PROGMEM = “7 = Enable BlueTooth wireless command mode.. >>>>”;
const char menu8[] PROGMEM = “8 = Enable Spi Select Pin. >>>>”;
const char menu9[] PROGMEM = “9 = Disable Spi Select Pin. >>>>”;
const char menu10[] PROGMEM = “a = Reserved. >>>>”;
const char menu11[] PROGMEM = “m = Menu. >>>>”;
const char menu12[] PROGMEM = “h = Help. >>>>”;
const char menu13[] PROGMEM = “x = Exit. >>>>”;

const char * const selectMenu[] PROGMEM = {
menu0, menu1, menu2, menu3, menu4, \
menu5, menu6, menu7, menu8, menu9, \
menu10, menu11, menu12, menu13};

Serial.print(F(“\n+++ “));
Serial.print(selectMenuTitle);
Serial.println(F(” +++”));

Serial.print(F(“+++ Current Psu Num = “));
Serial.print(psuNum);
Serial.println(F(” +++”));

Serial.print(F(“+++ Current Btm Num = “));
Serial.print(btmNum);
Serial.println(F(” +++”));

Serial.print(F(“+++ Current Spi Select Pin Num = “));
Serial.print(spiSsPinNum);
Serial.println(F(” +++”));

for (int8_t i = firstSelectNum; i <= lastSelectNum; i++)
{
Serial.println(selectMenu[i]);
}
}

// *** Execute selection function *********************************************
void FongDigiControl03::exeDigiControlSelectFunction()
{
switch (selectChar)
{
case ‘0’:
testDigiOut();
break;
case ‘1’:
psuNum = askPsuNum();
Serial.print(F(“PSU number = “));
Serial.println(psuNum);
break;
case ‘2’:
btmNum = askBtmNum();
Serial.print(F(“Btm number = “));
Serial.println(btmNum);
break;
case ‘3’:
spiSsPinNum = askSpiSsPinNum();
Serial.print(F(“Spi number = “));
Serial.println(spiSsPinNum);
break;
case ‘4’:
switchOffPsu(psuNum);
break;
case ‘5’:
switchOnPsu(psuNum);
break;
case ‘6’:
enableBlueToothDeviceAtCommandMode(btmNum);
break;
case ‘7’:
enableBlueToothDeviceWirelessCommunicationMode(btmNum);
break;
case ‘8’:
enableSpiSlaveSelectPin(spiSsPinNum);
break;
case ‘9’:
disableSpiSlaveSelectPin(spiSsPinNum);
break;
case ‘m':
printDigiControlSelectMenu();
break;
case ‘h':
Serial.print(“Sorry, no help available, …”);
break;
// default:
// Serial.print(“Sorry, no such option, …”);
// break;
}
selectChar = ‘m';
}
// *** End ***

.END

Leave a comment

Filed under Electronics DIY Project

Arduino Mega2560R2 System 2 assembly notes

arduino_mega_2_2015mar0601

Arduino Mega2560R2 System 2 assembly notes

.END

Leave a comment

Filed under Electronics DIY Project

我的在街上跌倒的老母 – 任建峰

我老母教仔 – 任建峰 蘋果日報 2015年03月06日

作者任建峰與他的母親。任建峰提供圖片

在香港,當大家討論政改、一國兩制或其他類似的政治議題時,總會有一些所謂「務實派」的聲音。他們的論述大概是:「大家要面對現實,看清楚誰是主、誰是次。在這情況下,有些事是爭取不到的,就無謂搞下去,應該務實地接受。如果能夠的話,就即管研究能否在已被既定的框架內嘗試尋找空間。」聽到這些看法,不禁使我想起我老母怎樣教我這個不肖子。大家請不要驚訝:我老母與我同樣都是粗豪的人,所以我相信她絕不介意我形容她為「老母」!

首先,當我是個小學生時,老母的口頭禪是,「事事要盡力做就可以了。」她還會說,「如果你盡了力仍然考第尾,這會比我見到你沒有盡力而考到第一更開心。」老母亦是一個有堅持的人。我當時讀的小學曾經有個規條,就算是冬天都要男學生在12℃以下才能穿長褲上學,否則就要繼續穿短褲。有一年的冬天特別冷,長期徘徊在13、14℃左右,而我與很多男同學穿短褲時都覺得很辛苦。很多家長對這個「12℃」規矩都敢怒不敢言,擔心投訴只會徒勞無功。但老母無懼地走上學校,與校方理論,並問「為何你們的男老師每一位都在穿長褲禦寒,但就要小朋友長期捱冷?」校方最後讓步了。

移民到澳洲後,我們的家境出了問題。老母為了頭家,真的是捱得很辛苦。當我還是中學生時,不少她在澳洲的朋友及從香港打長途電話找她的親友都給她一個清晰的建議。他們說,老母又要養家、又要供樓(當時在澳洲在家境轉下前買下的房子為了我生父的官非二按了給當地的法援署,所以變成負資產,因此老母要夾硬繼續供下去)、又要幫「衰佬」(即我生父)還他的街外債,實在太辛苦了。所以,親友們覺得老母應該務實一點,盡快推我出來社會做事,幫補家計。老母每一次都很堅定地回覆,說

她的兒子是讀書的材料,她無論如何都會為了兒子撐到底

。同時,老母亦會教導我說,叫我不要擔心任何事,只要不放棄及盡自己的力就可以了;

無論我最終學業如何,她都不會後悔

如果我老母以「務實」的態度養大我,在小學時體弱多病的我一定會冷到入醫院。

如果她「務實」,我就不會最終拿着法律學士及經濟碩士畢業。

如果她「務實」,我現在應該會是在墨爾本「發霉」,而不是回流香港做律師、不會參與2014年律師會「白皮書之林新強事件」、亦不會參與其後的公民社會運動。

沒有老母的堅持,我甚麼都不是。從我老母,我學懂了其實成敗並不重要,最重要是我們為了對的事是否有嘗試盡力過、堅持過。

我同樣相信,那些要求香港人在政改、一國兩制等問題上要「務實」的人士,有不少都應該是為人父母的。他們真的是教他們的子女

「對與錯不要緊,真與假不要緊,最緊要是『務實』」?

他們真的是教他們的子女

「如果你被欺負,就要『務實』一點,接受欺負者對你的對待,而如果這個人是強大的,你甚至可以討他歡心,然後與他一起去鋤弱扶強」?

他們是否教他們的子女「如果老師效法某位立法會議員,說中華人民共和國是1947年成立,你就要『務實』地照『跟』,因為如果你挑戰她的權威而說『其實是1949年』,你就是找麻煩了」?

如果這些政治上要求港人要「務實」的人士其實私底下不是這樣教自己子女的話,他們就是虛偽的騙子,愧對香港人。

如果他們真的是這樣教子女的話,就恕我不客氣地說,他們實在不懂甚麼是「家教」!香港人,我們真的應該「務實」地相信或效法這些虛偽或不懂甚麼是「家教」的「在街上跌倒的人」嗎?

我老母雖然已經飽受癌魔折磨,但她有時都仍能短暫戰勝身體上的極度痛楚,有力地用「在街上跌倒的人」的簡短版來形容這群「務實」人。

幸好,我老母並不是一個「在街上跌倒的人」。她粗豪,但她不虛偽,亦十分懂得甚麼是「家教」。希望大家都能抱着像我老母所擁有的那份堅持,在香港的關鍵問題上能夠不介意有成果與否,憑着良知去為對的事盡力爭取。

趁我老母還勉強能夠讀我寫的文章,請容許我說一聲「多謝老母!

任建峰


創意創新,想創你心 – 何慶基 蘋果日報 2015年03月06日

曾俊華在財政預算案中指要投資培養本地藝術行政人員到海外受訓。資料圖片

如果花錢可帶來文化興旺,那麼富庶產油國定必是國際文化中心。

財大氣粗如阿聯酋花天文數字建阿布扎比文化區,請來星級建築師蓋羅浮宮、古金漢分館,給人印象只是買人家的文化穿金掛銀自我裝飾,阿聯酋本身的文化藝術,如果有人承認其存在的話,只是接近消失於無形的靠邊站。

仍深受殖民思維影響的香港文化官僚機制,在文化發展上習慣以「外國專家」馬首是瞻。是次預算案跟上國際潮流大搞創意工業,本無半點新意,但對本地人才培訓投資之偏重,倒令人側目。例如培養本地藝術行政人員於海外受訓,確實針對本地培育文化管理人才欠缺於大型文化機構實習的困境。

問題是,只是針對文化發展其中一個環節,沒有考慮文化發展中整個文化生態圈環環相扣的關係,有用嗎?當這批受了專業訓練的人回港後,本地文化機制未能有足夠空間讓他們繼續發展,花錢培訓只會為已是怨氣沖天的香港再添怨憤,何苦呢?

特區政府文化發展政策的最大詛咒,是所有措舉均以個別計劃推行,未能從文化生態全面發展的宏觀角度來看那串連關係。現在國際文化事業競爭激烈,每天都有成千上萬的展覽開幕,於海外多搞個展覽有何影響?除非能夠有脫穎而出的獨特策展、有良好的國際文化及傳媒網絡,足以有說服力的把香港藝術擺上國際舞台,否則最後又是自己人剪綵拍照飲酒官員交報告後嘻嘻哈哈收場。就算是在本地推廣,沒有藝評、藝術教育的中介,公眾不知道也不明白,無論創作者有多少心思誠意,觀眾仍寥寥可數,遑論產生深層的文化討論和沖擊,最後仍是孤單的自說自話。韓國時裝近年的熱潮,不單是個別設計師的成就,而是整體韓國文化特別是韓劇的推動。見樹木不見森林的只集中個別項目,最終注定失敗。

願意花錢卻對本地文化實況欠了解,即使有良好意願,也未能幫助真正有需要的團體。

例如配對補助金,當團體贏取私人贊助,政府會給予同額資助,這鼓勵私人贊助的政策,在歐美普遍採用。

但在香港私人贊助並不普遍,主要贊助還是大型機構如馬會、大集團等。贏取這類大機構贊助,遞交的資料文件和申請過程必須相當專業,除此之外還需要人脈關係網絡。

對那些只有幾個甚至沒有全職員工的小藝團,找這類贊助難若登天,最後又是那些有人脈有專業運作架構的大機構贏得最多等額資助,「富者越富」這香港社會營運邏輯持續落實。現時九大藝團已用了大部份支持本地藝術的撥款,剩下的「廚餘」,少得可憐的分給無數半餓不死的中小藝團。它們可以持續存在已是萬幸,根本不能奢望進一步成長。藝術生態圈應有的由小轉中變大的逐步成長生態環出現斷層。因為政策未能針對生態圈的不平衡,令文化圈交替成長的發展一直未能落實。

令人擔憂的是政府在支援藝術上混入政治考慮,運動員於海外得獎,民政局定必大鑼大鼓予以慶賀。同樣屬民政局管轄的文化界,最近

反清拆菜園村的電影《N+N》屢於海外獲獎,

香港藝術工作者黃宇軒的媒體裝置作品「佔中打氣機」獲瑞士人權藝術組織「2015自由之花」首獎,

政府均隻字不提,雖然藝術工作者相信也不稀罕這些官方讚賞。只不過政策的偏頗,卻實難看

這態度背後反映出更大的問題,是政府對創意有多尊重,抑或還是政治先行?創意思維往往涉及把東西反轉重組,當中常會出現反叛、有些人眼中的「不正確」思維。當政府政策上要求人民「思想正確」時,這個政府根本沒資格談論創意這東西,而大學正好是社會思想、知識和創意的其中一個主要的發電機。觀乎近來政府對港大師生「不正確」思想的抨擊,反映出政府除了自行閹割外,還要思想上閹割整個香港。這也正是創意窒息的先兆。

如不能包容不同思維,包括所謂「不正確」思維,社會欠缺這基本的自由空間,投放多少錢發展文化藝術也是徒然。還在興高釆烈學人談創意、講創新,真是想創你們的心。

何慶基


工廈青年創業中心月租千元 供培訓資助 備顧問指路 – 明報 2015年03月06日 星期五

社創中心位於黃竹坑活化工廈 Genesis(圖),為協成行的出租物業。青協租金僅為市價三分之一。(劉焌陶攝)

香港青年協會的社會創新中心佔地8000方呎,將以相對低廉的租金租予年輕創業者,不少創業者都對此有興趣。

香港青年協會獲發展商以低價出租活化工廈,將成立一個約8000平方呎的社會創新中心,提供10個小型辦公室及一個容納25人的公用辦公區域予青年創業者,月租由每人1000元起,還有創業培訓及各領域的顧問提供意見。基層創業者還可參加青協為期3個月的創業培育計劃,學習創業之餘可獲總額2.1萬元資助,贏取創業比賽還可獲5萬元創業啟動金及免費租用辦公室一年。

25辦公位 10間標準房

青協社創中心位於黃竹坑活化工廈Genesis,為協成行的出租物業,青協項目經理周誌遠表示,他們與協成行簽了6年合約,租金僅為市價三分之一,連同管理費每月約5萬元。中心內有一個辦公大廳(共享空間),提供約25個辦公座位,每人每月1000元,還有約10間標準房,各可容納4至5人,每間房月租5000至6000元。中心配有茶水間、會議室及活動場地,所有租用者都可免費享用無線網絡、水電及影印傳真設備等。

包上網水電影印傳真

周誌遠預計中心將於5月啟用,3月尾便開始接受申請,18至35歲的青年創業者,只要所創事業與教育、健康、環保、長者及社會共融相關便可申請,初次創業者會優先獲批,租期最短3個月,最長兩年。周指出,除了低價辦公空間外,最重要的是中心將為創業者提供一系列培訓與指導,包括不時舉行工作坊等,另外還有法律、會計等專業顧問提供意見,創業者可在這空間內互相交流及啟發。

須教育健康環保長者共融事業

青協亦將推出一系列創業培育計劃,首波創業計劃為18歲至35歲基層青年而設,包括3個月商業培訓及創業比賽等,合資格參加者每月可獲7000元資助,名額共30人,周誌遠說,希望藉此讓有經濟壓力的年輕人,可在這段時間內完全投入學習創業。另有10個無資助名額提供予有意創業的非基層青年。培訓完結後,40人將組隊進行創業比賽,優勝隊伍將獲得5萬元創業啟動金及12個月青協社創中心辦公室免租期,最多10個優勝隊伍會在導師指導下實踐其商業計劃。

2009年成立的非政府組織「義游」,創辦人兼行政總監鄧緯榮表示將申請青協的共用辦公室,因他們現時在新蒲崗租了一個工廈辦公室,200呎空間月租5000元,其他雜費開支每月都需數千元,且10多個成員開會時會「迫爆」。


青協推千元月租辦公室 – 袁樂婷 蘋果日報 2015年03月06日

青協在黃竹坑活化工廈Genesis成立社會創新中心。

年輕人創業路荊棘滿途,高昂租金和經驗不足是最大障礙。青協在黃竹坑活化工廈Genesis成立社會創新中心,擬於今年五月起以最低一千元月租,讓有志創業的十八至三十五歲年輕人共用八千呎辦公室空間,同時提供創業培訓及資助。計劃即日起接受申請。

社創中心提供共享空間,年輕人可分租辦公室,每人月租一千元;另有可容納四至五人的標準房間,月租五千元起,兩者均可使用無線網絡及會議室等。計劃也為青年提供創業培訓,其後分組比賽,勝者獲五萬元創業啟動金及免租一年。

減年輕人創業負擔

青協項目經理周誌遠稱,計劃針對與環保及社會共融等相關的企業,希望減輕年輕人負擔,並鼓勵他們善用創意改善社會問題。不少年輕人有意參與。歐陽姿婷在新加坡完成博士學位後回流,與妹妹創立網上平台「D’un D’um」,收集二手物品轉售,靠抽佣獲利。她說港人環保意識不足,希望作中間人替買賣雙方節省時間,提高他們出售舊物意欲。

計劃詳情可瀏覽https://www.facebook.com/hkfyg.sic。

記者 袁樂婷


博士生回流 進軍二手家品買賣 – 明報 2015年03月06日 星期五

出身單親家庭的兩姊妹歐陽姿婷(Gigi)與敏婷(Mandy)於去年11月創立了二手家品網上交易平台「物丼Dun Dum」,Gigi今年26歲,於理工大學畢業後赴新加坡南洋理工大學讀生物科技類博士,預計明年7月畢業,有見港人喜愛消費但環保意識差,很多仍然有價值的物品被閒置或運往堆填區,Gigi決心回港創業,望推動香港二手物品回收利用。

包辦宣傳協助定價送貨

Gigi指賣家只需在網站上登記想出售物品,Dun Dum便會派員察看貨品及照相上傳至網站、製作商品描述等,還會蒐集資料,協助賣家定價。若有買家通過網站看中部分貨品,他們便會親自將物品送至買家手上。

Dun Dum營運了2個多月,售賣的物品多元化,包括單車、飾物、手機等,總營業額超過2萬元。Gigi指Dun Dum會從每宗交易抽取兩至三成作佣金,而買家超過一半是外傭,其他包括學生、家庭主婦等。她認為交易既可避免浪費,買家可節省金錢,賣家也可將閒置物品折現,達至三贏局面。

有意租用中心免走冤枉路

Gigi稱,有意租用社創中心辦公室,因營運公司需要法律、市場推廣及IT等各領域的知識,而中心會提供的一系列指導,相信可助創業者「少走冤枉路」。

專業考試教學網5月開放

同是25歲、也有意租用社創中心辦公室的黎達成及林煒揚,有感於現時專業考試備試課程費用昂貴,一個專業考試動輒需數千甚至上萬元培訓費,故創立了以專業考試為主的網上培訓平台 UniProx。

他們會跟教育機構合作,拍攝教師上課情况並製作短片,放在網上供人購買,會覆蓋會計、工程及銀行等行業培訓,預計價格至少較坊間的培訓班低三分之二,將於今年5月正式開放予觀眾訂閱。


放膽助創業 勝籲青年北上 – 王維基 香港經濟日報 2015年03月06日 星期五

香港過往幾十年的成功是賴以無數企業家,在缺乏任何輔助下用盡心血去解決問題,成就幾百億甚至是幾千億的企業。

近年,政府以及不少政界朋友都鼓勵年輕人嘗試創業發展;另一方面,年輕人卻指因為大部分的行業都被大企業或者有資源的生意人捷足先登,欠缺向上游的機會。所以,當我們今日談創業,大部分時間都會和創意工業聯繫起來。因為如果單是想創業,而心儀的行業又已經有很多人做,今天的香港,創意和創業基本上是捆在一起的。

政治不容破舊 不利創意創業

但是,今日的香港彷彿一切都與政治有關,連創意、創業都不例外。

因為創意的本質是具有顛覆性,要破壞舊有的「行規」。

創意的意思,就是要用創新的方法令事情更具經濟效益,產生更好的服務。

創意帶來的後果,必會為現有的營運者和既得利益者帶來衝擊。

創意創業愈成功,對現有營運者及既得利益者帶來的衝擊和損害就愈大,兩者之間有必然的正比關係。

今日的香港政治體制,又是否真心崇尚創意創業呢?踏入羊年,我們是否希望年輕人像羊一樣呢?政治上,我們不希望年輕人去破壞舊有制度,這就是最大的矛盾。

「海歸」具人脈 港青北上憑甚麼

另一方面,有人建議年輕人北上創業;筆者認為,這是錯的。

這並不關乎感情問題,並非愛國與不愛國的問題,而是實際上力量比試的問題:

你的強項是否真的比人強?

舉個簡單的例子,多年前,我和香港寬頻的同事在新加坡逗留了一、兩年,投標為當地建立全新的光纖網絡。

當時我第一個問自己的問題,就是我有沒有本事比新加坡人做得更好?

若果香港的年輕人北上創業,我們的年輕人是否比內地的年輕人更熟悉當地的營商情況?

究竟香港的年輕人強項在哪裏?

我們的年輕人會比幾十萬留學海外而回流的「海歸」派內地年輕人更強嗎?

更甚的是,這幾十萬個來自內地不同省市、有經濟能力到外國留學然後回到內地的年輕人,他們的家庭背景以及政府部門的關係、人脈和背景,相信肯定較香港大部分年輕人優勝。

其實,香港的年輕人當中,許多精英都在海外留學,所以我反而建議香港的年輕人應該留在香港或到海外發展。

從另一角度看,我們更應該問:到底內地還需要香港年輕人嗎?

今天已經不是十多二十年前,甚至是三十年前內地剛開放的時候;

大家都知道,由於內地的公司大多已經累積了足夠的營運經驗,今天的內地工廠已經不需要來自香港的管理層;

又以電視和電影製作為例,許多劇本創作,以及製作都漸漸回流香港,原因就是香港人已不能為他們增值。

個人借貸父母擔保 顯創業誠意

最後,講到最實際的,如果政府真的想幫助年輕人去創意創業的話,我認為錢是最重要的——但這亦要解決審批的問題。我們不能用政治的審批方式,不能以傳統方式計算回報和成功率。

議員和社會都需要有共識,明白這是一些 venture capital,是對較冒險的創新活動或事業予以資本支持,十個裏面有九個都會失敗

我們的目的並不是計回報,而是要孕育社會氣氛,令香港社會重拾「崇尚創意創業」的文化,這都是投資。

我的建議是,無論是5億、10億還是15億港元的資金,只是在某個歲數以下的

年輕人並擁有科學、工程等有關資格的大學畢業生都合資格申請,

所得的資金可以是50萬甚至是100萬港元。

最大的條件是,這是屬於貸款性質,年輕人以個人身份借貸資金,以父母作擔保人,

就算業務虧損都必須歸還。

這種做法是為了認清申請人的誠意,沒有利用資金去亂花費,要為自己的創業負責任。

創業和打工最大不同之處,就是做老闆所負的責任,比打工仔多很多倍

我們亦必須規定及監管貸款不能用作金融投資或買賣股票的用途,必須要控制貸款是限制用於辦公室租金、購置電腦、購買研究或生產的資產,以及員工、薪酬支出等用途,切實地監察確保資金用於實質運作上。

我明白,結果可能是100個創業嘗試中有99個失敗

但這並不要緊,

做創意創業就是要百中求一,香港有一個年輕人成功,這個計劃都算成功

蘋果公司都只是得一間。


廠商密鑼緊鼓 迎接5G時代 – 梁巧恩 香港經濟日報 2015年03月06日 星期五

容量更大零延遲 業界預計2020正式推出

當大家仍在討論4G智能手機有多好用時,在世界流動通訊大會(Mobile World Congress,MWC)上,已向布滿5G及物聯網的影蹤,中興、華為、三星、微軟、高通、愛立信等大企,都積極發表最新的相關想法及技術,令5G儼如今次會議的主角。

究竟5G是標準是甚麼?其實全球仍未有一個標準,現階段仍然是各有各的說法。Next Generation Mobile Networks(NGMN)行政總裁 Peter Meissner 在 MWC 上表示,聯盟正努力集合各方意見,盡快提出相關標準,令2020年能推出5G技術。

就如當年發展4G技術,各科技巨企甚至是國家,都有自己的研究結果及想法,也希望自己的一套能成為世界標準。5G時代快將來臨,競賽進行得如火如荼。雖未能預測5G能帶來多少商機,但肯定又是另一機會。事實上,物聯網技術已不斷發展,不少用家正期望物聯網為生活帶來方便,但現時的4G技術,未能同時支援太多裝置。

中興 Pre5G 基站 提升頻譜效率

早前,已有人提出4.5G的概念,中興通訊在大會上,就展至出 Pre5G 基站。Pre5G 概念早於去年6月已提出,簡單來說,它是採用 Massive MIMO 技術,能大幅提高頻譜效率,使4G終端用戶也能享受接近5G的體驗。

Massive MIMO 是5G的核心技術之一,原理是利用多天綫多用戶空分技術,提升無綫頻譜效率,助營運商用盡已有的頻譜資源,提升網絡容量幾倍,頻譜效率可達傳統基站的5倍或以上。中興早前更與中移動做聯合測試,今年有望實行小規模商用。

穿戴裝置更普及 隨時取代手機

中興通訊首席科學家向際鷹表示:「在4G技術下,用戶不能透過流動裝置玩實時遊戲,但透過5G就可以做到;5G技術放很多資源在物聯網上,令用戶可在智能眼鏡上看高清影片。」他估計,在5G推出商用後,將會有更多穿戴智能裝置面世。「現時的未必很好,未來智能手機甚至可能被其他穿戴式智能裝置取代。」

他強調,5G在技術上已差不多準備就緒,但如何利用才是最大挑戰。不同廠商有各自的想法,單是商議出一套國際標準,已花上好幾年。之後要等電訊營運商提升其系統。他估計,至2020年也未必能廣泛商用,可能要多等一、兩年。

愛立信:需求出發 研解決技術

愛立信在發展5G技術時,早已提出 Network Slicing(網絡切分)概念,其首席研究員 Goran Rune 表示,此方法重點是夠靈活。電訊營運商甚至可因應自己的需要,更靈活選用不同的技術架構。「公司的側重點是如何令一些今天的不可能,變成可能。」

所以該公司成立「瑞典5G研究項目」,目標是與更多行業、大學及研究機構合作,以求集各家之大成,以及更了解各行業甚至是最終用戶的需要。Goran 指,了解用戶需要或困難,再研究出解決方法,比閉門造車更好。

在今次大會中,愛立信的展館儼如大展館中的小展館,展示不同行業及個案,當中包括如何應用物聯網、5G 科技。場內就有一架模擬挖泥機,透過4G流動通訊網絡,遙控在場館外及遠在瑞典的挖泥機。現場所見,透過 4G 網絡,遲延約1秒,但感覺不大。Goran 指,未來若使用 5G技 術,遲延率可以更低。場內另一個案,是利用4G流動通訊網絡,遙控火車在山區運貨,以及自動開關電子系統。


呂大樂﹕水貨客非問題主因 區域融合更需深思 – 明報 2015年03月06日

近期圍繞着自由行而產生的衝擊行動和特區政府的回應,是劣質的政府與社會互動的例子。

對於那些「光復行動」,我既不認同其主張,也不贊成他們所採用的行動方式。但特區政府的回應也不見得怎樣高明。我所指的並不是警方的行動,而是政府一直在管理內地人士來港旅遊的問題上,表現遠遠落後於形勢,令社會上的不滿不斷加劇、累積,再而進一步流傳、擴散。特區政府不願意正面正視內地旅客每年大量增加的現象,也沒有準備將不同的相關問題拿出來公開討論,而只是時而把問題簡化為「水貨客」的事情,時而把焦點轉移,看待為部分人士排外所為,與管理內地人士來港旅遊不善無關。

可是左閃右避之後,只會因為來港人數繼續上升,而令民怨更深。

我知道這樣說一定會引來現屆特區政府支持者的不滿,但觀乎過去數月的情况(去年8月梁振英曾提出檢討自由行),誰令那些「光復行動」由無法引起大多數市民同情的狀態,到今天有不少人雖不支持,但開始覺得它們也不是全無意思,

特區政府的領導層不能以為與自己無關。

現時在社會上逐步形成,並且愈來愈普遍的意見,是

「雖然覺得衝擊內地旅客的做法不對,

可是若非如此,有人做出這種動作,特區政府也懶得回應

這也就是說,大部分市民不想參與其中,但卻覺得如果不是發生一些亂象,他們並不認為政府會有反應。

特首角色是「好女兩頭瞞」?

可以想像,特區政府及其支持者會認為,其實他們在背後已經做了很多工作,只是一天未正式成事,很難向外交代。

這是梁振英政府在所有有關內地與香港事務上所表現的一種姿態——特首的角色是「好女兩頭瞞」,因為事情複雜,他不便將資料公開;

事情要有一個滿意的結果,唯有靠他在後面巧施妙計,才可和氣收場。

在現實中事情是否真的如此,恐怕只有他才知道。

不過,他或者未有考慮一點,就是所謂「好女兩頭瞞」這一招,在某一方的角度來看,是另一方根本不把他看在眼內,懶理他的死活,所以中間人的角色很重要。

套用到目前內地訪港旅客的問題上,特首那欲言又止的神情,似乎想暗示在中央方面來看,全都不是問題。

若我們相信特首不得不「好女兩頭瞞」,即中央另有考慮,無意處理問題。若我們不相信特首,則似乎是他不敢在中央面前,做一些影響內地與香港關係的動作。但有趣的是,無論是哪一種看法,都不會增加港人對中央的好感。

我說近期的事情是一種劣性互動,因為不太文明的做法,反而更能促使政府回應問題。

從這個角度來看,將來會出現更多這一類衝擊行為,而同時社會不會有很強烈的民意反彈,是絕不出奇的事情。

或者讀者會問:特區政府可有另一種回應的可能?我的答案很簡單,到目前為止,要說服香港市民,講事實和道理依然是最有效的方法。

如果政府要爭取市民支持它的做法,至少應該嘗試將問題說清楚,令人明白究竟有何對策的選擇。

對於內地訪港旅客不斷增加的現象,我一直強調:面對現實,當前要處理的並不是一般接待遊客能力的問題,也不是一個「走水貨」的問題;問題是區域融合。目前有關當局公開的統計數字不多,我們對內地訪港旅客所知有限。但就已知的,情况大概是這樣:

  • 2014年內地訪港旅客多達4724萬人次,超過總訪港旅客的四分之三,與2013年的人次比較,增長達16%。
  • 在所有內地訪港旅客當中,約六成(2817萬人次)為即日來回,不過夜的。這類旅客在2013至14年間,增長率為19%。

  • 而使用「一簽多行」入境的內地訪港旅客,2014年有1484萬,2013至14年間增幅為22%。

  • 2013至14年間內地訪港旅客增加了約650萬人次,而不過夜旅客則增長了約452萬人次,即是說近七成的內地旅客增長,來自不過夜旅客。

見到上面的統計數字,很多人以為問題在於那些不過夜旅客,而當中最大的問題來源就是「水貨客」。

可是,根據《明報》取得的資料,以「一簽多行」過境,而入境達52至99次者,有大概2萬人,而在100次或以上者,則約有1萬人。很多人對此感到嘩然,以為那是大數目。

但假如我們細心想一下,則叫人嘩然的應該是為何只得如此的一個小數目。

我假設那兩萬人平均來港一年75次,總人次只不過是150萬人次。而那1萬人入境1年150次,也就只是另一個150萬人次。

加起來只不過是300萬人次,以全年近1500萬的「一簽多行」來計算,只是五分之一。

若以全年不過夜旅客計算,則只是略多於一成而已。

假如我們假設那些以「一簽多行」經常過關的內地旅客為「水貨客」,那明顯地他們並非問題的主要成因。

再者,如果「走水貨」是主要問題,那還是相對地容易處理的——取貨地點與交貨地點一定不會相距太遠,大部分活動在邊境附近發生,性質與一般購物不同。同時,我們必須明白,「走水貨」是商業行為,就算全面禁止內地人過境帶貨,只要一天還有市場需求,而亦有人願意額外多付錢買貨,則「水貨活動」仍會存在,而分別只在於「走水貨」成為了只有港人才可參與其中而已。關於這個問題,日後有機會再談。

根《明報》引述政府消息人士,去年以「一簽多行」訪港的深圳户籍居民,有150萬人左右,平均一年來港9次。其實以深圳來港如此方便的角度來看,他們來訪次數並不算多

在那150萬人當中,約120萬人全年訪港不到10次。

假設他們不常來,只是每兩個月才過來以不過夜的方式玩個周末,一年也只不過是訪港6次。

由此推算,這批消費者約有720萬人次,但也只不過是全年不過夜訪客的四分之一,是去年1484萬「一簽多行」人次中的一半左右。他們每年來港的次數還大有增加的可能,所以,將「一簽多行」封頂(除非定於5次或以下的低位),基本上不會怎樣減低這類訪港旅客的增長。

更重要的是,不過夜旅客全年有2817萬人次,而「一簽多行」有1484萬人次,只佔前者的一半左右。

這表示有1300多萬人次分散於珠三角各地(包括深圳非戶籍人口),而以當地人口的總數量,這並不是一個大數目。只要他們仍有興趣來港消費,則來自周邊地區的訪客亦大有增長的潛質。

嚴打「走水貨」 內地客或續增

篇幅所限,討論暫且打住。在此我想提出幾點,作為一個簡單的總結:

  • 「水貨客」並非問題的主因,別以為將矛頭指向他們,便可將問題解決。如無意外,就算嚴打「走水貨」,一年後不難發覺內地訪港旅客仍在增加。
  • 將「一簽多行」封頂的做法,除非把入境次數定在一個低位,否則效果亦很有限。

  • 以目前內地辦簽證之方便,基本上用行政手段來處理問題,效果不會太過明顯。除非香港所能提供的服務大不如前,否則內地訪港旅客的數目不會顯著下調。來港購物、消費、玩樂是一種市場行為,那恐怕就只有提高內地旅客來港的成本,才有可能收到調節的效果。

  • 內地訪港旅客只因他們需要簽證來港,才會歸類為遊客。當中六成即日來回,而且還有持續增長之勢,我們不應再以旅遊與接待的角度來看待問題。簡單直接的說,他們不是觀光遊客。

  • 若以為新春期間內地訪客略為減少便代表一種新的趨勢,那恐怕不會是很準確的預測。事關年廿九、年三十的數字都有增加。而有到消費點轉轉的市民都會知道,現在更多的內地旅客是到來辦年貨、買新衣物

  • 從長遠的角度來看,這還只是剛剛開始的一個過程。從2009年開始,內地旅客的數量以每年400萬至600萬的數目增加,而不過夜旅客很快便成為了推動增長的主要力量。擺在我們面前的是一個區域融合過程中人口流動的問題。我們需要想得更大更遠。


  • 高官「唱慢板」自由行成社會炸彈 – 關焯照 蘋果日報 2015年03月06日

    自由行過多已令香港市民怨聲載道。資料圖片

    自由行為香港帶來的社會問題早已在幾年前浮現。無奈,特區政府總是後知後覺,未能盡快處理問題,最終引致連串光復香港及捍衞本土行動。但事已至此,假若特區政府仍以「揼波鐘」的態度來敷衍市民,這個「自由行炸彈」終會令整個社會四分五裂,屆時即使中央出手挽救也回天乏術。

    現時政府最擔心的是一旦落實減少內地旅客的政策,可能嚴重衝擊零售業。

    政府統計處於周三公佈今年1月份的零售總銷貨價值較去年同期急跌14.6%,低於市場預期,並創下自1999年以來最大跌幅,無可否認,在習近平為首的中央領導層積極打貪的影響下,訪港的內地旅客平均消費也相應減低。

    假若特區政府出招控制自由行的旅客數量,零售業的表現可能較現時更差。

    筆者明白以上的憂慮,但始終始作俑者是特區政府,因為反自由行的情緒早已在2012年年初生根。如果讀者不是善忘,應該記得當年1月發生的廣東道D&G服裝店事件──由於D&G店員只容許內地遊客攝影而本地人卻不可,這「禁攝事件」最終引發接近一千人於D&G店外集會,以示不滿。

    其後於同年發生的「廣東道驅蝗」行動和「光復上水站示威」行動,已不斷傳達市民的不滿。

    但特區政府,尤其是相關的政策局,好像充耳不聞,最終使部份市民的不滿情緒爆發,

    反自由行的行動繼續升級至向水貨店投擲汽油彈,和上周的元朗主要水貨區的警民衝突

    假若不是特區政府未能根治自由行的後遺症,香港市民又怎會做出上述的激烈行為呢?

    中文大學亞太研究所於周三公佈一項關於「市民對自由行的態度調查」(附表),結果顯示,有63%的被訪者同意現時自由行旅客數目已超出香港可承受的能力。而認為即使收緊自由行對本地經濟造成負面影響但仍贊成收緊的被訪者(答案是基於已贊成收緊自由行政策的被訪者)的百分比竟然接近九成。另外,有70%的被訪者同意取消深圳戶籍居民的一簽多行政策。從市民以上三條問題的答案,政府已沒可能迴避問題,實需要找出有效方法控制內地旅客訪港的人數,以避免自由行為本地市民帶來的種種問題。

    從中大亞太研究所的民調來看,大部份市民認為即使為香港經濟帶來損失,也支持收緊自由行,而也有相當部份的市民同意取消一簽多行的政策。筆者明白自由行是中央和地方政策,特區政府是無權修改,但無權並不代表啞忍。假若以梁振英為首的特區政府能夠向中央如實反映自由行的問題,同時痛陳利害,以中央高層的智慧,一定會為香港想出一個好方法來減少自由行產生的社會問題。

    去年6月11日,筆者與冠域商業及經濟研究中心的高級研究員周文林教授公佈一項稱為「減少內地旅客政策預測增長模擬分析」報告,根據周教授的「香港經濟預測模型」,模擬測試結果指出即使減少20%的內地旅客人次也不會為香港帶來嚴重的經濟損失,但報告已公開發佈接近九個月時間,相關政策局的高官也未有推出任何措施去減少內地旅客的增長數量,負責的高官如此「唱慢板」,實是香港市民的不幸。


    掌聲版報告難掩克強經濟學的失敗 – 李平 蘋果日報 2015年03月06日

    中國總理李克強昨日發表任上第二份政府工作報告,外界關注中國經濟增長減速對全球的衝擊,而內地官方媒體、網站則津津樂道會場響起了多少次掌聲,甚至推出掌聲版報告,詳列與會代表鼓掌的時序。其中,光明網的「掌聲版報告」指有五十次掌聲,人民網詳列代表五十一次掌聲「響在哪裏」,上海澎湃新聞網則指代表用五十二次掌聲把李克強送回座位。

    掌聲是五十次,還是五十二次,有如此重要嗎?

    代表們的掌聲有些的確是對報告的肯定,但也有些不過是在總理提高聲調時作出的被動回應

    官員台上作報告時提高嗓門,就是提醒台下鼓掌,這不過是內地官場的默契或潛規則

    中國媒體去年熱衷於報道李克強首份政府工作報告獲破紀錄的五十次掌聲,今年又別出心裁地推出掌聲版報告,無非是要藉掌聲次數的增加給政府臉上貼金

    掌聲版實際上就是擦鞋版。掌聲次數就算再增加十個百分點,也掩飾不了中國去年經濟增長未達到百分之七點五目標的事實,掩飾不了今年經濟增長目標再調降零點五個百分點的影響,掩飾不了中國政治、經濟風險的持續累積。內地報章、網站本月三日開始熱炒一篇題為《忘掉希臘吧,日本才是全球經濟真正的定時炸彈》的文章,調侃「安倍經濟學」完全毀掉了日本。現在看來這是高級黑的炒作,似在預告「克強經濟學」的失敗。

    從政府工作報告來看,「克強經濟學」三大支柱中的

    「不推出刺激經濟政策」已崩塌,

    並危及「去槓桿化以削減債務」,

    只有「推行經濟結構改革以短痛換取可持續發展」這一支柱尚在叫響。

    中國官方媒體曾高調批評前總理溫家寶,指他在金融海嘯期間推出的四萬億元刺激經濟計劃「毀了中國」。

    夠諷刺吧?

    中國在展開新一輪減息降準之前,已透過各種金融工具推出貨幣寬鬆政策,注入的貨幣早已超過四萬億元。

    夠諷刺吧?

    今年中國財政預算赤字高達創紀錄的一萬六千二百億元,而去年人大會議期間的新聞標題是「李克強:不擴大赤字不超發貨幣讓市場吃定心丸」。

    客觀地說,「克強經濟學」在二○一三年六月的面世,是財經界、新聞界的擦鞋及炒作,並非李克強本意。

    但當年十一月中共舉行十八屆三中全會後,中國官方立即拋出

    「習近平經濟學」,指其有四大支柱,包括

    頂層設計與總體規劃、

    去水分式增長、

    調結構、區域經濟帶動整體。

    從習近平親自兼任中央財經領導小組組長,到官方媒體熱炒「習近平經濟學」以取代「克強經濟學」,甚至吹捧「習近平經濟學」是「站在復興大業更高起點」,

    讓海外驚訝的不只是克強經濟學失落之快、失敗之快,

    也包括中國經濟掌舵人的轉換,以及由此產生的政治、經濟風險。

    中國官方把經濟增長減速定性為新常態,期望從心理上減輕對政治、社會的衝擊。

    內地官方輿論昨日熱炒掌聲版報告,目的同樣在此。

    但是,不管是「克強經濟學」的沉淪,還是「習近平經濟學」的浮現,都擺脫不了中共高層權鬥的糾纏。

    在以反貪為名的權鬥大背景下,為維護政局和社會和諧,當局對內重祭貨幣、財政政策寬鬆與意識形態嚴控,對外則採取民粹式的強硬政策,其中包括房地產政策避提調控、抑制,重回二○○九年的支持、促進,經濟增長減速並未影響軍費增長加速,強力反對香港實施真普選,在政府工作報告中重提反台獨等。這些政策的寬嚴,都取決於主政者的心意,取決於權鬥的需要,最終難免加劇中國的動盪。李克強在報告中強調「有權不可任性」,但未受民主、法治機制約束的權力,就如中國富二代一樣怎麼可能有錢不任性?

    李平


    不良台商「田園小鎮」殺入屋邨 長者易遭殃 – 蘋果日報 2015年03月06日

    專向長者推銷保健產品的「田園小鎮」,去年在台灣再度因產品不實宣稱醫療效能而被罰款,惟無損其在港擴張。該店近年相繼殺入領匯即將出售或剛出售的公共屋邨商場,最新分店位於將軍澳翠林邨,

    以一元食油白米吸引大批長者每天排隊「聽講座」,游說長者花費數以千元購買酵素。

    不過,營養師指至今無研究證實有關產品功效。立法會議員促海關加強「放蛇」調查有關商店有否涉不良銷售。 記者:袁柏恩

    田園小鎮的翠林分店今年一月開張,每天五場講座,每場約二百人。該店最初以五元食油、白米等作招徠,之後更減價至只需一元。六十三歲的張太表示,首周只舉行健康講座,但就不時宣稱保健產品的好處,更有日本人現身說法,一周後便相繼推出保健鞋墊、酵素等

    該款「蘇生酵素」原價六千六百元三瓶,宣傳價三千九百元,

    張太憶述:「佢講好好架嘛,食咗又瞓得啦,啲人腸胃唔好食咗又唔怕」,主持人又指長者「食咗瞓唔到都變瞓到」,

    加上職員多番指日後需以正價購買,她最後買了一瓶,

    同場有長者一口氣買了九瓶

    「咁我腳又真係有痛丫嘛,我地呢啲年紀,咁試下無妨丫,

    一班人買你就會心郁郁架喇﹗

    七十八歲羅婆婆亦曾多次參與講座,她憶述職員聲稱鞋墊以温泉水泡浸,有人浸過該温泉後癌病亦得以治好。本報記者則在觀塘分店見職員推介

    原價六千五百元、「宣傳價」二千九百五十元的「超級腦活力」,

    其網頁宣稱產品對重金屬具解毒作用、保護全身細胞的抗氧化等。

    西貢區議員林少忠表示,上址空置多時,領匯去年八月出售翠林商場,新業主即將舖位租予田園小鎮。田園小鎮藍田分店同樣位於前領匯商場,觀塘區議員陳汶堅表示,領匯去年即將出售商場時,將空置多時的舖位租予田園小鎮,他指該店另一藍田前分店,曾由職員穿白袍誤導長者是醫生,有長者誤信其「療程」而停藥,幸家人及早發現。

    本報取得現場錄音,主持人張先生先稱公司有四十萬名顧客,又着長者留下姓名、電話、地址等資料,以便日後寄上賀卡、邀請參加活動如自助餐。張之後力銷酵素有助腸道消化,有長者表示膝蓋痛,他即回應「正常呢你食多幾日(酵素)就開始無咁痛」。有長者稱不時肚瀉,他即判斷對方是「大腸過敏」,「腸過敏呢,喇叭丸食咗可能覺得好好,但好快又唔得。所以酵素呢就治本。」又叫長者需多食三瓶「完成個療程」。至於三高長者,「如果你真係覺得自己好嚴重既,你咪食耐啲、(一日)食兩次囉」。

    香港營養學會會長張智良表示,又名酶的酵素的確有助解決消化不良,但田園小鎮出售的「酵素」並非酶,而是以菌令食物發酵,乳酪、豉油、腐乳等其實亦屬發酵類食物,「係咪真係對身體有益?效果並不特別顯著。」他亦憂慮長者因倚賴這類食品而忽略求醫。

    根據《商品說明(不良營商手法)(修訂)條例》執法指引,弱勢或易受左右的消費者群體屬執法機構優先處理的個案之一,長者亦屬此一類。消委會主席黃鳳嫺表示,商戶是否涉條例的誤導性遺漏及具威嚇性行為,需視乎每一個案的情況而定,但她關注長者是否需要購入過多的保健食品、有關產品是否較坊間相類產品的價格高昂及產品健康聲稱是否有有效,她提醒長者需衡量自身體質是否適合此類產品。

    曾經參與審議《商品說明條例》的立法會議員涂謹申坦言,此類向長者銷售貴價保健食品的手法一直備受質疑,他認為海關應加強透過放蛇審視有關店舖有否違規銷售,以保障長者利益。

    海關發言人表示,過去三年共開立了七宗涉及虛假商品說明或以不良營商手法向長者銷售「健康食品/產品」的調查案件,其中一宗向有關商戶發出勸喻信,其餘六宗案件經調查後未有足夠證據證實違反條例。

    田園小鎮又名「Happy Shop」,香港店及台灣店同屬SUN流通集團,香港店由福天國際經營。田園小鎮在台灣花蓮縣至少兩次因不實宣稱醫療效能被罰款合共一千四百萬台幣,該縣衛生局長更親身呼籲市民不要購買,並鼓勵市民提供證據供當局執法,若屬實會獲百分之五的罰款作獎金。福天國際發言人李小姐稱,台灣店與香港店獨立運作,對台灣店出售的產品不知情。她強調公司產品為「輔助健康營養食品」,「亦唔會話有咩(醫療)功效,功效明唔明(明顯)係要睇個人體質。」不過,公司註冊處資料顯示,福天國際最大股東為佔百分之五十一股分的SUN社長川端光,報住日本,本報取得至少三款產品,均在台灣店同時有售,總經銷亦是SUN的分公司或標明田園小鎮出品。

    張太曾以千多元購入酵素,她解釋自己不時腳痛,眼見不少長者購買便「心郁」。(馬泉崇攝)

    西貢區議員林少忠指會去信業主要求關注田園小鎮的問題,他得悉該店只打算短租半年便會撤走。(朱永倫攝)

    為留住長者,長者每次出席及購物均會記錄,出席一定次數後可獲贈按摩器。記錄卡期後已換成會員簿。(馬泉崇攝)

    田園小鎮翠林分店每天講座未開始便有大批長者排隊等候,職員會檢視其會員簿及收取一元,他們離開時便可取得當日的禮品如醬油、廁紙。(袁柏恩攝)

    .END

    Leave a comment

    Filed under Electronics DIY Project

    春晚黑科技 – 钱皓/36氪/小石头

    春晚“黑科技”:吉祥物阳阳和李宇春夏秋冬之“全息投影技术” – 钱皓/36氪/小石头 2015-03-06

    http://m.weixinyidu.com/n_200983

    内什么,春晚的广告看完了吧,红包抢完了吧,我们来聊点高大上的吧。

    咦~春晚有高大上的么?谁说没有呢?

    虽然每年都在被吐槽,但除了魔术,还是有“黑魔法”的。

    一、阳阳和动作捕捉

    虽然看起来就是个卡通形象,但春晚吉祥物阳阳可是有正经工作的哦,它的工作叫“虚拟主持人”。洋气点的解释就是:在虚拟演播室的基础上,将节目中的主持人由真人替换为虚拟的角色,形成了这种新的节目表现形式。它既可以将虚拟主持人放于虚拟的场景中,形成“虚拟场景 + 虚拟人”的模式,也可以将虚拟的主持人置于真实的生活场景中,形成“真实场景 + 虚拟人”的模式。

    其实,阳阳并不是第一个虚拟主持人。世界第一位虚拟主持人是由英国 PA 新媒体公司制作的安娜·诺娃(annanova),她一出场就获得了世人的瞩目。紧接着她之后又出现了一系列的虚拟主持人,如日本推出了寺井有纪 (Yuki)、美国推出了薇薇安(Vivian)、韩国推出了露西雅(Lusia)等。

    中国推出了歌手虚拟主持人阿拉娜(Alana),但是首位电视虚拟主持人是 2004 年央视在《光影周刊》中推出的“小龙”。

    但当时的科技发展还难以做到对人的动作、表情等实时捕捉,使用的都是一些电脑预先设置好的动作,故而“他们”的动作不够自然连贯,只具备模式化的主持风格和永远不会转动的眼珠,很快就被观众冷落。这和阳阳还是有差距的。

    这次为阳阳提供技术支持的是我们之前报道的诺亦腾和“PERCEPTION 腾挪”惯性动作捕捉系统,通过对表演者动作的实时捕捉,进而驱动虚拟的阳阳,再与实际演播室以及真实的主持人相结合,最终得到虚实结合的电视画面,从而实现了虚拟人物与真实主持人的互动。2014 年世界杯期间,CCTV5 的“我爱世界杯”和 CNTV 的“超级世界杯”节目就采用过这一技术。

    看似普通的阳阳,也有高科技,阳阳身上有不少关键技术:

    高性能计算机:主要用于图形渲染和大数据的计算,以实现角色动作的真实、流畅、连贯

    3D 虚拟引擎:三维场景的质量很大程度上决定了最后节目的质量,市面上主流的 3D 虚拟引擎有 Unity 3D、Unigine、CryENGINE、UDK 以及广播电视使用较为广泛的 Vizrt 等。各引擎在不同的领域都有各自的优势,选择一款合适的引擎可以使场景搭建商事半功倍。

    摄像机位置追踪:“虚拟场景 + 真人”和“真实场景 + 虚拟人”的节目形式,由于最终会将真、假摄像机拍摄的画面进行抠像重叠处理,就涉及到真实场景中的摄像机和虚拟场景中摄像机的同步问题。现在主流的像机跟踪技术有图案识别技术、机械跟踪技术、标记点跟踪技术、无轨定位跟踪技术四种方法可以实现。

    动作捕捉系统:这整套的系统想要完美的运行起来,角色动作的实时采集设备是必不可少的。市面上主流的动作捕捉技术有光学动作捕捉技术和惯性捕捉技术。前者由于对场地光线有较为严苛的要求和复杂的操作体验,现阶段还没有很好的动作实时捕捉解决方案,因而难以实现在大型舞台上和演播室中应用。而后者基于传感器的原理,采用无线数据传输的方式,无惧遮挡和距离限制,是较好的舞台和演播室实时动捕解决方案。

    二、李宇春与李宇夏、李宇秋、李宇冬

    我男神终于出来唱歌了,还这么客气,带来了自己家仨弟弟当见面礼:李宇夏、李宇秋、李宇冬。据说这是本届春晚最时尚的创意类节目,春晚剧组利用“全息投影技术”,制作了三维舞台仿真,舞美工作量巨大,是羊年春晚造价最高的一个节目。。

    “亚洲第一男子天团”的奥秘主持人已经部分揭晓了,这里就简单说下。事实上,主持人将其称为全息技术并不准确,称为三维投影技术更合适。三维投影技术就是投影在不规则的物体上。而之所以说这不是全息,是因为这个节目只能在特殊角度才能看全,转下角度就看不完整了。真正的全息需要做到 360 度视角。前段时间,周杰伦和“邓丽君”合唱《红尘客栈》就是用的这个技术。

    之前,王之纲EGO在知乎上介绍过相关知识,大家可以参考下:

    全息技术其实就是实现三维图像的记录和再现。第一步是利用干涉原理记录物体光波信息,记录的难题早在1947 年就被攻克。一般的三维图只是在二维的平面上通过构图及色彩明暗变化实现人眼的三维错觉,而全息影像则包含了被记录物体的尺寸、形状、亮度和对比度等信息,观察者可以多角度来观察图像在不同角度的形态变化,如同有个真实的物体在那里一样。当然,现在的技术已经不再局限于记录真实的影像,还可以制作完全虚拟的三位数字影像。

    全息技术的第二步:再现,也就是利用衍射原理再现物体光波信息。这在2001年才取得突破。主要归功于全息膜技术的诞生,使三维图像的再现成为可能。依靠这薄薄的透明膜,无论是T形台上的流光溢彩,还是舞台上虚幻影像,都可实现。随着全息膜的技术进步,现在一些全息膜里面有许多细细的线路丝。借助这些线路丝,人们通过手指触摸就能与全息影像进行互动。

    介绍完全息技术的梗概,再来看三维全息投影技术,通俗的讲就是”幻影成像”,类似于大自然中的海市蜃楼,是一种无需配戴3D眼镜的裸眼3D技术,原理是通过不同数量的投影机把真实影像或事先经过精心制作并具有立体效果的数字影像均匀对称的投射在成像膜上。经过光的衍射和折射,再现三维影像,将三维画面悬浮在实景的半空中成像。

    细分的话,三维全息投影还分有几大类:360度全息投影、270度全息投影、180度全息投影。实现方法和应用领域略有不同,在此不做过多赘述。

    这些技术在展示馆、博物馆、科技馆、档案馆、娱乐厅、展览会、博览会、图书馆等场馆有广泛的应用前景。3D动漫也在以这种全新的技术革新改变着人们对传统舞台的声光电技术的审美态度。比较有代表意义的就是VOCALOID的初音系列。初音MIKU也是世界上第一个使用全息投影技术举办演唱会的虚拟偶像。经过了一些前期的摸索和尝试,2010年的初音大感谢祭取得了非常大的成功,制作水准也比之前更为优秀,感谢祭采用的是德国Sax 3D公司的3D全息透明屏播放3D影像实现的,其实这场演唱会准确的讲是2.5D的,简单解释就是在屏幕上播放3D画面,就和看电影一样,只不过这个屏幕可以调节透明度,如调节为全透明的舞台上就只留下MIKU成像,原来就是调节屏幕中的局部粒子浓度显示出不透明效果并成像。

    商业上常用的全息技术大致可分为两类:一类是背投方式,投影机直接将影像投射到全息膜上。另一类是利用反射,将投影或LED图像反射到呈45度放置的全息膜上。选择哪种投影方式,最重要的是考虑现场环境。如果我们希望物体看起来真实的话,周围的灯光、舞台与观众的距离、物体的比例大小等因素都是需要考虑进去的。

    (文:36氪,小石头)

    .END

    Leave a comment

    Filed under Electronics DIY Project

    大众创业,万众创新 – 强哥

    大众创业 万众创新 21位创业青年有话对“强哥”说 – 新京报 2015-03-06

    2015年,《新京报》去各地寻访多名新青年。他们是中国经济大潮下,总理所关心的微型样本。他们创业、创新所遇到的坎坷、困顿深刻影响着未来经济的走向。我们采集他们的理想、智慧、甜蜜、苦涩、倔强;并汇拢他们最想对总理说的话,拼出热爱中国的赤子图景。

    3月5日上午,十二届全国人大三次会议在人民大会堂开幕。国务院总理李克强作政府工作报告。

    新京报记者 陈杰 摄

    视频对你说

    李克强表示:个人和企业要勇于创业创新,全社会要厚植创业创新文化;政府向社会全面开放重大科研基础设施和大型科研仪器

    大众创业

    政府要搭好公平舞台

    【报告摘录】

    另一方面,推动大众创业、万众创新。这既可以扩大就业、增加居民收入,又有利于促进社会纵向流动和公平正义。

    我国有13亿人口、9亿劳动力资源,人民勤劳而智慧,蕴藏着无穷的创造力,千千万万个市场细胞活跃起来,必将汇聚成发展的巨大动能,一定能够顶住经济下行压力,让中国经济始终充满勃勃生机。

    政府要勇于自我革命,给市场和社会留足空间,为公平竞争搭好舞台。

      个人和企业要勇于创业创新,全社会要厚植创业创新文化,让人们在创造财富的过程中,更好地实现精神追求和自身价值。

    【解读】

    宋立(国家发改委经济研究所所长):过去靠出口拉动和投资驱动发展告一段落,下一段更加需要我们靠科技创新。不是靠几家大企业就能完成的,要靠更加发挥市场的作用来讲,要大众创业万众创新。

    发挥市场在资源配置中的作用的时候,政府的作用也要积极地发挥,政府更多的是做好公共服务、提供更多的公共产品,这两个结合起来使得中国经济转型更加顺利。

    过去靠劳动密集型产业推动经济的发展,现在需要创新驱动发展,任何人只要昨天比今天有改进都是一种创新。当然不是所有人都能创新,所以提倡大众创业,万众创新,不仅仅是打工和简单模仿

    万众创新

    要开放重大科研设施

    【报告摘录】

    提高创新效率重在优化科技资源配置。要改革中央财政科技计划管理方式,建立公开统一的国家科技管理平台。

    政府重点支持基础研究、前沿技术和重大关键共性技术研究,鼓励原始创新,加快实施国家科技重大项目,向社会全面开放重大科研基础设施和大型科研仪器。把亿万人民的聪明才智调动起来,就一定能够迎来万众创新的浪潮。

    【解读】

    赵彦云(中国人民大学统计学院院长):总的思路是靠创新驱动,去改革科技体制,提高科技资源的效率,统筹规划提高效率,从而为经济增长提供更大作用。

    当然提到大众创业,我们现在跟互联网的链接,网上购物、销售已经发展了农村,互联网的发展也可以引入很多人去创新,实际这里面是一个有效分工下的大众创业。而创新强调的是提高质量,不再是单单去做一个产品开发或者某一个新工艺,这是狭义上的创新,需要我们各方面的创新,不光技术创新,包括商业模式、组织、市场营销创新等。

    新京报记者 郭永芳

    21位创业青年有话对“强哥”说

    趣学车创业团队代表赵博阳:

    我们在中关村创业大街,这里草根创业者和创业团队聚集,寻找伙伴、投资人和机遇。

    我觉得对政府来说最好的改革是减少干预,手伸得短一些。政府应是市场的守护者而非参与者,给创业者提供开放的市场,让更多资本进入,提升活力;做好必要的监督,就齐活了。我最期待政府在这方面的变化。

    孙寒:

    新的一年,希望总理能到我们淘宝村逛逛,看看农村的变化。我曾沉迷网吧,大学只读两年就辍学了,返回家乡江苏睢宁县东风村,开网店专营家具,并传授村民网店经营术,现在村里有250多家家具厂,65%以上的老乡都从农民变成网商。未来,希望国家能出台政策多支持农村电子商务的发展,让基层出现更多创业者。

    吴迪:

    我是洛阳乐活自然园连锁农场总经理,靠手机打理500亩果园,联网,高科技。我认为土地流转是解决食品安全问题的有效方式。希望政府在土地流转问题上有所改革。政府要转变观念,不能让农民形成靠出租土地赚钱的观念,而是要引导他们有效参与到农业企业生产中,成为农业企业专业的技术、管理人才。

    陈瑞:

    强哥你好,经常在网上看到你的新闻,一直挺喜欢你的。你说要支持小微企业发展,支持民营经济,我听了挺有感触。

    创业生活其实挺苦的。我发现公司注册环节还是比较复杂,要填很多表格,希望能简化

    在争取资金支持这块,我希望能采取市场化的解决办法。对小企业来说,很希望公平竞争,不管是获得政府的,还是投资者、基金的支持。

    李慎贤:

    我们的创业主要是针对本地的传统草柳编产品。现在编货的人比较少,我们的货不太充足,会因为没有货而错失了订单。这种情况比较频繁。

    我建议有两个,政府能否给编工和老技师津贴或优惠政策;第二是加大淘宝平台的监管力度,让大家更公平,把自己的生意做大做好。

    王锐旭:

    总理,我曾见过你。见你之前我很紧张,但见到你那一刻,我觉得你特别像我的老师,很亲切。你关注我们青年创业者,我们之前所有的奋斗、努力都值了。

    我做了在校大学生找兼职的APP“兼职猫”,现在用户140多万,很多人说我是90后励志的代表。其实我只是个普通创业者,希望我的故事能鼓励更多人,带来更多正能量。

    马金瑜:

    14年记者生涯,写出过被人称为作品的稿子,我最终留在了青海,扎根在青藏高原,帮助那里的农、牧民。特别希望总理能增加对西北地区青年创业项目的资金支持,包括对他们技能的培训。这边的农村妇女如果有一些小额信贷项目就更好了。她们不缺乏智慧,也特别能吃苦,如果能给予她们在当地创业的支持,就更好了。

    张晓航:

    祖上是慈禧贴身侍卫张长祯,人称“醉鬼张三”,我是非物质文化遗产“张三”功夫第四代传人。我和很多“非遗”传人愿为社会做公益推广活动,帮大家强身健体。

    目前我的武馆场地年租金三十多万元,开张第二年就遇到资金问题差点关门。希望各文化馆、运动馆能提供免费或收费较低的场地,开展“非遗”项目的推广和其他活动。

    余英:

    尊敬的克强总理,五年来,我带领年轻的团队在贵州的大山之中,帮助几十个村寨的民族妇女通过刺绣、蜡染这样的手工艺,获得收入,提升社会地位。

    苗绣手工产业,市场需求大但产业基础薄弱。我希望国家在对民族手工产业的政策制定上,能达到对农业的扶持力度。因为在贫困地区,民族手工相比农业是附加值更高、更可持续的支柱产业。

    故宫新媒体开发团队负责人于壮:

    掏出手机,点开APP,朝服、便服、雨服、行服、吉服,5套皇帝衣服任你选,没错,就是想让你看到不一样的故宫。

    科技大发展,数字技术让博物馆和观众之间距离越来越近。赞誉、肯定、失败、教训,我们收获最多的是自信心。相信我们能开发出更多的优秀作品,把故宫优秀的传统文化带给更多人。

    张介然:

    面包房把下架的面包给农场,农场用来做牲畜饲料,鸡下的蛋反哺于面包房,这就是“幸运面包”公益项目,我是“红娘”张介然,我来自外交学院,才大三,希望我所做的这件小事,可以证明公益不仅只会花钱,也能创造经济价值。公益创业有很长的路要走,希望这条路上可以有良好的社会认知,公众认可,政策支持。

    刘伯敏:

    我是26岁的“包子哥”,我改造了南京包子铺“和善园”,订餐、送餐、店铺选址网络化,一年间店铺增开百间,年营业额破亿。现在,我开始思考“节奏放慢”。2015年,我有个特别大的愿望,就是希望能见到我们的克强总理,能够分享我的创业故事,然后能把我做好的包子给总理吃。

    张俊峰:

    总理您好,我是内蒙古奶农。受三聚氰胺事件的影响,十多年间,家乡一个个奶站关闭,一批批奶农转行,我心里难过。听说前年中央一号文件旨在鼓励和支持承包土地向专业大户、家庭农场流转,我希望政策能早点落实。当我的家庭牧场开起来时,我要把牛养好,挤出好奶,让老百姓都喝上咱们自己生产的放心奶

    于晓鹏:

    “季路医生”祝福总理身体健康,多多关心健康事业。想让总理知道,“季路医生”APP平台让患者通过平台预约心仪的医生,利用医生私人时间问诊或治疗,节省患者就医成本,力争重塑医患诚信。目前,平台后方已有2000多名医生,数据库覆盖辽宁所有三甲医院的所有科室。

    邢帅:

    我曾高考5次,大二退学。但7年努力,我“屌丝逆袭”:建立并经营有300多员工的在线职业教育机构。专注于职业技能培训,学员以“草根”为主,我立志让学员从“平凡到优秀”。

    我们这个行业涉及教育和互联网两个产业,现在国家并没有对在线教育的认证。今年,我们非常期盼能得到政府的证明和认可,证明我们是合理存在的一家企业。

    崔威、宋睿:

    总理你好,我是崔威,洛阳卡城信息科技有限公司总经理。2013年3月份我创办了“找卡车”手机APP,以方便货主通过手机在四秒钟内找到全国各地的车主。我们希望政府能够提供一个专业平台,供创业者了解政府帮扶和支持等信息。

    总理你好,我是宋睿,运科网络科技有限公司CEO,我们是去年刚成立的团队。组建这个团队的初衷就是为了解决成千上万的卡车司机生活艰难的问题,我们希望能够通过我们的力量,提高他们的收入,也希望政府能够支持我们团队,以及物流这个领域。

    北京手表厂设计中心主任赵振岭:

    总理您好,我28岁,职高毕业,没有专业背景,靠自己摸索,先后师从两位钟表大师。设计制作出中国首只陀飞轮三问表、在世界上首创“无极”三轴立体陀飞轮机芯。新的一年,我希望带领团队制造出更好更精密的机械手表;也希望更多年轻人有兴趣进入这个行业,来为我们自己的民族品牌添砖加瓦。

    山西省偏关县大学生村官何蛟:

    这些年在基层乡村工作,感触颇深。我们有句话:中国美,乡村必须美。我认为,乡村要想美丽,农民的心灵必须要美。

    要尽快地启动对农村、农民的教育和培训。很多经历让我明白,表面美维持不了多久。要对农民职业培训,逐步提高素质。让人人都能秉承信仰做事情。这样,中国的乡村才会更美丽。

    杨程君:

    开着奔驰送外卖,研发网络交流平台、浏览器等多款产品,在重庆拥有两家市值上亿的互联网企业,我是杨程君。西部互联网行业人才缺乏,政府能否在这方面给予优惠政策和奖励,鼓励一线城市的互联网人才来西部。为了鼓励新兴产业的发展,重庆创建了很多创业园、孵化园,但这些园区地处偏远,这和互联网发展趋势是不匹配的。希望政府在创办园区的时候,考虑到这一点。

    刘昊扬:

    总理您好,如果您看了今年的春晚,会记得春晚吉祥物“阳阳”吗?它的诞生使用了我们公司的核心技术:基于传感器的动作捕捉系统,这在影视制作、医疗康复、体育训练、教育培训等领域都有着广泛用途

    国内的创新、创业环境越来越好,我们希望政府能够为创业者更多地做好后勤保障工作,在人才引进、落户、子女就学等方面给予更多实质性帮助,让创业者更少后顾之忧,在创新创业的路上越走越好。

    纵深

    创业创新 青春中国的再生

    大众创业、万众创新,从没像今天这样重要。

    在经济进入新常态,传统动力不再澎湃的背景下,大众创业、万众创新,将成为中国经济的新引擎。昨天总理在政府工作报告中说,这既可以扩大就业、增加居民收入,又有利于促进社会纵向流动和公平正义。

    中国有13亿人,9亿劳动力资源,其中大专以上的有1亿4千万,蕴藏着无穷的动力。如果每个市场细胞都活跃起来,中国经济将成为一列“动车组”。

    从2月初开始,新京报历时一个月,踏访全国多地,寻找新青年,寻找那些“活跃的市场细胞”。20篇稿件,21个创业创新故事,成为政府工作报告的生动注脚。

    今天,“寻找新青年”专题画上句点。回顾这些鲜活的故事,我们看到了政府简政放权释放的巨大红利,正在与青年的热情融合,产生国家和个人的同频共振,凝聚成无坚不摧的巨大动能。

    创业青年陈瑞最想对总理说,希望简化公司注册。走关系、台面下的手段,他们最不擅长。他们希望有更多精力,用于研发产品,开拓市场。他们希望环境更公平,筹资更便利,门槛放更低。

    民众有所呼,政府有所应。李克强的团队从一开始就以简政放权为首要大事,不必要的行政审批全部取消,放松管制,给市场和社会留足空间,创业门槛一降再降。本届政府承诺5年减少三分之一的审批事项,结果提前3年完成了。

    这个改革也是啃硬骨头,而且是对自己动刀,“革”自己的“命”。李克强在这个问题上从未含糊,他曾经在记者会上下决心,称这是“壮士断腕”。

    春江水暖鸭先知。新登记的市场主体出现井喷,去年几乎是一天增加一万家。

    我们寻找的每一个新青年,也是这365万分之一,他们第一时间感受到了“松绑”之后的快感。他们的成功,也是总理的成绩单。

    肯定不是一帆风顺。他们遇到坎坷,遇到困顿,一如中国经济爬坡过坎。创业者需要面临昂贵的地价和飞升的人力成本。

    创新是另一味良药。当旧有的成本线走不下去,创新便能再造一条新成本线。实体店租金高,年纪轻轻的孙寒、李慎贤就到江苏、山东,带领村民开网店。因信息壁垒,使长途货运成本高昂,怀揣新想法的宋睿、崔威制作货运APP,让卡车司机回程不空跑。

    这就是新青年,政府负责阳光,他们负责灿烂。

    这并不是故事的结局。简政放权还在继续,“最后一公里”终将被打通,我们的主人公们也还将面临商海沉浮,融资难、融资贵,是他们不愿触碰的险滩。

    阳光也在继续,针对小微企业的金融扶持雪中送炭。总理在报告中鼓励他们勇于创业创新。总理的报告还给创业者们一颗定心丸:中小微企业大有可为,要扶上马、送一程,使“草根”创新蔚然成风、遍地开花。

    更多个新故事,将从今天开始。

    新京报记者 宋识径

    编辑:闫宪宝


    从根本上遏制权力的“任性” – 新京报 2015-03-06

    各级政府部门一手抓“瘦身”,简政放权,转变职能,强化制度;一手抓“暴晒”,让权力在阳光下接受社会监督,有权才“不敢任性”也“不能任性”。

    ■ 社论

    关注全国“两会”系列评论之四

    “大道至简,有权不可任性。各级政府都要建立简政放权、转变职能的有力推进机制,给企业松绑,为创业提供便利,营造公平竞争环境。”昨天,李克强总理在政府工作报告中提及“任性”,引发广泛关注,报告指出,要用政府权力的“减法”,换取市场活力的“乘法”。

    总理采用流行的网络用语来表述对行政权力的警觉,让人印象深刻。而去年一年多来,中央政府下大力气简政放权,取消和下放超过三分之一行政审批权限,力度之大、范围之广,前所未有。中国经济也由此释放出极大的活力,在持续下行的困境中依然新增1000多万人的就业,这一亮眼的“成绩单”,也从一个侧面验证了这一表述。

    不仅如此,强力推进的简政放权,也一定程度上减少了政府随意干预微观经济的行为,让权力更加公正、透明,有较为清晰的边界。其所产生的经济社会效益,不容低估。

    不过,能不能从根本上遏止权力的“任性”,真正营造出一个公平公正的市场竞争环境,影响社会风气,并最终树立良好的为政之风,恐怕还需要更为艰苦的努力。权力固然“不可任性”,而若想抵达“不敢任性”、“不能任性”的终极目标,还有赖于强有力的制度约束。

    以简政放权为例,眼下很多地方都落实中央规定,取消和下放了很多行政审批权限,但从实际运行的效果看,还远未到额手称庆的时候。这是因为,旧的审批权力消失了,但一些政府部门、官员提供公共产品与公共服务的意识并没有相应地调整,各种卡、要行为并未完全绝迹,据媒体报道,在一些地方甚至还滋生出新的变相的行政审批。

    而在取消和下放审批的同时,部分地方政府部门也出现懒政、怠政的情形。李克强总理也在报告中指出,少数政府机关工作人员“为官不为,在其位不谋其政,该办的事不办”。

    可见,作为调整政治经济社会的重要力量,政府权力不能做什么,必须做什么,做到什么程度,均应该有明确具体的制度约束。既要有边界,比如确定权力清单、市场准入负面清单;也要有责任,比如确定责任清单。而所有权力均需在宪法、法律的框架内作为,真正做到依宪行政、依法行政,并强化问责机制,以去除一切乱作为、不作为。

    此外,还要继续推进政府信息公开,以公开促公平公正。权力除了要接受自上而下的监管问责压力之外,更要接受广泛的公众监督。权力下放得是不是到位,政府管理得是不是合理,有没有提供良好的公共产品与公共服务,社会公众应该有发言权、评判权。如果今后依然像政府工作报告提到的那样,“群众对医疗、养老、住房、交通、教育、收入分配、食品安全、社会治安等还有不少不满意的地方”,则这样的权力运行显然是有待改进的。

    说到底,权力的“任性”源于权力的不透明、不公开,且存在太多的自由裁量。新的一年,希望各级政府部门一手抓“瘦身”,简政放权,转变职能,强化制度;一手抓“暴晒”,让权力在阳光下接受社会监督,有权才“不敢任性”也“不能任性”。

    编辑:闫宪宝


    “假期你去哪儿啦”老师这一问让人郁闷 – 锐圆 南方都市报 2015-03-06

    现在的人都怕问,当官的怕问政问责,打工的怕问收入问对象,就连上学的小朋友,如今也有一问很怕怕,回答起来容易伤到小小自尊心,这一问就是:“假期你去哪儿啦?”

    老师同学如相问,放假你去哪儿啦?现在有明确的指向性,去老家看爷爷看奶奶看外公看外婆这都不能进答案,得体且得分的答案是:欧洲美国日本韩国,最不济也得是东南亚,如果是迪拜神马的高大上地方,那就更牛了。

    比吃比穿是社会主义初级阶段1.0版,比房比车是2.0版,如今要攀比每个假期去哪儿了

    这是升级到终极阶段的节奏了。

    什么事情都要讲现实环境和历史背景,目前中国已经是全球第一大旅游人口输出国,一年到境外进行商务活动和旅游的人数超过了1亿人,在沿海地区,出境人口的比例就更高了,当一个班的小朋友只有一两个出国去了,这只能算是新闻还不能成为话题,

    当比例渐渐升高甚至过半的时候,老师特意问一声“你们假期都去哪里了”就好像变得很自然了。

    出去的孩子会兴高采烈地回答,会把出去的见闻写到作文日记里,这时候不免会有炫耀的意味,没有出去的孩子就会有失落和挫败感,这些孩子的家长就会感到压力扑面而来。

    麦兜的妈妈就有这种压力,她迫于压力打算带麦兜去马尔代夫游玩一趟,但后来还是因为经济原因作罢了,妈妈带着麦兜去了本地的海洋公园,母子俩玩得很开心。

    麦兜开学如果写一篇“去哪儿”的作文,写海洋公园是不是起步就落后于马尔代夫,这就要看老师能不能秉持正确的价值观,麦兜能不能坦然地和同学们交流海洋公园和马尔代夫或迪拜的见闻,这就更要看学校一贯营造的氛围和整个社会的环境了。

    我们希望老师能呵护麦兜这样家境差一些的孩子的自尊心,在言谈举止细微之处要鼓励孩子们“在学习上向最好的同学看齐,在生活上向最低的同学看齐”,起码不要有意无意地激励攀比。老师当然可以问孩子们假期去哪儿啦,但是老师最后追问的应该是孩子们不管去哪里见闻之后见识的高低,而不是去的地方花费的高低。一旦老师您期待的回答是国外高大上的地方,像麦兜这样的孩子是能从您的神色中感受到的,他会沉默,他会郁闷,他甚至会抱怨父母,抱怨社会。

    在一个攀比竞争的社会环境下,学校和老师确实很难做:一方面要维系一个公平平等的环境,维护家境较差孩子们的自尊心,但另一方面也不能百般呵护,绝对屏蔽有关贫富对比的话题。

    正确的做法还是要实事求是,承认学生家庭之间客观存在的贫富不等,一方面抑制富孩子炫耀的行为,同时也鼓励穷孩子自尊自强,营造出排除家庭背景的纯粹孩子们之间的竞争环境

    比学业,比才艺,比“去哪儿”以后见闻之上的见识。

    人生来不平等,这句话是迟早要对孩子讲;而努力可以改变自己的命运,这句话更应该对孩子讲。

    .END

    Leave a comment

    Filed under Electronics DIY Project

    FongDigiOut03 tdd notes

    +++ Current digiOutPinNum = 0 +++

    +++ DigiOut Test Select Menu +++
    +++ Current digiOutPinNum = 0 +++
    0 = Blink SysLed. >>>>
    1 = Blink DigiOutPinNum0. >>>>
    2 = Blink DigiOutPinNum 0 ~ 7. >>>>
    3 = Blink DigitOutPinNum 8 ~ 18. >>>>
    4 = Change current digiOutPinNum. >>>>
    5 = Set current digiOutPinNum HIGH. >>>>
    6 = Set current digitOutPinNum LOW. >>>>
    7 = Repeat pulse current digitOutPinNum 4 times. >>>>
    8 = Blink DigiOutPin 0~18. >>>>
    9 = Reserved. >>>>
    a = Reserved. >>>>
    m = Menu. >>>>
    h = Help. >>>>
    x = Exit. >>>>

    DigiOut Test Selection = ? >>>>
    DigiOut Test Selection = 2 >>>>

    +++ Current digiOutPinNum = 0 +++

    +++ DigiOut Test Select Menu +++
    +++ Current digiOutPinNum = 0 +++
    0 = Blink SysLed. >>>>
    1 = Blink DigiOutPinNum0. >>>>
    2 = Blink DigiOutPinNum 0 ~ 7. >>>>
    3 = Blink DigitOutPinNum 8 ~ 18. >>>>
    4 = Change current digiOutPinNum. >>>>
    5 = Set current digiOutPinNum HIGH. >>>>
    6 = Set current digitOutPinNum LOW. >>>>
    7 = Repeat pulse current digitOutPinNum 4 times. >>>>
    8 = Blink DigiOutPin 0~18. >>>>
    9 = Reserved. >>>>
    a = Reserved. >>>>
    m = Menu. >>>>
    h = Help. >>>>
    x = Exit. >>>>

    DigiOut Test Selection = ? >>>>
    DigiOut Test Selection = c >>>>
    Sorry, no such option, …
    +++ Current digiOutPinNum = 0 +++

    +++ DigiOut Test Select Menu +++
    +++ Current digiOutPinNum = 0 +++
    0 = Blink SysLed. >>>>
    1 = Blink DigiOutPinNum0. >>>>
    2 = Blink DigiOutPinNum 0 ~ 7. >>>>
    3 = Blink DigitOutPinNum 8 ~ 18. >>>>
    4 = Change current digiOutPinNum. >>>>
    5 = Set current digiOutPinNum HIGH. >>>>
    6 = Set current digitOutPinNum LOW. >>>>
    7 = Repeat pulse current digitOutPinNum 4 times. >>>>
    8 = Blink DigiOutPin 0~18. >>>>
    9 = Reserved. >>>>
    a = Reserved. >>>>
    m = Menu. >>>>
    h = Help. >>>>
    x = Exit. >>>>

    DigiOut Test Selection = ? >>>>


    // *** testFongDuino03v2015mar05hkt2144.ino ****
    // ********************************************************************
    // FongDuino03 tlfong01.com 201feb07
    // ********************************************************************
    #include “Arduino.h”
    #include “HardwareSerial.h”
    #include <SPI.h>
    #include <FongDigiOut03.h>
    #include <FongDigiControl03.h>
    #include <FongHardSerial03.h>
    #include <FongBlueToothBase03.h>
    #include <FongSpi03.h>8
    #include <FongAdc03.h>
    #include <FongIox03.h>
    #include <FongKeyPad03.h>

    /*
    #include <Wire.h>
    #include <FongAnaIn02.h>
    #include <FongEeprom02.h>
    #include <FongI2c02.h>
    #include <FongBlueToothConnect02.h>
    #include <FongTest02.h>
    */

    enum InitNum {InitNum0 = 0, InitNum1 = 1, InitNum2 = 2, InitNum3 = 3};
    enum TestNum {TestNum0 = 0, TestNum1 = 1, TestNum2 = 2, TestNum3 = 3, \
    TestNum4 = 4, TestNum5 = 5, TestNum6 = 6, TestNum7 = 7};

    void setup()
    {
    Serial.begin(9600);
    }

    void loop()
    {

    FongDigiOut03 fdo1(InitNum0, TestNum0); // 2015mar05 testing

    // FongDigiControl03 fdc1(InitNum0, TestNum1); // 2015feb21 OK
    // FongHardSerial03 fhs1(InitNum0, TestNum3); // 2015feb12 OK
    // FongBlueToothBase03 fbtb1(InitNum0, TestNum4); // 2015feb26 OK
    // FongSpi03 fspi1(InitNum0, TestNum4); // 2015feb27 OK
    // FongAdc03 fadc1(InitNum0, TestNum5); // 2015feb21 OK
    // FongIox03 fiox1(InitNum0, TestNum6); // 2015feb OK
    // FongKeyPad03 fkp1(InitNum0, TestNum7); // 2015feb28 testing

    // FongAnaIn02 fai1(InitNum0, TestNum0); // OK 2015jan22
    // FongI2c02 fi2c1(InitNum0, TestNum7); // testing
    // FongEeprom02 feep1(InitNum0, TestNum5); //To test later
    // FongBlueToothConnect02 fbtc1(InitNum0, TestNum2); // To test later
    // FongTest02 ft1(Init0, Test0); // To test later

    while (true) { };
    }

    // *** End ***


    // *** FongKeyPad03.h *******

    // ********************************************************************
    // FongKeyPad03 – TL Fong 2015mar02hkt2048
    // ********************************************************************

    #ifndef FongKeyPad03_h
    #define FongKeyPad03_h

    #include <Arduino.h>
    #include <FongIox03.h>

    class FongKeyPad03: public FongIox03
    {
    public:

    // *** Constructors *******************************************************

    FongKeyPad03(int8_t initNum, int8_t testNum);

    // *** Config enum ********************************************************

    // enum spiSlaveNum {SpiSlave0 = 0, SpiSlave1 = 1, SpiSlave2 = 2, SpiSlave3 = 3};
    // enum KeyPadSlaveNum {KeyPadSpiSlaveNum0 = SpiSlave0, KeyPadSpiSlaveNum1 = SpiSlave2, \
    KeyPadSpiSlaveNum2 = SpiSlave2};

    enum IoxPortNumKeyPad {IoxPortNumKeyPad = IoxPortNum5};

    // enum IoxPortNumKeyPad {IoxPortNumKeyPad = IoxPortNum0};

    // enum IoxPortNumKeyPad {IoxPortNumKeyPad = IoxPortNum6};

    // *** System functions ***************************************************

    enum InitNum {InitNum0 = 0, InitNum1 = 1, InitNum2 = 2, InitNum3 = 3};
    enum TestNum {TestNum0 = 0, TestNum1 = 1, TestNum2 = 2, TestNum3 = 3, \
    TestNum4 = 4, TestNum5 = 5, TestNum6 = 6, TestNum7 = 7};

    int8_t _initNum;
    int8_t _testNum;

    // *** KeyPad MCP23S17 ************************************************************

    int8_t keyPadNum;
    int8_t ioxPortNum;

    enum KeyPadNum {KeyPadNum0 = 0, KeyPadNum1 = 1, KeyPadNum2 = 2, KeyPadNum3 = 3, \
    KeyPadNum4 = 4, KeyPadNum5 = 5, KeyPadNum6 = 6, KeyPadNum7 = 7, \
    TotalKeyPadNum = 8};

    enum KeyPadConfigArrayArrayIndex {IoxPortNumIndex = 0, TotalKeyPadConfigArrayArrayIndex = 1};

    int8_t keyPadConfigArrayArray[TotalKeyPadNum][TotalKeyPadConfigArrayArrayIndex];

    void initKeyPad(int8_t initNum, int8_t testNum);

    void testKeyPad(int8_t initNum, int8_t testNum);

    enum MenuNum {FirstSelectNum = 0, LastSelectNum = 13, TotalSelectNum = 14};
    void printKeyPadSelectMenu(int8_t firstSelectNum, int8_t lastSelectNum, int8_t initNum, int8_t testNum);
    void printKeyPadSelectMenu(int8_t initNum, int8_t testNum);

    char askKeyPadSelectChar(String askString, int8_t initNum, int8_t testNum);
    void exeKeyPadSelectFunction(char selectChar, int8_t initNum, int8_t testNum);

    // *** Keypad functions ***

    enum KeyPadInitBytes {GpioInitByte = 0xf0, IoDirInitByte = 0xf0, IntConInitByte = 0xf0, \
    DefValInitByte = 0xf0, GpIntEnInitByte = 0xf0, GpPuInitByte = 0x0f};

    enum BytePattern {GpioNoKeyPressedPattern = 0xf0, IntCapNoInterruptPattern = 0x00, \
    IntFlagNoInterruptPattern = 0x00};

    void initMcp23s08KeyPad();
    byte waitGetKeyPressedData();

    // *** Keypad setting bytes ***

    enum IoDirByte {UpperNibbleInputLowerNibbleOutput = 0xf0, UpperNibbleOutputLowerNibbleInput = 0x0f};
    enum GpioByte {UpperNibbleHighLowerNibbleLow = 0xf0, UpperNibbleLowLowerNibbleHigh = 0x0f};
    enum NibbleByte {AllNibbleBitsHigh = 0xf, AllNibbleBitsLow = 0x0};

    void setIoxPortDirection(int8_t ioxPortNum, byte ioDirByte);
    void initKeyPadRowColPins(int8_t ioxPortNum);

    void writeIoxPortLowerNibble(int8_t ioxPortNum, byte writeLowerNibbleByte);
    void writeIoxPortUpperNibble(int8_t ioxPortNum, byte writeUpperNibbleByte);

    byte readIoxPortLowerNibble(int8_t ioxPortNum);
    byte readIoxPortUpperNibble(int8_t ioxPortNum);

    // void readKeyPadRowPins(int8_t ioxPortNum);

    int8_t askKeyPadNum();

    void setKeyPadPortDirection(int8_t keyPadNum, byte ioDirByte);
    void writeKeyPadPortByte(int8_t keyPadNum, byte writeDataByte);
    void blinkKeyPadPortByte(int8_t keyPadNum, int8_t blinkCount);

    void writeKeyPadPortLowerNibble(int8_t keyPadNum, byte writeLowerNibbleByte);
    void blinkKeyPadPortLowerNibble(int8_t keyPadNum, int8_t blinkCount);

    private:
    };

    #endif

    // *** End ********************************************************************


    // *** FongKeyPad03.cpp *******

    // ********************************************************************
    // FongKeyPad03 – TL Fong 2015mar03hkt2044
    // ********************************************************************

    #include <FongKeyPad03.h>

    // *** Constructors ***********************************************************

    FongKeyPad03::FongKeyPad03(int8_t initNum, int8_t testNum): FongIox03(initNum, testNum)
    {
    Serial.println(F(“\nBegin FongKeyPad03::FongKeyPad03(), … >>>>>>>>>”));

    _initNum = initNum;
    _testNum = testNum;

    beep();

    if (_initNum <= InitNum0)
    initKeyPad(_initNum, _testNum);

    if (_testNum <= TestNum7)
    testKeyPad(_initNum, _testNum);

    Serial.println(F(“End FongKeyPad03::FongKeyPad03(), … >>>>>>>>>”));
    }

    // *** Init functions ***

    void FongKeyPad03::initKeyPad(int8_t initNum, int8_t testNum)
    {
    Serial.println(F(“\nBegin FongKeyPad03::initKeyPad(). >>”));

    keyPadConfigArrayArray[KeyPadNum0][IoxPortNumIndex] = IoxPortNum0; // SpiSs2 MCP23S17 Port A
    keyPadConfigArrayArray[KeyPadNum1][IoxPortNumIndex] = IoxPortNum1; // SpiSs2 MCP23S17 Port B
    keyPadConfigArrayArray[KeyPadNum2][IoxPortNumIndex] = IoxPortNum2; // SpiSs3 MCP23S17 Port A
    keyPadConfigArrayArray[KeyPadNum3][IoxPortNumIndex] = IoxPortNum3; // SpiSs3 MCP23S17 Port B
    keyPadConfigArrayArray[KeyPadNum4][IoxPortNumIndex] = IoxPortNum4; // SpiSs4 MCP23S08 Port
    keyPadConfigArrayArray[KeyPadNum5][IoxPortNumIndex] = IoxPortNum5; // SpiSs5 MCP23S08 Port
    keyPadConfigArrayArray[KeyPadNum6][IoxPortNumIndex] = IoxPortNum6; // SpiSs6 MCP23S17 Port A
    keyPadConfigArrayArray[KeyPadNum7][IoxPortNumIndex] = IoxPortNum7; // SpiSs6 MCP23S17 Port B

    keyPadNum = KeyPadNum0; // *** default keyPadNum ***
    ioxPortNum = keyPadConfigArrayArray[keyPadNum][IoxPortNumIndex];
    initMcp23Sxx(ioxPortNum);

    // initKeyPadRowColPins(ioxPortNum);

    Serial.println(F(“End FongKeyPad03::initKeyPad(). >>\n”));
    }

    // *** Test functions *********************************************************

    void FongKeyPad03::testKeyPad(int8_t initNum, int8_t testNum)
    {
    char selectChar;

    Serial.println(F(“Begin FongKeyPad03::testKeyPad(). >>”));

    Serial.print(F(“\n+++ Current keyPadNum = “));
    Serial.print(keyPadNum);
    Serial.println(F(” +++”));

    Serial.print(F(“+++ Current ioxPortNum = “));
    Serial.print(ioxPortNum);
    Serial.println(F(” +++”));

    printKeyPadSelectMenu(initNum, testNum);
    selectChar = askKeyPadSelectChar(“KeyPad Test Select”, initNum, testNum);

    while (selectChar != ‘x’)
    {
    exeKeyPadSelectFunction(selectChar, initNum, testNum);

    Serial.print(F(“\n+++ Current keyPadNum = “));
    Serial.print(keyPadNum);
    Serial.println(F(” +++”));

    Serial.print(F(“+++ Current ioxPortNum = “));
    Serial.print(ioxPortNum);
    Serial.println(F(” +++”));

    printKeyPadSelectMenu(initNum, testNum);

    selectChar = askKeyPadSelectChar(“KeyPad Test Select”, initNum, testNum);
    }

    Serial.println(F(“End FongKeyPad03::testKeyPad(). >>”));
    }

    void FongKeyPad03::printKeyPadSelectMenu(int8_t initNum, int8_t testNum)
    {
    printKeyPadSelectMenu(FirstSelectNum, LastSelectNum, initNum, testNum);
    }

    char FongKeyPad03::askKeyPadSelectChar(String askString, int8_t initNum, int8_t testNum)
    {
    char selectChar;
    char dummyChar;

    // *** flush read buffer ***
    while (Serial.available() > 0) {dummyChar = Serial.read();} // flush

    // *** get user selection ***
    Serial.print(F(“\n”));
    Serial.print(askString);
    Serial.println(F(” = ? >>>> “));

    while (Serial.available() == false) {} // wait for char
    selectChar = Serial.read();
    Serial.print(F(“”));
    Serial.print(askString);
    Serial.print(F(” = “));
    Serial.print(selectChar);
    Serial.println(F(” >>>>”));
    return selectChar;
    }

    int8_t FongKeyPad03::askKeyPadNum()
    {
    char dummyReadChar;
    char keyPadNumChar;
    int keyPadNum;

    Serial.print(F(“\n*** Select keyPad Num, …”));
    Serial.print(F(“\n 0 – keyPadNum = 0″));
    Serial.print(F(“\n 1 – keyPadNum = 1″));
    Serial.print(F(“\n 2 – keyPadNum = 2″));
    Serial.print(F(“\n 3 – keyPadNum = 3″));
    Serial.print(F(“\n 4 – keyPadNum = 4″));
    Serial.print(F(“\n 5 – keyPadNum = 5″));
    Serial.print(F(“\n 6 – keyPadNum = 6″));
    Serial.print(F(“\n 7 – keyPadNum = 7″));

    // *** flush read buffer ***
    while (Serial.available() > 0) {dummyReadChar = Serial.read();} // flush
    Serial.print(F(“\nEnter KeyPad Num, … \n”));
    while (Serial.available() == false) { };
    keyPadNumChar = Serial.read();
    keyPadNum = keyPadNumChar – ‘0’;

    ioxPortNum = keyPadConfigArrayArray[keyPadNum][IoxPortNumIndex];
    initMcp23Sxx(ioxPortNum);

    // Serial.print(F(“\n+++ Current keyPadNum = “));
    // Serial.print(keyPadNum);
    // Serial.println(F(” +++”));

    // Serial.print(F(“+++ Current ioxPortNum = “));
    // Serial.print(ioxPortNum);
    // Serial.println(F(” +++”));

    return keyPadNum;
    }

    // *** Print select function menu *********************************************

    void FongKeyPad03::printKeyPadSelectMenu(int8_t firstSelectNum, int8_t lastSelectNum, int8_t initNum, int8_t testNum)
    {
    const char menu0[] PROGMEM = “0 = change keyPadNum. >>>>”;
    const char menu1[] PROGMEM = “1 = blink keyPadPort byte. >>>>”;
    const char menu2[] PROGMEM = “2 = blink keyPadPort lower nibble. >>>>”;
    const char menu3[] PROGMEM = “3 = blink upper nibble. >>>>”;
    const char menu4[] PROGMEM = “4 = read both nibbles. >>>>”;
    const char menu5[] PROGMEM = “5 = write lower nibble 0x5, read upper nibble. >>>>”;
    const char menu6[] PROGMEM = “6 = Reserved. >>>>”;
    const char menu7[] PROGMEM = “7 = Reserved. >>>>”;
    const char menu8[] PROGMEM = “8 = Reserved. >>>>”;
    const char menu9[] PROGMEM = “9 = Reserved. >>>>”;
    const char menu10[] PROGMEM = “a = Reserved. >>>>”;
    const char menu11[] PROGMEM = “m = Menu. >>>>”;
    const char menu12[] PROGMEM = “h = Help. >>>>”;
    const char menu13[] PROGMEM = “x = Exit. >>>>”;

    const char * const selectMenu[] PROGMEM = \
    {menu0, menu1, menu2, menu3, menu4, \
    menu5, menu6, menu7, menu8, menu9, \
    menu10, menu11, menu12, menu13};

    Serial.println(F(“\n### KeyPad test selection ###”));
    for (int8_t i = firstSelectNum; i <= lastSelectNum; i++)
    {
    Serial.println(selectMenu[i]);
    }
    }

    // *** Execute selection function *********************************************

    void FongKeyPad03::exeKeyPadSelectFunction(char selectChar, int8_t initNum, int8_t testNum)
    {
    byte readDataByte;
    byte readDataNibble;

    if (selectChar == ‘0’)
    {
    keyPadNum = askKeyPadNum();
    }
    else if (selectChar == ‘1’)
    {
    setKeyPadPortDirection(keyPadNum, 0x00);
    blinkKeyPadPortByte(keyPadNum, 4);
    }
    else if (selectChar == ‘2’)
    {
    setKeyPadPortDirection(keyPadNum, 0xf0);
    blinkKeyPadPortLowerNibble(keyPadNum, 2);
    }
    else if (selectChar == ‘3’)
    {
    ioxPortWrite(ioxPortNum, IoDir, 0x0f); // lower nibble out, higher nibble in
    for (int8_t i = 0; i < 2; i++)
    {
    ioxPortWrite(ioxPortNum, Olat, 0xff); // all port pins High
    delay(200);
    ioxPortWrite(ioxPortNum, Olat, 0x00); // all port pins Low
    delay(200);
    }

    selectChar = ‘m';
    }
    else if (selectChar == ‘4’)
    {
    ioxPortWrite(ioxPortNum, IoDir, 0xff);
    // ioxPortWrite(ioxPortNum, Ipol, 0x00); // input polarity not inverted
    readDataByte = ioxPortRead(ioxPortNum, Gpio);
    Serial.print(F(“read data byte = “));
    Serial.println(readDataByte, HEX);

    // selectChar = ‘m';
    }
    else if (selectChar == ‘5’)
    {
    ioxPortWrite(ioxPortNum, IoDir, 0xf0);

    ioxPortWrite(ioxPortNum, Olat, 0x01);
    // ioxPortWrite(ioxPortNum, Gpio, 0x05);
    readDataByte = ioxPortRead(ioxPortNum, Gpio);
    readDataNibble = readDataByte >> 4;
    Serial.print(F(“read data byte = “));
    Serial.println(readDataNibble, HEX);
    delay(1000);

    ioxPortWrite(ioxPortNum, Olat, 0x02);
    // ioxPortWrite(ioxPortNum, Gpio, 0x0a);
    readDataByte = ioxPortRead(ioxPortNum, Gpio);
    readDataNibble = readDataByte >> 4;
    Serial.print(F(“read data byte = “));
    Serial.println(readDataNibble, HEX);
    delay(1000);

    ioxPortWrite(ioxPortNum, Olat, 0x03);
    // ioxPortWrite(ioxPortNum, Gpio, 0x06);
    readDataByte = ioxPortRead(ioxPortNum, Gpio);
    readDataNibble = readDataByte >> 4;
    Serial.print(F(“read data byte = “));
    Serial.println(readDataNibble, HEX);
    delay(1000);

    ioxPortWrite(ioxPortNum, Olat, 0x04);
    // ioxPortWrite(ioxPortNum, Gpio, 0x07);
    readDataByte = ioxPortRead(ioxPortNum, Gpio);
    readDataNibble = readDataByte >> 4;
    Serial.print(F(“read data byte = “));
    Serial.println(readDataNibble, HEX);
    delay(1000);

    selectChar = ‘m';
    }
    else if (selectChar == ‘6’)
    {
    for (unsigned long i = 0; i < 1000000; i++)
    {
    // ioxWrite(spiSlaveNum, Olat, 0x55);
    ioxPortWrite(ioxPortNum, Olat, 0x00);
    delay(2);
    }
    selectChar = ‘m';
    }
    else if (selectChar == ‘7’) // *** Test KeyPad ***
    {
    // keyPressedDataByte = waitGetKeyPressedData();
    selectChar = ‘m';
    }
    else if (selectChar == ‘m’)
    {
    Serial.print(F(“\n+++ Current keyPadNum = “));
    Serial.print(keyPadNum);
    Serial.println(F(” +++”));

    Serial.print(F(“\n+++ Current ioxPortNum = “));
    Serial.print(ioxPortNum);
    Serial.println(F(” +++”));

    printKeyPadSelectMenu(initNum, testNum);
    selectChar = ‘n';
    }
    else if (selectChar == ‘h’)
    {
    Serial.print(“Sorry, no help available, …”);
    }
    // else
    // {
    // Serial.print(“Sorry, no such option, …”);
    // }
    // selectChar = ‘m';
    }

    byte FongKeyPad03::waitGetKeyPressedData()
    {
    byte gpioReadByte;
    byte intCapReadByte;
    byte intFlagReadByte;
    byte rowDataNibble;
    bool keyPressed;

    gpioReadByte = ioxPortRead(spiSlaveNum, Gpio);
    rowDataNibble = gpioReadByte >> 4;
    intCapReadByte = ioxPortRead(spiSlaveNum, IntCap);
    intFlagReadByte = ioxPortRead(spiSlaveNum, IntF);

    Serial.print(F(“Gpio read byte = “));
    Serial.println(gpioReadByte, HEX);

    Serial.print(F(“Row data nibble = “));
    Serial.println(rowDataNibble, HEX);

    Serial.print(F(“IntCap read byte = “));
    Serial.println(intCapReadByte, HEX);

    Serial.print(F(“IntFlag read byte = “));
    Serial.println(intFlagReadByte, HEX);

    Serial.println(F(“Now waiting for key pressed, …”));
    keyPressed = false;

    while (keyPressed == false)
    {
    //intCapReadByte = ioxPortRead(spiSlaveNum, IntCap);
    //if (intCapReadByte == IntCapNoInterruptPattern)
    // keyPressed = false;

    // gpioReadByte = ioxPortRead(spiSlaveNum, Gpio);
    // rowDataNibble = gpioReadByte >> 4;
    // if (rowDataNibble == 0x0f)
    // keyPressed = false;
    // else
    // keyPressed = true;

    // intCapReadByte = ioxPortRead(spiSlaveNum, IntCap);
    // if (intCapReadByte == 0x00)
    // keyPressed = false;
    // else
    // keyPressed = true;

    intFlagReadByte = ioxPortRead(spiSlaveNum, IntF);
    if (intFlagReadByte == 0x00)
    keyPressed = false;
    else
    keyPressed = true;
    }

    Serial.print(F(“Gpio read byte = “));
    Serial.println(gpioReadByte, HEX);

    Serial.print(F(“Row data nibble = “));
    Serial.println(rowDataNibble, HEX);

    Serial.print(F(“IntCap read byte = “));
    Serial.println(intCapReadByte, HEX);

    Serial.print(F(“IntFlag read byte = “));
    Serial.println(intFlagReadByte, HEX);

    return intCapReadByte;
    }

    // *** KeyPad functions ***

    //void FongKeyPad03::setIoxPortDirection(int8_t ioxPortNum, byte ioDirByte)
    //{
    // ioxPortWrite(ioxPortNum, IoDir, ioDirByte);
    //}

    void FongKeyPad03::setKeyPadPortDirection(int8_t keyPadNum, byte ioDirByte)
    {
    int8_t ioxPortNum = keyPadConfigArrayArray[keyPadNum][IoxPortNumIndex];
    ioxPortWrite(ioxPortNum, IoDir, ioDirByte);
    }

    void FongKeyPad03::writeKeyPadPortByte(int8_t keyPadNum, byte writeDataByte)
    {
    int8_t ioxPortNum = keyPadConfigArrayArray[keyPadNum][IoxPortNumIndex];
    ioxPortWrite(ioxPortNum, Olat, writeDataByte);
    }

    void FongKeyPad03::blinkKeyPadPortByte(int8_t keyPadNum, int8_t blinkCount)
    {
    int8_t ioxPortNum = keyPadConfigArrayArray[keyPadNum][IoxPortNumIndex];
    ioxPortWrite(ioxPortNum, Olat, 0x00);

    for (int8_t i = 0; i < blinkCount; i++)
    {
    ioxPortWrite(ioxPortNum, Olat, 0xff);
    delay(200);
    ioxPortWrite(ioxPortNum, Olat, 0x00);
    delay(200);
    }
    }

    //void FongKeyPad03::writeIoxPortLowerNibble(int8_t ioxPortNum, byte writeLowerNibbleByte)
    //{
    // byte outputLatchByte = writeLowerNibbleByte << 0;
    // ioxPortWrite(ioxPortNum, Olat, outputLatchByte);
    //}

    void FongKeyPad03::writeKeyPadPortLowerNibble(int8_t keyPadNum, byte writeLowerNibbleByte)
    {
    int8_t ioxPortNum = keyPadConfigArrayArray[keyPadNum][IoxPortNumIndex];
    byte outputLatchByte = writeLowerNibbleByte << 0;
    ioxPortWrite(ioxPortNum, Olat, outputLatchByte);
    }

    void FongKeyPad03::blinkKeyPadPortLowerNibble(int8_t keyPadNum, int8_t blinkCount)
    {
    int8_t ioxPortNum = keyPadConfigArrayArray[keyPadNum][IoxPortNumIndex];
    ioxPortWrite(ioxPortNum, Olat, 0x00);

    for (int8_t i = 0; i < blinkCount; i++)
    {
    writeKeyPadPortLowerNibble(keyPadNum, 0x0f);
    delay(200);
    writeKeyPadPortLowerNibble(keyPadNum, 0x00);
    delay(200);
    }
    }

    void FongKeyPad03::writeIoxPortUpperNibble(int8_t ioxPortNum, byte writeUpperNibbleByte)
    {
    byte outputLatchByte = writeUpperNibbleByte << 4;
    ioxPortWrite(ioxPortNum, Olat, outputLatchByte);
    }

    byte FongKeyPad03::readIoxPortLowerNibble(int8_t ioxPortNum)
    {
    byte readDataByte;
    byte readDataNibble;

    readDataByte = ioxPortRead(ioxPortNum, Gpio);
    readDataNibble = readDataByte &= 0x0f;
    return readDataNibble;
    }

    byte FongKeyPad03::readIoxPortUpperNibble(int8_t ioxPortNum)
    {
    byte readDataByte;
    byte readDataNibble;

    readDataByte = ioxPortRead(ioxPortNum, Gpio);
    readDataNibble = readDataByte >> 4;
    return readDataNibble;

    Serial.print(F(“read data nibble = “));
    Serial.print(readDataNibble);
    }

    /*
    for (int8_t i = 0; i < 100; i++)
    {
    readDataNibble = ioxPortRead(ioxPortNum, Gpio);
    Serial.print(F(“keypad row pins read = “));
    Serial.println(readDataByte);
    delay(1000);
    }
    */

    void FongKeyPad03::initKeyPadRowColPins(int8_t ioxPortNum)
    {
    // setIoxPortDirection(ioxPortNum, UpperNibbleInputLowerNibbleOutput);
    writeIoxPortLowerNibble(ioxPortNum, AllNibbleBitsLow);

    ioxPortWrite(ioxPortNum, IoDir, 0xf0);
    // ioxPortWrite(ioxPortNum, Olat, 0x0f); // set all column pins High
    // ioxPortWrite(ioxPortNum, Olat, 0x00); // set all column pins Low
    ioxPortWrite(ioxPortNum, Olat, 0x05); // set column pins 0101
    }

    // *** End ********************************************************************

    .END

    Leave a comment

    Filed under Electronics DIY Project

    君子信而後勞其民 – 范式

    理直氣壯地否決831決議 – 程翔 信報 2015年03月05日

    關於“特首普選”的第二階段諮詢本周結束。根據政務司司長透露,政府最遲將於7月8日向立法會提交以“人大831決議”為基礎的所謂“特首普選”方案到立法會表決。所以,從現在開始到表決,大概還有四個月的時間。在這四個月裡,反對假普選的香港人要在全港範圍展開一場深入細緻的宣講工作,向普羅大眾解釋為什麼我們應該堅決否決任何以“831決議”為基礎的所謂“特首普選”方案。這樣才有利於我們理直氣壯地否決“831決議”。

    本來,經歷了“雨傘運動”後,否決831決議的理據應該深入民心,無奈政府的強勢宣傳(如“有好過無”) 和欺騙(如“將來可以優化”),加上所有親建制的、一些自稱中間派的、以及少數幾個泛民的知識份子,都竭盡全力去說服香港人接受一些他們本身也承認不理想、不圓滿的東西。這就使得泛民議員們能否否決831決議,成為一個不能輕視的問題。

    筆者認同桑普兄的憂慮(見《中共撬票的勝算和三大變數》2015年3月1日輔仁網),特區政府的宣傳加上中央政府的蘿蔔加大棒的作用下,偽造出一個大多數市民支持“袋住先”的民調結果來反迫泛民議員,能否否決831決議就會成為懸念。所以,從現在開始,各泛民政黨、各公民團體就應該有計劃地開展基層宣傳活動,使否決831決議的理據深入民心,為葬送831決議打下堅實的民意基礎。

    要做好群眾的說服工作,首先就要向大家解釋,基於最基本的政治道德,我們不能把人民群眾貶為投票工具。我們不妨引用中共自己的說話,來說明這個道理的。我過去多次引用中共1944年的這番話:

    「選舉權是不是能夠徹底地、充分地、有效地運用,與被選舉權有無不合理的限制與剝奪,具有著不可分離的密切關係。

    本來,廣義地說,選舉權就包括被選舉權在內。有選舉權的運用,就必有被選舉的物件。

    因而有選舉權存在,就同時,有被選舉權存在。如果被選舉權受了限制,則選舉權的運用,也就受了限制。

    具體地說,假使某些人民被剝奪了被選舉權,則有選舉權的人就不能去選舉他們,因而選舉權的運用,也就受著限制了。

    所以真正的普選制,不僅選舉權要“普通”、“平等”。而且被選舉權也要“普通”、“平等”;

    不僅人民都要享有同等的選舉權,而且人民都要享有同等的被選舉權。……..任何人的被選舉權都不應該被限制、被剝奪。

    不僅不應該以資產多寡、地位高下、權力大小為標準,而且也不該以學問優劣、知識多少為標準。唯一的標準就是能不能代表人民的意思和利害,是不是為人民所擁護,因而也就只有讓人民自己去選擇。

    如果事先限定一種被選舉的資格,甚或由官方提出一定的候選人,那麼縱使選舉權沒有被限制,也不過把選民做投票的工具罷了」。

    見《新華日報》1944年2月2日社論:《論選舉權》

    共產黨執政前這番話,比1948年聯合國通過的《世界人權宣言》以及由此派生的1966年的《公民及政治權利國際公約》還要來得早,說明中共完全知道什麼是真普選什麼是假普選,而假普選的實質,是“把選民做投票的工具罷了”。基於政治道德,我們不能支持831決議,因為這樣做只會把市民貶為投票工具。

    其次,我們應該強調831決議的違憲本質,我們無法支持一個違憲的決議。

    “831決議”是以白皮書的論述為基礎,但白皮書卻公然作出從文字上及精神上都違反了《基本法》的規定,而這一點尚未引起香港人應有的關切以及反抗。

    白皮書對香港自治權是這樣表述的:“3.特別行政區享有立法權,有獨立的司法權和終審權。現行的法律、法令、條例基本不變。(見白皮書:一、香港順利回歸祖國的歷程)。

    對比《中英聯合聲明》第三條(三)“香港特別行政區享有行政管理權、立法權、獨立的司法權和終審權。現行的法律基本不變”。

    再對比《基本法》,該法第二條:“全國人民代表大會授權香港特別行政區依照本法的規定實行高度自治,享有行政管理權、立法權、獨立的司法權和終審權”。

    這個對比說明一個事實:即白皮書明目張膽地竄改了《中英聯合聲明》和《基本法》關於香港享有行政管理權、立法權、司法權和終審權的規定,實質地剝奪了香港原本應該有的行政管理權,因此白皮書是違憲的。

    《中英聯合聲明》是中共對英國和國際社會的承諾,而《基本法》則是對香港人的承諾。筆者採訪了這兩個檔的草擬全過程,知道它們裡面的每一個字都是經過雙方(中英雙方以及北京和香港雙方)字斟句酌反覆推敲出來的。這兩份審慎制定的文件,其中關於香港行政管理權的高度自治這麼重要的規定,現在就輕輕被一紙白皮書偷走。試問中共如何向國際社會交待,如何向香港人民交待?

    由於白皮書本身是違憲的,所以基於白皮書的論述而作出的831決議,本質上也就是違憲的。

    關於831違憲的理據,前政協委員劉夢熊先生已列舉多達8處,這裏不贅。他已經正式去函正在開會的全國人大按照憲法62條11款的規定糾正人大常委831決議(見《明報》2015年3月3日)。無獨有偶,另一位與建制派素有溝通的時事評論員尹靖廷先生也指出831違憲的地方,同樣提出要按照憲法62條11款的規定糾正人大常委831決議,他還提出香港人應研究如何展開對831決議的違憲審查的途徑。詳見作者兩篇文章:

    闢「違憲審查」蹊徑爭取公平提名權 (信報, January 14, 2014)

    解決政治桎梏提請人大「違憲審查」(明報, November 8, 2014)

    可見得,只要是敢講真話的人都看得出831決議的不合憲、不合法的地方。

    所以,在今後四個月的時間裏,全港希望有真普選的人士,都要向全體市民宣傳這兩點:

    (一) 831決議是旨在把市民變成“投票工具”因而是不道德的。

    (二) 831決議是違憲的,因而根據它作出的方案是非法的。

    這個道理講清楚後,爭取絕大多數市民理解為什麼要否定831決議,這才能夠讓立法會議員理直氣壯地否決政府的偽政改方案。


    黃任匡﹕諫林鄭書 – 明報 2015年03月05日

    2月28日的座談會中,香港醫學會繼梁家騮議員之後,公布第二輪民調結果。業界再一次以過半的比數,否決袋住先。

    醫生再次發聲,鏗鏘而堅定。我們成功守衛了醫學業界的尊嚴。

    鐵板一塊 訓話諮詢

    由最初否決進行民調,到騮哥率先採納業界意見,幾經兜轉,香港醫學會會董後來終於決定進行政改民調,可算是從善如流。民調結果再次否決8‧31框架,醫學會依然不偏不倚如實公布(儘管有輿論批評史泰祖,仍然聲稱會繼續爭取通過方案,是輸打贏要),可算是勇於面對現實。

    可惜,反觀林鄭月娥於座談會當日,鐵板一塊,毫無誠意,名為諮詢,實則訓話

    司長不斷重申,8‧31框架無可更改。她甚至「畫公仔畫出腸」地指出:

    中央政府在政改問題裏,擁有無可置疑的話語權。如果不接受人大框架的既成事實,任何進一步的討論都只會是雞同鴨講了。

    在座同業聽罷,不禁為之氣結。這種「

    你再不聽話,我們就不談了

    」的霸道氣焰,是哪門子的諮詢?這還算什麼有商有量?

    座談會當日,林鄭司長有關政改困局的論述之中,萬變不離「

    政治現實

    」4字,企圖以8‧31框架的既成事實,迫使醫生業界忍氣吞聲,消極接受。

    事實上,什麼是政治現實?

    過去的兩個月內,由梁家騮議員和香港醫學會分別舉辦的兩大業界民調,科學化而相互獨立,結果卻不約而同,顯示有過半的業界同行不接受袋住先。

    一再彰顯的堅定民意,這就是政治現實

    二度民調 民意一致

    政改問題,茲事體大。須得絕大部分港人共識同意的方案,方可保障社會穩步前行。正因如此,才會有「此等重要議題提交立法會時,須得三分之二贊成票方可通過」的規定。如今,二度民調,一再證明,我們醫學界的政治現實就是:醫生不要8‧31框架。人大框架不但不能達至絕大多數業界同意,甚至連半數都不及。為什麼以林鄭司長、政改三人組,以至梁振英政府,就不能面對這個醫學專業界別的政治現實,厚顏無恥地要求港人多數服從少數?

    林鄭司長,縱然外界對史泰祖醫生以至香港醫學會諸多批評,但是起碼這一次,醫學會從善如流的智慧,還有面對民意的勇氣,都值得你向他們多多學習。

    卿本佳人 奈何作賊

    一向以來,大家心目中的林鄭月娥,是「好打得」的精英公務員。曾幾何時,不少香港人曾經期望,你會有足夠的魄力,終於會不再拘泥於8‧31框架的掣肘,為香港人謀求普選出路。

    可惜時至今日,你仍然只是在市民面前大玩掩眼法,以8‧31框架逼香港人撕裂歸邊,再把政改失敗的責任推向否定框架的一方。

    卿本佳人,奈何作賊。

    奉勸司長,回頭是岸。


    香港高官的肺腑 – 古德明 蘋果日報 2015年03月05日

    梁振英下令禁止官員出席民主黨黨慶。資料圖片

    二月二十七日,香港民主黨舉辦二十周年黨慶晚宴,張炳良、高永文、邱誠武、許曉暉等所謂問責高官,本來俯允出席,不料上司梁振英頒下抵制民主黨令,於是張、高、邱、許四人,或以「外遊公幹」為名,或以「休假卻埽」為詞,共同爽約,令民主黨面目無光。

    二零一零年,民主黨變「爭取真正普選,廢除功能組別」之節,在副主席

    劉慧卿「不錯,我是變了,我覺得,和政府合作很重要」

    的宣言之下,通過民主倒退方案,接受中共旗下民眾歡呼

    從此,這個黨的榮辱,就不在我心上。

    梁振英不給民主黨賞臉,是他們的事。不過,那抵制民主黨令,端的是一面秦鏡,照出了香港一干高官的腑肺。

    從前,中國固然沒有民主,但着重「為政以德」。謹先說兩個君子從政的典型故事。

    東漢山陽郡人范式在京師太學期間,和汝南郡人張劭交誼甚篤。各回鄉里那天,范式和張劭約定,兩年之後,造訪張家。約定日期將至,張邵就準備酒饌以待。

    張母說,山陽、汝南相隔千里,而且一別兩年,范式未必還會守約。張邵卻說:「巨卿(范式)信士,必不乖違。」范式果然如期而至,「升堂拜飲,盡歡而別」。

    後來,范式獲州郡舉薦,歷任荊州刺史、廬江太守等職,望重一時。這就是《論語》所謂

    「君子信而後勞(役使)其民」(《後漢書》卷八十一)。

    南宋淳熙年間,都承旨張說聲勢顯赫,曾上奏孝宗皇帝,說想宴請眾侍從。孝宗點頭同意,還說會助以酒肴。宴會之夜,賓客紛至沓來,只有兵部侍郎陳良祐缺席;張說很不高興,見太監攜着孝宗所賜酒肴到場,乘機託他上奏:「臣嘗奉旨,而後敢集客。陳良祐獨不至,是違聖旨也。」孝宗聽奏之後,想了想,命再賜張說酒肴。張說大喜,再託太監上奏陳良祐違旨:「臣再三速良祐,迄不肯來。」宴會到了深夜,宮中忽傳帝命,擢升陳良祐為諫議大夫。

    這位諫院之長,體現的正是《論語》所謂「直道而行」(《齊東野語》卷一)。

    張炳良之流,本來和民主黨約定聚首,最後卻各找藉口,臨時爽約,是叫范式等重信之士,專美於千載之前;而香港幾十個所謂問責高官,竟然沒有一個敢違梁振英抵制民主黨意旨,更是令陳良祐等直道事君之臣,失笑於九泉之下。而梁振英政府倚重的,偏偏就是這類輕諾寡信望風承旨人物。

    上之所為也,民之所歸也。過去六十五年,大陸人心澆漓,日甚一日,都是中共教化之功。

    然則指鹿為馬風氣,今天遍吹香港,又有甚麼奇怪。梁振英、張炳良等等,就是中共給香港人樹立的榜樣。

    古德明


    政協、人大都是香港蟊賊 – 盧峯 蘋果日報 2015年03月05日

    本來,甚麼港區政協、人大代表不過是北京的政治花瓶,圖個身份可以在內地拉拉關係,顯示一下自己受「阿爺」青睞看重,沒有甚麼實質政治份量,在香港也不太受重視。但這幾年來出任政協、人大的「港人」越來越不堪,越來越只看官意不看民意之餘還主動破壞「一國兩制港人治港」方針,還主動放棄香港的高度自治。

    那位連國家安全法是甚麼一回事也搞不懂,連立法時間表也未弄清楚的人大代表吳秋北到今時今日仍大言不慚說要提案把內地草擬中的「國安法」納入《基本法》附件,好直接在香港實施。

    可是,這樣做不但是在破壞香港的憲制秩序,更是在削弱市民權利及自由的保障。稍稍了解一下《基本法》草擬過程就能明白,把內地法律引入香港從來是敏感又極富爭議性的問題,因為內地跟香港的法制、法律觀念不同,內地法律經常受政治因素左右,把這些法律引進香港的普通法體制無形中把政治因素特別是內地的政治考慮帶進香港法制,對法治及司法獨立的損害不言而喻。

    當年甚為保守的北京政府也不過把國歌、國旗、國慶日、領海、國籍法等象徵主權的六項全國性法律在香港實施,沒有涉及實質政治政策問題,以免引起港人及國際社會疑慮。

    現在,一位據說是來自香港的人大居然主動要在普通法體制開一大大洞,把充滿政治意味的國安法滲入香港,這不但是在自毀長城,更是完全置市民利益於不顧,更是在摧毀港人治港、高度自治的基礎。

    此外,《基本法》內已有關於保護國家安全的條文,要求特區政府自行在香港立法。○三年特區政府提出為二十三條立法最後失敗是因為政府考慮不周,條文過嚴過苛,並非市民不願負擔憲制責任就國安問題立法。也就是說,《基本法》及香港現行體制內已有處理國家安全立法問題的條文及機制,香港完全可以自行立法,根本不需要外力包括人大或中央政府代勞,吳秋北的做法是多此一舉,枉作小人。

    不過,踐踏、出賣港人利益,損傷港人治港原則,催生更多中港矛盾及不信任的人不僅是吳秋北,還有其他人大、政協例如昨天在政協港澳小組積極發言的政協常委林樹哲。這位先生開口閉口說雨傘運動是「顏色革命」,又指泛民主派在癱瘓政府運作,衝擊與破壞香港的管治。他還在毫無證據下公開指控雨傘運動有反華勢力插手,意在挑戰中央的主權和權威。在歷時七十九天的雨傘運動中林常委可能不在香港,更沒有到佔領區接觸一下年輕學生及市民,聽聽他們的訴求,要不是這樣,他根本不會提出這樣顛倒黑白是非的看法。

    雨傘運動波瀾壯闊,參加的市民、學生數以十萬計,長期留守的人數以萬計。他們都是本着對真普選的期望,本着對香港的愛護及關懷而投入運動的,跟外國勢力無涉,也不是任何外國勢力可以動員起來的。把外國插手的罪名加在他們頭上既是對市民、學生的侮辱,也是在製造中港的誤解,把香港的政治困局弄的越來越僵。

    至於說泛民主派及學生的抗爭是要挑戰中央政府的權威更是荒天下之大謬。特首及立法會普選是北京對港人莊嚴的承諾,是《基本法》列明的憲制責任,泛民主派、市民及學生在議會、在街頭的抗爭不過是希望北京兌現承諾,落實《基本法》內列明的真普選而已,這怎麼可能是挑戰中央政府、挑戰一國兩制呢?

    其實,真正在削弱、矮化「一國兩制、港人治港、高度自治」方針的是北京領導層,是他們的高壓、強控制政策。全國政協主席

    俞正聲在剛發表的報告中不再提「港人治港高度自治」這些重要原則,只提甚麼支持特區政府依法施政

    可是,港人治港、高度自治是香港九七後憲制程序的核心及指導思想,在官方報告中刻意不提及淡化反映北京領導層的輕視及蔑視。真正有心為港人、為香港說話的人理應就此提出不滿及批評,要求北京不要偏離正確路線及憲制承諾。

    可這些甚麼港區人大、政協對俞正聲的發言連質疑一下的膽量也沒有,只懂為虎作倀,抹黑市民、學生,實在是香港的蟊賊!

    盧峯


    同志 – 李怡 蘋果日報 2015年03月05日

    梁振英當選之初曾被人民網以「同志」稱呼。資料圖片

    政協主席俞正聲的工作報告,不見了歷年都有寫的「港人治港」「高度自治」字句,加了「支持特首依法施政」。

    這已不是第一次有關字句在中共國領導的正式報告中消失,去年三月總理李克強在政府工作報告中,已沒有如以往的總理報告般,繼續提到「港人治港,高度自治」啦。

    正如去年為李克強解釋一樣,今年也照例有港區政協強為解釋:不說不等於不存在,因已是「不言而喻」云云。但連續兩年消失「港人治港,高度自治」,而且是在去年已引起議論之後今年還是消失,在極為重視政治正確的中共字典中,難道是偶然的嗎?

    其實,從梁振英剛被中央正式任命為香港特首的二○一二年三月二十九日,中共官媒人民網在刊登他的簡歷時,已稱其為「梁振英同志」了,這稱號留了不到一天,至晚間人民網刪除「同志」二字,大約是發現露了底。因此,「港人治港」自梁某被任命起已不存在,「支持特首依法施政」的「特首」不再是「港人」而是掛着「港人」招牌的中共「同志」。


    時代的共業 – 賈荃 蘋果日報 2015年03月05日

    佔中結束後香港的民怨並沒有消散,反而有激化的趨勢。資料圖片

    去年12月11日佔中清場,左報歡呼「佔中失敗」。筆者當時就說,金鐘的抗爭結束了,便意味着接下來是無數「小佔中」在全港遍地開花——香港人的抗爭會從「陣地戰」轉入「游擊戰」。而一旦游擊戰啟動,局面將比佔中更加嚴峻,因為各種無組織、無底線的情況都可能出現,政府與民眾之間的矛盾,會大量轉變成民眾與民眾之間的衝突,不僅是大陸與香港,也包括香港人內部。進入2015年以來,最近多次的周末行動,包括光復屯門、沙田、元朗……都告訴我們,游擊戰已經展開。香港,即將進入一個長期內耗且漫無目的的衝突時代。

    游擊戰作為戰術,是一種黑暗邏輯。它本來不應該出現,是在實力不對等的雙方通過公開博弈無果之後,弱勢一方不得不採取的一種有些流氓的戰術。這當中至少有兩個問題需要反思:第一、雙方為何博弈無果;第二、弱勢一方是否應該採取游擊戰?結合香港當下的時局,讓我們具體來分析這兩個問題。

    首先,香港民主運動是從2003年才有大量民間力量崛起,開啟一個新紀元的。在此之前,民主只是社會精英內部的遊戲。所以,在2003年博弈的雙方發生了變化。2003年之前,是本港精英與北京方面的較量;2003年之後,則是香港民間的民主呼聲漸強,逐步超過並取代以往為香港爭取民主的精英階層。

    這種新格局成熟的標誌性事件,自然是佔中。整個運動,從各泛民政黨到各學生組織,幾乎全都被參與運動的民眾否定,認為他們無權代表自己。而當新格局形成以後,又出現了一個弔詭的局面,即是能夠為香港民主運動負責的人也消失了。在沒有領袖、沒有組織、沒有章法的「失控年代」,難道要把浩浩蕩蕩的參與民主運動的港人全都抓起來?所以,打壓香港民主的特區政府和北京政府,成為在技術上唯一能夠對雙方博弈無果負責者——民眾已經完成互聯網時代的去組織化,原先傳統的、固有的、僵化的組織就不得不承擔起所有責任。

    其次,我們目前不得不承認,香港的民主事業成功的機會非常渺茫,對手實力太強大。本港「民主鬥士」實際上很清楚自己的勢單力薄,因此雖美其名曰「游擊戰」,但很「懂」得挑選「對手」,跑去針對手無寸鐵、舉目無親的大陸遊客,又或者和舉止相對文明的香港警察過手。理性上說,筆者不相信他們不知道香港之所以沒有民主,罪魁禍首其實是北京的達官顯貴或中聯辦的欽差大臣,而非那些來港購物的普通大陸遊客。但是「民主鬥士」又豈敢跑去中南海門口示威?或者簡單一點,連圍住中聯辦他們也不敢。相信部份針對大陸遊客的人平時未必太討厭大陸人,但當天是集體行動,責任便是大家的。所謂的「光復」行動,與其說是「民主運動」,不如說是因為佔中清場後無處排遣的負面情緒,找到了一個「正當」的理由宣洩到大陸遊客身上——這樣的「游擊戰」,不要也罷。

    在中共維持一黨專政的情況下,香港很難先於大陸民主,而大陸目前甚至連建立法治都遙遙無期,談論民主簡直是太奢侈。更令筆者感到憂慮的是,從佔中到現在,香港警察的執法狀態正呈現出

    漢娜.鄂蘭(Hannah Arendt)提出的平庸之惡。

    我們在電視和網站上看到的是部份警察凶神惡煞的表情。筆者有幾位警察朋友,參與過鎮壓執法的,私底下見面時仍談笑風生,且並不迴避這個話題。他們反覆強調自己是照着上級的指令行事,自己只不過是大機器裏的齒輪,發命令的不是自己,乃至強調自己也是受害者……筆者聽到這些話時不禁毛骨悚然,因為這些話幾乎和二戰時納粹殺害猶太人的罪犯說的如出一轍。

    鄂蘭把這些人犯下的過錯稱作平庸之惡,其產生的根源是缺乏思考——不思考人、不思考制度、不思考國家……香港人慣於跟指引做事,從港英時代開始就擅長不問是非對錯去完成上級給的指令。這種「買辦心態」的「香港精神」,如今正在發揮它的邪惡作用。香港人需要冷靜分析今天的局面究竟緣何產生,正本清源地解決問題,而不是沒有節制地造業。

    這是時代的共業,沒有人能夠獨善其身。

    賈荃


    土共越強硬 抗爭越激烈 – 黎則奮 蘋果日報 2015年03月05日

    周日,有團體發起光復元朗行動反水貨客,結果觸發衝突。資料圖片

    兩會召開前夕,工聯會理事長兼港區人大代表吳秋北突然改口,否認早前言之鑿鑿要在人大提議,將仍未草擬的《國安法》以《基本法》附件三形式引入香港,以打擊所謂外國勢力撐腰、氣燄囂張的「港獨」主張。很明顯,小小一名土共馬前卒被迫唾面自乾,一定是遭遇到黨內高層的壓力,可說是土共和中共強硬派的一次挫敗。

    今次中共召開一年一度的人大、政協會議,會議內容絕大多數港人都不會關心,只有炒股人士才會在財經演員的引導下捕風捉影,穿鑿附會炒作一番。

    央視前記者柴靜據稱自資拍攝揭露危害環境生態和人民生命健康的霧霾紀錄片上月底推出,引起全國轟動,三天內網上點擊率已超逾兩億。

    在一個完全沒有獨立媒體和新聞自由的國度裏,背後沒有政治力量支持,孰能致之?

    很明顯,習近平只是借助民間輿情衝擊環保部不作為、國企阻礙能源改革及能源業的貪污腐敗,配合更大力度的反貪腐和國企改革。

    但對股民來說,卻只是炒高環保股及沽空能源股的良機。

    不過,對香港來說,所謂「港獨」能否成為兩會議題,卻關乎維持一國兩制和變相實行一國一制的嚴峻鬥爭,不可掉以輕心。就現階段觀察所得,土共和中共的強硬派是被壓了下去,梁振英炮製「港獨」的詭計並不得逞。

    以剛過去的元朗反水貨事件為例,翌日全港報章盡皆頭條報道,有報章抹黑反水貨的示威者和居民搞港獨。唯一的事實依據,就是有一小撮舞動龍獅旗的所謂城邦派混入群眾之中。事實上,當日的元朗大混戰和早幾次上水、屯門和沙田的同類活動有點不同。兩個主辦單位熱血公民和本土民主前線分別於四時和六時左右離場,並沒有參與真正的抗爭行動,但街頭勇武鬥爭持續六小時,是反水貨、反自由行示威以來最激烈的一次,有評論者甚至認為是民變。

    然而,不管怎樣,今次抗爭再沒有甚麼「革命建國」的口號,因為真正參與勇武鬥爭的盡是年輕人和當地居民,而對手就是濫用暴力打壓民眾的警察和形同僱傭兵外來的「愛」字頭人馬,以及小部份土豪動員的原居民。事前恫嚇示威者出不到車站和揚言要淋屎的土霸,以警方已發出不反對通知書為由,沒有一如以往在天水圍聲援689落區,動員社團人士武力介入,最後連跟蹤拍攝示威者以便日後進行所謂民事索償也沒有,因為主辦單位在衝突前早已列隊離去,大家根本不會正面衝突。還是劉皇發最坦白,一早說明既然大家都要政治交差,就循例擺擺姿態好了。

    不過,水貨客和自由行對元朗等邊境市鎮以至全港市民日常生活造成的困擾,卻是客觀存在的矛盾,所以「沒有大台」、「毋須組織」領導的示威者和廣大市民不會按照政黨政客的劇本行事,一於抗爭到底,因而出現反水貨客、反自由行以來最激烈的衝突。

    然而,事後689政權不單沒有回應民眾的訴求,翌日水貨活動既依然故我,梁振英更濫用特首權力,着緊安排無緣出任創新科技局局長的「梁粉」楊偉雄出任行政會議成員,白支人工,也不對取消「一簽多行」和限制自由行的要求置一詞。

    如果港區人大和政協真的為港人利益着想,在兩會上就只須做兩件事:其一是依法提議收回八三一決定,因為決定的確違反五部曲中第二部曲規定人大常委會只有批准或否決香港政改的權力;其二是要求取消「一簽多行」和限制自由行。

    這樣的說法,當然是緣木求魚,因為特區政府不見棺材不流眼淚,港人惟有繼續街頭抗爭,直至真的出現民變。

    黎則奮


    權貴未來基金 – 李峻嶸 蘋果日報 2015年03月05日

    曾俊華上周宣讀財政預算案時宣佈同意設立未來基金。資料圖片

    二月二十五日,曾俊華在宣讀財政預算案時宣佈「同意」設立未來基金,並且表明已要求相關官員制訂細節。未來基金這構想,源自曾俊華在前年財政預算案中指示成立的長遠財政計劃工作小組(下稱小組)。奇怪的是,小組的第二階段報告,即有關未來基金細節的報告,在三月二日才公開。

    換言之,先有小組交報告予曾俊華,曾俊華同意了報告的方向後,小組始召開記者招待會和將報告公諸於世。廣大市民以至立法會議員連閱讀小組的二期報告的機會也未有前,曾俊華連公眾諮詢這樣的門面工夫也懶得做已決意上馬。再加上小組建議曾俊華以行政手段方式成立未來基金,連立法會的授權也不用,整個未來基金就是在這個極度黑箱作業、完全沒有民主參與的情況下成為曾俊華要在今年內完成的政策目標。

    小組建議將現時土地基金全數約二千二百億改為未來基金。土地基金原是過渡期間香港政府的賣地收益。特區政府成立後,土地基金的款項一直沒有特別用途。但在董建華時代,經歷金融危機和疫症等多重打擊,面對赤字的政府曾在立法會同意後,兩次將土地基金的款項轉移到政府一般收入賬目,總數為一千六百億。小組剛公開的報告卻表明,除非政府的其他儲備跌至大約相當於六個月的政府開支總額,而且政府在發債或者出售資產後仍未能解決問題,始能動用未來基金。

    換言之,假如有一天政府真的再出現財赤,政府不能那麼快就打土地基金/未來基金的主意。相反,根據小組的說法,發債和出售資產才是未來政府在面對財赤時應優先考慮的選項。這樣的建議,不但明白領匯私有化之苦的市民理應反對,經常用歐債危機恐嚇市民的曾俊華又豈應接納小組建議?其實今天土地基金的結餘已經幾乎重返當年未將一千六百億轉移到政府一般收入賬目之前的數字(約二千六百億),可見在財赤時動用該基金跟動搖香港根基有極大距離。

    小組同時建議將每年財政盈餘的三分一至四分一放到未來基金。

    筆者無法理解,為何那麼多市民和團體連年爭取政府做好長遠措施改善民生卻被當權者冷待時,

    這個毫無認受性的小組可以完全不經公眾諮詢就形同為未來政府處理盈餘訂下指引?

    其實小組在自己的報告也提到,紐西蘭等國的類似基金是專為退休金而設。但在同樣面對人口老化現象的香港,小組卻強調未來基金將來也「不應賴以支付經常開支」。

    說穿了未來基金就是阻止公義財富再分配的「加辣」手段。

    香港本已貧富懸殊嚴重,資方和勞方實力懸殊。在高地價政策和社會保障尤其不足的壓迫下,中下層的生活百上加斤。就算是表面上生活無憂、已經過了供樓階段的中產階級,萬一自己或近親不幸身體有毛病,在政府嚴控公共醫療開支上升的情況下,也有生活水平大幅倒退之虞。

    至於富有的統治階級,他們有一個積極嚴控開支、對民生訴求置若罔聞的政府保障他們的利益。

    假如這個完全不經任何民主程序醞釀的未來基金成為事實,廣大中下層要求政府加大投資改善民生時,就只能互相爭奪資源,統治階級面對的壓力將會更少。

    未來基金所打造的未來,就是1%權貴的未來。

    李峻嶸


    【穹頂之下】破2億點擊 贏乜? – 蘋果日報 2015年03月05日

    呂秉權認為,《穹頂之下》能夠成功訪問到環保業務及油企負責人,獲得官方人員的回應,有一般民間不能夠做到的內容和畫面,也是《穹頂之下》獲得公眾關注的主因。(互聯網)

    央視前記者柴靜拍攝紀錄片《穹頂之下》於全國兩會揭幕前夕推出,引起極大回響。柴靜的演說以其女兒未出世便已得腫瘤為切入,引起了大眾對《穹頂之下》的關注,前資深中國組記者呂秉權向《壹錘定音》表示,柴靜的身分和演說方法容易吸引民眾關注事件。

    呂秉權認為,柴靜以講故事手法帶出大陸的霧霾問題予人「第一身感覺」。柴靜原為大陸的知名記者,是「人民調查記者」,所以民眾對其第一身故事更有興趣,加上她以母愛力量講故事,說服力大增,故片段的點擊數量已逾2億,他認為這種母愛力量與2012年香港的反國教運動和大陸的毒奶粉事件異曲同工,均是家長保護子女,能夠成功帶出訊息。

    呂又認為,《穹頂之下》能夠成功訪問到環保業務及油企負責人,獲得官方人員的回應,而這些回應往往是一般民間記者不能夠採訪和拍攝到的內容和畫面,因為這些機構背後均有所屬宣傳口徑主管,如沒有上層默許,他們不敢貿然接受採訪,《穹頂之下》卻做得到,故其能夠容易引起社會關注。


    大抹黑 – 陶傑 蘋果日報 2015年03月05日

    大陸中央台前女記者柴靜,懷孕時醫生發現胎兒有個腫瘤,覺得是北京的空氣污染害的,出於母愛,搜集資料,拍了一齣紀錄片,控訴中國的石化企業污染大陸,危害蒼生。

    柴小姐的紀錄片上網,點擊高達一億,紀錄片詳列數據,由經濟、社會、醫學,各方搜集證據,譬如,中國一年燒煤三十六億噸,北京每年增加汽車十萬輛,燃耗石油,指陳河北的懸浮毒霧,如何害死中國人。

    點擊率一旦破億,共產黨急了,即刻下令全國「不准討論」。何時封片,甚至曾經黑社會威嚇的柴靜,會不會因「尋釁滋事」罪而抓起來,大家可以下注。

    這齣紀錄片叫做「穹頂之下」。香港的國民教育手冊,特府本來推出「北京模式」,聲稱中國之路「文明進步」。香港學生可以看看柴片,再抬頭看看維港的天空。上通識課,或者教育小孩了解中國,准不准看這部戲呢?香港教育局,可要抬頭看看主人臉色的那層陰霾了。

    「穹頂之下」確是有問題的。首先是與「外國勢力」唱和,抹黑祖國。美國駐北京大使館年前曾每日公佈北京的空氣污染指數,被中國指為干預內政、妖惑人心。

    美國人說北京空氣嚴重污染,柴靜就相信了,而且還用行動配合外國勢力。片中還訪問了美國專家,指指點點,如果你是愛國的炎黃子孫,看到柴靜紀錄片裏的中國,從頭到尾一片黑暗,中國人都愁眉苦臉,活得好像奴隸一樣,獨是美國白人專家的一張臉孔膚色是光亮的,而且充滿慈悲,你必然氣得哇哇大叫,拿起茶杯,朝你那具日產高清電視機砸過去。

    柴靜的嬰胎沒出生,就驗出有腫瘤,就怪責祖國的空氣污染害的?會不會是你自己的基因遺傳,還是有抽煙習慣?還是像英國專家最近說的:癌症與污染其實無關,只是出於不幸的偶然?如此嫁禍,難怪高層氣憤。

    當然,了解中國的,就知道紀錄片能在此時得放出籠,絕不是「言論新聞自由」。

    柴靜在戲裏,左一句「石化企業」,右一句「煤炭在山西」

    明眼人看出來,現在正要對付石油幫、山西幫,如同一九七九年,北京的「民主牆」,是鄧小平要搞掉華國鋒,但並非讓你真的講真話。柴小姐的紀錄片一兩憶,就叫「失控」。

    大陸的戲,好看處,都在戲外。

    陶傑


    借權鬥搞環保 靠專制事難成 – 練乙錚 信報 2015年03月05日

    這幾天大陸人最關心的新聞不是在京召開的兩會,而是上周六(2月28日)前央視名記者柴靜上載到YouTube 的那 部關於大陸空氣污染的紀錄片《穹頂之下》。

    一部103分鐘的嚴肅作品的點擊率竟然不到兩天便已過億,勁破以發明「騎馬舞」出名的南韓男歌手PSY(朴載 相)2013年創出的紀錄

    【註1】。

    此前,柴靜已出版同名的書,銷量也不錯,但沒法與視頻比哄動;沒有新的內容,表達方式也不過是典型的 TED-talk,卻單憑使用了互聯網上的視頻平台,風頭便蓋過共產黨每年搞的兩場大龍鳳,無怪中宣部要急煞車,下命令禁止所有媒體登載任何有關的討論文 章和訪問、關閉所有有關的網上論壇【註2】。

    霧霾政治學

    如果大家看過《穹頂》或者有留意有關的新聞,當知這部紀錄片那麼多人關注,一個要因 是柴靜把矛頭指向當今大陸兩個同時是最大的利益集團和最大的貪腐集團:

    「石油幫」和「煤炭幫」

    前者的老巢在遼寧,與周永康、薄熙來有關;後者盤踞在山西,是李鵬家族的旗艦。

    民間普遍認為,這兩個集團的大靠山就是江澤民。

    生態危機、環境污染是大陸社會大問題,13億人幾乎全都是受害者,而柴靜上載視頻的時機可說非常微妙。 之前一天(2月27日),十二屆全國人大常委會剛把無甚作為還傳出有貪腐行為的前環境保護部部長周生賢刷了下來,安排到政協裏投閒置散,空出的職位由清華大學校長、環境工程專家陳吉寧接替。

    由於石油和煤炭都涉及污染,控制這兩個行業的權力貪腐人,必須安插一個自己友打理國家環保部。

    1996至2006年期 間,江澤民之妹江澤慧任中國林業科學研究院院 長,林科院是國家林業局管的,周生賢那時任國家林業局局長,據說他就是因此得到機會「低攀」江澤慧、再高攀江澤民,最後受江提拔塞給胡溫當上環保部部長 的。【註3】

    傳聞屬於江派的部長撤職,本身已經是新聞,此時推出《穹頂》,新部長多少也要有所反應,而且不可能不是正面的反應,而事實上新部長的確出面稱讚《穹頂》、表示支持;如此,紀錄片便似乎很有「後台」。

    民眾關心的事,黨竟然力撐,哪有不火的?但如果相反,

    如果 黨覺得給片子搶了風頭,有必要壓住輿論的關注,那就更好,因為從來黨愈要禁制的東西愈馨香。

    如此,柴靜「食硬」黨中央。

    當然,這個講法假定柴靜基本上是一個獨立的民間人,單挑江、李兩股勢力,適時製造議題,推動環保。

    然而 大陸人當中更流行的一些講法,則是認為柴靜絕對不可能沒有背景。這些「背景論」分兩種,

    其一可稱為「權力派系鬥爭論」,認為柴根本就是「學習團」的人,借 一個重要社會議題發難,關鍵時刻引起關注,把矛頭指向習要清除的兩大幫對手的兩個最大弱點:

    排污和貪污。貪污誰都貪,但混雜了排污,就特別刺眼、分外顯得可誅。

    此派論者認為,以柴靜一己之力,怎麼可能訪問到那麼多的專家、官員,而那些專家、官員在訪問中又竟然可 以那麼大膽發言揭國企老大的老底,向着「石油幫」、「煤炭幫」搞「勇武鬥爭」?

    按這派理論的思路,前天下達的禁制令,就是江、李派控制的中宣部的動作,借 「防止沖淡兩會主題」為名,急急壓住《穹頂》 的攻勢,並推出現代版的「革命烈士」、上海市法院因公殉職的法官鄒碧華的宣傳活動佔據媒體空間

    (雖然筆者在網上找了半天也找不到這位法官的真正偉大處怎麼 比得上假樣板雷鋒、劉英俊)。

    「背景論」之二就是在反對改革開放的「毛左」當中出現的「路線鬥爭論」。這派認為柴靜在《穹頂》裏把能源這一塊關乎社會主義國家安全、國有化程度最高的行業打成污染的元兇,並聲言要由新興的、主要是私人資本(太子黨加外國人)控制的再生能源全面取代,那就 等於是埋葬社會主義江山、出賣國家主權的罪行。持此說的人數不算多,以大陸的《烏有之鄉》和在美國的一位大陸毛左移民教授辦的《紅色中國網》兩個網站為主要輿論陣地。

    其實,上述兩套理論,甚至再加上原先以柴靜為民間人獨力反污染的講法,都是完全可以彼此兼容的。

    大家知道,嚴格來說,習近平才是共產黨的第二代領導人,是打江山那一代高級領導人的兒子輩。

    胡溫的角 色,等同老蔣和小蔣之間的那個總統嚴家淦;

    江澤民則是一根贅指,論革命功勞其實微不足道,當年搞學運絕對比不上今天香港「雙學」的周、黃出色,論年齡,卻比高級紅二代高半輩,上了位卻成為高級紅二代接班的障礙物;

    他的前度拍檔李鵬,更是不知所謂,沒有半點像樣的紅色基因。但偏偏就是江、李和他兩人的黨羽, 在改革開放的三十年裏,搶先把幾乎所有重要而有私利可圖的位子都佔據了;這些「筍位」大量集中在大型國企,以其壟斷地位賺最多的錢兼得政府最多的補貼優惠,成為最好的貪腐溫床。

    於是,十八大以後才掌權的人當中,誰想把那些已被佔有的有利位置奪過來據為己有,就必須大洗牌,而最佳策略就是借反貪腐之名義向江、李控制的行業和國企開刀。

    於是,早就在十八屆三中全會時提出「經濟改革要繼續走市場化道路」的習近平,便很自然地夥拍「跟霧霾有一個私人恩怨」的民間人柴靜一起反污染了

    (大家留意到,最近打下來的江派大老虎中老虎,除了薄熙來,都不是高級紅二代,但薄是一場意外引爆出事的,政治野心也太大)。

    我們不必過分懷疑柴靜真有反污染的原動力,甚或可以把她的行徑理解為她在借黨內權鬥去搞環保。

    不過,在大陸的政治環境裏,公民意識本身從來不起作用,而任何進步自發性歸根到底都是危險的

    到頭來民間人柴靜的《穹頂之下》很可能是就是三十年前魏京生「民主 牆」的翻版,用完即遭棄,再堅持便有難。一億 人一天之內聽你連續講一個半小時的道理也如癡如醉,連毛澤東在內哪一個共產黨領導人辦得到?對專制人而言這是不能容忍的。

    霧霾經濟學

    《穹頂之下》紀錄片中提到:

    一、大陸現時每年約有50萬人死於霧霾污染,比三十年前改革開放之初增加465% (按此兩個數字推算,三十年前的空氣污染致死人數大約是88000);

    二、大陸的空氣污染雖然嚴重,但倫敦1952年那次霧霾災難期間,情況卻比大陸惡劣得多。

    筆者利用搜集到的數據資料算了一下,覺得第二點的結論有問題。

    英國官方資料說,1952年發生在倫敦的那場霧霾災難,令大約3750人在大倫敦範圍內過早死亡。當時的大倫敦人口是820萬,死亡率因此大約是 1╱2186。今天大陸的情況,我們可作如下粗略推算:以88000為現時「正常」空氣污染之下的一年死亡數,500000 - 88000 = 412000為特別嚴重污染時段(相當於倫敦1952年的12月災難時段)中的一年致死人數。今年大陸人口13億6800萬,故嚴重空氣污染災難在大陸發生時的死亡率應該是412000╱1368000000 = 1╱3320,是大倫敦當年的2╱3左右。不是差太遠,但人家是一個人煙稠密的大城市【註4】!

    此外,英國當時的GDP和現在大陸的不同,英國的面積也與大陸不一樣,假設:其他不變,則GDP愈高,污染濃度愈高;面積愈大,污染濃度愈低。

    如是者,我們作空氣污染比較之時,作適當的調整,便更能見問題所在。

    英國的面積是243610平方公里;1952年的英國GDP相當於今天的4911億英鎊,即約7416億(今天的)美元,故當年的英國GDP╱面積 比是每平方公里304萬美元。大陸的面積是9596961平方公里;去年的GDP是92404億美元,故去年大陸的GDP╱面積比是每平方公里96萬美元,即大約是英國1952年時的1╱3左右。如果大陸的經濟發展下去,單位土地面積的總體生產力增加3倍、等同英國1952年的話,其他不變,空氣污染濃 度或者空氣污染災難死亡率便是倫敦當年的3 ×(2╱3)= 2倍。

    因此,《穹頂之下》說現時大陸空氣污染程度比英國1952年的低,是可以用單位面積生產力比英國當年還低來解釋的;一旦單位面積生產力追上人家當年,空氣污染就是人家的雙倍。一個可能的解釋是:如《穹頂之下》所述,人家當年已經做到百分之百先把劣質煤洗淨之後才燃燒,而大陸今天只是小部分做到。

    《穹頂之下》指出一個大陸政府決策過程中的通病:漠視利益衝突。

    柴靜的研究謂:訂定污染標準的官員,主要不是環保部門的人,而是中石油等能源國企巨 頭派到環保部的人。這是非常荒謬的做法,好比派警察坐到獨立監察警方處理投訴委員會的大部分位子上去一樣。

    這個荒謬做法是沒辦法改好的,因為大陸的統治階 級哲學就是「共產黨能夠管好自己」,儘管黨壟斷了國家的所有經濟權力且不斷行使。

    就算明天人大開會改變現狀,讓其他企業╱行業的人取代石油幫去訂定全國污染標準,也不能解決問題,因為歸根到底黨是一元化領導的,總有一個人的權力絕對大於環保部的決策委員會;

    當這個大權的人腐化了,無論委員會如何組成,也沒 有挽救的能力。

    同理,沒有三權分立的概念,司法無以獨立,法治就無法保證,因為始終有一個人比法大。大家看看是誰委任王岐山去「打虎」,就知道那不是法治 了。

    主流經濟理論認為,環境污染是一個「市場失靈」問題,具體便是所謂「界外效應」引致的:我任意排污,省到的錢全部是我的,災害痛苦絕大部分是人家 的,我因此傾向置之不理。

    人人如此,便出問題。

    按理,解決「市場失靈」的一個辦法是通過政府強力執法,做到排污者自負排污成本,即做到「把界外效應完全內化」,便能解決問題。

    像大陸那種專制政府的權力很大,表面看最能解決市場失靈的問題,但因為她有「一元化領導之下漠視利益衝突」的這個罩門,因此反而最不能解決問題。

    這本是很簡單的道理,共產黨再蠢也能明白,但因為貪戀權力壟斷,所以明白了也沒有用,否則就不是共產黨了

    對權力的無限貪戀,與對着錢財的無限貪腐,其實 是專制政權的一體兩面。今年打倒了所有大小老虎,十年後虎患再現,結果老虎就都是習、王派系裏的人。共產黨裏出現新階級並不是偶然的事。

    《信報》特約評論員

    【註1】柴靜的《穹頂之下》視頻在http://youtu.be/KR-OMEq9v8A,頭一天的YouTube點擊率就接近1億,連同在其他網站的點擊率則超過1億。PSY的3分14秒傑作Gentleman在YouTube的點擊率要三天才過700萬:https://www.youtube.com/watch?v=jUatgXGcrCM。

    【註2】中宣部3月3日禁制令的傳真本見http://www.epochtimes.com/gb/15/3/4/n4378907.htm

    【註3】周生賢背景見http://chinaexaminer.bayvoice.net/gb/trends/2015/02/27/102731.htm中共环环保部长周生䝨被免职.html

    【註4】大倫敦的資料見倫敦官方文件50 Years On: the struggle for air quality in London since the great smog of December 1952, Greater London Authority 2002 第6頁;http://legacy.london.gov.uk/mayo … ocs/50_years_on.pdf。


    那些教孩子誣陷救人者的家長 – 騰訊評論 2015年03月05日

    近日,河南濮陽一位大學生救溺水兒童時不幸身亡,卻被兒童及其家長反咬為肇事者。最後經查明是家長為了逃避責任,教唆孩子說謊。

    如此極端自私、冷漠、缺德的家長,在中國社會中不是個例。

    2月26日下午,在河南濮陽清豐縣韓村鄉西趙樓村一處人工湖裏,有人溺亡。死者名叫孟瑞鵬,是華北水利水電大學一名大三學生。孟瑞鵬是為了救兩名跌落水的兒童跳進湖裏,但是被救兒童卻說,「他(孟瑞鵬)用腳往後一跺,那個欄杆掉下去了,然後我們三個都掉下去了」;落水兒童的家長也稱,如果不是孟瑞鵬用腳蹬欄杆,自己的孩子也不會掉下去。

    謊言一度矇騙了警方,幸好最終調查還原了真相:落水兒童母親承認,是自己害怕擔責任,教小孩說了謊話。

    這位母親比那些「訛人老太」更惡毒,因為後者還可以解釋為「搞不清楚真實狀況下的自保反應」,而這位母親是眼睜睜看著孟瑞鵬跳下水去救人,還要顛倒黑白。

    當然這位母親還不是最「奇葩」的家長。去年10月18日,河南平頂山一名男孩在公園看熊時,右胳膊被熊咬掉,男孩父親趕到現場的第一反應你能猜到嗎?是打了通知他消息的好心人。

    教育孩子「不吃虧」,這是中國古代就有的傳統。古代蒙學讀物《增廣賢文》有雲「人善被人欺,馬善被人騎」。這是民間總結出來的「生存智慧」,與儒家的「仁義禮智信」並行於社會,但實際上前者的生命力要旺盛得多。

    這類「生存智慧」甚至不需要借助任何典籍而流傳。比如比「不吃虧」更進一步的「人不為己,天誅地滅」,雖然未見於任何典籍(大概因為這種價值觀太惡劣,不好意思記錄),但就是能從民間口口相傳由古至今。

    而這些教唆孩子誣陷好人的家長,顯然就是這類「生存智慧」的信徒。

    他們防備「無事獻殷勤者」

    在中國的傳統「生存智慧」中,比教人自私更多的一類是教人防人。單看《增廣賢文》,就有「知人知面不知心」、「防人之心不可無」、「逢人只說三分話,未可全拋一片心」、「守口如瓶,防意如城」、「山中有直樹,世上無直人」、「人情似紙張張薄」……等。

    在這種「生存智慧」中「浸泡」出來的人,不但自己要自私自利,而且不相信世上有無私的人,甚至把無私的人——「無事獻殷勤者」視作壞人——「非奸即盜」。順著這樣的邏輯,才能理解那位孩子被熊咬傷的父親為什麼第一反應是打好心人——(思維)習慣成(行為)自然嘛。(節錄)


    搞作馬拉松 – 馮文 信報 2015年03月05日

    剛過去的周末,科大舉辦了 hackathon 的準備會。Hackathon 顧名思義就是 hacker 們的大集會,hacker 譯作『黑客』,指網絡上搞破壞的人,但日久所謂 hacker 已泛指各種創意的搞作,所以hackathon 可譯作『搞作馬拉松』吧!

    這類活動通常是自由組隊參與,主辦者在預訂的周末,安排一個48小時可連續使用的場地,參與隊伍不眠不休的,擬定自己的項目,用簡單的工具做出產品或項目的原型,第二天散會時通常有一個公開的評審,但那不重要,最重要是經過兩日一夜,自己想好要做什麼,幾個人的創業就可以起動。

    目的是鼓勵創業,多講無謂,激發自己動手的熱情,行動最實際。

    不過,上周舉辦的只是準備會,稍後才是正式的馬拉松。原來,不少人雖然有熱誠,卻缺乏製作的技巧,結果可能只是寫個什麼 App 之類,很難突圍。也有商學系的同學,希望加強自己的技術能力。

    主辦者於是舉行兩場培訓,一是學習 Arduino板的使用,二是產品三維模型的製作。

    Arduino 是一塊平價的電子板,內中已有常用的功能,用者可拼合使用,或加入自設的周邊功能,當然這不可能做出很高技術的成品,但製作原型是可以的,經過使用測試後,再優化線路的設計。三維模型則用作外形設計,現今用戶對設計的要求很高,往往決定產品的成敗。

    春季開始,很多這類型的活動,推廣創意和創業。香港有名為 artmeup 的活動(由政府 InvestHK 舉辦),鼓勵香港的始創事業。以前,我也曾報道 Estonia (愛沙尼亞)的 Garage48,也是類似的搞作馬拉松(名稱的48 就是48小時之謂),他們還四處找人合辦,遍及東歐各地。更有趣的是,他們的聚會并不局限于典型的經濟產業,亦有專攻社會創業的聚會,舉凡醫療、交通、環保等等,都可以是創業隊伍的搞作主題。當然,結果可能只是宣言或報告一份,但亦不排除持續的社企或社會行動。

    另一方面,各種支援創業的平臺也不斷成長。例如我以前曾報道的 SLUSH,由芬蘭的大學生創辦,後來發展成為北歐創業者重要的發布平臺。聞說今年四月移師日本,雖然日本的始創公司不多,但日本人的製作水平高,不可小覷。


    新政欠導航 美食車恐又悲劇收場 – 呂大樂 香港經濟日報 2015年03月05日

    如無意外,財政司司長曾俊華在其最新一份財政預算案中提到,「要求相關部門盡快落實便利業界營運露天食肆的建議」,和「研究將外地流行的美食車引入香港」,這將會為他打開了一個不易收拾的話題,多多少少可以說是自找麻煩。

    官僚障礙 政府內部存分歧

    當然,同樣是如無意外,曾司長一定會表示,他全心全意服務香港市民,所以就算想法未夠成熟,他也不會因為害怕受到批評,而放棄拋出創新的政策建議。面對困難,也一定會迎難而上云云。

    對於曾司長的誠意,我覺得無謂猜測。但我們心裏亦清楚知道,一項新政策能否成功,往往跟長官的個人主觀意願,沒有甚麼關係。官員的一番熱情不一定保證市民會更易受落。而更有趣的是,在市民有所反應之前,我們便開始聽到政府內部不同的政策局之間發出不完全一致的聲音。

    畢竟在技術和操作層面上,發展美食車這種新的服務,並不單就只是開拓新的旅遊服務、提供創業機會那麼簡單。究竟如何保證美食車服務能夠符合公共衞生的標準?如何保證它不會對周圍環境造成破壞?是固定的還是流動的服務?種種疑問尚待進一步回應。

    對市民來說,初步的印象是這項創新的提議似乎未有在政府內部作過詳細的討論,便已經拋出公眾領域。

    為何要急於提出呢?這不得而知。

    而究竟這個露天食肆和美食車是多大規模的一項新服務,以至它有多大的社會經濟效益,這亦有待解釋?

    發展露天食肆 未必鼓勵創業

    在發表財政預算案後的幾天,便聽到好些提問。可以肯定的是,財政司司長要作出回應的,並非只是外界;同樣重要的是政府內部的意見。財政司司長將會如何「拆牆鬆綁」,克服各種來自官僚系統的障礙,以推行他的新政,市民對此可謂相當好奇。

    有關美食車的建議,是放在財政預算案中關於旅遊業的一節下面。所以,坊間部分意見以為這跟近期特區政府經常談到鼓勵青年創業有關,其實很有可能是自作多情,想得太多了。而發展露天食肆,亦不一定與鼓勵創業、扶助小商戶有任何關係。不過,就算是表錯情,財政司司長亦似乎無意澄清或多加說明,以便引導社會朝向正確的方向討論。但我們可以想像,如果本地輿論及社會大眾對這個題目感興趣,他們多數會將很多不同的社會訴求,都放進露天食肆和美食車的建議之中。那些訴求將不單止局限於特區政府領導們亦經常掛在嘴邊的青年創業,而且還一定會涉及文化旅遊(由地道小食到手推車式的小販擺賣),甚至扶貧、重新容許城市非正規經濟活動(urban informal economy)等。

    公眾願望愈放大將「超出負荷」

    如無意外,美食車這個建議,將會出現「超出負荷」的狀況——社會各界各自投射主觀願望,將整個題目愈放愈大,結果特區政府難以控制公眾討論的發展。

    這是特區政府施政的特色:開了一個題目,卻不做好導航,結果討論變為無人駕駛,方向不定。就算是好主意,最後亦可能悲慘收場。美食車建議會否是這類問題的另一個個案,現在言之尚早。不過,就目前所見,情況並不樂觀。


    LinkedIn港用戶破百萬 求才更快捷 – 宋知羲、鄧曉聰 香港經濟日報 2015年03月05日

    全球3億用家 8成半「潛力軍」可被挖角

    企業經常喊請人難,但不少上班族又埋怨轉工難。千里馬遇不上伯樂,皆因資訊不夠透明。

    LinkedIn 瞄準了這個空隙,成為企業與上班族的溝通平台,全球用戶達3億,昨日更宣布其香港會員突破一百萬關口。究竟僱主及僱員應如何善用此平台,省時又省錢?

    據 LinkedIn 的調查所得,只有1成半用戶是完全滿意現狀,不想轉工。換言之,有近8成半人都可被挖角。透過 LinkedIn 社交平台,公司將可以直接接觸這群「被動人選」,簡化招聘程序。

    簡化招聘程序 篩選適合人才

    雖然現時有很多招聘的渠道,不過 LinkedIn 有其優勝之處。其香港、澳門及台灣徵才方案主管 Eric Yee 解釋,「LinkedIn 並非要取代招聘網站和人力資源公司,只是為市場提供另一種更有效、省時的招聘方法。」他笑指,不少人力資源公司都會用 LinkedIn 找合適的人才,再轉介給客戶,「只需要輸入目標人選的年資、學歷、地區等的資料,資料庫便會從全球3億用家中,篩選出數10個適當人選,直接聯絡,節省了細閱履歷表的時間。」

    各行業都求才若渴,接觸更多「被動人選」,將可擴大人才庫。Eric 表示,LinkedIn 有 Job Recruiter和 Job Slots 等功能,可以按機構需要,刊登招聘廣告,並配對有相關興趣和經驗的用戶,有效把招聘信息傳達給合適人選。「雖然在 LinkedIn上,有近85%用家都不是在搵工,但他們都有興趣了解市場情況,但機構仍可聯絡他們,並從中挖角,節省雙方時間。」

    設公司專頁 建形象吸追隨者

    獵頭工作固然重要,但公司本身的吸引力,也會左右求職者的決定。Eric就建議企業善用平台,建立良好的公司形象,「Google、Facebook等公司常被譽為打工仔天堂,有着這些讚譽,自然能吸引人才加盟,甚至有人寧減薪也要加入,可以節省近5成招聘人手的開支。」

    有了網絡平台,中小企也可用較少的資源,建立媲美大公司的形象。Eric 教路,企業可先開設專頁,再邀請員工加入,不時分享公司活動、得獎資訊,建立忠實的「追隨者」群,追隨者可「一傳十、十傳百」,把資訊傳達至特定的專業社群內。另一方面,形象好的公司,也可減低人才流失,長遠對公司有利。


    新聞部黨委書記 – 曾志豪 蘋果日報 2015年03月05日

    市場佔有率最大的電視新聞台,香港最大的政黨,互相掛鈎連結,謂之「勾結」。

    民建聯總幹事,空降無記新聞部編輯主任,主力審查政治新聞。無記主帥袁握手表示「無政治考慮」。

    對,這位袁握手的確最能體現「政治中立」。91年,89年64屠殺才過了兩年,無記派員到北京訪問李鵬,這位袁握手笑容滿面和李鵬親切握手,真的非常中立,完全沒有被血染的風采影響情緒。

    同行另一記者李汶靜則別過頭迴避,人品高低立見,但命運弄人,袁握手隨後扶搖直上位極人臣,李汶靜卻患癌英年早逝,似乎應合古人「好人不長命,禍害遺千年」的訓言。

    今天,這位袁握手又再施展他的「政治中立」功夫,和民建聯握手,聘請了對方的總幹事,出任新聞部編輯主任。

    有人說,有政黨背景有甚麼問題?難道做過政黨的便不能做新聞嗎?我只知道,台灣新聞界去政黨唯恐去得不夠乾淨,唯恐被人以為媒體仍為黨操控;恰恰相反,大陸的新聞就是全盤黨壟斷介入,各新聞機構都必定配備黨委書記把關看守。

    今天這個「總幹事編輯主任」,是否便是無記的「黨委書記」?

    有人說,未上任便判斷對方會影響新聞自由,太武斷片面。這類人等於質疑天文台「未落雨就預測明日多雲有雨太武斷片面」。

    我預測,以往是七警「拳打腳踢」的新聞出街後才被刪改,今後有黨委書記操刀,應該早就把七警的新聞消滅於萌芽狀態。

    其實新聞機構的關鍵崗位「赤化」已非新聞,閒時風平浪靜一切如常,一到關鍵時刻,六四七一佔領等等議題,黨委書記便會像靜止的毒蛇突然閃電張牙便咬。

    槍桿子已經成功轉型為「慈母」,筆桿子也就順理成章,變身「黨委書記」矣。

    曾志豪


    教育工作關注組:小駡大幫忙 – 王崖 評台 2015年03月05日

    各位老師,各位同學,大家好。我是王崖,熱愛文史哲。以後,將定期為教育工作關注組寫稿,為中史解毒。

    中史有毒?沒錯,但每一科都可能有毒。因為每個科目都不可避免地有一些意識型態灌輸,是硬來還是軟性的分別而已。哪為何針對中史?很簡單,因為中史是「新國民教育」的重要據點。能成為重要據點,必然有一些結構性理由。弄清弄楚,增強抵抗力,教師和學子同樣歡喜。

    王崖會和大家看看中史教科書、中史考卷,分析一下箇中的洗腦玄奧。

    近代史是首號研究對象。比如反右運動,有近五十五萬人(有說是近三百萬人)被打成「右派份子」,教科書說這造成「不幸的後果」。

    「不幸的後果」五個字可真輕!看看這觸目驚心的一短話話︰「翻譯家傅雷妻子朱梅馥與丈夫雙雙上吊自殺;著名化學家曾昭掄妻子俞大絪教授被剝去上衣,用皮帶抽打,不堪其辱,當夜服毒自盡;著名學者彭文應妻子鄧世容被活活嚇死,年僅19歲的兒子彭志平吞食碎玻璃、綱針、安眠藥自殺;章伯鈞女兒章詒和為父申辯被判刑20年;北京大學新聞系女生林昭被槍決後,其母被索要5分錢子彈費而氣成瘋婆子,後來在街頭被紅衛兵活活打死。」(見〈反右運動的實質及惡果〉

    http://www.huanghuagang.org/hhgMagazine/issue42/hhg42-Page076_FanYou.html〉

    教科書教你怎樣思考此事。一於小駡大幫忙!

    問你「反右鬥爭與焚書坑儒可否相提並論」,表面上是批評反右,實質是制造空間避過尖銳評價,

    營造假客觀中立,其實滲入思維毒素

    一、教科書「建議」答「二者相去兩千一百多年,其所發生的時代背景大不相同。」這萬能KEY證明了什麼?就是不同的東西是不同的!現在就是要你找相同之處嘛!

    但這句卻很易成為「中史人」的口頭禪,「發生的時代背景大不相同」,搖頭晃腦即可。

    二、用最壞的來比較壞的東西,企圖讓壞的看起來不怎麼壞。這叫做小駡大幫忙

    「xx (例如官員干預學術自由)比起焚書坑儒,算不了什麼呢。」

    比起和坤,官員收五千萬又算什麼呢?

    你說,是不是要「解毒」呢?

    註︰研究的教科書為《新視野中國歷史必修第四冊(教師用書)》,香港教育圖書公司出版


    戲謔、諷刺與批評:幽默的政治傳播和影響 – 李立峯 明報 2015年03月05日

    幽默(humor)在現代社會的政治傳播中有重要的角色。西方政治家多多少少都要有點幽默感,能在公開演說中恰當地加插一兩個笑話。幽默感也可以幫助從政者在面對批評時保持從容和風度。前年年底財政司長曾俊華在一個《施政報告》地區諮詢會中被雞蛋擲中,在現場回應時說幸好自己沒有穿上「靚西裝」,就帶來不錯的效果。雖說這只是公關伎倆,但總好過不知所措或大肆批評擲蛋者。

    幽默有很多類型,而在眾多類型中,戲謔和諷刺在過去10多年於世界多個地方的政治傳播中愈來愈顯著。美國政治傳播學者花了不少精力研究 Stephen Colbert 和 Jon Stewart 的新聞諷刺式節目對民眾的影響。惡搞是大陸網絡政治傳播中最受關注的現象之一。在香港,《頭條新聞》一直是港台較受歡迎的電視節目。而在互聯網上,如2012年特首選舉期間網民進行的集體電影海報再創作、YouTube 上司徒夾帶和「學舌鳥」等創作人和團體,以及「墳場新聞」等社交媒體專頁,都代表着網絡政治戲謔文化在香港的急速發展。

    政治戲謔和諷刺對受眾的政治認知和態度可以有什麼影響呢?如果參照外國的研究發現和討論,我們首先可以指出,政治戲謔和諷刺應有助使到更多人接觸和關注政治資訊。隨着新媒體的發展,人們正身處一個高選擇度的媒體環境中。今時今日,不用提到互聯網,如果你是一個足球迷/電影迷/日韓劇迷而家裏又裝有收費電視服務,你可以整天只看足球比賽/電影/日韓劇而不看任何其他東西。所以,一些學者認為,高選擇度的媒體環境加強了選擇性媒體使用(selective exposure)的現象,對時事感興趣的人可以日以繼夜地通過各種渠道追蹤新的新聞資訊,對時事不感興趣的人則可以完全躲開新聞資訊,結果是民眾之間的政治知識和參與鴻溝擴大。

    在這背景下,政治戲謔和諷刺的重要性,就是它可以把本身對政治和社會事務不是太有興趣的人拉回到時事的世界之中,如一些平時不一定很關注時事的年輕人,一樣很可能會看過「華 Dee」的《日日去鳩嗚》。

    資訊娛樂化有時為評論者詬病,但正正是娛樂化的內容,往往可以接觸到更多民眾。

    網絡政治戲謔4種可能效應

    較難以斷定的,是網絡政治戲謔內容會否對人們的政治態度和行為產生影響。籠統地說,筆者認為戲謔和諷刺的政治影響可以有至少四大可能性。

    第一是「得啖笑」,亦即是說政治戲謔和諷刺到最後其實不能改變人們的政治態度和認知,因為大家只把它們視為一般娛樂內容看待,笑完就算,又或者一些對時事完全不了解的人們,可能在面對某些戲謔內容時根本「唔識笑」。

    第二種可能性是較為功能主義的觀點,幽默有助人管理自己的負面情緒,笑話可以令人消氣,所以網絡政治戲謔和諷刺可能成為社會安全閥,幫助社會消除怨氣,其總體效果不是令到人們對政治有更多和更大的批判,反而是有助社會穩定。

    第三種可能性是人們對被戲謔和諷刺的政治人物有更負面的態度,但卻不是對政治制度更為批判。

    廣為流傳的戲謔內容多是集中在個人身上的。如農曆年間立法會議員葉劉淑儀被「麒麟」撞倒的一幕,就迅速成為眾多網絡戲謔內容的原材料,這種內容可能會強化本身已經不喜歡葉劉淑儀的市民的態度,但卻跟政策或政治制度拉不上關係

    相對而言,最後一種可能性,是人們可以從對政治戲謔和諷刺內容的接收中發展出更廣義的政治批判,亦即是說政治戲謔和諷刺成為了實質政治批判的載體。

    接觸政治戲謔與政治討論

    以上談及的哪一種效應會在香港較多出現是一個未知數。在現實上,政治戲謔的效應會受很多因素左右,如內容的特徵、內容的傳播模式和流傳廣度,受眾的個人特徵,以及人們在看到一些政治戲謔內容後會進行什麼樣的思考和傳播行為。筆者在兩年前特首選舉期間就做過一個研究,分析大學生對戲謔候選人的網絡內容的接觸多少,與他們如何看待候選人及選舉制度本身有什麼關係(註)。筆者當時的假設是,接觸網絡政治戲謔內容本身不一定會使人們對制度有實質的批評,但如果人們在接觸網絡政治戲謔的同時多跟朋友討論政治,人們便有可能從集中於候選人個人的戲謔內容中發展出對制度的批判,因為人際討論本身會鼓勵人們對自己所接觸到的資訊作出詮釋和闡述,從而建構意義。

    分析結果亦印證了研究假設。調查中詢問了受訪者是否同意「是次選舉中有大量的負面新聞,顯示了選舉制度的問題」以及「特首選舉是一個跟普通市民無關的小圈子選舉」兩個說法。分析結果是,在整體樣本中,大學生是否經常接觸網絡上戲謔唐英年及梁振英的內容,跟他們是否同意以上兩句句子沒有顯著的關係。但在較多跟別人討論政治和時事的大學生當中,是否經常接觸網絡上戲謔唐英年及梁振英的內容,跟是否同意兩句句子有顯著的正相關。亦即是說,只有在有討論政治的年輕人當中,才會出現「接觸政治戲謔內容愈多,對選舉制度批判度愈高」的現象。

    當然,以上只是一個單一個案研究,但結果說明,從一方面看,政治戲謔沒有必然出現的政治效果,因為這些效果可以取決於人們的其他政治傳播行為。而從另一方面看,如果人們願意思考戲謔內容以及配合到其他政治傳播行為的時候,政治戲謔和諷刺的效果不會只是「得啖笑」。
    註:

    Lee, Francis L. F. (2014). The impact of online user-generated satire on young people’s political attitudes: Testing the moderating role of knowledge and discussion. Telematics & Informatics, 31(3), 397-409.


    梁美儀﹕沒有理,還是要你 – 明報 2015年03月05日

    特首梁振英肯定是香港回歸以來,最會打破框架的特首。

    為了安插更多「梁粉」進入政府各個諮詢委員會,梁特首打破傳統,要求各個政策局將相關任命建議必先送交中央政策組顧問高靜芝手上過目、協調,結果這位變相「組織部長」,有效地將多位與梁特首「志同道合」人士送入各大諮詢委員會,成功逐步構建「梁營」。

    梁特首最新的「創舉」,是在立法會未有通過設立創新及科技局的決議案前,突然宣布委任他的心儀創科局人選楊偉雄一人兼3職,既為特首的貼身創科顧問、受薪的行政會議成員,同時將出任改組後的「創新及科技諮詢委員會」主席。

    梁振英的做法,顯然是針對立法會遲遲未能通過創科局的建議而來。他擺明告訴與他為敵的人士,作為特首,他會用盡憲制內特首的權力和一切空子,不達其目的絕不罷休,

    在他的字典裏,沒有「屈服」與「認輸」這4隻大字。

    為了達到其政治目的,什麼常規、政治倫理,他也會有一套新的論述和演繹。按程序,設立新局必先經立法會通過,並賦予新設局長相關法定權力,議會不合作嘛,他為了展示特首的強勢,他懶理立法會泛民議員的拉布拖延,不惜破壞憲制秩序,不顧得有關安排有理無理,硬要創造一個直屬於他的創科顧問職位,安置他的「心儀局長」,並可運用特首的令旗,要求政府內的公僕,執行這位無法定權力的「另類局長」的政策建議。

    梁特首的舉措或許能逞強於一時,但此舉無疑是向議會宣戰,日後政府向立法會重交設立創科局的議案時,泛民議員恐怕只會「雙倍奉還」,實行與梁特首抗爭到底。另一邊廂,在政府內的公務員會如何面對這位「有名無實」的創科顧問?正所謂上有政策,下有對策,他們會否全力協助楊先生提出的政策建議?好戲還在後頭。


    全球學者集體發聲 對抗權貴 – 蘋果日報 2015年03月05日

    學術自由感覺抽象及遙遠,但古往今來,因有前人抵抗學術打壓,才有今日社會文明的進步!身兼浸大政治及國際關係學系副教授的立法會議員陳家洛向《壹錘定音》提出哲人蘇格拉底的例子——堅持自己思想和信念,寧願死也要確保「學術自由」。

    在公元前300年,蘇格拉底用他的言論、敏捷的思考去挑戰古希臘的權貴,最終面臨審判,但他堅持「不自由,毋寧死」,也不願停止傳播啟蒙年輕人的哲學思想。他的思想學說至今仍廣泛留傳,陳家洛指學者的思考及著作,很多時對政治、經濟、文化、社會以及我們的生活都有影響。

    因此在1988年,世界各地的學者在利馬草擬了一份《學術自由和高等學府自主宣言》(又稱《利馬宣言》),藉以提醒權貴們,學者並非像苦行僧般,只在象牙塔埋頭苦幹,他們為了自由去推動社會的進步,繼續發聲、參與辯論,這是學者應有之義。

    其實《利馬宣言》說明「學術自由」應有的權利︰

    第6條規定「學術界研究人員應有不受任何干擾來執行研究工作的權利,並受公認的科學研究方法和原則的限制。他們有公開報道研究結論的自由和權利,及出版研究結論不受檢查的權利。

    第15條訂明「高等教育機構應對他們社會所發生的政治迫害及侵犯人權的情況提出批判。」確保學術研究有一定自主及具監察社會的功能。

    學術自由是香港的核心價值之一,與社會各界息息相關。過去一星期,不同學者解說學術自由的重要性,如浸大新聞系高級講師呂秉權解說內地學術界的白色恐怖,憂這股風氣蔓延到香港;公民黨主席余若薇強調,當學者受到政治打壓,社會利益亦會受損。

    .END

    Leave a comment

    Filed under Electronics DIY Project