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.
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 tweets regularly as @peterbell.
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.
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.
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.
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.
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.
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.
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.
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!
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.
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.
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.
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.