SlideShare ist ein Scribd-Unternehmen logo
1 von 27
Downloaden Sie, um offline zu lesen
JJ

THE UN-INTEGRATED DEVELOPMENT
ENVIRONMENT
Joel Byler
@joelbyler
January 9, 2014
CodeMash 2.0.1.4
Kalihari Resort
Sandusky, OH

Monday, January 13, 14
WHO AM I?
 





JOEL BYLER

 Aspiring Software Craftsman
 Organizer for Cleveland Ruby

Brigade (aka CleRb)
 Enterprise Java developer
 Actively growing my Ruby and
JavaScript skills

Monday, January 13, 14
WHY DO WE USE AN IDE?
 Syntax Highlighting
 Code Completion
 Refactoring Tools
 Project Navigation
 Debugger

Monday, January 13, 14
ADDITIONAL THINGS AN IDE DOES
 Build on Save
 Run Tests
 Deploy to Server
 Dependency Management

Monday, January 13, 14
THINGS AN IDE SHOULD NOT DO
 Block you from saving
 Make YOU wait!!!
 Interact with social media

5

Monday, January 13, 14
WORKFLOW

Install
dependencies

I want to know when
the tests fail!

Red

Green

Refactor

I also want to know
when the tests pass!

Continuous
integration

Advice here is
always helpful!

6

Monday, January 13, 14
WORKFLOW
Should NOT require a specific IDE
Should not require an IDE at all!
DANGER: what happens when you

depend too much on your IDE?

7

Monday, January 13, 14
DISCLAIMER
During the course of this session we are going to see
a number of tools for various different languages.
I’m not claiming that any of these tools or
techniques are great ideas but these exercises are
intended to give you something to consider the next
time you reach for your IDE and notice how many
things it may be doing for you when you can do
them yourself outside of the IDE.

8

Monday, January 13, 14
EASY TO REMEMBER? 6 “G”S
Growl - notifications
Guard - ruby
Grunt - javascript
Gradle - java
Giles - .net auto tester
Gendarme - .net code analysis

9

Monday, January 13, 14
RUBY
 Dependency Management
 bundler
 Automated Tester
 guard
 Code Analysis
 rubocop

Monday, January 13, 14
BUNDLER=>DEPENDENCY MANAGEMENT
RAKE => TASK RUNNER
https://github.com/joelbyler/unintegrated_dev_env/raw/
master/media/BundleInstall.mov

11

Monday, January 13, 14
RUBOCOP=>CODE ANALYSIS
https://github.com/joelbyler/unintegrated_dev_env/raw/
master/media/Rubocop.mov

12

Monday, January 13, 14
GUARD=>AUTOMATED TASK RUNNER
https://github.com/joelbyler/unintegrated_dev_env/raw/
master/media/Guard.mov

13

Monday, January 13, 14
JAVASCRIPT
 Dependency Management
 npm
 Automated Tester
 grunt watch
 Code Analysis
 jshint

Monday, January 13, 14
NPM=>DEPENDENCY MANAGEMENT
https://github.com/joelbyler/unintegrated_dev_env/raw/
master/media/npm.mov

15

Monday, January 13, 14
GRUNT => TASK RUNNER
JSHINT => CODE QUALITY ANALYSIS
https://github.com/joelbyler/unintegrated_dev_env/raw/
master/media/Grunt.mov

16

Monday, January 13, 14
GRUNT WATCH=>AUTOMATED TASK RUNNER
https://github.com/joelbyler/unintegrated_dev_env/raw/
master/media/GruntWatch.mov

17

Monday, January 13, 14
JAVA
 Dependency Management
 gradle dependencies { .. }
 Automated Tester
 guard

(gradle is not there yet)
 Code Analysis
 gradle findbugsMain
 Deploy
[bonus]
 gradle jettyRun

Monday, January 13, 14
GRADLE => TASK RUNNER
FINDBUGS => CODE ANALYSIS
https://github.com/joelbyler/unintegrated_dev_env/raw/
master/media/Gradle.mov

19

Monday, January 13, 14
GUARD=>AUTOMATED TASK RUNNER
https://github.com/joelbyler/unintegrated_dev_env/raw/
master/media/GuardJetty.mov

20

Monday, January 13, 14
C#
 Dependency Management
 Nuget
 Automated Tester
 Giles
 Code Analysis
 Gendarme

