datawookie
Home
Home
Practical notes on data science, web scraping, Docker, cloud infrastructure, trading systems and software engineering from real project work.
What’s New in Chrome 144?
31 Jan 2026 12:00
What’s New in Firefox 147?
24 Jan 2026 12:00
What’s New in Firefox 146?
10 Dec 2025 12:00
What’s New in Chrome 143?
5 Dec 2025 12:00
Camoufox without a Context Manager
2 Dec 2025 12:00
Installing Tor Browser on Ubuntu
1 Dec 2025 12:00
What’s New in Firefox 145?
22 Nov 2025 12:00
Evaluating a New Job Market Data Feed
10 Nov 2025 12:00
Downloading from SharePoint
25 Oct 2025 12:00
Accelerating BeautifulSoup Encoding Detection
18 Oct 2025 12:00
Cycles in Lynx Numbers
16 Oct 2025 12:00
What’s happening on the Framebuffer?
13 Jul 2025 12:00
Camoufox in Docker
11 Jun 2025 12:00
Playwright Browser Footprint
6 Jun 2025 12:00
Hasler Statistics
5 May 2025 12:00
Get Cookies from Chrome or Firefox
3 May 2025 12:00
Headless Browser Hacks
2 May 2025 12:00
Webshare Proxies
3 Apr 2025 12:00
Test a Playwright Web Scraper
2 Apr 2025 12:00
Test a Selenium Web Scraper
31 Mar 2025 12:00
Iterating over a Paginated List of Links
25 Feb 2025 12:00
Handling HTML Entities and Unicode
8 Feb 2025 12:00
Scraping JSON-LD Data
7 Feb 2025 12:00
Test a Web Scraper using Patching
30 Jan 2025 12:00
Test a Web Scraper using Mocking
29 Jan 2025 12:00
Test a Web Scraper using VCR
28 Jan 2025 12:00
Test a Web Scraper using Responses
27 Jan 2025 12:00
Web Scraper Testing
26 Jan 2025 12:00
Zyte API Sessions
25 Jan 2025 12:00
Zyte API Cookie Management
22 Jan 2025 12:00
Web Scraping with the Zyte API
14 Jan 2025 12:00
Installing CPLEX
11 Dec 2024 12:00
Installing MOSEK
11 Dec 2024 12:00
Optimisation with Pyomo
10 Dec 2024 12:00
Optimisation with CVXPY
9 Dec 2024 12:00
Optimisation with SciPy
8 Dec 2024 12:00
Global versus Sequential Optimisation
7 Dec 2024 12:00
Optimisation Reference Problem
6 Dec 2024 12:00
Scraping and Not Modified Responses
3 Dec 2024 12:00
NetNut Proxies
12 Nov 2024 12:00
What is a Proxy?
11 Nov 2024 12:00
Migrating from GitLab Pages to Vercel
10 Nov 2024 12:00
Scraping the NYSE Composite Index
25 Oct 2024 12:00
Asset Price Data
24 Oct 2024 12:00
Listing Alpaca Assets
21 Oct 2024 12:00
Authenticate with Alpaca API
13 Oct 2024 12:00
Earnings Calendar
12 Oct 2024 12:00
Caching & Avoiding Duplication
10 Oct 2024 12:00
Downloading Files with Selenium
5 Oct 2024 12:00
Economic Calendar
2 Oct 2024 12:00
Your Life in Weeks
13 Aug 2024 12:00
Bypassing Cloudflare with Cloudscraper
20 Jul 2024 12:00
Unpacking cURL Commands
10 Jul 2024 12:00
Updates to the Big Book of R
26 Jun 2024 12:00
{emayili} Creating Email Threads
22 Jun 2024 12:00
Release: openai-python 1.33.0
8 Jun 2024 12:00
Installing Docker
5 Jun 2024 12:00
Locations from Google Map
26 May 2024 12:00
Desert Island Docker: R Edition
23 May 2024 12:00
Desert Island Docker: Python Edition
14 May 2024 12:00
Extract Chapter Headings from PDF
29 Apr 2024 12:00
{emayili} Support for Mailtrap
23 Apr 2024 12:00
Backtesting
21 Apr 2024 12:00
Docker-in-Docker with GitHub Actions
21 Apr 2024 12:00
Asset Allocation
19 Apr 2024 12:00
Logging like a Lumberjack
18 Apr 2024 12:00
Parameter Constraints & Significance
16 Apr 2024 12:00
Risk/Reward Tradeoff
15 Apr 2024 12:00
Docker Image from Scratch
14 Apr 2024 12:00
Model Validation
14 Apr 2024 12:00
Parameter Significance & Parsimonious Models
13 Apr 2024 12:00
Leverage Effect
12 Apr 2024 12:00
Skewed Returns
11 Apr 2024 12:00
What is a GARCH Model?
10 Apr 2024 12:00
Rolling Volatility & Returns
9 Apr 2024 12:00
Loading Financial Time Series
8 Apr 2024 12:00
PyInstaller, boto3 and configparser
3 Apr 2024 12:00
Python Packages from GitHub
10 Mar 2024 12:00
Read by Frank Collier
8 Mar 2024 12:00
Host & Port: Where is it?
2 Mar 2024 12:00
What is Traefik?
1 Mar 2024 12:00
Standalone Next.js Application in Docker
23 Feb 2024 12:00
Testing CSS & Xpath
8 Feb 2024 12:00
Parsing the DOM
7 Feb 2024 12:00
Gatsby Content from RSS
6 Feb 2024 12:00
Gatsby Content from MDX
2 Feb 2024 12:00
Dynamic User Pages
1 Feb 2024 12:00
Python Security Audit
23 Jan 2024 12:00
ChromeDriver in GitLab CI Pipeline
22 Jan 2024 12:00
Gatsby Content from Medium
20 Jan 2024 12:00
Gatsby, Tailwind & Docker
19 Jan 2024 12:00
Next.js, Tailwind & Docker
18 Jan 2024 12:00
Web Scraping with Class Name Mangling
16 Jan 2024 12:00
.NET and MySQL in Docker
15 Jan 2024 12:00
WordPress Headless CMS
6 Jan 2024 12:00
Humble Head
5 Jan 2024 12:00
Minecraft Plugin: Discord for Voice & Text Chat
31 Dec 2023 12:00
Minecraft Paper Server
30 Dec 2023 12:00
Weekly Digest & Annual Review
29 Dec 2023 12:00
Chrome & ChromeDriver in Docker
19 Dec 2023 12:00
SSH Tunnel: Dynamic Port Forwarding
19 Dec 2023 12:00
Weekly Digest
15 Dec 2023 12:00
SSH Tunnel: Remote Port Forwarding
13 Dec 2023 12:00
Middleware Redirects on Vercel
12 Dec 2023 12:00
Minecraft Client on Ubuntu
11 Dec 2023 12:00
Minecraft Server on Ubuntu
10 Dec 2023 12:00
Weekly Digest
8 Dec 2023 12:00
Static Redirects on Vercel
5 Dec 2023 12:00
SSH Tunnel: Local Port Forwarding
5 Dec 2023 12:00
Batch Resolving Merge Conflicts
1 Dec 2023 12:00
Weekly Digest
1 Dec 2023 12:00
Weekly Digest
24 Nov 2023 12:00
Externalise CSS
20 Nov 2023 12:00
Weekly Digest
17 Nov 2023 12:00
Gatsby on Vercel
15 Nov 2023 12:00
Dynamic Routing
13 Nov 2023 12:00
Weekly Digest
10 Nov 2023 12:00
Custom 404 Page
9 Nov 2023 12:00
Gatsby on Netlify
8 Nov 2023 12:00
Cookies & Headers from Selenium
7 Nov 2023 12:00
Adding robots.txt to a Gatsby Site
6 Nov 2023 12:00
Weekly Digest
3 Nov 2023 12:00
Update Sitemap for Canonical Pages
2 Nov 2023 12:00
Add Canonical Links with Gatsby
1 Nov 2023 12:00
Gatsby Site Versions
31 Oct 2023 12:00
Conditional Content in AsciiDoc
30 Oct 2023 12:00
Add Nodes & Fields to GraphQL Schema
27 Oct 2023 12:00
Weekly Digest
27 Oct 2023 12:00
Gatsby Page Ordering
25 Oct 2023 12:00
Adding Custom Attributes to Pages in a Gatsby Site
24 Oct 2023 12:00
Gatsby Redirects
23 Oct 2023 12:00
Adding a Sitemap with Gatsby
22 Oct 2023 12:00
Gatsby Content from AsciiDoc
14 Oct 2023 12:00
Convert Gatsby from JavaScript to TypeScript
11 Oct 2023 12:00
Gatsby Starter Project
7 Oct 2023 12:00
Why Do Sports Odds Change?
30 Sep 2023 12:00
Undetected ChromeDriver with noVNC
24 Sep 2023 12:00
Gatsby running out of heap space
8 Sep 2023 12:00
Transparency in Coverage: JSON Data
27 Aug 2023 12:00
Unravelling Transparency in Coverage Data
26 Aug 2023 12:00
What is Transparency in Coverage Data?
25 Aug 2023 12:00
Mocking S3 from Python tests
4 Aug 2023 12:00
Controlling what Alembic Autogenerates
22 Jul 2023 12:00
List of Medical Conditions
24 Jun 2023 12:00
Flattening Nested Schemas
11 Jun 2023 12:00
Hosting a GitLab Runner with Docker: Update
30 May 2023 12:00
GitLab Runner: Creating a Token
30 May 2023 12:00
Pushing to Docker Hub from GitHub Actions
28 May 2023 12:00
Pushing to Docker Hub from GitLab CI
28 May 2023 12:00
Kayak Specifications
25 May 2023 12:00
Column Order: Inheritance & Declarative Base
18 May 2023 12:00
South Africa Real Effective Exchange Rate
17 May 2023 12:00
Using mailmap to Tidy Git Contributors
1 May 2023 12:00
Installing Gatsby
6 Apr 2023 12:00
Developing a Gatsby Site with Docker
4 Apr 2023 12:00
Configuring BASH History
1 Apr 2023 12:00
Chrome DevTools Protocol & Selenium
11 Mar 2023 12:00
Content and Message IDs
18 Dec 2022 12:00
{emayili} Support for ZeptoMail
27 Nov 2022 12:00
AWS Workspace Client on Ubuntu 22.10
2 Nov 2022 12:00
Stay Below the Radar
26 Oct 2022 12:00
{pagedown} Page Size & Margins
22 Oct 2022 12:00
Scaling Density Plots
8 Oct 2022 12:00
Handling Empty Paragraphs from R Markdown
29 Sep 2022 12:00
Vertically Align Image & Text
24 Sep 2022 12:00
Enforcing Style in an R Project
20 Sep 2022 12:00
Enforcing Style in a Python Project
19 Sep 2022 12:00
Squares & Spirals
18 Sep 2022 12:00
Calculating the Fire Danger Index (FDI)
8 Sep 2022 12:00
Using Shiny Server in Docker
7 Sep 2022 12:00
Postboxes & Postal Codes
13 Aug 2022 12:00
Schools in England
11 Aug 2022 12:00
Linux Packages for R
9 Aug 2022 12:00
Historical Weather Data
7 Aug 2022 12:00
Persisting Data with Pickle & S3
28 Jul 2022 12:00
Great Britain Railway Network
16 Jul 2022 12:00
Interactive Brokers API: Connecting from MATLAB
10 May 2022 12:00
Interactive Brokers Client Portal API Gateway
9 May 2022 12:00
Interactive Brokers: Gateway Automation
21 Apr 2022 12:00
Interactive Brokers: Gateway Install & Setup
20 Apr 2022 12:00
Business Ideas
18 Apr 2022 12:00
{emayili} Encrypted Email with Mailfence
4 Apr 2022 12:00
Mailfence Setup
3 Apr 2022 12:00
Pre-Registered GitLab Runner in a Container
23 Mar 2022 12:00
Scheduling Refresh of a Materialised View
22 Mar 2022 12:00
Firing Up Firestore
20 Mar 2022 12:00
Making Sense of Drug Prices
9 Mar 2022 12:00
{emayili} Updated Gmail Authentication
8 Mar 2022 12:00
Creating Git Commits in CI
4 Mar 2022 12:00
Adding Timestamp Columns
23 Feb 2022 12:00
Pushing Docker Images to AWS ECR
18 Feb 2022 12:00
How to Harvest RSS Feeds
31 Jan 2022 12:00
A Recipe for Upgrading R
25 Jan 2022 12:00
{emayili} Message Templates
21 Jan 2022 12:00
{emayili} Sending Email from Shiny
20 Jan 2022 12:00
{emayili} HTML Messages with Images
12 Jan 2022 12:00
Building GPXSee
5 Jan 2022 12:00
Translating QCT (Quick Chart) Map Files
30 Dec 2021 12:00
{emayili} Sending Encrypted Email
7 Dec 2021 12:00
{emayili} Understanding Encrypted Email
26 Nov 2021 12:00
{filebin} Quick & Easy File Sharing
18 Nov 2021 12:00
{binance} P2P Trades
10 Nov 2021 12:00
Shared Memory & Docker
9 Nov 2021 12:00
{binance} Spot Trading: Liquidity
8 Nov 2021 12:00
Accessing Virtual Memory from a Docker Container
6 Nov 2021 12:00
{binance} Spot Trading: Limit Orders
5 Nov 2021 12:00
{binance} Spot Trading: Market Orders
1 Nov 2021 12:00
{binance} Dealing with Dust
27 Oct 2021 12:00
{binance} Tracking Total Account Balance
26 Oct 2021 12:00
HCRIS Field Labels
19 Oct 2021 12:00
{emayili} Message Threads
18 Oct 2021 12:00
{emayili} Support for Gmail, SendGrid & Mailgun
15 Oct 2021 12:00
Fathoming Email Headers
11 Oct 2021 12:00
{emayili} Message Precedence
6 Oct 2021 12:00
{emayili} Message Integrity
5 Oct 2021 12:00
Working with Fairly Wide Data
4 Oct 2021 12:00
Medusa: A Multi-Headed Tor Proxy
1 Oct 2021 12:00
{emayili} Right-to-Left
24 Sep 2021 12:00
{emayili} Styling Figures
23 Sep 2021 12:00
{emayili} Managing CSS
22 Sep 2021 12:00
{emayili} R Markdown Parameters
20 Sep 2021 12:00
{emayili} Rendering R Markdown
17 Sep 2021 12:00
{emayili} Rendering Plain Markdown
10 Sep 2021 12:00
{clockify} Time Tracking from R
9 Sep 2021 12:00
Setting up a Tiny HTTP Proxy
8 Sep 2021 12:00
Pre-Commit Hook for Processing README.Rmd
5 Sep 2021 12:00
{emayili} Interpolating Message Content
3 Sep 2021 12:00
Websockify with Token Target Selection
22 Aug 2021 12:00
{emayili} Rudimentary Email Address Validation
21 Aug 2021 12:00
Old ’Hood, New ’Hood
11 Aug 2021 12:00
Websockify & noVNC: Adding SSL
8 Aug 2021 12:00
Websockify & noVNC behind an NGINX Proxy
7 Aug 2021 12:00
Creating an AMI using the AWS CLI
31 Jul 2021 12:00
TomTom Traffic
27 Jul 2021 12:00
TomTom Routing
26 Jul 2021 12:00
Fixing Truncated Logs on Gitlab CI/CD
24 Jul 2021 12:00
Mobility & Unrest in South Africa
24 Jul 2021 12:00
SSH Tunnel from Docker
25 Jun 2021 12:00
Shiny on ECS
24 Jun 2021 12:00
Adding Swap Space on Ubuntu
10 Jun 2021 12:00
Scrapy with a Rotating Tor Proxy
9 Jun 2021 12:00
RAM & CPU Requirements for a Selenium Crawler
4 Jun 2021 12:00
Shiny Inception: JavaScript in Rendered Markdown
3 Jun 2021 12:00
Building an Airflow Environment in Docker
31 May 2021 12:00
Desktop in Docker
30 May 2021 12:00
Using {pagedown} in Docker
28 May 2021 12:00
AWS EC2: Setting up a Load Balancer
9 May 2021 12:00
AWS EC2: Creating a Target Group
8 May 2021 12:00
AWS Containers #8: Setting up a Service
6 May 2021 12:00
AWS EC2: Security Groups
2 May 2021 12:00
AWS Containers #4: Dependencies
28 Apr 2021 12:00
AWS Containers #5: Health Checks
28 Apr 2021 12:00
AWS Containers #3: Image on ECR
27 Apr 2021 12:00
AWS Containers #2: Defining an ECS Task
26 Apr 2021 12:00
AWS Containers #1: Creating an ECS Cluster
25 Apr 2021 12:00
Selenium Crawler #3: Docker Compose
19 Apr 2021 12:00
Selenium Crawler #2: Docker Bridge Network
18 Apr 2021 12:00
Selenium Crawler #1: Docker Host Network
17 Apr 2021 12:00
{hagr} Linnaean Classification
16 Apr 2021 12:00
{hagr} Database of Animal Ageing and Longevity
12 Apr 2021 12:00
The Easter Bunny is Cashing In
3 Apr 2021 12:00
Making the Most of Mobility
2 Apr 2021 12:00
An Environment for Reliably Rendering Figures in R
23 Mar 2021 12:00
Flexible Environment Variables for a Docker Image
22 Mar 2021 12:00
Install GitLab Runner with Docker
21 Mar 2021 02:00
{emayili} UTF-8 Filenames & Setting Sender
8 Mar 2021 12:00
Resurrecting MySQL into PostgreSQL with PGLoader
2 Mar 2021 12:00
{blogdown}: Optimise PNG Image Size
21 Feb 2021 12:00
{emayili} Sending Birthday Messages
18 Feb 2021 12:00
Setting up postref Shortcode for Remote Blog
10 Feb 2021 12:00
Launching Selenium with JavaScript Disabled
3 Feb 2021 12:00
Levies, Tax and the Fuel Price in South Africa
1 Feb 2021 12:00
This is not Rain: It’s a Trickle
30 Jan 2021 12:00
Persistent Selenium Sessions
28 Jan 2021 12:00
Cyril’s Speeches
14 Jan 2021 12:00
Topographic Maps for South Africa
12 Jan 2021 12:00
Price of Fuel in South Africa
10 Jan 2021 12:00
SQLAlchemy: Efficient Counting
9 Jan 2021 12:00
Retail Pricing: Latex Gloves
6 Jan 2021 12:00
Running History: Garmin Connect
5 Jan 2021 12:00
Retail Pricing: Nitrile Gloves
4 Jan 2021 12:00
Running History: Strava
2 Jan 2021 12:00
GitLab CI: Services
30 Dec 2020 12:00
Rendering an R Markdown Presentation to GitLab Pages
23 Sep 2020 02:00
Scrapy Ban Policies with Rotating Proxies
17 Sep 2020 02:00
Uploading CSV to MySQL
1 Sep 2020 02:00
Configuring a Development Database
30 Aug 2020 02:00
Resizing a Volume on an EC2 Linux Instance
4 Aug 2020 03:00
Shiny App in Docker with HTTP Authentication
29 Jun 2020 02:00
Retail Data: R Package
15 Mar 2020 12:00
Retail Data: Scraping & API
15 Mar 2020 12:00
R Package for
@racently
6 Dec 2019 02:00
Durban EDGE DataQuest
13 Nov 2019 02:00
An API for
@racently
12 Nov 2019 02:00
Scraping Machinery Parts
11 Nov 2019 02:00
Installing Prophet on CentOS
4 Nov 2019 02:00
Private Security and the Pareto Principle
16 Oct 2019 02:00
Tweaking Linux for Pernickety Projectors
12 Oct 2019 02:00
MySQL Backups
17 Sep 2019 02:00
R, Docker and Checkpoint: A Route to Reproducibility
28 Aug 2019 09:30
All Roads Lead to Rome
28 Jul 2019 09:30
Using Shared Memory with OSRM
26 Jul 2019 09:30
Recreating ‘Unknown Pleasures’ graphic
15 Jul 2019 02:00
Comrades Marathon (2019) Splits
1 Jul 2019 04:00
Medal Breakdown at Comrades Marathon (2019)
30 Jun 2019 02:30
Comrades Marathon (2019) Start Delay
15 Jun 2019 02:30
A Shiny Comrades Marathon Pacing App
4 Jun 2019 02:30
{emayili} Sending Email from R
27 May 2019 05:00
Setting up an R Admin Group
11 Apr 2019 03:30
Sliding Puzzle Solvable?
10 Apr 2019 02:30
Integrating Qlik Sense and R
26 Mar 2019 02:30
satRday (Paris) 2019
25 Feb 2019 10:30
Docker Images for R: r-base versus r-apt
21 Jan 2019 04:00
RServe: Getting Started
21 Jan 2019 04:00
JSON Payload for POST Request
10 Jan 2019 04:00
Where does .Renviron live on Citrix?
8 Jan 2019 04:00
Survey Raking: An Illustration
26 Dec 2018 04:00
Citrix Receiver on Ubuntu
14 Dec 2018 10:00
Scraping the Turkey Accordion
12 Dec 2018 02:00
RStudio & Shiny Servers with NGINX & SSL
14 Nov 2018 02:00
Installing RStudio & Shiny Servers
13 Nov 2018 02:00
Accessing Open Data from AWS
4 Nov 2018 02:00
Embedding Dependencies into a HTML File
31 Oct 2018 02:00
DNS on Ubuntu
25 Oct 2018 04:30
@pyconza
(2018): Data Science and Bayes with Python
15 Oct 2018 06:00
Docker Images for Spark
28 Sep 2018 02:00
MySQL Server Replication using Binary Logs
17 Sep 2018 02:00
DIY VPN with Docker
11 Sep 2018 05:00
Refining an AWS IAM Policy for Flintrock
8 Sep 2018 02:00
Diagnosing RStudio Startup Issues
7 Sep 2018 02:00
Chairing a Conference Session
9 Aug 2018 02:00
Setup for using Stan with Julia
25 Jul 2018 03:30
Updating R on Ubuntu
9 Jul 2018 01:00
eRum (2018) Top Twenty
18 May 2018 04:30
Travelling Salesman with ggmap
10 May 2018 11:00
Classification: Get the Balance Right
21 Apr 2018 01:00
Workshop: Web Scraping with R
12 Apr 2018 01:00
Tips for Lightning Talks
6 Apr 2018 07:30
Restoring a Django Backup
23 Feb 2018 10:00
Installing DataGrip on Ubuntu
16 Feb 2018 08:00
SQL Server from Ubuntu
5 Feb 2018 08:00
Linux VM on Azure
5 Feb 2018 07:00
Installing rJava
5 Feb 2018 07:00
Ethereum: DIY Tools for Smart Contracts
19 Jan 2018 03:30
Ethereum: Running a Node
19 Jan 2018 03:30
NTP: Synchronise Your Watches
11 Jan 2018 04:30
An Ethereum Package for R
7 Jan 2018 08:00
Moving a Running Process to screen
30 Dec 2017 04:00
Creating an Amazon Machine Image
4 Dec 2017 03:00
Using Large Maps with OSRM
27 Nov 2017 07:00
EC2 Missing Disk Space
23 Nov 2017 07:30
Variable Names: Camel Case to Underscore Delimited
20 Nov 2017 04:30
Analysis of Feedback from satRday [Cape Town] 2017
15 Nov 2017 03:30
Durban Twitter Analysis
10 Nov 2017 12:00
Running OSRM with Docker
7 Oct 2017 07:00
Installing NVIDIA Graphics Driver on Ubuntu
7 Oct 2017 07:00
Exporting HTML Presentations to PDF
5 Oct 2017 07:00
Quick WordPress Install with Docker
22 Sep 2017 11:00
Diagnosing Killed Jobs on EC2
21 Sep 2017 08:30
Removing Redundant Hostnames with NGINX
15 Sep 2017 09:00
Creating a S3 Bucket
14 Sep 2017 05:00
Installing Docker on Ubuntu
14 Sep 2017 05:00
Hosting a Plumber API on AWS
14 Sep 2017 04:00
Creating an AWS Spot Instance
13 Sep 2017 08:30
Building a Local OSRM Instance
11 Sep 2017 08:30
Global Variables in R Packages
7 Sep 2017 02:30
Driving AWS from the Command Line
31 Aug 2017 11:00
Route Asymmetry in Google Maps
23 Aug 2017 04:00
Retrieve Kaggle Data from the Command Line
21 Aug 2017 11:00
Setting Up Time Zones in BASH
20 Aug 2017 05:00
Setting Up Time Zones in MySQL
20 Aug 2017 05:00
Adding a Volume to an Ubuntu EC2 Instance
10 Aug 2017 03:00
Remote Desktop on an Ubuntu EC2 Instance
8 Aug 2017 03:00
A Timeline History of R
5 Aug 2017 01:00
Adding Users to an EC2 Ubuntu Instance
24 Jul 2017 01:00
Docker: Persisting User Data
20 Jul 2017 03:30
Deploying Jupyter on AWS using Docker
18 Jul 2017 04:00
RStudio Environment on DigitalOcean with Docker
11 Jul 2017 04:00
Installing Hadoop on Ubuntu
4 Jul 2017 09:30
Installing Spark on Ubuntu
4 Jul 2017 09:30
Accessing PySpark from a Jupyter Notebook
4 Jul 2017 12:00
Increasing MySQL Packet Maximum Size
1 Jul 2017 05:30
Setting up ExpressVPN on Ubuntu
23 Jun 2017 07:00
Setting up Jupyter with Python 3 on Ubuntu
23 Jun 2017 05:00
Deploying a Minimal Plumber API on DigitalOcean
21 Jun 2017 09:45
RSelenium and Java Heap Space
9 Jun 2017 05:45
Clustering Time Series Data
25 Apr 2017 12:00
Bulgaria Web Summit
16 Apr 2017 08:00
Bayesian Marathon Predictions
28 Feb 2017 08:22
Amazon is Getting Inside my Head
26 Feb 2017 08:22
Google Quick, Draw!
17 Nov 2016 03:00
Simple School Maths Problem
15 Nov 2016 01:21
satRday Cape Town: Call for Submissions
26 Oct 2016 03:18
fast-neural-style: Real-Time Style Transfer
7 Oct 2016 03:00
Fitting a Statistical Distribution to Sampled Data
5 Oct 2016 03:00
Python: First Steps with MongoDB
28 Sep 2016 03:00
Chrome Developer Tools: Throttling Connection
20 Sep 2016 08:21
Chrome Developer Tools: View POST Data
19 Sep 2016 03:00
Deleting All Nodes and Relationships
15 Sep 2016 03:00
Remote Access to Neo4j on Windows
13 Sep 2016 03:00
Installing Neo4j on Ubuntu
6 Sep 2016 12:00
PLOS Subject Keywords: Association Rules
1 Sep 2016 03:00
ubeR: A Package for the Uber API
31 Aug 2016 06:00
PLOS Subject Keywords: Gathering Data
24 Aug 2016 03:00
Sportsbook Betting (Part 3): Evolving Odds
23 Aug 2016 03:00
Garmin ANT on Ubuntu
22 Aug 2016 03:00
Anthony Goldbloom: The jobs we’ll lose to machines
22 Aug 2016 03:00
Sportsbook Betting (Part 2): Bookmakers’ Odds
10 Aug 2016 03:00
Animated Mortality
9 Aug 2016 03:00
feedeR: Reading RSS and Atom Feeds from R
8 Aug 2016 03:00
Web Scraping and “invalid multibyte string”
2 Aug 2016 03:00
Sportsbook Betting (Part 1): Odds
1 Aug 2016 03:00
Arthur Benjamin: Teach statistics before calculus!
29 Jul 2016 03:00
Building a Life Table
28 Jul 2016 03:00
Calculating Pi using Buffon’s Needle
26 Jul 2016 03:00
Conrad Wolfram: Teaching kids real math with computers
25 Jul 2016 03:00
Mortality by Year and Age
22 Jul 2016 03:00
Life Expectancy by Country
20 Jul 2016 04:00
Mortality Rate by Age
19 Jul 2016 04:00
Escalating Life Expectancy
18 Jul 2016 04:00
Birth Month by Gender
16 Jul 2016 05:00
Most Probable Birth Month
15 Jul 2016 04:49
Streaming from zip to bz2
8 Jul 2016 12:12
Major League Baseball Birth Months
5 Jul 2016 05:00
satRday in Cape Town
26 May 2016 03:03
R Saturday [satRday] in Cape Town
12 May 2016 09:06
The Next Rembrandt
6 Apr 2016 07:46
International Open Data Day
5 Mar 2016 03:01
R, HDF5 Data and Lightning
23 Feb 2016 03:00
Ira Glass on the Creative Process
12 Feb 2016 03:00
Automating R scripts under Windows
11 Feb 2016 07:33
flipsideR: Support for ASX Option Chain Data
8 Feb 2016 03:00
Kaggle: Santa’s Stolen Sleigh
22 Jan 2016 03:00
Lawyers and Politics
20 Jan 2016 08:22
Casting a Wide (and Sparse) Matrix in R
19 Jan 2016 11:22
Kaggle: Walmart Trip Type Classification
15 Jan 2016 03:00
MongoDB: Installing on Windows 7
13 Jan 2016 01:10
Mastering Python Scientific Computing
11 Jan 2016 03:00
Review: Learning Shiny
5 Jan 2016 03:00
Using Checksum to Guess Message Length: Not a Good Idea!
22 Dec 2015 03:00
Making Sense of Logarithmic Loss
14 Dec 2015 03:00
Installing XGBoost on Ubuntu
9 Dec 2015 03:00
2015 Data Science Salary Survey
4 Dec 2015 03:00
Evolution of First Names: Unisex Names and Nicknames
23 Nov 2015 03:00
Evolution of First Names: Fashionable and Popular Names
16 Nov 2015 03:00
Graph from Sparse Adjacency Matrix
12 Nov 2015 03:00
First Names Evolution: Changes over Last Century
9 Nov 2015 03:00
LIBOR and Bond Yields
6 Nov 2015 03:00
Guy Kawasaki on Personal Branding
3 Nov 2015 03:00
Day 38: Imaging
30 Oct 2015 03:00
Day 37: Fourier Techniques
26 Oct 2015 03:00
Day 36: Markdown
19 Oct 2015 03:00
Beautiful Data
15 Oct 2015 04:00
Day 35: Mapping
15 Oct 2015 03:00
Day 34: Networking
13 Oct 2015 03:00
Installing LightTable and Juno on Ubuntu
12 Oct 2015 03:30
Day 33: Evolutionary Algorithms
12 Oct 2015 03:00
Day 32: Classification
9 Oct 2015 03:00
Day 31: Regression
8 Oct 2015 03:00
Day 30: Clustering
7 Oct 2015 03:00
Data Mining with Rattle and R
7 Oct 2015 12:30
Day 29: Distances
6 Oct 2015 03:00
Day 28: Hypothesis Tests
5 Oct 2015 03:00
Day 27: Distributions
2 Oct 2015 03:00
Day 26: Statistics
1 Oct 2015 03:00
Day 25: Interfacing with Other Languages
30 Sep 2015 03:00
Day 24: Graphs
29 Sep 2015 03:00
Day 23: Data Structures
28 Sep 2015 03:00
Day 22: Optimisation
25 Sep 2015 03:00
Day 21: Differential Equations
24 Sep 2015 04:00
Day 20: Calculus
23 Sep 2015 02:00
Day 19: Units of Measurement
22 Sep 2015 04:00
Day 18: Plotting
21 Sep 2015 04:00
PhysicalConstants.jl: Julia Package of Physical Constants
21 Sep 2015 03:00
Day 17: Datasets from R
18 Sep 2015 03:56
Day 16: Databases
17 Sep 2015 04:00
Setting up ODBC for SQLite on Ubuntu
17 Sep 2015 05:39
Day 15: Time Series
16 Sep 2015 02:00
Day 14: DataFrames & DataArrays
15 Sep 2015 01:00
urlshorteneR: A package for shortening URLs
14 Sep 2015 05:00
Day 13: Packages
14 Sep 2015 01:00
Day 12: Parallel Processing
11 Sep 2015 01:00
Day 11: Metaprogramming
10 Sep 2015 02:00
A ggplot2 oddity
10 Sep 2015 12:32
Day 10: Modules
9 Sep 2015 01:00
Day 9: Input/Output
8 Sep 2015 05:30
Day 8: Iteration, Conditionals and Exceptions
7 Sep 2015 05:29
Day 7: Functional Programming
6 Sep 2015 02:06
Day 6: Composite Types
5 Sep 2015 04:10
Day 5: Collections
4 Sep 2015 08:23
Day 4: Functions
3 Sep 2015 06:01
Day 3: Variables and Data Types
2 Sep 2015 02:44
Day 2: Development Environments
1 Sep 2015 05:28
Day 1: Installation and Orientation
31 Aug 2015 07:32
Shiny Bayesian Updates
24 Jul 2015 12:13
Lightning on your Twitter Feed
13 Jul 2015 02:00
Constructing a Word Cloud for ICML 2015
10 Jul 2015 09:30
ICML 2015 (Lille, France): Day 5 (Workshops)
10 Jul 2015 07:10
ICML 2015 (Lille, France): Day 4
10 Jul 2015 09:38
ICML 2015 (Lille, France): Day 3
8 Jul 2015 04:42
ICML 2015 (Lille, France): Day 2
8 Jul 2015 07:30
ICML 2015 (Lille, France): Day 1 (Tutorials)
7 Jul 2015 07:08
Machine Learning with R Cookbook
3 Jul 2015 02:36
Flashes from the Ashes: Volcanic Lightning
3 Jul 2015 12:32
Excel: Copying with Relative Links
26 Jun 2015 12:25
Disney: Quality over Quantity
15 Jun 2015 02:03
R Recipe: RStudio and UNC Paths
4 Jun 2015 09:44
Hosting Shiny on Amazon EC2
30 May 2015 11:41
Comrades Marathon Medal Predictions
28 May 2015 07:52
R Recipe: Aligning Axes in ggplot2
27 May 2015 06:14
R Recipe: Reordering Columns in a Flexible Way
16 May 2015 06:20
Recent Common Ancestors: Simple Model
15 May 2015 11:35
R Recipe: Making a Chord Diagram
9 May 2015 03:07
Comrades Marathon Finish Predictions
23 Apr 2015 12:06
Comrades Runners Disqualified: I’m Not Convinced
16 Apr 2015 11:16
Encyclopaedia: Meteorites in Antarctica
13 Apr 2015 09:00
A Sankey Plot with Uniform Coloured Edges
7 Apr 2015 11:16
Encyclopaedia: Discovery Expedition
6 Apr 2015 09:00
Bags, Balls and the Hypergeometric Distribution
3 Apr 2015 09:00
Comrades Marathon Pacing Chart: Up Run
1 Apr 2015 01:07
The Price of Fuel: How Bad Could It Get?
1 Apr 2015 09:00
Encyclopaedia: Geospace
30 Mar 2015 09:00
Encyclopaedia: Scottish National Antarctic Expedition
23 Mar 2015 09:00
Encyclopaedia: SANAE IV
16 Mar 2015 09:00
Dealing with a Byte Order Mark (BOM)
11 Mar 2015 09:00
Graph Databases
9 Feb 2015 09:00
R for Business Analytics
28 Jan 2015 10:50
Downloading Options Data in R: An Update
14 Jan 2015 05:30
Simulating Intricate Branching Patterns with DLA
16 Dec 2014 09:31
Creating More Effective Graphs
4 Nov 2014 12:25
Standard Bank: Striving for Mediocrity
7 Oct 2014 03:32
Plotting Flows with {riverplot}
14 Aug 2014 12:58
Commitments of Traders: Moves in the Last Week
9 Aug 2014 10:46
Whistlers and Volcanic Lightning
30 Jul 2014 12:42
Comrades Marathon: A Race for Geriatrics?
22 Jul 2014 05:11
Where to Put EAs and Indicators in New MT4 Builds
20 Jul 2014 07:42
Comrades Marathon Negative Splits: Cheat Strikes Again
16 Jul 2014 09:00
Twins, Tripods and Phantoms at the Comrades Marathon
12 Jun 2014 12:33
Concatenating a list of data frames
6 Jun 2014 01:16
Comrades Marathon Pacing Chart: Down Run
28 May 2014 04:24
What Can We Learn from the Commitments of Traders Report?
21 May 2014 12:21
Race Statistics for Comrades Novices: Corrigendum
17 May 2014 03:12
Race Statistics for Comrades Marathon Novice Runners
16 May 2014 05:22
Hazardous & Benign Objects: Solar-Ecliptic Orbits
12 May 2014 10:38
Comrades Marathon Negative Splits: The Plot Thickens
10 May 2014 03:05
Hazardous & Benign Objects: Kepler’s Equation
8 May 2014 11:45
Comrades Marathon: Negative Splits and Cheating
6 May 2014 10:17
Hazardous & Benign Objects: Getting the Data
28 Apr 2014 10:33
R Interface to Myfxbook
17 Apr 2014 11:16
Earthquakes: Land / Ocean Distribution
13 Apr 2014 10:22
Largest Volcanoes & Other Statistics
11 Apr 2014 11:55
Earthquakes: Magnitude / Depth Chart
7 Apr 2014 12:19
Daylight Saving Effect on Financial Indices
1 Apr 2014 11:47
Filtering Data with L1 Regularisation
27 Mar 2014 12:39
Filtering Data with L2 Regularisation
25 Mar 2014 10:58
How Long to Conceive?
12 Jan 2014 04:33
Processing EXIF Data
16 Dec 2013 05:13
Updated Comrades Winners Chart
14 Dec 2013 03:42
Contour and Density Layers with ggmap
14 Dec 2013 05:45
Amy Cuddy: Your body language shapes who you are
27 Nov 2013 02:00
Deriving a Priority Queue from a Plain Vanilla Queue
26 Nov 2013 05:48
Implementing a Queue as a Reference Class
24 Nov 2013 12:18
Iterators in R
14 Nov 2013 04:20
Introduction to Fractals
4 Nov 2013 05:37
Percolation Threshold: Including Next-Nearest Neighbours
1 Nov 2013 11:26
Percolation Threshold on a Square Lattice
30 Oct 2013 05:38
Plotting Times of Discrete Events
19 Oct 2013 09:01
Mounting a sshfs volume via the crontab
6 Oct 2013 06:28
Top 250 Movies at IMDb
3 Oct 2013 05:23
Flushing Live MetaTrader Logs to Disk
18 Sep 2013 04:26
Clustering the Words of William Shakespeare
10 Sep 2013 11:27
MetaTrader Time Zones
9 Sep 2013 02:43
Text Mining the Complete Works of William Shakespeare
5 Sep 2013 11:41
Presenting Conformance Statistics
27 Aug 2013 11:33
The Wonders of {foreach}
25 Aug 2013 10:17
Fitting a Model by Maximum Likelihood
18 Aug 2013 04:57
Correlations with Uncertainty: Classical Solution
13 Aug 2013 01:40
Correlations with Uncertainty: Bootstrap Solution
11 Aug 2013 09:50
Finding Your MetaTrader Log Files
8 Aug 2013 03:33
A Chart of Recent Comrades Marathon Winners
30 Jul 2013 03:54
Comrades Marathon Inference Trees
19 Jul 2013 07:55
Optimising a Noisy Objective Function
16 Jul 2013 05:07
Compiling Indicators and Expert Advisors
25 Jun 2013 06:41
Are Green Number Runners More Likely to Bail?
22 Jun 2013 03:07
The Green Number Effect
18 Jun 2013 02:25
Age Distribution of Comrades Marathon Athletes
18 Jun 2013 11:06
Medal Allocations at the Comrades Marathon
9 Jun 2013 05:53
Comrades Marathon Attrition Rate
7 Jun 2013 06:58
Analysis of Cable Morning Trade Strategy
29 May 2013 11:20
Balanced Data with {MatchIt}
23 May 2013 03:08
xkcd Style Bubble Plot
23 May 2013 12:12
Swing Alert Indicator
23 May 2013 03:53
Package {party}: Conditional Inference Trees
21 May 2013 11:13
Plotting categorical variables
20 May 2013 01:08
Plotting numerical variables
18 May 2013 10:38
Descriptive Statistics
18 May 2013 09:53
Categorical Variables
12 May 2013 08:14
Loading Data from a Tab Delimited File
12 May 2013 07:48
Support & Resistance Indicator
6 May 2013 08:56
Locations of Geosynchronous Satellites
16 Apr 2013 02:16
No matching items