2017年9月14日星期四

How to estimate the cost of your mobile app?

By  

What do the Montreal Olympic Stadium, the Sydney Opera House, and the Scottish Parliament Building all have in common?
They were all monumental budget-busters. The Montreal Olympic Stadium, completed in time for the 1976 Summer Olympics, was nicknamed “The Big O” due to its doughnut shape, and “The Big Owe”—because it smashed its budget by 1990%.
Here in Barcelona we have our own budget-guzzler in the shape of Antoni Gaudí’s Sagrada Familia. Work on the behemoth basilica started in 1882, and isn’t expected to be completed until 2026—one hundred years after Gaudí’s death. It’s annual budget is said to be around 25 million euros.
Thankfully, we’re in the business of building apps, not stadiums or basilicas. But the need for a quality budget estimate in both cases is the same.
How much does developing a mobile app actually cost? In this article, we’ll walk you through the mobile app development process—and show you how to estimate the cash you’ll need.

Nasty Surprises

Joan Martin has plenty of experience developing apps. He’s been at Mobile Jazz for four years, and currently heads up our mobile team. When he’s not enjoying some down time in the mountains, he’s managing the Mobile Team projects and dipping in and out of iOS engineering.



Joan our Mobile Team lead in Martinique.

If you’re looking to create an app in the near future, it may be tempting just to launch straight into it. Clock’s ticking, right? Joan advises against that:
“You need to be really clear on how much developing your mobile app will cost. It will help you adjust your expectations and prepare accordingly—avoiding nasty surprises later down the line.”
So it’s just a question of running the numbers? We like the enthusiasm. But first, you’re going to need to channel your inner politician and define your product manifesto.

The Product Manifesto

Imagine you’re at a networking event (a dream for some, a nightmare for others— but bear with us here). Someone asks you: “So what does your app do exactly?” Could you give them a clear answer? What if your grandparents asked the same question?
This is where it all begins—your product manifesto. And your entire team needs to be able to explain it to their grandparents. It will help you to define the development path and orientate all decisions around the key features.
It needs to be a simple and precise statement. It should convey—to anyone asking—what your product is, who it’s for, and the problem it solves.
Trivia time. Here are some famous product manifestos, but do you know the name of the product?
  • “A platform where people can rent apartments from other people when traveling.”
  • “Connect the world’s professionals to make them more productive and successful.”
  • “All the music you’ll ever need. Millions of songs available instantly.”
How did you do? Those were manifestos for Airbnb, LinkedIn, and Spotify respectively.
Note the beauty of simplicity with all three of them. Focus is retained on the single major problem that the product solves, without getting lost in unimportant details.
Once you have a product manifesto, your team should revolve around it like a tennis ball around a swingball set. You’ll come back to it time and time again; from running the first product workshop, right through to the full launch. Don’t take this step lightly— the world’s most successful companies didn’t.

Assemble Your Team

Speaking of teams—do you have one?



MJ team members trekking in the Italian Alps.

Here are the key players:
  • The Product people. This team should be highly involved in pinning down the manifesto. They constantly answer the question “what does our app do?” and make focused decisions around the key features.
  • The Design people. Don’t skimp on excellent mobile designers—those that value user experience above everything else are the difference between an average app and a great one.
  • The Development people. Find skilled engineers with experience. This team is laying down the foundation of your app—don’t build that foundation on quicksand.
  • The Testing people
Hold on—the Testing people? Can’t we use our devs for that?
Would you ask the head chef to review her own restaurant? Even the best developers in the world have a biased understanding of the app. They’ve spent months implementing features by opening the app and testing their code in a certain way. As a result, they have blind spots. Here’s Joan again:
“A regular tester will approach the app as your users would, revealing corner cases and bugs that would have otherwise gone undiscovered. They’ll explore flows that both product owners and developers wouldn’t have planned for.”
So if the product owner and developers can’t test your app, who can? Well, just about anyone—friends, relatives, or a specialized testing company. You’ll get the best insights when someone beyond the bubble of your team explores the app for the first time.

Planning

While the Sagrada Familia may look like a free-for-all design frenzy, each facade has been carefully planned out—with engineers and constructors following the blueprint to every last millimeter.



We can’t imagine the planning involved in the Sagrada Familia.

Channel your inner Gaudí and meticulously plan the following:
  • The product definition. This is your vision for your product. It should include the product concept, design requirements, features, target market, pricing points, and positioning strategy.
  • A list of use cases. How might different segments of your audience use your app in different ways? These are sometimes referred to as user stories. When approaching this task, aim for the most basic specification of the app—just describe what the user can do with it. Brainstorm alternative uses to gather more use cases.
  • Wireframes. UX designers convert previously defined specs into visual representations of user flows. Wireframes are the step between the specification document and the final designs. They “reveal” the app to your team—like the very first first ultrasound to show how a baby’s developing.
  • Desired platforms. Do you want to run on Android? iOS? Both? Make sure you can justify running on your platforms from a business standpoint.
  • Backend documentation. Guidance around the data access layer of your app and infrastructure.
And make sure you answer these additional questions:
  • Will your app have social integrations? Which ones?
  • Will your app come with push notifications? Under what circumstances?
  • Which languages will your app support? Why?
  • Which OS versions will your app support? Why?
  • Will you optimize for tablet or smartphone? Why? Which one will you start with?
  • Will your app be supported offline? Why / why not?
Think carefully about the answer to that last question. There’s no magic switch for “offline support”—building this functionality is a complex task. Your app needs to be able to fetch data from the internet, store it locally on the user’s device, and reuse it later when there’s no internet. There’s plenty of planning involved—planning that will take up more of your precious time.



Planning out your app’s screens with wireframes is an important step.

Estimating

