InfoQ Homepage Presentations Basking in the Limelight
Basking in the Limelight
Summary
Micah Martin introduces Limelight, a JRuby GUI library that uses the theater metaphor for writing GUIs. The talk introduces basic concepts, how to style GUIs, and much more.
Bio
Micah Martin is the President of 8th Light, Inc. He is co-author of the book Agile Principles, Patterns, and Practices in C# and creator of creator of Limelight and FitNesse open source tools. He has 10 years of experience consu lting, training, and developing software focusing on agile practices and software craftsmanship. Since 2006, Micah has been working almost exclusively with Ruby/JRuby.
About the conference
QCon is a conference that is organized by the community, for the community.The result is a high quality conference experience where a tremendous amount of attention and investment has gone into having the best content on the most important topics presented by the leaders in our community. QCon is designed with the technical depth and enterprise focus of interest to technical team leads, architects, and project managers.
Community comments
Great Presentation, but I missed the video.
by Kenny Parnell,
The behavior of six year olds
by Douglas Allen,
Great Presentation, but I missed the video.
by Kenny Parnell,
Your message is awaiting moderation. Thank you for participating in the discussion.
I would have loved to be able to see the video/demo.
The behavior of six year olds
by Douglas Allen,
Your message is awaiting moderation. Thank you for participating in the discussion.
C:\Users\kb9agt\jruby-projects>jruby -S limelight create production example
Unhandled Java exception: limelight.LimelightException: Failed to create URIPath from: file:/C:/Users/kb9agt/jruby-projects/example\production.rb
limelight.LimelightException: Failed to create URIPath from: file:/C:/Users/kb9agt/jruby-projects/example\production.rb
<init> at limelight/io/FileSystem.java:408
append at limelight/io/FileSystem.java:446
join at limelight/io/FileSystem.java:163
file at limelight/io/Templater.java:81
createProduction at limelight/commands/CreateCommand.java:102
createProduction at limelight/commands/CreateCommand.java:93
doExecute at limelight/commands/CreateCommand.java:58
execute at limelight/commands/Command.java:40
run at limelight/CmdLineMain.java:49
main at limelight/CmdLineMain.java:30
invoke at java/lang/reflect/Method:-1
invokeDirectWithExceptionHandling at org/jruby/javasupport/JavaMethod.java:453
invokeStaticDirect at org/jruby/javasupport/JavaMethod.java:365
<main> at C:/jruby-9.1.5.0/lib/ruby/gems/shared/gems/limelight-0.6.19-java/bin/limelight:9
runInterpreter at org/jruby/Ruby.java:850
loadFile at org/jruby/Ruby.java:2976
loadCommon at org/jruby/RubyKernel.java:982
load at org/jruby/RubyKernel.java:974
call at org/jruby/RubyKernel$INVOKER$s$0$1$load19.gen:-1
invokeOther17:load at C_3a_/jruby_minus_9_dot_1_dot_5_dot_0/bin/C:/jruby-9.1.5.0/bin/limelight:22
<main> at C_3a_/jruby_minus_9_dot_1_dot_5_dot_0/bin/C:/jruby-9.1.5.0/bin/limelight:22
invokeWithArguments at java/lang/invoke/MethodHandle:-1
runScript at org/jruby/Ruby.java:834
runNormally at org/jruby/Ruby.java:749
runNormally at org/jruby/Ruby.java:767
runFromMain at org/jruby/Ruby.java:580
doRunFromMain at org/jruby/Main.java:425
internalRun at org/jruby/Main.java:313
run at org/jruby/Main.java:242
main at org/jruby/Main.java:204
Caused by:
java.net.URISyntaxException: Illegal character in path at index 44: file:/C:/Users/kb9agt/jruby-projects/example\production.rb
fail at java/net/URI$Parser:-1
checkChars at java/net/URI$Parser:-1
parseHierarchical at java/net/URI$Parser:-1
parse at java/net/URI$Parser:-1
<init> at java/net/URI:-1
<init> at limelight/io/FileSystem.java:404
append at limelight/io/FileSystem.java:446
join at limelight/io/FileSystem.java:163
file at limelight/io/Templater.java:81
createProduction at limelight/commands/CreateCommand.java:102
createProduction at limelight/commands/CreateCommand.java:93
doExecute at limelight/commands/CreateCommand.java:58
execute at limelight/commands/Command.java:40
run at limelight/CmdLineMain.java:49
main at limelight/CmdLineMain.java:30
invoke0 at sun/reflect/NativeMethodAccessorImpl:-2
invoke at sun/reflect/NativeMethodAccessorImpl:-1
invoke at sun/reflect/DelegatingMethodAccessorImpl:-1
invoke at java/lang/reflect/Method:-1
invokeDirectWithExceptionHandling at org/jruby/javasupport/JavaMethod.java:453
invokeStaticDirect at org/jruby/javasupport/JavaMethod.java:365
call at org/jruby/java/invokers/StaticMethodInvoker.java:51
cacheAndCall at org/jruby/runtime/callsite/CachingCallSite.java:338
call at org/jruby/runtime/callsite/CachingCallSite.java:163
processCall at org/jruby/ir/interpreter/InterpreterEngine.java:315
interpret at org/jruby/ir/interpreter/StartupInterpreterEngine.java:73
INTERPRET_ROOT at org/jruby/ir/interpreter/Interpreter.java:112
execute at org/jruby/ir/interpreter/Interpreter.java:99
execute at org/jruby/ir/interpreter/Interpreter.java:35
execute at org/jruby/ir/IRTranslator.java:42
runInterpreter at org/jruby/Ruby.java:850
loadFile at org/jruby/Ruby.java:2976
load at org/jruby/runtime/load/LibrarySearcher.java:243
load at org/jruby/runtime/load/LibrarySearcher.java:34
load at org/jruby/runtime/load/LoadService.java:340
loadCommon at org/jruby/RubyKernel.java:982
load19 at org/jruby/RubyKernel.java:974
call at org/jruby/RubyKernel$INVOKER$s$0$1$load19.gen:-1
call at org/jruby/internal/runtime/methods/DynamicMethod.java:201
call at org/jruby/internal/runtime/methods/DynamicMethod.java:197
cacheAndCall at org/jruby/runtime/callsite/CachingCallSite.java:338
call at org/jruby/runtime/callsite/CachingCallSite.java:163
invokeOther17:load at C_3a_/jruby_minus_9_dot_1_dot_5_dot_0/bin/C:/jruby-9.1.5.0/bin/limelight:22
<main> at C:/jruby-9.1.5.0/bin/limelight:22
invokeWithArguments at java/lang/invoke/MethodHandle:-1
load at org/jruby/ir/Compiler.java:111
runScript at org/jruby/Ruby.java:834
runNormally at org/jruby/Ruby.java:749
runNormally at org/jruby/Ruby.java:767
runFromMain at org/jruby/Ruby.java:580
doRunFromMain at org/jruby/Main.java:425
internalRun at org/jruby/Main.java:313
run at org/jruby/Main.java:242
main at org/jruby/Main.java:204