Monday, January 13, 14
NUGET=>DEPENDENCY MANAGEMENT
https://github.com/joelbyler/unintegrated_dev_env/raw/
master/media/nuget.mov

22

Monday, January 13, 14
GILES => AUTOMATED TASK RUNNER
GENDARME => CODE ANALYSIS
https://github.com/joelbyler/unintegrated_dev_env/raw/
master/media/GilesGenarme.mov

23

Monday, January 13, 14
RESOURCES
Demo Source
https://github.com/joelbyler/unintegrated_dev_env
Ruby Rogues - Tool Sharpening
http://rubyrogues.com/129-rr-sharpening-toolswith-ben-orenstein/
Ruby Resources
http://guardgem.org/
http://bundler.io/

Monday, January 13, 14

JavaScript Resources
http://gruntjs.com/
https://npmjs.org/
RESOURCES CONTINUED
Java Resources
http://www.gradle.org/
http://findbugs.sourceforge.net
C# and Visual Studio Resources
http://testergiles.herokuapp.com/
http://nuget.codeplex.com/
http://www.mono-project.com/Gendarme

Monday, January 13, 14
THAT’S A WRAP!
Joel Byler
@joelbyler

Monday, January 13, 14
COME FLOAT WITH US!
Located on a 10,000 square foot boat on the
Cleveland waterfront, our team exemplifies
how Agile values & principles are practiced.
Come float, deliver, and learn with us, or
leverage our expertise to help you change
your company culture.

@leandog

leandog.com

GDI

Monday, January 13, 14

Weitere ähnliche Inhalte

Andere mochten auch

Phan tich tinh hinh cung ung du tru su dungvat tu caoxu
Phan tich tinh hinh cung ung du tru su dungvat tu caoxuPhan tich tinh hinh cung ung du tru su dungvat tu caoxu
Phan tich tinh hinh cung ung du tru su dungvat tu caoxu
ma ga ka lom
 
Phan tich hoat dong kinh doanh xang dau
Phan tich hoat dong kinh doanh xang dauPhan tich hoat dong kinh doanh xang dau
Phan tich hoat dong kinh doanh xang dau
ma ga ka lom
 

Andere mochten auch (12)

Show an Open Source Project Some Love and Start Using Travis-CI
Show an Open Source Project Some Love and Start Using Travis-CIShow an Open Source Project Some Love and Start Using Travis-CI
Show an Open Source Project Some Love and Start Using Travis-CI
 
Spring Boot. Boot up your development
Spring Boot. Boot up your developmentSpring Boot. Boot up your development
Spring Boot. Boot up your development
 
3d origami 0813
3d origami 08133d origami 0813
3d origami 0813
 
Getting ready to java 8
Getting ready to java 8Getting ready to java 8
Getting ready to java 8
 
Phan tich tinh hinh cung ung du tru su dungvat tu caoxu
Phan tich tinh hinh cung ung du tru su dungvat tu caoxuPhan tich tinh hinh cung ung du tru su dungvat tu caoxu
Phan tich tinh hinh cung ung du tru su dungvat tu caoxu
 
Phan tich hoat dong kinh doanh xang dau
Phan tich hoat dong kinh doanh xang dauPhan tich hoat dong kinh doanh xang dau
Phan tich hoat dong kinh doanh xang dau
 
Spring Web flow. A little flow of happiness
Spring Web flow. A little flow of happinessSpring Web flow. A little flow of happiness
Spring Web flow. A little flow of happiness
 
Top 10 reasons to migrate to Gradle
Top 10 reasons to migrate to GradleTop 10 reasons to migrate to Gradle
Top 10 reasons to migrate to Gradle
 
Spring.Boot up your development
Spring.Boot up your developmentSpring.Boot up your development
Spring.Boot up your development
 
Serialization and performance in Java
Serialization and performance in JavaSerialization and performance in Java
Serialization and performance in Java
 
Darknet
DarknetDarknet
Darknet
 
Crap. The Content Marketing Deluge.
Crap. The Content Marketing Deluge.Crap. The Content Marketing Deluge.
Crap. The Content Marketing Deluge.
 

Kürzlich hochgeladen

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Kürzlich hochgeladen (20)

Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 

Un-integrated Development Environment