百度首页 | 百度空间
 
文章列表
 
2008-10-05 20:22
    十一假期在周老师的推荐下,读了大前研一的新书《思考的技术》。大前研一在书中介绍了他在麦肯锡咨询公司(McKinsey & Company)工作期间形成的一套运用逻辑思考进行工作方法,这种逻辑思考方法令作者终身受益,使他获得了全球管理大师、日本战略之父的称号。

    大前研一在工作中运用逻辑思考解决问题的方法,可以用下面的循环式来简单概括:“提出假设——收集、分析数据——进行实验或调查——证实或推翻假设——得出阶段性结论——再提出新的假设“。

    我手头上有一项评估选题的工作,一直进展缓慢,看了这本书后,想试着按大前研一的方法来解决。我的工作是要确定一个Visual FoxPro实用宝典的选题是否有足够的潜在读者,以确保其销量,据此决定是否做这个选题。在制定我的计划前,先看看大前先生是怎么运用他的办法工作的,下面这个例子是如何制定合理的产品价格。

1. 首先”假设定价不合理,是业绩无法提升的原因“;
2. 收集历史数据。了解价格变化对业绩的影响, 了解打折之后是否真的稳赚不赔;
3. 通过实验和调查。找出针对不通的竞争对手,实行不同折扣策略;
4. 如果还不能完全证实自己的假设,就需要再针对不够周全的地方,重复上面的步骤。

确定一个选题是否值得做,与确定产品折扣率大致相同。只是选题评估不像产品定价那样可以通过反复实验来决定。图书出版的特殊性决使得我们不能采用实际出版的方式来进行反复实验。所以需要把实验的部分换成读者调查,基本的步骤如下:

1. 首先"假设VFP实用宝典在中小企业中有大量的潜在读者";
2. 收集此前出版过的VFP实用类图书的销售情况,重点是《VFP权威指南》和其他VFP实用类图书,了解这类图书的总体销量和近期走势;
3. 在第二步的基础上,通过充分的读者调查(主要是网上调查),来验证或推翻假设;
4. 如果假设被推翻,根据调研结果重新假设在其他地方是否有潜在读者,重复上面的步骤。

如果这个问题可以解决好,接下来我还计划做另外一项工作。
假设”引进台湾繁体选题销量并不好,且制作成本高,应该减少对入门级的繁体选题的引进“。
类别:掩卷有感 | 评论(0) | 浏览()
 
2008-08-31 19:59
    在搜集Pragmatic产品信息时,发现自己对公司的这个系列产品的销售情况知之甚少。究其原因,是以前很少仔细看林建峰同学辛辛苦苦做的销售数据,除了公司有名气的产品外,对其他产品的销售情况不了解。上周仔细收集销售数据中Pragmatic产品的销售数据,发现销售数据里有许多重要的变化,其中最明显的一个变化是公司较早的外版产品首印数都在8000册左右,而且基本能够卖完,而如今的图书首印基本上只有5000。这恰好印证一个事实:与两三年前相比,读者的可以选择范围更多了,他们的眼光也更挑剔了,导致外版技术图书竞争越来越激烈。

如何恢复以前的销售水平,我目前想到有如下两点:

1. 要求我们在外版书的选择上有更高的眼光,在保持所选图书高质量的同时,尽量选择具有广泛读者基础的图书,(最近一段时间杨总在批复外版选题时,也强调要少选面太窄的选题);

2. 在翻译质量上严格把关,不仅要在挑选译者时要严格,在外版选题的田间管理上,也要严把关。此前的经验表明,有些译者的试译稿水平要高于正式的译稿,这种情况多数是由于编辑在田间管理期间对译者监督不足,有些译者降低了自己对译稿的翻译要求,或者不能按计划进行翻译工作,到临近交稿时才慌忙赶工,导致质量下降。所以,严格按照“译者须知”里的规定,进行翻译期间的三次审查管理,是非常必要的。

如果同事们有其他的提高外版书质量的建议,欢迎拍砖:)
类别:工作心得 | 评论(0) | 浏览()
 
2008-08-10 13:17
Video Clip:[Google App Engine Demo]

我听到的内容(不确定的地方用红色字体标出):

