楼主: Sky-Tiger

PrimeFaces 2.2 Released

[复制链接]
论坛徽章:
350
2006年度最佳版主
日期:2007-01-24 12:56:49NBA大富翁
日期:2008-04-21 22:57:29地主之星
日期:2008-11-17 19:37:352008年度最佳版主
日期:2009-03-26 09:33:53股神
日期:2009-04-01 10:05:56NBA季后赛大富翁
日期:2009-06-16 11:48:01NBA季后赛大富翁
日期:2009-06-16 11:48:01ITPUB年度最佳版主
日期:2011-04-08 18:37:09ITPUB年度最佳版主
日期:2011-12-28 15:24:18ITPUB年度最佳技术原创精华奖
日期:2012-03-13 17:12:05
11#
 楼主| 发表于 2012-7-1 00:16 | 只看该作者
An API is more than just a collection of components

Maybe you can't copyright the idea that a programming language needs a String class. Perhaps it's not that creative for an API designer to put a method named rangeCheck into a component named Integer. Maybe it’s not that earth shattering to put a flush method in the FileWriter class.  But the Java API is more than just a collection of components with simple methods that, as Judge Alsup commented, "a high school student could do."

I agree with Judge Alsup on the rangeCheck dilemma. Indeed, a competent high school student could competently write the body of the rangeCheck method. I also think a high school class could come up with a decent list of methods that should be part of the Math class. But the Java API isn't just a simple collection of components that exist as little islands in a sea of bytecode.

使用道具 举报

回复
论坛徽章:
350
2006年度最佳版主
日期:2007-01-24 12:56:49NBA大富翁
日期:2008-04-21 22:57:29地主之星
日期:2008-11-17 19:37:352008年度最佳版主
日期:2009-03-26 09:33:53股神
日期:2009-04-01 10:05:56NBA季后赛大富翁
日期:2009-06-16 11:48:01NBA季后赛大富翁
日期:2009-06-16 11:48:01ITPUB年度最佳版主
日期:2011-04-08 18:37:09ITPUB年度最佳版主
日期:2011-12-28 15:24:18ITPUB年度最佳技术原创精华奖
日期:2012-03-13 17:12:05
12#
 楼主| 发表于 2012-7-1 00:16 | 只看该作者
The Java API is beautiful.

Programmers and developers are often slagged as being a bunch of uncreative nerds, but the best programmers I know are also the most creative people I have ever met. The manner in which classes in the Java API are related through inheritance, associated through interfaces, and intertwined through aggregation is as beautiful to me as any Van Gogh or Rembrandt hanging on the walls of the Getty. There is clearly intellectual property hidden there in the Java API, and since it's an accepted concession of the US judicial system that intellectual property is copyrightable, then copyright laws should protect the Java API as well.

使用道具 举报

回复
论坛徽章:
350
2006年度最佳版主
日期:2007-01-24 12:56:49NBA大富翁
日期:2008-04-21 22:57:29地主之星
日期:2008-11-17 19:37:352008年度最佳版主
日期:2009-03-26 09:33:53股神
日期:2009-04-01 10:05:56NBA季后赛大富翁
日期:2009-06-16 11:48:01NBA季后赛大富翁
日期:2009-06-16 11:48:01ITPUB年度最佳版主
日期:2011-04-08 18:37:09ITPUB年度最佳版主
日期:2011-12-28 15:24:18ITPUB年度最佳技术原创精华奖
日期:2012-03-13 17:12:05
13#
 楼主| 发表于 2012-7-1 00:17 | 只看该作者
Java developers know the truth

Developers know it. Java developers also tend to want Java to be free, so they're not out there rioting against the court's decision. But Java developers know the truth. Developers know how a solid API justfeels right. Developers can see and feel the symmetry, insight, beauty and creativity that goes into a well-developed API. And every developer worth his salt knows how miserable and painful it is to work with an API that was developed hastily, haphazardly and without forethought regarding the real challenges a programmer will encounter when leveraging it to implementing a solution.

使用道具 举报

回复
论坛徽章:
350
2006年度最佳版主
日期:2007-01-24 12:56:49NBA大富翁
日期:2008-04-21 22:57:29地主之星
日期:2008-11-17 19:37:352008年度最佳版主
日期:2009-03-26 09:33:53股神
日期:2009-04-01 10:05:56NBA季后赛大富翁
日期:2009-06-16 11:48:01NBA季后赛大富翁
日期:2009-06-16 11:48:01ITPUB年度最佳版主
日期:2011-04-08 18:37:09ITPUB年度最佳版主
日期:2011-12-28 15:24:18ITPUB年度最佳技术原创精华奖
日期:2012-03-13 17:12:05
14#
 楼主| 发表于 2012-7-1 00:17 | 只看该作者
Good APIs vs bad APIs

For example, the Java API is far from perfect. Let's face it, they screwed up the Date class. Every project I've ever been on is on fire with yellow warning lights in the column of every line of code that invokes the deprecated methods of java.util.Date. There's still debate on TheServerSide about what should be done with the Date class, and the lack of forethought into the complexity of designing that API component, over ten years ago, still permeates its way through modern enterprise applications. And more to the point, if every component in the API was delivered with so many inherent shortcomings, the Java API would have been tossed in the recycle bin long before its first official release. The reason the Java API is so universally and enthusiastically loved is because of the intellect and insight that went into designing it, and there should be some legal way to protect that type of effort.

Every developer who takes their first programming class is completely mystified by the utter silliness of all of the abstract classes and seemingly useless interfaces that pepper the Java API. Implementing all of these codeless interfaces always seems academic and laborious to a newcomer. But there's always a point where a developer leaves the college classroom and starts doing some real development where the light goes on and they hit that Eureka moment where they finally appreciate the benefit and beauty of the way the various Java components participate in interface based polymorphism, or inheritance based abstraction.

使用道具 举报

回复
论坛徽章:
350
2006年度最佳版主
日期:2007-01-24 12:56:49NBA大富翁
日期:2008-04-21 22:57:29地主之星
日期:2008-11-17 19:37:352008年度最佳版主
日期:2009-03-26 09:33:53股神
日期:2009-04-01 10:05:56NBA季后赛大富翁
日期:2009-06-16 11:48:01NBA季后赛大富翁
日期:2009-06-16 11:48:01ITPUB年度最佳版主
日期:2011-04-08 18:37:09ITPUB年度最佳版主
日期:2011-12-28 15:24:18ITPUB年度最佳技术原创精华奖
日期:2012-03-13 17:12:05
15#
 楼主| 发表于 2012-7-1 00:17 | 只看该作者
Maybe only developers know what developers know?

I don't think any lawyer or Judge on a district court would have any appreciation or understanding of what was written in the previous paragraph, but every Java developer does. Beauty, symmetry, form and functionality are only created out of nothing in the Bible. When it happens in the real world, it's a product of intellect and ingenuity, and when that type of ingenuity manifests itself in an API, the minds responsible for it are entitled to some type of protection for their creation.

When looking at the API question, perhaps too much emphasis gets placed on the minutia of the code. Looking at individual classes and methods would be like looking at a door and a support wall and telling Frank Lloyd Wright than none of his architectural drawings were worthy of protection because they're simply a bunch of doors, walls and support beams. It's easy to see the inherent beauty of a architectural drawing of a magnificent building. It's not nearly as easy to see how the same degree of beauty and creativity manifests itself in a magnificent programming API. That's the problem we run into as the judiciary goes from making complicated legal decisions to making complicated technical decisions.

Perhaps software is too complex and ephemeral to protect these days. Perhaps the ability of companies like Oracle to protect their intellectual property is being steamrolled by the open source ethos that is so rampant in the IT community.

Today, Java is more free than it was yesterday, but that's only because Judge Alsup made the wrong call by declaring that the Java API could not be protected by copyright.