Time is money, we all know that. So before we get down to dollars and cents, we need to count the hours and days.
First, we need to define how. Our main measurement unit will be days of work, with 1 day equal to 8 hours. At Mobile Jazz, we use a minimum value of 0.25 days—the equivalent of 2 hours. That’s because, based on our experience, anything smaller than that is unrealistic.
We’ll estimate by wireframe, because it’s the most authentic representation of a screen’s appearance within your app. It also reflects the complexity of user interactions and data management. Each wireframe must contain an estimation for these two things:
  • UI Layout: Tasks related to the creation of user interface (UI) elements and their layout. This isn’t related to actions associated with UI interaction, but the complexity of implementing the different UI elements.
  • Business logic: Tasks related to the application flow management and intelligence. For example, a button that—when pressed—-sends a request to the server, which then processes the received data, stores it in a database, compares it with other data, and finally outputs a result to the user. It also relates to the complexity of implementing screen navigation.
Discounting hangover days that follow raucous company parties, in general nothing takes less than 0.5 days for UI layout, and 0.5 days for business logic—1 day per screen.
Throw the following components into the equation:
  • An additional 2 days for project setup
  • An additional 15% for testing
  • An additional 20% for bug fixing
  • And an additional day for the release
  • An additional 20% for project management
Still with us? Good. Now, developing for Android takes, on average, up to 1.5x more time than the iOS estimation. We asked Joan to explain:
“This figure comes from our experience. The Android API for creating the UI is more complex than the iOS API. It also has way more devices, each one with its own setup to control. In iOS, Apple automates this process—it’s much simpler.”

Example Estimation

Let’s imagine your team have got a killer new app for aggregating fake news from around the web. Here’s an example of what your app might consist of:
  1. Login and registration.
  2. Feed and (fake) news posts.
  3. Your profile.
  4. One push notification for new posts that appear in the feed.
  5. Offline support.
Now here’s what your estimation might look like:
Bear in mind what hasn’t been included in this estimation:
  • Backend development, evaluation, and testing.
  • Cutting of designs and assets.
  • The testing phase.
  • New features.
  • Maintenance and upgrades.

Cash Splash

It’s time. Armed with a smug grin, planning docs, an estimate, and a briefcase full of unmarked bills, you stride into the closest coworking space to hunt freelance engineers.
But what’s the right question to ask to find the best person for the job and fulfill your business needs? How about rate per hour?
That’s the wrong question to ask. Your estimation is already done—you know how much the whole process should take. So you could either hire someone who’s going to take longer and ruin the estimation, or someone who will work faster and hit the specified time frames.
The best question is: “What’s your experience?”
A skilled engineer will complete the project faster at a higher rate per hour. An amateur engineer will complete the project slower at a lower rate per hour.
We’ve done the math:
Some people will be tempted to slice some cash off that figure. So they go for a bad engineer, who claims they’ll do it faster at a lower rate. €60 per hour x 25 days = €12,000. Nice savings—but you get what you pay for. Here’s some of the things we’ve seen having worked with cheap agencies and junior developers:
  • Poor (or non-existent) offline support
  • Bad adaptation to different screen sizes
  • Terrible support for old and new OS versions
  • Weak software architecture—making your app unscalable
  • A crap professional relationship

5 Steps to App Success

Getting the idea for an app is exciting. Launching it and watching it become a success is even more so. If you want to get there, give it the best chance possible by laying sound foundations first:
  1. Define your app manifesto: What does it do?
  2. Get a mobile UX/UI expert.
  3. Find an experienced engineering team you feel good about.
  4. Develop your app, implementing only the key features (everything else can wait).
  5. If it’s too expensive, simplify your app by removing features and shaving hours off the estimate.
Follow these steps, and you and your team could build a masterpiece that doesn’t bust the budget.

2017年7月4日星期二

零八宪章全文

一、前言

今年是中国立宪百年,《世界人权宣言》公布60周年,民主墙诞生30周年,中国政府签署《公民权利和政治权利国际公约》10周年。在经历了长期的人权灾难和艰难曲折的抗争历程之后,觉醒的中国公民日渐清楚地认识到,自由、平等、人权是人类共同的普世价值;民主、共和、宪政是现代政治的基本制度架构。抽离了这些普世价值和基本政制架构的现代化,是剥夺人的权利、腐蚀人性、摧毁人的尊严的灾难过程。21世纪的中国将走向何方,是继续这种威权统治下的现代化,还是认同普世价值、融入主流文明、建立民主政体?这是一个不容回避的抉择。


19世纪中期的历史巨变,暴露了中国传统专制制度的腐朽,揭开了中华大地上数千年未有之大变局的序幕。洋务运动追求器物层面的进良,甲午战败再次暴露了体制的过时;戊戌变法触及到制度层面的革新,终因顽固派的残酷镇压而归于失败;辛亥革命在表面上埋葬了延续2000多年的皇权制度,建立了亚洲第一个共和国。囿于当时内忧外患的特定历史条件,共和政体只是昙花一现,专制主义旋即卷土重来。器物模仿和制度更新的失败,推动国人深入到对文化病根的反思,遂有以科学与民主为旗帜的五四新文化运动,因内战频仍和外敌入侵,中国政治民主化历程被迫中断。抗日战争胜利后的中国再次开启了宪政历程,然而国共内战的结果使中国陷入了现代极权主义的深渊。1949年建立的新中国,名义上是人民共和国,实质上是党天下。执政党垄断了所有政治、经济和社会资源,制造了反右、大跃进、文革、六四、打压民间宗教活动与维权运动等一系列人权灾难,致使数千万人失去生命,国民和国家都付出了极为惨重的代价。

