TOC
General
- Software Engineering Code of Ethics • IEEE Computer Society
- Jargon File Resources
- How to be a Programmer (archive.org)
- Five-Minute-Task Time Estimate Worksheet
- Twelve Tips for Realistic Scheduling | StickyMinds
- Hacker's Wisdom
- Joel on Software
- GitHub - ossu/computer-science: Path to a free self-taught education in Computer Science!
- Open Source Society University. The OSSU curriculum is a complete education in computer science using online materials.
- Learn to Code — For Free — Coding Courses for Busy People (freecodecamp.org)
- CodeNewbie
- The most supportive community of programmers and people learning to code.
- Computing | Khan Academy
- Stack Overflow
- A collaboratively edited question and answer site for professional and enthusiast programmers.
- Stack Overflow Insights - Developer Hiring, Marketing, and User Research
- ACM Digital Library
- Association for Computing Machinery, The Digital Library, The Guide to Computing Literature.
- The Open Group Base Specifications Issue 7
- IIEEE Std 1003.1™-2017 (Revision of IEEE Std 1003.1-2008)
- POSIX.1-2017 is simultaneously IEEE Std 1003.1™-2017 and The Open Group Technical Standard Base Specifications, Issue 7.
- POSIX.1-2017 defines a standard operating system interface and environment, including a command interpreter (or “shell”), and common utility programs to support applications portability at the source code level. POSIX.1-2017 is intended to be used by both application developers and system implementors.
- The UNIX System
- The Single UNIX Specification, Version 3
- Free Standards Group
- The Free Standards Group is an independent, nonprofit organization dedicated to accelerating the use of free and open source software by developing and promoting standards.
- Overview of the SCIT
- WIPO Standing Committee on Information Technologies
- CoRR - Computing Research Repository
- CoRR allows researchers to search, browse and download papers through its online repository. CoRR is available to all members of of the community at no charge.
- UML
- The Unified Modeling Language™ - UML - is OMG's [Object Management Group] most-used specification, and the way the world models not only application structure, behavior, and architecture, but also business process and data structure.
- Holub Associates: UML Reference Card
- Code Corner
- By Steve Litt at Troubleshooters.Com. Tutorials and links about XML, Perl, PHP, sockets, Python, shell scripts, SQL, prime numbers, PostgreSQL.
- GitHub - danistefanovic/build-your-own-x: 🤓 Build your own `insert technology here`. A curated collection of project-based programming tutorials.
- Koders - Source Code Search Engine
- Learn to code | Codecademy
- Learn to Code and Help Nonprofits | Free Code Camp
- Exercism
- Code practice and mentorship for everyone.
- 99 Bottles — Sandi Metz
- 99 Bottles of OOP is a practical guide to writing cost-effective, maintainable, and pleasing object-oriented code.
- Get Started in Game Development - GameDev.net
- Teach Yourself Programming in Ten Years
- Fachbegriffe der Informatik ;-)
- Besser sehen und arbeiten am Computer (ergonomic-vision.ifado.de)
Algorithms
- Algorithm Implementation - Wikibooks, open books for an open world
- Category:Algorithms - Wikipedia, the free encyclopedia
- Category:Articles with example code - Wikipedia, the free encyclopedia
- Category:Articles with example pseudocode - Wikipedia, the free encyclopedia
- Category:Articles with example C code - Wikipedia, the free encyclopedia
- Dictionary of Algorithms and Data Structures
- The Stony Brook Algorithm Repository
- Allgemeine und spezielle Sortieralgorithmen + Suchalgorithmen
- Informationen und Visualisierungen (Applets) zu ALLEN Sortieralgorithmen (und einigen Suchalgorithmen). Natürlich mit vollständigen Codebeispielen, Laufzeitabschätzungen, Optimierungsvorschlägen, ...
- algorithms, calculations and formulae
- The Institute of Computer Graphics and Algorithms, Vienna University of Technology
- Intro to Algorithms: CHAPTER 31: MATRIX OPERATIONS (archive.org)
- Matrix Reference Manual
- Levenshtein distance - Wikipedia
- Levenshtein Distance
- By Michael Gilleland, Merriam Park Software.
- Algorithm Implementation/Strings/Levenshtein distance - Wikibooks, open books for an open world
- Levenshtein distance - Rosetta Code
- Levenshtein Distance (archive.org) and archive.is
- The "Double-Checked Locking is Broken" Declaration
- Understanding Dijkstra's Algorithm
- Dijkstra’s algorithm is used to solve the single source shortest path.
See also Dijkstra's algorithm - Wikipedia
- Bloom filter - Wikipedia
- Cuckoo hashing - Wikipedia
- Bloom Filter | Brilliant Math & Science Wiki
- Cuckoo Filter | Brilliant Math & Science Wiki
- Raft Consensus Algorithm Unraveled
- Tree traversal - Wikipedia
- Depth-first search - Wikipedia
- Breadth-first search - Wikipedia
- Iterative deepening depth-first search - Wikipedia
- Depth-First Traversal of a Tree Data Structure
- For strictly directed acyclic graphs (DAG), remembering only the next to be visited vertices.
- Breadth-First Traversal of a Tree Data Structure
- For strictly directed acyclic graphs (DAG), remembering only the next to be visited vertices.
Art Patterns
- Design Patterns | Object Oriented Design (oodesign.com)
- Category:Software design patterns - Wikipedia, the free encyclopedia
- Phil’s Data Structure Zoo | Phil
- The Art of Unix Programming
- Hillside.net - Your Patterns Library
- Portland Pattern Repository
- Patterns: Catalog of NonSoftware Examples - AGCS
- Gamasutra - The Art & Science of Making Games
- Essential Math for Games Programmers
- DataCompression.info
- The Memory Management Reference
- Category:Anti-patterns - Wikipedia, the free encyclopedia
Secure Coding
- Software Security for Developers | Red Hat Developer
- Secure Development Guide | secure-development-guide
- The purpose of this guide is to discuss-industry accepted secure development practices specially applied to the open source context. While there are many references and documents freely available on the internet, this guide specifically talks about secure application design and secure development processes and practices.
- Defensive coding guide :: Fedora Docs
- A Guide to Improving Software Security. This document provides guidelines for improving software security through secure coding. It covers common programming languages and libraries, and focuses on concrete recommendations.
- CWE - CWE/SANS Top 25 Most Dangerous Programming Errors
- CERT Secure Coding Standards - Secure Coding - CERT Secure Coding Standards
- INT30-C. Ensure that unsigned integer operations do not wrap - SEI CERT C Coding Standard - Confluence
- INT32-C. Ensure that operations on signed integers do not result in overflow - SEI CERT C Coding Standard - Confluence
- FLP34-C. Ensure that floating-point conversions are within range of the new type - SEI CERT C Coding Standard - Confluence
- Security Engineering - A Guide to Building Dependable Distributed Systems
- Ross Anderson's Security Engineering book.
- SAFECode Publications
- sigstore
- A non-profit, public good software signing & transparency service. Software Supply Chain Security.
UI Design
- OpenUsability
- ... brings Open Source Developers and Usability Experts together.
- interface hall of shame [mirror of iarchitect.com]
- iarchitect.com (Isys Information Architects Inc. (UI design shame and fame)) is dead, but some of these are just too bad to not be shown..
- The Humane Interface - Wikipedia, the free encyclopedia
- The Humane Interface: New Directions for Designing Interactive Systems (ISBN 0-201-37937-6) is a book about user interface design written by Jef Raskin and published in 2000. It covers ergonomics, quantification, evaluation, and navigation.
- Nitpicker / The Humane Interface
- A summary of design rules, Jef Raskin
- [hemmerling] Rapid Software Application and GUI Prototyping
- Penpot - Design Freedom for Teams
- Penpot is the first Open Source design and prototyping platform meant for cross-domain teams.
Source GitHub - penpot/penpot: Penpot - The Open-Source design & prototyping platform
- Pencil Project
- GitHub - evolus/pencil: The Pencil Project's unique mission is to build a free and opensource tool for making diagrams and GUI prototyping that everyone can use.
- fluidIA
- fluidIA is an emerging agile design tool for prototyping rich user interfaces.
Appears to be dead, old source code at github
- quickMockup
- Web mockup tool, with export to Codepen.
- CodePen: Online Code Editor and Front End Web Developer Community
- SoftwarePrototyping.net | Musings on the world of software prototyping and effective design (archive.org)
- Remix Icon - Open source icon library
- Remix Icon is a set of open-source neutral-style system symbols elaborately crafted for designers and developers. All of the icons are free for both personal and commercial use.
- Iconoir | Free Icons
Media
- FreeTechBooks.com - Free computer science and programming books
- This site lists free online computer science books and lecture notes, all of which are freely and legally available over the Internet.
- mic.ro-cosm ebooks
- Free Computer Science Ebooks and Resources - A Link Collection
- oreilly.com -- O'Reilly Media, Inc. -- computer books, software conferences, online publishing
- oreilly.de -- O'Reilly Verlag
- O'Reilly -- Safari Books Online
- Openbooks vom dpunkt.verlag
- CMP's Software Development Media Group
- DDJ - Dr. Dobb's Journal
- ftp.ddj.com / directory
Methodology
- AgileAlliance
- Scrum Development Process
- Extreme Rules
- Extreme Programming: A Gentle Introduction.
- PDF The Practice Of Programming eBook Download Full – eBook Makes
- Practice of Programming - Collected Rules (archive.org)
- by B.W. Kernighan and R. Pike
Mathematical, Numerical and Statistical
- Scientific Computing FAQ: Scientific Computing and Numerical Analysis FAQ (archive.org)
- Mathematica Information Center
- Wolfram Resource Library, MathWorld, ScienceWorld, ...
- Mathtools.net: The technical computing portal for all your scientific and engineering needs. (archive.org)
- The Netlib
- Netlib is a collection of mathematical software, papers, and databases.
- John Burkardt's Home Page
- Scientific Computing Sources in C, C++, Fortran, ...
- cephes
- Astronomy and numerical software source codes
- Stephen L. Moshier's site, also home of the Cephes library
- GSL - GNU Scientific Library - GNU Project - Free Software Foundation (FSF)
- The GNU Scientific Library (GSL) is a numerical library for C and C++ programmers. It is free software under the GNU General Public License.
The library provides a wide range of mathematical routines such as random number generators, special functions and least-squares fitting. There are over 1000 functions in total with an extensive test suite.
- GitHub - rdmpage/graph-template-library: GTL (Graph Template Library) is a STL based library, which provides necessary classes and algorithms for the work with graphs.
- GTL, the Graph Template Library GTL can be seen as an extension of the Standard Template Library STL to graphs and fundamental graph algorithms.
A former project of the University Passau, now dead.
- Numerical Recipes
- Numerical Methods Lecture Notes
- Free C/C++ Sources for Numerical Computation (archive.org)
- Free Numerical, Mathematical and Statistical Libraries and Source Code (thefreecountry.com)
- C++ Financial Algorithms (Financial Numerical Recipes) (archive.org)
- Introduction to Uncertainties (PDF)
- StatLib---Applied Statistics algorithms
- The R Project for Statistical Computing
- Statistical Science Web: Statistical Computing
- Statistical Reference Datasets (StRD)
- The purpose of this project is to improve the accuracy of statistical software by providing reference datasets with certified computational results that enable the objective evaluation of statistical software.
- Semantic Computing Research Group (SeCo) - Eero Hyvönen
- Some papers of Eero Hyvönen on interval computations.
- American Statistical Association Portal :: Statistical Accuracy of Spreadsheet Software - The American Statistician - Volume 65, Issue 4
- This study compares the accuracy of six spreadsheet packages: Excel, Google Docs, Gnumeric, Numbers, OpenOffice Calc, and Quattro Pro.
- Projects · ixion / ixion · GitLab
- Ixion is a general purpose formula parser, interpreter, formula cell dependency tracker and spreadsheet document model backend all in one package.
- Programmer's guide to polynomials and splines
- Weighted arithmetic mean - Wikipedia
- IMDb - Wikipedia
- Here for the old IMDb Rankings, weighted rating, which was a weighted arithmetic mean, W=(R*v+C*m)/(v+m), with W=Weighted, R=average_Rating_of_item, v=votes, m=minimum_votes, C=mean_vote_across_the_whole.
- Ranking Items With Star Ratings: An Approximate Bayesian Approach – Evan Miller
- Bayesian average - Wikipedia
- Bayesian Average Ratings – Evan Miller
- How Not To Sort By Average Rating – Evan Miller
- Deriving the Reddit Formula – Evan Miller
- Max-Planck-Institut für Informatik
- AT&T Labs Research
- Scientific Computing with Free software on GNU/Linux HOWTO
Computer Arithmetic and IEEE 754
- IEEE 754 Notation
- A quick summary of IEEE 754 Notation, easy to understand.
- The Floating-Point Guide - What Every Programmer Should Know About Floating-Point Arithmetic
- Facts for the mere mortals.
- Floating Point Demystified, Part 1
- Josh Haberman
- Floating Point Demystified, Part 2: Why Doesn't 0.1 + 0.2 == 0.3?
- Josh Haberman
- Demystifying Floating Point Precision « The blog at the bottom of the sea
- language agnostic - Is floating point math broken? - Stack Overflow
- Comparing Floating-Point Numbers Is Tricky
- Floating-point arithmetic - Wikipedia
- Of specific interest may be the Accuracy problems section..
- Double-precision floating-point format - Wikipedia, the free encyclopedia
- Numerical Computation Guide
- 2005, Sun Microsystems Studio 11, 819-3693-10, HTML.
- Numerical Computation Guide
- 2005, Sun Microsystems Studio 11, 819-3693-10, PDF.
Better readibility of mathematical formulas.
- What Every Computer Scientist Should Know About Floating-Point Arithmetic
- Appendix D of the Numerical Computation Guide.
- Floating Point Visually Explained
- The IEEE Floating Point Format (ShortRef) (archive.org)
- Introduction to the dark arts of floating point numbers
- rC3 now/here talk material (yet to be done, 2021-12-28)
- Interesting fast trunc() function - Stack Overflow
- IEEE floating point - Wikipedia, the free encyclopedia
- Double-precision floating-point format - Wikipedia, the free encyclopedia
- IEEE Standard 754 Floating-Point
- IEEE 754 Floating Point Converter
- Convert between the decimal representation of numbers (like "1.02") and the IEEE 754 floating point format. See which bits are used when and the lack of decimal precision. Note this is only 32-bit floats.
- IEEE-754 Analysis
- Interactive IEEE-754 floating-point analyzer. Input, storage and rounding of floating-point numbers. This page lets you examine the relationships among binary and decimal numbers and three number formats described by the IEEE-754-2008 floating-point standard.
- IEEE-754 Calculators (old)
- Decimal floating-point, 32-bit and 64-bit hexadecimal representations along with their binary equivalents.
- IEEE-754 References (old)
- Base Convert: IEEE 754 Floating Point
- IEEE 754 Calculator
- This is a little calculator intended to help you understand the IEEE 754 standard for floating-point computation.
And show how 0.1 + 0.2 ≠ 0.3
- Decimal to Floating-Point Converter - Exploring Binary
- Decimal/Binary Converter - Exploring Binary
- CodeGuru Forums - C++ General: How is floating point representated?
- FAQ about some IEEE 754 aspects.
- double - and how to use it - C++ Forum
- This article shows some properties of "double" atithmetic, and what you can and can't do with it.
- Comparing Floating Point Numbers, 2012 Edition | Random ASCII
- Bruce Dawson's reviewed edition of Comparing floating point numbers.
There may be more available in the Floating Point category. See also Float Precision Revisited: Nine Digit Float Portability | Random ASCII
- Correct Decimal To Floating-Point Using Big Integers - Exploring Binary
- How to round binary numbers - JavaScript inDepth
- Floating Point Representation (.ps PostScript file)
- by Michael L. Overton
- 15. Floating Point Arithmetic: Issues and Limitations — Python 3 documentation
- GitHub - vpiotr/decimal_for_cpp: Decimal data type for C++
- If you need something like a fixed point decimal currency type in C++.
- Floating-Point Arithmetic Besieged by “Business Decisions” (PDF)
- Page 7 ff., Values Excel 2000 Displays for Several Expressions, Parentheses in Microsoft’s Excel 2000 spreadsheet can have uncanny powers, by Prof. W. Kahan
- Mindless (PDF)
- How Futile are Mindless Assessments of Roundoff in Floating-Point Computation? by Prof. W. Kahan
- Bug 131588 – SUM algorithm properties
- Gnumeric's thoughts about and approach to the SUM accuracy problem
- Kahan summation algorithm - Wikipedia
- AKA compensation algorithm. Sum with better numerical stability.
- Binary floating point summation accurate to full precision « Python recipes « ActiveState Code
- Python implementation of algorithm from Shewchuk.
- Algorithms for calculating variance - Wikipedia
- Don't use the naïve algorithm..
- Accurately computing sample variance online
- Exploring Binary - Binary Numbers, Binary Code, and Binary Logic
- With some floating point / decimals in-depths.
- Decimal Precision of Binary Floating-Point Numbers - Exploring Binary
- Binary floating point summation accurate to full precision « Python recipes « ActiveState Code
- Allegedly "Completely eliminates rounding errors and loss of significance due to catastrophic cancellation during summation"
- Community Tools
- Floating-point Research Tools
- Tutorial on Floating-Point Analysis Tools
- Herbie: Automatically Improving Floating Point Accuracy
- Find and fix floating-point problems. Herbie detects inaccurate expressions and finds more accurate replacements.
- Publications - Florian Loitsch
- Particulary interesting for
- Printing Floating-Point Numbers Quickly and Accurately with Integers
- The double-conversion implementation
- The Grisu benchmark implementation
Broken links, check its page.
- netlib/fp
- David M. Gay's floating-point conversions in C, locale independent strtod(), dtoa(), g_fmt()
- How strtod() Works (and Sometimes Doesn't) - Exploring Binary
- GitHub - ulfjack/ryu: Converts floating point numbers to decimal strings
- GitHub - fmtlib/fmt: A modern formatting library
- General Decimal Arithmetic
- The problems of binary floating-point can be avoided by using base 10 (decimal) exponents and preserving those exponents where possible. This site describes a decimal arithmetic which achieves the necessary results and is suitable for both hardware and software implementation.
- William Kahan
- Professor Emeritus of Mathematics, and of E.E. & Computer Science
0.1 + 0.2 ≠ 0.3
- Floating Point Demystified, Part 2: Why Doesn't 0.1 + 0.2 == 0.3?
- Floating-point arithmetic - Accuracy problems - Wikipedia
- 0.30000000000000004.com
- As we all know, 0.1 + 0.2 != 0.3
- IEEE 754 Calculator
- This is a little calculator intended to help you understand the IEEE 754 standard for floating-point computation.
And show how 0.1 + 0.2 ≠ 0.3
- Base Convert: IEEE 754 Floating Point
- Decimal to Floating-Point Converter - Exploring Binary
- Floating-point arithmetic may give inaccurate results in Excel
- MS-KnowledgeBase link now redirecting to Floating-point arithmetic may give inaccurate result in Excel - Office | Microsoft Learn
- Understanding Floating Point Precision, aka “Why does Excel Give Me Seemingly Wrong Answers?” - Office Blogs (archive.org)
- Numeric precision in Microsoft Excel - Wikipedia, the free encyclopedia
- Frequently asked questions - Calc: Accuracy problem - The Document Foundation Wiki
- Loss of significance - Wikipedia
- xkcd: Garbage Math
- xkcd: Precision vs Accuracy
Tools
Git
- Git - Fast Version Control System
- Git is a free & open source, distributed version control system designed to handle everything from small to very large projects with speed and efficiency.
- Git FAQ - Git SCM Wiki
- gittutorial(7)
- Git Reference (archive.org)
- Meant to be a quick reference for learning and remembering the most important and commonly used Git commands.
Domain was hijacked by GitHub to redirect to commercial services, hence archive.org.
- Home // Think Like (a) Git
- Git shouldn't be so hard to learn.
- Git Immersion - Brought to you by Neo
- Git Immersion is a guided tour that walks through the fundamentals of Git, inspired by the premise that to know a thing is to do it.
- Git for Computer Scientists
- Quick introduction to git internals for people who are not scared by words like Directed Acyclic Graph.
- Oh My Git!
- An open source game about learning Git!
- Git - Book
- The Pro Git book.
- git ready » learn git one commit at a time
- Dangit, Git!?!
- Git For Ages 4 And Up : Free Download, Borrow, and Streaming : Internet Archive
- Git Magic - Preface
- Git - Texas Instruments Embedded Processors Wiki
- Short instructions to get Git running, even behind a firewall.
- Git User’s Manual (for version 1.5.3 or newer)
- tbaggery - A Note About Git Commit Messages
- Git commit practices your future self will thank you for
- A history of clean commits can be evidence of a lot of things: attention to detail, good work ethic, and genuine investment in the project. What do your Git commits say about you?
- Git Tags
- Welcome to GitGuys.com - The Git Experts | GitGuys - GitGuys
- git simplified?!
- Git from the inside out
- This essay explains how Git works. The essay assumes you understand Git well enough to use it to version control your projects. It focuses on the graph structure that underpins Git and the way the properties of this graph dictate Git’s behavior.
- Stacked Git
- StGit is a Python application providing similar functionality to Quilt (i.e. pushing/popping patches to/from a stack) on top of Git. These operations are performed using Git commands and the patches are stored as Git commit objects, allowing easy merging of the StGit patches into other repositories using standard Git functionality.
- StGit tutorial
- Git - StGit Crash Course
- Interfaces, frontends, and tools - Git SCM Wiki
- Main Page - Git SCM Wiki
- All about Git.
- Pro Git - Pro Git Book
- The website for the Pro Git book, written by Scott Chacon and published by Apress. Here you can find the full content of the book, a blog with tips and updates about Git and the book and open source projects related to Git or referenced in the book.
- Git Merge vs. Rebase: What’s the Diff? – Hacker Noon
- Merging vs. Rebasing | Atlassian Git Tutorial
- Learn to change history with git rebase!
- GitHub - tummychow/git-absorb: git commit --fixup, but automatic
- Learn Git Branching
- Interactive tutorial.
- Git Tutorial: Branching and Merging | Wazi (archive.org)
- A successful Git branching model » nvie.com
- The git-flow Git flow.
- A Rebase Workflow for Git | RandyFay.com
- nvie/gitflow · GitHub
- A collection of Git extensions to provide high-level repository operations for Vincent Driessen's branching model.
- the woes of “git gc –aggressive” (and how git deltas work) « Metalinguistic Abstraction
- Introduction · Tig - Text-mode interface for Git
- Tig is an ncurses-based text-mode interface for git. It functions mainly as a Git repository browser, but can also assist in staging changes for commit at chunk level and act as a pager for output from various Git commands.
- GIT - How to push code to multiple remotes simultaneously - Lintel Technologies Blog
- Basically by using an all remote with several push urls.
- AlBlue’s Blog: git
- Git Tips of the Week.
- AlBlue’s Blog: gerrit
- Nice video in Gerrit Git Review with Jenkins CI Server
- Gerrit Code Review
- Gerrit provides web based code review and repository management for the Git version control system.
- Gerrit Code Review for Git
- Documentation and Tutorial
- gertty : Python Package Index
- Gertty is a console-based interface to the Gerrit Code Review system.
- Welcome to Jenkins CI! | Jenkins CI
- An extensible open source continuous integration server.
- Google authentication for Gerrit and Jenkins - Stack Overflow
- Google deprecated OpenID 2.0 and it will shut down the service in May 2015, replacing it with OAuth2.0 (OpenID connect). This is how Gerrit and Jenkins can be adapted via Apache reverse proxy and mod_auth_openidc.
- How to Git PR From The Command Line – Hacker Noon
- Learn to use email with git!
- Git ships with built-in tools for collaborating over email. With this guide, you'll be contributing to email-driven projects like the Linux kernel, PostgreSQL, or even git itself in no time.
- git-annex
- git-annex allows managing files with git, without checking the file contents into git.
- Git vs Mercurial - WikiVS
- Git - SVN Crash Course
- Git for SVN users.
- freedesktop.org - Software/ooo-build/SVNToGitCheatSheet
- Command cheat sheet for SVN and Git
- GitSvnCrashCourse - Git SCM Wiki
- Git crash course for SVN users.
- Migrate from SVN to Git easily with git-svn | Wazi (archive.org)
- git-svn-tutorial – Parrot
- Converting to git-svn: A collection of links — justin hileman dot info
- Develop with Git on a Google Code Project - Google Open Source Blog
- Actually work with Git on a SVN project, such as AOOo
- Export a Git Project to Google Code - Google Open Source Blog
- Actually work with Git on a SVN project, such as AOOo
- Minimal Readership: svn switch --relocate for a git-svn repo
- If your SVN master was relocated, git-svn will have a hard time; this script could ease the pain.
- HgGit - Mercurial
- This extension adds the ability to work on a Git repository from Mercurial. It also allows using a Git server as a collaboration point for a team with developers using both Git and Mercurial. At the same time, it can also be used to interact with a hg repository using git.
- version control - Git interoperability with a Mercurial Repository - Stack Overflow
- traviscline.com » Using hg-git to work in git and push to hg
- Git pretty — justin hileman dot info
- How to handle a mess.
- Git Behind the Curtain: What Happens When You Commit, Branch, and Merge - DZone DevOps
- A Small Matter of Programming: Painless Merge Conflict Resolution in Git
- Using Meld and adding independent diff views from BASE to LOCAL and BASE to REMOTE file.
- Codeberg.org
- The Non-Profit Collaboration Project. Formerly TeaHub.
- GetItOnCodeberg Badge-Generator
- RobWalt/codeberg-cli: CLI Tool for Codeberg similar to gh and glab - codeberg-cli - Codeberg.org
- How to build a Hugo static site automatically using Drone CI and Codeberg.org
- Forgejo – Beyond coding. We forge.
- Forgejo is a self-hosted lightweight software forge. Easy to install and low maintenance, it just does the job. Brought to you by an inclusive community under the umbrella of Codeberg e.V., a democratic non-profit organization, Forgejo can be trusted to be exclusively Free Software. It is a "soft" fork of Gitea with a focus on scaling, federation and privacy.
- Gitea
- A painless self-hosted Git service. Less resource hungry.
Gitea compared to other Git hosting options - Docs
- gitea/tea: A command line tool to interact with Gitea servers - tea - Gitea: Git with a cup of tea
- Code, test, and deploy together with GitLab open source git repo management software | GitLab
- GitLab unifies issues, code review, CI and CD into a single UI. GitLab offers git repository management, code reviews, issue tracking, activity feeds and wiki’s.
- Useful Git commands | GitLab
- Push Options | GitLab
- for example git push -o merge_request.create
- GLab - A GitLab CLI Tool — GLab documentation
- GLab is an open source Gitlab Cli tool written in Go (golang) to help work seamlessly with Gitlab from the command line. Work with issues, merge requests, watch running pipelines directly from your CLI among other features. Inspired by gh, the official GitHub CLI tool.
- GitHub - zaquestion/lab: Lab wraps Git or Hub, making it simple to clone, fork, and interact with repositories on GitLab
- git + lab = gitlab ; including seamless workflows for creating merge requests, issues and snippets. Wraps hub if present.
- Shivering-Isles / Mirror Bot · GitLab
- Small script to realize pull mirrors in GitLab.
- GitHub · Build software better, together.
- GitHub's SSH key fingerprints - GitHub Docs
- We updated our RSA SSH host key | The GitHub Blog
- GitHub Copilot and open source laundering
- Give Up GitHub: The Time Has Come! - Conservancy Blog - Software Freedom Conservancy
- Give Up GitHub - Software Freedom Conservancy
- GitHub - github/hub: A command-line tool that makes git easier to use with GitHub.
- git + hub = github ; hub is a command line tool that wraps git in order to extend it with extra features and commands that make working with GitHub easier.
See examples here: hub · an extension to command-line git
- GitHub CLI | Take GitHub to the command line
- What about Hub then? cli/gh-vs-hub.md at trunk · cli/cli · GitHub
- GitHub - muesli/gitty: Contextual information about your git projects, right on the command-line
- gitty is a smart little CLI helper for git projects, that shows you all the relevant issues, pull requests and changes at a quick glance, right on the command-line. It currently supports the GitHub, GitLab, and Gitea APIs.
- Which remote URL should I use? - GitHub Help
- Caching your GitHub password in Git - GitHub Help
- Creating a personal access token for the command line - GitHub Help
- Recovering your account if you lose your 2FA credentials - GitHub Docs
- Development Guides | GitHub Developer Guide
- Keeping your GitHub Actions and workflows secure: Preventing pwn requests - GitHub Security Lab
- Or.. why not to checkout and build PRs from untrusted sources on a local machine without carefully examining the code for the PR.
- GitHub - ptrofimov/github-backup-sh: Simple shell script to backup all GitHub repos for specified user
- Prose · A Content Editor for GitHub
- Bintray
- Bintray is a social service for developers to publish, download, store, promote, and share open source software packages.
As the name suggests it is meant for binary releases.
- Gitter — Where developers come to talk.
- Gitter is a chat and networking platform that helps to manage, grow and connect communities through messaging, content and discovery.
- irc.gitter.im
- Git Large File Storage | Git Large File Storage (LFS) replaces large files such as audio samples, videos, datasets, and graphics with text pointers inside Git, while storing the file contents on a remote server like GitHub.com or GitHub Enterprise.
- OpenDev: Free Software Needs Free Tools
- Git, Gerrit, Zuul, and Gitea.
- NotABug.org: Free code hosting
- A free-software code collaboration platform for freely licensed projects.
- Gogs: A painless self-hosted Git service
- sourcehut - the hacker's forge
- The open source software suite for managing your software development projects that you've been waiting for.
- meta.sr.ht
- The account, billing, and security management hub for sourcehut, the hacker's forge.
- GNU Ethical Repository Criteria Evaluations - GNU Project - Free Software Foundation
- GNU Savannah, GitLab, GitHub, SourceForge
- Public Git Hosting - git-dm.git/summary
- Git Data Miner. Commit statistics.
- GitHub - ejwa/gitinspector: The statistical analysis tool for git repositories
- GitHub - morucci/repoxplorer: RepoXplorer - Statistics explorer for Git repositories
- Git quick statistics is a simple and efficient way to access various statistics in git repository.
- GitHub - aserg-ufmg/Truck-Factor: A tool that estimates the Truck Factor of GitHub projects
- This is a tool for estimating the Truck Factor of GitHub projects, using information from commit history. Truck Factor (also known as Bus Factor or Lottery Number) is the minimal number of developers that have to be hit by a truck (or leave) before a project is incapacitated.
- Stop writing rambling commit messages
- Git over an ssh tunnel (like through a firewall or VPN) | RandyFay.com
- Git through SSH port forwarding (SSH tunneling) | Rails, Web 2.0, Data Modeling
- git-remote-gcrypt
- and on GitHub - spwhitton/git-remote-gcrypt: PGP-encrypted git remotes
- fully encrypted git repositories with gcrypt
- git-remote-gcrypt adds support for encrypted remotes to git. Combine this with git-annex encrypting the files it stores in a remote, and you can fully encrypt all the data stored on a remote.
- git-crypt - transparent file encryption in git
- and on GitHub - AGWA/git-crypt: Transparent file encryption in git
- GitHub - StackExchange/blackbox: Safely store secrets in Git/Mercurial/Subversion
- GitHub - elasticdog/transcrypt: transparently encrypt files within a git repository
- permissions - How to configure an existing git repo to be shared by a UNIX group - Stack Overflow
- permissions - How do I share a Git repository with multiple users on a machine? - Server Fault
- Use Git over Tor
- Git - GUI Clients (git-scm.com)
- Introduction · Tig - Text-mode interface for Git
- GitHub - jesseduffield/lazygit: simple terminal UI for git commands
- The Best Git GUI Clients For Every Platform (2023)
- Someone's opinion..
- GitHub - github-changelog-generator/github-changelog-generator: Automatically generate change log from your tags, issues, labels and pull requests on GitHub.
- GitHub - orhun/git-cliff: A highly customizable Changelog Generator that follows Conventional Commit specifications ⛰️
- GitHub - git-chglog/git-chglog: CHANGELOG generator implemented in Go (Golang).
- bash - How do I delete absolutely every remote branches from my git repos - Stack Overflow
- GitHub - louim/in-case-of-fire: In case of fire, git commit, git push and leave the building
- A poster in SVG, PDF and PNG.
- Git man page generator
- Take this with a grain of salt ;-)
Mercurial, hg
- Mercurial - Mercurial
- A fast, lightweight Source Control Management system designed for efficient handling of very large distributed projects.
- Mercurial: The Definitive Guide
- This is the online home of the book Mercurial: The Definitive Guide.
- GitConcepts - Mercurial
- Command cheat sheet for Mercurial and Git
Subversion, SVN
- Apache Subversion (SVN)
- Version Control with Subversion
- The online home of Version Control with Subversion, a free book about Subversion (SVN), published by O'Reilly.
CVS
- Version Management with CVS - manual (archive.org)
- Version Management with CVS by Per Cederqvist et al is the "official" manual for CVS. Commonly known as "the Cederqvist," the manual covers repositories, branches, and file maintenance, and includes reference material for both CVS users and CVS repository administrators.
- A CVS Book
- Open Source Development with CVS, 3rd Edition. Available under the GNU General Public License.
- CVSup
- The CVS-Optimized General-Purpose Network File Distribution System. CVSup is a software package for distributing and updating collections of files across a network.
Vi IMproved, VIM and related
- The VIM (Vi IMproved) Home Page
- Vim - the ubiquitous text editor.
- Vimdoc : the online source for Vim documentation
- Vim documentation - Vim Tips Wiki
- Moolenaar.net - Vim
- Main Page - Vim Tips Wiki
- VimConfig - Sane and simple Vim configuration
- Interactive vimrc generation for starters.
- Your problem with Vim is that you don't grok vi.
- Answer to a vi - What is your most productive shortcut with Vim? question on Stack Overflow
- Vim Commands Cheat Sheet
- Vim Modes Transition Diagram in SVG
- Note, most of the nodes in this graph have clickable hyperlinks to documentation.
Source of the Gist in case RawGit goes away. The renderable SVG is also WaybackMachine'd (downloadable URL) and archive.is'ed (not downloadable)
- Graphical vi-vim Cheat Sheet and Tutorial
- GitHub - runpaint/vim-recipes: A cookbook for the Vim text editor. (2010)
- Why, oh WHY, do those #?@! nutheads use vi?
- Vi-IMproved
- Home of the freenode #VIM channel, some pointers.
- Cream: The easy-to-use free text editor for Windows and Linux
- For Vim newbies. Cream is a free and easy-to-use configuration of the powerful and famous Vim text editor for both Microsoft Windows and GNU/Linux.
- vim tips and tricks: home
- A Byte of Vim (PDF)
- "A Byte of Vim" is a book which aims to help you to learn how to use the Vim editor (version 7), even if all you know is how to use the computer keyboard.
- Efficient Editing With vim - Jonathan McPherson
- Vim Cookbook (archive.org)
- This is the Vim cookbook page. It contains short recipes for doing many simple and not so simple things in Vim. You should already know the basics of Vim, however each command is explained in detail.
- Dr Chip's Vim Page
- Charles E. Campbell's universe of vim and vimscripts.
- Vim Regular Expressions 101
- Best of VIM Tips, VIM's Key Features
- Sven Guckes' vimrc.forall
- Using undo branches - Vim Tips Wiki
- Learn Vimscript the Hard Way
- a book for users of the Vim editor who want to learn how to customize Vim.
- OmniCppComplete - C++ completion omnifunc with a ctags database : vim online
- For Vim >=7.0
- YouCompleteMe by Valloric
- A code-completion engine for Vim.
- clang complete - Use of Clang for completing C, C++, Objective-C and Objective-C++ : vim online
- matchit.zip - extended % matching for HTML, LaTeX, and many other languages : vim online
- Also in the Vim distribution package (macros/matchit.vim), but this one may be newer.
- Align.vim - Provides commands and maps to help produce aligned text, eqns, declarations, etc : vim online
- Requires the cecutil.vim plugin.
- AutoAlign - Automatically align as you type (autoalign): bib c c++ html maple matlab tex vim : vim online
- Requires the Align.vim plugin.
- netrw.vim - Network oriented reading, writing, and browsing (keywords: netrw ftp scp) : vim online
- taglist.vim - Source code browser (supports C/C++, java, perl, python, tcl, sql, php, etc) : vim online
- tagexplorer.vim - Tag explorer for various programming language files : vim online
- GitHub - ludovicchabant/vim-gutentags: A Vim plugin that manages your tag files
- lid.vim - Plugin to integrate GNU id-utils tool with Vim : vim online
- cecscope - command and menu driven cscope interface : vim online
- fugitive.vim - A Git wrapper so awesome, it should be illegal : vim online
- Most useful the :G grep and :G blame commands and :G diff, see also Fugitive.vim - resolving merge conflicts with vimdiff
Also on GitHub - tpope/vim-fugitive: fugitive.vim: A Git wrapper so awesome, it should be illegal
- vimagit - A new way to use git with vim. : vim online
- See the feature set on its GitHub page.
Install as a pathogen.vim bundle.
- vcscommand.vim - CVS/SVN/SVK/git/hg/bzr integration plugin : vim online
- CVSconflict - CVS conflict resolution using vimdiff : vim online
- undo_tags - small utility that lets you tag undo branches : vim online
- DrawIt.tar.gz - Use arrow keys to draw lines, ctrl-v for boxes and ellipses : vim online
- TVO: The Vim Outliner - Turn vim into a full-featured text outliner : vim online
- snipMate - TextMate-style snippets for Vim : vim online
- mru.vim - Plugin to manage Most Recently Used (MRU) files : vim online
- speeddating.vim - Use CTRL-A/X to increment dates, times, and more : vim online
- bufexplorer.zip - Buffer Explorer / Browser : vim online
- LargeFile - Edit large files quickly (keywords: large huge speed) : vim online
- RunView - Run scripts through filter and display output in separate window : vim online
- characterize.vim - Unicode character metadata : vim online
- Working with Unicode - Vim Tips Wiki
- set_utf8.vim - Switching to Unicode in an orderly manner : vim online
- gnupg.vim - Plugin for transparent editing of gpg encrypted files. : vim online
- LogiPat - Boolean-Logic Patterns : vim online
- GetLatestVimScripts.vim - Automates retrieval of latest scripts you use : vim online
- Integrated in Vim 7.0 as plugin/getscript.vim
- pathogen.vim - Poor man's package manager. Easy manipulation of 'runtimepath' et al : vim online
- greputils - Interface with grep, find and id-utils (not just another grep wrapper) : vim online
- This is mostly interesting for the IDGrep command, since as of version 7.0 Vim has an internal grep command. However, lid.vim does overrule this.
Requires the following plugins to be installed:- genutils.vim - General utility functions : vim online
- multvals.vim - Array library that uses patterns as separators : vim online
- grep.vim - Grep/Fgrep/Egrep/Agrep tools integration with Vim : vim online
- A simple wrapper in case you don't want the sophisticated greputils solution above. Not needed with Vim >= 7.0
- scriptease.vim - A Vim plugin for Vim plugins : vim online
- visual_studio.vim - Vim and Microsoft Visual Studio .NET integration : vim online
- GitHub - easymotion/vim-easymotion: Vim motions on speed!
- Integrate gvim with Visual Studio - Vim Tips Wiki
- How to search at vim 'scriptnames' command - Stack Overflow
- Vim Scripts
- Mirror of all scripts, using Git
- Vim Awesome
- Awesome Vim plugins from across the Universe.
- GitHub - fatih/vim-go: Go development plugin for Vim
- Generate all Unicode characters - Vim Tips Wiki
- The perfect programming font - Vim Tips Wiki - a Wikia wiki
- Identify the syntax highlighting group used at the cursor - Vim Tips Wiki
- Integrate with Mozilla Thunderbird - Vim Tips Wiki
- Encryption - Vim Tips Wiki
- Welcome to Eclim - eclim (eclipse + vim)
- How to sort using visual blocks - Vim Tips Wiki
- VimOutliner.org :: Work fast. Think well.
- Exuberant Ctags
- Par - paragraph reformatter
- Vim as XML Editor
- vimcolorschemetest
- Welcome to Eclim — eclim (eclipse + vim)
- The power of Eclipse in your favorite editor.
- VIM Adventures
- GameVIMification
- VimGolf - real Vim ninjas count every keystroke!
- how-to-exit-vim/README.md at master · hakluke/how-to-exit-vim · GitHub
- Vim easter eggs : vim
- Se also Vim easter egg in command line completion - (gasp!) vim_use@googlegroups
- The Vi IMproved Editor Web Ring
- A-A-P project: install and develop software
- Agide: A-A-P GUI IDE for vim and gdb
- the Zimbu programming language
Emacs
- GNU Emacs - GNU Project - Free Software Foundation (FSF)
- XEmacs: The next generation of Emacs
- Emacs Basics
- Jeremy's Emacs Stuff
- Mastering Emacs
Tools misc
- EditorConfig
- EditorConfig helps developers define and maintain consistent coding styles between different editors and IDEs.
- VSCodium - Open Source Binaries of VSCode
- Microsoft’s vscode source code is open source (MIT-licensed), but the product available for download (Visual Studio Code) is licensed under this not-FLOSS license and contains telemetry/tracking.
- GitHub - VSCodium/vscodium: binary releases of VS Code without MS branding/telemetry/licensing
- Lapce
- Lightning-fast and Powerful Code Editor. A modern open source code editor in Rust.
- Debian Code Search
- Search all 130 GiB of source code within Debian.
- ShellCheck – shell script analysis tool
- And on GitHub - koalaman/shellcheck: ShellCheck, a static analysis tool for shell scripts
- Programming Fonts
- With Test Drive live selection.
- FontForge Open Source Font Editor
- Frequently Asked Questions — FontForge documentation FAQ
- Font Tutorials
- The home of easy to follow tutorials on font editing software. i.e. FontForge.
- GitHub - psss/did: What did you do last week, month, year?
- Comfortably gather status report data (e.g. list of committed changes) for given week, month, quarter, year or selected date range.
See also did documentation
- pastebin - collaborative debugging tool
- Paste sample code and/or compiler errors and use URL to refer to in IRC.
- Pastebin Service (centos.org)
- another pastebin, can be fed by the fpaste utility from command line (on Fedora)
- Debian Pastezone
- and another pastebin
- hastebin
- yet another pastebin, with ruby client
- termbin.com - terminal pastebin
- Pipe commands through netcat to pastebin.
- Create a new Gist · GitHub
- and yet another pastebin like
- Snippets · Explore · GitLab
- and yet yet another like pastebin
- Postimage.org - free image hosting / image upload
- hotlinking images
- Ideone.com - Online Compiler and IDE >> C/C++, Java, PHP, Python, Perl and 40+ other compilers and interpreters
- Ideone is an online compiler and debugging tool which allows you to compile source code and execute it online in more than 60 programming languages.
- Decompiler.com - Android / Python / C# / Java decompiler online
- Coliru
- Online compiler, C++ only and well done.
- CINT : C++ interpreter
- compilers.net
- thefreecountry.com: Free Programmers' Resources, Free Webmasters' Resources, Free Security Resources
- GCC Home Page - GNU Project - Free Software Foundation (FSF)
- GCC, the GNU Compiler Collection, includes front ends for C, C++, Objective-C, Fortran, Java, and Ada, as well as libraries for these languages (libstdc++, libgcj,...).
- Option Summary - Using the GNU Compiler Collection (GCC)
- GDB Documentation
- GDB: The GNU Project Debugger
- RMS's gdb Tutorial
- Linux Tutorial - GNU GDB Debugger Command Cheat Sheet
- GDB Cheat Sheet - GDB Cheat Sheet.pdf
- 13 Linux Debuggers for C++ Reviewed | Dr Dobb's
- July 09, 2013
- gdbgui - browser based debugger for C, C++, go, rust, Fortran. Modern gdb frontend.
- GDBFrontend - Easy, flexible and extensionable GUI debugger
- And GitHub - rohanrhu/gdb-frontend: ☕ GDBFrontend is an easy, flexible and extensionable gui debugger.
- DDD - Data Display Debugger - GNU Project - Free Software Foundation (FSF)
- GNU DDD is a graphical front-end for command-line debuggers such as GDB, DBX, WDB, Ladebug, JDB, XDB, the Perl debugger, the bash debugger, or the Python debugger. Besides ``usual'' front-end features such as viewing source texts, DDD has become famous through its interactive graphical data display, where data structures are displayed as graphs.
- Insight
- Insight is a graphical user interface to GDB, the GNU Debugger written in Tcl/Tk by people working at Red Hat, Inc. and Cygnus Solutions.
Dead project since 2009.
- Review Board | Take the pain out of code review
- web-based code review tool
- gource - software version control visualization - Google Project Hosting
- Software version control visualization.
- Veles - Binary Analysis Tool - CodiSec CodiSec
- Binary data analysis and visualization.
- Source-Navigator(TM)
- Source-Navigator is a source code analysis tool. With it, you can edit your source code, display relationships between classes and functions and members, and display call trees.
- Valgrind
- Valgrind is an award-winning instrumentation framework for building dynamic analysis tools. There are Valgrind tools that can automatically detect many memory management and threading bugs, and profile your programs in detail. You can also use Valgrind to build new tools.
- KCachegrind - KDE Profiling Frontend
- Profiling Visualization.
The profiling tool Callgrind (previously called Calltree) and the profile data visualization KCachegrind. Callgrind uses runtime instrumentation via the Valgrind framework for its cache simulation and call-graph generation. This way, even shared libraries and dynamically opened plugins can be profiled. The data files generated by Callgrind can be loaded into KCachegrind for browsing the performance results.
- GitHub - google/orbit: C/C++ Performance Profiler
- Orbit, the Open Runtime Binary Instrumentation Tool. The key differentiator with many existing tools is that no alteration to the target process is necessary.
- Linux Performance
- Brendan Gregg; perf, perf_events, FlameGraph, ...
- sysprof
- 'sysprof' is a sampling CPU profiler that uses a kernel module to profile the entire system (not just a single application). It handles shared libraries, and applications do not need to be recompiled. It profiles all running processes, has a GUI, shows the time spent in each branch of the call tree, and can load and save profiles.
- BigAdmin: DTrace
- Link collection at Oracle.
- The Macros (Autoconf Archive)
- Macro snippets for GNU autoconf.
- My Little UML Page
- Well, not mine but that's the title ;-) List of UML tools with short descriptions.
- UML Tool for Fast UML Diagrams - UMLet
- Generating UML from C++ code? - Stack Overflow
- Umbrello Project - Welcome to Umbrello - The UML Modeller
- Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology.
- Doxygen
- Doxygen is a documentation system for C++, C, Java, Objective-C, IDL (Corba and Microsoft flavors) and to some extent PHP, C#, and D.
- VCG Overview - Visualization of Compiler Graphs
- The VCG tool reads a textual and readable specification of a graph and visualizes the graph. If not all positions of nodes are fixed, the tool layouts the graph using several heuristics as reducing the number of crossings, minimizing the size of edges, centering of nodes.
- caolanm/callcatcher - GitHub
- Find unused code by collecting methods defined but not called or referenced.
See also Caolán's page
- AT&T Labs Research - Software Tools
- GraphViz
- Graph Visualization Software
The Graphviz layout programs take descriptions of graphs in a simple text language, and make diagrams in several useful formats such as images and SVG for web pages, Postscript for inclusion in PDF or other documents; or display in an interactive graph browser. (Graphviz also supports GXL, an XML dialect.)
- Graphviz-Tutorial - 4webmaster.de
- Uebersichtliches GraphViz Tutorial in Deutsch.
- Viz.js
- Graphviz in your browser.
- DotTask
- A directed graph editor for making to-do lists.
- GitHub - magjac/d3-graphviz: Graphviz DOT rendering and animated transitions using D3
- claribole.net - ZGRViewer
- ZGRViewer is a 2.5D graph visualizer implemented in Java and based upon the Zoomable Visual Transformation Machine. It is specifically aimed at displaying graphs expressed using the DOT language from AT&T GraphViz and processed by programs dot or neato. ZGRViewer is designed to handle large graphs, and offers a zoomable user interface (ZUI), which enables smooth zooming and easy navigation in the visualized structure.
- CodeViz (archive.org)
- A call graph generation utility for C/C++. This project provides the ability to generate call graphs to aid the task of understanding code. It uses a highly modular set of collection methods and can be adapted to support any language although only C and C++ are currently supported. Uses GraphViz.
- Dia a drawing program
- Dia is designed to be much like the commercial Windows program 'Visio'. It can be used to draw many different kinds of diagrams. It currently has special objects to help draw entity relationship diagrams, UML diagrams, flowcharts, network diagrams, and simple circuits.
- Dia2Code
- Dia2Code is a small utility used to generate code from a Dia UML class diagram.
- GGobi data visualization system.
- GGobi is an open source visualization program for exploring high-dimensional data. It provides highly dynamic and interactive graphics such as tours, as well as familiar graphics such as the scatterplot, barchart and parallel coordinates plots. Plots are interactive and linked with brushing and identification.
- Gephi, an open source graph visualization and manipulation software
- Gephi is an interactive visualization and exploration platform for all kinds of networks and complex systems, dynamic and hierarchical graphs.
- ggcov Features
- ggcov is a GTK+ GUI for exploring test coverage data produced by C and C++ programs compiled with gcc -fprofile-arcs -ftest-coverage. So it's basically a GUI replacement for the gcov program that comes with gcc.
- TAU: Tuning and Analyis Utilities
- Performance Inspector
- Performance analysis tools (includes Java support)
- Cscope Home Page
- Cscope is a developer's tool for browsing source code.
- Vim/Cscope tutorial
- GNU GLOBAL source code tag system
- GNU GLOBAL is a source code tag system that works the same way across diverse environments. You can locate a specified object in the source files and move there easily. It is useful for hacking a large project containing many subdirectories, many #ifdef and many main() functions. It is similar to ctags or etags but is different from them at the point of independence of any editor.
- Related sites
- GLOBAL related tools. Generally useful in development, also without GLOBAL.
- Source-Navigator(TM)
- Source-Navigator is a source code analysis tool. With it, you can edit your source code, display relationships between classes and functions and members, and display call trees. You can also build your projects, either with your own makefile, or by using Source-Navigator's build system to automatically generate a makefile. Source-Navigator works with the Insight GUI interface for GDB.
- Source code navigation tools
- This page is a log of an investigation Greg Lehey made of source code navigation and analysis packages in June and July 2005. It will necessarily remain incomplete, but he may update it. He started the investigation because he was in the position of needing to cut a large program into two halves and insert a clean API between them. To do this he needed to get a good understanding of how the control flow works, and he was looking for tools that might help him.
- Survey of source code comprehension tools
- Information about and links to some tools/software that make a code maintainer's job (and a developer's job too!) easier. All software mentioned support the C programming language and may support other languages too.
- Taskjuggler - The Open Source Project Management Software
- TaskJuggler provides an optimizing scheduler that computes your project time lines and resource assignments based on the project outline and the constrains that you have provided. The build-in resource balancer and consistency checker offload you from having to worry about irrelevant details and ring the alarm if the project gets out of hand.
- ANTLR Parser Generator
- ANTLR - ANother Tool for Language Recognition (formerly PCCTS) is a language tool that provides a framework for constructing recognizers, compilers, and translators from grammatical descriptions containing Java, C#, C++, or Python actions.
- Code::Blocks IDE - Open Source, Cross-platform Free C++ IDE
- sed.sf.net - The sed $HOME
- Using sed
- sed_tutorial
- Frequently-Asked Questions about sed, the stream editor (archive.org)
- Gimpel Software Bug of the Month Discovered by Lint
- coala
- linting and fixing code for all languages
- FuzzingTools - ThreatMind
- ucpp - A C preprocessor designed to be embeddable, quick, light and fully compliant to ISO Standard 9899:1999, aka ISO C99, or simply, C99. - Google Project Hosting
- ucpp can be compiled as a stand-alone program, or linked to some other code; in the latter case, ucpp will output tokens, one at a time, on demand, as an integrated lexer.
- Buildbot
- The BuildBot is a system to automate the compile/test cycle required by most software projects to validate code changes.
- Weblate - web-based localization
- For example used in LibreOffice localization
- Online translation tool | Pootle
- Outdated, unmaintained, previously used in LibreOffice translation.
- Zanata | Open translation, for everyone.
- FusionForge
- FusionForge is a free software application descendant of the forge originally created for running the SourceForge.net platform. FusionForge is licensed under the GNU General Public License, and is a fork/renaming of the code which was previously named GForge.
- include-what-you-use - A tool for use with clang to analyze #includes in C and C++ source files
- The main goal of include-what-you-use is to remove superfluous #includes. It does this both by figuring out what #includes are not actually needed for this file (for both .cc and .h files), and replacing #includes with forward-declares when possible.
- The Meson Build system
- Meson is an open source build system meant to be both extremely fast, and, even more importantly, as user friendly as possible.
- Bazel - a fast, scalable, multi-language and extensible build system" - Bazel
- Google's build tool.
- Ninja, a small build system with a focus on speed
- tup
- Tup is a file-based build system for Linux, OSX, and Windows.
- GitHub - ejholmes/walk: A fast, general purpose, graph based build and task execution utility.
- Charles Web Debugging Proxy • HTTP Monitor / HTTP Proxy / HTTPS & SSL Proxy / Reverse Proxy
- Hex to file (binary) converter
- Basically what tr -d -c '0-9A-Fa-f' | xxd -p -r does, plus a bunch of other converters.
- Free Online IDE and Terminal
- For various programming languages.
- GDB online Debugger | Compiler - Code, Compile, Run, Debug online C, C++
- Taiga.io
- Taiga is a project management platform for agile developers & designers and project managers.
Kanban and stuff.
- Kanban Project Management Software - Kanboard
- Wekan — open-source kanban
- Planka - Free, Open Source, Trello Alternative
- Free open source kanban board for workgroups.
- OpenProject - online project management software - free and open source
- Minisign by Frank Denis
- A dead simple tool to sign files and verify signatures. GitHub - jedisct1/minisign
- GitHub - jedisct1/minisign: A dead simple tool to sign files and verify digital signatures.
- GitHub - jedisct1/libsodium: A modern, portable, easy to use crypto library.
- Sodium is a modern, easy-to-use software library for encryption, decryption, signatures, password hashing and more. It is a portable, cross-compilable, installable, packageable fork of NaCl, with a compatible API, and an extended API to improve usability even further.
- GitHub - aperezdc/signify: OpenBSD tool to sign and verify signatures on files. Portable version.
- Noise Protocol Framework
- Crypto protocols that are simple, fast, and secure. Noise is a framework for building crypto protocols. Noise protocols support mutual and optional authentication, identity hiding, forward secrecy, zero round-trip encryption, and other advanced features.
- GN Quick Start guide
- The Google Chromium build tool.
- GN Frequently Asked Questions
- GN Reference
- Flatpak—the future of application distribution
- Welcome to Flatpak’s documentation! — Flatpak documentation
- Sandbox Permissions — Flatpak documentation
- Portal API Reference — Flatpak documentation
- App Requirements · flathub/flathub Wiki · GitHub
- GitHub - google/bloaty: Bloaty McBloatface: a size profiler for binaries
- The AFL++ fuzzing framework | AFLplusplus
- CyberChef
- GitHub - gchq/CyberChef: The Cyber Swiss Army Knife - a web app for encryption, encoding, compression and data analysis
- Fossies - The Fresh Open Source Software Archive: Special features
- Fresh Open Source Software mainly for Internet, Engineering and Science.
- Fossies - The Fresh Open Source Software Archive: Doxygen generated source code documentation
- Open Build Service
- Create and distribute software packages for all the major linux distributions with all the tools to work together. A generic system to build and distribute packages from sources in an automatic, consistent and reproducible way. Release your software for a wide range of operating systems and hardware architectures.
- GitHub - sirupsen/napkin-math: Techniques and numbers for estimating system's performance from first-principles
- thefreecountry.com: Free Programmers' Resources, Free Webmasters' Resources, Free Security Resources
- Resursseja - Resources
- Links to software engineering tools.
- Programming People
PASCAL
- Real Programmers Don't Use PASCAL
FORTRAN
- Real Programmers Don't Use Fortran, Either!
Assembler
- Linux Nasm (archive.org)
- Assembly programming on Linux with NASM (and C/C++)
- x86 assembly language - Wikipedia
- Guide to x86 Assembly
- This guide describes the basics of 32-bit x86 assembly language programming, covering a small but useful subset of the available instructions and assembler directives.
- x86 and amd64 instruction reference
- Intel® 64 and IA-32 Architectures Software Developer Manuals | Intel® Software
- Intel® Intrinsics Guide
- 6502.org: The 6502 Microprocessor Resource
- 6502.org: Tutorials and Aids - Opcodes
- 6502 Introduction
- Assembly Tutorials: Learn Assembly Programming... With ChibiAkumas!
- xorpd
- What if you knew how computers work?
C
- historical section
- The C Book
- Reading C Declarations
- A Guide for the Mystified
- Reading C type declarations
- ANSI C Summary
- The ANSI Standard: A Summary for the C Programmer
- The New C Standard: C99
- Visual Studio vs Linux math.h
- This page compares the list of functions in the C math.h header across four versions: ISO (ANSI) pre-1999, ISO post-1999, POSIX, and Microsoft Visual Studio.
C++
- C++ - Uncyclopedia, the content-free encyclopedia
- C=C+1 is one of the most successful practical jokes ever played on nerds who take ideas like object-oriented programming seriously.
- The C++ Annotations
- This document is intended for knowledgeable users of C (or any other language using a C-like grammar, like Perl or Java) who would like to know more about, or make the transition to, C++. (Frank B. Brokken Computing Center, University of Groningen)
- C++ reference - cppreference.com
- Simply the best C++ reference site.
- DevDocs — C++ documentation
- Same content as cppreference.com in a different UI.
- cplusplus.com - The C++ resources network
- Reference, documentation, tutorials. The second best reference site.
- C++ compiler support - cppreference.com
- Compiler support for new C++ features.
- C++ is Good for the Economy, It Creates Jobs!
- Standard C++
- The home of Standard C++ on the web — news, status and discussion about the C++ standard on all compilers and platforms.
- C++ Super-FAQ : Standard C++
- What’s “Super” about this FAQ? In part it’s because this is a merger of two great FAQs: Marshall Cline’s C++ FAQs, and Bjarne Stroustrup’s C++ FAQ. And in part it’s because this is a wiki being continuously updated for modern C++.
- Draft C++ Standard: Contents
- Working Draft, Standard for Programming Language C++. This is not an ISO publication. Note: this is an early draft. It's known to be incomplet and incorrekt, and it has lots of bad formatting.
- C++ Frequently Questioned Answers
- This is C++ FQA Lite. C++ is a general-purpose programming language, not necessarily suitable for your special purpose. FQA stands for "frequently questioned answers". This FQA is called "lite" because it questions the answers found in C++ FAQ Lite. (Or what was known as the C++ FAQ Lite that was). Take it with a grain of salt. And take C++ with a grain of salt.
- Stroustrup: C++
- The C++ Programming Language, FAQ, C++ Style and Technique FAQ, C++0x - the next ISO C++ standard FAQ
- Stroustrup: C++ Glossary
- operator whitespace overloading
- Stroustrup's serious (?) fun
- cplusplus/draft · GitHub
- Dick's Index to the December 1996 C++ draft standards (archive.org)
- Syntax of C++ as per Draft ANSI/ISO Standard December 1997 (archive.org)
- Why CS students *must* learn C++ as their main programming language
- OOP A: C++-Grammatik (mit Links) (archive.org)
- ISO/IEC JTC1/SC22/WG21 - C++
- ISO/IEC JTC1/SC22/WG21 is the international standardization working group for the programming language C++.
- ISO/ANSI C++ Committee Public Issues Lists, provided as a community service by Comeau Computing
- Incompatibilities Between ISO C and ISO C++
- C++ Idioms (Presented at EuroPLoP 98)
- James O. Coplien (PDF)
- Traits
- A useful template technique, by Nathan C. Myers
- C++ Core Guidelines
- By Bjarne Stroustrup and Herb Sutter.
- C++ Operator Precedence - cppreference.com
- C++ Operators, with Precedence and Associativity
- The Anatomy of the Assignment Operator (archive.org)
- The Assignment Operator Revisited (archive.org)
- or why The Anatomy of the Assignment Operator wasn't all that correct.
- An Idiot's Guide to C++ Templates - Part 1 - CodeProject
- Covering the nitty-gritties of C++ templates.
- An Idiot's Guide to C++ Templates - Part 2 - CodeProject
- Let's dwell deeper into C++ templates!
- LLVM Coding Standards — LLVM documentation
- quite reasonable C++ style guide ...
- Thinking in C++, 2nd Edition, Volume 1 : Bruce Eckel : Free Download, Borrow, and Streaming : Internet Archive
- Thinking in C++, 2nd Edition, Volume 2 : Bruce Eckel and Chuck Allison : Free Download, Borrow, and Streaming : Internet Archive
- Thinking in C++, 2nd Ed. Volume 1 Annotated Solutions Guide
- c++ - What is the copy-and-swap idiom? - Stack Overflow
- After Herb Sutter's GotW #59: Exception-Safe Class Design, Part 1: Copy Assignment
- Rvalue References and Move Semantics in C++11 - Cprogramming.com
- c++ faq - The Definitive C++ Book Guide and List - Stack Overflow
- Free C/C++ Programming Books (archive.org)
- Learn C++
- C++ Tutorial
- OnlineTutorials.de | C++ | Tutorials
- Lern Programmieren mit C++! (Stefan Ram)
- Learn C and C++ Programming - Cprogramming.com
- Excellent Free Tutorials to Learn C++ - LinuxLinks
- C++ Forum :: Linkliste für Neulinge
- Bücher, Referenzen, FAQs, ...
- Guru of the Week (GotW) Archive - Main Index Page
- Sutter’s Mill | Herb Sutter on software, hardware, and concurrency
- Andrei Alexandrescu
- abseil / C++ Tips of the Week (TotW)
- C++ portability guide (Mozilla)
- Simplify C++! - Write clean and maintainable C++ (Arne Mertz)
- Test Drive Comeau C/C++ Online
- Sites of interest to C++ users
- The Association of C & C++ Users
- Lambda expressions (since C++11) - cppreference.com
- Lambdas - C++ Language - Stack Overflow
- C++11 - Lambda Closures, the Definitive Guide - Cprogramming.com
- Lambda Expressions in C++
- Compiler Explorer
- See what assembly code compilers actually generate for your C/C++ code.
- C++ Insights
- How compilers see your code.
- Uniform Initialization in C++ - GeeksforGeeks
- Have a {}
- Clang-Format Style Options — Clang documentation
- CppCon 2018: Timur Doumler “Can I has grammar?” - YouTube
- Stephan T. Lavavej “Floating-Point <charconv>: Making Your Code 10x Faster With C++17's Final Boss” - YouTube
- CppCon 2019
- Modernes C++ | heise Developer
STL
- SGI - Services & Support: Standard Template Library Programmer's Guide
- The C++ Standard Template Library
- STLport Home Page
- Nicolai M. Josuttis: The C++ Standard Library
- A modest STL tutorial
- Links Regarding the C++ Standard Library
Libraries
- Upstream Tracker for C/C++ Libraries
- Online tool to track API/ABI compatibility in changes of version upgrades.
- Available C++ Libraries FAQ
- Boost C++ Libraries
- Boost Sandbox
- mdds / mdds | GitLab
- Kohei Yoshida's Multi-Dimensional Data Structure (mdds), segmented trees and indexing algorithm.
- diet libc - a libc optimized for small size
- The libdjb project
- Cap'n Proto: Introduction
- Cap’n Proto is an insanely fast data interchange format and capability-based RPC system.
- GNU Common C++
- libowfat
- Extending the iostream library (printf formatting)
- s11n.net: object serialization/persistence in C++
- MATHPROG - A Collection of Codes for Solving Various Mathematical Programming Problems (archive.org)
- IMSSIRUS' Astronomieseite
- wvWare, library for converting Word documents
- libpng Home Page
- libiconv - GNU Project - Free Software Foundation (FSF)
- This library provides an iconv() implementation, for use on systems which don't have one, or whose implementation cannot convert from/to Unicode.
- NTL: A Library for doing Number Theory
- The GNU MP Bignum Library
- The GNU Multiple Precision Arithmetic Library
- ClanLib Game SDK
- MCrypt
- MCrypt is a replacement for the old crypt() package and crypt(1) command, with extensions.
- The CGAL home page
- Crystal Space: A Free 3D Engine
- Simple Sockets Library (drchip.org)
- GGI - General Graphics Interface
- RFID C library
- See also RFID information
- Telepathy Wiki - FrontPage
- Telepathy is a flexible, modular communications framework that enables real-time communication via pluggable protocol backends. Telepathy is a communications service that can be accessed by many applications ("clients") simultaneously.
- protobuf - Protocol Buffers - Google's data interchange format - Google Project Hosting
- Protocol Buffers are a way of encoding structured data in an efficient yet extensible format. Google uses Protocol Buffers for almost all of its internal RPC protocols and file formats.
- GitHub - google/sandboxed-api: Sandboxed API automatically generates sandboxes for C/C++ libraries
- The Sandboxed API project (SAPI) aims to make sandboxing of C/C++ libraries less burdensome: after initial setup of security policies and generation of library interfaces, an almost-identical stub API is generated, transparently forwarding calls using a custom RPC layer to the real library running inside a sandboxed environment.
- abseil / abseil.io
- Abseil is an open source collection of C++ libraries drawn from the most fundamental pieces of Google’s internal codebase. These libraries are the nuts-and-bolts that underpin almost everything Google runs.
- The latest supported Visual C++ downloads
- Microsoft Visual C++ Redistributables
Articles & Interviews
- The C++ Style Sweet Spot
- A Conversation with Bjarne Stroustrup
Artima.com Interviews
- Multiple Inheritance and Interfaces
- A Conversation with Scott Meyers
Artima.com Interviews
- Designing Contracts and Interfaces
- A Conversation with Scott Meyers
Artima.com Interviews
- Meaningful Programming
- A Conversation with Scott Meyers
Artima.com Interviews
- Const, RTTI, and Efficiency
- A Conversation with Scott Meyers
Artima.com Interviews
- An Effective C++11/14 Sampler - Events | Microsoft Docs
- Scott Meyers' talk on C++11/14
- A Collection of Examples of 64-bit Errors in Real Programs - Intel® Software Network
- Knowledge Base - Intel® Software Network
Rust
- Rust Programming Language
- The Rust Reference
- Learn Rust - Rust Programming Language
- Rust Playground
- How to learn Rust: A resources guide for developers | TechRepublic
- Getting started with ... Rust - Stack Overflow Blog
- Rust Tutorial
- Understanding Rust as a C++ developer - DEV Community
- GitHub - nrc/r4cppp: Rust for C++ programmers
- Programming Rules to Develop Secure Applications With Rust | Agence nationale de la sécurité des systèmes d'information
- /random/RIIR
- Have you considered Rewriting It In Rust?
Go
- The Go Programming Language
- A Tour of Go
- GitHub - golang-standards/project-layout: Standard Go Project Layout
- Effective Go - The Go Programming Language
- GoDoc
- GoDoc hosts documentation for Go packages on Bitbucket, GitHub, Google Project Hosting and Launchpad.
- godoctricks - GoDoc
- Package godoctricks is a tutorial that deals with tricks for making your godoc organized and neat.
- Excellent Free Tutorials to Learn Go - LinuxLinks
Python
- Python Programming Language -- Official Website
- The Python Tutorial — Python 3 documentation
- Python Tutorial
- Python Tutorials - Python Tutorial
- Automate the Boring Stuff with Python
- Practical Programming for Total Beginners. Online book under CC BY-NC-SA license.
- PY4E - Python for Everybody
- Python learning material and lessons.
- GitHub - joaoventura/full-speed-python: At full speed with Python
- This book aims to teach the basics of the python programming language using a practical approach.
- A Quick, Painless Tutorial on the Python Language
- Python Patrol Tutorial
- Python-Kurs: Tutorial, Referenz und weiterführende Themen
- Excellent Free Tutorials to Learn Python - LinuxLinks
- Thonny, Python IDE for beginners
- Porting to Python 3: An in-depth guide — Porting to Python 3 - The Book Site
- Where is Python's sys.path initialized from? - Stack Overflow
- In case you ever wondered..
- Deciphering Glyph :: Never Run ‘python’ In Your Downloads Folder
- freiesMagazin Python-Sonderausgabe 04/2011 | freiesMagazin
- Sechs Artikel von Daniel Nögel, die in den freiesMagazin-Ausgaben Oktober 2010 bis März 2011 erschienen sind, zusammengefasst und nun als zusammenhängende Kompilation.
- Super Fast Python – making you awesome at concurrency
- Tutorials, Guides, Threading, Multiprocessing, AsyncIO
- GitHub - cookiecutter/cookiecutter: A command-line utility that creates projects from cookiecutters (project templates), e.g. Python package projects, VueJS projects.
- GitHub - wdm0006/cookiecutter-pipproject: A(nother) cookiecutter template for pip-installable python projects
- Scientific Computing Tools For Python — Numpy
- arrays and stuff
- GitHub - pydata/numexpr: Fast numerical array expression evaluator for Python, NumPy, PyTables, pandas, bcolz and more
- PyNGL Home Page
- Scientific visualization, file i/o, data analysis. PyNGL (pronounced "pingle") is a Python language module used to visualize scientific data, with an emphasis on high quality 2D visualizations. A working knowledge of Python is assumed. PyNIO is a Python module used for reading and writing files in several different data formats, including netCDF, GRIB1, HDF 4, HDFEOS 2, and CCM history files. In version 1.2.0, support was added for GRIB2 and for netCDF 4 classic files.
- OpenOpt
- Numerical optimization framework for Python
- How to recover lost Python source code if it's still resident in-memory · GitHub
Julia
- The Julia Programming Language
- High performance dynamically typed scientific computing language.
Crystal
- crystal
- A language for humans and computers.
V
- The V Programming Language
- Simple, fast, safe, compiled. For developing maintainable software.
Perl
- The Perl Directory - perl.org
- CPAN (Comprehensive Perl Archive Network)
- Online Documentation - perl.org
- learn.perl.org: The site for people learning Perl.
- Steve Litt's PERLs of Wisdom
- PERL Tutorial - Introduction (Tizag)
- Picking Up Perl, a Freely Redistributable Perl Tutorial Book
- perl (selectorweb.com)
- perlmeme.org
- perlmeme.org is a collection of Frequently Asked Questions, "How To" documents, and tutorials about the very cool Perl programming language.
- Beginning Perl Tutorials
- focused on CGI scripts
- PerlMonks - The Monastery Gates
- PerlMonks is a community web site devoted to Perl and related issues. It is made up of several hundred contributors who over the years have created over half a million entries. In short it is a gold mine of knowledge on Perl and programming in general.
- Perlmeister.com
- Perl.com: The Source for Perl -- perl development, perl conferences
- perl.oreilly.com -- Welcome to the O'Reilly Perl Center -- computer books, perl books, perl programming
- Perl-XML Frequently Asked Questions
- The Perltidy Home Page
- Perltidy is a Perl script which indents and reformats Perl scripts to make them easier to read. If you write Perl scripts, or spend much time reading them, you will probably find it useful.
Kotlin
- Kotlin Programming Language
- Tutorials - Kotlin Programming Language
Java
- OpenJDK
- AdoptOpenJDK - Open source, prebuilt OpenJDK binaries
- JDK Builds from Oracle
- Java | Oracle
- The Java™ Tutorials
- The Java Tutorials are practical guides for programmers who want to use the Java programming language to create applications. They include hundreds of complete, working examples, and dozens of lessons. Groups of related lessons are organized into "trails".
- yet another insignificant Programming Notes
- Tutorials on Java, Android, Web, and some C/C++
- Java Technologies Tutorials
- Java Tutorial - Tutorialspoint
- Java8 Tutorial
- Java 9 Tutorial
- JavaFX Tutorial
- O'Reilly CodeZoo
JavaScript
- A Dive Into JavaScriptCore
- WebKit JSC
- JSCompress - The JavaScript Compression Tool
- Uglifier..
- Online JavaScript beautifier
- Beautify, unpack or deobfuscate JavaScript and HTML, make JSON/JSONP readable, etc.
PHP
- PHP: Documentation
- arguments - Reference — What does this symbol mean in PHP? - Stack Overflow
- Treating PHP Delusions
- This site is dedicated to PHP programming language and its proper use, with the focus on disproving various delusions and superstitions.
- The Hitchhiker's Guide to SQL Injection prevention - Treating PHP Delusions
- bobby-tables.com: A guide to preventing SQL injection in {currlang}
- Here where {currlang} == PHP
- GitHub - symfony/polyfill: PHP polyfills
- This project backports features found in the latest PHP versions and provides compatibility layers for some extensions and functions. It is intended to be used when portability across PHP versions and extensions is desired.
- phplayground - PHP playground
- Try out PHP from your browser.
- Rasmus Lerdorf - Wikiquote
- Creator of PHP.
"PHP 8 is significantly better because it contains a lot less of my code." ... and others.
BASIC
- Visual Basic Language Reference | Microsoft Docs
XML
- XML.com: XML From the Inside Out -- XML development, XML resources, XML specifications
- Cover Pages: Extensible Markup Language (XML)
- The XML FAQ
- Frequently-Asked Questions about the Extensible Markup Language; edited by Peter Flynn.
- XML Files - Extensible Markup Language Tutorials for Developers
- developerWorks : XML tutorials, code, and forums
- RELAX NG
- RELAX NG is a schema language for XML.
- Free XML tools and software
- A frequently-updated and hopefully complete index of free XML tools, with much metadata about the tools to make them easier to locate.
- XML pretty print tool - CoreFiling website
- XML comparison tool - CoreFiling website
- MSV - Multi Schema Validator — Project Kenai
- The Multi-Schema XML Validator (MSV) is a Java technology tool to validate XML documents against several kinds of XML schemas. It supports RELAX NG, RELAX Namespace, RELAX Core, TREX, XML DTDs, and a subset of XML Schema Part 1.
- opentag.com - XML Internationalization and Localization FAQ
- You will find here answers to some of the frequently asked questions about XML internationalization and localization (including XSL, CSS, and other XML-related technologies). Character representation, encoding, language identification, presentation and rendering, localization.
JSON
- JSON
- JSON - Wikipedia
- RFC 8259 - The JavaScript Object Notation (JSON) Data Interchange Format
- JSON Formatter and JSON Validator: Online JSON Formatter
- jq
- jq is a lightweight and flexible command-line JSON processor.
- jq play
- Play with jq JSON query.
- 7 command-line tools for data science (archive.org)
- jq - sed for JSON ; json2csv - convert JSON to CSV ; csvkit - suite of utilities for converting to and working with CSV ; scrape - HTML extraction using XPath or CSS selectors ; xml2json - convert XML to JSON ; and others
- GitHub - jehiah/json2csv: command line tool to convert json to csv
- JSON Explorer
- Tool for exploring JSON APIs interactively.
Online JSON/CSV Converters
- JSON to CSV Converter | Online Tool
- JSON To CSV Converter
- CSV to JSON Converter | Online Tool
- CSV To JSON Converter
TOML
- GitHub - toml-lang/toml: Tom's Obvious, Minimal Language
- TOML aims to be a minimal configuration file format that's easy to read due to obvious semantics. TOML is designed to map unambiguously to a hash table. TOML should be easy to parse into data structures in a wide variety of languages.
YAML
- The Official YAML Web Site
- YAML Ain't Markup Language.
- YAML - Wikipedia
- The yaml document from hell
Regex, Regexp, Regular Expressions
- Regular Expressions
- The Open Group Base Specifications Issue 7, 2018 edition IEEE; Std 1003.1-2017 (Revision of IEEE Std 1003.1-2008).
This chapter 9 is also known as POSIX regular expressions.
- UTS #18: Unicode Regular Expressions
- Regex Tutorial—From Regex 101 to Advanced Regex
- Regular Expressions - Wikibooks, open books for an open world
- Regular-Expressions.info - Regex Tutorial, Examples and Reference - Regexp Patterns
- Regex Tutorial - Unicode Characters and Properties
- Using Regular Expressions with PHP
- PHP: PCRE Patterns - Manual
- Online regex tester and debugger: PHP, PCRE, Python, Golang and JavaScript (regex101.com)
- RegExr: Learn, Build, & Test RegEx
- Regulex:JavaScript Regular Expression Visualizer
- Debuggex: Online visual regex tester. JavaScript, Python, and PCRE.
- Another one that wants you to create an account..
- Regular Expression Library
- Over 1500 regular expressions to give you nightmares. A bit .NET centric though..
- Regex Crossword
- Crossword puzzles using regular expressions.
- Regular Expressions - ICU Documentation Regular Expression Metacharacters
- ICU Regular Expression Demonstration
- Implementing Regular Expressions
- html - RegEx match open tags except XHTML self-contained tags - Stack Overflow
- You can't parse [X]HTML with regex. Because HTML can't be parsed by regex.
globalization, internationalization, localization (g11n, i18n, l10n)
- The I18n G.A.L.: Linking all the Internationalization Myths
- List of 15 myths about internationalization that should be banned. A Series of short blog articles.
- Falsehoods Programmers Believe About Names | Kalzumeus Software
- I18n in Software Design, Architecture and Implementation
- Gone with the farts of *r*cl*, excerpts available at I18n in Software Design
- Information Resources For Locales And Internationalization (i18nguy)
GIL Standards
- Locale
- The Open Group Base Specifications Issue 7; IEEE Std 1003.1-2008, POSIX.1-2008.
- Environment Variables
- The Open Group Base Specifications Issue 7; IEEE Std 1003.1-2008, POSIX.1-2008.
- See 8.2 Internationalization Variables for LC_* and companions.
Language Tags
- IETF language tag - Wikipedia, the free encyclopedia
- W3C i18n article: Language tags in HTML and XML
- Information on BCP 47 » RFC Editor
- Tags for Identifying Languages. A concatenation of relevant RFCs, namely RFC 5646 and RFC 4647
- RFC 5646 - Tags for Identifying Languages
- This document describes the structure, content, construction, and semantics of language tags for use in cases where it is desirable to indicate the language used in an information object.
Obsoletes RFC 4646, formerly known as RFC 3066bis, that obsoleted RFC 3066.
See also Language Tag Registry Update (ltru).
- Language subtag lookup app (ishida)
- BCP 47 Validator
- Check a language tag whether it is well-formed and its subtags are valid (registered with IANA).
- Language Tags: Tag wisely (archive.org)
- Language Tags: How to register a new subtag (archive.org)
- cldr/langtagTest.txt at main · unicode-org/cldr · GitHub
- RFC 4646 language tags test data set.
- IANA Language Subtag Registry
- Valid subtags for language tags.
- IANA Language Tag Extensions Registry
- Language tags extensions registry.
- Language Subtag Registry - Registration Templates
- Registered subtags templates with details.
- Unicode Utilities: Unicode Language Identifers and BCP47
- Understanding the New Language Tags (W3C BCP 47)
- W3C I18N FAQ: Two-letter or three-letter language codes
- RFC 5645 - Update to the Language Subtag Registry
- This memo defines the procedure used to update the IANA Language Subtag Registry, in conjunction with the publication of RFC 5646, for use in forming tags for identifying languages.
- RFC 6067 - BCP 47 Extension U
- This document specifies an Extension to BCP 47 that provides subtags that specify language and/or locale-based behavior or refinements to language tags, according to work done by the Unicode Consortium.
See also Unicode Extensions for BCP 47 - CLDR - Unicode Common Locale Data Repository
- RFC 6497 - BCP 47 Extension T - Transformed Content
- This document specifies an Extension to BCP 47 that provides subtags for specifying the source language or script of transformed content, including content that has been transliterated, transcribed, or translated, or in some other way influenced by the source.
- RFC 4645 - Initial Language Subtag Registry
- This memo defined the initial contents of the IANA Language Subtag Registry for use in forming tags for the identification of languages.
- RFC 4647 - Matching of Language Tags
- This document describes a syntax, called a "language-range", for specifying items in a user's list of language preferences. It also describes different mechanisms for comparing and matching these to language tags.
- RFC 3066 - Tags for the Identification of Languages
- Obsoleted by RFC 5646.
- RFC 3066 Language code assignments
- draft-langtags: Understanding the Reasons for Change (archive.org)
- Reasons for Enhancing RFC 3066 (RFC3066bis).
Pointer to draft-phillips-langtags-* by Addison Phillips and Mark Davis
- Language Tag Registry Update (ltru) Charter
- Tags for Identifying Languages draft-ietf-ltru-registry-*
Matching Tags for the Identification of Languages draft-ietf-ltru-matching-*
Initial Language Subtag Registry draft-ietf-ltru-initial-*
- IANA Assigned Language Tags
- OBSOLETE - per RFC-ietf-ltru-registry-14.txt
- IANA Directory of language tag applications
- OBSOLETE - per RFC-ietf-ltru-registry-14.txt
- Codes for constructed languages - Wikipedia
- ConLang Code Registry
- Constructed languages code assignments. Do not fall for the "assign ISO-639-3 codes out of the "reserved for local use" area (qaa-qtz)" though, use art-x-... private-use codes instead.
- liblangtag
- liblangtag is an interface library to access/deal with tags for identifying languages, which is described in RFC 5646.
- language-tags : Python Package Index
- This project is a Python version of the language-tags Javascript project.
- Index of /~caolanm/BCP47
- a prototype bcp47 parsing lib
- Getting Your Language In – LibreOffice goes BCP 47 – or – Language Tags and all that it entails (PDF)
- 2013-09-27 LibreOffice-Conference Milano presentation.
- How to squeeze a language tag into a Locale (PDF)
- 2014-02-01 FOSDEM presentation.
- LocaleMapping – OpenOffice.org Wiki
- Mapping Unix Locale Identifiers to BCP-47, by Caolán McNamara
- gtk/LINGUAS at master · GNOME/gtk · GitHub
- Languages known by gtk+ translations in glibc notation (eg. ca@valencia)
It would be too easy if everything just understood BCP 47.
ISO 639 Language Codes
- ISO 639-2: Registration Authority - Library of Congress
- ISO 639-2 Language Code List - Codes for the representation of names of languages (Library of Congress)
- Codes arranged alphabetically by Alpha-3 Code.
- Alpha-3 codes arranged alphabetically by English name of Language - Codes for the representation of names of languages (Library of Congress)
- ISO 639-3 Registration Authority - SIL International
- Part 3 of the ISO 639 family of standards, Codes for the representation of names of languages. ISO 639-3 attempts to provide as complete an enumeration of languages as possible, including living, extinct, ancient, and constructed languages, whether major or minor, written or unwritten.
- ISO 639 Code Tables | ISO 639-3
- ISO 639-1, ISO 639-2, ISO 639-3 at SIL
- ISO 639-3 - Wikipedia
- Category:ISO 639 - Wikipedia, the free encyclopedia
- Language-Territory Information (CLDR)
- ISO 639 and ISO 639-2: The Code Lists (evertype.com, outdated)
- ISO 639 Languages and Dialects, and More (archive.org, outdated)
- MediaGlyphs Project - Languages: original language names in their own scripts
- Language names in their original form and script, English and French names, associated country codes and common text encodings used for that language.
ISO 15924 Script Codes
- ISO 15924 Registration Authority
- ISO 15924 - Code Lists
- Script codes * ISO 15924 * Codes d'écriture
- Languages and Scripts (CLDR)
- Scripts and Languages (CLDR)
- cldr/language_script.tsv at main · unicode-org/cldr · GitHub
- Primary and secondary scripts of languages.
- ISO 15924 - Wikipedia
ISO 3166 Country Codes
- ISO 3166 Maintenance agency (ISO 3166/MA)
- ISO's focal point for country codes
- Country Codes Collection
- ISO Online Browsing Platform (OBP)
- ISO 3166 - Wikipedia
- ISO 3166-1, ISO 3166-2, ISO 3166-3
- Country code - Wikipedia
- ISO 3166-1: The Code List
- Country codes in ISO 3166
- Existing codes and withdrawn codes.
- Changes in ISO 3166-1
- Change history.
- United Nations Statistics Division- Standard Country and Area Codes Classifications (M49)
- Territory Containment (UN M.49) (CLDR)
- continents, regions, countries, timezones
- Subdivision Codes list
- UN/LOCODE by UNECE
- UN/LOCODE Country Subdivisions ISO 3166-2 | UNECE
- UNGEGN - United Nations Group of Experts on Geographical Names
- geonames - Countries and Languages of the World
- The countries of the world in their local languages and scripts, with official names, capitals, flags, administrative divisions, and translations of the country and capital names into many different languages.
- DOSCO - Wissen / Sprach- und Ländercodes -----
- German language and country names. Deutsche Sprachen- und Ländernamen. Not very.. erm.. reliable I think.
- WIPO recommends the use of YU instead of CS until the ISO 3166/MA has taken a final decision (PDF) (archive.org)
- The ISO-3166/MA decision to reuse CS (formerly Czechoslovakia) for "Serbia and Montenegro" was rather short-sighted. This WIPO recommendation of 25 November 2003 says how to deal with such a bad idea.
Note: this is rather historical, as the situation won't change anymore and CS is more widely supported now.
ISO 4217 Currency Codes
- Currency Code Service
- ISO 4217 Maintenance Agency
- ISO 4217 - Wikipedia
- ISO 4217 - Wikipedia
- German page, sometimes is more up-to-date than English page.
- List of currencies - Wikipedia
- The Euro (European Commission)
- Conversion rates and rules - European Commission
- Your country and the euro - European Commission
- XE.com - World Currency Symbols
- XE.com - ISO 4217 Type Currency Code List
ISO 8601 Date & Time Representation
- xkcd: ISO 8601
- ISO 8601 - Wikipedia, the free encyclopedia
- ISO 8601: International Standard Date and Time Notation
- A good overview by Markus Kuhn.
- ISO 8601 Date Time (archive.org)
- A fairly detailed description of what the ISO 8601 standard specifies.
- Info on ISO 8601, the date and time representation standard
- Jukka "Yucca" Korpela
- Date and Time Formats
- The W3C TR NOTE on date and time formats, defines a profile of ISO 8601.
- RFC 3339 - Date and Time on the Internet: Timestamps
- This document defines a date and time format for use in Internet protocols that is a profile of the ISO 8601 standard for representation of dates and times using the Gregorian calendar.
- RFC 3339 vs ISO 8601
- Unions, intersections, formats listing and notes.
- Implementation of the ISO 8601 Standard Around The World.
- Mathematics of the ISO calendar
- Extended Date Time Format (EDTF) Specification (Library of Congress)
- Level 0 specifies features of ISO 8601-1; Levels 1 and 2 specify features described by ISO 8601-2.
EDTF - The Extended Date/Time Format - defines features to be supported in a date/time string, features considered useful for a wide variety of applications.
- WeekNumber Calculation Explanation
- Calculating the ISO week number.
- ProbabilityOf.com ISO 8601 page - Converting and Implementing
- XML Schema Part 2: Datatypes Second Edition 3.2.7 dateTime
- There is no year 0000 in XML Schema 1.0! It's -0001 (1 BCE) followed by 0001 (1 CE).
Unicode
- Unicode Home Page
- Index of /Public
- unicode.org files
- UAX #9: The Bidirectional Algorithm
- ISO/IEC JTC1/SC2/WG2 - ISO/IEC 10646 - UCS
- JTC1/SC2/WG2 is the international standardization working group for the coded character set UCS - the Universal Multiple-Octet Coded Character Set - ISO/IEC 10646.
- Unicode - Wikipedia
- The Unicode Standard(s) (czyborra)
- What document(s) define(d) the Unicode standard?
- Unicode's characters (czyborra)
- FAQ - UTF and BOM
- UTF-8 and Unicode FAQ
- Unicode fonts and tools for X11
- Unicode/UTF-8-character table
- UTF-8 Everywhere Manifesto
- Unicode and multilingual support in HTML, fonts, Web browsers and other applications
- Alan Woods Unicode Resources
- Programming with Unicode
- Joel on Software - The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)
- What every JavaScript developer should know about Unicode
- Quite a good introduction, not only for JavaScript devs, if you abstract from the code examples.
- ongoing by Tim Bray · On the Goodness of Unicode
- ongoing · Characters vs. Bytes
- Eyes Above The Waves: String Theory
-
- "UTF-16 is the devil's work." --Robert O'Callahan
- Ben Lynn's Online Garbage: UTF-8 good, UTF-16 bad
- Dashes and hyphens (Yucca)
- Soft hyphen (SHY) - a hard problem? (Yucca)
- Character encoding
- Text Encoding Table index - Programming | String-functions
- If your text encoding went awry..
- Character Model for the World Wide Web: String Matching (W3C)
- The (Mostly) Complete Unicode Spiral – Terence Eden’s Blog
Collation
- UTS #10: Unicode Collation Algorithm
- Collation Charts (Unicode)
- Collation - ICU Documentation
-
- ICU Collation Demo
- Collation Guidelines - CLDR - Unicode Common Locale Data Repository
- Character data, Unicode and Collations | Mimer Developer
- SQL Unicode Collation Charts | Mimer Developer
- FAQ - Collation (unicode.org)
- Collation Charts
- The goal of this project was to provide information about how various pieces of software (e.g. operating systems, DBMS and others) sort textual data, in the form of easy-to-read charts.
Quite outdated though, ~2010 ...
Utilities
- Unicode Utilities: Description and Index
- Code Charts - Scripts (unicode.org, PDFs)
- Name List Charts (unicode.org)
- ICU Demonstration - Unicode Browser
- Find all Unicode characters from Hieroglyphs to Dingbats – Codepoints
- Unicode - Compart
- IANA Character Sets, Planes, Blocks, Character Categories, Bidirectional Classes, Combining Classes, Decomposition, Mirrored Characters, Scripts, HTML Entities, References.
- Graphemica - For people who ♥ letters, numbers, punctuation, &c
- 📙 Emojipedia — 😃 Home of Emoji Meanings 💁👌🎍😍
- Charbase: A visual unicode database
- Shapecatcher: Draw the Unicode character you want!
- Unicode (fileformat.info)
- Unicode characters, search, blocks, categories, support in fonts, UTF-8 browser test pages.
- Category:Unicode blocks - Wikipedia
- Unicode block - Wikipedia
- Including a table of all Unicode blocks with scripts.
- unum - Interconvert numbers, Unicode, and HTML/XHTML characters
- Fourmilab's stand-alone utility program written in portable Perl which allows you to look up Unicode and HTML characters by name or number, and interconvert numbers in decimal, hexadecimal, and octal bases.
- UniView (ishida)
- An XHTML-based application to look up characters, character blocks, paste in and discover unknown characters, search for characters, do hex/dec/ncr conversions, highlight character types, etc. etc.
- List characters tool (ishida)
- Identifies Unicode characters in a string.
- Character usage (ishida)
- Lists characters used in a language.
- Unicode code converter (ishida)
- Unicode character pickers (ishida)
- An Introduction to Writing Systems & Unicode (ishida)
- r12a >> apps (ishida)
- ishida >> utilities: normalizer
- Converts text into Unicode normalisation forms NFD and NFC.
Not available anymore, some almost empty blog? And not on https://r12a.github.io/applist either.
- Unicode Utilities: Character Properties (CLDR)
- Character set, code pages, encodings, at the push of a button (i18nguy)
- Ascii table for IBM PC charset (CP437) - Ascii-Codes
- CP 437 and a bunch of other code pages.
- Letter database: languages, character sets, names etc (EKI, Eesti Keele Instituut)
- decodeunicode.org
- An independent online-platform for digital type culture. It has the objectives of creating a basis for fundamental typographic research and facilitating a textual approach to the characters of the world for all computer users.
- PRI #294 Background: Emoji Glyph/Annotation Recommendations
- ftfy - fix unicode that's broken in various ways
- Meant is fix the broken decoding of the broken encoding.. by guessing what the string might have been.
Character Sets
- ISO/IEC JTC1/SC2/WG3 - 7 and 8-bit coded character sets
- WG3 is a standardization Working Group of the SC2 which is a SubCommittee of JTC1 - a Joint Techical Committee of ISO and IEC.
WG3 works on 7-bit and 8-bit codes and their extensions. Examples of coded character sets made by WG3 are the ISO/IEC 8859 parts and the ISO 6429 coded control character set.
A registry of coded character sets is maintained under WG3 supervision by IPSJ/ITSCJ in the ISO 2375 registry.
- Character Sets (IANA)
- These are the official names for character sets that may be used in the Internet and may be referred to in Internet documentation.
- Character Set Registrations at IANA
- List of Character Set Registrations not defined in RFCs
- ISO 8859 Alphabet Soup (czyborra)
- Charsets Index (Kosta Kostis)
- Characters and encodings (Jukka "Yucca" Korpela)
- Letter database: languages, character sets, names etc
- Form with various queries regarding character sets / encodings and Unicode
- Character Sets (FileFormat.Info)
- [Ping] Japanese text encoding
- ISO Latin 9 as compared with ISO Latin 1
- The ISO Latin 9 (ISO 8859-15) character set differs from the well-known ISO Latin 1 (ISO 8859-1) character set in a few positions only. The euro sign and some national letters used e.g. in French and Finnish have been introduced and some rarely used special characters omitted.
- Zeichentabellen
- Some codepage tables, Latin ISO 8859, DOS and Windows, generated from Unicode database
- Character encoding programs and ISO 8859-x codepages for MS-DOS (Kosta Kostis)
- Brief History of Character Codes in North America, Europe, and East Asia
- Everson Typography: The Alphabets of Europe
- Doug Ewell's Home Page
- Unicode, Ewellic Alphabet, Coding standards, Language tagging (BCP 47)
- ICU - International Components for Unicode - Character Set Mapping Tables
- ICU Demonstration - Converter Explorer
- Index of /Public/MAPPINGS (unicode.org)
- Mapping tables of character sets to Unicode characters.
- Unicode programming, with examples
- Characters and ICU example programs.
- WTF-8, a transformation format of code page 1252
misc
- Everson Typography: Codes for Internationalization
- ISO ####, TC##
- Units of Measurement
- A4 Paper / International Standard Paper Sizes
- Metric Typographic Units
- Logistics World: Reference Libarary
- airlines, airport codes, seaport codes, international dialing codes, ISO 3166 country codes, country profiles
- List of country calling codes - Wikipedia
- International Calling Codes - Pg1
- International Calling Codes - Numerical Listing
- NANPA: North American Numbering Plan Administration
GIL points
- ISO/IEC JTC1/SC22/WG20 - Internationalization
- W3C Internationalization and Localization
- OpenI18N - The Free Standards Group Open Internationalization Initiative
- CLDR Project (CLDR - Unicode Common Locale Data Repository)
- Unicode Locale Data Markup Language (LDML)
- Unicode Technical Standard #35, UTS TR35.
- Unicode CLDR - CLDR Survey Tool
- GitHub - unicode-cldr/cldr-json: JSON Data from the Unicode CLDR Project
- ICU - International Components for Unicode
- Locales and Resources - ICU Documentation
- ICU Demonstration - List of ICU Demonstrations
- PyICU · PyPI
- A Python extension wrapping the ICU C++ libraries.
- Everson Typography
- Internationalization (I18n), Localization (L10n), Standards, and Amusements (i18nguy)
- Database Internationalization Resources - Antikythera Publications
- ScriptSource - Writing systems, computers and people
- ScriptSource is a dynamic, collaborative reference to the writing systems of the world, with detailed information on scripts, characters, languages - and the remaining needs for supporting them in the computing realm.
- Welcome to Computers and Writing Systems
- Non-Roman and complex scripts in linguistic study, translation, literacy, and publishing.
- opentag.com
- This site is dedicated to the tools and technologies used in the localization of software, on-line help and documentation. Its aim is to provide you with useful information and tools that could help you streamline your localization processes.
- Multilingual Applications in WWW/Internet
- CIA -- The World Factbook
- Peoples Resources - Art & Life in Africa
- Countries Resources - Art & Life in Africa
- Date format by country - Wikipedia
- YMD, DMY, MDY, yy or yyyy, ...
- Date and time representation by country - Wikipedia
- Date and time notation in Europe - Wikipedia
- List of adoption dates of the Gregorian calendar per country - Wikipedia
- Quotation mark - Wikipedia
- Anführungszeichen – Wikipedia
- Better tabular overview / bessere tabellarische Übersicht.
Locale Views
- CLDR Charts - CLDR - Unicode Common Locale Data Repository
- CLDR Charts
- The piece that is ugly-embedded in that other page above.
- Verification Charts
- These charts show various data from CLDR locales, as it would be composed in usage; Dates, Time Zones and Numbers.
- ICU Demonstration - Locale Explorer
- Was broken and might work again.
- International Components for Unicode (ICU) Data
- LocalePlanet's ICU data and ULocale lists.
- Locale Helper
- Ease creation and maintenance of glibc locale files.
- Locale Helper: en_DK
- English Denmark locale
- GitHub - PanderMusubi/locale-en-nl: 🇳🇱 English language locale for the Netherlands (en_NL)
Babylon
- Ethnologue, Languages of the World (archive.org)
- Open Language Archives Community - OLAC
- Linguist List - Find a Language or Family
- This facility searches a database containing all current ISO 639-3 codes.
- Linguist List - Language and Resources Index Page
- Omniglot - a guide to written language (alphabets, hieroglyphs, Chinese characters, etc)
- Lists of languages - Wikipedia, the free encyclopedia
- The World Atlas of Language Structures Online
- Languages (World Language Resources)
- Countries (World Language Resources)
- What are the most spoken languages on earth?
- Links to resources for 350 languages.
- Articles for translators - Languages
- Language Reference Guides, grammar and spelling, punctuation, measurements and abbreviations, hyphenation, character set.
- AfricanLanguages.com - African Languages info
- Master of Arts in Language Studies: Yamada Language Guide | MastersDegree.net
- iLoveLanguages - Your Guide to Languages on the Web
- A comprehensive catalog of language-related Internet resources.
- yourDictionary.com Comprehensive and Authoritative Language Portal
- Nationalism and Language (by Bozidar Jaksic) (archive.org)
GIL misc
- my cross-cultural Calendar links
- Merlyn - Date and Time Index and Links - J R Stockton (archive.org)
- Calendar date - Wikipedia, the free encyclopedia
- Includes information about date formats used in different countries.
- Time zone - Wikipedia, the free encyclopedia
- List of tz database time zones - Wikipedia, the free encyclopedia
- Sources for Time Zone and Daylight Saving Time Data (archive.org)
- The tz database and related.
- IANA — Time Zone Database
- Date and Time Gateway - Timezone Selector
- Names as extensions to POSIX defined by the Olson tz database.
- i18nFAQTimeZone - ESW Wiki
- W3C Internationalization Core WG: Working with Times and Time Zones.
- Timezone curiosities
- Falsehoods programmers believe about time: @noahsussman: Infinite Undo
- More falsehoods programmers believe about time;...: @noahsussman: Infinite Undo
- The Best Of Dates, The Worst Of Dates (archive.org)
- The Hebrew Numbering System
- Hebrew Numbers and Counting (i18nguy)
- Arabeyes Project
- Thai Information Technology Standards
- AncientScripts.com
- Numeral system - Wikipedia, the free encyclopedia
- This article is about different methods of expressing numbers with symbols.
- CSS3 module: Lists
- This CSS level 3 module describes how lists are styled. Covers different native numeral systems.
- Unicode in the Unix Environment (czyborra.com)
- Universal Locales for Linux
- Introduction to i18n (Debian)
- EUROPA The official website of the European Union
- NationMaster.com - Where Stats Come Alive!
- Central data source and a handy way to graphically compare nations. NationMaster is a vast compilation of data from such sources as the CIA World Factbook, United Nations, World Health Organization, World Bank, World Resources Institute, UNESCO, UNICEF and OECD.
- Trail: Internationalization (The Java™ Tutorials)
- Locale Enhancement Project Home (OpenJDK Locale Enhancement Project)
- A complete guide to i18n in Python - mattlayman.com
- About Internationalization and Localization
- Apple MacOSX Internationalization and Localization Guide.
- Language and Locale IDs
- Apple MacOSX Internationalization and Localization Guide.
- How does Japanese Keyboard Input work?
GIL MS
- Software internationalization documentation - Globalization | Microsoft Learn
- [MS-LCID]: Windows Language Code Identifier (LCID) Reference
- It seems this could be the canonical place for information after having it watched for a few years. PDF and DOCX.
When you thought something could be a complete reference.. there'll be something else you didn't find yet.
- Language Identifier Constants and Strings (Windows)
- Well, this one might could had evolved into a real reference page.
Thank you, Microsoft, for moving around pages again and again and changing content to make sure one doesn't find the information at bookmarked places.
- National Language Support Constants (Windows)
- Hey, did I already mention that pages move around and bookmarks rotten?
- Locales and Languages (Windows)
- Yet another updated bookmark.
- [MS-LCID]: Locale Names without LCIDs | Microsoft Docs
- LOCALE_CUSTOM_USER_DEFAULT 0x0C00, Transient LCIDs and LOCALE_CUSTOM_UNSPECIFIED 0x1000. LCID 0x1000 "assigned" locales are not, i.e. no LCID at all but "do it yourself, we don't care".
See also Cuba's [es-CU based] LCID of 0x1000 basically means "do it yourself, with elevated permissions"
- GetLocaleInfoEx function (winnls.h) - Win32 apps | Microsoft Docs
- Locale Information Constants - Win32 apps | Microsoft Docs
- LOCALE_... constants that NLS uses to specify particular pieces of locale information.
- [MS-DOCX]: numFmt Extensions | Microsoft Docs
SpreadSheet
- Category:Calc - The Document Foundation Wiki
- LibreOffice Calc, the spreadsheet application
- Apache OpenOffice Calc
- Spreadsheet Project - Filter Test Documents
- OpenOffice.org Calc spreadsheet Excel import test documents.
- GNOME Office - Gnumeric
- operators and functions test cases, Excel documents, in Gnumeric
- gnumeric samples
- test case files
- Software Garden Products: wikiCalc Program
- Dan Bricklin's Wiki-Spreadsheet
- Project jQuery.sheet
- Ajax JavaScript & php spreadsheet plugin for the web browser.
- Excel specifications and limits - Excel - Office.com
- Workbook, worksheet, calculation, charting, PivotTable, PivotChart and shared workbook specifications and limits.
- The Spreadsheet Page - By John Walkenbach
- The Spreadsheet Page - Excel Oddities
- Index of Help for Excel functions, graphs and testing
- Excel Functions and Formulas (excelfunctions.net)
- Gnumeric Sheet Functions
- Guidelines and examples of array formulas - Office Support
- Excel-Translator
- Function names, separators, CELL and INFO arguments in various languages.
- 500 Excel Formula Examples | Exceljet
- Excel formula: Get value of last non-empty cell | Exceljet
- =LOOKUP(2,1/(A:A<>""),A:A)
- Excel formula: Average the last 3 numeric values | Exceljet
- {=AVERAGE(LOOKUP(LARGE(IF(ISNUMBER(data),ROW(data)),{1,2,3}),ROW(data),data))}
- Explain =LOOKUP(2,1/(A2:A10=D2),B2:B10) [SOLVED]
- Or: Excel seems to ignore (at least #DIV/0!) error values in LOOKUP arrays; another non-specified undocumented behaviour.
- See also excel - Logic behind last evaluation step of a LOOKUP formula to find last non empty value in a row. - Stack Overflow
- Guidelines and examples of array formulas - Microsoft Support
- Number format codes - Microsoft Support
- Number Formatting in Excel - All You Need to Know
- Number Format Codes
- LibreOffice Help page.
- Excel How To - Free Excel Tutorials Online (excelhowto.com)
- Microsoft Excel - Tutorials - BetterSolutions.com
- Sharing Tips and Tutorials for Excel
- Burns Statistics -- Spreadsheet Addiction
- Pearson Software Consulting Services (Chip's Excel Web Source)
- Design and Use of the Microsoft Excel Solver (PDF)
- GitHub - WizardMac/TimeFormatStrings: Convert Excel, POSIX, Stata, and Unicode time format strings
- Really?
- Review guidelines for customizing a number format - Excel
- See also ECMA-376-1:2016 OOXML specification, 18.8.30 numFmt (Number Format), 18.8.31 numFmts (Number Formats)
- [MS-OE376]: Part 4 Section 3.8.30, numFmt (Number Format) | Microsoft Docs
- (International incomplete) ABNF of number format codes.
- Excel functions (alphabetical) - Office Support
- Microsoft Excel 2013 function translations
- xlam - Excel and more!
- A page in German language about Excel with lot of information, but not very easy to the eye ...
- Get a list of distinct / unique values in Excel & extract unique rows
- Using formula expressions and not Standard Filter with unique output.
- Searchable Drop Down List in Excel (Very Easy with Dynamic Arrays) - Xelplus - Leila Gharani
- Google spreadsheets function list - Docs editors Help
- GOOGLEFINANCE - Docs editors Help
- The GOOGLEFINANCE spreadsheet function (and some related in the sidebar list)
- How to Import Share Price Data into Excel - Market Index
- Rather a documentation of the http://download.finance.yahoo.com/d/quotes.csv parameters
- Creating Excel files with Python and XlsxWriter — XlsxWriter Documentation
- Also Working with Python Pandas and XlsxWriter — XlsxWriter Documentation the data analysis library that can output in Excel format.
- EtherCalc - Share the URL to your friends and edit together!
- comp.apps.spreadsheets FAQ
- Spreadsheet - Wikipedia, the free encyclopedia
- Spreadsheet Project
- Spreadsheet Engineering Research Project (SERP)
- BMA New Issue Required Fields (PDF) (archive.org)
- Appendix B: Day-Count Bases
7 different ways to calculate the 30-days count in financial markets ...
- Convert Excel column width between characters unit and pixels (points) - Stack Overflow
- Excel Hell: It's not just blame for pandemic pandemonium being spread between the sheets • The Register
- Tabula: Extract Tables from PDFs
- GitHub - flywire/pdf_statement_reader: Python library and command line tool for parsing pdf bank statements
- GitHub - handsontable/hyperformula: An advanced headless evaluator and parser of Excel formulas. Built with TypeScript.
Statistical
- Is It Practical To Use Excel For Stats? (archive.org)
- Reliability of Statistical Procedures in Excel (archive.org)
- SSfM: Testing the Intrinsic Functions of Excel (archive.org)
- Errors, Faults and Fixes for Excel Statistical Functions and Routines (archive.org)
- Fixing Statistical Errors in Spreadsheet Software: The Cases of Gnumeric and Excel (2003, archive.org, PDF)
- One-way Analysis of Variance (ANOVA) | Real Statistics Using Excel
- Factorial ANOVA | Real Statistics Using Excel
- xkcd: Geothmetic Meandian
- This is what spreadsheet users really want.
File Formats
- Standards | OASIS
- Open Document Format for Office Applications (OpenDocument) Version 1.2
OpenDocument v1.2 part 2: Recalculated Formula (OpenFormula) Format (.ODT)
OpenDocument v1.2 part 2: Recalculated Formula (OpenFormula) Format (.HTML)
- OASIS Open Document Format for Office Applications (OpenDocument) TC
- Developing an XML-based file format specification for office applications.
- OpenDocument - Formula SC | OASIS
- Historical: This was the [OASIS OpenDocument] subcommittee working on a specification for recalculated formulas (e.g., spreadsheet formulas) in office documents.
- OASIS Open: OpenDocument - Formula Public Documents
- Historical: This was the then ongoing OpenDocument Format Formula specification (ODFF aka OpenFormula).
- OpenDocument 1.1 - Complete documentation and samples
- At Schema Central, generated from the ODF schema.
- OpenOffice.org XML File Format
- OpenOffice.org XML File Format Definition, FAQ, and other information. OASIS OpenDocument File Format Standardization.
- Projects · orcus / orcus · GitLab
- Library for processing spreadsheet documents. Orcus is a library that provides a collection of standalone file processing filters.
- Compound Document file format documentation (ODF .odt, ~52k)
- OpenOffice.org's Documentation of the Microsoft Compound Document File Format.
- Compound Document file format documentation (PDF, ~204k)
- Excel file format documentation (in progress) (ODF .odt, ~280k)
- OpenOffice.org's Documentation of the Microsoft Excel File Format. Simply the best documentation available for that file format.
- Excel file format documentation (in progress) (PDF, ~990k)
- libreoffice/contrib/mso-dumper - Python scripts for dumping the contents of Microsoft Office binary file formats into human readable content
- TC45 - Office Open XML Formats
- Ecma International's TC45 on Microsoft's XML file format.
- Standard ECMA-376
- Office Open XML File Formats, MS' OOXML
ISO/IEC 29500 versions available at Publicly Available Standards
- [MS-OE376]: Office Implementation Information for ECMA-376 Standards Support | Microsoft Docs
- officeotron - Validation for Office documents (ODF and OOXML) - Google Project Hosting
- OOXML - Complete documentation and samples
- At Schema Central, generated from the OOXML schema.
- [MS-DEVCENTLP]: Open Specifications Dev Center | Microsoft Docs
- [MS-XLSX]: Excel (.xlsx) Extensions to the Office Open XML SpreadsheetML File Format
- [MS-XLSX]: Formulas
- ABNF grammar used by formulas.
- Using structured references with Excel tables - Office Support
- DocumentFormat.OpenXml.Spreadsheet namespace ()
- ... of the Open XML SDK Class library reference. Might have some information in addition to to OOXML/ECMA.
- Understanding the Open XML file formats
- This section provides conceptual topics for understanding and working the Open XML file formats and markup languages.
- [MS-OI29500]: Office Implementation Information for ISO/IEC 29500 Standards Support
- Specifies information about how Microsoft Office implements ISO/IEC-29500 Office Open XML File Formats [ISO/IEC-29500:2008], including areas where additional detail may be of benefit to other implementers and areas where the product is known to vary from or extend the specification.
- [MS-OODF3]: Office Implementation Information for ODF 1.2 Standards Support
- Specifies information about how Office implements the OASIS Open Document Format for Office Applications (OpenDocument) Version 1.2 [ODF1.2].
- Word, Excel, and PowerPoint Standards Support
- documentation contains detailed technical documents for the Open Document Format (ODF) and Open XML (ECMA-376 and ISO/IEC-29500) file formats implemented in Word, Excel, and PowerPoint.
- Complex singularity versus openness | Joinup (archive.org)
- Open source impeded by incompatibilities and inconsistencies in the Office Open XML document format.
- Microsoft Office File Formats
- Binary file formats.
- [MS-CFB]: Compound File Binary File Format | Microsoft Docs
- [MS-XLS]: Excel Binary File Format (.xls) Structure Specification
- [MS-XLS]: Records
- [MS-XLS]: By Number Record Enumeration
- The SOSCQ Page (Excel) - Excel-Dateiformat BIFF
- Office Drawing 97-2007 Binary Format Specification
- Also known as Escher, .PDF from MS
- Microsoft Office 97 Drawing File Format
- Also known as Escher, Chicago project.
- Microsoft Open Specifications Support Team Blog - Site Home - MSDN Blogs
- A bucket of details on [MS-...] specs.
- Why are the Microsoft Office file formats so complicated? (And some workarounds) – Joel on Software
- Differences between the OpenDocument Spreadsheet (.ods) format and the Excel for Windows (.xlsx) format - Microsoft Support
- What MS-Excel supports or does not support in .ods (ODF OpenDocument Spreadsheet) file format.
- [MS-OODF]: Office Implementation Information for ODF 1.1 Standards Support | Microsoft Docs
CSV
- RFC 4180 - Common Format and MIME Type for Comma-Separated Values (CSV) Files
- CSV Spec 0.9.0-draft.2 | CSV Spec
- CSV is not a file format, it is a loose set of guidelines of how to structure tabular data into a plain text string.
- CSV Comma Separated Value File Format (How To) - Creativyst, Inc. Design, Software, Services (archive.org)
- RFC 7111 - URI Fragment Identifiers for the text/csv Media Type
- CSV on the Web: A Primer
- CSV on the Web Current Status - W3C
- CSV on the Web Working Group Wiki
- W3C working group. The mission of the CSV on the Web Working Group, part of the Data Activity, is to provide technologies whereby data dependent applications on the Web can provide higher interoperability when working with datasets using the CSV (Comma-Separated Values) or similar formats.
- public-csv-wg@w3.org Mail Archives
- of the W3C CSV on the Web Working Group
- CSV on the Web Community Group
- CSV on the Web: Use Cases and Requirements
- This document lists the use cases compiled by the Working Group that are considered representative of how tabular data is commonly used within data dependent applications. The use cases observe existing common practice undertaken when working with tabular data, often illustrating shortcomings or limitations of existing formats or technologies. This document also provides a set of requirements derived from these use cases that have been used to guide the specification design.
- Model for Tabular Data and Metadata on the Web
- Tabular data is routinely transferred on the web as "CSV", but the definition of "CSV" in practice is very loose. This document outlines a basic data model or infoset for tabular data and metadata about that tabular data. It also contains some non-normative information about a best practice syntax for tabular data, for mapping into that data model, to contribute to the standardisation of CSV syntax by IETF. Various methods of locating metadata are also provided.
- Open Data Institute | News | 2014: The Year of CSV
- PEP 305 -- CSV File API (Python)
- GitHub - vincentlaucsb/csv-parser: A modern C++ library for reading, writing, and analyzing CSV (and similar) files.
- GitHub - wireservice/csvkit: A suite of utilities for converting to and working with CSV, the king of tabular file formats.
- language agnostic - Scrape HTML tables from a given URL into CSV - Stack Overflow
- Short description of the tablescrape.py script
- CSV to Markdown Table Generator — Donat Studios
- Source at GitHub.
- Loading CSV File at the Speed Limit of the NVMe Storage
- CSV Injection Software Attack | OWASP Foundation
- GitHub - pmitros/tsvx: Prototype: Extended TSV format
- Include a header in TSV (Tab Separated Values) files, column names, types, ...
- VisiData
- Data science without the drudgery. CSV and Excel and other file formats of tabular data.
- GitHub - andmarti1424/sc-im: sc-im - Spreadsheet Calculator Improvised -- An ncurses spreadsheet program for terminal
- sc: the Venerable Spreadsheet Calculator | Linux Journal
- GitHub - mridah/csv2vcf: A small command line tool to convert a CSV file to VCard (.vcf)
Risks & Vulnerabilities
- The Absurdly Underestimated Dangers of CSV Injection
- Comma Separated Vulnerabilities | Context Information Security
- Data Exfiltration via Formula Injection #Part1
- Formula Injection - Pentestmag
- A Tale of Exploitation in Spreadsheet File Conversions | Brett Buerhaus
- European Spreadsheet Risks Interest Group - spreadsheet risk management and solutions conference
- European Spreadsheet Risks Interest Group - spreadsheet risk management and solutions conference
- Horror Stories
- Differences between the 1900 and the 1904 date system - Office | Microsoft Docs
- Microsoft Excel - Wikipedia #Quirks
OAuth & OAuth2
- OAuth Community Site
- An open protocol to allow secure API authorization in a simple and standard method from desktop and web applications.
- Code -- OAuth
- Libraries and other supporting examples.
- Everything You Need to Know About OAuth (2.0)
- OAuth 2.0 Simplified
- Understanding OAuth2 and OpenID Connect (OIDC)
- authentication - What's the difference between OpenID and OAuth? - Stack Overflow
- OAuth Authorization vs Authentication - Stack Overflow
- G Suite Updates Blog: Turning off less secure app access to G Suite accounts
- G Suite Updates Blog: Less secure app turn-off suspended until further notice
- Using OAuth 2.0 to Access Google APIs | Google Identity | Google Developers
- GitHub - google/gmail-oauth2-tools: Tools and sample code for authenticating to Gmail with OAuth2
- Specifically gmail-oauth2-tools/oauth2.py at master · google/gmail-oauth2-tools · GitHub Python2
Works with Mutt OAuthBearer. But OAuth out-of-band (oob) flow will be deprecated on 2022-10-03.
OAuth2DotPyRunThrough · google/gmail-oauth2-tools Wiki · GitHub How to set OAuth2 up with Google.
- Out-Of-Band (OOB) flow Migration Guide | Google Identity | Google Developers
- How to authorize a curl script to google oauth after oauth out-of-band (oob) flow is deprecated? ( Curl, Oauth ) | wikifix.dev
- How to set up OAuth2 in the Mutt email client | Enable Sysadmin
- Google OAuth out-of-band (oob) flow will be deprecated (#388) · Issues · GNOME / evolution-data-server · GitLab
- GitHub - ksuzukiTVDn1/gmail-oauth2-tools: Tools and sample code for authenticating to Gmail with OAuth2
- Updated gmail-oauth2-tools/oauth2.py at master · ksuzukiTVDn1/gmail-oauth2-tools · GitHub to Python3 and googleapiv2
- Authenticate an IMAP, POP or SMTP connection using OAuth | Microsoft Docs
- Of course that is SASL XOAUTH2 and not OAuthBearer ...
- Was ist OAuth/ OAuth2.0? - IONOS
Jugend hackt
- Jugend hackt – Mit Code die Welt verbessern
- CCC | Chaos macht Schule
- Teckids e.V. - Willkommen beim Teckids e.V.
- Raspberry Pi Tutorials
- Schrödinger programmiert Python | Rheinwerk Verlag
Kids & Robots
- Programmieren leicht gemacht - adäquate Modelle für den Einsatz im Unterricht - Wikibooks, Sammlung freier Lehr-, Sach- und Fachbücher
- Learn computer science. Change the world. | Code.org
- Computer Science Unplugged
- CS Unplugged is a collection of free learning activities that teach Computer Science through engaging games and puzzles that use cards, string, crayons and lots of running around.
- Robot Karol - mebis
- Robot Karol ist eine Programmierumgebung mit einer Programmiersprache, die für Schülerinnen und Schüler zum Erlernen des Programmierens und zur Einführung in die Algorithmik gedacht ist.
- CeeBot
- Learn and teach programming. PayWare with Demo. Also available in German and French.
- LEGO MINDSTORMS NXT -- Lego Mindstorms NXT - in der Schule
- Deutsche NXT-FAQ
- NXT Programs - Fun Projects for your LEGO Mindstorms NXT
- Lego Mindstorms Forum NXT bis RCX , Spybotics
- LDraw.org :: The Central Site for the LDraw Family of LEGO® CAD Software
- DIDEL - Microrobots and educational kits for technical schools and hobby roboticians
- Activities/ProgrammingForChildren - FSFE Wiki
misc
- How to become a developer: A cheat sheet - TechRepublic
- 1x Engineer
- If there's such a thing as a 10x engineer, surely there must be a 1x engineer, too?
- How to Deal with Difficult People on Software Projects
- IANA -- Protocol Registries
- IANA is responsible for maintaining many of the codes and numbers contained in a variety of Internet protocols.
- freedesktop.org - Home
- freedesktop.org is open source / open discussion software projects working on interoperability and shared technology for X Window System desktops.
- Pantz.org Technical Reference Site
- GULP - Das Portal für IT Projekte
- The Programming Language Lua
- Debugging Firefox with GDB — Firefox Source Docs documentation
- The Code Project - Homepage - Free Source code and Tutorials
- Parallax Scrolling, Java Cryptography, YAML, Python Data Science, Java i18n, GitLab, TestRail, VersionOne, DBUtils, Common CLI, Seaborn, Ansible, LOLCODE, Current Affairs 2018, Apache Commons Collections
- Tutorials, tutorial, tutorials.
- Lern Programmieren mit Java!
- Welcome to The PC Guide!
- ISBN Converter
- European Article Number - Wikipedia
- Prüfziffern
- Prüfzifferberechnung für Kontonummern | Deutsche Bundesbank
- Bankleitzahlen | Deutsche Bundesbank
- The tcshrc Project Page
- Galileo Computing - Bücher zur Programmierung und Softwareentwicklung
- bietet im Bereich <openbook> ausgewählte Bücher als HTML-Version.
- O'Reilly's CD bookshelf
- Reference Library O'Reilly
- c++ģʽ C++Éè¼ÆÄ£Ê½ C++²âÊÔ C++¿ª·¢-UML Èí¼þ¹¤³Ì×éÖ¯
- The International System of Units (SI) - BIPM
- Bureau International des Poids et Mesures
- SI -- from Eric Weisstein's World of Physics
- "SI" stands for "System International" and is the set of physical units agreed upon by international convention.
- Recommendations concerning Units (SI Units) | IAU
- SI units and astronomical units
- Astrodynamic Parameters (NASA)
- METAS - metasweb Masseinheiten / units of measurement
- METAS - metasweb unit conversion
- File:English Length Units Graph.svg - Wikimedia Commons
- The next time someone asks about measurements point to this self-explanatory graphic.
- Metric Conversion Tables to or from Imperial Measurements The SI System for Metric Conversion
- Over 1000 factors on 12 pages for Metric Conversion. Plus 30 detail pages for Btu, water, paper, density, etc.
- The NIST Reference on Constants, Units, and Uncertainty
- NIST Guide to SI Units - Appendix B9. Conversion Factors
- Factors for units listed by kind of quantity or field of science.
- Conversion of Units
- Units Markup Language home page
- EasyRGB - Color math and programming code examples
- Color Namer
- Gwydion Dylan: Overview
- Dylan is an advanced, object-oriented, dynamic language which supports the rapid development of programs. When needed, the programmer can later optimize [his or her] programs for more efficient execution by supplying type information to the compiler. Nearly all entities in Dylan (including functions, classes, and basic data types such as integers) are first class objects. Additionally Dylan supports multiple inheritance, polymorphism, multiple dispatch, keyword arguments, object introspection, and many other advanced features...
- SPEC - Standard Performance Evaluation Corporation
- A non-profit corporation formed to establish, maintain and endorse a standardized set of relevant benchmarks that can be applied to the newest generation of high-performance computers.
- Predefined Macros | Microsoft Docs
- Predefined preprocessor macros in the Microsoft Visual C++ (MSVC) compiler. (_WIN32, _WIN64, ...)
- Dynamic Data Exchange (DDE)
- Dynamic Data Exchange (DDE) and NetDDE FAQ
- AppData Specification
- Every software center that exists allows the user to look at screenshots and a long description of the application before it is installed. For most users it allows them to answer the question Do I want to install this...
- OpenShift by Red Hat
- Develop, Host, and Scale Your Apps in the Cloud. The Open Hybrid Cloud Application Platform by Red Hat.
- DGL • Hauptseite
- DelphiGL, deutschsprachige Community für OpenGL und 3D-Programmierung.
- Code Kata
- reproducible-builds.org
- Semantic Versioning 2.0.0 - Semantic Versioning
- NVD - CPE Dictionary
- Official Common Platform Enumeration (CPE) Dictionary.
CPE is a structured naming scheme for information technology systems, software, and packages.
- Epoch (reference date) - Wikipedia
- Notable epoch dates in computing
- Epoch Converter - Unix Timestamp Converter
- Date format converter
- Convert between Text Date, RFC 822, ISO 8601, UNIX Timestamp, Mac Timestamp, Microsoft Timestamp and FILETIME (1601-01-01).
- ShellCheck – shell script analysis tool
- bobby-tables.com: A guide to preventing SQL injection
- Vanilla JS
- Vanilla JS is a fast, lightweight, cross-platform framework for building incredible, powerful JavaScript applications.
- The Cryptopals Crypto Challenges
- CSC 195.01 2013S : Class 05: Inter-Application Communication with D-Bus (1): The Basics
- CSC 195.01 2013S : Class 06: Inter-Application Communication with D-Bus (2): Writing Servers
- CSC 195.01 2013S : Class 08: Inter-Application Communication with D-Bus (3): Writing Clients
- 15 Types of Regression you should know
- Resources | Google Summer of Code | Google Developers
- Google Summer of Code Guides
- For GSoC mentors and students.
- First Steps in GSoC | Sayak Paul
- Naman Gera's answer to How can I apply and prepare for Google Summer of Code? - Quora
- AsciiDoc
- AsciiDoc is a text document format for writing notes, documentation, articles, books, ebooks, slideshows, web pages, man pages and blogs. AsciiDoc files can be translated to many formats including HTML, PDF, EPUB, man page.
- Advent of Code
- Solve coding puzzles.
- We Work Remotely: Remote jobs in design, programming, marketing and more
- Free & Open Source Jobs - fossjobs.net
- Find engineering teams that share your values | Key Values
- GitHub - remoteintech/remote-jobs: A list of semi to fully remote-friendly companies in tech.
- Programming Interview Questions + Help Getting Job Offers | Interview Cake
- CoderPad
- Technical Phone Interview - Coding Hire
- online text editor - collabedit
- httpbin.org
- A simple HTTP Request & Response Service.
- badssl.com
- Manual testing of security UI in web clients.
- Whatlang
- Natural language detection library for Rust.
- registry.npmjs.org
- Node.js npm registry; registry.npmjs.org/npm , registry.npmjs.org/npm/1.1.25 , ...
- Wat
- A Lightning Talk.
- All Remote | GitLab
- GitLab is an all-remote company with team members located in more than 50 countries around the world. On this page and subpages, we'll share what "all remote" really means, how it works at GitLab, some tips and tricks for remote teams, and resources to learn more.
- Ask HN: Good Remote Work Literature? | Hacker News
- Text Rendering Hates You
- Processing.org
- Processing is a flexible software sketchbook and a language for learning how to code within the context of the visual arts.
- URL Standard
- Addressing some shortcomings of RFC 3986.
- Learn X in Y Minutes: Scenic Programming Language Tours
- Guide to GDPR for App Developers
- Introduction | WebRTC for the Curious
- This book was created by WebRTC implementers to share their hard-earned knowledge with the world. WebRTC for the Curious is an Open Source book written for those that are always looking for more. This book doesn’t settle for abstraction.
- Commit Message Generator (whatthecommit.com)
- WTF eG — VEBIT e. V. (archive.org)
- Werkkooperative der Technikfreundinnen e. G. i. G.
- Cosmopolitan C Library
- cosmopolitan libc build-once run-anywhere c without devops
- DMOJ: Modern Online Judge
- The DMOJ is a modern contest platform and archive of programming problems.
- draft-knodel-terminology-02 - Terminology, Power, and Inclusive Language in Internet-Drafts and RFCs
- Office Visual Basic for Applications (VBA) reference | Microsoft Docs
- VBA API
- Workbook object (Excel) | Microsoft Docs
- VBA API
- Worksheets object (Excel) | Microsoft Docs
- VBA API
- Worksheet object (Excel) | Microsoft Docs
- VBA API
- Range object (Excel) | Microsoft Docs
- VBA API
- RHSB-2021-007 Trojan source attacks (CVE-2021-42574,CVE-2021-42694) - Red Hat Customer Portal
- The Unicode BiDi thing in visual code review. With diagnostic script.
- Trojan Source Attacks
- Invisible source code vulnerabilities.
- GitHub - nickboucher/trojan-source: Trojan Source: Invisible Vulnerabilities
- Trojan Source: Invisible Vulnerabilities | Light Blue Touchpaper (archive.org)
- ‘Trojan Source’ Bug Threatens the Security of All Code – Krebs on Security
- GitHub Readme Streak Stats Demo
- Streak stats you can add to your GitHub account (or anywhere else).
- GitHub - anuraghazra/github-readme-stats: Dynamically generated stats for your github readmes
- More useless stats you can add to your GitHub account (or anywhere else).
- Appwrite - Open-Source End-to-End Backend Server
- Appwrite is a secure end-to-end backend server for Web, Mobile, and Flutter developers that is packaged as a set of Docker containers for easy deployment.
- Packit | Packit
- An open source project aiming to ease the integration of your project with Fedora Linux, CentOS Stream and other distributions. For upstream projects that want to build RPM packages out of pull requests, commits or releases, test their code changes and bring upstream releases to Fedora Linux.
- Packit - how to create pull-request for Fedora from upstream | Miroslav Suchý
- toolbx
- Container Toolbox is a tool for Linux, which allows the use of interactive command line environments for development and troubleshooting the host operating system, without having to install software on the host. It is built on top of Podman and other standard container technologies from OCI.
- Quay Container Registry
- Quay [builds, analyzes, distributes] your container images.
- Shortcut Finder for developers ‒ defkey
- All hotkeys - Welcome to All Hotkeys!
- Standard Keyboard Shortcuts - GNOME Human Interface Guidelines documentation
- GitHub - CrowdDotDev/crowd.dev: The community-led growth platform, built with developers in mind.
- GitHub - ryanoasis/nerd-fonts: Iconic font aggregator, collection, & patcher. 3,600+ icons, 50+ patched fonts: Hack, Source Code Pro, more. Glyph collections: Font Awesome, Material Design Icons, Octicons, & more
- About Thunderbird - Thunderbird Developer
- RFC 3986: Uniform Resource Identifier (URI): Generic Syntax
- RFC 8089: The "file" URI Scheme
- E.4. Backslash as Separator <-- take that, Microsoft.
- Skill Icons
File Formats
- IANA | MIME Media Types
- File Extension Seeker - Metasearch engine for file extensions
- Metasearch engine for file extensions.
- Document Liberation Project
- The Document Liberation Project is a home for the growing community of developers united to free users from vendor lock-in of content. The project's libraries provide read support for file formats including MS Visio, CorelDraw, MS Publisher, Apple Keynote, and a handful of different old Macintosh formats.
- File Signatures
- File-Extension.net - Best File Extension / Type / Format Resources List
- File-Extensions.org - File extension library
- FileInfo - The File Extensions Database
- Dot What? - File Extension resource
- File Format Documentation Collection (archive.org)
- A few file formats. Best for Lotus 1-2-3.
- [MS-OFFFFLP]: Technical Documents | Microsoft Docs
- [MS-OFFSTANDLP]: Word, Excel, and PowerPoint Standards Support | Microsoft Docs
- The MetaFileExplorer - EMF, Windows only
- FIG Formats (archive.org)
- The digital negative DNG archival format for camera raw files (Adobe)
- AutoCAD 2000 DXF Reference (archive.org)
- PDFlib: Documentation
- veraPDF | Industry Supported PDF/A Validation
- Xbase Data file (*.dbf)
- dBASE III to 5
- dBASE .DBF File Structure
- dBASE 7
- dBASE File Format (with coding details): DBF and DBT/FPT file structure | Independent Software
- Classic Planet PDF - fsType Definitions (archive.org)
- Indicates font embedding licensing rights for the font.
- Digital Corpora
- A website of digital corpora for use in computer forensics education research. Of specific interest to developers of applications and file format filters may be the files of various formats at Govdocs1 — (nearly) 1 million freely-redistributable files
- Data Converter Tools - Tool Slick
- JSON, CSV, HTML, XML, YAML, MessagePack
- GitHub - x1sc0/office-interoperability-tools: Tools for evaluation of interoperability of office packages
- File: Test.svg - Wikimedia Commons
- If you need SVG test files, there's a bunch of them in the file history.
- MetadataWorkingGroup Guidelines for handling image metadata
- Attached to that forum post as mwg_guidance2.0.pdf
- EXIF Tags (exiftool.org)
- Exiv2 - Image metadata library and tools
- EXIF tags.
- Modern SQL: A lot has changed since SQL-92
- Fire And Motion - Joel on Software
- Geek Cruises
- Error Messages From The Bard
- The International Obfuscated C Code Contest
- Worlds Shortest C Implementation of Rot13
- DevOps Reactions
- The coding love
- NandGame - Build a computer from scratch.
- xkcd: Standards
- Drone-Ver v.1.sleepy.0.0.calamitous.1437363538.7
- The ultimate software versioning scheme.
- Programming Sucks
- All software sucks
- Programming Quotes
Museum
- VisiCalc: Information from its creators, Dan Bricklin and Bob Frankston
- Including the original software executable running on DOS, only 27520 bytes
- A Spreadsheet Way of Knowledge - Backchannel - Medium
- About VisiCalc and Lotus 1-2-3, a 1984 article republished 2014-10-24
- /public/ftp/pub/Linux/apps/financial/spreadsheet (ibiblio.org)
- Historical spreadsheet programs, among them: SC - The Spreadsheet Calculator. SC is a curses-based spreadsheet, written in the ancient times by James Gosling.
- Lotus 1-2-3 For Linux
- Other History Sites
- List of Dan Bricklin
- The Slackware Linux Project: Slackware Release Announcement
- Software Folklore ― Andreas Zwinkau
- Bugs with symptoms beyond belief.
- One Div Zero: A Brief, Incomplete, and Mostly Wrong History of Programming Languages
- Esoteric resources at esolangs.org
- Resources related to esoteric programming languages.
- Two-Bit History
- Computing through the ages.
- TechYaks
- Over 80K software development "tech talks" ranked algorithmically to surface the industry's best presentations from the past, present and future.
- Hack_Curio: Decoding the Cultures of Hacking
- Hack_Curio is a video portal into hackerdom that helps explains why hacking is one of the most important phenomena of global culture and politics in the late 20th and early 21st century.
- 647959 - Add Honest Achmed's root certificate
Home ../../bookmarks