Skip to content

Learn to code

December 2, 2023
December 8, 2014

Learn how to code

using Google effectively is very important

learning#Google Search
learn-to-code-kids
writing-good-code

computer-fundamentals
compiler

Learn to Code the Slow Way | Boot.dev
Why You Should Learn To Program the HARD WAY - YouTube
The BEST Way To Become A Software Engineer - YouTube

Code Cartoons
Home - The Renegade Coder
Devhints — TL;DR for developer documentation
Hacker Noon

Developer Roadmaps - roadmap.sh
kamranahmedse/developer-roadmap: Interactive roadmaps, guides and other educational content to help developers grow in their careers.

Programming Languages To Learn In 2020 To Boost Your Career As A Software Developer - DEV Community 👩‍💻👨‍💻
Best GitHub learning repositories for developers

Coding vs Programming 軟體工程師在 編碼 or 編程? | 5 Differences between Coding and Programming【電腦說人話】 - YouTube
Coding vs Programming is like typing vs writing.

Programming Literacy

Honeypot - YouTube tech documentaries
Honeypot Talks - YouTube

Programming Literacy — JavaScript Scene — Medium
Programming Literacy

Mitch Resnick: Let's teach kids to code - YouTube
Why development teams are adopting GraphQL? - DEV Community 👩‍💻👨‍💻
Computational Thinking - YouTube
"Uncle" Bob Martin - "The Future of Programming" - YouTube
How To Think Like A Programmer - YouTube programming is more thinking than coding

The Joy of Software Development
Software is a superpower
Polyglot Programming and the Benefits of Mastering Several Languages
Programming Languages That Developers Need to Learn All the Time | by Shalitha Suranga | Jan, 2022 | Level Up Coding

How To Learn A New Programming Language - YouTube

How to learn a new language quickly - Je suis un dev
How To Learn a New Programming Language Fast - Better Programming - Medium
How To Learn Any New Programming Language Quickly - Better Programming - Medium
How to Learn to Code: A Practical Guide For Beginners | by TinkerHub Foundation | TinkerHub | Medium | TinkerHub
Please do learn to code — Free Code Camp
Moving Past Tutorials: a course on problem solving for programmers - DEV Community 👩‍💻👨‍💻
How to solve any programming problem? - DEV Community 👩‍💻👨‍💻
ryanhanwu/How-To-Ask-Questions-The-Smart-Way
10 Signs You Will Suck at Programming | by Jonathan Bluks | Noteworthy - The Journal Blog

Learn less and achieve more | Better Programming building T-shaped knowledge
Programmers Should Learn How to Learn | by Can Balkaya | Better Programming
6 Reasons You Should Learn to Code Through Projects - Not Courses
8 Mistakes Every Amateur Programmers Make
10 Self-Taught Programmers Who Became Full-Time Developers | by Angelica Dietzel | Better Programming
Play the long game when learning to code. - Stack Overflow Blog

IT Archetypes
Developer Roadmaps

i-programmer.info
GeeksforGeeks | A computer science portal for geeks
Home • DEVCLASS
Web Development & Programming Tutorials | Packt Hub

5 Commonly Used Idioms in the Tech Industry | by Karina Chow | Jul, 2021 | Level Up Coding

Sourcegraph - Universal Code Search
10 Sourcegraph Search Tricks for Open Source Contributors and Maintainers - DEV Community

10 Free Programming Books You Should Read in 2018 - Tutorialzine
Learn to Code: 13 Tips that Could Save You Years of Effort — JavaScript Scene — Medium
29 Behaviors That Will Make You An Unstoppable Programmer — Medium
30 Things I Wish I Knew When I Started Programming - Better Programming - Medium

Wearable Computers - YouTube I'm quite touched by Tara being able to hear again

Andy Sterkowitz - YouTube on self-taught programmers

On Developers

1000+ Free Developer Certifications

Computer Science isn't programming! // How to become a Master Programmer // Featuring Dr Chuck - YouTube

Great Developers Never Stop Learning - Towards Data Science
The Powerful Differences Between Good and Great Programmers.
The Marks of a True Senior Developer - Better Programming - Medium
The Differences Between a Junior, Mid-Level, and Senior Developer
How to Go from Junior to Senior Programmer - Level Up Coding
Why developers like to code at night | Opensource.com
Coding vs Programming 軟體工程師在 編碼 or 編程? | 5 Differences between Coding and Programming【電腦說人話】 - YouTube