二十世纪后期的改革开放,使中国摆脱了毛泽东时代的普遍贫困和绝对极权,民间财富和民众生活水平有了大幅度提高,个人的经济自由和社会权利得到部分恢复,公民社会开始生长,民间对人权和政治自由的呼声日益高涨。执政者也在进行走向市场化和私有化的经济改革的同时,开始了从拒绝人权到逐渐承认人权的转变。中国政府于1997年、1998年分别签署了两个重要的国际人权公约,全国人大于2004年通过修宪把尊重和保障人权写进宪法,今年又承诺制订和推行《国家人权行动计划》。但是,这些政治进步迄今为止大多停留在纸面上;有法律而无法治,有宪法而无宪政,仍然是有目共睹的政治现实。执政集团继续坚持维系威权统治,排拒政治变革,由此导致官场腐败,法治难立,人权不彰,道德沦丧,社会两极分化,经济畸形发展,自然环境和人文环境遭到双重破坏,公民的自由、财产和追求幸福的权利得不到制度化的保障,各种社会矛盾不断积累,不满情绪持续高涨,特别是官民对立激化和群体事件激增,正在显示着灾难性的失控趋势,现行体制的落伍已经到了非改不可的地步。

二、我们的基本理念

当此决定中国未来命运的历史关头,有必要反思百年来的现代化历程,重申如下基本理念:

自由:自由是普世价值的核心之所在。言论、出版、信仰、集会、结社、迁徙、罢工和游行示威等权利都是自由的具体体现。自由不昌,则无现代文明可言。

人权:人权不是国家的赐予,而是每个人与生俱来就享有的权利。保障人权,既是政府的首要目标和公共权力合法性的基础,也是以人为本的内在要求。中国的历次政治灾难都与执政当局对人权的无视密切相关。人是国家的主体,国家服务于人民,政府为人民而存在。

平等:每一个个体的人,不论社会地位、职业、性别、经济状况、种族、肤色、宗教或政治信仰,其人格、尊严、自由都是平等的。必须落实法律面前人人平等的原则,落实公民的社会、经济、文化、政治权利平等的原则。

共和:共和就是大家共治,和平共生,就是分权制衡与利益平衡,就是多种利益成分、不同社会集团、多元文化与信仰追求的群体,在平等参与、公平竞争、共同议政的基础上,以和平的方式处理公共事务。

民主:最基本的涵义是主权在民和民选政府。民主具有如下基本特点:(1)政权的合法性来自人民,政治权力来源于人民;(2)政治统治经过人民选择,(3)公民享有真正的选举权,各级政府的主要政务官员必须通过定期的竞选产生。(4)尊重多数人的决定,同时保护少数人的基本人权。一句话,民主使政府成为民有,民治,民享的现代公器。

宪政:宪政是通过法律规定和法治来保障宪法确定的公民基本自由和权利的原则,限制并划定政府权力和行为的边界,并提供相应的制度设施。

在中国,帝国皇权的时代早已一去不复返了;在世界范围内,威权体制也日近黄昏;公民应该成为真正的国家主人。祛除依赖明君清官的臣民意识,张扬权利为本、参与为责的公民意识,实践自由,躬行民主,尊奉法治,才是中国的根本出路。

三、我们的基本主张

藉此,我们本着负责任与建设性的公民精神对国家政制、公民权利与社会发展诸方面提出如下具体主张:

1、修改宪法:根据前述价值理念修改宪法,删除现行宪法中不符合主权在民原则的条文,使宪法真正成为人权的保证书和公共权力的许可状,成为任何个人、团体和党派不得违反的可以实施的最高法律,为中国民主化奠定法权基础。

2、分权制衡:构建分权制衡的现代政府,保证立法、司法、行政三权分立。确立法定行政和责任政府的原则,防止行政权力过分扩张;政府应对纳税人负责;在中央和地方之间建立分权与制衡制度,中央权力须由宪法明确界定授权,地方实行充分自治。

3、立法民主:各级立法机构由直选产生,立法秉持公平正义原则,实行立法民主。

4、司法独立:司法应超越党派、不受任何干预,实行司法独立,保障司法公正;设立宪法法院,建立违宪审查制度,维护宪法权威。尽早撤销严重危害国家法治的各级党的政法委员会,避免公器私用。

5、公器公用:实现军队国家化,军人应效忠于宪法,效忠于国家,政党组织应从军队中退出,提高军队职业化水平。包括警察在内的所有公务员应保持政治中立。消除公务员录用的党派歧视,应不分党派平等录用。

6、人权保障:切实保障人权,维护人的尊严。设立对最高民意机关负责的人权委员会,防止政府滥用公权侵犯人权,尤其要保障公民的人身自由,任何人不受非法逮捕、拘禁、传讯、审问、处罚,废除劳动教养制度。

7、公职选举:全面推行民主选举制度,落实一人一票的平等选举权。各级行政首长的直接选举应制度化地逐步推行。定期自由竞争选举和公民参选法定公共职务是不可剥夺的基本人权。

8、城乡平等:废除现行的城乡二元户籍制度,落实公民一律平等的宪法权利,保障公民的自由迁徙权。

9、结社自由:保障公民的结社自由权,将现行的社团登记审批制改为备案制。开放党禁,以宪法和法律规范政党行为,取消一党垄断执政特权,确立政党活动自由和公平竞争的原则,实现政党政治正常化和法制化。

10、集会自由:和平集会、游行、示威和表达自由,是宪法规定的公民基本自由,不应受到执政党和政府的非法干预与违宪限制。

11、言论自由:落实言论自由、出版自由和学术自由,保障公民的知情权和监督权。制订《新闻法》和《出版法》,开放报禁,废除现行《刑法》中的煽动颠覆国家政权罪条款,杜绝以言治罪。

12、宗教自由:保障宗教自由与信仰自由,实行政教分离,宗教信仰活动不受政府干预。审查并撤销限制或剥夺公民宗教自由的行政法规、行政规章和地方性法规;禁止以行政立法管理宗教活动。废除宗教团体(包括宗教活动场所)必经登记始获合法地位的事先许可制度,代之以无须任何审查的备案制。

