好吧,所以我昨天为办公室买了一个 46 英寸的屏幕,并且迫在眉睫的风险被指责为设置“精心设计的世界杯拖延计划”,我最好向我的同事展示它的意义;)
看看我的简单草图,再看看这些 great projects我从中受到启发,我想就以下方面获得一些意见:
框架的伪代码: 由于某些方法应每 24 小时调用一次(“标题中的今天日期”),其他方法应每隔 60 秒调用一次(“Twitter 结果”),那么什么使用 JavaScript (jQuery) 和 PHP 会是一个好方法吗?
编辑:Alsciende:我同意#1 和#8 过于含糊。因此,我删除了 #8 并尝试澄清 #1:对于“框架的伪代码”,我的意思基本上是可以完全使用 JavaScript 计时器来完成吗?您将如何设置各种计时器?
Google Analytics 库:哪些库支持 Google Analytics API 并且可以生成简洁的图表。最好是 HTML5,基于 JavaScript,如 Protovis .
Twitter 库:您会推荐哪些库来从个人资料中获取 Twitter 搜索结果和最新推文。
排版/CSS/HTML5 库:尝试在此过程中学习一些 HTML5 等,请就任何其他可能相关的排版/css 库提出建议。
抓取/解析?我会给你一个具体的例子:试图从 this restaurant's website 获取今天的菜单。 ,你会怎样? (它是瑞典语 - 但你明白了 - 抱歉;))
实时统计? 我正在使用 WordPress 的 WassUp 插件来跟踪我们网站上的实时访问者。网络服务器上可能还安装了其他日志软件(AWStats 等)。关于如何从中提取信息并实时显示在仪表板上,有什么想法吗?
浏览器选择?您会选择哪种浏览器和操作系统?稳定、全屏、HTML5。
alt text http://www.freeimagehosting.net/uploads/cb7af2ef28.png
最佳答案
我已经为我们的办公室构建了一个类似于您所说的仪表板。我花了大约一天的时间来研究它,可能性真的(几乎)是无穷无尽的。基本上,我通过 PHP 处理所有计算内容,并对适当的 PHP 脚本执行间隔 AJAX 调用,该脚本返回 JSON 数据以呈现。
#2: 对于图形,我使用/推荐 flot ( http://code.google.com/p/flot/ )。该文档并不是真的那么好,但是一旦您弄清楚事情通常是如何工作的,它就是一个很棒的库,并且它使用 HTML5 Canvas 标记生成图表。
我以前没有将外部库与 Google Analytics 集成,但我假设您可以从分析中提取数据并将其格式化以供 flot 构建适当的图表。这可能是一个困难的方法,但我比大多数其他图形库更熟悉 flot(而且它并不像其他很多人一样糟糕)所以对我来说,这将是最简单的方法完成它。
#3:
对于 twitter,使用 JSON-P 从他们的搜索 API 中提取数据非常容易。基本上,它的作用是动态添加一个 <script>。标记到您的 DOM,它获取 Twitter 解释的参数,然后使用结果的 json 编码哈希调用预定义的 javascript 方法(您通过 URI 传递)。
#5: 抓取和解析单个站点将是一个艰苦的过程。每个网站都会有自己的“模式”(或非模式)来发布他们的每日菜单或特色菜。我会构建一个“菜单”脚本,它知道如何调用一些函数,并编写一个函数/类来抓取每个餐厅的网站,你有兴趣用 PHP(或任何你喜欢的其他语言)显示菜单和)。它可以用 json 回复,这是 (imo) 在 Javascript 中操作/处理数据的最简单方法。
#6: 实时统计与#5 几乎相同。我将构建几个类,这些类知道如何从我感兴趣的任何数据源中获取统计信息,并通过 ajax 调用将数据以 json 格式呈现给 javascript。
#1: 编写 javascript 代码以在计时器上加载数据非常简单,查看 setInterval , clearInterval , setTimeout , 和 clearTimeout方法。它们都采用函数名称(或闭包)和调用该函数之前等待的超时时间(以毫秒为单位)。您可以轻松地每 60 秒调用一次主计时器函数,这基本上是一个“调度程序”或“cron”样式的函数,它只会查找需要“立即”运行的内容并从调度程序执行这些函数。
希望这能给您一些关于去哪里以及如何到达那里的想法。
关于php - 物理仪表板/状态板的库和伪代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3004276/
我需要在客户计算机上运行Ruby应用程序。通常需要几天才能完成(复制大备份文件)。问题是如果启用sleep,它会中断应用程序。否则,计算机将持续运行数周,直到我下次访问为止。有什么方法可以防止执行期间休眠并让Windows在执行后休眠吗?欢迎任何疯狂的想法;-) 最佳答案 Here建议使用SetThreadExecutionStateWinAPI函数,使应用程序能够通知系统它正在使用中,从而防止系统在应用程序运行时进入休眠状态或关闭显示。像这样的东西:require'Win32API'ES_AWAYMODE_REQUIRED=0x0
如何在buildr项目中使用Ruby?我在很多不同的项目中使用过Ruby、JRuby、Java和Clojure。我目前正在使用我的标准Ruby开发一个模拟应用程序,我想尝试使用Clojure后端(我确实喜欢功能代码)以及JRubygui和测试套件。我还可以看到在未来的不同项目中使用Scala作为后端。我想我要为我的项目尝试一下buildr(http://buildr.apache.org/),但我注意到buildr似乎没有设置为在项目中使用JRuby代码本身!这看起来有点傻,因为该工具旨在统一通用的JVM语言并且是在ruby中构建的。除了将输出的jar包含在一个独特的、仅限ruby
在rails源中:https://github.com/rails/rails/blob/master/activesupport/lib/active_support/lazy_load_hooks.rb可以看到以下内容@load_hooks=Hash.new{|h,k|h[k]=[]}在IRB中,它只是初始化一个空哈希。和做有什么区别@load_hooks=Hash.new 最佳答案 查看rubydocumentationforHashnew→new_hashclicktotogglesourcenew(obj)→new_has
当我的预订模型通过rake任务在状态机上转换时,我试图找出如何跳过对ActiveRecord对象的特定实例的验证。我想在reservation.close时跳过所有验证!叫做。希望调用reservation.close!(:validate=>false)之类的东西。仅供引用,我们正在使用https://github.com/pluginaweek/state_machine用于状态机。这是我的预订模型的示例。classReservation["requested","negotiating","approved"])}state_machine:initial=>'requested
我的主要目标是能够完全理解我正在使用的库/gem。我尝试在Github上从头到尾阅读源代码,但这真的很难。我认为更有趣、更温和的踏脚石就是在使用时阅读每个库/gem方法的源代码。例如,我想知道RubyonRails中的redirect_to方法是如何工作的:如何查找redirect_to方法的源代码?我知道在pry中我可以执行类似show-methodmethod的操作,但我如何才能对Rails框架中的方法执行此操作?您对我如何更好地理解Gem及其API有什么建议吗?仅仅阅读源代码似乎真的很难,尤其是对于框架。谢谢! 最佳答案 Ru
我的假设是moduleAmoduleBendend和moduleA::Bend是一样的。我能够从thisblog找到解决方案,thisSOthread和andthisSOthread.为什么以及什么时候应该更喜欢紧凑语法A::B而不是另一个,因为它显然有一个缺点?我有一种直觉,它可能与性能有关,因为在更多命名空间中查找常量需要更多计算。但是我无法通过对普通类进行基准测试来验证这一点。 最佳答案 这两种写作方法经常被混淆。首先要说的是,据我所知,没有可衡量的性能差异。(在下面的书面示例中不断查找)最明显的区别,可能也是最著名的,是你的
几个月前,我读了一篇关于rubygem的博客文章,它可以通过阅读代码本身来确定编程语言。对于我的生活,我不记得博客或gem的名称。谷歌搜索“ruby编程语言猜测”及其变体也无济于事。有人碰巧知道相关gem的名称吗? 最佳答案 是这个吗:http://github.com/chrislo/sourceclassifier/tree/master 关于ruby-寻找通过阅读代码确定编程语言的rubygem?,我们在StackOverflow上找到一个类似的问题:
对于作为String#tr参数的单引号字符串文字中反斜杠的转义状态,我觉得有些神秘。你能解释一下下面三个例子之间的对比吗?我特别不明白第二个。为了避免复杂化,我在这里使用了'd',在双引号中转义时不会改变含义("\d"="d")。'\\'.tr('\\','x')#=>"x"'\\'.tr('\\d','x')#=>"\\"'\\'.tr('\\\d','x')#=>"x" 最佳答案 在tr中转义tr的第一个参数非常类似于正则表达式中的括号字符分组。您可以在表达式的开头使用^来否定匹配(替换任何不匹配的内容)并使用例如a-f来匹配一
我目前正在使用以下方法获取页面的源代码:Net::HTTP.get(URI.parse(page.url))我还想获取HTTP状态,而无需发出第二个请求。有没有办法用另一种方法做到这一点?我一直在查看文档,但似乎找不到我要找的东西。 最佳答案 在我看来,除非您需要一些真正的低级访问或控制,否则最好使用Ruby的内置Open::URI模块:require'open-uri'io=open('http://www.example.org/')#=>#body=io.read[0,50]#=>"["200","OK"]io.base_ur
前言作为一名程序员,自己的本质工作就是做程序开发,那么程序开发的时候最直接的体现就是代码,检验一个程序员技术水平的一个核心环节就是开发时候的代码能力。众所周知,程序开发的水平提升是一个循序渐进的过程,每一位程序员都是从“菜鸟”变成“大神”的,所以程序员在程序开发过程中的代码能力也是根据平时开发中的业务实践来积累和提升的。提高代码能力核心要素程序员要想提高自身代码能力,尤其是新晋程序员的代码能力有很大的提升空间的时候,需要针对性的去提高自己的代码能力。提高代码能力其实有几个比较关键的点,只要把握住这些方面,就能很好的、快速的提高自己的一部分代码能力。1、多去阅读开源项目,如有机会可以亲自参与开源