2. Background
- We are (mainly) working on client-side
applications: Cytoscape
- And we still live in old world…
- Java desktop application
- Need to learn new technologies for long-
term goals
- SOA / Cytoscape CI
3. Client-Side Technology
- Java is dying in this field...
- If you want to survive in this field, you need
to learn emerging technologies
- JavaScript, HTML5, CSS3, WebGL
- Also, client-side programmers now need
some design skills
- Flat Design, UX Design Principles
6. - Conference about:
- Data Visualization
- Design
- Technology
- Some politics
Visualized
7.
8. - Web is the data visualization platform
- Mature enough for real-world
problems
- Fat backend (cloud/cluster) and fat
client (browser)
- Design do matter
- Usability / UX
Summary
26. {
"id": 1009610,
"name": "Spider-Man",
"description": "Bitten by a radioactive spider, high
school student Peter Parker gained the speed, strength
and powers of a spider. Adopting the name Spider-Man,
Peter hoped to start a career using his new abilities.
Taught that with great power comes great responsibility,
Spidey has vowed to use his powers to help people.",
"modified": "2013-10-24T13:52:13-0400",
"thumbnail": {
"path": "http://i.annihil.us/u/prod/marvel/i/mg/
3/50/526548a343e4b",
"extension": "jpg"
},
"resourceURI": "http://gateway.marvel.com/v1/public/
characters/1009610",
"comics": {
"available": 2576,
"collectionURI": "http://gateway.marvel.com/v1/
public/characters/1009610/comics",
"items": [
35. Just as the microscope made it possible for the
naked human eye to see cells, microbes, and
viruses, thereby advancing biology and
medicine, and just as the telescope opened the
human mind to the immensity of the cosmos
and the conquest of space—the macroscope
promises to help make sense of yet another
dimension—the infinitely complex.
Plug-and-Play Macroscopes
By Katy Börner
Communications of the ACM, Vol. 54 No. 3, Pages 60-69
36. Data Visualization
!= Fancy Information Graphics
- UX or interactive design is important
when we design tools
42. Tools for Rapid Production
- Python for data gathering/cleansing
- R/Pandas for analysis
- Visualized by D3.js (JavaScript)
- Publish workflow with IPython Notebook
47. Comments
- Main players in this field are designers
who can code
- Beautiful, but too specific to the problem
- Reusability/Modularity
- D3.js is so popular in this area because
of this
48. What can we do?
- Modular and reusable libraries and
toolkits are still missing
- As software developers, we can work
on this problem
- Bio.JS (EBI)
49.
50. jQuery Conference
- Not only for jQuery
- JS and related technologies
- Server-side JavaScript
- Data Visualization
- More technical details, rather
than meta-discussion
51. Data Visualization Technologies
- C++ and Java are still
important languages for
high-end scientific data
visualization applications
- Computational Fluid
Dynamics
- Meteorology
52. - However, JavaScript is now powerful enough for many
data visualization needs today
- Bar/Pi charts
- Scatter plots
- Node-link diagrams (networks)
- Today, the main tool for data visualization is JS
53. Use Right Technology: Past
- Simple
- JavaScript
- Medium Complexity
- Flash/Java Web Start/Applet
- High-end
- Desktop Applications witten in C++
54. Use Right Technology: Today
- Simple/Medium Complexity
- JavaScript with Canvas/SVG/WebGL
- High-end
- C++ with OpenGL
55. What are JS folks doing now?
- In some sense, they are repeating what we have done in
Java world
- Unit test frameworks (Karma/Mocha/Jasmin)
- Build System (Grunt = Maven)
- Static code analysis
- Continuous integration
- Languages compiled to JS
- CoffeeScript/TypeScript/Haxe/etc.
60. JS for Large Scale Application
- JavaScript was not designed for large-
scale application development
- JS developers are making tools to
handle this problem
- Is JS ready for it?
- Yes