13、公民教育:取消服务于一党统治、带有浓厚意识形态色彩的政治教育与政治考试,推广以普世价值和公民权利为本的公民教育,确立公民意识,倡导服务社会的公民美德。

14、财产保护:确立和保护私有财产权利,实行自由、开放的市场经济制度,保障创业自由,消除行政垄断;设立对最高民意机关负责的国有资产管理委员会,合法有序地展开产权改革,明晰产权归属和责任者;开展新土地运动,推进土地私有化,切实保障公民尤其是农民的土地所有权。

15、财税改革:确立民主财政和保障纳税人的权利。建立权责明确的公共财政制度构架和运行机制,建立各级政府合理有效的财政分权体系;对赋税制度进行重大改革,以降低税率、简化税制、公平税负。非经社会公共选择过程,民意机关决议,行政部门不得随意加税、开征新税。通过产权改革,引进多元市场主体和竞争机制,降低金融准入门槛,为发展民间金融创造条件,使金融体系充分发挥活力。

16、社会保障:建立覆盖全体国民的社会保障体制,使国民在教育、医疗、养老和就业等方面得到最基本的保障。

17、环境保护:保护生态环境,提倡可持续发展,为子孙后代和全人类负责;明确落实国家和各级官员必须为此承担的相应责任;发挥民间组织在环境保护中的参与和监督作用。

18、联邦共和:以平等、公正的态度参与维持地区和平与发展,塑造一个负责任的大国形象。维护香港、澳门的自由制度。在自由民主的前提下,通过平等谈判与合作互动的方式寻求海峡两岸和解方案。以大智慧探索各民族共同繁荣的可能途径和制度设计,在民主宪政的架构下建立中华联邦共和国。

19、转型正义:为历次政治运动中遭受政治迫害的人士及其家属,恢复名誉,给予国家赔偿;释放所有政治犯和良心犯,释放所有因信仰而获罪的人员;成立真相调查委员会,查清历史事件的真相,厘清责任,伸张正义;在此基础上寻求社会和解。

四、结语

中国作为世界大国,作为联合国安理会五个常任理事国之一和人权理事会的成员,理应为人类和平事业与人权进步做出自身的贡献。但令人遗憾的是,在当今世界的所有大国里,唯独中国还处在威权主义政治生态中,并由此造成连绵不断的人权灾难和社会危机,束缚了中华民族的自身发展,制约了人类文明的进步——这种局面必须改变!政治民主化变革不能再拖延下去。

为此,我们本着勇于践行的公民精神,公布《零八宪章》。我们希望所有具有同样危机感、责任感和使命感的中国公民,不分朝野,不论身份,求同存异,积极参与到公民运动中来,共同推动中国社会的伟大变革,以期早日建成一个自由、民主、宪政的国家,实现国人百余年来锲而不舍的追求与梦想。

2017年5月29日星期一

The 50 most popular high school reading books

1. The Great Gatsby
THE GREAT GATSBY, F. Scott Fitzgerald’s third book, stands as the supreme achievement of his career. This exemplary novel of the Jazz Age has been acclaimed by generations of readers. The story of the fabulously wealthy Jay Gatsby and his love for the beautiful Daisy Buchanan, of lavish parties on Long Island at a time when The New York Times noted “gin was the national drink and sex the national obsession,” it is an exquisitely crafted tale of America in the 1920s. The Great Gatsby is one of the great classics of twentieth-century literature. 

2. Lord of the Flies

When a plane crashes on a remote island, a small group of schoolboys are the sole survivors. From the prophetic Simon and virtuous Ralph to the lovable Piggy and brutish Jack, each of the boys attempts to establish control as the reality - and brutal savagery - of their situation sets in.

The boys' struggle to find a way of existing in a community with no fixed boundaries invites readers to evaluate the concepts involved in social and political constructs and moral frameworks. Ideas of community, leadership, and the rule of law are called into question as the reader has to consider who has a right to power, why, and what the consequences of the acquisition of power may be. Often compared to Catcher in the RyeLord of the Flies also represents a coming-of-age story of innocence lost.

3. To Kill a Mockingbird

The unforgettable novel of a childhood in a sleepy Southern town and the crisis of conscience that rocked it, To Kill A Mockingbird became both an instant bestseller and a critical success when it was first published in 1960. It went on to win the Pulitzer Prize in 1961 and was later made into an Academy Award-winning film, also a classic. Compassionate, dramatic, and deeply moving, To Kill A Mockingbird takes readers to the roots of human behavior - to innocence and experience, kindness and cruelty, love and hatred, humor and pathos. Now with over 18 million copies in print and translated into forty languages, this regional story by a young Alabama woman claims universal appeal. Harper Lee always considered her book to be a simple love story. Today it is regarded as a masterpiece of American literature.

4. 1984

The year 1984 has come and gone, but George Orwell's prophetic, nightmarish vision in 1949 of the world we were becoming is timelier than ever. 1984 is still the great modern classic of "negative utopia" -a startlingly original and haunting novel that creates an imaginary world that is completely convincing, from the first sentence to the last four words. No one can deny the novel's hold on the imaginations of whole generations, or the power of its admonitions -a power that seems to grow, not lessen, with the passage of time.

5. The Scarlet Letter
A Romance is an 1850 work of fiction in a historical setting, written by American author Nathaniel Hawthorne. The book is considered to be his "masterwork". 


6. of mice and men
A controversial tale of friendship and tragedy during the Great Depression
They are an unlikely pair: George is "small and quick and dark of face"; Lennie, a man of tremendous size, has the mind of a young child. Yet they have formed a "family," clinging together in the face of loneliness and alienation.


7. the catcher in the rye

J.D. Salinger's classic novel of teenage angst and rebellion was first published in 1951. The novel was included on Time's 2005 list of the 100 best English-language novels written since 1923. It was named by Modern Library and its readers as one of the 100 best English-language novels of the 20th century. 

