必威体育下载克里斯蒂安·海尔曼

您当前正在浏览必威体育下载克里斯蒂安·海尔曼12月的博必威体育简介客档案,2009。

12月存档,二千零九

为《粉碎》杂志撰稿——你认为我该报道什么?

星期一,12月28日,二千零九

我想这是一个很好的例子,吱吱作响的轮子得到油…在Twitter上抱怨粉碎杂志过度“列表帖子”–你知道“543个你真正需要的jquery插件”和“3214种创建阴影的方法”我现在被要求成为杂志的作者之一。

我一直对《粉碎》杂志抱有好感,因为它在一个已经很满的市场上迅速崛起,并显示出最终的奉献精神是可行的。我从网上杂必威体育下载志上学到了很多东西,后来从博客上看。诸如此类分开的清单进化论数字网站立地点教我CSS技巧,基础知识SEO以及其他技巧。当数字网络关闭时,一张单子分开改变方向和其他,有趣的新杂志颗粒物只是没有完全离开地面,我以为一切都结束了,在某种程度上是这样。个人博客,Twitter和Facebook组织改变了我们去哪里获取信息的想法,传统的编辑方式显得有些呆板,似乎阻碍了我们的发展。

但我不同意。良好的编辑流程意味着我们提供更好的内容。书之所以伟大,不是因为作者是天才,而是因为技术编辑挑战作者更好地解释,复制编辑修改拼写和语法错误,同样的主题被反复强调,直到它是一个简单易懂的含羞草。

当你的编辑工作不受欢迎,读者数量(和广告浏览量)加起来不足以支付给作家和编辑的费用时,它就会变成梨形。当第一个杂志出版的时候,这不是一个问题——人们很乐意免费这么做。如今,然而,它的业务要多得多,许多在线作家都要求用现金购买文章。看到一篇好文章的工作量,这完全没问题,但是如果你每天都找不到好文章怎么办?

这是当杂志转向列表帖子的时候。这些都是很快做的,意味着一个新的版本,为杂志RSSfeed得到一个新条目,人们可以发推特,等等。

列表帖子是一个真正的问题。他们非常成功,因为它们很容易消化,但它们也扼杀了杂志的整体质量。AS抽屉上的小纸条用不太切碎的词写进去。

过去比现在好多了。你看到的每一篇文章都不是教程或列表。地狱,他们中的大多数不是教程或列表。有些文章实际上讨论了设计。有一些文章让你思考如何成为一个更好的设计师,并鼓励关于设计的智力讨论。那些文章仍然存在,但他们被模仿者淹没了。
Web设计社区分为两个方面:1。喜欢看每一篇单列文章有2个。讨厌那些列出来的文章被发明出来。我两个阵营都有,因为对我来说有些单子确实有目的,但当我们开始看到SPA网站的设计趋势时,我认为我们可能做得有点过火了。

因此,当《粉碎》杂志(在Facebook上的所有内容)接近我,为他们写文章,因为他们想改变和发布更多的内容时,我非常高兴。引起讨论而不是一系列评论的深入文章,都说“棒极了”或类似的YouTube主义。

因此,我在去父母家过圣诞节的路上写的前两篇关于机场的文章将在1月份发表,内容包括以下主题:

  • 使用yslow进行基本性能测试,PageSpeed和美国在线网页速度测试
  • 七步测试以找到正确的javascript小部件

你还想在SmashingMag上看到什么,以及它拥有的大量读者?

有点疯狂——一个HTTP请求的JavaScript RSS阅读器

星期一,12月21日,二千零九

小丑和两张脸。好啊,使用钇铝石榴石玩游戏机会让你走得太远。

几天前为了回应我24路文章钇铝石榴石我的朋友詹斯格罗赫德雷斯问我如何从Slideshare网站获取缩略图和其他一些数据钇铝石榴石请求。他尝试了多次XPath直到我指出有一个完全有效的RSS用缩略图喂食。

这让我们想知道,为什么我们真的需要关心一个feed的检测,而是在它存在的时候使用它,让计算机为我们做检测。我想做的是把下面的HTML将源数据作为嵌入列表自动放入列表:

      

