The Curious Engineer

All blogs / JavaScript / TypeScript

jaketrent.com

jaketrent.com/post

A lovely dev blog from a simple man.

JavaScript / TypeScriptLinux / UnixAI / MLTesting / QAFrontend / CSS / browsersEngineering blogs

Posts
820 from 26 Aug 2008 to 10 Sep 2026
Posting
weekly (37 in the last year)
Kind
personal blog
Feed
https://jaketrent.com/post/feed.xml

2026 35

  1. Abort a Fetch Request in React on Unmount
  2. Losing Our Grip with AI
  3. Rebuild a Static Site on Netlify on a Schedule
  4. Git Config User Per Repo
  5. Local-only OCR
  6. Local-only Voice Dictation
  7. Set Desktop Color Scheme with Pywal
  8. Make Nvidia GPU Available to Docker Container
  9. Git Write Author
  10. Printing via CUPS in the Terminal
  11. Developer Public Relations
  12. Put Localhost on HTTPS with Nginx
  13. Humans, Keep the Initiative
  14. Set Battery Charge Threshold in Linux
  15. Command Check in Bash
  16. A Week of AI Maxxing
  17. SSH Into a Machine on Your Local Network
  18. Get Video Dimensions in the Terminal
  19. AI Horizons
  20. Take My Info
  21. Centralized Knowledge
  22. Enable Figma MCP on Opencode
  23. Run an LLM Model Locally
  24. Ignore an NPM Audit CVE
  25. X Startup Scripts
  26. How to Apply a Software Patch
  27. Some Layers of the Linux Desktop
  28. Map Hotkeys in X11
  29. Poll with Promises
  30. The Art is You
  31. Post Form to Google Spreadsheet
  32. Install picom 12 on Ubuntu 24
  33. Track Ecto Migrations
  34. Change Audio Output to HDMI in the Terminal
  35. Create VPN Exception for Local Network Devices

2025 67

  1. Output to a Bluetooth Speaker from the Terminal
  2. Show Git Log Before Move
  3. Play an Audio CD in Terminal
  4. Specifying a Timezone on the Client
  5. Define a Graphql Enum Type in Ash
  6. Ash Query Time Expressions
  7. Ash Embedded Union Type Attributes
  8. How'd They Do That?
  9. Query Embedded Jsonb in Ash
  10. Proxy Backend Requests in Next.js
  11. Wrap Instrumentation Around Results
  12. Ash Policies Gotchas
  13. Celebrating Liability
  14. Get Image Dimensions from the Terminal
  15. Convert Google.Protobuf.Timestamp to DateTime in Elixir
  16. Return a Related Resource via Calculation in Ash
  17. Test Ash Validation
  18. Git Unstage Before First Commit
  19. Read Text to Speech in Terminal
  20. Suddenly, There's More
  21. Search Over All Project Files in Telescope Live Grep
  22. Find and Replace Multiple Files in Telescope
  23. Run Docker on Linux Without Docker Desktop
  24. Clean up React Form with useActionState
  25. AI Goldrush
  26. Change Favicon Based on Color Scheme
  27. Owners Do it Best
  28. useReducer in TypeScript
  29. Engaging as a Human
  30. The Moral Use of Tools
  31. Map Naming Convention
  32. Disable Pagination in Ash
  33. Actual Intelligence
  34. Hiring Boxed Programmers
  35. AI-mediated Business
  36. AI Ads
  37. Turn Off Phoenix Access Logger
  38. The Cost of AI on the Cutting Edge
  39. Mock HTTP Calls in Elixir Tests
  40. Wrapping Something That's Not Yours
  41. The Flattening & Reshaping of Experience
  42. IRC Client in Terminal
  43. Accept JSON Object in Ash Graphql
  44. Npm Install is Easy
  45. Reviewing AI-generated Code
  46. Set Default Browser in i3
  47. Dull the Cutting Edge with AI
  48. AI Mainstreams Plagiarism
  49. Share Setup Data in ExUnit
  50. See your PR from the git cli
  51. Follow Project Patterns
  52. CSS-only Modal Dialog
  53. Thread in Arbitrary Position in Clojure
  54. AI or Not, Understand, then Commit
  55. Install Elixir LS Lexical for Nvim
  56. Elixir In-Memory Cache
  57. SQL Order of Null
  58. AI Inspiration
  59. Select Hunks to Stage in Git
  60. How AI Iterates
  61. Performance Review by AI
  62. CSS-only Toast
  63. What We Are When We Use AI
  64. Rank Score Rows Returned in SQL
  65. Map a Postgrex Row to a Struct
  66. Test For Bytestring in Elixir
  67. Import a Jinja Macro & Use in For Loop