8. animal farm
Animal Farm is an allegorical novella by George Orwell, first published in England on 17 August 1945. According to Orwell, the book reflects events leading up to the Russian Revolution of 1917 and then on into the Stalinist era of the Soviet Union.

9. romeo and juliet

One of Shakespeare’s most iconic plays, Romeo and Juliet is the tale of young love gone horribly wrong, as a combination of the lovers' warring families, outside events and their own rashness conspire to wreak tragedy on Juliet and her Romeo.
10. tethering heights

11. hamlet

Undoubtedly the most famous of all of Shakespeare's plays, Hamlet remains one of the most enduring but also enigmatic pieces of western literature. The story of Hamlet, the young Prince of Denmark, his tortured relationship with his mother, and his quest to avenge his father's murder at the hand of his brother Claudius has fascinated writers and audiences ever since it was written around 1600.

12. the odyssey


13. the crucible
14. brave new world
15. the adventures of huckleberry finn
16. macbeth
17. heart of darkness
18. fahrenheit
19. the diary of a young girl
20. catch-22
21. the grapes of wrath
22. great expectations
23. frankenstein
24. jane eyre
25. the iliad
26. the old man and the sea
27. beowulf
28. pride and prejudice
29. julius caesar
30. a midsummer night’s dream
31. the canterbury tales
32. a separate peace
33. crime and punishment
34. a tale of two cities
35. death of a salesman
36. the colour purple
37. night
38. one flew over the cuckoo’s nest
39. the adventures of tom sawyer
40. cry, the beloved country
41. uncle tom’s cabin
42. ethan frome
43. the picture of dorian gray
44. othello
45. the count of monte crisp
46. the whale (moby-dick)
47. the red badge of courage
48. the metamorphosis
49. siddhartha
50. the stranger

2017年5月23日星期二

让他三尺又何妨

清朝大学士张英的家人在老家与邻居之间有块儿空地,邻居修房砌墙越过了中界。张的家人写信报告,想请在朝廷做官的张英出来制止。谁知,张英批诗一首寄归:“ 一纸书来只为墙,让他三尺又何妨。长城万里今犹在,不见当年秦始皇。”家人得书,深感愧疚,立让三尺;邻家被张家之举所感动,也退让了三尺。“六尺巷”由此得名,成为一段千古佳话。

小时候听这个故事,很佩服張英的作派,大体能感到其中的忠恕之道。但随着年岁渐长,对这种处理方式却渐生不满。因为它貌似超脫高明,实则糊涂偷懒,实在要不得。吾国人遇事大而化之,不求甚解,导致政治黑暗,科技缺如,种种不足,正源于此。

首先,这样做是缺乏原則。事情总有个是非曲直。作为行政体制内首屈一指的高官,遇事不是通过司法手段或者通行的调解程序去解決,而简单地做一個高姿态,要邻居感受到他居高临下的悲憫,从而愧疚地自行修正。试想,张学士这种作派是否具备示范效应?如果是普通人,别人侵犯你的利益,你一味忍让会有什么后果?儒家讲究学为人师,行为示范,作为一囯的行政长官,不应该以一种高蹈的方式來宣扬別人无法模仿的道德。孔夫子之所以批评子贡救人而拒绝奖励,就是因为子贡这种高尚的行为无法让大众去践行。而无法让大众践行的道德终究是虚空。

当然,一个大学士与普通人对垒公堂,在中国的体制下也确实不好看。大家理所当然认为官府会偏向张英,这也是张英避免与人打官司的原因。但是,一个普通人选择法律来对抗权势,并且围观者不认为他头脑进水,正是一个社会有公义可寻的证明。张学士如果有进一步的认识,把家人与他人的官司做成一个司法公平的样板,无疑会大大促进社会的进步。而不仅仅留下一个教育意味不详的民间故事。

2017年5月2日星期二

一百个记忆碎片(11)

中考结束,清扫完教室,关上灯,大家都散了。我怅然坐在自己的座位,北面靠墙的倒数第二排。桌面落了一层灰,空气呛人。这时她远远走过来,够着手去开窗。光线穿透她深红的纱质衬衣,勾勒出小小的乳房。真是美丽的夏天。

2017年4月30日星期日

中央党校座谈纪要

