here you goThings I’ve made, read and saved — shared here.

Archive

9,694 entries: 92 from X, 8,929 from Pinboard, saved 1998 to 2026.

Browse by tag, site, author, folder or language

Tags

Sites

Authors

Folders

Languages

Showing 4,451–4,500 of 9,694

2019

GNU/Linux, MacOS

See also:

Keep in mind to explore:

Notes

  • To convert the .pub file into pem format -- ssh-keygen -f rsa.pub -e -m pem
  • pidof <appname> returns the pid of the application. useful for killing the app etc..
  • The sock file for mysql5 installed using macports lives at /opt/local/var/run/mysql5/mysqld.sock . You will need this when using thirdy party SQL clients such as Seqel Pro
  • Use python_select to select the default python that is used on your mac.
  • If a download is corrupted while installing from macports, try sudo port clean --all <the offending package>
  • Upgrade ports and all other software: sudo port selfupdate and sudo port upgrade outdated.
  • X environment tricks for Mac OS X.

Pick up *NIX skills

Installing OpenJDK on Mac OSX

  • Download Soylatte

  • Unzip to ~

  • Edit ~/.bashrc and add these lines:

     JAVA_HOME=~/java
     export JAVA_HOME
     export PATH=~/java/bin:$PATH
     
  • activate changes with $source ~/.bashrc

Burning ISO images to CD/DVD from shell

DVD:

$ growisofs -dvd-compat -Z /dev/hdc=dvd.iso

CD: Find out the cd recording device using cdrecord -scanbus

$ $ cdrecord -scanbus
scsibus2:
        2,0,0   200) 'HL-DT-ST' 'DVDRAM GH22NS50 ' 'TN01' Removable CD-ROM

Use cdrecord to burn.

$ cdrecord -v -dao dev=2,0,0 speed=8 file.iso

don't want namservers handed out by local DHCP server?

Comment out domain-name-servers, in /etc/dhcp/dhclient.conf.

Tell apt to add new pgp key to its list

$ curl -s http://someurl/key.pgp | sudo apt-key add -
$ sudo apt-key list

Label Drives using e2label command

$ sudo e2label /dev/sdg1 emdebian

Compiling stuff in 32 bit mode on Mac OSX 10.6

Add these flags to ./configure.

CFLAGS="-O -arch i386" CXXFLAGS="-O -arch i386" LDFLAGS="-arch i386"

Produce print ready copies of man docs

$ man -t `man -w tmux` | ps2pdf - tmux.pdf

Change keyboard layout in the shell

$ setxkbmap us

2014/11/25: swapped caps and left-ctrl. Put line below in /etc/default/keyboard

XKBOPTIONS="lv3:ralt_alt,compose:menu,ctrl:nocaps"

and run sudo dpkg-reconfigure keyboard-configuration and confirm changes to keep the changes you have made.

find memory usage by a process(?)

$ ps -Ao pid,rsz,args | grep <name>

src

Enabling anti-aliased fonts on Ubuntu

Edit $IDEA/bin/idea.vmoptions file and add these options:

-Dswing.aatext=true
-Dawt.useSystemAAFontSettings=lcd

The above options managed to get smooth font rendering on Ubuntu 12.10 using OpenJDK7.

Resources

OpenBSD

Minix

Debian

Measuring stuff

  • osquery -- allows you to easily ask questions about your Linux and OSX infrastructure. Whether your goal is intrusion detection, infrastructure reliability, or compliance.

Running log of things

notes

Computer Science

A jumping off point for cs topics.

Curriculum

Concepts

  • CS for all -- "In a nutshell, our objective is to provide an introduction to computer science as an intellectually rich and vibrant field rather than focusing exclusively on computer programming. While programming is certainly an important and pervasive element of our approach, we emphasize concepts and problem-solving over syntax and programming language features." At Mudd, this course is taken by almost every first-year student—irrespective of the student’s ultimate major—as part of our core curriculum.

  • Introduction to Theoretical Computer Science "This is a textbook in preparation for an introductory undergraduate course on theoretical computer science. I am using this text for Harvard CS 121."

  • The "Computer Science Field Guide" is an online interactive resource for high school students learning about computer science, developed at the University of Canterbury in New Zealand.

  • Graph Coloring Methods

  • Great Ideas in Theoritical Computer Science -- CS251 at CMU.

Constructing proofs in the context of CS

via this twitter discussion

Reading Lists

Forgotten ideas of Computer science

Joe Armstrong, the creator of Erlang programming language, asked on twitter (2018/1/11):

: "I’m interested in the forgotten ideas of computer science. Needed for a talk.Can you post examples of great CS ideas that have been largely forgotten. Examples: Linda tuple spaces, Boyer-Moore algorithm". Fascinating response.

ChanningWalton:

: Linda tuple spaces (cf: Fly object space by @NigeWarren, gigaspaces's commercial offering). "What are tuple spaces and Linda tuple spaces good for?" One use is the blackboard idea. Tuples are put into the space, processes observing the space can be notified of interesting tuples, ‘take’ one or all, perform work and ‘put’ new tuples into the space for other workers to pick up. Tuples can also be leased out from the space, this guarantees only one process can lease a tuple to do something with it. JavaSpaces is based on these ideas. [Argorak: Interesting. Has this influenced the idea of a "document based application" comes from in OS X? Which for example doesn't close when the last window closed, ready for handling others?] Not really, that's how OS 9 works also. The "document-based" thing in OS X is mostly about a way of structuring the OOP in your application to best take advantage of the builtin capabilities of NSDocument. The most OpenDoc-y idea in OS X is the little-used "Services" menu. Oddly OpenDoc DID massively influence Microsoft, who stripped down the basic concept to a less-ambitious, but much more practical, set of ideas around IPC/software components. Their version was called OLE, which became COM, which set the basic design of C#/.NET.

enkiv2:

: Transpointing windows Regex derivatives Enfilades Cord routing

: Specific tech: 9p, MUMPS, XU88, network-transparent object method forwarding, icon/unicon, APL, bitmapped keyboards, literal cranks for debugging, distributed expert systems (like the 5th generation computer project)

: Plan9, Xanadu, colorforth, the legacy Amiga community, & the Squeak Smalltalk community each have a greater number of interesting ideas than the whole of the web dev & devops world combined, and all those ideas are 30+ years old.

Hillelogram:

: APLs and special purpose langauges, Program Synthesis For Declarative Building Design

thompson_si:

: - Lucid - coroutines

rtraschke:

: - Croquet TeaTime protocol for synchronised distributed objects

  • Arena based memory allocation
  • Using make to describe artefact dependencies, instead of as a programming language

robertrodermann:

: Inmos Transputer, Occam. π-calculus

mcclure111:

: OpenDoc -- Briefly in the mid-90s Apple and IBM collaborated on a tech that inverted the idea of a gui "application" and refocused around "documents" as the core idea. You'd be working on a piece of data, and software would exist sort of in a cloud around your document things you previously wrote as an application would be broken down into a cloud of individual features. Features could be mixed and matched from different apps, so you could be in Word using Wordperfect's spellchecker and editing one of the graphics using Photoshop's tools.

@andrew_j_stone:

: E (programming language) (justincormack: Still alive in capnproto rpc! Directly based on E https://capnproto.org/rpc.html) (evanplaice: The capabilities sound eerily like modern JS + AJAX + Rxjs/promises/async/await. Specifically, the event-callback model to avoid deadlocking, fetchi g distributed resources asynchronously, and using promises to ensure order of execution on async code.)(KentonVarda: The concept of a Promise in both Cap'n Proto and JavaScript is derived from E's promises, hence they all look similar. However, "capabilities" are an entirely separate concept, not directly related to promises or async event loops. On the Cap'n Proto RPC page, scroll down to "distributed objects" -- that's the part about capabilities.)

jcoplien:

: 1s complement arithmetic. Lissajou status trace console displays with the upper 8 address bits driving the X-axis and the lower 8 bits driving the Y-axis. Twister-card memory. BCD ALUs. ABACABAD scheduling. Leaky bucket counters. Coroutines. Buddy system. Use of XOR'ed links to traverse a list in either direction with just one link field. And, to be snarky, object-oriented programming, forgotten in about 1980 and replaced by class-oriented programming.

jminguillona:

: Bresenham's algorithm for drawing lines and other graphic primitives

GabeMoralesVR:

: More on graphics side of things, but deferred tile-based rendering. Only PVR really explored it, but it makes so much more sense than traditional rasterization. Free z-culling, essentially infinite fill rate, no wasted rasterization. Sadly, apple ditched PVR, so likely dead tech.

exclamatio:

: MASCOT, DARTS, all those '80s real-time system methodologies

Kitten_tech:

: The NetBLT protocol: net flow control/retransmission based on transferring blocks, rather than a stream like TCP.

DavidTWeaver:

: - The Marr Hypothesis

  • Multi-Agent Systems
  • Boids Algorithm
  • Cybernetics (or at least, it doesn't get emphasized in CS anymore)
  • Fuzzy Logic

mhollemans:

: - self modifying code

plragde:

: Treaps. Brzozowski derivatives. FKS perfect hashing. (TommyEttinger: Brzozowski derivatives and their successors in partial derivatives are still actively studied in some circles, though I think they have a ways to go to catch highly-optimized traditional regex libraries for efficiency. Great potential though.) (ysr1729: They have been used in decision problems in logic and computer science -- e.g. for satisfiability of interval temporal logic using automat-theoretic methods.)

Ngnghm:

: Orthogonal Persistence. Reflection. Fexprs. Lisp Machines. The Systems Paradigm. FORTH. The TUNES project. Having lots of simple connected CPUs with each unit of RAM, instead of a overly complex and securitywise hazardous central CPU behemoth (connection machine, greenarrays). (phenidone: Persistence: true and that makes me a little sad - my PhD on GC was implemented in an orthogonal-persistence storage layer. Reflection is still a big thing at least in Java-land, and there is a bit of a forth fanboy-revival in the microcontroller space.)

madrawls:

: clockless flow computing

danbjson:

: Analogous machines, ie solving a diffential differential equation by building an electric circuit with the same characteristics and then measuring the current over time.

KalmanReti:

: Pattern matching as a primitive operation in a language SNOBOL

hypercubed:

: (3) Stanford Seminar - Concatenative Programming: From Ivory to Metal - YouTube

notes