小编Nat*_*int的帖子

Perl的未来?(Perl 6,就业能力)

我发现了一些相关的问题,比如Python与Perl(现已删除)和Perl值得吗?(现已删除),但我似乎无法找到任何直接解决此问题的内容.

Perl有合法的未来吗?我现在在Perl商店工作,而且我来自PHP,因此我在服务器级别做事时看到了一种可以说是"低级"语言的一些优点,但在我看来Perl中的很多任务可以在PHP中更快地执行,以及一些ARGUE(主观的,不是我的观点)认为Python以更明确的方式执行这些任务更容易维护.

在我的简历上有这份工作最终会让我减少就业,特别是如果语言不再增长?

几点说明:

  1. 我爱Perl,所以不要以为我在抨击语言.它使用起来很有趣,我们使用相对简单的语法,相对容易维护.
  2. 我意识到"Vaporware"是一个流行语,并不一定适用于这种情况,因为Perl没有市场营销部门,他们在任何时候都没有"承诺"Perl 6.
  3. 我意识到CPAN让社区保持运转,因此无论是否出现Perl 6,人们都会继续构建增加语言可能性的模块,但这并不意味着行业商店意识到这一点,并转而使用"更多支持"的语言继续推出修订版的语言,如Python和(特别是)PHP.*

编辑{澄清} Cade Roux和Telemachus都提出了关于您的未来是否可以通过简历定义的好点.

说实话,当我的一位前雇主说"我不雇用Perl任何人作为他们的最后一份工作时,就会提起这件事.那就是OLD技术." 这是一个PHP商店,所以拿出一点点盐.

现在,在没有诽谤我的前任雇主的情况下,她根本不是技术人员,所以她真的表达了一个非专业人士的意见,在这种情况下,我的问题更像是"这种特殊技术是否存在耻辱"那些不使用它的人?",特别是那些可能已经过类似雇主经历过的人.我不是要求你用魔术玻璃来展望未来,假设下一个"热门"的语言会是什么,而是如果这种特殊的语言(被指责为发育迟缓的增长,再次受到外行人士)的负面含义它.

我希望这更有意义.

perl cpan mod-perl

20
推荐指数
9
解决办法
4753
查看次数

Scrum中的时间跟踪

注意:在提出这个问题之前,我做了详尽的搜索,并在其他各种问题中找到了一些答案,例如:

但是,我觉得这个问题还没有直接解决(如果有的话,请告诉我).

您是否将Scrum中的时间跟踪在任务上花费的小时/天数,或者只是该任务是否完成?你能调整这些任务和估算吗?

背景:我们新的开发副总裁来自Scrum环境,因此我们都在了解这个过程,但他带来的一件事就是非常谨慎地引用每个任务应该要求的实际小时数的概念.完成,目的是随着时间的推移更准确地估算:因此,一旦项目启动,我们就无法添加新任务或调整这些任务的每小时估算.

但我的理解是敏捷实践,特别是Scrum,基于任务的概念,即存储单个可交付目标的存储桶,并且随着客户的需求在每个sprint之后发展,您可以添加/删除/调整它们.

我意识到这可能是有争议的,但我认为将Scrum视为一个过程,这些概念中只有一个是该系统的"正确"理念.

agile project-management scrum time-tracking

11
推荐指数
3
解决办法
1万
查看次数

如何成为"声音程序员"?(在电子游戏或其他行业)

问题:
为了有资格申请视频游戏和其他行业公司提供的各种"声音"或"音频"程序员职位,必须学习哪些语言/平台/技术?这个职位更像是一个低级程序员,你实现完全由开发人员设计的概念,还是需要更深入的音频制作/音乐知识?

澄清
显然,你需要知道公司使用什么系统(他们制作Flash游戏,使用XNA,编写控制台级机器代码,他们是否为Mac/PC编写音频工具等),但是期望有您应该学习哪些标准音频库,以便各种其他集成程序员可以将您的代码绑定到应用程序?你应该知道具体的事吗?

附加背景:
我有音乐作曲学位,因为我想为电子游戏写音乐.我试图在视频游戏公司从事音频制作和音响工程的各种工作,但他们告诉我,我没有足够的技术行业经验.因此,作为Web语言程序员(PHP/Perl/Python,ActionScript/Flex,HTML/JavaScript/CSS等),我获得了各种各样的工作.我有一些开发VST插件和在CSound中编写的经验.我目前正在开发上述语言的Web应用程序.现在他们说我的年龄我应该有视频游戏行业的经验,但是如果我没有一家视频游戏公司的工作,那么我很难找到一家视频游戏公司的工作. .寻找开发音频工具的公司(数字音频工作站,开发人员的工具等),他们说同样的事情.话虽这么说,这些地方几乎总是至少有3个空缺的"声音程序员"职位.

audio

7
推荐指数
1
解决办法
1万
查看次数

JavaScript性能评估

背景:

我一直在寻找一个参考,或者可能是一个工具,它可以帮助您在理论上评估JavaScript的效率(资源成本).这个搜索已经出现了很多优秀的调试软件,但我无法通过利用资源消耗较少的方法找到有助于我优化代码的东西.

