A month of Gephi Marketplace

 

guillaume_old160Computer Science & Engineering Graduate from the Compiègne University of Technology, Guillaume Ceccarelli has been Gephi’s SysAdmin since 2008 and Web Developer since 2012. When he’s not by day working in the financial world, he freelances and stays close to ongoing entrepreneurship ventures.

Four weeks ago, we launched the Gephi Marketplace.

Haven’t taken a look yet? Didn’t know it existed? Take a few minutes to check it out now! It’s right here, waiting for you.

Why the Gephi marketplace?

For a long time, we felt like we lacked a central point of access when it came to what everyone was doing to improve or build upon Gephi. On one hand, our forums allowed for discussions to happen but they didn’t really enable anyone to share their work easily or to find out about one another. On the other hand, the wiki as well as our main site, served more as official portals to spread the word or to explore knowledge around Gephi, but they didn’t seem like a good fit to showcase the work our community was doing.

A little while ago, we decided to fix that.

The spirit behind the marketplace is simple. When we started, our idea was:

  1. To provide Gephi users with easy means to find and learn more about what the community was building for and around Gephi
  2. To give creators and people working with Gephi a way to publish their work and make them known to the entire community, without the overhead of a complex and lengthy process

This meant creating the central point for Gephi Plugins and what we call Gephi Services, which eventually became the Gephi Marketplace.

Before the marketplace existed, plugins were submitted and downloaded through the old plugin center, which required authors and the Gephi staff to go through a tedious process, creating a lot of work and unnecessary frustration for everyone. In addition, the system didn’t allow authors to update their own plugin pages, or to submit a different plugin for different versions of the Gephi application, a feature which was long requested before we finally became in a position to deliver it to you.

A new world of plugins

Now, every plugin download, even from the Gephi Application itself go through the marketplace! It means that as soon as a plugin goes live on our new platform, it’s directly available to every Gephi user around the world. Even if you haven’t made a plugin yourself, chances are you’ve already used the marketplace without realizing it!

Speaking of around the world, here’s a geographic breakdown of Gephi plugin downloads within the past 30 days:

Screen-Shot-2013-02-17-at-6.27.59-PM

Isn’t it impressive? 1169 plugin downloads and every continent is represented! (ok, not every single one. Props to the first Gephi user who’ll download a plugin from Antartica!)

It makes us extremely proud to help and foster such a vibrant community of Gephi users around the world. Remember that this map is for the last 30 days alone!

Today, we have 38 plugins listed on the marketplace, and we’ve made sure you can post your creations as easily as possible. It takes no more than 5 minutes to first fill in the plugin upload form, and we usually get back to you within 24 hours, so you can make your work available to thousands in record time!

A world of services

As briefly mentioned before, we’re also listing Gephi Services on the marketplace.

Over the years, we’ve noticed that a community of professionals and enthusiasts started providing services to the community. We’ve seen people doing trainings on Gephi, others integrating Gephi into data analysis workflows, or even create studies using Gephi as their tool of choice. We thought it was about time these fine folks got easier to find!

Every service provided by the community, for free or with a fee, is welcome to be listed. We already have a few, and to be honest we would love to see more of them!

Listing the services you provide on the Gephi marketplace is easy, and like with listing plugins it’s completely free, regardless of what you choose to charge for your work. We’re not here to collect fees. We just want to help other people know about your work, and to help you easily be found and easily be reached.

Following the same simple form submission process you can use for plugins, you give us all the info on what you’ve got for the community, you click ‘upload’, we get back to you, and then you have yourself a listing!… Which you can then customize to your liking, and for which you can include every single bit of information you want, and even a great copy! So not only can you let everyone know about what it is that you do, but also how truly wonderful it is to work with you and your expertise. So?

And now back to you.

Any question? Feel free to comment below! We’ll be glad to help you get started. And if you’d like to be kept in the know of what’s newly getting posted on the Marketplace, the RSS feed is this way.

In the meantime, thank you for your continued trust and your use of Gephi as your Graph Exploration and Manipulation tool of choice! It is our humble pleasure to serve you all.

See you soon on the marketplace! 🙂

rgexf: An R library to work with GEXF graph files

 

george_picture-100x100George Vega is an economist working at the Chilean Pension Supervisor and cofounder of nodoschile.org. His research interests are Statistical Computing, HPC, Complex Systems and Public Policy.

The first R library to work with GEXF files, rgexf allows both writing (exporting) and reading (importing) .gexf files.

Features:

  • Writing and reading GEXF files
  • Writing dynamic graphs
  • Writing graphs with attributes (boolean, numeric, char)
  • Writing graphs with VIZ attributes (color, size, shape)
  • Building GEXF graphs from scratch (node/edge by node/edge)

rgexf is written in such a way that it is not necessary to have knowledge about XML.

Some examples:

# Installing from CRAN and loading
install.packages("rgexf", dependencies=TRUE)
library(rgexf)

# Reading lesmiserables graph (and summarizing)
lesmiserables <- read.gexf("http://gephi.org/datasets/LesMiserables.gexf")
summary(lesmiserables)

# Building a GEXF class object (includes data frames of nodes/edges +
# XML representation of it) from two two-column data.frames
mygraph <- write.gexf(nodes=people, edges=relations)

# Exporting to some place
print(mygraph, output="mygraph.gexf", replace=TRUE)

# Creating a GEXF object from scratch (and adding a node)
mynewgraph <- new.gexf.graph()
mynewgraph <- add.gexf.nodes(mynewgraph, id=1, label="George")

The source code plus more examples can be found on the project website.

For suggestions, bug reports or support (any) ask me through Twitter @gvegayon or just write me an email to george [dot] vega [at] nodoschile [dot] org

George Vega Yon

Graph visualization meet-up in Paris

Meetup on graph visualization: join us the 24/01 in Paris

Neo4j, the leading graph database software, will be organizing a meetup on the visualization of graphs. It’s free, if you want to come you just have to register here.

Graph databases are a new way to store and access data by representing it as nodes and connections. It is particularly useful for dealing with highly connected data as social networks, recommendation engines, music discovery or anti-fraud systems do. Graph databases give data scientists exciting opportunities.

You will learn how to combine Neo4j and Gephi using the Neo4j plugin of Gephi. You will also discover Linkurious, a novel web-based application to explore graph data easily, which has been co-founded by Sébastien Heymann.

The workshop will be held in English and French.

Register on meetup.com

Date: 24th of January, from 7:30 PM to 10:15 PM
Place: Zenika office, 10 rue de Milan, Paris

0.8.2 beta released

The latest version of Gephi has been released, download it for Windows, Mac OS and Linux platforms. This release captitalizes the bugfixes and stability improvements we have done over the last few months. It also greatly improves the Mac OS X compatibility with the Gatekeeper and Retina Display support. Gephi should now starts right away when double-clicking on the App with a Gatekeeper-enabled computer. However if you have an older version of Gephi on your computer, you should uninstall it and remove the user directory, see the installation instructions.

This release is the first one based on our new Continuous Integration environment. This new system makes it easy for developers to create a new release and for beta-testers to test an early version. Users eventually get a software which has been tested much more heavily and by a larger population compared to previous releases.

Plugins need to be checked for compatibility. They will reappear on the Plugin Center in the coming days, as they are verified. Thanks for your patience.

Consult the release notes and the new Javadoc for more information.

New and Noteworthy

* Data Laboratory’s time interval merge strategy now supports custom date format
* Improved parser for dynamic types. Literal strings are now supported.
* Add Retina Display support to the Mac OS X version

Bug fixes