2024 67

  1. Clojure Build on Netlify
  2. Narrow Union on Nested Value
  3. Order Tailwind Styles in Layers
  4. Error Response Shapes in Ash Graphql
  5. Restore Postgres Dump to Ash
  6. What I Learned in Conjure School
  7. Tailwind Parent Selector
  8. Burn an MP3 CD in Linux
  9. Implementing Ash Policies for GraphQL
  10. Count Git Blame Lines on Current Files
  11. Save Variables in SQL
  12. Thank You for the Code
  13. Export Multiple Stylesheets to postcss-import
  14. Publish an NPM Package to JFrog Artifactory
  15. Transfer Music to a Classic iPod on Linux
  16. Alternatives to Spread Operator Reduce
  17. Capture Right Click in React
  18. Sort By Two Fields in JavaScript
  19. Making Changes in a Distributed System
  20. Make a Lowercase Enum in Absinthe
  21. Writing a Subquery in Ecto
  22. Run an Ecto Query in an Ash Manual Action
  23. Create a Custom Commitlint Pattern
  24. Set up Multiple Jest Configs
  25. Load .env File in Jest
  26. Dependencies Show Cleanliness
  27. See TODOs in a Branch
  28. Run RabbitMQ Locally
  29. Remove Parens in Elixir Formatter
  30. Query System Specs in Linux
  31. Type a Declared Function in TypeScript
  32. Sculpting Software to Create Beauty
  33. Redirect in Middleware in Next.js 14
  34. Encode Base64 in Node.js
  35. Store JSON Secret in Vault
  36. Create a File on Google Drive using Promises
  37. Test Localhost on Mobile Device
  38. Logging to DataDog from Next.js
  39. Block Websites with /etc/hosts File
  40. Format an NTFS Drive in Linux
  41. Play Playlist with mpv
  42. Generate Validator and Type Def with AJV
  43. Strong Type Checks with AJV Additional Properties
  44. Error Handling with Result Type
  45. Use Vault for Local Dev Secrets
  46. Dev Silver Bullets Still Don't Exist
  47. Trigger Caps Lock From Linux Terminal
  48. Connect to AWS VPN from i3
  49. It's People Behind The Curtain
  50. Export Authy Desktop Data
  51. Test Postgres Connection
  52. Avoid Unix Socket Connections with Postgres PGHOST
  53. Narrow Input Over Time
  54. Conditionally Change Object in JavaScript
  55. Use Vim Keybindings in Alacritty
  56. Abort Fetch API Request
  57. Diff Files in Neovim
  58. Run a Single Elixir Test
  59. Run Elixir Tests in Watch Mode
  60. Cleanup Local Git Branches
  61. React is a Framework
  62. Format USB Drive as FAT32
  63. Empty the Trash from Terminal
  64. Change Hostname in Linux
  65. Catch Error Thrown from setTimeout
  66. TypeScript Type-safe Filter Boolean
  67. De-dup Files from the Terminal

