In this course students will learn how to add interactivity and asynchronous behavior to web sites using Javascript via the jQuery library and its companion the jQuery UI library.
The workshop consists of: Beginning jQuery Advanced jQuery and jQueryUI
This is a hands on course for developers so bring your laptop and be prepared to write a lot of code!
Brian Sam-Bodden is an author, instructor, speaker and hacker that has spent over fifteen years crafting software systems. He holds dual bachelor degrees from Ohio Wesleyan University in computer science and physics and heads Integrallis http://www.integrallis.com. He is a frequent speaker at user groups and conferences nationally and abroad. Brian is the author of "Beginning POJOs: Spring, Hibernate, JBoss and Tapestry", co-author of the "Enterprise Java Development on a Budget: Leveraging Java Open Source Technologies" and a contributor to O'reilly's "97 Things Every Project Manager Should Know".
First there was iPod. Then iPhone. Then iPad. And with each new release, the mobile device market grew hotter and hotter. Now, as Google?s entry into this race, the Android system, begins to hit its stride as a competitor platform to the iOS, as a Java developer you?re intrigued?it?s Java (well, assuming you ask anybody except Oracle), and it?s a mobile device, and it?s open source, and?. What?s not to love?
In this all-day workshop, we?re going to turn you into a journeyman Android developer. This is a Java-based platform, so we?ll have a leg up on those other ?Java-free? environments where you?ll have to spend half the day just learning how to count from 1 to 10 and print it to the console all over again. We?ll start by looking at the Android toolchain and how it integrates with your existing toolchain (Eclipse or otherwise). We?ll get your hands dirty writing some code to the Android emulator, then (for those of you who have Android devices handy) push it to a device. We?ll write some unit-tests for testing an Android application. We?ll look at how to store data to the device, both in a SQLite database as well as to a straight file. We?ll look at how to make Internet calls to remote services, and when all is said and done, we?ll have an application that Really Works (TM). Bring a laptop, your Java skills, an Android device if you?ve got one, and buckle in, because it?s going to be a straight-from-the-firehose kind of workshop.
Ted Neward is an Architectural Consultant with Neudesic, LLC as well as the Principal with Neward & Associates. He speaks on the conference circuit discussing Java, .NET and XML service technologies, focusing on Java-.NET interoperability, programming languages, and virtual machine technologies. He has written several widely-recognized books in both the Java and .NET space, including the recently- released "Professional F#" and widely-acclaimed "Effective Enterprise Java". He lives in the Pacific Northwest.
Bring your laptop! Use your JavaScript skills to build native iOS and Android apps! Learn from an Appcelerator Titan!
This is a full day workshop specifically designed to get you up and running with Titanium and build feature-rich applications! We'll install the latest Titanium Developer and iOS SDK - then create a project in Titanium Developer and run it in the simulator to verify your setup. Basic JavaScript experience is necessary for this session; please complete a basic JavaScript course or book before attending.
Titanium is an open-source development tool for producing cross-platform mobile applications by Appcelerator. Using Titanium, you develop your mobile application using Javascript coded against the Titanium API's. Titanium Studio, an IDE for your mobile apps, invokes their compiler and builder to take your Javascript and build a native application for iOS and Android.
This is a full day workshop intended to teach you the basics of Titanium. We'll work on several exercises as you build up a complete, feature-rich, mobile application that you can deploy on either Android or iOS. Topics we'll cover in this workshop:
Pratik Patel is the CTO of Atlanta based TripLingo (http://www.triplingo.com/). He wrote the first book on 'enterprise Java' in 1996, "Java Database Programming with JDBC." He has also spoken at various conferences and participates in several local tech groups and startup groups. He's in the startup world now and hacks iOS, Android, HTML5, CSS3, JavaScript, Rails, and ..... well everything except Perl. Pratik's specialty is in large-scale applications for mission-critical and mobile applications use. He has designed and built applications in the retail, health care, financial services, and telecoms sectors. Pratik holds a master's in Biomedical Engineering from UNC, has worked in places such as New York, London, and Hong Kong, and currently lives in Atlanta, GA.
As a web application developer, most of the focus is on the user stories and producing business value for your company or clients. Increasingly however the world wide web is more like the wild wild web which is an increasingly hostile environment for web applications. It is absolutely necessary for web application teams to have security knowledge, a security model and to leverage proper security tools.
This 1/2 day training workshop on security will provide an overview of the security landscape starting with the OWASP top ten security concerns with current real world examples of each of these attack vectors. The first session will consist of a demonstration and labs using hacker tools to get an understanding of how a hacker thinks. It will include a walk through of the ESAPI toolkit as an example of how to solve a number of these security concerns including hands-on labs using the OWASP example swingset.
The workshop will include several hands on labs from the webgoat project in order to better understand the threats that are ever so common today.
Attendees will come away with the following skills / capabilities:
Don't be the weakest link on the web!
Ken has been a practitioner and instructor of RUP since the late 1990s, and an extreme programmer and coach since the middle 2000s. Ken has worked with Fortune 500 companies to small startups in the roles of developer, designer, application architect and enterprise architect. Ken's current focus is on enterprise system automation and continuous delivery systems.
Ken is an international speaker on the subject of software engineering speaking at conferences such as JavaOne, JavaZone, Jax-India, and The Strange Loop. He is a regular speaker with NFJS where he is best known for his architecture and security hacking talks. In 2009, Ken was honored by being awarded the JavaOne Rockstar Award at JavaOne in SF, California and the JavaZone Rockstar Award at JavaZone in Oslo, Norway as the top ranked speaker.
Come to this workshop for an in depth understanding of the fundamentals of developing applications on the iOS platform for iPhone and iPad devices.
The intent of this session is not to teach you the click and run techniques. The intent is to hone in the under the covers event handling mechanism, the organization of the application, and its deployment configuration. While you will learn how to develop Apps, you will also leave with confidence to debug and to improve the performance of your Apps.
Dr. Venkat Subramaniam, founder of Agile Developer, Inc., has trained and mentored thousands of software developers in the US, Canada, Europe, and Asia. Venkat helps his clients effectively apply and succeed with agile practices on their software projects, and speaks frequently at international conferences and user groups. Venkat is also an adjunct faculty and teaches CS courses remotely at the University of Houston. He is author of ".NET Gotchas," coauthor of 2007 Jolt Productivity Award winning "Practices of an Agile Developer," author of "Programming Groovy: Dynamic Productivity for the Java Developer" and "Programming Scala: Tackle Multi-Core Complexity on the Java Virtual Machine" (Pragmatic Bookshelf).
As web applications continue to become more interactive and sophisticated, real-time messaging and updates are becoming increasingly prevalent. One of the hottest new APIs in HTML5 is WebSocket, which enables true duplex communication without the overhead, complexity, and extraneous latency of HTTP-based solutions. See how the WebSocket removes these barriers to create optimal real-time delivery of messages from servers to browsers, including mobile. Although WebSocket is an exciting new API, we can easily fallback to HTTP-based techniques when WebSocket is not available with Dojo?s Socket API. The server-side is equally important, and real-ti me messaging has pushed the need for asynchronous I/O in the server. The Tunguska library is one example of create scalable real-time applications using the Node.js platform that is so perfectly suited for Comet.
This presentation will also cover the use of streaming abstractions to minimize buffering, and will consider the performance implications of topic-based publish-subscribe distribution versus filtering techniques.
Dylan Schiemann is CEO of SitePen and co-founder of the Dojo Toolkit, an open source JavaScript toolkit for rapidly building web sites and applications, and is an expert in the technologies and opportunities of the Open Web. Under his guidance, SitePen has grown from a small development firm to a leading provider of inventive tools, skilled software engineers, knowledgeable consulting services, and top-notch training and advice. Dylan is a contributing author to the O'Reilly book "Even Fast Web Sites". Dylan's commitment to R&D has enabled SitePen to be a major contributor to or creator of pioneering open source web development toolkits and frameworks like Dojo, cometD, DWR, and Persevere. Prior to SitePen, Dylan developed web applications for companies like Renkoo, Informatica, Security FrameWorks and Vizional Technologies. He is a co-founder of Comet Daily, LLC, a board member at Dojo Foundation and a member of the Advisory Board at Aptana. Dylan earned his Masters in Physical Chemistry from UCLA and his B.A. in Mathematics from Whittier College.
Ever wanted to send a realtime "push" message from a server to a client running in a browser? Send messages from one client to another? Write realtime games and other demanding applications using JavaScript?
One of the most exciting new additions to the suite of technology collectively known as "HTML 5" is an official WebSocket standard. This finally allows full duplex bi-directional communication between a client and server over TCP.
However, the technology is still new and rapidly changing. In this talk, Johnny will explain what a WebSocket is, how it works, how to implement it on browsers that don't natively support it, and how it relates to other technologies and platforms such as HTTP long polling, Comet, Flash Sockets, mobile, and JSONP. He'll also discuss the different types of server implementations, scaling strategies, and how a it can be integrated into an existing application.
Johnny is a principal engineer at Time Warner Cable in the Web Services group with over fifteen years of web application development. He is a generalist with experience in all layers of an application from the database to the UI. Currently, the projects he works on see traffic in the millions on a monthly basis, and the work has extended out to other client platforms including the popular Time Warner Cable iPad live video streaming application which recently won a engineering award from the Academy of Television Arts and Sciences.
JavaScript is one of those very powerful languages that is often misunderstood and underutilized. It's quite popular, yet there's so much more we can do with it.
In this presentation we'll deep dive into the capabilities and strengths of this prominent language of the web.
Dr. Venkat Subramaniam, founder of Agile Developer, Inc., has trained and mentored thousands of software developers in the US, Canada, Europe, and Asia. Venkat helps his clients effectively apply and succeed with agile practices on their software projects, and speaks frequently at international conferences and user groups. Venkat is also an adjunct faculty and teaches CS courses remotely at the University of Houston. He is author of ".NET Gotchas," coauthor of 2007 Jolt Productivity Award winning "Practices of an Agile Developer," author of "Programming Groovy: Dynamic Productivity for the Java Developer" and "Programming Scala: Tackle Multi-Core Complexity on the Java Virtual Machine" (Pragmatic Bookshelf).
The full title of this talk reveals its grand aims: Game Theory and Software Development: Explaining Brinksmanship, Irrationality, and Other Selfish Sins
Once in a while, a topic, seemingly orthogonal to software development, presents a great opportunity to showcase how engineering can benefit from knowledge of seemingly more social disciplines. In this talk, the fundamental principles of economics' Game Theory are compared to often inexplicable behaviors and decisions we frequently observe in programming projects.
Then, with a good Game Theory vocabulary under your belt, several standard games are studied in a manner that will allow you to better manipulate the inputs. These games are present in web framework choices, project planning and estimation, and even team decisions on which bug to solve first. With a good understanding of Game Theory, you'll be able to understand and influence what you previously labeled 'irrational behavior.' It turns out to be far from irrational when examined in the context of self-preservation. Once these behaviors are understood, you will be able to ethically influence the outcomes to your personal and corporate advantage.
Matthew McCullough is an energetic 15 year veteran of enterprise software development, open source education, and co-founder of Ambient Ideas, LLC, a Denver consultancy. Matthew currently is a trainer for GitHub.com, author of the Git Master Class series for O'Reilly, speaker at over 30 national and international conferences, author of three of the top 10 DZone RefCards, and President of the Denver Open Source Users Group. His current topics of research center around project automation: build tools (Maven, Leiningen, Gradle), distributed version control (Git), Continuous Integration (Hudson) and Quality Metrics (Sonar). Matthew resides in Denver, Colorado with his beautiful wife and two young daughters, who are active in nearly every outdoor activity Colorado has to offer.
We are at a critical nexus point in the history of web design: the web is finally coming of age with respect to increasing sophistication of the structure and presentation of visual information, the standardization of technologies to more easily create and display this information, physical devices that make this information easily accessible, and finally growing social connectivity. The confluence of these factors creates an improved platform and foundation upon which to start designing user interfaces that create user affinity by being beautiful, easy to use and delightful -- and responsive to various devices through which users access sites and applications.
In this session, we?ll explore just how far we?ve come since the beginning of the web and how leveraging newer technologies is changing the face of web design towards emotional, experience, and responsive design, and how the lastest platforms are redefining how we use and experience websites now, and what we will expect in the future. It?s time to examine what we consider the ?standard? web or application user experience and discover ways to transform a good user interface and experience -- on any device -- into a great one.
Denise R. Jacobs is a writer, speaker, designer, and educator on many things web. She is author of The CSS Detective Guide, and is a co-author for InterAct with Web Standards: A Holistic Approach to Web Design. She is a Web Solutions Consultant based in Miami, Florida,
As our web applications become more interactive, frameworks like jQuery or dojo are "necessary but not sufficient".
In this session we'll do a whirlwind tour of the next generation of javascript frameworks - from backbone, sammy, and batman to Sencha touch and SproutCore. We'll look at the strengths and weaknesses of each and how you would choose between them for various desktop and mobile web applications.
Peter is Senior VP Engineering and Senior Fellow at General Assembly, a campus for technology, design, and entrepreneurship. He is responsible for hiring and managing an engineering team and is involved in the development and teaching of the technology curriculum.
Peter is a regular presenter at national and international conferences on ruby, nodejs, NoSQL (especially MongoDB and neo4j), cloud computing, software craftsmanship, java, groovy, javascript, and requirements and estimating. He is on the program committee for Code Generation in Cambridge, England and the Domain Specific Modeling workshop at SPLASH (was ooPSLA) and reviews and shepherds proposals for the BCS SPA conference.
He has presented at a range of conferences including DLD conference, ooPSLA, RubyNation, SpringOne2GX, Code Generation, Practical Product Lines, the British Computer Society Software Practices Advancement conference, DevNexus, cf.Objective(), CF United, Scotch on the Rocks, WebDU, WebManiacs, UberConf, the Rich Web Experience and the No Fluff Just Stuff Enterprise Java tour.
He has been published in IEEE Software, Dr. Dobbs, IBM developerWorks, Information Week, Methods & Tools, Mashed Code, NFJS the Magazine and GroovyMag. He's currently writing a book on managing software development for Pearson.
He is an organizer of the CTO School http://www.ctoschool.org - an organization in NYC devoted to creating the next generation of technical leaders. He also organizes the node.js meetup in New York and co-organizes the Domain Driven Design and Grails meetups.
He is a regular instructor at General Assembly in New York. His presentations cover managing software development, NoSQL, mobile development, Javascript development, Twitter Bootstrap and Javascript frameworks.
He tweets regularly as @peterbell.
In this half-day session, Molly will provide an overview of whereHTML5 is within the W3C process, what its originators at the WHAT-WG are thinking about, and then jump on in to the really interesting topics of the day. Continuing deeper, we'll look at HTML5 media elements and APIs including video, audio and canvas; we'll examinerelated technologies such as Scalable Vector Graphics (SVG) and its role within contemporary site and application design; and finally, wrap up with a variety of related work in geolocation and device-oriented standards such as is emerging via other standards bodies.
Takeaways include:
Earlier in life, Molly avoided a regular job including those silly start-up ventures and chose instead to write a lot of books and articles and stuff on Web standards, and talk a lot about them, too. She now avoids the former, while the latter is an ongoing inevitability.
To learn more about Molly and her work, you can check out her blog at http://molly.com/ or interact with her on Twitter @mollydotcom. Better yet, come have a chat F2F at RWX Fort Lauderdale 2011!
Grails is emerging as a standard JVM web framework in environments ranging from startups to the enterprise. It's a full-stack solution build on rock-solid components, fully relying on convention over configuration, and using the best application language the JVM has yet seen: Groovy. This is the place to be for web apps on the JVM.
In this introductory talk, we'll get a whirlwind introduction to Grails, visiting seven things you need to know about the framework to get started.
Tim is a full-stack generalist and passionate teacher who loves coding, presenting, and working with people. He believes the best developer is one who is well-informed of specifics and can also make deep connections between software development and the broader world. He has recently been exploring non-relational data stores, continuous deployment, and how software architecture should resemble an ant colony.
His firm, the August Technology Group, helps clients with product development, technology consulting, and technology upgrade projects atop the JVM. The August Group's technology preferences reflect the generalist sensibilities of its founder, and its development practices are always lightweight, self-improving, and humanizing by design.
Tim is a speaker internationally and on the No Fluff Just Stuff tour in the United States, and is co-president of the Denver Open Source User Group in the Denver area, co-author of the DZone Clojure RefCard, co-presenter of the best-selling O'Reilly Git Master Class, co-author of Building and Testing with Gradle, and a member of the O'Reilly Expert Network.
He lives in Littleton, CO with the wife of his youth and their three children.
Programmers often complain that it is hard to automate unit and acceptance tests for JavaScript. Testability is a design issue and with some discipline and careful design we can realize good automated tests.
In this presentation we'll learn how to automate the testing of JavaScript using both TDD and BDD tools.
Dr. Venkat Subramaniam, founder of Agile Developer, Inc., has trained and mentored thousands of software developers in the US, Canada, Europe, and Asia. Venkat helps his clients effectively apply and succeed with agile practices on their software projects, and speaks frequently at international conferences and user groups. Venkat is also an adjunct faculty and teaches CS courses remotely at the University of Houston. He is author of ".NET Gotchas," coauthor of 2007 Jolt Productivity Award winning "Practices of an Agile Developer," author of "Programming Groovy: Dynamic Productivity for the Java Developer" and "Programming Scala: Tackle Multi-Core Complexity on the Java Virtual Machine" (Pragmatic Bookshelf).
The Dojo Toolkit is one of the original Ajax toolkits, and has reinvented itself again through a series of improvements in modularity, performance, API improvements, adjustments for HTML5 and mobile platforms, and much more to provide a stellar platform for building web apps.
Learn how Dojo's adoption of CommonJS AMD makes it a perfect toolkit for including source code from other microtoolkits, to create the most extremely optimized JavaScript toolkit for your application, big or tiny. Learn about the wide variety of new features and approaches that are available now in Dojo, as well as the forthcoming Dojo 2.0 release.
Dylan Schiemann is CEO of SitePen and co-founder of the Dojo Toolkit, an open source JavaScript toolkit for rapidly building web sites and applications, and is an expert in the technologies and opportunities of the Open Web. Under his guidance, SitePen has grown from a small development firm to a leading provider of inventive tools, skilled software engineers, knowledgeable consulting services, and top-notch training and advice. Dylan is a contributing author to the O'Reilly book "Even Fast Web Sites". Dylan's commitment to R&D has enabled SitePen to be a major contributor to or creator of pioneering open source web development toolkits and frameworks like Dojo, cometD, DWR, and Persevere. Prior to SitePen, Dylan developed web applications for companies like Renkoo, Informatica, Security FrameWorks and Vizional Technologies. He is a co-founder of Comet Daily, LLC, a board member at Dojo Foundation and a member of the Advisory Board at Aptana. Dylan earned his Masters in Physical Chemistry from UCLA and his B.A. in Mathematics from Whittier College.
If you've gotten your feet wet with Grails. You've talked to friends, you've done some reading, you've seen a presentation that sold you on the awesomness of the framework. What's next? Why, some hacking, of course!
Come to this 90-minute workshop ready to create a persistent domain model, build a scaffolded UI, modify page layouts, and maybe even build some Ajax into your new web app. See how quickly you can get started building robust, scalable web apps for the JVM.
Bring a laptop of be prepared to pair with a friend. Please have a current release of Grails (http://grails.org/Download) downloaded and unzipped.
Tim is a full-stack generalist and passionate teacher who loves coding, presenting, and working with people. He believes the best developer is one who is well-informed of specifics and can also make deep connections between software development and the broader world. He has recently been exploring non-relational data stores, continuous deployment, and how software architecture should resemble an ant colony.
His firm, the August Technology Group, helps clients with product development, technology consulting, and technology upgrade projects atop the JVM. The August Group's technology preferences reflect the generalist sensibilities of its founder, and its development practices are always lightweight, self-improving, and humanizing by design.
Tim is a speaker internationally and on the No Fluff Just Stuff tour in the United States, and is co-president of the Denver Open Source User Group in the Denver area, co-author of the DZone Clojure RefCard, co-presenter of the best-selling O'Reilly Git Master Class, co-author of Building and Testing with Gradle, and a member of the O'Reilly Expert Network.
He lives in Littleton, CO with the wife of his youth and their three children.
With the rise of the NoSQL movement, a whole new crop of different ways to store data suddenly became available to the Java developer. Unfortunately,what didn't come with them was an owner's manual. CouchDB, for example, was the first of the NoSQL databases to be named as such, and offers features not found in the traditional RDBMS: A distributed, robust, incremental replication document-oriented database server with bi-directional conflict detection and management, accessible via a RESTful JSON API, stored ad-hoc and schema-free with a flat address space, that is both query-able and index-able, featuring a table oriented reporting engine that uses JavaScript as a query language. (With a list of buzzwords like that, what's not to love?)
In this session, we'll look at CouchDB, how to set it up, store data to it, retrieve data from it, and in general figure out where it fits within your next project.
Ted Neward is an Architectural Consultant with Neudesic, LLC as well as the Principal with Neward & Associates. He speaks on the conference circuit discussing Java, .NET and XML service technologies, focusing on Java-.NET interoperability, programming languages, and virtual machine technologies. He has written several widely-recognized books in both the Java and .NET space, including the recently- released "Professional F#" and widely-acclaimed "Effective Enterprise Java". He lives in the Pacific Northwest.
In this half-day session, Molly will provide an overview of whereHTML5 is within the W3C process, what its originators at the WHAT-WG are thinking about, and then jump on in to the really interesting topics of the day. Continuing deeper, we'll look at HTML5 media elements and APIs including video, audio and canvas; we'll examinerelated technologies such as Scalable Vector Graphics (SVG) and its role within contemporary site and application design; and finally, wrap up with a variety of related work in geolocation and device-oriented standards such as is emerging via other standards bodies.
Takeaways include:
Earlier in life, Molly avoided a regular job including those silly start-up ventures and chose instead to write a lot of books and articles and stuff on Web standards, and talk a lot about them, too. She now avoids the former, while the latter is an ongoing inevitability.
To learn more about Molly and her work, you can check out her blog at http://molly.com/ or interact with her on Twitter @mollydotcom. Better yet, come have a chat F2F at RWX Fort Lauderdale 2011!
Maybe you've wanted to dive in to CSS3, but have held back because you just didn't think it was ready. Don't be fooled, CSS3 isn't the future, it's the present, and is ripe for the pickin' and is ready to respond to display your sites in multiple devices right now.
This session will touch upon the gamut of CSS3 properties from colors, web fonts, and visual effects, to transitions, animations and the foundations of responsive design: flexible grids and images, and media queries. If you aren't yet using CSS3 and haven't wrapped your head around becoming responsive, this workshop will give you the inspiration and resources to go forth and implement the new properties and practices with confidence.
Denise R. Jacobs is a writer, speaker, designer, and educator on many things web. She is author of The CSS Detective Guide, and is a co-author for InterAct with Web Standards: A Holistic Approach to Web Design. She is a Web Solutions Consultant based in Miami, Florida,
Javascript on the server. OK, cool. So what? Node.js isn't about javascript any more than the web is about http headers. With node.js you can create asynchronous, non-blocking web servers than can easily handle thousands or even tens of thousands of connections - with a single thread.
If you're creating the next generation of interactive web and mobile applications which need to connect back to your server on a regular basis, node.js is a technology you can't afford to ignore.
Peter is Senior VP Engineering and Senior Fellow at General Assembly, a campus for technology, design, and entrepreneurship. He is responsible for hiring and managing an engineering team and is involved in the development and teaching of the technology curriculum.
Peter is a regular presenter at national and international conferences on ruby, nodejs, NoSQL (especially MongoDB and neo4j), cloud computing, software craftsmanship, java, groovy, javascript, and requirements and estimating. He is on the program committee for Code Generation in Cambridge, England and the Domain Specific Modeling workshop at SPLASH (was ooPSLA) and reviews and shepherds proposals for the BCS SPA conference.
He has presented at a range of conferences including DLD conference, ooPSLA, RubyNation, SpringOne2GX, Code Generation, Practical Product Lines, the British Computer Society Software Practices Advancement conference, DevNexus, cf.Objective(), CF United, Scotch on the Rocks, WebDU, WebManiacs, UberConf, the Rich Web Experience and the No Fluff Just Stuff Enterprise Java tour.
He has been published in IEEE Software, Dr. Dobbs, IBM developerWorks, Information Week, Methods & Tools, Mashed Code, NFJS the Magazine and GroovyMag. He's currently writing a book on managing software development for Pearson.
He is an organizer of the CTO School http://www.ctoschool.org - an organization in NYC devoted to creating the next generation of technical leaders. He also organizes the node.js meetup in New York and co-organizes the Domain Driven Design and Grails meetups.
He is a regular instructor at General Assembly in New York. His presentations cover managing software development, NoSQL, mobile development, Javascript development, Twitter Bootstrap and Javascript frameworks.
He tweets regularly as @peterbell.
Using the same techniques we've learned over the last decade of Java and other OO languages, find out how to think about and organize a large JavaScript code base intelligently.
It often only took one or two lines of JavaScript to implement that site counter we were all so proud to show off a decade ago. Now, creating advanced web applications requires literally thousands of lines of complex JavaScript and, with the popularity of Node.js, the server side is equally daunting.
We know how to handle big projects in Java, Ruby, Python, and the like. We know how to organize our code and use frameworks to help the process. But how do we apply that knowledge to JavaScript?
In this talk, Johnny will explain and demonstrate tools, practices, frameworks, and patterns that work to making large JavaScript applications understandable, maintainable and fun!
Johnny is a principal engineer at Time Warner Cable in the Web Services group with over fifteen years of web application development. He is a generalist with experience in all layers of an application from the database to the UI. Currently, the projects he works on see traffic in the millions on a monthly basis, and the work has extended out to other client platforms including the popular Time Warner Cable iPad live video streaming application which recently won a engineering award from the Academy of Television Arts and Sciences.
"That's really useful, but it looks like it was designed by a developer."
Ever heard that? Want to fix it? Think you don't have design ability?
Here's a dirty little secret, design is a skill, it can be learned. This session will take you through the basics of design theory for applications. By the end you should be on your way to building not just useful apps that people have to use, but awesome apps that people love to use.
Topics to include:
Terry Ryan is a Worldwide Developer Evangelist for Adobe. The job basically entails helping developers using Adobe technologies to be successful. His focus is on web and mobile technologies including expertise in both Flash and HTML. Previous to that, he spent a decade working in various technical roles at the Wharton School at the University of Pennsylvania.
Terry is also the author of Driving Technical Change, a Pragmatic Bookshelf title. It's about convincing reluctant co-workers to adopt new tools and ideas.
He blogs at http://terrenceryan.com/blog and is tpryan on Twitter.
Sure, Ajax might not be the hardest thing you'll have to do on your current project, but that doesn't mean we can't use a little help here and there. While there are a plethora of excellent choices in the Ajax library space, jQuery is fast becoming one of the most popular. In this talk, we'll see why. In addition to it's outstanding support for CSS selectors, dirt simple DOM manipulation, event handling and animations, jQuery also supports a rich ecosystem of plugins that provide an abundance of top notch widgets. Using various examples, this talk will help you understand what jQuery can do so you can see if it's right for your next project.
Once we've established a solid understanding of just what jQuery can do out of the box, we'll delve deeper into the plugin space. jQuery is designed to be extended and while odds are there's a plugin that meets your needs, sometimes only a homegrown solution fits. Starting with a couple of very simple examples, we'll work our way up to more full fledged widgets.
Nathaniel T. Schutta is a senior software engineer focussed on making usable applications. A proponent of polyglot programming, Nate has written two books on Ajax and speaks regularly at various worldwide conferences, No Fluff Just Stuff symposia, universities, and Java user groups. In addition to his day job, Nate is an adjunct professor at the University of Minnesota where he teaches students to embrace dynamic languages.
The browser has become an increasingly important platform for enterprise development, and GWT has long appealed to developers looking to migrate desktop apps to the Web. There are still limitations of Web apps vs. desktop apps, but HTML 5 has addressed many of these.
This session will primarily cover HTML5 features of interest to mobile and enterprise developers, including the FileSystem API and desktop-like file handling, AppCache, local storage, GeoLocation, and determining device form factor. We'll also take a look at Maven integration and new features in the latest Google Plugin for Eclipse.
David Chandler works with the Google Developer Tools Team in Atlanta. An electrical engineer by training, Chandler got hooked on developing database Web applications in the days of NCSA Mosaic and has since written Web applications professionally in a variety of languages, including C, perl, ksh, ColdFusion, Java, JSF, GWT, and Dart. Prior to joining Google, Chandler worked on Internet banking applications with Intuit and launched a non-profit startup built with GWT and AppEngine. Chandler holds a patent on a method of organizing hierarchical data in a relational database and blogs about Java Web development at turbomanage.wordpress.com.
Ratpack is a hyper-lightweight, Groovy-based web framework for developing and deploying simple apps in a hurry. Like its high-achieving cousin Gaelyk, it provides Groovy developers with a way to create web apps without days of iteration zero setup time.
In this talk, we'll look over Ratpack's very simple structure and live-code a small, practical example application. We'll look at how to evolve simple controller logic, how to manage templates, how to persist data, and how to deploy Ratpack applications to the web. The Java world needs ways to build small applications in a hurry, and Ratpack is the latest way to do it!
Tim is a full-stack generalist and passionate teacher who loves coding, presenting, and working with people. He believes the best developer is one who is well-informed of specifics and can also make deep connections between software development and the broader world. He has recently been exploring non-relational data stores, continuous deployment, and how software architecture should resemble an ant colony.
His firm, the August Technology Group, helps clients with product development, technology consulting, and technology upgrade projects atop the JVM. The August Group's technology preferences reflect the generalist sensibilities of its founder, and its development practices are always lightweight, self-improving, and humanizing by design.
Tim is a speaker internationally and on the No Fluff Just Stuff tour in the United States, and is co-president of the Denver Open Source User Group in the Denver area, co-author of the DZone Clojure RefCard, co-presenter of the best-selling O'Reilly Git Master Class, co-author of Building and Testing with Gradle, and a member of the O'Reilly Expert Network.
He lives in Littleton, CO with the wife of his youth and their three children.
HTML 5 has introduced us to the Canvas API, 2D graphics and the pleasures of plugin-free video and audio playback. One of the next hurdles we will face is native support for 3D graphics for simulations, visualizations and games.
WebGL is an early look at supporting OpenGL ES 2.0 in the canvas in most modern browsers through JavaScript APIs.
This will be an example-driven workshop that will cover the basics of 3D graphics, OpenGL and where it is going on the Web.
Brian Sletten is a liberal arts-educated software engineer with a focus on using and evangelizing forward-leaning technologies. He has a background as a system architect, a developer, a security consultant, a mentor, a team lead, an author and a trainer and operates in all of those roles as needed. His experience has spanned the online game, defense, finance, academic, hospitality, retail and commercial domains. He has worked with a wide variety of technologies such as network matrix switch controls, 3D simulation/visualization, Grid Computing, P2P and Semantic Web-based systems. He has a B.S. in Computer Science from the College of William and Mary. He is President of Bosatsu Consulting, Inc. and lives in Los Angeles, CA.
He focuses on web architecture, resource-oriented computing, social networking, the Semantic Web, scalable systems, security consulting and other technologies of the late 20th and early 21st Centuries.
Spock is an awesome tool that exploits Groovy AST transformation to provide elegant, fluent syntax for writing automated tests.
In this presentation we will learn how to use Spock to test both Java and Groovy code. We will taken an example oriented approach to learning the strengths of this powerful testing tool.
Dr. Venkat Subramaniam, founder of Agile Developer, Inc., has trained and mentored thousands of software developers in the US, Canada, Europe, and Asia. Venkat helps his clients effectively apply and succeed with agile practices on their software projects, and speaks frequently at international conferences and user groups. Venkat is also an adjunct faculty and teaches CS courses remotely at the University of Houston. He is author of ".NET Gotchas," coauthor of 2007 Jolt Productivity Award winning "Practices of an Agile Developer," author of "Programming Groovy: Dynamic Productivity for the Java Developer" and "Programming Scala: Tackle Multi-Core Complexity on the Java Virtual Machine" (Pragmatic Bookshelf).
The only thing better than talking about Ratpack is hacking with Ratpack. Come to this workshop for 90 minutes of directed web development using the latest un-framework for Groovy-based web apps.
The instructor will lead you in coding features in a simple web app, but you are free to hack on your own ideas as well. You will leave the session having become famliar with Ratpack and ready to start building your own small apps with it.
Tim is a full-stack generalist and passionate teacher who loves coding, presenting, and working with people. He believes the best developer is one who is well-informed of specifics and can also make deep connections between software development and the broader world. He has recently been exploring non-relational data stores, continuous deployment, and how software architecture should resemble an ant colony.
His firm, the August Technology Group, helps clients with product development, technology consulting, and technology upgrade projects atop the JVM. The August Group's technology preferences reflect the generalist sensibilities of its founder, and its development practices are always lightweight, self-improving, and humanizing by design.
Tim is a speaker internationally and on the No Fluff Just Stuff tour in the United States, and is co-president of the Denver Open Source User Group in the Denver area, co-author of the DZone Clojure RefCard, co-presenter of the best-selling O'Reilly Git Master Class, co-author of Building and Testing with Gradle, and a member of the O'Reilly Expert Network.
He lives in Littleton, CO with the wife of his youth and their three children.
Sure, Ajax might not be the hardest thing you'll have to do on your current project, but that doesn't mean we can't use a little help here and there. While there are a plethora of excellent choices in the Ajax library space, jQuery is fast becoming one of the most popular. In this talk, we'll see why. In addition to it's outstanding support for CSS selectors, dirt simple DOM manipulation, event handling and animations, jQuery also supports a rich ecosystem of plugins that provide an abundance of top notch widgets. Using various examples, this talk will help you understand what jQuery can do so you can see if it's right for your next project.
Once we've established a solid understanding of just what jQuery can do out of the box, we'll delve deeper into the plugin space. jQuery is designed to be extended and while odds are there's a plugin that meets your needs, sometimes only a homegrown solution fits. Starting with a couple of very simple examples, we'll work our way up to more full fledged widgets.
Nathaniel T. Schutta is a senior software engineer focussed on making usable applications. A proponent of polyglot programming, Nate has written two books on Ajax and speaks regularly at various worldwide conferences, No Fluff Just Stuff symposia, universities, and Java user groups. In addition to his day job, Nate is an adjunct professor at the University of Minnesota where he teaches students to embrace dynamic languages.
A successful application has to focus on three dimensions?value (business), design (engineering) and usability. Usability is not only about the wow factor. It is about making the application easier and intuitive to use. In this presentation we will learn the fundamentals of creating a usable application. We will look at some basic dos and don't. These will help you move forward from being a programmer to a good application developer.
How do you tell a good App from a bad one? Why bother about interfaces? Practices to avoid Focusing on creating good user experience.
Dr. Venkat Subramaniam, founder of Agile Developer, Inc., has trained and mentored thousands of software developers in the US, Canada, Europe, and Asia. Venkat helps his clients effectively apply and succeed with agile practices on their software projects, and speaks frequently at international conferences and user groups. Venkat is also an adjunct faculty and teaches CS courses remotely at the University of Houston. He is author of ".NET Gotchas," coauthor of 2007 Jolt Productivity Award winning "Practices of an Agile Developer," author of "Programming Groovy: Dynamic Productivity for the Java Developer" and "Programming Scala: Tackle Multi-Core Complexity on the Java Virtual Machine" (Pragmatic Bookshelf).
JavaScript popularity is exploding. There have been a ton of analysis, testing and reporting tools developed recently to help us keep our JS more maintainable. Those tools are of no use unless they're run regularly to keep us informed about our code health. That's where Jenkins comes in. You know it's a great CI tool for managing your JVM/Ruby/.NET projects, so let's take it a step further and extend these benefits to your JavaScript.
In this talk, we will review how to integrate JavaScript analysis and testing tools with a build, talk about how to setup Jenkins to run your build and then about the plugins and scripts that enable useful reporting on your JavaScript code. Having some familiarity with testing your JavaScript will help, but isn't required.
Eric writes high-performance web applications with a variety of platforms like Grails, HBase, Node.js and LIFT. He also maintains some interesting Javascript applications like mapping customer downloads, installations and registrations in real-time with Google Maps and a tool that helps debug Javascript in all web browsers (stacktracejs.org).
He often speaks at user groups about Javascript, Hadoop, and other miscellany.
He actively develops and maintains several OSS projects like (CSS Lint) a couple Gradle plugins, Javascript tools on GitHub, and a blog with 1500+ subscribers (eriwen.com).
Eric lives in Westminster, CO, with his wife, Erika and two insane mutts. He tends to interact with other community members via Twitter (@eriwen)
We will be going through a handful of strange and seemingly anomalous JavaScript programming puzzles in the style of Joshua Bloch's entertaining and enlightening game show.
The goal of the presentation is to highlight some of the less understood pieces of JavaScript in an engaging format. Understanding some of the subtle nuances of the language will allow developers to deliver cleaner, more bug-free code. Come to see how well you do at answering these puzzles.
Gabriel Dayley is a senior software developer for the LDS Church where he has been influential in developing rich web applications using GWT. He is the founder and manager of the "Utah Google Technology User Group" and enjoys interacting with others about technology. He has been developing in Java for over 10 years and has served on the board for the Utah Java User Group. He has B.S in Computer Science from Utah Valley University and currently resides in Lehi, Utah.
Thomas A. Valletta, Open Web Evangelist, Enterprise Architect, and hack has been developing for the web for fourteen years. His clients range across industries including defence, healthcare, technology, e-commerce, human resources and religion. He has professionally developed native applications for Android, iPhone, WebOS, Blackberry, and Windows. He has engineered solutions using Java, .Net, PHP, JavaScript, Objective C, VBScript and Commodore Basic (I am pretty sure that those last two don't count). He lives outside of Salt Lake City, Utah with his wife and four children.
So you already know and love Spock, the Enterprise ready testing framework, but want to know how to make the most of it and take your testing to the next level? Then this talk is for you. Even if you're new to Spock, but are interested in making your testing more effective this talk is for you.
We'll start with how the combination of Spock and the Groovy language makes it easy to bring the concept of ?executable specifications? to the realm of unit testing, without the ceremony but with all of the benefits, and why this is so important to the health of your system.
From there we'll discuss extending Spock through its own Extension API and support for JUnit rules, which is one way to make your tests much more expressive and maintainable.
We'll close with Spock's seamless integration with Grails 2.0, and some hidden Spock treasures that help you get even more out of your testing.
Luke Daley is a member of the Gradleware engineering team. At Gradleware Luke works on Gradle (A JVM based build automation tool) and helps teams reach new levels of project automation and quality.
Luke is the lead of the Geb project (a productivity focussed Groovy browser automation/web testing tool) project which he created in 2010. You'll also find Luke contributing to other Open Source projects such as Grails (a Groovy web development framework), Spock (a next generation testing framework for the JVM) and anything else that catches his attention. With a ?results over rhetoric? ethos, Luke's focus is on tools that empower software professionals to deliver and innovate, not try to save them from themselves.
Originally from Australia, Luke now resides in London where he spreads his time among work, software crafstmanship, musicianship and cursing the local weather.
We are far from the early days of ugly HTML. We have sophisticated visualization tools available to us now to help our users consume complex data in attractive and informative ways.
Come hear how you can adopt these visualization systems (calling them libraries is inappropriate) today.
This talk will introduce:
Brian Sletten is a liberal arts-educated software engineer with a focus on using and evangelizing forward-leaning technologies. He has a background as a system architect, a developer, a security consultant, a mentor, a team lead, an author and a trainer and operates in all of those roles as needed. His experience has spanned the online game, defense, finance, academic, hospitality, retail and commercial domains. He has worked with a wide variety of technologies such as network matrix switch controls, 3D simulation/visualization, Grid Computing, P2P and Semantic Web-based systems. He has a B.S. in Computer Science from the College of William and Mary. He is President of Bosatsu Consulting, Inc. and lives in Los Angeles, CA.
He focuses on web architecture, resource-oriented computing, social networking, the Semantic Web, scalable systems, security consulting and other technologies of the late 20th and early 21st Centuries.
In 2009, 20% of people said they would leave after waiting 5 seconds for a mobile site to load. Today, that number is 74%. In spite of hardware limitations, network connectivity and latency issues, mobile users expect a fast, responsive mobile experience. It will be the sites that can provide their users the content they need quickly and efficiently that will be rewarded with user loyalty.
In this session, we'll identify some of the unique performance bottlenecks that mobile presents. We'll take a look at some of the tools for identifying those issues as well as how we can go about fixing them. We'll explore the latest in mobile performance tools and techniques in order to arm ourselves with the information we will need to give our users the faster experience they want.
Tim Kadlec is web developer living and working in northern Wisconsin with a propensity for efficient, standards-based front-end development. His diverse background working with small companies to large publishers and industrial corporations has allowed him to see how these standards can be effectively utilized for businesses of all sizes.
His current interests include creating cross-platform sites and applications using the open web stack and improving the state of performance optimization on the web.
He sporadically writes about a variety of topics at timkadlec.com. You can also find him sharing his thoughts in a briefer format on @tkadlec. Tim also curates Breaking Development, one of the first conferences dedicated to design and development for mobile devices using web technologies.
Modern Web apps are rich, snappy, and work offline and mobile, too. In this talk, we'll look at the frameworks and HTML5 features that make these possible and introduce DART, a new language for structured Web programming.
In particular, we'll take a look at the motivation for DART, language syntax and features, the DART Editor, using the dartc JS compiler, and improvements to the DOM. We'll also discuss DART in relation to JS and GWT.
David Chandler works with the Google Developer Tools Team in Atlanta. An electrical engineer by training, Chandler got hooked on developing database Web applications in the days of NCSA Mosaic and has since written Web applications professionally in a variety of languages, including C, perl, ksh, ColdFusion, Java, JSF, GWT, and Dart. Prior to joining Google, Chandler worked on Internet banking applications with Intuit and launched a non-profit startup built with GWT and AppEngine. Chandler holds a patent on a method of organizing hierarchical data in a relational database and blogs about Java Web development at turbomanage.wordpress.com.
Improved browser support of CSS3 has allowed us to build a richer web with visual treatments like web fonts, animations, transformations, gradients, transparency and drop-shadows. But with great power comes great responsibility. Just because you can add a skewed animated rainbow with drop shadow to your site doesn't mean you should.
In this session we'll look at what's really cool (pun intended) in CSS3 by making snow with CSS3. Yes, we'll cover transitions, transforms, keyframes and more. You'll have to restrain yourself, though. But just because you can, doesn't mean you should.
Estelle Weyl started her professional life in architecture, then managed teen health programs. In 2000, she took the natural step of becoming a web standardista. She has consulted for Kodakgallery, Yahoo! and Apple, among others. Estelle shares esoteric tidbits learned while programming CSS, JavaScript and XHTML in her blog at http://evotech.net/blog and provides tutorials and detailed grids of CSS3 and HTML5 browser support in her blog at http://www.standardista.com. She is the author of HTML5, CSS3, and JavaScript for Mobile (O'Reilly, October 2011) and HTML5 and CSS3 for the Real World (Sitepoint, May 2011). While not coding, she works in construction, de-hippifying her 1960?s throwback abode.
Geb is a browser automation solution for Groovy. It brings together the power of WebDriver, the elegance of jQuery content selection, the robustness of Page Object modelling and the expressiveness of the Groovy language. Geb enables more expressive, more concise, and (very importantly) more maintainable web tests.
In this session we'll explore the foundations of Geb and illustrate how it uses the language features of Groovy to make web automation and testing productive and effective. After exploring the basics we'll explore Geb's rich Content DSL and discuss patterns for achieving maintainable tests. We'll also look at how it combines with Spock, the Enterprise ready testing framework, to enable low cost executable specifications that describe user behaviour, not browser details.
Luke Daley is a member of the Gradleware engineering team. At Gradleware Luke works on Gradle (A JVM based build automation tool) and helps teams reach new levels of project automation and quality.
Luke is the lead of the Geb project (a productivity focussed Groovy browser automation/web testing tool) project which he created in 2010. You'll also find Luke contributing to other Open Source projects such as Grails (a Groovy web development framework), Spock (a next generation testing framework for the JVM) and anything else that catches his attention. With a ?results over rhetoric? ethos, Luke's focus is on tools that empower software professionals to deliver and innovate, not try to save them from themselves.
Originally from Australia, Luke now resides in London where he spreads his time among work, software crafstmanship, musicianship and cursing the local weather.
Awesome acceptance testing with Cucumber can make your projects run more smoothly, your website have less bugs and your development process run more efficiently.
What we will cover is how to use Cucumber to get a clear executable definition of done for each of your stories to ensure that done is really done. We'll look at how to write cucumber tests that are meaningful and not brittle and how to get "just enough" coverage at the acceptance test level by creating a "testing pyramid". Whether you've heard about cucumber but don't know how or why you'd add it to your projects or you've had problems using cucumber in the past, we'll look how highly functioning project teams are using Cucumber to deliver software more quickly, effectively and enjoyably.
Peter is Senior VP Engineering and Senior Fellow at General Assembly, a campus for technology, design, and entrepreneurship. He is responsible for hiring and managing an engineering team and is involved in the development and teaching of the technology curriculum.
Peter is a regular presenter at national and international conferences on ruby, nodejs, NoSQL (especially MongoDB and neo4j), cloud computing, software craftsmanship, java, groovy, javascript, and requirements and estimating. He is on the program committee for Code Generation in Cambridge, England and the Domain Specific Modeling workshop at SPLASH (was ooPSLA) and reviews and shepherds proposals for the BCS SPA conference.
He has presented at a range of conferences including DLD conference, ooPSLA, RubyNation, SpringOne2GX, Code Generation, Practical Product Lines, the British Computer Society Software Practices Advancement conference, DevNexus, cf.Objective(), CF United, Scotch on the Rocks, WebDU, WebManiacs, UberConf, the Rich Web Experience and the No Fluff Just Stuff Enterprise Java tour.
He has been published in IEEE Software, Dr. Dobbs, IBM developerWorks, Information Week, Methods & Tools, Mashed Code, NFJS the Magazine and GroovyMag. He's currently writing a book on managing software development for Pearson.
He is an organizer of the CTO School http://www.ctoschool.org - an organization in NYC devoted to creating the next generation of technical leaders. He also organizes the node.js meetup in New York and co-organizes the Domain Driven Design and Grails meetups.
He is a regular instructor at General Assembly in New York. His presentations cover managing software development, NoSQL, mobile development, Javascript development, Twitter Bootstrap and Javascript frameworks.
He tweets regularly as @peterbell.
You see them everywhere: "Like" buttons, "Tweet" buttons, and now there are "+1" buttons. The social networks have extended their reach beyond their own websites and into almost every web site you visit. But did you know that these simple little buttons are just the tip of the iceberg when it comes to adding social features to your website?
Several of the popular social networks (including Facebook, Twitter, and LinkedIn) provide client-side APIs that enable you to build social capabilities into you application. With these APIs, your application can not only show a simple button for your users to express their opinion, but can also let you query information about their profile, friends, interests, and much more.
In this example-driven presentation, we'll examine the client-side APIs offered by Facebook, Twitter, and LinkedIn. We'll dig even deeper than the "Like" button as we see how the APIs can be used to build rich social applications.
Craig Walls has been professionally developing software for almost 18 years (and longer than that for the pure geekiness of it). He is a senior engineer with SpringSource as the Spring Social project lead and is the author of Spring in Action and XDoclet in Action (both published by Manning) and Modular Java (published by Pragmatic Bookshelf). He's a zealous promoter of the Spring Framework, speaking frequently at local user groups and conferences and writing about Spring and OSGi on his blog. When he's not slinging code, Craig spends as much time as he can with his wife, two daughters, 4 birds and 3 dogs.
Build a Web Bowling game using HTML5, CSS, accelerometer and gyroscope, web sockets, and Box2D physics.
Hey wii bowling fans, in this workshop you will learn how to build a mobile web client that utilizes the accelerometer and gyroscope data of your smartphone to build a control for throwing objects at a remote display. We will create a node websocket server for handling the communication between the controller and the display. On the display we dig into the fantastic JavaScript Box2d physics engine to create obstacles for our remote objects to crash into. Come see just how easy this is to do and build a souvenir to take home to your kids that they really will enjoy a lot more than that starfish you were thinking of buying.
Gabriel Dayley is a senior software developer for the LDS Church where he has been influential in developing rich web applications using GWT. He is the founder and manager of the "Utah Google Technology User Group" and enjoys interacting with others about technology. He has been developing in Java for over 10 years and has served on the board for the Utah Java User Group. He has B.S in Computer Science from Utah Valley University and currently resides in Lehi, Utah.
Thomas A. Valletta, Open Web Evangelist, Enterprise Architect, and hack has been developing for the web for fourteen years. His clients range across industries including defence, healthcare, technology, e-commerce, human resources and religion. He has professionally developed native applications for Android, iPhone, WebOS, Blackberry, and Windows. He has engineered solutions using Java, .Net, PHP, JavaScript, Objective C, VBScript and Commodore Basic (I am pretty sure that those last two don't count). He lives outside of Salt Lake City, Utah with his wife and four children.
Node.js and Netty are both frameworks for building scalable network applications. While Node.js runs on Chrome's V8 JavaScript engine and Netty runs on the JVM, they both have a similar architecture for building event-driven network applications.
This presentation will compare each framework?s pros and cons and discuss their weaknesses and strengths.
Mike Heath is a principal software engineer for the LDS Church working in the core technology group. He has contributed to multiple open source projects including Apache MINA, Apache JAMES, and JBoss Netty. He has a B.S. in computer science from Utah Valley University and a M.S. in computer science from Brigham Young University.
Thomas A. Valletta, Open Web Evangelist, Enterprise Architect, and hack has been developing for the web for fourteen years. His clients range across industries including defence, healthcare, technology, e-commerce, human resources and religion. He has professionally developed native applications for Android, iPhone, WebOS, Blackberry, and Windows. He has engineered solutions using Java, .Net, PHP, JavaScript, Objective C, VBScript and Commodore Basic (I am pretty sure that those last two don't count). He lives outside of Salt Lake City, Utah with his wife and four children.
Some systems are too large to be understood entirely by any one human mind. They are composed of a diverse array of individual components capable of interacting with each other and adapting to a changing environment. As systems, they produce behavior that differs in kind from the behavior of their components. Complexity Theory is an emerging discipline that seeks to describe such phenomena previously encountered in biology, sociology, economics, and other disciplines.
Beyond new ways of looking at ant colonies, fashion trends, and national economies, complexity theory promises powerful insights to software development. The Internet?perhaps the most valuable piece of computing infrastructure of the present day?may fit the description of a complex system. Large corporate organizations in which developers are employed have complex characteristics. In this session, we'll explore what makes a complex system, what advantages complexity has to offer us, and how to harness these in the systems we build.
Tim is a full-stack generalist and passionate teacher who loves coding, presenting, and working with people. He believes the best developer is one who is well-informed of specifics and can also make deep connections between software development and the broader world. He has recently been exploring non-relational data stores, continuous deployment, and how software architecture should resemble an ant colony.
His firm, the August Technology Group, helps clients with product development, technology consulting, and technology upgrade projects atop the JVM. The August Group's technology preferences reflect the generalist sensibilities of its founder, and its development practices are always lightweight, self-improving, and humanizing by design.
Tim is a speaker internationally and on the No Fluff Just Stuff tour in the United States, and is co-president of the Denver Open Source User Group in the Denver area, co-author of the DZone Clojure RefCard, co-presenter of the best-selling O'Reilly Git Master Class, co-author of Building and Testing with Gradle, and a member of the O'Reilly Expert Network.
He lives in Littleton, CO with the wife of his youth and their three children.
In this session you'll learn about Jasmine, a behavior-driven development (BDD) framework for testing JavaScript code. Come and learn how to raise the bar for your client side testing using the BDD mindset.
In this session you'll learn:
Brian Sam-Bodden is an author, instructor, speaker and hacker that has spent over fifteen years crafting software systems. He holds dual bachelor degrees from Ohio Wesleyan University in computer science and physics and heads Integrallis http://www.integrallis.com. He is a frequent speaker at user groups and conferences nationally and abroad. Brian is the author of "Beginning POJOs: Spring, Hibernate, JBoss and Tapestry", co-author of the "Enterprise Java Development on a Budget: Leveraging Java Open Source Technologies" and a contributor to O'reilly's "97 Things Every Project Manager Should Know".
As web industry professionals, we rarely experience a shortage of creativity itself. What tends to be elusive and fleeting is inspiration - often when we need it the most for important projects. Wouldn't it be great to be able to have a reliable method to evoke and tap into creative inspiration at will to spur the process of ideation and production?
This talk will explore the concepts around the sources of inspiration and ideas and practices for eliminating blocks and accessing the spark when you need it to develop and execute great work.
Denise R. Jacobs is a writer, speaker, designer, and educator on many things web. She is author of The CSS Detective Guide, and is a co-author for InterAct with Web Standards: A Holistic Approach to Web Design. She is a Web Solutions Consultant based in Miami, Florida,
Native? Titanium? PhoneGap? How should you build a mobile app? What are the trade offs and the issues you run into? Does write one run anywhere really work, and when it doesn't, what do you have to do next?
In this session we'll look through the various alternatives for building mobile apps, providing a high level overview so you can then pick the sessions using technologies that will be most applicable to your use cases.
Peter is Senior VP Engineering and Senior Fellow at General Assembly, a campus for technology, design, and entrepreneurship. He is responsible for hiring and managing an engineering team and is involved in the development and teaching of the technology curriculum.
Peter is a regular presenter at national and international conferences on ruby, nodejs, NoSQL (especially MongoDB and neo4j), cloud computing, software craftsmanship, java, groovy, javascript, and requirements and estimating. He is on the program committee for Code Generation in Cambridge, England and the Domain Specific Modeling workshop at SPLASH (was ooPSLA) and reviews and shepherds proposals for the BCS SPA conference.
He has presented at a range of conferences including DLD conference, ooPSLA, RubyNation, SpringOne2GX, Code Generation, Practical Product Lines, the British Computer Society Software Practices Advancement conference, DevNexus, cf.Objective(), CF United, Scotch on the Rocks, WebDU, WebManiacs, UberConf, the Rich Web Experience and the No Fluff Just Stuff Enterprise Java tour.
He has been published in IEEE Software, Dr. Dobbs, IBM developerWorks, Information Week, Methods & Tools, Mashed Code, NFJS the Magazine and GroovyMag. He's currently writing a book on managing software development for Pearson.
He is an organizer of the CTO School http://www.ctoschool.org - an organization in NYC devoted to creating the next generation of technical leaders. He also organizes the node.js meetup in New York and co-organizes the Domain Driven Design and Grails meetups.
He is a regular instructor at General Assembly in New York. His presentations cover managing software development, NoSQL, mobile development, Javascript development, Twitter Bootstrap and Javascript frameworks.
He tweets regularly as @peterbell.
A Technology Radar is a tool that forces you to organize and think about near term future technology decisions, both for you and your company.
ThoughtWorks' Technical Advisory Board creates a "technolgy radar" 3 or 4 times a year. It is a working document that helps the company as a whole make decisions about what technologies are interesting and where we should be spending our time. This is a useful exercise both for you and your company. This session describes the process we use and how to adapt it to both your company and, more importantly, yourself. For career risk mitigation, you must know what the next big thing is, or at least be able to narrow it to a reasonable list. Attendees will leave with tools that enhance your filtering mechanisms for new technology and help you (and your organization) develop a cogent strategy to make good choices.
Neal is Software Architect and Meme Wrangler at ThoughtWorks, a global IT consultancy with an exclusive focus on end-to-end software development and delivery. Before joining ThoughtWorks, Neal was the Chief Technology Officer at The DSW Group, Ltd., a nationally recognized training and development firm. Neal has a degree in Computer Science from Georgia State University specializing in languages and compilers and a minor in mathematics specializing in statistical analysis. He is also the designer and developer of applications, instructional materials, magazine articles, video presentations, and author of 6 books, including the most recent The Productive Programmer. His language proficiencies include Java, C#/.NET, Ruby, Groovy, functional languages, Scheme, Object Pascal, C++, and C. His primary consulting focus is the design and construction of large-scale enterprise applications. Neal has taught on-site classes nationally and internationally to all phases of the military and to many Fortune 500 companies. He is also an internationally acclaimed speaker, having spoken at over 100 developer conferences worldwide, delivering more than 600 talks. If you have an insatiable curiosity about Neal, visit his web site at http://www.nealford.com. He welcomes feedback and can be reached at nford@thoughtworks.com.
You're a talented coder and you apply many agile practices to your daily workflow. Still, you are looking for that next boost to better keep track of information, manage your open applications, make working with the terminal more productive, recall information quickly, manage files rapidly, and produce documentation in a portable and effective manner.
This presentation will show you how to apply DevonThink, Delicious bookmarks, RSS feeds, Pinboard.in, Pomodoro, Things, LaunchBar, Bash profiles, mind maps, markdown files and spotlight filters to become a more productive developer that has a world of information sorted and accessible at a moment's notice.
This presentation focuses on developers using the Mac platform (though a few tips are portable) since Matthew has significant experience in productivity research on this platform.
Matthew McCullough is an energetic 15 year veteran of enterprise software development, open source education, and co-founder of Ambient Ideas, LLC, a Denver consultancy. Matthew currently is a trainer for GitHub.com, author of the Git Master Class series for O'Reilly, speaker at over 30 national and international conferences, author of three of the top 10 DZone RefCards, and President of the Denver Open Source Users Group. His current topics of research center around project automation: build tools (Maven, Leiningen, Gradle), distributed version control (Git), Continuous Integration (Hudson) and Quality Metrics (Sonar). Matthew resides in Denver, Colorado with his beautiful wife and two young daughters, who are active in nearly every outdoor activity Colorado has to offer.
Distributed computing is one of those problems with great potential but huge risk. The API is often messy and requires extensive efforts. However, distributed computing and network programming are here to stay and with rich client applications and mobile devices, the demand is only rising.
In this workshop we will learn how to use Netty to create high performance applications that rely heavily on network protocols.
Dr. Venkat Subramaniam, founder of Agile Developer, Inc., has trained and mentored thousands of software developers in the US, Canada, Europe, and Asia. Venkat helps his clients effectively apply and succeed with agile practices on their software projects, and speaks frequently at international conferences and user groups. Venkat is also an adjunct faculty and teaches CS courses remotely at the University of Houston. He is author of ".NET Gotchas," coauthor of 2007 Jolt Productivity Award winning "Practices of an Agile Developer," author of "Programming Groovy: Dynamic Productivity for the Java Developer" and "Programming Scala: Tackle Multi-Core Complexity on the Java Virtual Machine" (Pragmatic Bookshelf).
People are confused about the status of HTML 5. Is it ready? Is it not? What is part of the spec and what isn't? We'll talk about the situation in the "HTML 5 and the Kitchen Sink" discussion, but as always, the proof is in the pudding. We will introduce the most exciting new features of HTML 5 and its related technologies and build examples that use them.
We will work with real code covering:
The new input elements Editable content Canvas Element and its related 2D APIs for drawing and animation Audio and Video elements and how to use fallbacks for codec coverage Browser native drag and drop Local storage Web Workers Websockets The Geolocation API Web DB (SQL in the browser!) This workshop will assume no special knowledge of HTML 5 and should be accessible to any web developers.
Bring your laptops. This is a hands-on workshop.
Brian Sletten is a liberal arts-educated software engineer with a focus on using and evangelizing forward-leaning technologies. He has a background as a system architect, a developer, a security consultant, a mentor, a team lead, an author and a trainer and operates in all of those roles as needed. His experience has spanned the online game, defense, finance, academic, hospitality, retail and commercial domains. He has worked with a wide variety of technologies such as network matrix switch controls, 3D simulation/visualization, Grid Computing, P2P and Semantic Web-based systems. He has a B.S. in Computer Science from the College of William and Mary. He is President of Bosatsu Consulting, Inc. and lives in Los Angeles, CA.
He focuses on web architecture, resource-oriented computing, social networking, the Semantic Web, scalable systems, security consulting and other technologies of the late 20th and early 21st Centuries.
For as long as there has been a Spring Framework, there has been Spring MVC, a web framework built around the principals of Spring. Although it was originally designed around a deep hierarchy of controller classes and focused on HTML-oriented views, Spring MVC has evolved in the past few years to embrace an annotation-oriented model and RESTful web development.
In this workshop, we'll use Spring MVC to build the web front-end of an application. We'll start with the essentials and work our way up to try out the latest Spring MVC features in Spring 3.1. We'll explore the following Spring MVC topics:
Whether you're a Spring newbie or a long-time Spring veteran, this is your chance to get a hands-on experience with everything Spring MVC can do.
IMPORTANT!!! PRE-WORKSHOP SETUP INSTRUCTIONS!!!
In order to ensure a successful workshop, it is imperative that you arrive with the following installed on your computer:
Also, before arriving, it will save time if you have already verified this setup. As part of the verification, perform the following steps:
We will not have time during the workshop to setup your environment, so please arrive having performed these setup steps. If you need any help getting started, feel free to email craig-mvcws@habuma.com and I'll do my best to help out.
Craig Walls has been professionally developing software for almost 18 years (and longer than that for the pure geekiness of it). He is a senior engineer with SpringSource as the Spring Social project lead and is the author of Spring in Action and XDoclet in Action (both published by Manning) and Modular Java (published by Pragmatic Bookshelf). He's a zealous promoter of the Spring Framework, speaking frequently at local user groups and conferences and writing about Spring and OSGi on his blog. When he's not slinging code, Craig spends as much time as he can with his wife, two daughters, 4 birds and 3 dogs.
We've been searching for layout techniques for a long time! In fact, since the days of tables, we've not found solutions to a wide range of layout problems within the presentation layer of front-end development. Part of this is due to delays in implementation, but there's a lot to look at as we move forward.
Topics covered include CSS3 Multicolumn Layout, Grids, CSS Regions and the Flexible Box Model. Examples of these features and how they work will be provided, and resources for future study of these techniques and implementations round out the session.
Earlier in life, Molly avoided a regular job including those silly start-up ventures and chose instead to write a lot of books and articles and stuff on Web standards, and talk a lot about them, too. She now avoids the former, while the latter is an ongoing inevitability.
To learn more about Molly and her work, you can check out her blog at http://molly.com/ or interact with her on Twitter @mollydotcom. Better yet, come have a chat F2F at RWX Fort Lauderdale 2011!
The word just came down from the VP - you need a mobile app and you need it yesterday. It needs to be polished and have that design stuff too. Oh and it needs to be on all the major platforms in time for the big marketing push next month. After a moment of panic, you wonder if it's too late to become a plumber but don't worry, there's hope! More and more developers are falling in love with the "write less do more" library and for good reason; it simplifies the job of today's front end engineer. But did you know jQuery could also help you with your mobile needs as well? That's right, jQuery Mobile is a touch optimized framework designed to provide a common look and feel across a wide variety of today's mot popular platforms. In this workshop, we'll take a look at all that jQuery Mobile has to offer and we'll convert a native application to an HTML5, jQuery Mobile masterpiece.
In this workshop, we'll build a mobile app taking advantage of everything jQuery Mobile and HTML5 have to offer. In this session, we'll take a look at:
In the process of building out an app or two, we'll show you how jQuery Mobile simplifies the process of mobile app development.
Nathaniel T. Schutta is a senior software engineer focussed on making usable applications. A proponent of polyglot programming, Nate has written two books on Ajax and speaks regularly at various worldwide conferences, No Fluff Just Stuff symposia, universities, and Java user groups. In addition to his day job, Nate is an adjunct professor at the University of Minnesota where he teaches students to embrace dynamic languages.
In this workshop, you'll discover the missing link in enterprise Java development: simple, portable integration tests.
For many, developing with enterprise Java has long been an arduous undertaking because it's been a bear to test. Though development life is simple with unit tests and mocks, they only get you so far. Eventually, you need to validate that your components interact and operate properly in their intended environment--you real need integration tests.
The main obstacle is that your integration tests live in a different world than your application. We'll overcome this discrepency by adopting a component model for your tests, a service provided by Arquillian. This lab puts Arquillian in your toolbox. The goal is to allow you to make a smooth transition from unit to integration tests.
What's the secret? Arquillian, a container-oriented testing framework for TestNG and JUnit, makes testing enterprise Java applications easy by bringing your test to the runtime rather than requiring you to manage the runtime from your test. Picking up where unit tests leave off, Arquillian enables you to test real components that rely on real enterprise services in a real runtime.
We'll begin by introducing you to the fluent API provided by ShrinkWrap that is used to package a test archive, giving you fine-grained control over which resources are available to be tested. We'll work on examples that demonstrate how the test archive is deployed and executed inside standalone, embedded and remote containers. You'll work through tests that exercise a wide range of technologies, including CDI, EJB, JPA, Spring, JAX-RS, JSF, web UI tests and more.
You'll walk away confident that you can:
Join this lab to learn how simple and powerful Java enterprise testing can be.
As Principal Software Engineer at JBoss, by Red Hat, Dan serves as the JBoss Community liaison, leads the JBoss Testing Initiative and is a member of the Seam, Weld, Arquillian and ShrinkWrap projects. He authored Seam in Action (Manning), served as a representative for Red Hat on the JSR-314 Expert Group (JSF 2.0), writes for IBM developerWorks and NFJS magazine and is an internationally recognized speaker. He's appeared at major industry conferences including JavaOne, Devoxx, NFJS, JAX and Jazoon and has received recognition as a JavaOne Rock Star, a JBossWorld Top Presenter and a JAX Hall of Fame speaker.
To colleagues, Dan's known for his hard work and passion for Open Source technologies. His technical expertise includes Java frameworks (Seam, CDI, Weld, JSF, EJB 3, JPA, Hibernate, Spring), testing frameworks (Arquillian, JUnit, TestNG, Selenium), build tools (Maven 2, Gradle, Ant) and web development (Ajax, JavaScript, CSS) and more.
You can keep up with Dan's discoveries by reading his blogs at http://mojavelinux.com and http://community.jboss.org/people/dan.j.allen/blog or tracking what he's currently up to by following him on Twitter at http://twitter.com/mojavelinux.
CoffeeScript is a little language that compiles into JavaScript. Underneath all of those embarrassing braces and semicolons, JavaScript has always had a gorgeous object model at its heart. CoffeeScript is an attempt to expose the good parts of JavaScript in a simple way.
The golden rule of CoffeeScript is: "It's just JavaScript". The code compiles one-to-one into the equivalent JS, and there is no interpretation at runtime. You can use any existing JavaScript library seamlessly (and vice-versa). The compiled output is readable and pretty-printed, passes through JavaScript Lint without warnings, and runs in every JavaScript implementation.
In this session we will look at Coffescript, write some coffeescript code, and analyze the generated Javascript. We will look at how we can use it in our existing web development stack, seamlessly compiling the coffeescript into Javascript so it works in our development environment. We will also look at seamlessly using existing Javascript libraries like Prototype, Scriptaculous, and JQuery.
David Bock is a Principal Consultant at CodeSherpas, a company he founded in 2007. Mr. Bock is also the President of the Northern Virginia Java Users Group, the Editor of O'Reilly's OnJava.com website, and a frequent speaker on technology in venues such as the No Fluff Just Stuff Software Symposiums.
In January 2006, Mr. Bock was honored by being awarded the title of Java Champion by a panel of esteemed leaders in the Java Community in a program sponsored by Sun. There are approximately 100 active Java Champions worldwide.
David has also served on several JCP panels, including the Specification of the Java 6 Platform and the upcoming Java Module System.
In addition to his public speaking and training activities, Mr. Bock actively consults as a software engineer, project manager, and team mentor for commercial and government clients.
For as long as there has been a Spring Framework, there has been Spring MVC, a web framework built around the principals of Spring. Although it was originally designed around a deep hierarchy of controller classes and focused on HTML-oriented views, Spring MVC has evolved in the past few years to embrace an annotation-oriented model and RESTful web development.
In this workshop, we'll use Spring MVC to build the web front-end of an application. We'll start with the essentials and work our way up to try out the latest Spring MVC features in Spring 3.1. We'll explore the following Spring MVC topics:
Whether you're a Spring newbie or a long-time Spring veteran, this is your chance to get a hands-on experience with everything Spring MVC can do.
IMPORTANT!!! PRE-WORKSHOP SETUP INSTRUCTIONS!!!
In order to ensure a successful workshop, it is imperative that you arrive with the following installed on your computer:
Also, before arriving, it will save time if you have already verified this setup. As part of the verification, perform the following steps:
We will not have time during the workshop to setup your environment, so please arrive having performed these setup steps. If you need any help getting started, feel free to email craig-mvcws@habuma.com and I'll do my best to help out.
Craig Walls has been professionally developing software for almost 18 years (and longer than that for the pure geekiness of it). He is a senior engineer with SpringSource as the Spring Social project lead and is the author of Spring in Action and XDoclet in Action (both published by Manning) and Modular Java (published by Pragmatic Bookshelf). He's a zealous promoter of the Spring Framework, speaking frequently at local user groups and conferences and writing about Spring and OSGi on his blog. When he's not slinging code, Craig spends as much time as he can with his wife, two daughters, 4 birds and 3 dogs.
The word just came down from the VP - you need a mobile app and you need it yesterday. It needs to be polished and have that design stuff too. Oh and it needs to be on all the major platforms in time for the big marketing push next month. After a moment of panic, you wonder if it's too late to become a plumber but don't worry, there's hope! More and more developers are falling in love with the "write less do more" library and for good reason; it simplifies the job of today's front end engineer. But did you know jQuery could also help you with your mobile needs as well? That's right, jQuery Mobile is a touch optimized framework designed to provide a common look and feel across a wide variety of today's mot popular platforms. In this workshop, we'll take a look at all that jQuery Mobile has to offer and we'll convert a native application to an HTML5, jQuery Mobile masterpiece.
In this workshop, we'll build a mobile app taking advantage of everything jQuery Mobile and HTML5 have to offer. In this session, we'll take a look at:
In the process of building out an app or two, we'll show you how jQuery Mobile simplifies the process of mobile app development.
Nathaniel T. Schutta is a senior software engineer focussed on making usable applications. A proponent of polyglot programming, Nate has written two books on Ajax and speaks regularly at various worldwide conferences, No Fluff Just Stuff symposia, universities, and Java user groups. In addition to his day job, Nate is an adjunct professor at the University of Minnesota where he teaches students to embrace dynamic languages.
We've been searching for layout techniques for a long time! In fact, since the days of tables, we've not found solutions to a wide range of layout problems within the presentation layer of front-end development. Part of this is due to delays in implementation, but there's a lot to look at as we move forward.
Topics covered include CSS3 Multicolumn Layout, Grids, CSS Regions and the Flexible Box Model. Examples of these features and how they work will be provided, and resources for future study of these techniques and implementations round out the session.
Earlier in life, Molly avoided a regular job including those silly start-up ventures and chose instead to write a lot of books and articles and stuff on Web standards, and talk a lot about them, too. She now avoids the former, while the latter is an ongoing inevitability.
To learn more about Molly and her work, you can check out her blog at http://molly.com/ or interact with her on Twitter @mollydotcom. Better yet, come have a chat F2F at RWX Fort Lauderdale 2011!
Distributed computing is one of those problems with great potential but huge risk. The API is often messy and requires extensive efforts. However, distributed computing and network programming are here to stay and with rich client applications and mobile devices, the demand is only rising.
In this workshop we will learn how to use Netty to create high performance applications that rely heavily on network protocols.
Dr. Venkat Subramaniam, founder of Agile Developer, Inc., has trained and mentored thousands of software developers in the US, Canada, Europe, and Asia. Venkat helps his clients effectively apply and succeed with agile practices on their software projects, and speaks frequently at international conferences and user groups. Venkat is also an adjunct faculty and teaches CS courses remotely at the University of Houston. He is author of ".NET Gotchas," coauthor of 2007 Jolt Productivity Award winning "Practices of an Agile Developer," author of "Programming Groovy: Dynamic Productivity for the Java Developer" and "Programming Scala: Tackle Multi-Core Complexity on the Java Virtual Machine" (Pragmatic Bookshelf).
In this workshop, you'll discover the missing link in enterprise Java development: simple, portable integration tests.
For many, developing with enterprise Java has long been an arduous undertaking because it's been a bear to test. Though development life is simple with unit tests and mocks, they only get you so far. Eventually, you need to validate that your components interact and operate properly in their intended environment--you real need integration tests.
The main obstacle is that your integration tests live in a different world than your application. We'll overcome this discrepency by adopting a component model for your tests, a service provided by Arquillian. This lab puts Arquillian in your toolbox. The goal is to allow you to make a smooth transition from unit to integration tests.
What's the secret? Arquillian, a container-oriented testing framework for TestNG and JUnit, makes testing enterprise Java applications easy by bringing your test to the runtime rather than requiring you to manage the runtime from your test. Picking up where unit tests leave off, Arquillian enables you to test real components that rely on real enterprise services in a real runtime.
We'll begin by introducing you to the fluent API provided by ShrinkWrap that is used to package a test archive, giving you fine-grained control over which resources are available to be tested. We'll work on examples that demonstrate how the test archive is deployed and executed inside standalone, embedded and remote containers. You'll work through tests that exercise a wide range of technologies, including CDI, EJB, JPA, Spring, JAX-RS, JSF, web UI tests and more.
You'll walk away confident that you can:
Join this lab to learn how simple and powerful Java enterprise testing can be.
As Principal Software Engineer at JBoss, by Red Hat, Dan serves as the JBoss Community liaison, leads the JBoss Testing Initiative and is a member of the Seam, Weld, Arquillian and ShrinkWrap projects. He authored Seam in Action (Manning), served as a representative for Red Hat on the JSR-314 Expert Group (JSF 2.0), writes for IBM developerWorks and NFJS magazine and is an internationally recognized speaker. He's appeared at major industry conferences including JavaOne, Devoxx, NFJS, JAX and Jazoon and has received recognition as a JavaOne Rock Star, a JBossWorld Top Presenter and a JAX Hall of Fame speaker.
To colleagues, Dan's known for his hard work and passion for Open Source technologies. His technical expertise includes Java frameworks (Seam, CDI, Weld, JSF, EJB 3, JPA, Hibernate, Spring), testing frameworks (Arquillian, JUnit, TestNG, Selenium), build tools (Maven 2, Gradle, Ant) and web development (Ajax, JavaScript, CSS) and more.
You can keep up with Dan's discoveries by reading his blogs at http://mojavelinux.com and http://community.jboss.org/people/dan.j.allen/blog or tracking what he's currently up to by following him on Twitter at http://twitter.com/mojavelinux.
TBA
TBA
David Bock is a Principal Consultant at CodeSherpas, a company he founded in 2007. Mr. Bock is also the President of the Northern Virginia Java Users Group, the Editor of O'Reilly's OnJava.com website, and a frequent speaker on technology in venues such as the No Fluff Just Stuff Software Symposiums.
In January 2006, Mr. Bock was honored by being awarded the title of Java Champion by a panel of esteemed leaders in the Java Community in a program sponsored by Sun. There are approximately 100 active Java Champions worldwide.
David has also served on several JCP panels, including the Specification of the Java 6 Platform and the upcoming Java Module System.
In addition to his public speaking and training activities, Mr. Bock actively consults as a software engineer, project manager, and team mentor for commercial and government clients.
People are confused about the status of HTML 5. Is it ready? Is it not? What is part of the spec and what isn't? We'll talk about the situation in the "HTML 5 and the Kitchen Sink" discussion, but as always, the proof is in the pudding. We will introduce the most exciting new features of HTML 5 and its related technologies and build examples that use them.
We will work with real code covering:
The new input elements Editable content Canvas Element and its related 2D APIs for drawing and animation Audio and Video elements and how to use fallbacks for codec coverage Browser native drag and drop Local storage Web Workers Websockets The Geolocation API Web DB (SQL in the browser!) This workshop will assume no special knowledge of HTML 5 and should be accessible to any web developers.
Bring your laptops. This is a hands-on workshop.
Brian Sletten is a liberal arts-educated software engineer with a focus on using and evangelizing forward-leaning technologies. He has a background as a system architect, a developer, a security consultant, a mentor, a team lead, an author and a trainer and operates in all of those roles as needed. His experience has spanned the online game, defense, finance, academic, hospitality, retail and commercial domains. He has worked with a wide variety of technologies such as network matrix switch controls, 3D simulation/visualization, Grid Computing, P2P and Semantic Web-based systems. He has a B.S. in Computer Science from the College of William and Mary. He is President of Bosatsu Consulting, Inc. and lives in Los Angeles, CA.
He focuses on web architecture, resource-oriented computing, social networking, the Semantic Web, scalable systems, security consulting and other technologies of the late 20th and early 21st Centuries.
Every developer has their favorite tools and today when it comes to which browsers to develop in we have a few choices.
In this session we will be looking at the different dev tools that can be used in each of the popular browsers and discover their strengths and weaknesses. We will be looking at how to inspect elements in the DOM, use the JavaScript console, analyze network requests, spot problematic performance issues, tweak css and much more. Knowing how to use these tools and what they each offer can greatly increase your productivity as a developer and help you quickly troubleshoot browser issues. We will be focusing on Chrome's developer tools, Safari, Firebug and IE.
Gabriel Dayley is a senior software developer for the LDS Church where he has been influential in developing rich web applications using GWT. He is the founder and manager of the "Utah Google Technology User Group" and enjoys interacting with others about technology. He has been developing in Java for over 10 years and has served on the board for the Utah Java User Group. He has B.S in Computer Science from Utah Valley University and currently resides in Lehi, Utah.
Thomas A. Valletta, Open Web Evangelist, Enterprise Architect, and hack has been developing for the web for fourteen years. His clients range across industries including defence, healthcare, technology, e-commerce, human resources and religion. He has professionally developed native applications for Android, iPhone, WebOS, Blackberry, and Windows. He has engineered solutions using Java, .Net, PHP, JavaScript, Objective C, VBScript and Commodore Basic (I am pretty sure that those last two don't count). He lives outside of Salt Lake City, Utah with his wife and four children.
In this talk, we will learn how to write testable JavaScript code, explore different testing strategies and frameworks in code, and think about what types of solutions would be best for you.
Testing JavaScript is less straightforward than testing Java or C#. There are inconsistent implementations in different engines, a wide variety of structural patterns, and not many good examples of tested JavaScript to boot.
We will look at why the JavaScript community is so far behind in testing, patterns and practices that promote testability, and then explore different options we have for properly testing our JavaScript.
Eric writes high-performance web applications with a variety of platforms like Grails, HBase, Node.js and LIFT. He also maintains some interesting Javascript applications like mapping customer downloads, installations and registrations in real-time with Google Maps and a tool that helps debug Javascript in all web browsers (stacktracejs.org).
He often speaks at user groups about Javascript, Hadoop, and other miscellany.
He actively develops and maintains several OSS projects like (CSS Lint) a couple Gradle plugins, Javascript tools on GitHub, and a blog with 1500+ subscribers (eriwen.com).
Eric lives in Westminster, CO, with his wife, Erika and two insane mutts. He tends to interact with other community members via Twitter (@eriwen)
HTML 5 does more then add a couple new and nifty tags to the venerable HTML markup language. It has to be seen as part of the new dynamic web which no longer delivers static documents but dynamic applications that interact with backend web services.
This talk will discuss some of the more prominent and complex features of HTML and explore how a developer can use these features securely. We will demonstrate some attacks and walk through how different defenses mitigate these attacks. One of the focus areas will also be privacy and how the user data can be protected within HTML 5 applications.
Dr. Johannes Ullrich is Dean of Faculty, Chief Research Officer and a faculty member of SANS Technology Institute. Johannes also serves on the following SANS Technology Institute committees: Faculty and Administration, Curriculum and Long Range Planning. As chief research officer for the SANS Institute, Johannes is currently responsible for the SANS Internet Storm Center (ISC) and the GIAC Gold program. He founded DShield.org in 2000, which is now the data collection engine behind the ISC. His work with the ISC has been widely recognized, and in 2004, Network World named him one of the 50 most powerful people in the networking industry. Prior to working for SANS, Johannes worked as a lead support engineer for a Web development company and as a research physicist. Johannes holds a PhD in Physics from SUNY Albany and is located in Jacksonville, Florida.
HTML5 is the new buzz word. The HTML5 specifications may still be in draft form, but that hasn?t stopped browser developers from implementing many of the proposed features. Recruiters will soon be asking for 5 to 10 years of HTML5 experience. While we can?t give that to you, we can help you stay ahead of the game!
In this practical presentation you will learn what features are implementable and how to implement them. We?ll learn about the new HTML5 doctype and elements, HTML5 web form features that enable form validation without the use of JavaScript and we'll cover the new APIS that are part of and associated with HTML5, including offline applications, storage and geolocation.
Estelle Weyl started her professional life in architecture, then managed teen health programs. In 2000, she took the natural step of becoming a web standardista. She has consulted for Kodakgallery, Yahoo! and Apple, among others. Estelle shares esoteric tidbits learned while programming CSS, JavaScript and XHTML in her blog at http://evotech.net/blog and provides tutorials and detailed grids of CSS3 and HTML5 browser support in her blog at http://www.standardista.com. She is the author of HTML5, CSS3, and JavaScript for Mobile (O'Reilly, October 2011) and HTML5 and CSS3 for the Real World (Sitepoint, May 2011). While not coding, she works in construction, de-hippifying her 1960?s throwback abode.
What is a graph database, why would you use it, and how do you get started? In this session we'll look at the kinds of problems that graph databases can solve and will run through the process of getting started with neo4j
By the end of this session you'll have all of the information required to get started with neo4j on your projects.
Peter is Senior VP Engineering and Senior Fellow at General Assembly, a campus for technology, design, and entrepreneurship. He is responsible for hiring and managing an engineering team and is involved in the development and teaching of the technology curriculum.
Peter is a regular presenter at national and international conferences on ruby, nodejs, NoSQL (especially MongoDB and neo4j), cloud computing, software craftsmanship, java, groovy, javascript, and requirements and estimating. He is on the program committee for Code Generation in Cambridge, England and the Domain Specific Modeling workshop at SPLASH (was ooPSLA) and reviews and shepherds proposals for the BCS SPA conference.
He has presented at a range of conferences including DLD conference, ooPSLA, RubyNation, SpringOne2GX, Code Generation, Practical Product Lines, the British Computer Society Software Practices Advancement conference, DevNexus, cf.Objective(), CF United, Scotch on the Rocks, WebDU, WebManiacs, UberConf, the Rich Web Experience and the No Fluff Just Stuff Enterprise Java tour.
He has been published in IEEE Software, Dr. Dobbs, IBM developerWorks, Information Week, Methods & Tools, Mashed Code, NFJS the Magazine and GroovyMag. He's currently writing a book on managing software development for Pearson.
He is an organizer of the CTO School http://www.ctoschool.org - an organization in NYC devoted to creating the next generation of technical leaders. He also organizes the node.js meetup in New York and co-organizes the Domain Driven Design and Grails meetups.
He is a regular instructor at General Assembly in New York. His presentations cover managing software development, NoSQL, mobile development, Javascript development, Twitter Bootstrap and Javascript frameworks.
He tweets regularly as @peterbell.
The open web is quickly either replacing, diminishing, or lowing the barrier to entry for all native platform capabilities. Strategies for logically separating data and user experience concerns create web app architectures that are easy to modify to work anywhere.
We'll talk through engaging examples, and as an audience, make our predictions for when the web will be viable in emerging areas.
Dylan Schiemann is CEO of SitePen and co-founder of the Dojo Toolkit, an open source JavaScript toolkit for rapidly building web sites and applications, and is an expert in the technologies and opportunities of the Open Web. Under his guidance, SitePen has grown from a small development firm to a leading provider of inventive tools, skilled software engineers, knowledgeable consulting services, and top-notch training and advice. Dylan is a contributing author to the O'Reilly book "Even Fast Web Sites". Dylan's commitment to R&D has enabled SitePen to be a major contributor to or creator of pioneering open source web development toolkits and frameworks like Dojo, cometD, DWR, and Persevere. Prior to SitePen, Dylan developed web applications for companies like Renkoo, Informatica, Security FrameWorks and Vizional Technologies. He is a co-founder of Comet Daily, LLC, a board member at Dojo Foundation and a member of the Advisory Board at Aptana. Dylan earned his Masters in Physical Chemistry from UCLA and his B.A. in Mathematics from Whittier College.
Compass is a tool that can help you build cleaner, better structured, and less error-prone CSS. Semantic CSS is a technique where your CSS vocabulary describes WHAT things are on your page, rather than WHERE they are. Together, this tool and this concept can radically improve the structure of your html.
With compass, your CSS is written in a CSS superset called SCSS which can include variables, math, and method calls that evaluate to CSS. The end result is pure CSS - so you don't need to worry about anything 'funny' on the browser side. This lets us write cleaner CSS that documents the intent of our design, not just the 'end result'.
David Bock is a Principal Consultant at CodeSherpas, a company he founded in 2007. Mr. Bock is also the President of the Northern Virginia Java Users Group, the Editor of O'Reilly's OnJava.com website, and a frequent speaker on technology in venues such as the No Fluff Just Stuff Software Symposiums.
In January 2006, Mr. Bock was honored by being awarded the title of Java Champion by a panel of esteemed leaders in the Java Community in a program sponsored by Sun. There are approximately 100 active Java Champions worldwide.
David has also served on several JCP panels, including the Specification of the Java 6 Platform and the upcoming Java Module System.
In addition to his public speaking and training activities, Mr. Bock actively consults as a software engineer, project manager, and team mentor for commercial and government clients.
Fred Brooks said, "How do we get great designers? Great designers design, of course." So how do we get great architects? Great architects architect. But architecting a software system is a rare opportunity for the non-architect.
The kata is an ancient tradition, born of the martial arts, designed to give the student the opportunity to practice more than basics in a semi-realistic way. The coding kata, created by Dave Thomas, is an opportunity for the developer to try a language or tool to solve a problem slightly more complex than "Hello world". The architectural kata, like the coding kata, is an opportunity for the student-architect to practice architecting a software system.
In this session, attendees will be split into small groups and given a "real world" business problem (the kata). Attendees will be expected to formulate an architectural vision for the project, asking questions (of the instructor) as necessary to better understand the requirements, then defend questions (posed by both the instructor and their fellow attendees) about their choice in technology and approach, and then evaluate others' efforts in a similar fashion. No equipment is necessary to participate--the great architect has no need of tools, just their mind and the customers' participation and feedback.
Ted Neward is an Architectural Consultant with Neudesic, LLC as well as the Principal with Neward & Associates. He speaks on the conference circuit discussing Java, .NET and XML service technologies, focusing on Java-.NET interoperability, programming languages, and virtual machine technologies. He has written several widely-recognized books in both the Java and .NET space, including the recently- released "Professional F#" and widely-acclaimed "Effective Enterprise Java". He lives in the Pacific Northwest.
Come test your knowledge of HTML5 in an interactive way as you battle others in the audience in a jeopardy style game built using open web technologies. Contestants will be able buzzin using there smart phones, web browser, or even a chat client. Afterwards we will dive in and explain the technologies that we used to build the app.
Technologies that will be demonstrated come from many open web standards like HTML5, CSS3, JavaScript and Android. More details to come...
Gabriel Dayley is a senior software developer for the LDS Church where he has been influential in developing rich web applications using GWT. He is the founder and manager of the "Utah Google Technology User Group" and enjoys interacting with others about technology. He has been developing in Java for over 10 years and has served on the board for the Utah Java User Group. He has B.S in Computer Science from Utah Valley University and currently resides in Lehi, Utah.
Mike Heath is a principal software engineer for the LDS Church working in the core technology group. He has contributed to multiple open source projects including Apache MINA, Apache JAMES, and JBoss Netty. He has a B.S. in computer science from Utah Valley University and a M.S. in computer science from Brigham Young University.
The single most important tool in any developers toolbox isn't a fancy IDE or some spiffy new language - it's our brain. Despite ever faster processors with multiple cores and expanding amounts of RAM, we haven't yet created a computer to rival the ultra lightweight one we carry around in our skulls - in this session we'll learn how to make the most of it. We'll talk about why multitasking is a myth, the difference between the left and the right side of your brain, the importance of flow and why exercise is good for more than just your waist line.
The single most important tool in any developers toolbox isn't a fancy IDE or some spiffy new language - it's our brain. Despite ever faster processors with multiple cores and expanding amounts of RAM, we haven't yet created a computer to rival the ultra lightweight one we carry around in our skulls - in this session we'll learn how to make the most of it. We'll talk about why multitasking is a myth, the difference between the left and the right side of your brain, the importance of flow and why exercise is good for more than just your waist line.
Nathaniel T. Schutta is a senior software engineer focussed on making usable applications. A proponent of polyglot programming, Nate has written two books on Ajax and speaks regularly at various worldwide conferences, No Fluff Just Stuff symposia, universities, and Java user groups. In addition to his day job, Nate is an adjunct professor at the University of Minnesota where he teaches students to embrace dynamic languages.
TBA
TBA
David Bock is a Principal Consultant at CodeSherpas, a company he founded in 2007. Mr. Bock is also the President of the Northern Virginia Java Users Group, the Editor of O'Reilly's OnJava.com website, and a frequent speaker on technology in venues such as the No Fluff Just Stuff Software Symposiums.
In January 2006, Mr. Bock was honored by being awarded the title of Java Champion by a panel of esteemed leaders in the Java Community in a program sponsored by Sun. There are approximately 100 active Java Champions worldwide.
David has also served on several JCP panels, including the Specification of the Java 6 Platform and the upcoming Java Module System.
In addition to his public speaking and training activities, Mr. Bock actively consults as a software engineer, project manager, and team mentor for commercial and government clients.
Ever wanted to use a single code base to run touch-enabled web applications that run on just about every smart phone and tablet around?
Sencha Touch is one of the best touch-enabled web frameworks available today. Based on the proven and popular Ext JS desktop application suite, the touch counterpart uses controls that feel native but run in a mobile browser.
In this talk, Johnny will introduce Sencha Touch framework, show samples of what can be done using the technology, and demonstrate the construction and packaging of a cutting edge HTML5 application that can be downloaded and executed from a website or placed into the Android Market or Apple App Store as a native application using PhoneGap.
Johnny is a principal engineer at Time Warner Cable in the Web Services group with over fifteen years of web application development. He is a generalist with experience in all layers of an application from the database to the UI. Currently, the projects he works on see traffic in the millions on a monthly basis, and the work has extended out to other client platforms including the popular Time Warner Cable iPad live video streaming application which recently won a engineering award from the Academy of Television Arts and Sciences.
Ever been to a conference, get inspired, try to bring what you learned back to the office, only to be stymied by co-workers who aren't interested in rocking the status quo? It turns out that people tend to resist change in patterns, and like any pattern they can be overcome by using other people's experiences with those skeptics. This session will teach you how to identify the skeptics, how to counter them, and give you a strategic framework to convince your whole office.
This session will go into detail in the patterns and techniques of Driving Technical Change including: skeptic types, countering techniques, and master strategy using those techniques to achieve change in your organization.
Terry Ryan is a Worldwide Developer Evangelist for Adobe. The job basically entails helping developers using Adobe technologies to be successful. His focus is on web and mobile technologies including expertise in both Flash and HTML. Previous to that, he spent a decade working in various technical roles at the Wharton School at the University of Pennsylvania.
Terry is also the author of Driving Technical Change, a Pragmatic Bookshelf title. It's about convincing reluctant co-workers to adopt new tools and ideas.
He blogs at http://terrenceryan.com/blog and is tpryan on Twitter.
Recently a emergence of lightweight Javascript Frameworks has brought structure to client side by providing MVC (Model-View-Controller) implementations. In this talk we'll examine two of the most prominent frameworks; BackBone.js and Spine and their implications on how we structure and design our applications
Recently a emergence of lightweight Javascript Frameworks has brought structure to client side by providing MVC (Model-View-Controller) implementations. In this talk we'll examine one of the most prominent up and coming frameworks; Spine.js and the effect on how we structure and design our applications
Brian Sam-Bodden is an author, instructor, speaker and hacker that has spent over fifteen years crafting software systems. He holds dual bachelor degrees from Ohio Wesleyan University in computer science and physics and heads Integrallis http://www.integrallis.com. He is a frequent speaker at user groups and conferences nationally and abroad. Brian is the author of "Beginning POJOs: Spring, Hibernate, JBoss and Tapestry", co-author of the "Enterprise Java Development on a Budget: Leveraging Java Open Source Technologies" and a contributor to O'reilly's "97 Things Every Project Manager Should Know".
Apache Solr serves search requests at enterprises and the largest companies around the world. Built on top of the top-notch Apache Lucene library, Solr makes indexing and searching integration into your applications straightforward. This talk will introduce Solr's capabilities with live demonstrations.
Solr provides faceted navigation, spell checking, highlighting, clustering, grouping, and other search features. Solr can index rich documents such as PDF, Word, HTML, and other file types. Query volume scales with replication and collection size with distributed capabilities including the power of the new SolrCloud near-real-time distributed indexing.
Erik Hatcher is the co-author of "Lucene in Action" as well as co-author of "Java Development with Ant". Erik has been an active member of the Lucene community - a leading Lucene and Solr committer, member of the Lucene Project Management Committee, member of the Apache Software Foundation as well as a frequent invited speaker at various industry events. Erik co-founded Lucid Imagination, and is a member of its technical staff.
You might have heard of this hot new platform called Node.JS that puts JavaScript on the server, and now it's time to see how easy it is to be productive with tools like express and MongoDB.
After an introduction to the tools, you will build a non-trivial web application with express, jade, stylus, MongoDB, and mocha. Bring your laptop for some hands-on JavaScript hacking.
Attendees will need their own laptop with recent versions of node v0.6+ (http://nodejs.org/#download), npm v1.0+ (http://npmjs.org) and MongoDB (http://www.mongodb.org/) installed. They will benefit most if they have a basic understanding of JavaScript and aren't afraid of the command-line.
Eric writes high-performance web applications with a variety of platforms like Grails, HBase, Node.js and LIFT. He also maintains some interesting Javascript applications like mapping customer downloads, installations and registrations in real-time with Google Maps and a tool that helps debug Javascript in all web browsers (stacktracejs.org).
He often speaks at user groups about Javascript, Hadoop, and other miscellany.
He actively develops and maintains several OSS projects like (CSS Lint) a couple Gradle plugins, Javascript tools on GitHub, and a blog with 1500+ subscribers (eriwen.com).
Eric lives in Westminster, CO, with his wife, Erika and two insane mutts. He tends to interact with other community members via Twitter (@eriwen)
In this session you'll learn 10 tried and true jQuery techniques/plugins/practice.
From this jQuery session, you will learn how to create responsive, clean and maintainable client side code.
Brian Sam-Bodden is an author, instructor, speaker and hacker that has spent over fifteen years crafting software systems. He holds dual bachelor degrees from Ohio Wesleyan University in computer science and physics and heads Integrallis http://www.integrallis.com. He is a frequent speaker at user groups and conferences nationally and abroad. Brian is the author of "Beginning POJOs: Spring, Hibernate, JBoss and Tapestry", co-author of the "Enterprise Java Development on a Budget: Leveraging Java Open Source Technologies" and a contributor to O'reilly's "97 Things Every Project Manager Should Know".
Interested in HTML5? Want a change to play around with the latest and greatest in web app development? This workshop is for you! We'll cover feature detection, web forms, the new HTML elements, take a spin around the canvas, and we'll finish up with offline/local storage and web sockets.
Detecting 101 Before you can take advantage of a new HTML5 feature, you have to make sure a given browser can support it. This section will cover the basics of detection as well as getting the most out of rocking cool libraries like Modernizer. We'll also look at just what to do when a browser doesn't support a feature you're trying to leverage.
New elements Along with a new human type-able doctype, HTML5 introduces several new semantic elements. Recognizing that nearly every website in existence has a header, a footer and some navigation divs, HTML5 gives us a header, a footer and a nav element along with a few others. HTML5 seeks to pave cowpaths, not force the web to bend to its ways...
Canvas One of the most exciting features of HTML5 is the canvas, a space you can use to draw anything from shapes to text to, well, anything! From basic drawing to graphs to full fledged games, canvas opens up a whole new world of possibility, a world sans browser plugins.
Local Storage Web apps are, in many cases, indistinguishable from their thick client brethren, at least if you're not on an airplane. OK, so many planes have wifi, but there are parts of the world that don't have reliable Internet connections! Thanks to local storage and the offline API, all is not lost - you can create a web app that works offline.
Web sockets and web workers Ajax is like so many things in the web world - a simple (but very powerful) hack that isn't defined by a spec. With the advent of the web socket API, we'll finally have a native way to have bi-directional communication with the server. As we create richer and richer clients, we're writing more and more JavaScript. While the JS engines are getting faster and faster, there are cases where it'd be very handy to run scripts in the background. Web workers give us just such an opportunity.
Nathaniel T. Schutta is a senior software engineer focussed on making usable applications. A proponent of polyglot programming, Nate has written two books on Ajax and speaks regularly at various worldwide conferences, No Fluff Just Stuff symposia, universities, and Java user groups. In addition to his day job, Nate is an adjunct professor at the University of Minnesota where he teaches students to embrace dynamic languages.
We will be exploring the features and capabilities of native platforms and comparing them to what is available via the mobile browsers. The strengths and weaknesses of both native and web approaches will be demonstrated through example applications and code.
Comparisons and debate will include graphic acceleration, persistence, geolocation, orientation changes, offline support, camera, file system access, overall experience, etc. We will touch on industry trends, what development organizations are doing, and what technical research firms are predicting.
Gabriel Dayley is a senior software developer for the LDS Church where he has been influential in developing rich web applications using GWT. He is the founder and manager of the "Utah Google Technology User Group" and enjoys interacting with others about technology. He has been developing in Java for over 10 years and has served on the board for the Utah Java User Group. He has B.S in Computer Science from Utah Valley University and currently resides in Lehi, Utah.
Thomas A. Valletta, Open Web Evangelist, Enterprise Architect, and hack has been developing for the web for fourteen years. His clients range across industries including defence, healthcare, technology, e-commerce, human resources and religion. He has professionally developed native applications for Android, iPhone, WebOS, Blackberry, and Windows. He has engineered solutions using Java, .Net, PHP, JavaScript, Objective C, VBScript and Commodore Basic (I am pretty sure that those last two don't count). He lives outside of Salt Lake City, Utah with his wife and four children.
End users now expect to be presented with real time data in a web application. But these rich experiences are complex to develop. Tools like GWT enable efficient development of high-performance, rich web applications by shielding developers from JavaScript, browser quirks and evolving markup languages. However, GWT only addresses the client-side environment. Developers need a similar abstraction for exchanging real time data with the server.
Errai, an open-source GWT extension framework, streams data asynchronously over a high-performance, bidirectional messaging bus. Errai's bus runs concurrently in the browser and on the server (inside a Java Servlet). Errai's push technology delivers data from the server to any connected browser simultaneously and in real time, while the method of communication is transparent to the developer.
Errai also brings CDI, the standard Java programming model, to the browser. What, CDI in the browser? Yep, in JavaScript. This means the developer can use a single programming model for both client and server-side development. To take it a step further, Errai hooks the CDI event notifications to its messaging bus, hiding the high-performance messaging behind CDI's declarative event model. Client or server, it's all just CDI programming.
Come learn how the GWT, Errai and CDI stack enable you to create rich applications that process real time data without all the complexity.
As Principal Software Engineer at JBoss, by Red Hat, Dan serves as the JBoss Community liaison, leads the JBoss Testing Initiative and is a member of the Seam, Weld, Arquillian and ShrinkWrap projects. He authored Seam in Action (Manning), served as a representative for Red Hat on the JSR-314 Expert Group (JSF 2.0), writes for IBM developerWorks and NFJS magazine and is an internationally recognized speaker. He's appeared at major industry conferences including JavaOne, Devoxx, NFJS, JAX and Jazoon and has received recognition as a JavaOne Rock Star, a JBossWorld Top Presenter and a JAX Hall of Fame speaker.
To colleagues, Dan's known for his hard work and passion for Open Source technologies. His technical expertise includes Java frameworks (Seam, CDI, Weld, JSF, EJB 3, JPA, Hibernate, Spring), testing frameworks (Arquillian, JUnit, TestNG, Selenium), build tools (Maven 2, Gradle, Ant) and web development (Ajax, JavaScript, CSS) and more.
You can keep up with Dan's discoveries by reading his blogs at http://mojavelinux.com and http://community.jboss.org/people/dan.j.allen/blog or tracking what he's currently up to by following him on Twitter at http://twitter.com/mojavelinux.
This focus of part one will be to introduce web developers and testers to the powerful WebDriver API that comes with the release of Selenium 2.0. In addition, we'll look at the differences found in WebDriver's API and architecture as compared to the classic Selenium 1.x, and demonstrate how we can gracefully migrate our test suites forward.
In this session you'll have an opportunity to build an automated test suite that will verify the behavior of a simple web application across multiple modern browsers. We'll start by recording and running tests within the Selenium IDE Firefox plugin. We'll then export our tests to Java JUnit tests and then leverage WebDriver's powerful support for the Page Object pattern, a mechanism for the separation of the orthogonal concerns of logical application functionality and DOM structure, to construct effective tests which read more like executable specifications than code.
By the end of the session we'll be reusing components developed in earlier tests to construct new ones, thus accelerating our capacity to grow our test suite.
Matt Stine is an Enterprise Java/Cloud consultant based in Memphis, TN. He is a twelve year veteran of the enterprise software and web development industries, with experience spanning the healthcare, biomedical research, e-commerce, and retail store domains.
Matt has spoken at conferences ranging from JavaOne to CodeMash and has published several articles for Agile Zone, GroovyMag and NFJS the Magazine, as well as the Selenium 2.0 DZone Refcard. Matt is also the founder of the Memphis/Mid-South Java User Group.
His current areas of interest include lean/agile software development, software architecture, mobile application development and functional languages.
Mobile browser performance is constrained by more than just bandwidth. You already know slow loading sites create a bad user experience. But even if you?ve resolved download speed, what happens to the user experience if a site is jumpy, choppy, or worse yet, non-responsive to basic interaction.
Yes, your site loads quickly even with low bandwidth. You?ve followed the 14 WOP tips. You?ve improved your sites performance, or so you think. Your app is loading quickly, but why is it not responding quickly?
In this session you?ll learn about what YSlow and Page Speed don?t cover. We?ll talk about images, HTML5, CSS3, JavaScript and the DOM. We?ll cover common trouble spots that lead to these poor user experiences as well as tips and techniques to prevent these trouble spots from arising.
Estelle Weyl started her professional life in architecture, then managed teen health programs. In 2000, she took the natural step of becoming a web standardista. She has consulted for Kodakgallery, Yahoo! and Apple, among others. Estelle shares esoteric tidbits learned while programming CSS, JavaScript and XHTML in her blog at http://evotech.net/blog and provides tutorials and detailed grids of CSS3 and HTML5 browser support in her blog at http://www.standardista.com. She is the author of HTML5, CSS3, and JavaScript for Mobile (O'Reilly, October 2011) and HTML5 and CSS3 for the Real World (Sitepoint, May 2011). While not coding, she works in construction, de-hippifying her 1960?s throwback abode.
This session builds on "Selenium 2.0 Workshop - Part I" by experimenting with some of the more advanced features of Selenium. We'll dig into WebDriver's new Advanced User Interactions API, which allows us to perform actions such as drag and drop or clicking multiple elements while holding down the Control key. We'll also look at Selenium 2.0's capabilities for testing mobile web applications on both the iOS and Android platforms.
Finally we'll parallelize our tests across a compute farm using TestNG and Selenium Grid.
Matt Stine is an Enterprise Java/Cloud consultant based in Memphis, TN. He is a twelve year veteran of the enterprise software and web development industries, with experience spanning the healthcare, biomedical research, e-commerce, and retail store domains.
Matt has spoken at conferences ranging from JavaOne to CodeMash and has published several articles for Agile Zone, GroovyMag and NFJS the Magazine, as well as the Selenium 2.0 DZone Refcard. Matt is also the founder of the Memphis/Mid-South Java User Group.
His current areas of interest include lean/agile software development, software architecture, mobile application development and functional languages.
About ten years ago, collecting firewall logs and aggregated analysis of rejected packets was a good measure of prevalent automated attacks originating from worms, and later bots. However, over time attacks moved up the stack and Firewall logs became less interesting. Currently, most attacks against servers use open ports and attack the applications listening on these ports. In some ways, web applications have become the new firewall, and collecting data about web application attacks has become an important research topic. However, collecting web application attack logs from live networks has proven itself to be a lot harder then collecting firewall logs. Privacy, log formats and data volume are just some of the topics that need to be considered.
We will discuss the different approaches used to collect web application attack data and present some results from our new 404 project.
Dr. Johannes Ullrich is Dean of Faculty, Chief Research Officer and a faculty member of SANS Technology Institute. Johannes also serves on the following SANS Technology Institute committees: Faculty and Administration, Curriculum and Long Range Planning. As chief research officer for the SANS Institute, Johannes is currently responsible for the SANS Internet Storm Center (ISC) and the GIAC Gold program. He founded DShield.org in 2000, which is now the data collection engine behind the ISC. His work with the ISC has been widely recognized, and in 2004, Network World named him one of the 50 most powerful people in the networking industry. Prior to working for SANS, Johannes worked as a lead support engineer for a Web development company and as a research physicist. Johannes holds a PhD in Physics from SUNY Albany and is located in Jacksonville, Florida.
Interested in HTML5? Want a change to play around with the latest and greatest in web app development? This workshop is for you! We'll cover feature detection, web forms, the new HTML elements, take a spin around the canvas, and we'll finish up with offline/local storage and web sockets.
Detecting 101 Before you can take advantage of a new HTML5 feature, you have to make sure a given browser can support it. This section will cover the basics of detection as well as getting the most out of rocking cool libraries like Modernizer. We'll also look at just what to do when a browser doesn't support a feature you're trying to leverage.
New elements Along with a new human type-able doctype, HTML5 introduces several new semantic elements. Recognizing that nearly every website in existence has a header, a footer and some navigation divs, HTML5 gives us a header, a footer and a nav element along with a few others. HTML5 seeks to pave cowpaths, not force the web to bend to its ways...
Canvas One of the most exciting features of HTML5 is the canvas, a space you can use to draw anything from shapes to text to, well, anything! From basic drawing to graphs to full fledged games, canvas opens up a whole new world of possibility, a world sans browser plugins.
Local Storage Web apps are, in many cases, indistinguishable from their thick client brethren, at least if you're not on an airplane. OK, so many planes have wifi, but there are parts of the world that don't have reliable Internet connections! Thanks to local storage and the offline API, all is not lost - you can create a web app that works offline.
Web sockets and web workers Ajax is like so many things in the web world - a simple (but very powerful) hack that isn't defined by a spec. With the advent of the web socket API, we'll finally have a native way to have bi-directional communication with the server. As we create richer and richer clients, we're writing more and more JavaScript. While the JS engines are getting faster and faster, there are cases where it'd be very handy to run scripts in the background. Web workers give us just such an opportunity.
Nathaniel T. Schutta is a senior software engineer focussed on making usable applications. A proponent of polyglot programming, Nate has written two books on Ajax and speaks regularly at various worldwide conferences, No Fluff Just Stuff symposia, universities, and Java user groups. In addition to his day job, Nate is an adjunct professor at the University of Minnesota where he teaches students to embrace dynamic languages.
You might have heard of this hot new platform called Node.JS that puts JavaScript on the server, and now it's time to see how easy it is to be productive with tools like express and MongoDB.
After an introduction to the tools, you will build a non-trivial web application with express, jade, stylus, MongoDB, and mocha. Bring your laptop for some hands-on JavaScript hacking.
Attendees will need their own laptop with recent versions of node v0.6+ (http://nodejs.org/#download), npm v1.0+ (http://npmjs.org) and MongoDB (http://www.mongodb.org/) installed. They will benefit most if they have a basic understanding of JavaScript and aren't afraid of the command-line.
Eric writes high-performance web applications with a variety of platforms like Grails, HBase, Node.js and LIFT. He also maintains some interesting Javascript applications like mapping customer downloads, installations and registrations in real-time with Google Maps and a tool that helps debug Javascript in all web browsers (stacktracejs.org).
He often speaks at user groups about Javascript, Hadoop, and other miscellany.
He actively develops and maintains several OSS projects like (CSS Lint) a couple Gradle plugins, Javascript tools on GitHub, and a blog with 1500+ subscribers (eriwen.com).
Eric lives in Westminster, CO, with his wife, Erika and two insane mutts. He tends to interact with other community members via Twitter (@eriwen)
Now that 'NoSQL' is firmly intrenched in our vocabulary, the next step is finding a solution that works for your project. CouchDB, a key / value JSON database, is an outstanding choice for many reasons and makes things like queries, JavaScript integration, and replication simple and straight forward.
In this presentation, Johnny will introduce CouchDB including the impressive replication options and scaling strategies. He'll show how to integrate CouchDB into your Java, Node, and / or JavaScript client application and show how powerful JSON and MapReduce can be in retrieving large sets of data quickly.
Johnny is a principal engineer at Time Warner Cable in the Web Services group with over fifteen years of web application development. He is a generalist with experience in all layers of an application from the database to the UI. Currently, the projects he works on see traffic in the millions on a monthly basis, and the work has extended out to other client platforms including the popular Time Warner Cable iPad live video streaming application which recently won a engineering award from the Academy of Television Arts and Sciences.
Solr Recipes provides quick and easy steps for common use cases with Apache Solr. Bite-sized recipes will be presented for data ingestion, textual analysis, client integration, and each of Solr?s features including faceting, more-like-this, spell checking/suggest, and others.
Quick and easy steps for common Apache Solr use cases
Ingesting recipes: CSV, relational databases, file system, web crawls, API
Analysis recipes: copyField, character mapping, tokenizing and filtering, configuring for suggest, data exploration
Faceting recipes: field, date and numeric range, pivot, and query faceting
Integration recipes: prototyping user interactions, working with Solr from PHP, Rails, Java, Ajax, and other environments
Other featured recipes: more like this, spell checking/suggest, grouping, clustering
Erik Hatcher is the co-author of "Lucene in Action" as well as co-author of "Java Development with Ant". Erik has been an active member of the Lucene community - a leading Lucene and Solr committer, member of the Lucene Project Management Committee, member of the Apache Software Foundation as well as a frequent invited speaker at various industry events. Erik co-founded Lucid Imagination, and is a member of its technical staff.
HTML forms have been the bane of web developers for years. Not anymore!
With HTML5 you may learn to love forms. Imagine a day when you can validate a form without any JavaScript. Date pickers, place holder text, pattern matching, required fields, auto focus, error handling, all without JavaScript? That day is not as far off as you think.
In this session we?ll discuss new to HTML5 form input types and attributes. We can?t promise that you?ll love creating web forms, but you will gain a new, exciting appreciation.
We?ll learn all about creating dynamic web forms with form validation without the use of javascript. Topics covered include:
The new HTML5 input types Controlling what keyboard types gets displayed on touch keyboards, including the iPad and iPhone, Placeholder Attribute: Adding native placeholder text and clearing on focus Native form validation: Error messages with no javascript Date & time input types: The jQuery datepicker, without jQuery. Providing focus to a form element, including focus on invalid input without javascript. CSS & Forms: Stylizing form elements based on current states of required and invalid Pattern attribute ? Pattern matching for form input: with regular expressions and no javascript element and list attribute- providing autosuggest on inputs, again no javascript.
Browsers are beginning to support HTML5 web forms. In this session we?ll learn how to implement them.
Estelle Weyl started her professional life in architecture, then managed teen health programs. In 2000, she took the natural step of becoming a web standardista. She has consulted for Kodakgallery, Yahoo! and Apple, among others. Estelle shares esoteric tidbits learned while programming CSS, JavaScript and XHTML in her blog at http://evotech.net/blog and provides tutorials and detailed grids of CSS3 and HTML5 browser support in her blog at http://www.standardista.com. She is the author of HTML5, CSS3, and JavaScript for Mobile (O'Reilly, October 2011) and HTML5 and CSS3 for the Real World (Sitepoint, May 2011). While not coding, she works in construction, de-hippifying her 1960?s throwback abode.
CoffeeScript is a programming language that compiles to JavaScript. The language adds syntactic sugar inspired by Ruby and Python to enhance JavaScript's brevity and readability, as well as adding more sophisticated features like array comprehension and pattern matching. CoffeeScript compiles predictably to JavaScript, programs can be written with less code (typically 1/3 fewer lines) with no effect on runtime performance. In this session, you'll need your laptop as we code through Coffeescript basics. Please bring a laptop with either Chrome and Safari installed. The coding session can be done on Windows, Mac, or Linux.
In this session we'll look at different uses for Coffeescript in the development world. We'll look at how to use it with jQuery, for example, and also with an app framework like Titanium. We'll explore the language features, take a tour of using it in different environments, and write code to demonstrate its time-saving features. We'll also spend some time looking at using it for unit-testing. Coffeescript's language features also lend it to write more maintainable code - a topic that we will discuss in detail. Finally, we'll see how Coffeescript is being wrapped into larger app frameworks like node.js and Rails 3.1.
Pratik Patel is the CTO of Atlanta based TripLingo (http://www.triplingo.com/). He wrote the first book on 'enterprise Java' in 1996, "Java Database Programming with JDBC." He has also spoken at various conferences and participates in several local tech groups and startup groups. He's in the startup world now and hacks iOS, Android, HTML5, CSS3, JavaScript, Rails, and ..... well everything except Perl. Pratik's specialty is in large-scale applications for mission-critical and mobile applications use. He has designed and built applications in the retail, health care, financial services, and telecoms sectors. Pratik holds a master's in Biomedical Engineering from UNC, has worked in places such as New York, London, and Hong Kong, and currently lives in Atlanta, GA.
Solr Recipes provides quick and easy steps for common use cases with Apache Solr. Bite-sized recipes will be presented for data ingestion, textual analysis, client integration, and each of Solr?s features including faceting, more-like-this, spell checking/suggest, and others.
Quick and easy steps for common Apache Solr use cases
Ingesting recipes: CSV, relational databases, file system, web crawls, API
Analysis recipes: copyField, character mapping, tokenizing and filtering, configuring for suggest, data exploration
Faceting recipes: field, date and numeric range, pivot, and query faceting
Integration recipes: prototyping user interactions, working with Solr from PHP, Rails, Java, Ajax, and other environments
Other featured recipes: more like this, spell checking/suggest, grouping, clustering
Erik Hatcher is the co-author of "Lucene in Action" as well as co-author of "Java Development with Ant". Erik has been an active member of the Lucene community - a leading Lucene and Solr committer, member of the Lucene Project Management Committee, member of the Apache Software Foundation as well as a frequent invited speaker at various industry events. Erik co-founded Lucid Imagination, and is a member of its technical staff.
This session is for students are have a good understanding of CSS, but who want to gain additional troubleshooting skills.
In this session, we?ll cover some advanced CSS investigative and problem-solving techniques, including tiny tidbits to lay the foundation for clean, informative markup; ways of dealing definitively with IE6, proactive coding practices for the ?other? browsers? bugs, new alternatives to using floats for layout, and creating and using the more esoteric css2 selectors and newer css3 selectors for true style targeting power.
Denise R. Jacobs is a writer, speaker, designer, and educator on many things web. She is author of The CSS Detective Guide, and is a co-author for InterAct with Web Standards: A Holistic Approach to Web Design. She is a Web Solutions Consultant based in Miami, Florida,
"From Wikipedia: "A physics engine is computer software that provides an approximate simulation of certain simple physical systems, such as rigid body dynamics (including collision detection), soft body dynamics, and fluid dynamics, of use in the domains of computer graphics, video games and film. Their main uses are in video games (typically as middleware), in which case the simulations are in real-time. The term is sometimes used more generally to describe any software system for simulating physical phenomena, such as high-performance scientific simulation."
In this presentation, we'll look at some of the physics engines available, and how to use them from within Java for a variety of purposes (most of which will be game-oriented, but can easily be extrapolated into other, more business-focused, scenarios).
Ted Neward is an Architectural Consultant with Neudesic, LLC as well as the Principal with Neward & Associates. He speaks on the conference circuit discussing Java, .NET and XML service technologies, focusing on Java-.NET interoperability, programming languages, and virtual machine technologies. He has written several widely-recognized books in both the Java and .NET space, including the recently- released "Professional F#" and widely-acclaimed "Effective Enterprise Java". He lives in the Pacific Northwest.
Day in and day out we are subjected to poorly designed applications. From those we experience directly to the time we waste waiting on others who are struggling with systems that seem like they were built to hinder the user. It doesn't have to be like this and many users are waking up and demanding better applications. Are you prepared to deliver? After this workshop, you will be. When you're done, you'll have the tools you need to make sure your application helps your users kick ass!
Usa-what now? While most developers are schooled in algorithms and programming languages, they often lack a grounding in the fundamentals of usability; we'll start by exploring what usability is dispelling many of the myths surrounding this misunderstood aspect of software. We'll show why usability matters and help you see how it can make the difference on your projects.
The who - developing pragmatic personas. We can't build a great UI without knowing who we're building it for. Personas are a time tested technique to help teams understand their users and facilitate building the right interface. While personas are often backed by extensive ethnographic research, they don't require months and months of effort. We'll explore the use of pragmatic personas to see how they can simplify the task of interface design. As an exercise, we'll develop personas for our application.
The what - figuring out just what to build. Of course just knowing who we're building for is only part of the picture, we have to know what our users are trying to do. Wether you favor use cases, user stories or more traditional requirements documents, at the end of the day our customers are using our application to further some other goal. In this section we'll discuss tasks and scenarios showing how they contribute to the overall design process. We'll write up a set of user goals expanding them into tasks that will help us design a set of interfaces.
The how - designing rocking good interfaces. Want to know the secret to designing great interfaces? We'll talk about the importance of iteration; just as our code is rarely right on the first try, neither are our interfaces. To facilitate the iterative process, we'll discuss the vital importance of paper prototyping. That's right, paper and pencil are your best tools. We'll also talk about why some designs are better than others discussing the heuristics that are second nature to the experienced designer. We'll also discuss design guidelines talking about how to make sure yours aren't just a dusty document sitting in a rarely visited corner of the LAN. We'll sketch up a variety of approaches focussing on quick and dirty designs that allow us to explore a plethora of options.
Testing our design - making sure we're on the right path. Just as we test our code, we must test our interfaces. While we may not have UIunit at our disposal, testing our UIs is just as important as testing our code. From recruiting users to preparing the space, we'll discuss how to get ready for a test. We'll talk about the various roles in a user test from the all important moderator to playing computer and taking notes. User tests can be very stressful, we'll discuss ways to put our customers at ease. We'll also discuss the best way to communicate the results of testing to the rest of your team. We'll prepare a deck to test a given scenario. We'll take that deck and test it with our "customers." Of course we can also desk check our interfaces using standard heuristics - we'll look at some existing applications discussing what was done right and what could be done better.
Nathaniel T. Schutta is a senior software engineer focussed on making usable applications. A proponent of polyglot programming, Nate has written two books on Ajax and speaks regularly at various worldwide conferences, No Fluff Just Stuff symposia, universities, and Java user groups. In addition to his day job, Nate is an adjunct professor at the University of Minnesota where he teaches students to embrace dynamic languages.
The Web is changing faster than you can imagine and it is going to continue to do so. Webs of Documents are giving way to machine-processable Webs of Information. We no longer care about data containers, we only care about data and how it connects to what we already know.
Perhaps the concepts of the Semantic Web initiative are new to you. Or perhaps you have been hearing for years how great technologies like RDF, SPARQL, SKOS and OWL are and have yet to see anything real come out of it.
Whether you are jazzed or jaded, this workshop will provide you with the understanding of a technological tidal wave that is heading in your direction.
In this workshop, we will:
Explain the Web and Web architecture at a deeper level Apply Web and Semantic Web technologies in the Enterprise and make them work together Integrate structured and unstructured information Create good, long-lived logical names (URIs) for information and services Use the Resource Description Framework (RDF) to integrate documents, services and databases Use popular RDF vocabularies such as Dublin Core, FOAF, DOAP Query RDF and non-RDF datastores with the SPARQL query language Model and Do Inference with the Web Ontology Language (OWL)
Bring your laptops. This is a hands-on workshop.
Brian Sletten is a liberal arts-educated software engineer with a focus on using and evangelizing forward-leaning technologies. He has a background as a system architect, a developer, a security consultant, a mentor, a team lead, an author and a trainer and operates in all of those roles as needed. His experience has spanned the online game, defense, finance, academic, hospitality, retail and commercial domains. He has worked with a wide variety of technologies such as network matrix switch controls, 3D simulation/visualization, Grid Computing, P2P and Semantic Web-based systems. He has a B.S. in Computer Science from the College of William and Mary. He is President of Bosatsu Consulting, Inc. and lives in Los Angeles, CA.
He focuses on web architecture, resource-oriented computing, social networking, the Semantic Web, scalable systems, security consulting and other technologies of the late 20th and early 21st Centuries.
You?re Solr powered, and needing to customize its capabilities. Apache Solr is flexibly architected, with practically everything pluggable. Under the hood, Solr is driven by the well-known Apache Lucene. Lucene for Solr Developers will guide you through the various ways in which Solr can be extended, customized, and enhanced with a bit of Lucene API know-how. We?ll delve into improving analysis with custom character mapping, tokenizing, and token filtering extensions; show why and how to implement specialized query parsing, and how to add your own search and update request handling.
Apache Solr uses Lucene under the hood for its searching power
How does Solr work with Lucene already?
Solr can be customized in amazingly powerful ways with some Lucene API know-how:
Erik Hatcher is the co-author of "Lucene in Action" as well as co-author of "Java Development with Ant". Erik has been an active member of the Lucene community - a leading Lucene and Solr committer, member of the Lucene Project Management Committee, member of the Apache Software Foundation as well as a frequent invited speaker at various industry events. Erik co-founded Lucid Imagination, and is a member of its technical staff.
Games? What do games have to do with good business-oriented applications? Turns out, a lot of interesting little tidbits of user-interface, distribution, and emergence, found normally in the games we play, have direct implications on the way enterprise applications can (or should) be built.
Come to this session, find out some intriguing things about what?s going on in the game industry, but more importantly, how ideas from the gaming world can turn around and answer some thorny problems in the business world.
Ted Neward is an Architectural Consultant with Neudesic, LLC as well as the Principal with Neward & Associates. He speaks on the conference circuit discussing Java, .NET and XML service technologies, focusing on Java-.NET interoperability, programming languages, and virtual machine technologies. He has written several widely-recognized books in both the Java and .NET space, including the recently- released "Professional F#" and widely-acclaimed "Effective Enterprise Java". He lives in the Pacific Northwest.
Mobile devices such as smartphones and tablets are rapidly becoming the primary Web clients for many users. Taking your existing skills from traditional Web application development and applying them to a mobile interface can be daunting. This session walks through best practices for building a mobile solution using a combination of JSF, CDI, JMS, data grid, HTML5, and CSS3 technologies.
Attendees will learn which front-end mobile frameworks work best with Java-based technologies and how they can be used to kick-start your own applications. The presentation begins with an overview of technologies used to create the demo and then jumps into the code for a step-by-step tutorial.
As Principal Software Engineer at JBoss, by Red Hat, Dan serves as the JBoss Community liaison, leads the JBoss Testing Initiative and is a member of the Seam, Weld, Arquillian and ShrinkWrap projects. He authored Seam in Action (Manning), served as a representative for Red Hat on the JSR-314 Expert Group (JSF 2.0), writes for IBM developerWorks and NFJS magazine and is an internationally recognized speaker. He's appeared at major industry conferences including JavaOne, Devoxx, NFJS, JAX and Jazoon and has received recognition as a JavaOne Rock Star, a JBossWorld Top Presenter and a JAX Hall of Fame speaker.
To colleagues, Dan's known for his hard work and passion for Open Source technologies. His technical expertise includes Java frameworks (Seam, CDI, Weld, JSF, EJB 3, JPA, Hibernate, Spring), testing frameworks (Arquillian, JUnit, TestNG, Selenium), build tools (Maven 2, Gradle, Ant) and web development (Ajax, JavaScript, CSS) and more.
You can keep up with Dan's discoveries by reading his blogs at http://mojavelinux.com and http://community.jboss.org/people/dan.j.allen/blog or tracking what he's currently up to by following him on Twitter at http://twitter.com/mojavelinux.
Day in and day out we are subjected to poorly designed applications. From those we experience directly to the time we waste waiting on others who are struggling with systems that seem like they were built to hinder the user. It doesn't have to be like this and many users are waking up and demanding better applications. Are you prepared to deliver? After this workshop, you will be. When you're done, you'll have the tools you need to make sure your application helps your users kick ass!
Usa-what now? While most developers are schooled in algorithms and programming languages, they often lack a grounding in the fundamentals of usability; we'll start by exploring what usability is dispelling many of the myths surrounding this misunderstood aspect of software. We'll show why usability matters and help you see how it can make the difference on your projects.
The who - developing pragmatic personas. We can't build a great UI without knowing who we're building it for. Personas are a time tested technique to help teams understand their users and facilitate building the right interface. While personas are often backed by extensive ethnographic research, they don't require months and months of effort. We'll explore the use of pragmatic personas to see how they can simplify the task of interface design. As an exercise, we'll develop personas for our application.
The what - figuring out just what to build. Of course just knowing who we're building for is only part of the picture, we have to know what our users are trying to do. Wether you favor use cases, user stories or more traditional requirements documents, at the end of the day our customers are using our application to further some other goal. In this section we'll discuss tasks and scenarios showing how they contribute to the overall design process. We'll write up a set of user goals expanding them into tasks that will help us design a set of interfaces.
The how - designing rocking good interfaces. Want to know the secret to designing great interfaces? We'll talk about the importance of iteration; just as our code is rarely right on the first try, neither are our interfaces. To facilitate the iterative process, we'll discuss the vital importance of paper prototyping. That's right, paper and pencil are your best tools. We'll also talk about why some designs are better than others discussing the heuristics that are second nature to the experienced designer. We'll also discuss design guidelines talking about how to make sure yours aren't just a dusty document sitting in a rarely visited corner of the LAN. We'll sketch up a variety of approaches focussing on quick and dirty designs that allow us to explore a plethora of options.
Testing our design - making sure we're on the right path. Just as we test our code, we must test our interfaces. While we may not have UIunit at our disposal, testing our UIs is just as important as testing our code. From recruiting users to preparing the space, we'll discuss how to get ready for a test. We'll talk about the various roles in a user test from the all important moderator to playing computer and taking notes. User tests can be very stressful, we'll discuss ways to put our customers at ease. We'll also discuss the best way to communicate the results of testing to the rest of your team. We'll prepare a deck to test a given scenario. We'll take that deck and test it with our "customers." Of course we can also desk check our interfaces using standard heuristics - we'll look at some existing applications discussing what was done right and what could be done better.
Nathaniel T. Schutta is a senior software engineer focussed on making usable applications. A proponent of polyglot programming, Nate has written two books on Ajax and speaks regularly at various worldwide conferences, No Fluff Just Stuff symposia, universities, and Java user groups. In addition to his day job, Nate is an adjunct professor at the University of Minnesota where he teaches students to embrace dynamic languages.
We are just now starting to understand and embrace the web for what it truly is?an inherently flexible and responsive medium. As the number of internet-connected devices explodes, we are forced to reassess how we create our sites and applications. We don't know for certain what device our users will be using or where they'll be using them from. All we know is that they will expect to see meaningful content in a design that is tailored to the constraints of the device, and that this content will be delivered to them quickly?no matter where they are.
This session what it means to embrace the inherent flexibility of the web. We will discuss where our current practices and tools fall short. We'll also take a look at how new techniques like responsive enhancement can help.
Tim Kadlec is web developer living and working in northern Wisconsin with a propensity for efficient, standards-based front-end development. His diverse background working with small companies to large publishers and industrial corporations has allowed him to see how these standards can be effectively utilized for businesses of all sizes.
His current interests include creating cross-platform sites and applications using the open web stack and improving the state of performance optimization on the web.
He sporadically writes about a variety of topics at timkadlec.com. You can also find him sharing his thoughts in a briefer format on @tkadlec. Tim also curates Breaking Development, one of the first conferences dedicated to design and development for mobile devices using web technologies.
Just as the phone has evolved and changed the way we communicate, the TV is maturing from something that we simply watch to a device that we richly interact with. Google TV is bringing the same innovation that we have enjoy on our Android phones to the television set.
The TV is not just a big computer screen. We will discuss some of the common problems that affect all TV targeted applications such as the variety of TV sizes, color quality, capabilities, and resolutions. We will also look specifically at the Google TV platform and how to bring Android applications from the phone to the TV.
Gabriel Dayley is a senior software developer for the LDS Church where he has been influential in developing rich web applications using GWT. He is the founder and manager of the "Utah Google Technology User Group" and enjoys interacting with others about technology. He has been developing in Java for over 10 years and has served on the board for the Utah Java User Group. He has B.S in Computer Science from Utah Valley University and currently resides in Lehi, Utah.
Mike Heath is a principal software engineer for the LDS Church working in the core technology group. He has contributed to multiple open source projects including Apache MINA, Apache JAMES, and JBoss Netty. He has a B.S. in computer science from Utah Valley University and a M.S. in computer science from Brigham Young University.
The Web is changing faster than you can imagine and it is going to continue to do so. Webs of Documents are giving way to machine-processable Webs of Information. We no longer care about data containers, we only care about data and how it connects to what we already know.
Perhaps the concepts of the Semantic Web initiative are new to you. Or perhaps you have been hearing for years how great technologies like RDF, SPARQL, SKOS and OWL are and have yet to see anything real come out of it.
Whether you are jazzed or jaded, this workshop will provide you with the understanding of a technological tidal wave that is heading in your direction.
In this workshop, we will:
Explain the Web and Web architecture at a deeper level Apply Web and Semantic Web technologies in the Enterprise and make them work together Integrate structured and unstructured information Create good, long-lived logical names (URIs) for information and services Use the Resource Description Framework (RDF) to integrate documents, services and databases Use popular RDF vocabularies such as Dublin Core, FOAF, DOAP Query RDF and non-RDF datastores with the SPARQL query language Model and Do Inference with the Web Ontology Language (OWL)
Bring your laptops. This is a hands-on workshop.
Brian Sletten is a liberal arts-educated software engineer with a focus on using and evangelizing forward-leaning technologies. He has a background as a system architect, a developer, a security consultant, a mentor, a team lead, an author and a trainer and operates in all of those roles as needed. His experience has spanned the online game, defense, finance, academic, hospitality, retail and commercial domains. He has worked with a wide variety of technologies such as network matrix switch controls, 3D simulation/visualization, Grid Computing, P2P and Semantic Web-based systems. He has a B.S. in Computer Science from the College of William and Mary. He is President of Bosatsu Consulting, Inc. and lives in Los Angeles, CA.
He focuses on web architecture, resource-oriented computing, social networking, the Semantic Web, scalable systems, security consulting and other technologies of the late 20th and early 21st Centuries.
Dr. Venkat Subramaniam, founder of Agile Developer, Inc., has trained and mentored thousands of software developers in the US, Canada, Europe, and Asia. Venkat helps his clients effectively apply and succeed with agile practices on their software projects, and speaks frequently at international conferences and user groups. Venkat is also an adjunct faculty and teaches CS courses remotely at the University of Houston. He is author of ".NET Gotchas," coauthor of 2007 Jolt Productivity Award winning "Practices of an Agile Developer," author of "Programming Groovy: Dynamic Productivity for the Java Developer" and "Programming Scala: Tackle Multi-Core Complexity on the Java Virtual Machine" (Pragmatic Bookshelf).
Matt Stine is an Enterprise Java/Cloud consultant based in Memphis, TN. He is a twelve year veteran of the enterprise software and web development industries, with experience spanning the healthcare, biomedical research, e-commerce, and retail store domains.
Matt has spoken at conferences ranging from JavaOne to CodeMash and has published several articles for Agile Zone, GroovyMag and NFJS the Magazine, as well as the Selenium 2.0 DZone Refcard. Matt is also the founder of the Memphis/Mid-South Java User Group.
His current areas of interest include lean/agile software development, software architecture, mobile application development and functional languages.
Brian Sletten is a liberal arts-educated software engineer with a focus on using and evangelizing forward-leaning technologies. He has a background as a system architect, a developer, a security consultant, a mentor, a team lead, an author and a trainer and operates in all of those roles as needed. His experience has spanned the online game, defense, finance, academic, hospitality, retail and commercial domains. He has worked with a wide variety of technologies such as network matrix switch controls, 3D simulation/visualization, Grid Computing, P2P and Semantic Web-based systems. He has a B.S. in Computer Science from the College of William and Mary. He is President of Bosatsu Consulting, Inc. and lives in Los Angeles, CA.
He focuses on web architecture, resource-oriented computing, social networking, the Semantic Web, scalable systems, security consulting and other technologies of the late 20th and early 21st Centuries.
Ken has been a practitioner and instructor of RUP since the late 1990s, and an extreme programmer and coach since the middle 2000s. Ken has worked with Fortune 500 companies to small startups in the roles of developer, designer, application architect and enterprise architect. Ken's current focus is on enterprise system automation and continuous delivery systems.
Ken is an international speaker on the subject of software engineering speaking at conferences such as JavaOne, JavaZone, Jax-India, and The Strange Loop. He is a regular speaker with NFJS where he is best known for his architecture and security hacking talks. In 2009, Ken was honored by being awarded the JavaOne Rockstar Award at JavaOne in SF, California and the JavaZone Rockstar Award at JavaZone in Oslo, Norway as the top ranked speaker.
Nathaniel T. Schutta is a senior software engineer focussed on making usable applications. A proponent of polyglot programming, Nate has written two books on Ajax and speaks regularly at various worldwide conferences, No Fluff Just Stuff symposia, universities, and Java user groups. In addition to his day job, Nate is an adjunct professor at the University of Minnesota where he teaches students to embrace dynamic languages.
Pratik Patel is the CTO of Atlanta based TripLingo (http://www.triplingo.com/). He wrote the first book on 'enterprise Java' in 1996, "Java Database Programming with JDBC." He has also spoken at various conferences and participates in several local tech groups and startup groups. He's in the startup world now and hacks iOS, Android, HTML5, CSS3, JavaScript, Rails, and ..... well everything except Perl. Pratik's specialty is in large-scale applications for mission-critical and mobile applications use. He has designed and built applications in the retail, health care, financial services, and telecoms sectors. Pratik holds a master's in Biomedical Engineering from UNC, has worked in places such as New York, London, and Hong Kong, and currently lives in Atlanta, GA.
Ted Neward is an Architectural Consultant with Neudesic, LLC as well as the Principal with Neward & Associates. He speaks on the conference circuit discussing Java, .NET and XML service technologies, focusing on Java-.NET interoperability, programming languages, and virtual machine technologies. He has written several widely-recognized books in both the Java and .NET space, including the recently- released "Professional F#" and widely-acclaimed "Effective Enterprise Java". He lives in the Pacific Northwest.
Matthew McCullough is an energetic 15 year veteran of enterprise software development, open source education, and co-founder of Ambient Ideas, LLC, a Denver consultancy. Matthew currently is a trainer for GitHub.com, author of the Git Master Class series for O'Reilly, speaker at over 30 national and international conferences, author of three of the top 10 DZone RefCards, and President of the Denver Open Source Users Group. His current topics of research center around project automation: build tools (Maven, Leiningen, Gradle), distributed version control (Git), Continuous Integration (Hudson) and Quality Metrics (Sonar). Matthew resides in Denver, Colorado with his beautiful wife and two young daughters, who are active in nearly every outdoor activity Colorado has to offer.
Neal is Software Architect and Meme Wrangler at ThoughtWorks, a global IT consultancy with an exclusive focus on end-to-end software development and delivery. Before joining ThoughtWorks, Neal was the Chief Technology Officer at The DSW Group, Ltd., a nationally recognized training and development firm. Neal has a degree in Computer Science from Georgia State University specializing in languages and compilers and a minor in mathematics specializing in statistical analysis. He is also the designer and developer of applications, instructional materials, magazine articles, video presentations, and author of 6 books, including the most recent The Productive Programmer. His language proficiencies include Java, C#/.NET, Ruby, Groovy, functional languages, Scheme, Object Pascal, C++, and C. His primary consulting focus is the design and construction of large-scale enterprise applications. Neal has taught on-site classes nationally and internationally to all phases of the military and to many Fortune 500 companies. He is also an internationally acclaimed speaker, having spoken at over 100 developer conferences worldwide, delivering more than 600 talks. If you have an insatiable curiosity about Neal, visit his web site at http://www.nealford.com. He welcomes feedback and can be reached at nford@thoughtworks.com.
Tim is a full-stack generalist and passionate teacher who loves coding, presenting, and working with people. He believes the best developer is one who is well-informed of specifics and can also make deep connections between software development and the broader world. He has recently been exploring non-relational data stores, continuous deployment, and how software architecture should resemble an ant colony.
His firm, the August Technology Group, helps clients with product development, technology consulting, and technology upgrade projects atop the JVM. The August Group's technology preferences reflect the generalist sensibilities of its founder, and its development practices are always lightweight, self-improving, and humanizing by design.
Tim is a speaker internationally and on the No Fluff Just Stuff tour in the United States, and is co-president of the Denver Open Source User Group in the Denver area, co-author of the DZone Clojure RefCard, co-presenter of the best-selling O'Reilly Git Master Class, co-author of Building and Testing with Gradle, and a member of the O'Reilly Expert Network.
He lives in Littleton, CO with the wife of his youth and their three children.
Peter is Senior VP Engineering and Senior Fellow at General Assembly, a campus for technology, design, and entrepreneurship. He is responsible for hiring and managing an engineering team and is involved in the development and teaching of the technology curriculum.
Peter is a regular presenter at national and international conferences on ruby, nodejs, NoSQL (especially MongoDB and neo4j), cloud computing, software craftsmanship, java, groovy, javascript, and requirements and estimating. He is on the program committee for Code Generation in Cambridge, England and the Domain Specific Modeling workshop at SPLASH (was ooPSLA) and reviews and shepherds proposals for the BCS SPA conference.
He has presented at a range of conferences including DLD conference, ooPSLA, RubyNation, SpringOne2GX, Code Generation, Practical Product Lines, the British Computer Society Software Practices Advancement conference, DevNexus, cf.Objective(), CF United, Scotch on the Rocks, WebDU, WebManiacs, UberConf, the Rich Web Experience and the No Fluff Just Stuff Enterprise Java tour.
He has been published in IEEE Software, Dr. Dobbs, IBM developerWorks, Information Week, Methods & Tools, Mashed Code, NFJS the Magazine and GroovyMag. He's currently writing a book on managing software development for Pearson.
He is an organizer of the CTO School http://www.ctoschool.org - an organization in NYC devoted to creating the next generation of technical leaders. He also organizes the node.js meetup in New York and co-organizes the Domain Driven Design and Grails meetups.
He is a regular instructor at General Assembly in New York. His presentations cover managing software development, NoSQL, mobile development, Javascript development, Twitter Bootstrap and Javascript frameworks.
He tweets regularly as @peterbell.
Craig Walls has been professionally developing software for almost 18 years (and longer than that for the pure geekiness of it). He is a senior engineer with SpringSource as the Spring Social project lead and is the author of Spring in Action and XDoclet in Action (both published by Manning) and Modular Java (published by Pragmatic Bookshelf). He's a zealous promoter of the Spring Framework, speaking frequently at local user groups and conferences and writing about Spring and OSGi on his blog. When he's not slinging code, Craig spends as much time as he can with his wife, two daughters, 4 birds and 3 dogs.
Estelle Weyl started her professional life in architecture, then managed teen health programs. In 2000, she took the natural step of becoming a web standardista. She has consulted for Kodakgallery, Yahoo! and Apple, among others. Estelle shares esoteric tidbits learned while programming CSS, JavaScript and XHTML in her blog at http://evotech.net/blog and provides tutorials and detailed grids of CSS3 and HTML5 browser support in her blog at http://www.standardista.com. She is the author of HTML5, CSS3, and JavaScript for Mobile (O'Reilly, October 2011) and HTML5 and CSS3 for the Real World (Sitepoint, May 2011). While not coding, she works in construction, de-hippifying her 1960?s throwback abode.
Johnny is a principal engineer at Time Warner Cable in the Web Services group with over fifteen years of web application development. He is a generalist with experience in all layers of an application from the database to the UI. Currently, the projects he works on see traffic in the millions on a monthly basis, and the work has extended out to other client platforms including the popular Time Warner Cable iPad live video streaming application which recently won a engineering award from the Academy of Television Arts and Sciences.
Eric writes high-performance web applications with a variety of platforms like Grails, HBase, Node.js and LIFT. He also maintains some interesting Javascript applications like mapping customer downloads, installations and registrations in real-time with Google Maps and a tool that helps debug Javascript in all web browsers (stacktracejs.org).
He often speaks at user groups about Javascript, Hadoop, and other miscellany.
He actively develops and maintains several OSS projects like (CSS Lint) a couple Gradle plugins, Javascript tools on GitHub, and a blog with 1500+ subscribers (eriwen.com).
Eric lives in Westminster, CO, with his wife, Erika and two insane mutts. He tends to interact with other community members via Twitter (@eriwen)
Thomas A. Valletta, Open Web Evangelist, Enterprise Architect, and hack has been developing for the web for fourteen years. His clients range across industries including defence, healthcare, technology, e-commerce, human resources and religion. He has professionally developed native applications for Android, iPhone, WebOS, Blackberry, and Windows. He has engineered solutions using Java, .Net, PHP, JavaScript, Objective C, VBScript and Commodore Basic (I am pretty sure that those last two don't count). He lives outside of Salt Lake City, Utah with his wife and four children.
Dr. Johannes Ullrich is Dean of Faculty, Chief Research Officer and a faculty member of SANS Technology Institute. Johannes also serves on the following SANS Technology Institute committees: Faculty and Administration, Curriculum and Long Range Planning. As chief research officer for the SANS Institute, Johannes is currently responsible for the SANS Internet Storm Center (ISC) and the GIAC Gold program. He founded DShield.org in 2000, which is now the data collection engine behind the ISC. His work with the ISC has been widely recognized, and in 2004, Network World named him one of the 50 most powerful people in the networking industry. Prior to working for SANS, Johannes worked as a lead support engineer for a Web development company and as a research physicist. Johannes holds a PhD in Physics from SUNY Albany and is located in Jacksonville, Florida.
Dylan Schiemann is CEO of SitePen and co-founder of the Dojo Toolkit, an open source JavaScript toolkit for rapidly building web sites and applications, and is an expert in the technologies and opportunities of the Open Web. Under his guidance, SitePen has grown from a small development firm to a leading provider of inventive tools, skilled software engineers, knowledgeable consulting services, and top-notch training and advice. Dylan is a contributing author to the O'Reilly book "Even Fast Web Sites". Dylan's commitment to R&D has enabled SitePen to be a major contributor to or creator of pioneering open source web development toolkits and frameworks like Dojo, cometD, DWR, and Persevere. Prior to SitePen, Dylan developed web applications for companies like Renkoo, Informatica, Security FrameWorks and Vizional Technologies. He is a co-founder of Comet Daily, LLC, a board member at Dojo Foundation and a member of the Advisory Board at Aptana. Dylan earned his Masters in Physical Chemistry from UCLA and his B.A. in Mathematics from Whittier College.
Brian Sam-Bodden is an author, instructor, speaker and hacker that has spent over fifteen years crafting software systems. He holds dual bachelor degrees from Ohio Wesleyan University in computer science and physics and heads Integrallis http://www.integrallis.com. He is a frequent speaker at user groups and conferences nationally and abroad. Brian is the author of "Beginning POJOs: Spring, Hibernate, JBoss and Tapestry", co-author of the "Enterprise Java Development on a Budget: Leveraging Java Open Source Technologies" and a contributor to O'reilly's "97 Things Every Project Manager Should Know".
Terry Ryan is a Worldwide Developer Evangelist for Adobe. The job basically entails helping developers using Adobe technologies to be successful. His focus is on web and mobile technologies including expertise in both Flash and HTML. Previous to that, he spent a decade working in various technical roles at the Wharton School at the University of Pennsylvania.
Terry is also the author of Driving Technical Change, a Pragmatic Bookshelf title. It's about convincing reluctant co-workers to adopt new tools and ideas.
He blogs at http://terrenceryan.com/blog and is tpryan on Twitter.
Tim Kadlec is web developer living and working in northern Wisconsin with a propensity for efficient, standards-based front-end development. His diverse background working with small companies to large publishers and industrial corporations has allowed him to see how these standards can be effectively utilized for businesses of all sizes.
His current interests include creating cross-platform sites and applications using the open web stack and improving the state of performance optimization on the web.
He sporadically writes about a variety of topics at timkadlec.com. You can also find him sharing his thoughts in a briefer format on @tkadlec. Tim also curates Breaking Development, one of the first conferences dedicated to design and development for mobile devices using web technologies.
Denise R. Jacobs is a writer, speaker, designer, and educator on many things web. She is author of The CSS Detective Guide, and is a co-author for InterAct with Web Standards: A Holistic Approach to Web Design. She is a Web Solutions Consultant based in Miami, Florida,
Earlier in life, Molly avoided a regular job including those silly start-up ventures and chose instead to write a lot of books and articles and stuff on Web standards, and talk a lot about them, too. She now avoids the former, while the latter is an ongoing inevitability.
To learn more about Molly and her work, you can check out her blog at http://molly.com/ or interact with her on Twitter @mollydotcom. Better yet, come have a chat F2F at RWX Fort Lauderdale 2011!
Mike Heath is a principal software engineer for the LDS Church working in the core technology group. He has contributed to multiple open source projects including Apache MINA, Apache JAMES, and JBoss Netty. He has a B.S. in computer science from Utah Valley University and a M.S. in computer science from Brigham Young University.
Erik Hatcher is the co-author of "Lucene in Action" as well as co-author of "Java Development with Ant". Erik has been an active member of the Lucene community - a leading Lucene and Solr committer, member of the Lucene Project Management Committee, member of the Apache Software Foundation as well as a frequent invited speaker at various industry events. Erik co-founded Lucid Imagination, and is a member of its technical staff.
Szczepan Faber is a software craftsman professionally involved in IT since early 2000. He worked for Thoughtworks UK helping companies to build enterprise software using XP methods. He was a team leader and an agile coach for Sabre Holdings where he relentlessly pushed teams for more agility, effective processes and state-of-art development environment. Szczepan specializes in an enterprise project automation, developer tools and agile engineering practices. His passion for agile testing and TDD led him to author or contribute to numerous open source tools in programming languages ranging from Groovy, Java, JavaScript to Flex or Python.
Szczepan is a founder of Mockito framework, a popular mocking library that augments Test Driven Development. Szczepan has been speaking at international conferences and delivered various trainings on agile programming techniques and project automation.
Gabriel Dayley is a senior software developer for the LDS Church where he has been influential in developing rich web applications using GWT. He is the founder and manager of the "Utah Google Technology User Group" and enjoys interacting with others about technology. He has been developing in Java for over 10 years and has served on the board for the Utah Java User Group. He has B.S in Computer Science from Utah Valley University and currently resides in Lehi, Utah.
Luke Daley is a member of the Gradleware engineering team. At Gradleware Luke works on Gradle (A JVM based build automation tool) and helps teams reach new levels of project automation and quality.
Luke is the lead of the Geb project (a productivity focussed Groovy browser automation/web testing tool) project which he created in 2010. You'll also find Luke contributing to other Open Source projects such as Grails (a Groovy web development framework), Spock (a next generation testing framework for the JVM) and anything else that catches his attention. With a ?results over rhetoric? ethos, Luke's focus is on tools that empower software professionals to deliver and innovate, not try to save them from themselves.
Originally from Australia, Luke now resides in London where he spreads his time among work, software crafstmanship, musicianship and cursing the local weather.
David Chandler works with the Google Developer Tools Team in Atlanta. An electrical engineer by training, Chandler got hooked on developing database Web applications in the days of NCSA Mosaic and has since written Web applications professionally in a variety of languages, including C, perl, ksh, ColdFusion, Java, JSF, GWT, and Dart. Prior to joining Google, Chandler worked on Internet banking applications with Intuit and launched a non-profit startup built with GWT and AppEngine. Chandler holds a patent on a method of organizing hierarchical data in a relational database and blogs about Java Web development at turbomanage.wordpress.com.
David Bock is a Principal Consultant at CodeSherpas, a company he founded in 2007. Mr. Bock is also the President of the Northern Virginia Java Users Group, the Editor of O'Reilly's OnJava.com website, and a frequent speaker on technology in venues such as the No Fluff Just Stuff Software Symposiums.
In January 2006, Mr. Bock was honored by being awarded the title of Java Champion by a panel of esteemed leaders in the Java Community in a program sponsored by Sun. There are approximately 100 active Java Champions worldwide.
David has also served on several JCP panels, including the Specification of the Java 6 Platform and the upcoming Java Module System.
In addition to his public speaking and training activities, Mr. Bock actively consults as a software engineer, project manager, and team mentor for commercial and government clients.
As Principal Software Engineer at JBoss, by Red Hat, Dan serves as the JBoss Community liaison, leads the JBoss Testing Initiative and is a member of the Seam, Weld, Arquillian and ShrinkWrap projects. He authored Seam in Action (Manning), served as a representative for Red Hat on the JSR-314 Expert Group (JSF 2.0), writes for IBM developerWorks and NFJS magazine and is an internationally recognized speaker. He's appeared at major industry conferences including JavaOne, Devoxx, NFJS, JAX and Jazoon and has received recognition as a JavaOne Rock Star, a JBossWorld Top Presenter and a JAX Hall of Fame speaker.
To colleagues, Dan's known for his hard work and passion for Open Source technologies. His technical expertise includes Java frameworks (Seam, CDI, Weld, JSF, EJB 3, JPA, Hibernate, Spring), testing frameworks (Arquillian, JUnit, TestNG, Selenium), build tools (Maven 2, Gradle, Ant) and web development (Ajax, JavaScript, CSS) and more.
You can keep up with Dan's discoveries by reading his blogs at http://mojavelinux.com and http://community.jboss.org/people/dan.j.allen/blog or tracking what he's currently up to by following him on Twitter at http://twitter.com/mojavelinux.