Simple tools to improve your Go code
I’ll go through a list of the ones I find really helpful, please note that this list is not exhaustive.
golang  linter  Programming 
5 days ago
A penetration tester’s guide to sub-domain enumeration
Sub-domain enumeration is an essential part of the reconnaissance phase. This blog post covers various sub-domain enumeration techniques in a crisp and concise manner.
dns  pentest  security 
9 days ago
Figs | Datalegreya
Datalegreya is a typeface which can interweave data curves with text.
font  typography  visualisation  charts 
12 days ago
Git Flight Rules
A guide for astronauts (now, programmers using git) about what to do when things go wrong.
git  cheatsheet  primer 
15 days ago
Awesome Go
A curated list of awesome Go frameworks, libraries and software. Inspired by awesome-python.
26 days ago
vim-gitgutter - Vim Awesome
A Vim plugin which shows a git diff in the 'gutter' (sign column). It shows whether each line has been added, modified, and where lines have been removed. You can also stage and undo individual hunks.
vim  git 
4 weeks ago
Vim After 15 Years | Ian Langworth’s Things of Variable Interest

fzf and fzf.vim for finding files
ack.vim and ag for searching files
Vim + tmux is the key to victory 🔑
ALE is the new Syntastic because it’s asynchronous
…and lots more. Keep reading.
tmux  vim 
4 weeks ago
Logo Crunch - The multi-resolution logo maker
Logo Crunch is a multi-resolution logo maker, it uses computer vision to make your high-res logo legible at lower resolutions. Use it for a website favicon, iOS app icon or Android app icon.
logo  favicon  webdesign  branding 
6 weeks ago
guetzli: Perceptual JPEG encoder
Guetzli is a JPEG encoder that aims for excellent compression density at high visual quality. Guetzli-generated images are typically 20-30% smaller than images of equivalent quality generated by libjpeg. Guetzli generates only sequential (nonprogressive) JPEGs due to faster decompression speeds they offer.
jpeg  compression  guetzli 
6 weeks ago
Five Command Line Options To Hack The Java 9 Module System - blog@CodeFX
With Java 9, you might end up applying more command line options than ever before – it sure has been like that for me. While doing so I had a few insights that might make your life easier.
java  java9 
7 weeks ago
Monads for Go Programmers
Monads are not just used to hide some error handling, but can also be used for list comprehensions and concurrency, to name but a few examples.
golang  monad  functional 
7 weeks ago
Matrix is primarily characterised as a chat protocol. This protocol is designed to link up existing chat solutions such as XMPP (Jabber), IRC or Mattermost.
matrix  chat  irc  xmpp 
8 weeks ago
TCP servers that run like clockwork | Sahil Muthoo
Go is a great language to write networked services. Such services often depend on TCP for their underlying transport. Understanding how to write robust TCP servers is vital. It helps us understand the underpinnings of stuff we build every day. We learn to appreciate the stack we stand on.
golang  tcp  tutorial 
8 weeks ago
USB-C Compliant Cables
Not all usb-c cables are created the same. Benson Leung at Google has reviewed numerous cables, and there are quite a few non-compliant cables. These cables can result in weird, or even dangerous behavior.

If you have a Nexus 6p, Nexus 5x, or a OnePlus 2, I highly recommend using cables from the following list to save yourself trouble. All cables listed below have been reviewed, and are fully compliant with the USB-C standard.
usb-c  usb  hardware 
9 weeks ago
A collection of (mostly) technical things every software developer should know.
learning  primer  Programming 
10 weeks ago
A Complete Guide to Flexbox
The Flexbox Layout (Flexible Box) module (currently a W3C Last Call Working Draft) aims at providing a more efficient way to lay out, align and distribute space among items in a container, even when their size is unknown and/or dynamic (thus the word "flex").
CSS  webdesign  primer 
11 weeks ago
EqualsVerifier even gives you 100% coverage on equals and hashCode methods.
java  testing 
12 weeks ago
a plugin for Gatling that allows running tests with the ZeroMQ protocol
gatling  zeromq  benchmark 
12 weeks ago
A history of branch prediction from 1500000 BC to 1995
This is a pseudo-transcript for a talk on branch prediction given at localhost, a new talk series organized by RC. This talk was given at Two Sigma Ventures on 8/22/2017.
cpu  hardware  compiler  history  optimization 
august 2017
Interface font family
Interface is a font for highly legible text on computer screens.
Download the latest release or try it out in the playground
font  typography 
august 2017
Inno Setup: a free installer for Windows programs
First introduced in 1997, Inno Setup today rivals and even surpasses many commercial installers in feature set and stability.
august 2017
Effective Tensorflow
TensorFlow tutorials and best practices.
TensorFlow  tutorial 
august 2017
The world in which IPv6 was a good design
Why is IPv6 such a complicated mess compared to IPv4? Wouldn't it be better if it had just been IPv4 with more address bits? But it's not, oh goodness, is it ever not. So I started asking around. Here's what I found.
ipv6  history  networking  internet  QUIC 
august 2017
Why Github can't host the Linux Kernel Community
The problem is that github doesn’t support the way the linux kernel scales out to a huge number of contributors, and therefore we can’t simply move, not even just a few subsystems. And this isn’t about just hosting the git data, that part obviously works, but how pull requests, issues and forks work on github.
kernel  git  github  maintenance  opensource 
august 2017
Understanding the IPFS White Paper part 1
To understand how IPFS works it's a good idea to walk through this white paper step by step. I'll limit this post to chapter 2 of the white paper, having a look at the underlying technologies:

