JJinuxLand
- 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
2025 4
2024 3
2023 7
- My Takeaways from the Stack Overflow Developer Survey
- ChatGPT: I feel like a kid who just beat an AI playing Go ;)
- Security Mistake on GitHub Copilot's Homepage
- Python: Advice for Patching Your Code at Runtime
- Security: Generating a Symmetric Key
- Security: BSidesSF 2023: CTF
- CHATGPT IS TOTALLY not GOING TO TAKE OVER THE WORLD!
2022 5
2021 8
- Computer Science: Heisenberg Uncertainty Principle
- Python: PyWeek 32: Lil Miss Vampire
- Security: What Percentage of Passwords are Pure ASCII?
- Type Annotations T-Shirt
- A Space Engine
- Add Another Entry to the UNIX Haters' Handbook
- Information Security: SOX, SOC2, ISO 27001, PCI-DSS, OMG!
- Getting Windows 7 Running on a Lenovo Thinkpad T410 with no CDROM Drive and no OEM Software
2020 5
2019 6
- Running a terminal-based version of Tetris written in Go within Visual Studio Online running in Chrome
- Database Week at the AWS Loft
- A nice conversation about programming languages with my mentor, Michael Cheponis, an old school programmer
- Popularity of Manually Installed *NIX Shells on macOS According to Brew
- mv ex-coworkers.csv udemy/
- Books: Kubernetes: The Complete Guide To Master Kubernetes (March 2019 Edition)
2018 12
- JJ's Mostly Adequate Summary of the Django Meetup: When *Not* To Use the ORM & Goodbye REST: Building GraphQL APIs with Django
- JJ's Mostly Adequate Summary of Chrome Dev Summit 2018
- "How to Give a Talk" and "Building Video Games for Fun with PyGame"
- JavaScript: Upgrading from MobX 2.7.0 to 3.0.2
- The Big Bet on Web Performance: What to Do Until WebASM Takes Over?
- A Summary of the O'Reilly Fluent Keynotes
- JavaScript: Apollo Day Notes
- JavaScript: Upgrading mobx-react from 4.0.4 to 4.4.3 (with Enzyme)
- JavaScript: Upgrading mobx-react from 3.5.9 to 4.0.4 (with Enzyme)
- JavaScript: Porting from react-css-modules to babel-plugin-react-css-modules (with Less)
- JavaScript: Upgrading from MobX 2.6.0 to 2.7.0
- Doing Multiple Searches in VS Code While Refactoring
2017 15
- My Thoughts on VS Code vs. WebStorm, PyCharm, IntelliJ, etc.
- My Fairly Complete Notes from Chrome Dev Summit 2017
- Hard Problems in Computer Science
- I'm so done with C
- I finished Andrew Ng's Machine Learning course on Coursera
- JavaScript: ForwardJS Day 2
- JavaScript: ForwardJS Day 1
- Dear new guy: Some personal advice from an old software engineer to a new software engineer
- JavaScript: Porting from React Router v2 to v4 (with tips for Enzyme and MobX)
- JavaScript: Some Tips for Using MobX's Provider with Enzyme, etc.
- JavaScript: React Conf 2017
- Progressive Web Apps
- JavaScript: ForwardJS
- Extreme Web Performance
- Microservices.com Practitioner Summit
2016 8
2015 12
- Web Performance Short Course
- HTML5DevConf
- Android vs. iOS from a User's Perspective
- The vicious cycle of co-dependent attention slavery
- I think I need some career advice
- Distributed Systems: Another Great Jeff Dean Quote
- The Waterfall Model was a straw man argument from the very beginning
- Tetris Over SSH
- Go
- Tetris Written in Go
- Go: A Surprising Edge Case Concerning append and Slice Aliasing
- Books: Getting More: How You Can Negotiate to Succeed in Work and Life
2014 19
- My Professional Videos
- Play Framework Essentials, Learning Scala, and Functional Programming Principles in Scala
- Python: Custom App Labels in Django
- A Blog Post on Excel, 4x4s, Moonshots, and General Purpose Software
- Security: Scam Involving the "assoc" Command on Windows
- Being Turing Complete Ain't All That and a Bag of Chips
- Raspberry Pi: Building an LED Digital Clock
- Best Practices for Software Engineers
- Best Practices for Software Engineers
- PyCon Notes: Introduction to SQLAlchemy
- PyCon Notes: PostgreSQL Proficiency for Python People
- Dagger: A Dependency Injection Framework for Android and Java
- Books: Two Scoops of Django: Best Practices For Django 1.6
- Python: A Response to Glyph's Blog Post on Concurrency
- Python: A lightning quick introduction to virtualenv, nose, mock, monkey patching, dependency injection, and doctest
- Interesting Computer Failures from the Annals of History
- Humor: More Knuth Jokes
- Python: My Notes from Yesterday's SF Python Meetup
- Shooting a Screencast that Shows an IDE
2013 29
- Making a Piña Colada in Haskell: It's All About Concurrency
- Books: The Soul of a New Machine
- Is the Modern Smartphone a Computer?
- My Wireless Sucks!
- Books: Programming Elixir
- Pimsleur Spanish Phases 1-3
- Some Random Thoughts on Haskell
- Books: Two Scoops of Django
- Books: American Gods
- Python: dicts vs. classes
- Python: One More Example of How PyCharm is Psychic
- Python: Using assertRaises as a Context Manager
- Humor: Testing the Validity of Internet Email Using Perl
- Books: Treading on Python
- Books: Programming the Rasberry Pi: Getting Started with Python
- Use "perfect" as a verb, not as an adjective
- Twitter is Hiring Right Now
- Python: I Like Django
- Personal: Links to My G+ and Twitter Accounts
- Drawing Sierpinski's Triangle in Minecraft Using Python
- "Await" in Python
- Irrduino: A Sprinkler System Built Using Arduino, Android, Google App Engine, Python, and Dart
- Dart on a Chromebook: Success!
- Dart with Google Web Toolkit
- Personal: My Buddy is Looking for a Python Job
- Dart: Some Good Blog Posts to Read
- Dart: My Experience Porting to Library v2
- Esto es Dart
- More Dart HTML5 Goodness
2012 67
- New Dart Web UI Codelab
- An Approach to Illiterate Programming: doc-code-merge
- Dartisans Ep. 16: Dart and Web Components Reloaded
- The Untouchables
- Humor: Metamocking
- Dart: Lazily Evaluating Static Variables Leads to Wackiness
- Dart: My Recent Dart Talks
- Trip to "reflections projections|2012"
- Personal: Life Beyond Startups
- Video Games: TV Latency
- Software Engineering: Corporate Wormholes
- Linux on the Desktop
- Dart + HTML5 = Happy Web Developers
- Dart: An Algorithm to Unindent Code
- 3 Articles Every Hardcore Dart Developer Should Read
- Java: Helloooooooo, World!
- Books: Memoirs Found in a Bathtub
- Python: Party Playlist Picker
- Dart: My Quest to Program Dart on a Chromebook
- Ruby: Quizzimoto
- PHP: Phycocauth
- Books: Content Rules
- Books: What Technology Wants
- Books: Peopleware: Productive Projects and Teams
- Books: What Would Google Do?
- Using Ruby on Rails and YouTube for Education
- YouTube for Your Business
- Books: In the Plex: How Google Thinks, Works, and Shapes Our Lives
- Books: Steve Jobs
- Async: To Be or Not To Be
- HTML5 Dev Conf
- Code Reuse has Finally Arrived...Obviously!
- Documentation Sucks, Video Games Rule!
- Dart in Glasgow, Scotland
- Unit Tests Don't Find Bugs: the Death of QA
- Books: Agile Web Development with Rails
- Personal: My Laptop is Worried About Me
- PyCon: Parsing Sentences with the OTHER Natural Language Tool: Link Grammar
- PyCon: Building A Python-Based Search Engine
- PyCon: Parsing Horrible Things with Python
- PyCon: Keynote: Guido Van Rossum
- PyCon: Python for Data Lovers: Explore It, Analyze It, Map It
- PyCon: Storm: the Hadoop of Realtime Stream Processing
- PyCon: Pragmatic Unicode, or, How do I stop the pain?
- PyCon: How the PyPy JIT Works
- PyCon: Why PyPy by Example
- PyCon: Let's Talk About ????
- PyCon: Welcome Message on the Second Day
- PyCon: Lightning Talks
- PyCon: Introspecting Running Python Processes
- PyCon: Python Metaprogramming for Mad Scientists and Evil Geniuses
- PyCon: Make Sure Your Programs Crash
- PyCon: Apache Cassandra and Python
- PyCon: Code Generation in Python: Dismantling Jinja
- PyCon: Advanced Python Tutorials
- Python: Scalability at YouTube
- Python: The Year of PyPy
- Personal: Booth Babe
- Ruby: Using YouTube APIs for Education
- Humor: Tetris
- Python Concurrency Spreadsheet
- Ruby: Working Around SSL Errors on OS X
- Google Developer Relations Jobs
- YouTube: Vibop by NewBlue
- Dart at BayPiggies
- Walking Skeletons and TODO Outlines
- Books: Out of their Minds: The Lives and Discoveries of 15 Great Computer Scientists
2011 89
- Python: Shrapnel
- Dart at g|egypt 2.0
- YouTube for Your Business at g|egypt 2.0
- Computer Science: The Travelling Salesman Problem
- Math: Factoring Numbers
- Computer Science: NP-complete Problems are Really NP-complete
- Tetris in Dart
- Eclipse vs. Intellij for Android, PlayN, Google App Engine, and Python Development
- YouTube: Magisto
- Humor: Millions of Microprocessors
- Linux: Vim Freezing
- CSS: Fading Clipped Text
- Python: Newbie Nugget: Lambda Expressions
- Linux: VNC Stopped Working
- Go: A Second Impression
- Humor: Proving Programs
- Books: Masterminds of Programming
- Books: Python 3 Web Development Beginner’s Guide
- Google I/O 2011
- Software Engineering: Code Reviews vs. Peer Programming
- Amazon Web Services Summit 2011: Navigate the Cloud
- Introducing YouTube.com/create
- Books: Python 3 Web Development Beginner’s Guide
- Python: Increasing the Timeouts for urlfetch in Google App Engine
- Google I/O 2011
- Python: Getting a Fair Flip out of an Unfair Coin
- Personal: I Work at YouTube!
- Personal: Name Dropping
- Call Me Crazy: Calling Conventions
- Perl: Text-based Address Books
- Of Neuroscience and Jazz
- Gaming: How Do Characters Know What to Say?
- Ruby: My Take on Pivotal Labs, Part II
- Ruby: My Take on Pivotal Labs, Part I
- Math: Sierpinski's Triangle is a Variation of Pascal's Triangle
- JavaScript: Jasmine
- Ruby: nil is a Billion Dollar Mistake
- Python: Adding New Methods to an Instance
- Linux: Fish Hanging
- JavaScript: Perfectly Encapsulated May Mean Perfectly Untestable
- Python: Using Louie with Twisted
- JavaScript: JS.IO is Solid, Hookbox Might be the Bee's Knees
- JavaScript: Socket.IO Didn't Meet Needs
- ZeroMQ is Amazing!
- Linux: ^\
- Videos: IBM Centennial Film: 100 X 100 - A century of achievements that have changed the world
- Python: I'm Looking for a Python Instructor
- PyCon: Closing Lightning Talks
- PyCon: Hidden Treasures in the Standard Library
- PyCon: Greasing the Wheels of Exploration with Python
- PyCon: Fun with Python's Newer Tools
- PyCon: An Open success for the cloud: OpenStack
- PyCon: Disqus: Serving 400 million people with Python
- PyCon: Going Full Python - Threadless
- PyCon: Lightning Talks
- PyCon: Supercomputer and Cluster Application Performance Analysis using Python
- PyCon: HTTP in Python: which library for what task?
- PyCon: Advanced Network Architectures With ZeroMQ
- PyCon: Exhibition of Atrocity
- PyCon: Using Coroutines to Create Efficient, High-Concurrency Web Applications
- I Code Sooooo Slowly!
- Python: Python IDEs Panel
- PyCon: The Data Structures of Python
- PyCon: Ten Years of Twisted
- PyCon: Lightning Talks
- PyCon: Hookbox: All Python web-frameworks, now real-time. Batteries Included
- PyCon: Porting to Python 3
- PyCon: Status of Unicode in Python 3
- PyCon: Opening the Flask
- PyCon: State of Pylons/TurboGears 2/repoze.bfg
- PyCon: Python - The Secret Sauce in the Open Cloud
- PyCon: Distributed Tasks with Celery
- PyCon: Keynote
- PyCon: Cooking with Python 3
- Books: Coders at Work
- The Zen of Testing
- Python: Behavioral Driven Development for Telephone Applications Using Lettuce, Flask, and Twilio
- Hardware: Fixed a Dell Inspiron 1545
- Linux: lubuntu
- Linux: Awesome is Awesome!
- Personal: Should I Leave LinkedIn?
- Humor: Donald Knuth Jokes
- Personal: Looking for a New Job
- Bless: A New Twist on Concurrent Programming
- Python: SSL Hell
- Python: use_twisted Decorator
- Linux: pssh
- Linux: Unity
- Linux: CrunchBang Linux 10 on a MacBook Pro
2010 66
- Apple: Ouch!
- Vim: PeepCode Videos
- JavaScript: IE and DTDs
- Ruby: Why I Prefer Cucumber
- Personal: Wife in Labor
- Software Engineering: Coping When You Must Repeat Yourself
- JavaScript: Naughty Socket.IO Example
- Jobs: Looking for People to Work With Me
- Books: Digital At Work: Snapshots From The First Thirty-Five Years
- Linux: The Tiling Window Manager I Wish I Had
- JavaScript: A Second Impression of NodeJS
- Telephony: Blatantly Open Source Phone Trees
- Teladventure: A Phone-based Adventure Game
- Ruby: Phone Trees
- Rails: Fat Tests Considered Unharmful
- Personal: Mostly Offline for a Week
- Personal: Fandor is Launching
- Tailing Whitespace
- Quotes: A Recruiter on Scala and Erlang Jobs
- Quotes: Mark Twain on Math
- Quotes: Max Levchin on Startups
- Scala: Using Akka with Play
- Java: The Play Framework
- Scala: Lift vs. Play! For Web Development
- Scala: Scala for Newbies Night at Linkedin
- Personal: I'm a Wireless Black Hole
- Rails: reset_session and Webrat Don't Play Nicely with One Another
- Ruby: Blooger
- Books: Programming Scala
- Personal: Looking for Work
- Scala: Tweet Tweet Tweet
- Flash: I Like Wowza
- Software Engineering: Premature Featurization
- Linux: Retro Desktops
- Apple: Cleaning a White MacBook
- An Email Scam
- Personal: Working at Google--the Hard Way
- Ruby: Additional Attributes in ActiveRecord
- Ruby: rails_xss
- A Few Simple Ruby, Rails, and MySQL Tips
- IDEs: Netbeans
- Ruby: Using reset_session in Rails with Cucumber and Webrat
- Linux: Qimo for Kids
- ActionScript: JavaScript Event Handlers for JW Player
- ActionScript: jQuery and ActionScript Callbacks
- Neuroscience: Burn-out Visible in the Brains of Patients
- Apple: iPad and Emacs
- Books: The Little Schemer
- Python: The Halting Problem
- Scheme: My Y Combinator
- Humor: An Environmentally-friendly Desktop
- Linux: fish: The Friendly, Interactive Shell
- Ruby: An Introduction to Behavioral Driven Development with RSpec and Cucumber: Version 2
- Ruby: Modifying Class Attributes in Cucumber and RSpec
- ActionScript: Dynamic Streaming
- Science: Gravity as a Communications Mechanism?
- Books: ActionScript 3.0: Visual QuickStart Guide
- Python: Is there a Python Toolbox Website?
- Ruby: Interesting Things from the Rails Book
- Ruby: Using "should not" in Cucumber
- Ruby and Firefox: Two "Oh My Gosh" Moments
- Ruby: Behavior Driven Development
- Python: Asynchronous Network and Web Frameworks
- Software Engineering: The Dunning–Kruger Effect
- Rails: The REST Religion
- Ruby: Strings
2009 118
- Rails: Playing with the DOM using Cucumber and Webrat
- Rails: Full URLs for Images
- Modern Marvels: Engineering Disasters
- ActionScript: Bad Documentation
- Rails: seeds.rb and rake db:test:prepare
- Python: Asynchronous Networking APIs and MySQL
- Ruby: Weird JSON.encode Problem
- Linux: GNOME Shell
- Python: Concurrency
- Books: Advanced Rails Recipes
- Linux: I'm Lovin' Ubuntu 9.10!
- MySQL: Disk Usage Can Never Shrink When Using InnoDB
- Linux: Installing the Flex SDK
- Linux: Installing the Debug Version of Flash on Ubuntu
- Web: Gravatar
- Testing: 100% Code Coverage
- Linux: Help, my Mouse is Possessed!
- Web: Redirecting the User Back After Some Workflow
- ActionScript: Dates
- ActionScript: Flowplayer vs. Open Source Media Framework
- Linux: Convert Mac to UNIX Line Endings
- Linux: Making Your Desktop Calm
- Linux: My xmonad Setup
- What Makes a Good Operating System?
- Linux: xmonad
- Linux: Minimizing Memory Usage
- Python: Concurrency
- My Friend Committed Suicide
- Vim: Editing ActionScript
- Forking a Subversion Repository Using Git the Brutal Way
- Ruby: An Introduction to Behavioral Driven Development with RSpec and Cucumber
- Exploding Software-Engineering Myths
- Ruby: Escaping URL Parameters
- Ruby: Testing Rake Tasks
- Python: How to Blow Up Helicopters Using Pygame
- Linux: The Least Bad Synaptics Configuration for a MacBook Running Ubuntu
- Linux: My Mouse Ate My Homework!
- JavaScript: jQuery Event Handling in FriendFeed
- Web: 960 Grid System
- Apple: Snow Leopard
- Rails: Handling Duplicate Entries with Unique Indexes
- My Take on Writing Code that Doesn't Suck
- Rails: Ratings
- JavaScript: Ajax Notifications with jQuery
- Rails: Engine Yard Flex
- JavaScript: Coping with Client Server Conflicts
- Rails: Using jQuery via Google's AJAX Libraries API
- JavaScript: DOM vs. innerHTML, Server-driven vs. Client-driven
- Web: More Lost than Ever
- Rails: Dynamic 404s, authlogic, Cucumber, and rescue_from
- Rails: authlogic Code Review
- Vim: Transparency in MacVim
- Open Source: Closed Source Video Games
- Testing: How SQLite is Tested
- Linux: OpenGEU
- Rails: Cache Inconsistency Caused by a Common Rails Idiom
- Linux: Open Source and my MacBook
- Rails: Foreign Key Constraints
- Python: Planet Python Update
- Rails: Configuring Admins, Checkboxes, and attributes= Vulnerabilites
- Rails: Forcing a Controller to have a Comment
- Rails: Tests vs. Docs
- Rails: authlogic and acl_system2 under Rails 2.3.2
- This Isn't a Pure Python Blog
- Rails: RSpec, Cucumber, Authlogic, and factory_girl
- Software Engineering: A Book on $foo
- IDE: NetBeans after Six Months
- Agile Programming: I'm Stuck in the Middle
- Rails: Internationalization
- Rails: Validating URLs
- Talk: Techniques for Building Third-party RESTful Web Services
- Python: Amazon Product Advertising API
- Vi: Pirates vs. Ninjas
- Vim as a Python IDE
- Python: Look What the Stork Dragged In
- Python: lambda to the Rescue
- Oz: Translating Python into Oz
- Programming Languages: A Brief, Incomplete, and Mostly Wrong History of Programming Languages
- Talk: Python Tools, the UNIX Philosophy, and sort Tricks
- Hardware: Lexar USB Flash Drive
- Programming: 50 in 50
- Oz: Don't See it Yet? Tell Me More!
- Apple: Broken Keyboard: Apple to the Rescue!
- Oz: Variable to Variable Binding
- Personal: My ICQ is Dead
- Personal: Offline
- Oz: Concurrency Doesn't Have to be Hard
- Books: JavaScript: The Good Parts (Part 2)
- Books: JavaScript: The Good Parts
- Apple: Bluetooth TCP/IP Network
- MySQL: Case-sensitivity Hell
- MySQL: Encoding Hell
- Computer Science: Faster, Smarter, More Robust
- Haskell or Erlang?
- Computer History: Epigrams in Programming
- Python: Logging to Email in Pylons
- MySQL: MySQLdb Bugs
- Vi In JavaScript
- Books: Ruby for Rails
- Ruby: A Python Programmer's Perspective Part IV
- Ruby: A Python Programmer's Perspective Part III
- Ruby: A Python Programmer's Perspective Part II
- REST: RESTful Shopping Carts
- Python: Google App Engine
- Humor: This Statement is False
- Funny: IronPort Video
- A REST-RPC Hybrid for Distributed Computing
- Logic: Occam's Razor
- Linux: Fun with Big Files
- Personal: Looking for Work
- Computer Science: The Autoturing Test
- Virtualization: VirtualBox
- Python: Parsing Wikipedia Dumps Using SAX
- Graphics: Photosynth
- Vim: jVi
- IDE: NetBeans
- C++: Counting Function Calls
- Python: Builds of PyWebkitGtk and Webkit-Glib-Gtk
2008 125
- Vim: ctags
- Editors: I Dig Komodo Edit
- Emacs: nXhtml
- Software Engineering: The Right Editor for the Right Job
- Web: Robust Click-through Tracking
- Python: Web Beacons in Pylons
- Python: Timesheet Calculator
- Emacs: vimoutliner
- Programming: If programming languages were religions...
- Python and Ruby: Regular Expression Anchors
- Computer History: Doug Engelbart
- Books: RESTful Web Services
- Grammar: Predicates
- Python: Class Methods Make Good Factories
- Auto: Square Pistons
- Pc bsd
- VMware Euphoria
- Misspelled Variables
- AI: Thankful for Bad AI
- NetBSD: X11 Forwarding over SSH
- Ruby: An Interesting Block Pattern
- Python: Some Notes on lxml
- Python: Permission denied: '/var/www/.python-eggs'
- Web: Flock
- Web: REST Verbs
- IPv6 T-shirt
- Books: Expert Python Programming
- A Python Programmmer's Perspective on C#
- Python: Debugging Memory Leaks
- Software Engineering: Reuse Has Finally Arrived
- Free Software: Stallman and Births
- Python: Bambi Meets Godzilla
- Web: SilverStripe
- Python for Unix and Linux System Administration
- Linux: Trac and Subversion on Ubuntu with Nginx and SSL
- Books: Basics of Compiler Design
- Humor: I've Been Simpsonized!
- Books: The Art of UNIX Programming
- Python: the csv module and mysqlimport
- Math: pi
- Linux: LinuxWorld, BeOS, Openmoko
- SICP: Truly Conquering SICP
- Python: sort | uniq -c via the subprocess module
- Python: Memory Conservation Tip: Temporary dbms
- Python: Memory Conservation Tip: sort Tricks
- Python: Memory Conservation Tip: Nested Dicts
- Python: Memory Conservation Tip: intern()
- Computer Science: How to Implement Compilers and Interpreters
- Computer Science: Arbitrarily Fine Locking
- SICP: not not but rather unless
- Software Engineering: Agile Programming and IDEs Considered Harmful
- SICP: Broken Math
- SICP: Lisp Inspired Python
- Lisp: List Comprehensions
- Software Engineering: Facebook Thrift
- Python: A Few Decorator Tips
- Lisp: Pattern Matching
- Linux: Running Paster under runit on Ubuntu
- Lisp: Hackable by Default
- Erlang: Reia
- Hosting: RimuHosting
- OpenSolaris: Package Management and Joyent
- Modern Java From a Python Perspective
- Web: Best Anti-Web Rant
- Python: A Look Back at Aquarium's Features
- Palm: Sprint Dial Up Networking on the Treo 700P
- Python: any() + generator expression
- UNIX: comm = diff - formatting
- How to Protect Your Open Source Project from Poisonous People
- Python: Hack-a-thon
- Rant: UNIX vs. the Web
- Python: Google App Engine: Cookie Users Beware
- Python: Debugging Google App Engine Apps Locally
- The Bipolar Lisp Programmer
- Joel on Software: Never Rewrite from Scratch
- Linux: Resetting GNOME Settings
- User Experience: mint.com
- UNIX: "join"
- UNIX: "cut" Can't Cut It
- Web: Google Technologies Specialist
- Math Girl Makes Music
- Python: Google App Engine
- Python: Werkzeug
- Vim: Why I Like Vim
- Emacs Question: Indenting Non-code
- Vim: Weird OS X (10.5) Problem
- PyCon: IronPython: The Road Ahead
- PyCon: Core Python Containers--Under the Hood
- PyCon: Consuming HTML
- PyCon: Plenary: OLPC Update
- PyCon: Plenary Keynote: Mark Hammond, "Snake Charming the Dragon: the Past, Present, and Future of Python and Mozilla"
- PyCon: Lighting Talks
- Python: Python in Your Browser with IronPython and Silverlight
- PyCon: Case Study of Python Application Development--Humanized Enso
- PyCon: Don't Call Us, We'll Call You: Callback Patterns and Idioms in Python
- PyCon: Managing Complexity (and Testing)
- PyCon: SQLAlchemy 0.4 and Beyond
- PyCon: Plenary Keynote: Van Lindberg, "Intellectual Property and Open Source"
- PyCon: High Performance Network IO with Python + Libevent
- PyCon: The State of Django
- PyCon: Python - All a Scientist Needs
- PyCon: Using Optparse, Subprocess, and Doctest to Make Agile Unix Utilities
- PyCon: Plenary Keynote: Guido van Rossum, "Python 3000 and You"
- PyCon: Plenary Diamond Keynote: Why Python Sucks (But Works Great For Us)
- PyCon: Plenary: Chair's Opening Remarks
- PyCon: Tutorial: Mastering Pylons and TurboGears 2: Moving Beyond the Basics
- PyCon: Random Comments
- Python: PyCon 2008
- Emacs: Mixing it Up
- Ideas: A Snopes.com Plugin
- Apple: MacBook Manual Surprises
- Scheme: Procedures vs. Data
- A Hybrid World of Open and Closed Source Software
- Scheme: Implementing cons, car, and cdr
- Books: The Myths of Innovation
- Computer Science: Offset-based Linked Lists
- Personal: Intentionally Unemployed
- Concurrency and Python
- Computer Science: Applying to Ph.D. Programs in Computer Science
- Haskell: Well-typed Programs Can't be Blamed
- Computer Science: Everyone Wants to Write a Web Framework
- Python: Oh How Long I've Known Thee
- Vim: Best Vim Article Ever
- Vim: Gimme More Magic
- Python: Django: SQL Queries in the Templates
2007 112
- OpenSocial talk at Google
- Books: Isaac Asimov Predicted Wikipedia
- Python: Some Concurrency Tricks
- Python: Using PyFacebook in Pylons
- Books: Ajax in Action
- It Had Too Many Functions
- Python: Getting Genshi to Output FBML in Pylons
- Web: Flock
- Python: Walking Recursive Generators
- On Paul Graham and Joel Spolsky
- Books: Founders at Work
- Free or Best Offer
- OOP: Alan Kay
- Python: Giving a Talk at Google
- 'fsck' Apple, I'll take my freedom!
- Linux: Xubuntu 7.10 on a Compaq Presario C500
- Linux: Ubuntu 7.10 on a Compaq Presario C500
- Computer Science: What's Wrong with CS Research
- Link: Web 2.0 ... The Machine is Us/ing Us
- Browsers
- Computer Science: Prototypal Match Templates
- Python: PyWeek
- Python: Useful Utility for PGU's leveledit
- Computer Science: Smart People Have Weird Hangups
- What's Going on with my Wireless?
- Computer Science: Popular Languages Never Die
- Ruby: All Your Method are Belong to Me
- Treo 650 on Ubuntu 7.04 (Feisty Fawn)
- Operating Systems: OpenDarwin Shutting Down
- Python: Coding in the Debugger for Beginners
- Facebook: HTTP GET
- Python: Database Migrations
- Vim: VimOutliner
- Pondering Operating Systems
- Python: Look What the Stork Dragged In
- Humor: Haskell vs. Lisp
- Computer Science: Coping with Unknown Types
- 10 Reasons Big Projects Suck
- Random Comments from Google Developer Day
- Computer Science: Smart Code Reloading
- Linux: Ubuntu 7.04 on a Compaq Presario C500
- Ruby: I'm on DZone Again!
- Ruby: A Python Programmer's Perspective
- Suggested Reading: The Futures of Ruby Threading
- Erlang: I'm on DZone!
- Erlang: The Amazingly Funky and the Amazingly Cool
- Vim: More Tips
- Humor: Interviewee's Creed
- OS X: Aquamacs
- O'Reilly Code Quiz
- Python: Django's Everywhere!
- Highly-technical Management of Software Development
- Software Engineering: A Few New Projects
- Python: Continuation Based Web Frameworks
- Python: PyWeek
- Dr. Dobb's Developer Diaries
- Software Engineering: No Physics
- Foxmarks: Must Have Firefox Extensions
- Humor: Funny Signatures
- Python: Returning Multiple Things of Different Types
- ERNOS: Erlang Networked Operating System
- Blogger: Pragmatic Programmers and Erlang
- Second Life: My Video Card Stopped Sucking!
- Erlang: The Movie
- Linux: Gamma Correction
- Python: Creating Instance Methods
- PyCon: Some More Random Comments
- PyCon: Weaving Together Women and IT
- PyCon: Software Development with Trac
- PyCon: Twill, Scotch, and Figleaf -- Tools for Testing
- PyCon: The Essentials of Stackless Python
- PyCon: The Wonderful World of Widgets for the Web
- PyCon: Write Less Code with XRC for wxPython
- PyCon: Developing with IronPython and Windows Forms
- PyCon: Keynote: Robert M. Lefkowitz
- PyCon: Some Random Comments
- PyCon: Interactive Parallel and Distributed Computing with IPython
- PyCon: IPython: Getting the Most out of Working Interactively in Python
- PyCon: Embedding Little Languages in Python
- PyCon: Keynote: Python 3000
- PyCon: IronPython: Present and Futures
- PyCon: Scaling Python for High-load Web Sites
- OLPC: Downloadable Version of Wikipedia for Kids
- PyCon: Keynote: Adele Goldberg
- PyCon: Creating Games with Pygame on the GP2X
- PyCon: Pyweek: Making Games in 7 Days
- PyCon: Good-bye Hello World: Rethinking Teaching with Python
- PyCon: Web Frameworks Panel
- PyCon: Towards and Beyond PyPy 1.0
- PyCon: Using Stackless
- PyCon: Parsing Revisited: A Grammar Transformation Approach to Parsing
- PyCon: Python, Unicode, and I18N
- PyCon: Keynote: One Laptop Per Child
- PyCon: Testing Tools in Python
- PyCon: Introduction
- Haskell: Syntax
- Haskell: Write Yourself a Scheme in 48 Hours
- Vim: Soft Wrap
- Vim: Simple Autocompletion
- HTML: Making HTML Validation Easier
- CSS: Hacking Copy-and-Paste
- HTML: Browser Bug?
- Python: Running __main__ from Another Script
- Python: groupbysorted
- Programmer Productivity: My Talk is Now Available
- Humor: Binary
- Apple: Missing My Mac (Display)
- Python: Dealing with Huge Data Sets in MySQLdb
- Business: Cisco to Acquire IronPort
- Python: Mako
- Vim: snippetsEmu
- Clustering: Hadoop
2006 73
- Linux: Netgear Open Source Wireless-G Router
- Foxmarks: One of the Best Apps of 2006
- Linux: Coping With Settings on Remote Systems
- Python: Trick of the Day
- Python: Yahoo Looking for Aquarium Developers
- Blogger: New Template
- Linux: Internet Explorer on Linux Using a Separate User Account
- Python, Pylons, Genshi, SQLAlchemy, and...Erlang!
- JavaScript: Douglas Crockford Video
- MySQL: Deleting Orphans
- Books: Building Scalable Web Sites
- Vim: Email from Bram Moolenaar
- Vim: More Vim Tidbits
- Scalability: The Scaling Myth
- Python: Myghty vs. Django templates
- Web Design: Faking Alpha Blending with gifs
- Vim: Getting Started With Vim
- Foxmarks: We Just Launched!
- Vim 7: Lovin' It
- Books: Thank God for Editors!
- Python: Modifying a Counter in a Closure
- Python: Greenlets
- Hacking: Yahoo Hack Day
- Books: Scalable Internet Architectures
- Databases: More Atomic Cluster Commits
- Python: I Love Genshi!
- Python: Stacked Thread-local Object
- A Summary of Talks I've Attended Recently
- Free Culture: Lawrence Lessig Talk Now Available
- Erlang: Toying with Erlang
- Erlang: Erlang Style Concurrency
- Linux: On-the-fly BASH Aliases with Cntl-R
- IETF: RFC 4193
- Python: Limitations of Coroutines via Enhanced Generators
- Python: Stunning News: Django isn't Perfect!
- Linux: Ubuntu 6.06 on Dell Inspiron B130
- Haskell: Translating C to English Using Haskell
- Python: Don't Mix Wing IDE and sshfs
- Linux: Twin
- Haskell: Microsoft Haskell PDF
- The Career Programmer: Guerilla Tactics for an Imperfect World
- Linux: Ubuntu 6.06 on Dell Latitude D610
- Computer Science: More Threads = Less Contention?
- Python: Django Meeting at Google now on Google Video
- Python: Protecting UTF-8 Strings from Naive Code
- Humor: bash-3.00$ jj < coffee.cup > code.py
- Python: Django Meeting at Google
- UNIX: ssh + tar + gzip -q = goodness
- Software Engineering: Professional Software Development
- Hardware: Smarter Memory
- Emacs: Syntax Highlighting
- Linux: Verizon Yahoo DSL
- HTML: Escaping &'s in URLs in HTML
- Python: Django: Now with 73% More Friendliness!
- Python: Fun with Classes
- Python: Django Custom Tags
- Python: Django-palooza
- Linux: Ubuntu 5.10 on Dell Inspiron B130
- Linux: Fedora Core 4 on Dell Inspiron B130
- Haskell: Haskell for C Programmers
- Haskell: Tour of the Haskell Syntax
- Python: Recursion in Django Templates
- Python: Django Templates
- Python: Clearing sys.modules of Stale Modules
- Microsoft: A [Very] Small Victory
- Python: Almost Famous
- Haskell: Everything Your Professor Failed to Tell You About Functional Programming
- Vim: Output Colorized Source Code
- Python: Cheetah
- Computer Science: The Perils of JavaSchools
- Ruby: Monads
- Python: Email from Guido
- Humor: Quotes
2005 37
- Internet Explorer: Bocked!
- Design Patterns: The Inverse Extension Design Pattern
- Emacs: The Straw that Broke the Camel's Back
- Plone: Some Comments
- Haskell: Breadth-first Tree Traversal
- Fedora: Sanyo PM-8200 under Fedora Core 4
- Python: GCipher
- Off Topic: Which Character are You?
- GNU screen: A Graphical Replacement
- Haskell: First Class Types
- Io: A Comparison
- Languages: Io
- AJAX: Aquarium demo
- Python: Deeply Nested try/finally Statements
- JavaScript: Quickies
- AJAX: Humor
- JavaScript: JavaScript has Closures
- Linux: NETGEAR MA52 on Fedora Core 4
- Java: The Emperor is Naked
- Java: Thinking in Java
- Python: Wrapping Methods Via a Backdoor
- Python: Generator Expressions
- Python: HTMLTemplate
- Laszlo
- Humor: Dangerous Hacker!
- MVC: Cargo Cult
- Open Source: Humor
- Open Source: Apple
- Hyperthreaded Micro Threads for Aspect Oriented Programming
- FeedBurner: RSS
- Hitachi G1000 Pocket PC
- FeedBurner
- Python: PyCon 2005 random thoughts
- Web: The Brian Problem
- Web: PyCon 2005
- Python: Create a new class on the fly
- Welcome to JJinuxLand