手机浏览 RSS 2.0 订阅 膘叔的简单人生 , 腾讯云RDS购买 | 超便宜的Vultr , 免费部署 N8N 的 Zeabur 注册 | 登陆
浏览模式: 标准 | 列表全部文章

百姓网:把市场费用给用户,而不给牛B的网址站和徐牛哥

其实,我是在chinaz站长站看到这篇博客的内容的,我才知道有这回事。
也就是证明,至少,我对于百姓网的官方博客还是不关心的(事实上,我也只对一些技术型的网站、博客等感兴趣)
原文是这样的:

http://blog.baixing.com/?p=367
  1. 最近很多朋友发现,百姓网慢慢的从很多网址站上消失了,比如2345之类的。很快,百姓网也会被从HAO123撤下来。  
  2.   
  3. 很多用户在问我们,怎么了?在这写篇文章解释一下,原因是我们不愿意付这个买路钱给徐牛哥。  
  4.   
  5. 和大家说一个刚刚发生的事情,帮助大家理解一下现在的网址站有多牛x,刚刚打电话给北京一个和hao123相当有内部关系著称徐姓牛哥,买 HAO123位置号称别人搞不定他都搞的定。徐牛哥上来第一句话:“你们有多少钱?你说说我听听?”。我说:“你总要报个价格吧?”,徐牛哥马上说:“你说说看,我看看你能不能达到报价的一半?”,我说:“你先说说报价吧”,徐牛哥说:”100万一个月,真正买只能比这还贵“,我说:“接受的话啥时候能有位置?”,徐牛哥说:“你们真想买,成交价肯定比这还高的多,接受或许等半年,如果只想按刊例买,一辈子都买不到。“。我说:”你是不是搞不定在这忽悠我呢?算了吧。”就挂了电话。  
  6.   
  7. 不到20秒,徐牛哥打电话给我问:“你刚刚说啥?说我搞不定?”,我说:“我是这么说的。”。徐牛哥马上说:“好,妈的,你敢这么说,我保证让你们一辈子上不去中国的3大网址站。”我说:“好,那我们看着。”  
  8.   
  9. 看见没,原来到底啥网站能上到中国3大网址站,不是用户说的算,不是李彦宏说的算,甚至钱说的都不算,原来是徐牛哥说的算。以后要是有机会见到李彦宏,一定要当面问问他。  
  10.   
  11. 也正是因为这个原因,百姓网选择把市场费用发给我们的用户,而不是发给网址站和徐牛哥。100万一个月,可以每天送5个iphone、8个ipad、10根金条、100个ipod shuffle、1000个收音机、10000个记事本。  
  12.   
  13. 看看http://x.baixing.com,作为百姓网的一员来帮助百姓网一起宣传,领百姓网的答谢礼物吧。让牛B的牛站、牛哥们见鬼去吧。  
  14.   
  15. 想了很久,觉得要最后补一句,是说给徐牛哥的:如果未来百姓网出现在中国3大网址站上,徐牛哥你就是公牛养的。  
  16.   
  17. 徐牛哥事件最新更新:今天(事情发生的第二天),徐牛哥打电话过来,全盘否认说过以上所有的话,说我在胡编乱造对他进行诽谤,并且说下周要来上海找我对证。我已经在律师的监督下对所有的对话进行了录音,并且建议他去移动调出所有的通话记录和录音后,来上海和我们对质公堂,一定让大家知道真相。有任何进展,我会随时在这更新。本来还觉得他是个牛哥,但是现在觉得原来不是真牛,不过很欣赏这种吐出来了还能吃回去的人。  

看了上面的内容,其实也很好理解。目前百姓网的名气在业内也不象初创时那样了,当然也有自己强硬 的理由 。就象评论里说的:炒作 吧。其实,推广、炒作,不TMD都是一回事嘛,只要能够成功的推出去,只要不违法,什么方式都可以用,难道不是吗。
当然现在百姓网也是可以牛起来了。

Tags: 百姓网, 市场费用, chinaz

DBA Notes:说说技术型创业团队的技术选型

做技术的人除了在工作外,总想着创业,虽然不一定成功,但总想着要做点什么 。
而且,做技术的大多是偏执狂,追求完美什么的,所以往往都会创业失败,因为,总想着程序做成功了才开始运行,但其实这时候往往会错过了什么 。
看到Fenng的这篇选型类的文章,里面有一段是这样:

XML/HTML代码
  1. 拥抱开源技术,避免过度炫技,如果技术型团队创业(做互联网),这两条都能坚持的话,我想你已经抓住了问题的 80% 的部分,基本上你不会做太多的无用功。  

好吧,上原文吧。。。原文来自于:http://www.dbanotes.net/startup/Startup_tech_style_choosing.html