Distributed Hash Tables
Block Exchanges - BitTorrent
Version Control Systems - Git
Self-Certified Filesystems - SFS

OK, here we go!
ipfs  primer  learning 
august 2017
Side Project Marketing
I've been building little software side projects for years, but I've always been terrible at marketing them. I come up with some ideas, forget those ideas, do some random stuff, then lose interest. The goal of this project is to fix that by making marketing as simple as a checklist.
august 2017
A collection of various "awesome lists" for hackers, pentesters and security researchers
pentest  security 
august 2017
Docker vs. Kubernetes vs. Apache Mesos: Why What You Think You Know is Probably Wrong - Mesosphere
While all three technologies make it possible to use containers to deploy, manage, and scale applications, in reality they each solve for different things and are rooted in very different contexts. In fact, none of these three widely adopted toolchains is completely like the others.

Instead of comparing the overlapping features of these fast-evolving technologies, let’s revisit each project’s original mission, architectures, and how they can complement and interact with each other.
docker  kubernetes  mesos  containers  orchestration 
august 2017
re be dragons: the same 3D scene implemented with 10 different 3D APIs
This repository contains multiple implementations of the same 3D scene, using different APIs and frameworks on various platforms. The goal is to provide a comparison between multiple rendering methods. This is inherently biased due to the variety of algorithms used and available CPU/GPU configurations, but can hopefully still provide interesting insights on 3D rendering.
gpu  3d  Programming 
july 2017
GraphQL vs. REST
We’ll identify some properties of an API, and then discuss how GraphQL and REST handle them.
api  rest  webdev  GraphQL  http 
july 2017
Exactly-once Support in Apache Kafka – Jay Kreps – Medium
On Thursday we released a new version of Apache Kafka that dramatically strengthens the semantic guarantees it provides.
distributed  kafka 
july 2017
Slides and links for 2017 talks
golang  gophercon  talks 
july 2017
Postgres EXPLAIN Visualizer (pev)
Pev is designed to make Postgres query plans easier to grok. It displays a plan as a tree, with each node representing a step that takes in a row set and produces another.
postgresql  database  optimization  visualization 
july 2017
Crack WPA/WPA2 Wi-Fi Routers with Airodump-ng and Aircrack-ng/Hashcat
This is a brief walk-through tutorial that illustrates how to crack Wi-Fi networks that are secured using weak passwords.
wpa  wpa2  wifi  security  airodump  aircrack  hashcat 
july 2017
An end to end tutorial of a machine learning pipeline
This tutorial tries to do what most Most Machine Learning tutorials available online do not. It is not a 30 minute tutorial which teaches you how to "Train your own neural netowrk" or "Learn deep learning in under 30 minutes".

It's a full pipeline which you would need to do if you actually work with machine learning - introducing you to all the parts, and all the implementation decisions and details that need to be made.

The dataset is not one of the standard sets like MNIST or CIFAR, you will make you very own dataset. Then you will go through a couple conventional machine learning algorithms, before finally getting to deep learning!
machinelearning  learning  courses 
july 2017
Google Public NTP
Google Public NTP serves leap-smeared time. We use this technology to smoothly handle leap seconds with no disruptive events.
ntp  time  google 
july 2017
Tutorial for vim-go
A simple tutorial on how to install and use vim-go
golang  vim 
july 2017
BayesDB - Query the probable implicatons of your data - The MIT Probabilistic Computing Project
BayesDB is a probabilistic programming platform that enables users to query the probable implications of their data as directly as SQL databases enable them to query the data itself.
bayesian  statistics  sql  database  datamining  probability 
july 2017
Kafka Message Queue (softwaremill/kmq)
Using kmq you can acknowledge processing of individual messages in Kafka, and have unacknowledged messages re-delivered after a timeout.

This is in contrast to the usual Kafka offset-committing mechanism, using which you can acknowledge all messages up to a given offset only.