* Filters ‘Duplicate’ does not work (Issue 176)
* Exporting SVG File throws DomException due to invalid stroke-widths (Issue 697)
* File name entered is lost when changing folder (Issue 463)
* Datalab: can’t export all columns (Issue 628)
* NullPointerException when importing from database (Issue 691)
* Filter on column created with regex causes crash (Issue 663)
* “Long cannot be cast to a String” when either exporting a graph or saving a gephi file (Issue 679)
* Mapping of Escape Keyboard Shortcut for “Save changes before closing?” dialog box (Issue 686)
* DataLab: filling edge weight column doesn’t work when dynamic (Issue 619)
* Spreadsheet import of dynamic data: support of “infinity” (Issue 631)
* Missing license headers (Issue 664)
* Spreadsheet import and self-loops (Issue 683)
* Timelime interval set in infinite loop (Issue 712)
* OutDegreeRange broken (Issue 651)
* Shortest path on filtered graphs fails (Issue 650)
* Weighted degree computation fails (all values 0) when a filter is applied (Issue 636)
* Dot parser fixes (Issue 621)
* Filtering leads to Null Pointer exception when saving (Issue 617)
* Partition percentages incorrectly composed across filters (Issue 637)
* Start/end attributes are always imported using DATETIME format (Issue 649)
* HeatMap / Shortest Path on undirected Graph wrongly paints / calculates (Issue 630)
* Typo fix connetion to connection (Issue 642)
* Timeline sparkline bug (Issue 615)
* Fixes calculation of clustering coefficient on graph (Issue 625)
* Unix timestamp support (Issue 612)
* GML loading cannot accept scientific notation for float-type edge property (Issue 300)
* GML export does not respect specs (Issue 604)
* GEXF export outputs incorrect files (Issue 570)
* Problems with export of PNG files (Issue 601)
* Edge pencil: unable to set edge directedness (Issue 549)
* Presets of “Preview settings” are incorrectly / not saved (Issue 575)
* Option “Time intervals as dates” in Timeline (Issue 613)
* 8.1 and 8.0 both freeze at start-up when on network (Issue 592)
* Data laboratory max columns unintuitive (Issue 590)
* Modularity with Edge Weight Causes Array Out-of-Bounds (Issue 577)

Do Gephi technologies matter for your research or business? You can support us by donating to the Gephi Consortium, or becoming a member to have an impact on our roadmap.

The next version will be a new serie (0.9) and will bring a strengthen core and new features. Stay tuned for that.

Feel free to reach to us if you are willing to organize events (meetups, workshops, hackathon, etc.), we will support them.

Talk on community management at Inria fOSSa 2012

The Gephi Consoritium will participate to the fourth edition of the fOSSa Conference taking place from December 4 to 6, 2012 in Lille (France).

The aim of the fOSSa (Free Open Source Academia Conference) is to reaffirm the underlying values of Open Source software: innovation & research in software development.

While the first edition aimed at providing valuable information on the Open Source model at large, the second edition focused specific key-aspects of FOSS such as tech innovation,upcoming issues & challenges in the open development context and how open activities, collaboration and knowledge sharing is beneficial to academia, education & industry. The third edition look at the future of Open Source (Eco system, Trends, new territories, etc).

The fourth edition will address in an open-minded style about:
Digital Geographic Strategies & the Native Generation,
– FLOSS History with the movie: “Revolution OS” followed by a debate,
Open Art, collaboration between art & science,
Licenses in the real life: no lawyers speeches, only facts & return experience,
– Workshops to learn how to develop code for debian, gnome, apache, robotics ROS …
And, of course the usual fOSSa topics (Education & Community management).

At this occasion, Sébastien Heymann will make a presentation about Motivations in Free Software communities, 6th Dec at 2pm in the Community Management track.

“What marks the difference between fOSSa and other events is the air that you breath there. An event organized by passionate people, with passionate attendees as well … and great speakers. Every year you can get some presentations of greater international events in advance (I remember the year of Arduino, to give you an example).” — Gabriele Ruffatti — SpagoWorld Blog 2012.

fOSSa days are open to everyone and registration is free!
more information @ http://fossa.inria.fr

EDIT: slides of the presentation
http://fr.slideshare.net/slideshow/embed_code/15531802

Continuous Integration at Gephi

We recently finished to deploy a continuous integration environment at Gephi and I’m excited to share some of the highlights.

The Gephi developer team has been hard at work to change the way we iterate and create releases at Gephi. Developer productivity has been an important theme for this year’s focus and we already made several improvements. At the end of last year we migrated our code to GitHub and improved the documentation. We then focused on plugin developers and made it really easy to create new plugins with the Plugin Bootcamp and the new gephi-plugins repository. Finally, we’re now introducing a completely automated build and release production system.

