Skip to content

Software Development News: .NET, Java, PHP, Ruby, Agile, Databases, SOA, JavaScript, Open Source

Methods & Tools

Subscribe to Methods & Tools
if you are not afraid to read more than one page to be a smarter software developer, software tester or project manager!

Open Source

Video: Installing and Using Java ME SDK 8.0 Plugins in NetBeans IDE

NetBeans Highlights - Wed, 09/24/2014 - 00:51
This screencast demonstrates installation and usage of Oracle Java ME SDK 8.0 Plugins in NetBeans IDE on the Windows operating system.
Categories: Java, Open Source

hyLips

hyLips is set of features that provides tools as eclipse plugin around hybris eCommerce framework. Currently it includes impex editor (current version is 0.6.0).

Categories: Open Source

Google Summer of Code wrap-up: Twitter

Google Open Source Blog - Fri, 09/19/2014 - 18:00
Google Summer of Code 2014 has come to a close and news of the great work completed by our 1300+ student participants is starting to pour in. Our first student “wrap-up” post is from Twitter, a three time Summer of Code participant. We’ll be featuring these stories on Fridays this fall.

For the third time, Twitter had the opportunity to participate in Google Summer of Code (GSoC), and we wanted to share news on the resulting open source activities. Unlike many GSoC participating organizations that focus on a single ecosystem, Twitter has a variety of projects that span multiple programming languages and communities. They include:  
Use zero-copy read path in @ApacheParquetSunyu Duan worked with mentors Julien Le Dem (@J_) and Gera Shegalov (@gerashegalov) on improving performance in Parquet by using the new ByteBuffer based APIs in Hadoop. As a result of the work over the summer, performance has improved up to 40% based on initial testing and the work will make its way into the next Parquet release.
A pluggable algorithm to choose next EventLoop in NettyJakob Buchgraber worked with mentor Norman Maurer (@normanmaurer) to add pluggable algorithm support to Netty’s event loop (see pull request). At the start of the summer when a new EventLoop was needed to register a Channel, EventLoopGroup implementations used a round-robin like algorithm to choose the next EventLoop. This was challenging because different events may become more busy than others over time, hence the need for Jakob’s project to support pluggable algorithms to increase performance.  
Various compression codecs for NettyIdel Pivnitskiy (@pivnitskiy) worked with mentor Trustin Lee (@trustin) to add multiple compression codes (LZ4, FastLZ and BZip2) to the Netty project. Compression codecs will allow cutting traffic and creating applications, which are able to transfer large amounts of data even more effectively and quickly.
Android Support For PantsMateo Rodriguez (@mateornaut) added Android support to the Pants build system (see commits) so Pants can build Android applications (APKs) on top of the many other languages and tools it supports.
A pure ZooKeeper client for Finagle Pierre-Antoine Ganaye (@pa-ganaye) was mentored by Evan Meagher (@evanm) to add a pure Apache ZooKeeper client to Finagle to improve performance (see project).
An SMTP client for FinagleLera Dymbitska (@suncelesta) worked with mentors Selvin George (@selvin) and Travis Brown (@travisbrown) to add SMTP protocol support to Finagle to improve performance (see pull request). Finagle strives to provide fully asynchronous protocol support so baking in SMTP support was required versus using third party libraries such as javamail and commons-email which are synchronous by design.
Analyze Wikipedia using CassovarySzymon Matejczyk (@szymonmatejczyk) worked with mentors Pankaj Gupta (@pankaj) and Ajeet Grewal (@ajeet) to enable Cassovary to analyze Wikipedia data. The result of this work improved the performance of Cassovary when dealing with large graphs. See the commits associated with the project to see how it was done.
We really enjoyed the opportunity to take part in GSoC again this year. Thanks again to our seven students, mentors and Google for the program. We hope to participate again next summer.
Chris Aniszczyk, Organization Administrator, Twitter
Categories: Open Source

Projects of the Week, September 22, 2014

SourceForge.net: Front page news - Fri, 09/19/2014 - 17:30