看到微博上《程序员杂志》在征集"一分钟先生"的话题:如何做好公司/团队的技术选型?其实大公司或者大一点的团队选型几乎不需要太多讨论的 -- 最后会不可避免的绕到技术官僚的话题上去。这里我想简单说说技术型创业团队技术上的选型问题。

拥抱开源技术

如果只能选择微软的技术路线,比如团队几个人只会用微软的技术做开发,甚至也不想学别的,那么似乎没有别的办法,将就一下吧。如果还有的选择,尽量 选择使用开源技术。这样的好处是你不但可以有效的降低软硬件成本,还有更多的部署方案供选择,服务器上线甚至还能避免病毒的侵袭。开源技术的好处是出了问 题,你总有办法可以找到答案,避免再次犯类似的错误。而用了微软的产品之后,可能平时不出问题,但一旦出了问题,你根本没什么办法,实际上,微软的产品使 用门槛倒是低,但是复杂度可是一点都不小,而且随着发展,成本越来越高。国内有几个大中型网站,比如天涯、5173、大众点评、京东等,怕是深有感触吧, 有的因为成本太高而继续被捆绑在贼船上,有的则破釜沉舟要摆脱这种束缚,但不管怎么说,总要付出一定的开销才可以掉头了。

好了,恭喜你选择了红色药丸,现在选择开源技术路线了,离开了微软的专卖店,进入到一个超级庞大的百货商店,这里还有数种分支供你选择呢,然后怎么 办?选择大路货,选择可以掌控的技术产品,开源语言、开源程序、开源框架,乃至开源的解决方案。比如 PHP,比不上 Ruby 阳春白雪,但是用户基数大,你总能找到不错的工程师。PHP 虽然粗糙,但是管用。以 PHP 作为开发语言的成功产品不计其数,甚至很多东西根本不需要你再开发了,稍加定制即可使用。技术本身没有高下之分,差别在于使用技术的人。

Note:Paypal 和 X.com 合并之后,果断的将整个架构从微软的平台迁移到 Unix 平台;用微软技术体系构建的 MySpace 至今还在用微软的平台,被全面使用开源技术的 Facebook 短时间内全面超越。技术体系的选择是成功与否的唯一因素么?肯定不是。但至少是因素之一吧。

避免过度炫技

技术人员创业最容易犯的一个错误就是"炫技"。什么新用什么,使用最时髦的开发语言、部署的软件产品、调试最新版本的开发工具... 没错,用最新的东西容易给技术人员以满足感,但也很快会将你的时间资源消耗进去,除非你准备做的是一款基础产品。否则的话,你要花时间去学新的规范、熟悉 新的功能、对付新出现的软件BUG... 可是这时候,最需要你做的是开发你要开发的产品,而不是捣鼓其它东西。一些新的技术或者方案,可以花一些时间分析一下但没必要立刻就用,确保将来有一天能 真的使用上的时候,对一些重大的陷阱或是缺陷能够了然即可。

很多人神往 37Signals 的成功,但你一定要知道类似 37Signals 的团队,默默无闻的夭折掉的不知道有多少。每当我看到创业团队的就那么一两个人还整天在捣鼓 Go 、Erlang 这些东西,并想硬生生的用到他们的产品中去,我就知道,这样的团队要悬了。有这些精力,有这样的能力,应该想办法尽快让技术变现,研究一下怎么改进产品, 怎么给用户带来更大的价值,这些不一定用最好的技术才能做出来。想办法尽快让产品发布,尽快接受更多人给你第一轮反馈,只凭创业团队几个人闭门冥想是很难 出来好产品的,有的时候,产品推出的时机比完备的功能更为重要。要知道 GroupOn 最早也不过是搭建在 WordPress 上的几个页面,而阿里巴巴网站最初也不过是一个论坛,你又何必等到所有细节都打磨好呢?

拥抱开源技术,避免过度炫技,如果技术型团队创业(做互联网),这两条都能坚持的话,我想你已经抓住了问题的 80% 的部分,基本上你不会做太多的无用功。

再说说如何找到合适的技术伙伴,刚刚启动的时候不要直接上来就找什么技术总监、技术经理、架构师这些看起来级别很高的人,因为这样级别的人未必认同 你的想法和你的现在的团队,相反,我建议找能实现你产品想法的人。找一个合作者要比找一个管理者更为重要。最后有一点必须要说一下,不要因为一个人的技术 喜好而舍弃整个技术团队,在任何时候这都是很愚蠢的事情。

这篇文章是比较有针对性写的,所以不具有普遍性,路过的朋友不要挑刺。

