qyb的博客

搜狐API之IP地址查询

因为要做天气预报这件事,发现搜狐好像没有一个实时的判断浏览器所在城市的方法——已有的都是把判断结果放在某定期失效的cookie里,这样可以减少服务器压力。

仔细一想就觉得这玩意其实对资源消耗没有那么大,于是就要求整一个实时的。。。。。然后就觉得该接口也可以给外部开发者调用:http://pv.sohu.com/cityjson

这个接口是给浏览器JS来调用的,缺省返回 gbk 编码的数据;如果你的应用是 UTF-8,加一个参数 http://pv.sohu.com/cityjson?ie=utf-8

目前这个接口只是搜狐在用,所以参数很简单,返回的那个 cid 还很魔幻;如果觉得这个接口确实有帮助,可以把需求发给俺们来继续改进之

未来也许搜狐会提供给互联网开发者更多的接口和服务。

BTW:写这篇blog之前突然想到,中国互联网应该有类似的接口了吧,一查之下果然 QQ 有一个 http://fw.qq.com/ipaddress,但好像不是官方支持,而且它只有 gbk,哇咔咔

Topic: 技术

G小调小步舞曲

BWV Anh. 115,和偶两年前练的Anh. 114一样,都是 Christian Petzold 的作品,只是记在巴赫头上而已。现在达达学到了这个曲目,计划有时间也俺也练习下..

随便从youku上找了段视频:

大调的欢快明亮和小调的低沉阴郁,114 和 115 是特别好的对比

Topic: 音乐

被空降了...以及本周一些零星想法

上周三刚刚通过气,本周三,就被 KCN 正式空投到一个50多人的团队里去,然后在黑暗迷茫疑惑惶恐摸索中试探了三天的路...

记得去年第一次听到这个大部门名字的时候,我就暗乐:"媒体产品与媒体技术中心,据某法则说部门名字的长度和其官僚程度成正比,哈哈哈。。。" 看来人心不能太恶毒,这报应来得太快了

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

培养接班人是经理工作内容之一,越是高级的经理越应该这么作,应该列入 PM 考核里

搜狐技术人才的1-4级别 Title 是这样:
1级:助理工程师
2级:工程师
3级:高级工程师/助理主管
4级:资深工程师/主管

所谓"主管"已经是往管理路线上靠了,其实就是一线研发经理

如果有技术升迁路线,偶觉得分"工程"和"技术"接下来可以叫:
5级:专家/助理研究员
6级:高级专家/研究员
7级:架构师/高级研究员
8级:高级架构师/资深研究员
9级:大神

如果没有技术升迁路线,技术同志最终肯定会升到一个无法胜任的管理位置上;然后苟且偷生或背着骂声离开。成专家易,当经理难。

当然,高级别技术要能被低级经理,甚至非技术型经理指挥动才成,这个就看其职业精神了

深刻体会到矩阵管理和项目经理的必要性,不过很长时期内都无法这么动,连想都不能想

媒体技术,MT,好悲剧的缩写

频道垂直化/编辑运营化

团队的总体技术参照目标是Yahoo,hoho

总之这个坑好大,爬出来的难度我觉得和登珠峰差不多了;或许没那么难,但也得有7000多米吧。

Topic: 商业 技术

写给搜狐新晋五级经理

首先恭喜你,正式获得 Manager 头衔,加入搜狐这个大概有200人左右的经理队伍。作为一名 Manager,和以前比起来,还有什么技能需要发展,要注意哪些事项呢?下面这些内容也是我平日里七拼八凑得来,希望对你能有帮助。

1,人力资源管理。Management 最重要的是管人;让你手下的人尽其用;驱动你的手下干活,而不是你事事冲到一线;让人材得以成长,补充新鲜血液,也要及时对不合格的人说byebye。你的工作绩效应该是你的手下来完成,你所要做的不过是提高效率,减少损耗。

2,战略——说到这里我痛恨语言的贫乏和无用——很难说清楚到底什么是战略。但我以为 Strategy 并不仅仅是高管们的日常词汇,也是 Manager 必备的意识。寻找一条最能发挥你以及团队竞争优势的路径。要重点强调的是,一定要学会抛弃,甚至要扔掉的可能是昨日的明星,赖以发家的东西;经理最重要的工作之一,就是要告诉手下什么东西我们不做。