2023 102

  1. Render Markdown in the Terminal
  2. Cut and Stitch Clips with ffmpeg
  3. Unwrap a Promise in TypeScript
  4. Copilot Experience So Far
  5. Serialize Undefined Static Props in NextJS
  6. Gamify Games
  7. Reduce System76 Fan Noise
  8. Be on Time, Be Professional
  9. Install Erlang on Ubuntu 22.04
  10. Mark i3 Windows and Navigate Marks
  11. Center Grid Cells on Page
  12. Type Diacritics in Linux
  13. Rendering on Client Only in NextJS
  14. Add a Script to dmenu
  15. Run AppImage on Pop!_OS
  16. Computer-specific i3 Config
  17. Why Use the function Keyword in JavaScript
  18. Open Git Log Files from the Terminal
  19. Mock process.env in Jest
  20. Format and Parse Naming Convention
  21. Prefer Local, Specific Code
  22. Reused Means Coupled
  23. Start Apps in i3 with Keyboard Shortcuts
  24. Install Font on Linux
  25. Undo Git Commit Amend
  26. Simple Static Site on Nginx on Docker
  27. Share Terminal Amongst Multiple Processes
  28. Add a Printer in i3
  29. Hide YouTube Shorts
  30. Rip an Audio CD in Linux
  31. Burn Audio CD in Linux
  32. Create Playlist in cmus
  33. Take a Screenshot in Linux
  34. Color Picker in Linux
  35. Format Clojure Code in Neovim
  36. HTTPie: Simpler Alternative to Curl
  37. Color Picker in Windows 11
  38. Evaluate Clojure From Neovim
  39. Connect Conjure to an Existing nREPL Session
  40. Mount Network Drive on Linux
  41. List All Devices on Local Network with Linux
  42. Loop Through Map in Clojure
  43. Define Functions in Clojure
  44. Filter a Map in Clojure
  45. A Decade of React
  46. Pipe a File to Clipboard Using xclip
  47. asdf: The Best Version Manager
  48. Keep an Image in Aspect Ratio
  49. Convert FormData to JSON
  50. Bubble Events in React
  51. See Progress of dd Process
  52. Install Docker Desktop on Ubuntu
  53. Seed Sqlite with Data
  54. CSS-only Fading Slideshow
  55. Remap Keys in i3
  56. Adjust Keyboard Repeat Rate in i3
  57. Set Screen Brightness in i3
  58. Compile JSX in @swc/jest Tests
  59. Start Server in Jest
  60. Creation is the Point
  61. Maybe Don't Write a Test
  62. Change Directory in Python Subprocess
  63. Photo Slideshow in Ubuntu
  64. Best Practice Overload
  65. Timezone-specific Date Accessors in JavaScript
  66. Form Submission in Next.js 13
  67. Query Hubspot with GraphQL
  68. Trends in the Social Network
  69. Simplify vs Manage Complexity
  70. Global Access to Container Queries
  71. Tmux Dev Env Setup Speedup
  72. Ubiquitous Language Tips
  73. Setup ClojureScript with Shadow CLJS
  74. Expand a 2-Column Grid to 3 Columns
  75. Config Multiple Monitors in i3
  76. Should I Comment This Code?
  77. Convert Icon Font to SVG
  78. Typescript Cannot Find CSS Module
  79. I Don't Like Tailwind
  80. Run Jest on Native ES Modules
  81. Set CORS Headers in Next 13 Response
  82. Debugging with Git Bisect
  83. Why and When Do I Test?
  84. Set Favicon in Next 13
  85. Set Timezone by Name in JavaScript Date
  86. Store UTC Dates in Postgres with JavaScript
  87. JavaScript Dates and UTC
  88. Set Non-secret Vars in AWS Serverless (SAM)
  89. Securely Wipe Hard Drive
  90. Adjust Volume in Linux with Alsamixer
  91. Twilio Flex direction:outbound Attribute
  92. Avoid Digital Envelope Routine Error in Node.js
  93. Submit a Form with a Button Outside the Form
  94. Davinci Resolve Shortcuts
  95. The Best RSS Reader: Newsboat
  96. Make Cypress Intercept Responses Dynamic
  97. Set Django Logout Redirect URL
  98. Backing up Dotfiles
  99. Difference Between Promise.all and Promise.allSettled
  100. Dynamic Icons for Call Channel in Twilio Flex
  101. Share Code Between Twilio Functions
  102. Documentation Isn't Enough

2022 46

  1. Set Node.js Version for Neovim and Language Servers
  2. Nits in Merge Request Feedback
  3. Deploy Astro to Gitlab Pages
  4. Favorite Vim Tricks
  5. Generate a Password
  6. Default Function Params in Python
  7. A World Where Other People Think
  8. Type TypeScript React Functions
  9. Connect psql to Kubernetes Postgres
  10. Test an Intersection Observer in React
  11. Test a Middleware with a Header in FastAPI
  12. Dictionary in the Shell
  13. Premature Performance Optimization
  14. Jest Unexpected Token in TypeScript
  15. Import SQL into Fly.io Postgres
  16. Git Reset Single File to Origin Version
  17. Freeze Poetry Dependencies into requirements.txt
  18. Convert HEIC to JPG on Pop!_OS
  19. Auto Resolve Git Rebase, Take Incoming Change
  20. Remove Key from Immutable Dict in Python
  21. Write Nested Loop as List Comprehension
  22. Transfer Vars Between Pydantic Instances
  23. Network Manager in the Terminal on i3
  24. Loop Through TypeScript Union Type
  25. Cache Bust a Docker Build
  26. Find Node IP Inside Kubernetes
  27. Allow Only Keys of Interface in TypeScript
  28. Pacman Reports Corrupt Packages
  29. Pacman Installs Fail with 404
  30. Extract Password from Secrets Manager via AWS Cli
  31. Fit Psql Output on the Screen
  32. Set Default Working Directory of Pytest in PyCharm
  33. Adjust Screen Brightness in Arch
  34. Debug FastAPI with pdb
  35. Read Logs for a Kubernetes Pod
  36. Mark All Tests as Async in pytest
  37. Pass Params to Pytest Fixture
  38. Add a Cookie to a Curl
  39. Get Secet from AWS Secrets Manager via CLI
  40. Assert Exception Message in pytest
  41. Simplest Clojure Test
  42. Watch Source and Re-run Pytest on Change
  43. Run Single pytest Test
  44. Install Clojure
  45. Fewer Mocks Better Tests
  46. Twilio Function Error Response