--EOF--
我想说的这篇文章里对我们这些从事技术类的人想要明白的就是,只要能达到目的,不要老是想着完美,事实上,大多数成功的人,都是靠运营的。纯技术创业实在太难了。。

Tags: 创业, 选型

php2python

极有意思的网站,比较适合我们这些初学者,当然是对PHP有一些基础的初学者
网站主把常用的一些PHP的函数,用Python实现了一遍(或者是显示Python的自有函数),方便我们查找例子

例如:PHP常用的addslashes函数,用来对特殊字符进行转义,

该网站则显示:

http://www.php2python.com/wiki/function.addslashes/
  1. def addslashes(s):  
  2.     d = {'"':'\\"', "'":"\\'", "\0":"\\\0", "\\":"\\\\"}  
  3.     return ''.join(d.get(c, c) for c in s)  
  4.   
  5. s = "John 'Johny' Doe (a.k.a. \"Super Joe\")\\\0"  
  6. print s  
  7. print addslashes(s)  
  8. #John 'Johny' Doe (a.k.a. "Super Joe")\  
  9. #John \'Johny\' Doe (a.k.a. \"Super Joe\")\\\  

实现方法虽然有点不一样,但对于我们这些初学者已经了解了很多用法,比如for in,join ,dict的get用法。当然还有定义函数的def方法。

这个网站是什么呢?http://www.php2python.com,黑黑,已经加入我的收藏夹了。感谢小缘缘的推荐

Tags: php, python, function

初学python

初学python,小缘缘出了几道题:
有一 list
a = [1, 2, 3, 4, 5, 6]
請將 a 依
0, 1
1, 2
2, 3
3, 4
4, 5
5, 6
打印輸出,
2.將a list 倒序成 [6, 5, 4, 3, 2, 1]
3.將a 中的偶數挑出 *2 ,結果為 [4, 8, 12]

基本上实现:

a=[1,2,3,4,5,6]

for i in a:
    print a.index(i),',',i

a.reverse();

print a

for i in a:
    if i%2==0
        print i*2

虽然都完成了,但小缘缘说回答的不好,他这样回复

for k,v in enumerate(a):
    print k,v
print a[::-1]
print [i*2 for i in a if not i%2]

当时我就傻眼了,后来缘缘又出了道题目:

造一個 200 個隨機正整數(1~15)的list
統計其中 正整數的出現次數,並排序輸出結果

开始的时候,不清楚random居然还要import。。。。

后来花了好久做出来:

>>> import random
>>> mylist = [random.randint(1,15) for i in range(1,200)]
>>> s={}
>>> for i in mylist:
    if not s.has_key(i):
        s[i]=0
    else:
        s[i]+=1

       
>>> cmplist = sorted(s.items(),key=lambda(d):d[1])
>>> result = cmplist[::-1]
>>> print result
[(8, 20), (13, 19), (12, 16), (9, 15), (6, 15), (3, 14), (2, 12), (14, 11), (4, 11), (15, 10), (7, 10), (11, 9), (5, 9), (1, 9), (10, 4)]

缘缘点评循环的时候,可以用Get比如

for i in mylist:
    s[i]=s.get(i,0)+1

然后说sorted可以有从大到小的倒排,后来找了一下资料,发现可以这样

sorted(d.items(),cmp=lambda x,y:cmp(x[1],y[1]),reverse=True)

第一次写python,鸭梨太大了。。。

Tags: python, import, random

关于array_multisort

来自:http://hi.baidu.com/ucolo/blog/item/356263a894169eec1e17a20d.html,

今天研究了一下php的array_multisort,理解了之后发现他很强大,而且也不复杂。(手册上关于这个函数的讲解看得很费力)

一、先看最简单的情况。有两个数组:

$arr1 = array(1,9,5);
$arr2 = array(6,2,4);

array_multisort($arr1,$arr2);

print_r($arr1); // 得到的顺序是1,5,9
print_r($arr2); // 得到的顺序是6,4,2

我估计两个数组的值自始至终都是对应着的:1对应6,9对应2,5对应4。

我们再加多一个数组看看会怎样:

$arr1 = array(1,9,5);
$arr2 = array(6,2,4);
$arr3 = array(3,7,8);

array_multisort($arr1,$arr2,$arr3);

查看结果,1自始至终都对应6对应3,其它项也是如此。这种对应关系就是手册中所谓的“排序时保留原有的键名关联”。

另外也可以把每个数组想像成数据库表的一列。而对应着的1,6,3为一数据行,9,2,7为另一数据行。。。

array_multisort会先按第一个数组(想像成列)排序,如果第一个数组(列)的值相同,则按第二个数组(列)排序。

具体可以用下面的程式来测试:

$arr1 = array(1,9,5,9);
$arr2 = array(6,2,4,1);
$arr3 = array(3,7,8,0);

array_multisort($arr1,$arr2,$arr3);

可以想像这里$arr3的结果是(3,8,0,7)。

二、接下来讲解array_multisort的参数。这个函数的参数很灵活。最简单的情况是如上面所示的以1个或n个数组作为参数,需要注意的是每个数组的项数要一样,否则会warning导致排序失效。

像这样array_multisort($arr1,$arr2,$arr3); 默认是所有数组都是升序排列,如果想对$arr2降序,并当作字符串去比较,就要写成:

array_multisort($arr1, $arr2, SORT_DESC, SORT_STRING, $arr3);

每个array后面可以跟一个排序顺序标志或一个排序类型标志,或者两种标志同时出现。但是每种排序标志在每个数组后面只能出现一个。

详细如下:

排序顺序标志:

 

  • SORT_ASC - 按照上升顺序排序(默认)

  • SORT_DESC - 按照下降顺序排序

 

排序类型标志:

 

  • SORT_REGULAR - 将项目按照通常方法比较(默认)

  • SORT_NUMERIC - 将项目按照数值比较

  • SORT_STRING - 将项目按照字符串比较

 

三、最后是array_multisort有什么实际作用。

我们通常有一些多维数组需要排序:

$guys = Array
(
[0] => Array
(
[name] => jake
[score] => 80
[grade] => A
)

[1] => Array
(
[name] => jin
[score] => 70
[grade] => A
)

[2] => Array
(
[name] => john
[score] => 80
[grade] => A
)

[3] => Array
(
[name] => ben
[score] => 20
[grade] => B
)

)
例如我们想按成绩倒序排列,如果成绩相同就按名字的升序排列。
这时我们就需要根据$guys的顺序多弄两个数组出来:
$scores = array(80,70,80,20);
$names = array('jake','jin','john','ben');
然后
array_multisort($scores, SORT_DESC, $names, $guys);就行了
还能不能更灵活一点呢,每次想排序都要另外弄些数组出来吗?
其实在qeephp的helper_array类里面已经封装得很好,下面是它的两个方法,需要的人自己修改一下就可以用了:
           /**
     * 根据指定的键对数组排序
     *
     * 用法:
     * @code php
     * $rows = array(
     *     array('id' => 1, 'value' => '1-1', 'parent' => 1),
     *     array('id' => 2, 'value' => '2-1', 'parent' => 1),
     *     array('id' => 3, 'value' => '3-1', 'parent' => 1),
     *     array('id' => 4, 'value' => '4-1', 'parent' => 2),
     *     array('id' => 5, 'value' => '5-1', 'parent' => 2),
     *     array('id' => 6, 'value' => '6-1', 'parent' => 3),
     * );
     *
     * $rows = Helper_Array::sortByCol($rows, 'id', SORT_DESC);
     * dump($rows);
     * // 输出结果为:
     * // array(
     * //   array('id' => 6, 'value' => '6-1', 'parent' => 3),
     * //   array('id' => 5, 'value' => '5-1', 'parent' => 2),
     * //   array('id' => 4, 'value' => '4-1', 'parent' => 2),
     * //   array('id' => 3, 'value' => '3-1', 'parent' => 1),
     * //   array('id' => 2, 'value' => '2-1', 'parent' => 1),
     * //   array('id' => 1, 'value' => '1-1', 'parent' => 1),
     * // )
     * @endcode
     *
     * @param array $array 要排序的数组
     * @param string $keyname 排序的键
     * @param int $dir 排序方向
     *
     * @return array 排序后的数组
     */
    static function sortByCol($array, $keyname, $dir = SORT_ASC)
    {
        return self::sortByMultiCols($array, array($keyname => $dir));
    }
           /**
     * 将一个二维数组按照多个列进行排序,类似 SQL 语句中的 ORDER BY
     *
     * 用法:
     * @code php
     * $rows = Helper_Array::sortByMultiCols($rows, array(
     *     'parent' => SORT_ASC,
     *     'name' => SORT_DESC,
     * ));
     * @endcode
     *
     * @param array $rowset 要排序的数组
     * @param array $args 排序的键
     *
     * @return array 排序后的数组
     */
    static function sortByMultiCols($rowset, $args)
    {
        $sortArray = array();
        $sortRule = '';
        foreach ($args as $sortField => $sortDir)
        {
            foreach ($rowset as $offset => $row)
            {
                $sortArray[$sortField][$offset] = $row[$sortField];
            }
            $sortRule .= '$sortArray[\'' . $sortField . '\'], ' . $sortDir . ', ';
        }
        if (empty($sortArray) || empty($sortRule)) { return $rowset; }
        eval('array_multisort(' . $sortRule . '$rowset);');
        return $rowset;
    }