Search this site
tutorials
snippets
links
impressum
tutorials
This page contains small pieces of software engineering these pieces are like candies, some are really delicious.
by Markus Sprunck
Experiments
Extremely Fast and Simple WebGL Motion Detector to Rotate 3D Graphic
This WebGL program finds your viewpoint and rotates the cube
Visualization of Artificial Neural Network with WebGL and Three.js
Shows an Artificial Neural Network which learns to detect the frequency of the input signal
Visualization of Finite Element Method Simulation with Java and Paper.js
Just the code for graphics draws directly to Canvas of HTML5 with support of Paper.js
How to Crawl Direct and Indirect Contacts in XING and Visualize Social Network with d3.js Library?
Demonstrates how to crawl XING and display the resulting social network graph
Enhance Static Call-Graph Analysis with Dynamic Data from Profiling?
Demonstrates the benefit of the enhancement of static with dynamic call-graph analysis
Solve Verbal Arithmetic with Constraint Programming in Java?
Basics of Constraint Programming with CHOCO (v2.1.5) with the sample "SEND + MORE = MONEY"
Benefits of Estimating and Calculating Effort and Time with Probabilities in Project Management
Calculation with probabilities is difficult for us, it comes to not always directly intuitive results
How to get User Information with OAuth2 in a GWT and Google AppEngine Java Application?
Use of OAuth2 in Java to get user information like gender, picture, nickname and e-mail
How to get User Information with OAuth2 in a Google AppEngine Python Application?
Use of OAuth2 in Python to get user information like gender, picture, nickname and e-mail
Finite Element Method Simulation Running in the Browser and Uses Device Orientation
Running in a web browser and uses device orientation signals
Static and Dynamic Code Analysis
Top 10 Lessons Learned from 2 Years Work with Codehaus Sonar
Working with Sonar in a medium size Java project over a period of two years
Comparison of Findbugs, PMD and Checkstyle
Each tool has an own purpose, strength and weaknesses
Findbugs Warnings By Example - Basics
Describes basic warnings of Findbugs with Java sample code
Findbugs Warnings By Example - Database & Security
Describes database and security related warnings of Findbugs with Java sample code
Findbugs Warnings By Example - Exception Handling & Control Flow
Describes exception handling & control flow related warnings of Findbugs with Java sample code
Findbugs Warnings By Example - @Nonnull and @CheckReturnValue of JSR-305
Describes JSR-305 related warnings of Findbugs with Java sample code
How to Run Findbugs, Pmd, Checkstyle, JUnit and Cobertrua with an Ant Build-Script?
Ant build that runs code analysis. It creates and collects the native HTML reports of each tool
Transform the Results from Findbugs, Checkstyle and PMD to HTML Report with XSLT 2.0 & Java?
A sample transform the results from Findbugs, Checkstyle and PMD into a single HTML report
How to Write a Custom Plugin for Maven to Count Lines of Code?
A simple custom maven plugin for counting total lines of code - creates a xml file as output
How Much JUnit Test Code is Needed for a Basic HashMap Implementation in Java?
A basic implementation of a HashMap and demonstrates the minimal needed test code
Java Code Coverage with EclEmma for Eclipse - Importance of Branch Coverage
Describes the importance of branch coverage during development
The Best Code Review Tool is a Simple Ball Pen and a Listing on Paper
Don't think that code analysis tools can substitute the old fashioned peer review between humans
Java Example Code
Performance Impact of Java HotSpot™ to Quick-Sort, Heap-Sort and Bubble-Sort Algorithm?
Shows some Use Cases where Bubble-Sort is even faster than Heap-Sort or Quick-Sort
Memory and Runtime Analysis for the removeAll() Method of Java TreeSet and ArrayList
Describes the differences between using the removeAll() method of TreeSet and ArrayList class
How to Implement Fork and Join in Java 7 - JSR 166 Concurrency Utilities?
Spend some time for understanding better concurrency algorithms is a good investment
Comparison of Ways to Check Preconditions in Java
The use of preconditions is extremely helpful to develop maintainable code
How to Initialize a Java HashMap with Reasonable Values?
Describes the need to initialize a HashMap with fitting default values
The Wrong Use of Logging can be a Performance Killer in Enterprise Java
Describes the impact to performance of wrong logging
How to Find Valid Email Addresses with Regular Expressions in Java?
Validating email addresses can be a tricky task even with regex
Top of Apache Commons Libraries for Java Development
The following list contains my favorite libraries from Apache Commons
How to Serialize Objects to XML and Back Again with XStream?
Describes some basic functions of XStream version 1.4.2
A Minimal Java Application Sample Based on Spring 2.5.6 Framework
Minimal standalone spring application on Spring 2.5.6 Framework
A Minimal Java Application Sample Based on Spring 3.1.1 Framework
Here you find a standalone application based on Spring 3.1.1 with annotations
How to Reduce Boilerplate Code With Spring 3.1.1 JDBC Template?
Describes how to reduce boilerplate code with the use of Spring JDBCTemplate
How to Get Call Stack Information from Remote Java VM?
JDK provides a simple interface to obtain call stack information from any running VM
A Return Statement in a Finally Block Swallows Thrown Exceptions
Sample where an UnsupportedOperationException will be swallowed
General Software Engineering & Lean IT
Emotional Intelligence in Software Engineering
Emotional Intelligence is a key success factor in business and private life
Things Every Software Engineer Should Know
A list collecting some important things I have learned as developer and IT professional
Minimal Skills of a Manager in Software Engineering
It is absolutely necessary to find a person with excellent technical and managerial skills
Success Factors to Inspire a Team of Software Engineers
In the following short article I describe the most important success factors
Anti-Pattern of Software Engineering Design Decisions
But we should be careful with our motivation if we do technical decisions
Seleced Rules of Thumb in Software Engineering
Rules that help to get quick effort estimations or help to explain typical scenarios
Lean IT Fundamentals and Principles
The two key elements of Lean IT are the avoidance of waste and continuous improvement process
How to Reduce Waste with Clever Communication?
Time is wasted every day in development projects, maintenance teams and IT operations units
How to Reduce Waste due to Interruptions in Software Development Teams?
How to measure and reduce these unwanted context switches with glass nuggets
Product-Burndown-Charts and Sprint-Burndown-Charts
Basics about Product-Backlog-Charts and Sprint-Backlog-Charts used in almost all Agile approaches
Three Common Errors in Whiteboard Job Interviews with UML Diagrams
When you start to learn UML focus on the 6 most important diagram types
Selected Software Engineering Coding Anti-Patterns from My Source Code
Design and coding anti-patterns are explained with samples of a real software I developed
Controversial & Fun
Top 10 Tips to Develop Unmaintainable Code
Obfuscation of the code - besides poor design, no test cases and overly complex algorithms
An Unfair and Incomplete Comparison between Spring 3 Framework and Java EE 6
Describes the differences between Spring Framework and Java EE
What has Picasso's Guernica to do with Software Engineering?
Discussion about 'How can we define the term inner-beauty of source code?'
Top 5 Reasons for Not Using JavaDoc in the Next Project
Reasons to ignore the "100% JavaDoc Policy" in the future
The Disastrous Impact of IT Outsourcing to the Motivation of Software Developers
Developers which have fears due to IT outsourcing, often react with unproductive behavior
It's about time that you learn HTML5 and CSS3! But why?
Observe the job market to learn more about trends and up-coming technologies
Top +1 Rated
Hello World WebGL Example for HTML5 Compatible Browsers
Extremely Fast and Simple WebGL Motion Detector to Rotate 3D Graphic
Top 10 Things Every Software Engineer Should Know
Visualization of Artificial Neural Network with WebGL
How to Find Valid Email Addresses with Regular Expressions in Java?
Comparison of Ways to Check Preconditions in Java
Performance Impact of Java HotSpot™ to Quick-Sort, Heap-Sort and Bubble-Sort Algorithm?
Emotional Intelligence in Software Engineering
How Much JUnit Test Code is Needed for a Basic HashMap Implementation in Java?
The Best Code Review Tool is a Simple Ball Pen and a Listing on Paper!
Three Common Errors in Whiteboard Job Interviews with UML Diagrams
How to get User Information with OAuth2 in a Google AppEngine Python Application?
The Wrong Use of Logging can be a Performance Killer in Enterprise Java
Lean IT Fundamentals and Principles
Top of Apache Commons Libraries for Java Development
Success Factors to Inspire a Team of Software Engineers
Java Code Coverage with EclEmma for Eclipse - Importance of Branch Coverage
Benefits of Estimating Effort and Time with Probabilities in Project Management
Top 10 Lessons Learned from 2 Years Work with Codehaus Sonar
Selected Software Engineering Coding Anti-Patterns from My Source Code
Anti-Pattern of Software Engineering Design Decisions
Hello World Java Message Service (JMS) with Open MQ
An Unfair and Incomplete Comparison between Spring 3 Framework and Java EE 6
Finite Element Method Simulation Running in the Browser and Uses Device Orientation