2021 19

  1. My Design System Dreams
  2. Test a Distributed Lock in Dynamodb
  3. Connect iPhone to Arch Linux
  4. Set Screen Resolution in i3 with Xrandr
  5. Webpack Skips CSS Import
  6. Restore & Download a Directory from S3 Glacier
  7. Set up to Boot from MBR
  8. Scroll Restoration in JavaScript
  9. Simplest Pytest Setup
  10. Make a Repeating Style with nth-child
  11. Add a Migration for a Non-null ForeignKey Field in Django
  12. We Want to Develop Software Like the Tech Giants
  13. Make Code Blocks Keyboard Accessible
  14. Override the Code Block Element in Marksy
  15. When a font-face is Downloaded
  16. When Will Microsoft Drop IE11?
  17. More Managers, More Priorities
  18. Writing with the Curse of Knowledge
  19. Automate Separate Commits in Bash

2020 29

  1. Keyboard Control of Buttons in Testing Library
  2. Prefer Action
  3. Re-render DefaultValue when Value Changes in React
  4. Find and Replace Over Multiple Files in the Shell in MacOS
  5. Set Colors in Vim
  6. Respect OS Dark Mode in JavaScript
  7. Prevent Children from Filling CSS Grid Cell
  8. Ignore Dependency Types in Typescript
  9. Anatomy of Letterforms
  10. Magical Design Lessons
  11. Mock Fetch in a Jest Test
  12. Direct Requests Bring Results
  13. Tech Debt During an Economic Downturn
  14. The Testing Pyramid Shows ROI
  15. Screen Reader Support Plan
  16. Upgrade Incompatible Postgres Data Directory in Docker
  17. To Reroute or Restart
  18. Colorful Vocabulary
  19. Narrow Interface Type in TypeScript
  20. Tests That Really Test
  21. Tab Like a Mouse
  22. What Level Should I Log At?
  23. Value Integrity
  24. Deadlines Constrain the Solution Space
  25. Explore the Unhelpful
  26. Docker Runs Server Junk
  27. Configure TypeORM by Injecting NestJS Config
  28. Record Vim Macros
  29. Lerna Publish to NPM Without a Git Commit

2019 9

  1. 100vw Horizontal Scrollbar
  2. What Hack Day Brings
  3. Find Circular Dependencies in JavaScript
  4. Create a Bezier Curve Clipping Path
  5. Make an Impression With Just a Little More
  6. What We Could Do Without Internet Explorer
  7. Fallback Ref in React
  8. Copy ISO to Bootable USB Stick
  9. Monitor JavaScript Bundle Size

2018 9

  1. Find and Kill Locks on Postgres Tables
  2. Isolate Jest Integration Tests in a Shared Database
  3. Conversations Without a Computer
  4. Setup Cloudflare DNS to Point to Netlify Host
  5. Costs of Inter-team Tech Consolidation
  6. Environment Variables in Next.js
  7. Manage Vim Plugins Without a Plugin Manager
  8. Why Whitelist Props on Shared React Components
  9. Preprocess Svelte Components with Postcss