[00:00~02:08]
Now with that, I'd like to hand you over to Guido Van Rossum, someone you may know as the creator of python programming language. He's also a member of App Engine Team. He'd like to talk to you briefly about Python and App Engine, Guido. Thanks, Kevin. Woo... couldn't hear myself. Well, if you know anything about me or python, you probably know that I like to work on tool for developers, and I've been doing them, making tools for developers actually for much longer than python exists for more than thirty years as far as I remember. Recurring things for me is always being ... that the stuff that I like to work on is actually stuff that makes life easier for developers. Of course, it's a very selfish goal, because I'm a developer. It's sort of self ...... so with python I've done this for a couple of decades now almost. Now, I'm joining Google App Engine Team. I'm really excited about what this team is availing here and what potential is... and what you can do immediately with this software. All apart from being excited that python is the first language that the team ...... and so I have confession to make, one of the reasons I'm so excited about this tool is I'm sort of reluctant user of Unix root password, those kind of things. Even though I love the idea of web powerful software like Apache or MySQL, and actually very sort of uncomfortable with having to configure all those things. I try not to get near there, and in the past I always have people do this for me, and now of course Google App Engine will sort of make that whole stuff go away.
类别:Dictation | 评论(0) | 浏览()
 
2008-08-03 16:43
Google App Engine 的演示(将上以前的内容汇集起来):

Video Clip:[Google App Engine Demo]

我听到的内容(不确定的地方用红色字体标出):

[00:00~01:09]
Hey, I'm Brett Slatkin, and I'm a soft-engineer on the Google App Engine team. I'm going to run you guys through a demo, open a guestbook web application, it's just a few minutes here, and then deploy to web. So the first thing to do is creating a project. In this case, I'm gonna call my project Shout out. And I open up my editor. The first thing I'm gonna do is to find configuration for my application. I do this through the ...... file, and then I just declare, well, the name of my application's gonna be called Shout out, and it's the first version, and I use the first version API ......, and I'm gonna use the Python, uh, the runtime is python. Then I declare how the URL ... application are gonna map to your actual application code. In this case, I'm gonna have all the codes map to just one Python script called main.

[01:09~01:47]
All right, so now I just create that actual main Python file. ...... I'm just gonna put in just Hello world to get started. And then, I switch over to the terminal to set up web server. This is locally running on my machine here, and it all set up the application for me, and get it running on local port. I'll take the address, go on to my web server, all right, so very simple, Hello world, it's working.

[01:47~03:51]
Now, see some thing more complicated. Let's actually build the web application. To get you started, we have a very simple Python logical web app, a web app for you to handle all the ...... , so I'm gonna import that, and I'm gonna define handler. In this case, I'm gonna have handler handle one type method which is get(), and then have it ... out the Hello world message. Then I use the Python standard WSGI module actually run this web application. So I import that too, and then define new application. So here I'm just kinda making a very basic application, in this case, I'm gonna run all my URLs this single handler have, and I use WSGI to run it, and last, the ... the main function. So go back to browser, oh you see, I've got a stack trace, so what happens here is something wrong in my code. I can slow down, it's Python standard kind of web app stack trace module. You see I've involved some syntax on 18th, so go back, yeah, so I forgot to ... comparison. Go back and reload, all right, Hello again. So that my web app is actually working.

[3:51~4:41]
Let's see something more interesting still. Let's actually start using templates to do something more interesting, we provide a very basic library to do templating, it's based on Django templates, and, the first thing I'll do is kind of creating a new template file, and here I just create heading, say, name my app Shout out, then I import our basic template module, this is, call template, then I use the module to render the template I just created. So now I can go back to browser again, and reload. Ok, that's working.


[4:41~5:37]
So now, let's actually keep going, open app, make it do something, I'm gonna have a form, and here I'm gonna post, and then I'll have input field. So this really simple guestbook web application. I'm gonna have one field which has the message I'm gonna post, and then I'll have the submit button say Shout. Again, back to browser, all right, there's a field. This is not doing anything yet, I haven't hooked it up yet. So now, back to code, I'll define the new method to handle the post requests, and I just, for now, to see if I actually get that correctly, so just posted. All right, and then I go back here and type something in. posted!, all right, that's working.