2010年7月24日,中央党校某会议室召开了一次别开生面的座谈会,与会教授围绕校长有关指示“畅所欲言”,丑态百出,活生生一幅自供状,用不打自招来形容十分贴切;不知情的人还以为是某精神病院的分裂症患者在集体发作。这次座谈会主题是:党史中哪些真相不能对外讲。主持人是石副校长,参加座谈的“高级”人士有:罗、王、李、冯、任、郭,韩、王、胡、谢、程、陈、柳、曹等教授,并有博导14人。下面是座谈会纪录。(2014年4月9日,布楚维奇,长沙)主持人:习近平同志近日在我校的讲话极为重要。近年来,我们在如何对待中共党史问题上出现了一些混乱,主要问题是:我党历史上的一些有争议的问题教学中讲不讲,对社会上是否透露。我看习校长的讲话把这些问题基本上都解决了。今后,我们的一切工作,就是要坚定不移地维护党的利益,维护党的领导地位,因此,凡是有损我党光辉形象的事坚决不想,坚决不说,坚决不写,坚决不做。下面请同志们发言。
罗:我是坚决拥护习近平同志的讲话精神的,我们的党校,不是一般的党校,是中央党校;我们的学员不是一般的学员,都是我党的中坚骨干分子。我们的任务就是,让这些学员更中坚,更骨干,让他们相信我们党从成立那天开始就是三个代表,近八十年来大方向一贯正确,这一点绝不能含糊。如果有学员问到历史上的某些问题,特别是一些负面东西,我们怎样回答?我想,就讲是某些人的失误,是一时一事,我们党也有个学习过程。还要强调个别的机会主义分子,野心家也会干扰我党的大方向,但我们战胜了他们,更说明我党的伟大光荣正确。
王:党史中的一些史料就是不能对老百姓公开。为什么?不是说群众有知情权吗?对,那是一方面。另一方面,我们党也有保密权。哪个国家,哪个党都有不能公开的秘密,而且不许探听。个人有隐私权,党也有隐私权,不能侵权。我们党的一些隐私如果让老百姓知道了,肯定会造成思想上的混乱,会怀疑我们党执政的合法性,那就乱了。一乱,社会怎能和谐,经济怎能发展?最明显的例子就是89年那场风波,我们就是不能再讲了,因为说不清,非要讲就是揭伤疤,更疼,还要流血。我们不讲,你们看,这二十年发展得多好。父母不讲,学校不讲,青年人不知道,这对大家都好。还有,59、60、61年三年困难时期,你要是正式告诉老百姓我党执政时期,三年里饿死三千八百万人,成千上万的村庄成了无人村,哪还了得了!比日本人杀中国人还多,还省事,还省时,还省钱,还不用牺牲自己人。老百姓听了这些非反了不行。所以我们讲党史要有底线,越过底线就犯规,就要受惩罚。习近平同志的意思也是这个。
任:我就是不明白为什么有些人非得要将历史上的事情搞得清清楚楚,加上自己的结论,还非得要出版,要讲课。我们说要向前看,不要再纠缠在历史旧账上了。不说,对大家都有好处。中国人聪明,表现之一就是认识到一个真理“难得糊涂”。在座的各位领导,博导,教授,我们是党校党史教学科研人员,我们的利益与党的利益紧密相连,一荣俱荣,一损俱损。我们都有了精神方面的财富,有高级职称,有社会地位。我们的物质财富也比二十年前大幅提高,住房,汽车,家电,假期,医疗保障,有存款,丰衣足食,离退休保障,不少人给孩子,甚至孙子的房子都准备好了,你死了单位还出钱开追悼会。我也出过国,到过发达国家,我们在座的诸位的物质生活不比人家差。这些都是因为有了我们的党,我们又与党紧密相连,这就叫鱼水情。不就是不让你说点历史上的事吗,权衡一下利弊,还是不说为佳。周总理曾经说过,党内的事,有些到死都不能说。你要是非讲党史上的负面事情,那才叫搬起石头砸自己的脚,而且把群众的思想搞乱了。一乱,什么都完了。
郭:我就仅举一个例子,抗日战争。几十年来几代人都相信,我党1934年进行了长征,爬雪山过草地,目的就是北上抗日。到达陕北后成为抗日战争的中流砥柱,领导全国人民抗战八年,打败了日本侵略者。这些已经深入人心,全国人民也都相信这个宣传。可是现在有的党史教研人员不知通过谁的关系,看到了我党1937年陕北洛川会议决定,知道了我党抗战时期的战略方针,即不与日军做大规模正面冲突,保存实力,积蓄力量,扩充队伍,让国民党去和日本人打,两败俱伤,待日本人撤离后,共产党可趁机夺取全国政权。毛主席在上世纪七十年代接见来华访问的日本首相时清楚地说明了两点:第一,没有日本侵华,中共肯定会被国民党消灭了,你们一来,国民党只好先放过我们,去打日本人,我们趁机坐大并夺取了政权;第二,我们要感谢日本侵华,没有日本侵华就没有中共的今天,所以我们的感谢是真诚的。大家说说,这两件事能随便就公开承认,让老百姓知道吗?否则老百姓就会说你共产党真会耍阴谋,骗了全国人民几十年,几代人,你中共还有很多事瞒着我们吧?所以,不该讲的一定不能讲,不该承认的一定不能承认。
韩:有人说从1949年到1979年这三十年党史非常不好讲,我承认这个。因为这段时期可大肆宣传的好事不多。但是只要我们认真学习,深刻领会习校长的讲话精神,这事也不难做到。我们(指党校教师——布注)不是党政要员,他们大权在握,别人不信也得信,不服也得服。但我们是教员,是导师,(该如何使人信服)?——要以理服人。首先要自信。我们经历过那么多的大起大落,没被淘汰,随风就势,与时俱进,能做到今天的教授,博导,说明我们有能力适应新环境,完成新任务,能写出有说服力的文章和讲义。我们的另一个优势是学员都是受党教育多年的干部中的精华,他们懂纪律,懂得与中央保持一致,而且是思想上的一致。他们不会往歪门邪道上想,我们讲什么他们就听什么,不会给我们出难题。习校长要我们讲党史要讲主流,49至79年这三十年的主流是什么?就是我们坚持了社会主义道路,坚持了党的领导。按照这个主线讲就没问题,谁也驳不倒。具体怎样讲,大家都有不寻常大脑,我相信都能讲好。
胡:前两年我看到一篇攻击我党的文章,说我党夺取政权靠的是枪杆子和笔杆子,我党当政后维持政权靠的还是这两杆子。文章意思是说,一是靠枪杆子武力镇压民众自发运动,二是用笔杆子造谣,歪曲,篡改,掩盖历史真相。哪个国家维护政权不靠枪杆子?西方国家警察都带枪,用警察代替军队维护政权。我国警察不带枪,形势危急时动用武警或军队,实质上都是一样的。笔杆子这一条,我觉得现在比枪杆子还重要。我国与西方国家不同,人家多年来养成了习惯,不随意相信政客们的讲话,不随意相信各种出版物的观点,大家随便讲。你把执政党讲得再坏,人家选上来的,还是下不了台。你把在野党说得再好,大家不选你,你也上不了台。我们的国情就不同了。建国后,不管我党说什么,老百姓都认为是真理,谁要说党出了错,全国人民都要共讨之,共诛之。这就是我们宣传的功绩,是笔杆子的作用,这个传统不能丢。现在呢,老百姓还是相信,或者叫轻信,信什么?专信那些对我党不利的消息,一传十,十传百,一呼百应,然后闹事。在这种情况下,不用政府公布一些内情,只要有个教授,有个名人举出一点负面例子,大家就相信,他说一句话造成的恶劣影响我们说一百句也挽回不了。在这种国情下,就不能给老百姓讲什么我党历史上的从未公开承认的所谓事情了。你承认一件,他们又拿出十件来问你,你就下不来台了。俗话说好事不出门,坏事传千里,这样讲下去没个头了,最后变成罄竹难书了。因此我举双手赞成习校长的讲话,他的讲话精神就是该讲就讲,不该讲的就不能讲。
谢:讲党史离不开党的指导思想。我们党的指导思想是什么?我们一直讲是马列主义,毛泽东思想,这是党的思想的主线。1949年以前好说,不管别人怎样质疑,反正我们胜利了,掌握了政权。在错误路线指导下是不可能胜利的,不可能歪打正着,这叫反证法,谁也驳不倒。解放后的前三十年怎样讲?有的教员提出是在错误思想指导下搞革命,搞建设。我看解放初期的镇反肃反主流是正确的,就是多杀了,多关了,多劳教了不少人。可是没点儿红色恐怖,我们的政权就不会稳定。包括反右,反右倾,四清,虽然搞错了,但是这些运动强化了群众头脑中党是神圣不可侵犯的观念,强化了谁反对党的领导谁就下地狱的观念。我们的党经过十年文革仍牢牢掌握政权不能说和这些运动没关系。直到今天,你要说某个人反党,保证让他吓得睡不着觉。那些搞所谓民主运动的人,提倡竞选的人也不敢公开反党。上面说的是国内,下面说说国际方面的事。79年以前我党指导思想的一个重要方面,就是在国际上反对修正主义,批判以苏联为首的修正主义集团。我党在毛主席亲自挂帅下发表了九篇经典文章,即“九评”。它们全面、深刻、准确地反映了当时我党的指导思想。我们批修,实际上也是给国内干部群众看呢,没人敢反驳,老百姓接受和继承了这些思想,对稳定文革后的局势起了重大作用。可是你现在把“九评”发给老百姓看就麻烦了,老百姓就会说九评都是胡言乱语,你中共做的比苏修还修一百倍。白纸黑字,咱们是有口难辩,跳进黄河洗不清。现在的中年人、青年人对这些基本不清楚,不知道,也不感兴趣。毛主席说“人贵有自知之明”,我们不要引火烧身,这也是习校长讲话的深层含义。从79年到现在这后三十年就好说了。我们可以理直气壮地讲,我党是在正确思想指导下建设有中国特色的社会主义。邓小平理论,江泽民的三个代表,胡锦涛的科学发展观都是对马列主义毛泽东思想的发展,取得了举世瞩目的成就。这样再反过来证明我党的伟大正确。全世界都对我们这三十年都心服口服,说得不太谦虚点儿,全世界都在研究我们,来取经,来朝圣。你国外再把我们说得这不好,那不好,你别来呀,有种的把你们的发展速度和我们的比一比。我们能有今天这种百凤朝阳的局面,不能不说是我党宣传战略战术的伟大胜利,一定要继承下去。
程:说到毛泽东思想,特别是49年至79年这段时期的毛泽东思想怎么讲,我们先看一下大政方针。2009年国庆,我们的游行队伍中就有毛泽东思想方阵,我们党和政府的中枢神经所在地中南海大门外墙上的大标语仍是“战无不胜的毛泽东思想万岁”,天安门城楼正中间悬挂的还是毛主席的巨幅画像。这就明确地告诉我们:第一,不能否定毛泽东,他还是我党的伟大领袖。第二,毛泽东思想仍然是战无不胜的,还是我党的指导方针。我们以前总结建国后的毛泽东思想就是无产阶级专政下继续革命的理论,就是以阶级斗争为纲,反对资本主义复辟,防修反修,警惕隐藏在党内的修正主义分子篡党夺权。现在这些全都不能再讲了。出了什么问题?我们的学员不会提出这样的问题,他们身份特殊,前途无量。倒是我们的教研人员中有人提出这类问题,说什么合作化,公私合营,反右,三面红旗,中苏论战,四清,文化大革命都是毛泽东发动的,都是毛泽东思想的实践,结果都是战无不败。怎样对待这个问题,我想,第一,不在校内教学中讲。第二,受聘到校外讲课作报告时也不主动讲。第三,如果真有某些不识时务的人提这类问题,不用紧张,前些日子就有人拐弯抹角提了这个问题,我们的曹教授很巧妙地回答了这个问题。我建议组织几个人,研究一下,从理论上解决它,也算我们的科研成果,将来遇到挑战就可应付自如了,省得闹个脸红脖子粗,下不了台。
陈:说党史又离不开现状,现状最大的挑战就是所谓的腐败。老百姓一说到党,不说怎样伟大,不说怎样感谢党,张口就说怎样腐败,什么病入膏肓呀,什么盘根错节呀,什么前腐后继呀,中国文字中的负面词汇都说遍了还嫌不过瘾,还要古今结合,中外结合,音韵结合,编顺口溜,创造新名词诋毁我们的党,唯恐天下不乱。从中央最高层都很明确地提出反腐的问题,是关系到我党生死存亡的问题。我认为是说到要害了。当然,像有病不治,特别是慢性病,或治标不治本,人也会不死,拖个十年八年没问题。党内腐败是什么病?慢性病,急性病,还是癌症?我想反正不是绝症,但不治的话,它又蔓延得非常快,保守治疗吧,又根除不了,动大手术又承受不了,这是我党在新时期面临的新课题,非常具有挑战性。要说严惩腐败分子,这个好说,随便找几个干部,肯定能查出问题来,判他个十年八年没问题。但是不从根源上彻底清除,那还是野火烧不尽,春风吹又生。一说到根源,有些人就两眼放光,说根源就是没有民主自由,民主自由就可保证人民有选择权,有批评和监督权。有批评和监督就可发现腐败根源,有选择权人民就可以清除它。这些是中听不中用,还是美国那套资产阶级民主自由,现在由于时代潮流变了,我们不这样提了,但并不等于我们可以接受。我们党和国家领导人贾庆林、李长春、贺国强都一再强调中国绝对不能搞西方民主自由,不能搞三权分立,因为历史赋予中国共产党为中国各族人民利益的唯一代表,这个地位和责任不允许任何人、任何政党挑战。不太恰当的比喻就是“君权神授”。不坚持中共的领导,中国就会乱,中国人民就会吃二遍苦,遭二茬罪。当然,领导人的讲话都没说清楚西方民主自由有什么不好,领导人一般来说都不会详细论述,这就是为什么我们党校能存在的理由。这详细论述的光荣任务就由我们党校教研人员来承当了。
曹:中央领导人提出大政方针,我们就要详细论述,要让各级领导干部不但执行,思想上也要有明确认识,我们中央党校就是干这个的。为什么只有中央常委才能当我们的校长?因为我们的学员就是将来,有些现在就是各级领导干部,他们就听中央的,校长直接代表中央,他的讲话才具有绝对权威。中国历史上只有黄埔军校、延安抗大才可相提并论。我们的学员是来学理论的,实际上就是来接受政治思想教育的,不是来做学术研究的,给他们发个文凭也是为了回去后好开展工作。学员们都是接班人,管好他们的思想,走在正路上,这是我们的责任。要做好他们的工作,首先从我们做起,要深刻领会习校长的讲话精神,管好自己的嘴巴,不该说的就不要说。
柳:我觉得给学员讲腐败问题时要非常谨慎。老百姓说我党腐败已经说得都不想再说了,我们的学员听得都不想再听了。在以经济为中心的今天,实际上就是以创造财富,积累资本、再创造、再积累为中心。对个人和家庭来说,就是要获取更多的金钱,更多的财产,更多的享受。而且大家都有这个合法权利。捞钱最容易,最快的途径就是勤劳,智慧,机遇,胆识与权力相结合。我党是执政党,各级官员都是聪明人,有魄力,要想发财致富太有条件了。官员们经常明里从政,暗里经商,或让老婆孩子经商发财,更省事的根本不用经商,商人自动就把钱送上来,各方利益安排好了。这就是为什么今天在中国抓腐败分子很容易的原因,都不用警察,用不着侦察员,老百姓随时都可拿出证据说谁是腐败官员,而且一挖一大堆,一抓一大片。我们党目前内部掌握的政策就是抓典型,杀一儆百,不能有一个查一个,否则就乱了。全都查,全都抓,再有目前十倍的警察、法院、律师也不够用。再说目前的警察、法院、律师们都干净吗?都查都抓,各级党政机构就没法工作了,瘫痪了,像文革那样了。俗话说“法不治众”嘛。我们对学员讲,当然要强调腐败分子是极少数,绝大部分干部是廉洁奉公的,是主流。这是习校长的精神。实际上腐败也是相对的,二十年前你贪污五千块钱就是犯罪,现在你贪污十万块都不算个屁了。
主持人:还有人想发言,因为时间关系,座谈会只能到此为止了。今天,我非常高兴地看到,我们中央党校党史教学部的同志们党性特别强,水平特别高,而且完全相信同志们一定会把中央的精神准确地融汇贯通到教学科研中去。我还看到,我们的教员和教研环境就是与校外的不同,在领会中央精神方面具有巨大的优势,而且这一优势会不断地延续下去的。散会之前我想提醒大家一下:今天这个座谈会是内部举行的,我看到有的同志做了记录,请不要外传。因为我校不同于社会上的一般院校,观点不尽相同,免得出现不必要和不健康的争论,有损社会和谐。谢谢大家,散会。

