公交改线路,上下班更是个问题了

2009年9月21日 183 views 没有评论

早就传闻公司的接送车要停开了,现在终于看到了正式的通知:滨江公交怎么调整,你来出出点子

以后上下班,不能坐到包车的话,就要倒车了,估计会比现在麻烦不少。


分类: 生活 标签:

“合理化烟雾” >> 商道

2009年9月21日 448 views 没有评论

早上在上班的包车上看 TVB 刚刚 8 月份播出的新剧“绝代商娇”。、

在搞笑之余,还学到了一个新的名字:“合理化烟雾”。对于合理化烟雾的解释是:

“合理化”对于的是顾客,顾客觉得商品价格和质量的合理;而“烟幕”就是商家对消费者产生的烟幕!

用简单的话来说,就是商家用一些看似“亏本”的手段,让消费者认为划算而去购买,从而盈利!这就是营销方法的“合理化烟雾”。


用剧中的情节来讲就是(天涯的链接,讲的更详细):

a) 每份菜6元 *4份 = 24元 –> 4份

b) 每份菜6元*3份 + 2元加一份菜 = 20元 –> 4份

同样的两种选择,当然大部分人会点 b) 套餐!这里对客户,用的就是所谓的“合理化烟雾

因为,摊上人工、水电、物业等等很多因素以后,客户点一份菜和两份菜,其实成本的支出是差不多的!

但是推出了 b) 套餐以后,客座翻倍,净利润大增。于是:顾客满足,老板赚足。

其实想想,KFC,麦当劳用的,都是这种形式,以套餐的形式,吸引顾客多消费,并且让顾客觉得得到了实惠。


绝代商娇海报

btw: 百度真小气,外链一下图片也不行…


分类: 生意经 标签:

商道人道

2009年9月20日 147 views 没有评论
  • 去市场买些小东西,进了一家店,店家是个男的。看中了几件东西,问价格还价的时候,老板很诚恳的说不赚钱的,是带着做做的,一点让价的余地都没有,甚至打算找出进货单给我们看,只是翻了一会也没有翻到。看实在不能让价,就买下了。然后再转了几个店面的时候,看到了同样的东西,没还价还,报价就比刚才的低。

  • 85度咖啡如雨后春笋般在杭州各个地方冒了出来, 还是在差不多两个月以前看到关于这家面包店的介绍,说是刚刚进大陆,在上海开了些门店,为了保证质量,安排面包师傅专门去台湾培训,等等。那个时候,杭州还只是有几家。现在就路上经过看到的,已经不下十几家了,并且最最关键的,在各个时间段,看到的每家店里,都是人满为患! 另外注意到另外一家同样也新扩张了很多门面的面包坊“可莎蜜兒”。

  • 晚上回去,顺路有一家温州牛排,因为并不太饿,只是想吃点夜宵,所以点了一份牛杂汤,老板看我们两个人,问了句“小份的还是大份的”?虽然平时从没有叫过大份的,但是被问了,觉得有些不好意思,两个人只要一个小份,于是说就大份的吧。结果证明是小份的量,大份的汤,多花了5块,也就是50%的开销,完全是给面子薄买的单。


85cafe plastic bag

85cafe bread


分类: 生活 标签: ,

话说“东江鱼”

2009年9月18日 151 views 没有评论

同事从湖南出差带回一些东江鱼,google下,顺便给自己拓展一下生活的知识:

~~~~~~~~~~~~ 话说东江鱼” ~~~~~~~~~

“来三斤你们的东江鱼哦!”—— 去饭店千万别这么跟服务员说,人家会笑话你。因为东江鱼不是一种鱼,而是产于东江水库的鱼类的总称。

东江发源于罗宵山脉腹地的八面山,是湘江的源头之一。建国后建起东江水库,水面达24万亩,蓄水量超过80亿立方米,有着生态第一湖的美誉,

号称“湘南洞庭”。一方水土,滋生一方特产,这山溪汇集的东江水清澈明亮,富含人体所需的微量元素,算得上是天然矿泉水。湖中水温常年保持在

