Blog

biz Japanese SOX (J-SOX)

J-SOX is a standard for describing, evaluating and auditing internal controls relevant for the financial reporting and creation of the financial statements. J-SOX is mandatory for all Japanese stock traded companies and plays a very important role in the risk management. Depending on the size of a subsidiary it may as well have to implement J-SOX regardless of its location. ... (more)

dev CSS Only Alternatives

We can create beautiful and complex UI solutions with JavaScript for a comfortable and seamless user experience. What we often forget is that there can be a more simple and more performant solution. After all JavaScript can add additional performance hits due to loading times, slow execution or previous errors. Furthermore, JavaScript adds complexity which might not be necessary. ... (more)

biz Employee Ranking Based on Intercompany Relations

You may have heard about the PageRank algorithm which made Google so successful in it's early days. This algorithm ranks websites based on their relation to other websites. This algorithm could be used to apply the same logic on employees and their relationships to other employees in order to determine their importance. ... (more)

dev 100% Code Coverage! Really?

Achieving 100% code coverage is admirable (not discussing effectiveness and efficiency). However, are you sure you really have 100% code coverage? In this article I will show some simple examples which explain why 100% code coverage != 100% coverage. ... (more)

dev Json Template Validator

In many projects I use json files because they are very convenient to work with due to their simplicity and how verbose they are. In software development you either have to rely on a correct strucutre or perform checks (existence, correctness) while you try to access the different elements. This validator implements a solution to create json templates which can be used in order to validate json files. ... (more)

dev Web UI Testing with CSS

Backend and API testing nowadays is very simple to set up with all the various solutions available for the different programming languages. When it comes to frontend testing there are also some decent solutions out there testing the correctness of the UI is still very often done manually. In this article we will discuss a simple way in order to support manual testing of your web UI. ... (more)

biz Estimates

Estimations are part of our daily lives either when we do our shopping, cooking, driving and many more scenarios. Yet, we very often fail with our business estimations. In this article we will talk about what estimations are, why they often fail us in business situation and how to potentially improve them. ... (more)

biz Risk Management Guide

One of the important documents for risk management is a risk management guide which lays out the basic definitions and rules under which a company performs its risk management. The following paragraphs contain some general explanations, definitions and rules which may be applicable for your own risk management guide. Some placeholders marked with ??? are very company specific and therefore should definitely be defined by yourself. ... (more)

dev Github Issue Tags

Issue tags on github are a great way to structure issues not only for yourself but also in teams. While the specific issue tags may depend on your project, language and team, this short article will give an example how one potential solution could look like. This can be helpful for public and private repositories. However, for open source repositories which would like to attract contributes this may have the biggest benefit. ... (more)

biz A Software Developer In Your Company

This article will cover reasons why I believe a software developer for a mid-sized company can be a very valuable asset even if your business doesn’t do any software development as its core business strategy. The reasons are mostly based on my own experience as well as information I receive from other companies I've worked together with. ... (more)

biz Key Performance Indices (KPI)

Key performance indices in short KPI are measurable values in a business which purpose it is to measure key business objectives. They are supposed to show the achievement of these business objectives and as a result allow the responsible person to quickly identify deviations leading to further investigations and corrective measures. ... (more)

biz Engaging Reports

Reports in a company are crucial for managing projects, departments and the whole company. Creating reports however can be a form of art which can have significant impact on how well information is transported to the target audience as well as how well this information can be used. Important factors for a good report are audience, information/purpose and layout. ... (more)

dev User Permission Handling

User permission handling is something that everyone probably has to deal with once during his career as backend developer. While this a very common problem I always had problems with finding articles which way is the best or how to implement a specific solution. In this article we will talk about about two ideas how to implement permission handling and discuss one of the two in more detail with examples. ... (more)

dev PHP - Exchange Rate Calculator

Calculating the value of foreign currencies can be very important for certain applications and businesses. While it's possible to use many of the pre-existing live APIs you can also use some public sources which also provide very reliable data. In the following you'll find the code used to convert between some of the most common currencies based on the exchange rates provided by the European Central Bank (ECB). ... (more)

dev PHP - Enum Implementation

Enums are very helpful for managing unique value (strings and numerics). Values can be easily changed without changing the whole code base. Unfortunately enums are not yet implemented in php (not counting the spl_types implementation). In this article we will implement basic enum support which has so far fulfilled all of my needs. ... (more)

dev PHP - Access Arrays By Path

For dynamically created arrays or for arrays with a high dimension it can be very helpful to access, set or unset values based on a string path. The path can very often generated much easier than the manual array traversing. For this purpose three array functions will are implemented in this article which allow you to access, set or unset values based on a path. ... (more)

dev Html - Hide & Show With Css Only (No Js)

Very often you want to show or hide UI elements with a simple click of a button. While this is trivial with JS it is often a little bit overkill and can be achieved with pure Html and CSS just as easily. ... (more)

dev GIT Pre-Commit Hooks

GIT pre-* hooks allow for some very useful checks before committing or pushing changes. Of course there are more hooks than just the pre-commit or pre-push hook but I found these two the most helpful as they allow to implement checks before making changes public. Of course many build processes still perform a lot of checks before the merge process on the remote server but as a user I find it very helpful to know in advance if my changes will be accepted or not. Additionally pre-* hooks help with enforcing a uniform code style and code quality. ... (more)

dev Bug Hunt - Un-Initialized Global Values

Bugs can drive you crazy. More than just once I've hunted down a bug that seemed to be extremely difficult but was actually simple to solve once found. Very often it's more a matter of identifying the part of the code that is causing the bug instead of finding a solution for a problem that causes problems. But what do you do if the mere observation of a bug changes the effect or simply solves the bug. Follow me on one of my more interesting bug hunts with PHP and Apache2. ... (more)

biz Benchmarking Your Business

Benchmarking your business in total or components of it is important in order to see if the output it generates are in line with historic figures, expected/budgeted figures, competitors and the market. The internal reporting system functions as the basis for this analysis but only when you compare it you'll truly be able to rate your success or lack of it appropriately. ... (more)