SVG Javascript chart libraries

The last couple of weeks I worked on a feature that required to display a set of charts. Namely, a pie chart and a bar chart. One of them had to be interactive. We didn’t want a Flash chart.

I did some research and found these libraries:

This is what I think of them.

I liked it from the beginning. I thought it was simple and straightforward. I started using it. But the lack of documentation made me look for something better.

One would have to search through all the issues to find a solution. The examples weren’t extensive enough for me. And I didn’t want to scan through the source code to find out how to tweak it.

I would re-consider this library once they write the documentation. (Right now it says ‘work in progress’)

This library looks beautiful. But the license for it is a bit expensive. And I’m working on a commercial project. If there wasn’t a free solution, I would consider it.

I love this library. It is very well documented. There are a lot of examples. There is even a Code Playground section!

A few things that could be better:

  • The customization of the look and feel. It could be more customizable.
  • If it didn’t generate an iframe per chart.
  • It could be faster.

But this library was good enough for my feature.

Posted in developer tools, web programming | Tagged , , | Leave a comment

“Aptana Unified Builder” problem & solution

I ran into a problem today with RadRails 2 and its ‘Aptana Unified Builder.’ I was trying to launch my project and the IDE kept hanging on “Invoking ‘Aptana Unified Builder’ on ‘/project’”

After updating my RadRails2 with a nightly build and trying different versions of RadRails, Aptana and even RubyMine; this is my proposed solution.

  1. Go to Preferences > Run/Debug > Launching.
  2. Switch ‘Wait for ongoing build to complete before launching’ to ‘Never.’
  3. Switch off ‘Build (if required) before launching’
  4. Press OK

That solved my problem. Now back to work!

Posted in developer tools, programming | Tagged , , , | Leave a comment

how to work with git local branches

Compared to SVN and CVS, I think the best thing about Git is Github. It’s awesome how you can see the history of your source code.

So here are the steps to work with local git branches.

1. Commit and push the latest code from your local environment

1
2
[etagwerker@gesell prode]$ git commit -m "My latest stable release"
[etagwerker@gesell prode]$ git push

2. Pull the latest code from the server

1
2
[etagwerker@gesell prode]$ git pull --rebase
Current branch master is up to date.

3. Create a new local branch

1
2
[etagwerker@gesell prode]$ git checkout -b second_round
Switched to a new branch 'second_round'

4. Modify the code, add a feature, set of features or correct bugs, or whatever you want to do. Finally, commit all the code to your local branch

5. Switch to the master branch

1
2
[etagwerker@gesell prode]$ git checkout master
Switched to branch 'master'

6. Pull the latest code from the master branch

1
2
3
4
[etagwerker@gesell prode]$ git pull origin master
From github.com:/etagwerker/prode
* branch            master     -> FETCH_HEAD
Already up-to-date.

7. Merge the local branch with master

1
2
3
4
5
6
7
8
9
10
11
[etagwerker@gesell prode]$ git merge second_round
Updating 3043225..7ca2025

Fast forward

app/controllers/application_controller.rb          |    5 +++
app/models/forecast.rb                             |    4 ++
config/initializers/constants.rb                   |    4 ++-
.../20100625123027_add_round_number_to_games.rb    |   16 ++++++++
10 files changed, 94 insertions(+), 13 deletions(-)
create mode 100644 db/migrate/20100625123027_add_round_number_to_games.rb

8. Push the code to your remote branch

1
2
3
4
5
6
7
8
[etagwerker@gesell prode]$ git push
Counting objects: 44, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (25/25), done.
Writing objects: 100% (25/25), 3.43 KiB, done.
Total 25 (delta 18), reused 0 (delta 0)
To git@github.com:/etagwerker/prode.git
3043225..7ca2025  master -> master

9. And you are done!

Now you can work on local branches and merge with master whenever you want.

Posted in developer tools, linux/unix world, programming | Tagged , , , | 3 Comments