Hi.

I'm Sophia Brandt, a curious learner who loves coding.

Latest stories

NNeoVim After 10plus Days

03/17/20191 Min Read — In DevTools, Vim

I got bitten by the Vim bug at the beginning of March. I can't exactly remember why and how. I spent some frustrating first days with this editor. I switched back and forth between (Neo)Vim and VS…

IInstalling Nvim-Typescript

03/16/20191 Min Read — In DevTools, Vim, TypeScript

Nvim-TypeScript adds TypeScript support for NeoVim. Why Nvim-TypeScript instead of Tsuquomi ? The author answers the question on github : tsuquyomi requires vimproc currently, which can be slow for…

DDeveloping with Elixir in Vim

03/15/20191 Min Read — In DevTools, Vim, Elixir

Using (Neo)Vim is surprisingly enjoyable after the initial hurdle . Language support for Elixir also works fine in Vim. Plugins I use minpac as my package manager. VimCasts has a good introduction…

OOpening, Saving and Deleting Files in Vim

03/13/20191 Min Read — In DevTools, Vim

If you want to open a new file in the same directory as the current file: :e for edit (opens a file) %:p:h for the current directory and the head of the file name If you want to save the current…

BBash and PATH

03/12/20191 Min Read — In DevTools, Linux

I was always confused about where to put my config for the bash shell on Linux. I shoved everything into ~./bashrc because that seemed to be the easiest solution. What is .bashrc ? .bashrc is a…

PPowerful Keymaps in VS Code Vim

03/11/20191 Min Read — In DevTools, Vim, VS Code

Today I learned that you can remap Vim keys with VS Code. In my NeoVim config I have some custom keybindings that I can now replicate with VS Code. The official VSCodeVim documentation has some…

VVS Code and Vim

03/10/20191 Min Read — In DevTools, Vim, VS Code

I'm slowly learning the power of Vim/NeoVim but the first steps are quite painful. If you're like me and would like to learn Vim gradually and still use VS Code in the meantime, you might want to take…

NNova Color Scheme

03/09/20191 Min Read — In DevTools

I found a new beautiful color scheme that's available for different platforms: Nova Colors : The (free) color scheme is available for Vim, tmux, Git, VS Code and other terminals and editors. It looks…

UUse the Terminal From Neovim and Vim is Hard

03/06/20191 Min Read — In DevTools, Vim

When you type in : you can run commands in Vim. And when you run :! you can run terminal commands. For example, :!ls gives you a list of the current directory. In Neovim, you can also start a…

LLearning (Neo)Vim

03/05/20191 Min Read — In DevTools, Vim

I use Visual Studio Code as my main editor at the moment. It offers great in-built features and because of its popularity, you can also enhance it with many plugins. I love it. I used Sublime Text…

LLearn Functional Programming, One Tab at a Time.

03/04/20191 Min Read — In DevTools

There is a useful free Chrome extension called FP Glossary . It explains functional programming concepts when you open a new tab in Chrome. For example: Currying The process of converting a function…

nnrepl Frustrations

03/03/20191 Min Read — In Clojure, Elixir

A few months ago I worked through the book Web Development with Clojure, 2nd Edition . The book was written in 2016 and some code is outdated. That was frustrating but I could get it to work by…

FFizzbuzz with Elixir

03/02/20191 Min Read — In Elixir

I'm reading Programming Elixir ≥ 1.6 right now and there are two interesting examples of coding Fizzbuzz . This is the output: Here the function upto is the trampoline for the function. It calls…

RReact: useEffect Hook - Yes/No?

03/01/20191 Min Read — In React.js

I'm learning how to handle React Hooks . The article Getting Hooked on React Hooks helped me clear up some misunderstandings. But I'm still not sure how to use the Effect Hook when it's supposed…

CColemak for Faster Coding

02/28/20191 Min Read — In DevTools

My computer uses the QUERTZ per default. From Wikipedia : [ The PC keyboard layout QUERTZ ] employs dead keys to type accented characters like “é”, and the AltGr key to access characters in the…

RRefactoring to React Hooks

02/27/20191 Min Read — In React.js

The new version of React, React 16.8 was released this month - and it finally has Hooks . From the official announcement : Hooks let you use state and other React features without writing a class…

SSetting up Fish Shell With Unicode Glyphs

02/26/20191 Min Read — In DevTools, Linux

Fish Shell is an interactive and user-friendly command shell for all platforms. The default shell on Linux (and macOS?) is bash. But fish is much nicer. It looks better, it has great autocomplete…

SSecret Keys in React

02/25/20191 Min Read — In React.js

