The Curious Engineer

All blogs / Python

JJinuxLand

jjinux.com

PythonSoftware / engineering practiceLinux / UnixAI / ML

Posts
821 from 30 Mar 2005 to 13 Sep 2026
Posting
now and then (1 in the last year)
Kind
personal blog
Feed
https://www.jjinux.com/feeds/posts/default

2026 1

  1. Tetris in Rust (by Claude Code)

2025 4

  1. Maybe Don't Trust an AI with Cryptography Questions
  2. Warp: My Terminal, Warp, Was Particularly Helpful
  3. Optical Guitar or Bass Pickups
  4. On the Use of AI in Security

2024 3

  1. Mike Cheponis's Prediction on ChatGPT and LLMs
  2. Notion's Mid-Life Crisis
  3. GCP: Cloud Digital Leader Certification

2023 7

  1. My Takeaways from the Stack Overflow Developer Survey
  2. ChatGPT: I feel like a kid who just beat an AI playing Go ;)
  3. Security Mistake on GitHub Copilot's Homepage
  4. Python: Advice for Patching Your Code at Runtime
  5. Security: Generating a Symmetric Key
  6. Security: BSidesSF 2023: CTF
  7. CHATGPT IS TOTALLY not GOING TO TAKE OVER THE WORLD!

2022 5

  1. Python: Streaming Sieve of Eratosthenes
  2. Books: Web Application Security: Exploitation and Countermeasures for Modern Web Applications
  3. Books: Monolith to Microservices: Evolutionary Patterns to Transform Your Monolith
  4. Python: My Favorite Python Tricks for LeetCode Questions
  5. Security: BSidesSF 2022

2021 8

  1. Computer Science: Heisenberg Uncertainty Principle
  2. Python: PyWeek 32: Lil Miss Vampire
  3. Security: What Percentage of Passwords are Pure ASCII?
  4. Type Annotations T-Shirt
  5. A Space Engine
  6. Add Another Entry to the UNIX Haters' Handbook
  7. Information Security: SOX, SOC2, ISO 27001, PCI-DSS, OMG!
  8. Getting Windows 7 Running on a Lenovo Thinkpad T410 with no CDROM Drive and no OEM Software

2020 5

  1. Fun with VMware on a 64 GB Mac
  2. Application Security: Hashing, Encryption, Encoding, Compression, Oh My!
  3. Ubuntu 20.04 on a 2015 15" MacBook Pro
  4. Creating Windows 10 Boot Media for a Lenovo Thinkpad T410 Using Only a Mac and a Linux Machine
  5. Security: BSidesSF 2020

2019 6

  1. Running a terminal-based version of Tetris written in Go within Visual Studio Online running in Chrome
  2. Database Week at the AWS Loft
  3. A nice conversation about programming languages with my mentor, Michael Cheponis, an old school programmer
  4. Popularity of Manually Installed *NIX Shells on macOS According to Brew
  5. mv ex-coworkers.csv udemy/
  6. Books: Kubernetes: The Complete Guide To Master Kubernetes (March 2019 Edition)

2018 12

  1. JJ's Mostly Adequate Summary of the Django Meetup: When *Not* To Use the ORM & Goodbye REST: Building GraphQL APIs with Django
  2. JJ's Mostly Adequate Summary of Chrome Dev Summit 2018
  3. "How to Give a Talk" and "Building Video Games for Fun with PyGame"
  4. JavaScript: Upgrading from MobX 2.7.0 to 3.0.2
  5. The Big Bet on Web Performance: What to Do Until WebASM Takes Over?
  6. A Summary of the O'Reilly Fluent Keynotes
  7. JavaScript: Apollo Day Notes
  8. JavaScript: Upgrading mobx-react from 4.0.4 to 4.4.3 (with Enzyme)
  9. JavaScript: Upgrading mobx-react from 3.5.9 to 4.0.4 (with Enzyme)
  10. JavaScript: Porting from react-css-modules to babel-plugin-react-css-modules (with Less)
  11. JavaScript: Upgrading from MobX 2.6.0 to 2.7.0
  12. Doing Multiple Searches in VS Code While Refactoring

2017 15

  1. My Thoughts on VS Code vs. WebStorm, PyCharm, IntelliJ, etc.
  2. My Fairly Complete Notes from Chrome Dev Summit 2017
  3. Hard Problems in Computer Science
  4. I'm so done with C
  5. I finished Andrew Ng's Machine Learning course on Coursera
  6. JavaScript: ForwardJS Day 2
  7. JavaScript: ForwardJS Day 1
  8. Dear new guy: Some personal advice from an old software engineer to a new software engineer
  9. JavaScript: Porting from React Router v2 to v4 (with tips for Enzyme and MobX)
  10. JavaScript: Some Tips for Using MobX's Provider with Enzyme, etc.
  11. JavaScript: React Conf 2017
  12. Progressive Web Apps
  13. JavaScript: ForwardJS
  14. Extreme Web Performance
  15. Microservices.com Practitioner Summit

2016 8

  1. Chrome Dev Summit 2016 Day 1
  2. Books: Self Leadership and The One Minute Manager
  3. My Short Review of Visual Studio Code
  4. Having Fun with Linux on Windows on a Mac
  5. Ideas: Mining the Asteroid Belt
  6. JavaScript: ForwardJS
  7. JavaScript: Mastering Chrome Developer Tools
  8. JavaScript: Advanced JS Foundations

