NewsletterEdition 2New Code and Chaos Articles Experimenting with ESBuild and TypeScript https://codeandchaos.com/blog/2020-02-22-Experimenting-With-EsBuild…
BlogExperimenting with ESbuildI am collecting a couple of helper functions into a library @codeandchaos/utility-belt. It is at the moment a library for my personal use…
NewsletterEdition 1Edition 1 Welcome to the Code and Chaos Newsletter. On regular intervals I will be sharing site updates, as well as interesting articles…
BlogNotes on The Mythical Man MonthThe mythical man month is a collection of essays about software engineering. Some articles cover topics that have barely changed over the…
ExercisesJob Interview - React Coding ChallengeI successfully completed this job interview coding challenge. It’s going to be interesting to look at the questions and solutions. I will go…
ExercisesInteresting JavaScript Interview QuestionWhat is the output of following piece of code? The simple answer for this question is: However to get to this answer you have to…
ExercisesCodeWars - Catching Car Mileage NumbersProblem You need to identify “interesting” numbers. When the number is interesting return 2, if it is “near” an interesting number return…
DevelopmentHow many hours should I work (as a programmer)?Uncle Bob in his book “The clean coder” has a very clear answer to his question: ”You should plan on working 60 hours per week. The first 4…
EvergreenRecommended BooksPaul Arden - It’s not how good you are its how good you want to be It is a book about creativity, business, marketing and what you want out…
ExercisesCodeWars - Unlucky DaysProblem The question is basically count the number of instances of Friday the 13th in a given year. Original Problem: https://www.codewars…
EvergreenVisual Studio Code - SetupThis is my VSCode setup. I am working currently primarily with TypeScript and ReactJS. Last updated: May 2020 tl;dr Look and Feel Theme…
TypeScriptBetter Function Signatures with the Destructuring AssignmentWhen writing a function sometimes you cannot avoid passing multiple arguments into the function. Lets take a look what is the cleanest way…
TypeScriptCase Study - Add Function - Writing TestsAssuming we have a function . How can we ensure that the function is doing that what we expect it to do. Expected Result Tests The first and…
TypeScriptCase Study - Add Function in JS vs TSWe are going to take a look at how to implement the “add-numbers” function. The purpose of the “add”-function is to add two numbers, it…
TypeScriptHello World - A full TutorialWhen you start programming, probably one of the first things you will learn is how to output “Hello World!“. The program is simple to write…
TypeScriptVSCode TypeScript debuggingThe VS Code debugger is pretty awesome. You can learn more about it in the official guide. If you want to debug typescript it does not work…
EvergreenProgramming ResourcesNews / Updates It is difficult to keep up to date with all the rapid developments in the tech field. I recommend using an RSS Reader like…
VSCodeCode Metrics - A red flag for overly complex codeWhen you are writing code your main focus should be solving the problem at hand - creating code that works. However this is only a very…
TechTom Marrs - JSON at WorkThe book “JSON at Work” by Tom Marrs, it is a great introduction on how to create and use JSON. It covers topics on how to quickly set up a…
VSCodeSnapshots with PolacodePolacode makes beautiful images of your code. The snapshot will use your current vscode theme and fonts. You can get it from the VSCode…
TypeScriptSetting up TypeScript and JestWe will take a quick look at how to set up a project using TypeScript and Jest. By adding Jest to the project from the beginning this should…
DevelopmentWhat is good Code?One of the biggest questions in programming. Everybody has an subjective answer to the question, as everybody develops their own style of…
TypeScriptGetting started with MOBX 5 and TypeScript 3, React 16.6When looking around for example applications that use Mobx 5.x combined with Mobx-react 5.x and TypeScript 3.x I did not find any useful…
CodeSetting up a dev environment to learn TypeScriptTypeScript is basically JavaScript with types. When writing your code you must define the types of your variables and optionally the returns…
DevelopmentRanking Programming LanguagesA recent article on InfoWorld titled Breakthrough: Python reaches Tiobe index Top 3 - Yey Python - But wait, what is being ranked? The TIOBE…
BlogGayle McDowell - Cracking the Coding InterviewThe book “Cracking the Coding Interview” helps you to survive the famous ‘technical interview’. Major tech companies like Google, Amazon etc…
ExercisesCodeWars: Weekly Newsletter 028kyu - Logic Drills: Traffic light You need a function to handle each change from green, to yellow, to red, and then to green again…
ExercisesCodeWars: Weekly Newsletter8kyu - positiveSum The first question is to sum up all the positive integers in an array. Basically two things need to be done: Filter out…
JavaDealing with the new Java Release ScheduleOracle has just announced that the End of Support for Java 8 is going to be in January 2019. This, in turn, means that every business using…
CodeHTML: How to control the Form ‘autofill’-autocompetionImage Designed by Freepik The ‘autofill’ feature of browsers is a blessing and a curse. The feature enables the browser to reuse the data…
CodeMOBX to Redux-ToolkitEver since React Introduced Hooks it is more elegant to simply write functional components. Today I will transition my MOBX example Project…
CodeHow to publish on Github Pages with create-react-app and react-routerNow I will be assuming a couple of things: You have a GitHub account and you created a repository for your app. You created a react app…
ExercisesCodeWars: 6kyu – Counting BitsYou got numbers, you want to know how many bits are flipped to a 1 Source: https://www.codewars.com/kata/bit-counting/train/python Approach…
ExercisesCodeWars: 7kyu – The Highest Profit winsI am exercising to get back into Python. Even though the solution to this exercise is quite straightforward, you could tweak the code a…
ElementaryThings to do after installing Elementary OS 0.4.1 (Loki)When you start out with elementary OS there are a couple of useful things that you should do to have a better experience working with your…
ExercisesCodewars: Sum Of PairsGiven a list of integers and a single sum value, return the first two values (parse from the left please) in order of appearance that add up…
DevelopmentThe End of Life of Internet Explorer 11Let me tell you the story about a little browser. In the beginning, there was a love for Internet Explorer, a deep and passionate love for…
NPMNPM: windows-build-toolsnode-gyp is really useful and annoying. fails if Python 2.7 and a C# Compiler is missing. You could use to get and install the missing…
DevelopmentThe Joel Test - 12 Steps to better CodeIn essence, the test is a quick 12 yes/no Questions that allows you to quickly determine how good your development workflow really is…
CodePuppeteer.JS - Using Headless Chrome for Site CrawlingPuppeteerJS essentially allows you to automate Chrome. Headless Chrome allows you to run Chrome without actually rendering the webpage…
Web DevelopmentVSCode: Launch create-react-app and Chrome with launch.jsonDeveloping React (with create-react-app) and Visual Studio Code you usually press and then . The script from create-react-app then…
BlogDEV281x: Introduction to ReactJSI took a quick look at Microsoft Introduction to ReactJS, not to actually learn React, but to evaluate how good the materials are for a…
BlogedX - Microsoft DEV275x Writing Professional CodeThe course DEV275x Writing Professional Code is a very short introduction to best practices when it comes to writing code. As usual, this is…
NPMpackage.json: Updating Fixed Versions with npm-checkOne of the common problems when running a larger project is that you need to use fixed versions in your package.json file. But at the same…
ElementaryElementary: Changing the Layout of the Window ControlsWhile Elementary focuses a lot on UI and is beautiful to use. It is totally mind-boggling that they decided to remove the minimize button…
Disable the package-lock.json fileWith NPM 5, npm has started to create a “package-lock.json” file. It ensures that some dependency tree is identical on every developer’s…
TechNotes on Course: Microsoft - Advanced CSS ConceptsMy notes on the great course Microsoft - Advanced CSS Concepts on edx. Lesson 01 Responsive Layout Covers the basics of Responsive Layout…
NPMGit: Hooks run `npm install` on checkoutWhen working on a project you usually install various packages from NPM. Of course, these packages are maintained and updated, adding more…
CodeWeb Tooling and Automatization using gulp 4Now working with Gulp you will discover that you run into a couple of minor problems. Especially in sequencing the different types of tasks…
CodeHTML 5: When to use <a> or <button>tl:dr is used for page navigation is used for actions on the page is used in a form and the value is used in the form The Problem Let’s…
JavaJSP: Passing Variable Data to JavaScriptWhen you try to marry old JSP Technology with the modern wonders of Typescript/ES6. You will want to expose some data provided by the…
CodeUdacity: Web Tooling and AutomatizationI recently took a look at the course materials for Web Tooling and Automatisation. Overall the course is very well structured and introduces…
NPMNPM: Use Github Patch Instead of RepositoryRecently I was playing around with the HEXO static site generator. For my setup, I was using Hexo in combination with Gitlab CI and the ftp…
CodeContinuous Integration (CI) for Gitbook using Gitlab and GulpGitbook is a static site generator, that converts a collection of Markdown files into an HTML Site. Alternatively, it can also convert the…
ExercisesCodeWars Kata: File Path OperationsThe problems in this Kata File-Path-Operations revolve around implementing common filename functions. Functions are needed to find the file…
elementaryElementary OS: Things to do after installing Elementary OS 0.4 (Loki)When you start out with elementary OS there are a couple of useful things that you should do to have a better experience working with your…
JavaNotes on MITx: 6.005.1x Software Construction in Java (Week 2)This week the course is covering another two very important topics: Testing and Specifications. LECTURE 3: Testing Testing is a very…
BlogElementary OS: Windows Apps with Play on LinuxOne of the major issues when using Linux is that you would like to use Software that was written for Windows. Thankfully more and more new…
JavaNotes on MITx: 6.005.1x Software Construction in Java (Week 1)MITx has released a course titled “Software Construction in Java”. The course is aimed at more experienced Developers and is going to teach…
BlogElementary OS: LokiElementary OS is a new Operating System that wants to be an alternative to Window or OSX. The team behind the project puts a high emphasis…
BlogHow to install Windows 10Preparation You need a USB-Drive with a minimum 3GB free space. Installation Files Microsoft has released a download tool for Windows 1…
Web DevelopmentGetting Started using AngularJS with Yeoman and Visual Studio CodeTypically to get started with a web-project you would start downloading libraries, configuring grunt etc. Yeoman is a project that takes…
WindowsMaximum Memory by Windows Services Configuration (BlackViper Settings)There are a lot of tips and tricks on how to optimize your system memory. One of the main ways to get the most out of your system is to…
BlogEdX: Introduction to LinuxI recently completed the course “Introduction to Linux” by the Linux Foundation on the edX platform. Instead of paying 2500USD for the…
Internet ExplorerForcing IE 10 to render pages as IE 10Now isn’t that a silly title, sadly it’s one of those things I never thought I would have to deal with. Especially as Internet Explorers…
JavaJava: Multiple Functions and one ErrorHandlerLet’s say you have function and function both functions are very similar and throw similar errors. If you have the possibility to avoid…
HardwareLenovo Docking-Stations: Automatically Power on LaptopYou start your day out by putting your laptop onto your docking-station and then go get your morning coffee - just to come back and find…
BlogLenovo Adjust Keyboardmapping (Fn/Ctrl and PageUp/PageDown to Home/End)Swap the Ctrl and Fn Key Lenovo has awkwardly placed the Fn key as the first key of the last row instead of the “Ctrl”- keys like most…
HardwareLenovo T430 - Reduce fan noiseFor some reason on some T430 laptops, the fan is always on even if the CPU has a 0% load. If you are running Windows here are a few…
PythonGoogle App Engine: Import CSV to DatastoreProcessing CSV Data with the Google App Engine is a two-step process. First, you need to upload the data and store it in the blob store…
WindowsWindows: Password RecoverySometimes you run into the problem that someone has forgotten their password for their home PC. As a good friend you are going to help them…
PythonPySide: QPushbutton Text below IconApparently using a QPushbutton with an Icon does not work. As alternative, I am going to use a QToolbutton.
PythonPySide: QVBoxLayout with QScrollAreaHere is an example that adds Scrollbars to a QVBoxLayout. The one thing that tripped me up was that you need to explicitly create a Widget…
PythonPySide: QTreeListWidget deleting an Item, editing an ItemThis example creates a QTreeListWidget to display a folder-structure.
PythonPySide: Using standard system IconsYou can add Icons to many types of QWidgets. PySide provides you with a method to access the native system icons. A complete list of icons…
PythonPySide: QMessageBox with QCheckBoxThe QMessageBox is very useful for creating standard filesystem dialogs (it even comes with alert sounds) and is limited to display an icon…
WindowsWindows 8.1: Boot to DesktopWindows 8.1 finally gives you the option to boot directly to the desktop (without the need for a 3rd party program). You can enable this…
PythonPySide: Rightclick Button MenuPySide (www.pyside.org) is an awesome Framework that allows you to use Qt with Python. Installation is as straightforward as typing I will…
TechProject EulerProject Euler is a collection of challenging mathematical and computational problems. The first couple of problems are rather…
WindowsWindows 7: Quick and optimized install (Update)Let’s speed up my original installation by using a powershell script instead of manually configuring windows. 1. Install 1.1 Win 7 SP…
JavaJava GUI: Using AbstractTableModelUsing the AbstractTableModel the easiest way to store the table data is to use a Vector of Vectors. You have to implement additional…
WindowsWindows 7: Quick and Optimized InstallCurrently I did not find the time to create a fully integrated automated Windows 7 Installation Disk. Here are my notes on how I would set…
WindowsWindows: Remove Security Warning Message from Downloaded FilesSo you know what you are doing and have Antivirus installed, are not downloading crap and hate useless security warnings nobody cares about…
WindowsWindows: Add Support for Camera Raw FilesIn order to preview Camera Raw files in your explorer you need to install two packages: Microsoft Camera Codec Pack Adobe DNG The “Microsoft…