Why New Software Engineers Have it Hard - YouTube
A Jr Dev For Life?? | Prime Reacts - YouTube

Don't learn one framework, instead learn the concepts and patterns behind all of them – and the differences that can help you choose the right tool for the job.

No framework or library is a silver bullet. But the right choice can save you a lot of hassle.

Naming Things

naming-things

Problem sets

LeetCode - The World's Leading Online Programming Learning Platform
haoel/leetcode: LeetCode Problems' Solutions
Leetcode Patterns better ordering
How to Solve Leetcode Problems With Python One-Liners
NeetCode - YouTube
How to use Leetcode in 2020 - YouTube

Codeforces

100DaysOfCode Official Website | 100DaysOfCode

Advent of Code

Advent of Code
Learning Rust via the Advent Of Code - Part 1 - DEV Community 👩‍💻👨‍💻 2019
Advent of Code: Solving Your Puzzles With Python – Real Python

A Review of the Zig Programming Language (using Advent of Code 2021) :: Neil Henning
My Zig Experience | Prime Reacts - YouTube

Literate Programming

Literate programming - Wikiwand
Literate Programming
Why Literate Programming Might Help You Write Better Code – The New Stack

Eve An IDE like Medium, not Vim
Literate Programming and Eve

Goal of Software Development

Sustainably minimize lead time to business impact.

If you are not embarrassed with the first version of your software, you waited too long to ship.

Complexity Is Outside the Code

The collapse of complex software | Read the Tea Leaves

Jared Spool's answer to Should I focus on a good user experience, or push something out quickly? - Quora

You have to know (much) more than the code you're writing:
The Law of Leaky Abstractions – Joel on Software

Deciphering Glyph :: Faster discussion with user is crucial
“If I had asked people what they wanted, they would have said faster horses.”

Ninety-ninety rule - Wikiwand

A Great JavaScript Side Project is your Most Important Asset

Iterative Improvement

  1. do it
  2. do it right
  3. do it better

Code Analysis

cyber-security#Static Analysis/Source Code Analysis

Moose
Humane assessment

Python Tutor - Visualize Python, Java, JavaScript, TypeScript, Ruby, C, and C++ code execution

XAMPPRocky/tokei: Count your code, quickly.
AlDanial/cloc: cloc counts blank lines, comment lines, and physical lines of source code in many programming languages.

Code Complexity

Cyclomatic Complexity
Halstead Metrics -> Maintainability Index

Profiling

Flame Graphs
Creating a better flamegraph visualization
speedscope - Interactive Flamegraph Explorer

Linux perf Examples
Yet another reason your docker containers may be slow on EC2: clock_gettime, gettimeofday and…
Standard library header - cppreference.com
C++11 timing code performance | Solarian Programmer