2015 12

  1. Web Performance Short Course
  2. HTML5DevConf
  3. Android vs. iOS from a User's Perspective
  4. The vicious cycle of co-dependent attention slavery
  5. I think I need some career advice
  6. Distributed Systems: Another Great Jeff Dean Quote
  7. The Waterfall Model was a straw man argument from the very beginning
  8. Tetris Over SSH
  9. Go
  10. Tetris Written in Go
  11. Go: A Surprising Edge Case Concerning append and Slice Aliasing
  12. Books: Getting More: How You Can Negotiate to Succeed in Work and Life

2014 19

  1. My Professional Videos
  2. Play Framework Essentials, Learning Scala, and Functional Programming Principles in Scala
  3. Python: Custom App Labels in Django
  4. A Blog Post on Excel, 4x4s, Moonshots, and General Purpose Software
  5. Security: Scam Involving the "assoc" Command on Windows
  6. Being Turing Complete Ain't All That and a Bag of Chips
  7. Raspberry Pi: Building an LED Digital Clock
  8. Best Practices for Software Engineers
  9. Best Practices for Software Engineers
  10. PyCon Notes: Introduction to SQLAlchemy
  11. PyCon Notes: PostgreSQL Proficiency for Python People
  12. Dagger: A Dependency Injection Framework for Android and Java
  13. Books: Two Scoops of Django: Best Practices For Django 1.6
  14. Python: A Response to Glyph's Blog Post on Concurrency
  15. Python: A lightning quick introduction to virtualenv, nose, mock, monkey patching, dependency injection, and doctest
  16. Interesting Computer Failures from the Annals of History
  17. Humor: More Knuth Jokes
  18. Python: My Notes from Yesterday's SF Python Meetup
  19. Shooting a Screencast that Shows an IDE

2013 29

  1. Making a Piña Colada in Haskell: It's All About Concurrency
  2. Books: The Soul of a New Machine
  3. Is the Modern Smartphone a Computer?
  4. My Wireless Sucks!
  5. Books: Programming Elixir
  6. Pimsleur Spanish Phases 1-3
  7. Some Random Thoughts on Haskell
  8. Books: Two Scoops of Django
  9. Books: American Gods
  10. Python: dicts vs. classes
  11. Python: One More Example of How PyCharm is Psychic
  12. Python: Using assertRaises as a Context Manager
  13. Humor: Testing the Validity of Internet Email Using Perl
  14. Books: Treading on Python
  15. Books: Programming the Rasberry Pi: Getting Started with Python
  16. Use "perfect" as a verb, not as an adjective
  17. Twitter is Hiring Right Now
  18. Python: I Like Django
  19. Personal: Links to My G+ and Twitter Accounts
  20. Drawing Sierpinski's Triangle in Minecraft Using Python
  21. "Await" in Python
  22. Irrduino: A Sprinkler System Built Using Arduino, Android, Google App Engine, Python, and Dart
  23. Dart on a Chromebook: Success!
  24. Dart with Google Web Toolkit
  25. Personal: My Buddy is Looking for a Python Job
  26. Dart: Some Good Blog Posts to Read
  27. Dart: My Experience Porting to Library v2
  28. Esto es Dart
  29. More Dart HTML5 Goodness

2012 67

  1. New Dart Web UI Codelab
  2. An Approach to Illiterate Programming: doc-code-merge
  3. Dartisans Ep. 16: Dart and Web Components Reloaded
  4. The Untouchables
  5. Humor: Metamocking
  6. Dart: Lazily Evaluating Static Variables Leads to Wackiness
  7. Dart: My Recent Dart Talks
  8. Trip to "reflections projections|2012"
  9. Personal: Life Beyond Startups
  10. Video Games: TV Latency
  11. Software Engineering: Corporate Wormholes
  12. Linux on the Desktop
  13. Dart + HTML5 = Happy Web Developers
  14. Dart: An Algorithm to Unindent Code
  15. 3 Articles Every Hardcore Dart Developer Should Read
  16. Java: Helloooooooo, World!
  17. Books: Memoirs Found in a Bathtub
  18. Python: Party Playlist Picker
  19. Dart: My Quest to Program Dart on a Chromebook
  20. Ruby: Quizzimoto
  21. PHP: Phycocauth
  22. Books: Content Rules
  23. Books: What Technology Wants
  24. Books: Peopleware: Productive Projects and Teams
  25. Books: What Would Google Do?
  26. Using Ruby on Rails and YouTube for Education
  27. YouTube for Your Business
  28. Books: In the Plex: How Google Thinks, Works, and Shapes Our Lives
  29. Books: Steve Jobs
  30. Async: To Be or Not To Be
  31. HTML5 Dev Conf
  32. Code Reuse has Finally Arrived...Obviously!
  33. Documentation Sucks, Video Games Rule!
  34. Dart in Glasgow, Scotland
  35. Unit Tests Don't Find Bugs: the Death of QA
  36. Books: Agile Web Development with Rails
  37. Personal: My Laptop is Worried About Me
  38. PyCon: Parsing Sentences with the OTHER Natural Language Tool: Link Grammar
  39. PyCon: Building A Python-Based Search Engine
  40. PyCon: Parsing Horrible Things with Python
  41. PyCon: Keynote: Guido Van Rossum
  42. PyCon: Python for Data Lovers: Explore It, Analyze It, Map It
  43. PyCon: Storm: the Hadoop of Realtime Stream Processing
  44. PyCon: Pragmatic Unicode, or, How do I stop the pain?
  45. PyCon: How the PyPy JIT Works
  46. PyCon: Why PyPy by Example
  47. PyCon: Let's Talk About ????
  48. PyCon: Welcome Message on the Second Day
  49. PyCon: Lightning Talks
  50. PyCon: Introspecting Running Python Processes
  51. PyCon: Python Metaprogramming for Mad Scientists and Evil Geniuses
  52. PyCon: Make Sure Your Programs Crash
  53. PyCon: Apache Cassandra and Python
  54. PyCon: Code Generation in Python: Dismantling Jinja
  55. PyCon: Advanced Python Tutorials
  56. Python: Scalability at YouTube
  57. Python: The Year of PyPy
  58. Personal: Booth Babe
  59. Ruby: Using YouTube APIs for Education
  60. Humor: Tetris
  61. Python Concurrency Spreadsheet
  62. Ruby: Working Around SSL Errors on OS X
  63. Google Developer Relations Jobs
  64. YouTube: Vibop by NewBlue
  65. Dart at BayPiggies
  66. Walking Skeletons and TODO Outlines
  67. Books: Out of their Minds: The Lives and Discoveries of 15 Great Computer Scientists