题:

是否有任何资源(在线指南,列表,数据库,书籍,任何东西)或某些软件(基于网络,浏览器插件,IDE扩展)可以帮助您优化JavaScript?

例:

innerText在IE/textContentFirefox中,所需资源远少于innerHTML任何一种浏览器.

这是一种常识,因为它不那么强大,但我每天都会听到其他比较,并且无法真正验证它们是否实际上更适合优化代码或更高效,即使我可以无法测试它!

有任何想法吗?

javascript

5
推荐指数
2
解决办法
4292
查看次数

jQuery简化了Firefox中窗口滚动的动画(bug还是我的坏?)

示例
首先,这是我的代码和问题:http:
//www.nathanstpierre.com/MBX/showoff.html

问题
所以我看到的是,当您单击左侧的按钮时,窗口会滚动到相应的标题.在每个浏览器中,但Firefox(包括...... IE 喘息)这是非常顺利的.但是,如果减小窗口的高度,它将在所有计算机上变得平滑.我已经在多台计算机和IE 7-8,谷歌浏览器,Safari和Firefox 3.5上试过了这个.我已经消除了页面上的所有图形和颜色,所以这些都不是问题.我已经摆脱了跟随你的侧边栏,那不是它.

理论
我认为jQuery缓动插件会计算你需要去的距离,然后按照指定的持续时间单位划分它需要移动的像素数(比如300像素超过30毫秒,所以10px/ms) .每个其他浏览器似乎都能够实现平滑过渡,但是窗口滚动事件提供的粒度可能不足以让Firefox显得流畅吗?或者我可能使用了错误的缓动插件或错误的设置.

代码

$("#sidenav a").click(function () {
        $("#sidenav a").animate({'color':'#6d6d6d'},{"duration":400});
        $(this).animate({"color":"#fff"},{"duration":400});
        clicktarget=$(this).attr("href");
        $("html, body").animate({scrollTop: $(clicktarget).offset().top},{"duration":300,"easing":"easeout"});
        return false;
      });
Run Code Online (Sandbox Code Playgroud)

逻辑

为sidenav onClick上的每个标记添加一个事件监听器.这将获得文档中元素的offset().顶部,其ID与该链接的href属性相同,然后从当前scrollTop动画到该元素的offset().top.逻辑是合理的,并且在每个浏览器中都能顺利运行,除了Firefox ......据我所知.

PLEA

我究竟做错了什么?这是一个错误吗?

谢谢!

更新

好吧,我不能凭良心选择这里提出的任何答案,因为他们都没有真正解决这个问题,所以如果你跟随这个选择你最喜欢的和赏金将去最高的那个票.

问题似乎是Firefox a)呈现透明度和b)处理滚动事件的方式.可能具有足够的处理器能力这是一个无问题,但令我难过的是IE(所有浏览器)能够在劣质硬件上呈现这一点.我将向Mozilla提出这个问题,看看他们是否有任何关于它的话题.

如需额外的装饰,免费提供以下服务:

透明度
没有透明度

编辑:所以问题已得到解答,但现在我无法选择它.任何人都知道这是怎么回事?

最终更新 已经过了足够的时间,他们让我得到赏金,所以我选择了正确的答案.看起来像box-shadow和一些其他效果会导致firefox中的一些滚动问题,因为它们呈现的方式.FF 4.0 +处理得更好,但有些计算机仍有问题.对于实现CSS3的人来说,这是一个很好的选择:在所有浏览器上测试交互,看看性能成本是否合理.

firefox jquery scrolltop jquery-easing

5
推荐指数
1
解决办法
8373
查看次数

使用Perl将CSS样式属性转换为HTML属性

真正的快速背景:我们有一个将html转换为pdf的PDFMaker(HTMLDoc).HTMLDoc并不总是从客户端提供给我们的html中获取我们需要的样式.因此我试图转换诸如style ="width:80px; height:90px;"之类的东西.到高度= 80宽度= 90.

到目前为止,我的尝试揭示了我对后向引用的有限理解以及如何在Perl Regex中正确使用它们.我可以获取一个输入文件并将其转换为输出文件,但它每行只捕获一个"样式",并且只替换该css中的一个名称/值对.

我可能以错误的方式接近这个但我无法找到更快或更聪明的方法来在Perl中执行此操作.任何帮助将不胜感激!

注意:我正在尝试为这个特定脚本更改的唯一属性是"高度","宽度"和"边框",因为我们的客户端使用一个工具自动将样式应用于他们使用WYSIWYG样式编辑器拖动的元素.显然,使用正则表达式从很多地方剥离它们的效果相当不错,因为你只是让表格单元格按其内容调整大小,看起来没问题,但我认为更快的方法来处理这个问题只是为了用"width""height"和"border"属性替换这三个属性,这些属性的行为与它们的css对应物大致相同(除了CSS允许你实际自定义边框的宽度,颜色和样式,但它们都是使用是固定1px,所以我可以添加一个条件来替换"solid 1px"和"border = 1".我意识到这些并不完全等效,但对于这个应用程序来说它将是一个步骤).