2017年3月1日星期三

Use Regular Expression in Visual Studio 2015

It's a good method to use back reference in regular expression when you need to replace many items in a large file.

Suppose you want to delete </li> in a line like:

<li id="a1" class="a2">some text</li>

There are many lines like this, the id, class and text are all different, and you want to keep them. Then you can use back reference to do it.

choose  Edit -> Find and Replace -> Quick Replace

in the text box for search term, input:
<li id="(?<s1>w+)" class="(?<s2>w+)">(?<s3>.*$[a-zA-Z])</li>

in the text box for replacement term, input:
<li id="${s1}" class="${s2}">${s3}

make sure to set the Use Regular Expressions on, then click replace all. All done!

${s1}, ${s2}, ${s3} are called back reference, which will be kept untouched during the replacement.




2017年1月20日星期五

Git Quick Start

1 download and install git
For Mac: http://git-scm.com/download/mac

2 set up
git config —global user.name “your name”
git config —global user.email youremail

3 create a repository
  1. new a folder:  mkdir campus
  2. go to this folder and type: git init
  3. clone the project: git clone https://github.com/EVTechnogies/CampusApp

4 get work
1)check the status of your files
git status
or git status -f

2)tracking new files
git add filename

3)stage files(do this when a tracked files is modified)
git add filename

4)see what you have changed but not yet staged
git diff

5)see what you have staged that will go into your next commit
git diff —staged

6)commit your changes
git commit
git commit -m “your commit message”

7)removing files
git rm filename

8)show remote repository
git remote -v

9)add remote repository
git remote add [shortname] [url]
example:

10)get data from remote
git fetch [remote-name]
example: git fetch camp
git fetch origin

11)pushing to remotes
git push [remote-name] [branch-name]
example: git push origin master