"Performance Matters" by Emery Berger - YouTube Layout biases measurement Mytkowicz et al. (ASPLOS'09)
Stabilizer: randomizes layouts
Causal Profiler (coz)

API

Fluent API

Fluent interface - Wikiwand
FluentInterface

JavaScript like a Boss: Understanding Fluent APIs — SitePoint
Chain Your JavaScript Methods Like a Boss with Fluent APIs
fluent-ffmpeg/node-fluent-ffmpeg: A fluent API to FFMPEG (http://www.ffmpeg.org)

Fluent API - C# Refresh

ABI

Binary-code compatibility - Wikiwand
Calling convention, what register of the CPU are used

Idiot's Guide to ABI Versioning - 250bpm

20 ABI (Application Binary Interface) breaking changes every C++ developer should know

do you know how "return" ACTUALLY works? (are you SURE?) - YouTube

Pointer to implementation

c++ - Why should the "PIMPL" idiom be used? - Stack Overflow

Opaque pointer - Wikiwand
PImpl - cppreference.com
PImpl Idiom in C++ with Examples - GeeksforGeeks
Bartek's coding blog: The Pimpl Pattern - what you should know
Pimp My Pimpl | -Wmarc

Learning Resources

mooc

Find the Best Coding Tutorials & Courses - Learn to Code | gitconnected
50+ Best Places to Learn Programming Language & Coding For Absolutely Free
Learn Programming – Free Software Development Courses for Beginners

Khan Academy targets younger students, provides university courses, more academic
edX | Free online courses from the world's best universities
Coursera provides university courses, many can be audited for free
Udemy Online Courses - Learn Anything, On Your Schedule More practical paid content, some free contents

World's #1 Digital Cloud Certification Course & Training Provider — A Cloud Guru
Lesson Directory | Programming Historian
Learn How to Code - Find Coding Tutorials | gitconnected
Tech Deals
Cloud Assessments
MIT OpenCourseWare | Free Online Course Materials
Category: Computer Science - VideoLectures.NET
Manual | Most Popular HTML, CSS, Javascript Tutorials On The Planet
Virtual University ~ Free and Low-cost Web Design and Programming Courses
code school some courses are free
Tutorials for ... and many more latest technologies
reSRC ·
No Excuse List
Learn X in Y Minutes: Scenic Programming Language Tours
Free Online Learning at GCFLearnFree
Learn to Code and Help Nonprofits | Free Code Camp
VideoLectures.NET - VideoLectures.NET
Share and Discover the best programming tutorials and courses online | Hackr.io
KIRUPA
Educative: Interactive Courses for Software Developers snippets

Udemy Tech - YouTube
edureka! - YouTube
InfoQ - YouTube MarakanaTechTV/NewCircle now part of InfoQ
in28minutes - YouTube
Skills Matter - YouTube
Derek Banas - YouTube
ArjanCodes - YouTube mostly Python

Code to the Moon - YouTube mostly Rust
SimonDev - YouTube web 3D, web performance
fasterthanlime - YouTube
ThePrimeagen - YouTube
ThePrimeTime - YouTube
TechWorld with Nana - YouTube

strager - YouTube C++, Rust
Low Level Learning - YouTube low level, security
Dreams of Code - YouTube Rust, Python, system
Jacob Sorber - YouTube C, embedded system
Dave's Garage - YouTube C, Windows C, IoT

Topic:Computer programming - Wikiversity
10 Useful Sites for Learning How to Code
45 of The Best Places to Learn to Code For Free
Quincy Larson's answer to Are there good YouTube channels that teach programming languages? - Quora

Learn. Build. Grow. Together.
Learn With Jason - YouTube live coding

Learn | Kaggle

What are the best resources (sites, books or tutorials) for learning programming? - Quora
Recommended Reading for Developers
Students - Guide to Technical Development - Google Careers
What tech talks should every software engineer watch? - Quora
Four tips for learning how to program – Signal v. Noise

vhf/free-programming-books

Free eBooks | Manning

Free Learning - Free Programming eBooks from Packt
igbt6/Packt-Publishing-Free-Learning: Scripts that automatically claim and download free daily eBooks from https://www.packtpub.com/packt/offers/free-learning

I also have bundles in Fanatical and Humble Bundle

Mostly paid contents:
Learn by Doing - Code School

Kata

CodeKata

Learn JavaScript by doing it

🎙New Rustacean Bonus 7: Katas—or, learning by doing

Software Development Process

Plain Text

unicode

The Unreasonable Effectiveness Of Plain Text - YouTube ❗!important, plain text is easy to maintain and scalable, manage with git repo

Loren Ipsum

Lorem ipsum - Wikiwand

malevole - Text Generator
Hipster Ipsum – Artisanal filler text for your project.
FUCK LOREM IPSUM

Lorem Ipsum - All the facts - Lipsum generator
professional lorem ipsum generator for typographers
亂數假文產生器 - Chinese Lorem Ipsum

Lokaltog/baba: Grammar designer application which exports AMD/CommonJS/browser-compatible garbage text generators.
Lokaltog/git-man-page-generator: Git man page generator.

Phone number checking

E.123 - Wikiwand
E.123 :Notation for national and international telephone numbers, e-mail addresses and web addresses
E.164 - Wikiwand
E.164 :The international public telecommunication numbering plan
What is E.164? - Twilio

google/libphonenumber: Google's common Java, C++ and JavaScript library for parsing, formatting, and validating international phone numbers.

While libphonenumber has a JS port (generated by Closure), this library is smaller.
Nikolay Kuchumov / libphonenumber-js · GitLab
libphonenumber-js

Smaller still, look up the ISO 3166-1 alpha-2 country code and use the length/regex directly from
https://gitlab.com/catamphetamine/libphonenumber-js/-/blob/master/PhoneNumberMetadata.xml

React Phone Number Input

Country Code

ISO 3166-1 - Wikiwand
ISO 3166-1 alpha-2 - Wikiwand
ISO 3166-1 alpha-3 - Wikiwand

wooorm/iso-3166: ISO 3166 (standard for country codes and codes for their subdivisions)

File Template/Code Generation

Ned Batchelder: Cog
designed to be embedded in other files
Python Success Stories | Python.org
Nocog 1.0.2
Cookie - A Template-Based File Generator for Projects

Jinja — Jinja Documentation Python
mattrobenolt/jinja2-cli: CLI for Jinja2
kolypto/j2cli: Jinja2 Command-Line Tool, reworked
Shinto CLI: Another Jinja2 CLI Package · sudo ISL j2cli + globbing + fixes
Jinja advantages and disadvantages
Overview | Jinja Compat Tests

welcome to Mako! Python

Hygen | Hygen

{{ mustache }}
mustache(1) - Mustache processor Ruby CLI
janl/mustache.js: Minimal templating with {{mustaches}} in JavaScript
Command line tool to render a mustache template with a json context file with 'Mu' package

Eta | Eta EJS-like, in TypeScript

LiquidJS

BorisMoore/jsviews: Interactive data-driven views, MVVM and MVP, built on top of JsRender templates
BorisMoore/jsrender: A lightweight, powerful and highly extensible templating engine. In the browser or on Node.js, with or without jQuery.

dust
mahmoud/ashes: ⚱️ Lightweight, self-contained templating for Python 2 and 3, a la Dust templates

template - The Go Programming Language
Used in many Go application for formatting output, e.g. docker, kubectl

Jsonnet - The Data Templating Language JSON extension that can output multiple files
google/jsonnet: Jsonnet - The data templating language
heptio/vscode-jsonnet: (Archived) Jsonnet support for Visual Studio Code

Computer Science

Map of Computer Science - YouTube
prakhar1989/awesome-courses: List of awesome university courses for learning Computer Science!

CS 242: Programming Languages, Fall 2019 with Rust

Computer Mathematics, AI and Functional Programming

Introduction to Python Programming | Udacity
Design of Computer Programs: Programming Principles - Udacity
Coursera -- Computer Science 101
Learn to Program: The Fundamentals - University of Toronto | Coursera
Learn to Program: Crafting Quality Code - University of Toronto | Coursera
Programming Languages - University of Washington | Coursera
Fundamentals of Computing Certificate | Coursera
Runestone Interactive
Catalog of Online Courses | Harvard University

Github repos for learners
ossu/computer-science: Path to a free self-taught education in Computer Science!
humanwhocodes/computer-science-in-javascript: Collection of classic computer science paradigms, algorithms, and approaches written in JavaScript.
Teach Yourself Computer Science
Think C++
Think Python: How to Think Like a Computer Scientist Python 2
How to Think Like a Computer Scientist — How to Think Like a Computer Scientist: Learning with Python 3
CS Principles: Big Ideas in Programming — Runestone Interactive Overview

How Aristotle Created the Computer - The Atlantic

Papers We Love presentation on computer science papers

Time/Computational Complexity

Computational complexity theory - Wikiwand
Amortized analysis - Wikiwand
Time Complexities Of Python Data Structures - FinTechExplained - Medium

Understand Big O notation in 7 minutes - Je suis un dev
Algorithms for Dummies (Part 1): Big-O Notation and Sorting - Adrian Mejia’s Blog
bigoposter/bigoposter.pdf at master · ro31337/bigoposter
Big O myths busted! (Time complexity is complicated) - YouTube time vs memory trade-off; (SIMD)linear search beating binary search

P vs. NP and the Computational Complexity Zoo - YouTube
P vs. NP - The Biggest Unsolved Problem in Computer Science - YouTube
What Computers Can't Do - with Kevin Buzzard - YouTube P vs. NP
Computer Scientists Prove Certain Problems Are Truly Hard | Quanta Magazine
The Secret Link Between Thousands of Unsolved Math Problems - YouTube

Halting problem

Halting problem - Wikiwand
Theory of computation | Halting Problem - GeeksforGeeks

The History of Undecidability - YouTube
The Most Difficult Program to Compute? - Computerphile - YouTube
Ackermann Follow Up - Computerphile - YouTube
Turing & The Halting Problem - Computerphile - YouTube
Cause a contradiction if self-referencing

How This One Question Breaks Computers - YouTube
The Halting Problem - An Impossible Problem to Solve - YouTube

Architecture Design

move to design-patterns?

algorithm
design-patterns
microservice

Software Architecture - The Difference Between Architecture and Design
Software Design and Architecture | Coursera
Minimum Viable Architecture • Randy Shoup • YOW! 2022 - YouTube

The Architecture of Open Source Applications
The Rule of Three
Programming Should Be More than Coding
In the Loop – CEO Quest Insights – Medium

SREcon19 Europe/Middle East/Africa - Advanced Napkin Math: Estimating System... - YouTube
sirupsen/napkin-math: Techniques and numbers for estimating system's performance from first-principles

Architecture: The Stuff That's Hard to Change - Dylan Beattie - YouTube

  1. determine user's needs
  2. meet those needs
  3. within economic and technologincal constraints

What’s the Best Backend for React? 5 Options to Choose From | Boot.dev note on decoupled architecture

Beautiful Structure
Systems Engineering - YouTube
CodeOpinion - YouTube

System Design for Beginners Course - YouTube 1.5 hours

CppCon 2014: Mike Acton "Data-Oriented Design and C++" - YouTube
A Practical Guide to Applying Data-Oriented Design Zig

Clean Coder Blog
Clean Architecture, the right way - DSC VIT Vellore - Medium
The Principles of Clean Architecture by Uncle Bob Martin - YouTube
The Clean Architecture | 8th Light ❗!important
Applying The Clean Architecture to Go applications » The Log Book of Manuel Kiessling
Clean architectures in Python: a step-by-step example - The Digital Cat
Software Architecture: The 5 Patterns You Need to Know - DZone Microservices
Clear Code – How to Write Code That Is Easy to Read
Enterprise Programming Tricks For Clean Code - YouTube 56:08

Making Architecture Matter - Martin Fowler Keynote - YouTube
The Software Architecture Chronicles – @herbertograca

Bring questions. Build answers. - bar.foo - Google how Google solves technical problems
BeckDesignRules

缓存更新的套路 | | 酷 壳 - CoolShell

C4 Model

The C4 model for visualising software architecture
Visualise, document and explore your software architecture - Simon Brown - YouTube

4C'sDescription
ContextA high-level diagram that sets the scene; including key system dependencies and people (actors/roles/personas/etc). Context diagrams are standard in software engineering (even if not used often).
ContainerA container diagram shows the high-level technology choices, how responsibilities are distributed across them and how the containers communicate.
ComponentFor each container, a component diagram lets you see the key logical components and their relationships.
Classes (or Code)This is optional and is the lowest level of detail.

Read The Art of Visualising Software Architecture | Leanpub

Structurizr
Structurizr - Help - Diagrams as text
structurizr/cli: A command line utility for Structurizr.
structurizr/dsl: Structurizr DSL

1. C4 Lightweight Software Architecture Description Method — The Hitchhiker's Guide to PlantUML documentation

arc42

arc42.org
arc42 - software architecture GitHub org

Low Latency design

Concord, sequencer in trading system

Signals and Threads | State Machine Replication, and Why You Should Care
An Introduction to the Sequencer World - Electronic Trading Technology
Assigning timestamp and sequence number in unreliable multicast channels
Aria is a framework to run apps in similar design but abstracts away the server setup

Conway's Game of Life

Conway's Game of Life - Wikiwand
Literate Game of Life

Implementing Life - Rust and WebAssembly Pattern matching on cell and neighbour's states

Let’s BUILD a COMPUTER in CONWAY's GAME of LIFE ⠠⠵ - YouTube

Project Management

How to Write a README
revolunet/node-readme
matiassingers/awesome-readme: A curated list of awesome READMEs

A crash course on writing a better README – Hacker Noon
Make a README

Linear – A better way to build products
Checklist for your new Open Source JavaScript Project

How to present to management: A guide for developers and engineers | InfoWorld

Project template

Verb by assemble
verbose/verb
verbose/readme-includes
jonschlinkert/time-stamp (example)

bevry/projectz: Stop wasting time maintaining your project's readme and package files!
bevry/base project base files

mcollina/generify: A reusable project generator

Rich-Harris/degit: Straightforward project scaffolding

Changelog

Manually curated

Keep a Changelog
#127: Keep a CHANGELOG with Olivier Lacan - Changelog

Automated

First of all get your commit message right:
Commitizen by commitizen
commitizen/cz-cli: The commitizen command line utility.
conventional-changelog/angular.md
angular.js/DEVELOPERS.md at master · angular/angular.js Git Commit Guidelines

Welcome | Legit (Git Workflow for Humans)
Get Legit with Git (and GitHub): The Art of the Commit Message - The New Stack

changesets/changesets: 🦋 A way to manage your versioning and changelogs with a focus on monorepos

Conventional Commits
Conventional Commit Messages
qoomon/git-conventional-commits: Git Conventional Commits Util to generate Semantic Version and Markdown Change Log and Validate Commit Messag

Generate:
clog-tool/clog-cli: Generate beautiful changelogs from your Git commit history
rvagg/changelog-maker: A git log to CHANGELOG.md tool
conventional-changelog/standard-version: Replacement for npm version with automatic CHANGELOG generation
Writing Your Own Changelog Generator with Git - Better Programming - Medium

# build success
git tag NEW_RELEASE_TAG
git log CURRENT_RELEASE_TAG NEW_RELEASE_TAG > CHANGELOG
# retag it as current release
git tag -f CURRENT_RELEASE_TAG NEW_RELEASE_TAG
git push --follow-tags

Signal Processing

Circles Sines and Signals - Introduction

Level of Abstraction

We are seeing a trend that a high level language (the source code input by a programmer) is transpiled to a core set of features/primitives (e.g. MIR of Rust, asm.js of JavaScript), then the intermediate representation is further compiled by LLVM, which then compiles to the machine code of specific architecture to make the code portable.

Language specific optimization can be added when parsing the source code to intermediate representation. It also helps simplify the code for LLVM and can hint LLVM to make more optimized code.

Introducing MIR - The Rust Programming Language Blog


Programming Languages

Following is are lists of learning resources for the programming languages I'm interested in.

c-sharp
c-lang
flutter#Dart
go-lang
java
javascript-notes
julia
nodejs-notes
swift-lang
nim-lang
php-lang
python-notes
regex
rust-lang
web-dev
v-lang
zig-lang

HOPL Online Historical Encyclopaedia of Programming Languages
Programming Languages - Hyperpolyglot
C isn't a programming language anymore • The Register
you must speak C when communicating with kernel

Context Free - YouTube on programming languages

PyBites Platform | Real World Python Exercises

Riju
radian-software/riju: ⚡ Extremely fast online playground for every programming language.

exercism.io Koans of various languages
About the new site | Exercism

Microsoft Reactor | Microsoft Developer
neopragma/online-learning-resources: Online resources for self-study in software-related topics and skills

Rosetta Code
Programming Languages | Hammer Principle
Coderland: Cloud application development tutorials from Red Hat Developer

Learn X in Y Minutes: Scenic Programming Language Tours
Learn in One Video - YouTube

a-z of programming languages - News, Features, and Slideshows - Computerworld

🚀 Demystifying memory management in modern programming languages | Technorage

The Computer Language Benchmarks Game
Benchmarks for programming languages and compilers, Which programming language or compiler is faster
Evaluating Developer eXperience of a programming language - DEV Community 👩‍💻👨‍💻
Ask Ars: Why are some programming languages faster than others? – Ars Technica
Ranking Programming Languages by GitHub Users
The state of Developer Ecosystem in 2019 Infographic
These Modern Programming Languages Will Make You Suffer | by Ilya Suzdalnitski | Better Programming | Dec, 2020 | Medium

Of the emerging systems languages Rust, D, Go and Nim, which is the strongest language and why? - Quora
One Program Written in Python, Go, and Rust – Nicolas Hahn
Is TypeScript (NodeJS) Faster than Go?? | A server comparison - YouTube
Go is faster than Rust??! Go vs Rust vs TypeScript Servers (as a scientist) - YouTube
一张主流编程语言的变迁图,讲清程序员迁移模式

Libraries - The Open Source Discovery Service
free-courses/free-courses.github.io: Free Programing Courses list

The Art of Code - Dylan Beattie - YouTube
Game of Life can be used to build logic gates
Quines
rockstar : home

Quine (computing) - Wikiwand a program that prints itself

Abstract Syntax Tree (AST)

AST explorer
fkling/astexplorer: A web tool to explore the ASTs generated by various parsers.
AST Explorer · Scalameta

Python AST Explorer
Read JavaScript Source Code, Using an AST ← Alligator.io

Language Server Protocol/LSP

Langserver.org
Official page for Language Server Protocol
Microsoft-backed Language Server Protocol strives for language, tools interoperability | InfoWorld
Microsoft/language-server-protocol: Defines a common protocol for language servers.
Protocol to abstract editor from specific language.

Esolang

Esoteric programming language - Wikiwand
Esolang, the esoteric programming languages wiki
Esoteric.Codes: Esolangs, Esoteric Programming Styles, Code Art, Code Poetry, more...

A Brief Introduction to Esoteric Programming Languages - YouTube
A Brief Introduction to Esoteric Languages • Hillel Wayne
Strange Computer Languages: A Hacker’s Field Guide | Hackaday

Emojicode

[JSFuck - Write any JavaScript with 6 Characters: !+](https://jsfuck.com/)
[aemkei/jsfuck: Write any JavaScript with 6 Characters: !+](https://github.com/aemkei/jsfuck)
JavaScript Is Weird (EXTREME EDITION) - YouTube

Learning to code "Hello, World" in CURSED languages 😰 - YouTube
The Perfect Programming Language - YouTube

Assembly

reverse-engineering#Binary Analysis/Malware Analysis/Reverse Engineering

x86 assembly language - Wikiwand
x86 calling conventions - Wikiwand

Intel® 64 and IA-32 Architectures Software Developer Manuals

Registers in x86 assembly | Infosec Resources
parameters: rdi, rsi
return value: rax (eax for the lower 32 bits, ah/al for the higher and lower bytes)
naming: r - 64 bits; e - 32 bits; no prefix - 16 bits; h/l suffix - 8 bits

Intro to Assembly and Assemblers | Linux.org
Gcc: Some Assembly Required | Hackaday
Linux: Assembly Required | Hackaday

Assembly Programming Tutorials - YouTube

Dave's Garage
Hello, Assembly! Retrocoding the World's Smallest Windows App in x86 ASM - YouTube

Assembly, System Calls, and Hardware in C++ - David Sankel - CppNow 2023 - YouTube ❗!important

Creel - YouTube
Modern x64 Assembly - YouTube

Program and Data Representation
x86-64bit-ccc-chapter.pdf

Linux x86 Program Start Up

Assembly Programming Tutorials - YouTube

you can become a BIG BRAIN assembly programmer in only 10 minutes. (yes, YOU!) - YouTube
you can learn assembly QUICKLY using the rosetta stone technique (arm64 breakdown) - YouTube

flat assembler (FASM)

"interpreted language" that outputs assembly code

flat assembler
Web in Native Assembly (Linux x86_64) - YouTube

Beef

The Beef Programming Language
beefytech/Beef: Beef Programming Language

BEEF -- Ideal Game Programming Language? - YouTube

Bosque

Microsoft/BosqueLanguage: The Bosque programming language is an experiment in regularized design for a machine assisted rapid and reliable software development lifecycle.
Microsoft debuts Bosque – a new programming language with no loops, inspired by TypeScript • The Register

Crystal

The Crystal Programming Language - A compiled language with Ruby like syntax and type inference
Crystal Programming Language
Crystal for Rubyists
README - github.com/crystal-lang/crystal API doc

An Introduction to Crystal: Fast as C, Slick as Ruby - via @codeship | via @codeship
Crystal from a Rubyist's Perspective - via @codeship | via @codeship

veelenga/awesome-crystal: A collection of awesome Crystal libraries, tools, frameworks and software

Pacakge Repo

CrystalShards
Kemal Lightning Fast, Super Simple web framework written in Crystal programming language. Inspired by Sinatra.

Carbon

Google's langauge for replacing C

carbon-language/carbon-lang: Carbon Language's main repository: documents, design, implementation, and related tools. (NOTE: Carbon Language is experimental; see README)
Carbon (programming language) - Wikiwand

Carbon Language: An experimental successor to C++ - Chandler Carruth - CppNorth 2022 - YouTube
Carbon Language Successor Strategy: From C++ Interop to Memory Safety - Chandler Carruth - CppNow 23 - YouTube ❗!important, 58:21 bugs, safety and vulnerability
Carbon Lang… The C++ killer? - YouTube
Carbon Lang First Look & Crash Course | Google's C++ Successor - YouTube

gingerBill, creater of Odin
Carbon Language - First Impressions from the Creator of the Odin Programming Language - YouTube
Carbon Language - Who is it even for? - YouTube
Carbon Language - Final Conclusions (It's Probably Not For You) - YouTube

D

Home - D Programming Language
History Of Development Model For D - D Wiki
The D Language: A sweet-spot between Python and C – experimentalworks
Lessons Learned: Writing a filesystem in D – experimentalworks

Find, Use and Share DUB Packages - DUB - The D package registry

Programming in D - Programming in D
D Programming Tutorial

Why didn't D language become mainstream comparing to Golang? - Quora
Why didn't the D language become mainstream as Golang has ? : programming

Dark

Dark combined language, editor, and infrastructure

Elm -> ReScript -> F#

Leaving OCaml
Why Dark didn't choose Rust
Dark's new backend will be in F#
How Does HashiCorp Vault Work with Kubernetes Secrets? – The New Stack

Paul Biggar - Dark Lang and Tablecloth powered by Reason - YouTube compares OCaml and Elm, overview of the ReasonML ecosystem

Dex

Google Dex language simplifies array math for machine learning | InfoWorld
https://google-research.github.io/dex-lang/tutorial.html

Lever

cheery/lever: A programming language in the Perl/Python/Ruby group

Lisp

defmacro - The Nature of Lisp
What Made Lisp Different
Build Your Own Lisp

MIT/GNU Scheme - GNU Project - Free Software Foundation
Welcome to the SICP Web Site
sarabander/sicp: HTML5/EPUB3 version of SICP

io

io
Io Programming Guide

Odin

C alternative for the joy of programming

Odin Programming Language
odin-lang/Odin: Odin Programming Language
odin-lang/examples: Examples of idiomatic Odin code
Odin/examples/demo at master · odin-lang/Odin single file to demo Odin features

Interview with Odin language creator gingerBill - YouTube
Odinlang Creator Ginger Bill Talks Odin! - YouTube

Space Shooter with SDL2 and Odin Lang - YouTube

Ecosystem

EmberGen: Real-Time Fluid Simulations For Fire, Smoke, And Explosions! uses Odin

Binding to C | Odin Programming Language
Odin Libs · odin-lang/Odin Wiki

graphitemaster/codin: Odin to C compiler
C-Odin. The future of the Odin programming language. - YouTube

Jakt

transpiles to C++ code

SerenityOS/jakt: The Jakt Programming Language

NekoVM

NekoVM
A Comparison Of Neko And Lua
doc:begin [NekoVM]

Objective-C

Learn Objective-C - Code School

OCaml

OCaml - Wikiwand
Welcome to a World of OCaml
Learn OCaml

OCaml - Wikibooks, open books for an open world
How to Think Like a (Functional) Programmer
OCaml Programming: Correct + Efficient + Beautiful — OCaml Programming: Correct + Efficient + Beautiful

Jane Street Tech Blog - Why OCaml?
Open Source | Tarides owner of OCaml

Hello MirageOS World | MirageOS
Deploying MirageOS unikernels using binaries | MirageOS

Packages

opam - opam

Lwt manual ~= promise
Getting Started with Lwt threads | MirageOS

Technology :: Jane Street

Reason

Reason

Perl

The Perl Programming Language - www.perl.org
Learn Perl - learn.perl.org
Learn Perl - www.perl.org

Perl 101 - Index
Introduction to Perl one-liners - good coders code, great reuse
The Effective Perler

The Official RPerl Website
This Perl goes to 11 JIT compiler and Perl 6

R

The language used by data analysts.

R: The R Project for Statistical Computing
Introduction to R Programming | edX

R tutorial: Learn to crunch big data with the R language
R tutorial: How to reshape data in the R programming language | InfoWorld
Useful R functions you might not know | Computerworld
Best R packages for data import, data wrangling & data visualization | Computerworld

The impact of R's dplyr package and its tidyverse companion packages on R's learning difficulty | r4stats.com

rpy2 rpy2 is an interface to R running embedded in a Python process.

Racket

The Racket Language
Packages

Ruby

Ruby Programming Language
RVM- Ruby Version Manager - RVM Ruby Version Manager - Documentation

Tag Archive for "ruby" | Scotch
A Crash Course in Ruby | Scotch
Understanding Ruby Closures | Scotch

RubyGems.org - your community gem host
Ruby on Rails- Download

rbspy docs
rbspy/rbspy: Sampling profiler for Ruby

Val

Val | The Val Programming Language

Meet Val: A New Language Alternative to C++, Rust - The New Stack
Val - The Rust Killer | Prime Reacts - YouTube