Here are the featured projects for the week, which appear on the front page of SourceForge.net:

Alt-F

Alt-F provides a free alternative firmware for the DLINK DNS-320/320L/321/323/325. Alt-F has Samba and NFS; supports ext2/3/4, VFAT, NTFS and ISO9660 filesystems; RAID 0, 1, 5 (with external USB disk) and JBOD; supports 2/3/4TB disks; rsync, ftp, sftp, ftps, ssh, lpd, DNS and DHCP servers, DDNS, fan and leds control, clean power up and down, and more.

[ Download Alt-F ]

ScummVM

ScummVM is a cross-platform interpreter for many point-and-click adventure games like LucasArts SCUMM games, many of Sierra’s AGI and SCI games, many of Humongous Entertainment’s children’s SCUMM games, and more.

[ Download ScummVM ]

winPenPack: Portable Software Collection

winPenPack is a project that collects the most frequently used and most popular open source applications made portable so that they can be executed without installation from any USB Flash Drive or Hard Disk. The winPenPack suites offer a wide range of portable applications like office tools, Internet tools, multimedia tools, development tools, security applications, and other frequently used utilities. Everything you need, completely free, open source, and portable!

[ Download winPenPack: Portable Software Collection ]

MediaPortal

MediaPortal turns your PC into a very advanced MediaCenter / HTPC. It allows you to listen to your favorite music & radio, watch and store your videos and DVDs, view, schedule and record live TV as a digital video recorder, and much more.

[ Download MediaPortal ]

Vtiger CRM

Vtiger CRM enables sales, support, and marketing teams to organize and collaborate to measurably improve customer experiences and business outcomes. Vtiger CRM also includes email, inventory, project management, and other tools, providing a complete the business management suite.

[ Download Vtiger CRM ]

TEncoder Video Converter

TEncoder is a multithreaded video and audio converter that uses MEncoder, MPlayer and FFMpeg. It can download video/audio from video sites like youtube. I can also rip unprotected DVDs. It can convert almost every video and audio type to each other. Subtitles with same name as video can be hard-coded into video. Up to 8 simultaneous encoders can be run so encoding time decreases. You can select between multiple audio and subtitle tracks. Extracting video or audio content is possible. Edit subtitle and audio delays and part of video that will be encoded. Effects like deinterlacing or cropping can be applied to videos.

[ Download TEncoder Video Converter ]

PocketMine-MP

PocketMine-MP is the server software for Minecraft: Pocket Edition. It has support for Plugins to extend it and add new features, or change default ones. The entire server is done in PHP, and has been tested, profiled, and optimized to run smoothly. It is available on Windows, Linux, MacOS, Android, and iOS.

[ Download PocketMine-MP ]

Cyberfox

Cyberfox is a Mozilla-based Internet browser designed to take advantage of 64-bit architecture but a 32-bit version is also available. The application provides a higher performance when navigating your favorite pages. Compatible With Windows Vista x64, Windows 7 x64, Windows 8/8.x OS. Cyberfox uses windows 8 SDK.

[ Download Cyberfox ]

XBian

XBian is a small, fast, and lightweight media center distro for the Raspberry Pi, based on a minimal Raspbian image. Our slogan is “XBMC on Raspberry Pi, the bleeding edge” as our main focus is delivering the fastest XBMC solution for the Raspberry Pi.

[ Download XBian ]

Categories: Open Source

Create Your Own MVC Framework

DevX: Open Source Articles - Thu, 09/18/2014 - 19:09
Learn how to create your own MVC framework to better understand how the framework core works.
Categories: Open Source

Security for the people

Google Open Source Blog - Thu, 09/18/2014 - 15:15
A recent Pew study found that 86% of people surveyed had taken steps to protect their security online. This is great—more security is always good. However, if people are indeed working to protect themselves, why are we still seeing incidents, breaches, and confusion? In many cases these problems recur because the technology that allows people to secure their communications, content and online activity is too hard to use.