2011 89

  1. Python: Shrapnel
  2. Dart at g|egypt 2.0
  3. YouTube for Your Business at g|egypt 2.0
  4. Computer Science: The Travelling Salesman Problem
  5. Math: Factoring Numbers
  6. Computer Science: NP-complete Problems are Really NP-complete
  7. Tetris in Dart
  8. Eclipse vs. Intellij for Android, PlayN, Google App Engine, and Python Development
  9. YouTube: Magisto
  10. Humor: Millions of Microprocessors
  11. Linux: Vim Freezing
  12. CSS: Fading Clipped Text
  13. Python: Newbie Nugget: Lambda Expressions
  14. Linux: VNC Stopped Working
  15. Go: A Second Impression
  16. Humor: Proving Programs
  17. Books: Masterminds of Programming
  18. Books: Python 3 Web Development Beginner’s Guide
  19. Google I/O 2011
  20. Software Engineering: Code Reviews vs. Peer Programming
  21. Amazon Web Services Summit 2011: Navigate the Cloud
  22. Introducing YouTube.com/create
  23. Books: Python 3 Web Development Beginner’s Guide
  24. Python: Increasing the Timeouts for urlfetch in Google App Engine
  25. Google I/O 2011
  26. Python: Getting a Fair Flip out of an Unfair Coin
  27. Personal: I Work at YouTube!
  28. Personal: Name Dropping
  29. Call Me Crazy: Calling Conventions
  30. Perl: Text-based Address Books
  31. Of Neuroscience and Jazz
  32. Gaming: How Do Characters Know What to Say?
  33. Ruby: My Take on Pivotal Labs, Part II
  34. Ruby: My Take on Pivotal Labs, Part I
  35. Math: Sierpinski's Triangle is a Variation of Pascal's Triangle
  36. JavaScript: Jasmine
  37. Ruby: nil is a Billion Dollar Mistake
  38. Python: Adding New Methods to an Instance
  39. Linux: Fish Hanging
  40. JavaScript: Perfectly Encapsulated May Mean Perfectly Untestable
  41. Python: Using Louie with Twisted
  42. JavaScript: JS.IO is Solid, Hookbox Might be the Bee's Knees
  43. JavaScript: Socket.IO Didn't Meet Needs
  44. ZeroMQ is Amazing!
  45. Linux: ^\
  46. Videos: IBM Centennial Film: 100 X 100 - A century of achievements that have changed the world
  47. Python: I'm Looking for a Python Instructor
  48. PyCon: Closing Lightning Talks
  49. PyCon: Hidden Treasures in the Standard Library
  50. PyCon: Greasing the Wheels of Exploration with Python
  51. PyCon: Fun with Python's Newer Tools
  52. PyCon: An Open success for the cloud: OpenStack
  53. PyCon: Disqus: Serving 400 million people with Python
  54. PyCon: Going Full Python - Threadless
  55. PyCon: Lightning Talks
  56. PyCon: Supercomputer and Cluster Application Performance Analysis using Python
  57. PyCon: HTTP in Python: which library for what task?
  58. PyCon: Advanced Network Architectures With ZeroMQ
  59. PyCon: Exhibition of Atrocity
  60. PyCon: Using Coroutines to Create Efficient, High-Concurrency Web Applications
  61. I Code Sooooo Slowly!
  62. Python: Python IDEs Panel
  63. PyCon: The Data Structures of Python
  64. PyCon: Ten Years of Twisted
  65. PyCon: Lightning Talks
  66. PyCon: Hookbox: All Python web-frameworks, now real-time. Batteries Included
  67. PyCon: Porting to Python 3
  68. PyCon: Status of Unicode in Python 3
  69. PyCon: Opening the Flask
  70. PyCon: State of Pylons/TurboGears 2/repoze.bfg
  71. PyCon: Python - The Secret Sauce in the Open Cloud
  72. PyCon: Distributed Tasks with Celery
  73. PyCon: Keynote
  74. PyCon: Cooking with Python 3
  75. Books: Coders at Work
  76. The Zen of Testing
  77. Python: Behavioral Driven Development for Telephone Applications Using Lettuce, Flask, and Twilio
  78. Hardware: Fixed a Dell Inspiron 1545
  79. Linux: lubuntu
  80. Linux: Awesome is Awesome!
  81. Personal: Should I Leave LinkedIn?
  82. Humor: Donald Knuth Jokes
  83. Personal: Looking for a New Job
  84. Bless: A New Twist on Concurrent Programming
  85. Python: SSL Hell
  86. Python: use_twisted Decorator
  87. Linux: pssh
  88. Linux: Unity
  89. Linux: CrunchBang Linux 10 on a MacBook Pro