2017 180

  1. Lock in Learning
  2. The Words 'Thank You'
  3. Record Screen as Gif on Mac
  4. Learning to Tune Out
  5. Change Parent Upon Child Focus in React
  6. CSS Animation Timing Function Per Keyframe Segment
  7. Stay with Problems
  8. Start the Job You Want
  9. Expose Enum Props in React
  10. Ensure addons Version in a Storybook Addon
  11. Downgrade to a Previously-installed Brew Formula
  12. How to Use Webpack's externals Property
  13. Spread Operator or Destructuring
  14. React OneOf vs. OneOfType
  15. Result Type in Flow
  16. Not Done in a Corner
  17. Don't Publish .bablerc to Npm
  18. Flowtype Props Passed to Children in React
  19. Flowtype Analyzes All Code Paths
  20. Remove App from Cmd-Tab Menu
  21. React Error Boundaries in Event Handlers
  22. Family Can Enable Creativity
  23. The Important Part of Learning is Outcomes
  24. Reading Needed to Code
  25. Deploy Lerna Packages to Heroku
  26. Defaulting to Functional React Components
  27. Sharing Hope to Create a Future Together
  28. Naming Related Components in React
  29. Making is More Important Than How You Make It
  30. Render Current Route Active Links on the Server
  31. Separating React Components Into Modules
  32. Use Slack Channels to Broadcast
  33. Modern Frontend Dev: Language Advances
  34. Modern Frontend Dev: Browser Capabilities
  35. Modern Frontend Dev: Writing JavaScript
  36. Modern Frontend Dev: User Expectations
  37. Make it Work
  38. Next.js getInitialProps in All Components
  39. Open Source for Inspiration
  40. Controlling pointer-events
  41. Get ref for Glamorous Component
  42. Single Glamor Instance
  43. Continuously Not Delivering
  44. JavaScript Arrow Function Return Rules
  45. Limits Create Choices
  46. Host a Web App For Free
  47. Stub a Json Api
  48. Global Styles in Storybook
  49. Enforce a Git Commit Message Format
  50. Remove an Array Element Without Mutation
  51. Generate Snapshot Tests from Storybook
  52. Deploy Next.js to Github Pages
  53. Render CodeMirror on the Server
  54. The Power of Team Combinations
  55. Deeper Focus
  56. Progressive and Conservative Tech Adoption
  57. Change Page Title in React
  58. What is CSSNext?
  59. Why the Interview Lunch?
  60. Flowtype process.env
  61. Setup Flowtype for a Node.js Backend
  62. Hello, styled-components/primitives
  63. Upsert in Knex.js
  64. Override CSS Modules with react-styleable
  65. Spacemacs Flowtype Integration
  66. Handling Touch and Mouse Clicks in the Browser
  67. Setbacks are Temporary
  68. Never Miss a One-on-one
  69. Rest is Good
  70. TDD a ReasonML Function
  71. Change Webpack Config in create-react-app Without Ejecting
  72. Unit Testing in ReasonML
  73. Gratitude Changes Our Attitude
  74. CSSNext Variable Fallback
  75. JavaScript Arrow Functions with No Params
  76. Feature Flag Frontend Code
  77. Namespace Redux Action Types
  78. Personal Performance Management
  79. Edit Github Wiki in Vim
  80. Lots of Node Dependencies
  81. A Junior Programmer Resume: Enthusiastic Learner
  82. Projects in Spacemacs
  83. Some Helpful Packages for NPM Scripts
  84. How the JSX Transform Works
  85. Mobile-first Media Queries
  86. Fullstack Dreams
  87. Mixing module.exports with exports
  88. Jest on a Lerna Repo
  89. I Don't Want to Learn That
  90. Prettier on Spacemacs
  91. What is a Generator Function?
  92. Code Highlighting in Keynote
  93. Simplest async/await Function
  94. Recreate the Library
  95. Import Local JS Modules Without ../'ing
  96. It's Already Been Done
  97. Send Email with aws-sdk on Node.js Example
  98. Responsive Proportional Video
  99. Style Children in styled-jsx
  100. Serve Markdown with a Next.js Server
  101. How to Make a Postcss Plugin
  102. How I Organize a JavaScript Module
  103. Import Parts of Node Packages with Slash
  104. Spacing Between Multi-line Flexbox Child Elements
  105. Package.json "style" Attribute
  106. Use Node APIs with Promises
  107. Setup Email Address With a Custom Domain for Free
  108. The Speed of Small Solutions
  109. The Grace of Gratitude
  110. What is Next.js?
  111. The Joy of Simplicity
  112. Load Both CSS and CSS Modules With Webpack
  113. Close Your Laptop
  114. CSS Module Selectors Pile Up with postcss-import
  115. Does Leaving a Slack Channel Make You Sad?
  116. Routing in React in a Static Site and Browser
  117. Decrease Line Spacing in Keynote
  118. The Need to Do It All
  119. Paths in Node
  120. Ways to Compose React Components
  121. Define Limits for Greater Productivity
  122. Accessibility: Potential tabindex Values
  123. Code Snippets in Spacemacs
  124. React componentDidMount Not Called in Server Render
  125. How to Write a Webpack Loader
  126. Simplify Your Babel Setup with babel-preset-env
  127. Accessibility: Skip to Main Content
  128. Debug Node with Built-in Tools
  129. The Meaning of "Mount" in React
  130. Anatomy of a Blog Post
  131. Format JavaScript with Prettier
  132. Repainting My Mind with React
  133. Working in Open Space
  134. How to Write Middleware for Redux
  135. Rhythm and Rest
  136. More Code-like, Not English Spec Descriptions
  137. People Will Remember Your Kindness
  138. Cut the Chatter
  139. Access Route Params in React Router v4
  140. Local Authentication in a Koa API
  141. Store Local User Password with bcrypt in Node
  142. The Invisible Leader
  143. Elm: First Taste of Syntax
  144. When Product & Developers Talk
  145. Devops Asks a Lot
  146. First Rebels, Then Visionaries
  147. You Might Be Inspiring Someone
  148. Matching Up the Whys
  149. Don't Announce Why People Shouldn't Listen To You
  150. Make a Non-Objective Choice
  151. Feeling Productive Means Learning
  152. Run Elm in the Terminal
  153. We All Come From Humble Places
  154. The Permission Paradox
  155. Sharing Praise Brings Admiration
  156. Why Engineers Get Taken Advantage Of
  157. How to Choose a Key in React
  158. You're More Engaged in Work You Like
  159. Repeating Yourself
  160. The Software Change Funnel
  161. Event Handler Naming in React
  162. Options vs. Possibilities
  163. Pause in Redux Saga
  164. A Sad Cyclops Appears in the Wild
  165. You Find What You Look For
  166. Motivation Within You to Act
  167. Learning Quotas and Thresholds
  168. Accessibility Audit in Chrome
  169. Constraint of New Ideas
  170. Verbal Value Statements
  171. Add Client-side Code Highlighting to Your Blog
  172. Context Assists Appreciation
  173. Hearing Bad Ideas
  174. Coding on Vacation
  175. Take a Chance on Yourself
  176. Convert a Database to Markdown
  177. Continuous Delivery of a Static Site
  178. Conversion from Octopress to Hugo
  179. Deploy create-react-app to Heroku on Node.js
  180. DateTime in F#