In other words, the tools for the job exist. But while many of these tools work technically, they don’t always work in ways that users expect. They introduce extra steps or are simply confusing and cumbersome. (“Is this a software bug, or am I doing something wrong?”) However elegant and intelligent the underlying technology (and much of it is truly miraculous), the results are in: if people can’t use it easily, many of them won’t.

We believe that people shouldn’t have to make a trade-off between security and ease of use. This is why we’re happy to support Simply Secure, a new organization dedicated to improving the usability and safety of open-source tools that help people secure their online lives.

Over the coming months, Simply Secure will be collaborating with open-source developers, designers, researchers, and others to take what’s there—groundbreaking work from efforts like Open Whisper Systems, The Guardian Project, Off-the-Record Messaging, and more—and work to make them easier to understand and use.

We’re excited for a future where people won’t have to choose between ease and security, and where tools that allow people to secure their communications, content, and online activity are as easy as choosing to use them.

By Meredith Whittaker, Open Source Research Lead and Ben Laurie, Senior Staff Security Engineer







Categories: Open Source

EclipseCon Europe 2014 - Program Released

Eclipse News - Thu, 09/18/2014 - 14:53
We have three great days of talks, tutorials, keynotes, theme days and events planned. Register by Oct. 1 for early rates.
Categories: Open Source

Announcing Tux Paint Upgrade!

SourceForge.net: Front page news - Wed, 09/17/2014 - 18:58

Tux Paint drawing software for children, boasts new tools, more languages, and improved accessibility!

Thanks to the efforts of nearly 170 contributors worldwide, Tux Paint 0.9.22 offers 14 new magic tools, 40 new template pictures, nearly 200 new stamps, support for SVG and KidPix templates, and an enhanced text tool. It also features accessibility improvements, including keyboard and joystick pointer controls, and an on-screen keyboard.

Tux Paint always benefits from localization support by volunteers from around the world and version 0.9.22 is no exception, incorporating translations to 32 new languages: six from Europe, over a dozen from the Indian continent, nine from Africa, as well as Armenian, Persian, Sudanese, and the Canadian Inuit language of Inuktitut. Updates were also made to the 90 languages Tux Paint already supports.

Tux Paint is available for Microsoft Windows, Red Hat Linux, Fedora Linux, and as source code. Updates for Apple Mac OS X, Debian Linux, and Ubuntu are in development.


[ Download Tux Paint ]

Categories: Open Source

gcloud-node - a Google Cloud Platform Client Library for Node.js

Google Open Source Blog - Wed, 09/17/2014 - 01:41
Today we are announcing a new category of client libraries that has been built specifically for Google Cloud Platform. The very first library, gcloud-node, is idiomatic and intuitive for Node.js developers. With today’s release, you can begin integrating Cloud Datastore and Cloud Storage into your Node.js applications, with more Cloud Platform APIs and programming languages planned.

 The easiest way to get started is by installing the gcloud package using npm:
$ npm install gcloud
With gcloud installed, your Node.js code is simpler to write, easier to read, and cleaner to integrate with your existing Node.js codebase. Take a look at the code required to retrieve entities from Datastore:
var gcloud = require('gcloud');

var dataset = new gcloud.datastore.Dataset({
projectId: 'my-project',
keyFilename: '/path/to/keyfile.json' // Details at
//https://github.com/googlecloudplatform/gcloud-node#README
});

dataset.get(dataset.key('Product', 123), function(err, entity) {
console.log(err, entity);
});
gcloud is open-sourced on Github; check out the code, file issues and contribute a PR - contributors are welcome. Got questions? Post them on StackOverflow with the [gcloud-node] tag. Learn more about the Client Library for Node.js at http://googlecloudplatform.github.io/gcloud-node/ and try gcloud-node today.

 -Posted by JJ Geewax, Software Engineer

Node.js is a trademark of Joyent, Inc. and npm is a trademark of npm, Inc.
Categories: Open Source

Azure Toolkit for Eclipse

The Azure Toolkit for Eclipse with Java (by Microsoft Open Technologies) provides templates and functionality that allow you to easily create, develop, configure, test, and deploy arbitrarily complex, multi-tier, highly available and scalable cloud services and applications to Microsoft Azure using the Eclipse development environment.

