Bare-knuckle web development Agile Prague Johannes Brodwall, Chief scientist Exilesoft Global.

Slides:



Advertisements
Similar presentations
Building and using REST information services Rion Dooley.
Advertisements

Bare-knuckle web development DevDay.LK Johannes Brodwall, Chief scientist Exilesoft
Johannes Brodwall Exilesoft
Extreme Programming Live WeActuallyBuildStuff Johannes Brodwall Exilesoft Chief Guest starring: Chaminda Sooriyapperuma.
Coding dojo PocketMobile Johannes Brodwall, Chief scientist Exilesoft.
Application Graphic design / svetagraphics.com 01 FRAMEWORK data service.
A Brief Introduction to Test- Driven Development Shawn M. Jones.
Building a SOA roadmap for your enterprise Presented by Sanjeev Batta Architect, Cayzen Technologies.
What’s wrong with this proof? If you figure it out, don’t call it out loud – let others ponder it as well. 1. Let a and b be non-zero such thata = b 2.
Bare-knuckle web development XP Days Ukraine Johannes Brodwall, Chief scientist Exilesoft Global.
Experience with the Course in Novi Sad Zoran Budimac.
Copyright © 2006, ZapThink, LLC 1 Achieving the “5 Nines” of Business Continuity in SOA Applications Jason Bloomberg Senior Analyst ZapThink, LLC.
What is the Nervous System?  The Nervous System is a network of specialized cells called neurons that send messages to and from the brain.  Without.
Rainbow Sprint Plan Smidig 2012 Johannes Brodwall, Chief scientist Exilesoft.
Test-Driven Development Gary Brown Building better software one test at a time.
Test Driven Development Coding Katas ADRIAN O’SULLIVAN, LEAD APPLICATION DEVELOPER DEUTSCHE BANK GLOBAL TECHNOLOGY.
Mouse-trap cars The design PROCESS.
From 3 weeks to 30 minutes – a journey through the ups and downs of test automation.
Ori Calvo, 2010 “If people want to have maximum reach across *all* devices then HTML will provide the broadest reach” Scott Guthrie,
Test Driven Development TDD. Testing ”Testing can never demonstrate the absence of errors in software, only their presence” Edsger W. Dijkstra (but it.
Michael Burnside Blog: Software Quality Assurance, Quality Engineering, and Web and Mobile Test.
Remote Pair Programming Agile 2013 Johannes Brodwall Exilesoft Chief Guest starring: Niruka Ruhunage.
Lisa Richie ED 529. After years of thinking, I decided that I wanted to be around children all the time. I have an Elementary Education degree, and have.
Systems Development Methodologies 3rd semester Autum 2014.
Bare-knuckle web development Odessa Johannes Brodwall, Chief scientist Exilesoft Global.
Bringing power of simulation to the public.
Does Gender Affect How Fast You Read??? By: Shelbi Fenwick.
Going to Sri Lanka Miles Johannes Brodwall, Chief scientist Exilesoft Global.
CSE 219 Computer Science III Program Design Principles.
@DNNCon Don’t forget to include #DNNCon in your tweets! Effective Unit Testing for DNN James McKee Solutions Developer / Enterprise
Copyright 2007, Information Builders. Slide 1 So You Just Bought WebFOCUS… Dan Schultz Director June, 2008.
Software Construction Lecture 18 Software Testing.
A Practical Guide To Unit Testing John E. Boal TestDrivenDeveloper.com.
A Limited Definition of Web Services Paul Kopacz CIS* Service Oriented Architecture Instructor: Qusay H. Mahmoud, Ph.D. February.
Using Out of the Box Web Parts 3 | SharePoint Saturday.
Page 1 © Hortonworks Inc – All Rights Reserved More Data, More Problems A Practical Guide to Testing on Hadoop 2015 Michael Miklavcic.
Refactoring & Testability. Testing in OOP programming No life in flexible methodologies and for refactoring- infected developers without SOME kind of.
Recursion Pepper. Another way to loop Call yourself repeatedly until you say to stop. Example: add up 10 numbers using addUp. -- Input – number to count.
Foreign language in my future career.
EMBEDDING INTERACTION IN THE ONLINE CLASSROOM Dr. Dana K. Whippo National Economics Teaching Association November 2015.
Software Testing 1Software testing. V model Software testing2.
HOW AND WHY TO LOVE CUCUMBER By Dana Scheider. Is This Your Programming Experience?
Hints and Tips Creating standards in Microsoft Project Andy Jessop – Managing Director Project Learning Limited.
Solving the hard problems of User Experience
Test-Driving ASP.NET Development Tampa Code Camp – July 15 th, 2006 Cory Foy
Johannes Brodwall Chief Scientist Smidig arkitektur.
Talking With Students About Mindsets. One day, in a class that is really important to You, and that you like a lot, the teacher returns an important paper.
WS-CAF Demo A Demonstration of WS-CTX. WS-CAF In A Nutshell Collection of 3 specifications WS-Context, WS-Coordination Framework and WS- Transaction Management.
JavaScript Unit Test by MinHo Kim (Dexter Developer Guide)
Really Useful Web Services
Multi-purpose tests (Cool tricks with JUnit) JavaZone 2012 Johannes Brodwall, Principal Architect Steria
Modern Development Technologies in SharePoint SHAREPOINT SATURDAY OMAHA APRIL, 2016.
Chapter 6 Functions The Tic-Tac-Toe Game. Chapter Content In this chapter you will learn to do the following: 0 Write your own functions 0 Accept values.
DOWeR Detecting Outliers in Web Service Requests Master’s Presentation of Christian Blass.
DO NOW` 1. Write the equation for the speed of light. 2. What two ways does light behave? DO NOW` 1. Write the equation for the speed of light. 2. What.
Software Engineering cosc 4359 Spring 2017.
Recruiting and managing highly skilled talents
Speeding Ticket Speeding Ticket Speeding Ticket 3-3-3
Creativity in Algorithms
Written by Cheron Verster
Project 1 Project_1_The_Eight_Puzzle.doc.
(Test Driven) Software Development
Project 1 Project_1_The_Eight_Puzzle.doc.
Natural Hazards!.
Roam Around the World: Without Wings, Without Wheels
Recursion Pepper.
Adder and Subtractors Discussion D4.1. Adder and Subtractor Circuits Objective: (i) To construct half and full adder circuit and verify its working (ii)
Forces Connected Bodies.
How To Load A Fact Table Really, Really Fast
Presentation transcript:

Bare-knuckle web development Agile Prague Johannes Brodwall, Chief scientist Exilesoft Global

Philosophy Demonstration Ruminations

Part I:

The bare-knuckle philosophy

Fear => Pair Hubris => Speed (and fun)

High impact with low ceremony

Framework light Test-driven No calculators

Light on framework

Frameworks solve 80% of the job…

… and makes the rest 10 times as hard

“Why did Hibernate suddenly slow down?”

“How do I make JBoss behave the way I want?”

“How do I implement a custom SOAP header with JAX-WS?”

“Why did my dependencies not inject?”

“How do I do anything with Spring”

Test-driven

Fast feedback cycle

“I can see how TDD works for toy examples…”

“… but how can we use it when we have all these really complicated technologies???”

(Hint: “all these complicated technologies” I think I see your problem right here... )

Don’t use a calculator…

Part II:

Demo: Phonebook web app

Part III:

The real world

Build your app this way?

Probably not

Well, why not?

I am most likely insane

Understand what’s going on

«Don’t reinvent the wheel»

Are you using technology to solve your problems?

Or so that you don’t have to face your problems?

... yet.

Overheated brain

95 % test coverage

5-10 seconds

95 % test coverage 5-10 seconds < 1 day to create «framework»

SOAP: 1.Construct XML 2.POST on HttpURLConnection

@Override public String getCountryByIp(String ipAddress) { Document soapRequest = soapElement("S:Envelope", $("S:Body", wsxElement("wsx:GetGeoIP", $("wsx:IPAddress", ipAddress)))); Document soapResponse endpoint.postRequest(getSOAPAction(), soapRequest); return $(soapResponse).xpath("/Envelope/Body/*").xpath("GetGeoIPResult/CountryName").text(); }

No friction

Thinking in tests

1.

Guiding test/ Web tests/ Acceptance test/ Usage Flow test

2.

Get the infrastructure to work => separate out responsibility

3.

Fine grained tests for internal logic

Shallow, then deep

(without changing tests)

Conclusion:

YAGNI

No calculator until…

Don’t use a framework you couldn’t have written yourself

Thank you