2010 66

  1. Apple: Ouch!
  2. Vim: PeepCode Videos
  3. JavaScript: IE and DTDs
  4. Ruby: Why I Prefer Cucumber
  5. Personal: Wife in Labor
  6. Software Engineering: Coping When You Must Repeat Yourself
  7. JavaScript: Naughty Socket.IO Example
  8. Jobs: Looking for People to Work With Me
  9. Books: Digital At Work: Snapshots From The First Thirty-Five Years
  10. Linux: The Tiling Window Manager I Wish I Had
  11. JavaScript: A Second Impression of NodeJS
  12. Telephony: Blatantly Open Source Phone Trees
  13. Teladventure: A Phone-based Adventure Game
  14. Ruby: Phone Trees
  15. Rails: Fat Tests Considered Unharmful
  16. Personal: Mostly Offline for a Week
  17. Personal: Fandor is Launching
  18. Tailing Whitespace
  19. Quotes: A Recruiter on Scala and Erlang Jobs
  20. Quotes: Mark Twain on Math
  21. Quotes: Max Levchin on Startups
  22. Scala: Using Akka with Play
  23. Java: The Play Framework
  24. Scala: Lift vs. Play! For Web Development
  25. Scala: Scala for Newbies Night at Linkedin
  26. Personal: I'm a Wireless Black Hole
  27. Rails: reset_session and Webrat Don't Play Nicely with One Another
  28. Ruby: Blooger
  29. Books: Programming Scala
  30. Personal: Looking for Work
  31. Scala: Tweet Tweet Tweet
  32. Flash: I Like Wowza
  33. Software Engineering: Premature Featurization
  34. Linux: Retro Desktops
  35. Apple: Cleaning a White MacBook
  36. An Email Scam
  37. Personal: Working at Google--the Hard Way
  38. Ruby: Additional Attributes in ActiveRecord
  39. Ruby: rails_xss
  40. A Few Simple Ruby, Rails, and MySQL Tips
  41. IDEs: Netbeans
  42. Ruby: Using reset_session in Rails with Cucumber and Webrat
  43. Linux: Qimo for Kids
  44. ActionScript: JavaScript Event Handlers for JW Player
  45. ActionScript: jQuery and ActionScript Callbacks
  46. Neuroscience: Burn-out Visible in the Brains of Patients
  47. Apple: iPad and Emacs
  48. Books: The Little Schemer
  49. Python: The Halting Problem
  50. Scheme: My Y Combinator
  51. Humor: An Environmentally-friendly Desktop
  52. Linux: fish: The Friendly, Interactive Shell
  53. Ruby: An Introduction to Behavioral Driven Development with RSpec and Cucumber: Version 2
  54. Ruby: Modifying Class Attributes in Cucumber and RSpec
  55. ActionScript: Dynamic Streaming
  56. Science: Gravity as a Communications Mechanism?
  57. Books: ActionScript 3.0: Visual QuickStart Guide
  58. Python: Is there a Python Toolbox Website?
  59. Ruby: Interesting Things from the Rails Book
  60. Ruby: Using "should not" in Cucumber
  61. Ruby and Firefox: Two "Oh My Gosh" Moments
  62. Ruby: Behavior Driven Development
  63. Python: Asynchronous Network and Web Frameworks
  64. Software Engineering: The Dunning–Kruger Effect
  65. Rails: The REST Religion
  66. Ruby: Strings