The key features of the Azure Toolkit for Eclipse include:

  • deploy any JVM to the cloud, including the OpenJDK (e.g. Azul Zulu) or the Oracle JDK
  • deploy any application server, including Tomcat, Jetty, JBoss or GlassFish
  • architect your n-tier application for multiple, independently scalable, highly available clusters ("roles") within an Azure cloud service
  • enable of session affinity ("sticky sessions") and SSL offloading transparently, without worrying about configuring your application server
  • program against Azure's services such as Storage, Service Bus (including AMQP), Caching, Azure SQL Database and more, using Azure SDK APIs for Java
  • take advantage of code-less user authentication (ACS filter) with Azure's Access Control Services
  • customize and extend the out-of-the-box functionality of the Toolkit easily with startup scripts, templates, components, etc.

(Note: The Toolkit currently works on a Windows OS only)

Categories: Open Source

Programming with Lambdas in NetBeans 8

NetBeans Highlights - Tue, 09/16/2014 - 11:53
NetBeans 8 provides tools to simplify the process of using lambdas in new Java code and for migrating existing Java code to make use of lambdas. Find out more in this new article.
Categories: Java, Open Source

Projects of the Week, September 15, 2014

SourceForge.net: Front page news - Mon, 09/15/2014 - 21:30

Here are the featured projects for the week, which appear on the front page of SourceForge.net:

usm

Usm is a unified slackware package manager that handles automatic dependency resolution. It unifies various package repositories including slackware, slacky, ponce, salix and alien. It also supports slackbuilds.org and will build from source.

[ Download usm ]

PostInstallerF

PostInstallerF will install all the software that Fedora doesn’t include by default, after running Fedora for the first time. It’s easy for a new user. PostInstallerF contains everything that you need for your daily computing.

[ Download PostInstallerF ]

OS X Portable Applications

OS X FOSS applications that are packaged as portables to carry around on a USB thumb drive, an iPod, a portable hard drive, a memory card, etc.

[ Download OS X Portable Applications ]

PDF Split and Merge

PDF Split and Merge is an easy-to-use tool with graphical and command line interfaces to spit, merge, mix, and rotate your PDF documents.

[ Download PDF Split and Merge ]

ScummVM

ScummVM is a cross-platform interpreter for many point-and-click adventure games like LucasArts SCUMM games, many of Sierra’s AGI and SCI games, many of Humongous Entertainment’s children’s SCUMM games and more.

[ Download ScummVM ]

TV-Browser – A free EPG

TV-Browser is a java-based TV guide, which can be easily extended with lots of plugins. It is designed to look like your paper TV guide.

[ Download TV-Browser - A free EPG ]

collectl

Collectl is a lightweight performance-monitoring tool capable of reporting interactively as well as logging to disk. It reports statistics on CPU, disk, infiniband, lustre, memory, network, nfs, process, quadrics, slabs and more in easy to read format.

[ Download collectl ]

MediaPortal

MediaPortal turns your PC into a very advanced MediaCenter/HTPC. It allows you to listen to your favorite music & radio, watch and store your videos and DVDs, view, schedule and record live TV as a digital video recorder, and much more

[ Download MediaPortal ]

winPenPack: Portable Software Collection

winPenPack is a project that collects the most frequently used and most popular open source applications made portable so that they can be executed without installation from any USB Flash Drive or Hard Disk. The winPenPack suites offer a wide range of portable applications like office tools, Internet tools, multimedia tools, development tools, security applications and other frequently used utilities. Everything you need, completely free, open source and portable!

[ Download winPenPack: Portable Software Collection ]

Categories: Open Source

LedgerSMB 1.4.0 Released

PostgreSQL News - Mon, 09/15/2014 - 01:00

15 September 2014, London. The LedgerSMB project - all-volunteer developers and contributors - today announced LedgerSMB 1.4.0.

Based on an open source code base first released in 1999, the LedgerSMB project was formed in 2006 and saw it's 1.0 release in the same year. It has now seen continuous development for over eight years and that shows no signs of slowing down.

"LedgerSMB 1.4 brings major improvements that many businesses need," said Chris Travers, who helped found the project. "Businesses which do manufacturing or retail, or need features like funds accounting will certainly get much more out of this new release."

Better Productivity

LedgerSMB 1.4 features a redesigned contact management framework that allows businesses to better keep track of customers, vendors, employers, sales leads, and more. Contacts can be stored and categorized, and leads can be converted into sales accounts.

Additionally, a new import module has been included that allows businesses to upload csv text files to import financial transactions and much more. No longer is data entry something that needs to be done entirely by hand or involves customizing the software.

Many smaller enhancements are here as well, For example, shipping labels can now be printed for invoices and orders, user management workflows have been improved,

Better Reporting

The reporting interfaces have been rewritten in LedgerSMB 1.4.0 in order to provide greater flexibility in both reporting and in sharing reports. Almost all reports now include a variety of formatting options including PDF and CSV formats. Reports can also be easily shared within an organization using stable hyperlinks to reports. Additionally the inclusion of a reporting engine means that it is now relatively simple to write third-party reports which offer all these features. Such reports can easily integrate with LedgerSMB or be accessed via a third party web page.

Additionally, the new reporting units system provides a great deal more flexibility in tracking money and resources as they travel through the system. Not only can one track by project or department, but funds accounting and other specialized reporting needs are possible to meet.

Better Integration

Integration of third-party line of business applications is also something which continues to improve. While all integration is possible, owing to the open nature of the code and db structure, it has become easier as more logic is moved to where it can be easily discovered by applications.

There are two major improvement areas in 1.4. First additional critical information, particularly regarding manufacturing and cost of goods sold tracking, has been moved into the database where it can be easily shared by other applications. This also allows for better testability and support. Secondly LedgerSMB now offers a framework for web services, which are currently available for contact management purposes, allowing integrators to more easily connect programs together.

Commercial Options

LedgerSMB isn't just an open source project. A number of commercial companies offer support, hosting, and customization services for this ERP. A list of some of the most prominent commercial companies involved can be found at http://ledgersmb.org/topic/commercial-support

Categories: Database, Open Source

NetBeans Community Day at JavaOne 2014 Conference

NetBeans Highlights - Thu, 09/11/2014 - 16:49
Join the NetBeans team at NetBeans Community Day at JavaOne 2014! We'll share highlights of how NetBeans has evolved; what's new and noteworthy today, and explore what's up ahead for NetBeans IDE.
Categories: Java, Open Source

CausalImpact: A new open-source package for estimating causal effects in time series

Google Open Source Blog - Thu, 09/11/2014 - 00:00
How can we measure the number of additional clicks or sales that an AdWords campaign generated? How can we estimate the impact of a new feature on app downloads? How do we compare the effectiveness of publicity across countries?

In principle, all of these questions can be answered through causal inference.

In practice, estimating a causal effect accurately is hard, especially when a randomised experiment is not available. One approach we've been developing at Google is based on Bayesian structural time-series models. We use these models to construct a synthetic control — what would have happened to our outcome metric in the absence of the intervention. This approach makes it possible to estimate the causal effect that can be attributed to the intervention, as well as its evolution over time.

We've been testing and applying structural time-series models for some time at Google. For example, we've used them to better understand the effectiveness of advertising campaigns and work out their return on investment. We've also applied the models to settings where a randomised experiment was available, to check how similar our effect estimates would have been without an experimental control.

Today, we're excited to announce the release of CausalImpact, an open-source R package that makes causal analyses simple and fast. With its release, all of our advertisers and users will be able to use the same powerful methods for estimating causal effects that we've been using ourselves.

Our main motivation behind creating the package has been to find a better way of measuring the impact of ad campaigns on outcomes. However, the CausalImpact package could be used for many other applications involving causal inference. Examples include problems found in economics, epidemiology, or the political and social sciences.

