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

您当前正在浏览黑客类别的档案。必威体育简介

“黑客”类别的存档

小本经营的货币兑换API

星期六,6月21日,二千零八

有人刚到我们的Mashed08桌边问雅虎!提供货币转换美国石油学会.我们没有,但是几行PHP允许您从雅虎财务网站获取信息:


函数转换($from,$to)
$url='http://finance.yahoo.com/currency/convert?amt=1&from='.$from.&to='.$to.&submit=convert';
$ch=curl_init();
卷发($ch,科洛普网址$URL);
卷发($ch,科洛普返回传输,1);
$feed=curl_exec($ch);
卷曲关闭($ch);
preg_match_all(“/tabledata1”)>([^<]+)/“,$feed,$cells);
返回$cells[1][1];
}

echo convert(“美元”,“英镑”);

有完整的货币代码列表论奥达.

再多几行就可以把这个变成JSONAPI


header('content-type:text/javascript');
$FROM=$获取['来自'];
$to=$得到['到'];
$callback=$获取[“callback”];
if(preg_match(“/[A-Z A-Z]3/”,$to)&&preg_match(“/[A-Z A-Z]3/”,$from))
$to=strtoupper($to);
$From=strToUpper($From);
$url='http://finance.yahoo.com/currency/convert?'.
'amt=1&from='.$from.&to='.$to.&submit=convert';
$ch=curl_init();
卷发($ch,科洛普网址$URL);
卷发($ch,科洛普返回传输,1);
$feed=curl_exec($ch);
卷曲关闭($ch);
preg_match_all(“/tabledata1”)>([^<]+)/“,$feed,$cells);
如果(是数字($cells[1][1]));
$out=“”from“:”..$from.“”,“to”:“”..$to.“”,“factor”:“”..$cells[1][1]。“”;
}否则{
$out={错误不转换货币,你确定名字吗?”};
}

}否则{
$out={错误货币格式,必须是三个字母“”;
}

if(isset($callback))
if(preg_match(“/[A-Z A-Z-$0-9.]/”,$callback))
$out=$callback.'('$out.')';
}否则{
$out={错误回调方法名“”;
}

}
回声美元;

您有几个参数:

  • 发件人(必需):三个字母的货币代码(大写或小写)
  • 收件人(必需):三个字母的货币代码(大写或小写)
  • 回调(可选):应围绕结果对象包装的回调方法的名称。

如果出了问题,这个美国石油学会将返回具有错误属性的对象,否则,您将得到一个具有三个属性的对象:

  • 发件人:原币
  • 收件人:目标货币
  • 系数:换算系数

假设您将其存储为convert.php,然后您可以执行以下操作:




这是一个糟糕的黑客行为,如果雅虎金融改变了HTML(他们会的)这将停止工作。

构建简单的Flickr–一步一步

星期一,6月16日,二千零八

当几个人问我怎么做的时候更简单的Flickr界面,我写了一些分步说明,分析问题,然后美国石油学会在他们周围工作。

更简单的Flickr界面

退房如何创建备选Flickr界面–逐步.

这是一个很好的例子美国石油学会可以使开发人员消除您可能不知道的障碍。我希望将来能给你看更多的。

代码示例可用,并通过BSD,因此,请随意重复使用它们。

是时候使用mashup来解决实际问题了吗?

星期一,6月2日,二千零八

这是我在伦敦GCAP的Barcamp4上的演讲,谈到我最近开始做更多的混搭,以及是什么导致的。

我的混乱和无障碍疲劳

简而言之,我不得不说我已经厌倦了道德上的黑客攻击和混搭。太多的人只是为了把一些信息放在一起或者证明一个技术概念而创建mashup,但是我看不到所产生的东西的用途。我们创造了很多想法,原型,概念证明,庆祝他们的冷静,然后再也不要访问或把他们变成项目。

我也对网络上的无障碍运动感到厌烦。我们没有集中精力为人们提供解决方案,而是在圈子里要求技术解决方案或执行在现实世界中没有多大意义的标准。顺从某件事比真正为那些需要我们为他们消除障碍的人提供服务要重要得多。这一切都是要求做事情,而不是去做。我觉得我浪费时间在这周围做点什么。

推动1:社会创新营

当我在社会创新营.这个阵营的概念是非常棒的:让那些有现实世界问题的人起草一个想法,像网站和社交网络这样的现代技术如何帮助解决或至少使这些问题变小。参赛作品数量庞大,从分享网站(租一个钻头而不是买一个,让它收集灰尘)到个人成长/学习监控系统,应有尽有。必威体育下载

Boost 2:由设计启用

对我来说最突出的项目是按设计启用这是一个展示残疾人的网站,向全世界展示他们在完成某些日常任务(比如切割食物)时遇到的问题,以及有哪些工具可以克服这些问题。

第二个由设计实现的想法是,它应该成为一个地方,产品设计师和生产公司可以获得关于需要什么产品的信息,然后可以开始设计和生产那些更具吸引力的方式。大多数辅助技术和产品都很难看,而且他们不一定是这样的——事实上,这使得那些刚开始用他们来完成之前的任务的人感觉更糟。人们对产品设计的兴奋程度和我们对API和混合产品的兴奋程度一样,这两种巨大的能量都可以用来解决现实生活中人们的需求。

Boost 3–能力2.0会议和访问YouTube

以我给无障碍世界一个快速踢屁股的心态,我发表了我的演讲。栖息地围栏在accessibility2.0会议上指出,我们浪费在技术解决方案上的无用能量是为了满足我们自己,而不是为最终用户做出改变。

当天的另一次会谈是Antonia Hyde,他谈到了学习障碍用户在网络上面临的问题,必威体育下载尤其是在线视频。好,我心里想,因为YouTube有一个美国石油学会,我已经在玩了,为什么不去一个可以访问的YouTube播放器呢?我已经创建了一个原型,并把它发送给安东尼娅和其他一些无障碍联系人,反馈非常棒。

最让我困惑的是,我从学校和盲人那里得到了反馈,他们感谢我的播放器,最后终于可以使用YouTube了。我很喜欢这一点——意识到我帮助的人远比我想象的要多,因为我解决了一些我以前没有尝试过的事情——详细考虑学习障碍患者的需求!必威体育下载

玩家很强大,我现在正在为2.0版本编写文档,该版本将提供搜索功能,在del.icio.us中通过书签创建的播放列表,以及缩放等更多功能。

问题:未来如何?

我是不是很奇怪(不要断章取义地回答这个问题)或者里面有什么东西?是否有更多的开发人员陷入了混乱的数据中,而没有真正改变它,还是仅仅因为我对这个世界有太多的接触,我才愿意去那里?

我正在想象(并且已经开始)计划一个事件来解决这个问题——对当前使用的互联网服务进行社交和可访问的黑客攻击。我们可以有一个黑客日周末,来自不同机构的发言人解释残疾人必须使用的问题,例如Flickr,YouTube最后一个FM等等,还有一帮黑客试图基于这些公司的API构建替代接口。我还想让这些公司的人了解这些黑客行为,可能会学习一些知识,并将它们放到实况系统中。必威体育下载

问题是:这是你想要的吗?

通过对谷歌翻译API的黑客攻击使Twitter多语言化

星期一,3月31日,二千零八

在帮助使用正确的语言属性修复雅虎搜索结果页为了让屏幕阅读器用户能够访问它们,我想知道如何使用用户生成的内容来实现这一点。当然,最简单的选择是要求用户在配置文件中提供正确的语言,但如果你像我一样会说两种语言,你实际上会用不同的语言写作。另一种选择是,当我输入语言时,提供我作为用户选择语言,这很烦人。

然后我偶然发现谷歌的Ajax翻译美国石油学会并且认为它应该很容易与之结合,例如杰森产量推特美国石油学会动态添加正确的语言属性。

唉,这不像我想的那么容易。表面上使用谷歌很容易美国石油学会告诉我某个文本是什么语言可能是:


var text=“?d_nde est_el ba_o?”;
google.language.detect(文本,功能(结果)
如果(!)结果.错误){
var language='未知';
对于(l在google.language.languages中)
if(google.language.languages[l]结果.language)
语言= L;
断裂;
}

}
var container=document.getElementByID(“检测”);
container.innerhtml=text+“是:”+language+“”;
}

(});

然而,如果你想在一个循环中使用这个,你就走运了。这个google.language.detect检测方法触发内部XHR调用,结果集只提供一个错误代码,信心水平,一个可交付的布尔值和语言代码。这是很多,但没有办法告诉函数得到的结果,哪些文本被分析。如果美国石油学会重复文本或至少允许您为当前XHR请求。

当Ajax请求以随机顺序返回时,无法判断哪种结果适用于哪种文本,所以我被卡住了。

输入萤火虫。分析正在处理的请求时,我意识到搁置网址由google.language的内部方法调用。在翻译的情况下,这是:


http://www.google.com/uds/glangdetect?callback=callback_method&context=number&q=url_encoded_text&key=notsupplied&v=1.0

可以使用数字和自己的回调方法创建脚本获取这些结果的文档中的节点。回电是:


callback_method('number',“language”:“es”,“isreliable”:true,“confidence”:0.24716422,200,null,200)

然而,因为我已经在使用PHP从其他服务中获取信息,最后我用curl作为整个概念证明,让twitter用自然语言说话:


    //卷曲Twitter订阅源
    $url='http://twitter.com/status/public_timeline.rss';
    $ch=curl_init();
    卷发($ch,科洛普网址$URL);
    卷发($ch,科洛普返回传输,1);
    $twitterdata=curl_exec($ch);
    卷曲关闭($ch);
    //获取所有描述
    preg_match_all(“/ ([^<]) /MSI“,$twitterdata,$descs);
    //跳过主源描述
    foreach($descs[1]作为$key=>d)
    如果($ key=0){
    继续;
    }

    /组装休息调用并卷曲结果
    $url='http://www.google.com/uds/glangdetect?回调=
    'FeedResult&Context='。$KEY。“& Q=”。URLNECODE($D)。
    '&key=notsupplied&v=1.0';
    $ch=curl_init();
    卷发($ch,科洛普网址$URL);
    卷发($ch,科洛普返回传输,1);
    $langcode=curl_exec($ch);
    卷曲关闭($ch);
    //获取语言
    preg_match(“/”language“:”([^”]+)“/”,$langcode,$res);
    //写出列表项
    回声

  • ‘D元’。

  • }

    ?>

查看结果:支持自然语言的公共Twitter订阅源

我将很快做一些纯javascript解决方案,也是。这可能是一个很好的机会UGC更容易接近。

感谢马克·托马斯和蒂姆·休格登对如何在XHR问题。