2009 118

  1. Rails: Playing with the DOM using Cucumber and Webrat
  2. Rails: Full URLs for Images
  3. Modern Marvels: Engineering Disasters
  4. ActionScript: Bad Documentation
  5. Rails: seeds.rb and rake db:test:prepare
  6. Python: Asynchronous Networking APIs and MySQL
  7. Ruby: Weird JSON.encode Problem
  8. Linux: GNOME Shell
  9. Python: Concurrency
  10. Books: Advanced Rails Recipes
  11. Linux: I'm Lovin' Ubuntu 9.10!
  12. MySQL: Disk Usage Can Never Shrink When Using InnoDB
  13. Linux: Installing the Flex SDK
  14. Linux: Installing the Debug Version of Flash on Ubuntu
  15. Web: Gravatar
  16. Testing: 100% Code Coverage
  17. Linux: Help, my Mouse is Possessed!
  18. Web: Redirecting the User Back After Some Workflow
  19. ActionScript: Dates
  20. ActionScript: Flowplayer vs. Open Source Media Framework
  21. Linux: Convert Mac to UNIX Line Endings
  22. Linux: Making Your Desktop Calm
  23. Linux: My xmonad Setup
  24. What Makes a Good Operating System?
  25. Linux: xmonad
  26. Linux: Minimizing Memory Usage
  27. Python: Concurrency
  28. My Friend Committed Suicide
  29. Vim: Editing ActionScript
  30. Forking a Subversion Repository Using Git the Brutal Way
  31. Ruby: An Introduction to Behavioral Driven Development with RSpec and Cucumber
  32. Exploding Software-Engineering Myths
  33. Ruby: Escaping URL Parameters
  34. Ruby: Testing Rake Tasks
  35. Python: How to Blow Up Helicopters Using Pygame
  36. Linux: The Least Bad Synaptics Configuration for a MacBook Running Ubuntu
  37. Linux: My Mouse Ate My Homework!
  38. JavaScript: jQuery Event Handling in FriendFeed
  39. Web: 960 Grid System
  40. Apple: Snow Leopard
  41. Rails: Handling Duplicate Entries with Unique Indexes
  42. My Take on Writing Code that Doesn't Suck
  43. Rails: Ratings
  44. JavaScript: Ajax Notifications with jQuery
  45. Rails: Engine Yard Flex
  46. JavaScript: Coping with Client Server Conflicts
  47. Rails: Using jQuery via Google's AJAX Libraries API
  48. JavaScript: DOM vs. innerHTML, Server-driven vs. Client-driven
  49. Web: More Lost than Ever
  50. Rails: Dynamic 404s, authlogic, Cucumber, and rescue_from
  51. Rails: authlogic Code Review
  52. Vim: Transparency in MacVim
  53. Open Source: Closed Source Video Games
  54. Testing: How SQLite is Tested
  55. Linux: OpenGEU
  56. Rails: Cache Inconsistency Caused by a Common Rails Idiom
  57. Linux: Open Source and my MacBook
  58. Rails: Foreign Key Constraints
  59. Python: Planet Python Update
  60. Rails: Configuring Admins, Checkboxes, and attributes= Vulnerabilites
  61. Rails: Forcing a Controller to have a Comment
  62. Rails: Tests vs. Docs
  63. Rails: authlogic and acl_system2 under Rails 2.3.2
  64. This Isn't a Pure Python Blog
  65. Rails: RSpec, Cucumber, Authlogic, and factory_girl
  66. Software Engineering: A Book on $foo
  67. IDE: NetBeans after Six Months
  68. Agile Programming: I'm Stuck in the Middle
  69. Rails: Internationalization
  70. Rails: Validating URLs
  71. Talk: Techniques for Building Third-party RESTful Web Services
  72. Python: Amazon Product Advertising API
  73. Vi: Pirates vs. Ninjas
  74. Vim as a Python IDE
  75. Python: Look What the Stork Dragged In
  76. Python: lambda to the Rescue
  77. Oz: Translating Python into Oz
  78. Programming Languages: A Brief, Incomplete, and Mostly Wrong History of Programming Languages
  79. Talk: Python Tools, the UNIX Philosophy, and sort Tricks
  80. Hardware: Lexar USB Flash Drive
  81. Programming: 50 in 50
  82. Oz: Don't See it Yet? Tell Me More!
  83. Apple: Broken Keyboard: Apple to the Rescue!
  84. Oz: Variable to Variable Binding
  85. Personal: My ICQ is Dead
  86. Personal: Offline
  87. Oz: Concurrency Doesn't Have to be Hard
  88. Books: JavaScript: The Good Parts (Part 2)
  89. Books: JavaScript: The Good Parts
  90. Apple: Bluetooth TCP/IP Network
  91. MySQL: Case-sensitivity Hell
  92. MySQL: Encoding Hell
  93. Computer Science: Faster, Smarter, More Robust
  94. Haskell or Erlang?
  95. Computer History: Epigrams in Programming
  96. Python: Logging to Email in Pylons
  97. MySQL: MySQLdb Bugs
  98. Vi In JavaScript
  99. Books: Ruby for Rails
  100. Ruby: A Python Programmer's Perspective Part IV
  101. Ruby: A Python Programmer's Perspective Part III
  102. Ruby: A Python Programmer's Perspective Part II
  103. REST: RESTful Shopping Carts
  104. Python: Google App Engine
  105. Humor: This Statement is False
  106. Funny: IronPort Video
  107. A REST-RPC Hybrid for Distributed Computing
  108. Logic: Occam's Razor
  109. Linux: Fun with Big Files
  110. Personal: Looking for Work
  111. Computer Science: The Autoturing Test
  112. Virtualization: VirtualBox
  113. Python: Parsing Wikipedia Dumps Using SAX
  114. Graphics: Photosynth
  115. Vim: jVi
  116. IDE: NetBeans
  117. C++: Counting Function Calls
  118. Python: Builds of PyWebkitGtk and Webkit-Glib-Gtk