How the package works
The CausalImpact R package implements a Bayesian approach to estimating the causal effect of a designed intervention on a time series. Given a response time series (e.g., clicks) and a set of control time series (e.g., clicks in non-affected markets, clicks on other sites, or Google Trends data), the package constructs a Bayesian structural time-series model with a built-in spike-and-slab prior for automatic variable selection. This model is then used to predict the counterfactual, i.e., how the response metric would have evolved after the intervention if the intervention had not occurred.

As with all methods in causal inference, valid conclusions require us to check for any given situation whether key model assumptions are fulfilled. In the case of CausalImpact, we are looking for a set of control time series which are predictive of the outcome time series in the pre-intervention period. In addition, the control time series must not themselves have been affected by the intervention. For details, see Brodersen et al. (2014).

A simple example
The figure below shows an application of the R package. Based on the observed data before the intervention (black) and a control time series (not shown), the model has computed what would have happened after the intervention at time point 70 in the absence of the intervention (blue).

The difference between the actual observed data and the prediction during the post-intervention period is an estimate of the causal effect of the intervention. The first panel shows the observed and predicted response on the original scale. The second panel shows the difference between the two, i.e., the causal effect for each point in time. The third panel shows the individual causal effects added up in time.
The script used to create the above figure is shown in the left part of the window below. Using package defaults means our analysis boils down to just a single line of code: a call to the function CausalImpact() in line 10. The right-hand side of the window shows the resulting numeric output. For details on how to customize the model, see the documentation.
How to get started
The best place to start is the package documentation. The package is hosted on Github and can be installed using:

install.packages("devtools")
library(devtools)
devtools::install_github("google/CausalImpact")
library(CausalImpact)

By Kay H. Brodersen, Google

Categories: Open Source

Tim Boudreau: Frequently Undiscovered Features in NetBeans

NetBeans Highlights - Tue, 09/09/2014 - 22:43
NetBeans guru Tim Boudreau shares a few helpful but little-known tips to help speed up your work with NetBeans!
Categories: Java, Open Source

Glide 3.0: a media management library for Android

Google Open Source Blog - Tue, 09/09/2014 - 21:48
Today we are happy to announce the first stable release of Glide 3.0. Glide is an open source media management framework for Android that wraps media decoding, memory and disk caching, and resource pooling into a simple and easy to use interface.

Glide is specifically designed not only to be easy to use, but also to make scrolling lists of images as smooth and pleasant to use as possible. To reduce stuttery scrolling in lists caused by garbage collections due to Bitmap allocations, Glide uses reference counting behind the scenes to track and reuse Bitmap objects. To maximize the number of Bitmaps that are re-used, Glide includes a Bitmap pool capable of pooling arbitrary sizes of Bitmaps. 
The 3.0 version of Glide includes a number of improvements, including support for animated GIF and video still decoding, improved lifecycle integration to intelligently pause and restart requests, and thumbnailing support. 
Despite all of the new features, Glide’s interface is still simple and easy to use. To display an image, video still, or animated GIF in a view, you still need only one line:
Glide.with(context).load("http://goo.gl/h8qOq7").into(yourImageView);
Glide will intelligently determine the type of media you’re trying to load, decode it, and return a drawable object that can display the animation or still image in the view. If you want to load specifically a Bitmap, you can do that too:
Glide.with(context).load("http://goo.gl/h8qOq7").asBitmap().into(yourImageView);
You can also do more complex transformations. For example, to upload the bytes of a 250px by 250px profile photo for a user:
Glide.with(context)
.load("/user/profile/photo/path")
.asBitmap()
.toBytes()
.centerCrop()
.into(new SimpleTarget<byte[]>(250, 250) {
@Override
public void onResourceReady(byte[] data, GlideAnimation anim) {
// Post your bytes to a background thread and upload them here.
}
});
For a more complete list of changes, documentation, or to report issues please see the Github page. To see Glide being used in a real application, check out the recently released source of the 2014 Google I/O app and their excellent blog post on image loading. Finally, for questions, comments, or suggestions please join our discussion list.
By Sam Judd, Google Engineering
Categories: Open Source