2016 20

  1. Debug.log in Elm Pipes
  2. Stub Dependencies in Node Without Proxyquire
  3. Notify NewRelic of Error on UncaughtException
  4. Handle Errors in a Node App
  5. Return an Array in GraphQL
  6. Testing es2015 Riot Tags
  7. Depending on a Shared Lib
  8. react-dnd With Text Drag Preview
  9. Make Your Project Fun
  10. Change Default NPM License
  11. Determining the Health of Your Culture
  12. Selecting a Directory in Electron
  13. Bring Your Listeners With You
  14. Console.log Deep Objects
  15. Gitignore System Files
  16. Working More Might Not Help Our Team
  17. Smart and Dumb Components in React
  18. Some Node Skills to Explore
  19. Test APIs Failing from Client
  20. What React Stateless Components are Missing

2015 23

  1. Debug Locally in Elm
  2. Update Body Class in React
  3. In Favor of Codenames
  4. I Love CSS Modules
  5. Make Software in the Estuary
  6. This Isn't Your Magnum Opus
  7. A Vision Questing We Will Go
  8. Animating a Line in D3
  9. Slack Survival Guide
  10. Using JavaScript's Function Bind
  11. Testing React on jsdom
  12. pushState with webpack-dev-server
  13. The Power of Liking
  14. List Npm Scripts
  15. "12-Factor App" Summary
  16. Test React componentWillReceiveProps
  17. Sinon Spies vs. Stubs
  18. Programmer Struggle
  19. Ruby CLI Options Parsing
  20. Test React-Router Previous Params for Component Update
  21. Set Cookie on Rack Mock Request
  22. Pagination Headers with Kaminari
  23. React-Router with Flux

2014 14

  1. D3 Class Operations
  2. A JSON API Errors Serializer in Rails
  3. Destroy Duplicate Tests
  4. Expose HTTP Headers in CORS
  5. Send Props to Children in React
  6. Set State in Callbacks in React
  7. Broccoli Ember Emblem
  8. Bower Resolutions
  9. Link to Broccoli Assets on a Webpage
  10. Detecting Window Closing in Ember
  11. Convert App From EmberFire to Fireplace
  12. Testing Express Validator
  13. Permit Array in Rails Strong Parameters
  14. Grunt-init Exercism.io

