GNU make – an oldie but goldie (Part I)

GNU make – an oldie but goldie (Part I)
As far as build systems are concerned, this article will not present anything particularly new – instead, we will focus on some piece of software that one might even considered “done”. “Done” in the sense that it is essentially bug-free and feature-complete. How many software products do you know (apart from TeX) that can be considered this way? With a plethora of “new”, “modern” or just plain “fancy” build systems, GNU Make is the old veteran of them all. [Mehr]

The ELK-Stack Experience

The ELK-Stack Experience
Lately, here at IT:Agenten we were faced with a webserver configured to log multiple domains to one logfile, which jumbled analytics and rendered all usage information (page views and unique visitors) unusable. Since these numbers were really important, we had to dig in and analyze the data “by hand”. Sounds like a good opportunity to get to know this praised piece called the ELK-stack, i.e. the combination of Elasticsearch, Logstash and Kibana — although we didn’t need Kibana in this case… [Mehr]

Tool of the Week: git-crypt

Tool of the Week: git-crypt
Ever wanted to commit sensitive data to a git repository in an encrypted way and didn’t know how? Use git-crypt and selectively add whitelisted users who are allowed to look at the unencrypted file’s contents, while keeping the file encrypted for everybody else. In this quick demo I will play through a simple workflow to show you the basics of working with git-crypt. (Please note there might be typesetting issues with this version of wordpress, especially with < All pieces like cat < < DOC should not carry spaces in between the first < and <DOC and should rather be classic heredocs. [Mehr]

Testing und Test-driven Development

Software-Entwicklung im Team ist ein sehr dynamischer Prozess. Wenn mehrere Personen gleichzeitig an einem Projekt arbeiten, kann sich die Gestalt des Projekts bereits innerhalb eines Tages extrem verändern. In der Regel wird die zu erledigende Arbeit in sehr viele kleine Einheiten eingeteilt, welche dann von den Entwicklern abgearbeitet werden. Nicht selten ist es dabei notwendig, beispielsweise Code zu ändern, der von einem anderen Team-Mitglied geschrieben wurde, weil dieser Code sehr alt ist oder aus einem anderen Grund “fremd” ist. [Mehr]

IT:Agenten Tool of the Week: httpie

When working with remote APIs on the commandline, httpie, the well-designed commandline API client is pure bliss. For those that haven’t heard of or just didn’t know yet about httpie, this post should open your eyes to the beauty of what this little library is and its outstanding usefulness (for instance, quick-and-dirty testing your API during development)! As an example we will talk to the remote API of our in-house redmine instance. [Mehr]

(S)CSS and code quality

(S)CSS and code quality
Intro Like with any software project, the developer of a CSS project should take care of a nice codebase. This is always important, and especially while working in a team. CSS makes no difference here. The basics of CSS are mostly easy to learn, but with a growing codebase the maintainability can go out of control really quickly without a basic strategy. A CSS preprocessor like SCSS introduces comfortable and powerful features to help you with that. [Mehr]

NSQ – Leichte Kost statt schwerem Fast-Food

NSQ – Leichte Kost statt schwerem Fast-Food
NSQ ist eine Echtzeit-Messaging-Plattform, die sich auf die Fahnen schreibt, hohe Verfübarkeit ohne SPOF (Single Point of Failure) zu erreichen und dabei sehr einfach zu verwenden und deployen zu sein. Gründe genug, sich das Projekt einmal genauer anzusehen. Funktionsweise NSQ bietet einen Publish-Subscribe-Mechanismus, der in Form von Topics und Channels umgesetzt ist. Ein Topic ist ein Datenstrom, der wenigstens einen Channel hat. Nachrichten werden vom Publisher nur an ein bestimmtes Topic geschickt und dann von NSQ auf die dazugehörigen Channels verteilt. [Mehr]

Eindrücke von der Microsoft-Developerkonferenz “Build” in Berlin

Eindrücke von der Microsoft-Developerkonferenz “Build” in Berlin
Jährlich veranstaltet Microsoft seine Entwicklerkonferenz „Build“ in San Francisco. Dieses Jahr entschied sich der Softwarekonzern aus Redmond dazu, mit der Konferenz zusätzlich auch weltweit auf Tour zu gehen, damit sich Entwickler unabhängig von ihrem Wohnort über die neuesten Entwicklungen aus dem Hause Microsoft informieren können. Im Rahmen dieser Tour fand eine Veranstaltung im Berliner „Westhafen Event & Convention Center“ statt, die ich besuchen konnte. Zunächst stellte der Partner Director of the Developer Ecosystem Kevin Gallo die Neuerungen, welche sich durch die Veröffentlichung von Windows 10 ergeben, sowohl aus Entwickler- als auch Kosumentensicht vor. [Mehr]

Wege und Abwege digitaler Kundenanalyse

Wege und Abwege digitaler Kundenanalyse
Felix Meyner und Alexander Stojic von I-C-Analytics über Kundendatenerfassung, Privatsphäre und den unschätzbaren Wert von Rauchpausen I-C-Analytics ist ein Münchner Start-up, das mit den IT:Agenten Schreibtisch an Schreibtisch arbeitet – was macht ihr genau? Wir erstellen digitale Kundenanalysen für den stationären Handel und für Marktforschungsinstitute. Es geht also darum, dass zum Beispiel Retail-Ketten ein besseres Verständnis für Kunden bekommen, die ihre Läden besuchen und dort einkaufen. Dafür nutzen wir die Analyse WLAN-aktiver Smartphones in Kombination mit modernster Kameratechnologie. [Mehr]

Peer Reviews are a Good Thing™

An ounce of prevention is worth a pound of cure. — Benjamin Franklin What we read about, found out, and learned about Peer Reviews develop and choose workflows best suited for your team, project and the task to be reviewed: code review / buddy checking: reviewer is reviewing alone walkthru: the author shows step by step what has been done, why it has been done, and how it works: here, often the benefits of rubber duck debugging apply: the author, guiding the reviewer through the code, often finds issues while pointing out how everything should be working group review you might develop own checklists for code quality or project specific requirements (docs, comments, other conventions) general steps [Mehr]