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


Date Created: Sun, 2016-10-23 07:09Date Updated: Tue, 2016-10-25 01:01Submitted by: Helo Spark

Generates a builder according to the GoF pattern for Java domain objects.


  • Generates a builder with custom name patterns
  • Configurable @NonNull, @Generated annotation
  • Capable of regenerating the builder
  • Compatible with most version of eclipse
  • Open source


To invoke the generation have a Java file active and press either the icon on the toolbar or ctrl+shift+B.
You can set the preferences under: preferences->Java->Spark Builder Generator

Example result:

  public class Clazz {
        private Integer firstField;
        private Long secondField;
        private Clazz(Builder builder) {
            this.firstField = builder.firstField;
            this.secondField = builder.secondField;
         * Creates builder to build {@link Clazz}.
         * @return created builder
        public static Builder builder() {
            return new Builder();
         * Builder to build {@link Clazz}.
        public static class Builder {
            private Integer firstField;
            private Long secondField;

            private Builder() {

            * Builder method for firstField parameter.
            * @return builder
            public Builder withFirstField(@Nonnull Integer firstField) {
                this.firstField = firstField;
                return this;

            * Builder method for secondField parameter.
            * @return builder
            public Builder withSecondField(@Nonnull Long secondField) {
                this.secondField = secondField;
                return this;

            * Builder method of the builder.
            * @return built class
            public Clazz build() {
                return new Clazz(this);

Additional information:

On the github page:

Categories: Open Source


Date Created: Sat, 2016-10-22 13:28Date Updated: Mon, 2016-10-24 09:04Submitted by: Taimur el-Halawani

JuliaDT is an Eclipse-based IDE for Julia. Current trends in Big Data and Data Science make Julia a natural choice when tackling the latest business challenges. The plugin aims to make Julia’s strengths more readily accessible to an expanding community of developers.

Categories: Open Source

Budou: Automatic Japanese line breaking tool

Google Open Source Blog - Fri, 10/21/2016 - 18:00
Today we are pleased to introduce Budou, an automatic line breaking tool for Japanese. What is a line breaking tool and why is it necessary? English uses spacing and hyphenation as cues to allow for beautiful, aka more legible, line breaks. Japanese, which has none of these, is notoriously more difficult. Breaks occur randomly, usually in the middle of a word.

This is a long standing issue in Japanese typography on the web, and results in degradation of readability. We can specify the place which line breaks can occur with CSS coding, but this is a non-trivial manual process which requires Japanese vocabulary and knowledge of grammar.

Budou automatically translates Japanese sentences into organized HTML code with meaningful chunks wrapped in non-breaking markup so as to semantically control line breaks. Budou uses Cloud Natural Language API to analyze the input sentence, and it concatenates proper words in order to produce meaningful chunks utilizing PoS (part-of-speech) tagging and syntactic information. Budou outputs HTML code by wrapping the chunks in a SPAN tag. By specifying their display property as inline-block in CSS, semantic units will no longer be split at the end of a line.

Budou is a simple Python script that runs each sentence through the Cloud Natural Language API. It can easily be extended as a custom filter for template engines, or as a task for runners such as Grunt and Gulp. The latest version also caches the response so no duplicate requests are sent. If you are using Budou for a static website, you can process your HTML code before deployment.

Budou is aimed to be used in relatively short sentences such as titles and headings. Screen readers may read a sentence by splitting the chunks wrapped by SPAN tag or split by WBR tag, so it is discouraged to use Budou for body paragraphs.

As of October 2016, the Cloud Natural Language API supports English, Spanish, and Japanese, and Budou currently only supports Japanese. Support for other Asian languages with line break issues, such as Chinese and Thai, will be added as the API adds support.

Any comments and suggestions are welcome. You can find us on GitHub.

By Shuhei Iitsuka, UX Engineer
Categories: Open Source

Eclipse Foundation Collaboration Yields Open Source Technology for Computational Science

Eclipse News - Fri, 10/21/2016 - 15:00
The gap between computational science & open source software is shrinking – thanks to collaboration.
Categories: Open Source

“Community Choice” Project of the Month Vote – December 2016 Front page news - Fri, 10/21/2016 - 05:44

The vote for December 2016 Community Choice SourceForge Project of the Month is now available, and will run until November 15, 2016 12:00 UTC.


Skim is a PDF reader and note-taker for OS X. It is designed to help you read and annotate scientific papers in PDF, but is also great for viewing any PDF file. Skim requires Mac OS X 10.6 or higher.
[ Download Skim ]

The FreeType Project

FreeType is written in C. It is designed to be small, efficient, and highly customizable while capable of producing high-quality output (glyph images) of most vector and bitmap font formats for digital typography. FreeType is a freely available and portable software library to render fonts.
[ Download The FreeType Project ]


ReactOS is an open source effort to develop a quality operating system that is compatible with applications and drivers written for the Microsoft Windows NT family of operating systems (NT4, 2000, XP, 2003).
[ Download ReactOS ]


A famous scientific plotting package, features include 2D and 3D plotting, a huge number of output formats, interactive input or script-driven options, and a large set of scripted examples.
[ Download gnuplot ]

NAPS2 (Not Another PDF Scanner 2)

Visit NAPS2’s home page at NAPS2 is a document scanning application with a focus on simplicity and ease of use. Scan your documents from WIA- and TWAIN-compatible scanners, organize the pages as you like, and save them as PDF, TIFF, JPEG, PNG, and other file formats. Requires .NET Framework 4.0 or higher. NAPS2 is currently available in over 30 different languages. Want to see NAPS2 in your preferred language? Help translate! See the wiki for more details. This is a fork of the NAPS project with many improvements.
[ Download NAPS2 (Not Another PDF Scanner 2) ]

Universal Media Server

Universal Media Server is a DLNA-compliant UPnP Media Server Universal Media Server supports all major operating systems, with versions for Windows, Linux and Mac OS X. The program streams or transcodes many different media formats with little or no configuration. UMS is powered by MEncoder, FFmpeg, tsMuxeR, AviSynth, MediaInfo and more, which combine to offer support for a wide range of media formats. Check out the list of media renderers here:
[ Download Universal Media Server ]


Tool Command Language (Tcl) is an interpreted language and very portable interpreter for that language. Tcl is embeddable and extensible, and has been widely used since its creation in 1988 by John Ousterhout. Bug reports to Follow code development at
[ Download Tcl ]

Linux Lite

By producing an easy to use Linux based Operating System, we hope that people will discover just how simple it can be to use Linux Lite. Linux Lite is free for everyone to use and share, and suitable for people who are new to Linux or for people who want a lightweight environment that is also fully functional. Linux Lite is based on the Ubuntu LTS series giving you 5 years of support per major release. The following software is included: LibreOffice Suite, VLC Media Player, Firefox Web Browser, Thunderbird Email, Gimp Image Editor, Lite Themes, Lite User Manager, Lite Software, Lite Tweaks, Lite Welcome, Lite Manual, Whiskermenu and more. Laptop/Ultrabook/Netbook users: If the screen locks during Live mode, type ‘linux’ into the user box and click on the Login button (no password required)
[ Download Linux Lite ]

Remix OS Player

Android has a wide range of games available on the Play Store all of which can be played on Remix OS, such as or including Clash Royale, Pokémon Go, and Vainglory on their PCs. For the more dedicated gamer, Remix OS also includes a key mapping tool that allows Android games with touch control schemes to be played more effectively with keyboard and mouse. Remix OS Player is first available for Windows PCs, with Mac support coming in future. Installation only requires the user to download an .exe file to run Remix OS directly from their desktop. Remix OS Player is the fastest and most optimized Android emulator on the market and is based on Google’s own Android Studio. Unlike Android Studio and other emulators, Remix OS Player will let Android developers optimize their apps for the Android PC/Chrome OS environment because of its mouse and multiple window support.
[ Download Remix OS Player

Categories: Open Source

Everit OSGi Eclipse Plugin

Date Created: Wed, 2016-10-19 20:20Date Updated: Sun, 2016-11-20 18:05Submitted by: Balázs Zsoldos

EOSGi Eclipse plugin displays OSGi environments specified with eosgi-maven-plugin in the Project Explorer view of Eclipse and lets the user managing the environment by using a context menu. The user can:

  • Start the OSGi environments specified in the pom file of the project
  • Debug the OSGi environments
  • Live upgrade of the OSGi environments
  • View the console of the OSGi environment within Eclipse
  • Stop the environments gracefully (even if the environment is stopped from console or debug view)
  • Call the sync-back goal of the maven plugin on an environment

If an OSGi environment is managed with the Eclipse plugin, dependencies are resolved from the workspace with the following algorithm: If a dependency is imported as a maven project into the workspace, the plugin executes mvn package on that dependency and installs the result JAR file to the OSGi container.

When an OSGi environment is started in debug mode by the plugin, the sources are resolved by the dependency manager of maven. If a dependency is available on the workspace as a project, the source is picked up from there.

Categories: Open Source

Container Wars: Docker vs. Rkt

DevX: Open Source Articles - Tue, 10/18/2016 - 23:23
It will be very interesting to see how the container landscape evolves. Are developers going to stick with the incumbent, yet quickly innovating, Docker or are they going to flock to the supposedly superior newcomer?
Categories: Open Source

Introducing Nomulus: an open source top-level domain name registry

Google Open Source Blog - Tue, 10/18/2016 - 16:04
Today, Google is proud to announce the release of Nomulus, a new open source cloud-based registry platform that powers Google’s top level domains (TLDs). We’re excited to make this piece of Internet infrastructure available to everyone.

TLDs are the top level of the Internet Domain Name System (DNS), and they collectively host every domain name on the Internet.  To manage a TLD, you need a domain name registry -- a behind-the-scenes system that stores registration details and DNS information for all domain names under that TLD. It handles WHOIS queries and requests to buy, check, transfer, and renew domain names. When you purchase a domain name on a TLD using a domain name registrar, such as Google Domains, the registrar is actually conducting business with that TLD’s registry on your behalf. That’s why you can transfer a domain from one registrar to another and have it remain active and 100% yours the entire time.

The project that became Nomulus began in 2011 when the Internet Corporation for Assigned Names and Numbers (ICANN) announced the biggest ever expansion of Internet namespace, aimed at improving choice and spurring innovation for Internet users. Google applied to operate a number of new generic TLDs, and built Nomulus to help run them.

We designed Nomulus to be a brand-new registry platform that takes advantage of the scalability and easy operation of Google Cloud Platform. Nomulus runs on Google App Engine and is backed by Google Cloud Datastore, a highly scalable NoSQL database. Nomulus can manage any number of TLDs in a single shared instance and supports the full range of TLD functionality required by ICANN, including the Extensible Provisioning Protocol (EPP), WHOIS, reporting, and trademark protection. It is written in Java and is released under the Apache 2.0 license.

We hope that by providing access to our implementation of core registry functions and up-and-coming services like Registration Data Access Protocol (RDAP), we can demonstrate advanced features of Google Cloud Platform and encourage interoperability and open standards in the domain name industry for registry operators like Donuts. With approximately 200 TLDs, Donuts has made early contributions to the Nomulus code base and has spun up an instance which they'll be sharing soon.

For more information, view Nomulus on GitHub.

By Ben McIlwain, Software Engineer
Categories: Open Source

Google Open Source Report Card

Google Open Source Blog - Tue, 10/18/2016 - 15:16
Open source software enables Google to build things quickly and efficiently without reinventing the wheel, allowing us to focus on solving new problems. We stand on the shoulders of giants and we know it. This is why we support open source and make it easy for Googlers to release the projects they’re working on internally as open source.

Today we’re sharing our first Open Source Report Card, highlighting our most popular projects, sharing a few statistics and detailing some of the projects we’ve released in 2016.

We’ve open sourced over 20 million lines of code to date and you can find a listing of some of our best known project releases on our website. Here are some of our most popular projects:
  • Android - a software stack for mobile devices that includes an operating system, middleware and key applications.
  • Chromium - a project encompassing Chromium, the software behind Google Chrome, and Chromium OS, the software behind Google Chrome OSdc devices.
  • Angular - a web application framework for JavaScript and Dart focused on developer productivity, speed and testability.
  • TensorFlow - a library for numerical computation using data flow graphics with support for scalable machine learning across platforms from data centers to embedded devices.
  • Go - a statically typed and compiled programming language that is expressive, concise, clean and efficient.
  • Kubernetes - a system for automating deployment, operations and scaling of containerized applications.
  • Polymer - a lightweight library built on top of Web Components APIs for building encapsulated re-usable elements in web applications.
  • Protobuf - an extensible, language-neutral and platform-neutral mechanism for serializing structured data.
  • Guava - a set of Java core libraries that includes new collection types (such as multimap and multiset), immutable collections, a graph library, functional types, an in-memory cache, and APIs/utilities for concurrency, I/O, hashing, primitives, reflection, string processing and much more.
  • Yeoman - a robust and opinionated set of scaffolding tools including libraries and a workflow that can help developers quickly build beautiful and compelling web applications.
While it’s difficult to measure the full scope of open source at Google, we can use the subset of projects that are on GitHub to gather some interesting data. Today our GitHub footprint includes over 84 organizations and 3,499 repositories, 773 of which were created this year.

Googlers use countless languages from Assembly to XSLT, but what are their favorites? GitHub flags the most heavily used language in a repository and we can use that to find out. A survey of GitHub repositories shows us these are some of the languages Googlers use most often:
  • JavaScript
  • Java
  • C/C++
  • Go
  • Python
  • TypeScript
  • Dart
  • PHP
  • Objective-C
  • C#
Many things can be gleaned using the open source GitHub dataset on BigQuery, like usage of tabs versus spaces and the most popular Go packages. What about how many times Googlers have committed to open source projects on GitHub? We can search for email addresses to get a baseline number of Googler commits. Here’s our query:

SELECT count(*) as n
FROM [bigquery-public-data:github_repos.commits]
WHERE > '2016-01-01 00:00'
AND REGEXP_EXTRACT(, r'.*@(.*)') = ''

With this, we learn that Googlers have made 142,527 commits to open source projects on GitHub since the start of the year. This dataset goes back to 2011 and we can tweak this query to find out that Googlers have made 719,012 commits since then. Again, this is just a baseline number as it doesn’t count commits made with other email addresses.

Looking back at the projects we’ve open-sourced in 2016 there’s a lot to be excited about. We have released open source software, hardware and datasets. Let’s take a look at some of this year’s releases.

Seesaw is a Linux Virtual Server (LVS) based load balancing platform developed in Go by our Site Reliability Engineers. Seesaw, like many projects, was built to scratch our own itch.

From our blog post announcing its release: “We needed the ability to handle traffic for unicast and anycast VIPs, perform load balancing with NAT and DSR (also known as DR), and perform adequate health checks against the backends. Above all we wanted a platform that allowed for ease of management, including automated deployment of configuration changes.”

Vendor Security Assessment Questionnaire (VSAQ)
We assess the security of hundreds of vendors every year and have developed a process to automate much of the initial information gathering with VSAQ. Many vendors found our questionnaires intuitive and flexible, so we decided to share them. The VSAQ Framework includes four extensible questionnaire templates covering web applications, privacy programs, infrastructure as well as physical and data center security. You can learn more about it in our announcement blog post.

OpenThread, released by Nest, is a complete implementation of the Thread protocol for connected devices in the home. This is especially important because of the fragmentation we’re seeing in this space. Development of OpenThread is supported by ARM, Microsoft, Qualcomm, Texas Instruments and other major vendors.

Can we use machine learning to create compelling art and music? That’s the question that animates Magenta, a project from the Google Brain team based on TensorFlow. The aim is to advance the state of the art in machine intelligence for music and art generation and build a collaborative community of artists, coders and machine learning researchers. Read the release announcement for more information.

Virtual reality (VR) isn’t nearly as immersive without spatial audio and much of VR development is taking place on proprietary platforms. Omnitone is an open library built by members of the Chrome Team that brings spatial audio to the browser. Omnitone builds on standard Web Audio APIs to deliver an immersive experience and can be used alongside projects like WebVR. Find out more in our blog post announcing the project’s release.

Science Journal
Today’s smartphones are packed with sensors that can tell us interesting things about the world around us. We launched Science Journal to help educators, students and citizen scientists tap into those sensors. You can learn more about the project in our announcement blog post.

Cartographer is a library for real-time simultaneous localization and mapping (SLAM) in 2D and 3D with Robot Operating System (ROS) support. Combining data from a variety of sensors, this library computes positioning and maps surroundings. This is a key element of self-driving cars, UAVs and robotics as well as efforts to map the insides of famous buildings. More information on Cartographer can be found in our blog post announcing its release.

This is just a small sampling of what we’ve released this year. Follow the Google Open Source Blog to stay apprised of Google’s open source software, hardware and data releases.

By Josh Simmons, Open Source Programs Office
Categories: Open Source

New Industry Collaboration to Develop Interoperable IoT Components for the Cloud

Eclipse News - Tue, 10/18/2016 - 14:15
Bosch Software Innovations, Eurotech and Red Hat collaborate to develop interoperable IoT components for the Cloud.
Categories: Open Source

PostgresDAC 3.2.0 with PostgreSQL 9.6 and Android support is out

PostgreSQL News - Tue, 10/18/2016 - 01:00
PostgresDAC is a direct access component suite for RAD Studio and PostgreSQL

New milestone PostgresDAC release is out! Now with PostgreSQL 9.6 and Android target platform support.

From now and on NUMERIC fields are mapped to TFmtBcdField, that allows manipulating this type of values with immense flexibility.

This release contains breakdown change, thus developers should check their sources where NUMERIC fields are used.

Full changelog:
  • [!] Android target platform support added
  • [!] v9.6.0 client libraries added
  • [!] v9.6.0 dump & restore libraries (pg_dump.dll, pg_restore.dll) added
  • [!] NUMERIC fields are mapped to TFmtBcdField from now
  • [+] TPSQLRestore.SchemaNames property introduced to specify multiple schemas
  • [+] doStrictNames option added to TPSQLDump.Options
  • [+] roStrictNames option added to TPSQLRestore.Options
  • [*] TPSQLRestore.TableNames property to match all types of relations, not only plain tables
  • [*] In TPSQLDump locally-made changes in privilege assignments for system objects
  • [*] TPSQLRestore.SchemaName property removed as deprecated, use SchemaNames instead
  • [-] Assigning MEMO fields to empty string may cause memory leak

You're welcome to download the PostgresDAC v3.2.0 right now at: or login to your private area on our site at


Please don't hesitate to ask any questions or report bugs with our Support Ticketing system available at

Categories: Database, Open Source

1 week to EclipseCon Europe 2016

Eclipse News - Mon, 10/17/2016 - 16:50
Don't miss this year's EclipseCon Europe, starting on Oct 25, in Ludwigsburg, Germany.
Categories: Open Source

Projects of the Week, October 17, 2016 Front page news - Mon, 10/17/2016 - 05:46

Here are the featured projects for the week, which appear on the front page of

Universal Media Server

Universal Media Server is a DLNA-compliant UPnP Media Server Universal Media Server that supports all major operating systems, with versions for Windows, Linux and Mac OS X. The program streams or transcodes many different media formats with little or no configuration. UMS is powered by MEncoder, FFmpeg, tsMuxeR, AviSynth, MediaInfo and more, which combine to offer support for a wide range of media formats Check out the list of media renderers here:
[ Download Universal Media Server ]


ReactOS is an open source effort to develop a quality operating system that is compatible with applications and drivers written for the Microsoft Windows NT family of operating systems (NT4, 2000, XP, 2003).
[ Download ReactOS ]


Skim is a PDF reader and note-taker for OS X. It is designed to help you read and annotate scientific papers in PDF, but is also great for viewing any PDF file. Skim requires Mac OS X 10.6 or higher.
[ Download Skim ]


Fldigi is a modem program for most of the digital modes used by radio amateurs today: CW, PSK, MFSK, RTTY, Hell, DominoEX, Olivia, and Throb are all supported. It can help calibrate a sound card to a time signal and do frequency measurement tests.
[ Download fldigi ]


GeoServer is an open source software server written in Java that allows users to share and edit geospatial data. Designed for interoperability, it publishes data from any major spatial data source using open standards: WMS, WFS, WCS, WPS and REST
[ Download GeoServer ]


Makululinux is Hybrid Based, provides a Sleek, Smooth and Stable user experience that is able to run on any computer from old to new, from netbooks to notebooks, desktops to server stations. Makulu provides software and codecs pre-installed on the OS, to provide an out of the box experience for the end user and his day to day tasks. Feel free to Join us in our Live Chat Room :
[ Download MakuluLinux ]

Pandora FMS: Flexible Monitoring System

Pandora FMS is an enterprise-ready monitoring solution that provides unparalleled flexibility for IT to address both immediate and unforeseen operational issues, including infrastructure and IT processes. It uniquely enables business and IT to adapt to changing needs through a flexible and rapid approach to IT and business deployment. Pandora FMS consolidates all the needs of modern monitoring (ITOM, APM, BAM) and provides status and performance metrics from different operating systems, virtual infrastructure (VMware, Hyper-V, XEN), Docker containers, applications, storage and hardware devices such as firewalls, proxies, databases, web servers or routers. It’s highly scalable (up to 2000 nodes with one single server), 100% web and with multi-tenant capabilities. It has a very flexible ACL system and several different graphical reports and user-defined control screens.
[ Download Pandora FMS: Flexible Monitoring System ]

CMU Sphinx

CMUSphinx is a speaker-independent large vocabulary continuous speech recognizer released under BSD style license. It is also a collection of open source tools and resources that allows researchers and developers to build speech recognition systems.
[ Download CMU Sphinx ]


We believe that free/open source software is enough, we don’t need pirated softwares on Windows. But most of these aren’t portables, or provided by due to .NET dependencies, 64-bit etc. So we provide what’s missing here. Software publisher who wishes their portablized software taken down, can tip us through or We promise to take it down without questions, but please be patient—we might not be able to respond promptly, but we eventually *will* …thanks for your patience, and sorry for being such a #naughty uploader

Categories: Open Source

What It Takes to Be an Effective Community Manager Front page news - Fri, 10/14/2016 - 05:41

A community manager’s job is no walk in the park.

Constantly a community manager must face expectations from both sides of a project: the organization and the community, and often needs to find a compromise between these two. It’s a tough job and a crucial one, as without it a large chasm can form between organization and community which can eventually lead to project failure.

From the get-go a community manager can be overwhelmed by the task at hand, but being effective at this job can start with just one simple idea: communication.

Communication is the Key

We’ve previously pointed out how crucial communication is in open source, and for community managers it’s even more so. Communication should be their specialty, as their job primarily involves communicating to both the organization and the community in levels and ways that these parties can understand. Community managers must communicate the organization’s interests to the community while also delivering community feedback and concerns to the organization. They must be able to understand fully the perspective of each party to find a balance that benefits both.

Communication is also the key to building trust, which is essential when it comes to handling communities. Without trust, communities will not listen to, let alone be directed by a manager.

Communicating to build trust starts with listening. Listening to the community means finding out what motivates them, what they expect, what they like and don’t like about the project. Listening should be done not to give communities a false sense of hope or security, but with the intent of truly addressing their concerns and making sure that the community continues to develop and grow.

After listening, the community manager may then speak. And just as in listening, speaking to the community should not be done insincerely. It must be done with respect, honesty and openness, and whatever is promised must be delivered. Only then can trust truly be established.

With trust established, the community manager’s job eases significantly. This does not mean however, that all challenges will be avoided.

Importance of ROI

On the organization’s side, the challenge that a community manager can face is proving his value. In many cases, organizations fail to see the importance of community support. Instead of viewing community managers as allies in protecting the reputation of the organization, the organization can sometimes view them as disloyal. This misunderstanding can be prevented if a clear method of measuring community support success is in place even before the community manager takes on his duties. These metrics should be based on the organization’s specific goals and expectations while also considering the nature of the community. They must also be achievable and measurable within a given period of time. With these metrics in place, it becomes easier for community managers to prove their value and the value of the community program.

Giving Recognition Where It Is Due

People may have different reasons for participating in communities, but each one of them looks for some kind of affirmation at one point or another. This is another aspect of community management that must not be overlooked. Community managers must find ways to encourage and appreciate community members, especially those who are top contributors. Doing so strengthens the community and consequently, leads to the betterment of the project as a whole.

Managing open source communities can be challenging, but it can also be one of the most satisfying jobs there is. Witnessing communities composed of different minds coming together to share, collaborate and grow is a beautiful thing, and being there as a guide is not only a serious responsibility, but a great privilege as well.

Categories: Open Source


Date Created: Fri, 2016-10-14 00:07Date Updated: Fri, 2016-10-14 09:47Submitted by: bries1u8

Excalibur is a tool supporting the Messir methodology, a Scientific Method for the Software Engineering Master, used in Software Engineering Lectures at bachelor and master levels.

Excalibur tool covers the phase of Requirements Analysis and its main features are requirements analysis specification (its own DSL), requirements report generation (latex/pdf) and requirements simulation (prolog). It relies on Eclipse technologies as XText for textual specification and Sirius for graphical views of the textual specifications.

Categories: Open Source

Dojo Recap – July, August, and September 2016

The Dojo Toolkit - Announcements - Fri, 10/14/2016 - 00:20

We’ve been incredibly busy making a tremendous amount of progress towards Dojo 1.12 and Dojo 2 over the past few months, which has slowed the rate at which we’ve been blogging. Here are some of the highlights:

Dojo 1.12

We’re planning a Dojo 1.12 release candidate towards the end of October, with plans to release sometime in November.

Dojo 2 accomplishments
  • dojo/has is now beta
  • dojo/shim is now beta
  • dojo/core has received several more alpha releases and is close to beta
  • dojo/has is now beta
  • dojo/compose has received several beta updates to reflect improvements needed for dojo/stores and dojo/widgets
  • dojo/actions has received several more alpha releases and is close to beta
  • dojo/widgets has received several more alpha releases, and css modules development is underway
  • dojo/dom is now beta
  • dojo/routing has received several more alpha releases and is close to beta
  • dojo/app has received several more alpha releases and substantial refinements
  • dojo/stores is now alpha
  • dojo/actions has received several more alpha releases and is close to beta
  • dojo/dataviz is a new prototype for virtual dom based data visualizations
  • dojo/i18n is close to alpha
  • dojo/actions has received several more alpha releases and is close to beta
  • dojo/actions has received several more alpha releases and is close to beta
  • dojo/cli is now alpha. Additional cli packages such as dojo/cli-build, dojo/cli-create-app, dojo/cli-css-modules, and cli-lint-tslint are under development
  • The Dojo example applications are being iterated constantly to keep pace with the changes to Dojo 2

We still have a fair amount of things to complete prior to Dojo 2 beta, but we’ve come a very long way over the past few months. Thanks to everyone for their efforts in creating a solid Dojo 2!

Categories: Open Source, RIA

e4 spies

Date Created: Thu, 2016-10-13 09:09Date Updated: Thu, 2016-10-13 11:25Submitted by: Olivier Prouvost

E4 spies are tooling dedicated to the developper to help him to understand what is running in the E4 engine.
This tooling must be installed by all developers that want to understand and manage the E4 runtime.

Categories: Open Source

Google Summer of Code 2016 wrap-up: HUES Platform

Google Open Source Blog - Wed, 10/12/2016 - 16:47
Every year Google Summer of Code pairs university students with mentors to hone their skills while working on open source projects, and every year we like to post wrap-ups from the open source projects about their experience and what students accomplished. Stay tuned for more!

The Holistic Urban Energy Simulation (HUES) platform is an open source platform for facilitating the design and control of renewables-based distributed energy systems. The platform is an initiative of the Urban Energy Systems Laboratory at Empa in Switzerland, in collaboration with our research partners at ETH-Zurich, EPFL, the University of Geneva and the Lucerne University of Applied Sciences. As we push towards the second version of the HUES platform, we had help from three bright and enthusiastic students as part of the Google Summer of Code (GSoC).

Project 1: Real-time wind flow in cities Air flow pattern around a building configuration (left); link to Rhinoceros/Grasshopper (middle & right)People in cities are suffering more and more from scorching heat, caused by global warming and bad urban planning. This traps heat inside cities and has led to soaring air conditioning demand, making cities even hotter - a vicious circle!  Clever bioclimatic urban design can mitigate urban heat by facilitating the use of natural ventilation and guiding air streams. However, the simulation of wind flow is a computationally and technically demanding task. There is a need to provide urban planners and architects with a tool able to predict wind flow patterns in real-time to facilitate development of energy efficient and passive designs.
Lukas Bystricky, a student at Florida State University, developed a Fast Fluid Dynamics (FFD) library in C# exactly for this purpose. Lukas’s implementation is based on the  paper by Jos Stam (1999). In contrast to the original implementation, where a cell centred finite difference is used to discretize the equations, Lukas applies a staggered grid finite difference, which is the standard finite difference in Computational Fluid Dynamics (CFD). This is done to prevent spurious pressure oscillations near the boundary which can occur in cell centered finite difference for the Navier-Stokes equations. This does not change much in the algorithm or solvers, but makes enforcing the boundary conditions significantly more complicated. So far, Lukas uses a simple Jacobi solver as linear solver, as was the case in Stam's original implementation, but he plans to replace it with more efficient solvers in the future. Also, he is validating his library with typical benchmarks. 
We are now coupling Lukas’s library into our HUES platform, more specifically into the 3D CAD software Rhinoceros and its visual programming platform Grasshopper. The final goal is to have an intuitive real-time visual design tool of wind flow for urban planners and architects. Also, we will use it to couple it to whole year dynamic building energy simulation programs, to better capture microclimatic effects of the urban context in simulating building energy consumption of designs.
Project 2: Modular energy hub modeling frameworkA connection between two bus objects in a CopyHub containerDistributed energy system components are modular in nature and interact across multiple scales. As such, there is a need for a modeling framework that can easily construct and configure systems of modular entities (energy demands, sources, converters, storages and network links) across scales. Frederik Banis, a student at the University of Applied Sciences Stuttgart, developed a modular approach to modeling distributed multi-energy systems (energy hubs) in Python, based on the Open Energy System Modelling Framework (Oemof) and Pyomo
In the developed framework, energy systems components are specified in a common format allowing for easy duplication and reconfiguring at larger scales. The platform enables easy manipulation of an energy hub grouping multiple components (demand, sources: electricity, natural gas; systems: photovoltaic panels, wind turbines, gas boils, combined heat and power engines, etc.), as well as copying it (from hub1 to hub2) to create a larger interlinked system (district) where multiple energy hubs are connected. This hierarchical nested structure can be repeated as needed, and detailed results about the energy supply of each technology or energy stream can be analyzed in the form of different plots for each system or sub-system.
Project 3: Open source energy simulation database
The HUES platform includes a growing array of datasets describing the technical and economic characteristics of distributed energy technologies.  Currently, this data is stored in separate modules using different data structures and file formats, making it difficult to explore holistically and query systematically. To address this, GSoC student Khushboo Mandlecha has developed an open source database to enable the linked exploration, querying and visualization of data in the platform. 
The first part of the project involved the development of server based scripts to automatically extract relevant data from the modules of the existing HUES platform, and write this data to a common database. A standard format for technology component data was developed, enabling users to upload technology data files to be stored in the new database.  The new database has been developed in MongoDB, enabling fast data retrieval and allowing everything to be retrieved in the form of JSON objects. The second part of the project involved the development of a web-based portal for querying, visualizing and downloading data. Once this portal is complete, it will be possible to visualize the contents of the database in different ways, enabling users to get a sense of the distribution of property values and facilitating the identification of outliers.  Ultimately, the database will help researchers and practitioners using the HUES platform to develop models and perform comprehensive analyses of distributed energy systems.
By L. Andrew Bollinger, Julien Marquant and Christoph Waibel; Urban Energy Systems Laboratory, Empa, Switzerland
Categories: Open Source


Date Created: Wed, 2016-10-12 03:45Date Updated: Thu, 2016-10-13 11:24Submitted by: Pascal Proksch

cmake-eclipse-helper is a very simple plugin that helps you setting up CMake projects for eclipse. You can even use it to switch between different toolchains within the same project. It fully relies on the built-in CMake generator and only adds a little spice to it:
* It adds a CMake context menu where you can switch between build types and toolchains.
* You can setup project templates, so they can be selected in the wizard.
* Touching the CMakeLists.txt in case you have added a "file" to force a "re-globbing".
* Projects usually do not need to meet prerequisites, the only thing they need to contain is a CMakeLists.txt to enable the CMake context menu (that is only displayed in the C/C++ Projects and Navigator view).

Just have a look at our wiki on for more information.

Categories: Open Source

Introducing Multifactor Authentication on SourceForge Front page news - Tue, 10/11/2016 - 21:59

As part of our ongoing effort to improve security on SourceForge, we have added multifactor authentication. All project developers are encouraged to enable it for their account.

What is multifactor authentication? In short, it means providing something in addition to your password to log in. One of the most common forms of this is using an authenticator app on your phone, which will produce a 6-digit code specific to your account and the current time. When you log in, after entering your password you will be prompted to provide the current code. Backup codes are provided in case your phone is lost. Download or print your backup codes, otherwise you could risk not having any way back into your account.


It’s easy to use, you can get started on your account preferences page. All you’ll need to do is install an authenticator app on your phone and use it to scan a QR code to set it up. Then whenever you log in, just use the app to get the current code. See the multifactor authentication documentation for more info, including how to use it for things like committing code and SFTP.

Future enhancements that we are looking at include alternate authentication with FIDO U2F hardware keys, and showing admins of a project whether other developers have multifactor authentication enabled.

Categories: Open Source