2013 56

  1. Add Zerigo DNS to Heroku
  2. Define Methods Dynamically in Ruby
  3. Call Dynamic Method in Ruby
  4. Exercism Review
  5. Save a Gem to Gemfile from Terminal
  6. Debug Ruby and Rails
  7. Change Page Title in Angular Route
  8. Use D3 rangeBands
  9. Start Review
  10. Rotate Gauge Needle in D3
  11. Import Erb Into Karma
  12. JavaScript Mixins
  13. How to Create a Bower Package
  14. Test Angular Directive With Isolate Scope
  15. Spies with Sinon and Chai
  16. Disable ngClick
  17. Preload Route Data in Angular
  18. How MarkLogic Made Me a Better Programmer
  19. Ember Dynamic Classes
  20. Style File Input
  21. So Good They Can't Ignore You
  22. Namespacing Angular Controller Attributes
  23. Access Model in Ember View
  24. Behavior of CoffeeScript Fat Arrow
  25. When to Use Curlies in Angular Directives
  26. Remove Mobile Safari Click Delay
  27. ngStyle Background
  28. Mongoose Population
  29. Learn to Procrastinate
  30. CSS Vertical Height of Text
  31. Ember Parent Templates
  32. Match Ember and Handlebars Versions
  33. Precompile Ember Templates
  34. Test setTimeout with Jasmine
  35. Deploy Yeoman App on Heroku
  36. LiveReload for NodeJs
  37. Access NodeJs App on Xip.io
  38. Make Jsonp Requests with AngularJs
  39. Have More Fun
  40. Https Redirect for Node on Heroku
  41. Serve Json from Sinatra
  42. Pass Values From the Page to AngularJs
  43. AngularJs Find Element in Context
  44. Serve CoffeeScript from Sinatra
  45. Jumpstart Lab Ruby Training Review
  46. Setup Slim on Sinatra
  47. Multiple Yields in an ERB Template
  48. Rename Files in Rails Asset Pipeline
  49. Run a Pow Server on a VM
  50. How to Make a Pinterest Webservice
  51. Naming Anonymous JavaScript Functions
  52. Run a Single Mocha Test
  53. Authenticated Supertest Tests
  54. Why Log Your Issues
  55. Be True to Your Heart
  56. Mocha Testing AngularJs Dependency Injection

2012 40

  1. Minimized AngularJs Dependency Injection
  2. Npm Install Local Files
  3. IntelliJ 12 Review
  4. Impressions of Grunt
  5. RequireJs Paths in Prod, Test, and Build
  6. Environment Specific Variables in NodeJs
  7. Count Attributes in JavaScript Object
  8. Read Request Body in Spring Bean
  9. Cons of CSS Preprocessors
  10. Octopress vs. WordPress
  11. Responsive Table with Scrolling
  12. Grunt and Testacular
  13. Test RequireJs Code in Testacular
  14. An Environment-specific Grunt Build
  15. Run RequireJs with GruntJs
  16. GruntJs Access to package.json
  17. Blog Topics
  18. The JakeTrent.com Logo
  19. Agile Designers
  20. Paper by FiftyThree
  21. A Grab Bag of Backbone Tips
  22. Change Your Node Script Without Restarting
  23. Every nth Item in Handlebars Loop
  24. How to Organize NodeJs Routes
  25. Developer Relations for Internal Developers
  26. Why I Chose a WordPress Blog
  27. BusterJs with RequireJs/Backbone
  28. Run a Shell Script from NodeJs
  29. Pipe stdout to SocketIO
  30. Setup Public/Private Key
  31. Dynamically Require Optimized Modules in RequireJs
  32. Find and Kill a Process on a Port
  33. Cross-Domain RequireJs Text
  34. Serve a Directory
  35. Handlebars For-Loop Index
  36. XQuery Dynamic Order By
  37. Intro to BackboneJs
  38. i18n Strings in RequireJs
  39. Custom Exception Handling for AccessDeniedException
  40. 'And' Spring @Secured Roles