使用道具 举报

回复
论坛徽章:
350
2006年度最佳版主
日期:2007-01-24 12:56:49NBA大富翁
日期:2008-04-21 22:57:29地主之星
日期:2008-11-17 19:37:352008年度最佳版主
日期:2009-03-26 09:33:53股神
日期:2009-04-01 10:05:56NBA季后赛大富翁
日期:2009-06-16 11:48:01NBA季后赛大富翁
日期:2009-06-16 11:48:01ITPUB年度最佳版主
日期:2011-04-08 18:37:09ITPUB年度最佳版主
日期:2011-12-28 15:24:18ITPUB年度最佳技术原创精华奖
日期:2012-03-13 17:12:05
16#
 楼主| 发表于 2012-7-5 00:13 | 只看该作者
A couple of MIT electrical engineering and computer science alums have recently published details on how they spent a few dollars of cloud CPU time to re-render 16,544 circuit diagrams in under an hour using VMware’s vFabric RabbitMQ (see VMware’s summary also).

If you’ve done just about any website or online app development in the past decade, you’ve probably created graphics of various sizes to use on various website templates or possibly made graphics available in various formats.  Sometimes, changes to the website or app can create a need for every graphic file to be re-rendered, and this is the exact problem CircuitLab.com ran into.

When CircuitLab.com users save and share their circuit designs, the system creates various renderings, and each rendering process takes about 10+ seconds of core CPU time.  With over 16,000 circuit images on their site, the team estimated about 44 hours of time to re-render everything.  This speed was too slow. So, what did the team do to speed things up?  They leveraged the RabbitMQ architecture inside their application to connect with 64 high-speed CPU cores in the cloud.

By adding new queues, they could let the existing code-base run in their production environment while re-rendering production images in the cloud.  With a built-in message passing architecture in place, a new function was added with “just a bit of modification” to the existing codebase.   With these changes, 16,544 re-rendering messages were processed in under 1 hour (61 total core hours) and for a few dollars of CPU time.

使用道具 举报

回复
论坛徽章:
350
2006年度最佳版主
日期:2007-01-24 12:56:49NBA大富翁
日期:2008-04-21 22:57:29地主之星
日期:2008-11-17 19:37:352008年度最佳版主
日期:2009-03-26 09:33:53股神
日期:2009-04-01 10:05:56NBA季后赛大富翁
日期:2009-06-16 11:48:01NBA季后赛大富翁
日期:2009-06-16 11:48:01ITPUB年度最佳版主
日期:2011-04-08 18:37:09ITPUB年度最佳版主
日期:2011-12-28 15:24:18ITPUB年度最佳技术原创精华奖
日期:2012-03-13 17:12:05
17#
 楼主| 发表于 2012-7-6 02:03 | 只看该作者
One popular use for embedded BI is in the customer service and sales sphere. If a call center representative has a customer on the phone for any reason, they have an opportunity to cross sell that customer additional products and services. A new call center employee might go through a training session where they are taught which products/services to offer based on previous reports showing what customers are most likely to buy. That’s the old-fashioned way of passing on information. With embedded BI, each call center rep has access to live data showing what the customer currently on the phone is most likely to buy. This information is based on a comparison of their customer profile (demographic identifiers, past purchases, etc.) with other, similar customers.

Since the reporting is real-time, it automatically captures nuances that historical reporting can’t. For example, let’s say there was a major story in a Chicago newspaper that raised awareness about a certain issue for which your company has a solution among its family of products. This could greatly increase the chances that a customer in Chicago would make a decision to buy that solution within the following 2-3 days. Your company wouldn’t even have to be aware of why more Chicago-based customers are buying that particular product. Embedded BI would make the trend immediately apparent and allow you to jump on the opportunity to increase sales.

使用道具 举报