2008 125

  1. Vim: ctags
  2. Editors: I Dig Komodo Edit
  3. Emacs: nXhtml
  4. Software Engineering: The Right Editor for the Right Job
  5. Web: Robust Click-through Tracking
  6. Python: Web Beacons in Pylons
  7. Python: Timesheet Calculator
  8. Emacs: vimoutliner
  9. Programming: If programming languages were religions...
  10. Python and Ruby: Regular Expression Anchors
  11. Computer History: Doug Engelbart
  12. Books: RESTful Web Services
  13. Grammar: Predicates
  14. Python: Class Methods Make Good Factories
  15. Auto: Square Pistons
  16. Pc bsd
  17. VMware Euphoria
  18. Misspelled Variables
  19. AI: Thankful for Bad AI
  20. NetBSD: X11 Forwarding over SSH
  21. Ruby: An Interesting Block Pattern
  22. Python: Some Notes on lxml
  23. Python: Permission denied: '/var/www/.python-eggs'
  24. Web: Flock
  25. Web: REST Verbs
  26. IPv6 T-shirt
  27. Books: Expert Python Programming
  28. A Python Programmmer's Perspective on C#
  29. Python: Debugging Memory Leaks
  30. Software Engineering: Reuse Has Finally Arrived
  31. Free Software: Stallman and Births
  32. Python: Bambi Meets Godzilla
  33. Web: SilverStripe
  34. Python for Unix and Linux System Administration
  35. Linux: Trac and Subversion on Ubuntu with Nginx and SSL
  36. Books: Basics of Compiler Design
  37. Humor: I've Been Simpsonized!
  38. Books: The Art of UNIX Programming
  39. Python: the csv module and mysqlimport
  40. Math: pi
  41. Linux: LinuxWorld, BeOS, Openmoko
  42. SICP: Truly Conquering SICP
  43. Python: sort | uniq -c via the subprocess module
  44. Python: Memory Conservation Tip: Temporary dbms
  45. Python: Memory Conservation Tip: sort Tricks
  46. Python: Memory Conservation Tip: Nested Dicts
  47. Python: Memory Conservation Tip: intern()
  48. Computer Science: How to Implement Compilers and Interpreters
  49. Computer Science: Arbitrarily Fine Locking
  50. SICP: not not but rather unless
  51. Software Engineering: Agile Programming and IDEs Considered Harmful
  52. SICP: Broken Math
  53. SICP: Lisp Inspired Python
  54. Lisp: List Comprehensions
  55. Software Engineering: Facebook Thrift
  56. Python: A Few Decorator Tips
  57. Lisp: Pattern Matching
  58. Linux: Running Paster under runit on Ubuntu
  59. Lisp: Hackable by Default
  60. Erlang: Reia
  61. Hosting: RimuHosting
  62. OpenSolaris: Package Management and Joyent
  63. Modern Java From a Python Perspective
  64. Web: Best Anti-Web Rant
  65. Python: A Look Back at Aquarium's Features
  66. Palm: Sprint Dial Up Networking on the Treo 700P
  67. Python: any() + generator expression
  68. UNIX: comm = diff - formatting
  69. How to Protect Your Open Source Project from Poisonous People
  70. Python: Hack-a-thon
  71. Rant: UNIX vs. the Web
  72. Python: Google App Engine: Cookie Users Beware
  73. Python: Debugging Google App Engine Apps Locally
  74. The Bipolar Lisp Programmer
  75. Joel on Software: Never Rewrite from Scratch
  76. Linux: Resetting GNOME Settings
  77. User Experience: mint.com
  78. UNIX: "join"
  79. UNIX: "cut" Can't Cut It
  80. Web: Google Technologies Specialist
  81. Math Girl Makes Music
  82. Python: Google App Engine
  83. Python: Werkzeug
  84. Vim: Why I Like Vim
  85. Emacs Question: Indenting Non-code
  86. Vim: Weird OS X (10.5) Problem
  87. PyCon: IronPython: The Road Ahead
  88. PyCon: Core Python Containers--Under the Hood
  89. PyCon: Consuming HTML
  90. PyCon: Plenary: OLPC Update
  91. PyCon: Plenary Keynote: Mark Hammond, "Snake Charming the Dragon: the Past, Present, and Future of Python and Mozilla"
  92. PyCon: Lighting Talks
  93. Python: Python in Your Browser with IronPython and Silverlight
  94. PyCon: Case Study of Python Application Development--Humanized Enso
  95. PyCon: Don't Call Us, We'll Call You: Callback Patterns and Idioms in Python
  96. PyCon: Managing Complexity (and Testing)
  97. PyCon: SQLAlchemy 0.4 and Beyond
  98. PyCon: Plenary Keynote: Van Lindberg, "Intellectual Property and Open Source"
  99. PyCon: High Performance Network IO with Python + Libevent
  100. PyCon: The State of Django
  101. PyCon: Python - All a Scientist Needs
  102. PyCon: Using Optparse, Subprocess, and Doctest to Make Agile Unix Utilities
  103. PyCon: Plenary Keynote: Guido van Rossum, "Python 3000 and You"
  104. PyCon: Plenary Diamond Keynote: Why Python Sucks (But Works Great For Us)
  105. PyCon: Plenary: Chair's Opening Remarks
  106. PyCon: Tutorial: Mastering Pylons and TurboGears 2: Moving Beyond the Basics
  107. PyCon: Random Comments
  108. Python: PyCon 2008
  109. Emacs: Mixing it Up
  110. Ideas: A Snopes.com Plugin
  111. Apple: MacBook Manual Surprises
  112. Scheme: Procedures vs. Data
  113. A Hybrid World of Open and Closed Source Software
  114. Scheme: Implementing cons, car, and cdr
  115. Books: The Myths of Innovation
  116. Computer Science: Offset-based Linked Lists
  117. Personal: Intentionally Unemployed
  118. Concurrency and Python
  119. Computer Science: Applying to Ph.D. Programs in Computer Science
  120. Haskell: Well-typed Programs Can't be Blamed
  121. Computer Science: Everyone Wants to Write a Web Framework
  122. Python: Oh How Long I've Known Thee
  123. Vim: Best Vim Article Ever
  124. Vim: Gimme More Magic
  125. Python: Django: SQL Queries in the Templates

