Java sucks ass in comparison to Ruby and Rails. - PACEMAKER

burnwholeInternet and Web Development

Feb 5, 2013 (4 years and 4 months ago)

212 views

Adventures

of
Java developer

in
Ruby world

by
Orest

Ivasiv

@
halyph

2

WARNING!

A Presentation is NOT
a Documentation!

Agenda


Background


Project issues and language choice


Ruby History



Trololo



Ruby Ecosystem review


3

Background



My experience: 5+ years in industry


Java is my primary language


1
st

ruby experience


05/2007


08/2012 real Ruby project


Language agnostic, only pragmatic choices


Co
-
organizer of

4

Project requirements


Scripting language


Easy to learn


Simple distribution model


Language Community


Local community size


Ecosystem

5

Language Matrix

Java

Python

Ruby

Groovy

Perl

Well adopted

+

+

+

-

-

Cross
-
platform

+

+

+/
-

+

+

Easy Maintainable

+

+

+

+

-

Huge community

+

+/
-

+

+/
-

-

Nice to start app from
scratch

-

+

+

+

-

Lots of third
-
party libs

+

+

+

+/
-

+

Speed

of execution

+

+

+/
-

-

+

Application distribution
model and dependency
issues

+

+/
-

+/
-

+

+/
-

Runtime environment
setup

+

+/
-

+/
-

+/
-

+/
-

My

Language sympathy

Native

-

exp

+

exp

+/
-


Hate it

6

History

7

Lisp


1958

Smalltalk


1983

Perl


1989

Ruby


1993

Java


1995

C#


2000

Ruby History

8


02/24/1993
-

Pre
-
history
age. Without code


12/21/
1995

-

Ruby is in
public. V.0.95


12/25/1996
-

Ruby 1.0
released


10/27/1999
-

the
first Ruby
book


x
x/07/2004
-

DHH first
released
Ruby on
Rails


xx/12/
2005

-

version
1 of
Ruby on Rails

was
released


xx/10/
2007

-


bundle/ship
RoR

w/ OS
X
Leopard




Ruby History

9

10

Ruby trolls on early days

11

here is a list of the top 10
reasons that anything (and probably
everything) related to
Java sucks
ass in comparison to Ruby and
Rails
.


... Fuck compilers ...
Java
Programmers are Morons
... they all
suck ass ... Jimmy Gosling?
Hahahahahahahaha
...


September 20, 2007

Ruby trolls on early days

12

13

Maybe "Fuck You" means something different in Copenhagen
?



Ruby trolls on early days

Ruby trolls on early days


Ruby on Rails vs Java


Ruby on Rails vs
PHP


Ruby on Rails vs
.NET





14

May 13, 2007

Ruby implementations


Ruby 1.8, MRI


Ruby
1.9, YARV


JRuby


Rubinius


IronRuby


MacRuby


15

Which to pick ?

Python Community

16

Java Culture

Enterprise

Big company

Big departments

17

Ruby Culture

=

Start
-
Up Culture

Just the get App running

18

How to
find non
-
crappy
Gem?





19

How to
find non
-
crappy
Gem?

20

How to
find non
-
crappy
Gem?






Evaluate gem


o
Documentation

o
Source code

o
Open/Closed issues

o
Gems Dependency

o
Curation

of maintainer

o
Tests

21

:Ruby => *nix


22

Implement Ruby Gem

23

Ruby Style Guide


Follow the better practices

Implement Ruby Gem


1.
How
to
write
own gem?

2.
When
is it necessary?

3.
How to start?
FTW?

o
Find the mentor

o
Pick proper test framework

o
Pick the bootstrap tools


24

Tools & Gems


Git


Gem


Bundler


Rake


Rspec


irb


Ri


Rdoc
,
TomDoc
, YARD


Thor


25

Maven

Tools & Gems

26


IDE vs. Text Editor

27

Debug Ruby Code



Ruby
-
debug


Pry


RubyMine

debugger

28

Ruby Testing



Test::Unit


minitest


Rspec


Cucumber




Tons of other gems


29

Which to pick ?

Language Features


Namespaces


Mixin


Code organization


Duck typing


Open Classes


Blocks



30

Ruby Community


Social Coding
-

GitHub


Screencasts


Podcasts


Conferences


Tons of Books




31

Ruby Ecosystem

32

33

Any Questions?