Create-React-App allows you to set environment variables. This is often used to store secret keys, for example, API Keys. You need those to authenticate a request to a third party service (i.e. a…

NNetlify Hugo Sass Error

02/23/20191 Min Read — In Netlify, Hugo, DevTools

Yesterday I was working on my portfolio site . A local copy of Hugo , the static site generator written in Golang, worked fine on my machine. But when I tried to deploy the site to Netlify , the…

UUseful Elixir Learning Resources for the Beginner

02/22/20191 Min Read — In Elixir

I'm learning ELixix at the moment, to have some variety from coding in JavaScript. Elixir is a friendly, functional language with a syntax that is a bit similar to Ruby. This document gives a good…

##100DaysOfCode - a Recap After 15 Days

02/21/20191 Min Read — In Lab, 100DaysOfCode

I did some work on algorithm challenges and data structures, but am now back to coding a Javascript/Node app called feedbacky . I learned about authentication with Google OAuth using Passport-Next…

BBubble Sort in JavaScript

02/20/20191 Min Read — In JavaScript, Computer Science

I'm working on learning data structures and different algorithms. One of the first ones is Bubble Sort: Bubble Sort takes O(n^2) time in the worst case because you have two nested loops. This is a…

HHeroku Deployment Pitfall: Bind to $PORT

02/19/20191 Min Read — In DevTools, Node.js

During development, you set a port that Node listens to. That doesn't work with Heroku because Heroku binds your port and you cannot set it yourself. You'll get an error: Web process failed to bind…

DDoing vs Trying

02/16/20191 Min Read — In Lab

In the last few weeks, I've upleveled my coding skills. I've been coding every day for at least an hour and I've finally taken the step to break out of tutorial hell. Yes, I still learn with video…

CCSS Is Hard

02/15/20191 Min Read — In CSS

Every time I create a frontend project, I realize that CSS is hard. Especially layout (flexbox or grid). I'm glad that we have flexbox now and do not need to float and clearfix anymore. But still…

UUdemy Course Reflections

02/14/20191 Min Read — In Lab

I finished The Complete Web Developer in 2019: Zero to Mastery course a few days ago. I skipped some sections (HTML, CSS) which I plan to refresh later. Especially my CSS Grid and responsive design…

##100DaysOfCode

02/13/20191 Min Read — In Lab, 100DaysOfCode

I started the #100DaysOfCode a few days ago. The challenge sounds like a fun way to log my progress and participate in a greater community . The idea behind the challenge is to code at least for an…

CCycle.js

02/11/20191 Min Read — In Cycle.js

I've been trying to find a way to architect my projects in a functional way. When you're still a newbie programmer, it's hard to do. Most books and tutorials focus on the essentials and don't teach…

BBaby Steps

02/10/20191 Min Read — In Lab

I like the Kaizen technique: small, tiny baby steps towards a goal. Little improvements pile up and lead to big wins. Compound interest. Kaizen helps with breaking down a problem: to do it the Kaizen…

BBe Humble

02/09/20191 Min Read — In Lab

Sometimes I think I already know a lot about something. But often that's not true. You can always dig deeper. Often I'm ignorant about what I don't know because I know enough to get by. It's ok that I…

WWorse Days

02/08/20191 Min Read — In Lab

Some days are worse than others. Some days feel like you're making no progress. What you want to build doesn't work. You try to come up with a solution for a complicated function. It doesn't work. You…

MMojiScript

02/07/20191 Min Read — In MojiScript

Recently I discovered @joelnet on dev.to . He writes about functional Javascript. He created a new language called MojiScript that compiles to JS. It looks very interesting. What I like about it is…

YYou Can't Learn to Code for Free

02/06/20191 Min Read — In Lab

"Everyone should learn to code." and even "Coding is easy" are some statements floating around on the internet. There are tons of resources for budding learners. Some are low-priced, some are free…

CCode Project: the Process

02/05/20191 Min Read — In Lab

Things that nobody tells you but you somehow have to learn: the steps/how-to to code your app. With a frontend app, you have a combination of HTML, CSS, and Javascript and you have to address them all…

WWebpack 4 Woes

02/04/20191 Min Read — In DevTools, JavaScript

I wanted to have a basic working webpack configuration so that I could try out different things without a framework. Doesn't sound so hard, does it? Hours later, I came up with this Minimal Webpack…

RReturn Errors With Async/await Fetch

02/03/20191 Min Read — In JavaScript

I was wondering how one could display the error of a fetch Promise in React. Here is a an async fetch API call with a try/catch block. The function takes an input string, makes a POST request and…

UUse the Spread Operator to Update Objects

02/02/20191 Min Read — In JavaScript

In the past, Javascript only had objects but no maps . Objects were both used as records and as dictionaries. (From JavaScript for impatient programmers (beta) by Axel Rauschmeyer) : Records…

RRamda.js defaultTo

02/01/20191 Min Read — In JavaScript

A user submits text to your program with an input field. In Javascript, this is always a string. But sometimes you need a number: Ramda.js defaultTo This converts the input (string) to a number. If…

BBasic Particle.js Setup for React

01/29/20191 Min Read — In React.js

You can create stunning backgrounds with Particles.js . Luckily, a kind soul has implemented this library as a React component: react-particles-js . react-particles-js is easy to use but it can be…