Trending videos this week on DailyDrip
Benedikt Bitterli combined photography with astronomy and tracked stars with C++11. He was able to track stars, and produce very nice images. He doesn’t claim to be an expert photographer, but looks like he did an excellent job.
Benoit Bernard’s writeup of creating a distributed web crawler in Python is fantastic. With 4 supervisors managing 8 threads each, he managed to crawl over 40 pages/second on a single 512MB DigitalOcean instance. Once he implemented politeness, its distributed nature required architectural changes. Great read but now I want to build a web crawler in Elixir.
Michael Burge injected a Chess Engine into Amazon Redshift. He wrote the chess engine in C, and he has a tutorial on how he did it if you're up for a game of chess. If you don’t want to set it up, you can click through the first game he successfully completed.
Text editors had a big week. Atom introduced Atom IDE, which GitHub has been collaborating on with Facebook. Atom also announced version 1.20. New features include Git integration improvements, find and replace, and PostCSS support. But wait! There is more big news for text editors. Sublime Text 3.0 is here. New sublime features include syntax highlighting improvement, new color schemes, and touch input support on windows and touch bar support on macOS. Also, Emacs 25.3 released
Have you ever wondered how FiveThirtyEight produced nice looking graphs? Wonder no more! Alexandru Olteanu takes you through making a FiveThirtyEight graph in Python. Start from nothing, and produce an aesthetically pleasing graph. Their graphs are cool, but too bad most of their projections after 2012 are wrong.
CSS in JS is like replacing a broken screwdriver with your favorite hammer - CSS in JS is about as useful as inline CSS
Betting on the Web - Next week we’ll have a whole free series on progressive web apps
How to conduct a good Programming Interview - Coding interviews need to suck less, some good advice in here
Give away your code, but never your time - Any article with the top quote from Ryan Bigg is ok with me :)
What every software engineer should know about search - Search is one of those things that sounds way easier than it is in practice if you want it to be great.
I don’t know who the Web Audio API is designed for - I’ve built some stuff with WebAudio and it’s great for what I’ve used, but ScriptNode brings problems. AudioWorklet is coming!
So what’s this GraphQL thing I keep hearing about? - Another great deep-dive into GraphQL.
Intro to undo branches in Vim - I love these but all I ever remember is :Gundo
Google Developer Style Guide - Spend more time on docs, you’ll thank yourself later
Otoy is planning a blockchain peer-to-peer GPU rendering network - I’m down for anything that gets us closer to the metaverse.
DOM Attributes in React 16 - tl;dr, unknown attributes will show up in the DOM now.
Dive Deeper - Improve your code quality with Linters
You should run a linter in your CI setup and in your editor. They will help your team write consistent and better code. Some of them (like Rubocop) can even fix style errors for you. Here are a few we think are fantastic :)
Lint your CSS and SCSS with stylelint
Lint your Ruby with Rubocop
In the python world Pylint
Elm has elm-format
Elixir’s getting a built-in formatter soon
I use ale to interact with my linters in vim
Atom Linter - base linter package so you can run linters in Atom
Coala - A unified command-line interface for linting all of your code
This post was written by the DailyDrip team and syndicated via Inside.com's network of email newsletters.