不虔诚的人钇铝石榴石我提出的请求如下:

选择
标题,链接,内容。缩略图,缩略图,描述
从URL所在的源(
从HTML中选择url(
“http://wait-till-i.com”,
“http://flickr.com/photos/codepo8”,
“http://slideshare.com/cheilmann”,
“http://youtube.com/chrisheilmann”

xpath=“//link[包含(@type,'rss')][1]”)
|唯一(field=“link”)

这是怎么回事?我正在使用HTML表读取我要分析的每个资源:

从url所在的HTML中选择*(
“http://wait-till-i.com”,
“http://flickr.com/photos/codepo8”,
“http://slideshare.com/cheilmann”,
“http://youtube.com/chrisheilmann”

然后我使用xpath并返回第一个具有包含单词的type属性的link元素RSS.在YQLⅠ只接受它的href属性。

从HTML中选择url(
“http://wait-till-i.com”,
“http://flickr.com/photos/codepo8”,
“http://slideshare.com/cheilmann”,
“http://youtube.com/chrisheilmann”

xpath=“//link[包含(@type,'rss')][1]”)

注意XPath语法的乐趣…0是第一个-每个开发人员都知道这一点!然后,我们使用feed表从每个href中获取feed信息,作为URL:

选择
标题,链接,内容。缩略图,缩略图,描述
从URL所在的源(
从HTML中选择url(
“http://wait-till-i.com”,
“http://flickr.com/photos/codepo8”,
“http://slideshare.com/cheilmann”,
“http://youtube.com/chrisheilmann”

xpath=“//link[包含(@type,'rss')][1]”)

最后一个问题是Flickr会以这种方式多次返回照片项,因为它有一个用于照片URL的提要和一个用于链接到照片许可证的提要。因此,我们需要使用unique()来只获取其中的第一个:

选择
标题,链接,内容。缩略图,缩略图,描述
从URL所在的源(
从HTML中选择url(
“http://wait-till-i.com”,
“http://flickr.com/photos/codepo8”,
“http://slideshare.com/cheilmann”,
“http://youtube.com/chrisheilmann”

xpath=“//link[包含(@type,'rss')][1]”)
|唯一(field=“link”)

所以,这实际上是我们想要的–我们将所有不同的请求放在一起超文本传输协议请求,然后只需要一些JavaScript来显示它。回来的数据一团糟,因为它只是一个项目数组——所以我们需要循环并检查每个项目的链接,以知道何时进入下一个列表项目。

这是非常迅速和肮脏的:

var x=document.getElementByID(“feeds”);
变量容器=[]
如果(x){
var links=x.getElementsByTagname(“a”);
var资源=[]
var URLS=[];
对于(var i=0,j=links.length;i containers.push(链接[i].parentnode);
urls.push(链接[i].getattribute('href'));
}

var yql='选择标题,链接,内容.缩略图,缩略图',+
'来自源的说明,URL在其中(选择href')+
'来自HTML,其中url在('+urls.join(','')+')和''+
'xpath=“//link[包含(@type,'rss')][1]”)''+
'唯一(field=“link”)';
var api='http://query.yahooapis.com/v1/public/yql?q=’+
encodeuricomponent(yql)+'&format=json&callback=foo';
var s=document.createElement(“script”);
s.setattribute('src',api);
document.getElementsByTagname('head')[0].附件子项;
}

函数foo(o){
var items=o.query.results.item;
Vc=0;
var out='';
对于(var i=0,j=items.length;i 输出+=

  • '+项[i].标题+'
    if(项[i].缩略图项[i].内容){
    var thumb=items[i].缩略图items[i].content.thumbnail;
    输出+=
    }否则{
    if(items[i].description.indexof('src')!= -1){
    var thumb=items[i].description.split('src=“')[1];
    Thumb=Thumb.Split(“”)[0];
    输出+=
    }

    }
    输出+=


  • if((items[i+1]&&items[i+1].link.substr(0,20)!=
    项[i].link.substr(0,20))){
    容器©innerhtml+='
      “+ + +”

    C++;
    out='';
    }

    }
    容器©innerhtml+='

      “+ + +”

    }

    然而,坏消息是,这是非常没有意义betway体育官方网的,因为性能是可怕的。如果你看到钇铝石榴石服务器必须做,以及加载和分析了多少数据。

    你的表演毫无意义。

    当然,您可以在本地缓存结果,从而将其减少到非常小的数量。然而,如果您这样做,您也可以完全转到服务器端。

    我目前正在努力使icant.co.uk运行得更快,因此,请注意这个空间中的泛型RSS显示器:

    curl–您的“查看源代码”

    星期五,12月18日,二千零九

    下面是对卷曲魔法的快速介绍。这是受到布鲁斯·劳森对我的24条路文章的评论

    看起来很酷,可以帮助我完成一个小的圣诞节项目。不幸的是,你在“做卷发”时把我弄丢了。想解释一下那里发生了什么吗?

    卷曲是什么?

    好啊,来吧。curl是Web的“查看源代码”工具。本质上,它是一个程序,允许你超文本传输协议来自命令行或不同语言实现的请求。

    这个卷曲主页有关于它的所有信息,但这里是它变得有趣的地方。

    如果您在Mac或Linux上,你很幸运,因为你已经有了卷发。如果您的操作系统受到挑战,你可以下载不同包中的curl.

    在上面提到的系统中,你可以直接去终端做你的第一件事,加载网站并查看源。要做到这一点,简单输入

    curl“http://icant.co.uk”

    点击Enter–您将获得icant.co.uk的来源(即呈现的来源,就像一个浏览器会得到它——而不是PHP当然是源代码):

    用曲线显示

    如果要在文件中输入代码,可以添加>文件名最后:

    curl“http://icant.co.uk”>myicantcouk.html

    下载你的卷发。

    (速度当然会有所不同-这是雅虎英国的管道:)

    这基本上就是curl所做的——它允许你做任何超文本传输协议来自命令行的请求。这包括加载文档,但也允许像提交表单这样的聪明的东西,设置cookie,正在验证超文本传输协议,正在上载文件,伪造引用者和用户代理设置内容类型并遵循重定向。简而言之,任何东西您可以使用浏览器。

    我可以解释这一切,但这很乏味在curl的主页上有很好的解释(如果没有很好的展示)。.

    这对我有什么用?

    现在,当你在另一种语言中使用它来构建网站时,这就变得很酷了。PHP我选择的武器有几个原因:

    • 对任何知道的人来说,学习都很必威体育下载容易HTML和JavaScript
    • 几乎每个网络托管包都有

    后者也是问题所在。很多人写的东西都很劣质PHP网络上到处都是不安全的网站。这就是为什么许多招待员不允许一些有用的东西PHP随之而来。例如,您可以使用读取文件()

    
                
      读取文件'http://project64.c64.org/misc/assembler.txt'
    ?>

    事实上,因为这是一个文本文件,它需要正确的标题:

    
                
      页眉'内容类型:文本/普通'
      读取文件'http://project64.c64.org/misc/assembler.txt'
    ?>

    你会发现,然而,很多文件宿主不允许您从其他服务器读取文件读取文件(),或FOpen-()包含().例如,我的:

    您不允许读取文件。

    这就是卷发的来源:

    
                
    页眉'内容类型:文本/普通'
    //定义要加载的URL
    $URL = 'http://project64.c64.org/misc/assembler.txt'
    /开始卷曲
    $ CH = 姜黄素 
    //告诉curl URL是什么
    库尔斯基塞特$ CH克鲁波特 $URL 
    //告诉curl您希望从该URL返回数据
    库尔斯基塞特$ CH卷边返回传输  
    /运行旋度
    美元产量 = 姜黄$ CH 
    //结束curl调用(这也会清除内存,因此
    /重要
    紧闭的$ CH
    //显示输出
    回声 美元产量
    ?>

    正如你所看到的,选项是事情变得有趣的地方和你可以设置的地方。军团.

    所以,不只是包含或加载文件,现在您可以以任何方式更改输出。比如说你想不使用美国石油学会.这将从我的Twitter主页获得个人资料徽章:

    
                
    $URL = 'http://twitter.com/codepo8'
    $ CH = 姜黄素 
    库尔斯基塞特$ CH克鲁波特 $URL 
    库尔斯基塞特$ CH卷边返回传输  
    美元产量 = 姜黄$ CH 
    紧闭的$ CH
    美元产量 = 前置替换“/”*
                 
    +>)/MSI “1美元” 美元产量 美元产量 = 前置替换 '/ */MSI 美元产量 回声 美元产量 ?>

    注意到HTMLTwitter的桌子作为统计数据,一张单子就能做到这一点。让我们纠正一下:

    
                
    $URL = 'http://twitter.com/codepo8'
    $ CH = 姜黄素 
    库尔斯基塞特$ CH克鲁波特 $URL 
    库尔斯基塞特$ CH卷边返回传输  
    美元产量 = 姜黄$ CH 
    紧闭的$ CH
    美元产量 = 前置替换“/”*
                 
    +>)/MSI “1美元” 美元产量 美元产量 = 前置替换 '/ */MSI 美元产量 美元产量 = 前置替换 '/ 美元产量 美元产量 = 前置替换 '/<(?)Tr> “$1UL>” 美元产量 美元产量 = 前置替换 '/<(?)TD> “$1LI>” 美元产量 回声 美元产量 ?>

    刮纸只是卷发的一件事。大多数情况下,您将要做的是调用Web服务。

    假设你想在网上搜索驴,你可以用雅虎做到这一点老板

    
                
    美元搜索 = 驴子
    阿皮德 = 'appid=tx6b4xhv34enpxw0syer51hp1pn5o8kags'.
             '.lqsxer1z7rmmvrzouz5svyxkwsvk-'
    $URL = 'http://boss.yahooapis.com/ysearch/web/v1/'.
           美元搜索.“?格式= XML.阿皮德
    $ CH = 姜黄素 
    库尔斯基塞特$ CH克鲁波特 $URL 
    库尔斯基塞特$ CH卷边返回传输  
    美元产量 = 姜黄$ CH 
    紧闭的$ CH
    $数据 = simpleXML加载字符串美元产量
    前额$数据>结果集网>结果 作为 美元{
      回声 

    {$r> >点击URL}>{$R> >标题}

    回声

    {$r> >抽象} {$R~> URL}

    } ?>

    单击url \“>$R->title

    “;“回声”

    {$r> >抽象}({$R~> URL})

    “?”>

    对于需要的API,您也可以这样做或其他身份验证。比如说用放置器要在文本中查找位置:

    美元内容 = 嘿,我住在伦敦,英格兰和星期一.
               “我经由瑞士苏黎世飞往纽伦堡(很遗憾)。
    $KEY = 'C8MEDB7V34eypvngbirigcc5caiMo2scfs2t'.
           '.hvslk56bqfuqoopavckaaij8-'
    $ CH = 姜黄素 
    定义“后URL”  'http://where.yahooapis.com/v1/document'
    定义“邮递员” “AppID=”.$KEY.'文档内容(&D)='.
                        乌伦码美元内容.
                       '文档类型=text/plain&outputtype=xml'
    $ CH = 姜黄素后网址
    库尔斯基塞特$ CH箭毒柱 
    库尔斯基塞特$ CHcurlopt_邮箱邮政汇票
    库尔斯基塞特$ CH卷边返回传输   
    X = 姜黄$ CH
    美元地方 = simpleXML加载字符串X 'simpleXmlElement'LIXMLX NOCDATA    
    回声 

    美元内容

    回声
      前额 美元地方 > 文件 > 位置细节 作为 美元 { 现在$ = 美元 > 地方 回声
    • {$$->名称}{$现在->类型} 回声 $现在->质心->纬度$now->centroid->longitude
    • } 回声
    ?>

    美元内容

    “回声”
      “foreach($places->document->placeDetails as$p)$now=$p->place;“回声”
    • {$$->名称},{$现在->类型};echo”($now->centroid->latitude,$now->centroid->longitude)
    • “;”;“回声”
    “?>

    为什么所有这些都是必要的?我可以用jquery和ajax来实现!

    对,你可以,但是你的用户可以吗?也,你能负担得起一个没有被搜索引擎索引的页面吗?您能确定页面上的其他javascript都不会导致错误,并且您的所有功能都消失了吗?

    通过坚持你的服务器做艰苦的工作,你可以依靠工作,如果你在javascript中使用网络资源,首先你希望用户的计算机和浏览器能够理解你想要的东西,同时你也能接受各种危险的注入。JavaScript不安全–页面中执行的每个脚本都有相同的权限。如果您使用javascript加载第三方内容,并且您没有非常巧妙地过滤它,那么第三方代码的维护者可以注入恶意代码,允许他们从您的服务器窃取信息,并以您的用户或您的身份登录。

    为什么C64事情?

    好,这个卷发后面的小伙子实际上过去做演示C64(和我一样)。看看区别:

    地平线1990

    HAXX.SE 2000

    开发者福音书更新-关于写幻灯片的新章节,新打印版本

    星期二,12月15日,二千零九

    昨天我花了一晚上的时间更新了开发者福音手册

    新封面。由你。

    更新包括:

    其余的保持不变:

    开发者宣传是IT公司的一种新角色。这是一本如何取得成功的手册。

    开发者传道者是发言人,公司及其技术人员和外部开发人员之间的调解人和翻译。如果你认为这对你来说是个好角色,这是开发人员福音传道者手册,它提供了一些关于如何做这项工作的好提示。

    使用手册,您将学习如何:必威体育下载

    • 找到优秀的网络内容并进行推广。
    • 为Web编写并创建引人入胜的代码示例。
    • 利用网络和社交网络为你提供便利,研究和推广。
    • 准备并发表精彩的演讲

    我最喜欢的五个应用程序来完成我的工作

    星期一,12月14日,二千零九

    .NET杂志要求我列出目前最常用的五个应用程序,为什么不在这里发布我的结果呢?也是。以下是我作为一名开发者传道者的日常工作:

    我最喜欢的应用程序-叉车。

    Linux上的KrusaderWindows上的总指挥官基于MAC的叉车–我使用最多的工具是什么?我在各种服务器和S3帐户上处理文件做了很多工作,我主要是一个键盘用户。我喜欢能够使用任何网络资源,比如外部硬盘,使用像文件夹这样的压缩文件,在删除文件时不会被问到我是否真的想这样做。所有这些都做得很好的另一件事是,让我可以快速访问文件夹中的命令行,以便进行繁重的文件编辑,并且能够同时看到两个资源,这使得跟踪重复的文件和区分两个文件夹变得容易。

    我最喜欢的应用程序-你的textmate。

    文本伴侣是我选择的任何编辑武器-包括写作。速度很快,可扩展性非常好,不会因为菜单和面板太多而分散我的注意力。键盘快捷键和选项卡的完成使得在其中进行编辑变得非常快速,并且能够从编辑器中运行脚本,使得从文件文件夹中自动创建文档变得非常强大。

    图1由你。

    跳转让我一次都等不及要打开Photoshop。对于快速截屏,简单地编辑屏幕截图和注释它做得很好。它与Flickr的集成也使它非常有用,可以快速地注释一些东西并将其展示给世界。

    我最喜欢的应用程序-你的Ishowu。

    我最喜欢的应用程序-MPEG流剪辑。

    我最喜欢的工具——VLC。

    伊肖乌可能是我用过的最简单(也是最便宜)的筛选工具。当我还在用窗户的时候坎塔西亚相比之下,它感觉非常笨重。一起MPEG流夹对于最终视频的简单编辑和VLC对于筛选和编码任务当你的工作是快速向全世界展示一些功能时,这会让你的生活更轻松。

    我最喜欢的工具-你的大胆。

    因为我想录下我的谈话,当你不同时做事情和谈话,而是在事后给电影配音的时候,电影的放映效果会更好。厚颜无耻是我的工具,任何音频编辑和混合。现在你能用开源工具做多少事情真是令人惊讶——在我作为音频制作人的时代,这些任务只能用Protools实现。

    那是五个。当然,我会更多地使用和用于其他特定任务(我想到的是主题演讲和Adium和Dropbox)。但有人要我五个,你走吧。