3,运营/Operating。再牛逼的战略,最后也要靠运营来落实,产生绩效。把它发展成为一项系统性的工作,流程可衡量,可改进。

以上三点已经在商管书籍里讲烂了,但就是有道理。除此之外,还有两项能力需要培养

A,领导力/leadership。所有的管理活动都离不开领导这个过程,每天对镜子问自己,我是合格的头羊(说头狼也成)吗? 另外,每个人有自己适合的领导风格,同时每个领导者也要多发展额外几种不同的风格;能在不同的情况下灵活混用,是最有效果的。

B,人际关系。领导力是对内的,还要注重你以及团队和外界的联系...投资人/boss,合作伙伴,客户,等等等等,你的成功不是独立的,一定是在外部的帮助下达到的。在互联网时代,网络人际关系是一个新话题,写工作相关的博客是一个很好的方式!

4级到5级是一个槛,我猜HR从此会给你额外的关注。在俺看来,搜狐严重缺乏高级经理人才,努力工作学习成长,现在又是一个新的起点,有新的机会在前面等待。

--写出来亦以自警。

Topic: 商业

关于"运营"

"运营"是一个让人迷惑的概念,在我的环境里,每当有人提起这个词,我都要联系一下上下文,才知道指的到底是啥?

1. 网络和系统运营。其实"运维"是一个挺好的缩写了,运行维护,简单明了。说运营也不是不可以,但是前面最好还是加上 Network or System,否则很容易和下面的概念混淆。

2. 产品运营。大多数情况下,我们说运营就是这个意思。所谓“好产品是运营出来的”。类似的句式比如“新闻最终页是印刷出来的”,从印刷到运营,中间隔着好大一个坑,很多人会倒在里面。

3. 业务运营。Chief Operating Officer,最后从 Wikipedia 上摘点东西出来:...development, design, operation, and improvement of the systems that create and deliver the firm's products/services...ensuring that business operations are efficient and effective and that proper management of resources, distribution of goods and services to customers, and analysis of queue systems is done.

好吧,从上面的概念来看,任何系统性的工作都可以称之为"运营"了,不管称呼是什么,科学&发展是真理。

Topic: 商业 技术

一个Captcha的思路

Captcha——或者很山寨的说——图形验证码,是一个让人又爱又恨的技术。一方面它给正常用户增加了额外的负担,降低可用性;另一方面没有它,你一定迟早碰到 spam 的问题。

我想大家都在致力于提高 Captcha 的可用性,即设计出"人"可以轻松识别,但是对机器(ANN/SVM)却很困难的技术。每当看到Google那样扭曲到变态的图标,正常用户都会感到愤怒。

我以前看到一个比较有意思的方法是,让用户把一副图片旋转成正确的角度:比如一个凳子的图片,人类很轻松就知道应该四脚朝下,椅背方向朝上;但机器恐怕比较难做到这点。

后来有一天我想到一个主意。人类的眼球有一个特性,就是只要切换速度足够快,那么可以感觉到一幅幅静止的图片动起来;甚至类似隔行扫描(A场、B场)那种技术,人类神经可以自动把一幅幅残缺的图片拼凑成整张。电视正是这么干的:

我的想法是借助动态gif,每一帧都有大量噪点(电视这个例子上是每一帧都有50%的噪点?),但噪点位置帧和帧之间都不一致,组合起来后或许能被人类自动忽略,而关注在我们希望展示的内容上。因此还特意研究了一下动态gif的技术(http://www.dup2.org/node/1250)。但最后没有得到一个好结果,就中止研究了。不过有了这样一个结论:一定要让背景(内容)和前景(噪声)同时运动,否则识别难度没有本质提高。

本来这个属于失败的研究,不打算blog的,可是看到了一个新出来的 Captcha 服务:NuCaptcha,也是同时有动态背景和动态前景。那么这个思路可能还是值得分享一下

Topic: 技术

关于诺基亚的自问自答

Q: 为什么诺基亚要自己建立平台,从设备生产,到操作系统以及云服务,还有商店?

A: 因为这是价值链的最高端,而且诺基亚有足够的实力去完成目标。想想不仅仅是微软,连三星都要搞 bada;诺基亚还没有潦倒到MOT那样只能靠Android翻身的状态。

Q: 为什么是 MeeGo?

A: 我觉得是这样的,苹果主动扩大战火——把它的 iOS 扩展到 iPad,甚至是 iMac 上来,未来说不定还有 iBook。Symbian 或许在电话上足够优秀,但在新领域肯定不靠谱,还是得 Linux。所以先是 N900/Maemo,然后是和英特尔合作搞个也能通吃 x86 的 MeeGo。(惠普收购 WebOS 也许想的是同样的事)

Q: 为什么搞 MeeGo 和 Symbian 两个平台?

A: 何止是两个,还有 S40/S30。和苹果的目标是生产完美手机不同,诺基亚的目标是为所有人生产手机。现在很明显了,N系/MeeGo 定位是 iPhone/iOS 的竞争者;Symbian 面向 global mass market。另外,微软也同时维持 WP7 和 WM6.5

Q: 为什么 N8 仍然在用 ARM11,而不是 Cortex-A8 处理器?

A: 答案见上,Symbian 的定位如此,接下来会有其他更低端的 Symbian^3 设备问世,其对手包括中兴华为最近的千元Android等;N8现在是树立一个样板,以后的机型开发应该都在N8方案的基础上做,好比5800之于S60v5。2009 年就发布的 N900 反而有一颗 A8 的芯,那个才是旗舰机型的模样。

Q: 为什么是 QT?

A: 这是为了简化开发者在两个平台之间移植应用的难度。QT 和 WRT 是诺基亚双平台战略的基石

总之,诺基亚在下一盘很大的棋(Apple/Google/MS都是如此),同时开发Symbian^3,Symbian^4,MeeGo三个系统。祝它好运

最后再转一个从别处看来的FAQ:

- Will the N8 be able to run all the apps and games that are already made for S60 5th?

YES! Symbian^3 is backwards compatible while also having the new native Qt system integrated into the OS. So, essentially you can say the Symbian^3 is a hybrid since it has both the S60/Avkon system AS WELL AS the new Qt system.

- Will the N8 be able to run all the Java apps written for S60 5th J2ME?

YES! It will run just fine, and probably a lot faster than on S60 5th devices.

- Will apps written in Qt for the N8 / Symbian^3 run on future Symbian^4 devices?

YES! That's one of cardinal ideas behind Qt, the aim is to throw out S60/Avkon in Symbian^4.

- Will Qt apps also run on older S60 5th devices?

YES! With an automatic download of the Qt libraries through a smart installer, this will work also. The user shouldn't notice anything.

- Will developers writing Qt apps for the N8 be able to publish them for Maemo/Meego devices?

YES! The Qt SDK supports building the SAME source-code for both platforms. Qt works in exactly the same way across Maemo/Meego, Symbian^3 and Symbian^4. Even games written in Qt and OpenGL ES can be build and hence work on those platforms.

- Will Symbian^4 be able to run old native S60 apps?

No, it will not. That's why Symbian^3 is first - to bridge the app support going from the old systems to the new unified Qt system.

Topic: 商业 技术

Android 连接SSID隐藏网络以及 LEAP 认证的方法

题目很拗口,其实就是在搜狐怎么连入'sohu-office' wifi

话说 Android 虽然从 1.6 就开始支持 802.1x 认证,但是配置 UI 上却只有很少的几项,如果想要做 LEAP 认证就必须取得 root 权限后修改配置文件。

先说说解题思路,因为 android 连接 wifi 和现代 Linux Desktop 一样,都是 wpa_supplicant,而且版本差异应该不会太大,所以我想拿着 Ubuntu 上的配置到 Android 上就应该能用!不管是任何模式的认证,只要你的 Linux 能接入 wifi,Android 也差不多应该能行。

在 Ubuntu 下是 daemon.log,grep 一下 "Config:" 就能看到 supplicant 的配置了。把 root 后 Android 的配置文件(路径在 /data/misc/wifi/ 下面)用 adb pull 下来,然后加入如下内容

ap_scan=2
network={
    ssid="sohu-office"
    scan_ssid=1
    key_mgmt=IEEE8021X
    auth_alg=LEAP
    eap=LEAP
    identity="qiuyingbo"
    password="yourpasswordhere"
}

push 回去,关闭再重启无线网络,sohu-office 就连上了.

注意这里的 ap_scan=2,是针对隐藏网络的。如果没有这一行配置,貌似很难连接上 sohu-office。如果后来又修改了无线配置,有可能这一行配置会被系统自动删除,切记

Topic: 技术
订阅 RSS - qyb的博客