Download presentation
Presentation is loading. Please wait.
Published byRandy Dutch Modified over 10 years ago
1
Bare-knuckle web development DevDay.LK Johannes Brodwall, Chief scientist Exilesoft Global @jhannes
2
It can be fun and productive to use the basic tools
3
Philosophy Demonstration Ruminations
4
Part I:
5
Why
6
Learn new technologies OR Learn new things about your technology
7
High impact with low ceremony
8
Framework light Test-driven No calculators
9
Light on framework
10
How much time do you spend In debugger? Waiting for build? On Stackoverflow?
11
Frameworks solve 80% of the job…
12
… and makes the rest 10 times as hard
13
Test-driven
14
Fast feedback cycle
15
“I can see how TDD works for toy examples…”
16
“… but how can we use it when we have all these really complicated technologies???”
17
(Hint: “all these complicated technologies” I think I see your problem right here... )
18
“Don’t use a calculator…”
19
Part II:
20
Demo: Phonebook web app
21
What can you learn?
22
Test for web applications Specifying requirements with tests The difference between realistic slow tests (aka “integration”) and limited fast tests (aka “unit”) Dependencies in your tests What does the web server do? Refactoring shortcuts Growing design Alternatives to HTML templates (maybe)
23
Part III:
24
Ruminations
25
Those are my principles, and if you don't like them... well, I have others. - Groucho Marx
26
Build your app this way?
27
Probably not
28
Well, why not?
29
I am most likely insane
30
Or...
31
The reasonable man adapts himself to the world: the unreasonable one persists in trying to adapt the world to himself. Therefore all progress depends on the unreasonable man. - George Bernard Shaw
32
Understand what’s going on
33
«Don’t reinvent the wheel»
35
Are you using technology to solve your problems?
36
Or so that you don’t have to face your problems?
37
... yet.
38
Overheated brain
39
95 % test coverage
40
5-10 seconds
41
95 % test coverage 5-10 seconds < 1 day to create «framework»
42
SOAP: 1.Construct XML 2.POST on HttpURLConnection
43
@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(); }
44
No friction
45
Conclusion:
46
No calculator until…
47
Don’t just learn new technologies.
48
Don’t just learn new technologies => Learn new approaches, techniques and features about the technology you use
49
Thank you jbr@exilesoft.com http://johannesbrodwall.com http://exilesoft.com/exilee @jhannes Believe nothing on the faith of traditions. Do not believe a thing because many people speak of it. Do not believe on the faith of the sages of the past. Do not believe what you yourself have imagined. After examination, believe what you yourself have tested and found to be reasonable - Buddha
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.