Peter Bell
Evangelist/hacker for hackNY
Peter is an evangelist and hacker for hackNY - a not-for-profit that aims to federate the next generation of hackers for the New York innovation community.
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.
Presentations
Software Craftsmanship: Positioning, Patterns and Practices
None of us want to think of ourselves as "cowboy coders", but what does it mean to be a software craftsman, and is it a useful distinction? If so, what are some of the best patterns for honing our craft?
Starting with both sides of the recent debate on software craftsmanship from leaders in the SC movement to David Harvey and Dan North, we'll look at what software craftsmanship is and isn't, and then we'll explore specific patterns and practices that can help us to be better coders - whether or not we want to adopt the craftmanship moniker.
How to Build a Mobile App
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.
Getting started with NoSQL
You've heard about NoSQL data stores, but how and where should you introduce them into your projects?
This practical session will run you through case studies showing how companies have introduced key:value, document, column and graph databases to incrementally solve real world problems with their enterprise projects.
NoSQL data modeling with Mongo and Neo4j
With NoSQL data stores you need to completely rethink how to model your data.
In this session we'll look at the very different approaches to data modeling required for MongoDB and Neo4j.
Getting Started with Neo4j
Learn how to add Neo4j to your projects to add social, recommendation and other graph based capabilities to your applications.
We'll start by introducing the strengths, weaknesses and common use cases for neo4j. We'll then look at how to write effective graph based queries - directly or using Spring Data.
node.js - why you should *really* care
Javascript on the server - 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. Learn why node.js will be important to your applications and how to get started with node.
Getting started with node.js
A hands on introduction to the one non-JVM framework you need to know.
If you need to scale large numbers of relatively lightweight requests, node.js is a technology you need to understand. We'll look at the use cases, the strengths and weaknesses, how to get started with node.js and how to test and deploy your node.js applications effectively.
Backbone.js - the future of web applications
Are you in jQuery hell yet? As your web applications mature and become more responsive, DOM manipulation frameworks soon reveal their limitations.
Learn how backbone provides MVC on the client side to manage complex UI requirements. Your web applications will never be the same again!
Professional Javascript development for the Java developer
Like it or not, with application servers like node.js and increasingly rich client MVC frameworks like backbone.js, Javascript is in your future.
In this session we'll look deeply at the fundamental strengths and weaknesses of the language and how to become a javascript professional. We'll include information on using Jasmine for testing your Javascript.
The Lean Startup - for Enterprise Software Developers
Intuit and even the US government want to be "lean startups".
Learn how businesses of any size can improve the effectiveness and efficiency of their software development processes using lean startup principles like Minimum Viable Product, Validated Learning and Metrics Driven Development.
Why Agile Works
Learn why key agile practices work.
We'll look at the underlying theory from fields as diverse as queueing theory and computer networking to show why popular agile approaches work.
Agile Recipes
You don't need to "do scrum" or "implement lean" to be agile.
This pragmatic session shows how specific agile software development techniques can be adopted individually to solve particular problems. If you've wondered how to get started with agile or are not getting the benefits you'd expected from agile, this session will show you a way of thinking to make agile work for your organization - along with plenty of proven patterns for improving the effectiveness of your agile initiatives.
Practical Technology Selection and Adoption
What's the point attending a conference unless you do something with the knowledge you gain?
In this session we look at practical strategies for selecting new technologies and proven approaches for driving adoption back at the office.

