Selectively Deploying Files from a Subversion Repository

During a recent project I needed to modify user interface (UI) files in a Subversion repository and then deploy them to a Tomcat server.  At first I recursively copied all of the files using a batch script, but because of the size of the repository this could take anywhere from 10 to 15 seconds.  That […]

Read more
Using Components with Known Vulnerabilities

One of the items on the 2013 OWASP Top Ten is “Using Components with Known Vulnerabilities.” It is new on this year’s list, debuting at number 9. OWASP lists at as being widespread and difficult to detect. The issue is that modern software is made up of dozens, if not hundreds, of third-party components. Even […]

Read more
Writing Effective Cucumber Tests
Cucumber

Introduction The more I have gotten into developing testing frameworks based on Cucumber, the more I’ve seen how important writing effective cucumber tests are. The feature files provided earlier are not a good example of cucumber tests, and below we will cover why, and how to turn these into effectively written test cases. A badly […]

Read more
Sharepoint Property bags

SharePoint Property Bag allows to store configurations settings at different levels of the SharePoint hierarchy outside of the application itself. Property bag is basically a hash table of key-value pair options. Property bag feature is available in Windows SharePoint services 3.0, SharePoint 2010 and SharePoint 2013. Property bag helps you to store meta data as key-value […]

Read more
Coping with Long Feedback Loops during Software Development

I recently had the opportunity to work on a software development project as part of a 300 person team.  On this team there were two types of developers: user interface (UI) developers and service developers.  In order to evaluate the effect of a code change, UI developers needed to deploy their modified JavaScript files to […]

Read more
Cucumber-JVM Upgrade
Cucumber

Errors on report.js I recently ran into an issue when compiling my html friendly cucumber reports. For larger tests run, when attempting to view the reports generated in the cucumber-html-report, the screen appeared blank. After some debugging, I noticed that the reports.js file generated was abruptly terminated. The true cause of the issue is still […]

Read more
Apache Server Errors

So I run a server at home hosting several sites, including a few personal sandboxes for development. I went to check one of sites, and noticed it was taking an incredibly long time to load. When I logged into the machine, I got the dreaded Usage of /: 99.9% of 27.50GB disk space error. Now, […]

Read more
Using the Join Plugin in Jenkins

With large complex software applications, builds can often be split into different steps and tasks creating a series of jobs for our build pipeline.   On my current project we are utilizing Jenkins to implement Continuous Integration/Continuous Deliver (CI/CD) and between the jobs for compilation, smoke tests, acceptance tests and deployment across environments in several different VLANs, […]

Read more
A Brief Introduction to the R Programming Language

The R programming language is an open-source, interactive language that was designed for manipulating datasets, creating visualizations, and performing statistical analyses.  It is based on the S language, which was originally developed at Bell Laboratories.  R is a full-featured language (it supports conditionals, loops, functions, I/O, etc.) and its functionality can be easily extended by […]

Read more
Creating Modular Jobs in Jenkins

I spent much of my formative years in High School and College being indoctrinated with Object-Orientated Programming (OOP).  When used well, OOP provides clear modular structure for programs, defines clear interfaces, makes software easier to maintain and modify, allows multiple functions to share code (cord re-use), and reduces large, complex issues to smaller, more manageable […]

Read more
X