Posted
over 14 years
ago
by
edwardyoon
Pi Estimator
The value of PI can be calculated in a number of ways. Consider the following method of estimating PI
Inscribe a circle in a square
Randomly generate points in the square
Determine the number of points in the square that are
... [More]
also in the circle
Let r be the number of points in the circle divided by the number of points in the square
PI ~ 4 r
Serial pseudo code for this procedure as below:
iterations = 10000
circle_count = 0
do j = 1,iterations
generate 2 random numbers between 0 and 1
xcoordinate = random1
ycoordinate = random2
if (xcoordinate, ycoordinate) inside circle
then circle_count = circle_count + 1
end do
PI = 4.0*circle_count/iterations
The BSP implementation for Pi
A distributed strategy in HAMA with BSP programming model, is break the loop into portions that can be executed by the tasks.
Each task executes locally its portion of the loop a number of times.
One task acts as master and collects the results through the BSP communication interface.
public class PiEstimator {
private static String MASTER_TASK = "master.task.";
public static class MyEstimator extends BSP {
public static final Log LOG = LogFactory.getLog(MyEstimator.class);
private Configuration conf;
private String masterTask;
private static final int iterations = 10000;
@Override
public void bsp(BSPPeer bspPeer) throws IOException, KeeperException,
InterruptedException {
int in = 0, out = 0;
for (int i = 0; i < iterations; i++) {
double x = 2.0 * Math.random() - 1.0, y = 2.0 * Math.random() - 1.0;
if ((Math.sqrt(x * x + y * y) < 1.0)) {
in++;
} else {
out++;
}
}
byte[] tagName = Bytes.toBytes(getName().toString());
byte[] myData = Bytes.toBytes(4.0 * (double) in / (double) iterations);
BSPMessage estimate = new BSPMessage(tagName, myData);
bspPeer.send(bspPeer.getAddress(masterTask), estimate);
bspPeer.sync();
double pi = 0.0;
BSPMessage received;
while ((received = bspPeer.getCurrentMessage()) != null) {
LOG.info("Receives messages:" + Bytes.toDouble(received.getData()));
if(pi == 0.0) {
pi = Bytes.toDouble(received.getData());
} else {
pi = (pi + Bytes.toDouble(received.getData())) / 2;
}
}
if (pi != 0.0) {
LOG.info("\nEstimated value of PI is " + pi);
}
}
@Override
public Configuration getConf() {
return conf;
}
@Override
public void setConf(Configuration conf) {
this.conf = conf;
this.masterTask = conf.get(MASTER_TASK);
}
}
public static void main(String[] args) throws InterruptedException,
IOException {
// BSP job configuration
HamaConfiguration conf = new HamaConfiguration();
// Execute locally
// conf.set("bsp.master.address", "local");
BSPJob bsp = new BSPJob(conf, PiEstimator.class);
// Set the job name
bsp.setJobName("pi estimation example");
bsp.setBspClass(MyEstimator.class);
BSPJobClient jobClient = new BSPJobClient(conf);
ClusterStatus cluster = jobClient.getClusterStatus(true);
// Choose one as a master
for (String name : cluster.getActiveGroomNames()) {
conf.set(MASTER_TASK, name);
break;
}
BSPJobClient.runJob(bsp);
}
}
[Less]
|
Posted
over 14 years
ago
by
Sally
Google-hosted site provides a
“home-away-from-home” for code associated with Apache projects
Forest Hill, MD – 14 December 2010
– The Apache Software Foundation (ASF) today announced
apache-extras.org, the Google-hosted site for code
... [More]
associated with
Apache projects that are not part of the Foundation's more than
eighty Top-level Projects and dozens of initiatives in the Apache
Incubator and Labs.
"The Apache Software Foundation
has a long history of software innovation through collaboration; the
larger the pool of potential contributors the more innovation we
see," said Ross Gardler, ASF Vice President of Community
Development. "Apache Extras provides a home for Apache related
software which is not formally a part of the ASF itself. Having these
projects on a single hosting platform will help to further accelerate
innovation involving Apache software."
Among the ASF's strengths are its
well-established requirements relating to intellectual property
management, license use, and community management. Apache-extras.org
provides a home for projects that are unable to, or do not wish to,
conform to those rules yet still want to signal their relationship to
official Apache projects.
As projects on the new Google-hosted
service will not be managed by The Apache Software Foundation,
participants are allowed to use whatever license and project
management process they desire. Apache-extras.org will provide a
level of visibility for these projects that is unavailable on other
code-hosting forges.
Existing Google Code projects related
to Apache products can be easily migrated to the new
apache-extras.org site, whilst those involved with new Apache-related
projects can start quickly by filling out a simple form. The ASF
Community Development team will work directly with Apache Extras to
ensure innovation around Apache projects is accelerated.
Technical queries regarding the ASF's
relationship with apache-extras.org can be directed to the ASF
Community Development team at [email protected]. For
information on migrating or setting up new projects, visit
http://www.apache-extras.org
About The Apache Software Foundation
(ASF)
Established in 1999, the all-volunteer
Foundation oversees nearly one hundred fifty leading Open Source
projects, including Apache HTTP Server — the world's most popular
Web server software. Through the ASF's meritocratic process known as
"The Apache Way," more than 300 individual Members and
2,500 Committers successfully collaborate to develop freely available
enterprise-grade software, benefiting millions of users worldwide:
thousands of software solutions are distributed under the Apache
License; and the community actively participates in ASF mailing
lists, mentoring initiatives, and ApacheCon, the Foundation's
official user conference, trainings, and expo. The ASF is funded by
individual donations and corporate sponsors including AMD, Basis
Technology, Facebook, Google, IBM, HP, Matt Mullenweg, Microsoft,
SpringSource/VMware, and Yahoo!. For more information, visit
http://www.apache.org/.
# # #
Contact:
Sally KhudairiThe Apache Software [email protected]+1 617 921 8656 [Less]
|
Posted
over 14 years
ago
by
Sally
The Apache
Software Foundation has resigned its seat on the Java SE/EE Executive
Committee. Apache has served on the EC for the past 10 years, winning
the JCP "Member of the Year" award 4 times, and recently was ratified
for another term
... [More]
with support from 95% of the voting community.
Further, the project communities of the ASF, home to Apache Tomcat, Ant,
Xerces, Geronimo, Velocity and nearly a 100 mainstay java components
have implemented countless JSRs and serve on and contribute to many of
the JCPs technical expert groups. We'd like to provide some explanation to the community as to why we're taking this significant step.The
recent Java SE 7 vote was the last chance for the JCP EC to demonstrate
that the EC has any intent to defend the JCP as an open specification
process, and demonstrate that the letter and spirit of the law
matter. To sum up the issues at stake in the vote, we believe that
while continuing to fail to uphold their responsibilities under the
JSPA, Oracle provided the EC with a Java SE 7 specification request and
license that are self-contradictory, severely restrict distribution of
independent implementations of the spec, and most importantly, prohibit
the distribution of independent open source implementations of the
spec. Oracle has refused to answer any reasonable and responsible
questions from the EC regarding these problems.In the phrase
"fail to uphold their responsibilities under the JSPA", we are referring
to Oracle's refusal to provide the ASF's Harmony project with a TCK
license for Java SE that complies with Oracle's obligations under the
JSPA as well as public promises made to the Java community by officers
of Sun Microsystems (recently acquired by Oracle.) This breach of the
JSPA was begun by Sun Microsystems in August of 2006 and is a policy
that Oracle explicitly continues today. For more information on this
dispute, see our open letter to Sun Microsystems.This
vote was the only real power the Executive Committee has as the
governing body of the Java specification ecosystem, and as we indicated
previously we were looking for the EC to protect the rights of
implementers to the degree they are able, as well as preserve the
integrity of the JCP licensing structure by ensuring that JCP
specifications are able to be freely implemented and distributed. We
don't believe this is an unreasonable position - it should be noted that
the majority of the EC members, including Oracle, have publicly stated
that restrictions on distribution such as those found in the Java SE 7
license have no place in the JCP - and two distinguished individual
members of the EC, Doug Lea and Tim Peierls, both have resigned in
protest over the same issue.By approving Java SE 7, the
EC has failed on both counts : the members of the EC refused to stand up
for the rights of implementers, and by accepting Oracle's TCK license
terms for Java SE 7, they let the integrity of the JCP's licensing
structure be broken.The Apache Software Foundation concludes
that that JCP is not an open specification process - that Java
specifications are proprietary technology that must be licensed directly
from the spec lead under whatever terms the spec lead chooses; that the
commercial concerns of a single entity, Oracle, will continue to
seriously interfere with and bias the transparent governance of the
ecosystem; that it is impossible to distribute independent
implementations of JSRs under open source licenses such that users are
protected from IP litigation by expert group members or the spec lead;
and finally, the EC is unwilling or unable to assert the basic power of
their role in the JCP governance process.In short, the EC and the Java Community Process are neither.To
that end, our representative has informed the JCP's Program Management
Office of our resignation, effective immediately. As such, the ASF is
removing all official representatives from any and all JSRs. In
addition, we will refuse any renewal of our JCP membership and, of
course, our EC position.
# # # [Less]
|
Posted
over 14 years
ago
by
Sally
First Apache Unconference in Australia to be held on 11th
December 2010Forest Hill, MD - 6 December 2010 – The Apache Software
Foundation (ASF) and the University of Sydney today announced BarCampApache
Sydney, the ASF's first event in the
... [More]
Southern Hemisphere.Taking place at
the University of Sydney's Darlington Centre on 11th December, BarCampApache is
an attendee-driven event, focusing on "The Apache Way" of developing Open Source
software. The event is open to the public free of charge."We are pleased
to partner with the University of Sydney, whose commitment to sharing knowledge,
high value collaboration, and next-generation innovation closely aligns with The
Apache Software Foundation," said ASF President Jim Jagielski. "Events such as
BarCampApache helps promote awareness of the tremendous impact of Open Source
solutions, and an opportunity for members of the technology community to meet,
network, and learn in an open environment."The free to attend, one-day
event will be facilitated by ASF Members Nick Burch, Aristedes Maniatis, Gavin
McDonald, Noirin Plunkett, and Brett Porter. The BarCampApache program
will be proposed and decided by the participants themselves. Dozens of Open
Source professionals, academics, and enthusiasts will address an array of topics
focusing on Apache products, including open development techniques and best
practices, Web 2.0-style data mashups, as well as engaging with and incubating
new initiatives within the ASF. The ad-hoc nature of BarCamp sessions allows
discussions to flow freely and deepen with smaller groups throughout the
day.BarCampApache Sydney is hosted by the Information and Communications
Technology centre at the University of Sydney, with additional support provided
by sponsors Alfresco, Atlassian, IBM, and MaestroDev.For more
information and to register, visit http://barcamp.org/BarCampApacheSydneyAbout The Apache
Software Foundation (ASF)Established in 1999, the all-volunteer Foundation
oversees nearly one hundred fifty leading Open Source projects, including Apache
HTTP Server — the world's most popular Web server software. Through the ASF's
meritocratic process known as "The Apache Way," more than 300 individual Members
and 2,500 Committers successfully collaborate to develop freely available
enterprise-grade software, benefiting millions of users worldwide: thousands of
software solutions are distributed under the Apache License; and the community
actively participates in ASF mailing lists, mentoring initiatives, and
ApacheCon, the Foundation's official user conference, trainings, and expo. The
ASF is funded by individual donations and corporate sponsors including AMD,
Basis Technology, Facebook, Google, IBM, HP, Matt Mullenweg, Microsoft,
SpringSource/VMware, and Yahoo!. For more information, visit http://www.apache.org/.
Contact:
Sally Khudairi
The Apache Software Foundation [email protected]
+1 617 921
8656
#
# # [Less]
|
Posted
over 14 years
ago
by
joes
Over the past 3 months, the Infrastructure Team has developed and deployed a custom CMS for Apache projects to use to manage their websites. There is a document available which explains the rationale, role, and future plans for the CMS. We have
... [More]
opened up the ACLs for the www.apache.org site for all committers to now be able to edit content on the site using the cms (while still restricting live publication to the Apache membership and the Infrastructure Team).
The basic workflow for committers is easy to describe: first install the javascript bookmarklet on your browser toolbar. Next visit a webpage on the www.apache.org website. When you've located a page you'd like
to edit, click on the installed bookmarklet: you'll be taken to a working copy of the markdown source for the page in question. To edit the content click
on the [Edit] link. A markdown editor will show you a preview of your changes while you work. When you have finished, submit your changes and [Commit] them.
Your commit will trigger buildbot to build a staging version of your changes. You can follow the build while it is ongoing, and once it has completed you can click on the [Staged] link to see the results. Members and Infrastructure Team members can continue on and publish those changes once they are satisfied with them. Other committers may need to send a note to the site-dev@ mailing list to request publication of their changes.
The publication links in the CMS are essentially merge + commit operations in subversion which are tied into the live site via svnpubsub. That means
publishing in the CMS is virtually instantaneous.
The CMS is now open to all top-level and incubating projects. Interested projects should contact the infrastructure@ mailing list or simply file an INFRA ticket against the CMS component. Early adopters are encouraged to collaborate on
the wiki page for working out usage and adoption issues.
[Less]
|
Posted
over 14 years
ago
by
sabob
Click 2.3.0 Milestone 1 is available for download. This milestone contains important new features including Ajax support, Page Actions and light-weight stateful controls. In addition there are new documentation, examples and other minor
... [More]
enhancements.
Click Home
Roadmap and Changes - full list of new features, improvements and bug fixes
Upgrade Path - please see the upgrade path when upgrading from 2.2.0 or earlier.
Download Click 2.3.0-M1
Maven bundles
Live examples
New features and improvement
Ajax support.
Page Action support.
Stateful Controls.
Improve fields to only be processed if they have an incoming request
parameter. This improvement streamlines dynamic forms since fields
added at runtime during s POST request won't bind their values and
won't be validated for that request. In subsequent requests the Field
will have an incoming parameter and so will have it's value bound and
validated. Another advantage is that dynamically added Fields won't
have their default value overridden in the POST request they were added in.
This issue has been raised by Nirmal Solanki
[CLK-722].
Added automapping support for GAE with a caveat that page templates
must be placed under the folders page or pages.
This issue was raised by Ke Sun
[CLK-639].
Added MessagesMapService
interface to support pluggable messages map implementations
[CLK-655].
Improved MessagesMap
to be extendable and customizable
[CLK-728].
Added support for loading DateField
translations for month and day names from the JDK.
[CLK-650].
Added support for Menus that do not have roles defined.
If no roles are defined,
IsUserInRoles
passes a null argument to
hasAccess
to determine whether access is permitted to menus without roles
[CLK-724].
Added support for absolute page classnames when configuring pages
in click.xml. Absolute classnames aids with IDE hot-linking
and is less confusing to use.
[CLK-704].
Fixed escaping of control values and attributes to be XML friendly
in order to support Ajax requests. Previously all HTML characters was escaped,
now only the following characters are escaped: <, >, ", ', &
[CLK-674].
New documentation:
Added a section covering the new
Behavior support.
Added a chapter on Ajax,
covering AjaxBehaviors,
Ajax execution flow
and a full example.
Added a section covering the new
Page Action support.
New examples:
Added examples
showcasing the new Ajax support. See the Ajax Menu for the full list
of examples.
Added an example showing how to integrate a TabbedPanel, Form and Table.
Added an example showing a Stateful TabbedPanel.
Added an example FieldSeparator Control and example usage page
[CLK-544].
Removed:
Removed the ability to automatically bypass validation for
Forms through JavaScript. This ability was added in 2.2.0 but raised
concerns over security and was dropped for 2.3.0. If you used this
feature in existing applications, please see the
Upgrade path
for a safe alternative to bypass validation. We apologize for
the inconvenience.
Deprecated:
Deprecated stateful page support: Page.setStateful().
Stateful pages had the following issues:
Stateful pages was introduced to make it easier to store page state across
multiple HTTP requests. However developing a stateful page is very different
from developing a stateless one and this lead to Click applications that are
inconsistent and harder to maintain.
In addition stateful page support has never been implemented consistently
across the framework and some components did not work correctly.
Stateful pages are very coarse grained, making it difficult to control
which objects are stored in the session.
Stateful pages have also introduced unnecessary complexity in the framework
itself, which can now be phased out.
Unfortunately there is no direct upgrade path from a stateful page.
However the majority of use cases are catered for by the new stateful
support in the controls: Table, Form, TabbedPanel, Field and AbstractLink.
The Apache Click team
[Less]
|
Posted
over 14 years
ago
by
dblevins
Thanks to all who attended ApacheCon NA this last week in Atlanta, GA. We had a nice little session Friday of the conference. For those that weren't able to attend or for those who made it and wanted to share the slides, we're putting them up
... [More]
online for all to see.
OpenEJB In-Depth
It was a real pleasure being able to present. People attending presentations are often skeptical when things first get rolling. There's a tendency for people to feel like they're getting a sales pitch despite the fact that all that we do, time and software, is given away for free. When we got into the demos, what started as reserved and scrutinizing facial expressions turned into very excited faces with big bright smiles. It was quite the transformation.
That excitement was triggered by the demos, which really drives home the importance of having more video content for people. In that vein we plan to introduce a series of Lightening Demos. Quick 2 minute screencasts so people can see individual examples run, download to debug! [Less]
|
Posted
over 14 years
ago
by
Sally
The Apache Software Foundation is happy
to announce BarCampApache Sydney, Australia, the first ASF-backed event in
the Southern Hemisphere!
Taking place 11th December 2010 at the
University of Sydney's Darlington Centre, the BarCampApache
... [More]
"unconference" will be attendee-driven, facilitated by members of
the Apache community and will focus on the “Apache Way” of
developing software. The event is open to the public free of charge.
Those interested in using Apache
products, how projects are developed within the ASF, open development
techniques and best practices, Web 2.0-style data mashups, engaging
with The Apache Software Foundation, and the general BarCamp
experience are welcome to participate.
As the Apache community comprises
thousands of committed individuals from around the world, there are
always opportunities for attendees to help. And with all BarCamps,
BarCampApache Sydney seeks active participation at all levels,
including assisting with the physical set up to pre-event promotion
to proposing discussion topics and blogging/tweeting during the
event.
BarCampApache Sydney sponsors include
the University of Sydney, Alfresco, IBM, and MaestroDev. Sponsorship
opportunities are available. For more information, contact Brett
Porter at brett AT apache DOT org, or Nick Burch at nick AT apache
DOT org.
For more details about BarCampApache
Sydney, its related activities, and to sign up, please visit the
event wiki at http://barcamp.org/BarCampApacheSydney and follow the
#barcampsydney tag.
We look forward to seeing you there!
# # # [Less]
|
Posted
over 14 years
ago
by
Sally
Oracle statement regarding Java: "Now is the time for positive action (and) to move Java forward."
Oracle, the ball is in your court. Honor the agreement.
# # #
|
Posted
over 14 years
ago
by
Eric Charles
The Java Apache Mail Enterprise Sever (a.k.a. Apache James) Project is happy to announce the release of version 3.0-M2 (Milestone 2) of the Apache James server.
This is the second milestone of the upcoming 3.0 release, which includes bug-fixes and
... [More]
improvements. All users of 3.0-M1 should upgrade ASAP.
We are still actively looking for eager, capable developers to contribute to James. If you're interesting in contributing to the James project, please subscribe to the James mailing lists.
Information about James can be found at the James web site at
http://james.apache.org/.
You can grab the release here:
http://james.apache.org/download.cgi#Apache_James_Server
An overview over the changes can be found here:
http://s.apache.org/1Iw
! Be aware this is a milestone so changes in the API are still possible. !
Have fun,
Apache James Team [Less]
|