2007 112

  1. OpenSocial talk at Google
  2. Books: Isaac Asimov Predicted Wikipedia
  3. Python: Some Concurrency Tricks
  4. Python: Using PyFacebook in Pylons
  5. Books: Ajax in Action
  6. It Had Too Many Functions
  7. Python: Getting Genshi to Output FBML in Pylons
  8. Web: Flock
  9. Python: Walking Recursive Generators
  10. On Paul Graham and Joel Spolsky
  11. Books: Founders at Work
  12. Free or Best Offer
  13. OOP: Alan Kay
  14. Python: Giving a Talk at Google
  15. 'fsck' Apple, I'll take my freedom!
  16. Linux: Xubuntu 7.10 on a Compaq Presario C500
  17. Linux: Ubuntu 7.10 on a Compaq Presario C500
  18. Computer Science: What's Wrong with CS Research
  19. Link: Web 2.0 ... The Machine is Us/ing Us
  20. Browsers
  21. Computer Science: Prototypal Match Templates
  22. Python: PyWeek
  23. Python: Useful Utility for PGU's leveledit
  24. Computer Science: Smart People Have Weird Hangups
  25. What's Going on with my Wireless?
  26. Computer Science: Popular Languages Never Die
  27. Ruby: All Your Method are Belong to Me
  28. Treo 650 on Ubuntu 7.04 (Feisty Fawn)
  29. Operating Systems: OpenDarwin Shutting Down
  30. Python: Coding in the Debugger for Beginners
  31. Facebook: HTTP GET
  32. Python: Database Migrations
  33. Vim: VimOutliner
  34. Pondering Operating Systems
  35. Python: Look What the Stork Dragged In
  36. Humor: Haskell vs. Lisp
  37. Computer Science: Coping with Unknown Types
  38. 10 Reasons Big Projects Suck
  39. Random Comments from Google Developer Day
  40. Computer Science: Smart Code Reloading
  41. Linux: Ubuntu 7.04 on a Compaq Presario C500
  42. Ruby: I'm on DZone Again!
  43. Ruby: A Python Programmer's Perspective
  44. Suggested Reading: The Futures of Ruby Threading
  45. Erlang: I'm on DZone!
  46. Erlang: The Amazingly Funky and the Amazingly Cool
  47. Vim: More Tips
  48. Humor: Interviewee's Creed
  49. OS X: Aquamacs
  50. O'Reilly Code Quiz
  51. Python: Django's Everywhere!
  52. Highly-technical Management of Software Development
  53. Software Engineering: A Few New Projects
  54. Python: Continuation Based Web Frameworks
  55. Python: PyWeek
  56. Dr. Dobb's Developer Diaries
  57. Software Engineering: No Physics
  58. Foxmarks: Must Have Firefox Extensions
  59. Humor: Funny Signatures
  60. Python: Returning Multiple Things of Different Types
  61. ERNOS: Erlang Networked Operating System
  62. Blogger: Pragmatic Programmers and Erlang
  63. Second Life: My Video Card Stopped Sucking!
  64. Erlang: The Movie
  65. Linux: Gamma Correction
  66. Python: Creating Instance Methods
  67. PyCon: Some More Random Comments
  68. PyCon: Weaving Together Women and IT
  69. PyCon: Software Development with Trac
  70. PyCon: Twill, Scotch, and Figleaf -- Tools for Testing
  71. PyCon: The Essentials of Stackless Python
  72. PyCon: The Wonderful World of Widgets for the Web
  73. PyCon: Write Less Code with XRC for wxPython
  74. PyCon: Developing with IronPython and Windows Forms
  75. PyCon: Keynote: Robert M. Lefkowitz
  76. PyCon: Some Random Comments
  77. PyCon: Interactive Parallel and Distributed Computing with IPython
  78. PyCon: IPython: Getting the Most out of Working Interactively in Python
  79. PyCon: Embedding Little Languages in Python
  80. PyCon: Keynote: Python 3000
  81. PyCon: IronPython: Present and Futures
  82. PyCon: Scaling Python for High-load Web Sites
  83. OLPC: Downloadable Version of Wikipedia for Kids
  84. PyCon: Keynote: Adele Goldberg
  85. PyCon: Creating Games with Pygame on the GP2X
  86. PyCon: Pyweek: Making Games in 7 Days
  87. PyCon: Good-bye Hello World: Rethinking Teaching with Python
  88. PyCon: Web Frameworks Panel
  89. PyCon: Towards and Beyond PyPy 1.0
  90. PyCon: Using Stackless
  91. PyCon: Parsing Revisited: A Grammar Transformation Approach to Parsing
  92. PyCon: Python, Unicode, and I18N
  93. PyCon: Keynote: One Laptop Per Child
  94. PyCon: Testing Tools in Python
  95. PyCon: Introduction
  96. Haskell: Syntax
  97. Haskell: Write Yourself a Scheme in 48 Hours
  98. Vim: Soft Wrap
  99. Vim: Simple Autocompletion
  100. HTML: Making HTML Validation Easier
  101. CSS: Hacking Copy-and-Paste
  102. HTML: Browser Bug?
  103. Python: Running __main__ from Another Script
  104. Python: groupbysorted
  105. Programmer Productivity: My Talk is Now Available
  106. Humor: Binary
  107. Apple: Missing My Mac (Display)
  108. Python: Dealing with Huge Data Sets in MySQLdb
  109. Business: Cisco to Acquire IronPort
  110. Python: Mako
  111. Vim: snippetsEmu
  112. Clustering: Hadoop