[5:37~6:31]
So now, let's keep on, let's actually set interactive data, some data in the Datastore. To do this, I'm gonna import some DB module. The DB module lets me define how my data's gonna be stored in the Datastore using something called model class. In this case, my model's gonna called Shout! I'm gonna have just a couple of field to begin with. First, message; And then, when the message ... for me. In this case, I say add now which means set the time when I put in the Datastore. Then, on the post request, I'm gonna create the Shout and insert the Datastore, and I just use the parameter.
类别:Dictation | 评论(0) | 浏览()
 
2008-05-10 12:25
我试着把Google Campfire 视频的发言内容还原出来!

This is a dictation of a video clip introducing Google App Engine on YouTube.


Video Clip :
[Google Campfire One: Introduce Google App Engine]

以下是我听到的内容。不确定的部分都用红色标出。
孟岩老师帮我解决了一些不确定的地方,其余的请大家来帮忙:)

The following are what I've heard. Those details I'm not sure are marked in red. Some of the uncertainties have been confirmed by the help of Meng Yan. You might wanna help me out with the rest of them
:)

[00:00~01:00]

Hi everyone, um, you need more time to take your seats, that's cool.
My name is Tom Stucky and this is intimidating, hah...hah, my name is Tom Stucky and I'd like to welcome you to Google Campfire one on this nice blessed day. Um... we think these Campfires are great way to engage with developer community. I hope tonight leads to increase collaboration and open disscusion around, Moving the web forward as platform. For the developer product team, that's really our focus. To help move the web forward as a platform. We think about it as developer-app-user circle, as the web platform improved, that attracts more developers to it which leads more application, which leads more users and increases uses of Internet, which in turn attracts more developers and increases investment in the web platform. And it's a virtuous cycle, which is ultimately driving use of Internet, something is good for google, and good for every other site on the web.

[01:00~01:57]
Tonight, we're introducing a preview release of Google App Engine. Google App Engine, ooh, shout out, hah...hah, Google App Engine is a way to run your web application on Google Infrastructure. And the focus is really two things. One, to make it easy to start. So that time to deployment, we're trying to reduce that, the time to deployment from when you first have that great idea for application through that application is running live on the web. And second, we're trying to make it easy to scale. So once your application
...... have serious traffic, you've got million users, we wanna make sure your infrastructure they would handle that increase...... It's an important emphasis that this is a preview release, which means it's not feature complete, it's not ready for prime time, and we're giving you early access to the product really because we wanna get your feedback early and use that feedback to drive the design of the product, we really want your participation in the design process to make sure it's as useful as possible for the developer community.

[01:57~02:38]
So let's get into the details, to give you a sense what's coming, we're gonna set out with the technical overview of the product, followed by live demo and then we will hear from Guido Van Rossum, the creator of Python,
... Python fits in all this. And then we will run through some other features of the system, and before I hand it off, I just wanna give a ... to our developer conference, that's happening in May, BANG! It's called Google I/O. It's May 28 to 29 in San Francisco, and everyone you hear from tonight and probably a lot of the other people attending tonight are gonna be there, and we hope you can join us as well. So with that I would like to hand it off to Kevin Gibbs, Kevin is the tech lead for Google App Engine, and he's gonna run through a technical overview of the product.


[02:38~04:00]
Thanks Tom. So, what is Google App Engine? Well, Google App Engine is a system to expose Google scalable infrastructure to your server side web application, that's what we're trying to do. Let me take a step back. Why are we trying to solve this problem? Why do we choose to attack this specific problem? One thing that we've noticed is that it's actually pretty difficult to create and to deploy a web application today. There're significant chanllenges to getting
...... even the smallest web app. You have a number of tasks you have to get them done, ... the first one, writing the code ..., that make sense, we all expect to do that. But even after you write your code you've got a lot of tasks to do, just to get your app started. You gotta set up your Apache web server, set up basic configures, you gotta set up your SQL database, you gotta connect the two, hook them up, you gotta create the table inside the SQL database, and then you gotta set up some scripts, getting the machine running right, all the jobs running properly. After that, then you've got a lot of other things to do, you need to get, some way to push up new versions of your code when you upgrading your app, you gotta have some way to monitor your app, so you can see if it's down, see how much traffic you can get in, all sort of things like that. And that's the technical...... , or the ... challenges you have.