If you are familiar with Amazon SQS, kmq implements a similar message processing model.
kafka  messaging  messagequeue 
july 2017
Failsafe is a lightweight, zero-dependency library for handling failures. It was designed to be as easy to use as possible, with a concise API for handling everyday use cases and the flexibility to handle everything else.
java  java8 
july 2017
Go Language - Web Application Secure Coding Practices
Go Language - Web Application Secure Coding Practices is a guide written for anyone who is using the Go Programming Language and aims to use it for web development.
golang  security 
june 2017
FSArchiver - Filesystem Archiver for Linux
FSArchiver is a system tool that allows you to save the contents of a file-system to a compressed archive file. The file-system can be restored on a partition which has a different size and it can be restored on a different file-system. Unlike tar/dar, FSArchiver also creates the file-system when it extracts the data to partitions. Everything is checksummed in the archive in order to protect the data. If the archive is corrupt, you just loose the current file, not the whole archive.
june 2017
Exploring LSTMs
It turns out LSTMs are a fairly simple extension to neural networks, and they're behind a lot of the amazing achievements deep learning has made in the past few years. So I'll try to present them as intuitively as possible – in such a way that you could have discovered them yourself.
machinelearning  deeplearning  RRN  LSTM  primer  neuralnetworks 
june 2017
Why do Nigerian Scammers Say They are from Nigeria? (Microsoft, 2012)
By sending an email that repels all but the most gullible the scammer gets the most promising marks to self-select, and tilts the true to false positive ratio in his favor.
spam  papers 
june 2017
golang: expvar in action
The Go standard library comes with the expvar package. This package allows one to expose metrics about your application and the Go runtime via a HTTP API in JSON format.
golang  metrics 
june 2017
A gentle introduction to video technology, although it's aimed at software developers / engineers, we want to make it easy for anyone to learn. This idea was born during a mini workshop for newcomers to video technology.

The goal is to introduce some digital video concepts with a simple vocabulary, lots of visual elements and practical examples when possible, and make this knowledge available everywhere. Please, feel free to send corrections, suggestions and improve it.
video  graphics  vfx  visualisation  primer 
june 2017
Programming Project List
A list of practical projects that anyone can solve in any programming language (See solutions). These projects are divided in multiple categories, and each category has its own folder.
learning  Programming  primer 
june 2017
The microarchitecture of Intel and AMD CPUs - microarchitecture.pdf
An optimization guide for assembly programmers and
compiler makers
By Agner Fog. Technical University of Denmark
assembly  cpu  optimization  compiler 
june 2017
Kubernetes By Example
This is a hands-on introduction to Kubernetes.
kubernetes  docker  learning 
june 2017
The Tectonic Typesetting System
Tectonic is a modernized, complete, self-contained TeX/LaTeX engine, powered by XeTeX and TeXLive.
tex  rust  LaTeX 
june 2017
A simple set of utility functions for colours
JavaScript  color 
may 2017
Blockchains from the ground up: Part 1 - John Mathews
Using a scenario that begins with the exchange of apples for oranges, understand the essential concepts and advantages of blockchains.
blockchain  primer 
may 2017
Language Mechanics On Stacks And Pointers
This post has described the purpose behind pointers and how stack and pointer mechanics work in Go. This is the first step in understanding the mechanics, design philosophies and guidelines needed for writing consistent and readable code.
may 2017
Porting Windows Dynamic Link Libraries to Linux
This repository contains a library that allows native Linux programs to load and call functions from a Windows DLL.
windows  dll 
may 2017
Principal Component Analysis explained visually
Principal component analysis (PCA) is a technique used to emphasize variation and bring out strong patterns in a dataset. It's often used to make data easy to explore and visualize.
statistics  visualization 
may 2017
OWASP Mobile Security Testing Guide
The MSTG is a comprehensive manual for mobile app security testing and reverse engineering. It describes technical processes for verifying the controls listed in the OWASP Mobile Application Verification Standard (MASVS).
mobile  security  books  pentest 
may 2017
« earlier      
3d agile ai algorithm algorithms amazon analytics android angularjs animation api architecture assembly async audio authentication automation backup bash benchmark bestpractices bitcoin books bootstrap build c c++ canvas charts chat cheatsheet cli cloud cluster cms color compiler compression concurrency containers copyright couchdb courses cpp cpu cryptography css culture data database databases datamining datastructures debian debug deployment design designpatterns development diff distributed django dns docker documentation ebook editor education ejabberd email embedded encryption es6 exploit filesystem floss font framework freeculture functional fuse games gc git github gnu\linux golang google gpg gps gpu graph graphics graphs gui hardware hash haskell history howto html html5 http http2 icons ide image internet ipfs iptables ipv6 irc jabber java java8 javascript jpeg jquery json jvm jwt kafka kernel language latex learning libraries library linux llvm loadbalancing machinelearning maps markdown math messaging mobile monitoring music networking neuralnetworks nginx node.js nosql openpgp opensource openstreetmap optimization p2p papers password pdf pentest performance perl php png postgres postgresql primer privacy programming protocol proxy psychology publicdomain python python3 rails raspberrypi reactive reactjs reference regex rest rpc ruby rust sandbox scala science screencast search security sh shell software sql ssh ssl statistics storage styleguide svg sync sysadmin tcp terminal testing tex tls tools tor torrent tracking tunnel tutorial tutorials typography ui unicode unix usb ux video vim visualisation visualization vm web webdesign webdev websockets wiki windows wireless wysiwyg xmpp zeromq

Copy this bookmark: