I love LLMs, I hate hype | the singularity is nearer
https://geohot.github.io//blog/jekyll/update/2026/07/12/i-love-llms.html
AI is the continuation of the computer revolution. I love computers so much.
Perhaps not Boring Technology after all
https://simonwillison.net/2026/Mar/9/not-so-boring/#atom-everything
A recurring concern I’ve seen regarding LLMs for programming is that they will push our technology choices towards the tools that are best represented in their training data, making it harder for new, better tools to break through the noise.
CCC vs GCC - Harshanu
https://harshanu.space/en/tech/ccc-vs-gcc/
For Anthropic’s stated goal of demonstrating that Claude can build complex software, CCC is a genuine success. For anyone wanting to compile software to actually run efficiently, GCC (or Clang, or any production compiler) remains the only real option.
Opinion | The A.I. Disruption Has Arrived, and It Sure Is Fun - The New York Times
https://www.nytimes.com/2026/02/18/opinion/ai-software.html?unlocked_article_code=1.NFA.Q5V5.RFhmZVUFQ04Z&smid=url-share
All of the people I love hate this stuff, and all the people I hate love it. And yet, likely because of the same personality flaws that drew me to technology in the first place, I am annoyingly excited.
Programming is Dead
https://hamptonmakes.com/blog/2026/02/06/programming-is-dead.html
I’ve heard so many engineers say “Oh, I dabble but I just don’t think AI can do it well” are just in absolute denial at this point. Yes, AI can do a terrible job right now if you don’t wield it properly. The loom can make a mess of things if it’s improperly used. But, this is the worst these tools will ever be. They will only get better.
1. Introduction to Rivulet / Jo Wood | Observable
https://observablehq.com/@jwolondon/rivulet-intro?collection=%40jwolondon%2Frivulet
Rivulet is an esolang ('esoteric language') written by Daniel Temkin that uses gylphs to represent programming instructions. While it would not be a practical basis for most programming tasks, it does represent an interesting space between text-encoded programming languages and graphically encoded data visualization. As a language it invites careful thought about 'code layout', as its design offers much more flexibility in visual form than most languages. It encourages us to consider the role that design choices and aesthetics play in helping construct visual schemata. It challenges notions of 'efficiency' in the construction and interpretation of computer code, much like the Atypography movement does with text.
The Return of Language-Oriented Programming | Middle of Nowhere
https://blog.evacchi.dev/posts/2025/11/09/the-return-of-language-oriented-programming/
In recent years, there has been something of a “winter” in DSL design and development due to the high maintenance costs and the tooling expectations from end users. This blog post explored the syntactic dimension of “token-efficiency” in DSL design: I invite you to explore more of this space, including semantics; I, for one, will welcome more crazy DSL implementations!
Thinking About Thinking With LLMs | Davis Haupt
https://davi.sh/blog/2025/09/thinking-with-llms/
New tools always make it easier to code with a shallower understanding of the system. Claude Code, Cursor and their ilk are bringing programming closer to natural language just like C and Java and Python once did.
This is a good thing! It’ll lead to the continued democratization of programming and ever more people in conversation with computers. But I don’t think this changes the fundamental reality that the best programmers aren’t the ones that make the widest use of the highest abstractions. That’ll continue to be those who dig down and understand what’s happening at a deeper level — that understanding will always lead to more deft use of any tools that programmers have at their disposal.
The joy of rediscovering Perl - Eskild Hustvedt
https://blog.zerodogg.org/2025/10/13/the-joy-of-rediscovering-perl/
Lately I've gotten a lot back into Perl-programming, and it has honestly been an absolute delight.
6502 is a Good Starting Point for Beginning Assembly Programming
https://nemanjatrifunovic.substack.com/p/6502-is-a-good-starting-point-for
To learn basic assembly programming concept, having a simple system is more important than having a powerful one.
Phrase origin: Why do we "call" functions? – Arthur O'Dwyer – Stuff mostly about C++
https://quuxplusone.github.io/blog/2025/04/04/etymology-of-call/
On StackExchange, someone asks why programmers talk about “calling” a function. Several possible allusions spring to mind:
Calling a function is like calling on a friend — we go, we stay a while, we come back.
Calling a function is like calling for a servant — a summoning to perform a task.
Calling a function is like making a phone call — we ask a question and get an answer from outside ourselves.
The true answer seems to be the middle one — “calling” as in “calling up, summoning” — but indirectly, originating in the notion of “calling for” a subroutine out of a library of subroutines in the same way that we’d “call for” a book out of a closed-stack library of books.
TDD, AI agents and coding with Kent Beck - YouTube
https://www.youtube.com/watch?v=aSXaxOdVtAQ&t=3713s
Now, with over five decades of programming experience, Kent is still pushing boundaries—this time with AI coding tools. In this episode of Pragmatic Engineer, I sit down with him to talk about what’s changed, what hasn’t, and why he’s more excited than ever to code.
Chat is a bad UI pattern for development tools—Daniel De Laney
https://danieldelaney.net/chat/?ref=sidebar
The first company to get this will own the next phase of AI development tools. They’ll build tools for real software instead of toys. They’ll make everything available today look like primitive experiments.
How I code with LLMs these days
https://www.phillipcarter.dev/posts/coding-with-llms
To me, all signs point towards software engineering changing radically as a profession to be much more oriented around the what and why of software, and much less around the how. This will cause disruption at a massive scale in the long run. But in the short run, it's just a lot of fun to play with these tools and see what they can do.
Tabloid: the clickbait headline programming language
https://tabloid.vercel.app/
Tabloid is a turing-complete programming language for writing programs in the style of clickbait news headlines.
Playground Wisdom: Threads Beat Async/Await | Armin Ronacher's Thoughts and Writings
https://lucumr.pocoo.org/2024/11/18/threads-beat-async-await/
It's been a few years since I wrote about my challenges with async/await-based systems and how they just seem to not support back pressure well. A few years later, I do not think that this problem has subsided much, but my thinking and understanding have perhaps evolved a bit. I'm now convinced that async/await is, in fact, a bad abstraction for most languages, and we should be aiming for something better instead and that I believe to be thread.
Before You Can Have Smalltalk, You Must First Defeat Capitalism. — Matthew Gaudet
https://www.mgaudet.ca/blog/2024/10/28/before-you-can-have-smalltalk-you-must-first-defeat-capitalism
The title of this blog post is at least a little sarcastic, but I think is an honest to goodness truth: If you want to build a future that involves beautiful systems like Smalltalk, you must first rebuild the economic environment wherein it could be built. Wherein it could succeed! These systems idealized in lamentations at SPLASH all seem to me to be products of economic surplus combined with the right people. We need an economy that has surpluses around for people to do explorations.
The case for handcrafted software in a mass-produced world • The Register
https://www.theregister.com/AMP/2024/09/18/the_future_of_software_part_2/
As AI automates programming, it could be worth exploring the value of bespoke code
Pin and suffering
https://fasterthanli.me/articles/pin-and-suffering
I'd like to think that my understanding of "async Rust" has increased over the past year or so. I'm 100% onboard with the basic principle: I would like to handle thousands of concurrent tasks using a handful of threads. That sounds great!
Ditherpunk — The article I wish I had about monochrome image dithering — surma.dev
https://surma.dev/things/ditherpunk/
I always loved the visual aesthetic of dithering but never knew how it’s done. So I did some research.
Ditherpunk — The article I wish I had about monochrome image dithering — surma.dev
https://surma.dev/things/ditherpunk
I always loved the visual aesthetic of dithering but never knew how it’s done. So I did some research.
My 20 Year Career is Technical Debt or Deprecated
https://blog.visionarycto.com/p/my-20-year-career-is-technical-debt
My entire career is now technical debt, or the code has been deprecated.
SQLite performance tuning - Scaling SQLite databases to many concurrent readers and multiple gigabytes while maintaining 100k SELECTs per second - phiresky's blog
https://phiresky.github.io/blog/2020/sqlite-performance-tuning/
Scaling SQLite databases to many concurrent readers and multiple gigabytes while maintaining 100k SELECTs per second
SQLite performance tuning - Scaling SQLite databases to many concurrent readers and multiple gigabytes while maintaining 100k SELECTs per second - phiresky's blog
https://phiresky.github.io/blog/2020/sqlite-performance-tuning
Scaling SQLite databases to many concurrent readers and multiple gigabytes while maintaining 100k SELECTs per second
AI-enhanced development makes me more ambitious with my projects
https://simonwillison.net/2023/Mar/27/ai-enhanced-development/
I use ChatGPT a lot, and I want my own archive of conversations I’ve had with it.
AI-enhanced development makes me more ambitious with my projects
https://simonwillison.net/2023/Mar/27/ai-enhanced-development
I use ChatGPT a lot, and I want my own archive of conversations I’ve had with it.
Why Go and not Rust? | Loris Cro's Blog
https://kristoff.it/blog/why-go-and-not-rust/
What's the role of Go in a universe where Rust exists?
Why Go and not Rust? | Loris Cro's Blog
https://kristoff.it/blog/why-go-and-not-rust
What's the role of Go in a universe where Rust exists?
Pretty State Machine Patterns in Rust
https://hoverbear.org/blog/rust-state-machine-pattern/
Rust lets us represent State Machines in a fairly good way. In an ideal situation we'd be able to make enums with restricted transitions between variants, but that's not the case. Instead, we can harness the power of generics and the ownership system to create something expressive, safe, and understandable.
Pretty State Machine Patterns in Rust
https://hoverbear.org/blog/rust-state-machine-pattern
Rust lets us represent State Machines in a fairly good way. In an ideal situation we'd be able to make enums with restricted transitions between variants, but that's not the case. Instead, we can harness the power of generics and the ownership system to create something expressive, safe, and understandable.
Home | Nannou
https://nannou.cc/
Nannou is a library that aims to make it easy for artists to express themselves with simple, fast, reliable code.
Home | Nannou
https://nannou.cc
Nannou is a library that aims to make it easy for artists to express themselves with simple, fast, reliable code.
New Hampshire installs first historical marker to honor computer programming - The Verge
https://www.theverge.com/platform/amp/2019/6/16/18680941/new-hampshire-basic-first-historical-marker-beginners-all-purpose-symbolic-instruction-code
New Hampshire has installed what appears to be the first historical highway marker honoring computer programming, according to the Concord Monitor. The new sign honors BASIC, Beginner’s All-purpose Symbolic Instruction Code, a programming language that was invented at Dartmouth College in 1964.
Fifty Years of BASIC, the Language That Made Computers Personal | Time
http://time.com/69316/basic/
BASIC wasn’t designed to change the world. “We were thinking only of Dartmouth,” says Kurtz, its surviving co-creator. (Kemeny died in 1992.) “We needed a language that could be ‘taught’ to virtually all students (and faculty) without their having to take a course.”
Fifty Years of BASIC, the Language That Made Computers Personal | Time
http://time.com/69316/basic
BASIC wasn’t designed to change the world. “We were thinking only of Dartmouth,” says Kurtz, its surviving co-creator. (Kemeny died in 1992.) “We needed a language that could be ‘taught’ to virtually all students (and faculty) without their having to take a course.”
Programmer as wizard, programmer as engineer
https://www.tedinski.com/2018/03/20/wizarding-vs-engineering.html
Are we just trying to solve a problem quickly, or are we trying to build a robust solution? I got into programming at least in part because it seemed like the closest thing to magic that really exists. So I’m going to call these two distinct styles wizarding and engineering.
Six nifty ES6 tricks
http://www.2ality.com/2016/05/six-nifty-es6-tricks.html
const Storage = Sup => class extends Sup {
save(database) { ··· }
};
const Validation = Sup => class extends Sup {
validate(schema) { ··· }
};
You can use them to compose a class Employee as follows.
class Person { ··· }
class Employee extends Storage(Validation(Person)) { ··· }
Taft Test - Web Dev Placeholder Image Generater
https://tafttest.com/
Does your page design improve when you replace every image with William Howard Taft?
Taft Test - Web Dev Placeholder Image Generater
https://tafttest.com
Does your page design improve when you replace every image with William Howard Taft?
Make your own @horse_ebooks
http://wayoftheduck.com/diy-horse-ebooks
I remember playing around with Markov chains back in the day, and thought that it would be fun to see what that looked like when fed all 15,000 of my Tweets.
SqueakJS by Bert Freudenberg
http://bertfreudenberg.github.io/SqueakJS/
SqueakJS executes Squeak in a web page without a plugin. It is a fully capable virtual machine implemented in pure JavaScript running unmodified Squeak images. Squeak is a modern implementation of Smalltalk, the original dynamic object-oriented programming environment. It runs bit-identically on virtually any platform, and now in the web browser, too.
SqueakJS by Bert Freudenberg
http://bertfreudenberg.github.io/SqueakJS
SqueakJS executes Squeak in a web page without a plugin. It is a fully capable virtual machine implemented in pure JavaScript running unmodified Squeak images. Squeak is a modern implementation of Smalltalk, the original dynamic object-oriented programming environment. It runs bit-identically on virtually any platform, and now in the web browser, too.
What am I running inside my bash?
http://users.softlab.ece.ntua.gr/~ttsiod/bashheimer.html
I desperately needed to extract the complete (and very lengthy) command line I had written 6 months ago in a bash shell - which was still running under screen. Read on to see how I eventually made it...
Third Cog Software - Cfxr
http://thirdcog.eu/apps/cfxr
Its original purpose was to provide a simple means of getting basic sound effects into a game for those people who were working hard to get their entries done within the 48 hours and didn't have time to spend looking for suitable ways of doing this.
The greatest bug I never fixed - The blog of makandra
http://blog.makandra.com/2010/04/the-greatest-bug-i-never-fixed/
Because FriendNet serialized all of its communication into chat messages, it sent corrupted data whenever the broadcasting player was drunk.
The greatest bug I never fixed - The blog of makandra
http://blog.makandra.com/2010/04/the-greatest-bug-i-never-fixed
Because FriendNet serialized all of its communication into chat messages, it sent corrupted data whenever the broadcasting player was drunk.
Getting Started, circa 1983
http://simonallardice.com/general/2014/03/17/first-computer.html
Let me say that again: the next day you could find out if your code compiled or not.
A Great Old-Timey Game-Programming Hack - Tom Moertel’s Blog
http://blog.moertel.com/posts/2013-12-14-great-old-timey-game-programming-hack.html
You had to bang your ideas around, twist them, turn them, searching for something, anything that would help you squeeze them into the machine. Sometimes you found it, and you got one step closer to realizing your ideas. Sometimes you didn’t.
Scala — 1★ Would Not Program Again
http://overwatering.org/blog/2013/12/scala-1-star-would-not-program-again/
Scala — 1★ Would Not Program Again
http://overwatering.org/blog/2013/12/scala-1-star-would-not-program-again
Entity component system : Component tips | Box Hacker
http://www.boxhacker.com/2013/09/entity-component-system-component-tips/
Now that I feel experienced with entity game development I would like to share some tips/ideas surrounding the Ash framework.
Entity component system : Component tips | Box Hacker
http://www.boxhacker.com/2013/09/entity-component-system-component-tips
Now that I feel experienced with entity game development I would like to share some tips/ideas surrounding the Ash framework.
thenightwatch.pdf
http://research.microsoft.com/en-us/people/mickens/thenightwatch.pdf
As a systems hacker, you must be prepared to do savage things, unspeakable things, to kill runaway threads with your bare hands, to write directly to network ports using telnet and an old copy of an RFC that you found in the Vatican.
Willa's World: The Six Most Common Species Of Code
http://www.willa.me/2013/11/the-six-most-common-species-of-code.html?m=1
Like a Good Scotch, Developers Get Better With Age | Wired Enterprise | Wired.com
http://www.wired.com/wiredenterprise/2013/04/developers-age/
He says that we tend to think of programming as something that’s only practiced by the young: you spend your 20s working 80 hours a week, and then you give it up and go into management. But that may not be the best way to play it.
Like a Good Scotch, Developers Get Better With Age | Wired Enterprise | Wired.com
http://www.wired.com/wiredenterprise/2013/04/developers-age
He says that we tend to think of programming as something that’s only practiced by the young: you spend your 20s working 80 hours a week, and then you give it up and go into management. But that may not be the best way to play it.
Raytracing
http://fabiensanglard.net/rayTracing_back_of_business_card/index.php
The goal was to produce the source code for a raytracer...that would fit on the back of a business card.
HANDY ONE-LINE SCRIPTS FOR AWK
http://www.pement.org/awk/awk1line.txt
Hexagonal Grids
http://www.redblobgames.com/grids/hexagons/
Hexagonal grids are used in some games but aren’t quite as straightforward or common as square grids. I’ve been collecting hex grid resources for nearly 20 years, and wrote this guide to the most elegant approaches that lead to the simplest code, largely based on the guides by Charles Fu and Clark Verbrugge. I’ll describe the various ways to make hex grids (I’ve counted 74 so far!), the relationships between them, as well as some common algorithms. Many parts of this page are interactive; choosing a type of grid will update diagrams, code, and text to match.
Hexagonal Grids
http://www.redblobgames.com/grids/hexagons
Hexagonal grids are used in some games but aren’t quite as straightforward or common as square grids. I’ve been collecting hex grid resources for nearly 20 years, and wrote this guide to the most elegant approaches that lead to the simplest code, largely based on the guides by Charles Fu and Clark Verbrugge. I’ll describe the various ways to make hex grids (I’ve counted 74 so far!), the relationships between them, as well as some common algorithms. Many parts of this page are interactive; choosing a type of grid will update diagrams, code, and text to match.
Build your own summary tool! | The Tokenizer
http://thetokenizer.com/2013/04/28/build-your-own-summary-tool/
After Yahoo! acquired Summly and Google acquired Wavii, there is no doubt that auto summarization technologies are a hot topic in the industry. So as a NLP freak, I decided to give a quick overview and hands-on experience on how these technologies actually work.
Build your own summary tool! | The Tokenizer
http://thetokenizer.com/2013/04/28/build-your-own-summary-tool
After Yahoo! acquired Summly and Google acquired Wavii, there is no doubt that auto summarization technologies are a hot topic in the industry. So as a NLP freak, I decided to give a quick overview and hands-on experience on how these technologies actually work.
Liskov substitution principle - Wikipedia, the free encyclopedia
http://en.wikipedia.org/wiki/Liskov_substitution_principle
Substitutability is a principle in object-oriented programming. It states that, in a computer program, if S is a subtype of T, then objects of type T may be replaced with objects of type S (i.e., objects of type S may be substituted for objects of type T) without altering any of the desirable properties of that program (correctness, task performed, etc.).
The IPython Notebook — IPython
http://ipython.org/notebook.html
The IPython Notebook is a web-based interactive computational environment where you can combine code execution, text, mathematics, plots and rich media into a single document
SQLite: the Case against Custom Application File Formats | Stackful.io
http://stackful.io/blog/sqlite-the-case-against-custom-application-file-formats/
So, here is my thought experiment -- whenever you have the urge of building a custom file format, just don't.
SQLite: the Case against Custom Application File Formats | Stackful.io
http://stackful.io/blog/sqlite-the-case-against-custom-application-file-formats
So, here is my thought experiment -- whenever you have the urge of building a custom file format, just don't.
JS adolescence – James Padolsey
http://james.padolsey.com/javascript/js-adolescence/
For me there was a time that can only be described as adolescence in the field of programming and more specifically JavaScript. This period was characterised by a certain laziness and hubris. I thought I was right. I thought others were wrong. I could see no path but the very strict one that I had boxed myself into through a process in which I longed for certainty and the expulsion of realistic doubt.
JS adolescence – James Padolsey
http://james.padolsey.com/javascript/js-adolescence
For me there was a time that can only be described as adolescence in the field of programming and more specifically JavaScript. This period was characterised by a certain laziness and hubris. I thought I was right. I thought others were wrong. I could see no path but the very strict one that I had boxed myself into through a process in which I longed for certainty and the expulsion of realistic doubt.
Atari - Building Atari with CreateJS
http://atari.com/arcade/developers/building-atari-createjs
Computers are very good at the game of Go
http://blog.printf.net/articles/2012/02/23/computers-are-very-good-at-the-game-of-go
Zen19 is beating extremely strong amateurs, but it hasn't beaten professionals in games with no handicap yet. That said, now that we know that Zen19 is using Monte Carlo strategies, the reason why it seems to be getting stronger as it's fed more CPU time is revealed: these strategies are the most obviously parallelizable algorithms out there, and for all we know this exact version of Zen19 could end up becoming World Champion if a few more orders of magnitude of CPU time were made available to it.
Which would feel like a shame, because I was really looking forward to seeing us figure out how brains work.
Basic instinct: how we used to code • Reg Hardware
http://www.reghardware.com/2012/04/27/retro_week_basic_instinct/
I’ve recently caught myself, like some horrific solo re-write of the Monty Python Four Yorkshiremen sketch, waxing lyrical to my two iPod-wielding young ‘uns about the good old days; when men were men, computers were effectively clockwork, and computer games… well, come to think about it, they still cost about 69p. But you didn’t download them from an app store. Oh no. They came bound into computer magazines and had to be typed in by hand. And oh yes, they were in an arcane language called Basic.
Basic instinct: how we used to code • Reg Hardware
http://www.reghardware.com/2012/04/27/retro_week_basic_instinct
I’ve recently caught myself, like some horrific solo re-write of the Monty Python Four Yorkshiremen sketch, waxing lyrical to my two iPod-wielding young ‘uns about the good old days; when men were men, computers were effectively clockwork, and computer games… well, come to think about it, they still cost about 69p. But you didn’t download them from an app store. Oh no. They came bound into computer magazines and had to be typed in by hand. And oh yes, they were in an arcane language called Basic.
The Module Pattern, A Little More Detail - macwright.org
http://macwright.org/2012/06/04/the-module-pattern.html
This is an article on the module pattern for Javascript, and some of its neat properties. I’ve been using it recently for projects like Wax and mmg, and think it’s a neat way to structure code and avoid some of the less likable parts of the language.
Nick Bradbury: Old Farts Know How to Code
http://nick.typepad.com/blog/2012/05/old-farts-know-how-to-code.html
"Old farts" are often excluded from that culture, not because we're lousy coders but because we won't put up with that shit. We have lives, we have families, we have other things that are important to us. We're not about to sleep at our desks and trade watching our kids grow up for the promise of striking it rich. Especially when the people who really strike it rich aren't the ones writing code.
Interpreted Languages: Tcl, Lua, JavaScript, Io - Hyperpolyglot
http://hyperpolyglot.org/embeddable
a side-by-side reference sheet
Rands In Repose: Please Learn to Write
http://www.randsinrepose.com/archives/2012/05/16/please_learn_to_write.html
Writing appears more forgiving because there is no compiler or interpreter catching your its and it’s issues or reminding you of the rules regarding that or which. Here’s the rub: there is a compiler and it’s fucking brutal. It’s your readers. Your readers are far more critical than the Python interpreter. Not only do they care about syntax, but they also want to learn something, and, perhaps, be entertained while all this learning is going down. Success means they keep coming back - failure is a lonely silence. Python is looking pretty sweet now, right?
Benvie/Node.js-Ultra-REPL - GitHub
https://github.com/Benvie/Node.js-Ultra-REPL
Starting with Node's built in REPL, add in a completely redone inspect formatter, actual functioning separate V8 contexts, keybindings to create, switch, and delete between them, combine it with a bunch of color. ULTRA REPL
Lisp REPL in Vendetta Online
http://www.a1k0n.net/2005/11/04/lisp-repl-vendetta-online.html
Vendetta Online has a Lisp environment (using SBCL) which controls much of its NPC behavior and will soon be in charge of generating player and NPC missions. Partly in order to get around some thread-safety issues, and partly for convenience we built an REPL into a secret chat channel. (it only responds to developer accounts)
What have you tried? - Matt Gemmell
http://mattgemmell.com/2008/12/08/what-have-you-tried/
The problem is that this person’s problem-solving technique is to ask for the solution. Not to seek advice on how to approach the task, or ask for the names of likely classes to look into, or a link to an example - but to just ask for the code, fully formed and ready to go. This is not problem solving, and software engineering is entirely about problem solving.
What have you tried? - Matt Gemmell
http://mattgemmell.com/2008/12/08/what-have-you-tried
The problem is that this person’s problem-solving technique is to ask for the solution. Not to seek advice on how to approach the task, or ask for the names of likely classes to look into, or a link to an example - but to just ask for the code, fully formed and ready to go. This is not problem solving, and software engineering is entirely about problem solving.
the node.js aesthetic :: The Universe of Discord
http://substack.net/posts/b96642
I would like to document an emerging set of programming conventions, philosophies, and values that I see evolving in the node.js community. I call this the node aesthetic.
inessential.com: Mac Text Editors and Navigation
http://inessential.com/2011/11/27/mac_text_editors_and_navigation
Unfortunately, there’s no standard for Go to Line in Mac text editors. Each editor does it differently, and they usually screw up at least one part of it so that it’s not-particularly-usable. (Which causes me to curse through my nose, throw one of the plush toys they permit me to have, and then run back to Mama Terminal for solace.)
Code: Flickr Developer Blog » Flipping Out
http://code.flickr.com/blog/2009/12/02/flipping-out
Flickr is somewhat unique in that it uses a code repository with no branches; everything is checked into head, and head is pushed to production several times a day. This works well for bug fixes that we want to go out immediately, but presents a problem when we’re working on a new feature that takes several months to complete. How do we solve that problem? With flags and flippers!
blockdiag - simple diagram images generator — blockdiag 1.0 documentation
http://blockdiag.com/en/index.html
blockdiag and its family generate diagram images from simply text file:
Java is not the new COBOL | Craig Tataryn's .plan
http://tataryn.net/2011/11/java-is-not-the-new-cobol
Given the above facts I think you’ll agree, Java is not stagnant, it’s getting much better on the eyes and fingers and it has been adopted by cool, non-stodgy companies. Then perhaps you’ll also agree it’s wrong to say Java is the new COBOL, just as wrong as saying Ruby is the new Java.
Nope, not buying it.
Yield Thought, Work Is Fascinating: The Metagame
http://yieldthought.com/post/5862066767/work-is-fascinating-metagame
"I started thinking about programmer performance a while ago. Everybody will tell you that you can’t measure programmer productivity, but this is at best a half-truth. We can, and we should. Perhaps what we shouldn’t do is use those measurements to compare programmers to each other, but we can definitely measure ourselves."
Yield Thought, I swapped my MacBook for an iPad+Linode
http://yieldthought.com/post/12239282034/swapped-my-macbook-for-an-ipad
Thinking I might have to try this with the ASUS Transformer I have. "On September 19th, I said goodbye to my trusty MacBook Pro and started developing exclusively on an iPad + Linode 512. This is the surprising story of a month spent working in the cloud."
Loyal Opposition to Const, Private, Freeze, Non-Configurable, Non-Writable...
https://mail.mozilla.org/pipermail/es-discuss/2011-November/017872.html
And JavaScript is one of the *most* dynamic of the mainstream programming languages. Not only can you can pass any object to any function, but you can call a method with any number of arguments, easily modify the prototypes of other objects, introspect on any object's properties with a simple loop, replace any member function with a wrapped version, attach new properties to any object ... the list goes on.
mass:werk termlib
http://www.masswerk.at/termlib
The JavaScript library "termlib.js" provides a `Terminal' object, which facillitates a simple and object oriented approach to generate and control a terminal-like interface for web services.
The Bytes Brothers
http://www.gamebooks.org/show_series.php?id=1171
Sort of a cross between Encyclopedia Brown and Micro Adventure, each volume in this series contains several short mysteries. The user must read carefully and run very simple BASIC computer programs in order to guess the solutions.
Micro Adventure
http://www.gamebooks.org/show_series.php?id=1163
These linear novels are occasionally interrupted by simple BASIC computer programs designed to be typed in and played. The idea is to simulate key moments in the story, though the programs are generally of the extremely simplistic "type in a word or number and hit ENTER" variety. The series was followed by the Magic Micro Adventure books for younger readers.
3 Free E-Books and a Tutorial on Erlang
http://www.readwriteweb.com/hack/2011/05/free-e-books-on-erlang.php
emscripten - Project Hosting on Google Code
http://code.google.com/p/emscripten
Emscripten is an LLVM-to-JavaScript compiler. It takes LLVM bitcode (which can be generated from C/C++, using llvm-gcc or clang, or any other language that can be converted into LLVM) and compiles that into JavaScript, which can be run on the web (or anywhere else JavaScript can run).
mamememo: The Qlobe
http://mamememo.blogspot.com/2010/09/qlobe.html
"My Quines are sometimes specialized for Japanese. But to attend RubyConf, I should write "global" Quines."
ChipWits: The Game of Robot-Programming Fun - Bring Your Brain!
http://www.chipwits.com
"The Game of Robot-Programming Fun
Program Robots using graphic chips.
A great way for Kids of all ages to enjoy the fun of programming
ChipWits will be back in late 2010
"
Renae Bair » Blog Archive » “My husband is a programmer; I have no idea what that means.”
http://www.renaebair.com/2010/08/11/my-husband-is-a-programmer-i-have-no-idea-what-that-means
"This always blows my mind. You’re married to someone, and you aren’t interested enough in the person to know anything about what they do with nearly 40-50% of their time, aside from their job title? Is it dangerous to draw a correlation between high divorce rates and the lack of interest that people have in their partners lives? It’s easy to fall in love with the “idea” of a person when you first meet them. But I think it would be hard to endure a lifetime of ups and downs, trials and tribulations and the everyday challenges that life throws at two people, if those partners didn’t have a truly vested interest in each other’s passions and life’s work. And if you don’t have even a basic understanding of what your spouse does with 40+hours of his/her week, then you’re not on a team."
Halt and Catch Fire - Wikipedia, the free encyclopedia
http://en.wikipedia.org/wiki/Halt_and_Catch_Fire
"Halt and Catch Fire, known by the mnemonic HCF, refers to several computer machine code instructions that cause the CPU to cease meaningful operation. The expression "catch fire" is usually intended as a joke; in most cases the CPU does not actually catch fire."
List of freely available programming books - Stack Overflow
http://stackoverflow.com/questions/194812/list-of-freely-available-programming-books
"I'm trying to amass a list of programming books with opensource licenses, like Creative Commons, GPL, etc. The books can be about a particular programming language or about computers in general. Hoping you guys could help"
Will Wall Street require Python? | ITworld
http://www.itworld.com/government/105031/will-wall-street-require-python
Charles Stross was right. "with Release 33-9117, the SEC is considering substitution of Python or another programming language for legal English as a basis for some of its regulations."
In praise of git’s index // plasmasturm.org
http://plasmasturm.org/log/gitidxpraise
"So what is the index good for?"
Inweb: Inform
http://inform7.com/sources/inweb
"A key step in literate programming, in our view at least, is publishing. It means tidying up and properly explaining code, and is a process much like writing up roughly-correct ideas for journal publication. The main aim of the Inform project since autumn 2007 has been to publish the whole work. Each web, as it is published, becomes open-source under the Artistic License 2.0, and eventually the whole work will be complete. We believe it will then be the largest literate program ever published."
Atari 1200XL vs. Dell Inspiron 1525
http://www.newbreedsoftware.com/bill/photos/atari1200xl_vs_dellinspiron1525
"I decided: why not ignore the fact that my first computer and my latest computer are 27 years apart? Why not stack them on top of each other, take some silly photos, and put up a chart comparing how many kilo-whatsits of X the Atari had to how many giga-whosits the Dell had.
So you have it... a brief comparison of the classic and short-lived Atari 1200XL to the modern and also short-lived Dell Inspiron 1525."
Canned Platypus » Blog Archive » Brevity is Not Power
http://pl.atyp.us/wordpress?p=2307
"I would modify Graham’s claim by saying that recognizable and predictable brevity is an indicator of programming-language power."
Matt Legend Gemmell – What have you tried?
http://whathaveyoutried.com
"The problem is that this person’s problem-solving technique is to ask for the solution. Not to seek advice on how to approach the task, or ask for the names of likely classes to look into, or a link to an example – but to just ask for the code, fully formed and ready to go. This is not problem solving, and software engineering is entirely about problem solving."
Code To Joy: Open-Source group announces jJava
http://codetojoy.blogspot.com/2008/04/open-source-group-announces-jjava.html
"An open-source project surprised industry insiders today by announcing an implementation of the Java programming language on the JVM.
The language, dubbed jJava, reflects the current trend for using the JVM as a systems platform for various languages."
JSLint Commandline Shenanigans
http://whereisandy.com/code/jslint
"y running JSLint on all of our javascript files as part of our development process, we can find these nasty bugs before they start!Turns out, Spidermonkey isn't just faster than Rhino, it's a lot faster (at least to start up)."
fault-tolerance.png (PNG Image, 784x393 pixels)
http://browsertoolkit.com/fault-tolerance.png
@stlhood Did you just tell me to go eff myself?
Source Code of Several Atari 7800 Games Released! | ProgrammerFish - Everything that's programmed!
http://www.programmerfish.com/source-code-of-several-7800-games-released
"Remember the Dig Dug or Centipede or Robotron? They used to be favorites wheimagen Atari’s 7800 series was still around. Now since the era of those consoles is over and a different world of interactive reality gaming has taken over, Atari Museum, a site run by Atari enthusiast, has got hold of has unofficially source code of over 15 games for the coders and enthusiasts to admire the state-of-the-art (because this is what it was back then) of game development."
Clue: an ANSI C compiler targeting high level languages
http://cluecc.sourceforge.net
"Clue is an ANSI C compiler (C89, some C99) that targets high-level languages such as Lua, Javascript or Perl (and some low-level ones). It supports the entire C language, including pointer arithmetic, and can be used to run arbitrary pure-C programs."
Read-optimize Your Source Code - Brendel Consulting
http://www.brendel.com/consulting/blog/2009/06/read-optimized-source-code.html
"In fact, I claim that if you don't take those rules to heart in your own source code then you are either unprofessional, lazy, not a team-player, or all of the above. If you as a software developer take pride in your professionalism and quality of your work then you have to consider that it is not only the achieved functionality for which you are being paid: The code you produce in almost all cases becomes property of your employer, and thus, the code itself also a product (and actually the most important product) you deliver. And how useful that code if for the team who has to work with it is what really determines its value."
Overview - Micro Focus
http://www.microfocus.com/Resources/Whitepapers/binlink.asp?cast=&dlt=wp&fn=/000/COBOL_continuing_to_drive_value_in_the_21st_Century_tcm21-23652.pdf&height=&id=&key=&lststp=n&width=
"COBOL – continuing to drive value in the 21st Century"
Coding Horror: A Modest Proposal for the Copy and Paste School of Code Reuse
http://www.codinghorror.com/blog/archives/001257.html
"Attach a one line comment convention with a new GUID to any code snippet you publish on the web. This ties the snippet of code to its author and any subsequent clones. A trivial search for the code snippet GUID would identify every other copy of the snippet on the web"
PHP_CodeSniffer
http://pear.php.net/package/PHP_CodeSniffer
"PHP_CodeSniffer tokenises PHP, JavaScript and CSS files and detects violations of a defined set of coding standards."
Software Craftsmanship 2009 - Home
http://parlezuml.com/softwarecraftsmanship
Quetzalcoatal: A public service announcement
http://quetzalcoatal.blogspot.com/2008/11/public-service-announcement.html
"If your code will be seen by the world at large, one of your first tasks should be to write documentation. Document all functions as soon as you write them (before is also helpful). Provide samples on how to use code as soon as you finish a module (or earlier, if possible). Do not wait until your 5.0 release. Do not wait until your 1.0 release. Do not even wait until your 0.5 release. Do it as you write your code. The sooner, the better."
Alan’s Kiloblog » GitHub and Git: Sharing Your Code, for What It’s Worth, Without a Begging Entry into Open Source Communities
http://kiloblog.com/post/sharing-code-for-what-its-worth
Can Your Programming Language Do This? - Joel on Software
http://www.joelonsoftware.com/items/2006/08/01.html
"I hope you're convinced, by now, that programming languages with first-class functions let you find more opportunities for abstraction, which means your code is smaller, tighter, more reusable, and more scalable."
GitHub RubyGems
http://gems.github.com
"RubyGems is a package manager for Ruby. At GitHub, we've tried to make the process of building and releasing new gems as simple as possible. Please see the documentation below on how to use the system."
PHP: rfc:namespaceseparator [PHP Wiki]
http://wiki.php.net/rfc/namespaceseparator
Dynamic programming futures | InfoWorld | Test Center | October 13, 2008 | By Peter Wayner, IDG News Service
http://weblog.infoworld.com/archives/emailPrint.jsp?A=/article/08/10/13/42TC-dynamic-futures_1.html&R=printThis
"What will the world of dynamic programming languages and Web applications look like in five years? This is one of those highly personal and deeply philosophical questions best saved for after dessert is served, the drinks are poured, and the sidearms are safely locked away."
Just Enough C For Open Source Projects
http://www.slideshare.net/petdance/just-enough-c-for-open-source-programmers
Paver: Build, Distribute and Deploy Python Projects — Paver v0.8 documentation
http://www.blueskyonmars.com/projects/paver
"Paver is a Python-based build/distribution/deployment scripting tool along the lines of Make or Rake. What makes Paver unique is its integration with commonly used Python libraries. Common tasks that were easy before remain easy. More importantly, dealing with your applications specific needs and requirements is now much easier."
Stevey's Blog Rants: Programming's Dirtiest Little Secret
http://steve-yegge.blogspot.com/2008/09/programmings-dirtiest-little-secret.html
"Next dead-giveaway: non-typist code is... minimalist. They don't go the extra mile to comment things. If their typing skills are really bad, they may opt to comment the code in a second, optional pass. And the ones who essentially type with their elbows? They even sacrifice formatting, which is truly the most horrible sin a programmer can commit. Well, actually, no, scratch that. It's the second worst. The worst is misspelling an identifier, and then not fixing it because it's too much typing. But shotgun formatting is Right Up There."