8—12℃之间,是冷水名贵鱼生息的理想家园,加上水库四周山高林密,无任何工业污染,水质达国家一级饮用水标准,这就造就了东江湖鱼鲜、嫩的优良品质。2004年东江湖流域30万亩水面通过了无公害水产品产地认证。按照渔业公司的保守估计,鱼类产品年产量在一万吨以上。

其中主要的品种有:

虹鳟鱼、东江湖鲟龙、鳜(桂)鱼、翘嘴红鱼白、三角鲂、湘云鲫(鲤)、银鱼、鲈鱼等八种。

最独特的东江鱼是: 三角鲂、鲈鱼、翘嘴巴鱼、三文鱼

三角鲂形体像是一个三角形,身体扁扁的,尖头,它有一门大名鼎鼎的亲戚,也是三角形,只是头部较为圆润,叫做团头鲂,也就是武昌鱼。这种鱼可以红烧也能清蒸,肉质细嫩

鲈鱼要清蒸,放点姜丝就行了,东江的鲈鱼肉质特别白,白得像玉,所以称为白玉鲈鱼。

翘嘴鱼算是地道的东江本地鱼,像是我们的筒鲴鱼的样子,一晒干嘴唇就自然上翘,秀气得很。这个用辣椒蒸出来,有点像我们的火焙鱼.

三文鱼是养殖的,在大坝以外的小东江里,因为从湖底透出的低层水温度低许多,适合这形色漂亮营养丰厚的三文鱼生长.

东江鱼系列就是以郴州这些特有的鱼为主要原料,精制而成的,香辣可口,风味独特。


分类: 生活 标签:

工作要有规划,生活也要有规划。

2009年9月18日 136 views 没有评论
分类: 只言片语 标签:

“白银帝国”观后感

2009年9月16日 209 views 3 条评论

上周去文一路“物美”的翠苑电影大世界看了电影《白银帝国》。

评星:***

影评:女导演,拍得比较感性。

自由、平等、人性本源,是导演要宣扬的现时代理念。

商战、权谋等内容展现不足,显得有些无力。

至于情感纠结,伦理道德,比雷雨还是简单多了。

总的来讲,演员表演还都比较到位。


分类: 生活 标签:

用 ImageMagick 转换图片大小

2009年9月16日 232 views 没有评论

ImageMagick 是一套很好的图片处理工具包,而且开源免费,使用非常广泛。

贴一个转换图片大小的命令,可以批量的对很多文件进行瘦身,比较实用。

Linux 下:

find . -name '*.JPG' -print -exec convert {} -resize 1024x768 ../resized_1024x768/{} \;

Windows 下:

for %I in (*.jpg) do convert %I -resize 1024x768 ..\resized_1024x768\%I

Windows Cygwin 下:

find . -iname "*.jpg" | xargs -l -i convert -resize 800x600 {} ../resized_800x600/{}


另外,因为镜头的横拍和竖拍的关系,有些图像是侧的,需要90度翻转下,不然就得把脑袋侧过来看了:-)

也有个命令行的小工具 jhead 可以帮助自动的校正图像的翻转,需要注意的是还需要配合 jpegtran,把两个小工具下载放到在 %PATH% 中的某个目录下,然后执行下面的命令就好了。

# Windows / Linux 处理当前目录中的图片
jhead -autorot *.jpg
 
# Windows 下处理当前目录及子目录中的图片
jhead -autorot **\*.jpg
 
# Linux 下处理当前目录及子目录的图片。 注意 JPG 大小写
find ./ -name '*.JPG' -exec jhead -autorot {} {} \;


除了改变图像旋转之外,jhead 还可以通过命令行提取和修改图像的 Exif 信息,具体用法见其主页下载链接

当然,使用一些其他的工具也是可以实现同样的目的的。方法有很多种,不管黑猫白猫,抓到老鼠的就是好猫。这几个命令的好处是比较方便写批量的脚本。


分类: 技术 标签: ,

在 Java 程序中释放 RMI 端口

2009年9月14日 285 views 没有评论

通过 LocateRegistry.createRegistry(port) 创建了一个 rmiregistry 监听 port 所在端口,

如果想要在程序中把这个端口关闭,也就是关闭 RMI registry 服务,可以参考以下的代码。

注:似乎在2003年的时候,这个方法还行不通,到了 JDK6 的版本才解决这个问题的。

参考 Sun bug 4457683bug 4508962, 以及 这个 mail archive


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import java.rmi.NoSuchObjectException;
import java.rmi.Remote;
import java.rmi.RemoteException;
import java.rmi.registry.LocateRegistry;
 
public class RMITest {
 
	public void testRMIPortRelease() {
		System.out.println("Testing port release");
 
		System.out.println("Acquiring port... ");
		Remote reg = null;
		try {
			reg = LocateRegistry.createRegistry(1102);
		} catch (RemoteException ex) {
			ex.printStackTrace();
		}
 
		System.out.println("releasing port... ");
		try {
			java.rmi.server.UnicastRemoteObject.unexportObject(reg, true);
		} catch (NoSuchObjectException ex1) {
			ex1.printStackTrace();
		}
		reg = null;
	}
 
	public static void main(String[] args) {
		RMITest s = new RMITest();
		s.testRMIPortRelease();
	}
}


分类: 技术 标签: ,

[转] Java Prime number check

2009年9月10日 238 views 没有评论

原文出处: http://ventrix.nsdc.gr/code_folds/2008/10/07/java-prime-number/

Information about the author: http://kospol.nsdc.gr/


========================================================================

This is one approach to check if the given number is a prime number. It can take a very big number as an argument. It uses no threads and has no comments. Think it as version 0.01.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
/*
 *      Prime.java
 *
 *      Copyright 2008 Ventrix <ventrix@gmail.com>
 *
 *      http://ventrix.nsdc.gr/code_folds/
 *
 *      This program is free software; you can redistribute it and/or modify
 *      it under the terms of the GNU General Public License as published by
 *      the Free Software Foundation; either version 2 of the License, or
 *      (at your option) any later version.
 *
 *      This program is distributed in the hope that it will be useful,
 *      but WITHOUT ANY WARRANTY; without even the implied warranty of
 *      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *      GNU General Public License for more details.
 *
 *      You should have received a copy of the GNU General Public License
 *      along with this program; if not, write to the Free Software
 *      Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
 *      MA 02110-1301, USA.
 */  
 
import java.math.BigInteger;  
 
public class Prime {  
 
    private static long start;
    private static long end;  
 