这是我到目前为止所得到的:

#!/usr/bin/perl
if (!@ARGV[0] || !@ARGV[1])
{
  print "Usage: converter.pl [input file] [output file] \n";
  exit;
}
open FILE, "<", @ARGV[0] or die $!;
open OUTFILE, ">", @ARGV[1] or die $!;
my $line;
my $guts;
while ( <FILE> ) {
  $line = $_ ;
  $line =~ /style=\"(.+)\"/;
  $guts = $1;
  $guts =~ /([a-zA-Z]+)\:([a-zA-Z0-9]+)\;/;
  $name = $1;
  $value = $2;
  $guts = $name."=".$value;
  $line =~ s/style=\"(.+)\"/$guts/g;
  print OUTFILE …
Run Code Online (Sandbox Code Playgroud)

html css perl

4
推荐指数
1
解决办法
1586
查看次数

处理Node.js异步返回"require"(节点ORM)

我正在使用Node.js ORM模块:https://github.com/dresende/node-orm

我可以通过这样做来创建一个模型:

    var orm = require("orm");
    var db = orm.connect("creds", function (success, db) {
        if (!success) {
            console.log("Could not connect to database!");
            return;
        }

      var Person = db.define("person", {
        "name"   : { "type": "string" },
        "surname": { "type": "string", "default": "" },
        "age"    : { "type": "int" }
      });
    });
Run Code Online (Sandbox Code Playgroud)

问题是我想将Person(以及所有其他模型)放在外部包含中.

如果我做这样的事情:

   require("./models/person.js");
Run Code Online (Sandbox Code Playgroud)

我不能在其中使用db变量,因为它只存在于orm.connect()的回调函数的上下文中.我无法移动orm.connect到require(person.js)并为模型信息执行module.export,因为在父脚本中,将发生require,然后下一行不会准备好模型因为它没有等待回调.IE

//person.js
// db and orm get defined up here as before
Person = {}; // code from above, with the define and …
Run Code Online (Sandbox Code Playgroud)

orm require node.js

4
推荐指数
1
解决办法
1437
查看次数

Perl相当于PHP的strtotime()?

我意识到Perl有strftime,它允许你传递一个格式化对象.我想知道我能找到的功能更像是以下(来自PHP):

$string1 = "Jun 6, 2012";
$string2 = "June 06 2012";
if (strtotime($string1) == strtotime($string2)) {
  echo "BLAMMO!";
}
// will echo "BLAMMO!"
Run Code Online (Sandbox Code Playgroud)

其原因是业务需求,其中需要比较用户提供的日期以用于验证和扩展逻辑(此日期是否也在提供的另一个日期范围内等).现在,我意识到我可以编写一个专门用于执行此操作的完整库,并且我意识到日期解析存在任何潜在的陷阱,您永远不应该信任用户输入,但这里有一些基本的假设.

  1. 输入实际上是从符合其内部日期格式规范的任何数量的软件包中输出的.它们都遵循一些标准,但这些标准在程序之间没有统一规范化.话虽这么说,我应该总是比较同一个程序中的两个日期,但我可能永远不知道它们可能遵循的格式.
  2. 我意识到任何给定系统的标准可能会有所不同,但这里的假设是我们将所有日期都提供给同一个东西,因此我们可以信任一致的实现,希望CPAN或其他容易更新的模块.

perl date date-parsing

4
推荐指数
2
解决办法
4861
查看次数

HTML表单使用GET进行多选

注意 :

这有点难以谷歌,因为"GET"带来了很多"如何'获取'javascript形式的价值",等等.

问题:

TL; DR版本第一

您是否可以使用表单的GET方法进行多选,并仍然检索每个单独的值?

扩展说明

我正在构建的可搜索目录的要求包括将GET方法与表单一起使用,以便用户可以在URL中查看其结果,并将搜索结果的直接链接发送给其他客户等.

其中一个可搜索字段是多选框(具有该MULTIPLE属性的选择框).我的后端是用PHP编写的,我通常通过将名称设置为数组变量来处理多选,(name="multiselect[]")而post变量包含所选选项的数组($_POST["multiselect"] == array()).

这种情况下的问题是多选值传递给get字符串,如下所示:

action?multiselect=1&multiselect=2
Run Code Online (Sandbox Code Playgroud)

因此无论最后一个值是什么,都会替换get字符串中变量的第一个初始化值.(在上面的例子中,multiselect等于"2").

试图使名称成为一个数组只是以相同的方式替换数组值,就像这样

action?multiselect[]=1&multiselect[]=2
Run Code Online (Sandbox Code Playgroud)

会导致 $_GET["multiselect"] == 2

我原本建议使用复选框,因为它允许我们以不同的方式命名元素并检查每个元素的真/假,但是这个特定的多选择有大约30个值,并且他们希望它在滚动中可用区域.

html php forms

3
推荐指数
1
解决办法
6832
查看次数