2011 27

  1. django_content_type_app_label_key Constraint on Heroku
  2. Calling Webservices in Java
  3. Backbone Views in a Dynamic DOM
  4. Backbone and JAX-RS
  5. Stored Procedures in Spring Jdbc
  6. Jasmine Unit Testing with RequireJS
  7. Backbone Inheritance
  8. Django loaddata on Heroku
  9. Test-driven Development on MarkLogic
  10. jQuery Mobile Selector Context
  11. Software Dev is Hard -- Don't Be Negative About It
  12. I18n Strings in Javascript
  13. Create an IntelliJ Launcher in Ubuntu
  14. Greater Flexibility with Responsive Design
  15. XQuery Browser Language Detection
  16. Unit Testing XQuery on MarkLogic
  17. Encrypt your IMs in Pidgin
  18. Debugging Remote Tomcat from IntelliJ with Style
  19. AES Encryption Odyssey in Java with Bouncy Castle
  20. Java Encryption - Illegal Key Size
  21. Most Seamless Iframe
  22. Execution Context in MarkLogic
  23. Thoughts on Customization and Convention
  24. Xdmp:Login Love
  25. Xquery Imports on MarkLogic
  26. Jquery, Ajax, Json on Django
  27. XSD Validation in MarkLogic

2010 18

  1. Unexpected Results in MarkLogic Xquery Type Coercion
  2. Windows 7 Dev Environment
  3. Writing Jquery Plugins
  4. WebDAV on Windows 7
  5. Breaking Down Knowledge Silos
  6. Iteration Planning
  7. Forgotten Requirements
  8. Generic Interfaces Arabian Magic
  9. Quick Bookmarks
  10. Ideal Tech Conferences
  11. Xquery Optimization Tips
  12. Jquery Plugin: readmore
  13. Jquery Plugin: safesubmit
  14. PNG Gamma Correction Woes
  15. Add/Remove Classes with Raw Javascript
  16. Caching Ajax Requests in IE
  17. Synergy on Ubuntu
  18. Change hostname on Ubuntu

2009 37

  1. Unexpected call to method or property access
  2. Access JS object fields
  3. Engineering for Engineering's Sake
  4. Parameterized States in Webflow
  5. Find network hosts with nmap
  6. Forward X11 Thru SSH
  7. Mount Samba FS on Linux
  8. Change Maven JDK
  9. Not in vs. Outer join Performance
  10. InstallCert for Java Security Certificate
  11. Remove Whitespace in Html with Javascript
  12. Pass Parameters to Javascript Callback
  13. Pass Parameters to Jquery Event Functions
  14. Find django-admin.py
  15. Variable Declaration Performance
  16. Environment-based Dependency Injection
  17. Split Text in Open Office Spreadsheet
  18. Remapping Ctrl Key in Ubuntu
  19. Hibernate Bind Variable in OrderBy Clause
  20. EasyMock Cause-Effect Exception Mapping
  21. Expose Fields via Java Reflection
  22. Mark Logic 4 on Ubuntu 9.04
  23. ConcurrentModificationException Within One Thread
  24. Count number of characters w/ SQL
  25. Arrays.asList returns immutable List
  26. Inner Joins in JPQL Delete Statements
  27. Java Reflection for methods with primitive params
  28. Show Full SQL Developer Timestamp
  29. Facelets Template Includes and Params
  30. Context Processors Put Content On Multiple Pages
  31. Replace Text With Css-Defined Image
  32. Hibernate's @Enumerated Annotation is Brittle
  33. Use Java Reflection to Get Field w/ Accessor
  34. Loop Index in ui:repeat
  35. Create Custom Facelets Component
  36. JSF ValidationError with Custom Converters
  37. Monitor Network Traffic with EtherApe

2008 22

  1. JSF Won't Submit Null in ui:repeat
  2. JSF Modal Goodness
  3. Update Alternatives
  4. SVN Comment Editor
  5. Intellij Maven Source Downloads
  6. Null SelectItem Option
  7. SVN Ignore
  8. VPN on Ubuntu Linux
  9. Id's from JSF, used in jQuery
  10. Hotdeploy in Intellij 8
  11. Virtual Box on Ubuntu Linux
  12. Application Audio Control in Ubuntu
  13. Crystal Reports in Ubuntu Linux
  14. Sharing Folders in Virtual Box
  15. Django Pagination
  16. Audit History with Hibernate Interceptor
  17. Running Php in Apache on Linux
  18. These Aren't the Tables You're Looking For
  19. Hibernate Boolean Conversion
  20. Document Viewer in the Shell
  21. ManyToMany Relationships in JSF
  22. Will a Captcha Block Spam?