Generated by All in One SEO v5.0.0.1, this is an llms.txt file, used by LLMs to index the site. # Christoph Jahn ## Sitemaps - [XML Sitemap](https://christoph-jahn.com/sitemap.xml): Contains all public & indexable URLs for this website. ## Posts - [macOS: Passphrase for SSH keys](https://christoph-jahn.com/macos-passphrase-for-ssh-keys/) - Mainly as a reminder for myself, here is what to do so that macOS doesn't always ask for your SSH key passphrase. Add the following to ~/.ssh/config Host * AddKeysToAgent yes IdentityFile ~/.ssh/id_rsa UseKeychain yes - [Nickolas Means: The Original Skunk Works](https://christoph-jahn.com/nickolas-means-the-original-skunk-works/) - Here is an interesting and fun-to-watch video about the original skunk works at Lookeed Martin. In addition to lots of interesting fact about some of the most iconic planes ever built (U2, SR-71), it is about how to create high-performing teams. https://www.youtube.com/watch?v=pL3Yzjk5R4M - [XCP-ng: New Network Card Not Visible](https://christoph-jahn.com/xcp-ng-new-network-card-not-visible/) - Quite recently I upgraded my XCP-ng box and added an Intel X520-DA2 network interface card (NIC). The latter comes with dual SFP+ ports and is widely available on the used market for very little money. So I installed the NIC, turned on the machine and saw: nothing. One possible solution is to perform an emergency - [BIOS Update for Supermicro X9SRi-F Board](https://christoph-jahn.com/bios-update-for-supermicro-x9sri-f-board/) - Basically as a reminder for myself here are the steps to update the BIOS on a Supermicro X9SRiF board. The reason in my case was that I needed bitfurcation and that was not available in the v3.2 BIOS installed before. Download ZIP file with new BIOS (v3.3 is the latest as of this writing and - [Dave Farley: Software Architecture Tips I WISH I Knew Sooner](https://christoph-jahn.com/dave-farley-software-architecture-tips-i-wish-i-knew-sooner/) - Another gem from Dave Farley. https://www.youtube.com/watch?v=wQYRl--58zM - [Chris Richardson: Not Just Events - Developing Asynchronous Microservices](https://christoph-jahn.com/chris-richardson-not-just-events-developing-asynchronous-microservices/) - For me the bottom line of this video is: Microservices come with a huge amount of challenges, that you do not have with a monolith. Chris covers a lot of topics, each of which deserve a number of dedicated videos. https://www.youtube.com/watch?v=kyNL7yCvQQc - [Largely moved to LinkedIn](https://christoph-jahn.com/largely-moved-to-linkedin/) - It has been a long time since I wrote something here. Apart from being busy the main reason is that I moved most of writing activity to LinkedIn, where I simply reach more people. Please feel free to follow me there at https://www.linkedin.com/in/christophjahn/ Every now and then I will still post here, primarily more technical - [Randy Shoup: Large-Scale Architecture: The Unreasonable Effectiveness of Simplicity](https://christoph-jahn.com/randy-shoup-large-scale-architecture-the-unreasonable-effectiveness-of-simplicity/) - Some interesting things to learn here. The video was a bit superficial for me, in that a lot of things just get thrown at you. Its value, for me, comes from that list of things, which each deserve looking at in more detail using separate sources. https://www.youtube.com/watch?v=oejXFgvAwTA - [Dave Farley: My Response To The NONSENSE McKinsey Article On Developer Productivity](https://christoph-jahn.com/dave-farley-my-response-to-the-nonsense-mckinsey-article-on-developer-productivity/) - Dave smashes the article on developer productivity from McKinsey. https://www.youtube.com/watch?v=yuUBZ1pByzM - [Seagate Exos disks in TrueNAS Core: Disable parking of heads](https://christoph-jahn.com/seagate-exos-disks-in-truenas-core-disable-parking-of-heads/) - My NAS (TrueNAS Core) is running with Seagate Exos X16 drives. Those were considerably cheaper than any other drive at the time of purchase (September 2020) here in Germany. From what I gathered since then, this is often still the case, also in other countries. But there is one aspect about these drives that needs - [Steve Jobs: Content vs Process](https://christoph-jahn.com/steve-jobs-content-vs-process/) - So true! https://www.youtube.com/watch?v=l4dCJJFuMsE - [Dave Farley: Why Software Release Cycles Are SO PAINFUL](https://christoph-jahn.com/dave-farley-why-software-release-cycles-are-so-painful/) - Great video from Dave Farley https://www.youtube.com/watch?v=4UeBH7rY4lY - [Jens Schauder: Domain-Driven Design with Relational Databases Using Spring Data JDBC](https://christoph-jahn.com/jens-schauder-domain-driven-design-with-relational-databases-using-spring-data-jdbc/) - Interesting video about the real-world challenges when using an ORM (object-relational mapper) like Hibernate or JPA in general. You should also check out the following articles mentioned in the talk: David L. Parnas: On the criteria to be used in decomposing systems into modules Vaughn Vernon: Effective Aggregate Design https://www.youtube.com/watch?v=GOSW911Ox6s - [Steve Jobs President & CEO, NeXT Computer Corp and Apple. MIT Sloan Distinguished Speaker Series](https://christoph-jahn.com/steve-jobs-president-ceo-next-computer-corp-and-apple-mit-sloan-distinguished-speaker-series/) - This is a truly remarkable video. I sometimes wish, and I am not a fanboy, that Steve Jobs would have moved into academia at some point and preserved much more of his experience and knowledge. It is fascinating to hear Steve talk about strategy, corporate culture, marketing, and many other subjects. The video is from - [Using Headphones for Learning](https://christoph-jahn.com/using-headphones-for-learning/) - Just a quick note about one small way I have found to improve my learning when I watch YouTube videos. A while ago I realized that it was easier for me to follow complex content when wearing my old Sennheiser HD 600 headphones. They are not cheap, but relative to other models still quite affordable. - [Dave Farley: How to Build a DEPLOYMENT PIPELINE?](https://christoph-jahn.com/dave-farley-how-to-build-a-deployment-pipeline/) - Here is how to get started with Continuous Delivery https://www.youtube.com/watch?v=x9l6yw1PFbs - [New Camera](https://christoph-jahn.com/new-camera/) - s - [Dave Farley: The Problem With Microservices](https://christoph-jahn.com/dave-farley-the-problem-with-microservices/) - The definitive video on Microservices, as far as I'm concerned. No marketing bullshit, no misguided "stateless-hello world-crap", but a concise and applicable set of criteria. It is also worth noting, that overall/in general Dave prefers a service-oriented monolithic architecture. I can't express how great this video is to describe the real core of the idea - [Compiling Git on CentOS 6](https://christoph-jahn.com/compiling-git-on-centos-6/) - I recently had the need to compile Git on a CentOS 6 system, because the available version (v1.7.1) did not support the ls-remote command used by the Jenkins Git plugin. The various posts I found via Google were missing a crucial prerequisite, hence this short post. Uninstall old Git withyum remove git Install required packages - [Allowing People to Contribute](https://christoph-jahn.com/allowing-people-to-contribute/) - If you ask organizations what they try to achieve, you will receive responses that all look different. They will typically reference the official purpose of the organization (NGO, car manufacturer, consulting, etc.) and then say what more or less specific goal is to be achieved. But in their essence, what they all strive for is - [Gregor Hohpe: Enterprise Architecture = Architecting the Enterprise?](https://christoph-jahn.com/gregor-hohpe-enterprise-architecture-architecting-the-enterprise/) - Interesting high-level summary on Enterprise Architecture https://www.youtube.com/watch?v=mS0AJLqmnvQ - [Living in the Countryside](https://christoph-jahn.com/living-in-the-countryside/) - That's who you get as a visitor in your garden, living in the countryside. The latter has its disadvantages, particularly when it comes to broadband connectivity. But there is also a lot of nice aspects. - [Personal Branding](https://christoph-jahn.com/personal-branding/) - In recent weeks I have come across a number of online articles and posts that covered various aspects of what is now called "personal branding". Most of them listed relatively specific things to do or avoid. This is something that I think can do quite some damage, when followed blindly. Because at the end of - [Sam Newman & Martin Fowler: When To Use Microservices (And When Not To!)](https://christoph-jahn.com/sam-newman-martin-fowler-when-to-use-microservices-and-when-not-to/) - Sam Newman and Martin Fowler in a conversation-style video that looks at Microservices in a non-bullshit way. Must watch! https://www.youtube.com/watch?v=GBTdnfD6s5Q - [Simon Brown: Five Things Every Developer Should Know about Software Architecture](https://christoph-jahn.com/simon-brown-five-things-every-developer-should-know-about-software-architecture/) - A typical (in the best possible sense) video from Simon Brown. Best part for me was modelling and that a common structure is more important than the notation itself. https://www.youtube.com/watch?v=9Az0q2XHtH8 - [Kevlin Henney: Software Is Details](https://christoph-jahn.com/kevlin-henney-software-is-details/) - Brilliant video with lots of references to good stuff for reading. https://www.youtube.com/watch?v=kX0prJklhUE - [Linux and the Speed of Innovation](https://christoph-jahn.com/linux-and-the-speed-of-innovation/) - Although I have been a Linux person since 1995, I have come to like FreeBSD a lot. Primarily because two of my major systems are based on it. As my firewall I have been using pfSense for a number of years, and for storage it is FreeNAS. And both have never let me down, neither - [Dave Farley: Continuous Integration vs Feature Branch Workflow](https://christoph-jahn.com/dave-farley-continuous-integration-vs-feature-branch-workflow/) - There seems to be, at least partly induced by the relatively powerful merge-capabilities of Git, a trend back to using feature branches in distributed development. Since most of the folks I heard supporting this, are not super-senior it appears that feature branches seem the more obvious choice. Dave Farley, who is basically one of the - [Installing MySQL 8.0.22 CE and phpMyAdmin 5.0.4 on Debian 10](https://christoph-jahn.com/installing-mysql-8-0-22-ce-and-phpmyadmin-5-0-4-on-debian-10/) - Quite recently I had decided to set up a VM with a database server in my home lab. My preferred server OS is Debian Linux (esp. since Red Hat announced the end of CentOS) and I wanted a recent version of MySQL, together with phpMyAdmin of course. The MySQL installation was done following the instructions - [Happy New Year!](https://christoph-jahn.com/happy-new-year-2/) - After a short break over the holidays, I am back and would like to wish my readers a Happy New Year and all the best for 2021. I will do my best to keep the weekly cadence for new posts. In addition, I am currently in the process of planning a number of videos. The - [Microphone BOYA BY-M1](https://christoph-jahn.com/microphone-boya-by-m1/) - If you are looking for a cheap lavalier microphone to have better sound at video conferences or to get started with YouTube I can recommend the BOYA BY-M1. It provides really good value for money and can usually be found for around 20 Euros (25 US Dollars) online. I got mine from Amazon (affiliate link - [Installing ecoDMS 18.09 on Debian 10.5](https://christoph-jahn.com/installing-ecodms-18-09-on-debian-10-5/) - I had recently installed ecoDMS 18.09 on a Debian 10.5 VM and it was a pleasant experience overall. However, the following things had to be done differently compared to the installation manual Install gnupg via sudo apt-get install gnupg (this seems to be installed out-of-the-box on Ubuntu) Do not install any Java environment but let - [Deciding Where to Lay Off People](https://christoph-jahn.com/deciding-where-to-lay-off-people/) - I just read a message in the news that a company which, among other things, runs an online job portal for software developers, plans to lay off staff for that portal. The argument made in the news interview, was that this line of business was particularly affected by COVID-19 and to save costs 30 people - [My Journey with Data and Backups](https://christoph-jahn.com/my-journey-with-data-and-backups/) - I started with PCs in 1990 on a 286 with a 42 MB hard disk (Seagate ST251-1), which about one year later had issues with faulty sectors. This was a couple of years before (consumer) hard disks started to internally re-map bad sectors. And it was also the first and last time that I lost - [R. Stanley Williams: Finding the Missing Memristor](https://christoph-jahn.com/r-stanley-williams-finding-the-missing-memristor/) - A bit different from what I usually watch, but still very interesting. https://www.youtube.com/watch?v=bKGhvKyjgLY - [Saad Ali: Kubernetes Design Principles - Understand the Why](https://christoph-jahn.com/saad-ali-kubernetes-design-principles-understand-the-why/) - Interesting stuff https://www.youtube.com/watch?v=ZuIQurh_kDk - [Microsoft Defender ATP on Linux requires systemd](https://christoph-jahn.com/microsoft-defender-atp-on-linux-requires-systemd/) - There seems to be documentation issue with Microsoft Defender ATP for Linux. The system requirements, as far as I can see, do not mention that systemd is needed. I found this on a Debian 9 (Stretch) system that was configured with SysV init. The post-install script of mdatp performs some tests that use the systemctl - [How much true innovation is there in IT?](https://christoph-jahn.com/how-much-true-innovation-is-there-in-it/) - One thing I hear quite often from people, when they learn that I work in IT, is that in their view the speed of change is so high. And how can I keep up with all these completely new things popping up all the time ... Well, not so much is really fundamentally new. Most - [FreeNAS 11.1 U7: Install Syncthing in Jail](https://christoph-jahn.com/freenas-11-1-u7-jails-cannot-be-created/) - As part of moving to a new FreeNAS box, I want to replicate data from the old (nas2, running FreeNAS 11.1 U7) to the new (nas3, running FreeNAS 11.3 U5) machine. During the initial phase nas2 will still be my primary storage location. Think of this as something like a burn-in to ensure that there - [Chef Infra Server Moving to Cloud](https://christoph-jahn.com/chef-infra-server-moving-to-cloud/) - As part of a blog post about the new v14 of Chef Infra Server, it was announced that from now on existing functionality will be deprecated in favor of the cloud version. It will be interesting to see how this works out. Personally, I have never been a friend of forcing customers off an existing - [Sir Ken Robinson: Finding Your Element](https://christoph-jahn.com/sir-ken-robinson-finding-your-element/) - Go for your passion! https://www.youtube.com/watch?v=17fbxRQgMlU - [James Veitch: This is what happens when you reply to spam email](https://christoph-jahn.com/james-veitch-this-is-what-happens-when-you-reply-to-spam-email/) - Absolutely hilarious! https://www.youtube.com/watch?v=LiLS7U7YIdc - [Theory of Constraints and "The Goal"](https://christoph-jahn.com/theory-of-constraints-and-the-goal/) - Two years after reading Eliyahu M. Goldratt's famous book "The Goal" (affiliate link to amazon.com / amazon.de) for the first time, I had a second go at it. It proved, again, to be an entertaining and at the same time enlightening read. I will not come up with yet another summary, you will find plenty - [Sir Ken Robinson: Do schools kill creativity?](https://christoph-jahn.com/sir-ken-robinson-do-schools-kill-creativity/) - How to approach the uncertainty of our future in the field of education. https://www.youtube.com/watch?v=iG9CE55wbtY - [Cause and Effect](https://christoph-jahn.com/cause-and-effect/) - As per "Google Cloud Application Modernization Program: Get to the future faster" (citing DevOps Research and Assessment) "teams that ship code numerous times per day are 1.53 times more likely to achieve or exceed their commercial goals, including profitability, and market share." What many people will make out of this is that it should be - [Knowledge vs. Passion = Which Wing of the Plane Would You Like to Keep?](https://christoph-jahn.com/knowledge-or-passion-which-wing-of-the-plane-would-you-like-to-keep/) - This question comes up at time code 8:45 in the video and I found the response quite intriguing. But overall this video is more about the impact of COVID-19 on teaching and I highly recommend watching it. https://www.youtube.com/watch?v=LFBfGyyMoNs - [Meet Eddie Woo, the maths teacher you wish you’d had in high school](https://christoph-jahn.com/meet-eddie-woo-the-maths-teacher-you-wish-youd-had-in-high-school/) - Maths can be interesting ... https://www.youtube.com/watch?v=SjIHB8WzJek - [Why People Dislike Brainstorming Sessions](https://christoph-jahn.com/why-people-dislike-brainstorming-sessions/) - When a group of people is assigned a task they never had to deal with before, they often start with brainstorming. So you have a number of folks who typically are not exactly knowledgeable about something, but at the same time try to agree on an approach for dealing with it. So they start with - [Windows 10: Restore Bootloader after Linux Test](https://christoph-jahn.com/windows-10-restore-bootloader-after-linux-test/) - I had recently installed Linux in a dual-boot setup on a test machine (an old Lenovo Thinkpad T430). What proved more difficult than in former times was to restore the original state. Most of the recommendations I found online were less than helpful. In particular, many of them ignored the fact that there are two - [Clean Code - Uncle Bob / Lesson 1](https://christoph-jahn.com/clean-code-uncle-bob-lesson-1/) - For the fans of Uncle Bob (aka Robert C. Martin) here is another interesting video. https://www.youtube.com/watch?v=7EmboKQH8lM - ["You are not done, when it works"](https://christoph-jahn.com/you-are-not-done-when-it-works/) - The title is a quote from Robert C. Martin during a conference talk on clean code. For a long time now (I am getting old) I have followed this approach and it has produced remarkable results. For a bit more than four years I had been responsible for a corporate integration platform. I had built - [Update on LaTeX Setup](https://christoph-jahn.com/update-on-latex-setup/) - This is a quick follow-up to my recent post on the LaTeX setup for 2020. I wanted to let you know that I have recently switched from Emacs to VS Code with the LaTeX Workshop extension as my primary LaTeX editor. I truly cannot remember what made me look into this direction, but I am - [Jimmy Bogard - Avoiding Microservice Megadisasters](https://christoph-jahn.com/jimmy-bogard-avoiding-microservice-megadisasters/) - Microservices are not always helpful, what a surprise ;-) https://www.youtube.com/watch?v=gfh-VCTwMw8 - [Kevlin Henney: The Error of Our Ways](https://christoph-jahn.com/kevlin-henney-the-error-of-our-ways/) - How we can achieve bad things in the real world with software. https://www.youtube.com/watch?v=IiGXq3yY70o - [jQuery Tutorial](https://christoph-jahn.com/jquery-tutorial/) - Very recently I had to dig into jQuery a bit deeper than just copy-paste from Stack Overflow. Here is a nice tutorial that I found helpful. https://www.youtube.com/watch?v=hMxGhHNOkCU&list=PLoYCgNOIyGABdI2V8I_SWo22tFpgh2s6_ - [DevOps and Ownership](https://christoph-jahn.com/devops-and-ownership/) - "You build it, you run it" has been my mantra for many years now. A number of times I was approached by management and they asked who should be operating stuff that I had built. Because, allegedly, my time was too precious for doing such a mundane task like operations. This is to all managers: - [Unique IDs in Programming](https://christoph-jahn.com/unique-ids-in-programming/) - Most people have probably come across what is usually called a UUID (universally unique ID) while using software. UUIDs are typically a cryptic combination of alphanumeric characters and do not make any sense to the human brain. But why are they such a critical aspect to most computer programs? Their purpose is pretty obvious: be - [Giving Space to New Team Members](https://christoph-jahn.com/giving-space-to-new-team-members/) - What is management about? According to my favorite podcast, Manager Tools, as a manger you need to achieve results and retention. Pretty obvious on the one hand. But terribly difficult to implement, especially if you want to balance things. One aspect is how to integrate new members into the team. If you have not read - [Martin Thompson: Interaction Protocols - It's All About Good Manners](https://christoph-jahn.com/martin-thompson-interaction-protocols-its-all-about-good-manners/) - Martin on something other than performance. Very interesting stuff in my view. https://www.youtube.com/watch?v=bzDAYlpSbrM - [My 2020 Setup for LaTeX](https://christoph-jahn.com/my-2020-setup-for-latex/) - Here is a short write-up of my current LaTeX setup. Since I sometimes need to process documents on Linux systems (usually in a CI/CD context) the natural choice for me these days is TeX Live on Windows. My preferred editor is probably less common, especially on Windows: Emacs. I have been using it for more - [Nickolas Means: How to crash an airplane](https://christoph-jahn.com/nickolas-means-how-to-crash-an-airplane/) - Not the talk you would expect on a software development conference: What the Sioux City plane crash can teach us for (crisis) management. https://www.youtube.com/watch?v=099cHWSbAL8 - [Free E-Books from Springer](https://christoph-jahn.com/free-e-book-from-springer/) - Springer has made quite a number of book freely available for download. Here is the link to those about computer science. - [Getting Started with Chef Infra Server](https://christoph-jahn.com/getting-started-with-chef-infra-server/) - Setup instruction for a free Chef server and development environment - [It's Not Beautifying but Reduction of Complexity](https://christoph-jahn.com/its-not-beautifying-but-reduction-of-complexity/) - I am writing this on a Saturday afternoon after having spent several hours going over Java code that is about a year old, needed only occasionally, and has not caused issues for quite a while. Still I spent personal time to improve or, shame on me, even add the Javadocs. Also, some additional error checks - [Ken Mugrage: Modern Continuous Delivery](https://christoph-jahn.com/ken-mugrage-modern-continuous-delivery/) - Another video that I found interesting https://www.youtube.com/watch?v=wjF4X9t3FMk - [Corona Virus: Looking Ahead](https://christoph-jahn.com/corona-virus-looking-ahead/) - Over the last couple of days we have been seeing a slight shift in the discussion around Corona virus. More and more people are talking about the mid- to long-term implications for our lives, be it on the private level or related to economic consequences. Either area will have to undergo long-lasting changes in behavior, - [Winning at All Costs](https://christoph-jahn.com/winning-at-all-costs/) - This is a bit of a follow-up to my recent post Don't Promote for Performance . After decades with an ever increasing focus on success, not only in commercial environments, we have all become so accustomed to it, that it feels strange to even take a step back and reconsider the approach. To be clear: I - [Stefan Tilkov: "Good Enough" Architecture](https://christoph-jahn.com/stefan-tilkov-good-enough-architecture/) - A few interesting examples from projects that show what can go wrong with software architectures. https://www.youtube.com/watch?v=PzEox3szeRc - [Birth of Basic](https://christoph-jahn.com/birth-of-basic/) - And here is a bit of computer history, especially for those of us who started their programming career with Basic. https://www.youtube.com/watch?v=WYPNjSoDrqw - [Corona Virus: Question What You Read](https://christoph-jahn.com/corona-virus-question-what-you-read/) - Strictly speaking, this is post is not necessarily related to the Corona virus outbreak. But articles about the latter certainly increase its relevance a great deal. What I want to write about today is how we should deal with everything we read. Most things will also apply to TV, YouTube and other media, but the - [A Techie's View on Marketing](https://christoph-jahn.com/a-techies-view-on-marketing/) - As a very technical person I have a somewhat unusual view on marketing. I do not buy into the "utterly useless" verdict that some technical folks have on marketing. But I also think that, probably just like us techies, some marketing folks overrate the importance of their domain. And I should probably add here that - [Corona Virus: Disable Video in Calls?](https://christoph-jahn.com/corona-virus-disable-video-in-calls/) - With so many people working from home these days, the use of video calls has exploded. I personally think this is a good thing, because it changes the nature of calls dramatically. They move things closer to a personal interaction, which is a huge plus. The downside of this is an increase in the use - [Corona Virus: Priorities](https://christoph-jahn.com/corona-virus-priorities/) - Pretty much everything in life is about priorities. If someone tells you "I did not have time to do XYZ" it actually means that XYZ was not high enough on their list of priorities. Setting priorities is critical whenever there are limited resources to allocate, or conflicting goals to balance. And naturally this becomes much - [Corona Virus: Holding the Team Together](https://christoph-jahn.com/corona-virus-holding-the-team-together/) - While the number of people who work remotely (usually from home) has been growing significantly for a number of years, it is still far away from mainstream. So when people are now forced to work from home entirely due to the Corona virus, it is a new experience for many. Do not underestimate the difference - [Corona Virus: Careless People](https://christoph-jahn.com/corona-virus-careless-people/) - I had not planned to write something on the Corona virus. What meaningful content could I produce that was not out there yet? But the point has come where I need to reflect on a few things for myself. So why not share this ... My overall take is that there is a remarkable number - [What Kind of Job is Right for You?](https://christoph-jahn.com/what-kind-of-job-is-right-for-you/) - I recently came by an interesting article that examined a certain personality aspect and what it means for choice of job. That aspect was the desire to make your own rules in the workplace vs. enjoying to optimize something given. Obviously someone who does not like to work under imposed rules will be better off - [Simon Sinek: Why Leaders Eat Last](https://christoph-jahn.com/simon-sinek-why-leaders-eat-last/) - Interesting thoughts about group dynamics. https://www.youtube.com/watch?v=ReRcHdeUG9Y - [Understanding the Problem](https://christoph-jahn.com/understanding-the-problem/) - Why people choose a solution for a problem before the latter is understood - [Sir Ken Robinson: How to escape education's death valley](https://christoph-jahn.com/sir-ken-robinson-how-to-escape-educations-death-valley/) - Sir Ken describes what makes good education - you should see this. https://www.youtube.com/watch?v=wX78iKhInsc - [Don't Promote for Performance](https://christoph-jahn.com/dont-promote-for-performance/) - Quite recently I heard a fascinating statement (Simon Sinek, again :-) ) about how the US Navy SEALs select people for promotion. It boils down to "trust over performance". Allegedly, if they need to decide between someone who is a high performer that people do not really trust, and someone who is a mid to - [Martin Fowler: Event Sourcing](https://christoph-jahn.com/martin-fowler-event-sourcing/) - What could we do, if a database worked a bit more like a VCS? (The recording is not too good unfortunately: blurred picture pretty much at the beginning for a while and only left audio for the entire video - try to ignore.) https://www.youtube.com/watch?v=aweV9FLTZkU - [Bill Herd: Tales From Inside Commodore](https://christoph-jahn.com/bill-herd-tales-from-inside-commodore/) - If you grew up with a Commodore computer (like me), you should watch this. https://www.youtube.com/watch?v=-Zpv6u5vCJ4 - [Performance and Thread Count](https://christoph-jahn.com/performance-and-thread-count/) - I have seen many mails and forum posts, which sort-of imply that increasing the number of threads working on a task will speed things up overall. This is a dangerous path to follow in many cases, because it has the major drawback of adding overhead. In some cases there is a range where the increase - [Vinod Khosla on How to Build the Future](https://christoph-jahn.com/vinod-khosla-on-how-to-build-the-future/) - I found this a very interesting video https://www.youtube.com/watch?v=TYt5yuiGk9E - [Josh Evans: Mastering Chaos - A Netflix Guide to Microservices](https://christoph-jahn.com/josh-evans-mastering-chaos-a-netflix-guide-to-microservices/) - Great video that goes beyond the usual (i.e. not helpful) buzzword bingo-level and talks about the challenges of using micro services. https://www.youtube.com/watch?v=CZ3wIuvmHeM - [Paul Rulkens: Why the majority is always wrong](https://christoph-jahn.com/paul-rulkens-why-the-majority-is-always-wrong/) - I had not planned it, but this is a nice follow-up to my previous post about conventional wisdom. https://www.youtube.com/watch?v=VNGFep6rncY - [My Problem with Conventional Wisdom](https://christoph-jahn.com/my-problem-with-conventional-wisdom/) - Conventional wisdom has many drawbacks and should not accepted easily - [Adam Tornhill: Prioritizing Technical Debt as if Time and Money Matters](https://christoph-jahn.com/adam-tornhill-prioritizing-technical-debt-as-if-time-and-money-matters/) - Very interesting talk that puts emphasis not only on technical but also organizational and social aspects. https://www.youtube.com/watch?v=fl4aZ2KXBsQ - [Keyboard Re-Mapping](https://christoph-jahn.com/keyboard-re-mapping/) - As a follow-up to my post about Keyboard Tools I wanted to mention that there exists another nice tool for re-mapping. It can be found as part of the Windows Server 2003 Resource Kit Tools and is called remapkey.exe . To make my caps-lock key work as the Windows key, I just drag-and-dropped the "Left - [Windows 10, version 1903 - Error 0xc1900223](https://christoph-jahn.com/windows-10-version-1903-error-0xc1900223/) - How to overcome error 0xc1900223 when updating Windows 10 - [Business Analyst and Enterprise Architect](https://christoph-jahn.com/business-analyst-and-enterprise-architect/) - What is the relationship between the roles of business analyst and enterprise architect? - [New Notebook](https://christoph-jahn.com/new-notebook/) - After more than seven years my beloved MacBook Pro 15" (late 2011) has died the GPU death. Before that I have had at least three replacement motherboards, the first after less than 24 hours of owning the thing. All these replacements were free-of-charge and without any hassle. So no complaints from that end. But given - [Oracle Error 17002 "Io Exception: The Network Adapter could not establish the connection"](https://christoph-jahn.com/oracle-error-17002-io-exception-the-network-adapter-could-not-establish-the-connection/) - My solution to Oracle error 17002 "Io Exception: The Network Adapter could not establish the connection" - [webMethods Integration Server: How to Structure Packages](https://christoph-jahn.com/webmethods-integration-server-how-to-structure-packages/) - For the webMethods Integration Server (IS) packages are "containers" that bundle together various assets and get deployed as sort-of atomic units; this makes them more or less comparable to web apps in a servlet container. So if you are given a certain task to solve, you need to figure out a clever way to organize - [webMethods Integration Server: Create non-printable characters](https://christoph-jahn.com/webmethods-integration-server-create-non-printable-characters/) - It is a common requirement (e.g. for search-replace operations on strings) to create characters that are non-printable, which also means there is no obvious way to type them in. In my case the situation was that I had to convert end-of-line characters created on a Windows system (CR+LF) to Linux (LF only) for some unit - [Benno Rice: The Tragedy of systemd](https://christoph-jahn.com/benno-rice-the-tragedy-of-systemd/) - A not really technical talk, at least not in terms of details. But Benno, who comes from the FreeBSD side, covers a lot of stuff from the conceptual side. My verdict: Absolutely worth it. - [Structure of Development Teams](https://christoph-jahn.com/structure-of-development-teams/) - I just came across another interesting statement about the size of development teams: The good systems that are presently working were written by small groups. More than twenty programmers working on a project is usually disastrous. What makes this so interesting is its origin. It was said in 1968 during the famous NATO Conference - [Simon Sinek: The Finite and Infinite Games of Leadership](https://christoph-jahn.com/simon-sinek-the-finite-and-infinite-games-of-leadership/) - Another very interesting talk of Simon Sinek, this time at Google. The full title is "The Finite and Infinite Games of Leadership: Leadership, Business and Finding Purpose in the Workplace." The following points were interesting for me: Time code 7:00 : Infinite players do not compete with the competition but themselves. This has an awful - [Simon Sinek: This is why many people don't Love their jobs](https://christoph-jahn.com/simon-sinek-this-is-why-many-people-dont-love-their-jobs/) - Great video! - [VLANs with pfSense, Unifi, and VMware ESXi](https://christoph-jahn.com/vlans-with-pfsense-unifi-and-vmware-esxi/) - For setting up VLANs in my home network I basically followed the tutorial from Crosstalk Solution on YouTube: The result, however, was not working as expected. As it turned out the critical difference was that I have my pfSense firewall running virtualized on VMware ESXi 6.5. By default the latter "removes" VLAN tags. But it - [How to Give a Presentation](https://christoph-jahn.com/how-to-give-a-presentation/) - The key points for giving presentations - [Larry McEnerney: The Craft of Writing Effectively](https://christoph-jahn.com/larry-mcenerney-the-craft-of-writing-effectively/) - Mr McEnerney presents a really good "strategic" approach to writing in a professional context. On the one hand nothing really new, but the way it is presented and details being put into context, make this a wonderful framework for me. In particular it became even clearer to me why knowing a lot about a subject - [Conor Neill: How to Start a Speech](https://christoph-jahn.com/conor-neill-how-to-start-a-speech/) - Very nice! - [pfSense Upgrade to 2.4.4 p1](https://christoph-jahn.com/pfsense-upgrade-to-2-4-4-p1/) - Just a few short lines to let you know that for me the upgrade from plain 2.4.4 to p1 went really smooth. I have the following plugins installed: bandwidthd (0.7.4_1) iftop (0.17_2) net-snmp (0.1.5_2) ntopng (0.8.13_3) Open-VM-Tools (10.1.0,1) suricata (4.0.13_11) All plugins had been updated some time ago and thus prior to the pfSense core, - [Ten Years of Blogging](https://christoph-jahn.com/ten-years-of-blogging/) - It is still a somewhat strange feeling that I have been running this blog for a bit more than ten years now. There were phases when I posted pictures from my (job) travels and others when I focused more on genuine content. The latter is mostly about software engineering and management. This may seem like - [The History of Commodore](https://christoph-jahn.com/the-history-of-commodore/) - If you spent your teen years in the middle to late 1980s chances are you owned a {en:Commodore 64} home computer (or a C-128 as I did). For those of us that want to re-live these years there is now a chance. On the Edge: the Spectacular Rise and Fall of Commodore by Brian Bagnall - [Why our education system might need on overhaul](https://christoph-jahn.com/why-our-education-system-might-need-on-overhaul/) - A great video with Sir Ken Robinson putting our education system under scrutiny - ["Google Maps 8-bit for NES"](https://christoph-jahn.com/google-maps-8-bit-for-nes/) - Published on April, 1st :-) - ["My Blackberry Is Not Working!"](https://christoph-jahn.com/my-blackberry-is-not-working/) - This is a really great one! - [The Super-Developer](https://christoph-jahn.com/the-super-developer/) - I have been meaning to write about super-productive developers for a while. It turns out, that pretty much most of it has already been covered in this excellent post by Salvatore Sanfilippo. - [Job Interview Question: What is Your Favorite Algorithm?](https://christoph-jahn.com/job-interview-question-what-is-your-favorite-algorithm/) - While watching the video below, I was intrigued, when this interview questions was discussed (timestamp 56:30-57:35). It made me think about my response, had I ever been asked the same. And it did not take too long before the answer was clear: the B-Tree. There is a very good section on it in Martin Kleppmann's - [Robert Waldinger: What makes a good life? Lessons from the longest study on happiness](https://christoph-jahn.com/robert-waldinger-what-makes-a-good-life-lessons-from-the-longest-study-on-happiness/) - A bit different form what I usually post, but a fascinating topic. - [Installing Pi-hole on top of dnsmasq](https://christoph-jahn.com/installing-pi-hole-on-top-of-dnsmasq/) - Pi-hole is a great and easy addition to security. The automated installation is a nice thing, but did not work on my system. The core of the problem was that I wanted to install it on a Rasperry Pi that already had dnsmasq running on it. And of course that dnsmasq was configured to provide - [Why Companies Fail on Technical Careers](https://christoph-jahn.com/why-companies-fail-on-technical-careers/) - I cannot say how often I read in some company's image brochure that management and expert career paths are treated equal. There must be companies on our planet where this is true, but I have yet to see it in practice. Why is that? (Unless mentioned otherwise this article is about the IT industry with - [You are not faster with an 80% solution](https://christoph-jahn.com/you-are-not-faster-with-an-80-solution/) - When the schedule is tight for a software development project, one of the first things non-technical people contemplate, is reducing quality and/or scope and go for an 80% solution. This can work but only under particular circumstances. A recent discussion I had with some folks was about such a situation. A very tight deadline had - [Displaying Your Terminal Sessions](https://christoph-jahn.com/displaying-your-terminal-sessions/) - We are used to terminal sessions displayed like any other content, i.e. as a video of some kind. The latter comes with two caveats, though. It uses a lot of bandwidth (compared to the actual terminal session) and is often difficult to read. Because many people do not bother to magnify the terminal either during - [Linus Tech Tips: The Greatest Keyboard of All Time.. Reborn](https://christoph-jahn.com/linus-tech-tips-the-greatest-keyboard-of-all-time-reborn/) - I have the privilege to own a Model M, the only real keyboard. Here are a few facts - [Oracle DB does not start](https://christoph-jahn.com/oracle-db-does-not-start/) - After installation the configuration in /etc/oratab prevents the DB from starting - [Martin Kleppmann - Conflict Resolution for Eventual Consistency](https://christoph-jahn.com/martin-kleppmann-conflict-resolution-for-eventual-consistency/) - Here is a rather interesting video from Martin Kleppmann where he talks about dealing with concurrent changes to data. While the title may sound theoretical to some, it is a topic that probably every developer has come across. And here is also the link to the paper with the algorithm presented. If you are interested - [Martin Kleppmann: Transactions - Myths, Surprises and Opportunities](https://christoph-jahn.com/martin-kleppmann-transactions-myths-surprises-and-opportunities/) - Here is another interesting presentation from Martin given at the Code Mesh Conference 2015 in London. - [Ed Finkler: Graph Databases Will Change Your Freakin' Life](https://christoph-jahn.com/ed-finkler-graph-databases-will-change-your-freakin-life/) - If you want to understand how graph databases might be able to help you... - [Linux and Me](https://christoph-jahn.com/linux-and-me/) - Although it is not a focal point of my professional live any more, Linux and I share a long common history. My first encounter was with "S.u.S.E. Linux August 1995" (kernel 1.1.12) in October or November of 1995. Until then I had only played around a bit with MINIX 1.5 on a 80286-based PC. But - [Starting with Continuous Integration](https://christoph-jahn.com/starting-with-continuous-integration/) - In this post I look at things to consider when an organization wants to introduce Continuous Integration (CI). As in so many other situations the non-technical challenges are more difficult to solve than some nitty-gritty details. Start Small Right Now If ever there was a place for the proverb "the better is the enemy of - [Martin Fowler: Not Just Code Monkeys](https://christoph-jahn.com/martin-fowler-not-just-code-monkeys/) - Back in 2010 I had the "pleasure" to be called a code monkey myself. It happened at the global sales kick-off when a sales rep had the nerve to say in his presentation that code monkeys (i.e. presales staff) are not needed for successful software sales to enterprises. Brave statement. The presentation is a great - [Visual Studio Code and Bash on Windows](https://christoph-jahn.com/visual-studio-code-and-bash-on-windows/) - A while ago I started using Visual Studio Code and it is a great tool for many things. Primary use-cases for me are Chef recipes and SFDX at the moment, for both of which there are extensions in the VS Code marketplace. Also, I like to use Bash (the one that came with Git for - [How to Use Code in Your Presentation](https://christoph-jahn.com/how-to-use-code-in-your-presentation/) - Here is a great presentation recommended by Michael Simons . https://www.slideshare.net/LookAtMySlides/codeware - [On Micro Services](https://christoph-jahn.com/on-micro-services/) - Just a couple of thoughts on micro services, triggered by a German blog post on heise Developer. So let's go ... I have read quite a few articles on micro services, and literally all of them were overly optimistic and just scratching the, of course, positive surface. The examples are usually just slightly more complex - [Start Working with a Version Control System](https://christoph-jahn.com/start-working-with-a-version-control-system/) - Every so often I get asked about what to consider when introducing Continuous Integration (CI) to an organization. Interestingly though, most of the details discussed are about working with a version control system (VCS) and not CI itself. That is understandable because the VCS is the "gateway" for all developers. So here are my recommendations. - [Transfer of Website Finished](https://christoph-jahn.com/transfer-of-website-finished/) - After a bit more than a week the transfer of my web pages to a new hosting provider is finished. The timing was, thanks to Murphy, not optimal since I got the notifications for most domains while waiting in a plane. The latter took almost five hours, thanks to difficulties when landing on La Palma. - [Ignoring Warnings in Log Files](https://christoph-jahn.com/ignoring-warnings-in-log-files/) - I know that many people think along the lines of ignoring warnings in log files. But I am responsible for an environment where we run applications that are sort-of business critical. So I need to take warnings seriously, especially if their wording is not really clear. The consequence is that any unnecessary warning causes operational - [How to Implement Test-Driven Development](https://christoph-jahn.com/how-to-implement-test-driven-development/) - Test-Driven Development (TDD) is something I have long had difficulties with. Not because I consider it a bad concept, but found it very difficult to start doing. In hindsight it appears that the advice given in the respective books and online articles was not suitable. So here is the approach that finally worked for me. - [Structuring a VCS Repository](https://christoph-jahn.com/structuring-a-vcs-repository/) - How I structure my SVN repository to support a business-critical piece of software - [Changing the Web Hosting Company](https://christoph-jahn.com/changing-the-web-hosting-company/) - After many years I have decided to move my web sites to a different web hosting company. While I am happy with the service provided in the past, the commercial side of things was not so bright. And even when I canceled the automatic renewal of a domain registration, the special offer I immediately got - [Kelsey Hightower: Kubernetes for Sysadmins](https://christoph-jahn.com/kelsey-hightower-kubernetes-for-sysadmins/) - Interesting presentation, especially the demo at the end. And I also like the part where he explains scheduling via Tetris. - [Raspberry Pi Cluster - Part 1: The Hardware](https://christoph-jahn.com/raspberry-pi-cluster-part-1-the-hardware/) - For a long time I had wanted my own Raspberry Pi cluster and I finally managed to get started. There will be five nodes, which will give me 20 cores to play with. The overall plan is to manage the nodes with Ansible and run a Kubernetes cluster on them. Let's start with putting these - [Configuration Management - Part 1: The Horrors](https://christoph-jahn.com/configuration-management-part-1-the-horrors/) - Why is Configuration Management (CM) so important? The simple answer is: Because the correct configuration is one of the three critical parts for running a non-trivial piece of software successfully. (The other two are the actual code and the data.) I still remember my first project when I was fresh out of university. While the - [Configuration Management - Part 2: Splendid Isolation](https://christoph-jahn.com/configuration-management-part-2-splendid-isolation/) - After the first post on configuration management, today I want to write about what I consider one of the biggest flaws in all systems I am aware about so far. They all live pretty much in "splendid isolation" and ignore whatever surrounds them. My professional background is integration software and I attribute it to this - [Configuration Management – Part 8: The Maintenance](https://christoph-jahn.com/configuration-management-part-8-the-maintenance/) - How do I maintain my configuration data? It is one thing to have them stored somewhere and being able to maintain stuff, if you are a developer or a technical person in general. In which case you will be fine with a plain text editor, sometimes even something like vi (I am an Emacs guy - ["How Open Source Projects Survive Poisonous People"](https://christoph-jahn.com/how-open-source-projects-survive-poisonous-people/) - Google tech Talk video on how to run a successful open source project - [Choosing a Technology](https://christoph-jahn.com/choosing-a-technology/) - What are the critical strategic questions for choosing a technology? - [Simon Sinek: First why and then trust](https://christoph-jahn.com/simon-sinek-first-why-and-then-trust/) - Simon Sinek is well known for his book "Start with Why: How Great Leaders Inspire Everyone to Take Action". Here he gives an interesting talk about why and how we trust others. - [Harry Baker : How learning German taught me the link between maths and poetry](https://christoph-jahn.com/harry-baker-how-learning-german-taught-me-the-link-between-maths-and-poetry/) - I have had some comparable experiences when living in the UK back in 1998. It was probably one of the most remarkable times in my live and I still think about it with a lot of fondness. - [Stephen Carver: Getting People Right for Better Outcomes](https://christoph-jahn.com/stephen-carver-getting-people-right-for-better-outcomes/) - A very entertaining, yet serious talk about what kinds of "projects" there are and why you need different people for them. - [Martin Thompson: Adventures with Concurrent Programming in Java - A Quest for Predictable Latency](https://christoph-jahn.com/martin-thompson-adventures-with-concurrent-programming-in-java-a-quest-for-predictable-latency/) - Martin talks about various algorithms for lock-free data processing. Worth watching, as always :-) - [Jake Wright: Learn Docker in 12 Minutes](https://christoph-jahn.com/jake-wright-learn-docker-in-12-minutes/) - In my view a very good (technical) start to using Docker. - [Patrick Kua: Architecting for Continuous Change](https://christoph-jahn.com/patrick-kua-architecting-for-continuous-change/) - What should we do to handle the constantly changing domain and technical requirements? Patrick Kua talks about some interesting aspects on the architectural level. - [Configuration Management – Part 9: The Audit Trail](https://christoph-jahn.com/configuration-management-part-9-the-audit-trail/) - Keeping track of changes is a critical functionality in every configuration management system because there are legal requirements like SOX (Sarbanes-Oxley Act) that require it. It can be accomplished in several ways. Basically you can either use an existing tool like a VCS (version control system) or have something custom-built. When possible, I tend to - [Ubiquity Networks Unify Controller on Raspberry Pi: Startup exits with RC=1](https://christoph-jahn.com/ubiquity-networks-unify-controller-on-raspberry-pi-startup-exits-with-rc1/) - As mentioned in My WiFi Setup with Ubiquiti Networks UAP-AC-PRO I run the Unify Controller software on a Raspberry Pi 3. There is a ready-made package available for Debian and Ubuntu Linux, that can easily be used for this and I have been doing so for more than a year. Just a yesterday, though, I - [Re-Writing Software from Scratch](https://christoph-jahn.com/re-writing-software-from-scratch/) - It is not uncommon that an existing piece of non-trivial software gets re-written from scratch. Personally, I find this preference for a greenfield approach interesting, because it is not something I share. In fact, I believe that it is a fundamentally flawed approach in many cases, so why are people still doing this today? Probably - [ESXi 6.5: Intel NICs Not Found](https://christoph-jahn.com/esxi-6-5-intel-nics-not-found/) - While playing around with an ESXi 6.5 test system, I accidentally killed all network connectivity by setting the NICs to pass-through. This post gives a bit of background and the solution that worked for me. The system is home-built with a Fujitsu D3410-B2 motherboard and an Intel dual-port Gigabit NIC (HP OEM). The motherboard has - [Revisiting Software Architecture](https://christoph-jahn.com/revisiting-software-architecture/) - Quite recently I heard a statement similar to "The application works, so there is no need to consider changing the architecture." I was a bit surprised and must admit that in this situation had no proper response for someone who obviously had a view so different from everything I believe in. But when you think - [Kodi on Raspberry Pi 3 with Hifiberry DAC+](https://christoph-jahn.com/kodi-on-raspberry-pi-3-with-hifiberry-dac/) - Having been a very happy user of the Kodi mediacenter for several years, it was finally time to upgrade to a Raspberry Pi 3 and a Hifiberry DAC+ board for good sound. For the sound setup I followed these instructions that made the new soundcard appear on Linux level, but not in OSMC (my current - [My WiFi Setup with Ubiquiti Networks UAP-AC-PRO](https://christoph-jahn.com/my-wifi-setup-with-ubiquiti-networks-uap-ac-pro/) - After almost nine months it is time for a verdict on my "new" WiFi access, the Ubiquiti Networks UAP-AC-PRO. I can honestly say that it works extremely well here and all the WiFi issues I have had for years, have simply gone. The device is comparatively expensive (I paid about 140 Euros at Amazon) and - [How Useful Are Personal Objectives?](https://christoph-jahn.com/how-useful-are-personal-objectives/) - At least here in Germany there has been a recent shift away from personal objectives in compensation. Some very big companies like Daimler, Bosch and Infineon have announced that they will abandon personal objectives in this context and only look at the overall result of the organization. (I am pretty certain that sales is exempt - [Martin Fowler: The Many Meanings of Event-Driven Architecture](https://christoph-jahn.com/martin-fowler-the-many-meanings-of-event-driven-architecture/) - A good talk on EDA (event-driven architecture). - [webMethods Integration Server: Continuous Deployment](https://christoph-jahn.com/release-management-for-webmethods-integration-server/) - For more than nine years I have been working on a package for webMethods Integration Server. With the experience gained there, I want to discuss a number of aspects about Continuous Deployment. Versioning I recommend the use of semantic versioning, which at its core is about the following (for a lot of additional details, just - [Offshoring and Knowledge Depletion](https://christoph-jahn.com/offshoring-and-knowledge-depletion/) - The loss of knowledge when giving technical work to offshore locations - [Configuration Management – Part 7: The Time](https://christoph-jahn.com/configuration-management-part-7-the-time/) - An often overlooked aspect of configuration management is time. There are many scenarios where the correct value is dependent on time (or date for that matter). Typical examples are organizational structures (think "re-org") or anything that is somehow related to legislation (every change in law or regulation becomes active at a certain time). There are - [Too Qualified to Code](https://christoph-jahn.com/too-qualified-to-code/) - There is an "interesting" perception of software development in that quite a few people think it is an activity suitable for graduates but not highly qualified professionals. I am in violent disagreement with this. But since it is a widespread belief, just dismissing it as dumb does not help very much. So how does it - [Mac OS X Mavericks: Mouse Right-Click Stopped Working](https://christoph-jahn.com/mac-os-x-mavericks-mouse-right-click-stopped-working/) - Not sure how many people still use Mac OS X Mavericks, but anyway. I had just had the issue that the right-click had stopped working, on the mouse as well as the trackpad. There are many posts on the subject, so it seems a not too uncommon problem. The one that helped me suggested to - [Trying to Help](https://christoph-jahn.com/trying-to-help/) - Quite recently I came across a number of texts (e.g. "Is Giving the Secret to Getting Ahead?"), which suggest that trying to be helpful to others is not only altruistic, but also helps the giving person. This is certainly true for me, so let me tell you my story. My employer is running a number - [Canadian Army Disassembles and Reassembles Jeep in Under 4 Minutes](https://christoph-jahn.com/canadian-army-disassembles-and-reassembles-jeep-in-under-4-minutes/) - The title says it all, enjoy! - [Jez Humble on Continuous Delivery](https://christoph-jahn.com/jez-humble-on-continuous-delivery/) - I recently stumbled over this video. It gives a good introduction to what Continuous Delivery is at its core. - [Introduction to 3D Printers](https://christoph-jahn.com/introduction-to-3d-printers/) - Here is a video I came across recently, which I liked and wanted to share. - [Lego Mindstorms: A Paper Cube](https://christoph-jahn.com/lego-mindstorms-a-paper-cube/) - Here is yet another nice video of a Lego Mindstorms factory. - [The power of introverts | Susan Cain on TED Talks](https://christoph-jahn.com/the-power-of-introverts-susan-cain-on-ted-talks/) - A fascinating talk in my view and something every manager should see. - [Leadership Lesson from a Nuclear Submarine](https://christoph-jahn.com/leadership-lesson-from-a-nuclear-submarine/) - The video linked below is a quick summary of how the captain of a US Navy nuclear submarine turned his crew into the best evaluated ever. It is a remarkable story and reiterates in a very comprehensive and compact way what I have experienced myself many times (on the giving as well as the receiving - ["Uncle" Bob Martin - The Future of Programming](https://christoph-jahn.com/uncle-bob-martin-the-future-of-programming/) - The history of programming and a short outlook on its future - [Software Architecture and Code](https://christoph-jahn.com/software-architecture-and-code/) - In the closing statement of my post Architects Should Code I said that for me code and architecture are just two ways to look at the same thing. It seems that I am not alone in that perception :-) and can very much recommend the video linked in below. I found its start a bit - [Configuration Management - Part 4: The Differences](https://christoph-jahn.com/configuration-management-part-4-the-differences/) - The capability to deal with multiple environments is another strength of the WxConfig solution. It basically uses a late-binding approach and, upon loading, checks the environment type of the current system (Docker-compatible, by the way). That way, only values valid for the current environment type will be loaded. Before diving into the details, I want - [Configuration Management - Part 3: The Journey Begins](https://christoph-jahn.com/configuration-management-part-3-the-journey-begins/) - Today I want to tell you about a configuration management solution I have developed. It is built for Software AG's ESB (the webMethods Integration Server). The latter did, for a very long time, not have built-in capabilities for dealing with configuration values. So what many projects did, was to hack together a quick-and-dirty "solution" that - [Configuration Management – Part 6: The Secrets](https://christoph-jahn.com/configuration-management-part-6-the-secrets/) - Every non-trivial application needs to deal with configuration data that require special protection. In most cases they are password or something similar. Putting those items into configuration files in clear is a pretty bad idea. Especially so, because these configuration files are almost always stored in a VCS (version control system), that many people have - [Configuration Management – Part 5: The External World](https://christoph-jahn.com/configuration-management-part-5-the-external-world/) - A standard requirement in configuration management is using values that already exist somewhere else. The most obvious places are environment variables (defined by the operating system) and Java system properties. Other are existing (!) databases, e.g. from an ERP system, or files. The reason for referencing values directly from their original sources instead of duplicating - [Architects Should Code](https://christoph-jahn.com/architect-vs-developer/) - There is a widespread notion, that developers at some point in their career evolve into something "better", called architect. This term has the connotation of mastery on the subject, which I think is ok. What is not ok for me, is that in many cases there is the expectation that an architect's time is too - [Size of Development Teams](https://christoph-jahn.com/size-of-development-teams/) - What is a good size for a development team? Of course there is no truly universal answer to this question. Software projects are just too diverse. But still my gut feeling as well as several articles I read on the subject, tell me that in many cases two to five people is probably a good - ["Decisions should be made at the lowest possible level"](https://christoph-jahn.com/decisions-should-be-made-at-the-lowest-possible-level/) - When watching this video about The Origins of Hewlett-Packard, one of the statements that really struck me (at time code 16:25) was "Decisions should be made at the lowest possible level". I have had the privilege to work for Hewlett-Packard as my first job after graduating from university. It was a turbulent time then in - [FreeNAS Upgrade from 9.2.1.7 to 9.10.2-U2](https://christoph-jahn.com/freenas-upgrade-from-9-2-1-7-to-9-10-2-u2/) - Adding jail templates back to FreeNAS after upgrade to 9.10 - [Arduino Pro Mini: stk500_recv(): programmer not responding](https://christoph-jahn.com/arduino-pro-mini-stk500_recv-programmer-not-responding/) - Various reasons why programming an Arduino may fail - [ESP8266 Management Platform](https://christoph-jahn.com/esp8266-management-platform/) - There is an awful lot of people doing hobby projects with the ESP8266. I did not want to come up with the 47th incarnation of something, so the question came up, what an interesting project could look like. In the end I decided to develop a solution for managing a multitude of ESP8266-based devices. From - [McKinsey: What CEOs are reading](https://christoph-jahn.com/mckinsey-what-ceos-are-reading/) - List of books that various CEOs have read - [Upgrade MQTT Broker Mosquitto on Raspberry Pi: "The following packages have been kept back"](https://christoph-jahn.com/upgrade-mqtt-broker-mosquitto-on-raspberry-pi-the-following-packages-have-been-kept-back/) - While exploring MQTT I had installed the Mosquitto message broker on my Raspberry Pi. However, the version that is in the Debian Wheezy repository is, as of this writing, really old (v0.15). So an upgrade was in order and fortunately the guys from Mosquitto have set up a Debian repo of their own and a - [Start OpenHAB on Raspberry Pi in Debug Mode](https://christoph-jahn.com/start-openhab-on-raspberry-pi-in-debug-mode/) - When you need to start OpenHAB in debug mode, the standard approach is to run the script start_debug.sh. But on the Raspberry Pi (i.e. on Debian) this script does not exist. Instead you need to edit the file /etc/default/openhab that contains an entry DEBUG=no, which needs to be changed to DEBUG=yes. - [ESP8266 Microcontroller](https://christoph-jahn.com/esp8266-microcontroller/) - After many, many years I rediscovered electronics as a hobby in 2015 and started playing around with sensors connected to an Arduino Uno R3 and Raspberry Pi. It was fun to link them with motion detection sensors and switch lamps on and off. One drawback, however, was the pricing of those components, if you want - [ESP8266 and Stability of NodeMCU Firmware](https://christoph-jahn.com/esp8266-and-stability-of-nodemcu-firmware/) - For someone like me who comes from a non-embedded background (I specialize in things like EAI, SOA, etc.) the ideas of the NodeMCU firmware are really appealing. A nice scripting language, a slick GUI for rapid prototyping (ESPlorer) together with a highly active community seemed a perfect fit. Unfortunately it did not work for me. - [Free ESP8266 Book](https://christoph-jahn.com/free-esp8266-book/) - Mostly as a reminder for myself here is a link to a free book about the ESP8266. It dates from August 2015, so a few things have happened since; including the announcement of its successor, the ESP32 (forum here). - [Arduino: Ethernet with ENC28J60](https://christoph-jahn.com/arduino-ethernet-with-enc28j60/) - Connecting my Arduino Nano v3 with an ENC28J60 module using UIPEthernet - [LaTeX: Hyphenation of \texttt](https://christoph-jahn.com/latex-hyphenation-of-texttt/) - How to get proper linebreaks when using \texttt{} - [Linus Torvalds on "Git"](https://christoph-jahn.com/linus-torvalds-on-git/) - Linus gave a presentation on distributed version control at Google - [Mac: Auto-Mounting Network Shares](https://christoph-jahn.com/mac-auto-mounting-network-shares/) - Admittedly, on the Mac I have always been a pure end-user only. So it is no surprise that I had never looked at Automator, which in hindsight is a real pity. When searching for an easy way to automatically mount CIFS shares from my NAS, I came across a post on Stackoverflow that suggested Automator - [WebDAV for Ant](https://christoph-jahn.com/webdav-for-ant/) - I finally found an Ant task for WebDAV that works (I used cadaver instead because in the past none had worked for me). Thanks a lot to Ole Christian Langfjæran on Github for putting this together. But I needed an additional parameter so that the password can be retrieved from a file instead of being - [Thunderbird: Sync all mails via IMAP](https://christoph-jahn.com/thunderbird-sync-all-mails-via-imap/) - This post is mostly meant as a reminder for myself. When adding an email account that had long been in use to Thunderbird, I wanted to have a complete local copy of all mails from all folders. But I did not want to subscribe to hundreds of folders manually and then click each of them - [Oracle 11g XE: Setting Environment Variables on CentOS/RHEL](https://christoph-jahn.com/oracle-11g-xe-setting-environment-variables-on-centosrhel/) - There are many posts on how to set the required environment variables, namely ORACLE_HOME, after the installation of Oracle 11g Express Edition (XE). They usually tell you to change some init scripts for bash (e.g. ~/.bashrc or ~/.bash_profile). While this is a possible approach, it is more complicated than necessary and certainly not elegant. CentOS/RHEL - [Watching Log Files on Linux/Unix](https://christoph-jahn.com/watching-log-files-on-linuxunix/) - Most people I come across use tail -f fileName to watch files. The drawback, however, is that for a closer inspection of something I had just seen, I have to abort this and change to some file viewer (where I first need to find again what I want to check). So why not use a - [Using LaTeX with Windows 7](https://christoph-jahn.com/using-latex-with-windows-7/) - Links to a few recommended web pages - [Thoughts on Application Logging](https://christoph-jahn.com/thoughts-on-application-logging/) - Stakeholders on their requirements. Relationships between logging, monitoring and management. And finally some thoughts about working with a message catalog - [Xubuntu Window Title Bars Gone](https://christoph-jahn.com/xubuntu-window-titel-bars-gone/) - I have an old machine running Xubuntu 12 and quite like it. But the shutdown from the UI sometimes does not work. One possible consequence is that after the next start the window title bars are gone, as was in my case the widget to switch virtual desktops. To get this fixed a simple rm - [AirPlay with AirPort Express, MacOS X Lion and iTunes](https://christoph-jahn.com/airplay-with-airport-express-macos-x-lion-and-itunes/) - Turn off IPv6 to make AirPlay work with MacOS X Lion - [VMware Fusion 4 on OS X Mavericks](https://christoph-jahn.com/vmware-fusion-4-on-os-x-mavericks/) - Is an upgrade needed from VMware Fusion 4 when upgrading from Mac OS X Lion to Mavericks? - [Ant Build System for the Nullsoft Installer System (NSIS)](https://christoph-jahn.com/ant-build-system-for-the-nullsoft-installer-system-nsis/) - Lately I had to automate the installation of quite a few inter-related system components for the creation of demo systems (usually in virtual machines). In my case those were a dedicated database, three server applications and various clients operating against those servers. The important part was that quite a few configuration settings had to be - [Connecting to Raspberry Pi via SSH: Connection Timeout](https://christoph-jahn.com/connecting-to-raspberry-pi-via-ssh-connection-timeout/) - Fix connection timeout of SSH by changing network configuration of Raspberry Pi - [Connecting from Windows 7 to Samba on CentOS 6: Access denied ](https://christoph-jahn.com/connecting-from-windows-7-to-samba-on-centos-6-access-denied/) - SELinux blocked connections via Samba, here is how to solve this - [The Importance of Names](https://christoph-jahn.com/the-importance-of-names/) - Names carry a message in themselves and immediately create a first mental picture. Therefore choosing them carefully is critical for successful communication - [My New Toy: Mac Mini](https://christoph-jahn.com/my-new-toy-mac-mini/) - Having been a very happy iPod user for more than six years, I finally got myself a Mac Mini as a kind of New Year's present. And I must admit that it totally blew me away! The overall usability and the many tiny details that show the degree of thinking that was put into the - [Keyboard Tools](https://christoph-jahn.com/keyboard-tools/) - Two powerful tools (Auto Hotkey and Key Tweak) for people who like to work with the keyboard - [Eric Ries: "The Lean Startup"](https://christoph-jahn.com/eric-ries-the-lean-startup/) - Case studies on the special management needs of startup companies - [Getting Someone's Buy-In](https://christoph-jahn.com/getting-someones-buy-in/) - How to properly get a buy-in - [Custom target directory for unattended Java installation on Windows](https://christoph-jahn.com/custom-target-directory-for-unattended-java-installation/) - Custom destination directories for unattended Java installations must not contain spaces - [JMeter 2.5 Release](https://christoph-jahn.com/jmeter-2-5-release/) - My first contribution to JMeter (support for durable subscriptions on JMS topics) is now in the latest release - [Open Services for Lifecycle Collaboration](https://christoph-jahn.com/open-services-for-lifecycle-collaboration/) - A great approach to develop a standard for integrating ALM tools (and PLM in future). - [WebDAV Client](https://christoph-jahn.com/webdav-client/) - If you look for a small WebDAV client, check out DAV Explorer - [Symlink all sub-directories on Windows 7](https://christoph-jahn.com/symlink-all-sub-directories-on-windows-7/) - Create symlink for all subdirs using mklink.exe - [Southern England: Boscastle in Cornwall](https://christoph-jahn.com/southern-england-boscastle-in-cornwall/) - Boscastle is a beautiful old village in a stunning scenery - [Processes and Process Orientation: Definition (Part 2)](https://christoph-jahn.com/processes-and-process-orientation-definition-part-2/) - Key characteristics of a (business) process - [Automate hMailServer Setup](https://christoph-jahn.com/automate-hmailserver-setup/) - Installation and configuration of hMailServer can easily be automated. Here is how to do it. - [Oracle XE silent install on Linux: "Password can't be null"](https://christoph-jahn.com/oracle-xe-silent-install-on-linux-password-cant-be-null/) - Wrong end-of-line could be responsible for this. Try dos2unix - [Processes and Process Orientation: Functional View and Process Types (Part 3)](https://christoph-jahn.com/processes-and-process-orientation-functional-view-and-process-types-part-3/) - How to look at the same activities from a functional and a process-oriented view - [Coordinating Distributed Development in Projects](https://christoph-jahn.com/coordinating-distributed-development-in-projects/) - Do we coordinate development work using VCS locking or by phone and email? Or is there a third approach that combines advantages from both? - [The Non-SOA View on SOA: Part 1](https://christoph-jahn.com/the-non-soa-view-on-soa-part-1/) - At its core (apart from the marketing hype) what is SOA really all about? - [Lifecycle Management with SOA and BPM: Part 2](https://christoph-jahn.com/lifecycle-management-with-soa-and-bpm-part-2/) - Run your whole development cycle with BPM - [Lifecycle Management with SOA and BPM: 1+1> 2](https://christoph-jahn.com/the-dream-team-bpm-and-soa/) - The great added value from combining BPM and SOA - [Processes and Process Orientation: Introduction (Part 1)](https://christoph-jahn.com/processes-and-process-orientation-introduction-part-1/) - What triggered the process orientation and which areas of management theory gave early input - [USVN with CentOS 5](https://christoph-jahn.com/usvn-with-centos-5/) - Run USVN on CentOS 5 - [Version Control Systems and other Repositories](https://christoph-jahn.com/version-control-systems-and-other-repositories/) - Why it makes sense to have additional repositories on top of a Version Control System (VCS) and why it usually does not happen - [ALM and ERP Software: Middleware needed for both](https://christoph-jahn.com/alm-and-erp-software-middleware-needed-for-both/) - Just like ERP software also ALM tools have to integrate with others. And like for ERP this should be done using middleware. - [Tooling for Agile and Traditional Development Methodologies](https://christoph-jahn.com/tooling-for-agile-and-traditional-development-methodologies/) - How does tooling affect the success of development methodologies (agile vs. traditional) - [Blog Posts on Git](https://christoph-jahn.com/blog-posts-on-git/) - A number of interesting Git posts I have come across - [OpenSolaris and SATA Controller Dawicontrol DC-310e](https://christoph-jahn.com/opensolaris-and-sata-controller-dawicontrol-dc-310e/) - Using the Dawicontrol DC-310e with OpenSolaris and Nexenta - [Hamburg Harbour](https://christoph-jahn.com/hamburg-harbour/) - Pictures from Hamburg harbour in November 2010 - [Happy New Year !!](https://christoph-jahn.com/happy-new-year/) - I wish you all a very happy New Year 2011! My apologies for having been relatively silent during the last few months. But I will try to improve this and post more stuff again, so stay tuned. - [Free Screenshot Tool for Windows](https://christoph-jahn.com/free-screenshot-tool-for-windows/) - Greenshot is a nice and free screenshot tool for Windows - [Oracle DB 11g R2 on 32 bit Linux: DBCA does not start](https://christoph-jahn.com/oracle-db-11g-r2-on-32-bit-linux-dbca-does-not-start/) - There is a bug that makes the Database Configuration Assistent (DBCA) crash when started on a 32 bit Linux. - ["Failure Trends in a Large Disk Drive Population" from Google](https://christoph-jahn.com/failure-trends-in-a-large-disk-drive-population-from-google/) - Google conducted a large-scale analysis on failure patterns for hard disks - [CentOS 5.4 64 bit does not work with ESXi 4.1](https://christoph-jahn.com/centos-5-4-64-bit-does-not-work-with-esxi-4-1/) - CentOS 5.4 64 bit does not work with ESXi 4.1, use CentOS 5.5 instead - [Use iSCSI with CentOS](https://christoph-jahn.com/use-iscsi-with-centos/) - Link to a great post providing step-by-step instructions to setup an iSCSI initiator in CentOS/RHEL - [Regensburg](https://christoph-jahn.com/regensburg/) - I grew up in the beautiful city of Regensburg, which was founded by the Romans in 179 as a military camp. Since 2006 Regensburg is a UNESCO World Heritage Site. - [The "IzPack" Installer](https://christoph-jahn.com/the-izpack-installer/) - The IzPack installer comes under an Apache licence and offers cross-platform support - [JXPath Tutorial](https://christoph-jahn.com/jxpath-tutorial/) - A nice tutorial for Apache Commons JXPath - [Regular Expressions](https://christoph-jahn.com/regular-expressions/) - A great site about regular expressions - [Grand Cayman](https://christoph-jahn.com/grand-cayman/) - Pictures from Grand Cayman - [Java Decompiler project](https://christoph-jahn.com/java-decompiler-project/) - I hadn't looked into the topic of Java decompilers for quite a while and was interested to learn from a colleague about the Java Decompiler project. It comes with either an Eclipse plug-in or a stand-alone GUI that doesn't require installation. http://java.decompiler.free.fr/http://java.decompiler.free.fr/ - [Make Command for LaTeX](https://christoph-jahn.com/make-command-for-latex/) - The script latexmk for automated build of LaTeX documents - [Washington](https://christoph-jahn.com/washington-2/) - I did not only visit New York but also the Washington DC area. Here are the pictures ... - [New York](https://christoph-jahn.com/new-york/) - And here are the remaining pictures from the New York trip ... - [New York Waterfront](https://christoph-jahn.com/new-york-waterfront/) - Here are some more pictures from my recent trip to New York. This time it's everything related to the waterfront. That especially includes a trip with the Staten Island Ferry (for free!). And on the last picture you can see president Obama's car waiting for him ... - [Picasso Exhibition at the Met](https://christoph-jahn.com/picasso-exhibition-at-the-met/) - There is currently a great Picasso exhibition at the Met (Metropolitan Museum of Art) in New York. which shows hundreds of paintings, drawings etc. Apart from the sheer number, the really unique things is that one can grasp the vast variety of styles that Picasso employed through the different stages of his life. So whoever - [BibTeX Style natdin.bst for Fedora 12](https://christoph-jahn.com/bibtex-style-natdin-bst-for-fedora-12/) - How to set up the BibTex style natdin.bst for Fedora - [Use CollabNet Subversion with Regular Apache](https://christoph-jahn.com/use-collabnet-subversion-with-regular-apache/) - Use normal Apache for WebDAV access to Subversion repositories - [Mount Windows Share with Fedora 12](https://christoph-jahn.com/mount-windows-share-with-fedora-12/) - Use cifs and not smbfs as file system type - [Free book: The consolidated "Less known Solaris Features" tutorials](https://christoph-jahn.com/free-book-the-consolidated-less-known-solaris-features-tutorials/) - Great online book for Solaris - [Why Subversion's "svn:externals" is bad](https://christoph-jahn.com/why-subversions-svnexternals-is-bad/) - Subversion can create "symlinks" with the "svn:externals" property. This creates a lock-in and mixes version control and dependency management. - [Ant Filter to Include Files with Configurable Names](https://christoph-jahn.com/ant-filter-to-include-files-with-configurable-names/) - Allows to have statements like 'include "file_to_include.txt" ' - [Linux Network Mounts for a Laptop](https://christoph-jahn.com/linux-network-mounts-for-a-laptop/) - Script to support working with network mounts when working on a laptop without permanent server connection - [OpenSolaris Upgrade](https://christoph-jahn.com/opensolaris-upgrade/) - Upgrade of OpenSolaris to the latest development build and fix of permission for /dev/ptmx for shell access (error: PTY allocation request failed on channel 0) - [Git Links](https://christoph-jahn.com/git-links/) - Links to various Git resources - [I am still alive](https://christoph-jahn.com/i-am-still-alive/) - This is just to let you know that I am not completely gone yet. I am just extremely busy job-wise but will have time again to put something out at the end of the month. So stay tuned - [Using Git without Shell Access](https://christoph-jahn.com/using-git-without-a-shell/) - Gitolite is a re-write of gitosis with additional functionality - [Scripts for gitosis](https://christoph-jahn.com/scripts-for-gitosis/) - Wrapper scripts for comfortable work with gitosis - [Building a NAS with OpenSolaris and ZFS](https://christoph-jahn.com/building-a-nas-with-opensolaris-and-zfs/) - Why I built my own NAS instead of buying one - [Work Breakdown Structure](https://christoph-jahn.com/work-breakdown-structure/) - How to use a Work Breakdown Structure - [IBM DeveloperWorks "Inside and Outlook"](https://christoph-jahn.com/ibm-developerworks-inside-and-outlook/) - A series of articles on SOA, architecture, governance etc. - [Visiting London](https://christoph-jahn.com/visiting-london/) - A few pictures from a recent trip to London - [Day Trip to the River Rhine and Koblenz](https://christoph-jahn.com/day-trip-to-the-river-rhine-and-koblenz/) - Pictures from a day trip to the river Rhine (incl. the famous Loreley rock) and the city of Koblenz - [Michael T. Nygard: Release It! Design and Deploy Production-Ready Software](https://christoph-jahn.com/michael-t-nygard-release-it-design-and-deploy-production-ready-software/) - The book is organized in four general sections: Stability, capacity, general design issues and operations. For all of them a number of typical scenarios are described and general approaches discussed. - [David A. Fisher "An Emergent Perspective on Interoperation in Systems of Systems"](https://christoph-jahn.com/david-a-fisher-an-emergent-perspective-on-interoperation-in-systems-of-systems/) - When David A. Fisher wrote this paper in 2006, the hype around Web Services and SOA had just begun. The point that struck me most when reading the executive summary, was that Fisher does not limit his thoughts to technical systems. Instead he accepts the fact that the involved people are also an important part - [Business Activity Monitoring (BAM) and Related Areas](https://christoph-jahn.com/business-activity-monitoring-bam-and-related-areas/) - The relationship between monitoring, Business Activity Monitoring (BAM), Business Intelligence andreporting - [Asynchronous Communication](https://christoph-jahn.com/asynchronous-communication/) - The asynchronous communication pattern - [Is a SAN Really the Silver Bullet for Your Performance Requirements?](https://christoph-jahn.com/is-a-san-really-the-silver-bullet-for-your-performance-requirements/) - Why is a SAN probably a good choice if you need fast and how are local disks doing compared to it? - [Pecunia non olet (money does not smell)](https://christoph-jahn.com/pecunia-non-olet-money-does-not-smell/) - Background on Roman emperor\'s Vespasian famous statement - [Restaurant "Fish" in Prague](https://christoph-jahn.com/restaurant-fish-in-prague/) - During a recent trip to Prague a colleague and I ended up in the restaurant Fish next to the Vltava river and quite near to the famous Charles Bridge. This was pure coincidence, since we had decided to just enter the next restaurant that would be "somewhat acceptable". (It had been a very hot day - [The Marshall Goldsmith Library](https://christoph-jahn.com/the-marshall-goldsmith-library/) - When you look for a great selection of free material around management you can hardly avoid this website. It contains a lot of material from Marshall Goldsmith and you should also check out the blog. The latter contains a lot of posts one could call philosophical and it is one of the best blogs I - [Manager Tools: "Help With Recent Market Turmoil"](https://christoph-jahn.com/manger-tools-help-with-recent-market-turmoil/) - Free access to premium content for dealing with layoffs - [My Favourite Game on the C-64](https://christoph-jahn.com/my-favourite-game-on-the-c-64/) - Many questions in life are not so easy to answer. However, when it comes to what my favourite game was on the C-64, it is different. There is only one answer possible and those who know me long enough know it: The Great Giana Sisters You can probably find the game these days on the - [Colorado](https://christoph-jahn.com/colorado/) - I just returned from a two weeks' business trip to Colorado. Thanks to Labor Day and a free weekend I could do some sightseeing and take quite a few nice pictures. In particular I visited Boulder, Breckenridge, "The Garden of the Gods" and Pikes Peak. - [Nicolai M. Josuttis "SOA in Practice"](https://christoph-jahn.com/nicolai-m-josuttis-soa-in-practice/) - [amtap amazon:asin=0596529554] A colleague recommended this book (link to amazon.com and amazon.de) to me and I was not disappointed. On the contrary, this was one of the most interesting IT books I have come across so far. The author is pretty well known in the SOA space and a regular speaker on conferences. He has - [What is an Enterprise Service Bus (ESB)?](https://christoph-jahn.com/what-is-an-enterprise-service-bus-esb/) - If you all too often hear the term "Enterprise Service Bus" or ESB (we all love those acronyms, right?) but never really knew what it's all about, you should check out this recording by Marc Richards. He gives a great overview what an ESB is at its core. Rather long but worth every minute! What - [A Comparison of the Top Four Enterprise Architecture Methodologies](https://christoph-jahn.com/a-comparison-of-the-top-four-enterprise-architecture-methodologies/) - Microsoft has published a comparison of the four most well-known frameworks / methodologies / processes that aim to help you with Enterprise Architecture. These are The Zachman Framework (PDF) for Enterprise Architectures The Open Group Architecture Framework (TOGAF) The Federal Enterprise Architecture The Gartner Methodology There is a whole bunch of other interesting articles on - [Washington](https://christoph-jahn.com/washington/) - In early October 2007 I spent a week in the DC area and was lucky enough to have a Sunday for sightseeing. The weather was gorgeous and I had a really great day (almost with a sunburn). First I went to the Arlington National Cemetery, which is definitely worth a visit. I was rather surprised - [Meeting Minutes](https://christoph-jahn.com/meeting-minutes/) - Meeting minutes sometimes seem to have become a "lost art". I mean, they are not rocket science, rather a bit dumb. Let me therefore share with you the in my opinion essential points. If you want to follow only one advice, here it is: Write in a way that allows someone who has not attended - [The Danger of BCC](https://christoph-jahn.com/the-danger-of-bcc/) - The title is a bit dramatic, admittedly, but there are some pitfalls associated with using the BCC feature of email programs. More specifically the combination of BCC and the "Reply to All" functionality can put you in a pretty bad position. And the reason is quite simple: You put people on the BCC list because - [The Seat Guru](https://christoph-jahn.com/the-seat-guru/) - Yes, there is a website called SeatGuru.com that tells you everything about the layout of airplanes. This is pretty nice when you book a flight long in advance and can get a seat reserved. It has all major airlines and for each of them all the different planes. Information includes things like a rating (seat - [What is Time Boxing?](https://christoph-jahn.com/what-is-time-boxing/) - This is a term from the (software) project management area. It basically means that deliverables are not fix in terms of content, which is the "normal" approach. The latter means that something has been agreed-upon as scope and will be delivered when that has scope has been implemented. Hopefully the planned deadline will be met, - [Want to Become an Innovator?](https://christoph-jahn.com/want-to-become-an-innovator/) - The Smithsonian National Musuem of American History has set up a special website dedicated to innovation. What I found particularly interesting are the stories of some {en:inventors} you probably don't know (although you certainly know what they invented, e.g. {en:Kevlar}). Please look here - ["The Rough Guide to Scottish Music"](https://christoph-jahn.com/the-rough-guide-to-scottish-music/) - A great compilation from Scottish artists - ["Manager Tools" Podcast](https://christoph-jahn.com/manager-tools-podcast/) - My favourite podcast is Manager Tools, that offers an incredible amount of tips and useful background information on many aspects of management. A friend told me about it some 2 years ago and since then I'm hooked. The really cool thing is that all shows have actionable content. They typically last about 30-40 minutes, so - [How to Choose a Password](https://christoph-jahn.com/how-to-choose-a-password/) - With more and more user accounts and single-sign-on still far away from becoming a commodity, the careful choice of passwords is more important than ever. This is not complicated, just follow a few simple points. - [Peter F. Drucker "The Effective Executive"](https://christoph-jahn.com/peter-f-drucker-the-effective-executive/) - [amtap amazon:asin=0060833459] For those of you who have never heard of Peter Drucker, be assured that he is one of the most prominent authors of management literature. Some even say that he invented management as a discipline. In any case he published a number of books and papers, many of which were groundbreaking. This book - [Java Performance Monitoring](https://christoph-jahn.com/java-performance-monitoring/) - Nicolas Whitehead has written a very nice series of articles on Java run-time monitoring. They are published at the IBM Developer Works site and you should definitely check them out. * Part 1, Run-time performance and availability monitoring for Java systems * Part 2, Post-compilation instrumentation and performance monitoring * Part 3, Monitoring performance and - [Kuala Lumpur](https://christoph-jahn.com/kuala-lumpur/) - In January 2008 I was in Kuala Lumpur (my first trip to Asia) and it was a great experience. For details (including pictures), please [cref 107 click here]. - ["Getting Things Done"](https://christoph-jahn.com/getting-things-done/) - Today I would like to tell you about a very effective way to organize your work. It is the "Getting Things Done" approach from David Allen. Some people argue that due to its simplicity it does not deserve to be called methodology. In my view this is a completely academic argument. On the contrary I - [Gause/Weinberg: "Exploring Requirements. Quality Before Design"](https://christoph-jahn.com/gauseweinberg-exploring-requirements-quality-before-design/) - [amtap amazon:asin=0932633137] We probably all know that gathering requirements is not as easy as it may sound. And it's also pretty clear that the issue is not primarily around technical things but communication and people. I can recommended this book (link to amazon.com and amazon.de) to everyone who is interested in or works in that - [LDAP overview](https://christoph-jahn.com/ldap-overview/) - You can find a good overview about LDAP (including links to more detailed information) on the Apache Directory Server pages Please also check this article on the O'Reilly network. It has an interesting discussion at the end, so make sure to also read page 2 - [Convert Address Data from Palm to LDAP](https://christoph-jahn.com/convert-address-data-from-palm-to-ldap/) - When I was looking around for a tool to synchronize my Palm handheld with LDAP, I came across the Perl program "pdb2ldif". I liked the general idea of it and decided to add some additional features. The result is version 1.2 which you can download from this page. ## Pages - [About](https://christoph-jahn.com/about/) - Hello and welcome to my website! I am your host, Christoph Jahn. My professional background is on integration topics (formerly called EAI - Enterprise Application Integration). In addition to the conceptual side, I have been working with webMethods Integration Server since early 2002, especially on topics like DevOps, Configuration Management (I am the author of - [Cookie Policy (EU)](https://christoph-jahn.com/cookie-policy-eu/) - [Contact](https://christoph-jahn.com/contact/) - Please send an email to webmaster@christoph-jahn.com - [Privacy Policy](https://christoph-jahn.com/privacy-policy/) - English version below. Datenschutzerklärung Diese Datenschutzerklärung klärt Sie über die Art, den Umfang und Zweck der Verarbeitung von personenbezogenen Daten (nachfolgend kurz „Daten“) innerhalb unseres Onlineangebotes und der mit ihm verbundenen Webseiten, Funktionen und Inhalte sowie externen Onlinepräsenzen, wie z.B. unser Social Media Profile auf (nachfolgend gemeinsam bezeichnet als „Onlineangebot“). Im Hinblick auf die - [Technical](https://christoph-jahn.com/technical/) - Placeholder page, please check the menu for available articles. - [Travel](https://christoph-jahn.com/travel/) - Top page, please check the list on the right side Since the creation of this page I have changed the way I organize things here a bit. New post will not appear here anymore, but be accessible using the Travel category from the main page. - [Database](https://christoph-jahn.com/tools/database/) - DBVisualizer http://www.minq.se/products/dbvis/ Can handle almost any database that comes with a JDBC driver (this includes access to an AS/400) SQL Tutorial http://www.mathcs.emory.edu/~cheung/Courses/377/Others/tutorial.pdf Solves 99% of my SQL questions - [River Rhine and Koblenz](https://christoph-jahn.com/travel/river-rhine-and-koblenz/) - Just shortly before Christmas I spent a day visiting the River {en:Rhine} that is pretty close to my place of residence. Nevertheless I had not been there before (shame on me). The wheather was not exactly great but on the other hand there were no tourists. I ended up in {en:Koblenz} at the famous {en:Deutsches - [Boscastle](https://christoph-jahn.com/travel/boscastle/) - I have visited the beautiful village of Boscastle a couple of times. It is located in {en:Cornwall} in the South-West of England. You can do a lot of sightseeing in the area and the scenery is quite stunning. The village is located near {en:Tintagel} castle that is attributed to {en:King Arthur}. Also, a few of - [Kuala Lumpur](https://christoph-jahn.com/travel/kuala-lumpur/) - In January 2008 a colleague and I went to Kuala Lumpur (Malaysia) to give a training for colleagues from the Asia-Pacific region. The flight was a bit long (11 hours Frankfurt - KL and 13 hours back), but thanks to Seatguru.com I had a good seat. We arrived at Kuala Lumpur Internation Airport at 7:30 - [Colorado](https://christoph-jahn.com/travel/colorado_2008/) - In September 2008 I spent two weeks in Colorado. Here are some pictures from that trip - [Washington](https://christoph-jahn.com/travel/washington/) - In early October 2007 I spent a week in the DC area and was lucky enough to have a Sunday for sightseeing. The weather was gorgeous and I had a really great day (almost with a sunburn). First I went to the Arlington National Cemetery, which is definitely worth a visit. I was rather surprised - [Convert Address Data from Palm to LDAP](https://christoph-jahn.com/technical/convert-address-data-from-palm-to-ldap/) - When I was looking around for a tool to synchronize my Palm handheld with LDAP, I came across the Perl program "pdb2ldif" (original version can be found here). I liked the general idea of it and decided to add some additional features. The result is version 1.2 which you can download from this page. It - [How to choose a good password](https://christoph-jahn.com/technical/how-to-choose-a-good-password/) - What you must not chose as a password Probably the most important thing is the decision what should be avoided. This is everything you might have a personal "relationship" with. So un particular you must not chose names of wife, friends, children, pets etc. names of characters from books, plays, movies etc. birthdays of yourself, - [Tools](https://christoph-jahn.com/tools/) - Please check out the detail pages for various tools I have found to be useful ## Categories - [Uncategorized](https://christoph-jahn.com/category/uncategorized/) - [Review](https://christoph-jahn.com/category/review/) - Review - [Technical Stuff](https://christoph-jahn.com/category/technical-stuff/) - [BPM and SOA](https://christoph-jahn.com/category/bpm-soa/) - [Management](https://christoph-jahn.com/category/management/) - [Travel](https://christoph-jahn.com/category/travel/) - [Architecture](https://christoph-jahn.com/category/architecture/) - [Smalltalk](https://christoph-jahn.com/category/smalltalk/) - [Tools](https://christoph-jahn.com/category/tools/) - [ALM](https://christoph-jahn.com/category/alm/) - [IoT](https://christoph-jahn.com/category/iot/) - [DevOps](https://christoph-jahn.com/category/devops/) - [Configuration Management](https://christoph-jahn.com/category/cfg-mgmt/) - [Career](https://christoph-jahn.com/category/career/) - [Video](https://christoph-jahn.com/category/video/) - [Communication](https://christoph-jahn.com/category/communication/) - [Integration](https://christoph-jahn.com/category/integration/) - [Corona Virus](https://christoph-jahn.com/category/corona-virus/) - [Photography](https://christoph-jahn.com/category/photography/) ## Tags - [Book](https://christoph-jahn.com/tag/book/) - [Podcast](https://christoph-jahn.com/tag/podcast/) - [LDAP](https://christoph-jahn.com/tag/ldap/) - [Directory](https://christoph-jahn.com/tag/directory/) - [Palm Pilot](https://christoph-jahn.com/tag/palm-pilot/) - [Perl](https://christoph-jahn.com/tag/perl/) - [Password](https://christoph-jahn.com/tag/password/) - [Security](https://christoph-jahn.com/tag/security/) - [BPM](https://christoph-jahn.com/tag/bpm/) - [Web Service](https://christoph-jahn.com/tag/web-service/) - [Pattern](https://christoph-jahn.com/tag/pattern/) - [Pictures](https://christoph-jahn.com/tag/pictures/) - [Software](https://christoph-jahn.com/tag/software/) - [Communication](https://christoph-jahn.com/tag/communication/) - [Requirements](https://christoph-jahn.com/tag/requirements/) - [ESB](https://christoph-jahn.com/tag/esb/) - [Prague](https://christoph-jahn.com/tag/prague/) - [Restaurant](https://christoph-jahn.com/tag/restaurant/) - [Agile](https://christoph-jahn.com/tag/agile/) - [Commodore](https://christoph-jahn.com/tag/commodore/) - [C-64](https://christoph-jahn.com/tag/c-64/) - [EA](https://christoph-jahn.com/tag/ea/) - [TOGAF](https://christoph-jahn.com/tag/togaf/) - [Zachman](https://christoph-jahn.com/tag/zachman/) - [Gartner](https://christoph-jahn.com/tag/gartner/) - [Java](https://christoph-jahn.com/tag/java/) - [Performance](https://christoph-jahn.com/tag/performance/) - [Meeting](https://christoph-jahn.com/tag/meeting/) - [Music](https://christoph-jahn.com/tag/music/) - [Scotland](https://christoph-jahn.com/tag/scotland/) - [NAS](https://christoph-jahn.com/tag/nas/) - [Washington](https://christoph-jahn.com/tag/washington/) - [Career](https://christoph-jahn.com/tag/career/) - [Innovation](https://christoph-jahn.com/tag/innovation/) - [Email](https://christoph-jahn.com/tag/email/) - [Business Analyst](https://christoph-jahn.com/tag/business-analyst/) - [Enterprise Architect](https://christoph-jahn.com/tag/enterprise-architect/) - [Colorado](https://christoph-jahn.com/tag/colorado/) - [BAM](https://christoph-jahn.com/tag/bam/) - [BI](https://christoph-jahn.com/tag/bi/) - [Reporting](https://christoph-jahn.com/tag/reporting/) - [JMS](https://christoph-jahn.com/tag/jms/) - [MOM](https://christoph-jahn.com/tag/mom/) - [Messaging](https://christoph-jahn.com/tag/messaging/) - [asynchronous](https://christoph-jahn.com/tag/asynchronous/) - [SOA](https://christoph-jahn.com/tag/soa/) - [Message Broker](https://christoph-jahn.com/tag/message-broker/) - [Coaching](https://christoph-jahn.com/tag/coaching/) - [Pikes Peak](https://christoph-jahn.com/tag/pikes-peak/) - [Breckenridge](https://christoph-jahn.com/tag/breckenridge/) - [Manitou Springs](https://christoph-jahn.com/tag/manitou-springs/) - [Boulder](https://christoph-jahn.com/tag/boulder/) - [SAN](https://christoph-jahn.com/tag/san/) - [Hard Disk](https://christoph-jahn.com/tag/hard-disk/) - [Storage Area Network](https://christoph-jahn.com/tag/storage-area-network/) - [Loose Coupling](https://christoph-jahn.com/tag/loose-coupling/) - [Layoff](https://christoph-jahn.com/tag/layoff/) - [Citation](https://christoph-jahn.com/tag/citation/) - [Boscastle](https://christoph-jahn.com/tag/boscastle/) - [Cornwall](https://christoph-jahn.com/tag/cornwall/) - [UK](https://christoph-jahn.com/tag/uk/) - [England](https://christoph-jahn.com/tag/england/) - [complex systems](https://christoph-jahn.com/tag/complex-systems/) - [Lifecycle Management](https://christoph-jahn.com/tag/lifecycle-management/) - [Design-Time Governance](https://christoph-jahn.com/tag/design-time-governance/) - [Operations](https://christoph-jahn.com/tag/operations/) - [Large-Scale Systems](https://christoph-jahn.com/tag/large-scale-systems/) - [River Rhine](https://christoph-jahn.com/tag/river-rhine/) - [Loreley](https://christoph-jahn.com/tag/loreley/) - [Koblenz](https://christoph-jahn.com/tag/koblenz/) - [Deutsches Eck](https://christoph-jahn.com/tag/deutsches-eck/) - [Rhein](https://christoph-jahn.com/tag/rhein/) - [Rhine](https://christoph-jahn.com/tag/rhine/) - [London](https://christoph-jahn.com/tag/london/) - [Governance](https://christoph-jahn.com/tag/governance/) - [Linus Torvalds git](https://christoph-jahn.com/tag/linus-torvalds-git/) - [presentation](https://christoph-jahn.com/tag/presentation/) - [ppt](https://christoph-jahn.com/tag/ppt/) - [power point](https://christoph-jahn.com/tag/power-point/) - [slide](https://christoph-jahn.com/tag/slide/) - [speech](https://christoph-jahn.com/tag/speech/) - [Work Breakdown Structure](https://christoph-jahn.com/tag/work-breakdown-structure/) - [WBS](https://christoph-jahn.com/tag/wbs/) - [Project Management](https://christoph-jahn.com/tag/project-management/) - [Project](https://christoph-jahn.com/tag/project/) - [gitosis](https://christoph-jahn.com/tag/gitosis/) - [Git](https://christoph-jahn.com/tag/git/) - [VCS](https://christoph-jahn.com/tag/vcs/) - [Subversion](https://christoph-jahn.com/tag/subversion/) - [Dependency Management](https://christoph-jahn.com/tag/dependency-management/) - [Maven](https://christoph-jahn.com/tag/maven/) - [Ivy](https://christoph-jahn.com/tag/ivy/) - [ZFS](https://christoph-jahn.com/tag/zfs/) - [OpenSolaris](https://christoph-jahn.com/tag/opensolaris/) - [Fedora](https://christoph-jahn.com/tag/fedora/) - [Linux](https://christoph-jahn.com/tag/linux/) - [CIFS](https://christoph-jahn.com/tag/cifs/) - [SMB](https://christoph-jahn.com/tag/smb/) - [Samba](https://christoph-jahn.com/tag/samba/) - [gitolite](https://christoph-jahn.com/tag/gitolite/) - [Links](https://christoph-jahn.com/tag/links/) - [mount](https://christoph-jahn.com/tag/mount/) - [Monitoring](https://christoph-jahn.com/tag/monitoring/) - [Logging](https://christoph-jahn.com/tag/logging/) - [Ant](https://christoph-jahn.com/tag/ant/) - [Anti-pattern](https://christoph-jahn.com/tag/anti-pattern/) - [Oracle](https://christoph-jahn.com/tag/oracle/) - [Unix](https://christoph-jahn.com/tag/unix/) - [RedHat](https://christoph-jahn.com/tag/redhat/) - [database](https://christoph-jahn.com/tag/database/) - [DB](https://christoph-jahn.com/tag/db/) - [10g](https://christoph-jahn.com/tag/10g/) - [11g](https://christoph-jahn.com/tag/11g/) - [Apache](https://christoph-jahn.com/tag/apache/) - [CollabNet](https://christoph-jahn.com/tag/collabnet/) - [LD_LIBRARY_PATH](https://christoph-jahn.com/tag/ld_library_path/) - [CentOS](https://christoph-jahn.com/tag/centos/) - [RHEL](https://christoph-jahn.com/tag/rhel/) - [Solaris](https://christoph-jahn.com/tag/solaris/) - [USVN](https://christoph-jahn.com/tag/usvn/) - [SVN](https://christoph-jahn.com/tag/svn/) - [Share](https://christoph-jahn.com/tag/share/) - [Windows](https://christoph-jahn.com/tag/windows/) - [smbfs](https://christoph-jahn.com/tag/smbfs/) - [mount.smbfs](https://christoph-jahn.com/tag/mount-smbfs/) - [mount.cifs](https://christoph-jahn.com/tag/mount-cifs/) - [LaTeX](https://christoph-jahn.com/tag/latex/) - [BibTeX](https://christoph-jahn.com/tag/bibtex/) - [natdin](https://christoph-jahn.com/tag/natdin/) - [natdin.bst](https://christoph-jahn.com/tag/natdin-bst/) - [Picasso](https://christoph-jahn.com/tag/picasso/) - [Met](https://christoph-jahn.com/tag/met/) - [Metropolitan Museum of Art](https://christoph-jahn.com/tag/metropolitan-museum-of-art/) - [New York](https://christoph-jahn.com/tag/new-york/) - [TeX](https://christoph-jahn.com/tag/tex/) - [makeindex](https://christoph-jahn.com/tag/makeindex/) - [IzPack](https://christoph-jahn.com/tag/izpack/) - [installer](https://christoph-jahn.com/tag/installer/) - [Decompiler](https://christoph-jahn.com/tag/decompiler/) - [Grand Cayman](https://christoph-jahn.com/tag/grand-cayman/) - [XML](https://christoph-jahn.com/tag/xml/) - [XML Schema](https://christoph-jahn.com/tag/xml-schema/) - [regex](https://christoph-jahn.com/tag/regex/) - [Regular Expression](https://christoph-jahn.com/tag/regular-expression/) - [JXPath](https://christoph-jahn.com/tag/jxpath/) - [Apache Commons](https://christoph-jahn.com/tag/apache-commons/) - [XPath](https://christoph-jahn.com/tag/xpath/) - [Tutorial](https://christoph-jahn.com/tag/tutorial/) - [Regensburg](https://christoph-jahn.com/tag/regensburg/) - [Bavaria](https://christoph-jahn.com/tag/bavaria/) - [ESXi](https://christoph-jahn.com/tag/esxi/) - [VMware](https://christoph-jahn.com/tag/vmware/) - [64 bit](https://christoph-jahn.com/tag/64-bit/) - [x86-64](https://christoph-jahn.com/tag/x86-64/) - [iSCSI](https://christoph-jahn.com/tag/iscsi/) - [LVM](https://christoph-jahn.com/tag/lvm/) - [iSCSI initiator](https://christoph-jahn.com/tag/iscsi-initiator/) - [Red Hat](https://christoph-jahn.com/tag/red-hat/) - [FAST 07](https://christoph-jahn.com/tag/fast-07/) - [USENIX](https://christoph-jahn.com/tag/usenix/) - [disk failure](https://christoph-jahn.com/tag/disk-failure/) - [SAS vs. SATA](https://christoph-jahn.com/tag/sas-vs-sata/) - [reliability](https://christoph-jahn.com/tag/reliability/) - [storage](https://christoph-jahn.com/tag/storage/) - [Oracle 11g R2](https://christoph-jahn.com/tag/oracle-11g-r2/) - [DBCA](https://christoph-jahn.com/tag/dbca/) - [32 bit](https://christoph-jahn.com/tag/32-bit/) - [JVM](https://christoph-jahn.com/tag/jvm/) - [crash](https://christoph-jahn.com/tag/crash/) - [SATA](https://christoph-jahn.com/tag/sata/) - [Dawicontrol DC-310e](https://christoph-jahn.com/tag/dawicontrol-dc-310e/) - [SIL 3132](https://christoph-jahn.com/tag/sil-3132/) - [RAID](https://christoph-jahn.com/tag/raid/) - [Nexenta](https://christoph-jahn.com/tag/nexenta/) - [Screenshot](https://christoph-jahn.com/tag/screenshot/) - [waterfall](https://christoph-jahn.com/tag/waterfall/) - [SCRUM](https://christoph-jahn.com/tag/scrum/) - [XP](https://christoph-jahn.com/tag/xp/) - [JUnit](https://christoph-jahn.com/tag/junit/) - [Hudson](https://christoph-jahn.com/tag/hudson/) - [methodology](https://christoph-jahn.com/tag/methodology/) - [Hamburg](https://christoph-jahn.com/tag/hamburg/) - [Middleware](https://christoph-jahn.com/tag/middleware/) - [Integration](https://christoph-jahn.com/tag/integration/) - [ERP](https://christoph-jahn.com/tag/erp/) - [Repository](https://christoph-jahn.com/tag/repository/) - [TFS](https://christoph-jahn.com/tag/tfs/) - [BSC](https://christoph-jahn.com/tag/bsc/) - [Balanced Scorecard](https://christoph-jahn.com/tag/balanced-scorecard/) - [BPR](https://christoph-jahn.com/tag/bpr/) - [Business Process Re-Engineering](https://christoph-jahn.com/tag/business-process-re-engineering/) - [Activity-based Costing](https://christoph-jahn.com/tag/activity-based-costing/) - [Scientific Management](https://christoph-jahn.com/tag/scientific-management/) - [Business Process Management](https://christoph-jahn.com/tag/business-process-management/) - [Process](https://christoph-jahn.com/tag/process/) - [Eclipse](https://christoph-jahn.com/tag/eclipse/) - [XMPP](https://christoph-jahn.com/tag/xmpp/) - [Education](https://christoph-jahn.com/tag/education/) - [Sir Ken Robinson](https://christoph-jahn.com/tag/sir-ken-robinson/) - [YouTube](https://christoph-jahn.com/tag/youtube/) - [distributed development](https://christoph-jahn.com/tag/distributed-development/) - [coordination](https://christoph-jahn.com/tag/coordination/) - [pessimistic locking](https://christoph-jahn.com/tag/pessimistic-locking/) - [Eclipse Communication Framework](https://christoph-jahn.com/tag/eclipse-communication-framework/) - [ECF](https://christoph-jahn.com/tag/ecf/) - [Emacs](https://christoph-jahn.com/tag/emacs/) - [Windows 7](https://christoph-jahn.com/tag/windows-7/) - [hMailServer](https://christoph-jahn.com/tag/hmailserver/) - [COM](https://christoph-jahn.com/tag/com/) - [log4j](https://christoph-jahn.com/tag/log4j/) - [symlink](https://christoph-jahn.com/tag/symlink/) - [mklink](https://christoph-jahn.com/tag/mklink/) - [WebDAV](https://christoph-jahn.com/tag/webdav/) - [Unattended installation](https://christoph-jahn.com/tag/unattended-installation/) - [JMeter](https://christoph-jahn.com/tag/jmeter/) - [Startup](https://christoph-jahn.com/tag/startup/) - [Case Study](https://christoph-jahn.com/tag/case-study/) - [Mac](https://christoph-jahn.com/tag/mac/) - [Raspberry Pi](https://christoph-jahn.com/tag/raspberry-pi/) - [Networking](https://christoph-jahn.com/tag/networking/) - [SSH](https://christoph-jahn.com/tag/ssh/) - [NSIS](https://christoph-jahn.com/tag/nsis/) - [Nullsoft Installer](https://christoph-jahn.com/tag/nullsoft-installer/) - [Fusion](https://christoph-jahn.com/tag/fusion/) - [Mavericks](https://christoph-jahn.com/tag/mavericks/) - [Configuration Management](https://christoph-jahn.com/tag/configuration-management/) - [CI](https://christoph-jahn.com/tag/ci/) - [Continuous Delivery](https://christoph-jahn.com/tag/continuous-delivery/) - [Review](https://christoph-jahn.com/tag/review/) - [BPM and SOA](https://christoph-jahn.com/tag/bpm-soa/) - [Management](https://christoph-jahn.com/tag/management/) - [Travel](https://christoph-jahn.com/tag/travel/) - [Architecture](https://christoph-jahn.com/tag/architecture/) - [Tools](https://christoph-jahn.com/tag/tools/) - [ALM](https://christoph-jahn.com/tag/alm/) - [Make](https://christoph-jahn.com/tag/make/) - [XFCE](https://christoph-jahn.com/tag/xfce/) - [Ubuntu](https://christoph-jahn.com/tag/ubuntu/) - [Xubuntu](https://christoph-jahn.com/tag/xubuntu/) - [MQTT](https://christoph-jahn.com/tag/mqtt/) - [OpenHAB](https://christoph-jahn.com/tag/openhab/) - [ESP8266](https://christoph-jahn.com/tag/esp8266/) - [IoT](https://christoph-jahn.com/tag/iot/) - [Electronics](https://christoph-jahn.com/tag/electronics/) - [NodeMCU](https://christoph-jahn.com/tag/nodemcu/) - [Arduino](https://christoph-jahn.com/tag/arduino/) - [IMAP](https://christoph-jahn.com/tag/imap/) - [Thunderbird](https://christoph-jahn.com/tag/thunderbird/) - [ESP32](https://christoph-jahn.com/tag/esp32/) - [Ethernet](https://christoph-jahn.com/tag/ethernet/) - [SDLC](https://christoph-jahn.com/tag/sdlc/) - [Personality](https://christoph-jahn.com/tag/personality/) - [Leadership](https://christoph-jahn.com/tag/leadership/) - [HR](https://christoph-jahn.com/tag/hr/) - [Strategy](https://christoph-jahn.com/tag/strategy/) - [Framework](https://christoph-jahn.com/tag/framework/) - [FreeNAS](https://christoph-jahn.com/tag/freenas/) - [FreeBSD](https://christoph-jahn.com/tag/freebsd/) - [HP](https://christoph-jahn.com/tag/hp/) - [DevOps](https://christoph-jahn.com/tag/devops/) - [Staging](https://christoph-jahn.com/tag/staging/) - [WxConfig](https://christoph-jahn.com/tag/wxconfig/) - [ACID](https://christoph-jahn.com/tag/acid/) - [Synchronization](https://christoph-jahn.com/tag/synchronization/) - [Transaction](https://christoph-jahn.com/tag/transaction/) - [CRDT](https://christoph-jahn.com/tag/crdt/) - [DRY](https://christoph-jahn.com/tag/dry/) - [Chef](https://christoph-jahn.com/tag/chef/) - [Puppet](https://christoph-jahn.com/tag/puppet/) - [Ansible](https://christoph-jahn.com/tag/ansible/) - [EDA](https://christoph-jahn.com/tag/eda/) - [CQRS](https://christoph-jahn.com/tag/cqrs/) - [UML](https://christoph-jahn.com/tag/uml/) - [Code](https://christoph-jahn.com/tag/code/) - [goto](https://christoph-jahn.com/tag/goto/) - [Uncle Bob](https://christoph-jahn.com/tag/uncle-bob/) - [Excel](https://christoph-jahn.com/tag/excel/) - [BRMS](https://christoph-jahn.com/tag/brms/) - [Business Rules Management System](https://christoph-jahn.com/tag/business-rules-management-system/) - [Mouse](https://christoph-jahn.com/tag/mouse/) - [OS X](https://christoph-jahn.com/tag/os-x/) - [Right-Click](https://christoph-jahn.com/tag/right-click/) - [Theory of Constraints](https://christoph-jahn.com/tag/theory-of-constraints/) - [TOC](https://christoph-jahn.com/tag/toc/) - [Intent-based Leadership](https://christoph-jahn.com/tag/intent-based-leadership/) - [webMethods](https://christoph-jahn.com/tag/webmethods/) - [ABE](https://christoph-jahn.com/tag/abe/) - [Integration Server](https://christoph-jahn.com/tag/integration-server/) - [Deployer](https://christoph-jahn.com/tag/deployer/) - [Continuous Deployment](https://christoph-jahn.com/tag/continuous-deployment/) - [Continuous Integration](https://christoph-jahn.com/tag/continuous-integration/) - [Refactoring](https://christoph-jahn.com/tag/refactoring/) - [Offshore](https://christoph-jahn.com/tag/offshore/) - [Consulting](https://christoph-jahn.com/tag/consulting/) - [Dueck](https://christoph-jahn.com/tag/dueck/) - [WiFi](https://christoph-jahn.com/tag/wifi/) - [Network](https://christoph-jahn.com/tag/network/) - [Concurrency](https://christoph-jahn.com/tag/concurrency/) - [Software Engineering](https://christoph-jahn.com/tag/software-engineering/) - [vSphere](https://christoph-jahn.com/tag/vsphere/) - [NIC](https://christoph-jahn.com/tag/nic/) - [Docker](https://christoph-jahn.com/tag/docker/) - [Unifi](https://christoph-jahn.com/tag/unifi/) - [Ubiquity Networks](https://christoph-jahn.com/tag/ubiquity-networks/) - [Debian](https://christoph-jahn.com/tag/debian/) - [SOX](https://christoph-jahn.com/tag/sox/) - [GRC](https://christoph-jahn.com/tag/grc/) - [Micro Services](https://christoph-jahn.com/tag/micro-services/) - [Cluster](https://christoph-jahn.com/tag/cluster/) - [Kubernetes](https://christoph-jahn.com/tag/kubernetes/) - [TDD](https://christoph-jahn.com/tag/tdd/) - [VS Code](https://christoph-jahn.com/tag/vs-code/) - [bash](https://christoph-jahn.com/tag/bash/) - [macOS](https://christoph-jahn.com/tag/macos/) - [BSD](https://christoph-jahn.com/tag/bsd/) - [Shell](https://christoph-jahn.com/tag/shell/) - [Pi-hole](https://christoph-jahn.com/tag/pi-hole/) - [DNS](https://christoph-jahn.com/tag/dns/) - [Complexity](https://christoph-jahn.com/tag/complexity/) - [Technical Debt](https://christoph-jahn.com/tag/technical-debt/) - [pfSense](https://christoph-jahn.com/tag/pfsense/) - [Writing](https://christoph-jahn.com/tag/writing/) - [VLAN](https://christoph-jahn.com/tag/vlan/) - [Clean Code](https://christoph-jahn.com/tag/clean-code/) - [Apple](https://christoph-jahn.com/tag/apple/) - [Keyboard](https://christoph-jahn.com/tag/keyboard/) - [API](https://christoph-jahn.com/tag/api/) - [Protocol](https://christoph-jahn.com/tag/protocol/) - [Documentation](https://christoph-jahn.com/tag/documentation/) - [Infrastructure as Code](https://christoph-jahn.com/tag/infrastructure-as-code/) - [UUID](https://christoph-jahn.com/tag/uuid/) - [RDBMS](https://christoph-jahn.com/tag/rdbms/) - [Data](https://christoph-jahn.com/tag/data/) - [jQuery](https://christoph-jahn.com/tag/jquery/) - [JavaScript](https://christoph-jahn.com/tag/javascript/) - [Web](https://christoph-jahn.com/tag/web/) - [Team](https://christoph-jahn.com/tag/team/) - [Windows 10](https://christoph-jahn.com/tag/windows-10/) - [Boot](https://christoph-jahn.com/tag/boot/) - [MBR](https://christoph-jahn.com/tag/mbr/) - [VM](https://christoph-jahn.com/tag/vm/) - [Defender ATP](https://christoph-jahn.com/tag/defender-atp/) - [Microsoft](https://christoph-jahn.com/tag/microsoft/) - [jail](https://christoph-jahn.com/tag/jail/) - [Syncthing](https://christoph-jahn.com/tag/syncthing/) - [Replication](https://christoph-jahn.com/tag/replication/) - [Backup](https://christoph-jahn.com/tag/backup/) - [Restore](https://christoph-jahn.com/tag/restore/) - [Synology](https://christoph-jahn.com/tag/synology/) - [TrueNAS](https://christoph-jahn.com/tag/truenas/) - [Programming](https://christoph-jahn.com/tag/programming/) - [Language](https://christoph-jahn.com/tag/language/) - [K8S](https://christoph-jahn.com/tag/k8s/) - [Camera](https://christoph-jahn.com/tag/camera/) - [Memristor](https://christoph-jahn.com/tag/memristor/) - [MySQL](https://christoph-jahn.com/tag/mysql/) - [CI/CD](https://christoph-jahn.com/tag/ci-cd/) - [Trunk-based Development](https://christoph-jahn.com/tag/trunk-based-development/) - [Microservices](https://christoph-jahn.com/tag/microservices/) - [Bounded Context](https://christoph-jahn.com/tag/bounded-context/) - [DDD](https://christoph-jahn.com/tag/ddd/) - [Domain-Driven Design](https://christoph-jahn.com/tag/domain-driven-design/) - [Software Architecture](https://christoph-jahn.com/tag/software-architecture/) - [C4 Model](https://christoph-jahn.com/tag/c4-model/) - [Monolith](https://christoph-jahn.com/tag/monolith/) - [Brand](https://christoph-jahn.com/tag/brand/) - [Marketing](https://christoph-jahn.com/tag/marketing/) - [Event Sourcing](https://christoph-jahn.com/tag/event-sourcing/) - [SAGA](https://christoph-jahn.com/tag/saga/) - [JPA](https://christoph-jahn.com/tag/jpa/) - [JDBC](https://christoph-jahn.com/tag/jdbc/) - [DBMS](https://christoph-jahn.com/tag/dbms/) - [Hibernate](https://christoph-jahn.com/tag/hibernate/) - [ORM](https://christoph-jahn.com/tag/orm/) - [Mainboard](https://christoph-jahn.com/tag/mainboard/) - [Hardware](https://christoph-jahn.com/tag/hardware/) - [XCP-ng](https://christoph-jahn.com/tag/xcp-ng/) - [Virtualization](https://christoph-jahn.com/tag/virtualization/) - [Empowerment](https://christoph-jahn.com/tag/empowerment/)