[04:00~05:05]
Once you have that solved and you've got your web app ready to run, you've got another challenge, you gotta find machines, you gotta find some place actually put your web app. That usually means finding physical machines somewhere, or getting machines from a virtual hosting provider. And either of the situations generally mean one other thing, money, you gotta pay some to do this, even for the smallest web app that only gets a few requests a week, you have to pay someone just to get it up and running. So that's the financial challenge you face. So now you've got your web app configured and
... somewhere, you've got it running on some machine, you paid someone. Now you have third challenge coming up, and that's maintaining your app. Machines break, hard disks fail, your sites have config problem, ...... issues turned out. And then, once your web app starts to grow, the problem gets worse, now you need to get more machines, you gotta shard your database, you gotta solve all these additional problems as your application grows.

[05:05~05:47]
So we really wanna
... away with all these ....We wanna come up with better way doing things, something that's easier, easier for ... everyone, so that more web apps could be created. So, I think from that you can maybe see what our design goals were, and there are three. One, make it easy to use. We want to create a system that's very easy to use. Two, let's make it easy to scale. As your web app grows, we want to make it easy so that you don't have to ... everything from ... each time you...... And finally, let's make it free to get started. We don't think you should have to pay for small web app that you've just built and created, getting setout.

[
05:47~06:36]
All right, that's the problem we are trying to solve, and how we want to do it. what exactly is that engine? Now, maybe I can show you a little bit what we've done. There are three key points to understand. One, is that we run web application. That's our focus and we're trying to solve only that problem. We are not grid solution. We don't run
... computer jobs. We also not virtual machine provider, we're not providing you with the raw machine ... , instead, we run and serve your code for you. That's what we do. You hand it up to us, and we serve it. And that's things what you do, if you tell us your URL application. How the map down to ... code. I mean you hand it up to us, we do everything else.

[06:36~07:29]
Second thing important about App Engine is we trying to provide pretty entire life cycle of a web app. Now by that, I mean, we wanna take care every aspect of handling a web application. We take care your request logs and your application logs. We take care checking on the stacks of your application, pushing new version of your web app, running a database, everything. We're trying to handle that whole work flow, and ... we're trying to integrate all those tasks together. Now this is a big challenge for us by trying to replace all these tools, providing alternatives for all these tools, we've got a work cut out for us. But, we think it's a big advantage. By integrating all these tools, by trying to create a simpler alternative, we're making it easier, easier to do all the aspect of web app, and easier so that you don't have to write and maintain these configs.

[07:29~08:04]
And finally, the third point, we're providing you access to Google scalable infrastructure. For the first time, you can make use of the same scalable infrastructure that we use here in Google to write our own
massive scalable apps, and that includes things like Google Accounts, ...... , GFS, the Google File System, Bigtable, and other a number of ... services. what we trying to do is give you the same building blocks, that we use here in Google to create our apps, so you can use them yourself to create your own individual web apps.

[08:04~09:14]
All right, so that in a nutshell is what App Engine is. Now, what I'd like to do is tell you very briefly what our stack is, what we provide in the part of App Engine stack. Now, I'm
just gonna mention these points very briefly and I'm gonna hand your off to Brad who's gonna do a demo. So the first part of our stack is our scalable serving infrastructure. This is the infrastructure that connects request down to running your code. Next stack is the Python Runtime. Python is the first language supported by App Engine. Third, we have a SDK, which allows you to code application locally on your own machine. Then we have a web based administration console. This is what ties all together and provides part that simple alternative we're trying to create. And finally we have the Datastore which is our scalable persistence layer. It's not SQL, but it's based and set on Bigtable, a scalable persistence layer we use here in Google. All right, I'm gonna hand you off to Brad, a member of the App Engine Team, and he's going to from scratch code your web application and deploy to Google Service. It takes about 8 minutes or so.

End of this video clip.

类别:Dictation | 评论(0) | 浏览()
 
     
 
 
文章分类
 
     
 
文章存档
 
 
 
 
     
 
最新文章评论
   
     


©2008 Baidu