    public static void main(String[] argv) {
        boolean isprimen;
        //http://java.sun.com/j2se/1.4.2/docs/api/java/math/BigInteger.html#isProbablePrime(int)
        //http://primes.utm.edu/lists/small/small.html
        //for i in `seq 1 1000`; do java Prime $i >> primes; done
        //cat primes | grep "is a"
        start = System.currentTimeMillis();
        try {
            BigInteger bigNumber = new BigInteger(argv[0]);
            if (bigNumber.compareTo(new BigInteger("2147483647")) == 1) {
                if (bigNumber.compareTo(new BigInteger("9223372036854775807")) == -1) {
                    Long longNumber = new Long(argv[0]);
                    bigNumber = null;
                    isprimen = isNorPrime(longNumber);
                } else {
                    isprimen = isBigPrime(bigNumber);
                }
            } else {
                bigNumber = null;
                Integer intNumber = new Integer(argv[0]);
                isprimen = isPrime(intNumber);
            }  
 
            if (isprimen) {
                System.out.println(argv[0] + " is a prime!");
            } else {
                System.out.println(argv[0] + " is NOT a prime!");
            }
            end = System.currentTimeMillis();
            System.out.println("Completed in +" + (end - start) + "ms");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }  
 
    private static boolean isBigPrime(BigInteger number) {
        System.out.println("You gave me a BIG number");
        BigInteger[] remain;
        remain = number.divideAndRemainder(new BigInteger(new Integer("2").toString()));
        if (remain[1].compareTo(new BigInteger("0")) == 0) {
            return false;
        }
        remain = number.divideAndRemainder(new BigInteger(new Integer("3").toString()));
        if (remain[1].compareTo(new BigInteger("0")) == 0) {
            return false;
        }
        int y = 2;
        int x = (int) Math.sqrt(number.doubleValue());
        for (int i = 5; i <= x; i += y, y = 6 - y) {
            remain = number.divideAndRemainder(new BigInteger(new Integer(i).toString()));
            if (remain[1].compareTo(new BigInteger("0")) == 0) {
                return false;
            }
        }
        return true;
    }  
 
    private static boolean isNorPrime(Long number) {
        System.out.println("You gave me a normal number");
        if (number % 2 == 0) {
            return false;
        }
        if (number % 3 == 0) {
            return false;
        }
        int y = 2;
        int x = (int) Math.sqrt(number);
        for (int i = 5; i <= x; i += y, y = 6 - y) {
            if (number % i == 0) {
                return false;
            }
        }
        return true;
    }  
 
    private static boolean isPrime(Integer number) {
        System.out.println("You gave me a small number");
        if (number < 2) {
            return false;
        }
        if (number == 2) {
            return true;
        }
        if (number % 2 == 0) {
            return false;
        }
        if (number == 3) {
            return true;
        }
        if (number % 3 == 0) {
            return false;
        }
        int y = 2;
        int x = (int) Math.sqrt(number);
        for (int i = 5; i <= x; i += y, y = 6 - y) {
            if (number % i == 0) {
                return false;
            }
        }
        return true;
    }
}//class</ventrix@gmail.com>


分类: 技术 标签:

Windows XP 下 Chrome 浏览器 SOCKS 代理设置

2009年9月10日 552 views 没有评论

时间真的过的很快,Google Chrome 浏览器出来也有一年多了。一出来的时候就装了用过,却发现还是有很多待完善的地方,很多方面还是比不上 Firefox,也不是很稳定,除了速度快这个最大的优点以外。

但是最近重新装了 3.0.x 的 DEV 版和 4.0.x BETA 版的 Chrome 以后,真的觉得很不错,浏览器本身的速度和打开网页的速度仍旧很快,甚至更快了,而且一些以前棘手的问题也在一个个的被消灭了,比如这个点击 Tab 会导致到另外一个独立的 Window 的bug,也可以像 Firefox 一样点击 Ctrl + Shift + T 打开之前关闭的 Tab 页了,对 Linux 的支持也越来越好,用了原生的 GTK;MAC 的版本也在稳步前进中,一些新的功能比如插件的支持也在实现了并在不断的完善中,开发文档也发布了,等等等等。所以最近用 Chrome 越来越多,其他的浏览器反而少了。

不过还是有个问题非常困扰,就是不支持 SOCKS 代理。因为在公司上网,由于政策的限制,有些网站是被屏蔽的,幸好有一些代理可以用。IE 下用 PAC 文件代理设置,只要类似于 “SOCKS x.x.x.x:1080” 就可以了,Firefox 下用插件 FoxyProxy,问题都不大。

Chrome 的代理设置用的是跟 IE 一样的系统代理设置,结果发现通过 SOCKS 代理出去的时候,总是报错:

  • 错误 320 (net::ERR_INVALID_RESPONSE): 未知错误。

所以访问那些被屏蔽的网站,都需要特地在开 IE 才行,很是不方便。

后来注意到其他人给 Chrome 提的那个 issue 被解决了,但是试过,Windows 下还是不行,Linux 下倒是可以的了。

再过了半个月,看这个问题就要沉下去了,就也去那里提了自己的问题, 在跟回复的人讨论了之后,才发现了一个解决的办法,其实只要用 “SOCKS5 x.x.x.x:1080” 就可以了,其中一定要写上 5 这个版本。

办法虽然是找到了,但其实还是有两个疑问的:

  1. 为什么 IE 下面不用配置 socks5 的版本但是代理也是用的好好的?
  2. 即使这个方案,也还是不够完善,代理工作的并不是很稳定,时好时坏,坏的时候,点“刷新”,网卡上都抓不到包的,也就是说 Chrome 并没有发出浏览的请求包。

不管怎样,总算是找到了一个让 WIndows 下 SOCKS 代理工作的办法了,大部分时候也都还是可以用的。

真的是希望自己也有能力,可以把第2个问题自己查出来解决掉,呵呵。


分类: 技术 标签: , ,