回复
论坛徽章:
350
2006年度最佳版主
日期:2007-01-24 12:56:49NBA大富翁
日期:2008-04-21 22:57:29地主之星
日期:2008-11-17 19:37:352008年度最佳版主
日期:2009-03-26 09:33:53股神
日期:2009-04-01 10:05:56NBA季后赛大富翁
日期:2009-06-16 11:48:01NBA季后赛大富翁
日期:2009-06-16 11:48:01ITPUB年度最佳版主
日期:2011-04-08 18:37:09ITPUB年度最佳版主
日期:2011-12-28 15:24:18ITPUB年度最佳技术原创精华奖
日期:2012-03-13 17:12:05
18#
 楼主| 发表于 2012-7-6 02:03 | 只看该作者
These days, businesses are relying more and more on lean manufacturing and just-in-time supply chain management principles. Operating this close to the wire can cut costs – but it also greatly increases the risk of having insufficient inventory. Sometimes, even getting an update on supply chain activity at the end of each day isn’t fast enough to support intelligent decision making. Embedded BI that features instant reporting from every node of the supply chain can help keep everything flowing smoothly. When this kind of BI becomes the norm, the greater transparency makes it easier for problems to be identified and corrected. For example, a retail manager could instantly see if there was a bottle-neck in logistics for their region for a specific product. They could also see instantly if another area location has an oversupply that could be diverted to cover the gap. Real time BI makes real time collaboration simpler.

使用道具 举报

回复
论坛徽章:
350
2006年度最佳版主
日期:2007-01-24 12:56:49NBA大富翁
日期:2008-04-21 22:57:29地主之星
日期:2008-11-17 19:37:352008年度最佳版主
日期:2009-03-26 09:33:53股神
日期:2009-04-01 10:05:56NBA季后赛大富翁
日期:2009-06-16 11:48:01NBA季后赛大富翁
日期:2009-06-16 11:48:01ITPUB年度最佳版主
日期:2011-04-08 18:37:09ITPUB年度最佳版主
日期:2011-12-28 15:24:18ITPUB年度最佳技术原创精华奖
日期:2012-03-13 17:12:05
19#
 楼主| 发表于 2012-7-6 02:03 | 只看该作者
A particularly helpful aspect of embedded BI for large enterprises is the ability to coordinate activities across departments. Healthcare is an example of an industry where this is particularly relevant. The average hospital has a stream of workflows that are deeply dependent on one another. For example, if the sterilization department has an equipment malfunction in an autoclave, this could delay dozens of surgeries. When decision makers have access to reports that clearly show the real-time status of the web of interdependent and interconnected information, they can choose which course of action will lead to the least disruption. On a more advanced level, they may also be able to compare current events to past patterns and identify upcoming problems before they spiral out of control.

使用道具 举报

回复
论坛徽章:
350
2006年度最佳版主
日期:2007-01-24 12:56:49NBA大富翁
日期:2008-04-21 22:57:29地主之星
日期:2008-11-17 19:37:352008年度最佳版主
日期:2009-03-26 09:33:53股神
日期:2009-04-01 10:05:56NBA季后赛大富翁
日期:2009-06-16 11:48:01NBA季后赛大富翁
日期:2009-06-16 11:48:01ITPUB年度最佳版主
日期:2011-04-08 18:37:09ITPUB年度最佳版主
日期:2011-12-28 15:24:18ITPUB年度最佳技术原创精华奖
日期:2012-03-13 17:12:05
20#
 楼主| 发表于 2012-7-6 02:03 | 只看该作者
HR is another sector where embedded BI is becoming popular. In this context, it’s the ability to pull, compile, and interpret embedded BI data from multiple applications that’s most attractive. Such reporting could make it possible to manage labor resources effectively in time-critical situations. For example, some large firms have a sick call-in line where employees can report that they won’t be coming to work due to illness. Imagine the information from that line being combined with information from operations that listed the relative importance of the project or task scheduled for each employee that day. Along with that data, HR would also see which employees currently on-site have the skills required to handle each necessary task. This would allow for rapid re-deployment of labor within or across departments.

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表