SlideShare una empresa de Scribd logo
1 de 19
Arthur Hicken – Parasoft
2013-12-20
December 2013
Parasoft © 2013

1
GoToWebinar Housekeeping

Your Participation
Open and hide your control panel
Join audio:
• Choose “Mic & Speakers” to use
VoIP
• Choose “Telephone” and dial
using the information provided
Submit questions and comments via
the Questions panel
Note: Today’s presentation is being
recorded and will be provided within
a week.

Parasoft © 2013

2
1 Overloaded System

 Know the load you need
 Normal
 Peak

 Test before deploying
 Isolate each component
 Service Virtualization

Parasoft © 2013

3
2 Text Editors

Text editors
• VI
• Emacs

Modern editors:
• Save Time
• Reduce bugs
• Increase understanding
Parasoft © 2013

4
Results where they’re needed

 Email is not an IDE
 Browser is not an IDE
Tasks
Automatically
Distributed

Parasoft © 2013

5
3 accidental assignments

 if (a = b) {}
 If a.equals(b){

Parasoft © 2013

6
4 Plaintext Passwords

Sensitive data
should be
encrypted

Enforce
reasonable
passwords

Sending
Storing
Parasoft © 2013

7
5 SQLi

Common
Easy to exploit
Easy to prevent
Data validation

Stored procedures
Parasoft © 2013

8
6 Unstable builds

Non-repeatable
builds
Human steps
required
Artifacts not all
under control
Environment
not under
control

Parasoft © 2013

9
7 Memory Errors









Overwrites
Read overflow
Write overflow
Lucky pointers
Uninitialized memory
Buffer underrun
Dangling references

Parasoft © 2013

10
8 Unhandled exceptions

 When to handle, when to re-throw
 Run-time vs compile-time checking
 Empty handlers

Parasoft © 2013

11
9 Race Conditions

 Hard to find
 Hard to reproduce
 Careful API use

Parasoft © 2013

12
10 False Positives

Proper
Configuration

Proper Rules

Leaving
noise leads
to missing
issues

Proper
Suppressions

Parasoft © 2013

13
Doing too much

Too many
rules

Too much
code
Unimportant
rules
Parasoft © 2013

14
11 Memory Leaks






All software leaks
Resources, not just memory
Proper API use
Runtime debugger with good test suite

Parasoft © 2013

15
12 Null Pointers

Affect
stability
Important
for APIs

Can be
prevented
Parasoft © 2013

16
The Whole List

 1 - Overloaded system
 2 - Text editors
 3 - Accidental
assignments
 4 – Plaintext passwords
 5 – SQLi
 6 – Unstable builds

Parasoft © 2013

 7 – Memory errors
 8 – Unhandled
exceptions
 9 – Race conditions
 10 – False positives
 11 - Memory leaks
 12 - Null pointers

17
Next

 Coming in January
 New Years resolutions for Software Development

Parasoft © 2013

18
 Web
 http://www.parasoft.com/jsp/resources

 Blog
 http://alm.parasoft.com

 Social
 Facebook: https://www.facebook.com/parasoftcorporation
 Twitter: @Parasoft @MustRead4Dev
 LinkedIn: http://www.linkedin.com/company/parasoft
 Google+ Community: Static Analysis for Fun and Profit
Parasoft © 2013

19

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

OWASP WTE - Now in the Cloud!
OWASP WTE - Now in the Cloud!OWASP WTE - Now in the Cloud!
OWASP WTE - Now in the Cloud!
 
New relic
New relicNew relic
New relic
 
Accelerate Web and Mobile Testing for Continuous Integration and Delivery
Accelerate Web and Mobile Testing for Continuous Integration and DeliveryAccelerate Web and Mobile Testing for Continuous Integration and Delivery
Accelerate Web and Mobile Testing for Continuous Integration and Delivery
 
Test at Scale within your Internal Networks with BrowserStack Local Testing
Test at Scale within your Internal Networks with BrowserStack Local TestingTest at Scale within your Internal Networks with BrowserStack Local Testing
Test at Scale within your Internal Networks with BrowserStack Local Testing
 
OSMC 2015: Monitoring at Spotify-When things go ping in the night by Martin Parm
OSMC 2015: Monitoring at Spotify-When things go ping in the night by Martin ParmOSMC 2015: Monitoring at Spotify-When things go ping in the night by Martin Parm
OSMC 2015: Monitoring at Spotify-When things go ping in the night by Martin Parm
 
Making security-agile matt-tesauro
Making security-agile matt-tesauroMaking security-agile matt-tesauro
Making security-agile matt-tesauro
 
Security testautomation
Security testautomationSecurity testautomation
Security testautomation
 
AppSec Pipeline - Velcocity NY 2015
AppSec Pipeline - Velcocity NY 2015AppSec Pipeline - Velcocity NY 2015
AppSec Pipeline - Velcocity NY 2015
 
DevOps AppSec Pipeline Velcocity NY 2015
DevOps AppSec Pipeline Velcocity NY 2015DevOps AppSec Pipeline Velcocity NY 2015
DevOps AppSec Pipeline Velcocity NY 2015
 
Taking AppSec to 11: AppSec Pipeline, DevOps and Making Things Better
Taking AppSec to 11: AppSec Pipeline, DevOps and Making Things BetterTaking AppSec to 11: AppSec Pipeline, DevOps and Making Things Better
Taking AppSec to 11: AppSec Pipeline, DevOps and Making Things Better
 
LogmaticPresentation
LogmaticPresentationLogmaticPresentation
LogmaticPresentation
 
Security as Code: DOES15
Security as Code: DOES15Security as Code: DOES15
Security as Code: DOES15
 
Intro to DefectDojo at OWASP Switzerland
Intro to DefectDojo at OWASP SwitzerlandIntro to DefectDojo at OWASP Switzerland
Intro to DefectDojo at OWASP Switzerland
 
Cloud Platforms for Java
Cloud Platforms for JavaCloud Platforms for Java
Cloud Platforms for Java
 
Inspector
InspectorInspector
Inspector
 
Compliance as Code - Using the Open Source InSpec testing Framework
Compliance as Code - Using the Open Source InSpec testing FrameworkCompliance as Code - Using the Open Source InSpec testing Framework
Compliance as Code - Using the Open Source InSpec testing Framework
 
Application Quality Gates in Continuous Delivery: Deliver Better Software Fas...
Application Quality Gates in Continuous Delivery: Deliver Better Software Fas...Application Quality Gates in Continuous Delivery: Deliver Better Software Fas...
Application Quality Gates in Continuous Delivery: Deliver Better Software Fas...
 
D3NY17- Using IncapRules to Customize Security
D3NY17- Using IncapRules to Customize SecurityD3NY17- Using IncapRules to Customize Security
D3NY17- Using IncapRules to Customize Security
 
AppSec Pipeline Reference Architecture
AppSec Pipeline Reference ArchitectureAppSec Pipeline Reference Architecture
AppSec Pipeline Reference Architecture
 
DAST in CI/CD pipelines using Selenium & OWASP ZAP
DAST in CI/CD pipelines using Selenium & OWASP ZAPDAST in CI/CD pipelines using Selenium & OWASP ZAP
DAST in CI/CD pipelines using Selenium & OWASP ZAP
 

Destacado

Piano aria regione sicilia audizioni in commissione territorio ambiente inter...
Piano aria regione sicilia audizioni in commissione territorio ambiente inter...Piano aria regione sicilia audizioni in commissione territorio ambiente inter...
Piano aria regione sicilia audizioni in commissione territorio ambiente inter...
Pino Ciampolillo
 
Konsep pemanfaatan dapodik ptk dikdas jakarta 19082013
Konsep pemanfaatan dapodik ptk dikdas   jakarta 19082013Konsep pemanfaatan dapodik ptk dikdas   jakarta 19082013
Konsep pemanfaatan dapodik ptk dikdas jakarta 19082013
Hadi Wuryanto
 
Sourdough Bread-making 101 with Tegan Wong-Daugherty & Speerville Flour Mill
Sourdough Bread-making 101 with Tegan Wong-Daugherty & Speerville Flour MillSourdough Bread-making 101 with Tegan Wong-Daugherty & Speerville Flour Mill
Sourdough Bread-making 101 with Tegan Wong-Daugherty & Speerville Flour Mill
acornorganic
 
Want to fundamentally change the growth trajectory of your business? Click he...
Want to fundamentally change the growth trajectory of your business? Click he...Want to fundamentally change the growth trajectory of your business? Click he...
Want to fundamentally change the growth trajectory of your business? Click he...
sdiec
 
Richard dyer star theory
Richard dyer star theoryRichard dyer star theory
Richard dyer star theory
Natasha Newman
 
Alexander graham bell powerpoint slide
Alexander graham bell powerpoint slideAlexander graham bell powerpoint slide
Alexander graham bell powerpoint slide
lamle103
 

Destacado (20)

26 Time Management Hacks I Wish I'd Known at 20
26 Time Management Hacks I Wish I'd Known at 2026 Time Management Hacks I Wish I'd Known at 20
26 Time Management Hacks I Wish I'd Known at 20
 
Travel Massive May Meetup ft Travelabulous
Travel Massive May Meetup ft TravelabulousTravel Massive May Meetup ft Travelabulous
Travel Massive May Meetup ft Travelabulous
 
Practicadepowerpoint feliperivas
Practicadepowerpoint feliperivasPracticadepowerpoint feliperivas
Practicadepowerpoint feliperivas
 
Rosalind 01
Rosalind 01Rosalind 01
Rosalind 01
 
Piano aria regione sicilia audizioni in commissione territorio ambiente inter...
Piano aria regione sicilia audizioni in commissione territorio ambiente inter...Piano aria regione sicilia audizioni in commissione territorio ambiente inter...
Piano aria regione sicilia audizioni in commissione territorio ambiente inter...
 
Konsep pemanfaatan dapodik ptk dikdas jakarta 19082013
Konsep pemanfaatan dapodik ptk dikdas   jakarta 19082013Konsep pemanfaatan dapodik ptk dikdas   jakarta 19082013
Konsep pemanfaatan dapodik ptk dikdas jakarta 19082013
 
Matemati̇k sorulari
Matemati̇k sorulariMatemati̇k sorulari
Matemati̇k sorulari
 
Evaluación De Diferentes Fuentes De Minerales Para La Regulación Del Ph Y Con...
Evaluación De Diferentes Fuentes De Minerales Para La Regulación Del Ph Y Con...Evaluación De Diferentes Fuentes De Minerales Para La Regulación Del Ph Y Con...
Evaluación De Diferentes Fuentes De Minerales Para La Regulación Del Ph Y Con...
 
Sourdough Bread-making 101 with Tegan Wong-Daugherty & Speerville Flour Mill
Sourdough Bread-making 101 with Tegan Wong-Daugherty & Speerville Flour MillSourdough Bread-making 101 with Tegan Wong-Daugherty & Speerville Flour Mill
Sourdough Bread-making 101 with Tegan Wong-Daugherty & Speerville Flour Mill
 
STUDY GUIDE UNCSD
STUDY GUIDE UNCSDSTUDY GUIDE UNCSD
STUDY GUIDE UNCSD
 
AIRGAS DOCUMENT
AIRGAS DOCUMENTAIRGAS DOCUMENT
AIRGAS DOCUMENT
 
Want to fundamentally change the growth trajectory of your business? Click he...
Want to fundamentally change the growth trajectory of your business? Click he...Want to fundamentally change the growth trajectory of your business? Click he...
Want to fundamentally change the growth trajectory of your business? Click he...
 
FlexLine - Интуитивно просто
FlexLine - Интуитивно простоFlexLine - Интуитивно просто
FlexLine - Интуитивно просто
 
Siempre lo mejor
Siempre lo mejorSiempre lo mejor
Siempre lo mejor
 
Cv 013 haye
Cv 013 hayeCv 013 haye
Cv 013 haye
 
Richard dyer star theory
Richard dyer star theoryRichard dyer star theory
Richard dyer star theory
 
Hypodermic needle
Hypodermic needleHypodermic needle
Hypodermic needle
 
Why do you need gmat coaching in gurgaon
Why do you need gmat coaching in gurgaonWhy do you need gmat coaching in gurgaon
Why do you need gmat coaching in gurgaon
 
Silicon Importance on Aliviating Biotic and Abiotic Stress on Sugarcane
Silicon Importance on Aliviating Biotic and Abiotic Stress on SugarcaneSilicon Importance on Aliviating Biotic and Abiotic Stress on Sugarcane
Silicon Importance on Aliviating Biotic and Abiotic Stress on Sugarcane
 
Alexander graham bell powerpoint slide
Alexander graham bell powerpoint slideAlexander graham bell powerpoint slide
Alexander graham bell powerpoint slide
 

Similar a 12 Days of Coding Errors

Similar a 12 Days of Coding Errors (20)

ABC's of Service Virtualization
ABC's of Service VirtualizationABC's of Service Virtualization
ABC's of Service Virtualization
 
DOES SFO 2016 - Scott Willson - Top 10 Ways to Fail at DevOps
DOES SFO 2016 - Scott Willson - Top 10 Ways to Fail at DevOpsDOES SFO 2016 - Scott Willson - Top 10 Ways to Fail at DevOps
DOES SFO 2016 - Scott Willson - Top 10 Ways to Fail at DevOps
 
Mobile pulse sept 2014
Mobile pulse sept 2014Mobile pulse sept 2014
Mobile pulse sept 2014
 
Tool overview – how to capture – how to create basic workflow .pptx
Tool overview – how to capture – how to create basic workflow .pptxTool overview – how to capture – how to create basic workflow .pptx
Tool overview – how to capture – how to create basic workflow .pptx
 
How to Build a DevOps Toolchain
How to Build a DevOps ToolchainHow to Build a DevOps Toolchain
How to Build a DevOps Toolchain
 
Log Management and Analysis for Cloud Applications
Log Management and Analysis for Cloud ApplicationsLog Management and Analysis for Cloud Applications
Log Management and Analysis for Cloud Applications
 
A Three-Tier Load Testing Program Saved Our Bacon
A Three-Tier Load Testing Program Saved Our BaconA Three-Tier Load Testing Program Saved Our Bacon
A Three-Tier Load Testing Program Saved Our Bacon
 
API Roles In Cloud and Mobile Security - Greg Olsen, IT Manager, Integration ...
API Roles In Cloud and Mobile Security - Greg Olsen, IT Manager, Integration ...API Roles In Cloud and Mobile Security - Greg Olsen, IT Manager, Integration ...
API Roles In Cloud and Mobile Security - Greg Olsen, IT Manager, Integration ...
 
The Twelve Factor App
The Twelve Factor AppThe Twelve Factor App
The Twelve Factor App
 
20160913 cookpad ios_en
20160913 cookpad ios_en20160913 cookpad ios_en
20160913 cookpad ios_en
 
Autos, Wi-Fi, and IoT
Autos, Wi-Fi, and IoTAutos, Wi-Fi, and IoT
Autos, Wi-Fi, and IoT
 
Spring Boot & Spring Cloud on PAS- Nate Schutta (1/2)
Spring Boot & Spring Cloud on PAS- Nate Schutta (1/2)Spring Boot & Spring Cloud on PAS- Nate Schutta (1/2)
Spring Boot & Spring Cloud on PAS- Nate Schutta (1/2)
 
Which Salesforce DevOps Tools Do I Need?
Which Salesforce DevOps Tools Do I Need?Which Salesforce DevOps Tools Do I Need?
Which Salesforce DevOps Tools Do I Need?
 
Breaking the Monolith
Breaking the MonolithBreaking the Monolith
Breaking the Monolith
 
Compliance as Code Everywhere
Compliance as Code EverywhereCompliance as Code Everywhere
Compliance as Code Everywhere
 
Unlocking the Potential of Database Automation
Unlocking the Potential of Database AutomationUnlocking the Potential of Database Automation
Unlocking the Potential of Database Automation
 
Twelve Factor - Designing for Change
Twelve Factor - Designing for ChangeTwelve Factor - Designing for Change
Twelve Factor - Designing for Change
 
Integrating Application Security into a Software Development Process
Integrating Application Security into a Software Development ProcessIntegrating Application Security into a Software Development Process
Integrating Application Security into a Software Development Process
 
troubleshooting Fiori.pdf
troubleshooting Fiori.pdftroubleshooting Fiori.pdf
troubleshooting Fiori.pdf
 
What’s new in VS 2015 and ALM 2015
What’s new in VS 2015 and ALM 2015What’s new in VS 2015 and ALM 2015
What’s new in VS 2015 and ALM 2015
 

Más de Erika Barron

Parasoft PIE infographic
Parasoft PIE infographicParasoft PIE infographic
Parasoft PIE infographic
Erika Barron
 

Más de Erika Barron (20)

Parasoft PIE infographic
Parasoft PIE infographicParasoft PIE infographic
Parasoft PIE infographic
 
Parasoft Case Study: Wipro
Parasoft Case Study: WiproParasoft Case Study: Wipro
Parasoft Case Study: Wipro
 
Are Your Continuous Tests Too Fragile for Agile?
Are Your Continuous Tests Too Fragile for Agile?Are Your Continuous Tests Too Fragile for Agile?
Are Your Continuous Tests Too Fragile for Agile?
 
Real World Static Analysis Boot Camp
Real World Static Analysis Boot CampReal World Static Analysis Boot Camp
Real World Static Analysis Boot Camp
 
Service Virtualization: Delivering Complex Test Environments on Demand
Service Virtualization: Delivering Complex Test Environments on DemandService Virtualization: Delivering Complex Test Environments on Demand
Service Virtualization: Delivering Complex Test Environments on Demand
 
How the Cloud Shifts the Burden of Security to Development
How the Cloud Shifts the Burden of Security to DevelopmentHow the Cloud Shifts the Burden of Security to Development
How the Cloud Shifts the Burden of Security to Development
 
Static Analysis and the FDA Guidance for Medical Device Software
Static Analysis and the FDA Guidance for Medical Device SoftwareStatic Analysis and the FDA Guidance for Medical Device Software
Static Analysis and the FDA Guidance for Medical Device Software
 
Creating Complete Test Environments in the Cloud
Creating Complete Test Environments in the CloudCreating Complete Test Environments in the Cloud
Creating Complete Test Environments in the Cloud
 
How To Avoid Continuously Delivering Faulty Software
How To Avoid Continuously Delivering Faulty SoftwareHow To Avoid Continuously Delivering Faulty Software
How To Avoid Continuously Delivering Faulty Software
 
APIs Gone Wild - Star West 2013
APIs Gone Wild - Star West 2013APIs Gone Wild - Star West 2013
APIs Gone Wild - Star West 2013
 
Cloud migration slides
Cloud migration slidesCloud migration slides
Cloud migration slides
 
Complex End-to-End Testing
Complex End-to-End TestingComplex End-to-End Testing
Complex End-to-End Testing
 
How the Grinch Stole Software Testing
How the Grinch Stole Software TestingHow the Grinch Stole Software Testing
How the Grinch Stole Software Testing
 
Service Virtualization
Service VirtualizationService Virtualization
Service Virtualization
 
Beyond Static Analysis: Integrating .NET Static Analysis with Unit Testing a...
Beyond Static Analysis: Integrating .NET  Static Analysis with Unit Testing a...Beyond Static Analysis: Integrating .NET  Static Analysis with Unit Testing a...
Beyond Static Analysis: Integrating .NET Static Analysis with Unit Testing a...
 
Java Defects
Java DefectsJava Defects
Java Defects
 
Beyond Static Analysis: Integrating Java Static Analysis with Unit Testing an...
Beyond Static Analysis: Integrating Java Static Analysis with Unit Testing an...Beyond Static Analysis: Integrating Java Static Analysis with Unit Testing an...
Beyond Static Analysis: Integrating Java Static Analysis with Unit Testing an...
 
Software Development Graveyard
Software Development GraveyardSoftware Development Graveyard
Software Development Graveyard
 
The Development Graveyard: How Software Projects Die
The Development Graveyard: How Software Projects DieThe Development Graveyard: How Software Projects Die
The Development Graveyard: How Software Projects Die
 
Beyond Static Analysis: Integrating C and C++ Static Analysis with Unit Testi...
Beyond Static Analysis: Integrating C and C++ Static Analysis with Unit Testi...Beyond Static Analysis: Integrating C and C++ Static Analysis with Unit Testi...
Beyond Static Analysis: Integrating C and C++ Static Analysis with Unit Testi...
 

Último

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 

Último (20)

Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
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...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 

12 Days of Coding Errors

Notas del editor

  1. Give Attendees a closer look at the control panel and how they can participate. Text may be adjusted to suit your event needs.Note: Hand Raising is enabled (see slide 3)Visit the “Options” menu in the Organizer control panel a check to allow attendees to Raise Hands.
  2. Healthcare.govCyber Monday at Motorola
  3. 8. Comparison assignment ( = rather than == )This is an easy error to make. If you're used other languages before, such as Pascal, you'll realize just how poor a choice this was by the language's designers. In Pascal, for example, we use the := operator for assignment, and leave = for comparison. This looks like a throwback to C/C++, from which Java draws its roots.Fortunately, even if you don't spot this one by looking at code on the screen, your compiler will. Most commonly, it will report an error message like this : "Can't convert xxx to boolean", where xxx is a Java type that you're assigning instead of comparing.7. Comparing two objects ( == instead of .equals)When we use the == operator, we are actually comparing two object references, to see if they point to the same object. We cannot compare, for example, two strings for equality, using the == operator. We must instead use the .equals method, which is a method inherited by all classes from java.lang.Object.Here's the correct way to compare two strings.String abc = "abc"; String def = "def";// Bad wayif ( (abc + def) == "abcdef" ){ ......}// Good wayif ( (abc + def).equals("abcdef") ){ .....}
  4. LinkedInProgrammer passwords:Plain text passwordsUser passwords:Same password multiple sites8 char passwordDictionary password
  5. Don’t start with too many rulesStatic Analysis is about processIt’s incrementalAvoid biting off more than you can chewAvoid any rule you won’t stop the build for
  6. Questions:1) When you have a tool that finds possible null pointers, aren’t most cases just false positives?2) Do new IDE’s really work any better than my old setup? I’m pretty effective already.3) I have a really hard time finding a thread problem in my application – what can I do?