Our objective was to automate the way releases are created and tested. Previously, creating a release was a manual process and included error prone tasks like updating configuration files, unzipping translations in the right folder or creating installers. Open-source tools like Maven, Jenkins and Nexus can help to make this process seamless and always have the latest deliverables available.

Maven migration

We migrated our code base from Ant to Maven. Gephi is based on the Netbeans Platform and has more than 80 different modules with dependencies and third-party librairies. Maven makes it easy to manage a large number of dependencies and put all configuration parameters in one place. Maven has also a large number of plugins and is very well integrated in Netbeans and Eclipse IDE.

Highlights:

  • A full application package, all Javadocs and sources are now produced and uploaded online with a single command.
  • Dependencies are all defined in one place. It is also much easier to update to the latest version of the Netbeans Platform.
  • All library JARs are dependencies to Maven Central or 3rd party repositories. No library JARs are directly included in the sources anymore.
  • The Gephi project is now a standard multi-module Maven project. It can therefore be opened and built in Eclipse or IntelliJ, as well as Netbeans out of the box
  • It facilitates module reuse in other projects like the Gephi Toolkit. Any other project can easily depend on any (or all) Gephi modules.

Jenkins server

Jenkins is the continuous integration server we chose to automate building and testing Gephi. It is configured to build and test Gephi every night based on the latest version of the code on GitHub. If the build fails, developers are informed something needs to be fixed.

Highlights:

  • Fully automated build in a stable environment. If something is wrong, it must be the code.
  • In addition of Gephi itself, we’re also building the Gephi Toolkit every night. Eventually, we’ll be able to build and test plugins as well.
  • Artifacts produced are uploaded to Nexus.

Nexus

Nexus is a repository for artifacts, which could either be librairies Gephi is using or release binaires like the latest release. At any time, beta testers can download the nightly build and test new features. We just announced a new beta testing program, which couldn’t be possible without the availability of the nightly build.

Highlights:

  • All 3rd party librairies have been uploaded to Nexus. Maven is using Nexus as a source for librairies.
  • The nightly build packages are available for download.
  • It also hosts the latest set of NBMs and Javadocs.


We learnt a lot during this project and will continue to strengthen the developer and beta-tester environment to scale up Gephi development. So far, we’ve done the Maven migration on a separate GitHub repository but we’ll soon convert the main repository and soon after release a 0.8.2 Gephi version. We’ve created a new Continuous Integration section on the Dev Portal and documented this project.

Plugin development remains the same for now and all plugins should be compatible with the new code base. In the next few months we would like to bring continuous integration to plugin developers as well. Testing at scale a large number of plugins at each new Gephi version remains a challenge and we would like to improve that. Also, we’ve seen issues where different plugins use different version of the same library and eventually cause crashes. Stay tuned for some news on that.

In the next few weeks we’ll update the documentation at various places how to build Gephi and work with the code. Developers interested to try this new system out should follow the instructions on GitHub or reach to us on the developer mailing-list.

Last but not least, we would like to say kudos to Maven, Jenkins and Nexus contributors for their huge and excellent work!

Beta Tester program starts

Hi all, today we are announcing a new program and it’s all about testing the latest versions of Gephi. Anyone can join the program and test the development version, send feedback and discuss features. We want to build a team of beta-testers who the developers can work with to detect issues before the software reaches the standard users.

So far, testing has been done by a small group of developers and users but we would like to extend it to a larger audience. There are many different versions of Windows, Mac OS X and Linux Gephi supports. Testers will help to detect compatibility issues specific on a single platform and overall participate in testing new features.

To make this effort successful, we’re making it super easy to test the latest development version without requiring to know about programming or how Gephi is built. We’re introducing a nightly build package which gets updated automatically every night with the latest version of the code. Once downloaded and installed, this version of Gephi will ask you to update itself every time a new version is available so you don’t have to download and install Gephi over and over again. If you’re already familiar with Gephi’s auto update capability, this is using the same system.

How to get started?

    1. Join the gephi-tests@lists.gephi.org mailing list

Developers and testers will discuss on this list.

    1. Fill this questionnaire online.

Cuple of questions on your hardware and software configurations.

Questions? Feel free to stop by on this forum thread.