2006 73

  1. Linux: Netgear Open Source Wireless-G Router
  2. Foxmarks: One of the Best Apps of 2006
  3. Linux: Coping With Settings on Remote Systems
  4. Python: Trick of the Day
  5. Python: Yahoo Looking for Aquarium Developers
  6. Blogger: New Template
  7. Linux: Internet Explorer on Linux Using a Separate User Account
  8. Python, Pylons, Genshi, SQLAlchemy, and...Erlang!
  9. JavaScript: Douglas Crockford Video
  10. MySQL: Deleting Orphans
  11. Books: Building Scalable Web Sites
  12. Vim: Email from Bram Moolenaar
  13. Vim: More Vim Tidbits
  14. Scalability: The Scaling Myth
  15. Python: Myghty vs. Django templates
  16. Web Design: Faking Alpha Blending with gifs
  17. Vim: Getting Started With Vim
  18. Foxmarks: We Just Launched!
  19. Vim 7: Lovin' It
  20. Books: Thank God for Editors!
  21. Python: Modifying a Counter in a Closure
  22. Python: Greenlets
  23. Hacking: Yahoo Hack Day
  24. Books: Scalable Internet Architectures
  25. Databases: More Atomic Cluster Commits
  26. Python: I Love Genshi!
  27. Python: Stacked Thread-local Object
  28. A Summary of Talks I've Attended Recently
  29. Free Culture: Lawrence Lessig Talk Now Available
  30. Erlang: Toying with Erlang
  31. Erlang: Erlang Style Concurrency
  32. Linux: On-the-fly BASH Aliases with Cntl-R
  33. IETF: RFC 4193
  34. Python: Limitations of Coroutines via Enhanced Generators
  35. Python: Stunning News: Django isn't Perfect!
  36. Linux: Ubuntu 6.06 on Dell Inspiron B130
  37. Haskell: Translating C to English Using Haskell
  38. Python: Don't Mix Wing IDE and sshfs
  39. Linux: Twin
  40. Haskell: Microsoft Haskell PDF
  41. The Career Programmer: Guerilla Tactics for an Imperfect World
  42. Linux: Ubuntu 6.06 on Dell Latitude D610
  43. Computer Science: More Threads = Less Contention?
  44. Python: Django Meeting at Google now on Google Video
  45. Python: Protecting UTF-8 Strings from Naive Code
  46. Humor: bash-3.00$ jj < coffee.cup > code.py
  47. Python: Django Meeting at Google
  48. UNIX: ssh + tar + gzip -q = goodness
  49. Software Engineering: Professional Software Development
  50. Hardware: Smarter Memory
  51. Emacs: Syntax Highlighting
  52. Linux: Verizon Yahoo DSL
  53. HTML: Escaping &'s in URLs in HTML
  54. Python: Django: Now with 73% More Friendliness!
  55. Python: Fun with Classes
  56. Python: Django Custom Tags
  57. Python: Django-palooza
  58. Linux: Ubuntu 5.10 on Dell Inspiron B130
  59. Linux: Fedora Core 4 on Dell Inspiron B130
  60. Haskell: Haskell for C Programmers
  61. Haskell: Tour of the Haskell Syntax
  62. Python: Recursion in Django Templates
  63. Python: Django Templates
  64. Python: Clearing sys.modules of Stale Modules
  65. Microsoft: A [Very] Small Victory
  66. Python: Almost Famous
  67. Haskell: Everything Your Professor Failed to Tell You About Functional Programming
  68. Vim: Output Colorized Source Code
  69. Python: Cheetah
  70. Computer Science: The Perils of JavaSchools
  71. Ruby: Monads
  72. Python: Email from Guido
  73. Humor: Quotes

2005 37

  1. Internet Explorer: Bocked!
  2. Design Patterns: The Inverse Extension Design Pattern
  3. Emacs: The Straw that Broke the Camel's Back
  4. Plone: Some Comments
  5. Haskell: Breadth-first Tree Traversal
  6. Fedora: Sanyo PM-8200 under Fedora Core 4
  7. Python: GCipher
  8. Off Topic: Which Character are You?
  9. GNU screen: A Graphical Replacement
  10. Haskell: First Class Types
  11. Io: A Comparison
  12. Languages: Io
  13. AJAX: Aquarium demo
  14. Python: Deeply Nested try/finally Statements
  15. JavaScript: Quickies
  16. AJAX: Humor
  17. JavaScript: JavaScript has Closures
  18. Linux: NETGEAR MA52 on Fedora Core 4
  19. Java: The Emperor is Naked
  20. Java: Thinking in Java
  21. Python: Wrapping Methods Via a Backdoor
  22. Python: Generator Expressions
  23. Python: HTMLTemplate
  24. Laszlo
  25. Humor: Dangerous Hacker!
  26. MVC: Cargo Cult
  27. Open Source: Humor
  28. Open Source: Apple
  29. Hyperthreaded Micro Threads for Aspect Oriented Programming
  30. FeedBurner: RSS
  31. Hitachi G1000 Pocket PC
  32. FeedBurner
  33. Python: PyCon 2005 random thoughts
  34. Web: The Brian Problem
  35. Web: PyCon 2005
  36. Python: Create a new class on the fly
  37. Welcome to JJinuxLand