What's this jQuery? Where it came from, and how it will drive innovationMarakana Inc.
In this talk jQuery Project Team member, Johnathan Sharp, sets out to answer four main questions: Where'd jQuery Come from?, Why is it so popular? How has it changed development? How will it drive innovation?
**see the video at http://marakana.com/f/211 **
In the scope of his talk Johnathan also touches on:
- What jQuery is not
- Core concepts to understand before jumping into jQuery (CSS & Selectors, DOM, Events, JavaScript patterns, etc)
- jQuery core, and jQuery project plugins
- The larger jQuery Project including the jQuery core, jQuery UI, and jQuery mobile
- jQuery going forward (HTML5, mobile browser support, official Plugins, growing corporate support services)
Finally, Johnathan will dig deep into a few code demos to illustrate some of the core concepts of jQuery, like events, JavaScript patterns, and making Ajax requests.
Whether you want to add some serious eye candy to your XPages Applications or just want to do more with less code, jQuery, the world’s most popular JavaScript framework can help you. Come to this webinar and find out how you can use some of the thousands of jQuery plugins, in harmony with Dojo, within your XPages applications to create a better experience not only for your users, but for you as a developer. In this webinar, we'll look at how jQuery works, how to add it to your XPages, and how a complete JavaScript beginner can take advantage of its power. We'll demonstrate many working examples -- and a sample database will be provided.
An overview of DojoX GFX and DojoX Drawing, and the underlying technology that uses SVG and VML to provide vector-based graphics cross-browser without the use of Flash.
jQuery: The World's Most Popular JavaScript Library Comes to XPagesTeamstudio
Whether you want to add some serious eye candy to your XPages Applications or just want to do more with less code, jQuery, the world’s most popular JavaScript framework can help you. Come to this webinar and find out how you can use some of the thousands of jQuery plugins, in harmony with Dojo, within your XPages applications to create a better experience not only for your users, but for you as a developer. In this webinar, we'll look at how jQuery works, how to add it to your XPages, and how a complete JavaScript beginner can take advantage of its power. We'll demonstrate many working examples -- and a sample database will be provided.
A talk that I gave Sept 2008 for the Boston IxDA on jQuery.
Code is here: http://ejohn.org/apps/learn-jquery/
Download here: http://ejohn.org/files/learn-jquery.zip
What's this jQuery? Where it came from, and how it will drive innovationMarakana Inc.
In this talk jQuery Project Team member, Johnathan Sharp, sets out to answer four main questions: Where'd jQuery Come from?, Why is it so popular? How has it changed development? How will it drive innovation?
**see the video at http://marakana.com/f/211 **
In the scope of his talk Johnathan also touches on:
- What jQuery is not
- Core concepts to understand before jumping into jQuery (CSS & Selectors, DOM, Events, JavaScript patterns, etc)
- jQuery core, and jQuery project plugins
- The larger jQuery Project including the jQuery core, jQuery UI, and jQuery mobile
- jQuery going forward (HTML5, mobile browser support, official Plugins, growing corporate support services)
Finally, Johnathan will dig deep into a few code demos to illustrate some of the core concepts of jQuery, like events, JavaScript patterns, and making Ajax requests.
Whether you want to add some serious eye candy to your XPages Applications or just want to do more with less code, jQuery, the world’s most popular JavaScript framework can help you. Come to this webinar and find out how you can use some of the thousands of jQuery plugins, in harmony with Dojo, within your XPages applications to create a better experience not only for your users, but for you as a developer. In this webinar, we'll look at how jQuery works, how to add it to your XPages, and how a complete JavaScript beginner can take advantage of its power. We'll demonstrate many working examples -- and a sample database will be provided.
An overview of DojoX GFX and DojoX Drawing, and the underlying technology that uses SVG and VML to provide vector-based graphics cross-browser without the use of Flash.
jQuery: The World's Most Popular JavaScript Library Comes to XPagesTeamstudio
Whether you want to add some serious eye candy to your XPages Applications or just want to do more with less code, jQuery, the world’s most popular JavaScript framework can help you. Come to this webinar and find out how you can use some of the thousands of jQuery plugins, in harmony with Dojo, within your XPages applications to create a better experience not only for your users, but for you as a developer. In this webinar, we'll look at how jQuery works, how to add it to your XPages, and how a complete JavaScript beginner can take advantage of its power. We'll demonstrate many working examples -- and a sample database will be provided.
A talk that I gave Sept 2008 for the Boston IxDA on jQuery.
Code is here: http://ejohn.org/apps/learn-jquery/
Download here: http://ejohn.org/files/learn-jquery.zip
From jQuery San Diego, held Feb 12-13 2014, my talk on web accessibility for web developers. I cover basic techniques, introduce screen readers and ARIA, and go over testing. The goal is to demystify accessibility so we can weave it in to applications today.
SEE 2009: Improving Mobile Web Developer ExperienceTasneem Sayeed
This talk will provide strategies to identify common developer pitfalls for web developers developing on a mobile platform. It will include code fragments for implementing AJAX requests for a social networking application and how to avoid frequent developer pitfalls when displaying the data retrieved on the mobile device. It will further provide coding strategies for improving performance and reducing footprint when developing on a mobile device utilizing Web technologies such as JavaScript, CSS and HTML.
This talk will conclude highlighting the activities of the Symbian Foundation including a roadmap of how the Symbian tools are being evolved to further improve and enhance the mobile Web developer experience.
A Lecture given in Aalto University course "Design of WWW Services".
Single page app is already several years old web application paradigm that is now gaining traction due to the interest towards HTML5 and particularly cross-platform mobile (web) applications. The presentation overviews the single page application paradigm and compares it with other web app paradigms.
The presentation uses Backbone.js as the sample and gives practical tips on how to best structure Backbone.js applications. It contains an extensive set of tips and links in the notes section.
The reader is adviced to download the presentation for better readability of the notes.
Web frameworks are in a time of transition, as technologies like rich Ajax applications and HTML5 emerge. In this presentation, open source frameworks expert Matt Raible reveals which frameworks are fading fast and which will remain relevant for the near and far-off future.
현시대의 자바스크립트가 개발자들에게 주는 피로함은 과연 어디서부터 출발했을까?
2015년 부터 자바스크립트의 피로감은 너무 극에 달했다고 생각했고 그 시작은 과연 어디서부터 왔는지 이 피로감의 끝은 어딜지 지난 과거의 역사와 현시대가 그 욕구를 반영하는 과정에서 자바스크립트 개발자가 알아야 할 이야기들을 자세히 정리해 봤습니다.
발표시간: 40m (80m 이 적당)
#feconf 2017
S314011 - Developing Composite Applications for the Cloud with Apache TuscanyLuciano Resende
Today's cloud environments pose new challenges for application developers: hiding cloud infrastructure from business logic, assembling components on heterogeneous and distributed cloud environments, and optimizing the provisioning of the required cloud resources. This session will demonstrate how to use Apache Tuscany and the Service Component Architecture (SCA) to develop, build, and run an application composed of several service components in a distributed cloud environment. We'll illustrate how to encapsulate cloud infrastructure services as SCA components to simplify the construction and assembly of the application and how to move components around and rewire the application to adjust to new business and cloud deployment conditions.
Last year, AOL adopted a new content strategy and has positioned itself as a premier destination for original content. Core to this strategy is having reusable, highly efficient and optimized common code and experiences at scale, which is where jQuery comes in. Check in with Dave Artz to see how jQuery has helped his front-end standards team tackle unique challenges like optimizing 3rd party widget performance, overriding plugin functionality, and managing dependencies and updates across 100+ sites spanning multiple back-end platforms.
Java Web Application Security - Utah JUG 2011Matt Raible
During this presentation, I demonstrate how to implement authentication in your Java web applications using Spring Security, Apache Shiro and good ol' Java EE Container Managed Authentication. You'll also learn how to secure your REST API with OAuth and lock it down with SSL.
After learning how to develop authentication, I'll introduce you to OWASP, the OWASP Top 10, its Testing Guide and its Code Review Guide.
Much of this talk is contained in demos and I plan on uploading those as screencasts throughout May and June. I'll also be delivering this talk at ÜberConf in July 2011.
High Performance JavaScript (YUIConf 2010)Nicholas Zakas
Ever wonder why the page appears frozen or why you get a dialog saying, "this script is taking too long"? Inside of the browser, JavaScript and the page's UI are very intertwined, which means they can affect each other and, in turn, affect overall page performance. Ensuring the fastest execution time of JavaScript code isn't about geek cred, it's about ensuring that the user experience is as fast and responsive as possible. In a world where an extra second can cost you a visitor, sluggishness due to poor JavaScript code is a big problem. In this talk, you'll learn what's going on inside the browser that can slow JavaScript down and how that can end up creating a "slow page". You'll also learn how to overcome the conspiracy against your code by eliminating performance bottlenecks.
Learn about Eclipse e4 from Lars Vogel at SF-JUGMarakana Inc.
San Francisco Java User Group hosted an event on April 13th, 2010 with Lars Vogel, a committer on the Eclipse e4 project, who gave a talk on the next generation of the Eclipse Platform. We had two speakers that evening, this is the first of the two presentations. This event was hosted by SUPINFO. Sponsored by TEKsystems, Guidewire Software, Sun, O'Reilly, JetBrains, and Marakana. Organized by Marakana. Video by Max Walker. Photography by Aleksandar Gargenta. http://www.sfjava.org/calendar/12296574/
Efficient Rails Test-Driven Development - Week 6Marakana Inc.
Learn how to apply the test-first approach to all of your Rails projects. In this six class series, experienced Rails engineer and consultant, Wolfram Arnold applies his real-world perspective to teaching you effective patterns for testing.
In this sixth of six classes, Wolf discusses:
- Integration frameworks (Cucumber, Webrat, Capybara, and Selenium)
- Integration testing with Selenium (advantages and problems)
- Page Objects
- Locators (Selenium, CSS and XPath locators
- RSpec Custom Matchers
- Testing for Access Control
** You can get the slides and source code from this presentation at: http://marakana.com/f/215 **
Find more videos, tutorials, and code examples at http://marakana.com/techtv
From jQuery San Diego, held Feb 12-13 2014, my talk on web accessibility for web developers. I cover basic techniques, introduce screen readers and ARIA, and go over testing. The goal is to demystify accessibility so we can weave it in to applications today.
SEE 2009: Improving Mobile Web Developer ExperienceTasneem Sayeed
This talk will provide strategies to identify common developer pitfalls for web developers developing on a mobile platform. It will include code fragments for implementing AJAX requests for a social networking application and how to avoid frequent developer pitfalls when displaying the data retrieved on the mobile device. It will further provide coding strategies for improving performance and reducing footprint when developing on a mobile device utilizing Web technologies such as JavaScript, CSS and HTML.
This talk will conclude highlighting the activities of the Symbian Foundation including a roadmap of how the Symbian tools are being evolved to further improve and enhance the mobile Web developer experience.
A Lecture given in Aalto University course "Design of WWW Services".
Single page app is already several years old web application paradigm that is now gaining traction due to the interest towards HTML5 and particularly cross-platform mobile (web) applications. The presentation overviews the single page application paradigm and compares it with other web app paradigms.
The presentation uses Backbone.js as the sample and gives practical tips on how to best structure Backbone.js applications. It contains an extensive set of tips and links in the notes section.
The reader is adviced to download the presentation for better readability of the notes.
Web frameworks are in a time of transition, as technologies like rich Ajax applications and HTML5 emerge. In this presentation, open source frameworks expert Matt Raible reveals which frameworks are fading fast and which will remain relevant for the near and far-off future.
현시대의 자바스크립트가 개발자들에게 주는 피로함은 과연 어디서부터 출발했을까?
2015년 부터 자바스크립트의 피로감은 너무 극에 달했다고 생각했고 그 시작은 과연 어디서부터 왔는지 이 피로감의 끝은 어딜지 지난 과거의 역사와 현시대가 그 욕구를 반영하는 과정에서 자바스크립트 개발자가 알아야 할 이야기들을 자세히 정리해 봤습니다.
발표시간: 40m (80m 이 적당)
#feconf 2017
S314011 - Developing Composite Applications for the Cloud with Apache TuscanyLuciano Resende
Today's cloud environments pose new challenges for application developers: hiding cloud infrastructure from business logic, assembling components on heterogeneous and distributed cloud environments, and optimizing the provisioning of the required cloud resources. This session will demonstrate how to use Apache Tuscany and the Service Component Architecture (SCA) to develop, build, and run an application composed of several service components in a distributed cloud environment. We'll illustrate how to encapsulate cloud infrastructure services as SCA components to simplify the construction and assembly of the application and how to move components around and rewire the application to adjust to new business and cloud deployment conditions.
Last year, AOL adopted a new content strategy and has positioned itself as a premier destination for original content. Core to this strategy is having reusable, highly efficient and optimized common code and experiences at scale, which is where jQuery comes in. Check in with Dave Artz to see how jQuery has helped his front-end standards team tackle unique challenges like optimizing 3rd party widget performance, overriding plugin functionality, and managing dependencies and updates across 100+ sites spanning multiple back-end platforms.
Java Web Application Security - Utah JUG 2011Matt Raible
During this presentation, I demonstrate how to implement authentication in your Java web applications using Spring Security, Apache Shiro and good ol' Java EE Container Managed Authentication. You'll also learn how to secure your REST API with OAuth and lock it down with SSL.
After learning how to develop authentication, I'll introduce you to OWASP, the OWASP Top 10, its Testing Guide and its Code Review Guide.
Much of this talk is contained in demos and I plan on uploading those as screencasts throughout May and June. I'll also be delivering this talk at ÜberConf in July 2011.
High Performance JavaScript (YUIConf 2010)Nicholas Zakas
Ever wonder why the page appears frozen or why you get a dialog saying, "this script is taking too long"? Inside of the browser, JavaScript and the page's UI are very intertwined, which means they can affect each other and, in turn, affect overall page performance. Ensuring the fastest execution time of JavaScript code isn't about geek cred, it's about ensuring that the user experience is as fast and responsive as possible. In a world where an extra second can cost you a visitor, sluggishness due to poor JavaScript code is a big problem. In this talk, you'll learn what's going on inside the browser that can slow JavaScript down and how that can end up creating a "slow page". You'll also learn how to overcome the conspiracy against your code by eliminating performance bottlenecks.
Learn about Eclipse e4 from Lars Vogel at SF-JUGMarakana Inc.
San Francisco Java User Group hosted an event on April 13th, 2010 with Lars Vogel, a committer on the Eclipse e4 project, who gave a talk on the next generation of the Eclipse Platform. We had two speakers that evening, this is the first of the two presentations. This event was hosted by SUPINFO. Sponsored by TEKsystems, Guidewire Software, Sun, O'Reilly, JetBrains, and Marakana. Organized by Marakana. Video by Max Walker. Photography by Aleksandar Gargenta. http://www.sfjava.org/calendar/12296574/
Efficient Rails Test-Driven Development - Week 6Marakana Inc.
Learn how to apply the test-first approach to all of your Rails projects. In this six class series, experienced Rails engineer and consultant, Wolfram Arnold applies his real-world perspective to teaching you effective patterns for testing.
In this sixth of six classes, Wolf discusses:
- Integration frameworks (Cucumber, Webrat, Capybara, and Selenium)
- Integration testing with Selenium (advantages and problems)
- Page Objects
- Locators (Selenium, CSS and XPath locators
- RSpec Custom Matchers
- Testing for Access Control
** You can get the slides and source code from this presentation at: http://marakana.com/f/215 **
Find more videos, tutorials, and code examples at http://marakana.com/techtv
Efficient Rails Test Driven Development (class 3) by Wolfram ArnoldMarakana Inc.
Learn how to apply the test-first approach to all of your Rails projects. In this six class series, experienced Rails engineer and consultant, Wolfram Arnold applies his real-world perspective to teaching you effective patterns for testing.
In this third of six classes, Wolf covers:
- Controller testing
- View, Helper, Routes Testing
- How much is enough? How much is too much?
** You can get the video and source code from this presentation at: http://marakana.com/f/201 **
All six classes will be available online, so stay tuned! And be sure to check out marakana.com/techtv for more videos on open source training.
Presented by: Wolfram Arnold, in collaboration with Sarah Allen, BlazingCloud.net
Produced by: Marakana
Learn about JRuby Internals from one of the JRuby Lead Developers, Thomas EneboMarakana Inc.
At an event hosted at LinkedIn on November 2, 2010, "JRuby Guy", Thomas Enebo gave us an introduction to JRuby internals, and what about the intenals a new contributor might need to know to get started in contributing to the JRuby project.
** check out the slides from this presentation at: http://marakana.com/f/197 **
Speaker: Rob Day, Partner, Black Coral Capital
Event: Greentech Media's NextWave Greentech Investing conference at SRI International Headquarters in Menlo Park, CA
Learn more: http://www.greentechmedia.com/events/live/nextwave-greentech-investing-2014
Big Data & Cloud | Cloud Storage Simplified | Adrian ColeJAX London
2011-11-01 | 04:20 PM - 05:10 PM
Key/value stores are the most common storage offerings in the cloud today. We'll introduce storage concepts and differences between cloud storage providers including Amazon S3, Rackspace Cloud Files & Microsoft Azure Blob Service. We'll demonstrate how jclouds BlobStore helps Java and Clojure developers avoid lock-in and increase testability without restricting access to provider-specific features
Slides of my "Open Innovation in Software Means Open Source Software" talk, OSS Watch, Oxford Dec.12th, 2009 (http://www.oss-watch.ac.uk/events/2009-12-07_business/programme.xml). Also at http://transfersummit.com/programme/60 and accompanying article on the H online, http://x42.ch/03.10.01
high-level presentation covering the jclouds open source project.
Note that jclouds is currently in the Apache incubator, so check http://incubator.apache.org/projects/jclouds.html for latest status.
Abstract: From Billionaires to Moms, some people care deeply about preserving their family photos, this lightning talk about Brad Fitzpatrick's 20 percent time talk at Google will talk about the projects aim, capabilities and technologies (GoLang, Android). How they marry up with NYC focus on Blockchain technologies.
Surrogate dependencies (in node js) v1.0Dinis Cruz
Present idea of Surrogate dependencies which:
- tests the API and replays responses
- use integration tests to ‘lock’ the api used
- save responses in JSON format
- sllow client to run offline
Short presentation given at a local Kotlin meetup on what to look for in a server framework and pros/cons of Kotlin server frameworks that are available
Mobile App Performance: Getting the Most from APIs (MBL203) | AWS re:Invent ...Amazon Web Services
(Presented by New Relic) Too often, developers think of a mobile app as simply code running on the device. A mobile app is much more than that. Every web API used by an app becomes as much a part of the app as the code running on the device. But while mobile developers have control over their code, they don't always have control over the APIs they use. Web APIs and their infrastructure impact app performance and ultimately the user experience.
This presentation covers some of the essential aspects of app performance management when web APIs are present, including:
-HTTP headers are your friend--stop ignoring all they have to tell you
-Control your network connections on the device—don't just leave things to the OS
-Configure all your caches and use them
-Whatever you do, measure early and often
The session includes a customer story from the CTO of Mirego, and demos of New Relic mobile app performance monitoring, where you see how to drill down into specific requests to see performance by response time, throughput, and data transfer size.
DDS on the Web: Quick Recipes for Real-Time Web ApplicationsAngelo Corsaro
The Web is nowadays inextricably intertwined with our lives and our systems. The ability for a system to interact with web-based applications is not anymore a feature — it is the thin line that separates démodé from contemporary!
DDS-based systems are not exception to this rule and as a consequence more and more people are trying bring DDS data to web applications. In a technology rich environment such as the web there is no lack of choice when it comes to selecting the set of tools and technologies to integrate DDS and Web applications. Options are Web Services, REST,
REST Frameworks such as CometD, Silverlight, WebSockets, DART, the Play! Framework etc.
To help shed light, give insight and factually show that the DDS/Web integration is indeed easily achievable, this presentation will first provide an overview of the Web technologies that are most suited for integrating Web- and DDS-applications, such as plain REST, CometD, WebSockets, Google Dart, and Play! Then it will demonstrate how the integration can be achieved with just a few lines of code by using the OpenSplice Gateway.
Android Services Black Magic by Aleksandar GargentaMarakana Inc.
Presented at Android Builders Summit on February 14th in Redwood Shores, CA by Aleksandar (Saša) Gargenta, from Marakana Inc.
For the complete slides from this talk go to http://mrkn.co/munz7
"The most interesting part of Android stack are the Android System Services. The 60+ such services expose the low level functionality, such as Power Management, Wifi, Camera, Sensors, GPS, Display, Audio, Media, and so on, all the hardware all the way up to the application layer. While each one is different, the all have certain similarities, namely the way they rely on Binder (Android's IPC mechanism), use JNI to cross Java-C boundary, and use of shared libraries to abstract the Linux drivers. In this talk, we'll explore the common system services in Android and discuss their architecture. You will get to see the diagrams of the inner workings of some of the previously undocumented parts of the Android stack. By the end of the talk, you should have a better understanding of the underpinnings of the backbone of Android OS."
https://events.linuxfoundation.org/events/android-builders-summit/gargentaa
Video at http://mrkn.co/andsec
With Android activations reaching a million devices per day, it is no surprise that security threats against our favorite mobile platform have been on the rise.
In this session, you will learn all about Android's security model, including application isolation (sandboxing) and provenance (signing), its permission system and enforcement, data protection features and encryption, as well as enterprise device administration.
Together, we will dig into Android's own internals to see how its security model is applied through the entire Android stack - from the Linux kernel, to the native layers, to the Application Framework services, and to the applications themselves.
Finally, you’ll learn about some of the weaknesses in the Android's model (including rooting, tap-jacking, malware, social-engineering) as well as what can be done to mitigate those threats, such as SE-Linux, memory protection, anti-malware, firewall, and developer best practices.
By the end of this session you will have a better understanding of what it takes to make Android a more trusted component of our personal and professional lives.
Learn hot techniques for developing more effective user interfaces in your Android applications from Android UI Toolkit engineers Romain Guy and Chet Haase.
Romain and Chet will dive into some code examples, demo some handy tools, and show you how to optimize your UI for performance while making it look great.
Didn't make it to Devoxx 2K10? Well, find out what you might have missed, as this is the same presentation Romain and Chet delivered at Devoxx.
A few topics covered in this talk include:
- Trash Talk: avoiding garbage creation when necessary and possible
- Tools: Allocation Tracking, DDMS, Heap Analysis Tool (hat), etc.
- A few tips on avoiding memory leaks
- ViewStub, ListView and compound drawables
- Graphics optimization techniques
jQuery State of the Union - Yehuda KatzMarakana Inc.
What's the state of the most popular JavaScript library today? What's in-store for upcoming releases?
At an event hosted at Microsoft on November 9th, 2010, Yehuda Katz (a core member of the jQuery team) talked about updates planned for jQuery 1.4.3 and plans for jQuery 1.5, due next year.
He also covers:
- initiatives of the jQuery project
- jQuery mobile
- formalizing governance of the jQuery project
** See the video at: http://marakana.com/f/12312 **
Stay tuned for videos of these presentations from this event:
- jQuery jump start (15 min. session to get you productive with the JavaScript frameworks)
- jQuery with ASP.NET and Visual Studio Walk-through
- How jQuery continues to drive innovation with emerging technologies
In the meantime, check out more videos on open source development at: http://marakana.com/techtv
Pics from: "James Gosling on Apple, Apache, Google, Oracle and the Future of ...Marakana Inc.
Pictures from an event where James Gosling spoke on:
- His departure from Oracle
- Oracle's stewardship of Java
- Android's use of Java, and what he would've done
- Apple's "deprecation" of Java
- IBM and Oracle relationship
- Apache Software Foundation's recent worries
- What's he's been up to lately
- His other favorite programming languages and technologies
- The future of Java
** Check out the full video from his talk at: www.marakana.com/f/205 **
Efficient Rails Test Driven Development (class 4) by Wolfram ArnoldMarakana Inc.
Learn how to apply the test-first approach to all of your Rails projects. In this six class series, experienced Rails engineer and consultant, Wolfram Arnold applies his real-world perspective to teaching you effective patterns for testing.
In this fourth of six classes, Wolf covers:
- Refactoring code & tests, custom matchers
- API Testing
- Remote data setup
- Cucumber for API testing & documentation
** You can get the video and source code from this presentation at: http://marakana.com/f/204 **
All six classes will be available online, so stay tuned! And be sure to check out marakana.com/techtv for more videos on open source training.
Presented by: Wolfram Arnold, in collaboration with Sarah Allen, BlazingCloud.net
Produced by: Marakana
At an event hosted at LinkedIn on November 2, 2010, Noah Gibbs delivers a presentation on how On-Site.com is using JRuby to leverage its old Java codebase.
** Check out the video from this presentation at: http://marakana.com/f/198 **
Noah talks about:
- The advantages of using JRuby to leverage a legacy Java codebase
- Integration with JSP pages
- Java models and Active Record wrappers
- Call Java-to-Ruby
...And if you're looking for more educational videos on Ruby and open-source, head on over to: http://marakana.com/techtv
Learn to Build like you Code with Apache BuildrMarakana Inc.
At an event hosted at LinkedIn on November 2, 2010, Antoine Toulme of Intalio gave a brief introduction to open-source build system Apache Buildr.
Buildr is a build system for Java-based applications that is built on Ruby's build system Rake, and uses Ruby as a scripting language.
** Check out the video of this presentation at: http://marakana.com/f/199 **
Learn How to Unit Test Your Android Application (with Robolectric)Marakana Inc.
Robolectric is an open source Android unit testing framework that makes it possible to run unit tests against your Android application code outside of the emulator - in the IDE. Robolectric gives you the scaffolding to run your tests quickly so you can make fast iterations and refactor your code with confidence.
** Check out the video for this presentation at marakana.com: http://mrkn.co/f/192 **
This presentation was given at the San Francisco Android User Group on Oct. 26, 2010.
Learn Learn how to build your mobile back-end with MongoDBMarakana Inc.
Will Shulman, from MongoLab, shows us how to to persist our mobile app data in the cloud using a super-scalable and amazingly developer-friendly MongoDB back-end.
Super simple application security with Apache ShiroMarakana Inc.
Les Hazlewood, founder of the Apache Shiro project, covers the benefits of using Shiro as an application security framework.
Check out the video for this presentation, as well as more training resources for Java here: http://marakana.com/forums/java/general/183.html
Overview of Java EE 6 by Roberto Chinnici at SFJUGMarakana Inc.
Roberto Chinnici, Java EE 6 spec lead, gives an overview of Java EE 6 for San Francisco Java User Group on August 10th, 2010.
http://www.sfjava.org/calendar/13940755/
13. CODE AND SIGN THE HTTP REQUEST
PUT /adriansmovies/sushi.avi HTTP/1.1
PUT /sushi.avi HTTP/1.1 Host: <account>.blob.core.windows.net
Host: adriansmovies.s3.amazonaws.com Content-Length: 734859264
Content-Length: 734859264 Date: Wed, 01 Mar 2006 12:00:00 GMT
Date: Wed, 01 Mar 2006 12:00:00 GMT Authorization: SharedKey <app>:signature
Authorization: signature x-ms-meta-Chef: Kawasaki
x-amz-meta-Chef: Kawasaki
POST /namespace/adriansmovies/sushi.avi HTTP/1.1
PUT /<api version>/<account>/
Content-Length: 734859264
adriansmovies/sushi.avi HTTP/1.1
Date: Wed, 01 Mar 2006 12:00:00 GMT
Host: storage.clouddrive.com
x-emc-uid: <uid>
Transfer-Encoding: chunked
x-emc-signature: signature
X-Auth-Token: session-token
x-emc-meta: Chef=Kawasaki
X-Object-Meta-Chef: Kawasaki
Monday, July 12, 2010 13
14. CODE AND SIGN THE HTTP REQUEST
GET /ws/IMFS/GetStorageNodeExtended.ashx?&fileOverwrite=true&ipRestricted=true&destFolderPath= adriansmovies&sizeBytes=
734859264&firstByteExpiration=6000&lastByteExpiration=259200&sessionToken=session-token HTTP/1.1
POST /Upload.ashx?uploadToken=from_above&destFolderPath=adriansmovies HTTP/1.1
Host: from_above
Content-Length: 734859382
Content-Type=multipart/form-data; boundary=--jclouds--
Authorization=Basic GpjbG9=
----jclouds--
Content-Disposition: form-data; name="sushi.avi"; filename="sushi.avi"
Content-Type: application/octetstring
...
PUT /ws/Metadata/SetMetadata.ashx?&path=Folders/adriansmovies/sushi.avi&sessionToken=session-token&metadata=Chef:Kawasaki HTTP/1.1
Monday, July 12, 2010 14
15. CODE AND SIGN THE HTTP REQUEST
POST /<api version>/containers/id_of_ adriansmovies/contents HTTP/1.1
Content-Length: 734859382
Content-Type=multipart/form-data; boundary=--jclouds--
Authorization=Basic GpjbG9=
----jclouds--
Content-Disposition: form-data; name="sushi.avi"; filename="sushi.avi"
Content-Type: application/octetstring
...
PUT /<api version>/files/from_above/metadata/Chef HTTP/1.1
Content-Length: 8
Content-Type: text/plain
Authorization: Basic GpjbG9=
Kawasaki
Monday, July 12, 2010 15
16. do you want to
• Deal with Errors
• Deal with Concurrency
• Deal with Cloud Complexity
Monday, July 12, 2010 16
17. jclouds
open source
feels like java (and clojure)
portability between clouds
deal with web complexity
unit testability
thread-safe and scalable
Monday, July 12, 2010 17
18. Tools we provide
• Abstractions
• BlobStore ( atmos, azure, rackspace, s3 )
• Compute ( vcloud, ec2, gogrid, ibmdev,
rackspace, rimu )
• Clojure bindings
• Third-party library integration
Monday, July 12, 2010 18
19. Alternatives to jclouds
• Roll-your-own
• Jersey, RESTEasy
• EC2-based cloud apis
• typica, jets3t
• Dasein Cloud API
• Service provided SDKs
Monday, July 12, 2010 19
22. commons vfs
vfs > open blobstore://user:key@cloudfiles/mycontainer
Opened blobstore://cloudfiles/mycontainer/
Current folder is blobstore://cloudfiles/mycontainer/
vfs > ls
Contents of blobstore://cloudfiles/mycontainer/
README.txt
0 Folder(s), 1 File(s)
vfs > close
Monday, July 12, 2010 22
24. Provisioning
• The Good, the Bad, and the Ugly
• Java Code
• Clojure Code
Monday, July 12, 2010 24
25. The Good
provisioning (and re-provisioning) is cheap
APIs = automation
tools exist
Monday, July 12, 2010 25
26. The Bad
forgetting to turn things off
licensing
erratic service quality
Monday, July 12, 2010 26
27. The Ugly
cloud apis are sometimes unreliable
apis are very different across clouds
features are very different across clouds
accidental complexity
Monday, July 12, 2010 27
28. Things to consider when provisioning
Can you create an image?
Can you push credentials or files?
Do you need to VPN in?
How is storage provisioned?
How close are your dependencies?
Monday, July 12, 2010 28